New:Introducing Socket Scanning for VS Code Marketplace Extensions.Learn more →
Get Started

dsh-all-search

Package Overview
Dependencies
Maintainers
1
Versions
20
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

dsh-all-search

DeepSeek Harness plugin: AnySearch-backed web search with optional TinyFish and DeepSeek search/fetch, registered into ctx.web.

latest
Source
npmnpm
Version
0.2.17
Version published
Weekly downloads
478
408.51%
Maintainers
1
Weekly downloads
 
Created
Source

dsh-all-search AnySearch web search for DeepSeek Harness

Adds a web-search provider to DeepSeek Harness, registered into ctx.web. AnySearch is a single MCP gateway that aggregates exa / tavily / firecrawl / context7 behind one API key. Optional TinyFish search adds free news and academic results, and its full-browser fetch can render JavaScript-heavy pages. Optional DeepSeek Search/Fetch (deepseek_api_key) uses the same Bearer key as the chat API and competes inside the wrapper (not as a second registered search provider).

When api_key is set, queries go to that gateway. When it is absent, the same anysearch provider stays available and searches via Firecrawl POST /v1/search with no Authorization header (keyless). Set optional firecrawl_api_key to send Authorization: Bearer and use your own quota. NAT/CI runners that share an egress IP share that keyless daily credit pool.

With firecrawl_api_key and an AnySearch key, developer-intent queries (repo / issue / PR / commit / skill) are answered by the Firecrawl Developer Index first -- a semantic artifact index over READMEs, issues, PRs, OpenAPI specs and skills -- falling back to AnySearch when it fails or returns nothing.

With tinyfish_api_key, news and academic queries route to TinyFish first (domain_type=news / research_paper), then DeepSeek (if configured), then AnySearch or Firecrawl. Set tinyfish_fetch: true / deepseek_fetch: true to register those as fetch providers (off by default — Harness already has local fetch, and DeepSeek Search is also built into Harness server-side; this plugin path keeps parity with pi-all-search).

Port of pi-all-search.

English · 中文

Why

dsh ships Exa / Perplexity / DeepSeek search. This plugin adds AnySearch: one key, many backends, no per-backend credentials. Without an AnySearch key, Firecrawl (and optional DeepSeek/TinyFish) still work so the provider is never a no-op.

Quick start

dsh plugin --profile web add dsh-all-search

The provider registers as anysearch on ctx.web -- the built-in web_search tool picks it up alongside the stock providers.

- id: all-search
  name: dsh-all-search
  config:
    api_key: <your anysearch key>   # optional
keyrequiredmeaning
api_key-AnySearch key. When set, queries use the AnySearch gateway.
base_url-MCP endpoint override
firecrawl_api_key-optional Firecrawl key (Bearer quota). Also enables the Developer Index branch for repo/issue/PR/skill queries when AnySearch is configured
tinyfish_api_key-optional TinyFish key. Enables free news/academic search and full-browser fetch.
tinyfish_fetch-register TinyFish as the fetch provider (default false; the host usually supplies a local fetch provider)
deepseek_api_key-optional DeepSeek key. Enables DeepSeek Search inside the anysearch wrapper (POST /v1/tools/search).
deepseek_fetch-register DeepSeek as a fetch provider (default false; same reason as tinyfish_fetch)

Without an AnySearch key the provider still reports available() = true and searches Firecrawl keyless. Hosts that share an egress IP (NAT, CI) share those daily credits; set firecrawl_api_key for a private quota.

Search routing: developer queries → Developer Index → TinyFish (news/academic) → DeepSeek → AnySearch → TinyFish → Firecrawl. Every key is optional, so any subset of providers still answers queries.

Privacy

  • Keys live only in your config file -- never logged.
  • With api_key, only your query and result count go to the AnySearch gateway.
  • Without api_key, the query goes to Firecrawl /v1/search.
  • With tinyfish_api_key, TinyFish keeps every query and fetched URL under its /usage endpoint. Treat it as a non-private retrieval layer.
  • With deepseek_api_key, queries go to DeepSeek tools/search (and optionally tools/fetch); same privacy posture as the DeepSeek chat API.

Development

npm install
npm run typecheck
npm test          # result parsing / maxResults / HTTP errors / keyless Firecrawl routing
npm run build

Live search test:

node --import tsx tests/real/real-search.mjs

License

MIT

Keywords

dsh

FAQs

Package last updated on 17 Oct 2026

Related posts