Enhanced web and package repository search using local SearXNG instance
65
48%
Does it follow best practices?
Impact
95%
3.80xAverage score across 3 eval scenarios
Advisory
Suggest reviewing before use
Optimize this skill with Tessl
npx tessl skill review --optimize ./searxng-search/SKILL.mdQuality
Discovery
32%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
The description identifies the tool (SearXNG) and general domain (web and package repository search) but lacks concrete actions, explicit trigger guidance, and natural user keywords. It reads more like a title than a functional description that would help Claude select this skill from a large pool.
Suggestions
Add a 'Use when...' clause specifying triggers like 'search the web', 'find a package', 'look up library', 'search online', etc.
List specific concrete actions such as 'Searches the web, queries package repositories (npm, PyPI, crates.io), and retrieves search results via a local SearXNG instance'.
Include natural user terms and variations like 'Google', 'look up', 'find online', 'search for packages', 'browse the web' to improve trigger term coverage.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain ('web and package repository search') and the tool ('local SearXNG instance'), but does not list specific concrete actions like querying, filtering results, or searching specific repositories. | 2 / 3 |
Completeness | Describes what it does at a high level but completely lacks a 'Use when...' clause or any explicit trigger guidance, which per the rubric caps completeness at 2, and the 'what' is also quite thin, warranting a score of 1. | 1 / 3 |
Trigger Term Quality | Includes some relevant keywords like 'web search', 'package repository search', and 'SearXNG', but misses common natural user terms like 'search the web', 'find packages', 'look up', 'Google', 'npm', 'pypi', or other package manager names. | 2 / 3 |
Distinctiveness Conflict Risk | The mention of 'SearXNG' and 'package repository' adds some distinctiveness, but 'web search' is very broad and could overlap with other general search skills. | 2 / 3 |
Total | 7 / 12 Passed |
Implementation
64%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This is a highly actionable skill with excellent concrete examples and a useful quick reference table. Its main weaknesses are verbosity—particularly the configuration section, PyPI workaround, and manual container setup which could be moved to reference files—and the lack of integrated validation checkpoints in the workflow. Trimming redundant sections and better leveraging the reference file structure would significantly improve it.
Suggestions
Move the 'Manual Container Start' and 'Advanced Config' sections to a reference file (e.g., references/advanced-config.md) to reduce the main file's length and improve progressive disclosure.
Add a validation checkpoint after `start-searxng --detach`, e.g., 'Verify: `curl -s http://localhost:8888/config | jq .instance_name`' to confirm the service is ready before proceeding.
Trim the introductory sentence ('SearXNG is a privacy-respecting metasearch engine...') and the PyPI workaround section, which is disproportionately long for a known-issue workaround—consider moving it to the referenced `references/pypi-direct-search.md`.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is fairly comprehensive but includes some unnecessary verbosity—the PyPI workaround section is lengthy, the manual container start duplicates what the helper script does, and some explanatory text (e.g., 'SearXNG is a privacy-respecting metasearch engine...') tells Claude things it already knows. The configuration section could be significantly trimmed. | 2 / 3 |
Actionability | Excellent actionability throughout—every section provides concrete, copy-paste-ready curl commands, jq filters, bash scripts, and even a Nushell helper function. The quick reference table is immediately usable and the JSON response structure is fully documented. | 3 / 3 |
Workflow Clarity | The start/stop workflow is clear, and usage patterns are well-sequenced. However, there's no explicit validation step after starting SearXNG (e.g., verify it's responding before querying), and the debugging section is separated from the workflow rather than integrated as checkpoints. The PyPI fallback workflow is clear but could benefit from a decision tree. | 2 / 3 |
Progressive Disclosure | References to `references/package-engine-status.md` and `references/pypi-direct-search.md` show good intent for progressive disclosure, but the main file is quite long (~200+ lines) with configuration details and manual container setup that could be offloaded to reference files. The inline content is heavy for what should be an overview. | 2 / 3 |
Total | 9 / 12 Passed |
Validation
90%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 10 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 10 / 11 Passed | |
d2b7dff
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.