dsh-lock:为 DeepSeek Harness Desktop 加一层本地锁屏

前言

DeepSeek Harness(DSH)Desktop 会在本机保留对话与会话内容。离开工位、合盖再开、或长时间不碰客户端时,单靠 macOS 登录态并不能区分「机主本人」和「顺手点开 DSH 窗口的人」。社区插件 dsh-lock 在 DSH 界面之上叠加锁屏:进程重启或超过 48 小时未验证会再次要求解锁;可选 Touch ID / Mac 登录密码(经系统面板),或使用插件自设的解锁密码。下面介绍它是什么、如何安装,以及使用时需要清楚的边界。

这是什么

dsh-lock 是维护者 SeyanaA 发布的 DSH 本地 bundle 插件,分类为 admin-security,当前 README 标注最新版本 v0.1.8(macOS 26 Liquid Glass 风格 UI)。它只面向 macOS,依赖 DeepSeek Harness Desktop ≥ 0.2.0-rc.1;密码哈希等状态写在 ~/.dsh/dsh-lock/state.json(权限 600),不读取会话内容、不发起网络请求。

核心功能

何时会锁

条件 说明
每次启动 DSH 进程启动即锁定
48 小时未验证 已解锁超过 48 小时,下次打开或状态轮询时重锁
手动锁定 设置 → 安全锁定 → 立即锁定,或会话头部右上角锁形按钮

如何解锁

  1. 插件解锁密码:首次访问强制设置,至少 4 位、内容不限,与 Mac 登录密码无关。
  2. 本机解锁(默认开启,可在设置里关):轻触锁屏空白处、按一次 Enter,或点「本机解锁」,由 macOS 系统验证面板完成——可用 Touch ID,也可在面板里输入 Mac 登录密码。插件统一标注「本机解锁」,不区分指纹与 Mac 密码;验证必须由系统面板触发,无法后台「零交互」读传感器(Apple 对第三方应用的限制)。
  3. 独立应用锁(可选,默认关):在 设置 → 安全锁定 开启后,只认插件解锁密码,本机指纹与 Mac 登录密码均不能解锁 DSH,适合希望 DSH 内容与 Mac 凭据隔离的场景。

连续输错插件密码 5 次会进入冷却(30 秒起、逐级翻倍)。忘记插件密码可在终端执行重置脚本,恢复默认密码 4396(见下文)。

界面与配置

锁屏与设置页采用 macOS 26 Liquid Glass 视觉(半透明材质、胶囊输入框等);解锁成功有两种动画与文案(本机解锁 / 插件密码)。配置集中在 设置 → 安全锁定:改密码、本机解锁开关、独立应用锁、立即锁定、查看重置命令及锁定规则说明。

环境要求

  • macOS(README 写明在 macOS 27 / Apple Silicon 上验证;建议有 Touch ID 的 MacBook,无 Touch ID 也可仅用插件密码)。
  • DeepSeek Harness Desktop ≥ 0.2.0-rc.1。
  • 本机验证依赖预编译的 bin/dsh-auth-helper(arm64);Intel Mac 可用 scripts/build-helper.sh 重新编译(需 Xcode Command Line Tools)。

安装与启用

插件以本地 bundle 装进 DSH profile(默认 desktop)。官方 README 未提供 dsh plugin add github:... 一类命令;请按仓库说明操作。

方式一:通过 DSH Agent(推荐)

先把插件目录放到固定路径(安装后不要移动;也可从 Releases 解压 zip)。README 示例为 clone 到用户目录:

git clone https://github.com/SeyanaA/dsh-lock.git ~/dsh-lock

在 DSH 新对话中对 Agent 说明(路径换成你的实际路径):

把 /Users/你的用户名/dsh-lock 作为本地插件安装到当前 profile。

若界面未立刻变化,完全退出并重新打开 DeepSeek Harness。

方式二:手动安装

  1. 将插件目录放到例如 ~/.dsh/local-plugins/dsh-lock。
  2. 编辑 ~/.dsh/profiles/desktop/package.json:在 dependencies 增加 "dsh-lock": "link:/Users/你的用户名/.dsh/local-plugins/dsh-lock",在 dsh.profile.bundles 追加 "dsh-lock"。
  3. 在 profile 目录执行 pnpm install(或 DSH 自带 pnpm),重启 DSH。

安装前建议浏览 GitHub 仓库 源码与 MIT 许可证;插件以当前 DSH 进程权限运行,与任何社区插件一样,信任边界需自行评估。

典型用法

首次打开

重装或首次启用后,界面被锁屏覆盖,需设置插件解锁密码(≥ 4 位)。若本机可用 Touch ID,插件会自动启用本机解锁(可在设置中关闭),设置完成即进入正常使用。

日常解锁

锁屏不会自动弹出系统验证窗口。可:

  • 输入插件解锁密码并回车;或
  • 轻触空白 / Enter /「本机解锁」唤起系统面板,用 Touch ID 或 Mac 登录密码。

取消面板后可再次唤起,或改用插件密码。

一键锁定

会话头部工具区最右侧锁形按钮:点击后立即锁定并显示锁屏。

忘记插件密码

在终端执行(路径以你实际安装为准;设置页「忘记密码」也会显示命令):

~/.dsh/local-plugins/dsh-lock/bin/reset-password

成功后提示默认密码 4396。回到 DSH 输入 4396 解锁,再到 设置 → 安全锁定 修改密码。原 state.json 会先备份为带时间戳的 .bak 文件。

适用场景与注意

适合:在共享办公、演示或临时离席时,防止他人直接浏览 DSH 里的对话与配置;需要与 Mac 登录凭据隔离时,可开独立应用锁,仅依赖插件密码。

边界(README 安全设计章节):

  • 这是应用内 UI 锁,不是 FileVault 或磁盘加密;能登录 macOS 并在终端执行命令的人,可通过重置脚本恢复默认密码——这是找回密码的设计代价。
  • 独立应用锁挡的是「知道 Mac 密码 / 能过 Touch ID 但未知 DSH 插件密码」的应用层越权,不防磁盘取证。
  • DSH 其它本地接口不在本插件保护范围内。

卸载:让 Agent 对 dsh-lock 调用 remove_bundle,或手动从 profile 的 package.json 移除引用并 pnpm install 后重启;可选删除 rm -rf ~/.dsh/dsh-lock。

结尾

dsh-lock 在 DSH Desktop 上补了一层可配置的本地重认证:重启与 48 小时规则、插件密码与本机系统验证、设置页与一键锁定,数据仅在本机 scrypt 哈希存储。DSH 生态强调「一切皆插件」;社区目录 skillhub.cn 上的 dsh-lock 页 与 GitHub 仓库 为独立维护入口,与 DeepSeek / 幻方无官方从属关系。需要 macOS 锁屏能力时,按 README 以本地 bundle 安装并先在 设置 → 安全锁定 完成首次密码设置即可。

羽毛球分组比赛记分
小程序二维码

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

Xiaoye