DSH Plugins
返回列表
🧰

dsh-web-search-order

联网工具 更新于 2026.09.12

在终端中运行以下命令:

dsh plugin install killcerr/dsh-web-search-order

将以下提示词粘贴到 DeepSeek Harness 对话框中:

在 DeepSeek Harness 中运行 dsh plugin install killcerr/dsh-web-search-order 即可完成安装,插件源码托管于 https://github.com/killcerr/dsh-web-search-order

插件介绍

DSH 的 web_search 默认只走一个搜索提供方——一旦它超时、报错或返回空结果,整次工具调用就直接失败,没有退路。dsh-web-search-order 在这个位置插入一层有序降级:把你已经注册到 ctx.web 的多个提供方(exa、deepseek-official 等)串成一条链,前一个不可用时自动切到下一个,而模型侧的调用方式、agent preset、web_fetch 完全不变。

插件本身不实现搜索后端,也不管理凭据,只做一件事:按你配置的顺序(order)依次尝试,可以用 exclude 永久排除某个提供方,用 timeoutSeconds 控制每次尝试的独立预算(默认 20 秒)。每次尝试同时等待预算到期、调用方取消和 provider 返回,三者谁先到算谁——provider 不理会取消信号也没关系,到点这一轮直接作废。全链失败时抛出的错误会逐条列出每个提供方的真实报错(401、缺 key 等),方便定位;调用方主动取消则立即抛出 WEB_ABORTED,语义清晰。

适合已经在 DSH 里注册了多个搜索服务、希望用最小改动获得冗余和可用性保障的用户:不用改模型侧代码,不用写自己的路由逻辑,配置几个键就能让搜索在多提供方之间自动流转。

使用场景

  • 主搜索提供方超时或报错时自动切换到备用提供方,避免整次工具调用失败
  • 在已注册多个搜索服务的环境中,用几行配置获得冗余与可用性保障
  • 需要为每次提供方尝试设置独立超时预算,防止慢服务拖垮整条链路
  • 排除不可靠或欠费的提供方,让剩余可用服务按优先级依次接管

适合人员

  • 已在 DSH 里注册了多个搜索服务、希望零代码改动获得搜索容错的用户
  • 不想自己写路由和重试逻辑、只想配置顺序与超时的 DSH 使用者
  • 需要把搜索可用性纳入 SLO 或 oncall 流程,要求全链失败有清晰报错的运维团队