← 返回 Skills 市场
camopel

ddgs-search

作者 camopel · GitHub ↗ · v1.2.0
cross-platform ✓ 安全检测通过
1198
总下载
3
收藏
9
当前安装
3
版本数
在 OpenClaw 中安装
/install ddgs-search
功能描述
Free multi-engine web search via ddgs CLI (DuckDuckGo, Google, Bing, Brave, Yandex, Yahoo, Wikipedia) + arXiv API search. No API keys required. Use when user...
使用说明 (SKILL.md)

ddgs-search

Why This Skill?

🆓 Completely free — no API keys, no subscriptions, no rate limits, no billing surprises.

🔍 8 search engines in one — Google, Bing, DuckDuckGo, Brave, Yandex, Yahoo, Wikipedia, and Mojeek. Switch engines with a single flag. Most search skills only support one.

🎓 Built-in arXiv research search — search academic papers directly via arXiv's free API. Returns authors, categories, abstracts, and publication dates. Perfect for researchers, students, and AI/ML practitioners.

🔌 Drop-in replacement — outputs web-search-plus compatible JSON, so it works with any skill or tool that expects that format. Zero config migration.

Lightweight — single pip package, no browser automation, no headless Chrome. Searches complete in 1-3 seconds.

Install

python3 scripts/install.py

Works on macOS, Linux, and Windows. Installs the ddgs package, verifies CLI access, and runs a quick search test.

Manual install

pip install ddgs

Web Search

CLI wrapper (recommended)

The ddgs-search wrapper outputs clean JSON to stdout with no interactive prompts or abort issues:

# Google (default)
ddgs-search "your query" 5 google

# Other engines
ddgs-search "your query" 3 duckduckgo
ddgs-search "your query" 5 brave
ddgs-search "your query" 10 yandex

Python script (web-search-plus compatible JSON)

# Google (default)
python3 scripts/search.py -q "your query" -m 5

# Other engines
python3 scripts/search.py -q "your query" -b duckduckgo
python3 scripts/search.py -q "your query" -b brave
python3 scripts/search.py -q "your query" -b yandex
python3 scripts/search.py -q "your query" -b yahoo
python3 scripts/search.py -q "your query" -b wikipedia

Output (web-search-plus compatible JSON):

{
  "provider": "ddgs",
  "results": [
    {"title": "...", "url": "...", "snippet": "...", "published_date": "..."}
  ]
}

arXiv Search

# Search by topic
python3 scripts/arxiv_search.py -q "3D gaussian splatting" -m 10

# Field-specific search (title, abstract, category)
python3 scripts/arxiv_search.py -q "ti:transformer AND cat:cs.CV" -m 5

# Sort by relevance instead of date
python3 scripts/arxiv_search.py -q "reinforcement learning" --sort-by relevance

Returns authors, categories, abstracts — same JSON format.

Direct CLI

⚠️ The raw ddgs text CLI has a pagination bug (input() call → Aborted! + exit code 1 in non-TTY contexts). Use ddgs-search wrapper or -o file.json instead.

ddgs text -q "query" -m 5 -b google -o /tmp/results.json

Integration

Set WEB_SEARCH_PLUS_PATH to use as a search backend for other skills:

export WEB_SEARCH_PLUS_PATH="path/to/ddgs-search/scripts/search.py"
安全使用建议
This skill appears to be what it claims: a ddgs CLI wrapper + arXiv search. Before installing: (1) consider running the install.py inside a Python virtualenv to avoid modifying your global/user Python packages; (2) verify the ddgs package on PyPI yourself if you have strong supply-chain concerns; (3) the installer may suggest adding ~/.local/bin to PATH or copy a wrapper there — that's normal but review any files it writes; (4) avoid running install scripts as root. If you need stricter isolation, run only the arXiv script (which makes plain HTTPS calls) or inspect/execute the search wrapper locally after review.
功能分析
Type: OpenClaw Skill Name: ddgs-search Version: 1.2.0 The skill bundle provides web search and arXiv paper search functionality. All Python scripts (`arxiv_search.py`, `install.py`, `search.py`) use `subprocess.run` with a list of arguments, which prevents shell injection vulnerabilities. Network calls are limited to the legitimate arXiv API endpoint (`export.arxiv.org`). The installer script (`install.py`) correctly installs the `ddgs` package and a local wrapper script to `~/.local/bin`, which is part of its stated purpose. There is no evidence of data exfiltration, malicious execution, persistence mechanisms, obfuscation, or prompt injection attempts in the `SKILL.md` or `README.md` files. The code aligns with the stated purpose and lacks high-risk behaviors.
能力评估
Purpose & Capability
Name/description (ddgs-based multi-engine web search + arXiv) matches the code and SKILL.md: scripts call the ddgs CLI and arXiv API, and the installer installs the ddgs Python package. Required binary (python3) is appropriate; no unrelated credentials or services are requested.
Instruction Scope
Runtime instructions limit themselves to installing ddgs, invoking the ddgs CLI via subprocess, and calling the public arXiv API. The search wrapper filters environment variables passed to subprocesses to a small safe set. The SKILL.md does not instruct reading unrelated files or exfiltrating secrets.
Install Mechanism
There is no platform install spec in registry, but the included install.py runs pip to install the ddgs package (first --user, fallback to global). pip installs are normal but can modify the user's Python environment; recommend using a virtualenv if you wish to avoid global/user-wide package changes. The installer copies a wrapper into ~/.local/bin if present — the wrapper file is not included in the package, and the script handles that case gracefully.
Credentials
The skill requires no environment variables or credentials. Scripts access PATH/APPDATA/HOME to detect ddgs installation and to advise PATH changes; search.py intentionally restricts the env passed to ddgs to ('PATH','HOME','LANG','TERM'). No secret-like env vars are requested or read.
Persistence & Privilege
The skill does not request always:true or autonomous elevation. Installation will write to the user's Python package area and may copy a wrapper to ~/.local/bin (user-level persistence). These are normal for CLI tools but worth noting — the installer does not alter other skills or global agent configuration.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install ddgs-search
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /ddgs-search 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.2.0
Add ddgs-search CLI wrapper script that fixes raw ddgs pagination bug (input() → Aborted + exit 1 in non-TTY). Wrapper outputs clean JSON, exit 0. Updated install.py to auto-install wrapper to ~/.local/bin. Updated SKILL.md docs.
v1.1.0
Enhanced docs and install
v1.0.0
Free multi-engine web search (8 engines) + arXiv API. No API keys required.
元数据
Slug ddgs-search
版本 1.2.0
许可证
累计安装 9
当前安装数 9
历史版本数 3
常见问题

ddgs-search 是什么?

Free multi-engine web search via ddgs CLI (DuckDuckGo, Google, Bing, Brave, Yandex, Yahoo, Wikipedia) + arXiv API search. No API keys required. Use when user... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 1198 次。

如何安装 ddgs-search?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install ddgs-search」即可一键安装,无需额外配置。

ddgs-search 是免费的吗?

是的,ddgs-search 完全免费(开源免费),可自由下载、安装和使用。

ddgs-search 支持哪些平台?

ddgs-search 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 ddgs-search?

由 camopel(@camopel)开发并维护,当前版本 v1.2.0。

💬 留言讨论