DSH(DeepSeek Harness)的“一切皆插件”理念意味着开发者需要频繁处理配置、模块解析和调试。dsh-plugin-development 是一个插件,其内容仅包含一个技能:安装时将包内的 skills/ 目录注册为技能根,使其随插件进入 agent 的技能目录。
插件介绍¶
该插件由 gezi-wen 维护,属于工作流类别。它是一个 MIT 许可的开源工具,旨在辅助 DSH 插件的开发、调试与发布。
核心功能¶
插件提供了覆盖 DSH 插件全生命周期的工具集:
- 双半包骨架:提供
package.json的必要字段(main、exports["./client"]、dsh.bundle.patch、dsh.client)、cordis.patch.yml以及手写的 ModuleLoader client 半。 - 对着 fork 开发:提供将 fork 链接到一个丢弃式试验 profile 的方法,以及三级验证(配置组合 → 模块解析 → 真执行),明确
dsh plugin与 profile 的关系。 - 发布与上线:支持推送到 GitHub 或发布到 npm,并能在不触碰安装状态的情况下,将新版本部署到正在运行的 profile。
- 坑清单:列出常见陷阱,特别是宿主插件在 PowerShell 子进程中运行时遇到的三个问题(AMSI 拦截胖脚本、stdout 编码、编译缓存失效),以及“插件安装但界面不出现”的排查链。
安装与启用¶
使用官方命令安装插件:
dsh plugin --profile web add dsh-plugin-development
安装时,包内的 skills/ 目录会被注册为一个技能根。
工作原理¶
插件利用 cordis.patch.yml 机制进行扩展。其布局包含 package.json(定义 dsh.bundle.patch)、cordis.patch.yml 和 skills/ 目录。
在 cordis.patch.yml 中,!!js 里的 baseUrl 解析到本包,因此路径会跟随安装位置走。插件依赖 @deepseek-ai/dsh-skill-filesystem。
适用场景与注意¶
- 适用场景:需要搭建 DSH 插件骨架、进行插件调试和发布流程管理的开发者。
- 注意:该插件以当前 DSH 进程权限运行。安装前请务必检查源码与许可证(MIT)。
结语¶
该插件将 DSH 插件开发流程工具化,覆盖了从骨架搭建到发布上线的全链路,并提供常见坑的排查清单。