前言¶
DeepSeek Harness(DSH)把大量行为放进 profile、cordis.patch.yml 和各类 bundle。升级 DSH、增删插件或改 patch 之后,常见困惑是:新选项为什么没生效、旧配置被谁覆盖、工作区里有没有冲突或明文密钥。人工 diff 成本高,也不一定覆盖资产体积和工具调用统计。
dsh-config-guard 是挂在 DSH 设置页上的只读诊断插件:汇总配置继承关系、资产与冲突项、工作区健康分,以及基于宿主会话缓存的工具使用统计。它不写配置、不落状态、不导出凭证、不发外部请求。
这是什么¶
维护者 lixiaojie(GitHub:lixiaojie/dsh-config-guard)。目录分类为 admin-security。当前 package.json 版本为 0.2.0,许可证 MIT。
定位一句话:Read-only DeepSeek Harness settings plugin——配置继承清单、资产与冲突报告、工作区健康度、真实工具使用情况,且不写任何内容。
与同一仓库内的「完整版」(scripts/dsh-config-guard/)相比,本发布树只保留检查能力:没有逐项补齐、临时关闭、导出/导入迁移包等写路径;test/readonly.test.js 约束非 GET 请求被拒、完整读取不改 profile 目录。
核心功能¶
下面按 README 中「它能回答什么」归纳,均可在设置页「配置继承守卫」中查看。
配置继承与升级影响¶
- 每行配置标注:
完全继承、需补齐、已钉住、第三方行,并列出缺失的键——用于排查「升级后新选项为什么没生效」。 - 汇总需补齐的行数,以及版本钉住的依赖、未启用的 bundle——用于评估「升级会丢掉什么」。
工作区资产与冲突¶
- 对 20 类资产统计文件数与体积。
- 冲突检查包括:孤儿配置行、失效的
link:、已被移除的 bundle、明文密钥、未登记技能等。
工具使用与会话统计¶
- 读取
~/.dsh/storages/session_projcache/sessions/*.json中的按日工具计数(无消息正文、无会话回放)。 - 展示覆盖窗口、会话数、高频工具、在用模型等,回答「这些工具是否真的在用」。
工作区健康度¶
- 0–100 分评分;建议仅为文字,无一键执行类按钮。
profile 快照(只读版行为)¶
自 v0.4 起,完整版会滚动快照 package.json(bundle 名单)、cordis.patch.yml、preset-overrides.json 并与上一份对比。本只读版不写快照:若完整版曾留下快照则用于对比;新装环境以静态不变量检查为主。cookie 计数为对桌面端 Cookies 库的只读聚合,打不开则标为不可用且不抛错。
宿主接口与数据边界¶
读: cordis.patch.yml、profile 的 package.json、ctx.configEditor.configuration()、资产目录,以及上述会话缓存 JSON。
写: 无。lib/ 中无 writeFileSync / copyFileSync / rmSync,无 configEditor.edit;卸载后不留痕迹。
HTTP 仅两个 GET:/config-guard/state、/config-guard/assets;其它方法返回 405,未知路径 404。
安装与启用¶
要求 Node >=20。DSH 侧 package.json 声明兼容 >=0.2.1-rc.5,在 0.2.2-rc.1 上测试;依赖宿主能力包括 webServer、configEditor、pluginManager、appReady。
安装步骤:
- 在插件包目录执行下列命令(资料原文,勿用凭空的
dsh plugin add拼接):
node install.mjs --profile desktop
- 重启 DSH。
- 打开 设置 → 配置继承守卫。
卸载与演练:
node install.mjs --profile desktop --uninstall
node install.mjs --profile desktop --dry-run
--dry-run 只打印计划,不实际安装。
典型用法¶
安装并重启后,从设置页进入「配置继承守卫」即可,无需额外配置文件字段(资料未列出用户侧配置项)。
可依次查看:
- 分类清单与健康度、检查项。
- 配置继承行级标注与缺失键。
- 资产体积与冲突列表。
- 工具调用聚合(基于宿主已有缓存)。
仓库内测试命令供维护者或自审源码时使用:
node --test test/*.test.js
node test/smoke.mjs
只读冒烟会验证 GET 通过、非 GET 被拒、profile 目录零新增。
适用场景与注意¶
适合: 长期在单 profile 上叠 patch 与 bundle 的 DSH 用户;升级前后想快速看清「需补齐」与冲突;想对照会话统计判断 MCP/工具是否闲置。
注意:
- 插件以当前 DSH 进程权限运行,能读到的配置与会话缓存都会纳入报告;安装前应阅读 GitHub 仓库 源码与 MIT 许可证。
- 设置页截图说明使用示例数据,非真实用户配置。
- 社区目录站(如 skillhub 插件页)与 DeepSeek / 幻方无官方从属;发现与安装渠道以目录站与 README 为准,本 README 说明 npm 包名
dsh-config-guard用于目录站从 npm 安装的路径,与本地install.mjs流程并列存在,按你实际采用的发布渠道操作。
结尾¶
dsh-config-guard 把配置继承、资产冲突、健康分与工具使用收成一份只读报告,适合在改 patch 或升级 DSH 前先扫一眼。详情与源码见 GitHub,目录入口见 skillhub 插件页。