DSH (DeepSeek Harness) 的设计理念强调模块化与插件化。当开发者需要扩展功能时,通常需要在本地手动管理 Git 仓库。本插件为 DSH 网页版添加了一个“插件市场”标签页,使其具备在浏览器中浏览、预览并一键安装 GitHub 上发布的 DSH 插件的能力。
它由开发者 Viveksssss 维护,是一个 DSH 客户端插件。它本身是 DSH 的一个插件,同时又是 DSH 插件的安装器,起到了连接 DSH 与社区生态的入口作用。
核心功能¶
该插件主要提供以下能力:
- 仓库浏览与检索:支持按
topic:dsh-plugin、topic:dsh-theme等关键词在 GitHub 上搜索仓库。 - 元信息查看:显示仓库的描述、星标数、Fork 数、编程语言、许可证以及 Topics。
- 一键安装/卸载:通过调用 DSH 官方插件机制,支持一键安装或卸载插件。
- 安装校验:安装后自动检查插件包入口文件是否存在。如果缺失,系统会自动回滚,避免因安装无效插件导致 Profile 无法启动。
- 持久化管理:已启用的插件列表会持久化保存到本地 JSON 文件中,重启 DSH 后依然保留。
- 主题适配:界面样式适配 DSH 的明暗主题。
- 友好反馈:提供错误、警告、提示三种状态的反馈机制。
安装与使用¶
安装插件¶
通过命令行安装该插件到你的 Web Profile:
dsh plugin --profile web add github:Viveksssss/DeepSeek-harness-marketplace
启动与操作¶
安装完成后,启动 DSH 网页版:
dsh web
进入网页版「设置 → 插件」,点击顶部的「插件市场」标签页即可开始使用。
基本操作流程¶
- 搜索:在搜索框输入关键词(如
topic:dsh-plugin)并搜索。 - 预览:点击仓库卡片查看 README、描述及元信息。
- 安装:点击「启用」按钮进行安装,系统会自动校验并处理回滚逻辑。
- 管理:在「已启用列表」中查看所有已安装的插件,点击「停用」进行卸载。
插件识别规则¶
并非所有 GitHub 仓库都能被正确识别为 DSH 插件。要被本插件市场(以及 dsh plugin)识别,仓库需满足以下条件:
- 声明 Bundle:
package.json中需声明dsh.bundle.patch,指向仓库根目录的cordis.patch.yml。 - 声明 Patch:仓库根目录需存在
cordis.patch.yml,并在其中定义 entry 以被 Loader 加载。 - 入口文件真实存在:这是最常见的坑。如果仓库未提交构建产物(如
lib/)且未配置prepare脚本,安装后入口文件将缺失。插件市场会对入口文件进行校验,缺失时自动回滚。
注意事项¶
- 运行环境:插件市场的 UI 功能需要运行
dsh web才能使用。 - 状态文件:启用列表的状态文件存储在
~/.dsh/plugin-marketplace.(注意文件名末尾的点)。 - GitHub API 限制:浏览功能依赖 GitHub API,存在速率限制,遇到限流会提示。
- 插件开发:如果你打算开发插件,必须声明
dsh.bundle和cordis.patch.yml,并确保构建产物或prepare脚本能生成正确的入口文件。
这是一个典型的生态入口工具,旨在简化 DSH 插件的发现与管理流程,适合需要频繁集成第三方 DSH 插件的开发者。