前言¶
DeepSeek Harness (DSH) 是一套面向智能體開發的插件化框架。在使用 Web 搜索能力時,通常需要大模型參與生成搜索詞,這會消耗 LLM Token。dsh-tavily-search 插件通過直連 Tavily Search API,讓搜索過程與大模型解耦,僅消耗 Tavily API 額度。
插件定位¶
- 名稱:
dsh-tavily-search - 維護者:ouones
- 定位:DSH 的聯網工具插件,提供網頁搜索能力。
- 核心能力:註冊爲 DSH
webseam 的搜索 provider(id:tavily-official),工具名爲web-search-tavily。純 JS(ESM)實現,無構建步驟。
安裝與啓用¶
安裝前請確保已安裝 DSH 環境(官方要求 Node.js 22.19+)。
1、在 DSH 的 profile 目錄下執行安裝命令:
dsh plugin --profile web add dsh-tavily-search
2、安裝完成後重啓服務:
dsh web
注意:若首次安裝遇到 ERR_PNPM_IGNORED_BUILDS 錯誤,需在 profile 目錄的 pnpm-workspace.yaml 的 allowBuilds 字段中加入相應依賴後重試。
配置與使用¶
插件安裝後會自動掛載,但需要配置 API Key 才能使用。
1. 提供憑據¶
從 Tavily 官網註冊獲取 API Key,並通過以下任一方式注入:
- 環境變量:啓動
dsh web前導出TAVILY_API_KEY。 - DSH 憑據服務:推薦方式,將
TAVILY_API_KEY存入 DSH 憑據存儲。 - 注意:不推薦在配置文件中直接寫入
apiKey,這會導致密鑰落盤。
2. 覆蓋默認配置¶
插件默認配置爲 searchDepth: basic 和 includeAnswer: true。如需調整,在 profile 的 cordis.patch.yml 中按相同的行 id 覆蓋:
# ~/.dsh/profiles/<name>/cordis.patch.yml
- id: web-search-tavily
name: dsh-tavily-search
config:
apiKeyEnv: TAVILY_API_KEY
searchDepth: advanced # basic | advanced
includeAnswer: true # 是否返回 Tavily 生成的自然語言回答
3. 切換默認搜索 Provider¶
若希望默認搜索走 Tavily 並停用官方 DeepSeek 搜索(避免消耗 LLM Token),在 cordis.patch.yml 中追加:
- id: web
name: '@deepseek-ai/dsh-web'
config:
searchProvider: tavily-official
- id: web-search-deepseek
name: '@deepseek-ai/dsh-web-search-deepseek'
disabled: true
驗證¶
重啓 dsh web 後,執行以下命令驗證配置是否生效:
dsh --profile web --dump-config
在輸出結果中應能看到 id: web-search-tavily 這一層的配置。
注意事項¶
- 許可證:MIT
- Token 消耗:搜索過程不消耗 LLM Token,僅消耗 Tavily API 額度(Tavily 有免費額度)。
- 運行權限:插件以當前 DSH 進程權限運行,使用前請檢查源碼與許可證。
參考鏈接¶
- GitHub:https://github.com/ouones/dsh-tavily-search
- 社區目錄:https://www.skillhub.cn/plugins/ouones/dsh-tavily-search