agentleFS
MikkoNumminenMikkoNumminen/claude-skills/skills/mikko-help/SKILL.md

mikko-help

Skill0 starsChanged 5 months agoMITView on GitHub

List every installed `mikko-*` skill with its description — the fast answer to "what mikko skills do I have" / "list my skills" / "remind me what's installed" when you remember you have a skill but not its name. Runs a bundled script (deterministic glob + frontmatter parse, ~no tokens). Pass `--detect` for codebase-aware audit recommendations on the current repo, `--barney` for plain-English one-liners; they combine. NOT a cross-repo registry (use `/skill-registry`) or a token-usage report (`/mikko-skill-usage`).

The file

We split this skill into the rules it gives an agent

2 rules. About 0 are common, 1 is distinctive, and 1 is very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈1

    Distinctive · estimate

    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. Very specific:

    All the work — glob the skill dirs, parse each SKILL.md frontmatter, dedupe, sort, format — is deterministic, so it lives in a script …

    line 11
  2. Distinctive:

    Run the bundled script and print its output verbatim:

    line 15

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “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

mikko-help

The discoverability sidekick for the mikko-* namespace — for when you remember you have a skill for something but not its exact name. /mikko<Tab> already lists the names (free, built into the CLI); this adds the descriptions so you can pick by what each one does.

All the work — glob the skill dirs, parse each SKILL.md frontmatter, dedupe, sort, format — is deterministic, so it lives in a script rather than in LLM prose. One Bash call instead of ~8–11K tokens of glob+read+format per run.

How to run

Run the bundled script and print its output verbatim:

python3 ~/.claude/skills/mikko-help/mikko-help.py [--barney] [--detect]

(From the source repo: python3 skills/mikko-help/mikko-help.py.) It globs ~/.claude/skills/mikko-*/SKILL.md (user-wide) and .claude/skills/mikko-*/SKILL.md (project-local, wins on a name clash and gets a (project) tag), then prints a two-column name + description table. Nothing is written to disk.

Flags

  • (none) — list every skill with its description. Default; cheapest.
  • --barney — show each skill's plain-English barney: line instead (falls back to the truncated description, tagged (no barney), for skills without one).
  • --detect — also fingerprint the current repo (reads a handful of root config files — package.json, tsconfig.json, pyproject.toml, Cargo.toml, go.mod, *.sln/*.csproj/global.json, framework configs) and print an ordered "which audit should I run here" recommendation. Does not walk the source tree and does not dispatch audits — it's a hallway sign, not a tour guide.

--detect and --barney are independent and combine.

Detection matrix (--detect)

The recommendation logic lives in skills_listing.recommend_audits. In short: React → react-anti-patterns-audit first, then the universal ai-codegen-smell-audit + audit; .NET / ASP.NET Core → dotnet-audit first, then ai-codegen-smell-audit + audit; other non-React → audit + ai-codegen-smell-audit; security-sensitive deps (auth/db/network/crypto libraries, or ASP.NET Core Identity / EF Core) lift security-audit from skip to suggest. React Native adds --force to bypass the web-shape pre-flight. A repo matching multiple stacks (e.g. React + .NET in one root) gets each stack's audit.

Failure modes

  • No skills directory. Prints "no mikko-* skills installed yet" and a hint to run ./install-mikko.sh. Exits cleanly.
  • Malformed frontmatter. Falls back to the directory name + (no description) rather than failing the run.
  • --detect with no config files. Reports "language: unknown" and recommends audit only — honest about what it can't infer.

Why this skill exists

/mikko<Tab> gives names; the gap mikko-help fills is needing descriptions to choose between similarly-named skills, or to recall what a freshly-installed skill does. For a portfolio audience it's a small, real signal that the mikko-* prefix is a deliberately-designed namespace with its own "what's in here" command — and that the listing is a cheap script, not an LLM loop.

Freshness check

Staleness checks run by /mikko-skills-freshness on any change to this skill.

[[check]]
kind = "file_contains"
path = "SKILL.md"
pattern = "^## Flags"

[[check]]
kind = "file_contains"
path = "SKILL.md"
pattern = "`--detect`"

[[check]]
kind = "path_exists"
path = "mikko-help.py"

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.