ddgs-search
Skill534 starsChanged 6 months agoMITView on GitHub
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 needs web search, research paper discovery, or when other skills need a search backend. Drop-in replacement for web-search-plus.
- Installs packages
In this repository26 other files it gives its agents.
- 03_task1Skill
- 03_task2Skill
- 03_task3Skill
- 03_task4Skill
- 03_task5Skill
- 03_task6Skill
- agentic-paper-digest-skillSkill
- arxiv-summarizer-orchestratorSkill
- calendar-remindersSkill
- ArchitectureSkill
- arxiv-agentic-verifierSkill
- geepers-dataSkill
- agenticmailSkill
- ai-meeting-schedulingSkill
- meeting-to-actionSkill
- academic-literature-searchSkill
- cross-validated-searchSkill
- video-watcherSkill
- eachlabs-voice-audioSkill
- loopwindSkill
- aegis-shieldSkill
- canarySkill
- skill-trust-auditorSkill
- agent-browserSkill
- self-improvementSkill
- video-framesSkill
The file
Files
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.pyWorks on macOS, Linux, and Windows. Installs the ddgs package, verifies CLI access, and runs a quick search test.
Manual install
pip install ddgsWeb 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 yandexPython 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 wikipediaOutput (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 relevanceReturns authors, categories, abstracts — same JSON format.
Direct CLI
⚠️ The raw
ddgs textCLI has a pagination bug (input()call →Aborted!+ exit code 1 in non-TTY contexts). Useddgs-searchwrapper or-o file.jsoninstead.
ddgs text -q "query" -m 5 -b google -o /tmp/results.jsonIntegration
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"Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

