dsh-web-search-duck:把 Responses API 的 web_search_preview 接到 DSH 联网缝

前言

在 DSH 里给智能体接联网能力,通常要处理两件事:一是宿主侧的 ctx.web 搜索提供者接口,二是背后真正执行检索的服务形态。若你已有(或计划使用)支持 OpenAI Responses API、且带 web_search_preview 工具的兼容端点,自己写一层把响应里的引用注解整理成 DSH 可用的答案与来源,会重复且容易漏边界情况。下面介绍社区插件 dsh-web-search-duck,由维护者 r-ayin 发布,分类为联网工具,用于把这类端点桥接到 DSH 的 web seam。

这是什么

dsh-web-search-duck 是 DSH 的 Web 搜索提供者插件:将任意 Responses-API-compatible 端点(需支持 web_search_preview 工具)与 DSH 的 ctx.web 缝对接。查询发往该端点;响应中的 url_citation 注解会被映射为简洁答案,并对来源去重。插件注册的搜索提供者 ID 为 duck-responses-search。

仓库:r-ayin/dsh-web-search-duck
社区目录:SkillHub 插件页

核心功能

根据仓库 README,已核实能力包括:

  1. 提供者注册:在 DSH 中以 ID duck-responses-search 注册搜索提供者。
  2. 协议桥接:向配置的 Responses API 端点发起请求,使用 web_search_preview 工具完成检索。
  3. 结果整理:从响应中提取 url_citation,生成简明答案并去重来源列表。
  4. 配置校验:未配置 endpoint 或 model 时抛出明确错误,不会静默猜测默认值。

运行环境要求(来自 package.json):Node.js >= 20。许可证:MIT。

配置

通过环境变量配置(未在资料中写明的项不要自行添加):

环境变量 含义 默认
DUCK_SEARCH_ENDPOINT Responses API 端点 URL 必填
DUCK_SEARCH_MODEL 请求中使用的模型名 必填
DUCK_SEARCH_CREDENTIAL DSH 凭证库中用于 Authorization: Bearer 的键名 DSH_WEB_SEARCH_TOKEN

先在宿主或部署环境中设置 endpoint 与 model,并确保 Bearer 令牌可通过 DUCK_SEARCH_CREDENTIAL 指向的凭证键读取。

安装与启用

安装

官方说明两种方式,均来自 README,不要凭仓库名拼接 dsh plugin add github:owner/repo:

  1. 打开 DSH Settings → Plugin Market(DSH 插件市场),从市场安装。
  2. 或手动将插件加入 profile 的 bundle stack,参考仓库中的 cordis.patch.yml。

插件为预构建产物,无需本地 build 步骤。

启用搜索提供者

在宿主 patch 中将 web seam 指向本提供者。将下面片段合并进你的 patch 配置(与 README 示例一致):

- id: web
  override:
    searchProvider: duck-responses-search

经过上面的步骤,依赖 ctx.web 的联网调用会走 duck-responses-search 实现。

典型用法(配置链路)

可复现的最小链路如下:

  1. 安装插件(市场或 bundle stack)。
  2. 设置 DUCK_SEARCH_ENDPOINT、DUCK_SEARCH_MODEL,并按需调整 DUCK_SEARCH_CREDENTIAL。
  3. 在 patch 中设置 searchProvider: duck-responses-search。
  4. 在 DSH 进程中触发需要 web 搜索的智能体或工具路径,查询经 Responses 端点返回后,由插件整理答案与来源。

README 未给出具体端点 URL 或模型名的示例值;请以你所用的 Responses 兼容服务文档为准。

适用场景与注意

适合谁:已在使用或打算使用 Responses API 兼容服务、且该服务支持 web_search_preview;希望在 DSH 里用标准 web seam,而不自写 citation 解析逻辑的开发者。

生态说明:DSH 社区插件目录(如 SkillHub)为独立站点,与 DeepSeek / 幻方无官方从属关系,不宜当作官方应用商店表述。

安全与权限:插件以当前 dsh 进程权限运行,并可读取凭证库中的 Bearer 令牌。安装前请阅读 GitHub 源码 与 MIT 许可证,确认端点归属、数据出站范围符合你的策略。

结尾

dsh-web-search-duck 把 Responses API 的 web_search_preview 与 url_citation 整理工作封装成 DSH 搜索提供者 duck-responses-search,适合已有兼容端点的联网场景。进一步了解可访问 SkillHub 目录页 与 GitHub 仓库。

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

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

小夜