-
Notifications
You must be signed in to change notification settings - Fork 0
Workflow
Complete guide to the DoPlan CLI development workflow from idea to release.
DoPlan CLI uses a structured development workflow that guides you from initial idea to production release. The workflow is organized into four main phases:
- Planning Phase - Capture idea, brainstorm, and create planning documents
- Development Phase - Generate tasks and implement features
- Review Phase - Review code, test, and ensure quality
- Release Phase - Prepare and deploy releases
-
Capture & Align –
/tellrecords the idea and/improvecollects cross-functional insights so IDEA.md and BRAINSTORM.md hold the right context. -
Document & Approve –
/writegenerates PRD/Architecture/Design System,/changerefines them, and/goodlocks the set for task generation. -
Create the Roadmap –
/planconverts the approved plan into TASKS.md with phased task breakdowns, dependencies, and acceptance criteria. -
Build Loop – Repeat
/state snapshot→/build→/progress→/done→/state snapshotfor each task so history stays auditable and commits stay automatic. -
Operate & Ship – Use
/report,/feedback,/team,/load,/safe,/cheap,/ship,/github, and/branchcito keep stakeholders aligned, enforce readiness, and release confidently.
Need a refresher before you begin? Run the optional
/helloflow documented in Hello Tutorial, then dive deeper into the discovery interview with Meeting Command.
The detailed sections below dive deeper into each phase, but this snapshot shows how the commands connect end to end.
┌─────────────────────────────────────────────────────────────┐
│ DoPlan CLI Workflow │
└─────────────────────────────────────────────────────────────┘
1. IDEA PHASE
┌──────────────┐
│ /tell │ → Capture project idea
└──────┬───────┘
│
┌──────▼───────┐
│ /improve │ → Brainstorm with team
└──────┬───────┘
│
2. PLANNING PHASE
┌──────▼───────┐
│ /write │ → Generate PRD, Architecture, Design
└──────┬───────┘
│
┌──────▼───────┐
│ /change │ → Edit documents (optional)
└──────┬───────┘
│
┌──────▼───────┐
│ /good │ → Approve and lock plan
└──────┬───────┘
│
3. TASKS PHASE
┌──────▼───────┐
│ /plan │ → Generate implementation tasks
└──────┬───────┘
│
4. DEVELOPMENT PHASE
┌──────▼───────┐
│ /state │ → Snapshot before coding
└──────┬───────┘
│
┌──────▼───────┐
│ /build │ → Start coding task
└──────┬───────┘
│
┌──────▼───────┐
│ /progress │ → Check progress (optional)
└──────┬───────┘
│
┌──────▼───────┐
│ /done │ → Complete task (auto-commit)
└──────┬───────┘
│
┌──────▼───────┐
│ /state │ → Snapshot after coding
└──────┬───────┘
│
┌──────▼───────┐
│ Repeat │ → Continue with next task
└──────────────┘
│
5. OPERATIONS PHASE
┌──────▼─────────────┐
│ /report + /feedback│ → Share scans + capture input
└──────┬──────────────┘
│
6. RELEASE PHASE
┌──────▼───────┐
│ /ship │ → Release management (after /safe + /cheap)
└──────────────┘
The planning phase transforms your idea into a comprehensive plan.
Command: /tell or /tell <idea>
What happens:
- Your project idea is captured
- Saved to
.plan/00_System/IDEA.md - Project Orchestrator and Product Manager are activated
- Project state updated to "idea" phase
Example:
/tell Build a modern todo app with authentication, dark mode, and offline supportOutput: Idea saved to .plan/00_System/IDEA.md
Next Step: Use /improve to brainstorm
Command: /improve
What happens:
- All Level 1 managers are activated:
- Product Manager
- Engineering Lead
- Design & UX Manager
- QA & Reliability Manager
- Release & Growth Manager
- Documentation Lead
- Each manager provides ideas and improvements
- All ideas saved to
.plan/00_System/BRAINSTORM.md
Example:
/improveOutput: Brainstorm ideas saved to .plan/00_System/BRAINSTORM.md
Next Step: Use /write to generate planning documents
Command: /write
What happens:
-
Product Manager creates
PRD.md(Product Requirements Document) -
Engineering Lead and System Architect create
ARCHITECTURE.md -
Design Manager and UI/UX Designer create
DESIGN_SYSTEM.md - All documents saved to
.plan/00_System/ - Project state updated to "writing" phase
Example:
/writeOutput: Three planning documents generated:
.plan/00_System/PRD.md.plan/00_System/ARCHITECTURE.md.plan/00_System/DESIGN_SYSTEM.md
Next Step: Review documents, use /change to edit, or /good to approve
Command: /change <document> <change>
What happens:
- Document is loaded
- Changes are applied
- Updated document is saved
Examples:
/change prd Add dark mode support
/change architecture Use PostgreSQL instead of MySQL
/change design Add mobile-first responsive designNext Step: Use /good to approve when ready
Command: /good
What happens:
- Validates that all planning documents exist
- Sets
locked: truein.plan/active_state.json - Updates phase to "approved"
- Plan is now locked and ready for task generation
Example:
/goodOutput: Plan approved and locked
Next Step: Use /plan to generate implementation tasks
The development phase transforms your approved plan into working code.
Command: /plan
What happens:
- Reads approved plan (PRD, Architecture, Design System)
- Project Orchestrator, Engineering Lead, and Product Manager generate tasks
- Tasks organized by phases
- Tasks saved to
.plan/TASKS.md - Project state updated to "tasks" phase
Example:
/planOutput: Implementation tasks generated in .plan/TASKS.md
Next Step: Snapshot state before you begin coding.
Command: /state snapshot --reason "before build <task>" --label build
What happens:
- Captures the current
.plan/active_state.json. - Stores a timestamped entry in
.plan/history/. - Tags the snapshot with your reason/label for quick recall.
- Forms the baseline that
/reportand/progresswill diff against.
Example:
/state snapshot --reason "before build 2.1" --label pre-buildOutput: Snapshot saved: .plan/history/state-20251125T120000Z-pre-build.json
Next Step: Start coding with /build.
Command: /build or /build <task_id>
What happens:
- Determines task (next uncompleted or specific task_id)
- Loads task context, dependencies, and related code
- Activates relevant agents (Frontend Lead, Backend Lead, etc.)
- Begins implementation
- Updates
active_taskin.plan/active_state.json
Examples:
/build # Start next uncompleted task
/build 1.2 # Start specific task 1.2
/build 3 # Start task 3Output: Task implementation begins
Next Step: Track progress or complete the task, then use /done.
Command: /progress
What happens:
- Reads TASKS.md and active_state.json
- Calculates progress metrics
- Displays formatted progress report
Example:
/progressOutput:
Phase: building
Tasks: 15/30 completed (50%)
Current task: 1.2 - Create API endpoints
Next up: 1.3 - Implement authentication
Next Step: Continue with /build or /done.
Command: /done
What happens:
- Marks task complete in TASKS.md
- Updates active_state.json (removes active_task, adds to completed)
- Auto-commits changes with conventional commit format
- Auto-pushes to current branch
- Updates CHANGELOG.md if significant changes
- Triggers CI workflow
Example:
/doneOutput: Task completed, changes committed and pushed
Next Step: Snapshot state again (/state snapshot --reason "after build <task>"), then loop back to /build or move toward /report//ship.
The review phase ensures code quality before release.
Process:
- Review auto-committed changes
- Check CI workflow status
- Review code quality
- Test functionality
Agents Involved:
- QA Engineer
- Security Lead
- Performance Engineer
Commands:
-
/safe- Security audit -
/progress- Check completion status
Process:
- Run automated tests
- Manual testing
- Integration testing
- Performance testing
Agents Involved:
- QA Engineer
- QA & Reliability Manager
Purpose: Keep leadership, QA, and product stakeholders informed with consistent artifacts.
Commands:
-
/report [path] [--preset exec|detailed]- Runs
scripts/scanreportto refresh.plan/reports/SCAN_REPORT_<date>.md+ JSON. - Builds
SCAN_DIFF_<date>.mdhighlighting state changes,/progressstats, visuals, and outstanding feedback.
- Runs
-
/feedback <type> "Title" "Details" [--author ...] [--github url]- Logs structured entries to
Docs/history/feedback.mdand.json. - Feeds subsequent
/reportruns so regressions, bugs, and feature ideas stay visible.
- Logs structured entries to
Best Practice:
- Run
/reportafter every major/donemilestone or before demos. - Capture stakeholder reactions via
/feedbackimmediately so they are traceable.
The release phase prepares and deploys your project.
Command: /ship
What happens:
- Release Captain coordinates release process
- Manages versioning
- Handles deployment workflows
- Updates release notes
Example:
/shipAgents Involved:
- Release Captain
- Release & Growth Manager
Use integration helpers to keep automation and GitHub metadata aligned with the workflow.
- Reads
Docs/history/branch-matrix.json. - Regenerates
.github/workflows/task-branches.ymlso task/, feature/, hotfix/ branches run the right checks. - Run it whenever you adjust branch naming or CI requirements.
-
infoupdates the README KPI block and refreshesDocs/history/github-meta.json. -
issueandmilestoneprint ready-to-runghcommands that inherit the detected repo slug. - Keeps documentation KPIs and GitHub tracking in lockstep with the CLI workflow.
Always follow the workflow in order:
-
/tell→ Capture idea -
/improve→ Brainstorm -
/write+/change→ Generate/refine plans -
/good→ Approve -
/plan→ Generate tasks -
/state snapshot→ Capture baseline -
/build→ Start coding -
/progress→ Check status -
/done→ Complete task (auto-commit/push) -
/state snapshot→ Capture delta -
/report+/feedback→ Inform stakeholders -
/safe+/cheap+/ship→ Release
Always review planning documents before using /good:
- Check PRD for completeness
- Verify Architecture is sound
- Ensure Design System is comprehensive
Don't hesitate to use /change to refine documents:
- Add missing features
- Fix technical decisions
- Update design requirements
Use /progress and /state diff regularly to:
- Monitor completion status
- Identify blockers
- Capture precise before/after deltas
- Plan next steps
Work on one task at a time:
- Focus on current task
- Complete before moving on
- Use
/doneto track completion
Use specialized commands when needed:
-
/report- Executive-ready scan reports -
/feedback- Structured stakeholder input -
/safe- Security review -
/cheap- Cost optimization -
/ship- Release management -
/branchci- CI guardrails per branch type -
/github info|issue|milestone- Keep KPIs + GitHub tracking synced
For quick prototypes:
-
/tell- Capture idea -
/write- Generate plans -
/good- Approve quickly -
/plan- Generate tasks -
/build- Start coding immediately
For complex projects:
-
/tell- Capture idea -
/improve- Extensive brainstorming -
/write- Generate plans -
/change- Multiple iterations -
/good- Approve when perfect -
/plan- Generate detailed tasks -
/build- Implement carefully
For iterative projects:
- Complete planning phase
- Generate initial tasks
- Build and complete tasks
- Use
/changeto update plans - Regenerate tasks with
/plan - Continue building
For adding features:
/change prd Add new feature/change architecture Update architecture for feature-
/good- Approve changes -
/plan- Generate new tasks -
/build- Implement feature
# 1. Capture idea
/tell Build a simple todo app
# 2. Brainstorm
/improve
# 3. Generate plans
/write
# 4. Approve
/good
# 5. Generate tasks
/plan
# 6. Build
/build
# ... implement task ...
/done
# 7. Continue
/build
/done
# ... repeat ...# 1. Capture detailed idea
/tell Build a social media platform with authentication, posts, comments, and real-time notifications
# 2. Extensive brainstorming
/improve
# 3. Generate comprehensive plans
/write
# 4. Refine documents
/change prd Add user profiles
/change architecture Use microservices
/change design Add dark mode
# 5. Approve when ready
/good
# 6. Generate tasks
/plan
# 7. Build incrementally
/build
# ... work on task ...
/done
# 8. Track progress
/progress
# 9. Continue building
/build
/done
# ... repeat for all tasks ...The workflow uses active_state.json to track progress:
{
"phase": "idea|brainstorm|writing|approved|tasks|building",
"active_task": null | "task_id",
"completed": ["task_id", ...],
"locked": false | true
}Phases:
-
idea- Idea captured -
brainstorm- Brainstorming complete -
writing- Planning documents generated -
approved- Plan approved and locked -
tasks- Tasks generated -
building- Actively building
- Commands Reference - All available commands
- Agents Documentation - Understanding AI agents
- Quick Start - Getting started guide
- First Project Tutorial - Detailed tutorial
- Workflow Guide - Complete workflow and best practices
- Home - Wiki home page
Last Updated: 2025
Maintained By: Documentation Team