The index

Most skills are fine.
That is not the same as free.

A skill's frontmatter loads at session start for every skill you have installed, whether or not it ever fires, and its instructions load in full the moment it does. That is a budget too. So we graded every public Agent Skill in three repositories, pinned to exact commits, with the same command you can run against your own.

The Agent Skills Quality Index

efaimo v0.1.2 · 2026-08-03

97%

of the 36 public Agent Skills in this corpus score an A from check --skill. Most skills are fine. That is the finding, and it is not the same as free.

grade distribution

A 35
C 1

Nothing scored B, D, F. One skill carries an error-level finding.

what the median costs you

1,632

tokens of instructions, loaded the moment the skill triggers. The spec recommends staying under 5,000.

38.5 tokens of metadata, loaded at session start for every installed skill whether it fires or not.

The one that is not fine claude-api scores C (73), and it is also the heaviest in the corpus: 18,419 tokens of instructions, about 11 times the median. It is Anthropic's own skill for their own API, which is the useful part. A curated set maintained by the people who wrote the spec still has one, so a set nobody audits has more. 3 repositories, pinned to exact commits: anthropics-skills, anthropics-claude-cookbooks, obra-superpowers. Reproduce any row with npx efaimo check --skill <dir>.

And ours, by the same rules

efaimo publishes skills too, so they are graded by the same call and kept out of every number above. A corpus statistic is a claim about work other people did; folding our own in would quietly make "97% score an A" a sentence about a population that includes the author. The build fails if the two ever merge.

skill grade metadata, always on body, on trigger referenced, on demand
efaimo A (100) 58 816 none
mcp-stateless-migration A (100) 104 1,428 3 files, 3,690
claim-sweep A (100) 110 1,115 2 files, 2,647
red-before-green A (100) 115 984 2 files, 2,146
honest-chart A (100) 103 929 3 files, 2,391

The three level split is the whole reason to care: what a skill costs you when it is installed and idle is a different number from what it costs when it runs, and both are different from what it costs when it is read to the end.

What this is not A grade here is a lint-quality signal, not a security audit and not a measure of whether a skill helps. A well-formed skill can still make an agent worse at the task, which is a different question, measured a different way, on the commands page. The injection checks in check --skill are surface heuristics and are reported without ever moving a grade.