前言¶
DeepSeek Harness (DSH) 的内置 web_search 工具通常依赖单一提供商,一旦该服务出现速率限制或故障,搜索便无法进行。websearch-dsh 插件通过替换该后端,提供了一个具有韧性的多提供商回退链,并支持在没有 DeepSeek API 密钥的情况下通过无密钥的 DuckDuckGo 继续工作。
插件概述¶
该插件由 takasurazeem 维护,采用 MIT 许可证。它注册在 DSH 的 ctx.web 接口上,保持了 web_search 工具的接口不变,但通过链提供结果。
核心能力¶
- 替换内置单一提供商
web_search为具有韧性的多提供商回退链。 - 支持在没有
DEEPSEEK_API_KEY的情况下工作,使用无密钥的 DuckDuckGo。 - 容错:可存活于提供商速率限制、配额耗尽和停机情况。
- 通过 GUI 开关启用/禁用(设置 -> 插件 -> 可配置 -> 网络搜索)。
- 无需重启即可更新密钥和开关。
- 提供
websearch_status工具和/websearch status命令。 - 通过环境变量或 DSH 凭据屏幕支持 API 密钥。
安装与启用¶
在您的个人资料 package.json 中添加依赖项,并将插件包添加到 dsh.bundles 列表中。然后在配置目录中运行 pnpm install,最后重启 DSH。
示例 package.json 配置:
{
"name": "my-profile",
"dependencies": {
"websearch-dsh": "file:/path/to/websearch-dsh"
},
"dsh": {
"bundles": [
"@deepseek-ai/dsh-base",
"@deepseek-ai/dsh-web-app",
"websearch-dsh"
]
}
}
启用:
在 DSH 网页客户端中,导航至 设置 -> 插件 -> 可配置 -> 网络搜索。点击开关以启用。
配置 API 密钥¶
密钥可以存储在环境变量或 DSH 凭据屏幕中。
- 环境变量:~/.dsh/.env(推荐 chmod 600)。
- DSH 凭据屏幕。
可用密钥变量:
- TAVILY_API_KEY
- EXA_API_KEY
- FIRECRAWL_API_KEY
- BRAVE_API_KEY
- SERPER_API_KEY
工作原理¶
当调用 web_search 时,系统会按顺序检查提供商:
1. Tavily
2. Exa
3. Firecrawl
4. Brave
5. Serper
6. DuckDuckGo(总是最后,无需密钥)
密钥在每次搜索时解析,因此添加密钥无需重启。
注意事项¶
- MIT 许可证。
- 无 MCP 服务器,无 sidecar 进程。
maxResults限制为 1-50。
使用方式¶
- 正常使用
web_search工具。 - 运行
/websearch status以检查提供商状态。