searxng-bangs
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.
What this skill does
# SearXNG Search
Privacy-respecting metasearch engine that anonymizes searches and aggregates results from 250+ engines.
## Quick Start
Search the web using the bundled script:
```bash
python3 scripts/search.py "your query"
```
Returns JSON with titles, URLs, and content snippets.
## Common Workflows
### Basic Web Search
```bash
python3 scripts/search.py "OpenClaw AI agent" --num 5
```
### News Search
```bash
python3 scripts/search.py "latest tech news" --categories news
```
### Localized Search
```bash
python3 scripts/search.py "Python Tutorial" --lang de
```
### Multi-Category Search
```bash
python3 scripts/search.py "machine learning" --categories general,science --num 10
```
### Bang Searches (Direct Engine)
```bash
# Wikipedia
python3 scripts/search.py "Albert Einstein" --bang w
# YouTube
python3 scripts/search.py "python tutorial" --bang yt
# GitHub
python3 scripts/search.py "openclaw" --bang gh
# Reddit
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:**
- Privacy-sensitive searches (no tracking, no profiling)
- High-volume searches (no rate limits)
- When self-hosted infrastructure is available
- Multi-engine result aggregation (250+ engines)
- Ad-free results
**Prefer Brave API (`web_search` tool) for:**
- Faster response times
- Structured data requirements
- When external APIs are acceptable
## Processing Results
The script returns clean JSON that's easy to parse and present:
```python
import json
import subprocess
result = 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:
- All available categories
- Engine-specific searches
- Language codes
- Error handling
- Comparison with Brave Search API
## Configuration
### SearXNG Instance
By default, the script uses `http://127.0.0.1:8080`. Configure via environment variable:
```bash
export SEARXNG_URL=http://your-searxng-instance.com
python3 scripts/search.py "query"
```
**Options:**
- Self-hosted instance (recommended for privacy)
- Public instances: https://searx.space (community-run servers)
### Using Public Instances
If you don't run your own SearXNG:
```bash
# 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
- **Default URL:** `http://127.0.0.1:8080` (override with `SEARXNG_URL`)
- **Method:** HTML parsing (JSON API often disabled for CSRF protection)
- **Parser:** Custom HTMLParser in `scripts/search.py`
- **Timeout:** 15 seconds
- **Result Format:** Clean JSON with title, URL, content
Related in General
modeling-omnistudio-epc-catalog
IncludedSalesforce Industries CME EPC product-modeling skill for Product2-based catalog creation. Use when creating EPC products, configuring product attributes, building offer bundles with Product Child Items, or reviewing EPC DataPack JSON metadata for product catalog changes. TRIGGER when: user creates or updates Product2 EPC records, AttributeAssignment payloads, AttributeMetadata/AttributeDefaultValues, Offer bundles, or ProductChildItem relationships. DO NOT TRIGGER when: designing OmniScripts/FlexCards/Integration Procedures (use building-omnistudio-omniscript, building-omnistudio-flexcard, or building-omnistudio-integration-procedure), implementing Apex business logic (use generating-apex), or troubleshooting deployment pipelines (use deploying-metadata).
relationship-science-coach
IncludedUse this skill for direct, practical adult relationship coaching: couples conflict, repair, trust, marriage, dating, flirting, attachment patterns, emotional connection, sex, desire differences, eroticism, kink negotiation, affection, love languages, breakups, and long-term passion. Draw on Gottman, EFT and Hold Me Tight, attachment science, modern sex research, Perel, Nagoski, Kerner, Schnarch, Love and Stosny, and flexible love-language tools. Be concrete and low-hedge. Redirect only for imminent danger, abuse, coercive control, minors, non-consent, self-harm, stalking, or medical/legal/psychiatric decisions.
building-sf-integrations
IncludedSalesforce integration architecture and runtime plumbing with 120-point scoring. Use this skill to set up Named Credentials, External Credentials, External Services, REST/SOAP callout patterns, Platform Events, and Change Data Capture. TRIGGER when: user sets up Named Credentials, External Services, REST/SOAP callouts, Platform Events, CDC, or touches .namedCredential-meta.xml files. DO NOT TRIGGER when: Connected App/OAuth config (use configuring-connected-apps), Apex-only logic (use generating-apex), or data import/export (use handling-sf-data).
venue-templates
IncludedAccess comprehensive LaTeX templates, formatting requirements, and submission guidelines for major scientific publication venues (Nature, Science, PLOS, IEEE, ACM), academic conferences (NeurIPS, ICML, CVPR, CHI), research posters, and grant proposals (NSF, NIH, DOE, DARPA). This skill should be used when preparing manuscripts for journal submission, conference papers, research posters, or grant proposals and need venue-specific formatting requirements and templates.
let-fate-decide
IncludedDraws the 12 Houses of the Zodiac Tarot spread to inject entropy into planning when prompts are vague, ambiguous, or casually delegated. Interprets the spread to guide next steps. Use when the user says 'let fate decide', 'YOLO', 'whatever', 'idk', or other nonchalant phrases, makes Yu-Gi-Oh references, or when you are about to arbitrarily pick between multiple reasonable approaches. Prefer over ask-questions-if-underspecified when the user's tone is casual or playful rather than precision-seeking.
net-ops
IncludedCross-platform network troubleshooting (Windows, macOS, Linux) via local or remote shell. Use for: DNS broken, can't resolve hostnames, nslookup/dig works but apps fail, NRPT, WFP, scutil, /etc/resolver, systemd-resolved, /etc/resolv.conf, NetworkManager, VPN DNS leak residue (ProtonVPN/Mullvad/WireGuard/AnyConnect), AV/firewall blocking DNS or DoH, Tailscale DNS interaction, intermittent connectivity, remote diagnostics over SSH.