minatoAI/jina-web-search-dsh-plugin
Jina AI tools for DeepSeek Harness: 12 model tools (web / arXiv / SSRN search, r
dsh-jina exposes Jina Reader / Search API capabilities to the model as eight jina_* tools in every session: jina_web_search (general web search with time filter and region/language hints), jina_search_arxiv and jina_search_ssrn (dedicated academic search returning canonical arxiv.org / papers.ssrn.com links), jina_read (read a page as clean markdown with selector targeting and noise filtering; PDFs use the plain, ~40x cheaper extractor), jina_read_pdf (read a scanned / image-only PDF through jina-ocr-v1, one page per request), jina_screenshot, jina_datetime, and jina_primer (host clock, network facts and Jina account status). It adds a Web Plugins-page card for several API keys with automatic failover when one runs out of credits, a host-side balance ledger with a call-driven 60-second probe window, a low-balance reminder, and endpoint-domain routing (mainland mirrors / global / auto).
Install
dsh plugin --profile web add github:minatoAI/jina-web-search-dsh-pluginInstalled from GitHub because there is no build script (so no allowBuilds grant is needed); the client bundle is committed. The README recommends pinning a commit sha (#<commit-sha>) so later pushes do not change the installed code, and gives a local-folder form for development. Restart dsh after installing (new bundles take effect on next startup). The npm package name is dsh-jina (upgrade with pnpm update dsh-jina), and the host plugin has no third-party npm dependencies. API keys go through DSH's credential seam (JINA_API_KEY, JINA_API_KEY_2 ... _10) or key files -- the README states no value is ever returned by a read endpoint.
Compatibility
DeepSeek Harness. The host plugin depends only on Node built-ins and dsh host services (fs, subprocess, tools, credentials, llm, webServer); the settings-seam contract is dsh 0.1.4 onward (a settings namespace is the loader/profile composition entry id). It defaults to Jina's official mainland mirrors (r.jinaai.cn / s.jinaai.cn) because the global domains r.jina.ai / s.jina.ai are DNS-poisoned in mainland China; the plugin configures no proxy itself.
Details
- Repo: minatoAI/jina-web-search-dsh-plugin
- Category: Other
- Stars: 1
- Version: 0.14.0 (2026-09-28) from GitHub source (npm package name dsh-jina, not claimed here); MIT
- Last push: 2026-09-17
- First seen: 2026-08-13
Recent updates
The README's 0.14.0 notes document the move from a page-owned 15-minute poll to a call-driven shared ledger (host-side perKey cache, total, updatedAt, and a read-only GET /api/dsh-jina/balance that makes no outbound request), the anchored 60-second probe window, a single 401/402 rule across all four paths, the 'updated N minutes ago' age line that cannot lie, and a full suite of 188 tests (187 pass, 1 opt-in skip).
FAQ
- How do I install dsh-jina?
- Run dsh plugin --profile web add github:minatoAI/jina-web-search-dsh-plugin (pinning a commit sha is recommended), then restart dsh. There is no build step and no third-party npm dependency; a local-folder install form is documented for development.
- Does it need a proxy in mainland China?
- No. The README states the plugin defaults to Jina's official mainland mirrors r.jinaai.cn / s.jinaai.cn, which are reachable directly, and configures no proxy itself.
- How are multiple API keys handled?
- A Web Plugins-page card manages several Jina keys with automatic failover when one runs out of credits; a host-side balance ledger tracks the pool and a low-balance reminder appears below 1,000,000 credits.
Alternatives
crayonlu/dsh-web-search-tavily · TonyDua/dsh-web-search-exa · anweat/dsh-web-search-pro