dsh-tool-ddgs
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
安装
dsh plugin --profile web add github:bharathbillawa/dsh-tool-ddgs
需要可复现安装时,可在仓库后追加 #commit 固定提交。
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
该插件未提供要点说明,请参考仓库 README。
- 安装并启动 DeepSeek Harness:
npx @deepseek-ai/dsh web - 在终端执行上面的安装命令(CLI 会解析插件并核验来源)
- 用 dsh plugins list 确认已安装,必要时重启 Harness 生效
插件以当前 dsh 进程的权限运行,安装时可能执行代码。请先通读仓库源码与许可证,确认无破坏性命令与越权访问;本站只做索引,不对第三方插件安全性作担保。
| 代码仓库 | github.com/bharathbillawa/dsh-tool-ddgs |
| 许可证 | 未标注(见仓库) |
| 主要语言 | main |
| 下载量 | 1 |
| GitHub 星标 | 0 |
| 最近推送 | 2026-08-22 |
| 收录日期 | 2026-09-19 |
| 分类 | 工具与能力 |
事实信息来自公开插件目录快照(2026-10-01),介绍文案由本站再加工。
以下为插件仓库 README 全文(原始内容,由公开目录抓取整理)。
# dsh-tool-ddgs DuckDuckGo web search and URL fetch tools for [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness). Zero required system dependencies — search is pure Node.js, fetch uses `@mozilla/readability` with optional `trafilatura` fallback for higher quality extraction. ## Install ```bash 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/.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/.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
数据来源:公开的 DeepSeek Harness 插件目录与各插件 GitHub 仓库。本站为独立第三方目录,与 DeepSeek、幻方(High-Flyer)及插件作者均无隶属或背书关系。