This document describes the ADD framework skills system, enabling native Claude Code integration with progressive context disclosure and subagent support.
The original ADD integration used a 24KB megaprompt loaded every conversation. It worked, but wasted context on overhead.
The skills-first architecture reduces base load by 94%:
| Approach | Base Load | On-Demand |
|---|---|---|
| Megaprompt (legacy) | ~26KB always | None |
| Skills (current) | ~1.5KB | ~2KB per skill when needed |
The ADD skills system provides:
- Progressive disclosure - Load only relevant ADD context when needed
- Model-invocable automation - Claude automatically maintains flow status
- User-invocable commands - Explicit control via
/add-status,/add-reflect - Subagent integration - Isolated context for reflection and memory
.claude/skills/
├── add-flow-check/SKILL.md # Model-invocable: automatic status updates
├── add-status/SKILL.md # User-invocable: /add-status command
├── add-reflect/SKILL.md # Both: session reflection with forked context
├── add-assess/SKILL.md # Model-invocable: Assess realm support
├── add-decide/SKILL.md # Model-invocable: Decide realm support
├── add-do/SKILL.md # Model-invocable: Do realm support
└── add-imbalance/SKILL.md # Model-invocable: imbalance detection
Note: Skills use the nested format (skill-name/SKILL.md) for consistency with Claude Code conventions. These skills are maintained in a separate repository and integrated here.
Display current ADD flow status and session metrics.
Usage:
/add-status
Output:
[ADD Flow: 🟠? Decide | Narrowing phase - 3 options to 1 finalist]
Session Metrics:
- Exchanges this session: 12
- Realm transitions: 3
- Time in current realm: 4 exchanges
- Flow quality: Balanced
Trigger session reflection. Spawns a subagent with forked context to analyze patterns and save to history.
Usage:
/add-reflect
Output:
Session reflection captured.
Quick summary:
- Flow quality: Balanced
- Realm focus: Assess-heavy (exploration phase)
- Key insight: Thorough foundation built for upcoming decisions
Full reflection saved to .add-session-history.md
History File:
Reflections are appended to .add-session-history.md for long-term pattern awareness.
These skills are automatically invoked by Claude when relevant.
Automatically monitors conversation for realm patterns and updates .add-status file at natural boundaries.
Triggers:
- Realm transitions
- Significant pattern shifts
- Completion events
- Every 5-7 exchanges (ambient awareness)
Effect:
Updates .add-status silently, enabling the statusline display.
Loaded when Claude needs deep support for a specific realm. Provides:
- Detailed realm definition
- Language patterns for detection
- Response strategies
- Imbalance handling specific to realm
Benefit: Progressive disclosure - full realm guidance loads only when needed, preserving context window.
Loaded when stuck patterns are detected. Provides:
- Five imbalance patterns with detailed recognition
- Support strategies for each
- Intervention principles
- Tone guidelines
The reflect skill uses context: fork to:
- Preserve full conversation history
- Analyze session in isolated context
- Generate structured reflection
- Save to history file
- Return brief summary to main conversation
Why fork? Reflection analysis doesn't belong in main context - it would pollute the working conversation with meta-analysis.
Skills can specify agent: Explore for research-heavy tasks. Potential use:
- Deep exploration during Assess realm
- Codebase analysis without context pollution
- Return synthesized findings
Skills are active when placed in .claude/skills/ directory. No additional configuration needed.
Each skill can specify:
model-invocable: true/false # Claude can invoke automatically
user-invocable: true/false # User can invoke with /commandSkills can reference other files for progressive context:
@docs/ADD_FRAMEWORK_MEGAPROMPT_USER_CONTEXT.md
@docs/ADD_FLOW_STATUS_EXTENSION.mdCLAUDE.md loads → Full 24KB via @ references
Every conversation → ~26KB context overhead
Status updates → Claude "remembers" to do it
Reflection → Clutters main context
User control → Natural language only
CLAUDE.md loads → ~1.5KB core awareness
Conversation start → Minimal overhead
Realm support → Load ~2KB skill when needed
Status updates → Model-invocable, automatic
Reflection → Forked context, isolated
User control → Explicit commands + natural language
Benefits:
- 94% reduction in base context overhead
- Automatic flow maintenance
- Clean separation of concerns
- Subagent isolation for meta-work
- Explicit user commands alongside natural language
| File | Purpose | Type |
|---|---|---|
.add-status |
Current session state | Auto-generated |
.add-session-history.md |
Reflection history | Append-only |
.claude/statusline.sh |
Visual display script | Template |
.claude/settings.json |
Statusline config | Template |
No migration needed. Existing setups continue working:
CLAUDE.mdstill loads core framework awareness- Skills add capabilities on top
- Gradual adoption possible
Recommended path:
- Add skills directory (done if you have this repo)
- Test
/add-statuscommand - Observe automatic status updates
- Use
/add-reflectat session ends
Ensure files are in .claude/skills/ with .md extension.
Check that add-flow-check.md is present and has model-invocable: true.
Verify write permissions in project directory for .add-session-history.md.
Skills provide progressive disclosure - context loads when needed. Heavy assessment work may still load full realm guidance temporarily.
The skills system embodies ADD principles:
- Assess (Skills Architecture): Explore what's needed before loading
- Decide (Invocability): Choose what Claude can invoke vs. user control
- Do (Execution): Clean, focused execution with minimal overhead
Skills are ADD applied to ADD integration itself.