dsh-search
Manifest validWeb search, page fetch and one-call research through DeepSeek's official Search and Fetch API; needs a DeepSeek API key.
@vfvrpq/dsh-search
DeepSeek 官方 Search / Fetch 接口的 DeepSeek Harness 插件:三个工具、一个配置项、零运行时依赖。
给 agent 的是结构化网页结果——rerank 分、权威度、发布时间、模型友好长摘要——而不是一坨 HTML。
比内置 web_search / web_fetch 多出来的东西:搜索语法、条数与正文可控、成本可推算。
装
# 从 npm(已发布版本)
dsh plugin --profile desktop add @vfvrpq/dsh-search@0.1.0
# 或从源码包(插件 import 了 @deepseek-ai/*,必须走 tgz,目录软链会让宿主包解析不到)
pnpm pack
dsh plugin --profile desktop add /绝对路径/vfvrpq-dsh-search-0.1.0.tgz
装完工具即出现在工具表里,不用重启(升级才需要重启)。
三个工具
| 工具 | 干什么 | 计费请求数 |
|---|---|---|
deepseek_search | 搜索,返回标题/URL/snippet/summary/可选正文/日期/权威度/rerank 分 | 1 |
deepseek_fetch | 单页转 Markdown(标题 + 正文) | 1 |
deepseek_research | 搜索 + 抓前 N 页正文,一次给结论 | 1 + N |
deepseek_search 支持的操作符,写在 query 里或用参数:site:、-site:、-词、-"短语"、"精确"、lang:、after:、before:。
deepseek_search query="llama.cpp 安装" site="github.com" after=2025 count=5
deepseek_fetch url="https://api-docs.deepseek.com/zh-cn/guides/search"
deepseek_research query="DeepSeek V4 上下文长度" count=5 top=2
判读口径:rerankScore >= 1.5 为优质(渲染里标 ★),authority >= 3 为高权威。
summary 是二手摘要,版本号/日期/价格/API 字段一律 deepseek_fetch 原文核实;引用给原始 URL。
配置
| 键 | 默认 | 说明 |
|---|---|---|
apiKey | "" | 空则运行时按下面四层解析,不要把 key 写进 profile |
baseUrl | https://api.deepseek.com | 仅兼容代理时才改 |
defaultCount | 5 | 调用没给 count 时的条数 |
maxContentChars | 8000 | deepseek_search 每条正文上限 |
fetchMaxChars | 20000 | deepseek_fetch 正文上限 |
timeoutMs | 30000 | 单请求超时 |
maxRetries | 2 | 408 / 429 / 5xx 重试次数 |
promptEnabled | true | 是否向系统提示贡献用法章节 |
promptOrder | 55 | 该章节排序 |
key 解析顺序(key 不落 profile):
- 插件配置
apiKey $DEEPSEEK_API_KEY~/.secrets/keys.env里的DEEPSEEK_API_KEY=...$DSH_HOME/.credentials.yaml的refs: DEEPSEEK_API_KEY: sk-...
成本
- 5 元 / 1000 次成功请求 ≈ 0.005 元 / 次;Search 与 Fetch 同价。
- 只有 HTTP 200 且产生结果才计费;空结果、失败、超时不计费。
count不影响单价——一次取够,别拆成多次小请求。- 限速:Search 与 Fetch 各自 5 QPS(账号级);超过抛 429,插件按退避重试。
结构
lib/index.js 入口:只接线(校验配置、持有 client、注册工具、贡献提示章节)
lib/config.js Config schema + 代码侧默认值 + 加载期校验
lib/keys.js 四层 key 解析
lib/query.js query 拼装与 site: 展开
lib/client.js HTTP:超时 / 重试 / 错误翻译
lib/format.js 结果归一化与渲染
lib/prompt.js 系统提示章节
lib/tools/ 一能力一文件(search / fetch / research / shared)
开发
node --test test/*.test.js # 单测:mock fetch,不联网、不花钱
node scripts/live-selftest.js # 真机自测:1 次搜索 + 1 次抓取(约 0.01 元)
已知边界
- 抓不了需要登录态、点击交互、或返回非 HTML 的页面 → 用浏览器自动化插件。
- SPA 文档站可能对不存在的路径返回 200 + 站点壳内容而不是 404;正文里出现首页标语即说明是 fallback。
- Fetch 返回的 Markdown 会把
\/、\.、\#等标点反斜杠转义,属上游产物,按需 unescape。
License
MIT
Comments
Loading…
Similar plugins
by keenableai
Keenable web search and page fetch for DeepSeek Harness, no API key needed
★ 0
MIT
JavaScript
Oct 3, 2026
dsh plugin --profile web add @keenable/dsh-keenableby 1parado
在 DeepSeek Harness (DSH) 桌面端用网页版 DeepSeek 账号做联网搜索——web_search provider backed by chat.deepseek.com, no API key needed
★ 4
JavaScript
Oct 17, 2026
dsh plugin --profile web add dsh-deepseek-web-searchby YUANMINGXUE
Local-browser web search & page fetch plugin for DeepSeek Harness (dsh): browser_search / browser_fetch over Chrome DevTools Protocol, no API key.
★ 0
MIT
JavaScript
Aug 26, 2026
dsh plugin --profile web add dsh-local-browser-searchby sryimnoob123
Routes the DSH web_search tool through Ollama's web search API, reusing OLLAMA_API_KEY. No DeepSeek official key needed.
★ 3
↓ 199/wk
JavaScript
Aug 25, 2026
dsh plugin --profile web add dsh-web-search-ollamaby hiyms
Improve web search in Deepseek Harness, use server-side search service.
★ 4
↓ 103/wk
MIT
TypeScript
Sep 1, 2026
dsh plugin --profile web add dsh-web-search-providerby 240xu
Unified web search provider for DSH
★ 5
↓ 1.9k/wk
MIT
JavaScript
Oct 18, 2026
dsh plugin --profile web add @240xu/dsh-websearch