Back to home

haibinwang9

dsh-web-search

DeepSeek Harness 网页访问插件:多引擎搜索自动回退(SearXNG → Tavily → Brave → 零配置 DuckDuckGo)+ URL 正文提取,移植自 pi-web-access

Stars
1
Language
JavaScript
Created
Aug 15, 2026
Updated
Aug 15, 2026

Introduction

dsh-web-search

中文 · English

npm version License: MIT CI

本插件移植自 nicobailon/pi-web-access(MIT),为 DeepSeek Harness 适配:搜索回退链、DuckDuckGo 解析与正文提取逻辑源自该项目,网络层改用 Node 原生 fetch。感谢原作者。

它能做什么

一个插件,补齐 DSH 的联网能力:

  • 🔍 多引擎搜索自动回退 —— 接管内置 web_search 工具:SearXNG → Tavily → Brave → DuckDuckGo 零配置兜底,未配置的自动跳过,一个 key 都不填也能搜
  • 📄 URL 正文提取 —— get_search_content 工具:抓任意网页,HTML 自动转可读纯文本(优先正文区域、剔除脚本样式),JSON 美化输出,二进制内容明确提示
  • 🎚️ 一键切换默认搜索引擎 —— 设置页开关:开 = 用本插件回退链,关 = 委托官方 DeepSeek 搜索
  • 🛠️ 补齐 fetch seam —— 注册搜索 + 抓取双 provider,内置 web_fetch 因此恢复可用
  • ⚙️ 配置全部在设置页 —— 三个密钥(SearXNG / Tavily / Brave)写入 credentials 服务,卡片式管理,无需改配置文件

安装

从 npm 安装(推荐):

dsh plugin --profile web add dsh-web-search

从源码安装:

git clone https://github.com/haibinwang9/dsh-web-search.git
cd dsh-web-search && dsh plugin --profile web add .

安装后重启 DSH,在 设置 → 插件 → Web access 里配置密钥/开关即可。

配置项

字段凭证名说明
使用本插件作为默认搜索引擎PIWA_SEARCH_ENABLED开 = 回退链;关 = 官方 DeepSeek 搜索
SearXNG 地址SEARXNG_BASE_URLhttps://search.example.com
Tavily API KeyTAVILY_API_KEYhttps://app.tavily.com 申请
Brave API KeyBRAVE_API_KEYhttps://brave.com/search/api/ 申请

取值优先级:环境变量 → harness credentials 服务(也可写 ~/.dsh/.credentials.yaml)。

工具

工具说明
web_search内置搜索工具,由本插件回退链驱动
get_search_content抓取 URL 并提取可读正文

工作原理

web_search ──▶ ctx.web.search() ──▶ 'web-access' provider
                                         │
                      PIWA_SEARCH_ENABLED? ── 是 ──▶ SearXNG → Tavily → Brave → DuckDuckGo
                                         │
                                         └── 否 ──▶ 官方 DeepSeek 搜索

许可证

MIT —— 搜索与正文提取逻辑改编自 nicobailon/pi-web-access(MIT)。