cc-devflow 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (277) hide show
  1. package/.claude/CLAUDE.md +83 -0
  2. package/.claude/agents/architecture-designer.md +443 -0
  3. package/.claude/agents/bug-analyzer.md +382 -0
  4. package/.claude/agents/checklist-agent.md +175 -0
  5. package/.claude/agents/clarify-analyst.md +50 -0
  6. package/.claude/agents/code-reviewer.md +71 -0
  7. package/.claude/agents/codex-analyzer.md +39 -0
  8. package/.claude/agents/compatibility-checker.md +580 -0
  9. package/.claude/agents/consistency-checker.md +532 -0
  10. package/.claude/agents/impact-analyzer.md +441 -0
  11. package/.claude/agents/planner.md +230 -0
  12. package/.claude/agents/prd-writer.md +320 -0
  13. package/.claude/agents/project-guidelines-generator.md +1329 -0
  14. package/.claude/agents/qa-tester.md +313 -0
  15. package/.claude/agents/release-manager.md +295 -0
  16. package/.claude/agents/security-reviewer.md +314 -0
  17. package/.claude/agents/style-guide-generator.md +458 -0
  18. package/.claude/agents/tech-architect.md +516 -0
  19. package/.claude/agents/ui-designer.md +485 -0
  20. package/.claude/commands/code-review-high.md +58 -0
  21. package/.claude/commands/core-architecture.md +429 -0
  22. package/.claude/commands/core-guidelines.md +486 -0
  23. package/.claude/commands/core-roadmap.md +439 -0
  24. package/.claude/commands/core-style.md +293 -0
  25. package/.claude/commands/flow-archive.md +245 -0
  26. package/.claude/commands/flow-checklist.md +260 -0
  27. package/.claude/commands/flow-clarify.md +136 -0
  28. package/.claude/commands/flow-constitution.md +82 -0
  29. package/.claude/commands/flow-dev.md +134 -0
  30. package/.claude/commands/flow-epic.md +150 -0
  31. package/.claude/commands/flow-fix.md +104 -0
  32. package/.claude/commands/flow-ideate.md +214 -0
  33. package/.claude/commands/flow-init.md +313 -0
  34. package/.claude/commands/flow-new.md +394 -0
  35. package/.claude/commands/flow-prd.md +131 -0
  36. package/.claude/commands/flow-qa.md +93 -0
  37. package/.claude/commands/flow-release.md +92 -0
  38. package/.claude/commands/flow-restart.md +98 -0
  39. package/.claude/commands/flow-status.md +64 -0
  40. package/.claude/commands/flow-tech.md +142 -0
  41. package/.claude/commands/flow-ui.md +189 -0
  42. package/.claude/commands/flow-update.md +111 -0
  43. package/.claude/commands/flow-upgrade.md +115 -0
  44. package/.claude/commands/flow-verify.md +96 -0
  45. package/.claude/commands/problem-analyzer.md +60 -0
  46. package/.claude/config/quality-rules.yml +161 -0
  47. package/.claude/docs/SPEC_KIT_CONSTITUTION_ANALYSIS.md +426 -0
  48. package/.claude/docs/design/consistency-conflict-detection-algorithms.md +658 -0
  49. package/.claude/docs/design/intent-driven-input-design.md +380 -0
  50. package/.claude/docs/design/prd-version-management-design.md +437 -0
  51. package/.claude/docs/guides/INIT_TROUBLESHOOTING.md +117 -0
  52. package/.claude/docs/guides/NEW_TROUBLESHOOTING.md +151 -0
  53. package/.claude/docs/guides/ROADMAP_TROUBLESHOOTING.md +188 -0
  54. package/.claude/docs/guides/TASK_COMPLETION_MARKING.md +338 -0
  55. package/.claude/docs/templates/ARCHITECTURE_TEMPLATE.md +633 -0
  56. package/.claude/docs/templates/BACKLOG_TEMPLATE.md +261 -0
  57. package/.claude/docs/templates/CHECKLIST_TEMPLATE.md +52 -0
  58. package/.claude/docs/templates/CLARIFICATION_REPORT_TEMPLATE.md +206 -0
  59. package/.claude/docs/templates/CODE_REVIEW_TEMPLATE.md +71 -0
  60. package/.claude/docs/templates/EPIC_TEMPLATE.md +805 -0
  61. package/.claude/docs/templates/INIT_FLOW_TEMPLATE.md +213 -0
  62. package/.claude/docs/templates/INTENT_CLARIFICATION_TEMPLATE.md +57 -0
  63. package/.claude/docs/templates/NEW_ORCHESTRATION_TEMPLATE.md +148 -0
  64. package/.claude/docs/templates/PRD_TEMPLATE.md +562 -0
  65. package/.claude/docs/templates/RESEARCH_TEMPLATE.md +276 -0
  66. package/.claude/docs/templates/REVIEW-HIGH.md +57 -0
  67. package/.claude/docs/templates/ROADMAP_DIALOGUE_TEMPLATE.md +198 -0
  68. package/.claude/docs/templates/ROADMAP_TEMPLATE.md +310 -0
  69. package/.claude/docs/templates/STYLE_TEMPLATE.md +1266 -0
  70. package/.claude/docs/templates/TASKS_TEMPLATE.md +523 -0
  71. package/.claude/docs/templates/TECH_DESIGN_TEMPLATE.md +1019 -0
  72. package/.claude/docs/templates/UI_PROTOTYPE_TEMPLATE.md +1436 -0
  73. package/.claude/guides/agent-guides/agent-coordination-guide.md +459 -0
  74. package/.claude/guides/project-guidelines-system.md +463 -0
  75. package/.claude/guides/technical-guides/datetime-handling-guide.md +563 -0
  76. package/.claude/guides/technical-guides/git-github-guide.md +642 -0
  77. package/.claude/guides/technical-guides/test-execution-guide.md +618 -0
  78. package/.claude/guides/workflow-guides/bug-fix-orchestrator.md +217 -0
  79. package/.claude/guides/workflow-guides/flow-orchestrator.md +282 -0
  80. package/.claude/hooks/checklist-gate.js +397 -0
  81. package/.claude/hooks/error-handling-reminder.sh +12 -0
  82. package/.claude/hooks/error-handling-reminder.ts +459 -0
  83. package/.claude/hooks/post-tool-use-tracker.sh +280 -0
  84. package/.claude/hooks/pre-tool-use-guardrail.sh +36 -0
  85. package/.claude/hooks/pre-tool-use-guardrail.ts +342 -0
  86. package/.claude/hooks/skill-activation-prompt.sh +36 -0
  87. package/.claude/hooks/skill-activation-prompt.ts +214 -0
  88. package/.claude/hooks/state/skills-used-test-guard.json +3 -0
  89. package/.claude/rules/devflow-conventions.md +305 -0
  90. package/.claude/rules/project-constitution.md +748 -0
  91. package/.claude/schemas/constitution.schema.json +43 -0
  92. package/.claude/scripts/analyze-upgrade-impact.sh +200 -0
  93. package/.claude/scripts/archive-requirement.sh +351 -0
  94. package/.claude/scripts/calculate-checklist-completion.sh +243 -0
  95. package/.claude/scripts/calculate-quarter.sh +206 -0
  96. package/.claude/scripts/check-dependencies.sh +409 -0
  97. package/.claude/scripts/check-prerequisites.sh +232 -0
  98. package/.claude/scripts/check-task-status.sh +264 -0
  99. package/.claude/scripts/checklist-errors.sh +131 -0
  100. package/.claude/scripts/common.sh +570 -0
  101. package/.claude/scripts/consolidate-research.sh +182 -0
  102. package/.claude/scripts/create-requirement.sh +426 -0
  103. package/.claude/scripts/export-contracts.sh +117 -0
  104. package/.claude/scripts/extract-data-model.sh +78 -0
  105. package/.claude/scripts/generate-clarification-questions.sh +377 -0
  106. package/.claude/scripts/generate-clarification-report.sh +463 -0
  107. package/.claude/scripts/generate-quickstart.sh +146 -0
  108. package/.claude/scripts/generate-research-tasks.sh +157 -0
  109. package/.claude/scripts/generate-status-report.sh +523 -0
  110. package/.claude/scripts/generate-tech-analysis.sh +46 -0
  111. package/.claude/scripts/locate-requirement-in-roadmap.sh +233 -0
  112. package/.claude/scripts/manage-constitution.sh +602 -0
  113. package/.claude/scripts/mark-task-complete.sh +198 -0
  114. package/.claude/scripts/populate-research-tasks.sh +259 -0
  115. package/.claude/scripts/recover-workflow.sh +460 -0
  116. package/.claude/scripts/run-clarify-scan.sh +601 -0
  117. package/.claude/scripts/run-high-review.sh +62 -0
  118. package/.claude/scripts/run-problem-analysis.sh +68 -0
  119. package/.claude/scripts/setup-epic.sh +173 -0
  120. package/.claude/scripts/sync-roadmap-progress.sh +300 -0
  121. package/.claude/scripts/sync-task-marks.sh +199 -0
  122. package/.claude/scripts/test-clarify-scan.sh +515 -0
  123. package/.claude/scripts/update-agent-context.sh +806 -0
  124. package/.claude/scripts/validate-constitution.sh +567 -0
  125. package/.claude/scripts/validate-hooks.sh +487 -0
  126. package/.claude/scripts/validate-research.sh +332 -0
  127. package/.claude/scripts/validate-scope-boundary.sh +493 -0
  128. package/.claude/scripts/verify-setup.sh +37 -0
  129. package/.claude/settings.json +76 -0
  130. package/.claude/skills/_reference-implementations/README.md +96 -0
  131. package/.claude/skills/_reference-implementations/backend-express-prisma/SKILL.md +302 -0
  132. package/.claude/skills/_reference-implementations/backend-express-prisma/resources/architecture-overview.md +451 -0
  133. package/.claude/skills/_reference-implementations/backend-express-prisma/resources/async-and-errors.md +307 -0
  134. package/.claude/skills/_reference-implementations/backend-express-prisma/resources/complete-examples.md +638 -0
  135. package/.claude/skills/_reference-implementations/backend-express-prisma/resources/configuration.md +275 -0
  136. package/.claude/skills/_reference-implementations/backend-express-prisma/resources/database-patterns.md +224 -0
  137. package/.claude/skills/_reference-implementations/backend-express-prisma/resources/middleware-guide.md +213 -0
  138. package/.claude/skills/_reference-implementations/backend-express-prisma/resources/routing-and-controllers.md +756 -0
  139. package/.claude/skills/_reference-implementations/backend-express-prisma/resources/sentry-and-monitoring.md +336 -0
  140. package/.claude/skills/_reference-implementations/backend-express-prisma/resources/services-and-repositories.md +789 -0
  141. package/.claude/skills/_reference-implementations/backend-express-prisma/resources/testing-guide.md +235 -0
  142. package/.claude/skills/_reference-implementations/backend-express-prisma/resources/validation-patterns.md +754 -0
  143. package/.claude/skills/_reference-implementations/frontend-react-mui/SKILL.md +399 -0
  144. package/.claude/skills/_reference-implementations/frontend-react-mui/resources/common-patterns.md +331 -0
  145. package/.claude/skills/_reference-implementations/frontend-react-mui/resources/complete-examples.md +872 -0
  146. package/.claude/skills/_reference-implementations/frontend-react-mui/resources/component-patterns.md +502 -0
  147. package/.claude/skills/_reference-implementations/frontend-react-mui/resources/data-fetching.md +767 -0
  148. package/.claude/skills/_reference-implementations/frontend-react-mui/resources/file-organization.md +502 -0
  149. package/.claude/skills/_reference-implementations/frontend-react-mui/resources/loading-and-error-states.md +501 -0
  150. package/.claude/skills/_reference-implementations/frontend-react-mui/resources/performance.md +406 -0
  151. package/.claude/skills/_reference-implementations/frontend-react-mui/resources/routing-guide.md +364 -0
  152. package/.claude/skills/_reference-implementations/frontend-react-mui/resources/styling-guide.md +428 -0
  153. package/.claude/skills/_reference-implementations/frontend-react-mui/resources/typescript-standards.md +418 -0
  154. package/.claude/skills/cc-devflow-orchestrator/SKILL.md +229 -0
  155. package/.claude/skills/constitution-guardian/SKILL.md +306 -0
  156. package/.claude/skills/devflow-constitution-quick-ref/SKILL.md +374 -0
  157. package/.claude/skills/devflow-file-standards/SKILL.md +353 -0
  158. package/.claude/skills/devflow-tdd-enforcer/SKILL.md +192 -0
  159. package/.claude/skills/skill-developer/ADVANCED.md +197 -0
  160. package/.claude/skills/skill-developer/HOOK_MECHANISMS.md +306 -0
  161. package/.claude/skills/skill-developer/PATTERNS_LIBRARY.md +152 -0
  162. package/.claude/skills/skill-developer/SKILL.md +426 -0
  163. package/.claude/skills/skill-developer/SKILL_RULES_REFERENCE.md +315 -0
  164. package/.claude/skills/skill-developer/TRIGGER_TYPES.md +305 -0
  165. package/.claude/skills/skill-developer/TROUBLESHOOTING.md +514 -0
  166. package/.claude/skills/skill-rules.json +213 -0
  167. package/.claude/tests/README.md +300 -0
  168. package/.claude/tests/TODO.md +69 -0
  169. package/.claude/tests/__pycache__/test_analyze_upgrade_impact.cpython-311-pytest-7.2.2.pyc +0 -0
  170. package/.claude/tests/__pycache__/test_consolidate_research.cpython-311-pytest-7.2.2.pyc +0 -0
  171. package/.claude/tests/__pycache__/test_export_contracts.cpython-311-pytest-7.2.2.pyc +0 -0
  172. package/.claude/tests/__pycache__/test_extract_data_model.cpython-311-pytest-7.2.2.pyc +0 -0
  173. package/.claude/tests/__pycache__/test_generate_quickstart.cpython-311-pytest-7.2.2.pyc +0 -0
  174. package/.claude/tests/__pycache__/test_generate_research_tasks.cpython-311-pytest-7.2.2.pyc +0 -0
  175. package/.claude/tests/constitution/run_all_constitution_tests.sh +111 -0
  176. package/.claude/tests/constitution/test_agent_assignment.sh +207 -0
  177. package/.claude/tests/constitution/test_article_coverage.sh +201 -0
  178. package/.claude/tests/constitution/test_template_completeness.sh +150 -0
  179. package/.claude/tests/constitution/test_version_consistency.sh +120 -0
  180. package/.claude/tests/fixtures/spec_delta_full.md +16 -0
  181. package/.claude/tests/fixtures/tasks_progress_sample.md +5 -0
  182. package/.claude/tests/run-all-tests.sh +229 -0
  183. package/.claude/tests/scripts/run.sh +30 -0
  184. package/.claude/tests/scripts/test-framework.sh +128 -0
  185. package/.claude/tests/scripts/test_check_prerequisites.sh +511 -0
  186. package/.claude/tests/scripts/test_check_prerequisites.sh.bak +504 -0
  187. package/.claude/tests/scripts/test_check_prerequisites.sh.bak2 +505 -0
  188. package/.claude/tests/scripts/test_check_prerequisites.sh.bak3 +506 -0
  189. package/.claude/tests/scripts/test_check_prerequisites.sh.bak4 +507 -0
  190. package/.claude/tests/scripts/test_check_prerequisites.sh.bak5 +508 -0
  191. package/.claude/tests/scripts/test_check_task_status.sh +499 -0
  192. package/.claude/tests/scripts/test_common.sh +244 -0
  193. package/.claude/tests/scripts/test_generate_status_report.sh +71 -0
  194. package/.claude/tests/scripts/test_mark_task_complete.sh +441 -0
  195. package/.claude/tests/scripts/test_mark_task_complete.sh.backup +410 -0
  196. package/.claude/tests/scripts/test_recover_workflow.sh +304 -0
  197. package/.claude/tests/scripts/test_setup_epic.sh +437 -0
  198. package/.claude/tests/scripts/test_sync_task_marks.sh +196 -0
  199. package/.claude/tests/scripts/test_validate_constitution.sh +74 -0
  200. package/.claude/tests/scripts/test_validate_research.sh +462 -0
  201. package/.claude/tests/slugify.bats +82 -0
  202. package/.claude/tests/test-framework.sh +732 -0
  203. package/.claude/tests/test_analyze_upgrade_impact.py +34 -0
  204. package/.claude/tests/test_consolidate_research.py +48 -0
  205. package/.claude/tests/test_export_contracts.py +43 -0
  206. package/.claude/tests/test_extract_data_model.py +33 -0
  207. package/.claude/tests/test_generate_quickstart.py +50 -0
  208. package/.claude/tests/test_generate_research_tasks.py +52 -0
  209. package/.claude/tsc-cache/6e64f818-6398-49ca-8623-581a9af85c44/edited-files.log +1 -0
  210. package/.claude/tsc-cache/795ba6e3-b98a-423b-bab2-51aa62812569/affected-repos.txt +1 -0
  211. package/.claude/tsc-cache/795ba6e3-b98a-423b-bab2-51aa62812569/edited-files.log +1 -0
  212. package/.claude/tsc-cache/ae335694-be5a-4ba4-a1a0-b676c09a7906/affected-repos.txt +1 -0
  213. package/.claude/tsc-cache/ae335694-be5a-4ba4-a1a0-b676c09a7906/edited-files.log +1 -0
  214. package/CHANGELOG.md +507 -0
  215. package/LICENSE +21 -0
  216. package/README.md +534 -0
  217. package/README.zh-CN.md +530 -0
  218. package/bin/adapt.js +240 -0
  219. package/bin/cc-devflow-cli.js +185 -0
  220. package/bin/cc-devflow.js +78 -0
  221. package/config/adapters.yml +5 -0
  222. package/config/schema/adapters.schema.json +44 -0
  223. package/docs/CLAUDE.md +26 -0
  224. package/docs/commands/README.md +61 -0
  225. package/docs/commands/README.zh-CN.md +55 -0
  226. package/docs/commands/core-roadmap.md +106 -0
  227. package/docs/commands/core-roadmap.zh-CN.md +102 -0
  228. package/docs/commands/core-style.md +405 -0
  229. package/docs/commands/core-style.zh-CN.md +405 -0
  230. package/docs/commands/flow-init.md +134 -0
  231. package/docs/commands/flow-init.zh-CN.md +163 -0
  232. package/docs/commands/flow-new.md +274 -0
  233. package/docs/commands/flow-new.zh-CN.md +270 -0
  234. package/docs/guides/getting-started.md +204 -0
  235. package/docs/guides/getting-started.zh-CN.md +152 -0
  236. package/lib/adapters/adapter-interface.js +57 -0
  237. package/lib/adapters/claude-adapter.js +74 -0
  238. package/lib/adapters/codex-adapter.js +40 -0
  239. package/lib/adapters/config-validator.js +68 -0
  240. package/lib/adapters/logger.js +42 -0
  241. package/lib/adapters/registry.js +153 -0
  242. package/lib/compiler/CLAUDE.md +92 -0
  243. package/lib/compiler/__tests__/drift.test.js +215 -0
  244. package/lib/compiler/__tests__/errors.test.js +184 -0
  245. package/lib/compiler/__tests__/incremental.test.js +174 -0
  246. package/lib/compiler/__tests__/integration.test.js +174 -0
  247. package/lib/compiler/__tests__/manifest.test.js +233 -0
  248. package/lib/compiler/__tests__/parser.test.js +456 -0
  249. package/lib/compiler/__tests__/schemas.test.js +301 -0
  250. package/lib/compiler/__tests__/skills-registry.test.js +125 -0
  251. package/lib/compiler/__tests__/transformer.test.js +286 -0
  252. package/lib/compiler/emitters/antigravity-emitter.js +171 -0
  253. package/lib/compiler/emitters/base-emitter.js +73 -0
  254. package/lib/compiler/emitters/codex-emitter.js +52 -0
  255. package/lib/compiler/emitters/cursor-emitter.js +31 -0
  256. package/lib/compiler/emitters/index.js +50 -0
  257. package/lib/compiler/emitters/qwen-emitter.js +39 -0
  258. package/lib/compiler/errors.js +119 -0
  259. package/lib/compiler/index.js +256 -0
  260. package/lib/compiler/manifest.js +242 -0
  261. package/lib/compiler/parser.js +258 -0
  262. package/lib/compiler/platforms.js +113 -0
  263. package/lib/compiler/resource-copier.js +320 -0
  264. package/lib/compiler/rules-emitters/__tests__/antigravity-rules-emitter.test.js +191 -0
  265. package/lib/compiler/rules-emitters/__tests__/codex-rules-emitter.test.js +109 -0
  266. package/lib/compiler/rules-emitters/__tests__/cursor-rules-emitter.test.js +123 -0
  267. package/lib/compiler/rules-emitters/__tests__/qwen-rules-emitter.test.js +123 -0
  268. package/lib/compiler/rules-emitters/antigravity-rules-emitter.js +253 -0
  269. package/lib/compiler/rules-emitters/base-rules-emitter.js +83 -0
  270. package/lib/compiler/rules-emitters/codex-rules-emitter.js +116 -0
  271. package/lib/compiler/rules-emitters/cursor-rules-emitter.js +98 -0
  272. package/lib/compiler/rules-emitters/index.js +71 -0
  273. package/lib/compiler/rules-emitters/qwen-rules-emitter.js +70 -0
  274. package/lib/compiler/schemas.js +144 -0
  275. package/lib/compiler/skills-registry.js +225 -0
  276. package/lib/compiler/transformer.js +236 -0
  277. package/package.json +50 -0
