skill-doctor
Skill0 starsChanged 4 months agoMITView on GitHub
Audit and repair Claude skills that misbehave. Use when a skill never triggers, triggers on the wrong requests, produces inconsistent outputs, has grown too long to maintain, or when the user shares a SKILL.md saying "it doesn't work", "audit this skill", "why doesn't my skill trigger", "clean up this skill". Also use to review a skill before publishing or installing it. Do NOT use for creating a new skill from scratch, for prompt writing unrelated to skills, or for simple text correction.
27 other projects use a version of this.
Adopted by
Most recently taken up by
- isalicema/skill-doctortheir own version, first seen Nov 8, 2026
- compozy/compozytheir own version, first seen Nov 7, 2026
- qiangjiyi/jiyi-skillstheir own version, first seen Nov 4, 2026
- arthjean/skillstheir own version, first seen Nov 1, 2026
- jongio/skillstheir own version, first seen Nov 1, 2026
- warpdotdev/common-skillstheir own version, first seen Oct 20, 2026
Used with
Projects with it also use herdr, diagnosing-bugs and 4 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
ninehillsSkillherdr
Control herdr from inside it. Manage workspaces and tabs, split panes, run commands, read output, and wait for state changes — all via CLI commands that talk to the running herdr instance over a local unix socket. Use when running inside herdr (HERDR_ENV=1).
Also in 3 projects that use this
GoogleSkilldiagnosing-bugs
Diagnosis loop for hard bugs and performance regressions. Use when the user says "diagnose"/"debug this", or reports something broken/throwing/failing/slow.
Also in 3 projects that use this
NVIDIASkillresearch
Before designing a feature, research how comparable libraries solve the problem, check best practices, known pitfalls, and upstream changes. Use when starting a new feature, investigating an unfamiliar area, or the user asks to research something.
Also in 4 projects that use this
SentrySkillsecurity-review
Finds exploitable application security vulnerabilities in code changes. Use for Warden security scans, appsec review, OWASP-style checks, authentication or authorization bugs, injection, XSS, SSRF, path traversal, secrets, unsafe crypto, webhook verification, open redirects, or sensitive data exposure.
Also in 3 projects that use this
GoogleSkillgrill-me
A relentless interview to sharpen a plan or design.
Also in 4 projects that use this
MicrosoftSkillhandoff
Compact the current conversation into a handoff document for another agent to pick up.
Also in 3 projects that use this
Other versions27 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 27
- nyldn/claude-octopus★ 4.4ksame name
- compozy/compozy★ 2.9ksame name
- dotCMS/core★ 971same name
- warpdotdev/common-skills★ 630same name
- mintuz/skills★ 33same name
- jongio/skills★ 18same name
- evilstar2016/skill-doctor★ 15same name
- Yassimba/loom★ 9same name
- IbrahimSobh/AISkills★ 7same name
- isalicema/skill-doctor★ 7same name
17 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
The file
We split this skill into the rules it gives an agent
7 rules. 0 are common, 4 are distinctive, and 3 are very specific to this project.
0
Common
Most of the 24 edited versions we read keep these.
4
Distinctive
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 17
When a skill "doesn't work", the cause is almost never the content — it's the structure.
- Very specific: line 22
Every sentence in a SKILL.md must change Claude's behavior.
- Distinctive: line 26
Use if: a skill misfires, under-triggers, over-triggers, drifts, or needs a pre-publication review.
- Distinctive: line 27
Do not use if: the user wants a brand-new skill built from scratch (that's creation, not repair — see Full toolkit note at the bottom).
- Very specific: line 39
Every file pointed to by SKILL.md must exist.
- Very specific: line 42
Read references/audit-grid.md and score each criterion 0–5: clarity, triggering, concision, reusability, testability, maintainability, …
- Distinctive: line 71
Every audit follows this order:
“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.
Files
Skill Doctor
Core principle
When a skill "doesn't work", the cause is almost never the content — it's the structure. Two failure modes explain ~90% of cases:
- Never triggers → the frontmatter description is generic. It's the only text Claude always sees; it must list exact trigger signals AND exclusions.
- Inconsistent outputs → the context is saturated. Everything loads on every use, the signal drowns. SKILL.md should stay under 500 lines; everything else belongs in
references/behind an explicit read condition.
Every sentence in a SKILL.md must change Claude's behavior. If it doesn't, it's noise — delete it.
When to use / not use
Use if: a skill misfires, under-triggers, over-triggers, drifts, or needs a pre-publication review. Do not use if: the user wants a brand-new skill built from scratch (that's creation, not repair — see Full toolkit note at the bottom).
Rule when information is missing
Make explicit assumptions, produce a first version, flag the assumptions. Ask at most 1–3 questions, and only if an assumption would be too risky. Never block.
Audit workflow
1. Read the whole skill
SKILL.md including frontmatter, plus every file in references/, templates/, scripts/. Never audit from the SKILL.md alone if other files exist.
2. Check promised vs. present
Every file pointed to by SKILL.md must exist. Phantom references silently degrade outputs — this is one of the most common defects in published skills.
3. Score against the 7-criteria grid
Read references/audit-grid.md and score each criterion 0–5: clarity, triggering, concision, reusability, testability, maintainability, robustness. Delivery threshold: 4/5 average.
4. Identify the dominant failure
Match symptoms to the anti-pattern table below. Name ONE dominant cause — a repair that fixes everything fixes nothing.
5. Produce the fix list, ranked by impact
Each fix: what to change, where, why it changes behavior.
6. Deliver the corrected version
Full corrected SKILL.md, not a diff. Preserve the author's intent and voice — repair the structure, not the project.
7. Test on 5 cases
Normal · vague · edge · missing info · out of scope (must NOT trigger). Binary verdict per case. Every failure becomes a rule, an example, or a constraint. Protocol details in references/audit-grid.md.
Anti-pattern table
| Symptom | Structural cause | Fix |
| Never triggers | Generic description, no signals | Rewrite description: keywords, request types, exclusions |
| Triggers on wrong requests | No exclusions in description | Add explicit "do NOT use for..." |
| Inconsistent outputs | SKILL.md overloaded (500+ lines) | Move bulk to references/ with read conditions |
| References never read | Files not pointed from SKILL.md, or no condition | Add pointer + "read X only if Y" |
| Claude rewrites code instead of running scripts | No exact call documented | Document: python scripts/x.py <args> |
| Install broken | Frontmatter name ≠ folder name | Align both |
| Output varies wildly between runs | No imposed output format | Add a numbered output format section |
| Skill fabricates when input is bad | No missing-info rule | Add the assumptions-first rule (see above) |
Imposed output format
Every audit follows this order:
- Quick diagnosis — solid / to simplify / structurally broken, in 3 lines
- Promised vs. present — list of phantom files, if any
- 7-criteria scores — table with one-line cause per score below 4
- Dominant failure — one named cause
- Fix list — ranked by impact
- Corrected SKILL.md — complete
- 5-case test plan — with expected verdicts
Resources
references/audit-grid.md— 7-criteria scoring grid + 5-case test protocol — read at steps 3 and 7templates/skill-md-template.md— clean SKILL.md skeleton — use when the corrected version needs restructuring from the ground up
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.

