TODO-Based Execution Plan Architecture
Status: π’ In-use Category: Features & Enhancements Date: November 5, 2025
Overviewβ
The Platform Engineer now uses TODO lists as execution plans instead of text-based execution plans with β¦...β§ markers. This solves the "execution plan without tool calls" problem and provides better UX.
Benefitsβ
1. Forces Tool Executionβ
- Agent MUST call
write_todosfirst - Can't complete without calling tools
- Eliminates "execution plan β completion without tools" bug
2. Single Source of Truthβ
- TODO list IS the execution plan
- No redundant content
- Clear, structured workflow
3. Better UXβ
- Interactive checklist with live status updates
- Clear icons (π in-progress, βΈοΈ pending, β completed)
- Real-time progress tracking
- Execution plan stays in dedicated pane (not cluttering chat)
- Status updates in-place (no duplicate messages)
- Clean separation: Plan in one pane, results in another
4. Clean Content Separationβ
- Execution Plan Pane: Shows TODO list, updates in-place
- Main Response Pane: Shows actual agent work and results
- No confusion: User sees plan progress AND actual content clearly
5. Backward Compatibleβ
- Clients receive
execution_plan_updateartifact (same as before) - New
execution_plan_status_updateartifact for in-place updates - agent-chat-cli updated to handle both
- agent-forge will need similar update (trivial)
Testing Strategyβ
Restart the platform engineer and test with:
docker compose -f docker-compose.dev.yaml --profile p2p-no-rag restart platform-engineer-p2p
Try queries like:
- "show PRs in cnoe-io/ai-platform-engineering"
- "check argocd version"
- "get recent alerts from komodor"
You should see:
- TODO checklist appears immediately as execution plan
- Agent executes tasks right away (no completion without tools)
- TODO status updates as work progresses
- Final synthesis with results
Relatedβ
- Architecture: architecture.md