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`).
In this repository15 other files it gives its agents.
- ai-codegen-smell-auditSkill
- auditSkill
- dotnet-auditSkill
- llm-injection-auditSkill
- mikko-audit-suiteSkill
- mikko-installSkill
- mikko-skillsSkill
- react-anti-patterns-auditSkill
- readme-drift-syncSkill
- security-auditSkill
- session-costSkill
- skill-calibrationSkill
- skills-freshnessSkill
- skills-qualitySkill
- skill-usageSkill
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
- Very specific: line 11
All the work — glob the skill dirs, parse each SKILL.md frontmatter, dedupe, sort, format — is deterministic, so it lives in a script …
- Distinctive: line 15
Run the bundled script and print its output verbatim:
≈ “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.
Files
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-Englishbarney:line instead (falls back to the truncateddescription, 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. --detectwith no config files. Reports "language: unknown" and recommendsauditonly — 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"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
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.

