dshbase

Plugin directory / UI & Skins / dsh-tool-ddgs

dsh-tool-ddgs

Verified · install-tested on dsh BharathBillawa

✓ Actively maintained

View on GitHub ↗ ← Back to plugin directory

0Stars
0Forks
0Open issues
—Language
2026-08-22Last push
Cross-platformPlatform

What it does

DuckDuckGo web search and URL fetch tools for DeepSeek Harness, no API key required. Provides web_search (via ddgs) and web_fetch (via trafilatura) as a drop-in bundle

✅
Our take
Works — verified, early-stage project

DuckDuckGo web search and URL fetch tools for DeepSeek Harness, no API key required. Provides web_search (via ddgs) and web_fetch (via trafilatura) as a drop-in bundle It installs cleanly and boots without issues in our testing. It's early-stage but functional.

“Verified” means our automated CI actually ran dsh plugin add in a clean profile and it booted — nothing more. Feature descriptions and version compatibility are the author’s claims. This is not a security audit and not an endorsement of third-party code.

README

dsh-tool-ddgs

DuckDuckGo web search and URL fetch tools for DeepSeek Harness.

Zero required system dependencies — search is pure Node.js, fetch uses @mozilla/readability with optional trafilatura fallback for higher quality extraction.

Install

dsh plugin --profile web add github:BharathBillawa/dsh-tool-ddgs

Then restart dsh. The bundle patch automatically:

  • Registers web_search (DuckDuckGo Lite, pure Node)
  • Registers web_fetch (content extraction, saves to file)
  • Wires the native Search action to use ddgs
  • Disables the built-in DeepSeek web search provider
  • Enables the file read tool for accessing full fetched content

Requirements

  • Node.js >= 24 (required by DeepSeek Harness)
  • Optional: Python 3.9+ with pip install trafilatura for better content extraction

Tools

web_search

Search the web using DuckDuckGo Lite. Pure Node.js — no Python, no subprocess, no API key.

  • Accepts 1-4 queries
  • Returns deduplicated sources with titles, URLs, and snippets
  • Wired to the native Search action via ctx.web provider

web_fetch

Fetch a URL and extract readable text content:

  1. Downloads the page with browser-like headers
  2. Extracts clean text using trafilatura (if available) or @mozilla/readability
  3. Saves the full content to /tmp/dsh-web-fetch/<url-slug>.md
  4. Returns a 5000-char preview + the file path + total line count

If the preview answers the question, the model responds immediately. If more detail is needed, the model uses dsh's built-in read tool with offset/limit to read specific sections from the saved file — just like reading any local file.

This avoids dumping 100K+ chars into context for a simple question about one section of a long article.

How it works

  • Search: Direct POST to DuckDuckGo Lite + HTML regex parsing. No headless browser, no API key, no subprocess.
  • Fetch: Node native fetch() → @mozilla/readability (DOM extraction via linkedom). Falls back to trafilatura via Python subprocess when available (better quality on complex pages).
  • File storage: Full fetched content is saved to /tmp/dsh-web-fetch/<url-slug>.md

Architecture

The plugin registers both:

  • A ctx.web search provider (id: "ddgs") — powers the native Search action in the agent loop
  • web_search and web_fetch tools — directly callable by the model

Configuration

The bundle patch configures itself. No manual cordis.patch.yml editing needed.

License

MIT

Install

🧩 Let your agent install it (recommended)

Install the catalog once, then DeepSeek Harness can find and install any plugin from this site automatically:

dsh plugin add dshbase-catalog

Then say "install dsh-tool-ddgs for me" — your agent finds it in the directory and installs it. Docs: dshbase-catalog · verified packs.

This plugin is GitHub source (not published to npm) — install it straight from the repo:

Web profile:

dsh plugin --profile web add github:BharathBillawa/dsh-tool-ddgs

Headless (CLI) profile:

dsh plugin --profile headless add github:BharathBillawa/dsh-tool-ddgs

Test report

Verified: L1 install + L2 load + L3 runtime from GitHub source on dsh 0.1.0-rc.6.

Security: not yet scanned — our daily static scan will cover it shortly.

Share this badge

More in UI & Skins

Browse all 7819 plugins →