private-web-search-searchxng
Self-hosted private web search using SearXNG. Use when privacy is important, external search APIs are blocked or paid, or you need search without tracking.
adelpro
@adelpro
Install
$ openclaw skills install @adelpro/private-web-search-searchxngPrivate Web Search (SearXNG)
Privacy-respecting, self-hosted metasearch engine for AI agents.
Quick Setup
# If container exists but stopped:
docker start searxng
# Or fresh start:
docker run -d --name searxng -p 8080:8080 -e BASE_URL=http://localhost:8080/ --restart unless-stopped searxng/searxng
# Enable JSON API (only needed once)
docker exec searxng sed -i 's/ formats:/ formats:\n - json/' /etc/searxng/settings.yml
docker restart searxng
# Verify
curl -s "http://localhost:8080/search?q=test&format=json&engines=bing&num_results=1" | python3 -c "import sys,json; d=json.load(sys.stdin); print(f\"Results: {d.get('number_of_results',0)}\")"
## Usage
### Basic Search
```bash
curl -sL "http://localhost:8080/search?q=YOUR_QUERY&format=json" | jq '.results[:10]'
Using the Helper Script
./scripts/search.sh "openclaw ai" 5
Environment Variables
| Variable | Default | Description |
|---|---|---|
| SEARXNG_PORT | 8080 | Container port |
| SEARXNG_HOST | localhost | Server host |
| BASE_URL | http://localhost:8080 | Public URL |
Working Engines (Tested June 2026)
85 engines enabled by default, but most major engines are blocked or rate-limited:
| Engine | Status | Results | Notes |
|---|---|---|---|
| Bing | Working | 10-30 | Most reliable, 282K+ total |
| GitHub | Working | 30 | Package/repo search |
| Stack Overflow | Working | 10 | Q&A search |
| Wikipedia | Sometimes | 1 | Varies by query |
| Blocked | 0 | CAPTCHA, "access denied" | |
| DuckDuckGo | Blocked | 0 | Rate limited |
| Startpage | Blocked | 0 | CAPTCHA |
| Qwant | Blocked | 0 | Rate limited |
Multi-Engine Queries (Recommended)
Combine multiple working engines for best results:
# Get combined results from Bing + GitHub + Stack Overflow
curl -s "http://localhost:8080/search?q=python&format=json&engines=bing,github,stackoverflow&num_results=10"
This returns 40+ results with diverse sources (web, code, Q&A).
Why Most Engines Fail
- Google/DuckDuckGo: Detect automated traffic, return CAPTCHA/403 errors
- Public instances: Get IP-banned quickly due to high volume
- Self-hosted: Slightly better but still rate-limited
- Bing: Most permissive, works reliably
Note: Engine status changes frequently. Test with &num_results=5 to verify before heavy use.
Management
docker start searxng # Start
docker stop searxng # Stop
docker logs searxng # View logs
docker rm searxng -f # Remove
Troubleshooting
| Issue | Solution |
|---|---|
| No results | Check docker logs searxng |
| 403 Forbidden | Enable JSON format (step 2) |
| Connection refused | Run docker start searxng |
| "container name already in use" | Container stopped, run docker start searxng |
| Most engines return 0 | Engine rate-limiting — use Bing |
Top skills in this category
Multi Search Engine
@gpyangyoujunMulti search engine integration with 16 engines (7 CN + 9 Global). Supports advanced search operators, time filters, site search, privacy engines, and Wolfra...
Agent Browser
@matrixyHeadless browser automation CLI optimized for AI agents with accessibility tree snapshots and ref-based element selection
Openai Whisper
@steipeteLocal speech-to-text with the Whisper CLI (no API key).
Tavily 搜索
@jacky1n7Web search via Tavily API (alternative to Brave). Use when the user asks to search the web / look up sources / find links and Brave web_search is unavailable...
Baidu web search
@ide-reaSearch the web using Baidu AI Search Engine (BDSE). Use for live information, documentation, or research topics.