Registry Aggregator:在 DSH 里聚合 npm、GitHub 与 JSON 插件目录

前言

DeepSeek Harness(DSH)采用「一切皆插件」的扩展方式,原生 Plugin Manager 负责安装、启用、卸载与 bundle 生命周期。若插件只散落在 npm、GitHub 或自建 JSON 目录里,逐个打开页面查版本、对照当前 Harness 是否兼容,再手动拼安装 spec,步骤多且容易漏更新。

Registry Aggregator(@stolyarovmn/dsh-ui-registry-aggregator)在原生 Plugin Manager 之上增加联邦式发现与更新发现:把多个来源合成可搜索索引,安装仍走 DSH 原生 remote.pluginManager 路径。维护者为 Stolyarovmn,当前稳定版为 0.5.2,面向 DSH 0.2.x 实现线,不包含 DSH 0.1.x 兼容代码。

这是什么

一句话:为 DeepSeek Harness 0.2.x 提供的联邦插件注册表聚合 UI,与原生 Plugin Manager 集成,用于发现插件、展示兼容性与更新,并 orchestrate 更新流程。

声明的 DSH 兼容范围:>=0.2.0-rc.2 <0.3.0;README 中的验证基线为 DSH v0.2.0-rc.2。社区目录页:SkillHub - dsh-ui-registry-aggregator;源码与说明:GitHub - Stolyarovmn/dsh-ui-registry-aggregator。

核心功能

原生 Plugin Manager 仍负责安装、启用/禁用、卸载与 bundle 生命周期;本插件补充发现、兼容性证据、元数据与更新编排。

主 Plugins 页导航

在 DSH 0.2.0-rc.2 上,Registry Aggregator 扩展主 Plugins 列表,提供 Installed | Sources | Browse | Updates 导航(沿用原生 Installed 标题/计数视觉):

  • Installed:保留原生已安装卡片;若存在符合条件的新版本,卡片上显示 Update → vX.Y.Z。
  • Sources / Browse / Updates:直接出现在主 Plugins 页;Updates 旁显示数字更新计数;支持顺序执行 Update all(Registry Aggregator 自身最后更新,避免中断队列)。
  • 打开 bundle/详情页时,主列表上的扩展界面会自动收起;Installed → Registry Aggregator 内仍可通过 plugins.bundle.config 详情视图作为后备入口。

README 说明:stock 0.2.0-rc.2 未暴露列表级 Plugin Manager slot,主页面集成是为 rc.2 准备的兼容桥;待 DSH 提供正式 slot API 后应迁移。

Sources(来源)

  • 内置 npm、GitHub 来源;支持自定义 JSON 与企业 catalog。
  • 启用/禁用、添加、删除、刷新、复制地址;展示包/仓库数量、健康与错误状态。
  • 通过 ctx.configForms.get('registry-aggregator') 做 live 配置;经 DSH Connection 服务做认证 Host RPC。
  • Host 侧对响应大小、超时、重定向校验、DNS pinning、私网访问等有边界控制。

Browse(浏览与搜索)

  • 在已启用的 npm、GitHub、自定义 JSON、企业来源上做联邦搜索;空查询时可看 popular/default 结果。
  • 来源、release、新鲜度、tag、兼容性、分页大小等紧凑筛选;可按相关性、stars、下载量、新鲜度、名称组合排序;支持 20 / 50 / 100 分页。
  • 对实际运行中的 DSH 版本标注 Compatible / Incompatible / Not verified;已知不兼容包在安装前会被禁用。
  • 安装路径:原生 remote.pluginManager.inspect() → installBundle(),图标一键安装。

Updates(更新)

  • 从原生已安装 bundle 与最新 npm manifest 发现更新;单包更新走原生 Plugin Manager。
  • Update all 顺序执行;明确不兼容的更新目标保持禁用。

架构概览

Host 通过 Connection RPC 暴露 /api/plugin-sources/ 下的 health、counts、browse、icons、metadata、download-stats 等;适配 npm、GitHub、custom-json、corporate。客户端配置变更经 registry-aggregator 表单写入 Host Config.sources。

DSH Plugins
  ├─ Installed | Sources | Browse | Updates
  └─ Installed → Registry Aggregator → plugins.bundle.config(Sources / Browse / Updates)

Plugin lifecycle → native remote.pluginManager(inspect / installBundle / listBundles)

安装与启用

官方 README 给出的 npm 安装示例(PowerShell,需与目标 DSH 版本、profile、DSH_HOME 一致):

$DSH_VERSION = "0.2.0-rc.2"
$PROFILE = "dsh-020-test"
$env:DSH_HOME = "$env:USERPROFILE\.dsh-020-test"

pnpm dlx "@deepseek-ai/dsh@$DSH_VERSION" plugin --profile $PROFILE add "@stolyarovmn/dsh-ui-registry-aggregator@0.5.2"
pnpm dlx "@deepseek-ai/dsh@$DSH_VERSION" --profile $PROFILE

未发布开发构建可从 GitHub 指定 commit SHA 安装(README 中的 Test from GitHub 段落);将 <commit-sha> 替换为实际提交。

典型用法

  1. 安装并启动 DSH 后,打开 Plugins,在 Sources 中确认 npm/GitHub 或添加 JSON、企业 catalog,按需刷新与健康检查。
  2. 进入 Browse,输入关键词或留空浏览默认结果,用兼容性筛选缩小范围,对目标包执行 inspect → 安装。
  3. 在 Installed 或 Updates 查看待更新数量,单包 Update → vX.Y.Z 或使用 Update all(启动后顺序执行,README 注明尚未实现取消)。

配置入口:Settings 中与 registry-aggregator 关联的表单(README 架构图:ctx.configForms.get('registry-aggregator'))。

适用场景与注意

适合谁:已在 DSH 0.2.0-rc.2 及以上(且 <0.3.0)环境使用原生 Plugin Manager,需要从多个 registry 统一发现、对照当前 Harness 版本看兼容性、并集中处理 npm 侧更新的开发者。

版本线:历史分支 dsh-0.1.7(稳定 v0.4.17 等)对应旧版 DSH;当前 main 为 DSH 0.2.x 实现线。选用插件版本须与本地 DSH 大版本一致。

已知限制(README Known limitations):

  • 原生 Add plugin 对话框中的 build-script 审批仍由原生流程处理。
  • Update all 启动后顺序跑完,暂无取消。
  • 自动更新发现尚未覆盖「仅 GitHub、无 npm 包身份」的已安装依赖。
  • 主 Plugins 列表表面向 0.2.0-rc.2 的兼容桥,随 DSH slot API 演进可能调整。

安全与权限:插件以当前 DSH 进程权限运行,Sources/Browse 会发起联网 RPC。安装前请阅读仓库源码与 MIT 许可证,确认来源 URL 与组织策略允许访问 npm、GitHub 或自建 catalog。

SkillHub 等社区目录为独立站点,与 DeepSeek / 幻方无官方从属关系;本文安装命令与版本号均来自项目 README,不以目录页为准若二者冲突。

结尾

Registry Aggregator 不改变 DSH 原生安装链路,而是把 npm、GitHub、JSON 与企业目录聚合成可搜索、带兼容性证据的索引,并在 Plugins 页集中呈现来源管理与更新队列。若你正在 DSH 0.2.x 上维护插件环境,可按 README 安装 0.5.2 后从 Sources → Browse → Updates 走通一遍流程。

  • 目录页:https://www.skillhub.cn/plugins/Stolyarovmn/dsh-ui-registry-aggregator
  • GitHub:https://github.com/Stolyarovmn/dsh-ui-registry-aggregator
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye