前言¶
DeepSeek Harness(DSH)采用「一切皆插件」的架构,第三方能力往往以 npm 包形式安装并在插件管理或 dshmarket 中启用。插件一多,逐个查版本、停用、卸载旧包、装新版本、再按原意图启用,既重复又容易漏掉「本来关着的插件被误开」。维护者 ricardooooooa 的 dsh-plugin-batch-toggle(客户端类插件)在 Installed、Discover 与 dshmarket 共用页头提供 一键更新,按顺序处理符合条件的 npm 来源 bundle,并在更新前后尽量保留启用/关闭状态;失败项会尝试回滚并继续后续包。下文介绍其定位、能力与安装用法,事实以 GitHub 仓库 README 为准。
这是什么¶
dsh-plugin-batch-toggle 是面向 DSH 桌面客户端的插件,当前发行版本为 v0.2.0(MIT 许可证)。它在插件管理和 dshmarket 界面增加批量更新入口,对「可管理、以自身包名从 npm 注册表安装的第三方 bundle」依次执行:检查版本 → 必要时取消使用 → 移除旧包 → 安装更新 → 恢复原启用意图并核对结果。原先关闭的插件在更新后仍保持关闭。
社区目录页:skillhub.cn 插件条目。截至资料记载(2026-10-30),该包未发布到 npm,也未提交社区目录收录 PR;安装需使用 GitHub Release 预编译 tarball。
核心功能¶
一键顺序更新¶
点击页头 一键更新 后,每个符合条件的包单独走完版本检查与安装流程。界面展示当前项、阶段、进度、失败数量与逐项结果;单项明确失败并完成收尾后,会继续处理后面的项目。
启用状态恢复¶
更新前会记录启用意图;安装完成后按记录恢复。官方启用 API 可能把恢复的 bundle 追加到列表末尾,不能保证与原先交错排列的完整配置顺序完全一致;插件也不会强制打开包内原先关闭的 Cordis 插件项。
停止与安全收尾¶
运行中同一按钮变为 停止更新。停止请求会等待当前项安全收尾或回滚,不会立刻终止底层安装进程。
结果与接续恢复¶
批量更新 标签展示完整结果与恢复状态;「添加插件」菜单另有入口。详情页只显示该插件自身操作,不重复页头按钮。结果与未完成项保存在当前 profile 的 .dsh-plugin-batch-toggle/,重启后可接续;若有 v0.1 遗留恢复记录,会先按记录接续。
失败回滚与限制说明¶
安装或校验失败时会尽力重装原版本并恢复原启用意图。回滚并非完全撤销:第三方脚本、数据变更与运行状态不保证能还原;回滚失败的项目会保留恢复责任。卸载本插件前应先处理未完成项。
更新范围与跳过项¶
自动更新仅适用于可管理、以自身包名从 npm 注册表安装的第三方 bundle。下列情况会跳过(原因可在详情查看):
- 本插件自身、市场载体、官方/核心组件、只读与不可管理项
- Git、本地 file/link、tarball/URL 与 npm 别名来源
查询到的 latest 仅为参考版本。实际安装走 DSH 官方插件管理 SDK,受注册表配置、兼容性检查、脚本审批和 minimumReleaseAge 等策略约束;刚发布的版本可能尚不可装。结果会分别显示更新前版本、查询最新版本与实际安装版本。
本插件不会在一键更新流程中更新自己;升级请使用 DSH 的添加/更新插件入口。DSH 要求重启时只会提示,本插件不自动重启。
安装与启用¶
运行验收基线为 DSH 0.2.1-rc.5,package.json 中兼容声明为 >=0.2.1-rc.5 <0.2.2-0,需要 Node.js 24+。
- 在 DSH 中打开 插件 → 添加插件。
- 粘贴下面 v0.2.0 预编译安装包链接,或先下载后填写文件的绝对路径。
- 安装并启用本插件;若 DSH 提示需要重启,按提示重启。
预编译包无需 TypeScript 或其他构建工具。若使用桌面 profile 的命令行安装,应先完全退出桌面端,并使用与 rc.5 安装附带的同一 CLI。
https://github.com/ricardooooooa/dsh-plugin-batch-toggle/releases/download/v0.2.0/dsh-plugin-batch-toggle-0.2.0.tgz
典型用法¶
安装并启用后,在以下任一位置使用页头 一键更新(页头入口依赖 DOM 标记;宿主页面结构变化时,可改用原生 批量更新 标签或菜单):
- 插件管理中的 Installed、Discover 标签
- dshmarket 市场标签(与市场自带更新按钮分开显示)
- dshmarket 独立设置/侧栏面板
操作步骤:
- 打开插件管理或 dshmarket,确认列表中有待更新的 npm 来源第三方插件。
- 点击 一键更新,观察当前项、阶段与进度。
- 完成后在 批量更新 标签查看逐项结果与恢复状态;若有失败项,按详情处理未完成恢复后再卸载本插件。
需要中途放弃时,点击 停止更新,等待当前项收尾后再查看结果页。
适用场景与注意¶
适合谁: 在 DSH 0.2.1-rc.5 上维护较多 npm 来源第三方插件、希望一次性对齐 registry 最新可用版本,并尽量保持「关着的继续关着」的开发者。
权限与安全: 本插件在 DSH 进程内运行,使用 DSH 现有 Owner 认证与同源校验,不额外监听端口,不需要模型密钥;不上传会话,查询与安装会访问你配置的 npm 注册表。安装前请阅读 源码与 LICENSE,确认接受第三方包安装脚本带来的风险。
生态说明: dshmarket 等为社区目录站点,与 DeepSeek / 幻方无官方从属关系;本 tarball 发行版不进入要求 npm 元数据的官方 Discover 索引,文中的 Discover 入口指安装后在客户端界面看到的按钮。
结尾¶
dsh-plugin-batch-toggle 把 DSH 里重复的 npm 插件更新收成一次顺序任务,并在失败时尽量回滚、继续后续项,同时持久化恢复状态。更多细节、截图与验证记录见 GitHub README;安装使用上述 Release tarball。
- 目录页:https://www.skillhub.cn/plugins/ricardooooooa/dsh-plugin-batch-toggle
- GitHub:https://github.com/ricardooooooa/dsh-plugin-batch-toggle