← 返回列表
未验证
一个独立的、由 SearXNG 提供支持的网页搜索提供程序,用于 DeepSeek Harness 的 web…
尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/8/15 · 已提供中文文档
一个独立的、由 SearXNG 支持的网页搜索提供程序,用于 DeepSeek Harness 的 web 配置文件。它接入 harness 的网页搜索接缝(ctx.web),因此智能体的 web_search 工具会通过你自己的自托管 SearXNG 实例进行搜索,而不是通过供应商 API。
综合分
28.7
GitHub 分
28.7
用户评分
—
★ Stars
3
周下载量
—
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add d3cker/dsh-web-search-searxng该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
数据截至 2026/9/19(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-invariants@deepseek-ai/dsh-launch-environment@deepseek-ai/dsh-settings@deepseek-ai/dsh-web@deepseek-ai/schemastery用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动
README
dsh-web-search-searxng
一个独立的、由 SearXNG 提供支持的网页搜索提供程序,用于 DeepSeek Harness 的 web 配置文件。它接入 harness 的网页搜索接缝(ctx.web),因此 agent 的 web_search 工具会通过你自己的自托管 SearXNG 实例进行搜索,而不是通过供应商 API。
- 纯 ESM,无需构建步骤。
- 以捆绑包形式发布:一条 dsh plugin 命令即可安装并自动激活它。
- 单一配置项:$SEARXNG_BASE_URL。
- 已测试(pnpm test,20 个测试,vitest)。
一条命令安装
从全新的 DeepSeek Harness 检出(或 dsh 已在 PATH 中):
dsh plugin --profile web add /path/to/dsh-web-search-searxng
就这样。该插件会自动追加到 web 配置文件的捆绑包栈及其补丁层(作为 cordis.patch.yml 随本仓库发布):
- 将网页搜索接缝切换到此提供程序(searchProvider: searxng),并且
- 挂载插件行。
无需手动编辑 cordis.patch.yml。无需重新构建。
配置:设置一个环境变量
你的 SearXNG 地址从 SEARXNG_BASE_URL 读取(默认为 http://localhost:8888):
export SEARXNG_BASE_URL=http://192.168.30.74:8888 # your instance
可选配置项:
| 变量 | 默认值 | 含义 |
|---|---|---|
| SEARXNG_BASE_URL | http://localhost:8888 | 你的 SearXNG 实例;会追加 /search。 |
| SEARXNG_NUM_RESULTS | 10 | 当请求未指定自身上限时的默认结果数量。 |
| SEARXNG_API_KEY | (无) | 可选,用于需要密钥的实例。 |
然后在该 shell 中启动(或重启)dsh web——或者将这些导出添加到你的 shell 配置文件 / harness 加载的 .env 中。
没有环境变量? 那就编辑捆绑包的 cordis.patch.yml 中的那一行:
baseURL: !!js process.env.SEARXNG_BASE_URL ?? 'http://localhost:8888'
^^^^^^^^^^^^^^^^^ change this default
两种方式产生相同的结果——由你选择。
验证
web_search("postgresql vs mysql")
应返回来自你的实例的聚合结果。
等等——我能得到 Settings → Plugins 卡片吗?
只有在应用两处小的 harness 侧更改之后(该卡片位于 harness 源代码本身中,并且 api-proxy.ts 中的允许列表门控必须命名此命名空间)。它们记录在本 README 末尾的 Make the Settings card work 中。搜索本身无需它们即可工作。
详情
文件
dsh-web-search-searxng/
├── cordis.patch.yml # bundle layer: activation + config (env-first)
├── src/
│ ├── index.js # plugin entry: registers provider + settings section
│ └── provider.js # SearXNG JSON API client (GET /search?format=json)
├── tests/provider.spec.js
├── package.json # declares dsh.bundle → auto layer on dsh plugin add
├── README.md
└── LICENSE
这条命令如何工作
dsh plugin --profile web add 会在 profile 目录中运行 pnpm add,然后协调 bundle 列表:任何在其 package.json 中声明了 dsh.bundle 的已安装包都会被追加到 dsh.profile.bundles(harness apps/cli/src/plugin.ts,reconcilePlugins)。本仓库的 package.json 正是这样声明的,指向 cordis.patch.yml,它作为最顶层被应用在 base/web-app bundles 之上。
选项一览
| 设置 | 默认值 | 通过 |
|---|---|---|
| baseURL | http://localhost:8888 | $SEARXNG_BASE_URL 环境变量,或 patch 行 |
| numResults | 10 | $SEARXNG_NUM_RESULTS 环境变量,或 patch 行 |
| apiKey | (无) | $SEARXNG_API_KEY 环境变量,或 patch 行 |
该插件还暴露了一个 web-search-searxng 设置区段,因此一旦启用 Settings 卡片(见下文),这些相同字段就可以在 GUI 中编辑,写入会立即应用于下一次搜索。
在本地运行测试
mkdir -p node_modules/@deepseek-ai # dev-only: link peers from a harness profile
for p in cordis dsh-invariants dsh-launch-environment dsh-settings dsh-web schemastery; do
ln -sf "$DSH_HOME/profiles/node_modules/@deepseek-ai/$p" "node_modules/@deepseek-ai/$p"
done
pnpm test
node_modules/ 已被 git 忽略。
让 Settings 卡片工作(可选)
可编辑卡片需要在 harness 内部做两处改动(它们无法从一个仅宿主的插件中发布,因为 ui-settings-plugins 的浏览器 bundle 和设置暴露门控是 harness 的一部分)。两处改动都很小:
1. 暴露命名空间 —— 在 harness 中,编辑 packages/host/apiproxy/src/api-proxy.ts:
const WEB_SETTINGS_NAMESPACES = [
'agent-loop', 'shell', 'locale', 'permission', 'ui-conversation', 'ui-theme',
'web-search-deepseek', 'web-search-searxng', // ← add this
] as const
2. 渲染卡片 —— 在 packages/client/ui-settings-plugins 中,添加 SearxngCard/SearxngCardController(endpoint + 默认结果数量),在 index.ts 中注册它(settings.plugin.item 插槽),添加 searxng 语言环境键,然后重新构建 web 产物(pnpm run build:lib:host + pnpm run build:lib:client + build:web)并重启 GUI。
没有这两处改动,一切都能工作,除了* UI 内编辑器:搜索是实时的,配置通过环境变量或 patch 文件进行。有了它们,你还能获得 Settings → Plugins → Web search (SearXNG)。
使用 DeepSeek Harness 和 DeepSeek V4 Flash 0731 创建,运行于 2 × Asus Ascent GX10。同作者(d3cker)的其他插件
扫码进群