前言¶
DeepSeek Harness(DSH)把能力拆成可安装的插件包,社区仓库散落在 GitHub 上,靠搜索关键词或口口相传才能找到合适项目。维护者 yuan2042-droid 的 dsh-plugin-directory 在 DSH 左侧栏增加「插件目录」入口:把已筛选的社区插件按中文分类归档,支持搜索、多维排序和卡片/表格视图,详情页可复制安装命令,或在支持的宿主上一键走插件管理器安装。界面在本地渲染,目录数据随包发布,运行时不需要联网,也不上报使用行为。
这是什么¶
dsh-plugin-directory 是 DSH 的 web 客户端插件(dsh.client.platform: web),通过 Cordis patch 向宿主注册侧边栏面板与中央主面板。它解决的是「不知道有哪些社区插件、装哪一条命令」的问题,而不是替代 GitHub 或 SkillHub 等独立站点;社区目录站点与 DeepSeek / 幻方无官方从属关系。
- 维护者:yuan2042-droid
- 仓库:yuan2042-droid/dsh-plugin-directory
- 目录页:SkillHub 插件页
- 许可证:MIT(package.json 与 README 一致)
界面与核心功能¶
装好后,左侧栏会多一个四宫格图标的「插件目录」;点击后在中央面板打开目录,点 × 或切回对话即可关闭。
面板自上而下大致是:搜索框、排序下拉、升/降序、卡片/表格切换;一排带数量的分类标签;插件列表(卡片或表格)。单条卡片展示插件名、仓库名、分类色标、描述摘要、标签,以及 Star、语言、更新时间、官方标记等;点开进入详情,可查看指标、标签、GitHub 链接,并复制 dsh plugin add github:owner/repo 形式的安装命令。
README 中归纳的能力如下(数据规模以构建时快照为准,首个版本 README 写明约 648 个插件,package.json 当前版本为 0.2.1):
| 能力 | 说明 |
|---|---|
| 15 个分类 | 官方与核心、市场与资源、文档与教程、办公与科研、上下文与记忆、模型与推理、界面与外观、客户端与移动端、集成与连接、开发与调试、趣味与内容、会话与协作、工具与能力、技能与预设、其他与周边 |
| 排序 | 综合热度、Star、最近更新、Fork、Issue、名称、分类;可切换升/降序 |
| 搜索 | 名称、仓库、描述、标签、分类名;空格分词,需全部命中 |
| 视图 | 卡片、表格 |
| 详情 | 指标、时间、标签、仓库链接、复制安装命令 |
| 一键安装 | 详情中调用宿主 ctx.remote.pluginManager.installBundle 安装 github:owner/repo,与「设置 → 插件」同链路;失败时在弹窗展示宿主返回原因;0.2.1 起改为两步确认,并屏蔽内核本体、awesome 列表、桌面端应用等不应通过目录安装的仓库 |
| 零网络 | 数据在构建期写入 client.js,运行时无需请求 GitHub |
安装与启用¶
插件以当前 DSH 进程权限运行;安装任意社区包前,仍应自行查看目标仓库源码与许可证。下面命令均来自仓库 README。
推荐:Release 离线包(无需 git,也无需构建权限):
dsh plugin --profile web add https://github.com/yuan2042-droid/dsh-plugin-directory/releases/download/v0.1.0/dsh-plugin-directory-0.1.0.tgz
# 桌面端把 web 换成 desktop,然后重启应用
DSH Desktop:可在「设置 → 插件」中搜索 dsh-plugin-directory 安装;或使用上条命令并指定 --profile desktop,然后重启应用。
普通 dsh web:使用与 web profile 相同的 Release URL,安装后重启 dsh web。
从 GitHub 源码仓库安装(本机需有 git;pnpm ≥10 可能拦截 git 依赖的构建脚本,README 说明了 profile 中 pnpm-workspace.yaml 的 allowBuilds 处理方式;构建产物 client.js 已随仓库提交,安装时不跑 prepare):
dsh plugin --profile web add github:yuan2042-droid/dsh-plugin-directory
本地 checkout 开发时可用 dsh plugin --profile demo add .\dsh-plugin-directory,并用 dsh --profile demo --dump-config 确认配置里出现 # == dsh-plugin-directory 段。
典型用法¶
- 按 profile 完成安装并重启 DSH(web 或 desktop)。
- 在左侧栏点击「插件目录」,在中央面板浏览或切换分类标签。
- 在顶部搜索框输入关键词(多词用空格,需全部匹配);用排序下拉调整列表顺序,必要时切换卡片/表格视图。
- 打开目标插件详情:复制安装命令到终端执行,或在支持一键安装的宿主上按提示确认安装;安装失败时查看弹窗中的 code 与 diagnostic,或改用复制的命令手动安装。
维护者刷新目录数据时(需联网抓取,与终端用户使用无关)在仓库根目录执行:
powershell -NoProfile -ExecutionPolicy Bypass -File tools/fetch.ps1
node tools/build.mjs
fetch.ps1 写入 data/raw.json;build.mjs 生成 data/catalog.json 并更新内联数据的 client.js。
适用场景与注意¶
适合:经常在 DSH 里试社区插件、希望在一个面板里按分类浏览、对比 Star 与更新时间,并快速拿到安装命令的 web/desktop 用户。
兼容性:需要宿主提供 sidebar.panellist 与 main 槽位及 layout.selectPanel;README 写明实测于 DSH Desktop 0.2.1-rc.5(dsh web 同为 web 宿主)。0.1.5 以前的 web 宿主不会注册面板,仅在控制台说明原因。包未声明 engines.dsh;若 profile 因兼容性门禁拒绝安装,README 建议可删除 engines 段后再试,实际依赖的是槽位 API。
数据与体积:收录规则在 tools/build.mjs 的 isDshPlugin 中定义(例如仅凭 dsh-plugin topic 的项目不收录,避免污染榜单);分类由 RULES 关键词表匹配。client.js 内联约 230 KB 数据,首次加载会解析一次;规模继续增大时,README 建议改为 Host 侧接口与分页。
安全:目录里的「一键安装」与复制命令都会安装第三方代码;安装前请阅读目标仓库,勿 blindly 安装屏蔽列表之外的敏感命名仓库。
结尾¶
dsh-plugin-directory 把社区 DSH 插件收成侧边栏里的可搜索、可排序本地目录,并对接宿主插件管理器,缩短从「发现」到 dsh plugin add 的路径。进一步了解实现(模块容器、cordis.patch.yml、槽位 id 与 key 需同名等)可直接阅读仓库 README。
- 目录页:https://www.skillhub.cn/plugins/yuan2042-droid/dsh-plugin-directory
- GitHub:https://github.com/yuan2042-droid/dsh-plugin-directory