DSH 的插件生态日益扩大,但找到合适的插件往往需要跨越多个目录。简单的 GitHub 搜索容易混入通用仓库或冷门项目,而仅靠名称匹配又会遗漏已收录但名称不相关的优质插件。dsh-find-plugins 插件旨在为 agent 提供一个工具,直接在本地通过聚合多源数据来解决这个问题。
插件简介¶
该插件由 Eray114514 维护,采用 MIT 许可证。它为 DSH agent 提供了一个名为 find_dsh_plugins 的工具。该工具搜索整个 DSH 插件生态,并按 相关性 × 信任度 × 新鲜度 × 热度 进行排序,而不仅仅是依赖 GitHub stars。
安装与启用¶
安装前请确保环境满足要求:
* Node.js 版本 >= 22
* DSH 已安装 @deepseek-ai/dsh-tools(版本 >= 0.1.5-rc.2 或 >= 0.2.0-rc.1)
* 注意:dsh-tools 必须与宿主共享同一个实例(通过 peerDependencies 实现)。
安装命令如下:
dsh plugin --profile <你的 profile> add dsh-find-plugins
安装完成后,重启 DSH 以激活 find_dsh_plugins 工具。
核心功能¶
- 全生态搜索:该工具检索整个 DSH 插件生态,而非单一来源。
- 多维排名:结果按
相关性 × 信任度 × 新鲜度 × 热度排序。这种机制避免了单纯按 star 数排名带来的噪音,也解决了仅靠字面名称匹配导致的优质插件沉底问题。 - 七源聚合:数据来源于 7 个独立源,包括:
- dsh.so
- dsh.works
- radar
- awesome-dsh-plugin
- 岚叔目录
- npm registry
- GitHub topics
- 运行时特性:
- 只读操作:插件本身不执行安装、卸载或启停操作,也不修改 profile 或
cordis.patch.yml。 - 内存缓存:数据仅保存在内存中,不落盘,不拥有索引,避免缓存过期问题。
- 无模型调用:插件不进行模型调用,减少延迟和开销。
- 只读操作:插件本身不执行安装、卸载或启停操作,也不修改 profile 或
使用方法¶
安装并重启 DSH 后,agent 可以直接使用 find_dsh_plugins 工具。
使用时支持空格分隔的多个关键词。例如:
find_dsh_plugins terminal memory
如果需要禁用加载时的预预热(默认会在插件加载后 5 秒起后台预热一次),可以设置环境变量:
DSH_FIND_PLUGINS_NO_PREWARM=1
适用场景与注意事项¶
- 适用场景:需要在 DSH 生态中快速定位特定功能的插件,或希望获取经过多源验证的插件列表。
- 权限限制:该插件以当前 DSH 进程的权限运行,且为只读操作。在安装任何插件前,建议阅读其源码与许可证。
- 依赖检查:由于
dsh-tools必须共享实例,错误的依赖配置会导致服务激活失败。