searxng-search
Enhanced web and package repository search using local SearXNG instance
By ypares · 808 installs
npx skills add ypares/agent-skills --skill searxng-search
Source repository · Upstream listing
SearXNG Search
SearXNG is a privacy respecting metasearch engine that you can run locally. It aggregates results from multiple search engines and package repositories, returning clean JSON output.
Quick Start
Start SearXNG:
This will:
Auto detect podman or docker
Create a minimal config with JSON output enabled
Start SearXNG on http://localhost:8888
Wait until ready
Stop SearXNG:
Custom port:
Quick Reference
Task Command Category
General web search curl "http://localhost:8888/search?q=<query &format=json" general
Search Cargo/crates.io curl "http://localhost:8888/search?q=<crate &format=json&categories=cargo" cargo
Search npm packages curl "http://localhost:8888/search?q=<pkg &format=json&categories=packages" packages
Search code repositories curl "http://localhost:8888/search?q=<query &format=json&categories=repos" repos
Search IT resources curl "http://localhost:8888/search?q=<query &format=json&categories=it" it
Limit results Add &limit=N to URL
Multiple categories &categories=cat1,cat2
Available Categories
Run to see all categories:
Notable categories:
general : General web search (default)
cargo : Rust crates from crates.io
packages : Multi repo (npm, rubygems, haskell/hoogle, hex, packagist, metacpan, pub.dev, pkg.go.dev, docker hub, alpine, etc.)
it : IT/tech resources (includes GitHub, Docker Hub, crates.io)
repos : Code repositories
code : Code search
scientific publications : Academic papers
news , videos , images , books , etc.
See [package engine status.md](references/package engine status.md) for comprehensive package search testing results.
JSON Response Structure
Common Usage Patterns
1. Package Repository Searches
Cargo/Rust crates:
npm packages:
PyPI packages (workaround see below):
2. Web Search with Filtering
IT/Tech search:
GitHub repositories:
3. Extracting Specific Information
Get top 3 results:
Check which engines returned results:
Get answer boxes/infoboxes:
PyPI Workaround
Since PyPI is not returning results in SearXNG (despite being enabled), use these alternatives:
Option 1: Direct PyPI JSON API
Option 2: qypi CLI tool
See references/pypi direct search.md for more details.
Integration with Nushell
Create a helper function:
Usage:
Debugging
Check SearXNG config:
Check for engine errors:
Test specific engine:
Known Issues
PyPI engine enabled but not working : Use direct API or qypi CLI as workaround
Cargo category sometimes returns empty : Try categories=packages or categories=it which also include crates.io
Rate limiting : SearXNG may rate limit if too many requests in quick succession
Configuration
Using the Helper Script (Recommended)
The start searxng script creates a minimal configuration automatically:
Default config includes:
use default settings: true (inherits all SearXNG defaults)
JSON format enabled
Rate limiting disabled (for local use)
Secret key (change in production!)
Using Your Own Config
Your config directory should contain settings.yml .
Manual Container Start
Check Logs
Advanced Config
See [SearXNG Settings Documentation](https://docs.searxng.org/admin/settings/settings.html) for all options.
Minimal config to add JSON output to defaults: