向 ctx.web 注册百度、豆包、Tavily、Exa 后端供官方 web_search 使用,并在 Tavily 或 Exa 生效时将 web_fetch 转到对应提取接口。
安装
# npm 包(预构建)
dsh plugin --profile web add @yugasun/dsh-web-search
# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)
dsh plugin --profile web add github:yugasun/dsh-plugins#path:/packages/dsh-web-search
装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。
README
给 DeepSeek Harness 的多后端网页搜索。向 ctx.web 注册百度、豆包、Tavily、Exa、Serper;模型侧仍使用官方 web_search / web_fetch 工具。
兼容 DeepSeek Harness 0.1.0-rc.7。
安装插件会在 Harness 进程内以你的权限运行第三方代码。安装前请阅读源码。
安装
从 npm:
dsh plugin --profile web add @yugasun/dsh-web-search
从本仓库本地路径(相对路径是相对 profile 目录 解析的,请用 $PWD。link: 后插件会从 DSH profile / 安装树解析 @deepseek-ai/*,不必先有本仓库的 node_modules 才能启动):
dsh plugin --profile web add "$PWD/packages/dsh-web-search"
dsh plugin --profile desktop add "$PWD/packages/dsh-web-search"
安装后请重启 dsh web。设置侧栏会出现 网络搜索 页。关闭 自定义搜索 则继续用 DSH 内置 web_search 和 web_fetch;开启后配置百度 / 豆包 / Tavily / Exa / Serper。网页内容 与搜索独立:自动跟随 Tavily/Exa 搜索,或固定 Tavily、Exa、DSH http。

从 Git 子目录:
dsh plugin --profile web add github:yugasun/dsh-plugins#path:packages/dsh-web-search
卸载:
dsh plugin --profile web remove @yugasun/dsh-web-search
后端
| Id | 服务 | 密钥 | 说明 |
|---|---|---|---|
baidu |
千帆普通搜索 POST /v2/ai_search/web_search(默认)或智能搜索生成 POST /v2/ai_search/chat/completions |
BAIDU_API_KEY / QIANFAN_API_KEY |
默认走普通搜索,只返回标题、链接和摘要,更快、不调模型。可在设置里切到 AI 搜索;该路径更慢,知识类问题常常只有摘要、没有 references,此时会尝试从摘要文本里回收 https?:// 链接。 |
doubao |
豆包搜索 Custom POST /search_api/web_search(默认)或 Global POST /search_api/global_search |
DOUBAO_API_KEY / DOUBAO_SEARCH_API_KEY |
密钥在豆包搜索控制台创建。Custom 更适合中文;Global 面向国际网页。旧的方舟接口地址会自动改走豆包搜索。 |
tavily |
Tavily Search POST /search 与 Extract POST /extract |
TAVILY_API_KEY |
带摘要和可选 answer。可作为 web_fetch 后端。 |
exa |
Exa Search POST /search 与 Contents POST /contents |
EXA_API_KEY |
搜索只返回链接,没有 answer。默认 id 为 exa;若同时安装了官方 Exa 包,请改 exaProviderId。可作为 web_fetch 后端。 |
serper |
Serper Google 搜索 POST /search |
SERPER_API_KEY |
返回网页标题、链接和摘要。有 answer box 或知识图谱描述时作为 content。可选 serperGl / serperHl 指定国家和地区与语言。不能作为 web_fetch 后端。 |
密钥可以写在插件设置(~/.dsh/settings.yaml)、DSH 凭据(TAVILY_API_KEY 等)或 ~/.dsh/.env。设置里的密钥不会回显到前端。设置页点 清除 或清空输入框会从 YAML 里删掉该项。
「设置 → 网络搜索」里的 自定义搜索 开关决定走 DSH 内置还是本插件。开启后默认 自动 按 百度 → 豆包 → Tavily → Exa → Serper 选用第一个已配置的;请求失败会试下一家,并在 harness 日志里记下跳过了谁,指定某一家则不会。网页提取 与搜索独立:自动时,当前搜索是 Tavily / Exa 才走对应提取,否则用内置 http;也可以固定 Tavily / Exa / 内置 HTTP。每张卡片有 测试连接。Agent 里 export TAVILY_API_KEY=… 不会进入 Harness 进程。
开发
pnpm --filter @yugasun/dsh-web-search test
pnpm --filter @yugasun/dsh-web-search build
许可证
链接
同类插件
Tencent/BrowserSkill#dsh-plugin-browserskill★ 8059
BrowserSkill 的 DeepSeek Harness 浏览器自动化桥接插件,通过原生浏览器工具控制可见的 Chrome 和 Edge Agent Window,支持可访问性与 VOM 页面观察、截图、隔离的多会话控制和 Web UI 实时观察浮层。
omdsh-dev/dsh-browser#packages/browser/bridge-browser★ 759
Chrome 侧边栏扩展,让 DSH 直接操控你的浏览器,无需视觉能力。
liustack/modsearch★ 584
纯文本 agent 的联网搜索桥:搜索网页与 X,返回结构化 JSON 证据(search/fetch/引用)。
DDDMUC/dsh-free-search★ 304
DSH 免费搜索插件:7 个引擎(DuckDuckGo/Bing/SearXNG 免费 + Exa/Perplexity/DeepSeek 付费)、自动回退、设置页 UI(API key 输入 + 官网链接)、web_fetch、引擎测试工具。
Tabbit-Browser/dsh-tabbit★ 101
让 DeepSeek Harness 能够控制 Tabbit 浏览器:安装即自动加载 tabbit-browser skill,检测国际版 Tabbit 与国内版 Tabbit Browser 正式版(>= 1.9.0),检查 tabbit-cli 常驻运行时,按平台诊断调用 CLI 所需的 DSH sandbox 模式,并在没有合格版本时通过后台任务下载与系统地区匹配的正式版安装包。
wqty123/dsh-browser★ 98
共享真实浏览器:用户可观看并随时接管的原生 Electron 窗口,agent 通过 CDP 驱动,内置 20 个 browser_* 工具(打开/快照/执行/填表/截图/下载/登录态);任务级会话隔离、登录态持久化、人机验证识别,纯 `dsh web` 无需桌面外壳即可自托管。
社区评论
评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。