前言¶
DSH 的理念是「一切皆插件」。实际使用时,一个 DSH profile 往往会依赖多个插件,来源可能包括 npm 包、GitHub 仓库、固定 commit/tag,以及本地 link:、file: 依赖。逐个查看版本、检查更新、删除旧插件时,操作会比较分散。
dsh-plugin-manager 将这些操作放进 DSH Web 设置页中:进入页面时先读取本地状态,点击「检查更新」后再访问 npm 或 GitHub,确认存在新版本或新 commit 时再启用更新按钮。
这是什么¶
dsh-plugin-manager 是由 huahai0202 维护的 DSH 插件,用于在 DSH Web 设置页中管理用户安装的 DeepSeek Harness 插件。
它提供「插件管理」入口,可以查看当前 DSH profile 的直接依赖及已安装版本,手动检查更新,更新单个插件或全部可更新插件,以及删除插件。
核心功能¶
下面介绍已核实的能力。
- 列出当前 DSH profile 的直接依赖及已安装版本。
- 进入页面时只读取本地状态,点击「检查更新」后才访问 npm 或 GitHub。
- 对 GitHub 分支源比较
pnpm-lock.yaml中的当前 commit 与远端 commit。 - 仅在确认存在新版本或新 commit 时启用更新按钮。
- 支持更新单个插件、更新全部可更新插件,以及删除插件。
- 更新和删除后按 DSH 的插件机制同步
dsh.profile.bundles。 - 页面文案跟随 DSH 的语言设置,支持中文和英文。
这里的关键点是:页面默认只展示本地状态,只有点击「检查更新」时才会主动访问远端。
安装与启用¶
使用前提是需要 Node.js 22.19+ 和 pnpm。
先执行下面命令,将插件安装到 web profile:
dsh plugin --profile web add github:huahai0202/dsh-plugin-manager
安装完成后重启 dsh web,然后在「设置 → 插件管理」中使用。
典型用法¶
日常使用通常按下面的顺序进行:
1、进入「设置 → 插件管理」,查看当前 profile 下的插件列表和已安装版本。
2、点击「检查更新」,让页面访问 npm 或 GitHub,检查是否存在新版本或新 commit。
3、如果某个插件有可更新项,可以更新单个插件;如果多个插件都需要更新,可以更新全部可更新插件。
4、如果插件不再需要,可以删除插件。
5、更新或删除完成后重启 dsh web,运行中的插件代码才会重新加载。
使用中有几个边界需要注意:
- 「检查更新」是唯一会主动访问远端的检查操作。
- GitHub 固定 commit 或 tag 会显示为固定引用,不会提示分支更新。
link:、file:等本地依赖只展示,不执行远端更新。- 更新和删除后按 DSH 的插件机制同步
dsh.profile.bundles,因此完成后需要重启dsh web。
适用场景与注意¶
适合需要在 DSH Web 中维护多个 profile 插件的开发者。尤其是插件来源混合了 npm、GitHub 和本地依赖时,可以在页面中集中查看版本、检查更新和删除插件,而不需要反复切换到终端处理。
安装前应检查源码与许可证。dsh-plugin-manager 使用 MIT 许可证。由于插件以当前 dsh 进程权限运行,安装前应确认来源可信,并了解其会执行本地状态读取、远端检查、更新或删除等插件管理操作。
参考¶
- 目录页:https://www.skillhub.cn/plugins/huahai0202/dsh-plugin-manager
- GitHub:https://github.com/huahai0202/dsh-plugin-manager