dsh-doctor:DeepSeek Harness 安装只读健康检查

前言

DeepSeek Harness(DSH)把 profile、bundle、patch 层和本地 link 依赖叠在一起运行。一旦启动异常或 Discussion 里难以描述现场,有用信息往往分散在用户目录:当前用的是哪个 profile、dsh.profile.bundles 是否还能解析、link: 是否仍指向有效路径、cordis.patch.yml 能否解析、磁盘与凭证文件权限是否正常。手工逐项排查费时,且容易在贴日志时泄露敏感内容。社区插件 dsh-doctor(维护者 Bliveren,分类 admin-security)提供一条命令式的只读体检,输出可脱敏的 Markdown 报告,便于粘贴到讨论区求助。

这是什么

dsh-doctor 是针对 DeepSeek Harness 安装环境的诊断插件:不读写凭证内容、不修改或删除任何文件,只汇总 profile、bundle、patch、本地链接、磁盘与 .credentials.yaml 存在性与权限等事实,并生成适合公开的 redacted 报告。

DSH 生态强调「一切皆插件」;SkillHub 等目录为社区站点,与 DeepSeek / 幻方无官方从属关系。

核心功能:检查项一览

README 将检查项整理为下表(插件以当前 dsh 进程权限读取路径与进程信息,只报告不修复):

Check 说明
runtime/node 运行中 Node.js 是否在支持范围内
profile/exists 启动所用 profile 目录是否存在
profile/manifest manifest 是否声明可读的 dsh.profile.bundles 列表
bundle/<name> 每个 bundle:内置或已安装、是否有 patch、engines.dsh 是否满足
profile/patch cordis.patch.yml 能否解析、是否存在重复 row id
profile/local-links link:、file: 依赖是否仍指向有效目标
profile/backups 遗留 .bak-* 与废弃的 <profile>.broken-* 副本
profile/lockfile profile 依赖是否被 lockfile 固定
home/exists、home/writable DSH home 是否存在、是否可写
home/disk DSH home 所在卷剩余空间
home/credentials .credentials.yaml 是否存在、权限是否足够 restrictive

内置 bundle(如 @deepseek-ai/dsh-base、@deepseek-ai/dsh-web-app)从 dsh 安装解析而非 profile 的 node_modules;若 profile manifest 的 dependencies 未列出某 bundle,则视为 in-box,profile 侧缺少对应 node_modules 条目不算问题。

报告末尾有汇总行,例如 summary: 13 pass, 1 warn, 0 fail, 0 skip;单项为 PASS / WARN / FAIL 等,并附简要 Detail。

安装与启用

安装命令须带 profile 名称,与 README 原文一致:

dsh plugin --profile <name> add github:Bliveren/dsh-doctor

包为纯 ESM、无构建步骤;若用 git 源安装,无需 build-script allowlist。需要固定版本时,可 pin 到 commit:

dsh plugin --profile <name> add github:Bliveren/dsh-doctor#<sha>

安装后重启 DSH host,工具才会进入 registry。

典型用法

参数

  • profile:要检查的 profile 名。默认取 host 启动时的 profile(由 launcher 的 profile 目录参数或环境变量 DSH_PROFILE 推断)。

让智能体执行

重启 host 后,在对话中指示 agent(README 示例):

Run dsh_doctor and show me the report.

报告为 Markdown,含生成时间、平台、Node 版本、dsh home、profile 名与检查表;WARN 项可能列出备份文件名或 abandoned 的 desktop.broken-* 类目录及最后修改时间,便于对照清理策略,但插件本身不会替你删除。

适用场景与边界

适合谁

  • 本地或服务器上 DSH 行为异常,需要快速确认「层叠配置 + 文件系统」是否自洽。
  • 要在 GitHub Discussions 等场合描述环境,又需避免贴出凭证内容。

务必知晓

  1. 插件随当前 dsh 进程权限运行;安装前应自行审阅 仓库源码 与 MIT 许可证。
  2. 不读 .credentials.yaml 的内容,只报告存在性与 permission bits。
  3. 不写、不修、不删;修复建议以 hint 形式出现,不会自动执行。
  4. PASS 不等于安装一定可用:不覆盖 provider 可达性、sandbox、其它插件内部逻辑等运行时行为。

开发侧:检查逻辑在 lib/checks.js,以路径与进程事实的纯函数实现,可用 pnpm install 与 pnpm test(node --test test/checks.test.mjs)在不启动 DSH 的情况下测新检查项;index.js 负责注册到 tool registry。

结尾

dsh-doctor 把分散在 DSH home 与 profile 里的安装事实收成一份只读、可公开粘贴的报告,适合 admin-security 场景下的自助排查与社区协作。需要安装说明与完整检查表时,以 GitHub README 为准:https://github.com/Bliveren/dsh-doctor;目录索引见 SkillHub 插件页。

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

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

小夜