The user starts via /dev-workflow . Optionally pass iteration-id to resume an existing iteration.
Startup process
- Call the
history-managerskill to executeinit(ensure thatdocs/history.jsonexists). - If
$ARGUMENTSis passed and is a valid iteration id, resume that iteration; otherwise callhistory-managerto executenew-iterto create a new iteration. - Call
history-managerto executestatusto read the current iteration'sstate, and continue execution from that phase.
Phase execution order
| Order | Phase | Skill | Execution method | Description |
|---|---|---|---|---|
| 1 | Requirements analysis | requirements-analysis | inline | Converse with the user to sort out functional points |
| 2 | Technology selection | technology-selection | inline | Ask full-stack/frontend/backend, select the technology stack |
| 3 | Technical review | technical-review | fork/Explore | Review architecture feasibility, API contracts, and risk items |
| 4 | Program design | program-design | inline | Design module layering, flow, and project directory |
| 5 | Task breakdown | task-breakdown | fork/Plan | Break the design into manageable development units |
| 6 | Unit testing | unit-testing | fork | Design test cases by task unit |
| 7 | Code development | code-development | inline | Implement code in a test-driven manner |
| 8 | Self-verification | self-verification | fork/Explore | Run tests, integration verification, and quality self-check |
Execution rules
- Inline phases must involve dialogue with the user: requirements analysis, technology selection, program design, and code development (phases 1, 2, 4, and 7) are all executed in the main conversation. All decision pointsare presented as structured options(numbered options, letting the user choose rather than freely input),wait for the user's choice before producing/advancing, and do not skip the user to directly generate results. No more than 3 questions per round.
- State recovery: before each phase begins, call
history-manager'sget-phaseandcheck-fileto check whether that phase has already been completed. If it has been completed, skip it and proceed directly to the next phase. - State writing: after each phase is completed, call
history-manager'sset-phase <phase> <phase_id>to update history. - Phase id generation: use the
{阶段缩写}-001format (e.g.,req-001、ts-001). Increment within the same iteration. - Self-verification failure: if the self-verification report has failed items, roll back to code-development to fix them and then re-verify.
- Output location: all phase documents are written to
docs/{current_iteration_id}/。