@goodandready/dsh-web-gateway:DeepSeek Harness 的稳健网络搜索与提取工具

前言

DeepSeek Harness (DSH) 依靠插件机制扩展能力。内置的 web_search 和 web_fetch 工具在遇到速率限制、验证码或空结果时,往往需要开发者自行处理回退逻辑。下面介绍 @goodandready/dsh-web-gateway 插件,它通过独立的工具链和自动容错机制,为 DSH 提供了更稳健的网络搜索与页面提取能力。

插件概况

名称:@goodandready/dsh-web-gateway

定位:为 DeepSeek Harness 提供具备故障转移能力的 Web 搜索与 Markdown 提取工具链。

维护者:GooDAnDReaDY

许可证:MIT

核心功能

该插件注册了三个核心工具,并为它们配置了提供者回退链:

  • web_gateway_search:网络搜索工具。提供者回退链为:Tavily → Brave → Firecrawl → Exa → SearXNG → DuckDuckGo。
  • web_gateway_extract:Markdown 页面提取工具。提供者回退链为:Firecrawl → Tavily → Crawl4AI → Jina → readability。
  • web_gateway_research:多源研究工具。结合搜索与提取能力,将 Top 源整理为摘要。

此外,插件还具备以下特性:

  • 熔断器:当提供者连续失败时自动跳过,避免长时间等待超时。
  • SSRF 安全提取:严格验证 URL,仅允许 http/https,禁止嵌入凭证,并要求解析为公网 IP(阻止内网地址)。

安装与启用

安装该插件需要通过 DSH 的命令行工具执行。

  1. 运行安装命令:
    dsh plugin --profile web add @goodandready/dsh-web-gateway
  1. 安装完成后,重启 web profile 以使工具生效。

配置与凭据

插件依赖外部 API 密钥。请进入 Settings → Credentials 页面添加以下凭据名称:

  • TAVILY_API_KEY:用于搜索与提取
  • FIRECRAWL_API_KEY:用于搜索与提取
  • EXA_API_KEY:用于搜索
  • BRAVE_API_KEY:用于搜索
  • CRAWL4AI_TOKEN:用于提取(仅当设置了 crawl4aiUrl 时使用)

在 Settings → Plugins → Web Gateway 中,可以调整以下参数:

  • defaultLimit:默认搜索结果数量(默认 5)。
  • maxLimit:硬性搜索上限(默认 20)。
  • cacheTtlMs:内存缓存存活时间(毫秒),0 表示禁用缓存。
  • searxngUrl / crawl4aiUrl:本地 SearXNG 或 Crawl4AI 的服务地址,留空则禁用对应功能。
  • allowInternalUrls:是否允许提取内网地址(默认 false)。

工作原理

该插件不会替换 DSH 内置的 web_search 和 web_fetch 工具。它注册了新的 web_gateway_* 工具,当模型调用这些工具时,会自动按照配置的顺序尝试不同的提供者。如果某个提供者返回空结果、HTTP 429/5xx 错误或网络错误,工具会自动切换到下一个。

注意事项

  1. URL 安全性:web_gateway_extract 严格限制 URL 必须为 http/https,且不含认证信息,主机名必须解析为公网 IP。
  2. 缓存机制:结果缓存在内存中,仅支持配置 TTL。
  3. 工具调用:插件仅注册新工具,若需使用内置工具,仍需在提示词中指定。

结尾

该插件通过提供者回退链和熔断机制,提升了网络搜索与页面提取的可靠性。如需查看源码或提交反馈,可访问 GitHub 仓库。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