SKILL: Documentation Best Practices
Purpose: Apply Claude Code documentation standards based on Superpowers reference Target: Anyone creating CLAUDE.md, commands, skills, guides, or agents
Quick Start
When to Use This Skill
- •Creating new documentation (CLAUDE.md, command, skill, agent)
- •Reviewing existing documentation for quality
- •Restructuring documentation to follow best practices
Quick Reference
| File Type | Target | Max | Action When Exceeded |
|---|---|---|---|
| SKILL.md | 150 | 200 (official: 500) | >300 → Create REFERENCE.md |
| Agent | 250 | 300 | >450 → Simplify required |
| Command | 150 | 200 | >300 → Extract to guide |
| CONTEXT.md | 150 | 200 | >300 → Simplify required |
| REFERENCE.md | 250 | 300 | Split into multiple files |
Note: Claude Code officially recommends ≤500 lines for SKILL.md. This project uses a stricter 200-line internal standard for token optimization and context efficiency.
What This Skill Covers
In Scope
- •File size targets based on Superpowers standards
- •Frontmatter standards for auto-discovery
- •SKILL.md/REFERENCE.md separation pattern
- •Agent model allocation
Out of Scope
- •Test writing → @.claude/skills/tdd/SKILL.md
- •Code quality → @.claude/skills/vibe-coding/SKILL.md
- •Git workflow → @.claude/skills/git-master/SKILL.md
Core Concepts
Superpowers Standard
"The context window is a public good. Skills share the context window with everything else Claude needs."
Baseline: SKILL.md <600 words (~150-200 lines)
Frontmatter Standards
Skills (required):
---
name: {skill-name}
description: {trigger-rich description for semantic matching}
---
Commands (auto-discovery):
---
description: {action-rich description for slash command discovery}
---
Agents (required):
---
name: {agent-name}
description: {clear purpose statement}
model: {haiku|sonnet|opus}
tools: [tool list]
skills: [skill list]
---
SKILL.md/REFERENCE.md Pattern
SKILL.md (≤200 lines):
- •Quick Start (when to use, quick reference)
- •Core Concepts (essential patterns)
- •Further Reading (link to REFERENCE.md)
REFERENCE.md (≤300 lines):
- •Detailed examples
- •Good/bad patterns
- •Troubleshooting
- •External references
Agent Model Allocation
| Model | Agents | Purpose |
|---|---|---|
| Haiku | explorer, researcher, validator, documenter | Fast, cost-efficient |
| Sonnet | coder, tester, plan-reviewer | Balanced quality/speed |
| Opus | code-reviewer | Deep reasoning |
3-Tier Documentation
- •Tier 1:
CLAUDE.md- Project standards (400+ lines) - •Tier 2:
{folder}/CONTEXT.md- Component architecture (≤200 lines) - •Tier 3:
{feature}/CONTEXT.md- Feature implementation (≤200 lines)
Documentation Quality Checklist
Structure
- • Clear purpose statement
- • Quick reference table
- • Standard sections
- • Cross-references
Discoverability
- • Frontmatter complete
- • Description is trigger-rich
- • CONTEXT.md for navigation
Maintainability
- • Within size limits
- • No duplicated content
- • Examples provided
Common Mistakes Checklist
Metadata Errors
- • Outdated line counts: CONTEXT.md line values don't match actual files
- • Stale skill counts: README.md lists wrong number of skills (use
ls .claude/skills | wc -l) - • Version number drift: CLAUDE.md version differs from package.json or other sources
- • Missing frontmatter: SKILL.md or Agent files lack required name/description fields
Cross-Reference Errors
- • Broken links:
@.claude/path/to/file.mdpoints to non-existent file - • Relative paths: Using
../skills/instead of@.claude/skills/ - • Deleted file references: Documentation still mentions removed systems (e.g., Sisyphus after removal)
- • Wrong file extensions: Linking to
.tsinstead of.mdfor documentation
Content Errors
- • Duplicate content: Same info appears in CLAUDE.md and CONTEXT.md
- • Wrong tier: Implementation details in CLAUDE.md instead of docs/ai-context/
- • Missing examples: Abstract concepts without concrete usage examples
- • Over-sized files: SKILL.md >200 lines without split to REFERENCE.md
Recovery Actions
- •Before commit: Invoke docs-verify skill
- •On verification failure: Check error message, locate file, apply fix, re-verify
- •For line count violations: Extract content to REFERENCE.md or docs/ai-context/
- •For broken links: Verify file exists with
test -f {path}, use absolute paths
Further Reading
Internal: @.claude/skills/documentation-best-practices/REFERENCE.md - Detailed examples, good/bad patterns, external links | @.claude/skills/coding-standards/SKILL.md - Official directory structure | @.claude/skills/three-tier-docs/SKILL.md - Complete 3-Tier system
External: Claude Code Skills Documentation | Claude Code Memory Documentation | Claude Code Best Practices - Anthropic | Superpowers - obra/superpowers