Skill Creation & Validation
Create complete, well-structured Claude Code skills. Generates scaffolds, validates skill completeness, and ensures quality standards.
When to Use This Skill
- Creating a new skill from scratch
- Auditing existing skills for completeness
- Validating a skill before deployment
- Understanding skill best practices
- User asks "create skill", "new skill", or "validate skill"
Questions to Ask
- Skill category: Code-heavy, Auth, Config, Knowledge, or Orchestration?
- Core purpose: What problem does this skill solve? (1-2 sentences)
- Trigger words: What keywords should invoke this skill?
- Reference code: Will it include Dart templates, or just guides?
- Validation needs: What should the check script verify?
Quick Reference
Skill Categories
| Category |
Examples |
Focus |
| Code-Heavy |
domain, data, presentation |
Generate detailed code from specs |
| Auth |
auth, phone-auth, social-login |
Authentication with platform setup |
| Config |
release, ci-cd, analytics |
Platform configs and workflows |
| Knowledge |
design, i18n, testing, a11y |
Guidelines and patterns |
| Orchestration |
plan, init, feature-init |
Coordinate other skills |
Directory Structure
.claude/skills/{skill-name}/
├── SKILL.md # Main entry (<300 lines)
├── {topic}-guide.md # Detailed guides (reference/ for code)
├── templates/ # Platform configs (XML, YAML)
└── scripts/check.dart # Validation script
SKILL.md Requirements
| Section |
Required |
Purpose |
| YAML frontmatter |
YES |
name, description, allowed-tools |
| When to Use |
YES |
Clear trigger scenarios |
| Workflow |
YES |
Numbered implementation steps |
| Guides table |
YES |
Links to detailed content |
| Checklist |
YES |
Verification items |
| Related Skills |
YES |
Cross-references |
| Quick Reference |
Recommended |
Decision tables, key patterns |
Workflow
Phase 1: Define Skill
- Determine skill category and core purpose
- Identify trigger words for description
- List what the skill should NOT handle (delegate to other skills)
- Define expected outputs (files, code, configs)
Phase 2: Create Structure
# Create skill directory
mkdir -p .claude/skills/{skill-name}/{scripts,templates,reference}
# Validate structure
dart run .claude/skills/skill-create/scripts/validate.dart --skill {skill-name}
Phase 3: Write SKILL.md
Use template from templates/SKILL.md.template:
- Write frontmatter (name, description, allowed-tools)
- Add "When to Use" section with clear scenarios
- Define workflow with numbered steps
- Add guides table linking to detailed content
- Include checklist for verification
- Add "Related Skills" section
Phase 4: Create Supporting Files
Based on category:
Code-Heavy Skills:
reference/ - Full Dart implementations
scripts/check.dart - Validates generated code
Config Skills:
templates/ - Platform config files (XML, YAML, properties)
{topic}-guide.md - Setup instructions
scripts/check.dart - Validates config presence
Knowledge Skills:
{topic}-guide.md - Best practices and patterns
examples.md - Code examples
scripts/check.dart - Audits code for issues
Phase 5: Validate
# Run full validation
dart run .claude/skills/skill-create/scripts/validate.dart --skill {skill-name}
# Check specific aspects
dart run .claude/skills/skill-create/scripts/validate.dart --skill {skill-name} --check frontmatter
dart run .claude/skills/skill-create/scripts/validate.dart --skill {skill-name} --check structure
dart run .claude/skills/skill-create/scripts/validate.dart --skill {skill-name} --check references
Phase 6: Register
Update SKILL_STRUCTURE.md:
- Add to "Complete Skill Reference" table
- Add to skill flow diagrams
- Add to delegation rules if needed
Commands
dart run .claude/skills/skill-create/scripts/validate.dart --skill {name} # Validate
dart run .claude/skills/skill-create/scripts/validate.dart --all # Validate all
dart run .claude/skills/skill-create/scripts/validate.dart --list-checks # List checks
dart run .claude/skills/skill-create/scripts/validate.dart --skill {name} --report # Detailed
Quality Gates
A skill must pass these gates before deployment:
Gate 1: Structure (Required)
Gate 2: Content (Required)
Gate 3: Quality (Recommended)
Gate 4: Integration (Recommended)
See: quality-gates.md for detailed criteria.
Guides
| File |
Content |
| checklist.md |
Comprehensive skill creation checklist |
| quality-gates.md |
Detailed quality criteria |
| examples.md |
Well-structured skill examples |
Templates
| Template |
Purpose |
templates/SKILL.md.template |
Starting point for SKILL.md |
templates/check.dart.template |
Validation script scaffold |
templates/guide.md.template |
Guide file structure |
Anti-Patterns
| Pattern |
Problem |
Solution |
| Long SKILL.md |
500+ lines with code |
< 200 lines, move code to reference/ |
| Vague description |
"Helps with data stuff" |
Specific: "Generate DTOs, repositories..." |
| Missing delegation |
Inline i18n, testing, a11y |
Use "Run /i18n" in Next Steps |
| No validation |
No way to verify |
Add scripts/check.dart |
See: examples.md for well-structured skill examples.
Checklist
Structure:
Content:
Quality:
Integration:
Related Skills
- All skills - This skill helps create and validate them
- SKILL_STRUCTURE.md - Central documentation this skill supports
Next Steps
After creating a skill:
- Run
validate.dart --skill {name} to check quality gates
- Update SKILL_STRUCTURE.md to register the skill
- Test the skill with representative tasks
- Verify Claude finds reference files correctly
1---2name: skill-create3description: Create and validate Claude Code skills with proper structure, checklists, and validation scripts. Use when creating a new skill, auditing existing skills, or ensuring skills meet quality standards. Generates complete skill scaffolds with SKILL.md, check scripts, guides, and templates.4---56# Skill Creation & Validation78Create complete, well-structured Claude Code skills. Generates scaffolds, validates skill completeness, and ensures quality standards.910## When to Use This Skill1112- Creating a new skill from scratch13- Auditing existing skills for completeness14- Validating a skill before deployment15- Understanding skill best practices16- User asks "create skill", "new skill", or "validate skill"1718## Questions to Ask19201. **Skill category:** Code-heavy, Auth, Config, Knowledge, or Orchestration?212. **Core purpose:** What problem does this skill solve? (1-2 sentences)223. **Trigger words:** What keywords should invoke this skill?234. **Reference code:** Will it include Dart templates, or just guides?245. **Validation needs:** What should the check script verify?2526## Quick Reference2728### Skill Categories2930| Category | Examples | Focus |31|----------|----------|-------|32| **Code-Heavy** | domain, data, presentation | Generate detailed code from specs |33| **Auth** | auth, phone-auth, social-login | Authentication with platform setup |34| **Config** | release, ci-cd, analytics | Platform configs and workflows |35| **Knowledge** | design, i18n, testing, a11y | Guidelines and patterns |36| **Orchestration** | plan, init, feature-init | Coordinate other skills |3738### Directory Structure3940```41.claude/skills/{skill-name}/42├── SKILL.md # Main entry (<300 lines)43├── {topic}-guide.md # Detailed guides (reference/ for code)44├── templates/ # Platform configs (XML, YAML)45└── scripts/check.dart # Validation script46```4748### SKILL.md Requirements4950| Section | Required | Purpose |51|---------|----------|---------|52| YAML frontmatter | YES | name, description, allowed-tools |53| When to Use | YES | Clear trigger scenarios |54| Workflow | YES | Numbered implementation steps |55| Guides table | YES | Links to detailed content |56| Checklist | YES | Verification items |57| Related Skills | YES | Cross-references |58| Quick Reference | Recommended | Decision tables, key patterns |5960## Workflow6162### Phase 1: Define Skill63641. Determine skill category and core purpose652. Identify trigger words for description663. List what the skill should NOT handle (delegate to other skills)674. Define expected outputs (files, code, configs)6869### Phase 2: Create Structure7071```bash72# Create skill directory73mkdir -p .claude/skills/{skill-name}/{scripts,templates,reference}7475# Validate structure76dart run .claude/skills/skill-create/scripts/validate.dart --skill {skill-name}77```7879### Phase 3: Write SKILL.md8081Use template from `templates/SKILL.md.template`:82831. Write frontmatter (name, description, allowed-tools)842. Add "When to Use" section with clear scenarios853. Define workflow with numbered steps864. Add guides table linking to detailed content875. Include checklist for verification886. Add "Related Skills" section8990### Phase 4: Create Supporting Files9192Based on category:9394**Code-Heavy Skills:**95- `reference/` - Full Dart implementations96- `scripts/check.dart` - Validates generated code9798**Config Skills:**99- `templates/` - Platform config files (XML, YAML, properties)100- `{topic}-guide.md` - Setup instructions101- `scripts/check.dart` - Validates config presence102103**Knowledge Skills:**104- `{topic}-guide.md` - Best practices and patterns105- `examples.md` - Code examples106- `scripts/check.dart` - Audits code for issues107108### Phase 5: Validate109110```bash111# Run full validation112dart run .claude/skills/skill-create/scripts/validate.dart --skill {skill-name}113114# Check specific aspects115dart run .claude/skills/skill-create/scripts/validate.dart --skill {skill-name} --check frontmatter116dart run .claude/skills/skill-create/scripts/validate.dart --skill {skill-name} --check structure117dart run .claude/skills/skill-create/scripts/validate.dart --skill {skill-name} --check references118```119120### Phase 6: Register121122Update `SKILL_STRUCTURE.md`:1231. Add to "Complete Skill Reference" table1242. Add to skill flow diagrams1253. Add to delegation rules if needed126127## Commands128129```bash130dart run .claude/skills/skill-create/scripts/validate.dart --skill {name} # Validate131dart run .claude/skills/skill-create/scripts/validate.dart --all # Validate all132dart run .claude/skills/skill-create/scripts/validate.dart --list-checks # List checks133dart run .claude/skills/skill-create/scripts/validate.dart --skill {name} --report # Detailed134```135136## Quality Gates137138A skill must pass these gates before deployment:139140### Gate 1: Structure (Required)141142- [ ] SKILL.md exists143- [ ] SKILL.md < 300 lines144- [ ] Valid YAML frontmatter145- [ ] Required sections present146147### Gate 2: Content (Required)148149- [ ] Description < 1024 chars150- [ ] Description in third person151- [ ] Workflow has numbered steps152- [ ] Checklist has > 3 items153- [ ] All internal links resolve154155### Gate 3: Quality (Recommended)156157- [ ] No code blocks > 10 lines in SKILL.md158- [ ] Reference files have header comments159- [ ] Check script exists and runs160- [ ] Related Skills section accurate161162### Gate 4: Integration (Recommended)163164- [ ] Registered in SKILL_STRUCTURE.md165- [ ] Cross-references to/from other skills accurate166- [ ] No duplicate functionality with existing skills167168**See:** [quality-gates.md](quality-gates.md) for detailed criteria.169170## Guides171172| File | Content |173|------|---------|174| [checklist.md](checklist.md) | Comprehensive skill creation checklist |175| [quality-gates.md](quality-gates.md) | Detailed quality criteria |176| [examples.md](examples.md) | Well-structured skill examples |177178## Templates179180| Template | Purpose |181|----------|---------|182| `templates/SKILL.md.template` | Starting point for SKILL.md |183| `templates/check.dart.template` | Validation script scaffold |184| `templates/guide.md.template` | Guide file structure |185186## Anti-Patterns187188| Pattern | Problem | Solution |189|---------|---------|----------|190| Long SKILL.md | 500+ lines with code | < 200 lines, move code to `reference/` |191| Vague description | "Helps with data stuff" | Specific: "Generate DTOs, repositories..." |192| Missing delegation | Inline i18n, testing, a11y | Use "Run /i18n" in Next Steps |193| No validation | No way to verify | Add `scripts/check.dart` |194195**See:** [examples.md](examples.md) for well-structured skill examples.196197## Checklist198199**Structure:**200- [ ] Directory follows standard structure201- [ ] SKILL.md exists with valid frontmatter202- [ ] SKILL.md < 300 lines (ideally < 200)203- [ ] All internal links resolve204205**Content:**206- [ ] "When to Use" section with clear scenarios207- [ ] Workflow with numbered steps208- [ ] Guides table with linked files209- [ ] Checklist with verification items210- [ ] Related Skills section211212**Quality:**213- [ ] Description in third person214- [ ] Description includes trigger words215- [ ] No code blocks > 10 lines in SKILL.md216- [ ] Reference files have header comments217- [ ] Check script validates key requirements218219**Integration:**220- [ ] Added to SKILL_STRUCTURE.md skill table221- [ ] Added to skill flow diagrams222- [ ] Cross-references accurate223- [ ] Delegation rules documented224225## Related Skills226227- All skills - This skill helps create and validate them228- SKILL_STRUCTURE.md - Central documentation this skill supports229230## Next Steps231232After creating a skill:2331. Run `validate.dart --skill {name}` to check quality gates2342. Update SKILL_STRUCTURE.md to register the skill2353. Test the skill with representative tasks2364. Verify Claude finds reference files correctly