前言¶
DeepSeek Harness(DSH)采用「一切皆插件」的架构,社区里已有不少带 dsh-plugin topic 的仓库。但 GitHub 上的列表并不等于可直接安装:manifest 是否完整、bundle patch 是否匹配、安装来源能否锁定到精确 commit,都需要逐项核对。手工翻 README、拼安装命令、再处理构建脚本和 Profile 冲突,成本不低。
下面介绍 YELEBAI 维护的 dsh-plugin-marketplace。它既是 DSH Web Profile 里的插件市场 UI,也是自主维护的中心 Registry:扫描器定期核验候选插件,只有通过验证的条目才开放一键安装;其余情况走手动命令或 Agent 引导路径。SkillHub 目录页将其归类为「工作流」,当前版本为 v0.9.2(MIT 许可证)。
这是什么¶
dsh-plugin-marketplace 是 DeepSeek Harness 的插件市场插件,提供:
- 经过 Registry 验证的插件发现与安装;
- 已安装插件的更新、启停、卸载与批量管理;
- 对需要构建或人工判断的插件,通过受约束的 Agent 会话完成引导安装。
维护者:YELEBAI。GitHub 仓库:YELEBAI/dsh-plugin-marketplace。SkillHub 目录页:skillhub.cn/plugins/YELEBAI/dsh-plugin-marketplace。
市场不会直接展示 GitHub dsh-plugin topic 下的全部仓库,只有写入中心 Registry 的插件才会出现。这与单纯浏览 topic 列表的做法不同,安装来源会被锁定到精确 commit 或精确 npm 版本,不会把可变的 main、latest 直接交给包管理器。
核心功能¶
Registry 扫描与验证¶
扫描器每两小时对 topic:dsh-plugin archived:false 做增量扫描,锁定默认分支的 40 位 commit SHA,随后静态验证 manifest、bundle patch、loader entry、运行产物和安装来源。验证通过的条目写入 registry/plugins.json;证据不足但结构有效的进入引导安装审计;结构无效的记入 registry/rejected.json。
扫描器不安装依赖、不执行第三方代码。远程 Registry 暂时不可用时,npm 包内附带的 Registry 快照仍可支撑市场基本功能。
四种安装模式¶
| 模式 | 触发条件 | 市场行为 |
|---|---|---|
| 一键安装 | 精确 GitHub commit 或 npm 版本已通过全部检查 | 直接交给 DSH 官方插件命令安装 |
| 手动命令安装/更新 | 用户提供官方 DSH GitHub 安装命令 | 解析命令、锁定 commit、验证 Bundle 和冲突后安装或更新 |
| Agent 安装 | 需要构建授权、生命周期脚本、额外配置或进一步核验 | 创建绑定 Registry 证据的 DSH Agent 会话 |
| 查看说明 | Profile 不兼容、身份无法确认或缺少可安全执行的路径 | 不执行命令,只打开作者的安装说明 |
市场 UI 三个子页面¶
安装并启动后,进入 设置 → 插件 → 插件市场:
- 插件市场:搜索、分类、Star 排序、查看验证信息并安装插件;支持最近 7 天 Star 增长趋势。
- 已安装插件:按更新/启停状态筛选,单独或批量更新、卸载、启用、停用;可安全重启 DSH。
- 管理与诊断:手动命令安装、选择插件安装位置、配置 Agent 工作区、执行冲突诊断。
Agent 引导安装¶
对仍需构建或生命周期脚本的插件,市场会显示 Agent 安装(已安装插件的引导型更新显示 Agent 更新)。每个引导任务的第一步加载内置 install-dsh-plugin Skill,在专用工作区中执行只读检查,再按 DSH 原生审批层逐项请求确认。Agent 默认绑定 $DSH_HOME/marketplace/agent-workspace,可在 管理与诊断 → Agent 安装与更新工作区 切换到已有目录。
安装管理与冲突诊断¶
已安装插件支持批量更新、启用、停用、卸载,单批最多 50 个。更新判断不只比较版本号:GitHub 来源即使版本号未变,只要 Registry 验证的 commit 与当前安装 commit 不同,也会提示可更新。
冲突面板对已启用插件做启发式静态诊断,检查重复 Bundle ID 和常见 Cordis 服务注册形式。诊断不执行 JavaScript,可能出现误报,但会在安装、更新或启用前阻止新引入的冲突。
安装与启用¶
先用官方命令把市场插件装进 Web Profile。README 给出的安装命令如下:
dsh plugin --profile web add github:YELEBAI/dsh-plugin-marketplace#v0.9.2
本地开发时,也可以指向本地目录:
dsh plugin --profile web add D:/path/to/dsh_Market
安装完成后启动 DSH:
dsh --profile web
启动后打开 设置 → 插件 → 插件市场 即可使用。市场插件以当前 DSH 进程权限运行,安装前应自行检查源码与 MIT 许可证条款。
典型用法¶
从市场一键安装插件¶
在市场首页按分类或搜索找到目标插件,查看 Registry 验证信息后点击安装。满足自动安装条件的插件会直接使用 Registry 锁定的精确来源完成安装,无需手写命令。
手动命令安装¶
在 管理与诊断 → 手动命令安装 中粘贴官方安装命令,例如:
dsh plugin --profile web add github:owner/repo#ref
也可以只填写 github:owner/repo#ref。输入内容不会交给 Shell;市场只接受当前 Profile 的单条 GitHub 安装命令,拒绝额外参数、管道、多命令和危险 ref。tag 或分支会先解析为精确 commit,随后验证 package.json、bundle patch 和冲突;安装过程禁用生命周期脚本。
管理已安装插件¶
在 已安装插件 页面可以检查更新、批量启停或卸载。需要立即同步远端 Registry 时,点击 检查更新 会绕过缓存。操作完成后若插件要求重启,可使用页面提供的 重启 DSH 功能,沿用相同参数和 Profile 重启。
使用自建 Registry¶
默认中心 Registry 地址为:
https://raw.githubusercontent.com/YELEBAI/dsh-plugin-marketplace/main/registry/plugins.json
可通过环境变量覆盖后启动:
$env:DSH_PLUGIN_REGISTRY_URL = 'https://raw.githubusercontent.com/OWNER/REPOSITORY/main/registry/plugins.json'
dsh --profile web
也可在插件配置中设置 registryUrl。远程内容默认缓存 15 分钟并支持 ETag;刷新失败时回退到包内快照。
适用场景与注意¶
适合谁:
- 使用 DSH Web Profile,希望在一个界面里发现、安装和管理社区插件的开发者;
- 需要 Registry 预验证、精确 commit 锁定和批量运维能力的团队;
- 维护自建插件列表、希望复用同一套扫描与验证流程的组织。
使用时注意:
- 插件以当前 DSH 进程权限运行,安装第三方插件前请阅读源码和许可证。
- Agent 安装会接触 README、Issue、脚本和依赖等不可信输入,执行构建或
postinstall等操作前仍须逐项审批。 - SkillHub 等社区目录为独立站点,与 DeepSeek / 幻方无官方从属关系;本市场亦非官方应用商店。
- 市场自更新会读取本仓库主分支版本,并将安装来源固定为解析后的精确 commit。
结尾¶
dsh-plugin-marketplace 把「发现插件」和「安全安装」合成一条工作流:Registry 扫描验证提供可信来源,市场 UI 覆盖搜索、安装、更新和冲突诊断,复杂场景则交给受约束的 Agent 会话。若你已在用 DSH Web Profile 扩展能力,可以按上述命令安装 v0.9.2,再从设置面板进入插件市场试用。
- SkillHub 目录页:https://www.skillhub.cn/plugins/YELEBAI/dsh-plugin-marketplace
- GitHub 仓库:https://github.com/YELEBAI/dsh-plugin-marketplace