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
CODEBLOCK0
Works on macOS, Linux, and Windows. Installs the ddgs package, verifies CLI access, and runs a quick search test.
Manual install
CODEBLOCK1
Web Search
CLI wrapper (recommended)
The ddgs-search wrapper outputs clean JSON to stdout with no interactive prompts or abort issues:
CODEBLOCK2
Python script (web-search-plus compatible JSON)
CODEBLOCK3
Output (web-search-plus compatible JSON):
CODEBLOCK4
arXiv Search
CODEBLOCK5
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.
CODEBLOCK6
Integration
Set WEB_SEARCH_PLUS_PATH to use as a search backend for other skills:
CODEBLOCK7
ddgs-search
为什么选择这项技能?
🆓 完全免费 — 无需API密钥、无需订阅、无速率限制、无账单意外。
🔍 集成8个搜索引擎 — Google、Bing、DuckDuckGo、Brave、Yandex、Yahoo、Wikipedia和Mojeek。只需一个标志即可切换引擎。大多数搜索技能仅支持一个引擎。
🎓 内置arXiv学术搜索 — 通过arXiv的免费API直接搜索学术论文。返回作者、分类、摘要和出版日期。非常适合研究人员、学生和AI/ML从业者。
🔌 即插即用 — 输出与web-search-plus兼容的JSON格式,因此可与任何期望该格式的技能或工具配合使用。零配置迁移。
⚡ 轻量级 — 单个pip包,无需浏览器自动化,无需无头Chrome。搜索在1-3秒内完成。
安装
bash
python3 scripts/install.py
支持macOS、Linux和Windows。安装ddgs包,验证CLI访问权限,并运行快速搜索测试。
手动安装
bash
pip install ddgs
网页搜索
CLI包装器(推荐)
ddgs-search包装器将干净的JSON输出到stdout,无交互式提示或中止问题:
bash
Google(默认)
ddgs-search 你的查询 5 google
其他引擎
ddgs-search 你的查询 3 duckduckgo
ddgs-search 你的查询 5 brave
ddgs-search 你的查询 10 yandex
Python脚本(web-search-plus兼容JSON)
bash
Google(默认)
python3 scripts/search.py -q 你的查询 -m 5
其他引擎
python3 scripts/search.py -q 你的查询 -b duckduckgo
python3 scripts/search.py -q 你的查询 -b brave
python3 scripts/search.py -q 你的查询 -b yandex
python3 scripts/search.py -q 你的查询 -b yahoo
python3 scripts/search.py -q 你的查询 -b wikipedia
输出(web-search-plus兼容JSON):
json
{
provider: ddgs,
results: [
{title: ..., url: ..., snippet: ..., published_date: ...}
]
}
arXiv搜索
bash
按主题搜索
python3 scripts/arxiv_search.py -q 3D高斯泼溅 -m 10
按字段搜索(标题、摘要、分类)
python3 scripts/arxiv_search.py -q ti:transformer AND cat:cs.CV -m 5
按相关性排序而非日期
python3 scripts/arxiv_search.py -q 强化学习 --sort-by relevance
返回作者、分类、摘要 — 相同的JSON格式。
直接CLI
⚠️ 原始ddgs text CLI存在分页错误(input()调用 → 在非TTY环境中显示Aborted!并返回退出码1)。请改用ddgs-search包装器或-o file.json。
bash
ddgs text -q 查询 -m 5 -b google -o /tmp/results.json
集成
设置WEBSEARCHPLUS_PATH以将其用作其他技能的搜索后端:
bash
export WEBSEARCHPLUS_PATH=path/to/ddgs-search/scripts/search.py