前言¶
DeepSeek Harness(DSH)社区插件数量已经很大,社区目录 awesome-dsh-plugin 里可以按名称搜索、按分类浏览,但「哪个包最近真的在被装」并不直观。目录条目里自带的下载量口径、更新频率也和 npm 官方统计不完全一致。
如果你希望在本机 DSH 里直接看一份按 npm 真实下载量排序的榜单,并能在日榜、周榜、月榜之间切换,dsh-rank-board(维护者 flysusdjd,分类:联网工具)就是面向这个需求的 Cordis 插件:宿主拉目录、查 npm 并缓存,Web 客户端把结果画在「设置 → 插件榜单」里。
这是什么¶
dsh-rank-board 由宿主端(lib/index.js)和 Web 客户端(client.js)组成。宿主从 awesome-dsh-plugin 拉取社区插件列表,向 npm 官方 API 查询下载量并落盘缓存;浏览器只访问本机 HTTP 接口,不直连 npm,也不持有密钥。界面入口是 DSH 的「设置 → 插件榜单」。
核心功能¶
下面这些是 README 中写明的能力,安装后可在该设置页直接使用。
- 日榜 / 周榜 / 月榜:同一批候选插件,分别按
last-day、last-week、last-month三个口径排名。 - 本机直连 npm:抓取在宿主 Node 进程内完成,绕开浏览器 CORS,避免页面发起大量跨域请求。
- 进度可见:抓取时显示进度条与百分比,结果分批写入,不必等全部完成才看到榜单。
- 限流降级:npm 返回 429 时,先展示社区目录自带的 30 天下载量,并在页面顶部标注「不是实时数据」。
- 落盘缓存:榜单缓存 6 小时,单包下载量缓存 24 小时;重启 DSH 后榜单仍在,第二次刷新通常几秒完成。
- 一键复制安装命令:点击榜单中的某一行,复制该插件在目录中的安装命令(含正确的
profile参数)。 - 空窗口自动抓取:第一次切换到某个时间窗口时会自动开始抓取,也可手动点「刷新」。
安装与启用¶
前置条件:使用 DSH 的 Web 或 Desktop 界面(插件挂在 Web 设置页),宿主 Node.js ≥ 20。插件通过 GitHub Release 分发,暂未发布到 npm。
也可以在 DSH「设置 → 插件市场」中搜索 dsh-rank-board 一键安装。
方式一:GitHub Release(推荐)¶
从 Releases 复制对应版本的 .tgz 链接,在终端执行(--profile 换成你实际使用的 desktop 或 web):
dsh plugin --profile desktop add "https://github.com/flysusdjd/dsh-rank-board/releases/download/v0.1.0/dsh-rank-board-0.1.0.tgz"
社区目录同样支持这种 tarball 安装方式,不需要 npm 账号。
安装后重启 DSH(或重新加载 profile),打开「设置 → 插件榜单」。首次打开会自动开抓,也可以点「刷新」。
典型用法¶
日常使用不需要记命令:在「设置 → 插件榜单」顶部切换日榜 / 周榜 / 月榜,需要更新数据时点「刷新」。想安装榜单里的某个插件时,点击对应行复制安装命令,再到终端或 DSH 插件管理里执行。
若你需要对接或调试,宿主在本机 Web 端口提供 JSON 接口(仅本机):
| 方法 | 路径 | 说明 |
|---|---|---|
GET |
/.dsh-rank-board/board?window=last-day\|last-week\|last-month |
返回当前榜单与抓取进度 |
POST |
/.dsh-rank-board/refresh?window=... |
触发一次后台抓取,立即返回 202 |
响应字段包括 basis(live 实时下载量、catalog 限流降级用的目录 30 天数据、none 尚无缓存)、partial(是否未抓全)、rows(排名行,含 install 安装命令)等。默认会在冷启动或缓存过期时后台自动补抓;若只想手动刷新,可在 profile 的 cordis.patch.yml 中关闭自动刷新:
- id: dsh-rank-board
name: dsh-rank-board
config:
autoRefresh: false
关闭后只能通过界面「刷新」触发抓取。缓存目录为 <profile>/.dsh-rank-board/(board-*.json 为榜单,counts-*.json 为单包计数),删除后可强制冷启动。
适用场景与注意¶
适合谁:经常在 DSH 里逛社区插件、想按 npm 近期下载量做参考的开发者;需要在本机一眼对比日/周/月趋势、并快速复制官方安装命令的场景。
数据口径:下载量是 npm 统计的 tarball 下载次数,包含 CI、镜像同步、批量安装等,不等于真实用户数。只覆盖目录里带有 npm 包名的插件(约 2,600 个);仅提供 tarball、无 npm 包名的条目不会上榜。候选池取目录自带 30 天下载量最高的 400 个再做实时查询;scoped 包需逐个查询,整体受 120 秒截止时间约束,可能出现 partial: true,多次刷新会逐步补齐。未收录进 awesome-dsh-plugin 的插件不会出现。
安全与权限:插件以当前 DSH 进程权限运行,会访问本机网络拉取社区目录与 npm API。安装前请阅读 GitHub 仓库 源码与 MIT 许可证;本插件与 DeepSeek、npm、awesome-dsh-plugin 均无官方关联,社区目录也是独立站点,并非 DSH 官方应用商店。
结尾¶
dsh-rank-board 把「社区目录 + npm 下载量」收拢到 DSH 设置页的一张榜里,用缓存和限流降级减轻反复全量查询的压力。目录介绍见 SkillHub 插件页,源码与 Releases 见 github.com/flysusdjd/dsh-rank-board。