前言¶
在 DSH 生態裏,工具能力通常以插件形式擴展。對智能體開發者來說,stock web_search 往往只返回原生搜索,而實際使用又可能同時需要本地 SearXNG、本地 Markdown RAG 或 Parallel 結果。
dsh-tool-web-enhanced 是 edusrez 維護的 DSH 插件,MIT 許可,定位是 stock web_search 的 drop-in replacement:原生結果仍作爲第一個 section,其他來源作爲可選 section 附加到同一個搜索響應中。
這是什麼¶
dsh-tool-web-enhanced 是一個 web-search 插件。它圍繞 web_search 建立分節結構:native 結果優先,SearXNG、RAG、Parallel 等模塊各自作爲 section 出現。
沒有配置額外模塊時,保持 stock web_search 的行爲。
核心功能¶
- Drop-in replacement for stock
web_search。 - 模塊化 per-section 架構,原生結果保持第一。
- 內置 SearXNG section、面向本地 markdown databases 的 RAG section,以及 Parallel section。
- 支持可選
topic和sources參數;sources可取native、searxng、rag、parallel或all。 - 提供 opt-in 的
parallel-extractweb_fetchprovider,可將 URL 的完整文檔作爲 markdown 返回,默認關閉。 - 模塊缺失、禁用或不可達時靜默降級,只省略對應 section,不將請求整體變成錯誤。
- 以 DSH bundle 形式安裝,插入 enhanced 行並禁用 stock
tool-web行。
安裝與啓用¶
先確認當前 DSH 環境已滿足 peer dependencies,包括 @deepseek-ai/cordis 以及 DSH web/tool 相關包。
執行安裝:
npm install dsh-tool-web-enhanced
安裝後會應用 DSH bundle patch,插入增強插件行,並禁用 stock tool-web 行。
注意:插件會以當前 dsh 進程權限運行,可能讀取你配置的本地文件目錄,並根據配置訪問 SearXNG、embedding 或 Parallel 服務。安裝前應檢查源碼、依賴關係和許可證。
倉庫地址:
https://github.com/edusrez/dsh-tool-web-enhanced
典型用法¶
配置 SearXNG section¶
如果你已經有一個本地 SearXNG JSON API,可以配置 sections.searxng.url 指向其 base URL。
sections:
searxng:
url: '<local-searxng-json-api-base-url>'
配置後,SearXNG 來源會作爲獨立 section 參與返回。
配置 RAG section¶
RAG section 面向本地 markdown databases。將本地 markdown 文件目錄加入 sections.rag.databases,並設置每個 database 的 topK。
sections:
rag:
databases:
- path: '<local-markdown-directory>'
topK: 5
RAG 支持 auto / local / remote embeddings。
選擇 sources¶
調用時可通過 sources 參數指定返回的來源取值。已列出的取值包括 native、searxng、rag、parallel、all。
參數示意:
{
"sources": "all"
}
啓用 parallel-extract¶
parallel-extract 默認關閉。若需要 web_fetch 返回完整 markdown 文檔,可以將其配置爲 opt-in provider:
fetchProvider: 'parallel-extract'
API key 可通過 env var 或 literal apiKey 提供,literal 值優先。
配置 Parallel section¶
Parallel section 可配置 sections.parallel.mode 和 sections.parallel.maxResults。其中 maxResults 上限爲 10,且該 section 無分頁。
sections:
parallel:
maxResults: 10
適用場景與注意¶
- 適合在 DSH 中把本地 SearXNG、本地 Markdown RAG、Parallel 等來源接入同一個
web_search響應的場景。 - 適合希望保持原生搜索結果優先,同時按 section 查看其他來源的使用者。
- 如果只需要 stock
web_search,或不想引入額外依賴、本地路徑和外部 API 權限,可以繼續使用原生工具。
使用前建議確認:
1、當前 dsh 進程有權限讀取你配置的本地目錄,並允許目標 API 網絡訪問。
2、依賴滿足 peer dependencies,包括 @deepseek-ai/cordis 和 DSH web/tool 相關包。
3、靜默降級不會報錯:模塊 URL、路徑、API key 或網絡異常時,對應 section 可能直接消失,排查時需要檢查配置和運行日誌。
4、parallel-extract 是 opt-in,默認 disabled。
5、Parallel maxResults 最多 10,沒有分頁。
結尾¶
dsh-tool-web-enhanced 的價值在於把原生 web_search 擴展爲可組合的檢索入口:native 結果仍然優先,SearXNG、RAG 和 Parallel 按配置可選出現。
若你希望在 DeepSeek Harness 中同時使用多個檢索來源,它可以作爲一個可選的 web-search 插件位置。
GitHub:
https://github.com/edusrez/dsh-tool-web-enhanced