前言¶
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 的命令行工具執行。
- 運行安裝命令:
dsh plugin --profile web add @goodandready/dsh-web-gateway
- 安裝完成後,重啓 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 錯誤或網絡錯誤,工具會自動切換到下一個。
注意事項¶
- URL 安全性:
web_gateway_extract嚴格限制 URL 必須爲http/https,且不含認證信息,主機名必須解析爲公網 IP。 - 緩存機制:結果緩存在內存中,僅支持配置 TTL。
- 工具調用:插件僅註冊新工具,若需使用內置工具,仍需在提示詞中指定。
結尾¶
該插件通過提供者回退鏈和熔斷機制,提升了網絡搜索與頁面提取的可靠性。如需查看源碼或提交反饋,可訪問 GitHub 倉庫。