coaia-planning: Plan Decomposition to STCs
Emergence Context
From session e3991fb4-dcf1-4e36-885c-3a5131564d6c exploring Keeper Chronicles MCP integration.
The Pattern
``` coaia-narrative β STC creation/management (MCP tools) coaia-visualizer β STC viewing/editing (WebUI) coaia-planning β Plan decomposition into STCs (Claude integration) ```
Core Function
Transform Claude plan files (.md) into structural tension chart JSONL compatible with coaia-narrative.
Input β Output
``` Input: /home/mia/.claude/plans/<plan-name>.md Output: <project>-planning.jsonl (coaia-narrative format) Trace: Langfuse observation with planβSTC mapping ```
Mapping Rules
| Plan Element | STC Element | Notes |
|---|---|---|
| Episode/Phase | structural_tension_chart entity | One chart per major section |
| Goal/Objective | desired_outcome entity | Extract from headers/bullets |
| Current state | current_reality entity | Framework's current evolution |
| Implementation steps | action_step entities | Key tasks with due dates |
| Dependencies | Relations (advances_toward) | Cross-chart connections |
MCP Tool Candidates
```typescript // Core tools parse_claude_plan // Read .md plan, extract structure create_plan_stc // Generate STC from plan section list_plan_sections // Navigate plan structure sync_plan_to_charts // Update existing charts from plan changes
// Integration tools export_to_visualizer // Generate coaia-visualizer compatible output create_langfuse_trace // Document planβSTC transformation ```
miette Integration
Replaces manual work in miette_claude_plan_perspective_claude.sh:
- Current: Script parses plan, creates temp prompt, launches Claude agent
- With coaia-planning: Direct MCP calls to decompose plan
Architecture Sketch
``` βββββββββββββββββββββββββββββββββββββββββββββββββββββββ β Claude Session β βββββββββββββββββββββββββββββββββββββββββββββββββββββββ€ β β β ββββββββββββββββ ββββββββββββββββββββ β β β Claude Plan βββββΊβ coaia-planning β β β β (.md file) β β (MCP) β β β ββββββββββββββββ ββββββββββ¬ββββββββββ β β β β β βββββββββββββββββββββββΌββββββββββββββββββ β β βΌ βΌ βΌ β β ββββββββββββββββ ββββββββββββββββ βββββββββββ β βcoaia-narrativeβ β Langfuse β β Redis ββ β β (.jsonl) β β (traces) β β(state) ββ β ββββββββββββββββ ββββββββββββββββ βββββββββββ β β β β βΌ β β ββββββββββββββββ β β βcoaia-visualizer β β β (WebUI) β β β ββββββββββββββββ β β β βββββββββββββββββββββββββββββββββββββββββββββββββββββββ ```
Next Steps
- Create coaia-planning package structure (mirror coaia-narrative)
- Implement plan parsing logic (markdown β sections)
- Define STC generation rules
- Add Langfuse integration
- Test with proud-watching-sutton.md
Related Files
/src/coaia-narrative/index.ts- Reference implementation/src/coaia-visualizer/lib/types.ts- Type definitions to extend/src/miette/claude-plan-insights/miette_claude_plan_perspective_claude.sh- Manual workflow to formalize