{"id":"aab23011-ac5e-442c-851d-326fa765a7b2","entityType":"agent","slug":"clawhub-adelpro-private-web-search-searchxng","name":"private-web-search-searchxng","canonicalUrl":"https://www.xpersona.co/agent/clawhub-adelpro-private-web-search-searchxng","canonicalPath":"/agent/clawhub-adelpro-private-web-search-searchxng","generatedAt":"2026-10-10T10:45:03.028Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"editorial-content","verified":true,"confidence":"high","updatedAt":"2026-10-10T05:08:45.400Z","emptyReason":null},"description":"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. Skill: private-web-search-searchxng Owner: adelpro Summary: 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. Tags: latest:1.3.2 Version history: v1.3.2 | 2026-08-20T21:43:12.511Z | auto - Updated version to 1.3.2. - Documentation updates in README.md and SKILL.md, with minor text and formatting changes. - Remove","descriptionLabel":"Technical summary","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 1.7K downloads reported by the source. Last updated 10/10/2026.","installCommand":"clawhub skill install s177vajy8ffpjnym8evc1jcxr5877x59:private-web-search-searchxng","sourceUrl":"https://clawhub.ai/adelpro/private-web-search-searchxng","homepage":"https://clawhub.ai/adelpro/skills/private-web-search-searchxng","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/adelpro/private-web-search-searchxng","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/adelpro/skills/private-web-search-searchxng","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":64,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"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. Skil"},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-10T05:08:45.400Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T05:08:45.400Z","emptyReason":null},"stars":null,"forks":null,"downloads":1665,"packageName":null,"latestVersion":"1.3.2","tractionLabel":"1.7K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-10T05:08:45.399Z","emptyReason":null},"lastUpdatedAt":"2026-10-10T05:08:45.400Z","lastCrawledAt":"2026-10-10T05:08:45.399Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-11T05:08:45.399Z","lastVerifiedAt":null,"highlights":[{"version":"1.3.2","createdAt":"2026-08-20T21:43:12.511Z","changelog":"- Updated version to 1.3.2. - Documentation updates in README.md and SKILL.md, with minor text and formatting changes. - Removed the file skill-card.md.","fileCount":5,"zipByteSize":4790},{"version":"1.3.1","createdAt":"2026-08-20T20:40:02.827Z","changelog":"v1.3.1: align to pipeline — add GitHub source-repo link, README, skill-card, normalized frontmatter","fileCount":5,"zipByteSize":4698},{"version":"1.3.0","createdAt":"2026-02-22T13:26:37.518Z","changelog":"- Updated skill description to clarify privacy benefits and add reasons for using SearXNG (no tracking, avoids paid APIs). - No changes to setup, usage instructions, management, or troubleshooting sections.","fileCount":3,"zipByteSize":1711},{"version":"1.2.0","createdAt":"2026-02-22T13:04:11.873Z","changelog":"No changes detected in this version. - Version 1.2.0 does not introduce any modifications or updates.","fileCount":3,"zipByteSize":1696},{"version":"1.1.0","createdAt":"2026-02-22T10:48:49.328Z","changelog":"- Updated description for clarity, emphasizing privacy and control over search results. - Improved setup instructions with streamlined \"Quick Setup\" steps. - Added usage example for a helper script to simplify searches. - Refined environment variables and management sections for easier configuration. - Updated available search engines and troubleshooting table for better usability.","fileCount":3,"zipByteSize":1696},{"version":"1.0.0","createdAt":"2026-02-22T10:34:09.165Z","changelog":"- Initial release of the private-web-search-searchxng skill. - Provides setup instructions for running a self-hosted SearXNG search engine in Docker. - Guides users on enabling the JSON API for private, tracked-free web searches. - Includes CLI usage examples and basic troubleshooting tips. - Lists default search engines and main configuration options.","fileCount":3,"zipByteSize":1750}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s177vajy8ffpjnym8evc1jcxr5877x59:private-web-search-searchxng","setupComplexity":"low","setupSteps":["Setup complexity is classified as HIGH. You must provision dedicated cloud infrastructure or an isolated VM. Do not run this directly on your local workstation.","Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-adelpro-private-web-search-searchxng/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-adelpro-private-web-search-searchxng/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-adelpro-private-web-search-searchxng/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-adelpro-private-web-search-searchxng/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-adelpro-private-web-search-searchxng/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-adelpro-private-web-search-searchxng/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-10T10:45:03.028Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-adelpro-private-web-search-searchxng/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-adelpro-private-web-search-searchxng/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-adelpro-private-web-search-searchxng/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-adelpro-private-web-search-searchxng/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"high","updatedAt":"2026-10-10T05:08:45.400Z","emptyReason":null},"readme":"Skill: private-web-search-searchxng\n\nOwner: adelpro\n\nSummary: 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.\n\nTags: latest:1.3.2\n\nVersion history:\n\nv1.3.2 | 2026-08-20T21:43:12.511Z | auto\n\n- Updated version to 1.3.2.\n- Documentation updates in README.md and SKILL.md, with minor text and formatting changes.\n- Removed the file skill-card.md.\n\nv1.3.1 | 2026-08-20T20:40:02.827Z | user\n\nv1.3.1: align to pipeline — add GitHub source-repo link, README, skill-card, normalized frontmatter\n\nv1.3.0 | 2026-02-22T13:26:37.518Z | auto\n\n- Updated skill description to clarify privacy benefits and add reasons for using SearXNG (no tracking, avoids paid APIs).\n- No changes to setup, usage instructions, management, or troubleshooting sections.\n\nv1.2.0 | 2026-02-22T13:04:11.873Z | auto\n\nNo changes detected in this version.\n\n- Version 1.2.0 does not introduce any modifications or updates.\n\nv1.1.0 | 2026-02-22T10:48:49.328Z | auto\n\n- Updated description for clarity, emphasizing privacy and control over search results.\n- Improved setup instructions with streamlined \"Quick Setup\" steps.\n- Added usage example for a helper script to simplify searches.\n- Refined environment variables and management sections for easier configuration.\n- Updated available search engines and troubleshooting table for better usability.\n\nv1.0.0 | 2026-02-22T10:34:09.165Z | auto\n\n- Initial release of the private-web-search-searchxng skill.\n- Provides setup instructions for running a self-hosted SearXNG search engine in Docker.\n- Guides users on enabling the JSON API for private, tracked-free web searches.\n- Includes CLI usage examples and basic troubleshooting tips.\n- Lists default search engines and main configuration options.\n\nArchive index:\n\nArchive v1.3.2: 5 files, 4790 bytes\n\nFiles: README.md (2160b), scripts/search.sh (407b), skill-card.md (2057b), SKILL.md (3373b), _meta.json (147b)\n\nFile v1.3.2:SKILL.md\n\n---\nname: private-web-search-searchxng\nslug: private-web-search-searchxng\nversion: 1.3.2\ndescription: |\n  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.\ntriggers:\n  - private search\n  - searxng\n  - self hosted search\n  - privacy search\n  - search without tracking\nmetadata:\n  openclaw:\n    requires:\n      bins: [\"docker\", \"curl\", \"jq\"]\n      env: []\n---\n\n# Private Web Search (SearXNG)\n\nPrivacy-respecting, self-hosted metasearch engine for AI agents.\n\n## Quick Setup\n\n```bash\n# If container exists but stopped:\ndocker start searxng\n\n# Or fresh start:\ndocker run -d --name searxng -p 8080:8080 -e BASE_URL=http://localhost:8080/ --restart unless-stopped searxng/searxng\n\n# Enable JSON API (only needed once)\ndocker exec searxng sed -i 's/  formats:/  formats:\\n    - json/' /etc/searxng/settings.yml\ndocker restart searxng\n\n# Verify\ncurl -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)}\\\")\"\n\n## Usage\n\n### Basic Search\n\n```bash\ncurl -sL \"http://localhost:8080/search?q=YOUR_QUERY&format=json\" | jq '.results[:10]'\n```\n\n### Using the Helper Script\n\n```bash\n./scripts/search.sh \"openclaw ai\" 5\n```\n\n### Environment Variables\n\n| Variable | Default | Description |\n|----------|---------|-------------|\n| SEARXNG_PORT | 8080 | Container port |\n| SEARXNG_HOST | localhost | Server host |\n| BASE_URL | http://localhost:8080 | Public URL |\n\n## Working Engines (Tested June 2026)\n\n**85 engines enabled** by default, but most major engines are blocked or rate-limited:\n\n| Engine | Status | Results | Notes |\n|--------|--------|---------|-------|\n| Bing | Working | 10-30 | Most reliable, 282K+ total |\n| GitHub | Working | 30 | Package/repo search |\n| Stack Overflow | Working | 10 | Q&A search |\n| Wikipedia | Sometimes | 1 | Varies by query |\n| Google | Blocked | 0 | CAPTCHA, \"access denied\" |\n| DuckDuckGo | Blocked | 0 | Rate limited |\n| Startpage | Blocked | 0 | CAPTCHA |\n| Qwant | Blocked | 0 | Rate limited |\n\n### Multi-Engine Queries (Recommended)\n\nCombine multiple working engines for best results:\n\n```bash\n# Get combined results from Bing + GitHub + Stack Overflow\ncurl -s \"http://localhost:8080/search?q=python&format=json&engines=bing,github,stackoverflow&num_results=10\"\n```\n\nThis returns 40+ results with diverse sources (web, code, Q&A).\n\n### Why Most Engines Fail\n\n- **Google/DuckDuckGo**: Detect automated traffic, return CAPTCHA/403 errors\n- **Public instances**: Get IP-banned quickly due to high volume\n- **Self-hosted**: Slightly better but still rate-limited\n- **Bing**: Most permissive, works reliably\n\n**Note:** Engine status changes frequently. Test with `&num_results=5` to verify before heavy use.\n\n## Management\n\n```bash\ndocker start searxng   # Start\ndocker stop searxng    # Stop\ndocker logs searxng    # View logs\ndocker rm searxng -f   # Remove\n```\n\n## Troubleshooting\n\n| Issue | Solution |\n|-------|----------|\n| No results | Check `docker logs searxng` |\n| 403 Forbidden | Enable JSON format (step 2) |\n| Connection refused | Run `docker start searxng` |\n| \"container name already in use\" | Container stopped, run `docker start searxng` |\n| Most engines return 0 | Engine rate-limiting — use Bing |\n\nFile v1.3.2:README.md\n\n# private-web-search-searchxng\n\n> Self-hosted private web search using SearXNG — privacy-respecting metasearch for AI agents, no tracking, no paid APIs.\n\n[![AI Agent Skill](https://img.shields.io/badge/AI%20Agent-Skill-blue)](https://clawhub.ai)\n[![Version](https://img.shields.io/badge/version-1.3.2-green)]()\n[![Bash](https://img.shields.io/badge/Shell-Bash-yellow)]()\n\nRun your own SearXNG instance and get JSON search results from Bing, GitHub, Stack Overflow and more — without leaking queries to commercial search/tracking APIs.\n\n## Install\n\n### Via pipeline (GitHub → npx skills)\n\n```bash\nnpx skills add adelpro/private-web-search-searchxng\n```\n\n### Manual\n\n```bash\ncp -r private-web-search-searchxng ~/.hermes/skills/\n```\n\n## Setup (SearXNG container)\n\n```bash\n# Start (or restart a stopped container)\ndocker start searxng\n\n# Or fresh start\ndocker run -d --name searxng -p 8080:8080 -e BASE_URL=http://localhost:8080/ --restart unless-stopped searxng/searxng\n\n# Enable JSON API (only needed once)\ndocker exec searxng sed -i 's/  formats:/  formats:\\n    - json/' /etc/searxng/settings.yml\ndocker restart searxng\n```\n\n## Usage\n\n```bash\n# Recommended: combined engines (Bing + GitHub + Stack Overflow)\ncurl -s \"http://localhost:8080/search?q=python&format=json&engines=bing,github,stackoverflow&num_results=10\"\n\n# Helper script\n./scripts/search.sh \"your query\" 5\n```\n\n### Environment variables\n\n- `SEARXNG_PORT` (8080) — container port\n- `SEARXNG_HOST` (localhost) — server host\n- `SEARXNG_FORMAT` (json) — response format\n\nSearXNG enables 85 engines by default but most are rate-limited/blocked. Bing is the most reliable; Google, DuckDuckGo and Startpage are typically blocked (CAPTCHA/403). Engine status changes often — test with `num_results=5` before heavy use.\n\n## Requirements\n\n- Node.js 18+ (helper script uses curl + jq)\n- Docker (for the SearXNG container)\n- curl, jq\n\n## Related Skills\n\n- **web-search** — General web search\n- **search-cluster** — Aggregated Google/Wikipedia/Reddit search\n\n## Credits\n\nSearXNG is a free, privacy-respecting metasearch engine. No OpenClaw branding implied — this is a generic agent skill.\n\nFile v1.3.2:_meta.json\n\n{\n  \"ownerId\": \"kn72cbvk9f5n48msm4t4sj3wyh80n2eb\",\n  \"slug\": \"private-web-search-searchxng\",\n  \"version\": \"1.3.2\",\n  \"publishedAt\": 1787262192511\n}\n\nFile v1.3.2:skill-card.md\n\n## Description:\n\nSelf-hosted private web search using SearXNG for privacy-sensitive searches when external search APIs are blocked, paid, or undesirable.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[adelpro](https://clawhub.ai/user/adelpro)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and agent builders use this skill to run a local SearXNG service and retrieve JSON web search results through curl, jq, or the helper script without relying on paid search APIs.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The setup uses an unpinned persistent SearXNG Docker image and exposes the service on port 8080.\n\nMitigation: Pin the SearXNG image by digest, bind the service to 127.0.0.1, and review container settings before deployment.\n\nRisk: Installation and setup commands include npx and Docker operations that can change the local environment.\n\nMitigation: Run installation and Docker commands with least privilege and review the artifact before execution.\n\nRisk: The helper script has weak handling for its result-limit argument.\n\nMitigation: Treat the limit as numeric-only and validate it before use until the helper script is fixed.\n\n## Reference(s):\n\n- [ClawHub Skill Page](https://clawhub.ai/adelpro/skills/private-web-search-searchxng)\n- [README](artifact/README.md)\n- [Skill Definition](artifact/SKILL.md)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Markdown, Shell commands, Configuration, Guidance]\n\n**Output Format:** [Markdown with bash commands and JSON search-result examples]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Requires Docker, curl, and jq; queries a local SearXNG endpoint.]\n\n## Skill Version(s):\n\n1.3.2 (source: frontmatter and server release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nArchive v1.3.1: 5 files, 4698 bytes\n\nFiles: README.md (2160b), scripts/search.sh (407b), skill-card.md (1964b), SKILL.md (3373b), _meta.json (147b)\n\nFile v1.3.1:SKILL.md\n\n---\nname: private-web-search-searchxng\nslug: private-web-search-searchxng\nversion: 1.3.1\ndescription: |\n  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.\ntriggers:\n  - private search\n  - searxng\n  - self hosted search\n  - privacy search\n  - search without tracking\nmetadata:\n  openclaw:\n    requires:\n      bins: [\"docker\", \"curl\", \"jq\"]\n      env: []\n---\n\n# Private Web Search (SearXNG)\n\nPrivacy-respecting, self-hosted metasearch engine for AI agents.\n\n## Quick Setup\n\n```bash\n# If container exists but stopped:\ndocker start searxng\n\n# Or fresh start:\ndocker run -d --name searxng -p 8080:8080 -e BASE_URL=http://localhost:8080/ --restart unless-stopped searxng/searxng\n\n# Enable JSON API (only needed once)\ndocker exec searxng sed -i 's/  formats:/  formats:\\n    - json/' /etc/searxng/settings.yml\ndocker restart searxng\n\n# Verify\ncurl -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)}\\\")\"\n\n## Usage\n\n### Basic Search\n\n```bash\ncurl -sL \"http://localhost:8080/search?q=YOUR_QUERY&format=json\" | jq '.results[:10]'\n```\n\n### Using the Helper Script\n\n```bash\n./scripts/search.sh \"openclaw ai\" 5\n```\n\n### Environment Variables\n\n| Variable | Default | Description |\n|----------|---------|-------------|\n| SEARXNG_PORT | 8080 | Container port |\n| SEARXNG_HOST | localhost | Server host |\n| BASE_URL | http://localhost:8080 | Public URL |\n\n## Working Engines (Tested June 2026)\n\n**85 engines enabled** by default, but most major engines are blocked or rate-limited:\n\n| Engine | Status | Results | Notes |\n|--------|--------|---------|-------|\n| Bing | Working | 10-30 | Most reliable, 282K+ total |\n| GitHub | Working | 30 | Package/repo search |\n| Stack Overflow | Working | 10 | Q&A search |\n| Wikipedia | Sometimes | 1 | Varies by query |\n| Google | Blocked | 0 | CAPTCHA, \"access denied\" |\n| DuckDuckGo | Blocked | 0 | Rate limited |\n| Startpage | Blocked | 0 | CAPTCHA |\n| Qwant | Blocked | 0 | Rate limited |\n\n### Multi-Engine Queries (Recommended)\n\nCombine multiple working engines for best results:\n\n```bash\n# Get combined results from Bing + GitHub + Stack Overflow\ncurl -s \"http://localhost:8080/search?q=python&format=json&engines=bing,github,stackoverflow&num_results=10\"\n```\n\nThis returns 40+ results with diverse sources (web, code, Q&A).\n\n### Why Most Engines Fail\n\n- **Google/DuckDuckGo**: Detect automated traffic, return CAPTCHA/403 errors\n- **Public instances**: Get IP-banned quickly due to high volume\n- **Self-hosted**: Slightly better but still rate-limited\n- **Bing**: Most permissive, works reliably\n\n**Note:** Engine status changes frequently. Test with `&num_results=5` to verify before heavy use.\n\n## Management\n\n```bash\ndocker start searxng   # Start\ndocker stop searxng    # Stop\ndocker logs searxng    # View logs\ndocker rm searxng -f   # Remove\n```\n\n## Troubleshooting\n\n| Issue | Solution |\n|-------|----------|\n| No results | Check `docker logs searxng` |\n| 403 Forbidden | Enable JSON format (step 2) |\n| Connection refused | Run `docker start searxng` |\n| \"container name already in use\" | Container stopped, run `docker start searxng` |\n| Most engines return 0 | Engine rate-limiting — use Bing |\n\nFile v1.3.1:README.md\n\n# private-web-search-searchxng\n\n> Self-hosted private web search using SearXNG — privacy-respecting metasearch for AI agents, no tracking, no paid APIs.\n\n[![AI Agent Skill](https://img.shields.io/badge/AI%20Agent-Skill-blue)](https://clawhub.ai)\n[![Version](https://img.shields.io/badge/version-1.3.1-green)]()\n[![Bash](https://img.shields.io/badge/Shell-Bash-yellow)]()\n\nRun your own SearXNG instance and get JSON search results from Bing, GitHub, Stack Overflow and more — without leaking queries to commercial search/tracking APIs.\n\n## Install\n\n### Via pipeline (GitHub → npx skills)\n\n```bash\nnpx skills add adelpro/private-web-search-searchxng\n```\n\n### Manual\n\n```bash\ncp -r private-web-search-searchxng ~/.hermes/skills/\n```\n\n## Setup (SearXNG container)\n\n```bash\n# Start (or restart a stopped container)\ndocker start searxng\n\n# Or fresh start\ndocker run -d --name searxng -p 8080:8080 -e BASE_URL=http://localhost:8080/ --restart unless-stopped searxng/searxng\n\n# Enable JSON API (only needed once)\ndocker exec searxng sed -i 's/  formats:/  formats:\\n    - json/' /etc/searxng/settings.yml\ndocker restart searxng\n```\n\n## Usage\n\n```bash\n# Recommended: combined engines (Bing + GitHub + Stack Overflow)\ncurl -s \"http://localhost:8080/search?q=python&format=json&engines=bing,github,stackoverflow&num_results=10\"\n\n# Helper script\n./scripts/search.sh \"your query\" 5\n```\n\n### Environment variables\n\n- `SEARXNG_PORT` (8080) — container port\n- `SEARXNG_HOST` (localhost) — server host\n- `SEARXNG_FORMAT` (json) — response format\n\nSearXNG enables 85 engines by default but most are rate-limited/blocked. Bing is the most reliable; Google, DuckDuckGo and Startpage are typically blocked (CAPTCHA/403). Engine status changes often — test with `num_results=5` before heavy use.\n\n## Requirements\n\n- Node.js 18+ (helper script uses curl + jq)\n- Docker (for the SearXNG container)\n- curl, jq\n\n## Related Skills\n\n- **web-search** — General web search\n- **search-cluster** — Aggregated Google/Wikipedia/Reddit search\n\n## Credits\n\nSearXNG is a free, privacy-respecting metasearch engine. No OpenClaw branding implied — this is a generic agent skill.\n\nFile v1.3.1:_meta.json\n\n{\n  \"ownerId\": \"kn72cbvk9f5n48msm4t4sj3wyh80n2eb\",\n  \"slug\": \"private-web-search-searchxng\",\n  \"version\": \"1.3.1\",\n  \"publishedAt\": 1787258402827\n}\n\nFile v1.3.1:skill-card.md\n\n## Description:\n\nSelf-hosted private web search using SearXNG for privacy-sensitive agent search when external search APIs are blocked, paid, or undesirable.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[adelpro](https://clawhub.ai/user/adelpro)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and agent operators use this skill to run a local SearXNG instance and retrieve JSON web search results without relying on paid external search APIs or tracking-oriented search integrations.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Search queries may be forwarded by the local SearXNG instance to enabled upstream search engines with their own logging and rate-limiting behavior.\n\nMitigation: Avoid secrets and sensitive internal terms in searches, and review enabled engines before using the skill in sensitive environments.\n\nRisk: The skill requires running a persistent Dockerized SearXNG service with network access.\n\nMitigation: Install only in environments approved for Dockerized network services and review the container configuration before deployment.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/adelpro/skills/private-web-search-searchxng)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance]\n\n**Output Format:** [Markdown with inline bash commands and JSON search result examples]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Search queries are sent to a local SearXNG service and may be forwarded to enabled upstream search engines.]\n\n## Skill Version(s):\n\n1.3.1 (source: server release metadata and SKILL.md frontmatter)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nArchive v1.3.0: 3 files, 1711 bytes\n\nFiles: scripts/search.sh (407b), SKILL.md (1919b), _meta.json (147b)\n\nFile v1.3.0:SKILL.md\n\n---\nname: private-web-search-searchxng\ndescription: 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.\nmetadata:\n  {\n    \"openclaw\":\n      {\n        \"requires\": { \"bins\": [\"docker\", \"curl\", \"jq\"] },\n        \"install\":\n          [\n            {\n              \"id\": \"docker\",\n              \"kind\": \"bin\",\n              \"command\": \"docker --version\",\n              \"label\": \"Docker required\",\n            },\n          ],\n      },\n  }\n---\n\n# Private Web Search (SearXNG)\n\nPrivacy-respecting, self-hosted metasearch engine for AI agents.\n\n## Quick Setup\n\n```bash\n# 1. Start container\ndocker run -d --name searxng -p 8080:8080 -e BASE_URL=http://localhost:8080/ searxng/searxng\n\n# 2. Enable JSON API\ndocker exec searxng sed -i 's/  formats:/  formats:\\n    - json/' /etc/searxng/settings.yml\ndocker restart searxng\n\n# 3. Verify\ncurl -sL \"http://localhost:8080/search?q=test&format=json\" | jq '.results[0]'\n```\n\n## Usage\n\n### Basic Search\n\n```bash\ncurl -sL \"http://localhost:8080/search?q=YOUR_QUERY&format=json\" | jq '.results[:10]'\n```\n\n### Using the Helper Script\n\n```bash\n./scripts/search.sh \"openclaw ai\" 5\n```\n\n### Environment Variables\n\n| Variable | Default | Description |\n|----------|---------|-------------|\n| SEARXNG_PORT | 8080 | Container port |\n| SEARXNG_HOST | localhost | Server host |\n| BASE_URL | http://localhost:8080 | Public URL |\n\n## Available Engines\n\nGoogle, Bing, DuckDuckGo, Brave, Startpage, Wikipedia, and more.\n\n## Management\n\n```bash\ndocker start searxng   # Start\ndocker stop searxng    # Stop\ndocker logs searxng    # View logs\ndocker rm searxng -f   # Remove\n```\n\n## Troubleshooting\n\n| Issue | Solution |\n|-------|----------|\n| No results | Check `docker logs searxng` |\n| 403 Forbidden | Enable JSON format (step 2) |\n| Connection refused | Run `docker start searxng` |\n\nFile v1.3.0:_meta.json\n\n{\n  \"ownerId\": \"kn72cbvk9f5n48msm4t4sj3wyh80n2eb\",\n  \"slug\": \"private-web-search-searchxng\",\n  \"version\": \"1.3.0\",\n  \"publishedAt\": 1771766797518\n}\n\nArchive v1.2.0: 3 files, 1696 bytes\n\nFiles: scripts/search.sh (407b), SKILL.md (1896b), _meta.json (147b)\n\nFile v1.2.0:SKILL.md\n\n---\nname: private-web-search-searchxng\ndescription: Self-hosted private web search using SearXNG. Use when privacy is important, external APIs are blocked, or you need full control over search results.\nmetadata:\n  {\n    \"openclaw\":\n      {\n        \"requires\": { \"bins\": [\"docker\", \"curl\", \"jq\"] },\n        \"install\":\n          [\n            {\n              \"id\": \"docker\",\n              \"kind\": \"bin\",\n              \"command\": \"docker --version\",\n              \"label\": \"Docker required\",\n            },\n          ],\n      },\n  }\n---\n\n# Private Web Search (SearXNG)\n\nPrivacy-respecting, self-hosted metasearch engine for AI agents.\n\n## Quick Setup\n\n```bash\n# 1. Start container\ndocker run -d --name searxng -p 8080:8080 -e BASE_URL=http://localhost:8080/ searxng/searxng\n\n# 2. Enable JSON API\ndocker exec searxng sed -i 's/  formats:/  formats:\\n    - json/' /etc/searxng/settings.yml\ndocker restart searxng\n\n# 3. Verify\ncurl -sL \"http://localhost:8080/search?q=test&format=json\" | jq '.results[0]'\n```\n\n## Usage\n\n### Basic Search\n\n```bash\ncurl -sL \"http://localhost:8080/search?q=YOUR_QUERY&format=json\" | jq '.results[:10]'\n```\n\n### Using the Helper Script\n\n```bash\n./scripts/search.sh \"openclaw ai\" 5\n```\n\n### Environment Variables\n\n| Variable | Default | Description |\n|----------|---------|-------------|\n| SEARXNG_PORT | 8080 | Container port |\n| SEARXNG_HOST | localhost | Server host |\n| BASE_URL | http://localhost:8080 | Public URL |\n\n## Available Engines\n\nGoogle, Bing, DuckDuckGo, Brave, Startpage, Wikipedia, and more.\n\n## Management\n\n```bash\ndocker start searxng   # Start\ndocker stop searxng    # Stop\ndocker logs searxng    # View logs\ndocker rm searxng -f   # Remove\n```\n\n## Troubleshooting\n\n| Issue | Solution |\n|-------|----------|\n| No results | Check `docker logs searxng` |\n| 403 Forbidden | Enable JSON format (step 2) |\n| Connection refused | Run `docker start searxng` |\n\nFile v1.2.0:_meta.json\n\n{\n  \"ownerId\": \"kn72cbvk9f5n48msm4t4sj3wyh80n2eb\",\n  \"slug\": \"private-web-search-searchxng\",\n  \"version\": \"1.2.0\",\n  \"publishedAt\": 1771765451873\n}\n\nArchive v1.1.0: 3 files, 1696 bytes\n\nFiles: scripts/search.sh (407b), SKILL.md (1896b), _meta.json (147b)\n\nFile v1.1.0:SKILL.md\n\n---\nname: private-web-search-searchxng\ndescription: Self-hosted private web search using SearXNG. Use when privacy is important, external APIs are blocked, or you need full control over search results.\nmetadata:\n  {\n    \"openclaw\":\n      {\n        \"requires\": { \"bins\": [\"docker\", \"curl\", \"jq\"] },\n        \"install\":\n          [\n            {\n              \"id\": \"docker\",\n              \"kind\": \"bin\",\n              \"command\": \"docker --version\",\n              \"label\": \"Docker required\",\n            },\n          ],\n      },\n  }\n---\n\n# Private Web Search (SearXNG)\n\nPrivacy-respecting, self-hosted metasearch engine for AI agents.\n\n## Quick Setup\n\n```bash\n# 1. Start container\ndocker run -d --name searxng -p 8080:8080 -e BASE_URL=http://localhost:8080/ searxng/searxng\n\n# 2. Enable JSON API\ndocker exec searxng sed -i 's/  formats:/  formats:\\n    - json/' /etc/searxng/settings.yml\ndocker restart searxng\n\n# 3. Verify\ncurl -sL \"http://localhost:8080/search?q=test&format=json\" | jq '.results[0]'\n```\n\n## Usage\n\n### Basic Search\n\n```bash\ncurl -sL \"http://localhost:8080/search?q=YOUR_QUERY&format=json\" | jq '.results[:10]'\n```\n\n### Using the Helper Script\n\n```bash\n./scripts/search.sh \"openclaw ai\" 5\n```\n\n### Environment Variables\n\n| Variable | Default | Description |\n|----------|---------|-------------|\n| SEARXNG_PORT | 8080 | Container port |\n| SEARXNG_HOST | localhost | Server host |\n| BASE_URL | http://localhost:8080 | Public URL |\n\n## Available Engines\n\nGoogle, Bing, DuckDuckGo, Brave, Startpage, Wikipedia, and more.\n\n## Management\n\n```bash\ndocker start searxng   # Start\ndocker stop searxng    # Stop\ndocker logs searxng    # View logs\ndocker rm searxng -f   # Remove\n```\n\n## Troubleshooting\n\n| Issue | Solution |\n|-------|----------|\n| No results | Check `docker logs searxng` |\n| 403 Forbidden | Enable JSON format (step 2) |\n| Connection refused | Run `docker start searxng` |\n\nFile v1.1.0:_meta.json\n\n{\n  \"ownerId\": \"kn72cbvk9f5n48msm4t4sj3wyh80n2eb\",\n  \"slug\": \"private-web-search-searchxng\",\n  \"version\": \"1.1.0\",\n  \"publishedAt\": 1771757329328\n}\n\nArchive v1.0.0: 3 files, 1750 bytes\n\nFiles: scripts/search.sh (407b), SKILL.md (2190b), _meta.json (147b)\n\nFile v1.0.0:SKILL.md\n\n---\nname: private-web-search-searchxng\ndescription: Setup and use SearXNG self-hosted search engine. Use when user wants private web search, needs to avoid tracking, or wants search without external APIs.\nmetadata:\n  {\n    \"openclaw\":\n      {\n        \"requires\": { \"bins\": [\"docker\", \"curl\", \"jq\"] },\n        \"install\":\n          [\n            {\n              \"id\": \"docker\",\n              \"kind\": \"bin\",\n              \"command\": \"docker --version\",\n              \"label\": \"Docker required\",\n            },\n          ],\n      },\n  }\n---\n\n# SearXNG Skill\n\nSelf-hosted privacy-respecting search engine for AI agents.\n\n## Setup\n\n### 1. Run Container\n\n```bash\ndocker run -d --name searxng -p 8080:8080 -e BASE_URL=http://localhost:8080/ searxng/searxng\n```\n\n### 2. Enable JSON API\n\n```bash\ndocker exec searxng sed -i 's/  formats:/  formats:\\n    - json/' /etc/searxng/settings.yml\ndocker restart searxng\n```\n\n### 3. Verify\n\n```bash\ncurl -sL \"http://localhost:8080/search?q=test&format=json\" | jq '.results[0]'\n```\n\n## Usage\n\n### CLI Search\n\n```bash\n# Basic search\ncurl -sL \"http://localhost:8080/search?q=YOUR_QUERY&format=json\" | jq '.results'\n\n# With limit\ncurl -sL \"http://localhost:8080/search?q=QUERY&format=json\" | jq '.results[:5]'\n\n# Pretty output\ncurl -sL \"http://localhost:8080/search?q=QUERY&format=json\" | jq '.results | .[] | {title, url, engine}'\n```\n\n### Available Engines\n\nDefault engines: google, bing, duckduckgo, brave, startpage, wikipedia\n\n### Configuration\n\n| Env Variable | Default | Description |\n|--------------|---------|-------------|\n| BASE_URL | http://localhost:8080 | Public URL |\n| SEARXNG_PORT | 8080 | Container port |\n| SEARXNG_BIND_ADDRESS | :::8080 | Bind address |\n\n### Commands\n\n```bash\n# Start\ndocker start searxng\n\n# Stop\ndocker stop searxng\n\n# View logs\ndocker logs searxng\n\n# Rebuild with custom settings\ndocker rm searxng\ndocker run -d --name searxng -p 8080:8080 -v $(pwd)/settings.yml:/etc/searxng/settings.yml searxng/searxng\n```\n\n## Troubleshooting\n\n**No results**: Check `docker logs searxng` for engine errors\n\n**403 Forbidden**: JSON format not enabled - run step 2\n\n**Connection refused**: Container not running - run `docker start searxng`\n\nFile v1.0.0:_meta.json\n\n{\n  \"ownerId\": \"kn72cbvk9f5n48msm4t4sj3wyh80n2eb\",\n  \"slug\": \"private-web-search-searchxng\",\n  \"version\": \"1.0.0\",\n  \"publishedAt\": 1771756449165\n}","readmeExcerpt":"Skill: private-web-search-searchxng Owner: adelpro Summary: 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. Tags: latest:1.3.2 Version history: v1.3.2 | 2026-08-20T21:43:12.511Z | auto - Updated version to 1.3.2. - Documentation updates in README.md and SKILL.md, with minor text and formatting changes. - Remove","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"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)}\\\")\""},{"language":"bash","snippet":"# If container exists but stopped:\ndocker start searxng\n\n# Or fresh start:\ndocker run -d --name searxng -p 8080:8080 -e BASE_URL=http://localhost:8080/ --restart unless-stopped searxng/searxng\n\n# Enable JSON API (only needed once)\ndocker exec searxng sed -i 's/  formats:/  formats:\\n    - json/' /etc/searxng/settings.yml\ndocker restart searxng\n\n# Verify\ncurl -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)}\\\")\"\n\n## Usage\n\n### Basic Search"},{"language":"text","snippet":"### Using the Helper Script"},{"language":"text","snippet":"### Environment Variables\n\n| Variable | Default | Description |\n|----------|---------|-------------|\n| SEARXNG_PORT | 8080 | Container port |\n| SEARXNG_HOST | localhost | Server host |\n| BASE_URL | http://localhost:8080 | Public URL |\n\n## Working Engines (Tested June 2026)\n\n**85 engines enabled** by default, but most major engines are blocked or rate-limited:\n\n| Engine | Status | Results | Notes |\n|--------|--------|---------|-------|\n| Bing | Working | 10-30 | Most reliable, 282K+ total |\n| GitHub | Working | 30 | Package/repo search |\n| Stack Overflow | Working | 10 | Q&A search |\n| Wikipedia | Sometimes | 1 | Varies by query |\n| Google | Blocked | 0 | CAPTCHA, \"access denied\" |\n| DuckDuckGo | Blocked | 0 | Rate limited |\n| Startpage | Blocked | 0 | CAPTCHA |\n| Qwant | Blocked | 0 | Rate limited |\n\n### Multi-Engine Queries (Recommended)\n\nCombine multiple working engines for best results:"},{"language":"text","snippet":"This returns 40+ results with diverse sources (web, code, Q&A).\n\n### Why Most Engines Fail\n\n- **Google/DuckDuckGo**: Detect automated traffic, return CAPTCHA/403 errors\n- **Public instances**: Get IP-banned quickly due to high volume\n- **Self-hosted**: Slightly better but still rate-limited\n- **Bing**: Most permissive, works reliably\n\n**Note:** Engine status changes frequently. Test with `&num_results=5` to verify before heavy use.\n\n## Management"},{"language":"text","snippet":"## Troubleshooting\n\n| Issue | Solution |\n|-------|----------|\n| No results | Check `docker logs searxng` |\n| 403 Forbidden | Enable JSON format (step 2) |\n| Connection refused | Run `docker start searxng` |\n| \"container name already in use\" | Container stopped, run `docker start searxng` |\n| Most engines return 0 | Engine rate-limiting — use Bing |\n\nFile v1.3.2:README.md\n\n# private-web-search-searchxng\n\n> Self-hosted private web search using SearXNG — privacy-respecting metasearch for AI agents, no tracking, no paid APIs.\n\n[![AI Agent Skill](https://img.shields.io/badge/AI%20Agent-Skill-blue)](https://clawhub.ai)\n[![Version](https://img.shields.io/badge/version-1.3.2-green)]()\n[![Bash](https://img.shields.io/badge/Shell-Bash-yellow)]()\n\nRun your own SearXNG instance and get JSON search results from Bing, GitHub, Stack Overflow and more — without leaking queries to commercial search/tracking APIs.\n\n## Install\n\n### Via pipeline (GitHub → npx skills)"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: private-web-search-searchxng\nslug: private-web-search-searchxng\nversion: 1.3.2\ndescription: |\n  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.\ntriggers:\n  - private search\n  - searxng\n  - self hosted search\n  - privacy search\n  - search without tracking\nmetadata:\n  openclaw:\n    requires:\n      bins: [\"docker\", \"curl\", \"jq\"]\n      env: []\n---\n\n# Private Web Search (SearXNG)\n\nPrivacy-respecting, self-hosted metasearch engine for AI agents.\n\n## Quick Setup\n\n```bash\n# If container exists but stopped:\ndocker start searxng\n\n# Or fresh start:\ndocker run -d --name searxng -p 8080:8080 -e BASE_URL=http://localhost:8080/ --restart unless-stopped searxng/searxng\n\n# Enable JSON API (only needed once)\ndocker exec searxng sed -i 's/  formats:/  formats:\\n    - json/' /etc/searxng/settings.yml\ndocker restart searxng\n\n# Verify\ncurl -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)}\\\")\"\n\n## Usage\n\n### Basic Search\n\n```bash\ncurl -sL \"http://localhost:8080/search?q=YOUR_QUERY&format=json\" | jq '.results[:10]'\n```\n\n### Using the Helper Script\n\n```bash\n./scripts/search.sh \"openclaw ai\" 5\n```\n\n### Environment Variables\n\n| Variable | Default | Description |\n|----------|---------|-------------|\n| SEARXNG_PORT | 8080 | Container port |\n| SEARXNG_HOST | localhost | Server host |\n| BASE_URL | http://localhost:8080 | Public URL |\n\n## Working Engines (Tested June 2026)\n\n**85 engines enabled** by default, but most major engines are blocked or rate-limited:\n\n| Engine | Status | Results | Notes |\n|--------|--------|---------|-------|\n| Bing | Working | 10-30 | Most reliable, 282K+ total |\n| GitHub | Working | 30 | Package/repo search |\n| Stack Overflow | Working | 10 | Q&A search |\n| Wikipedia | Sometimes | 1 | Varies by query |\n| Google | Blocked | 0 | CAPTCHA, \"access denied\" |\n| DuckDuckGo | Blocked | 0 | Rate limited |\n| Startpage | Blocked | 0 | CAPTCHA |\n| Qwant | Blocked | 0 | Rate limited |\n\n### Multi-Engine Queries (Recommended)\n\nCombine multiple working engines for best results:\n\n```bash\n# Get combined results from Bing + GitHub + Stack Overflow\ncurl -s \"http://localhost:8080/search?q=python&format=json&engines=bing,github,stackoverflow&num_results=10\"\n```\n\nThis returns 40+ results with diverse sources (web, code, Q&A).\n\n### Why Most Engines Fail\n\n- **Google/DuckDuckGo**: Detect automated traffic, return CAPTCHA/403 errors\n- **Public instances**: Get IP-banned quickly due to high volume\n- **Self-hosted**: Slightly better but still rate-limited\n- **Bing**: Most permissive, works reliably\n\n**Note:** Engine status changes frequently. Test with `&num_results=5` to verify before heavy use.\n\n## Management\n\n```bash\ndocker start searxng   # Start\ndocker stop searxng    # Stop\ndocker logs searxng    # View logs\ndocker rm searxng"},{"path":"README.md","content":"# private-web-search-searchxng\n\n> Self-hosted private web search using SearXNG — privacy-respecting metasearch for AI agents, no tracking, no paid APIs.\n\n[![AI Agent Skill](https://img.shields.io/badge/AI%20Agent-Skill-blue)](https://clawhub.ai)\n[![Version](https://img.shields.io/badge/version-1.3.2-green)]()\n[![Bash](https://img.shields.io/badge/Shell-Bash-yellow)]()\n\nRun your own SearXNG instance and get JSON search results from Bing, GitHub, Stack Overflow and more — without leaking queries to commercial search/tracking APIs.\n\n## Install\n\n### Via pipeline (GitHub → npx skills)\n\n```bash\nnpx skills add adelpro/private-web-search-searchxng\n```\n\n### Manual\n\n```bash\ncp -r private-web-search-searchxng ~/.hermes/skills/\n```\n\n## Setup (SearXNG container)\n\n```bash\n# Start (or restart a stopped container)\ndocker start searxng\n\n# Or fresh start\ndocker run -d --name searxng -p 8080:8080 -e BASE_URL=http://localhost:8080/ --restart unless-stopped searxng/searxng\n\n# Enable JSON API (only needed once)\ndocker exec searxng sed -i 's/  formats:/  formats:\\n    - json/' /etc/searxng/settings.yml\ndocker restart searxng\n```\n\n## Usage\n\n```bash\n# Recommended: combined engines (Bing + GitHub + Stack Overflow)\ncurl -s \"http://localhost:8080/search?q=python&format=json&engines=bing,github,stackoverflow&num_results=10\"\n\n# Helper script\n./scripts/search.sh \"your query\" 5\n```\n\n### Environment variables\n\n- `SEARXNG_PORT` (8080) — container port\n- `SEARXNG_HOST` (localhost) — server host\n- `SEARXNG_FORMAT` (json) — response format\n\nSearXNG enables 85 engines by default but most are rate-limited/blocked. Bing is the most reliable; Google, DuckDuckGo and Startpage are typically blocked (CAPTCHA/403). Engine status changes often — test with `num_results=5` before heavy use.\n\n## Requirements\n\n- Node.js 18+ (helper script uses curl + jq)\n- Docker (for the SearXNG container)\n- curl, jq\n\n## Related Skills\n\n- **web-search** — General web search\n- **search-cluster** — Aggregated Google/Wikipedia/Reddit search\n\n## Credits\n\nSearXNG is a free, privacy-respecting metasearch engine. No OpenClaw branding implied — this is a generic agent skill."},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn72cbvk9f5n48msm4t4sj3wyh80n2eb\",\n  \"slug\": \"private-web-search-searchxng\",\n  \"version\": \"1.3.2\",\n  \"publishedAt\": 1787262192511\n}"},{"path":"skill-card.md","content":"## Description:\n\nSelf-hosted private web search using SearXNG for privacy-sensitive searches when external search APIs are blocked, paid, or undesirable.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[adelpro](https://clawhub.ai/user/adelpro)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and agent builders use this skill to run a local SearXNG service and retrieve JSON web search results through curl, jq, or the helper script without relying on paid search APIs.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The setup uses an unpinned persistent SearXNG Docker image and exposes the service on port 8080.\n\nMitigation: Pin the SearXNG image by digest, bind the service to 127.0.0.1, and review container settings before deployment.\n\nRisk: Installation and setup commands include npx and Docker operations that can change the local environment.\n\nMitigation: Run installation and Docker commands with least privilege and review the artifact before execution.\n\nRisk: The helper script has weak handling for its result-limit argument.\n\nMitigation: Treat the limit as numeric-only and validate it before use until the helper script is fixed.\n\n## Reference(s):\n\n- [ClawHub Skill Page](https://clawhub.ai/adelpro/skills/private-web-search-searchxng)\n- [README](artifact/README.md)\n- [Skill Definition](artifact/SKILL.md)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Markdown, Shell commands, Configuration, Guidance]\n\n**Output Format:** [Markdown with bash commands and JSON search-result examples]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Requires Docker, curl, and jq; queries a local SearXNG endpoint.]\n\n## Skill Version(s):\n\n1.3.2 (source: frontmatter and server release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment."}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":"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. Skill: private-web-search-searchxng Owner: adelpro Summary: 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. Tags: latest:1.3.2 Version history: v1.3.2 | 2026-08-20T21:43:12.511Z | auto - Updated version to 1.3.2. - Documentation updates in README.md and SKILL.md, with minor text and formatting changes. - Remove","editorialQuality":{"score":100,"threshold":65,"status":"ready","wordCount":1162,"uniquenessScore":46,"reasons":[]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-10T05:08:45.400Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-10T05:08:45.400Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-10T10:45:03.028Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}