flg1217 / dsh-web-search-openai

목록에 있음

OpenAI Responses API web search provider for dsh (web_search tool) + Web settings card. Hot-pluggable plugin.

master모델도구 소스 보기

설치

npx -y @deepseek-ai/dsh plugin --profile web add github:flg1217/dsh-web-search-openai

이 설치 명령은 GitHub 저장소 주소에서 생성된 확인되지 않은 시작점입니다.

README

유지 관리자가 작성한 문서 스냅샷입니다.

GitHub에서 보기 ↗
커밋 9383874동기화 2026. 8. 18.

dsh-web-search-openai

OpenAI Responses API 网页搜索插件 — DeepSeek Harness (dsh) 的 web_search 提供方 把 OpenAI Responses API 的原生 web_search 服务端检索能力接入 dsh 的网页搜索通道:搜索、出题、带来源引用。开箱即用,零源码改动。

一、这是什么

dsh-web-search-openai 是面向 DeepSeek Harness(dsh)的开源插件,向 ctx.web 注册一个 OpenAI Responses API 驱动的搜索提供方

能力说明
服务端检索每次搜索调用 POST /responses,携带原生 web_search 工具,由服务端完成检索并生成回答
可引用来源web_search_call.search_results[] 结构化结果(或消息级 url_citation 注解兜底)归一化为可引用来源
Web 设置卡片dsh 设置 → 搜索 → "Web 搜索" 卡片:端点、模型、API Key(只写不回显)、max tokens、检索上下文

插件严格遵循 dsh 官方扩展机制(profile bundle patch / registerSearchProvider / 客户端 slot),不修改 dsh 任何源码,可随 dsh 平滑升级。

二、安装(装配进 profile)

要求:dsh >= 0.1.0-rc.6lib/ 已随仓库提交,无需构建

方式一(推荐,等价于 dsh plugin add):

node scripts/link-profile.mjs            # 默认装配进 web profile
# 或指定 profile:
node scripts/link-profile.mjs --profile headless

方式二(手工):

dsh plugin --profile web add <本仓库目录>

完成后重启 dsh web,bundle 层才会加载。

三、使用

  1. 在 dsh Web 设置 → 搜索 → Web 搜索 卡片里填好端点 / 模型 / API Key(或让插件读环境变量 OPENAI_API_KEY)。
  2. 把 web 通道的 searchProvider 切到 openai(profile 的 cordis.patch.ymlweb.searchProvider,或设置面板切换)。

默认值:

默认
端点https://api.openai.com/v1/responses 自动追加)
模型gpt-5.6-luna
最大输出 tokens2048
检索上下文medium
API Key插件 config apiKey → 环境变量 OPENAI_API_KEY → 不可用

四、工作原理

插件为双面结构,由 dsh 官方扩展机制装配:

┌─────────────── 宿主进程(node 半)──────────────────┐
│ src/index.ts   插件入口:settings 命名空间 + 注册提供方 │
│ src/provider.ts OpenAiSearchProvider — fetch /responses│
│                web_search 工具 + 来源/回答归一化      │
└──────────────────────────────────────────────────┘
┌─────────────── 浏览器(web 半)──────────────────────┐
│ src/client/index.tsx 设置面板 "Web 搜索" 卡片        │
│                settings.section slot,写只回显密钥     │
└──────────────────────────────────────────────────┘
  • dsh.bundle.patchcordis.patch.yml:把插件行插入 profile 名单(bundle 层)。
  • dsh.client.inject → 浏览器半在 Web GUI 加载(/plugins/web-search-openai/client.js)。

五、开发

pnpm install        # 安装 typescript + esbuild
pnpm build          # 服务端 tsc → lib/;客户端 esbuild → lib/client.js(ModuleLoader 封装)
pnpm typecheck      # tsc --noEmit

lib/ 必须提交(用户免构建装配)。

六、诊断

  • 设置卡片保存失败:检查端点可达性 / API Key 有效性。
  • 搜索报 WEB_PROVIDER_ERROR:OpenAI 网关返回非 2xx(错误详情透传)。
  • 设置卡片不出现:确认 bundle 层已加载(dsh plugin list),重启 dsh web

七、许可

MIT

저장소 정보

언어
JavaScript
라이선스
MIT
마지막 업데이트
2026. 8. 18. 오전 6:05

신중하게 설치하기

소스 코드, 권한, 수명 주기 스크립트, 의존성 및 네트워크 접근을 검토하고 신뢰하지 않는 플러그인은 격리 환경에서 테스트하세요.