- Updated all references from `/workflow:action-plan-verify` to `/workflow:plan-verify` across various documentation and command files. - Introduced a new command file for `/workflow:plan-verify` that performs read-only verification analysis on planning artifacts. - Adjusted command relationships and help documentation to reflect the new command structure. - Ensured consistency in command usage throughout the workflow guide and getting started documentation.
23 KiB
name, description, argument-hint, allowed-tools
| name | description | argument-hint | allowed-tools |
|---|---|---|---|
| plan | 5-phase planning workflow with action-planning-agent task generation, outputs IMPL_PLAN.md and task JSONs | [-y|--yes] "text description"|file.md | SlashCommand(*), TodoWrite(*), Read(*), Bash(*) |
Auto Mode
When --yes or -y: Auto-continue all phases (skip confirmations), use recommended conflict resolutions.
Workflow Plan Command (/workflow:plan)
Coordinator Role
This command is a pure orchestrator: Execute 5 slash commands in sequence (including a quality gate), parse their outputs, pass context between them, and ensure complete execution through automatic continuation.
Execution Model - Auto-Continue Workflow with Quality Gate:
This workflow runs fully autonomously once triggered. Phase 3 (conflict resolution) and Phase 4 (task generation) are delegated to specialized agents.
- User triggers:
/workflow:plan "task" - Phase 1 executes → Session discovery → Auto-continues
- Phase 2 executes → Context gathering → Auto-continues
- Phase 3 executes (optional, if conflict_risk ≥ medium) → Conflict resolution → Auto-continues
- Phase 4 executes → Task generation (task-generate-agent) → Reports final summary
Task Attachment Model:
- SlashCommand execute expands workflow by attaching sub-tasks to current TodoWrite
- When a sub-command is executed (e.g.,
/workflow:tools:context-gather), its internal tasks are attached to the orchestrator's TodoWrite - Orchestrator executes these attached tasks sequentially
- After completion, attached tasks are collapsed back to high-level phase summary
- This is task expansion, not external delegation
Auto-Continue Mechanism:
- TodoList tracks current phase status and dynamically manages task attachment/collapse
- When each phase finishes executing, automatically execute next pending phase
- All phases run autonomously without user interaction (clarification handled in brainstorm phase)
- Progress updates shown at each phase for visibility
- ⚠️ CONTINUOUS EXECUTION - Do not stop until all phases complete
Core Rules
- Start Immediately: First action is TodoWrite initialization, second action is Phase 1 command execution
- No Preliminary Analysis: Do not read files, analyze structure, or gather context before Phase 1
- Parse Every Output: Extract required data from each command/agent output for next phase
- Auto-Continue via TodoList: Check TodoList status to execute next pending phase automatically
- Track Progress: Update TodoWrite dynamically with task attachment/collapse pattern
- Task Attachment Model: SlashCommand execute attaches sub-tasks to current workflow. Orchestrator executes these attached tasks itself, then collapses them after completion
- ⚠️ CRITICAL: DO NOT STOP: Continuous multi-phase workflow. After executing all attached tasks, immediately collapse them and execute next phase
Execution Process
Input Parsing:
└─ Convert user input to structured format (GOAL/SCOPE/CONTEXT)
Phase 1: Session Discovery
└─ /workflow:session:start --auto "structured-description"
└─ Output: sessionId (WFS-xxx)
Phase 2: Context Gathering
└─ /workflow:tools:context-gather --session sessionId "structured-description"
├─ Tasks attached: Analyze structure → Identify integration → Generate package
└─ Output: contextPath + conflict_risk
Phase 3: Conflict Resolution
└─ Decision (conflict_risk check):
├─ conflict_risk ≥ medium → Execute /workflow:tools:conflict-resolution
│ ├─ Tasks attached: Detect conflicts → Present to user → Apply strategies
│ └─ Output: Modified brainstorm artifacts
└─ conflict_risk < medium → Skip to Phase 4
Phase 4: Task Generation
└─ /workflow:tools:task-generate-agent --session sessionId
└─ Output: IMPL_PLAN.md, task JSONs, TODO_LIST.md
Return:
└─ Summary with recommended next steps
5-Phase Execution
Phase 1: Session Discovery
Step 1.1: Execute - Create or discover workflow session
SlashCommand(command="/workflow:session:start --auto \"[structured-task-description]\"")
Task Description Structure:
GOAL: [Clear, concise objective]
SCOPE: [What's included/excluded]
CONTEXT: [Relevant background or constraints]
Example:
GOAL: Build JWT-based authentication system
SCOPE: User registration, login, token validation
CONTEXT: Existing user database schema, REST API endpoints
Parse Output:
- Extract:
SESSION_ID: WFS-[id](store assessionId)
Validation:
- Session ID successfully extracted
- Session directory
.workflow/active/[sessionId]/exists
Note: Session directory contains workflow-session.json (metadata). Do NOT look for manifest.json here - it only exists in .workflow/archives/ for archived sessions.
TodoWrite: Mark phase 1 completed, phase 2 in_progress
After Phase 1: Return to user showing Phase 1 results, then auto-continue to Phase 2
Phase 2: Context Gathering
Step 2.1: Execute - Gather project context and analyze codebase
SlashCommand(command="/workflow:tools:context-gather --session [sessionId] \"[structured-task-description]\"")
Use Same Structured Description: Pass the same structured format from Phase 1
Input: sessionId from Phase 1
Parse Output:
- Extract: context-package.json path (store as
contextPath) - Typical pattern:
.workflow/active/[sessionId]/.process/context-package.json
Validation:
- Context package path extracted
- File exists and is valid JSON
TodoWrite Update (Phase 2 SlashCommand executed - tasks attached):
[
{"content": "Phase 1: Session Discovery", "status": "completed", "activeForm": "Executing session discovery"},
{"content": "Phase 2: Context Gathering", "status": "in_progress", "activeForm": "Executing context gathering"},
{"content": " → Analyze codebase structure", "status": "in_progress", "activeForm": "Analyzing codebase structure"},
{"content": " → Identify integration points", "status": "pending", "activeForm": "Identifying integration points"},
{"content": " → Generate context package", "status": "pending", "activeForm": "Generating context package"},
{"content": "Phase 4: Task Generation", "status": "pending", "activeForm": "Executing task generation"}
]
Note: SlashCommand execute attaches context-gather's 3 tasks. Orchestrator executes these tasks sequentially.
TodoWrite Update (Phase 2 completed - tasks collapsed):
[
{"content": "Phase 1: Session Discovery", "status": "completed", "activeForm": "Executing session discovery"},
{"content": "Phase 2: Context Gathering", "status": "completed", "activeForm": "Executing context gathering"},
{"content": "Phase 4: Task Generation", "status": "pending", "activeForm": "Executing task generation"}
]
Note: Phase 2 tasks completed and collapsed to summary.
After Phase 2: Return to user showing Phase 2 results, then auto-continue to Phase 3/4 (depending on conflict_risk)
Phase 3: Conflict Resolution
Trigger: Only execute when context-package.json indicates conflict_risk is "medium" or "high"
Step 3.1: Execute - Detect and resolve conflicts with CLI analysis
SlashCommand(command="/workflow:tools:conflict-resolution --session [sessionId] --context [contextPath]")
Input:
- sessionId from Phase 1
- contextPath from Phase 2
- conflict_risk from context-package.json
Parse Output:
- Extract: Execution status (success/skipped/failed)
- Verify: conflict-resolution.json file path (if executed)
Validation:
- File
.workflow/active/[sessionId]/.process/conflict-resolution.jsonexists (if executed)
Skip Behavior:
- If conflict_risk is "none" or "low", skip directly to Phase 3.5
- Display: "No significant conflicts detected, proceeding to clarification"
TodoWrite Update (Phase 3 SlashCommand executed - tasks attached, if conflict_risk ≥ medium):
[
{"content": "Phase 1: Session Discovery", "status": "completed", "activeForm": "Executing session discovery"},
{"content": "Phase 2: Context Gathering", "status": "completed", "activeForm": "Executing context gathering"},
{"content": "Phase 3: Conflict Resolution", "status": "in_progress", "activeForm": "Resolving conflicts"},
{"content": " → Detect conflicts with CLI analysis", "status": "in_progress", "activeForm": "Detecting conflicts"},
{"content": " → Present conflicts to user", "status": "pending", "activeForm": "Presenting conflicts"},
{"content": " → Apply resolution strategies", "status": "pending", "activeForm": "Applying resolution strategies"},
{"content": "Phase 4: Task Generation", "status": "pending", "activeForm": "Executing task generation"}
]
Note: SlashCommand execute attaches conflict-resolution's 3 tasks. Orchestrator executes these tasks sequentially.
TodoWrite Update (Phase 3 completed - tasks collapsed):
[
{"content": "Phase 1: Session Discovery", "status": "completed", "activeForm": "Executing session discovery"},
{"content": "Phase 2: Context Gathering", "status": "completed", "activeForm": "Executing context gathering"},
{"content": "Phase 3: Conflict Resolution", "status": "completed", "activeForm": "Resolving conflicts"},
{"content": "Phase 4: Task Generation", "status": "pending", "activeForm": "Executing task generation"}
]
Note: Phase 3 tasks completed and collapsed to summary.
After Phase 3: Return to user showing conflict resolution results (if executed) and selected strategies, then auto-continue to Phase 3.5
Memory State Check:
-
Evaluate current context window usage and memory state
-
If memory usage is high (>120K tokens or approaching context limits):
Step 3.2: Execute - Optimize memory before proceeding
SlashCommand(command="/compact") -
Memory compaction is particularly important after analysis phase which may generate extensive documentation
-
Ensures optimal performance and prevents context overflow
Phase 3.5: Pre-Task Generation Validation (Optional Quality Gate)
Purpose: Optional quality gate before task generation - primarily handled by brainstorm synthesis phase
Current Behavior: Auto-skip to Phase 4 (Task Generation)
Future Enhancement: Could add additional validation steps like:
- Cross-reference checks between conflict resolution and brainstorm analyses
- Final sanity checks before task generation
- User confirmation prompt for proceeding
TodoWrite: Mark phase 3.5 completed (auto-skip), phase 4 in_progress
After Phase 3.5: Auto-continue to Phase 4 immediately
Phase 4: Task Generation
Relationship with Brainstorm Phase:
- If brainstorm role analyses exist ([role]/analysis.md files), Phase 3 analysis incorporates them as input
- User's original intent is ALWAYS primary: New or refined user goals override brainstorm recommendations
- Role analysis.md files define "WHAT": Requirements, design specs, role-specific insights
- IMPL_PLAN.md defines "HOW": Executable task breakdown, dependencies, implementation sequence
- Task generation translates high-level role analyses into concrete, actionable work items
- Intent priority: Current user prompt > role analysis.md files > guidance-specification.md
Step 4.1: Execute - Generate implementation plan and task JSONs
SlashCommand(command="/workflow:tools:task-generate-agent --session [sessionId]")
CLI Execution Note: CLI tool usage is now determined semantically by action-planning-agent based on user's task description. If user specifies "use Codex/Gemini/Qwen for X", the agent embeds command fields in relevant implementation_approach steps.
Input: sessionId from Phase 1
Validation:
.workflow/active/[sessionId]/IMPL_PLAN.mdexists.workflow/active/[sessionId]/.task/IMPL-*.jsonexists (at least one).workflow/active/[sessionId]/TODO_LIST.mdexists
TodoWrite Update (Phase 4 SlashCommand executed - agent task attached):
[
{"content": "Phase 1: Session Discovery", "status": "completed", "activeForm": "Executing session discovery"},
{"content": "Phase 2: Context Gathering", "status": "completed", "activeForm": "Executing context gathering"},
{"content": "Phase 4: Task Generation", "status": "in_progress", "activeForm": "Executing task generation"}
]
Note: Single agent task attached. Agent autonomously completes discovery, planning, and output generation internally.
TodoWrite Update (Phase 4 completed):
[
{"content": "Phase 1: Session Discovery", "status": "completed", "activeForm": "Executing session discovery"},
{"content": "Phase 2: Context Gathering", "status": "completed", "activeForm": "Executing context gathering"},
{"content": "Phase 4: Task Generation", "status": "completed", "activeForm": "Executing task generation"}
]
Note: Agent task completed. No collapse needed (single task).
Return to User:
Planning complete for session: [sessionId]
Tasks generated: [count]
Plan: .workflow/active/[sessionId]/IMPL_PLAN.md
Recommended Next Steps:
1. /workflow:plan-verify --session [sessionId] # Verify plan quality before execution
2. /workflow:status # Review task breakdown
3. /workflow:execute # Start implementation (after verification)
Quality Gate: Consider running /workflow:plan-verify to catch issues early
TodoWrite Pattern
Core Concept: Dynamic task attachment and collapse for real-time visibility into workflow execution.
Key Principles
-
Task Attachment (when SlashCommand executed):
- Sub-command's internal tasks are attached to orchestrator's TodoWrite
- Phase 2, 3: Multiple sub-tasks attached (e.g., Phase 2.1, 2.2, 2.3)
- Phase 4: Single agent task attached (e.g., "Execute task-generate-agent")
- First attached task marked as
in_progress, others aspending - Orchestrator executes these attached tasks sequentially
-
Task Collapse (after sub-tasks complete):
- Applies to Phase 2, 3: Remove detailed sub-tasks from TodoWrite
- Collapse to high-level phase summary
- Example: Phase 2.1-2.3 collapse to "Execute context gathering: completed"
- Phase 4: No collapse needed (single task, just mark completed)
- Maintains clean orchestrator-level view
-
Continuous Execution:
- After completion, automatically proceed to next pending phase
- No user intervention required between phases
- TodoWrite dynamically reflects current execution state
Lifecycle Summary: Initial pending tasks → Phase executed (tasks ATTACHED) → Sub-tasks executed sequentially → Phase completed (tasks COLLAPSED to summary for Phase 2/3, or marked completed for Phase 4) → Next phase begins → Repeat until all phases complete.
Note: See individual Phase descriptions for detailed TodoWrite Update examples:
- Phase 2, 3: Multiple sub-tasks with attach/collapse pattern
- Phase 4: Single agent task (no collapse needed)
Input Processing
Convert User Input to Structured Format:
-
Simple Text → Structure it:
User: "Build authentication system" Structured: GOAL: Build authentication system SCOPE: Core authentication features CONTEXT: New implementation -
Detailed Text → Extract components:
User: "Add JWT authentication with email/password login and token refresh" Structured: GOAL: Implement JWT-based authentication SCOPE: Email/password login, token generation, token refresh endpoints CONTEXT: JWT token-based security, refresh token rotation -
File Reference (e.g.,
requirements.md) → Read and structure:- Read file content
- Extract goal, scope, requirements
- Format into structured description
Data Flow
User Input (task description)
↓
[Convert to Structured Format]
↓ Structured Description:
↓ GOAL: [objective]
↓ SCOPE: [boundaries]
↓ CONTEXT: [background]
↓
Phase 1: session:start --auto "structured-description"
↓ Output: sessionId
↓ Session Memory: Previous tasks, context, artifacts
↓
Phase 2: context-gather --session sessionId "structured-description"
↓ Input: sessionId + session memory + structured description
↓ Output: contextPath (context-package.json) + conflict_risk
↓
Phase 3: conflict-resolution [AUTO-TRIGGERED if conflict_risk ≥ medium]
↓ Input: sessionId + contextPath + conflict_risk
↓ CLI-powered conflict detection (JSON output)
↓ AskUserQuestion: Present conflicts + resolution strategies
↓ User selects strategies (or skip)
↓ Apply modifications via Edit tool:
↓ - Update guidance-specification.md
↓ - Update role analyses (*.md)
↓ - Mark context-package.json as "resolved"
↓ Output: Modified brainstorm artifacts (NO report file)
↓ Skip if conflict_risk is none/low → proceed directly to Phase 4
↓
Phase 4: task-generate-agent --session sessionId
↓ Input: sessionId + resolved brainstorm artifacts + session memory
↓ Output: IMPL_PLAN.md, task JSONs, TODO_LIST.md
↓
Return summary to user
Session Memory Flow: Each phase receives session ID, which provides access to:
- Previous task summaries
- Existing context and analysis
- Brainstorming artifacts (potentially modified by Phase 3)
- Session-specific configuration
Execution Flow Diagram
User triggers: /workflow:plan "Build authentication system"
↓
[TodoWrite Init] 3 orchestrator-level tasks
↓
Phase 1: Session Discovery
→ sessionId extracted
↓
Phase 2: Context Gathering (SlashCommand executed)
→ ATTACH 3 sub-tasks: ← ATTACHED
- → Analyze codebase structure
- → Identify integration points
- → Generate context package
→ Execute sub-tasks sequentially
→ COLLAPSE tasks ← COLLAPSED
→ contextPath + conflict_risk extracted
↓
Conditional Branch: Check conflict_risk
├─ IF conflict_risk ≥ medium:
│ Phase 3: Conflict Resolution (SlashCommand executed)
│ → ATTACH 3 sub-tasks: ← ATTACHED
│ - → Detect conflicts with CLI analysis
│ - → Present conflicts to user
│ - → Apply resolution strategies
│ → Execute sub-tasks sequentially
│ → COLLAPSE tasks ← COLLAPSED
│
└─ ELSE: Skip Phase 3, proceed to Phase 4
↓
Phase 4: Task Generation (SlashCommand executed)
→ Single agent task (no sub-tasks)
→ Agent autonomously completes internally:
(discovery → planning → output)
→ Outputs: IMPL_PLAN.md, IMPL-*.json, TODO_LIST.md
↓
Return summary to user
Key Points:
- ← ATTACHED: Tasks attached to TodoWrite when SlashCommand executed
- Phase 2, 3: Multiple sub-tasks
- Phase 4: Single agent task
- ← COLLAPSED: Sub-tasks collapsed to summary after completion (Phase 2, 3 only)
- Phase 4: Single agent task, no collapse (just mark completed)
- Conditional Branch: Phase 3 only executes if conflict_risk ≥ medium
- Continuous Flow: No user intervention between phases
Error Handling
- Parsing Failure: If output parsing fails, retry command once, then report error
- Validation Failure: If validation fails, report which file/data is missing
- Command Failure: Keep phase
in_progress, report error to user, do not proceed to next phase
Coordinator Checklist
- Pre-Phase: Convert user input to structured format (GOAL/SCOPE/CONTEXT)
- Initialize TodoWrite before any command (Phase 3 added dynamically after Phase 2)
- Execute Phase 1 immediately with structured description
- Parse session ID from Phase 1 output, store in memory
- Pass session ID and structured description to Phase 2 command
- Parse context path from Phase 2 output, store in memory
- Extract conflict_risk from context-package.json: Determine Phase 3 execution
- If conflict_risk ≥ medium: Launch Phase 3 conflict-resolution with sessionId and contextPath
- Wait for Phase 3 to finish executing (if executed), verify conflict-resolution.json created
- If conflict_risk is none/low: Skip Phase 3, proceed directly to Phase 4
- Build Phase 4 command:
/workflow:tools:task-generate-agent --session [sessionId] - Pass session ID to Phase 4 command
- Verify all Phase 4 outputs
- Update TodoWrite after each phase (dynamically adjust for Phase 3 presence)
- After each phase, automatically continue to next phase based on TodoList status
Structure Template Reference
Minimal Structure:
GOAL: [What to achieve]
SCOPE: [What's included]
CONTEXT: [Relevant info]
Detailed Structure (optional, when more context available):
GOAL: [Primary objective]
SCOPE: [Included features/components]
CONTEXT: [Existing system, constraints, dependencies]
REQUIREMENTS: [Specific technical requirements]
CONSTRAINTS: [Limitations or boundaries]
Usage in Commands:
# Phase 1
/workflow:session:start --auto "GOAL: Build authentication\nSCOPE: JWT, login, registration\nCONTEXT: REST API"
# Phase 2
/workflow:tools:context-gather --session WFS-123 "GOAL: Build authentication\nSCOPE: JWT, login, registration\nCONTEXT: REST API"
Related Commands
Prerequisite Commands:
/workflow:brainstorm:artifacts- Optional: Generate role-based analyses before planning (if complex requirements need multiple perspectives)/workflow:brainstorm:synthesis- Optional: Refine brainstorm analyses with clarifications
Called by This Command (5 phases):
/workflow:session:start- Phase 1: Create or discover workflow session/workflow:tools:context-gather- Phase 2: Gather project context and analyze codebase/workflow:tools:conflict-resolution- Phase 3: Detect and resolve conflicts (auto-triggered if conflict_risk ≥ medium)/compact- Phase 3: Memory optimization (if context approaching limits)/workflow:tools:task-generate-agent- Phase 4: Generate task JSON files with agent-driven approach
Follow-up Commands:
/workflow:plan-verify- Recommended: Verify plan quality and catch issues before execution/workflow:status- Review task breakdown and current progress/workflow:execute- Begin implementation of generated tasks