@@ -0,0 +1,260 @@
1
+ ---
2
+ name: flow-checklist
3
+ description: 'Generate requirement quality checklist. Usage: /flow-checklist [OPTIONS]'
4
+ ---
5
+
6
+ # /flow-checklist - 需求质量检查命令
7
+
8
+ ## Usage
9
+ ```
10
+ /flow-checklist [OPTIONS]
11
+ ```
12
+
13
+ ## Purpose
14
+ 生成和管理需求质量检查清单 - "Unit Tests for English"。
15
+ 对需求文档进行质量测试,确保需求完整性、清晰性、一致性、可测量性和场景覆盖。
16
+
17
+ ## Options
18
+ | Option | Type | Default | Description |
19
+ |--------|------|---------|-------------|
20
+ | `--type` | string | `general` | Checklist 类型,支持逗号分隔多类型 |
21
+ | `--status` | flag | - | 显示完成度统计 |
22
+ | `--mark` | string | - | 批量标记检查项为完成 (CHK001,CHK002) |
23
+ | `--mark-all` | flag | - | 标记所有检查项为完成 |
24
+ | `--file` | string | - | 指定操作的 Checklist 文件 |
25
+ | `--help` | flag | - | 显示帮助信息 |
26
+
27
+ ## Valid Types
28
+ - `ux`: UX/UI 需求检查
29
+ - `api`: API 需求检查
30
+ - `security`: 安全需求检查
31
+ - `performance`: 性能需求检查
32
+ - `data`: 数据需求检查
33
+ - `general`: 通用需求检查 (默认)
34
+
35
+ ## Entry Gate
36
+ 1. 验证 `PRD.md` 存在
37
+ 2. 验证 `orchestration_status.json.prd_complete == true`
38
+ 3. 创建 `checklists/` 目录 (如不存在)
39
+
40
+ ## Execution Flow
41
+
42
+ ### Generate Checklist (--type)
43
+
44
+ ```
45
+ 1. Parse --type parameter
46
+ → Split by comma if multiple types
47
+ → Validate each type against valid_types
48
+
49
+ 2. For each type:
50
+ a. Read PRD.md content
51
+ b. Invoke checklist-agent.md with:
52
+ - prd_content: PRD.md 内容
53
+ - type: Checklist 类型
54
+ - config: quality-rules.yml 配置
55
+ c. Agent generates checklist items (15-30 items)
56
+ d. Write to checklists/{type}.md
57
+ e. If file exists: Append mode (继续编号)
58
+
59
+ 3. Output summary:
60
+ → Items generated per type
61
+ → Dimension coverage (5/5)
62
+ → Traceability percentage
63
+
64
+ 4. Update orchestration_status.json:
65
+ → checklist.generated_types[]
66
+ → checklist.total_items
67
+ → checklist.generated_at
68
+ ```
69
+
70
+ ### Check Status (--status)
71
+
72
+ ```
73
+ 1. Run calculate-checklist-completion.sh --json
74
+ → Scan checklists/*.md
75
+ → Count [x] and [ ] items
76
+
77
+ 2. Display completion table:
78
+ | Checklist | Complete | Total | Percentage |
79
+ |-----------|----------|-------|------------|
80
+ | ux.md | 16 | 20 | 80% |
81
+ | OVERALL | 46 | 57 | 81% |
82
+
83
+ 3. Compare to threshold (from quality-rules.yml)
84
+ → PASS: completion >= threshold
85
+ → FAIL: completion < threshold
86
+
87
+ 4. Update orchestration_status.json:
88
+ → checklist.checked_items
89
+ → checklist.completion_percentage
90
+ → checklist.last_check_at
91
+ ```
92
+
93
+ ### Mark Items (--mark)
94
+
95
+ ```
96
+ 1. Parse --mark parameter
97
+ → Split by comma
98
+ → Validate each ID format (CHK + 3 digits)
99
+
100
+ 2. For each ID:
101
+ a. Search checklists/*.md for CHK{NNN}
102
+ b. If found: Replace "- [ ]" with "- [x]"
103
+ c. If not found: Output warning
104
+
105
+ 3. Output:
106
+ → "Updated completion: N items marked"
107
+ → "Run /flow-checklist --status to see updated completion"
108
+ ```
109
+
110
+ ### Mark All (--mark-all --file)
111
+
112
+ ```
113
+ 1. Validate --file parameter exists
114
+ 2. Read specified file
115
+ 3. Replace all "- [ ]" with "- [x]"
116
+ 4. Output item count
117
+ ```
118
+
119
+ ## Exit Gate
120
+ 1. 如果生成了新 Checklist:
121
+ - 更新 `orchestration_status.json.checklist`
122
+ - 追加事件到 `EXECUTION_LOG.md`
123
+ 2. 输出下一步提示
124
+
125
+ ## Output Examples
126
+
127
+ ### Generate Single Type
128
+ ```
129
+ Generating UX Checklist...
130
+ Reading PRD.md...
131
+ Analyzing UX requirements...
132
+ Applying Anti-Example rules...
133
+
134
+ ✅ Generated: checklists/ux.md
135
+ Items: 18
136
+ Dimensions: 5/5 (Completeness, Clarity, Consistency, Measurability, Coverage)
137
+ Traceability: 85% (>=80% required)
138
+
139
+ Next: Review and check items, then run /flow-checklist --status
140
+ ```
141
+
142
+ ### Generate Multiple Types
143
+ ```
144
+ Generating multiple Checklists...
145
+
146
+ [1/3] UX Checklist...
147
+ ✅ Generated: checklists/ux.md (18 items)
148
+
149
+ [2/3] API Checklist...
150
+ ✅ Generated: checklists/api.md (22 items)
151
+
152
+ [3/3] Security Checklist...
153
+ ✅ Generated: checklists/security.md (15 items)
154
+
155
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
156
+ Summary:
157
+ | Type | Items Generated | Coverage |
158
+ |----------|-----------------|----------|
159
+ | ux | 18 | 5/5 |
160
+ | api | 22 | 5/5 |
161
+ | security | 15 | 4/5 |
162
+ | TOTAL | 55 | - |
163
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
164
+
165
+ Next: Review and check items, then run /flow-checklist --status
166
+ ```
167
+
168
+ ### Check Status
169
+ ```
170
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
171
+ Checklist Completion Status
172
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
173
+ | Checklist | Complete | Total | Percentage |
174
+ |-----------|----------|-------|------------|
175
+ | ux.md | 16 | 20 | 80% |
176
+ | api.md | 18 | 22 | 82% |
177
+ | security | 12 | 15 | 80% |
178
+ |-----------|----------|-------|------------|
179
+ | OVERALL | 46 | 57 | 81% |
180
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
181
+
182
+ Gate Threshold: 80%
183
+ Status: ✅ PASS (81% >= 80%)
184
+
185
+ Ready for: /flow-epic
186
+ ```
187
+
188
+ ## Error Handling
189
+
190
+ ### MISSING_PRD
191
+ ```
192
+ ERROR: MISSING_PRD
193
+ PRD.md not found in requirement directory.
194
+
195
+ Run /flow-prd first.
196
+ ```
197
+
198
+ ### INVALID_TYPE
199
+ ```
200
+ ERROR: INVALID_TYPE
201
+ Invalid checklist type: {type}
202
+
203
+ Valid types: ux, api, security, performance, data, general
204
+ ```
205
+
206
+ ### NO_CHECKLISTS
207
+ ```
208
+ ERROR: NO_CHECKLISTS
209
+ No checklists found in checklists/ directory.
210
+
211
+ Run /flow-checklist --type <type> first.
212
+ ```
213
+
214
+ ## Append Mode (T011)
215
+
216
+ When running `--type {type}` and `checklists/{type}.md` already exists:
217
+
218
+ 1. Read existing file
219
+ 2. Find highest CHK number (e.g., CHK018)
220
+ 3. Generate new items starting from next number (CHK019)
221
+ 4. Append new items to existing file
222
+ 5. Preserve existing structure and checked items
223
+
224
+ ## EXECUTION_LOG Events (T012)
225
+
226
+ ### Checklist Generated
227
+ ```markdown
228
+ ### 2025-12-15 23:55:00 (周日)
229
+ **Event**: Checklist Generated
230
+ **Type**: ux
231
+ **Items**: 18
232
+ **Dimensions**: 5/5
233
+ **Traceability**: 85%
234
+ ```
235
+
236
+ ### Status Checked
237
+ ```markdown
238
+ ### 2025-12-15 23:58:00 (周日)
239
+ **Event**: Checklist Status Checked
240
+ **Completion**: 81%
241
+ **Threshold**: 80%
242
+ **Status**: PASS
243
+ ```
244
+
245
+ ## Related Commands
246
+
247
+ | Command | Relationship |
248
+ |---------|--------------|
249
+ | `/flow-prd` | Prerequisite (generates PRD.md) |
250
+ | `/flow-epic` | Consumer (uses checklist gate) |
251
+ | `/flow-status` | Reader (displays checklist status) |
252
+
253
+ ## Configuration
254
+
255
+ Config file: `config/quality-rules.yml`
256
+
257
+ Key settings:
258
+ - `gate.threshold`: Minimum completion % (default: 80)
259
+ - `types.{type}.min_items`: Minimum items per type (default: 15)
260
+ - `types.{type}.max_items`: Maximum items per type (default: 30)
@@ -0,0 +1,136 @@
1
+ ---
2
+ name: flow-clarify
3
+ description: 'Requirement clarification with 11-dimension ambiguity scan. Usage: /flow-clarify [REQ-XXX] [--skip] [--history]'
4
+ ---
5
+
6
+ # /flow-clarify - 需求澄清命令
7
+
8
+ ## Usage
9
+ ```
10
+ /flow-clarify [REQ-XXX] [--skip] [--history]
11
+ ```
12
+
13
+ ## Purpose
14
+ 在 PRD 生成前通过 11 维度歧义扫描系统化消除需求模糊性。
15
+
16
+ ## Arguments
17
+ - `REQ-XXX`: 需求编号(可选,默认从分支推断)
18
+ - `--skip`: 跳过澄清,直接进入下一阶段
19
+ - `--history`: 查看历史澄清记录
20
+
21
+ ## Entry Gate
22
+ 1. 验证 `research/research.md` 存在
23
+ 2. 验证 `orchestration_status.json.phase0_complete == true`
24
+ 3. 检查 `.session.json` 是否有未完成会话(断点恢复)
25
+
26
+ ## Execution Flow
27
+
28
+ ### Phase 1: Scan (自动执行)
29
+ ```bash
30
+ # 调用 run-clarify-scan.sh 执行 11 维度并行扫描
31
+ .claude/scripts/run-clarify-scan.sh REQ-XXX --parallel
32
+ ```
33
+
34
+ 输出: scan_result.json (内存)
35
+
36
+ ### Phase 2: Question Generation (自动执行)
37
+ ```bash
38
+ # 基于扫描结果生成 ≤5 个优先级排序问题
39
+ .claude/scripts/generate-clarification-questions.sh --input scan_result.json --max 5
40
+ ```
41
+
42
+ 输出: questions[] with AI recommendations
43
+
44
+ ### Phase 3: Interactive Q&A (用户交互)
45
+ For each question:
46
+ 1. Display question + options + AI recommendation (⭐ RECOMMENDED)
47
+ 2. Read user input
48
+ 3. Validate answer (A-E or ≤5 words)
49
+ 4. Generate rationale (Claude Haiku)
50
+ 5. Save to .session.json (incremental)
51
+
52
+ ### Phase 4: Report Generation (自动执行)
53
+ ```bash
54
+ # 生成澄清报告
55
+ .claude/scripts/generate-clarification-report.sh --session .session.json
56
+ ```
57
+
58
+ 输出: research/clarifications/[timestamp]-flow-clarify.md
59
+
60
+ ## Exit Gate
61
+ 1. 验证报告完整性
62
+ 2. 更新 `orchestration_status.json`:
63
+ - `clarify_complete = true`
64
+ - `clarify_session_id = [sessionId]`
65
+ 3. 删除 `.session.json`
66
+ 4. 输出: "✅ Ready for /flow-prd"
67
+
68
+ ## Session Recovery
69
+ 如果检测到 `.session.json`:
70
+ 1. 显示恢复提示
71
+ 2. 从 `currentQuestionIndex` 继续
72
+ 3. 不重复已回答的问题
73
+
74
+ ## User Abort (Ctrl+C)
75
+ 1. 捕获 SIGINT
76
+ 2. 保存当前进度到 `.session.json`
77
+ 3. 输出恢复命令: `/flow-clarify REQ-XXX`
78
+
79
+ ## Output Format
80
+
81
+ ### Question Display
82
+ ```
83
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
84
+ 📝 Q1: 关于 Functional Scope
85
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
86
+ 用户权限应如何划分?
87
+
88
+ A) RBAC 角色模型 - 基于角色的访问控制
89
+ B) ABAC 属性模型 - 基于属性的访问控制
90
+ C) 简单二元权限 - admin/user 两级
91
+
92
+ ⭐ RECOMMENDED: A (RBAC 是企业级应用最常见模式)
93
+
94
+ Your choice (A-C, or press Enter for recommended):
95
+ ```
96
+
97
+ ### Report Structure
98
+ ```markdown
99
+ # Clarification Report: REQ-XXX
100
+
101
+ ## Metadata
102
+ - Session ID: 20251215-143000-REQ-001
103
+ - Date: 2025-12-15
104
+ - Questions: 3 / 5
105
+
106
+ ## Scan Summary
107
+ | Dimension | Status | Issues |
108
+ |-----------|--------|--------|
109
+ | Functional Scope | ambiguous | 2 |
110
+ | ...
111
+
112
+ ## Clarification Session
113
+ ### Q1: Functional Scope
114
+ **Question**: 用户权限应如何划分?
115
+ **Answer**: A (RBAC 角色模型)
116
+ **Rationale**: RBAC 提供灵活的权限管理...
117
+
118
+ ## Next Command
119
+ ✅ Run `/flow-prd` to generate PRD
120
+ ```
121
+
122
+ ## Error Handling
123
+ - `MISSING_RESEARCH`: research.md 不存在 → 提示先运行 `/flow-init`
124
+ - `INVALID_PHASE`: phase0_complete != true → 提示完成研究阶段
125
+ - `API_ERROR`: Claude API 错误 → 降级到规则引擎
126
+ - `SESSION_CORRUPT`: .session.json 损坏 → 提示删除重试
127
+
128
+ ## Related Commands
129
+ - **前置**: `/flow-init` (生成 research.md)
130
+ - **后续**: `/flow-prd` (生成 PRD)
131
+ - **可选**: `/flow-clarify --history` (查看历史)
132
+
133
+ ## Constitution Compliance
134
+ - **Article I**: 完整实现,无 TODO
135
+ - **Article III**: API Key 使用环境变量
136
+ - **Article VI**: TDD 顺序正确
@@ -0,0 +1,82 @@
1
+ ---
2
+ name: flow-constitution
3
+ description: 'Manage CC-DevFlow Constitution. Usage: /flow-constitution [--article I] [--amend --proposal file] [--apply --version TYPE]'
4
+ scripts:
5
+ manage: .claude/scripts/manage-constitution.sh
6
+ ---
7
+
8
+ # Flow-Constitution - 宪法管理命令
9
+
10
+ ## User Input
11
+ ```text
12
+ $ARGUMENTS = "[--article I] [--verify] [--impact-report] [--amend --proposal path] [--apply --version TYPE] [--history]"
13
+ ```
14
+
15
+ ## 执行原则
16
+ - 所有功能均由 `{SCRIPT:manage}` 执行;此文档仅说明入口与参数。
17
+ - Article 编号遵循罗马数字 I-X。
18
+ - 版本类型:MAJOR / MINOR / PATCH(SemVer 语义)。
19
+
20
+ ## 常用命令
21
+ ```text
22
+ /flow-constitution → show 当前版本
23
+ /flow-constitution --article IV → show 指定 Article
24
+ /flow-constitution --verify → verify 全局一致性
25
+ /flow-constitution --impact-report → impact 分析
26
+ /flow-constitution --history → 历史
27
+ /flow-constitution --amend --proposal amendments/2025-01-10-observability.md
28
+ /flow-constitution --apply --version MINOR
29
+ /flow-constitution --apply --version PATCH --force
30
+ ```
31
+
32
+ ## 执行流程(由脚本实现)
33
+
34
+ ### 1. Show / Article
35
+ ```
36
+ → {SCRIPT:manage} show [ARTICLE]
37
+ → 输出当前版本、修订日期、指定 Article 内容
38
+ ```
39
+
40
+ ### 2. Verify
41
+ ```
42
+ → {SCRIPT:manage} verify
43
+ → 检查所有模板/代理/脚本的 Constitution 版本号一致
44
+ → 调用 validate-constitution hooks,如有违规列出文件
45
+ ```
46
+
47
+ ### 3. Impact Report
48
+ ```
49
+ → {SCRIPT:manage} impact
50
+ → 汇总即将应用的修正案对模板/代理/脚本的影响
51
+ → 生成报告 (amendments/impact_*.md)
52
+ ```
53
+
54
+ ### 4. Amend
55
+ ```
56
+ → {SCRIPT:manage} amend <proposal>
57
+ → 校验提案格式(版本建议、动机、影响、迁移策略)
58
+ → 输出预览并提示下一步(apply 之前需人工 review)
59
+ ```
60
+
61
+ ### 5. Apply
62
+ ```
63
+ → {SCRIPT:manage} apply <TYPE>
64
+ → 更新 .claude/constitution/project-constitution.md 版本号
65
+ → 触发模板/代理/脚本同步
66
+ → 生成 Sync Report
67
+ ```
68
+
69
+ ### 6. History
70
+ ```
71
+ → {SCRIPT:manage} history
72
+ → 列出版本历史与修订摘要
73
+ ```
74
+
75
+ ## 错误处理
76
+ - 未提供必要参数(如 --proposal)→ 脚本返回错误提示。
77
+ - Invalid version bump → 阻断,要求遵循 MAJOR/MINOR/PATCH。
78
+ - 验证失败(如模板未同步)→ 返回违规清单,用户需手动修复。
79
+
80
+ ## 下一步
81
+ - 需要向项目传播修订时,先运行 `--impact-report`,与团队确认后再 `--apply`。
82
+ - 应用后建议运行 `/flow-verify --all` 确认所有需求遵循最新宪法。
@@ -0,0 +1,134 @@
1
+ ---
2
+ name: flow-dev
3
+ description: 'Execute development tasks following TDD order. Usage: /flow-dev "REQ-123" or /flow-dev'
4
+ scripts:
5
+ prereq: .claude/scripts/check-prerequisites.sh
6
+ check_tasks: .claude/scripts/check-task-status.sh
7
+ mark_task: .claude/scripts/mark-task-complete.sh
8
+ validate_constitution: .claude/scripts/validate-constitution.sh
9
+ ---
10
+
11
+ # Flow-Dev - 开发执行命令
12
+
13
+ ## User Input
14
+ ```text
15
+ $ARGUMENTS = "REQ_ID? [--task T###]"
16
+ ```
17
+ 未提供 REQ_ID 时从当前分支或 `DEVFLOW_REQ_ID` 推断;`--task` 用于指定起始任务。
18
+
19
+ ## 执行流程
20
+
21
+ ### 阶段 1: Entry Gate
22
+ ```
23
+ 1. 解析 REQ_ID 与 --task
24
+ → If argument provided: split
25
+ → Else: run {SCRIPT:prereq} --json --paths-only
26
+
27
+ 2. 校验资产
28
+ → 必须存在(/flow-tech 产物):
29
+ • TECH_DESIGN.md (技术方案总纲)
30
+ • research/codebase-tech-analysis.md (代码库技术分析)
31
+ • data-model.md (数据模型定义)
32
+ • contracts/ (API 契约目录,至少 1 个文件)
33
+ • quickstart.md (快速启动指南)
34
+ → 必须存在(/flow-epic 产物):
35
+ • EPIC.md (Epic 规划文档)
36
+ • TASKS.md (任务分解清单)
37
+ → 状态校验:
38
+ • orchestration_status.status ∈ {"epic_complete", "development_in_progress"}
39
+ • phase0_complete == true (研究阶段完成)
40
+ • phase1_complete == true (技术设计完成)
41
+
42
+ 3. TASKS 结构校验
43
+ → Phase 顺序: Setup → Foundational → Phase 2 Tests First → ⚠️ Test Verification → Phase 3 Core Implementation → ...
44
+ → 任务格式 `- [ ] T### [P?] [US?] Description (path)`
45
+
46
+ 4. 起始任务
47
+ → Run: {SCRIPT:check_tasks} --json
48
+ → 若指定 --task,验证任务存在且未完成
49
+ → 记录下一任务 ID
50
+ ```
51
+
52
+ ### 阶段 2: Quickstart 与风格指南加载
53
+ ```
54
+ 1. 读取 quickstart.md
55
+ → 获取环境变量、依赖安装、测试命令
56
+
57
+ 2. 读取 STYLE.md(如存在)
58
+ → 检查 devflow/STYLE.md 文件
59
+ → 如存在:
60
+ • 加载设计风格指南(颜色、字体、间距、组件样式等)
61
+ • 所有前端代码生成必须遵循 STYLE.md 定义的风格
62
+ • 特别注意:
63
+ - 颜色使用(使用 CSS Variables 或 Tailwind classes 引用 STYLE.md 定义)
64
+ - 字体使用(字体族、字阶、行高、字重等必须符合 STYLE.md)
65
+ - 间距使用(padding, margin, gap 必须使用 STYLE.md 的间距系统)
66
+ - 组件结构(Button, Card, Input 等必须遵循 STYLE.md 的组件规范)
67
+ - 阴影、圆角、动画、透明度等(必须遵循 STYLE.md)
68
+ • 在 EXECUTION_LOG.md 记录 STYLE.md 版本和使用情况
69
+ → 如不存在:
70
+ • 使用项目现有的样式约定(如有)
71
+ • 建议用户运行 /flow-style 建立项目设计标准
72
+
73
+ 3. 如果首次运行:
74
+ → 执行 quickstart 中的 setup 命令
75
+
76
+ 4. 在 EXECUTION_LOG.md 记录 quickstart 版本 + STYLE.md 版本(如有)
77
+ ```
78
+
79
+ ### 阶段 3: TDD 循环
80
+ ```
81
+ For each remaining task (顺序严格遵循 TASKS.md):
82
+
83
+ 1. 读取任务定义
84
+ → 提取 task id、phase、文件路径、是否 [P]
85
+
86
+ 2. 执行策略
87
+ - Phase 2 (测试任务):
88
+ • 根据 contracts/ 生成 contract/integration tests
89
+ • 每个测试必须 FAIL (使用 quickstart 的 test 命令)
90
+ - Phase 3 (实现任务):
91
+ • 依据 data-model.md、TECH_DESIGN.md、contracts/ 实现代码
92
+ • 运行相关测试 (quickstart) 确认 PASS
93
+ - 后续 Phase:
94
+ • 按任务描述(安全、性能、文档等)完成
95
+
96
+ 3. 验证 DoD
97
+ → 测试失败/成功状态符合阶段要求
98
+ → 文件路径与任务描述一致
99
+
100
+ 4. 标记完成
101
+ → Run: {SCRIPT:mark_task} T###
102
+ → Git 提交 (一任务一提交)
103
+ ```
104
+
105
+ ### 阶段 4: Exit Gate
106
+ ```
107
+ 1. 所有任务完成?
108
+ → {SCRIPT:check_tasks} --json 确认 remaining=0
109
+
110
+ 2. 代码质量
111
+ → 运行 quickstart 中全量测试命令
112
+ → 可选: {SCRIPT:validate_constitution} --type dev --severity warning
113
+
114
+ 3. 状态更新
115
+ → orchestration_status:
116
+ status = "development_complete"
117
+ completedSteps append "dev"
118
+ → EXECUTION_LOG.md 记录完成
119
+ ```
120
+
121
+ ## 运行提示
122
+ - 始终使用 quickstart 中提供的命令(测试、lint、db migrate 等)。
123
+ - Phase 2 的所有测试必须在实现前失败;若某测试直接通过,回滚并修正。
124
+ - 遵循 TASKS.md 标注的 `[P]` 仅表示逻辑上可并行,实际执行依旧串行。
125
+ - 如需恢复,可使用 `/flow-dev --task TXYZ` 指向首个未完成任务。
126
+
127
+ ## 错误处理
128
+ - 缺少资产 → 引导用户先运行 `/flow-tech` 或 `/flow-epic`。
129
+ - quickstart 命令失败 → 输出日志路径,要求修复环境后重试。
130
+ - 任务执行失败 → 保留当前状态,不自动跳过。
131
+
132
+ ## 下一步
133
+ 1. 完成所有任务后运行 `/flow-qa` 进入测试与安全审查。
134
+ 2. 若有新技术引入,回到 `research/tasks.json` 补记并通知 planner。