Privacy-first web search with DuckDuckGo-style bangs (!w, !yt, !gh)
by @rpeters511
Privacy-respecting web search via SearXNG with DuckDuckGo-style bangs support. Use for web searches when you need to find information online. SearXNG protects privacy by randomizing browser fingerprints, masking IP addresses, and blocking cookies/referrers. Supports 250+ search engines, multiple categories (general, news, images, videos, science), and DuckDuckGo-style bangs for direct engine searches (!w for Wikipedia, !yt for YouTube, !gh for GitHub, !r for Reddit, etc.). Aggregates results fro
clawhub install searxng-bangsπ About This Skill
name: searxng-bangs description: Privacy-respecting web search via SearXNG with DuckDuckGo-style bangs support. Use for web searches when you need to find information online. SearXNG protects privacy by randomizing browser fingerprints, masking IP addresses, and blocking cookies/referrers. Supports 250+ search engines, multiple categories (general, news, images, videos, science), and DuckDuckGo-style bangs for direct engine searches (!w for Wikipedia, !yt for YouTube, !gh for GitHub, !r for Reddit, etc.). Aggregates results from multiple engines simultaneously. Prefer this over external search APIs for privacy-sensitive queries or high-volume searches.
SearXNG Search
Privacy-respecting metasearch engine that anonymizes searches and aggregates results from 250+ engines.
Quick Start
Search the web using the bundled script:
python3 scripts/search.py "your query"
Returns JSON with titles, URLs, and content snippets.
Common Workflows
Basic Web Search
python3 scripts/search.py "OpenClaw AI agent" --num 5
News Search
python3 scripts/search.py "latest tech news" --categories news
Localized Search
python3 scripts/search.py "Python Tutorial" --lang de
Multi-Category Search
python3 scripts/search.py "machine learning" --categories general,science --num 10
Bang Searches (Direct Engine)
# Wikipedia
python3 scripts/search.py "Albert Einstein" --bang wYouTube
python3 scripts/search.py "python tutorial" --bang ytGitHub
python3 scripts/search.py "openclaw" --bang ghReddit
python3 scripts/search.py "best laptop 2026" --bang r
Bangs are more granular than categories and search directly on specific engines.
Privacy Features
SearXNG protects your privacy through multiple layers:
1. Randomized Browser Fingerprints - Generates a new fake browser profile for each search query (version, OS, screen resolution, language) 2. IP Masking - Search engines see the SearXNG instance IP, not yours 3. No Cookies - Never forwards cookies to external search engines 4. No Referrer - Target websites don't see which search engine referred you 5. Optional Tor/Proxy - Can route all queries through Tor for additional anonymity
Result: Search engines cannot build a profile about you.
When to Use
Prefer SearXNG for:
Prefer Brave API (web_search tool) for:
Processing Results
The script returns clean JSON that's easy to parse and present:
import json
import subprocessresult = subprocess.run(
['python3', 'scripts/search.py', 'query', '--num', '5'],
capture_output=True,
text=True
)
data = json.loads(result.stdout)
for item in data['results']:
print(f"Title: {item['title']}")
print(f"URL: {item['url']}")
print(f"Snippet: {item['content']}")
print()
Advanced Options
See references/api.md for:
Configuration
SearXNG Instance
By default, the script uses http://127.0.0.1:8080. Configure via environment variable:
export SEARXNG_URL=http://your-searxng-instance.com
python3 scripts/search.py "query"
Options:
Using Public Instances
If you don't run your own SearXNG:
# Example with public instance
export SEARXNG_URL=https://searx.be
python3 scripts/search.py "query"
Note: Public instances may have rate limits or be slower than self-hosted.
Technical Details
http://127.0.0.1:8080 (override with SEARXNG_URL)scripts/search.pyβ‘ When to Use
π‘ Examples
Search the web using the bundled script:
python3 scripts/search.py "your query"
Returns JSON with titles, URLs, and content snippets.
βοΈ Configuration
SearXNG Instance
By default, the script uses http://127.0.0.1:8080. Configure via environment variable:
export SEARXNG_URL=http://your-searxng-instance.com
python3 scripts/search.py "query"
Options:
Using Public Instances
If you don't run your own SearXNG:
# Example with public instance
export SEARXNG_URL=https://searx.be
python3 scripts/search.py "query"
Note: Public instances may have rate limits or be slower than self-hosted.