find-random-skills
Find Random Skills
Use this skill to surface unexpected skills from skills.sh for discovery and landscape research. Do not install skills as part of this workflow.
The helper uses public zero-key skills.sh endpoints. It does not provide mathematically uniform randomness across the entire skills.sh catalog; it samples random skills from large public search result sets.
Workflow
- Parse the user's requested parameters:
count:1by default; clamp to1..10min_installs: optional; infer from requests like "at least N installs", "minimum N downloads", or equivalent wording in the user's languagemax_installs: optional; infer from requests like "under N installs", "fewer than N downloads", or equivalent wording in the user's languagesecurity: enabled by default; disable only when the user clearly asks to skip or disable security/audit checks in their language, or usessecurity=false
- Run the helper script from this skill directory:
python3 scripts/random_skill.py --count 1
Use --count N when the user requests multiple skills. Add --min-installs N
and/or --max-installs N when the user requests install-count filtering.
Use --no-security only when the user explicitly disables audit lookup. If
python3 is unavailable, try the same command with python.
- Read the JSON output and present each skill as a concise research card in the user's language. Before formatting results, read the research card template and use it as adaptive guidance. If the request is in English, answer in English. If the request is in any other language, answer in that language.
Research Card
Use assets/research-card-template.md as the preferred shape for each card.
The template is adaptive guidance, not a strict schema. Keep cards compact when
showing 4 to 10 results.
Read references/examples.md when the desired output quality or multi-card
spacing needs calibration. The examples are in English only as examples; always
answer in the user's language. The examples are not a strict schema.
For each skill, include these fields when available:
- Name
- Description
- Source
- Installs
- Security
- Why it might be interesting
- Link
- Install command
Translate field labels into the user's language. Do not show randomQuery in
the user-facing response unless the user explicitly asks how the random choice
was made.
Keep description in its original form from the skill metadata. Do not
translate, rewrite, or adapt it. Use "Why it might be interesting" for any
localized explanation or interpretation. If description is empty or null,
say that no original description was available.
The install command is informational only. If installCommand is missing, say
that the command could not be inferred instead of inventing one. When present,
render the command as a fenced code block containing only the command so it is
easy to copy:
npx skills add owner/repo --skill skill-name
When showing multiple skills, separate cards with a standard Markdown horizontal rule:
---
Put a blank line before and after the separator. Use it between cards; omit it after the final card when that reads better.
Security
Show a short verdict rather than a provider-by-provider dump:
- Likely safe: all available audits are
safeorlow, and there are no alerts - Review first: any audit is
medium, any provider has alerts, or audit data is incomplete - Risky: any audit is
highorcritical - Unknown: audits are missing, disabled, or unavailable
Translate the verdict into the user's language and add at most one short reason. If a provider reports a high or critical risk, make the caution visible.
If the helper reports no_public_audits, say that no public audits were found.
Do not describe missing audits as safe.
If the helper reports unavailable, say that security data could not be
checked for this result.
Partial Results
If query.incomplete is true, explain briefly that the install-count filter
was too narrow for the search attempt budget and that fewer skills were found
than requested. Still show the returned skills.
Caveats
If the user asks about randomness, explain that the skill chooses random query strings, loads up to 10,000 matching skills per query, and then selects one random skill from each query's result set.
This is intended for landscape discovery and surprise. It is not a cryptographically uniform sample of all skills.sh entries.
About This Skill
If the user asks about this skill itself, installation, privacy, security model, license, version, repository usage, or publishing details, read README.md and summarize only the relevant sections.
Do not read README.md during normal random-skill discovery runs.
Failures
If the script exits non-zero, report the error plainly. Common causes are temporary skills.sh unavailability, slow public endpoint responses, API rate limiting, or network access being blocked in the current environment.