Skip to main content

web-search

Free web search via DuckDuckGo — text, news, images. No API key needed. Self-hosted SearXNG as alternative.

Source facts

Repository
fuyuxiang/echo-agent
Last source activity
August 2, 2026 at 03:20
Detected SKILL.md language
English
Stars
1,057
Forks
27

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

File Explorer
2 files

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
web-search
description
Free web search via DuckDuckGo — text, news, images. No API key needed. Self-hosted SearXNG as alternative.
version
1.0.0
metadata
{"echo":{"tags":["Search","Web","DuckDuckGo","SearXNG","Research"]}}
# Web Search Free web search without API keys. Two options: DuckDuckGo (zero config) or SearXNG (self-hosted). ## DuckDuckGo (Primary) ### Python library (recommended) ```bash pip install duckduckgo_search ``` ```python from duckduckgo_search import DDGS # Text search results = DDGS().text("query here", max_results=5) for r in results: print(f"{r['title']}\n{r['href']}\n{r['body']}\n") # News search news = DDGS().news("AI agents", max_results=5) # Image search images = DDGS().images("cat meme", max_results=3) ``` ### CLI one-liner ```bash python3 -c " from duckduckgo_search import DDGS for r in DDGS().text('$QUERY', max_results=5): print(f\"{r['title']}\n {r['href']}\n {r['body'][:100]}\n\") " ``` ### Helper script ```bash python3 scripts/web_search.py "your query" --max 5 python3 scripts/web_search.py "AI news" --type news python3 scripts/web_search.py "cat" --type images ``` ## SearXNG (Self-hosted alternative) For privacy or heavy usage, deploy your own SearXNG instance: ```bash # JSON API (no key needed for self-hosted) curl -s "http://localhost:8080/search?q=QUERY&format=json&engines=google,bing,duckduckgo" | python3 -m json.tool ``` Docker deployment: ```bash docker run -d -p 8080:8080 searxng/searxng ``` ## Rate Limits | Service | Limit | Notes | |---------|-------|-------| | DuckDuckGo | ~20-30 req/min | No official limit, be respectful | | SearXNG | Unlimited (self-hosted) | Depends on upstream engines | ## Tips - Use specific queries with operators: `site:github.com Python agent` - For recent results, add year: `"2026" AI agent framework` - DuckDuckGo respects `region` param: `DDGS().text(query, region="cn-zh")`
View on GitHub