haibinwang9/dsh-web-search
DeepSeek Harness 网页访问插件:多引擎搜索自动回退(SearXNG → Tavily → Brave → 零配置 DuckDuckGo)+ URL 正文提取,移植自 pi-web-access
Project Overview项目介绍
dsh-web-search is a native plugin built exclusively for DeepSeek Harness (DSH) that adds full web search and content retrieval capabilities to the DSH platform. It is adapted from the open source pi-web-access project, retaining the original search fallback chain and HTML content extraction logic, while swapping the network layer for Node.js native fetch for simpler dependency management. To install the plugin, you can run the command dsh plugin --profile web add dsh-web-search from npm, or clone the source code and install it locally from your terminal. After installation, you just need to restart DSH to access the configuration panel. All configuration can be done directly from the DSH settings UI, no manual file edits are required for most users.
The plugin supports an automatic fallback search chain that tries SearXNG first, then Tavily, then Brave, and finally falls back to DuckDuckGo which works without any API keys. Any unconfigured engines are automatically skipped, so even users who don’t have API keys for any of the premium engines can still get search results right after installation. It also provides a tool to extract readable content from any public URL, automatically converting HTML to plain text, prioritizing the main content area and removing extra scripts and styling. You can toggle a setting to use the plugin as your default search provider, or switch back to the official DeepSeek search whenever you want.
API keys for SearXNG, Tavily, and Brave are stored through DSH’s built-in credentials service, and configuration values are prioritized with environment variables first, then DSH credentials, then values in the local .credentials.yaml file at ~/.dsh/.credentials.yaml. The plugin registers both search and fetch providers to DSH, which restores the functionality of the built-in web_fetch tool that may be missing in default DSH setups. It is released under the permissive MIT license, which allows for free use, modification, and redistribution as long as the original copyright notice is retained. After installation, all configuration options are accessible through the DSH plugin settings panel, so you don’t need to edit any configuration files manually.
dsh-web-search 是专为 DeepSeek Harness 开发的原生插件,用于为 DSH 补齐联网搜索能力。该插件移植自 pi-web-access 项目,保留了原项目的搜索回退逻辑和网页正文提取逻辑,仅将网络层替换为 Node 原生 fetch。它支持多搜索引擎自动回退,无需配置任何 API 密钥也能通过 DuckDuckGo 完成搜索,同时支持用户自定义配置各引擎密钥,按优先级依次尝试搜索。
该插件核心功能包括多引擎回退搜索、任意网页正文提取、开关切换默认搜索引擎,还能补齐 DSH 的内置 web_fetch 能力。安装后可以在 DSH 的设置页直接完成所有配置,采用卡片式管理密钥,无需手动修改配置文件。用户既可以选择用插件的回退链搜索,也可以一键切换回官方 DeepSeek 搜索服务,灵活满足不同需求。
安装方式推荐从 npm 源安装,在终端执行 dsh plugin --profile web add dsh-web-search 即可完成,也支持从源码克隆本地安装。配置取值优先级为环境变量高于 DSH 内置凭证服务,也可直接手动写入 ~/.dsh/.credentials.yaml 文件。插件遵循 MIT 许可证,安装完成后重启 DSH 就能在插件设置页找到配置入口开始使用。
请帮我安装这个 DSH 插件。安装前先完成【兼容性检查 + 安全性检查】,检查通过再动手。
插件:dsh-web-search(haibinwang9/dsh-web-search)
仓库:https://github.com/haibinwang9/dsh-web-search
本站详情页:https://www.yhbd.top/plugins/haibinwang9-dsh-web-search/
本站登记:类型 plugin · 归类 原生 DSH 插件 · 许可证 MIT · ⭐ 2 · 最近提交 2026-08-15 · 主语言 JavaScript
按下面顺序执行,每步先把结论告诉我,再进入下一步:
【1 兼容性检查】
① 我这边:DSH 版本、Node 版本、操作系统、当前 profile(web / desktop)。
② 读它的 README、package.json、插件 manifest,列出它要求的 DSH 版本 / Node 版本 / 操作系统 / 外部依赖 / 需要另外先装的运行时。
③ 逐条比对,结论只写「满足 / 不满足 / 未知」三种;不满足的给出可行替代方案。
④ 检查是否和我已装的插件冲突:命令名重复、skill / tool 重名、端口占用、重复注册的 MCP server。
【2 安全性检查】
① 仓库可信度:和上面「本站登记」是否一致;star / fork 数、创建时间、最近提交,是否归档或长期停更。
② 安装脚本:逐行看 package.json 的 preinstall / install / postinstall,以及 install.sh、setup.ps1 之类脚本。出现 curl|bash、下载后直接执行、混淆代码、访问与插件功能无关的域名,立刻停下来告诉我,不要继续装。
③ 依赖:列出新增依赖,标出无人维护、或与知名包拼写近似的可疑包(typosquatting)。
④ 权限与副作用:它会读写哪些目录、访问哪些域名、需要哪些 DSH 权限(filesystem / network / shell / clipboard 等),以及怎么卸载和回滚。
⑤ 如果它要求 sudo / 管理员权限,或权限明显超出功能所需,先停下来问我。
【3 安装】
上面两步没有「不满足」和「高危项」时才执行;用官方推荐方式安装,不要自行提权。
【4 汇报】
用表格输出:检查项 / 结论 / 依据 / 是否需要我决策。拿不准的一律写「未知」并说明要我怎么确认——不要猜,也不要替我决定。
Send this message to DSH in your current session: it verifies compatibility and security first (answering met / not met / unknown item by item) and only installs once everything checks out — it will stop and ask you if it finds a high-risk item. The box scrolls; the copy is the full prompt. CLI install commands may not be accurate across systems, so DSH is the safer route.把上面这条消息直接发给当前会话里的 DSH:它会先核对兼容性与安全性(逐条给「满足 / 不满足 / 未知」),确认没问题再安装,有高危项会停下来问你。框内可滚动,复制到的是完整提示词;安装命令不一定准确,发给 DSH 更稳。
- Only 2 stars - very few users, little community feedback星标只有 2,几乎没人在用,遇到问题缺少社区反馈
DSH walks through these 9 checksDSH 会逐条核对这 9 项
Compatibility兼容性
- DSH, Node, OS and profile requirementsDSH 版本 / Node 版本 / 操作系统 / profile 是否满足要求
- External dependencies and runtimes (Electron / Python / Docker, ...)外部依赖与运行时(Electron / Python / Docker 等)是否齐备
- Conflicts with installed plugins: command names, skill / tool names, ports, duplicate MCP registration与已装插件是否冲突:命令名、skill / tool 重名、端口占用、重复 MCP 注册
Security安全性
- Repo matches the facts registered here; archived or abandoned?仓库是否与页面登记一致,是否归档或长期停更
- Safety of preinstall / install / postinstall and install.sh / setup.ps1preinstall / install / postinstall 与 install.sh、setup.ps1 是否安全
- curl|bash, download-then-execute, obfuscation, unrelated domains → stop immediatelycurl|bash、下载即执行、混淆代码、无关域名 → 立刻停止
- Typosquatting or unmaintained packages among the new dependencies新增依赖里有没有 typosquatting 或无人维护的包
- Requested permissions vs. what the feature actually needs申请了哪些权限、是否超出功能所需(filesystem / network / shell / clipboard)
- Any sudo / admin requirement, plus uninstall and rollback是否要求 sudo / 管理员权限,以及卸载与回滚方式
Anything uncertain must be marked unknown with a note on how to confirm it. This site's signal screen is a static snapshot, not a security audit.拿不准的必须标「未知」并说明要我怎么确认。本站的信号筛查是静态快照,不能替代安全审计。
Or use CLI install (for developers)或使用命令行安装(适合开发者)
CLI Install命令行安装
dsh plugin --profile web add dsh-web-search
把 haibinwang9/dsh-web-search 加入你的 DSH 配置(web profile)即可启用。
READMEREADME
dsh-web-search
本插件移植自 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_URL |
如 https://search.example.com |
| Tavily API Key | TAVILY_API_KEY |
https://app.tavily.com 申请 |
| Brave API Key | BRAVE_API_KEY |
https://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)。
Tencent/BrowserSkill
YaoApp/yao
anbeime/skill
Jesseovo/last30days-skill-cn
bowenliang123/dsh-context
platonai/Browser4
liustack/modsearch