前言¶
用 DSH 跑日常任务,有两类小麻烦反复出现:一是工具执行前的确认环节,危险命令必须人工把关,但每条都盯着看很耗精力,漏看又有风险;二是等待环节,审批请求、后台任务什么时候完成,如果不盯着界面就容易错过。
dsh-pi-kit 针对的就是这两个点。它是 DSH 的轻量优化插件合集,把「自动审核」和「提示音」打成一个小包,装上之后日常使用基本零感知,危险操作和等待事件不再错过。下面介绍它的功能、安装和使用方式。
这是什么¶
dsh-pi-kit 由 Pidreamleaves 维护,许可证为 MIT,当前版本 0.1.0。它以一个 workspace 管理三个成员包,通过 bundle 机制一次性挂载:
- auto-review:自动审核门卫
- approval-chime:提示音 / 通知
- pi-kit-settings:聚合设置卡壳
三个包各管一件事,也可以单独安装其中某一个。
核心功能¶
自动审核(auto-review)¶
在工具执行前自动处理确认环节:危险命令拦截、安全操作放行、拿不准的交用户确认。审核用轻量模型完成,复用 DSH 凭据,不需要额外配置密钥。
提示音(approval-chime)¶
在审批请求、询问、后台任务完成时用不同声音提醒。后台作业完成时还会调用系统通知。这样即使切走了窗口,也不会漏掉需要你介入的时刻。
聚合设置卡(pi-kit-settings)¶
三个插件的设置收进一张卡片,入口在「设置 → 插件 → 插件配置 → dsh-pi-kit」,配置持久化存储。如果不装这个设置壳,设置会以独立卡片形态出现。
安装与启用¶
一键安装(推荐)¶
先确保环境里有 pnpm(dsh plugin 内部调用 pnpm 完成安装;若提示 pnpm not found,先 npm install -g pnpm),然后执行:
dsh plugin --profile web add dsh-pi-kit
这条命令会读取包内的 dsh.bundle.patch,由 dsh 自动完成依赖安装与挂载,不需要手写任何 patch。重启 DSH 生效。
web 是内置 Web GUI profile 名;使用其他 profile 时换成对应名字(~/.dsh/profiles/ 下的目录名)。
手动安装¶
等价的写法是直接改 profile 的 package.json,声明依赖并挂载 bundle:
{
"dependencies": { "dsh-pi-kit": "^0.1.0" },
"dsh": { "profile": { "bundles": ["dsh-pi-kit"] } }
}
验证与卸载¶
安装后先用下面的命令确认插件行已挂载:
dsh --profile web --dump-config
不需要时卸载,重启 dsh web 生效:
dsh plugin --profile web remove dsh-pi-kit
两个布局相关的注意点¶
1、profile 使用 pnpm 隔离(isolated)布局时,成员包会被收进嵌套目录,dsh web 启动可能报 Cannot find package 'dsh-auto-reviewer'。在 profile 的 pnpm-workspace.yaml 加 nodeLinker: hoisted 后重新安装即可。
2、想单独停用某个成员,在 patch 层追加一行 - id: <插件 id> disabled: true 就可以,不必整体卸载。
日常使用¶
装好重启后,两个功能默认都是启用状态,可以先用起来再按需调整。
自动审核:审核模型为 deepseek-v4-flash。策略文件 ~/.dsh/auto-review.yml 会在首次启动时自动生成一份带注释的模板,按示例改成自己的规则即可。每次对话 turn 结束时,审核结果以彩色徽章汇总——放行绿、拦截红、提权蓝,点「明细」可以看到每一条的判定理由。
提示音:完成音默认只提醒后台会话,避免正常会话被频繁打扰;如果你希望所有会话都有提示,可以在设置里改。审批音、询问音、完成音三种音色都可以在设置里试听。
从源码安装:想改代码调试的话,可以把三个成员包分别链接进 web profile:
git clone https://github.com/Pidreamleaves/dsh-pi-kit.git
cd dsh-pi-kit
pnpm install
pnpm -r build
dsh plugin --profile web add link:<绝对路径>/dsh-pi-kit/packages/auto-review
dsh plugin --profile web add link:<绝对路径>/dsh-pi-kit/packages/approval-chime
dsh plugin --profile web add link:<绝对路径>/dsh-pi-kit/packages/pi-kit-settings
重启 dsh web 生效;之后改完代码执行 pnpm -r build 再重启即可。
适用场景与注意¶
适合两类人:一是经常让 DSH 执行命令、希望减少手动确认负担又不想放弃安全底线的用户;二是习惯把任务丢到后台、需要及时知道「该回来了」的用户。两个功能可以聚合安装,也可以按需单装,不需要的不用引入。
安装前有一点需要明确:这类客户端插件以当前 dsh 进程的权限运行,它拿到的权限就是你的权限。dsh-pi-kit 是 MIT 许可、源码公开的,安装前建议过一遍仓库源码,确认审核规则和依赖符合自己的预期,再决定是否启用。
结尾¶
dsh-pi-kit 做的事情不复杂:把「危险操作别漏拦」和「等待事件别错过」这两个高频小需求做成插件,一次安装、默认启用、在一张设置卡里调整。如果你的日常 DSH 使用也被这两件事困扰,可以试试。
- GitHub:https://github.com/Pidreamleaves/dsh-pi-kit
- 也可以在 DSH 社区插件目录中检索
dsh-pi-kit查看收录页。