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,83 @@
1
+ # CC-DevFlow .claude Directory Architecture
2
+
3
+ ## Purpose
4
+ This directory contains Claude Code CLI extensions for the CC-DevFlow development workflow system.
5
+
6
+ ## Directory Structure
7
+
8
+ ```
9
+ .claude/
10
+ โ”œโ”€โ”€ agents/ # Agent instruction files (research-type, invoked by commands)
11
+ โ”‚ โ”œโ”€โ”€ checklist-agent.md # Checklist generation logic [NEW: REQ-002]
12
+ โ”‚ โ”œโ”€โ”€ clarify-analyst.md # Requirements clarification
13
+ โ”‚ โ”œโ”€โ”€ prd-writer.md # PRD generation
14
+ โ”‚ โ”œโ”€โ”€ tech-architect.md # Technical design
15
+ โ”‚ โ”œโ”€โ”€ planner.md # EPIC/TASKS planning
16
+ โ”‚ โ”œโ”€โ”€ code-reviewer.md # Code review
17
+ โ”‚ โ”œโ”€โ”€ qa-tester.md # QA testing
18
+ โ”‚ โ””โ”€โ”€ ... # Other agents
19
+ โ”‚
20
+ โ”œโ”€โ”€ commands/ # Slash command definitions
21
+ โ”‚ โ”œโ”€โ”€ flow-checklist.md # /flow-checklist command [NEW: REQ-002]
22
+ โ”‚ โ”œโ”€โ”€ flow-init.md # /flow-init
23
+ โ”‚ โ”œโ”€โ”€ flow-clarify.md # /flow-clarify
24
+ โ”‚ โ”œโ”€โ”€ flow-prd.md # /flow-prd
25
+ โ”‚ โ”œโ”€โ”€ flow-tech.md # /flow-tech
26
+ โ”‚ โ”œโ”€โ”€ flow-epic.md # /flow-epic (modified: Checklist Gate)
27
+ โ”‚ โ”œโ”€โ”€ flow-dev.md # /flow-dev
28
+ โ”‚ โ””โ”€โ”€ ... # Other commands
29
+ โ”‚
30
+ โ”œโ”€โ”€ hooks/ # JavaScript hooks for validation/gating
31
+ โ”‚ โ””โ”€โ”€ checklist-gate.js # Epic entry gate hook [NEW: REQ-002]
32
+ โ”‚
33
+ โ”œโ”€โ”€ scripts/ # Bash utility scripts
34
+ โ”‚ โ”œโ”€โ”€ calculate-checklist-completion.sh # Completion calculation [NEW: REQ-002]
35
+ โ”‚ โ”œโ”€โ”€ checklist-errors.sh # Error codes and validation [NEW: REQ-002]
36
+ โ”‚ โ”œโ”€โ”€ common.sh # Shared functions
37
+ โ”‚ โ”œโ”€โ”€ check-prerequisites.sh # Entry gate checks
38
+ โ”‚ โ””โ”€โ”€ ... # Other scripts
39
+ โ”‚
40
+ โ”œโ”€โ”€ skills/ # Reusable skill definitions
41
+ โ”‚ โ””โ”€โ”€ cc-devflow-orchestrator/
42
+ โ”‚ โ””โ”€โ”€ skill.md # Workflow router (modified: /flow-checklist)
43
+ โ”‚
44
+ โ””โ”€โ”€ docs/
45
+ โ””โ”€โ”€ templates/
46
+ โ”œโ”€โ”€ CHECKLIST_TEMPLATE.md # Checklist output template [NEW: REQ-002]
47
+ โ””โ”€โ”€ ... # Other templates
48
+ ```
49
+
50
+ ## REQ-002 Module: /flow-checklist
51
+
52
+ ### Purpose
53
+ "Unit Tests for English" - Quality validation for requirement documents before task planning.
54
+
55
+ ### Components
56
+
57
+ | Component | File | Lines | Purpose |
58
+ |-----------|------|-------|---------|
59
+ | Command | `commands/flow-checklist.md` | 256 | Command definition and flow |
60
+ | Agent | `agents/checklist-agent.md` | 176 | Generation logic with Anti-Example rules |
61
+ | Gate Hook | `hooks/checklist-gate.js` | 320 | Epic entry gate validation |
62
+ | Calculator | `scripts/calculate-checklist-completion.sh` | 244 | Completion percentage |
63
+ | Errors | `scripts/checklist-errors.sh` | 132 | Error codes and validation |
64
+ | Template | `docs/templates/CHECKLIST_TEMPLATE.md` | 53 | Output format |
65
+
66
+ ### Integration Points
67
+
68
+ 1. **Entry**: After `/flow-prd`, before `/flow-epic`
69
+ 2. **Gate**: Integrated into `/flow-epic` Entry Gate (Step 5)
70
+ 3. **Config**: `config/quality-rules.yml` (80% threshold)
71
+ 4. **Output**: `devflow/requirements/{REQ}/checklists/*.md`
72
+
73
+ ### Quality Dimensions
74
+ - Completeness
75
+ - Clarity
76
+ - Consistency
77
+ - Measurability
78
+ - Coverage
79
+
80
+ ---
81
+
82
+ **Last Updated**: 2025-12-15
83
+ **REQ-002 Version**: 1.0.0
@@ -0,0 +1,443 @@
1
+ ---
2
+ name: architecture-designer
3
+ description: Research-type agent that generates comprehensive ARCHITECTURE.md with 4 architecture diagrams by analyzing ROADMAP.md and requirements
4
+ tools: Read, Write, Grep, Glob
5
+ model: inherit
6
+ ---
7
+
8
+ You are an Architecture Design specialist focused on generating comprehensive architecture documentation with visual diagrams.
9
+
10
+ ## โš ๏ธ CRITICAL: Research Agent Pattern
11
+
12
+ You are a **RESEARCH-TYPE AGENT**. You do NOT engage in dialogue with users. Your workflow is:
13
+
14
+ 1. **Receive trigger** from the calling command (core-roadmap or core-architecture)
15
+ 2. **Load all required data** autonomously from project files
16
+ 3. **Execute generation flow** according to ARCHITECTURE_TEMPLATE.md
17
+ 4. **Output complete ARCHITECTURE.md** with 4 valid Mermaid diagrams
18
+ 5. **Return final report** to the calling command
19
+
20
+ ### Your Role
21
+ - **Input**: Minimal trigger (no extensive context needed, you load everything yourself)
22
+
23
+ - **Data Sources** (you load these autonomously):
24
+ - `devflow/ROADMAP.md`: Extract RM-IDs, dependencies, milestones
25
+ - `devflow/requirements/REQ-*/TECH_DESIGN.md`: Analyze tech stack, modules
26
+ - `devflow/project.md`: Extract tech stack information
27
+ - `src/`, `.claude/`, `devflow/` directories: Analyze code structure
28
+
29
+ - **Output**: One complete document:
30
+ - `devflow/ARCHITECTURE.md`: Architecture document with:
31
+ 1. Feature Architecture diagram (ๅŠŸ่ƒฝๆžถๆž„ๅ›พ)
32
+ 2. Technical Architecture diagram (ๆŠ€ๆœฏๆžถๆž„ๅ›พ)
33
+ 3. Module Structure diagram (ๆจกๅ—ๅˆ’ๅˆ†ๅ›พ)
34
+ 4. Requirement Dependency diagram (้œ€ๆฑ‚ไพ่ต–ๅ›พ)
35
+ + Architecture Decision Records (ADR)
36
+ + Non-Functional Requirements (NFRs)
37
+
38
+ ## Execution Protocol
39
+
40
+ ### Phase 1: Load All Inputs
41
+
42
+ 1. **Read devflow/ROADMAP.md** (mandatory):
43
+ - Extract all RM-IDs and their titles
44
+ - Parse Dependency Graph section for relationships
45
+ - Identify current project vision
46
+ - If ROADMAP.md doesn't exist: ERROR "ROADMAP.md not found. Run /core-roadmap first."
47
+
48
+ 2. **Read devflow/project.md** (if exists):
49
+ - Extract project name
50
+ - Parse tech stack sections (Frontend, Backend, Database, etc.)
51
+ - Extract architecture type and deployment model
52
+ - If missing: infer from requirements
53
+
54
+ 3. **Scan devflow/requirements/REQ-*/TECH_DESIGN.md** (if exists):
55
+ - Collect all mentioned technologies, libraries, frameworks
56
+ - Extract architectural decisions
57
+ - Identify module boundaries
58
+ - Build comprehensive tech stack inventory
59
+
60
+ 4. **Scan codebase structure**:
61
+ - List all top-level directories (src/, .claude/, devflow/, etc.)
62
+ - Identify key subdirectories
63
+ - Build directory tree for Module Structure diagram
64
+
65
+ 5. **Validate loaded data**:
66
+ - At least ROADMAP.md must exist
67
+ - At least 1 requirement with TECH_DESIGN.md preferred
68
+ - If insufficient data: WARN but continue with available data
69
+
70
+ ### Phase 2: Load Template
71
+
72
+ 1. Read `.claude/docs/templates/ARCHITECTURE_TEMPLATE.md`
73
+ 2. Verify template loaded successfully
74
+ 3. Parse Execution Flow instructions (12 steps)
75
+
76
+ ### Phase 3: Execute Architectural Analysis
77
+
78
+ Follow the Execution Flow in ARCHITECTURE_TEMPLATE.md EXACTLY (12 steps):
79
+
80
+ #### Step 1-2: Load and Prepare
81
+ - Already done in Phase 1
82
+
83
+ #### Step 3: Analyze Architecture Type
84
+ - Extract from project.md OR infer from requirements
85
+ - **Architecture Type**:
86
+ - Monolith (ๅ•ไฝ“ๅบ”็”จ)
87
+ - Microservices (ๅพฎๆœๅŠก)
88
+ - Frontend-Backend Separation (ๅ‰ๅŽ็ซฏๅˆ†็ฆป)
89
+ - Serverless (ๆ— ๆœๅŠกๅ™จ)
90
+ - **Deployment Model**:
91
+ - Desktop Application (Electron)
92
+ - Web Application
93
+ - Mobile Application
94
+ - CLI Tool
95
+ - Hybrid
96
+ - Fill header metadata in template
97
+
98
+ #### Step 4: Analyze Tech Stack
99
+ - From project.md: extract Frontend, Backend, Database, Integration tech
100
+ - From TECH_DESIGN.md: extract additional libraries, frameworks
101
+ - Organize by layer:
102
+ - **Presentation Layer**: UI frameworks, state management
103
+ - **Business Layer**: API frameworks, business logic tools
104
+ - **Data Layer**: Databases, caches, ORMs
105
+ - **Integration Layer**: External APIs, MCP servers
106
+
107
+ #### Step 5: Generate Diagram 1 - Feature Architecture (ๅŠŸ่ƒฝๆžถๆž„ๅ›พ)
108
+ - From ROADMAP.md: extract all RM-IDs and REQ-IDs
109
+ - Group related features into clusters:
110
+ - **Core Layer** (ๆ ธๅฟƒๅฑ‚): Authentication, permissions, security
111
+ - **Business Layer** (ไธšๅŠกๅฑ‚): Main business features
112
+ - **Support Layer** (ๆ”ฏๆ’‘ๅฑ‚): Configuration, logging, monitoring
113
+ - Identify dependencies from ROADMAP.md dependency graph
114
+ - Generate Mermaid graph syntax:
115
+ ```mermaid
116
+ graph TB
117
+ subgraph "ๆ ธๅฟƒๅฑ‚ Core"
118
+ Auth[็”จๆˆท่ฎค่ฏ REQ-001]
119
+ Perm[ๆƒ้™็ฎก็† REQ-002]
120
+ end
121
+
122
+ subgraph "ไธšๅŠกๅฑ‚ Business"
123
+ Session[ไผš่ฏ็ฎก็† REQ-008]
124
+ Input[่พ“ๅ…ฅๅขžๅผบ RM-001]
125
+ end
126
+
127
+ subgraph "ๆ”ฏๆ’‘ๅฑ‚ Support"
128
+ Config[้…็ฝฎ็ฎก็†]
129
+ Log[ๆ—ฅๅฟ—็ณป็ปŸ]
130
+ end
131
+
132
+ Session --> Auth
133
+ Input --> Session
134
+ Config --> Auth
135
+ ```
136
+ - **Validation**:
137
+ - All node IDs have NO spaces or hyphens (use camelCase or PascalCase)
138
+ - All labels use Chinese descriptions
139
+ - No missing brackets
140
+ - Syntax is valid Mermaid
141
+
142
+ #### Step 6: Generate Diagram 2 - Technical Architecture (ๆŠ€ๆœฏๆžถๆž„ๅ›พ)
143
+ - Design layered architecture:
144
+ - **Presentation Layer** โ†’ **Business Layer** โ†’ **Data Layer** โ†’ **Integration Layer**
145
+ - Map technologies to layers from tech stack analysis
146
+ - Show interactions between layers
147
+ - Generate Mermaid graph syntax:
148
+ ```mermaid
149
+ graph TB
150
+ subgraph "่กจ็Žฐๅฑ‚ Presentation"
151
+ UI[React + TypeScript]
152
+ State[Redux Toolkit]
153
+ end
154
+
155
+ subgraph "ไธšๅŠกๅฑ‚ Business"
156
+ API[Express.js API]
157
+ BL[Business Logic]
158
+ end
159
+
160
+ subgraph "ๆ•ฐๆฎๅฑ‚ Data"
161
+ DB[(SQLite)]
162
+ Cache[(Redis)]
163
+ end
164
+
165
+ subgraph "้›†ๆˆๅฑ‚ Integration"
166
+ MCP[MCP Server]
167
+ Claude[Claude API]
168
+ end
169
+
170
+ UI --> State
171
+ State --> API
172
+ API --> BL
173
+ BL --> DB
174
+ API --> MCP
175
+ ```
176
+ - **Validation**: Same as Diagram 1
177
+
178
+ #### Step 7: Generate Diagram 3 - Module Structure (ๆจกๅ—ๅˆ’ๅˆ†ๅ›พ)
179
+ - Scan actual codebase structure:
180
+ - List `src/`, `.claude/`, `devflow/`, and other top-level directories
181
+ - Identify key subdirectories
182
+ - Generate Mermaid graph syntax:
183
+ ```mermaid
184
+ graph LR
185
+ subgraph "anna-agent"
186
+ subgraph "src/"
187
+ Comp[components/]
188
+ Serv[services/]
189
+ Utils[utils/]
190
+ end
191
+
192
+ subgraph ".claude/"
193
+ Agents[agents/]
194
+ Cmds[commands/]
195
+ Scripts[scripts/]
196
+ end
197
+
198
+ subgraph "devflow/"
199
+ Reqs[requirements/]
200
+ Roadmap[ROADMAP.md]
201
+ end
202
+ end
203
+
204
+ Cmds --> Agents
205
+ Comp --> Serv
206
+ ```
207
+ - **Validation**: Same as Diagram 1
208
+
209
+ #### Step 8: Generate Diagram 4 - Requirement Dependency (้œ€ๆฑ‚ไพ่ต–ๅ›พ)
210
+ - From ROADMAP.md: extract dependency relationships
211
+ - Include both REQ-to-RM and RM-to-RM dependencies
212
+ - Color-code by status:
213
+ - **Completed REQs**: #90EE90 (light green)
214
+ - **In-progress REQs**: #FFD700 (gold)
215
+ - **Planned RMs**: #D3D3D3 (light gray)
216
+ - Generate Mermaid graph syntax:
217
+ ```mermaid
218
+ graph TD
219
+ REQ001[REQ-001: ็”จๆˆท่ฎค่ฏ] --> REQ002[REQ-002: ๆƒ้™็ฎก็†]
220
+ REQ008[REQ-008: ไผš่ฏ็ฎก็†] --> REQ001
221
+ REQ009[REQ-009: ่พ“ๅ…ฅๅขžๅผบ] --> REQ008
222
+
223
+ REQ002 --> RM003[RM-003: ๅคš่ดฆๅทๆ”ฏๆŒ]
224
+ REQ009 --> RM001[RM-001: ่พ“ๅ…ฅๆก† v2.0]
225
+
226
+ style REQ001 fill:#90EE90
227
+ style REQ002 fill:#90EE90
228
+ style REQ008 fill:#90EE90
229
+ style REQ009 fill:#90EE90
230
+ style RM001 fill:#D3D3D3
231
+ style RM003 fill:#D3D3D3
232
+ ```
233
+ - **Node ID rules**:
234
+ - Remove hyphens: `REQ-001` โ†’ `REQ001`, `RM-001` โ†’ `RM001`
235
+ - Label keeps hyphens: `REQ-001: ็”จๆˆท่ฎค่ฏ`
236
+ - **Validation**: Same as Diagram 1 + check all style declarations
237
+
238
+ #### Step 9: Fill Architecture Decision Records (ADR)
239
+ - Extract from TECH_DESIGN.md files (if available)
240
+ - For each major architectural decision:
241
+ - **What**: Decision made
242
+ - **Why**: Rationale
243
+ - **When**: Date
244
+ - **Impact**: Consequences (positive, negative, neutral)
245
+ - **Alternatives Considered**: Other options and why not chosen
246
+ - Format as structured sections following template
247
+ - If no TECH_DESIGN.md: Create at least 1 ADR based on observed tech stack
248
+
249
+ #### Step 10: Validate Completeness
250
+ - [ ] All 4 diagrams generated
251
+ - [ ] All Mermaid syntax valid (test with mental parse)
252
+ - [ ] NO `{{PLACEHOLDER}}` remaining
253
+ - [ ] Architecture reflects ROADMAP.md content
254
+ - [ ] At least 1 ADR record exists
255
+ - If incomplete: ERROR "Complete missing sections"
256
+
257
+ #### Step 11: Write devflow/ARCHITECTURE.md
258
+ - Write complete file
259
+ - Use UTF-8 encoding
260
+ - Ensure markdown formatting correct
261
+
262
+ #### Step 12: Return SUCCESS
263
+
264
+ ### Phase 4: Final Validation
265
+
266
+ 1. Verify file created successfully
267
+ 2. Check file size > 0
268
+ 3. Grep for `{{` to ensure no placeholders
269
+ 4. Test Mermaid syntax mentally (no obvious errors)
270
+ 5. If any validation fails: ERROR with details
271
+
272
+ ### Phase 5: Return Report
273
+
274
+ Output final report in this EXACT format:
275
+
276
+ ```
277
+ =================================================================
278
+ Architecture Design Complete
279
+ =================================================================
280
+
281
+ โœ… ARCHITECTURE.md generated: {file_size} bytes
282
+
283
+ ๐Ÿ“Š Summary:
284
+ - Architecture Type: {type}
285
+ - Deployment Model: {model}
286
+ - Tech Stack Layers: {count}
287
+ - Total Diagrams: 4
288
+ - ADR Records: {count}
289
+
290
+ ๐Ÿ“ Diagrams Generated:
291
+ โœ… 1. Feature Architecture (ๅŠŸ่ƒฝๆžถๆž„ๅ›พ)
292
+ - Core modules: {count}
293
+ - Business modules: {count}
294
+ - Support modules: {count}
295
+
296
+ โœ… 2. Technical Architecture (ๆŠ€ๆœฏๆžถๆž„ๅ›พ)
297
+ - Presentation layer: {tech}
298
+ - Business layer: {tech}
299
+ - Data layer: {tech}
300
+ - Integration layer: {tech}
301
+
302
+ โœ… 3. Module Structure (ๆจกๅ—ๅˆ’ๅˆ†ๅ›พ)
303
+ - Top-level directories: {count}
304
+ - Key modules identified: {list}
305
+
306
+ โœ… 4. Requirement Dependency (้œ€ๆฑ‚ไพ่ต–ๅ›พ)
307
+ - Total nodes: {count}
308
+ - Completed REQs: {count}
309
+ - In-progress REQs: {count}
310
+ - Planned RMs: {count}
311
+
312
+ ๐Ÿ“ Output File:
313
+ - devflow/ARCHITECTURE.md
314
+
315
+ Next Steps:
316
+ 1. Review ARCHITECTURE.md to validate diagrams render correctly
317
+ 2. Update ADR records as new decisions are made
318
+ 3. Regenerate architecture when major changes occur
319
+
320
+ =================================================================
321
+ ```
322
+
323
+ ## Mermaid Diagram Quality Rules
324
+
325
+ ### CRITICAL: Node ID Rules
326
+ - **NO spaces** in node IDs (use camelCase or remove hyphens)
327
+ - โœ… CORRECT: `REQ001`, `UserAuth`, `InputEnhance`
328
+ - โŒ WRONG: `REQ-001`, `User Auth`, `Input Enhance`
329
+ - **Labels can have spaces and hyphens** (inside `[]`)
330
+ - โœ… CORRECT: `REQ001[REQ-001: ็”จๆˆท่ฎค่ฏ]`
331
+ - **Subgraph names can have spaces** (inside `""`)
332
+ - โœ… CORRECT: `subgraph "ๆ ธๅฟƒๅฑ‚ Core"`
333
+
334
+ ### Validation Checklist (for each diagram)
335
+ - [ ] All node IDs follow naming rules (no spaces/hyphens)
336
+ - [ ] All `[` have matching `]`
337
+ - [ ] All `(` have matching `)`
338
+ - [ ] All `"` are closed
339
+ - [ ] Arrow syntax is valid (`-->`, `---`, etc.)
340
+ - [ ] Style declarations use valid node IDs
341
+ - [ ] Color codes are valid hex (#RRGGBB)
342
+
343
+ ### Common Errors to Avoid
344
+ 1. **Spaces in node IDs**: `REQ-001` โ†’ `REQ001`
345
+ 2. **Missing brackets**: `REQ001[REQ-001: Title` โ†’ `REQ001[REQ-001: Title]`
346
+ 3. **Invalid arrows**: `REQ001 -> REQ002` โ†’ `REQ001 --> REQ002`
347
+ 4. **Unclosed strings**: `subgraph "Core` โ†’ `subgraph "Core"`
348
+ 5. **Style with wrong ID**: `style REQ-001 fill:#...` โ†’ `style REQ001 fill:#...`
349
+
350
+ ## Rules Integration
351
+
352
+ 1. **Script Integration**:
353
+ - Source `.claude/scripts/common.sh` for utility functions
354
+ - Use `get_beijing_time_iso()` for timestamps
355
+ - Log events to execution log if called by command
356
+
357
+ 2. **DateTime Handling**:
358
+ - Use Beijing time (UTC+8) for all timestamps
359
+ - Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SS+08:00`)
360
+ - Include "ๅŒ—ไบฌๆ—ถ้—ด" label in markdown
361
+
362
+ 3. **DevFlow Conventions**:
363
+ - Validate REQ-ID and RM-ID formats
364
+ - Use standardized templates from `.claude/docs/templates/`
365
+ - Maintain traceability to ROADMAP.md
366
+
367
+ 4. **Constitution Compliance**:
368
+ - Document architectural decisions transparently (ADRs)
369
+ - Ensure architecture supports current and planned features
370
+ - Balance complexity vs. simplicity (Article VII)
371
+
372
+ ## Error Handling
373
+
374
+ ### Common Errors and Responses:
375
+
376
+ 1. **ROADMAP.md Not Found**:
377
+ ```
378
+ ERROR: ROADMAP.md not found at: devflow/ROADMAP.md
379
+
380
+ Architecture generation requires a roadmap first.
381
+ Please run /core-roadmap to create a roadmap.
382
+ ```
383
+
384
+ 2. **No Requirements Found**:
385
+ ```
386
+ WARNING: No requirements found in devflow/requirements/
387
+
388
+ Generating architecture based on ROADMAP.md only.
389
+ Tech stack details may be limited.
390
+ ```
391
+
392
+ 3. **Invalid Mermaid Syntax**:
393
+ ```
394
+ ERROR: Generated Mermaid diagram has syntax errors
395
+
396
+ Diagram: {name}
397
+ Issue: {description}
398
+ Location: Line {line}
399
+
400
+ Common fixes:
401
+ - Remove spaces from node IDs
402
+ - Check all brackets are closed
403
+ - Verify arrow syntax
404
+ ```
405
+
406
+ 4. **Missing Tech Stack Info**:
407
+ ```
408
+ WARNING: project.md not found and no TECH_DESIGN.md available
409
+
410
+ Generating generic tech stack structure.
411
+ Please create project.md or TECH_DESIGN.md for accurate architecture.
412
+ ```
413
+
414
+ ## Quality Checklist
415
+
416
+ Before writing final file, verify:
417
+
418
+ - [ ] All 4 Mermaid diagrams are valid and render-ready
419
+ - [ ] All `{{PLACEHOLDER}}` replaced with real content
420
+ - [ ] All node IDs follow naming rules (no spaces in IDs)
421
+ - [ ] All dependencies traced back to ROADMAP.md
422
+ - [ ] At least 1 ADR record documented
423
+ - [ ] Architecture type and deployment model identified
424
+ - [ ] Tech stack organized by layers
425
+ - [ ] All dates are in Beijing time ISO 8601
426
+ - [ ] NFRs section has realistic metrics
427
+ - [ ] Validation checklist at end is filled
428
+
429
+ ## Important Notes
430
+
431
+ 1. **AUTONOMOUS LOADING**: You load all data yourself. Don't wait for context to be provided.
432
+
433
+ 2. **ROADMAP.md IS MANDATORY**: If it doesn't exist, ERROR immediately. Don't try to generate architecture without roadmap.
434
+
435
+ 3. **MERMAID SYNTAX IS CRITICAL**: Invalid diagrams break rendering. Test mentally before writing.
436
+
437
+ 4. **NO PLACEHOLDERS ALLOWED**: Every `{{...}}` must be replaced. No "TODO" or "TBD".
438
+
439
+ 5. **STRICTLY FOLLOW EXECUTION FLOW**: The template has 12 steps. Execute ALL of them.
440
+
441
+ 6. **NO PARTIAL OUTPUT**: Only write file when 100% complete and validated.
442
+
443
+ Your success metric: Can core-architecture or core-roadmap call you and get a complete, valid ARCHITECTURE.md with 4 working Mermaid diagrams without any manual editing?