前言¶
DSH 的插件理念是「一切皆插件」。如果本机 web profile 里需要频繁增加、停用或卸载插件,命令行方式通常会直接面对 profile 的 package.json 与 dsh.profile.bundles,改完后还要重启 dsh web 并硬刷新浏览器。
dsh-plugin-manager 把这部分操作放进 DeepSeek Harness Web GUI 的设置面板:列出、启用、禁用、安装、卸载 web profile 的插件。DSH 社区目录是独立站点,与 DeepSeek / 幻方无官方从属关系,不应理解为官方应用商店。
这是什么¶
dsh-plugin-manager 是在 DeepSeek Harness Web GUI 内管理本机插件的 DSH 插件。它由 fuyao606 维护,许可证为 MIT。
它默认管理 web profile,读取:
$DSH_HOME/profiles/web/package.json中的dependencies与dsh.profile.bundlesnode_modules中的实际版本
界面上会区分「用户插件」与「内置模块」。
核心功能¶
列出插件¶
在 DeepSeek Harness Web GUI 的设置面板里查看当前 profile 中的插件,并结合 package.json 与 node_modules 显示实际版本。
启用与禁用¶
启用或禁用插件时,切换 dsh.profile.bundles 中的挂载状态。禁用会保留已安装内容,只是下次启动时不再加载该 bundle。
安装与卸载¶
安装时输入 npm 包名,在 profile 目录执行 pnpm add <spec>,并按安装状态对账 bundles。
卸载时执行 pnpm remove <name>,并对账 bundles。
API 与客户端¶
dsh-plugin-manager 提供 /plugin-manager/api JSON API,操作限定为:
list
enable
disable
install
remove
API 只接受 POST,并复用 DSH Web API 的请求信任围栏,检查回环 Host、trustedHosts 和同源请求。
客户端注册 settings.section slot,渲染插件管理界面。
校验¶
插件对 API 和安装规格使用信任围栏与白名单校验。安装规格仅支持 npm 包名;github:、file:、本地路径和 tarball URL 等规格需走命令行。
安装与启用¶
推荐安装¶
推荐从 GitHub 安装:
dsh plugin --profile web add github:fuyao606/dsh-plugin-manager
固定版本安装¶
也可以固定到指定版本:
dsh plugin --profile web add github:fuyao606/dsh-plugin-manager#v0.1.1
npm 方式安装¶
如果已发布 npm 包,可以使用:
dsh plugin --profile web add dsh-plugin-manager@latest
本地开发安装¶
先克隆仓库,再构建后安装:
git clone https://github.com/fuyao606/dsh-plugin-manager.git
cd dsh-plugin-manager
pnpm install
pnpm build
dsh plugin --profile web add ../dsh-plugin-manager
打开插件管理¶
安装完成后重启 dsh web,并硬刷新浏览器,然后打开:
设置 → 插件管理
典型用法¶
安装规格¶
「安装插件」输入框支持以下 npm 包名形式:
namename@versionname@tag@scope/name@scope/name@version
示例规格:
@tonydua/dsh-web-search-exa
dsh-better-sidebar@latest
dsh-plugin@1.2.3
github:、file:、本地路径和 tarball URL 等规格请改用命令行安装。
状态说明¶
- 已启用:bundle 已挂载到
dsh.profile.bundles。 - 已禁用:包仍保留安装,但已移出 bundle 挂载列表。
- 已阻断:与当前 profile 的 Cordis patch ID 冲突,不能强行启用。
- 普通依赖:npm 依赖,不是 DSH bundle,不支持启用 / 禁用。
- 内置:profile 原有的内置 bundle,不可卸载。
适用场景与注意¶
适合需要管理本机 DSH web profile 插件的开发者。使用前需要注意:
- 所有改动只落到 profile 的
package.json和node_modules,需重启dsh web并硬刷新浏览器后生效。 - Host 半改动无法热加载,仅刷新页面不会使配置生效。
- 默认管理
webprofile;使用其他 profile 时,请确保该 profile 已存在且能由 DSH 正常启动。 - 普通依赖不是 DSH bundle,不支持启用 / 禁用。
- 内置 bundle 不可卸载。
- 已阻断表示与当前 profile 的 Cordis patch ID 冲突,不能强行启用。
- 要求 Node.js
>=20,包管理器使用pnpm。 - 插件仍会以本机 DSH 进程权限运行,请只安装信任的 npm 包;安装前应检查源码与许可证。
链接¶
- GitHub:
https://github.com/fuyao606/dsh-plugin-manager - 插件目录页:
https://www.skillhub.cn/plugins/fuyao606/dsh-plugin-manager