agentleFS
robinbrilrobinbril/claude-code-harness/skills/skill-finder/SKILL.md

skill-finder

Skill3 starsChanged 24 days agoMITView on GitHub

Find, reuse, or write a skill. At the start of any non-trivial request: check which installed skills fit; if none, search for proven implementations before building; and if the task recurs, write a new skill with proper structure. Triggers: "skill finder", "welke skill kan ik hiervoor gebruiken", "is hier al een skill voor", "schrijf een skill", "write a skill", "create a skill", "research before building", "reuse before building".

26 other projects use a version of this.

Adopted by

Most recently taken up by

The file

We split this skill into the rules it gives an agent

9 rules. 0 are common, 8 are distinctive, and 1 is very specific to this project.

  • 0

    Common

    Most of the 24 edited versions we read keep these.

  • 8

    Distinctive

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Before doing a task the hard way, find what already exists.

    line 13
  2. Distinctive:

    If two skills overlap, prefer the more specific one.

    line 25
  3. Distinctive:

    If nothing installed matches, do not hand-roll immediately.

    line 28
  4. Distinctive:

    Web: only when the above are insufficient.

    line 33
  5. Distinctive:

    Prefer adopting or porting a battle-tested approach over net-new code when it meets the need.

    line 34
  6. Distinctive:

    If the task recurs and nothing covers it, write one.

    line 37
  7. Distinctive:

    Add scripts: when the op is deterministic (validation, formatting) or the same code would be regenerated repeatedly.

    line 70
  8. Very specific:

    Split files: when SKILL.md passes ~100 lines, content spans distinct domains, or advanced features are rarely needed.

    line 73
  9. Distinctive:

    If none: the best existing approach you found, with a link.

    line 81

“Common” is measured: kept by at least 6 in 10 of the 24 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Skill Finder

Before doing a task the hard way, find what already exists. This skill does two passes: match the request against installed skills first, then look outward for proven approaches.

Pass 1, Match installed skills (always first)

  1. List the installed skills and their descriptions:
    uv run python scripts/list_skills.py            # alle skills
    uv run python scripts/list_skills.py --filter <woord>   # gefilterd
    (Path: ~/.claude/skills/skill-finder/scripts/list_skills.py.)
  2. Match the user's request against the descriptions. Pick the one or two that fit best.
  3. Report: "Hiervoor is skill X (en eventueel Y). Wil je die inzetten?" Then invoke it.
  4. If two skills overlap, prefer the more specific one; note the trade-off in one line.

Pass 2, Research & reuse (only if no skill fits)

If nothing installed matches, do not hand-roll immediately. Search for a proven approach first (research before building):

  • GitHub: gh search repos "<topic>" and gh search code "<pattern>" for working examples.
  • Package registries: npm / PyPI / crates.io before writing utility code.
  • Docs: Context7 or the vendor's primary docs to confirm API behaviour and versions.
  • Web: only when the above are insufficient; cite the sources you used. Prefer adopting or porting a battle-tested approach over net-new code when it meets the need.

Pass 3, Write a new skill (only if it's reusable)

If the task recurs and nothing covers it, write one. Keep team-facing skills generic (no personal name).

Process: gather requirements (domain, use cases, scripts-or-just-instructions, reference material) → draft → review with user.

Structure:

skill-name/
├── SKILL.md        # main instructions (required, < 100 lines)
├── REFERENCE.md    # detailed docs (only if SKILL.md would exceed ~100 lines)
└── scripts/        # utility scripts (only for deterministic ops)

SKILL.md template:

---
name: skill-name
description: What it does (1st sentence). Use when [specific triggers] (2nd sentence).
---
# Skill Name
## Quick start
[minimal working example]
## Workflows
[step-by-step, checklists for complex tasks]
## Advanced
[link one level deep: See REFERENCE.md]

Description = the only thing the agent sees when choosing a skill. Max 1024 chars, third person. Sentence 1 = capability, sentence 2 = "Use when [keywords/contexts/file types]". Vague ("helps with documents") = never loaded.

Add scripts when the op is deterministic (validation, formatting) or the same code would be regenerated repeatedly. Saves tokens, improves reliability.

Split files when SKILL.md passes ~100 lines, content spans distinct domains, or advanced features are rarely needed.

Checklist: description has triggers · SKILL.md < 100 lines · no time-sensitive info · consistent terms · concrete examples · references one level deep.

Output

  • Which installed skill(s) fit, ranked, with a one-line why.
  • If none: the best existing approach you found, with a link.
  • A clear recommendation: use skill X / adopt repo Y / build new (and why).

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.