前言¶
在 DSH 里维护一个 profile,常见做法是改 package.json、挂 bundle patch、在 Cordis 里写若干 cordis.patch.yml。依赖是否真装进 node_modules、patch 指向的文件是否存在、多个 patch 是否撞 id 或名字,这些问题往往在启动或联调时才暴露。下面介绍一个只做本地静态检查的插件,用来在改配置之后快速扫一遍 profile 的健康度。
这是什么¶
dsh-plugin-doctor(仓库 lengrufeng2008/dsh-plugin-doctor)由维护者 lengrufeng2008 发布,社区目录分类为 admin-security。它是对已安装 DSH profile 的静态检查工具:对照声明依赖与 node_modules、核对 bundle patch 目标、发现重复的 patch id/name。README 明确说明 Local-only,不涉及安装、启动、运行时或网络。
与「边跑边猜哪里配错了」相比,它的价值在于把几类配置类问题收敛成一次可重复的扫描;README 也写明 Not a repair tool,只报告问题,不自动修复。
核心功能¶
依据 README 的 Checks 一节,当前版本(package.json 为 0.1.0)会检查:
- profile 的
package.json里声明的 dependencies - 已安装目录
node_modules/<name>/package.json是否存在、是否与声明一致(缺失依赖类问题) - 每个
dsh.bundle.patch所指向的目标是否存在 cordis.patch.yml中重复的 patch id / name
Limits 中需要一并了解的能力边界:
- 不做 install / boot / runtime / network 相关检查
- 不处理 pnpm workspace 的边界情况
- bundle patch 缺失时可能是 warning(例如仅 client 或仅 host 的插件场景可能合理)
- 不是修复工具
许可证:MIT;运行环境:Node >= 20(见 package.json engines)。
安装与启用¶
已抓取资料中未给出 dsh plugin add … 一类的一行安装命令。你可以从社区目录页 skillhub.cn/plugins/lengrufeng2008/dsh-plugin-doctor 或 GitHub 仓库按 DSH 插件的常规方式接入;接入后插件通过 Cordis patch(plugin/cordis.patch.yml)挂入 profile。
在 DSH 会话内,README 给出的用法为:
Use plugin_doctor with profile=web.
将 web 换成你要检查的 profile 名称即可。
典型用法¶
命令行(独立运行)¶
在插件仓库或已安装路径下,可直接用 Node 执行 bin:
node bin/dsh-plugin-doctor.mjs --home ~/.dsh --profile web
node bin/dsh-plugin-doctor.mjs --json
第一行指定 DSH 主目录(示例为 ~/.dsh)和 profile 名;第二行以 JSON 形式输出结果,便于脚本或 CI 解析。
在 DSH 里调用¶
Use plugin_doctor with profile=web.
经过上面的步骤,你会得到依赖、bundle patch、重复 patch 标识等方面的静态结论,再据此改 package.json 或 patch 文件。
维护者提供的自测方式:
npm test
适用场景与注意¶
适合谁:经常改 profile 依赖、增删 bundle patch、合并多个插件 patch 的 DSH / 智能体开发者;希望在本地、离线环境下做一次「配置与磁盘状态」对齐时使用。
注意:
- 插件以当前 dsh 进程权限运行,安装或启用前请自行查看仓库源码与 MIT 许可证(README Provenance)。
- 社区目录 SkillHub 是独立插件索引,与 DeepSeek / 幻方无官方从属关系;DSH 生态强调「一切皆插件」,本工具是其中的小型 profile inspector,不是官方应用商店内置能力。
- 星标与版本以你访问 GitHub 时页面为准;本文依据 README 与 package.json 中的 0.1.0 描述能力,不替代线上最新文档。
结尾¶
dsh-plugin-doctor 把「缺依赖、patch 文件缺失、patch id/name 重复」等静态问题从联调阶段前移到一次扫描里,适合作为 admin-security 类维护手段。目录页:https://www.skillhub.cn/plugins/lengrufeng2008/dsh-plugin-doctor;源码与说明:https://github.com/lengrufeng2008/dsh-plugin-doctor。