cyijun/dsh-surfing-plugin

SearXNG search and Crawl4AI fetch providers for DeepSeek Harness

dsh-surfing-plugin adds self-hosted web access to DeepSeek Harness: web_search uses SearXNG and web_fetch uses Crawl4AI. It registers providers with DSH's ctx.web service, so the native tool names, arguments, rendering, timeouts, cancellation, and result limits remain unchanged. The bundled cordis.patch.yml mounts the plugin, selects the surfing-searxng and surfing-crawl4ai providers, and adds a fetch-only native tool consumer that works in both DSH assemblies — headless keeps its host-level web_search while the Web UI keeps the one mounted by each Agent Preset. Configuration supports per-provider URL, optional API key (literal or env var), auth header and scheme, language, categories, safeSearch, time range, markdown mode, and a max content character cap; explicit config wins over environment values.

Files & Data ★ 12 updated 2026-08-14 ✅ runtime-tested
View on GitHub ↗

Install

dsh plugin --profile web add . (from a local checkout); npm channel dsh-surfing-plugin pending publication

Export SEARXNG_URL=http://127.0.0.1:8080 and CRAWL4AI_URL=http://127.0.0.1:11235 (current Crawl4AI releases enable Bearer auth by default — set CRAWL4AI_API_TOKEN), then install a local checkout into the web profile with dsh plugin --profile web add ., verify with dsh --profile web --dump-config, and start dsh --profile web. The README shows dsh plugin --profile web add dsh-surfing-plugin as the post-publication npm channel; the npm package is not yet published (registry 404 as of this writing), so the local-checkout install is the verified path. Remove with dsh plugin --profile web remove dsh-surfing-plugin.

Compatibility

Node.js ^22.19.0 or >=24.0.0; DeepSeek Harness >=0.1.0-rc.6 <0.2.0; reachable SearXNG (JSON enabled in search.formats) and Crawl4AI services. Registers providers with DSH's ctx.web service so native tool names, arguments, rendering, timeouts, cancellation, and result limits stay unchanged.

Details

Recent updates

The current README documents the architecture (native web_search -> surfing-searxng -> SearXNG; native web_fetch -> surfing-crawl4ai -> Crawl4AI), requirements, quick start, the full configuration table, and the uninstall command.

FAQ

Does it replace the built-in DeepSeek search provider?
It selects the surfing providers; the built-in DeepSeek search provider may remain mounted but is not selected (per README).
Do I need my own SearXNG and Crawl4AI?
Yes — the plugin requires reachable self-hosted SearXNG and Crawl4AI services; the README documents SEARXNG_URL and CRAWL4AI_URL plus the Crawl4AI Bearer token.
Is the npm package available?
Not yet — the README shows dsh plugin --profile web add dsh-surfing-plugin as the post-publication channel; the verified current path is installing a local checkout.

Alternatives

anweat/dsh-web-search-pro · AcidGr/dsh-web-lan-access · omdsh-dev/dsh-open-in-vscode

More plugins in Files & Data

Browse more in Files & Data

Guides for Files & Data plugins