前言¶
在 DSH 中扩展智能体能力时,插件常常来自 GitHub 仓库。手动找插件需要搜索 topic:dsh-plugin、逐个检查 package.json、确认是否存在 dsh.bundle / dsh.client,再处理安装、更新和兼容性问题。dsh-plugin-mall 把这些步骤收敛到 dsh 里:搜索带 topic:dsh-plugin 的仓库,自动校验 manifest,在设置页提供插件市场入口,并提供五个可在任意会话使用的 agent 工具。
这是什么¶
1e0zj/dsh-plugin-mall 是一个 dsh 插件市场,由 1e0zj 维护,许可证为 MIT,已核实资料中的 package.json 版本为 0.4.17。它面向本地 dsh profile,用于发现、校验、安装和更新 GitHub 上的 dsh 插件仓库。它不是 DeepSeek / 幻方官方应用商店,而是社区插件仓库。
核心功能¶
- 搜索 GitHub 上带
topic:dsh-plugin标签的插件仓库。 - 自动抓取搜索结果的
package.json,并校验dsh.bundle/dsh.clientmanifest。 - 在 dsh web UI 中提供
Settings → Plugins → Marketplacetab。 - 提供五个可在任意会话使用的 agent 工具。
- 支持一键安装和更新插件;安装来源 npm 优先,并与 registry
latest对比。 - 浏览时静态扫描兼容性徽章,包括声明冲突、独占组、loader-id 冲突、宿主模块遮蔽、peer/Node/OS 范围。
- 安装前运行隔离 preflight:禁用 scripts 安装到临时目录,并与 live profile 比对;硬冲突阻断,警告需显式确认。
- 防 squatting:npm tarball 仅在 registry entry 的
repositoryURL 指回同一 GitHub repo 时优先,否则回退到显式github:spec。 - 内置 rate-limit circuit breaker、GitHub 1000-result 搜索窗口处理、pnpm 自修复、loopback 一键 dsh 重启。
- 安装过程中会快照 profile 的关键文件,pnpm 失败后恢复。
安装与启用¶
从 npm 安装:
dsh plugin --profile web add @1e0zj/dsh-plugin-mall
安装后重启 dsh。
从 GitHub 安装:
dsh plugin --profile web add github:1e0zj/dsh-plugin-mall
安装后重启 dsh。
本地开发时,当前 link: 安装不可用。已核实资料给出的原因是上游框架包 dist-tags / peer ranges 冲突;可改为先 npm pack 打本地 tarball,再用 file: spec 安装 .tgz。示意如下:
npm pack
dsh plugin --profile web add file:./<你的 .tgz 文件名>
重新打包后直接 add 不会更新;先 remove 再 add,或给测试构建独立版本,然后完全重启 dsh。
典型用法¶
1、在 Settings → Plugins → Marketplace 中搜索带 topic:dsh-plugin 的仓库。
2、查看浏览时的兼容性徽章。徽章来自静态扫描,覆盖声明冲突、独占组、loader-id 冲突、宿主模块遮蔽、peer/Node/OS 范围;这些徽章是 advisory,安装前 preflight 才是强制检查。
3、安装插件。安装前会运行隔离 preflight,将候选插件禁用 scripts 安装到临时目录,并与 live profile 比对;硬冲突阻断,警告需显式确认。
4、更新插件。已安装插件可与 registry latest 对比,支持一键更新。
5、如需额外启动保护,通过 guard launch 启动,可增加 grace window,覆盖 marketplace 之后条目的加载/应用失败。
6、如使用一键 dsh 重启,注意它仅限 loopback,可通过 allowRestart: false 禁用;在 Windows 交互终端中重启会打开可见控制台,关闭窗口会终止 guard/dsh 树。
适用场景与注意¶
适合在本地 dsh profile 中管理插件的人:需要从 GitHub 找 dsh 插件、校验 manifest、安装更新,并在安装前检查冲突。
需要注意:
- 浏览时的兼容性徽章只是 advisory,安装 preflight 才是强制检查。
- 插件以当前 dsh 进程权限运行,安装前应检查源码与许可证;当前仓库许可证为
MIT。 link:安装当前不可用,本地开发建议使用npm pack打 tarball 后用file:spec 安装。- 重新打包后再次
add不一定更新,需要先remove或改版本,然后完全重启 dsh。 - 自
v0.3.4起(含v0.4.17)存在已知问题:普通dsh web启动可能在 marketplace 插件加载后、后续 loader 条目加载完成前提交并删除 pending snapshot。
结尾¶
dsh-plugin-mall 把 GitHub 插件搜索、manifest 校验、安装 preflight、更新管理和 dsh 重启保护放进同一个 dsh 插件里。使用前仍需检查源码和运行权限。
仓库:
https://github.com/1e0zj/dsh-plugin-mall
目录页线索:
https://www.skillhub.cn/plugins/1e0zj/dsh-plugin-mall
该 URL 来自线索,未作为已核实正文直接出现;以 GitHub 仓库信息为准。