imroc/dsh-websearch
Multi-engine web search for DeepSeek Harness: one aggregated ctx.web search provider with automatic routing and fallback across sixteen backends (Brave, Bocha, Zhipu, Tencent WSA, Exa, Tavily, Serper, Bing RSS, DuckDuckGo, StackExchange, Hacker News, Semantic Scholar/arXiv, GitHub and more), plus a web_search_pro model tool that lets the agent pick engines, fan out, batch independent queries and search verticals. Failures fall back down a chain that always terminates on free engines, and per-engine telemetry lets the model self-diagnose quota issues.
dsh-websearch adds multi-engine web search to DeepSeek Harness. The built-in web_search goes through exactly one provider (deepseek-official by default, i.e. every search is a full LLM call), and the official ctx.web seam deliberately has no multi-backend routing, fallback or fan-out; this plugin fills that gap with an orchestrator over sixteen engines (Brave, Bocha, Zhipu, Tencent WSA, Bailian, Exa, Tavily, Serper, Bing RSS, DuckDuckGo HTML, AnySearch, Firecrawl, StackExchange, Hacker News, Semantic Scholar/arXiv and GitHub Search). web_search keeps its official schema but routes Chinese queries to Bocha and others to Brave, failing over so search keeps working when paid quota is exhausted, while web_search_pro exposes the engine matrix to the model - per-query engine choice, up to five batched queries, fan_out for merged coverage, normalized freshness/site/language/region/news filters - and returns per-engine telemetry so the model can self-diagnose quota issues.
Install
dsh plugin --profile web add dsh-plugin-websearchCopied verbatim from the README's Install block (npm form, listed first). A github:imroc/dsh-websearch form and a local-path form are also documented.
Compatibility
Registers one aggregated ctx.web search provider plus a web_search_pro model tool. Keys resolve as config.keys.<id> (literal) -> the credentials service (which layers env > ~/.dsh/.credentials.yaml > .env) -> environment variable, and a missing key never crashes - the engine just drops out of every routing chain. Failed paid engines fall back down a chain that always terminates on free engines. English README with a 中文 translation.
Details
- Repo: imroc/dsh-websearch
- Category: Tools & Capabilities
- Stars: 1
- Version: GitHub repo imroc/dsh-websearch (1★, MIT); npm package dsh-plugin-websearch at 0.2.6 (registry check 2026-10-12; registry repository field resolves back to this repo).
Alternatives
1321928757/dsh-api-kit · 1321928757/dsh-mysql · 1624318455/dsh-plugin-tavily