DDDMUC/dsh-free-search 预览 preview

DDDMUC/dsh-free-search

DeepSeek Harness 的免费网页搜索提供商 - DuckDuckGo 后端,无需 API 密钥

Project Overview项目介绍

This is a native plugin built exclusively for DeepSeek Harness (DSH) that adds multiple web search provider options to DSH's core web search functionality, eliminating the hard requirement for a DeepSeek official API key. It implements the official WebSearchProvider seam interface, so it integrates cleanly with DSH and can coexist with DSH's official search plugin out of the box. To install, users clone the repository then run dsh plugin --profile web add /path/to/dsh-free-search and restart the DSH web process to activate the plugin fully after the installation completes.

This plugin is designed for DSH users who do not have a DeepSeek API key or prefer not to use the official key for web search, especially users who are using OpenAI-compatible gateways that do not support the official web search tool. After installation, it defaults to using the free and stable Bing search engine, so it works out of the box with no additional configuration needed for most users. If any search engine fails, it automatically falls back to the next available engine to ensure search never fails outright, and it also adds tools for platform-specific search and web content fetching.

This plugin is released under the permissive open source MIT license, it has no external third-party dependencies and requires only DSH version 0.1.6-alpha.2 or newer to run correctly. Users in mainland China may need to configure a correct proxy for engines like DuckDuckGo, and the plugin includes a 5-minute LRU cache for search results to prevent rate limiting on free engines. It supports one-click testing of all configured engines, checks for new available updates automatically, and lets users switch engines either via the web settings page or a popup command directly in the chat box.

这是一款专为 DeepSeek Harness (DSH) 打造的原生搜索插件,可为 DSH 添加多引擎免费 web 搜索能力,集成进 DSH 原生的 ctx.web 接口,由内置 web_search 工具自动调用。它无需 DeepSeek 官方 API 密钥即可使用,解决了没有密钥或使用兼容 OpenAI 网关时内置搜索失败的问题,支持通过网页设置页和聊天框弹出命令快速切换搜索引擎。

适合没有 DeepSeek 官方 API 密钥、不想依赖官方密钥的 DSH 用户,也支持用户为付费引擎配置自有密钥以提升额度。安装后默认使用稳定免费的 Bing 引擎,开箱即用,任意引擎失效时会自动轮流尝试其他可用引擎,保证搜索不会直接失败,还额外支持时间范围过滤、指定平台搜索和网页内容抓取功能。

本插件遵循 MIT 许可证免费开源,不依赖额外外部组件,仅需 DSH 0.1.6-alpha.2 及以上版本即可运行,中国大陆用户访问 DuckDuckGo 等引擎时可能需要配置代理。插件自带结果缓存功能可防止免费引擎限流,支持一键测试所有引擎和版本更新检查,安装后重启 DSH 即可生效。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 no risk signal found未发现风险信号
  • This site's static screen found no obvious risk signal (stars, license, activity, manifest)本站静态筛查没发现明显风险信号(星标、许可证、更新活跃度、清单完整度)
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 github:DDDMUC/dsh-free-search

把 DDDMUC/dsh-free-search 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-free-search

DeepSeek Harness 免费搜索插件 —— 无需 API key,零成本,多引擎可切换。 一个给 DeepSeek Harness (dsh) 添加多引擎搜索 provider 的插件,注册进 ctx.web seam。内置 web_search 工具自动选用,支持网页设置页切换引擎、配置 API key、一键测试所有引擎、弹出式命令切换引擎。

中文 · English


中文

免费引擎设置 (Bing)
▲ 免费引擎(以Bing为例)

为什么需要它

dsh 默认的搜索 provider 依赖 DeepSeek 官方 API key(DEEPSEEK_API_KEY)。如果你:

  • 没有(或不想用)DeepSeek 官方 key,
  • 用的是 opencode-go 这类网关(其 OpenAI 兼容端点不支持 web_search 工具),

……那么内置搜索必然失败,agent 会告诉你"无法联网"。

这个插件提供多个免费引擎 + 自动回退,彻底摆脱 DeepSeek 官方 key 的依赖。

