前言¶
在 DSH(DeepSeek Harness)「一切皆插件」的體系裏,web_search 是智能體最常用的聯網工具之一。但搜索結果的完整程度取決於背後的搜索提供者:如果只拿到一串鏈接,模型還得再抓網頁、再整理,多花時間和上下文。
dsh-tavily-web-search 做的事很集中:把 DSH 的搜索提供者接到 Tavily 的 REST API 上,讓 web_search 直接返回鏈接列表、摘要答案和結構化引用來源。下面介紹它的功能、安裝和配置方法。
這是什麼¶
dsh-tavily-web-search 是由 paul-yangmy 維護的 DSH 插件(bundle),當前版本 0.1.0,許可證爲 MIT。它通過 Tavily REST API 註冊一個 ctx.web 搜索提供者,插件加載後會自動把 web_search 的搜索提供者設爲 tavily,不需要手動改配置。
返回的結果包含兩部分:
- 摘要
content:Tavily 生成的答案摘要; - 結構化引用源:每條帶
title/snippet/publishedAt。
安裝與啓用¶
推薦直接安裝到 DSH 的 web profile:
dsh plugin --profile web add github:paul-yangmy/dsh-tavily-web-search
安裝後運行下面的命令,確認插件已經進入最終配置:
dsh --profile web --dump-config
如果你的 DSH profile 不是 web,把上面兩條命令裏的 web 換成對應的 profile 名即可。
配置 API Key¶
插件本身不包含密鑰。先在 Tavily 控制檯創建 API Key,然後寫入 DSH 憑據服務:
# $DSH_HOME/.credentials.yaml
TAVILY_API_KEY: tvly-<your-key>
密鑰的解析順序是:每次搜索的 apiKey 字面量(不推薦)→ DSH 憑據服務 → 啓動環境變量。API Key 不會打進插件包,也不會寫入代碼。推薦走憑據服務這條路:密鑰支持熱更新,改完無需重啓。
可選配置¶
插件提供兩個配置項,默認值一般不用改:
# settings.yaml
web-search-tavily:
baseURL: https://api.tavily.com
apiKeyEnv: TAVILY_API_KEY
baseURL:Tavily API 地址,默認https://api.tavily.com;apiKeyEnv:環境變量名,默認TAVILY_API_KEY。
本地開發¶
需要改源碼時,先克隆倉庫,然後在倉庫目錄裏把本地路徑作爲插件安裝:
dsh plugin --profile web add .
源碼是純 JS,不需要額外的構建步驟。
限制與注意¶
- 目前固定使用 Tavily 的
search_depth: "basic",沒有暴露 advanced 深度選項。 max_results受工具層約束,硬上限爲 20(Tavily 文檔上限)。- 實際可用性取決於 Tavily 服務與網絡狀況。
- 若同時安裝多個搜索提供者插件,最後安裝的插件層按行勝出;要換回其他提供者,在 profile 的
cordis.patch.yml覆蓋web.searchProvider。 - 運行環境要求 Node >=22。
另外提醒一點:插件會以當前 dsh 進程的權限運行。安裝任何第三方插件前,建議先查看源碼和許可證——這個倉庫是 MIT,源碼純 JS,可以直接讀完再裝。
小結¶
dsh-tavily-web-search 解決的是單個具體問題:讓 DSH 的 web_search 一次拿到摘要和引用來源,而不是隻給一串鏈接。安裝、寫入密鑰、驗證配置,三步就能用起來。
插件目錄頁:https://www.skillhub.cn/plugins/paul-yangmy/dsh-tavily-web-search
GitHub 倉庫:https://github.com/paul-yangmy/dsh-tavily-web-search