jaco-tech/dsh-web-search-searxng ↗★ 0
@jaco-tech/dsh-web-search-searxng
基于 SearXNG 的搜索引擎插件,无需认证和 API 密钥,直接通过 HTTP 请求获取搜索结果。
AI 分析
核心用途是为 DSH 的网页搜索工具提供隐私安全的搜索源。适合需要让 AI 进行联网搜索的用户。必要条件是需要连接到可用的 SearXNG 实例。
安裝
此插件尚未提供可驗證的 bundle,或相容性檢查未通過。請先閱讀倉庫說明。 閱讀完整 README ↗
說明文件
閱讀完整 README ↗dsh-web-search-searxng
SearXNG-backed search provider plugin for DeepSeek Harness.
Registers a WebSearchProvider into ctx.web so that the existing web_search model tool routes through your SearXNG instance. No auth, no API key, no model calls — just a plain HTTP GET against SearXNG's JSON endpoint.
Status
⚠️ Not yet published to npm. The CI/CD workflow builds on every push and publishes automatically when a v* tag is pushed. Once the first release is cut:
npm install @jaco-tech/dsh-web-search-searxng
Configure
Add to your DSH profile's cordis.patch.yml:
- insert:
- id: web-search-searxng
name: '@jaco-tech/dsh-web-search-searxng'
config:
baseURL: 'http://your-searxng-instance:8888'
# Optional filters:
language: 'en'
categories: 'general'
timeRange: ''
Optionally pin ctx.web to use this provider explicitly:
- replace:
- id: web
config:
searchProvider: searxng
How it works
This is a Cordis plugin that implements the WebSearchProvider interface from @deepseek-ai/dsh-web:
export const name = "web-search-searxng"
export const inject = ["web"]
export function apply(ctx, config) {
ctx.web.registerSearchProvider({
id: "searxng",
available() { /* URL.canParse(config.baseURL) */ },
async search(request, signal) {
// GET /search?q=&format=json
// maps response to WebSearchResult
}
})
}
The existing @deepseek-ai/dsh-tool-web consumer calls ctx.web.search() — your SearXNG instance serves the results automatically.
Provider interface
| Method | Behavior |
|---|---|
available() | Returns true when baseURL is a valid URL |
search(request, signal?) | GET /search with q, format=json, optional language/categories/time_range params. Dedupes results by URL. Surfaces answers and infoboxes as provider-generated answer text. |
Upstream
This plugin communicates with SearXNG via its JSON API (/search?format=json). SearXNG is a free internet metasearch engine which aggregates results from more than 70 search services. You need a running SearXNG instance to use this plugin.
Release process
# Tag and push — the CI workflow builds and publishes to npm automatically
git tag v0.1.0
git push origin v0.1.0
Requires the NPM_TOKEN secret to be set in the repository.
Development
npm install
npm run build
License
MIT