dsh-lock-screen: Hide DSH session with a full-screen overlay when stepping away.

前言

在 DeepSeek Harness(dsh)里跑长任务时,主界面会一直展示会话内容:工具调用、文件路径、diff 里可能出现的密钥片段,旁人路过工位就能看见屏幕。关窗口或杀进程会打断仍在 Host 里执行的任务,多数开发者不会这么做。操作系统锁屏能挡住整机,但 DSH Web UI 若单独开在一个浏览器窗口,有时仍想「任务继续、界面遮住」。下面介绍社区插件 dsh-lock-screen(维护者 Xxihagalife),它在 DSH Web UI 上叠一层全屏锁屏,背景里的 agent 与流式输出按设计不受影响。

这是什么

dsh-lock-screen 是面向 admin-security 分类的 DSH 客户端插件:一键或快捷键触发全屏遮罩,可选密码解锁;锁定状态写入 localStorage,刷新页面、重开窗口或重启 DSH 后仍保持遮罩。作者 README 明确说明:锁屏纯属视觉层,不接触 session、定时器、流或沙箱句柄,不是替代 OS 锁屏或账户隔离的安全边界。

核心功能

以下能力均来自仓库 README 与 package.json 说明。

  1. 触发方式:侧栏底部锁按钮;任意位置 Ctrl/Cmd + Shift + L。
  2. 密码:明文不出输入框;校验为加盐 SHA-256,凭证存在本 profile 的 localStorage(dsh.lock-screen.credential)。可设最少 4 位密码,也可「无密码锁定」(解锁只需点屏)。
  3. 持久与多标签:键 dsh.lock-screen.locked 记录 "1" / "0";多标签通过 storage 事件同步。
  4. 防暴力尝试:连续 3 次错误后冷却(5 秒起翻倍,上限 60 秒),倒计时内禁用输入与按钮。
  5. 细节:锁定时页面标题为 DSH (locked);样式跟随 Harness --dsw-alias-* 令牌,支持浅色/深色;中英文 UI(locale/en.json、locale/zh.json)。
  6. 实现形态:单文件 client.js ES 模块,无构建、无运行时依赖、无联网;占用 sidebar.footer.action 与 shell.overlay 两个 slot。

安装与启用

推荐经 DSH 插件管理器安装(桌面端 Settings → Plugins,或上架后的 dshmarket):

dsh plugin --profile <profile> add dsh-lock-screen

若使用本地检出目录:

dsh plugin --profile <profile> add /path/to/dsh-lock-screen

安装后刷新 Web UI 一次(客户端模块在页面加载时注入)。锁按钮出现在侧栏底部,靠近 Settings。

兼容性(README):DSH >= 0.2.1-rc.4(含 Web UI 与桌面应用);文档记载在 DSH Desktop 2.0.21-next / dsh 0.2.1-rc.4 上验证过。package.json 中版本为 1.0.0,许可证 MIT。

典型用法

第一次点锁会打开设置面板,要求两次输入密码(至少 4 字符),保存后立即锁定。

操作 方式
立即锁定 点侧栏底部锁图标,或 Ctrl/Cmd + Shift + L
解锁 输入密码后按 Enter
设置 / 修改 / 移除密码 Shift + 点击锁图标(打开面板且不锁定)
无密码锁定 设置面板第三行「Lock without a password」

忘记密码时 README 写明无恢复路径:可在 DevTools 控制台清除上述两个 localStorage 键,或卸载插件。

适用场景与注意

适合谁:在办公室、咖啡厅等场合用 DSH 跑长任务,需要临时挡住屏幕、又不愿中断 Host 内任务的人。

务必知晓的限制(README「What it is not」):

  • 能操作本机的人仍可通过任务管理器、文件管理器、其他浏览器或直接读 localStorage 绕过遮罩。
  • 密码以加盐哈希存于浏览器存储,不是加密存储;插件以当前 DSH / 浏览器上下文权限运行,安装前宜自行审阅 源码 与 MIT 许可证。
  • 需要真实隔离时请用操作系统锁屏或独立 OS 账户。

DeepSeek Harness 生态以「一切皆插件」为思路;SkillHub 目录页 是社区收录站点,与 DeepSeek / 幻方无 README 所述的官方从属关系。

结尾

dsh-lock-screen 用最少依赖在 Web UI 上完成「离席遮屏、任务不停」:一次安装、一次刷新即可用侧栏锁或全局快捷键。进一步了解实现细节与截图见 GitHub 仓库;在 DSH 内通过插件管理器按 profile 添加即可试用。

  • 目录页:https://www.skillhub.cn/plugins/Xxihagalife/dsh-lock-screen
  • GitHub:https://github.com/Xxihagalife/dsh-lock-screen
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye