DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

Zh1rV /

Zh1rV/dsh-web-search-tavily

Verified

DeepSeek Harness 的 Tavily 搜索插件

★ 1 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHub
READMESource: master@b5555a16

English | 中文

dsh-web-search-tavily

[!TIP] 想让 AI 帮你装好? 把下面这句话复制发给你的 DeepSeek Harness 智能体(或任何 AI 助手)即可:

请帮我把 dsh-web-search-tavily 插件安装到我当前的 DeepSeek Harness(仓库:https://github.com/Zh1rV/dsh-web-search-tavily),执行 dsh plugin --profile web add github:Zh1rV/dsh-web-search-tavily,重启 Harness 后指导我配置 TAVILY_API_KEY。

一个可直接安装到 DeepSeek Harness 的 Tavily 联网搜索插件。它会把 Harness 的 web_search 请求路由到 Tavily Search API,并在设置页提供完整配置界面;是否立即切换由当前 Harness 的 Web provider 能力决定。

一键安装

在安装了 Harness CLI 的 PowerShell 或终端中执行:

dsh plugin --profile web add github:Zh1rV/dsh-web-search-tavily

然后完全退出并重新启动 Harness。插件会自动加入 web profile,不需要手工修改 cordis.patch.yml、复制 node_modules 或重新编译源码。

卸载:

dsh plugin --profile web remove dsh-web-search-tavily

卸载不会删除 web-search-tavily 设置或 Harness 凭据中的 API Key。重新启动后,当前版本自带的 Tavily 实现会恢复(如果运行时原本包含它)。

升级旧版

如果启动页显示:

keyed slot "settings.plugin.item" requires options.key

说明当前安装的插件客户端文件仍是旧版。仅点击 Harness 的“重启”不会重新下载插件,请先在终端执行:

dsh plugin --profile web update dsh-web-search-tavily

然后完全退出并重新打开 DSH Desktop。如果更新命令不可用,或重启后仍出现同一错误,请强制重装:

dsh plugin --profile web remove dsh-web-search-tavily
dsh plugin --profile web add github:Zh1rV/dsh-web-search-tavily

重装只替换插件包,不会删除工作区、会话、设置或已保存的 Tavily API Key。

使用方式

安装并重启后有两个入口:

  • 设置 → 插件 → Tavily 搜索:配置启用状态、API Key 凭据名、Base URL、搜索深度、主题、最大结果数和 answer 模式。
  • 会话标题栏右侧 → Tavily:Tavily 按钮位于 Session log 左侧,可查看状态、快速启用/停用和保存 API Key。

API Key 通过 Harness 凭据服务保存。输入框不会回显已保存的密钥,密钥不会写入普通设置文件、日志或模型消息。

默认凭据名是 TAVILY_API_KEY。也可以在设置里改为其他凭据名,或在启动环境中提供同名变量。

如果设置卡片显示“仅在启动时选择”,说明当前 Harness 没有运行时 provider 切换接口。官方 rc.2 版本需要先选择启动 provider,再重启 Harness:

$env:DSH_WEB_SEARCH_PROVIDER = 'tavily'
dsh web

也可以把下面的 patch 加到当前 profile 的 cordis.patch.yml,这样从快捷方式启动时也会使用 Tavily:

- id: web
  config:
    searchProvider: tavily

这个 patch 会替换 web 条目的完整配置;官方 rc.2 的 web 配置只有 searchProvider。未选择 tavily 时,官方默认的 deepseek-official 搜索不会被插件改动。

与 Harness 内置 Tavily 的关系

较新的 Harness 已经在基础 bundle 中包含 Tavily。本插件的自动 patch 会:

  1. 插入独立插件的 Host 和 Client entry;
  2. 检测并复用已经注册的 web-search-tavily 设置命名空间或 tavily provider;
  3. 继续使用原来的 web-search-tavily 设置命名空间和 tavily provider ID。

这样在没有内置 Tavily 的官方 rc.2 上不会产生 unmatched patch 警告;在已经内置 Tavily 的版本上也不会重复注册或删除已有配置。设置页检测到内置 Tavily 卡片时会隐藏独立卡片,确保用户只看到一张 Tavily 配置卡。

旧版 Harness

插件会检测当前 Harness 的 Web 能力:

  • 动态切换:可以在设置里立即启用或停用 Tavily。
  • 仅启动时选择:旧版缺少运行时 provider 切换接口,插件仍能加载,但界面会提示需要在启动配置中选择 Tavily。
  • 不可用:旧版没有可用的 Web provider 接口,界面会显示升级提示,而不是让整个 Harness 启动失败。

如果旧版没有 settings.plugin.item,会话顶部的 Tavily 面板仍提供配置入口;普通网页模式不会额外暴露任何 Electron 专用功能。

配置项

配置项 默认值 说明
apiKey 空 字面量密钥,仅建议用于受控配置;优先使用凭据服务
apiKeyEnv TAVILY_API_KEY 凭据服务或启动环境中的引用名
baseURL https://api.tavily.com API 基础地址,末尾自动追加 /search
enabled false 动态版本中是否让 web_search 使用 Tavily;启动选择版本由 searchProvider 启动配置决定
searchDepth basic basic、advanced、fast 或 ultra-fast
topic general general、news 或 finance
maxResults 5 结果数量,范围 1-20
includeAnswer false 是否请求 Tavily 额外生成 answer

默认关闭 Tavily answer、原始网页内容和图片,避免不必要的 token 消耗。

工作方式

模型调用 web_search
        ↓
Harness ctx.web
        ↓
Tavily Search API(被当前 provider 选中时)
        ↓
统一的 WebSearchResult
        ↓
模型上下文

provider ID 为 tavily,设置命名空间为 web-search-tavily。

高级手工配置

普通用户不需要使用 cordis.example.yml。需要手工管理 profile 层时,可以参考该文件中的 entry:

- insert:
    - id: web-search-tavily-standalone
      name: dsh-web-search-tavily
      inject: [web]
      config:
        enabled: false

在官方 rc.2 上如果要让 profile 使用 Tavily,还需要把 Web provider 指向它:

- id: web
  config:
    searchProvider: tavily

手工安装必须确保 profile 能解析 dsh-web-search-tavily 及其 Harness peer dependencies。标准 dsh plugin 命令会自动完成依赖安装和 bundle 注册。

安装自检

从 Harness runtime 目录执行:

node node_modules/dsh-web-search-tavily/tests/verify.mjs

自检会检查 package bundle 声明、patch 内容、Host provider、设置切换、凭据错误映射和客户端 bundle。最后再确认:

  1. 设置 → 插件中出现 Tavily 搜索卡片;
  2. 会话标题栏出现 Tavily 按钮;
  3. 执行一次联网问题后,日志和结果确认请求经过 Tavily。

构建和发布

维护者需要在拥有 Harness peer dependencies 的环境中运行:

npm run build
npm run verify
npm run verify:client
npm run verify:pack

仓库提交 lib 构建产物,GitHub 安装用户不需要本地 TypeScript 或 Harness 源码路径。

许可证

MIT。部分代码源自 DeepSeek Harness 的 MIT 许可实现,详见 LICENSE。

—/ 5

No ratings yet

Verified DSH bundle

Commit b5555a166e09

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout