前言¶
DSH 的理念是「一切皆插件」。第三方插件装得多了之后,Web GUI 设置页里那份内置的「插件列表」就开始不够用:想确认某个插件是不是第三方的、挂在哪些位置、具体做什么,都得另外翻资料。下面介绍的 dsh-plugin-catalog 针对的就是这个问题——它把 设置 → 插件 页升级为一本插件目录,补充第三方徽标、挂载点聚合和中英文功能说明,但不改变插件本身的安装与管理方式。
这是什么¶
dsh-plugin-catalog 是一个 DeepSeek Harness(DSH)Web GUI 插件,由 LuniteGlaze 维护,当前版本 1.0.0,License 为 MIT。它接管设置页中的「插件列表」标签页,把原来的列表替换为一本可搜索、可筛选的插件目录,解决「装了一堆插件,却看不清全貌」的问题。
核心功能¶
第三方徽标与头部计数¶
以 profile 依赖清单判定插件是否为第三方,卡片上直接给出徽标,页面头部汇总计数。
挂载点聚合¶
一个插件一张卡。如果同一插件挂载了多个位置,卡片显示 ×N 挂载 徽标,展开后可以查看每个挂载点的层级/状态。
中英文功能说明¶
卡片标题行单行展示中英文功能说明,悬停查看全文,展开后可在线编辑。说明是模块级的,编辑结果持久化在 $DSH_HOME/plugin-descriptions.json。说明功能与内置描述字典来自 dsh-plugin-description(MIT),详见仓库中的 THIRD_PARTY_NOTICES.md。
搜索、筛选与排序¶
- 搜索:分词 AND、相关性排序、命中高亮;
- 快速筛选:全部 / 第三方 / 已启用 / 已停用;
- 排序:名称 / 第三方优先 / 状态优先。
一键复制¶
来源 profile 与 entryId 支持一键复制,方便在排查问题或写脚本时直接引用。
安装与启用¶
推荐从 GitHub Release 安装:
dsh plugin --profile web add https://github.com/LuniteGlaze/dsh-plugin-catalog/releases/latest/download/dsh-plugin-catalog.tgz
# 重启 dsh web 生效
也可以从 git 安装。仓库已提交构建产物 lib/,无需构建授权:
dsh plugin --profile web add github:LuniteGlaze/dsh-plugin-catalog
经过上面的步骤,重启 dsh web 后,设置 → 插件 页即为目录视图。
二次开发¶
TypeScript 源码在 src/,先修改源码,再执行构建与类型检查:
pnpm build
pnpm typecheck
适用场景与注意¶
适合插件装得比较多、需要经常确认「装了什么、挂在哪、干什么用」的 DSH 使用者。
- 本插件会禁用内置的「插件列表」标签页行;卸载后内置列表自动恢复。
- 与同样接管「插件列表」tab 的插件(如 dsh-plugin-description)互斥,不建议同时安装。
- 插件以当前 dsh 进程的权限运行。安装前建议先阅读源码与许可证(MIT),确认可以接受再安装。
结尾¶
dsh-plugin-catalog 没有引入新的插件管理流程,只是把设置页里已有的信息组织成一本可检索的目录。源码与发布包见 GitHub:https://github.com/LuniteGlaze/dsh-plugin-catalog 。社区插件目录(独立站点,与 DeepSeek、幻方无官方从属关系)上的条目地址来自插件线索,仓库资料中未出现,仅供参考:https://www.skillhub.cn/plugins/LuniteGlaze/dsh-plugin-catalog 。