dshbase

插件目录 / UI & Skins / dsh-tool-ddgs

dsh-tool-ddgs

已验证 · 实测可装 BharathBillawa

✓ 持续维护

查看 GitHub ↗ ← 返回插件目录

0Stars
0Forks
0未关闭 issue
—语言
2026-08-22最近推送
跨平台平台

功能简介

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

✅
我们的评价
可用 — 实测通过,早期项目

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 实测能干净安装、正常启动。早期项目,但功能可用。

「已验证」表示我们的自动化 CI 在干净 profile 里实际执行了 dsh plugin add 并启动成功——仅此而已。功能描述与版本兼容性均为作者声明。这不是安全审计,也不代表对第三方代码的背书。

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

安装

🧩 让 Agent 自动装(推荐)

装一次目录插件,之后本站所有插件都能让 DeepSeek Harness 自动找、自动装:

dsh plugin add dshbase-catalog

然后对 agent 说「帮我装 dsh-tool-ddgs」,它会在目录里找到并自动安装。文档:dshbase-catalog · 已验证场景包。

该插件是 GitHub 源码(未发 npm)——直接从仓库装:

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

实测报告

验证通过:从 GitHub 源码完成 L1 安装 + L2 加载 + L3 运行(dsh 0.1.0-rc.6)。

安全:尚未扫描——我们的每日静态扫描将很快覆盖它。

分享徽章

UI & Skins 里更多

浏览全部 7819 个插件 →