🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

插件顾问 dsh-so/dsh-plugin-advisor

DeepSeek Harness
dsh-so53 天前有提交已提供中文文档扫描:含敏感能力

用一句话检索插件市场并直接安装所需插件

29.3/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/9/18 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

自动兼容检查有告警:未发布到 npm registry,仅可从源码安装。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add dsh-so/dsh-plugin-advisor
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么
dsh 原生插件 · market
装得上吗
本站已真实安装成功
非静态推断
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 53 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查⚠ 装前注意

未发布到 npm registry,仅可从源码安装

展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✗npm 包@dsh-so/dsh-plugin-advisor(未发布到 npm,仅可源码安装)
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/9/22 19:21:19

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

可执行外部命令读写/删除本地文件发起外部网络请求
查看扫描证据(共 6 处,展示前 6 条)
  • 执行外部命令来自配置/变量
    lib/index.js:173
    const r = spawnSync(file, argv, {
  • 写入本地文件
    lib/index.js:196
    mkdirSync(dir, { recursive: true });
  • 读取本地文件
    lib/index.js:204
    if (!existsSync(file))
  • 读取本地文件
    lib/index.js:206
    const parsed = JSON.parse(readFileSync(file, 'utf8'));
  • 写入本地文件
    lib/index.js:217
    writeFileSync(cacheFileFor(indexUrl), JSON.stringify({ at, entries }));
  • 发起网络请求
    lib/index.js:234
    const res = await fetch(config.indexUrl, {
扫描于 2026/11/2(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

依赖的 DSH / Cordis 模块
@deepseek-ai/dsh-tools@deepseek-ai/schemastery@deepseek-ai/cordis
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 自然语言搜索插件
  • 匹配插件与安装命令

DeepSeek Harness 的自然语言插件搜索——说出你要什么,就能拿到匹配的 dsh.so 插件和安装命令。

README

由 DeepSeek 最新模型翻译生成
dsh-plugin-advisor 让 DSH Agent 自己会找插件 —— 一句自然语言检索 dsh.so 插件市场,拿回验证等级、安全状态与安装命令。 像 find-skill 找技能,这次是找插件。装完即用、零配置:插件只注册一个 plugin_advisor 工具,剩下的交给 Agent。 English: README.en.md plugin_advisor 是 dsh.so 插件市场的检索入口:你用一句自然语言描述需求,它就从 dsh.so 实时插件索引里挑出最匹配的插件,返回插件名、GitHub star 数、标签、简介、验证等级(L1–L5)、安全状态与风险等级、安装命令和详情链接。从"想要"到"装好",全程不必离开对话。 Powered by dsh.so DeepSeek Harness 插件市场 —— 发现、对比并安装插件 功能特性 - 一句话找插件 —— "帮我找个能做 OCR 的插件"就够了,不用记插件名、不用翻市场,Agent 会自己调用 plugin_advisor。 - 结果是一张卡,不是链接堆 —— 直接给出最匹配插件的 star 数、标签、验证等级、安全徽标与详情链接,并附 2 条备选。
展开完整文档(README 剩余 1 节)
dsh-plugin-advisor

让 DSH Agent 自己会找插件 —— 一句自然语言检索 dsh.so 插件市场,拿回验证等级、安全状态与安装命令。

像 find-skill 找技能,这次是找插件。装完即用、零配置:插件只注册一个 plugin_advisor 工具,剩下的交给 Agent。

English: README.en.md

plugin_advisor 是 dsh.so 插件市场的检索入口:你用一句自然语言描述需求,它就从 dsh.so 实时插件索引里挑出最匹配的插件,返回插件名、GitHub star 数、标签、简介、验证等级(L1–L5)、安全状态与风险等级、安装命令和详情链接。从"想要"到"装好",全程不必离开对话。

Powered by dsh.so
DeepSeek Harness 插件市场 —— 发现、对比并安装插件

功能特性

- 一句话找插件 —— "帮我找个能做 OCR 的插件"就够了,不用记插件名、不用翻市场,Agent 会自己调用 plugin_advisor。
- 结果是一张卡,不是链接堆 —— 直接给出最匹配插件的 star 数、标签、验证等级、安全徽标与详情链接,并附 2 条备选。
- 默认质量门槛 —— 只返回 L5(实测通过) 且 安全审计通过 的插件;warning 级发现可接受,high/critical 风险直接排除。
- 能力缺口自动兜底 —— 已装工具都做不到时,AUTO-TRIGGER 让 Agent 先去插件市场找,再说"做不到"。
- 确认后一键装好 —— 用户明确同意后,工具直接调用 dsh plugin add 安装(卸载同理),装完提醒重启。
- 中英文通吃 —— 内置 zh→en 概念词典(记忆→memory、账单→billing…)加 CJK 二元组匹配,中文长句同样命中。
- 零运行依赖 —— 只声明 3 个 peer 依赖,由 dsh 宿主统一提供,绝不打包宿主核心库副本。
- 离线也不空手 —— 索引缓存 12 小时并落盘,profile 重启后依然有效;抓取失败时回退到陈旧缓存。
- 可自建索引 —— indexUrl 可指向任意自建镜像。

快速上手

1. 安装 —— dsh plugin --profile web add @dsh-so/dsh-plugin-advisor
2. 重启 —— dsh web(新 bundle 需要重启才会加载)
3. 说需求 —— 对助手说 "帮我找支持 OCR / 截图转文字的 dsh 插件",它会自动检索,并在你确认后装好

安装

| 场景 | 命令 |
| dsh.so 市场(推荐) | dsh plugin --profile web add @dsh-so/dsh-plugin-advisor |
| 其他 profile | dsh plugin --profile tui add @dsh-so/dsh-plugin-advisordsh plugin --profile headless add @dsh-so/dsh-plugin-advisor |
| 本地源码(开发调试) | dsh plugin --profile web add E:\AgentsWs\...\dsh-plugin-advisor |
| 升级 | dsh plugin --profile web add @dsh-so/dsh-plugin-advisor@latest |
| 卸载 | dsh plugin --profile web remove @dsh-so/dsh-plugin-advisor |

安装、升级、卸载之后都要重启 profile(dsh web)才会生效。
⚠️ 版本提示:若你装的是 0.1.0,请先升级 —— 0.1.0 把 @deepseek-ai/dsh-tools 装成了普通依赖,会与宿主副本冲突,导致 agent 循环崩溃(Cannot read properties of undefined (reading 'prepare'))。0.1.1 起已修复:

dsh plugin --profile web add @dsh-so/dsh-plugin-advisor@^0.1.1

⚠️ 卸载务必用包名,绝不把本地路径传给 remove/del,否则会删掉源码目录的文件。

关于 peer 依赖警告(重要)

执行安装命令时,你大概率会看到这样一段 pnpm 输出:

WARN Issues with peer dependencies found
└─┬ @dsh-so/dsh-plugin-advisor 0.1.1
├── ✕ missing peer @deepseek-ai/cordis@^4.0.1
├── ✕ missing peer @deepseek-ai/dsh-tools@0.1.0-rc.6
└── ✕ missing peer @deepseek-ai/schemastery@^3.18.1

这是正常的“误报”,不需要做任何处理,插件可以正常使用。

为什么会出现

- dsh plugin add 的机制是在 profile 目录下执行 pnpm add;pnpm 校验 peer 依赖时,只看 web profile 自己声明的依赖(目前只有 @dsh-so/dsh-plugin-advisor 一个)。
- 而这 3 个 @deepseek-ai/ 包由 DSH 宿主统一管理,实际安装在上一级目录 ~/.dsh/profiles/node_modules。
- 运行时 Node 的模块解析会逐级向上查找,所以插件能正常 import 到宿主提供的这些包。

如何确认没问题

| 插件要求 | 宿主实际版本 | 结果 |
| @deepseek-ai/cordis@^4.0.1 | 4.0.1 | ✅ |
| @deepseek-ai/dsh-tools@0.1.0-rc.6 | 0.1.0-rc.6 | ✅ |
| @deepseek-ai/schemastery@^3.18.1 | 3.18.1 | ✅ |

- 目标依赖线:dsh rc.6 系列(@deepseek-ai/dsh-tools@0.1.0-rc.6 · @deepseek-ai/cordis@^4.0.1 · @deepseek-ai/schemastery@^3.18.1)。
- 实测环境:dsh 10.28.1(web profile)。
- 状态:作者声明(Declared),未经独立验证 —— 遵循 dsh.so 兼容性矩阵语义。
- 升级 dsh 后自查:重启 profile 确认 plugin_advisor 存在;若大版本升级跨了依赖线,先 dsh plugin --profile web update @dsh-so/dsh-plugin-advisor 再试。

事实上,DSH 生态里任何正确声明了 peer 依赖的第三方插件,装进 profile 时都会出现类似警告(harness 自己的 @deepseek-ai/dsh-tool-cordis 也是这么声明 @deepseek-ai/cordis 的)。这是 pnpm 的“信息缺失”提示,不是错误。

不建议的“修复”方式

1. 不要把插件的 peerDependencies 改成 dependencies —— 那会让每个插件自带一份宿主核心包副本,遮蔽宿主单例,反而触发 ctx.tools 崩溃(即 0.1.0 的 bug)。
2. 不建议把 3 个 peer 显式装进 profile —— 版本会被钉死在 profile 里;宿主将来升级核心包时,插件仍加载旧版,产生 API 错位的隐蔽问题。

若只是想让 CI 日志干净,可以显式安装(会换来一次性的 declares no dsh.bundle 提示):

dsh plugin --profile web add @deepseek-ai/cordis@4.0.1 @deepseek-ai/dsh-tools@0.1.0-rc.6 @deepseek-ai/schemastery@3.18.1

日常使用:直接忽略警告即可。

使用方法

plugin_advisor 是模型工具,不需要手动敲命令 —— 直接对助手说需求,它会自动调用。示例(中英文均可):

- “帮我找支持 OCR / 截图转文字的 dsh 插件”
- “有没有终端 TUI 插件?”
- “我想做 RAG 记忆,有什么插件”
- “Find me a plugin for price tracking”

完整对话示例

中文 —— OCR / 截图

- 你:帮我找支持 OCR / 截图转文字的 dsh 插件*
- 助手:自动调用 plugin_advisor,参数 {"query": "vision OCR screenshots", "limit": 3},返回一张推荐卡 —— 见下文输出格式
- 你:装第一个
- 助手:调用 plugin_advisor 并传 install: "github:leozou320-ai/dsh-macos-vision-ocr",装好后提醒你重启 dsh web。

English —— terminal TUI

- You: I need a terminal TUI plugin
- Agent: calls plugin_advisor with "terminal TUI" → returns ranked matches
- You: Install the first one
- Agent: calls the tool again with install, then reminds you to restart dsh web.

能力缺口自动搜索与安装确认当你的需求已安装的插件都无法满足时,agent 会自动调用 plugin_advisor 搜索缺失的能力。结果默认通过质量门槛 —— L5(实测)验证等级 且 安全审计通过(warning 级发现可接受,排除 high/critical 风险)。随后工具会高亮最匹配的一个插件、给出安装命令,并先向用户确认再安装 —— 未经同意不会安装任何插件。

工具参数

| 参数 | 必填 | 类型 | 说明 |
| query | 查询时必填 | string | 需求描述,如 "vision OCR screenshots"、"memory rag"。中英文均可,英文短词命中率更高 |
| limit | ❌ | number | 返回条数,默认取配置 maxResults(5),上限 10 |
| install | ❌ | string | 仅在用户明确同意安装后传入安装目标:npm 包名(可带 scope 与 @version)或 github:owner/repo |
| remove | ❌ | string | 仅在用户明确要求卸载后传入已安装的包名(不接受 github: 目标) |
| profile | ❌ | string | 安装/卸载的目标 profile,默认 web;非法字符会被过滤 |

输出格式

每次检索渲染成一张推荐卡:最匹配插件(名称 / star / 标签 / 验证等级 / 安全徽标 / 简介 / 详情链接)加 2 条备选。

plugin_advisor("vision OCR screenshots", limit=3) —— 真实输出(取自 dsh.so 实时索引,排名与 star 数会随时间变化):

✅ 帮你找到了最匹配的插件

🏆 dsh-macos-vision-ocr 1★
vision desktop network
🏅 L5 · Run tested · 🔒 安全通过:低风险 Offline macOS Vision OCR for DSH — accurate, local, API-key free. | DSH 本地离线 OCR 插件 🔗 https://www.dsh.so/artifact/dsh-macos-vision-ocr/ ━━━━━━━━━━━━━━━━━━━━━━━━━━ 👉 回复「安装」即可自动装好,重启一次 dsh web 生效

备选:
2. dsh-vision-router (1,086★) — Eyes for text-only DSH agents: built-in free v…
3. ds-vision-plugin (5★) — Paste images into DSH with a four-model vision…

徽标含义:

| 徽标 | 含义 |
| 🏅 L5 · Run tested | 验证等级:L1 收录 → L5 实际跑通功能测试 |
| 🔒 安全通过:低风险 | 安全审计通过,低风险 |
| ⚠️ 安全提示:中风险 | 已审计但有 warning 级发现(默认门槛仍会放行) |
| ⏳ 安全检测进行中 / ❓ 未通过 / 🚨 高风险 | 未审计、审计失败或 high/critical 风险(默认门槛会排除) |

无匹配时:

没有找到完全匹配的 dsh.so 插件。已自动用更宽泛的关键词再试一次也没有结果。
可以直接告诉用户:该需求暂时没有现成插件,可关注 dsh.so 的更新,或描述更具体的需求换个说法再试。

每条结果(匹配或无匹配)末尾都会附带 Powered by dsh.so 推广与版权行(dsh-plugin-advisor v0.2.1 · © 2026 zhoushimin · Apache-2.0),可用 attribution: false 关闭。

查询技巧

- 中文查询已优化:内置中英概念词典(记忆→memory、账单→billing 等)与 CJK 二元组匹配,中文长句也能命中;英文短词仍最优。
- 把需求说具体:"terminal TUI" 比 "好看的界面" 结果更准。
- 可以用标签词:如 vision、browser、automation、ui,标签命中权重更高。
- 空 query 会按 star 数返回 Top N(模型一般不会这么用,但行为如此)。
- 匹配是关键词打分,不是 AI 语义:名称命中 +3、标签命中 +2、简介命中 +1,同分按 star 数排序。措辞差异大时,换个说法再试。

配置

在宿主 composition 或 agent preset 的 cordis.yml 中配置(默认值即可,通常无需修改):

- insert:
- id: dsh-plugin-finder
name: @dsh-so/dsh-plugin-advisor
config:
indexUrl: https://www.dsh.so/plugins-index.json # 索引地址,自建/测试时覆盖 maxResults: 5 # 默认返回条数 cacheTtlMs: 43200000 # 索引缓存 12 小时 timeoutMs: 15000 # 抓取超时(毫秒)

| 配置项 | 默认值 | 说明 |
| indexUrl | https://www.dsh.so/plugins-index.json | dsh.so 机器可读插件索引地址 |
| maxResults | 5 | 未传 limit 时的默认返回条数 |
| cacheTtlMs | 43200000(12 小时) | 索引缓存时长:一天最多抓取 2 次 |
| timeoutMs | 15000 | 抓取索引的超时时间(毫秒) |
| attribution | true | 在每次结果末尾追加 "Powered by dsh.so" 推广与版权信息 |
| minVerificationLevel | 5 | 结果需达到的最低验证等级(L1–L5),0 表示不过滤 |
| requireLowRisk | true | 仅保留已审计插件;warning 可接受,排除 high/critical |

数据来源、缓存与匹配规则

- 数据源:https://www.dsh.so/plugins-index.json —— dsh.so 全部插件的机器可读索引(id、name、description、stars、topics、install、url、verification 验证等级、security 安全状态与风险)。
- 匹配:query 分词 → 中文概念扩展(zh→en 词典 + CJK 二元组)→ 逐 token 打分(名称 +3 / 标签 +2 / 简介 +1)→ 按总分排序,同分按 star 数排序,取前 limit 条。
- 质量门槛:先按 minVerificationLevel 与 requireLowRisk 过滤,再对通过者排序。
- 缓存:内存 + 磁盘双层,命中 cacheTtlMs 内直接复用;磁盘缓存位于 %TEMP%\dsh-plugin-advisor\index-.json(按 indexUrl 的 sha256 前 16 位命名),profile 重启后依然有效。抓取失败时回退到陈旧缓存。

仓库结构

dsh-plugin-advisor/
├── src/
│ ├── index.ts 插件入口:Config schema、plugin_advisor 工具、卡片渲染、索引抓取与磁盘缓存 │ └── match.ts 纯函数匹配:分词、中英概念词典、CJK 二元组、打分排序 ├── test/match.test.ts 匹配逻辑单测(node --test) ├── scripts/ │ ├── verify-install.mjs 发布后自检:npm / GitHub 两路安装 + 功能冒烟 │ ├── sync-readmes.mjs 中英 README 小节同步 │ └── restart-dsh-web.ps1 本地重启助手 ├── assets/dsh-so-logo.svg dsh.so 标志 ├── cordis.patch.yml bundle patch(package.json 的 dsh.bundle.patch 指向它) └── README.md · README.en.md 中文(默认)/ 英文文档

常见问题 FAQ

Q: 装完插件,会话里没有 plugin_advisor 工具?
A: 检查两步:① dsh plugin --profile web list 确认已安装;② 安装后需要重启 dsh web 才能加载新 bundle。

Q: 安装时的一堆 missing peer 警告要不要管?
A: 不用管,是误报,见上文「关于 peer 依赖警告(重要)」。

Q: 查询没结果?
A: 换更宽的英文词,如 "image"、"terminal"、"memory";或去掉过具体的限定词。

Q: 插件升级了,怎么更新?
A: dsh plugin --profile web add @dsh-so/dsh-plugin-advisor@latest,然后重启。

Q: 怎么卸载?
A: dsh plugin --profile web remove @dsh-so/dsh-plugin-advisor,然后重启。

Q: PowerShell 报错 "The splatting operator '@' cannot be used..."?
A: 只发生在 scoped 包(@scope/name)上 —— PowerShell 把行首 @ 当展开运算符,需要加引号:dsh plugin --profile web add '@scope/name'。

Q: 启动报 ERR_MODULE_NOT_FOUND: Cannot find package '@dsh-so/dsh-plugin-advisor'?
A: 有残留的安装条目(或 bundle patch 的 name)仍引用旧包名。先按包名移除再重装:dsh plugin --profile web remove @dsh-so/dsh-plugin-advisor,然后重新 add。

Q: npmjs.com 页面显示的版本比注册表旧?
A: 网页有缓存,注册表才是权威。终端验证:npm view @dsh-so/dsh-plugin-advisor version --prefer-online;网页硬刷新(Ctrl+F5)或稍等几分钟。

Q: 怎么查看当前安装的版本?
A: dsh plugin --profile web list 看 profile 的依赖;npm view @dsh-so/dsh-plugin-advisor version 看 npm 上的最新版。

开发与发布

pnpm install # 或 npm install(peer 依赖由宿主提供,仅 devDependencies 用于本地构建/测试)
pnpm build # tsc -> lib/
pnpm test # node --test(匹配逻辑单测)

- 插件 bundle 声明在 cordis.patch.yml,package.json 的 dsh.bundle.patch 指向它。
- 发布 npm 包需包含 lib/、cordis.patch.yml、README.md(中文,默认)、README.en.md(英文)与 assets/(见 package.json files 字段)。

发布后自检

每次 npm publish 后跑一遍自动安装检查,确认两种安装来源都能装上已发布的产物:

npm run verify:install # 离线:npm registry + GitHub,功能冒烟
npm run verify:install -- --live # 额外查询真实 dsh.so 索引
脚本会把 @dsh-so/dsh-plugin-advisor@ 分别从 npm 和 github:dsh-so/dsh-plugin-advisor 装进临时目录(模拟 dsh profile 的 settings),校验包名/版本与 lib/index.js、lib/match.js 是否齐备,再对匹配逻辑做一次功能冒烟;任一来源失败即非零退出。npm run verify(test + verify:install)是完整闸门。

许可

Apache-2.0 · Copyright (c) 2026 zhoushimin
预览分享卡片长什么样 ↓dsh-so/dsh-plugin-advisor
分享 · DeepSeek Harness Hub
dsh-so/dsh-plugin-advisor

用一句话检索插件市场并直接安装所需插件

这是你的仓库?认领条目

回到顶部