anysearch-dsh README

The project's README from github.com/anysearch-team/anysearch-dsh. As one markdown file: README.md.

AnySearch logo

@anysearch/anysearch-dsh

AnySearch-powered real-time web and vertical search for DeepSeek Harness.

AnySearch AI Search npm version MIT license DeepSeek Harness plugin

English | 简体中文

@anysearch/anysearch-dsh connects AnySearch to DeepSeek Harness as a plugin. Keep using Harness's native web_search and web_fetch while gaining real-time web search, cleaned URL content, vertical search, and concurrent batch search.

AnySearch is search infrastructure for AI agents, covering the public web and specialized data sources across code, finance, academia, law, security, and more.

Quick start

For AI Agents

# Fetch the complete installation guide, read it end to end, and then follow it step by step:
curl -fsSL https://raw.githubusercontent.com/anysearch-team/anysearch-dsh/refs/heads/main/docs/agent-installation.md

For Humans

Install the plugin into the web profile:

npx -y @deepseek-ai/dsh plugin --profile web add @anysearch/anysearch-dsh

Start DeepSeek Harness:

npx -y @deepseek-ai/dsh web

No API key is required for a quick start. Requests use AnySearch's anonymous quota until you configure one.

What you get

Optional API key

Try it without an API key.

Sign up for an AnySearch account and configure an API key to get 1,000 free search calls per day.

Sign up or sign in at anysearch.com, then visit API Keys to get one. Store the key in $DSH_HOME/.credentials.yaml (~/.dsh/.credentials.yaml by default):

ANYSEARCH_API_KEY: "as_sk_your_key"

The plugin resolves the managed credential for every operation, so credential rotation reaches the next request without restarting DSH. A launching ANYSEARCH_API_KEY environment variable has higher priority.

Inspect the composed profile without exposing the credential value:

npx -y @deepseek-ai/dsh --profile web --dump-config

Tools

Use case Harness tool
Ordinary web search web_search
Fetch and clean a specific URL web_fetch
Discover available domains and tags anysearch_capabilities
Vertical or parameterized search anysearch_search
Run one to five searches together anysearch_batch_search

For ordinary prompts, let Harness select the tool. Models can discover live domain and parameter definitions before making a specialized search.

Environment requirements

Requires Node.js 22.19 or Node.js 24+, pnpm 11.7, and DeepSeek Harness. The DSH plugin command uses pnpm to manage profile dependencies, so pnpm must be available on PATH.

Windows, Linux, and macOS use the same installation command. Before installing, ensure that Node.js, npx, and pnpm can all be run directly from PATH.

Configuration

The bundled profile layer automatically selects AnySearch as the existing ctx.web search and fetch provider, enables web_fetch, and mounts the advanced tools, so no changes are required by default.

To customize it, ask an AI assistant—or edit it manually—to add the complete block below to the target DSH profile's user configuration layer, overriding the bundled id: web-search-anysearch entry. Keep the id unchanged, replace the complete config, and do not add a second AnySearch provider under a different ID:

- id: web-search-anysearch
  config:
    apiKeyEnv: ANYSEARCH_API_KEY
    baseURL: https://api.anysearch.com
    maxRenderedContentChars: 12000
Field Default Purpose
apiKeyEnv ANYSEARCH_API_KEY DSH credential reference; missing uses anonymous access
baseURL https://api.anysearch.com AnySearch API base URL
maxRenderedContentChars 12000 Maximum result-content characters rendered to the model per advanced tool call

Manage the plugin

Update:

npx -y @deepseek-ai/dsh plugin --profile web update @anysearch/anysearch-dsh

Remove:

npx -y @deepseek-ai/dsh plugin --profile web remove @anysearch/anysearch-dsh

Compatibility and limitations

Documentation

Community & Support

Join the AnySearch community to share your experience, report issues, and get technical support.

WeChat group survey
WeChat group survey QR code
Discord invite
Discord invite QR code

Development

git clone https://github.com/anysearch-team/anysearch-dsh.git
cd anysearch-dsh
pnpm install
pnpm run check

The live AnySearch E2E suite is opt-in. Run it without ambient credentials in anonymous mode:

ANYSEARCH_E2E=1 ANYSEARCH_E2E_ANONYMOUS=1 pnpm run test:e2e

License

MIT

anysearch-dsh (anysearch-team/anysearch-dsh)

Searching Database…

What is this?It's a plugin that connects the AnySearch search API to DeepSeek Harness (DSH), giving agents real-time web search, cleaned page content extraction, vertical/specialized search, and concurrent batch search.
Is this a standalone app or a plugin for something else?It's a DSH plugin, not a standalone app: it swaps in AnySearch as the provider behind Harness's existing websearch and webfetch tools, and adds new vertical/batch search tools on top.
How do I install it into DeepSeek Harness?Install the plugin into your DSH web profile and then start DeepSeek Harness; the same installation command works on Windows, Linux, and macOS.
What do I need installed before adding this plugin?You need Node.js 22.19 or 24+, pnpm 11.7 (reachable on PATH), and DeepSeek Harness itself, since the plugin command uses pnpm to manage profile dependencies.
Any catches before relying on this?DeepSeek Harness itself is still in developer preview and can introduce compatibility-breaking changes, and the plugin deliberately doesn't add a separate URL-extraction tool since Harness's webfetch already covers that.
Who is this plugin meant for?Developers running AI agents on DeepSeek Harness who want better web search and research tools than the built-in defaults.
What tools does the plugin add beyond basic web search?It adds anysearch-capabilities to discover searchable domains and tags, anysearch-search for vertical/parameterized searches, and anysearch-batchsearch to run one to five searches concurrently with independent failure handling.
How does credential rotation work?The plugin reads the managed credential from $DSHHOME/.credentials.yaml on every operation, so rotating the key takes effect on the next request without restarting DSH; an ANYSEARCHAPIKEY environment variable takes priority if set.
Can advanced search return full page content, not just snippets?Yes, advanced search can fetch cleaned page content on demand for deeper research, and a maxRenderedContentChars setting (default 12000) caps how much of that content is shown to the model.
Size
0.3 MB
Stars
534
Age
2mo
Commits · 90 Days