DeepSeek Harness (DSH) Tavily 网页搜索插件

前言

DeepSeek Harness (DSH) 是一套面向智能体开发的插件化框架。在使用 Web 搜索能力时,通常需要大模型参与生成搜索词,这会消耗 LLM Token。dsh-tavily-search 插件通过直连 Tavily Search API,让搜索过程与大模型解耦,仅消耗 Tavily API 额度。

插件定位

  • 名称:dsh-tavily-search
  • 维护者:ouones
  • 定位:DSH 的联网工具插件,提供网页搜索能力。
  • 核心能力:注册为 DSH web seam 的搜索 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
羽毛球分组比赛记分
小程序二维码

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

小夜