Skip to main content
Generaldvcrn

private-web-search-searchxng

Self-hosted private web search using SearXNG. Use when privacy is important, external APIs are blocked, you need search without tracking, or want to avoid paid search APIs.

Stars
15
Source
dvcrn/openclaw-skills-marketplace
Updated
2026-05-29
Slug
dvcrn--openclaw-skills-marketplace--private-web-search-searchxng
View on GitHubRaw SKILL.md

// install — copy + paste into any project

mkdir -p .claude/skills && curl -fsSL https://raw.githubusercontent.com/dvcrn/openclaw-skills-marketplace/HEAD/plugins/adelpro--private-web-search-searchxng/skills/private-web-search-searchxng/SKILL.md -o .claude/skills/private-web-search-searchxng.md

Drops the SKILL.md into .claude/skills/private-web-search-searchxng.md. Works with Claude Code, Cursor, and any agent that loads SKILL.md files from .claude/skills/.

Private Web Search (SearXNG)

Privacy-respecting, self-hosted metasearch engine for AI agents.

Quick Setup

# 1. Start container
docker run -d --name searxng -p 8080:8080 -e BASE_URL=http://localhost:8080/ searxng/searxng

# 2. Enable JSON API
docker exec searxng sed -i 's/  formats:/  formats:\n    - json/' /etc/searxng/settings.yml
docker restart searxng

# 3. Verify
curl -sL "http://localhost:8080/search?q=test&format=json" | jq '.results[0]'

Usage

Basic Search

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

Available Engines

Google, Bing, DuckDuckGo, Brave, Startpage, Wikipedia, and more.

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