前言¶
在 DeepSeek Harness(DSH)里跑插件或 profile 之前,常见问题往往不是业务逻辑,而是本机环境没对齐:Node 版本不够、DSH_HOME 不存在或不可写、profile 目录缺 cordis.patch.yml 或 package.json、sessions 目录缺失,或环境变量里根本没有配置 API Key。这些问题往往在真正调用模型或加载插件时才暴露,排查成本高。
社区里也有各自的手动检查清单,但缺少一个在本地、只读、不联网的统一入口。dsh-env-doctor 由 lengrufeng2008 维护,归类为客户端插件,专门做 DSH 相关的本地首次运行环境检查;检查项与 README 一致,不做修复、不做网络探测、也不读取 Key 的具体值。
这是什么¶
dsh-env-doctor(npm 包名 dsh-env-doctor,当前资料中版本为 0.1.0)是一句定位上的「本地 first-run 环境检查」:针对 Node、DSH_HOME、可写性、profile 文件、sessions 目录以及 DEEPSEEK_API_KEY 是否存在做核查。实现上强调 local-only——不联网、不读 Key 值,只判断 presence。许可证为 MIT;仓库见 GitHub,目录页见 SkillHub。DSH 生态主张「一切皆插件」;SkillHub 为社区目录,与 DeepSeek / 幻方无官方从属关系,本文不将其描述为官方应用商店。
核心功能¶
README 与 package.json 中列出的检查项如下,均在本机完成:
- Node:主版本号需 ≥ 20(与
engines.node一致)。 - DSH_HOME:目录存在且可写。
- Profile 文件:对应 profile 下需有
profiles/<name>/cordis.patch.yml和package.json。 - Sessions:sessions 目录相关检查(具体布局可能随 DSH 版本变化,见下文限制)。
- API Key:检查
DEEPSEEK_API_KEY是否配置(仅 presence,不验证有效性)。
插件还提供可编程导出(package.json 的 exports 含 ./doctor、./plugin 等),供集成或测试使用;对外文档中的主要用法是 CLI 与 DSH 内调用。
安装与启用¶
已抓取资料中未给出 SkillHub 或 DSH 官方的 dsh plugin add … 一类安装命令,下文不自行拼接仓库名。若你已通过 DSH 插件机制安装本仓库,启用方式以 DSH 与目录页说明为准。
本地直接运行检查(来自 README):
node bin/dsh-env-doctor.mjs --home ~/.dsh --profile web
node bin/dsh-env-doctor.mjs --json
第一条指定 DSH 主目录与 profile 名;第二条以 JSON 输出结果,便于脚本或 CI 解析。包入口 CLI 名为 dsh-env-doctor,对应 bin/dsh-env-doctor.mjs。
在 DSH 进程内,README 给出的用法为:
Use env_doctor with profile=web.
即通过 env_doctor 能力并传入 profile=web(profile 名按你的实际配置替换)。
典型用法¶
先做路径与 profile 对齐,再跑检查:
- 确认
DSH_HOME(示例为~/.dsh)与你要用的 profile 名称(示例为web)。 - 执行:
node bin/dsh-env-doctor.mjs --home ~/.dsh --profile web
- 若需要机器可读输出,改用
--json:
node bin/dsh-env-doctor.mjs --json
- 在 DSH 对话或工作流中,按 README 使用 env_doctor 并指定 profile。
开发侧可运行仓库自带测试(README):
npm test
对应 package.json 中 node --test test/*.test.mjs。
适用场景与注意¶
适合谁:刚搭 DSH、换机器、或切换 profile 的智能体开发者;希望在连模型、跑复杂插件之前,用本地只读方式快速确认 Node、DSH_HOME、profile 骨架、sessions 与 API Key 是否「在位」。
明确不做的事(README Limits):
- 不做 provider 鉴权探测、不发起网络请求、不执行其他插件、不提供自动修复。
- DSH 目录布局可能因版本不同而有差异,检查结果需结合你当前的 DSH 版本理解。
- 检测到 Key 存在,不代表 Key 有效或有余额。
安全与权限:插件以当前 DSH 进程权限运行;安装或启用任何社区插件前,应自行查看源码与 LICENSE(本仓库为 MIT)。本工具不读取 API Key 的值,但仍会访问本地目录与环境变量名,请在可信环境中使用。
结尾¶
dsh-env-doctor 的价值在于把 DSH 首次运行常见的本地前提收成一次可重复的检查:Node ≥ 20、主目录可写、profile 关键文件、sessions 与 DEEPSEEK_API_KEY 是否存在。它不替代完整的鉴权或网络诊断,但能减少「环境没配好却已开始调业务」的弯路。
- 目录页:https://www.skillhub.cn/plugins/lengrufeng2008/dsh-env-doctor
- 源码与说明:https://github.com/lengrufeng2008/dsh-env-doctor