dsh-tavily-web-search:爲 DeepSeek Harness 的 web_search 接入 Tavily 搜索提供者

前言

在 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

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

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

小夜