跳过主要内容
N

dsh-devtools

nzl153/dsh-devtools

DSH Agent 文件修改时间机器:session baseline、turn 级修改记录、安全恢复与 conflict 检测

安装

dsh plugin --profile web add github:nzl153/dsh-devtools

README

dsh-devtools

DSH 开发者工具插件集。10 个包共用一套构建与检查流程。

说明:这是一个合集仓库,按需自取。代码 MIT 开源,但不单独提供支持 —— issue 和 PR 可能不会回复。要单独维护的插件会拆成独立仓库。

⚠️ 除 dsh-mode-boost 外,其余插件的面板都挂在 dsh-toolkit-ui 这个共用外壳上,必须连它一起装,只装单个插件不会出现界面。

版本说明
dsh-context-xray1.0.0-rc.2DSH Context X-Ray / Context Inspector
dsh-debrief0.10.0DSH Mission Debrief
dsh-dev-loop0.10.0DSH Dev Loop
dsh-developer-toolkit0.1.0DSH Developer Toolkit
dsh-mode-boost0.2.0模式提升插件
dsh-output-gallery0.10.0DSH Session 产物中心 / Deliverables Gallery
dsh-run-lab0.9.0DSH Agent experiment & A/B comparison
dsh-session-archaeologist1.0.0-rc.2Session Archaeologist
dsh-devtools-time-machine1.0.0-rc.2DSH Agent 文件修改时间机器
dsh-toolkit-ui0.2.0DSH Developer Toolkit UI shell and shared primitives

dsh-devtools-time-machine 这个 npm 名字不等于它的插件 id:dsh-time-machine 在 npm 上已被 他人占用(zjukop 于 2026-08-15 发布),故包名加 dsh-devtools- 前缀。插件 id 不变, 目录名、cordis.patch.yml、API 路由、locale 命名空间仍是 dsh-time-machine

dsh-tool-router 已拆出去单独维护:https://github.com/nzl153/dsh-tool-router

开发

pnpm install
pnpm run check     # typecheck + build + test + integrity 全跑
命令作用
pnpm run typecheck各包 tsc --noEmit
pnpm run build各包 tsdown 构建
pnpm run test各包单测 / smoke / e2e
pnpm run integrity扫全部产物,找「引用了但从未定义」的标识符

关于 integrity

scripts/bundle-integrity.mjs 解析每个包 lib/*.js 的 AST, 把「被引用的名字」减去「声明过的名字」和已知全局,剩下的就是运行时会炸的。

存在的理由是 2026-08-19 那次事故:Shell.tsx 用了 setToolkitOpenId 却没 import, tsdown 判定没人用把它摇掉,编译期零报错,点关闭按钮才 ReferenceError。 已验证:把那行 import 删掉重新构建,这个检查会红。

它不做作用域分析——名字只要在文件任何地方声明过就算数。所以会漏报跨作用域引用, 但不会误报。

dsh-toolkit-ui 是共用外壳,其余插件的面板都挂在它上面。它一坏,所有面板一起坏 —— 排查「好几个插件都有毛病」时先查它。

改完源码务必先 pnpm run typecheck 再 build:tsdown 不做类型检查,类型错误会静默进产物,运行时才炸。

相关插件