skill-improver
Iteratively reviews and fixes Claude Code skill quality issues until they meet standards.
Triggers
- "fix my skill"
- "improve skill quality"
- "skill improvement loop"
- "iteratively refine a skill"
When to Use
- Improving a skill with multiple quality issues
- Iterating on a new skill until it meets standards
- Automated fix-review cycles instead of manual editing
- Consistent quality enforcement across skills
When NOT to Use
- One-time review: Use
/skill-reviewerdirectly instead - Quick single fixes: Edit the file directly
- Non-skill files: Only works on SKILL.md files
- Experimental skills: Manual iteration gives more control during exploration
Core Loop
- Review - Call skill-reviewer on the target skill
- Categorize - Parse issues by severity
- Fix - Address critical and major issues
- Evaluate - Check minor issues for validity before fixing
- Repeat - Continue until quality bar is met
Issue Categorization
Critical Issues (MUST fix immediately)
These block skill loading or cause runtime failures:
- Missing required frontmatter fields (name, description)
- Invalid YAML frontmatter syntax
- Referenced files that don't exist
- Broken file paths
- Invalid
allowed-toolsvalues - Invalid
modelvalue - Invalid
effortvalue - Invalid
contextvalue agentfield set withoutcontext: fork
Major Issues (MUST fix)
These significantly degrade skill effectiveness:
- Weak or vague trigger descriptions
- Wrong writing voice (second person "you" instead of imperative)
- SKILL.md exceeds 500 lines without using references/
- Missing "When to Use" or "When NOT to Use" sections
- Description doesn't specify when to trigger
- Missing
allowed-tools argument-hintset but$ARGUMENTSnot used in body- Referenced supporting files don't exist
- Non-standard frontmatter fields
Minor Issues (Evaluate before fixing)
These are polish items that may or may not improve the skill:
- Subjective style preferences
- Optional enhancements
- "Nice to have" improvements
- Formatting suggestions
Frontmatter Validation Checklist
| Field | Valid Values | Notes |
|---|---|---|
name | lowercase, numbers, hyphens (max 64) | Uses dir name if omitted |
description | string | Should include trigger phrases |
allowed-tools | Claude Code tool names | Comma-separated or YAML list |
argument-hint | string | Shown in autocomplete |
disable-model-invocation | true/false | Prevents Claude auto-trigger |
user-invocable | true/false | Hides from / menu |
context | fork | Runs in isolated subagent |
agent | Explore, Plan, general-purpose, or custom | Requires context: fork |
model | sonnet, opus, haiku, full model ID | Override model |
effort | low, medium, high, max | Override effort |
hooks | Hook config object | Lifecycle hooks |
Completion Criteria
The improvement loop completes when:
- skill-reviewer reports "Pass" or no issues found
- All critical and major issues are fixed and verified
- Remaining issues are only minor and evaluated as false positives