bocha-ai/dsh-web-search-bocha

DeepSeek Harness Web Search Plugin

dsh-web-search-bocha is a Bocha Web Search-backed WebSearchProvider for DeepSeek Harness: the package registers provider id bocha, calls Bocha's /v1/web-search endpoint, and its dsh.bundle patch selects the provider after installation (cordis.patch.yml replaces the base web row's searchProvider with bocha and inserts the web-search-bocha row; existing providers remain mounted but ctx.web routes search to bocha). Harness continues to own the model-facing web_search tool, result limits, citations, provider selection and error presentation. Config covers apiKey/apiKeyEnv, baseURL, freshness (noLimit/oneDay/oneWeek/oneMonth/oneYear/date/range), summary and count; maxResults overrides count and is capped at Bocha's 50. Sources map url/name/summary/datePublished into the Harness source type; HTTP errors surface as WEB_PROVIDER_ERROR with Bocha's log_id retained, aborts as WEB_ABORTED, redirects are rejected, and a missing credential surfaces as WEB_PROVIDER_CREDENTIAL_MISSING.

Other ★ 1 updated 2026-08-14 ⚠️ needs adapt
View on GitHub ↗

Install

dsh plugin --profile web add @bocha-ai/dsh-web-search-bocha

npm @bocha-ai/dsh-web-search-bocha 0.1.0 verified 2026-09-02 (repository field → github.com/bocha-ai/dsh-web-search-bocha; README bilingual EN/zh). Install: dsh plugin --profile web add @bocha-ai/dsh-web-search-bocha; optionally dsh --profile web --dump-config; start with dsh --profile web. Configure the key either in the DSH credentials document ($DSH_HOME/.credentials.yaml, chmod 600 on POSIX) or via the BOCHA_API_KEY environment variable (env wins if both). Removing the package removes its provider row and bundle layer.

Compatibility

DSH profile bundle registering provider id bocha; calls Bocha POST /v1/web-search; baseURL https://api.bocha.cn; needs a Bocha API key.

Details

Recent updates

Bocha web-search provider (provider id bocha); automatic searchProvider selection on install; credentials-document or env key; freshness filter; source mapping; cap-50; clean error taxonomy.

FAQ

Does the plugin replace Harness's web_search tool?
No — the package supplies search only: DeepSeek Harness continues to own the model-facing web_search tool, result limits, citations and error presentation; ctx.web simply routes to the bocha provider.
How is the API key stored?
Either in the DSH credentials document (~/.dsh/.credentials.yaml, owner-only) referenced as BOCHA_API_KEY, or as an environment variable; the env value wins if both are set.
What limits apply?
The request's maxResults overrides count and is capped at Bocha's maximum of 50 before transport; Harness's web capability still enforces its own final source bound.

Alternatives

LTctfer/dsh-web-search-brave · nitrazepam01/dsh-web-search-tavily · TonyDua/dsh-web-search-exa

More plugins in Other

Browse more in Other

Guides for Other plugins