Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Helps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is there a skill that can...", or express interest in extending capabilities. This skill should be used when the user is looking for functionality that might exist as an installable skill.
.claude/skills/malob-malo-find-skills/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-04 | ✗→✓ | ▲ Improved | 10% | 0% |
| case-05 | ✗→✓ | ▲ Improved | -25% | 0% |
| case-06 | ✗→✓ | ▲ Improved | 116% | 0% |
| case-11 | ✗→✓ | ▲ Improved | -29% | 0% |
| case-07 | ✗→✓ | ▲ Improved | -10% | 0% |
This skill helps you discover and install skills from the open agent skills ecosystem (https://skills.sh). Based on the find-skills skill by Vercel, adapted for this Nix-managed environment.
Use this skill when the user:
All paths below (e.g. home/claude.nix, configs/claude/skills/) are relative to the nix-config directory.
Skills are split into two categories:
configs/claude/skills/ committed to the nix-config repo. These are skills we author and maintain.npx skills add. These are managed by an activation script in home/claude.nix and are gitignored (they appear as symlinks in the skills directory, not regular directories).The activation script defines a list called externalSkills. On every nh darwin switch --no-nom, it removes all Claude Code external skills and reinstalls only the declared ones. This keeps external skills declarative and reproducible.
Run the find command with a relevant query:
bashnpx skills find [query]
For example:
npx skills find react performancenpx skills find pr reviewnpx skills find changelogYou can also browse skills at https://skills.sh/
When you find relevant skills, present them with:
To try a skill immediately:
bashnpx skills add <owner/repo> --skill <name> -g -a claude-code -y
Always pass -a claude-code to avoid installing for other agents. The -g flag installs globally (user-level) and -y skips prompts.
If the user wants to keep the skill across rebuilds, add it to the externalSkills list in home/claude.nix:
nixexternalSkills = [ "anthropics/skills --skill pdf" "owner/repo --skill new-skill" # <- add here ];
Then nh darwin switch --no-nom will install it on every activation.
If no existing skill fits, or the user wants to build their own:
configs/claude/skills/<skill-name>/SKILL.md with YAML frontmatter (name and description) and instructionsreferences/, scripts/, or other supporting filesIf no relevant skills exist:
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | 13,560 | 4,234 | -69% | 1 | 1 | 0% | 2,439 | 1,022 | -58% | 0 | 0 | — |
case-02 | fail→fail | 11,002 | 3,592 | -67% | 1 | 1 | 0% | 1,978 | 1,021 | -48% | 0 | 0 | — |
case-03 | fail→fail | 14,847 | 4,579 | -69% | 1 | 1 | 0% | 2,837 | 1,027 | -64% | 0 | 0 | — |
case-04 | fail→pass | 7,607 | 2,933 | -61% | 1 | 1 | 0% | 1,193 | 1,310 | +10% | 0 | 0 | — |
case-05 | fail→pass | 10,451 | 3,117 | -70% | 1 | 1 | 0% | 1,848 | 1,381 | -25% | 0 | 0 | — |
case-06 | fail→pass | 3,514 | 1,834 | -48% | 1 | 1 | 0% | 537 | 1,158 | +116% | 0 | 0 | — |
case-11 | fail→pass | 12,421 | 3,198 | -74% | 1 | 1 | 0% | 1,982 | 1,407 | -29% | 0 | 0 | — |
case-07 | fail→pass | 8,990 | 2,981 | -67% | 1 | 1 | 0% | 1,458 | 1,306 | -10% | 0 | 0 | — |
case-08 | pass→pass | 7,482 | 2,498 | -67% | 1 | 1 | 0% | 1,247 | 1,231 | -1% | 0 | 0 | — |
case-09 | fail→pass | 14,316 | 2,718 | -81% | 1 | 1 | 0% | 2,606 | 1,257 | -52% | 0 | 0 | — |
case-10 | fail→pass | 9,632 | 2,222 | -77% | 1 | 1 | 0% | 1,608 | 1,185 | -26% | 0 | 0 | — |
case-12 | pass→pass | 5,309 | 1,868 | -65% | 1 | 1 | 0% | 890 | 1,086 | +22% | 0 | 0 | — |
case-13 | pass→pass | 4,464 | 1,509 | -66% | 1 | 1 | 0% | 666 | 1,040 | +56% | 0 | 0 | — |
case-14 | fail→pass | 13,107 | 6,781 | -48% | 1 | 1 | 0% | 2,045 | 1,959 | -4% | 0 | 0 | — |
case-15 | fail→pass | 12,903 | 2,886 | -78% | 1 | 1 | 0% | 2,186 | 1,294 | -41% | 0 | 0 | — |
case-16 | fail→pass | 12,116 | 3,034 | -75% | 1 | 1 | 0% | 1,965 | 1,326 | -33% | 0 | 0 | — |
case-17 | pass→pass | 7,828 | 6,037 | -23% | 1 | 1 | 0% | 1,443 | 1,883 | +30% | 0 | 0 | — |
case-18 | pass→fail | 8,475 | 3,286 | -61% | 1 | 1 | 0% | 1,374 | 1,349 | -2% | 0 | 0 | — |
case-19 | pass→pass | 4,525 | 1,414 | -69% | 1 | 1 | 0% | 746 | 1,020 | +37% | 0 | 0 | — |
case-20 | pass→pass | 8,330 | 3,949 | -53% | 1 | 1 | 0% | 1,577 | 1,441 | -9% | 0 | 0 | — |
case-21 | pass→pass | 8,069 | 8,599 | +7% | 1 | 1 | 0% | 1,350 | 1,897 | +41% | 0 | 0 | — |
case-22 | pass→pass | 8,192 | 3,775 | -54% | 1 | 1 | 0% | 1,407 | 1,468 | +4% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted, and 19 counted toward the lift figure. The other 3 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +41 percentage points is the difference between those two pass rates over the 19 comparable cases. 2 cases got worse with the skill loaded, and they are included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.