| name | workflow-plan |
| description | Unified planning skill - 4-phase planning workflow, plan verification, and interactive replanning. Triggers on "workflow-plan", "workflow-plan-verify", "workflow:replan". |
| allowed-tools | Skill, Agent, AskUserQuestion, TodoWrite, Read, Write, Edit, Bash, Glob, Grep |
Unified planning skill combining 4-phase planning workflow, plan quality verification, and interactive replanning. Produces IMPL_PLAN.md, task JSONs, verification reports, and manages plan lifecycle through session-level artifact updates. Routes by mode (plan | verify | replan) and acts as a pure orchestrator: executes phases, parses outputs, and passes context.
1. Architecture Overview
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Workflow Plan Orchestrator (SKILL.md) โ
โ โ Route by mode: plan | verify | replan โ
โ โ Pure coordinator: Execute phases, parse outputs, pass context โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโ
โ โ โ
โโโโโโโโโโโโโ โโโโโโโโโโโโโ โโโโโโโโโโโโโ
โ Plan Mode โ โ Verify โ โ Replan โ
โ (default) โ โ Mode โ โ Mode โ
โ Phase 1-4 โ โ Phase 5 โ โ Phase 6 โ
โโโโโโโฌโโโโโโ โโโโโโโโโโโโโ โโโโโโโโโโโโโ
โ
โโโโโผโโโโฌโโโโ
โ โ โ โ
โโโโโโโโโโโโโโโโโโโโ
โ 1 โโ 2 โโ 3 โโ 4 โ
โSesโโCtxโโConโโGenโ
โโโโโโโโโโโโโโโโโโฌโโ
โ
โโโโโโโโโโโโโ
โ Confirm โโโโ Verify โโโ Phase 5
โ (choice) โโโโ Execute โโ Skill("workflow-execute")
โโโโโโโโโโโโโโโโ Review โโโ Display session status inline
2. Key Design Principles
- Pure Orchestrator: SKILL.md routes and coordinates only; execution detail lives in phase files
- Progressive Phase Loading: Read phase docs ONLY when that phase is about to execute
- Multi-Mode Routing: Single skill handles plan/verify/replan via mode detection
- Task Attachment Model: Sub-command tasks are ATTACHED, executed sequentially, then COLLAPSED
- Auto-Continue: After each phase completes, automatically execute next pending phase
- Accumulated State: planning-notes.md carries context across phases for N+1 decisions
3. Interactive Preference Collection
Before dispatching to phase execution, collect workflow preferences via AskUserQuestion:
const autoYes = /\b(-y|--yes)\b/.test($ARGUMENTS)
if (autoYes) {
workflowPreferences = { autoYes: true, interactive: false }
} else {
const prefResponse = AskUserQuestion({
questions: [
{
question: "ๆฏๅฆ่ทณ่ฟๆๆ็กฎ่ฎคๆญฅ้ชค๏ผ่ชๅจๆจกๅผ๏ผ๏ผ",
header: "Auto Mode",
multiSelect: false,
options: [
{ label: "Interactive (Recommended)", description: "ไบคไบๆจกๅผ๏ผๅ
ๅซ็กฎ่ฎคๆญฅ้ชค" },
{ label: "Auto", description: "่ทณ่ฟๆๆ็กฎ่ฎค๏ผ่ชๅจๆง่ก" }
]
}
]
})
workflowPreferences = {
autoYes: prefResponse.autoMode === 'Auto'
}
if (mode === 'replan') {
const replanPref = AskUserQuestion({
questions: [
{
question: "ๆฏๅฆไฝฟ็จไบคไบๅผๆพๆธ
ๆจกๅผ๏ผ",
header: "Replan Mode",
multiSelect: false,
options: [
{ label: "Standard (Recommended)", : },
{ : , : }
]
}
]
})
workflowPreferences. = replanPref. ===
}
}
workflowPreferences is passed to phase execution as context variable, referenced as workflowPreferences.autoYes, workflowPreferences.interactive within phases.
4. Mode Detection
const args = $ARGUMENTS
const mode = detectMode(args)
function detectMode(args) {
if (skillName === 'workflow-plan-verify') return 'verify'
if (skillName === 'workflow:replan') return 'replan'
return 'plan'
}
5. Compact Recovery (Phase Persistence)
Multi-phase planning (Phase 1-4/5/6) spans long conversations. Uses ๅ้ไฟ้ฉ: TodoWrite ่ท่ธช active phase ไฟๆคๅ
ถไธ่ขซๅ็ผฉ๏ผsentinel ไฝไธบๅ
ๅบใ
โ ๏ธ COMPACT DIRECTIVE: Context compression MUST check TodoWrite phase status.
The phase currently marked in_progress is the active execution phase โ preserve its FULL content.
Only compress phases marked completed or pending.
6. Execution Flow
Plan Mode (default)
Input Parsing:
โโ Convert user input to structured format (GOAL/SCOPE/CONTEXT)
Phase 1: Session Discovery
โโ Ref: Read("phases/01-session-discovery.md")
โโ Output: sessionId (WFS-xxx), planning-notes.md
Phase 2: Context Gathering
โโ Ref: Read("phases/02-context-gathering.md")
โโ Tasks attached: Analyze structure โ Identify integration โ Generate package
โโ Output: contextPath + conflictRisk
Phase 3: Conflict Resolution (conditional: conflictRisk โฅ medium)
โโ Decision (conflictRisk check):
โโ conflictRisk โฅ medium โ Ref: Read("phases/03-conflict-resolution.md")
โ โโ Tasks attached: Detect conflicts โ Present to user โ Apply strategies
โ โโ Output: Modified brainstorm artifacts
โโ conflictRisk < medium โ Skip to Phase 4
Phase 4: Task Generation
โโ Ref: Read("phases/04-task-generation.md")
โโ Output: IMPL_PLAN.md, task JSONs, TODO_LIST.md
Plan Confirmation (User Decision Gate):
โโ Decision (user choice):
โโ "Verify Plan Quality" (Recommended) โ Route to Phase 5 (plan-verify)
โโ "Start Execution" โ Skill(skill="workflow-execute")
โโ "Review Status Only" โ Display session status inline
Verify Mode
Phase 5: Plan Verification
โโ Ref: Read("phases/05-plan-verify.md")
โโ Output: PLAN_VERIFICATION.md with quality gate recommendation
Replan Mode
Phase 6: Interactive Replan
โโ Ref: Read("phases/06-replan.md")
โโ Output: Updated IMPL_PLAN.md, task JSONs, TODO_LIST.md
Phase Reference Documents (read on-demand when phase executes):
| Phase | Document | Purpose | Mode | Compact |
|---|
| 1 | phases/01-session-discovery.md | Create or discover workflow session | plan | TodoWrite ้ฉฑๅจ |
| 2 | phases/02-context-gathering.md | Gather project context and analyze codebase | plan | TodoWrite ้ฉฑๅจ |
| 3 | phases/03-conflict-resolution.md | Detect and resolve conflicts (conditional) | plan | TodoWrite ้ฉฑๅจ |
| 4 | phases/04-task-generation.md | Generate implementation plan and task JSONs | plan | TodoWrite ้ฉฑๅจ + ๐ sentinel |
| 5 | phases/05-plan-verify.md | Read-only verification with quality gate | verify | TodoWrite ้ฉฑๅจ |
| 6 | phases/06-replan.md | Interactive replanning with boundary clarification | replan | TodoWrite ้ฉฑๅจ |
Compact Rules:
- TodoWrite
in_progress โ ไฟ็ๅฎๆดๅ
ๅฎน๏ผ็ฆๆญขๅ็ผฉ
- TodoWrite
completed โ ๅฏๅ็ผฉไธบๆ่ฆ
- ๐ sentinel fallback โ Phase 4 ๅ
ๅซ compact sentinel๏ผ่ฅ compact ๅไป
ๅญ sentinel ่ๆ ๅฎๆด Step ๅ่ฎฎ๏ผๅฟ
้กป็ซๅณ
Read("phases/04-task-generation.md") ๆขๅค
7. Core Rules
- Start Immediately: First action is mode detection + TodoWrite initialization, second action is phase execution
- No Preliminary Analysis: Do not read files, analyze structure, or gather context before Phase 1
- Parse Every Output: Extract required data from each phase 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: Skill execute attaches sub-tasks to current workflow. Orchestrator executes these attached tasks itself, then collapses them after completion
- Progressive Phase Loading: Read phase docs ONLY when that phase is about to execute
- DO NOT STOP: Continuous multi-phase workflow. After executing all attached tasks, immediately collapse them and execute next phase
8. 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
9. Data Flow
Plan Mode
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
โ Write: planning-notes.md (User Intent section)
โ
Phase 2: context-gather --session sessionId "structured-description"
โ Input: sessionId + structured description
โ Output: contextPath (context-package.json) + conflictRisk
โ Update: planning-notes.md (Context Findings + Consolidated Constraints)
โ
Phase 3: conflict-resolution [conditional: conflictRisk โฅ medium]
โ Input: sessionId + contextPath + conflictRisk
โ Output: Modified brainstorm artifacts
โ Update: planning-notes.md (Conflict Decisions + Consolidated Constraints)
โ Skip if conflictRisk is none/low โ proceed directly to Phase 4
โ
Phase 4: task-generate-agent --session sessionId
โ Input: sessionId + planning-notes.md + context-package.json + brainstorm artifacts
โ Output: IMPL_PLAN.md, task JSONs, TODO_LIST.md
โ
Plan Confirmation (User Decision Gate):
โโ "Verify Plan Quality" (Recommended) โ Route to Phase 5
โโ "Start Execution" โ Skill(skill="workflow-execute")
โโ "Review Status Only" โ Display session status inline
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
Verify Mode
Input: --session sessionId (or auto-detect)
โ
Phase 5: Load artifacts โ Agent-driven verification โ Generate report
โ Output: PLAN_VERIFICATION.md with quality gate
Replan Mode
Input: [--session sessionId] [task-id] "requirements"
โ
Phase 6: Mode detection โ Clarification โ Impact analysis โ Backup โ Apply โ Verify
โ Output: Updated artifacts + change summary
10. TodoWrite Pattern
Core Concept: Dynamic task attachment and collapse for real-time visibility into workflow execution.
Key Principles
-
Task Attachment (when phase executed):
- Sub-tasks are attached to orchestrator's TodoWrite
- Phase 2, 3: Multiple sub-tasks attached
- Phase 1, 4: Single task (atomic)
- First attached task marked as
in_progress, others as pending
- 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
- Phase 1, 4: No collapse needed (single task, just mark completed)
- Maintains clean orchestrator-level view
-
Continuous Execution: After completion, automatically proceed to next pending phase
Lifecycle: Initial pending โ Phase executed (tasks ATTACHED) โ Sub-tasks executed โ Phase completed (tasks COLLAPSED for 2/3, marked completed for 1/4) โ Next phase โ Repeat
Phase 2 (Tasks Attached):
[
{"content": "Phase 1: Session Discovery", "status": "completed"},
{"content": "Phase 2: Context Gathering", "status": "in_progress"},
{"content": " โ Analyze codebase structure", "status": "in_progress"},
{"content": " โ Identify integration points", "status": "pending"},
{"content": " โ Generate context package", "status": "pending"},
{"content": "Phase 4: Task Generation", "status"
Phase 2 (Collapsed):
[
{"content": "Phase 1: Session Discovery", "status": "completed"},
{"content": "Phase 2: Context Gathering", "status": "completed"},
{"content": "Phase 4: Task Generation", "status": "pending"}
]
Phase 3 (Tasks Attached, conditional):
[
{"content": "Phase 1: Session Discovery", "status": "completed"},
{"content": "Phase 2: Context Gathering", "status": "completed"},
{"content": "Phase 3: Conflict Resolution", "status": "in_progress"},
{"content": " โ Detect conflicts with CLI analysis", "status": "in_progress"},
{"content": " โ Present conflicts to user", "status": "pending"},
{"content": " โ Apply resolution strategies", "status"
Note: See individual Phase descriptions for detailed TodoWrite Update examples.
11. Post-Phase Updates
After each phase completes, update planning-notes.md:
- After Phase 1: Initialize with user intent (GOAL, KEY_CONSTRAINTS)
- After Phase 2: Add context findings (CRITICAL_FILES, ARCHITECTURE, CONFLICT_RISK, CONSTRAINTS)
- After Phase 3: Add conflict decisions (RESOLVED, MODIFIED_ARTIFACTS, CONSTRAINTS) if executed
- Memory State Check: After heavy phases (Phase 2-3), evaluate context window usage; if high (>120K tokens), trigger
compact
See phase files for detailed update code.
12. 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
- Session Not Found (verify/replan): Report error with available sessions list
- Task Not Found (replan): Report error with available tasks list
13. Coordinator Checklist
Plan Mode
- 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
- Session Integrity: If reusing existing session, verify
sessionIntegrity from Step 1.2.5; log warnings for incomplete brainstorm artifacts
- Pass session ID and structured description to Phase 2 command
- Parse context path from Phase 2 output, store in memory
- Extract conflictRisk from context-package.json: Determine Phase 3 execution
- If conflictRisk โฅ 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 conflictRisk is none/low: Skip Phase 3, proceed directly to Phase 4
- Pass session ID to Phase 4 command
- Verify all Phase 4 outputs
- Plan Confirmation Gate: Present user with choice (Verify โ Phase 5 / Execute / Review Status)
- If user selects Verify: Read phases/05-plan-verify.md, execute Phase 5 in-process
- If user selects Execute: Skill(skill="workflow-execute")
- If user selects Review: Display session status inline
- Auto mode (workflowPreferences.autoYes): Auto-select "Verify Plan Quality", then auto-continue to execute if PROCEED
- Update TodoWrite after each phase
- After each phase, automatically continue to next phase based on TodoList status
Verify Mode
- Detect/validate session (auto-detect from active sessions)
- Initialize TodoWrite with single verification task
- Execute Phase 5 verification agent
- Present quality gate result and next step options
Replan Mode
- Parse task ID from $ARGUMENTS (IMPL-N format, if present)
- Detect operation mode (task vs session)
- Initialize TodoWrite with replan-specific tasks
- Execute Phase 6 through all sub-phases (clarification โ impact โ backup โ apply โ verify)
14. 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]
15. Related Skills
Prerequisite Skills:
brainstorm skill - Optional: Generate role-based analyses before planning
brainstorm skill - Optional: Refine brainstorm analyses with clarifications
Called by Plan Mode (4 phases):
/workflow:session:start - Phase 1: Create or discover workflow session
phases/02-context-gathering.md - Phase 2: Gather project context and analyze codebase (inline)
phases/03-conflict-resolution.md - Phase 3: Detect and resolve conflicts (inline, conditional)
memory-capture skill - Phase 3: Memory optimization (if context approaching limits)
phases/04-task-generation.md - Phase 4: Generate task JSON files (inline)
Follow-up Skills:
workflow-plan skill (plan-verify phase) - Verify plan quality (can also invoke via verify mode)
- Display session status inline - Review task breakdown and current progress
Skill(skill="workflow-execute") - Begin implementation of generated tasks (skill: workflow-execute)
workflow-plan skill (replan phase) - Modify plan (can also invoke via replan mode)
<auto_mode>
When workflowPreferences.autoYes is true (triggered by -y or --yes flag, or user selecting "Auto" mode):
- Skip all confirmation prompts, use default values
- Auto-select "Verify Plan Quality" at Plan Confirmation Gate
- Auto-continue to execution if verification returns PROCEED
- Skip interactive clarification in replan mode (use safe defaults)
</auto_mode>
<success_criteria>