dsh-web-search-exa
Manifest validExa search provider for the dsh-web seam: the web_search tool sends queries to Exa's /search API and returns the results as sources, in dsh web, dsh-TUI and headless runs. Needs an Exa API key (EXA_AP
dsh-web-search-exa
An Exa search provider for DeepSeek Harness. It registers the provider exa
on the @deepseek-ai/dsh-web seam, so the web_search tool sends its queries to Exa's
/search API and returns the results as sources. It works the same from dsh web, dsh-TUI and
headless runs. web_fetch is unchanged. The plugin has no UI of its own.
Install
The package is a dsh bundle. Use the profile you run (web, headless, …):
dsh plugin --profile web add github:jakehemmerle/dsh-web-search-exa#v0.3.0-rc.1
export EXA_API_KEY=… # in the environment that launches dsh
The bundle's cordis.patch.yml pins the web seam's searchProvider to
exa and adds the web-search-exa row. Restart dsh web after installing.
This release is qualified against DSH 0.2.1-rc.2; its peer pin is exact, so other DSH
versions need dsh plugin allow-version or a newer release.
Configuration
Override the row in your profile's own cordis.patch.yml. A patch replaces the whole row
config, so restate any field you keep.
| Field | Default | Meaning |
|---|---|---|
apiKeyEnv | EXA_API_KEY | Key name: looked up in dsh's credential store, then (after apiKeyFile) in the environment |
apiKeyFile | (unset) | File holding the key (raw or dotenv), read on every search, so a rotated key needs no restart; it wins over the environment |
apiKey | (unset) | Literal key, used before any other source (avoid) |
baseURL | https://api.exa.ai | Exa API origin |
type | auto | Exa search type |
highlightChars | 600 | Highlight length per result |
timeoutMs | 30000 | Request timeout |
- id: web-search-exa
config:
apiKeyFile: /run/secrets/exa
Development
nix flake check runs the fast suites against the pinned dsh; nix run .#e2e runs the real
dsh web (Playwright), dsh-TUI (private tmux) and headless suites against a local mock Exa.
See SPEC.md, TESTING.md and RELEASING.md.
License: MIT.
Comments
Loading…
Similar plugins
by Geighlord007
Exa web search provider for the DeepSeek Harness ctx.web seam, with Exa Dynamic Highlights on by default and a /exa command to change highlights, search type and result count at runtime.
★ 0
MIT
JavaScript
Oct 13, 2026
dsh plugin --profile web add qp-exa-dynamicby fno2010
Multi-backend web_search provider for DeepSeek Harness (DSH): Exa + Firecrawl with automatic failover, key-free capable
★ 3
↓ 141/wk
MIT
JavaScript
Sep 11, 2026
dsh plugin --profile web add @fno2010/dsh-web-search-extby TonyDua
Zero-config Exa web search provider for DeepSeek Harness (dsh): keyless anonymous MCP fallback (mcp.exa.ai/mcp) + keyed REST path, with a configurable providerId switch.
★ 12
↓ 376/wk
MIT
JavaScript
Oct 14, 2026
dsh plugin --profile agent add @tonydua/dsh-web-search-exaby X-C1811
Tavily web-search provider for DeepSeek Harness (ctx.web). Keyless or API-key modes with a configurable UI card; provider framework designed to be extended to more search APIs.
★ 4
↓ 614/wk
MIT
JavaScript
Oct 20, 2026
dsh plugin --profile web add dsh-web-search-pluginby ForeverYoungPp
Multi-provider third-party web search for the DeepSeek Harness: routes the native web_search tool through a configurable provider fallback chain, with an isolated provider settings page.
★ 0
MIT
JavaScript
Sep 1, 2026
dsh plugin --profile web add @deepseek-ai/dsh-web-searchby Yurzi
Multi-protocol web_search provider for DeepSeek Harness
★ 4
↓ 803/wk
MIT
TypeScript
Sep 30, 2026
dsh plugin --profile web add dsh-web-search-enhanced