skill-improver
Skill1 starsChanged 11 days agoMITView on GitHub
Analyze failing eval cases and propose improvements. Reads eval results, identifies failure patterns, outputs a diff. Do NOT auto-apply. Do NOT use for creating new skills.
We split this skill into the rules it gives an agent
6 rules. 0 are common, 4 are distinctive, and 2 are very specific to this project.
0
Common
Most of the 19 edited versions we read keep these.
4
Distinctive
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 50
Run the eval suites to identify failures:
- Very specific: line 58
Read the failing cases from skills/<name>/evals/.
- Very specific: line 73
Read the skill's SKILL.md and its current evals to understand the current state.
- Distinctive: line 128
If user says "yes", write the proposed changes.
- Distinctive: line 129
If user says "no" or requests changes, iterate.
- Distinctive: line 130
Never auto-apply without explicit approval.
“Common” is measured: kept by at least 6 in 10 of the 19 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 Improver
Diagnose eval failures and propose targeted improvements.
→ See guides/DIAGNOSIS-GUIDE.md for failure pattern diagnosis.
→ See guides/OUTPUT-GUIDE.md for diff format and review rules.
Complementary to skill-creator. Where skill-creator generates new skills,
skill-improver diagnoses and fixes existing ones. The human always reviews
before applying — this skill never auto-commits changes.
When to Use
run-evals.shshows trigger failures for a skillrun-golden.shshows output quality issuesrun-adversarial.shshows robustness gaps- A skill's description is too narrow or too broad
- Eval coverage is partial and needs expansion
Output Contract
| Artifact | Format | Location | Quality Criteria |
| Skill improvement diff | Diff proposal + applied changes (SKILL.md edits, eval additions, references/ moves) | skills/<name>/SKILL.md + skills/<name>/evals/ | Failure pattern classified (trigger/execution/budget/coverage/adversarial), diff proposed before changes, user explicitly approved before applying, SKILL.md stays ≤250 lines, no eval cases modified (skill fixed instead) |
When NOT to Use
- Creating a new skill (use
skill-creator) - The skill has no eval cases yet (add them first)
- The fix is obvious (just edit the SKILL.md)
- The eval failure is from a bug in the eval case itself
Workflow
Step 1: Load Failing Evals
Run the eval suites to identify failures:
bash scripts/eval/run-evals.sh --skill <name>
bash scripts/eval/run-golden.sh --skill <name>
bash scripts/eval/run-adversarial.sh --skill <name>Read the failing cases from skills/<name>/evals/.
Step 2: Classify Failure Pattern
| Pattern | Symptom | Typical Fix |
| Trigger failure | trigger_positive fails, expected_skill doesn't match | Adjust description: add trigger keywords, fix anti-triggers |
| Trigger overmatch | trigger_negative fails, skill activates when it shouldn't | Add "Do NOT use" clauses, narrow the description |
| Execution failure | golden.jsonl rubric criteria not met | Expand workflow, add missing steps, improve examples |
| Token budget failure | SKILL.md > 250 lines or > 1250 words | Move content to references/ directory |
| Coverage gap | Missing evals/trigger.jsonl or evals/golden.jsonl | Generate missing eval cases |
| Adversarial gap | No rephrasing or boundary tests | Add adversarial.jsonl |
Step 3: Read SKILL.md
Read the skill's SKILL.md and its current evals to understand the current state.
Step 4: Propose Fixes
For each failure pattern, produce a specific diff proposal:
Trigger failure example:
--- current description
+++ proposed description
-"Use when checking file sizes"
+"Use when checking file sizes, analyzing disk usage, or reporting storage quotas.
+ Do NOT use for network bandwidth monitoring."Token budget example:
--- Move to references/
+references/deep-workflow.md
(SKILL.md shrinks from 280 to 210 lines)Coverage gap example:
--- Missing
+evals/adversarial.jsonl:
+{"case_id":"rephrase_001","type":"rephrasing","input":"..."}Step 5: Present Diff to User
Format the output as a clear diff:
╔════════════════════════════════════════════╗
║ SKILL IMPROVER — proposal for <skill> ║
╚════════════════════════════════════════════╝
Diagnosis: 2 trigger failures + 1 coverage gap
Severity: MEDIUM
Changes proposed:
1. [TRIGGER] Description too narrow
Add keywords: "disk usage", "storage quotas"
--- current: "Use when checking file sizes"
+++ proposed: "Use when checking file sizes, ..."
2. [COVERAGE] Missing adversarial.jsonl
Create with 2 cases (1 rephrase, 1 boundary)
→ Apply these changes? (Type "yes" to apply, or request changes)Step 6: Apply (Only if User Approves)
If user says "yes", write the proposed changes. If user says "no" or requests changes, iterate. Never auto-apply without explicit approval.
Examples
Scenario: run-evals.sh --skill interview-me shows 2 trigger_positive failures
Diagnosis: Description only mentions "interview", but users ask "grill me", "are we sure?"
Proposed fix:
--- Add trigger keywords
+"Triggers on: 'interview me', 'grill me', 'are we sure?', 'stress-test my thinking'"Anti-Patterns
- Auto-applying changes without user approval → violates Rule 12
- Expanding SKILL.md beyond 250 lines → move to references/ instead
- Fixing eval cases instead of fixing the skill → the skill should pass, not the test
- Suggesting changes without reading the current SKILL.md first
- Over-engineering the description for a single failing edge case
References
scripts/eval/run-evals.sh— trigger test runnerscripts/eval/run-golden.sh— golden dataset runnerscripts/eval/run-adversarial.sh— adversarial test runnerscripts/eval/trigger-dashboard.sh— trigger accuracy dashboard (flags skills <90%)scripts/eval/run-regression.sh— regression test suite (detects regressions)scripts/eval/run-llm-judge.sh— LLM-as-Judge output quality evaluationscripts/skill-lint.sh— structural validationdocs/EVAL-GUIDE.md— complete eval system documentation (format, tiers, coverage, advanced)skills/skill-creator/— for creating skills from scratchPLAN.md— project roadmap and current phase plan
Other versions19 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 19
- Galaxy-Dawn/claude-scholar★ 5.9ksame name
- Heyvhuang/ship-faster★ 337same name
- fjrevoredo/mini-diarium★ 310same name
- ribeirogab/zeno-agent★ 9same name
- air-gapped/skills★ 5same name
- exiao/meta-skills★ 4same name
- AlvaroVFon/skills★ 2same name
- karozi/awesome-product-management-skills★ 2same name
- LiozShor/claude-code-skills★ 2same name
- prPMDev/my-portfolio-kit★ 2same name
9 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.
In this repository59 other files it gives its agents.
- AGENTS.mdAGENTS.md
- templates/CLAUDE.mdCLAUDE.md
- adapt-skillSkill
- api-and-interface-designSkill
- architecture-analysisSkill
- audit-skillSkill
- backend-api-masterySkill
- browser-testing-with-devtoolsSkill
- ci-cd-and-automationSkill
- clarify-skillSkill
- cli-toolsSkill
- code-review-and-qualitySkill
- code-simplificationSkill
- context-engineeringSkill
- critique-skillSkill
- customize-opencodeSkill
- debugging-and-error-recoverySkill
- debugging-three-strikesSkill
- delight-skillSkill
- deprecation-and-migrationSkill
- dev-environment-auditSkill
- documentation-and-adrsSkill
- doubt-driven-developmentSkill
- engineering-fundamentalsSkill
- frontend-desktopSkill
- frontend-mobileSkill
- frontend-pwaSkill
- frontend-ui-engineeringSkill
- frontend-webSkill
- fullstack-shippingSkill
- gateSkill
- git-init-and-versioningSkill
- git-workflow-and-versioningSkill
- hard-skillSkill
- idea-refineSkill
- incremental-implementationSkill
- industrial-brutalist-uiSkill
- interview-meSkill
- minimalist-uiSkill
- multi-agent-orchestrationSkill
- observability-and-instrumentationSkill
- optimize-skillSkill
- output-skillSkill
- performance-optimizationSkill
- planning-and-task-breakdownSkill
- polish-skillSkill
- project-health-checkSkill
- project-metricsSkill
- redesign-skillSkill
- security-and-hardeningSkill
- self-improvementSkill
- shipping-and-launchSkill
- skill-creatorSkill
- soft-premium-uiSkill
- source-driven-developmentSkill
- spec-driven-developmentSkill
- test-driven-developmentSkill
- typeset-skillSkill
- user-onboardingSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
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.

