DeepSeek Harness Plugin

moguiyu/dsh-tavily#packages/dsh-tavily

Stars ★ 10 Downloads (30d) 2,846 Category Browser & Web Added 2026-08-15 npm @moguiyu/dsh-tavily

Tavily search with multiple API keys, key rotation and failover, a usage gauge, and a settings card.

Install

# from npm (prebuilt)

dsh plugin --profile web add @moguiyu/dsh-tavily

# from GitHub (first run asks for allowBuilds approval — follow the hint, retry)

dsh plugin --profile web add github:moguiyu/dsh-tavily#path:/packages/dsh-tavily

Any plugin you install runs third-party code with your own permissions — it can read your files, use your credentials, and reach the network, and tool approvals don’t sandbox it. GitHub-sourced plugins also run build scripts at install time — pnpm blocks those until you allow them, so an install can stop with ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED or ERR_PNPM_IGNORED_BUILDS; dsh prints the exact key to add under allowBuilds in your profile’s pnpm-workspace.yaml, and the install works on the next run. Allowing a build is a trust decision: only install sources you trust, and pin a commit (github:owner/repo#sha).

README

Everything in one package: the advanced Tavily model tools (tavily_search, tavily_extract, tavily_map, tavily_crawl, tavily_research, tavily_get_research), the key/usage HTTP routes, and the browser card on the Plugins page.

  • tavily_search — full Tavily surface (max_results, search_depth, topic, days, include_answer, include_raw_content, include_domains, exclude_domains).
  • tavily_extract / tavily_map / tavily_crawl — read a known URL's content, map a site's links, or crawl a site and return its pages. Same key-rotation/failover as search.
  • tavily_research / tavily_get_research — Tavily's Research endpoint: queue a task (model: mini / pro / auto, plus citation_format, output_length, domain filters and an optional output_schema), wait for it, and get a synthesized, cited report; the second tool collects a task that outlived the first call. Research is billed per request and far above search — mini 4-110 credits, pro 15-250, against 1-2 for a search — so it is a per-call choice, never a default. timeout_seconds: 0 queues the task and returns its id immediately.
  • Card — key list, usage gauge, and the strategy selector. It registers into the Plugins page's plugins.bundle.config slot, keyed @moguiyu/dsh-tavily, and needs DSH 0.1.6-alpha.2 or newer — the release that retired settings.plugin.item and moved plugin configuration off the Settings page. On older lines the tools and routes work; there is simply no card.
  • web_search is never replaced — no ctx.web provider is registered and web.searchProvider is never rewritten; the built-in web_search keeps its native provider and schema.

Host half: plain ESM (src/index.js, src/tools.js, src/backend.js, src/lib.js). Client half: prebuilt window.__ModuleLoader__ bundle at lib/client.js, generated from src/client.js via pnpm build.

Earlier releases split this across @moguiyu/dsh-tool-tavily-search and @moguiyu/dsh-tavily-backend, which this package imported as regular dependencies. From 0.3.0 both are folded in here: one package means no dependency range can drift behind the contract, which is exactly how the old tool-level switch broke. Both old packages are deprecated.

There is no tool-level on/off switch. Composing the plugin registers the tools, and the Plugins page's own bundle toggle is the only on/off.

See the workspace README for install and configuration.

Content from the project README on GitHub ↗

Links

More in this category

View the whole category →

Community comments

Comments are public GitHub Discussions. Loading them connects to GitHub and Giscus; a GitHub account is required to post.