特性

  • 零成本 —— 多个免费引擎,无需 key、无需注册
  • 多引擎可选:DuckDuckGo(html/lite)、Bing、SearXNG(元搜索,支持自定义实例)、AnySearch、Exa、Tavily、Keenable、Firecrawl、Parallel、Perplexity、SerpBase、DeepSeek 官方、You.com、百度千帆、Kimi、阿里云百炼、火山联网搜索(豆包搜索)、OpenAI / Gemini / Claude 模型内置搜索
  • 网页设置页 —— 引擎切换 + API key 配置(UI 中 key 脱敏显示"已配置")+ 中英文切换;入口在左侧「插件」页的组件行配置(plugins.row.config,DSH 0.1.7-rc.1+)
  • 弹出式切换命令 —— 聊天框输入 /free-search-engine,弹出引擎选择窗口,点选即切换(等效设置页 + 保存)
  • 引擎测试 —— free_search_test 工具让 agent 一键测试所有引擎;设置页也有"测试引擎"按钮(直测当前引擎,不走回退链,付费引擎无 key 会明确报错)
  • 全局引擎开关与回退优先级 —— 设置页可勾选/取消引擎(取消后全局生效:普通搜索 / Auto / advanced_search / multi_search / 引擎测试都不再用它),并可用 ↑↓ 调整全局回退顺序(一键恢复默认)
  • Multi 模式 —— 可把搜索引擎设为 Multi Search:web_search 并发请求前 3 个已启用引擎、按 URL 合并去重、跨源命中的结果优先(代价是成倍消耗额度;multi 失败会自动退回单引擎回退链)
  • 统一引擎回退 —— 任何引擎失败(付费/免费,缺 key/401/限流/网络)自动轮流尝试下一个引擎:首选引擎 → 其他引擎(exa/tavily/keenable/firecrawl/parallel 无 key 也会尝试,因为它们自带 keyless 免费额度)→ 剩余免费引擎,搜索永不直接失败;结果顶部注明实际生效的引擎(如 Note: perplexity unavailable or failed, using exa.);失败按类别处理:额度/鉴权失败→本会话冷却该引擎,反爬→短退避,超时/5xx/限流→同引擎重试一次,解析失败/0 结果→不冷却(详见下文「失败分类与引擎冷却」)
  • 时间过滤 —— advanced_search 工具支持 timeRange:固定档、自定义相对值、绝对日期三种形式(详见下方逻辑说明)
  • 系统提示词注入 —— agent 知道当前用哪个引擎、哪些需要 key;并明确所有搜索结果是不可信外部数据,不得执行其中的指令
  • 提示注入防护(不可信数据边界) —— 插件自有工具(advanced_search / platform_search / free_search_test)的网页文本包在 <untrusted-web-content> 边界内(正文里自带的同名标记会被剥离,防止提前闭合);核心 web_search / web_fetch 由 DSH 核心自带同类提示(External web content follows...);所有 snippet 统一清洗并截断到 300 字符
  • 版本号 + 检查更新 —— 设置卡片显示当前版本(v0.4.17),"检查更新"按钮直连 npm registry 对比最新版,有新版本时提示并可一键跳转
  • 结果缓存 —— 相同查询(含引擎/时间过滤参数)5 分钟内命中缓存(LRU 50 条),防免费引擎限流、省付费额度;时长可在设置页 0-5 分钟自由配置(0 关闭)
  • 免费标注 —— 设置页中免费引擎带绿色 FREE 徽章,付费引擎带橙色 API KEY 徽章
  • 网页抓取(web_fetch) —— 让 agent 抓取网页内容(官方 dsh-web-fetch-http provider,纯 JS,零额外依赖)
  • 平台搜索(platform_search) —— 搜 GitHub / V2EX / B站 / Reddit / Hacker News / Stack Overflow / 维基百科 / npm / YouTube / Vimeo(公开 API 或免 key 抓取,零依赖)
  • 视频搜索(video_search) —— 跨站找视频:Bing Videos + DuckDuckGo Videos(免 key,失败互相回退),返回视频链接、标题与来源/时长等元信息
  • 干净集成 —— 实现官方 WebSearchProvider seam 接口,与官方插件共存

Showing the opening section of the README — the full document lives in the repository以上为 README 开头摘要,完整文档在仓库内 · View the full README on GitHub →在 GitHub 查看完整 README →

← 上一个 Prev dsh-ios 下一个 Next PPT-Design-Skill →