前言¶
DeepSeek Harness 的核心设计理念是「一切皆插件」。在开发过程中,开发者需要从社区索引中寻找可用的插件工具。目前没有原生的 Web UI 界面来浏览 dshplugin.org 的社区目录。dsh-client-plugin-store 插件在设置页面中提供了一个独立的「插件商店」分区,用于浏览、搜索以及安装社区插件。
是什么¶
这是一个社区插件商店面板,允许用户在 DeepSeek Harness Web UI 的设置中直接访问 dshplugin.org 索引。它支持按 star 排序,并提供可复制的、钉死 commit 的安装命令。
核心功能¶
- 浏览与搜索:直接在设置面板中浏览和搜索 dshplugin.org 社区索引(包含 4000+ 插件)。
- 排序:支持按 star 数量进行排序。
- 命令复制:提供可复制的、钉死 commit 的安装命令。
- 独立分区:在设置导航中注册独立的「插件商店」分区。
- 直接操作:通过面板内的双击确认,直接进行插件的安装或卸载。
- 端点保护:安装接口包含三层防护(自定义请求头、Origin 同源校验、白名单机制)。
安装¶
执行以下命令添加插件:
dsh plugin --profile web add github:shiyi-0x7f/dsh-client-plugin-store
使用方法¶
- 安装完成后,重启
dsh --profile web(或 dsh-shell)。 - 打开设置页面,左侧导航会出现独立的「插件商店」分区。
- 在面板中浏览、搜索插件,或点击安装命令进行复制。
- 双击面板内的条目进行确认,可直接安装或卸载插件(重启后生效)。
技术细节与注意事项¶
- Host 端:通过
ctx.webServer注册同源路由/plugin-store/catalog,用于代理社区目录(端点无 CORS 头,浏览器不能直连)。 - 缓存与配置:目录数据采用内存缓存,缓存时长为 1 小时;
config.catalogUrl可用于更换源地址。 - 浏览器端:通过
ctx.slots注册settings.section。 - 样式兼容:使用
--dsw-alias-*令牌,跟随任意主题或皮肤。 - 安全限制:安装规格仅接受目录中定义的
github:owner/repo#完整sha,属于白名单机制。 - 权限与安全:插件以当前 dsh 进程权限运行,安装前应检查源码与许可证。