searxng-search-a4acb5 — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited searxng-search-a4acb5 (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Use SearXNG for privacy-oriented metasearch when the user provides a SearXNG instance, asks to use a self-hosted search service, or explicitly wants SearXNG instead of a general web search tool. This is a web_search provider: it discovers URLs and snippets from a query, but it does not fetch full page content.
In ArkSpace, SearXNG is exposed through this skill and its bundled helper script.
https://docs.searxng.org/https://docs.searxng.org/dev/search_api.htmlhttps://github.com/NousResearch/hermes-agent/blob/main/optional-skills/research/searxng-search/SKILL.mdhttps://docs.openclaw.ai/tools/searxng-searchSEARXNG_URL.SEARXNG_BASE_URL.~/.config/ark-space/providers.json.provider-manager.registry/search-providers.yaml.web_fetch provider instead of this skill.Resolve the installed ArkSpace package root before running commands. Replace <installed-arkspace-path> with the directory two levels above this loaded SKILL.md, such as /Users/<user>/.claude/plugins/cache/ark-space/ark-space/0.1.2. Use the installed package path, not a repository-relative command or relative skill script path.
Check configuration before searching when privacy, reproducibility, or reliability matters:
python3 <installed-arkspace-path>/scripts/arkspace.py provider check searxngPersist a self-hosted URL once:
python3 <installed-arkspace-path>/scripts/arkspace.py provider configure searxng --base-url "https://searx.example.org"Inspect the resolved configuration:
python3 <installed-arkspace-path>/scripts/arkspace.py provider resolve searxng --capability web_searchIf the check fails because no instance is configured:
python3 <installed-arkspace-path>/scripts/arkspace.py provider configure searxng --base-url "<url>" for them.--base-url.Configuration belongs in the host environment or ArkSpace user config, not in committed skill files. Use --base-url for one-off overrides, SEARXNG_URL / SEARXNG_BASE_URL for host-managed config, and python3 <installed-arkspace-path>/scripts/arkspace.py provider configure searxng --base-url <url> for durable user-level config. Set ARKSPACE_PROVIDER_CONFIG or pass --config-path to use a custom provider config file.
SearXNG supports GET /, GET /search, POST /, and POST /search. For agent use, prefer:
curl -G "$SEARXNG_URL/search" \
--data-urlencode "q=site:github.com searxng" \
--data-urlencode "format=json"Common parameters:
| Parameter | Use |
|---|---|
q | Required query string |
format | json, csv, or rss; must be enabled by the instance |
categories | Comma-separated categories |
engines | Comma-separated engine names |
language | Search language code |
pageno | Page number, default 1 |
time_range | day, month, or year when supported |
safesearch | 0, 1, or 2 |
If format=json returns 403, 406, or HTML, the instance probably has JSON disabled; try another instance or use HTML only when a readable page is acceptable.
Use the bundled helper for repeatable searches:
python3 <installed-arkspace-path>/skills/searxng-search/scripts/searxng_search.py "query text"Check configured availability:
python3 <installed-arkspace-path>/scripts/arkspace.py provider check searxngSelf-hosted instance:
SEARXNG_URL="https://searx.example.org" \
python3 <installed-arkspace-path>/skills/searxng-search/scripts/searxng_search.py "query text" --limit 5Persisted self-hosted instance:
python3 <installed-arkspace-path>/scripts/arkspace.py provider configure searxng --base-url "https://searx.example.org"
python3 <installed-arkspace-path>/skills/searxng-search/scripts/searxng_search.py "query text" --limit 5SEARXNG_BASE_URL is also accepted for hosts that use that convention.
Explicit instance and filters:
python3 <installed-arkspace-path>/skills/searxng-search/scripts/searxng_search.py "query text" \
--base-url "https://searx.example.org" \
--categories general \
--language en \
--time-range month \
--safesearch 1Output modes:
python3 <installed-arkspace-path>/skills/searxng-search/scripts/searxng_search.py "query text" --output markdown
python3 <installed-arkspace-path>/skills/searxng-search/scripts/searxng_search.py "query text" --output jsonIf a non-general category returns zero results, the helper retries once with categories=general unless --no-category-fallback is set.
| Symptom | Response |
|---|---|
403 Forbidden | JSON format is disabled or request is blocked; try another instance |
429 Too Many Requests | Instance rate limited the request; use a better self-hosted endpoint or another configured web_search provider |
| Empty results | Retry with broader terms, different engines, or another instance |
| Timeout | Use self-hosted instance or reduce candidate count |
| Captcha/block page | Do not bypass; switch to a configured endpoint |
| Missing self-hosted URL | Use provider-manager to configure SearXNG before searching |
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.