Report
State of agent skills 2026: what 1,638 public skills look like when scanned
We ran 1,638 public SKILL.md skills from 83 popular GitHub repos through the ProSkills scanner. This is what came out: scores, the most common problems, token cost and security findings. Data as of October 19, 2026, refreshed when the scan data is rebuilt.
Summary
Key findings
88median score of 100
Mean 85.1. 46% grade A.
4%have a critical finding
61 of 1,638 skills.
1,666median tokens on trigger
One in ten loads 4,708 or more.
- The median public skill scores 88/100. 46% grade A, 30% grade B and 7% grade F.
- 4% of skills have at least one critical finding, and 19% have a security finding at warning level or above.
- The most common finding is
eff/description-trigger, in 34% of skills: the description never says when to use the skill, so the agent has to guess. - The median skill loads 1,666 tokens when it triggers. 9% load more than 5,000.
- 12% of skills with a body over 40 lines have no numbered workflow.
- 83% come from a repo with a license GitHub can detect.
- 18% bundle at least one script, and 57% link to at least one external URL.
- Only 9% have no findings at all.
Grades
Score distribution
75% of public skills score B or better, and 7% get an F. Grades follow the score (A is 90 or more, B 80, C 70, D 60), except that any critical finding makes the grade F whatever the total.
| Grade | Score | Skills | Share |
|---|---|---|---|
| A | 90-100 | 746 | 46% |
| B | 80-89 | 489 | 30% |
| C | 70-79 | 188 | 11% |
| D | 60-69 | 105 | 6% |
| F | Under 60, or any critical finding | 110 | 7% |
The score is four pillars of 25 points each. Clarity holds up best, at 22.3 on average, and efficiency loses the most points, at 19.6.
| Pillar | Average of 25 | What it checks |
|---|---|---|
| Spec | 21.1 | Frontmatter, name and description rules from the open Agent Skills spec, and file references that resolve. |
| Efficiency | 19.6 | A description that says when to trigger, body size, and detail split into reference files. |
| Clarity | 22.3 | Headings, examples, a stated output, numbered steps, no vague or unfinished text. |
| Security | 22.1 | Patterns for instruction override, hidden text, remote code, secrets, persistence and risky commands. |
Rules
The 10 most common findings
The top finding, eff/description-trigger, appears in 34% of public skills. Most of the top ten are cheap to fix: one line in the description, one Output heading, one example.
| Rule | What it means | Skills | Share |
|---|---|---|---|
eff/description-trigger | The description never says when to use the skill, so the agent has to guess. | 560 | 34% |
spec/non-portable-keys | Frontmatter keys outside the open spec, which claude.ai and the Skills API reject on upload. | 558 | 34% |
clarity/output | The skill never says what the result should look like. | 444 | 27% |
spec/broken-ref | SKILL.md points to a file that is not in the skill folder. | 354 | 22% |
clarity/examples | No example, code block or table anywhere in the body. | 300 | 18% |
eff/orphan-file | A bundled file that SKILL.md never mentions, so the agent will not know to read it. | 255 | 16% |
sec/plain-http | Links over plain http instead of https. | 199 | 12% |
clarity/workflow | A body over 40 lines with no numbered steps. | 173 | 11% |
eff/body-tokens | The body is over 5,000 tokens, all loaded each time the skill triggers. | 145 | 9% |
eff/body-light | Under about 450 tokens of guidance in total. | 119 | 7% |
A skill counts once per rule, however many times the rule fires in it. clarity/workflow only checks bodies over 40 lines, so its share of those skills is 12%. The keys behind spec/non-portable-keys are most often tags, version and argument-hint.
Context
Token cost
The median public skill loads 1,666 tokens into context when it triggers, and the 90th percentile is 4,708.
| Measure | Tokens | When it is paid |
|---|---|---|
| Name and description, median | 67 | Every session, for every installed skill |
| SKILL.md body, 25th percentile | 714 | Each time the skill triggers |
| SKILL.md body, median | 1,666 | Each time the skill triggers |
| SKILL.md body, 90th percentile | 4,708 | Each time the skill triggers |
| SKILL.md body, largest | 36,030 | Each time the skill triggers |
| Reference files, median of the 59% that have them | 4,591 | Only when the agent opens them |
The always-loaded cost is small, so installing many skills is cheap until they trigger. The body is the real cost: 9% of skills (145) go past the 5,000 tokens the scanner treats as the budget. Moving long tables and examples into reference files keeps them out of context until needed. See reduce skill token usage and progressive disclosure.
Security
Security findings
3% of public skills (42) have a critical security finding, and 27% have a security finding of any level.
| Severity | Findings | Skills with one | Share of skills |
|---|---|---|---|
| Critical | 58 | 42 | 3% |
| Warning | 521 | 293 | 18% |
| Info | 199 | 199 | 12% |
| Security rule | What it matches | Skills |
|---|---|---|
sec/plain-http | Links over plain http instead of https. | 199 |
sec/persistence | Mentions cron, launch agents, shell rc files or agent hooks: ways to keep running after the task. | 92 |
sec/hidden-comment | An HTML comment with instruction-like words, which does not show when rendered. | 60 |
sec/permissions | sudo, chmod 777, wildcard allowed-tools or a permission bypass flag. | 58 |
sec/secret-read | Touches credential files such as ~/.ssh, ~/.aws or .npmrc. | 47 |
sec/undocumented-script | Bundles scripts that SKILL.md never explains. | 37 |
sec/remote-exec | A command that downloads code and pipes it to a shell or interpreter. | 31 |
sec/exfiltration | A network call that includes secrets, env vars or credential files. | 27 |
sec/obfuscation | Decodes or evaluates hidden code, or carries a long encoded blob. | 27 |
sec/destructive | rm -rf on broad paths, disk formatting, force push, DROP TABLE and similar. | 14 |
sec/prompt-injection | Phrasing that tries to override the agent's instructions. | 13 |
sec/hidden-unicode | Invisible or bidirectional Unicode characters. | 9 |
sec/fake-prerequisite | Tells the reader to download and run a binary from a URL. | 6 |
sec/suspicious-host | Links to a paste, tunnel, webhook or URL shortener host. | 3 |
sec/remote-instructions | Fetches instructions from a URL at runtime. | 1 |
These are findings, not verdicts. A rule matches a pattern in the text. A skill that documents sudo for an install step, or warns readers about curl | sh, trips the same rule as one that does it. The scanner already downgrades matches that read as a quoted example or a warning to warning level. Each public report shows the file and line so you can judge it in context.
The opposite error also exists. A static scan reads text. It does not run scripts, follow redirects or see what a URL serves later, and a determined author can word around any pattern list. A clean scan lowers risk. It does not prove a skill is safe. Read is this skill safe for what to check by hand, and browse every report on public skills, scanned.
Baseline
Compared with the ProSkills catalog
The 67 skills in the ProSkills catalog have a median score of 100, against 88 for public skills. That gap is by design, not luck: catalog skills are scanned by the same rules before they ship and fixed until they pass.
| Public skills | ProSkills catalog | |
|---|---|---|
| Skills scanned | 1,638 | 67 |
| Median score | 88 | 100 |
| Grade A | 46% | 100% |
| Lowest score | 21 | 100 |
See every catalog score on the quality leaderboard.
How
Methodology
The data covers 1,638 skills from 83 public GitHub repositories, scanned on October 19, 2026.
- Selection: GitHub repository search for a seed list of well-known skill repos, the topics
claude-skills,agent-skillsandclaude-code-skills, and repos with "claude skills" in the name or description and over 50 stars. Forks and archived repos are skipped, and the most-starred repos are kept. - A skill is any folder with a
SKILL.md, up to 40 per repo. Folders named test, tests, fixtures or examples are skipped. Up to 25 text files under 200 KB are read per skill. - When the same
SKILL.mdappears in several repos, it is counted once, under the most-starred repo. A symlinkedSKILL.mdis skipped as a copy. - Each skill is pinned to the commit it was read at, so a report matches a specific version.
- Scoring uses the same scanner as the free Skill Scanner: four pillars of 25 points, findings by named rule, and 42 distinct rules fired in this data. The full rule list is in the validator guide.
- Tokens are estimated as characters divided by four, which lands within about 10% of real tokenizers for English and code.
- License is the repository license as GitHub reports it, not a per-skill license file.
Limits. The sample leans toward popular repos, so it says more about skills people install than about every skill written. The scanner checks form, cost and known risky patterns. It does not judge whether a skill's advice is good. Rule changes rescore every skill at the same commits, so numbers here can move between refreshes without any skill changing.
Cite
How to cite this report
FAQ
Questions
- What is the average quality score of a public agent skill?
- The median is 88 out of 100 and the mean is 85.1, across 1,638 public SKILL.md skills scanned on October 19, 2026. 46% grade A (90 or more) and 7% grade F.
- How many public agent skills have security issues?
- 4% (61 of 1,638) have at least one critical finding, and 19% have a security finding at warning level or above. A finding is a pattern match, not proof of intent. Many are commands shown as examples or warnings.
- What is the most common problem in agent skills?
- The description never says when to use the skill, so the agent has to guess. It shows up in 34% of skills (rule eff/description-trigger). The fix is one line in the description: say when to use the skill, for example "Use when the user asks for...".
- How many tokens does a typical skill load?
- The median skill loads about 1,666 tokens into context when it triggers, and about 67 tokens are always loaded for its name and description. One in ten loads 4,708 tokens or more, and 9% go past 5,000.
- How many agent skills ship scripts or have a license?
- 18% of skills bundle at least one script file, and 83% come from a repo with a license GitHub can detect. 57% link to at least one external URL.
- Can I use these numbers?
- Yes. The data is published under CC BY 4.0. Cite it as: ProSkills, State of Agent Skills 2026, proskills.dev/state-of-agent-skills, data as of 2026-10-19.
Related
Keep reading
- Skill ScannerScore any skill in your browser. Nothing is uploaded.
- SKILL.md format referenceEvery field, its limit, the folder layout and the errors people hit.
- Public skills, scannedScan reports for popular public skills on GitHub: security findings, token cost and score.
- Is this Claude skill safe?The threats to look for, a two-minute read, and what a scanner cannot catch.
- All guidesEvery guide, grouped by what you are trying to do.
Free tool
Scan your own skill
Paste a SKILL.md or drop a folder. It is scored in your browser and nothing is uploaded.
Want a skill that already passes? Start with a free one.
Taste CoreFreeScan 100/100Spacing, type scale, one accent. From the Frontend Taste collection.