一键导入
web-search
Search the web using SearxNG, a locally-run meta search engine that aggregates results from multiple engines
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Search the web using SearxNG, a locally-run meta search engine that aggregates results from multiple engines
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Use when needing an easily readable markdown version of any web page.
Use this skill to retrieve up-to-date documentation, API references, and code examples for any specific library, framework, SDK, CLI tool, or cloud service -- even for well-known ones like React, Next.js, Prisma, Express, Tailwind, Django, or Spring Boot. Your training data may not reflect recent API changes or version updates.
Use this skill whenever you are dealing with Node.js code to obtain domain-specific knowledge for building robust, performant, and maintainable Node.js applications.
Use ast-grep INSTEAD OF grep, rg, ripgrep, or read when searching for code patterns. Understands code structure (AST), not just text — finds function calls, class definitions, async patterns, missing error handling, and more with zero false positives from strings/comments. Always prefer over grep/rg for any code-structural search.
Code style, comment conventions, and formatting rules for all code changes. Covers whitespace, comment style, JavaScript/TypeScript idioms (nullish coalescing, single-line ifs, nullish checks, interface extraction), and unit test nesting. Use when writing, reviewing, or refactoring code.
Use to send notifications to my phone or computer about an event, update, or state change.
| name | web-search |
| description | Search the web using SearxNG, a locally-run meta search engine that aggregates results from multiple engines |
If the jina CLI tool is available, and pass agents/jina-reader/pi exists, ALWAYS use jina search to do a web search. Ensure JINA_API_KEY=$(pass agents/jina-reader/pi) env var is set.
If jina is not installed or pass does not return a key, continue to the next section.
SearXNG is a metasearch engine that runs locally. It aggregates results from multiple search engines and package repositories, returning clean JSON output.
| Task | Command | Category |
|---|---|---|
| General web search | curl "http://localhost:8080/search?q=<query>&format=json" | general |
| Search Cargo/crates.io | curl "http://localhost:8080/search?q=<crate>&format=json&categories=cargo" | cargo |
| Search npm packages | curl "http://localhost:8080/search?q=<pkg>&format=json&categories=packages" | packages |
| Search code repositories | curl "http://localhost:8080/search?q=<query>&format=json&categories=repos" | repos |
| Search IT resources | curl "http://localhost:8080/search?q=<query>&format=json&categories=it" | it |
| Limit results | Add &limit=N to URL | - |
| Multiple categories | &categories=cat1,cat2 | - |
Run to see all categories:
curl -s "http://localhost:8080/config" | jq '.categories'
Notable categories:
{
"query": "search term",
"number_of_results": 0,
"results": [
{
"url": "https://example.com",
"title": "Result Title",
"content": "Snippet of content...",
"publishedDate": "2025-01-01T00:00:00",
"engine": "duckduckgo",
"engines": ["duckduckgo", "startpage"],
"score": 3.0,
"category": "general"
}
],
"answers": [], // Direct answers/infoboxes
"suggestions": [], // Search suggestions
"corrections": [], // Query corrections
"infoboxes": [], // Knowledge panels
"unresponsive_engines": []
}
Cargo/Rust crates:
curl -s "http://localhost:8080/search?q=tokio&format=json&categories=cargo" | \
jq '.results[] | {title, url, content}'
npm packages:
curl -s "http://localhost:8080/search?q=express&format=json&categories=packages" | \
jq '.results[] | select(.engines[] == "npm") | {title, url, content}'
PyPI packages (workaround - see below):
# PyPI engine is enabled but not returning results in current SearXNG config
# Use direct API or qypi CLI instead (see PyPI Workaround section)
IT/Tech search:
curl -s "http://localhost:8080/search?q=rust+async&format=json&categories=it" | \
jq '.results[0:5] | .[] | {title, url, engines}'
GitHub repositories:
curl -s "http://localhost:8080/search?q=machine+learning&format=json&categories=repos" | \
jq '.results[] | select(.engines[] == "github") | {title, url}'
Very helpful for avoiding wasting tokens by adding a large amount of data to the context.
Get top 3 results:
curl -s "http://localhost:8080/search?q=rust+ownership&format=json" | \
jq '.results[0:3] | .[] | {title, url, content}'
Check which engines returned results:
curl -s "http://localhost:8080/search?q=python&format=json" | \
jq '.results[0].engines'
Get answer boxes/infoboxes:
curl -s "http://localhost:8080/search?q=rust+language&format=json" | \
jq '.infoboxes, .answers'
categories=packages or categories=it which also include crates.io