DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins
W

dsh-web-search-router

Web Search Router

Select search providers by priority and automatically switch when failures, rate limits, or no results occur.

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add github:Kerberos255/dsh-web-search-router#bd76fd5d4800dd5cf297b6a5522447393585b977
READMECompatibilityVersions

Compatibility and provenance

Web Search Router is published as dsh-web-search-router and currently resolves to version 0.2.13. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
web
Release source
github
Registry updated
10/17/2026

Versions

0.2.13stable
10/17/2026
0.2.12stable
10/17/2026
0.2.11stable
10/12/2026
Show 4 more versionsCollapse versions
0.2.10stable
10/11/2026
0.2.9stable
10/8/2026
0.2.7stable
10/6/2026
0.1.0stable
8/21/2026

Related plugins

Loading related plugins…

Latest
0.2.13
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
Unavailable
Files
Unavailable
Surface
web
License
MIT
Source
github
GitHub
★ 1
Weekly downloads
0
Last push
10/17/2026
View source ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue

Related plugins

More verified plugins in search-research.

Free Searchdsh-free-searchFree web search for DeepSeek Harness: 27 engines (Bing/DuckDuckGo/AnySearch/SearXNG/Exa/Tavily/Keenable/Firecrawl/Parallel/You.com keyless; Zhihu global/site via MCP and Perplexity/SerpBase/DeepSeek (official + native tools/search)/Baidu/Kimi/Aliyun/DoubaAb Wechat Scrapedsh-ab-wechat-scrape--- description: "The out-of-tree wechat_scrape tool: retrieves WeChat official-account articles, filters promotional blocks, and saves each as a Markdown file, for maintainers of this machine's dsh profiles." kind: "package-reference" ---Ab Market Researchdsh-ab-market-researchAn out-of-tree DeepSeek Harness plugin: the trade_search tool (multi-round aspect-broadening query planning, publisher-tier ranking, source diversity, JSON snapshot) and its browser card in one package.Arisdsh-arisARIS research-workflow skills as a DeepSeek Harness bundle: 82 skills plus cross-model adversarial review through Codex.

README

Web Search Router for DeepSeek Harness

简体中文 · DeepSeek Harness · Security

A priority-ordered, multi-provider web_search router for DSH. Keep the model-facing tool unchanged while automatically switching providers when one is unavailable.

The plugin registers one DSH web search provider (web-search-router) and keeps the model-facing tool unchanged: agents still call DSH's built-in web_search. Providers are tried from top to bottom and the router stops on the first successful result.

Features

  • Reorder and enable/disable providers from the DSH Settings UI.
  • Automatic fallback on missing configuration, provider failures, timeouts, rate limits, quota/credit exhaustion, and (by default) empty results.
  • Short cooldowns for transient failures and configurable cooldowns for rate/quota failures.
  • Non-secret router settings are stored in plugins/dsh-web-search-router/config.json next to $DSH_HOME and apply without restarting DSH.
  • API keys stay in DSH credentials / launch environment and are never returned to the Settings UI.
  • Provider error messages are sanitized before being logged or returned through the router.

Providers

ProviderConfiguration
SearXNGBase URL in Settings (no API key required)
DeepSeek SearchDelegates to the deepseek-official provider DSH itself registers: the account sign-in, or the shared DEEPSEEK_API_KEY credential
TavilyTAVILY_API_KEY
Brave SearchBRAVE_API_KEY
ExaEXA_API_KEY
FirecrawlFIRECRAWL_API_KEY
ParallelPARALLEL_API_KEY
DuckDuckGoNo key; best-effort HTML fallback

Unconfigured providers are skipped automatically.

Compatibility

Check package.json for the runtime and peer-dependency constraints supported by the current source. DeepSeek Harness is under active development and may introduce compatibility-breaking changes. Pin the plugin to a Git commit when reproducibility matters, and retest when upgrading DSH.

Agent preset requirement

This plugin supplies the search backend; it does not add a second model-facing tool. Your agent preset must expose DSH's built-in web_search tool (for example, the standard preset). A minimal preset that omits web_search will not invoke this router.

Install

Install to the profile that runs your agents (desktop is an example):

dsh plugin --profile desktop add github:Kerberos255/dsh-web-search-router

For reproducible installations, pin a Git commit. Local development can instead use link:/absolute/path/to/dsh-web-search-router with the same profile. Installing the plugin does not add web_search to a preset that omits the native tool.

The bundled patch selects web-search-router as DSH's search provider and inserts the plugin with generic defaults.

Settings

Open Settings → Plugins → Plugin configuration → Web Search Router and expand the card to:

  • reorder providers;
  • enable/disable providers;
  • configure SearXNG;
  • write or clear provider API keys;
  • set per-provider timeout and cooldown;
  • choose whether an empty result falls through to the next provider.

Non-secret settings live in plugins/dsh-web-search-router/config.json next to $DSH_HOME; the card reads and writes that file.

Settings writes are accepted only from loopback access. API keys are written through DSH credentials; the UI only reads configured/unconfigured state.

DeepSeek Search tier

The DeepSeek tier configures nothing of its own: it calls the deepseek-official provider DSH itself registered, so the endpoint, the model, the account-or-key authentication, and the per-request limits all stay owned by DSH. Changing the endpoint in DSH's own Web search settings needs no extra step here.

The tier is attempted only while that provider is registered and the session can plausibly authenticate — a session on the deepseek-account route, or the shared DEEPSEEK_API_KEY credential the Models page manages for chat. Otherwise the router skips to the next provider.

Fallback behavior

For each enabled provider, in configured order:

  1. skip it if not configured or currently cooling down;
  2. run it with the configured timeout;
  3. return immediately on success;
  4. optionally continue on an empty result;
  5. on failure, classify the error and continue to the next provider.

Caller aborts are propagated immediately and never trigger fallback.

Development

npm test

Tests cover routing order/fallback/cooldowns, settings persistence and provider request/response adapters. Live tests used during local development are intentionally excluded from the public repository because they depend on a running local DSH instance and local credentials.

Security

  • Never commit API keys or .env files.
  • Credential values are resolved only on the host side.
  • The browser receives credential references and configured-state metadata, never stored key values.
  • Router errors redact URLs and key/token-like values before logging or surfacing failure details.

Related plugins

  • Browser Tools for CDP-based web interaction.
  • Status Cards for DSH runtime and provider status.

License

MIT

Optional plugin diagnostics

The plugin optionally emits privacy-restricted operation and failure metadata to dsh-plugin-diagnostics. Diagnostics contain event type, status, fixed error code and elapsed time; conversation content and credentials are not logged. The diagnostics plugin is optional and does not change the host requirements.