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.
- package/.claude/CLAUDE.md +83 -0
- package/.claude/agents/architecture-designer.md +443 -0
- package/.claude/agents/bug-analyzer.md +382 -0
- package/.claude/agents/checklist-agent.md +175 -0
- package/.claude/agents/clarify-analyst.md +50 -0
- package/.claude/agents/code-reviewer.md +71 -0
- package/.claude/agents/codex-analyzer.md +39 -0
- package/.claude/agents/compatibility-checker.md +580 -0
- package/.claude/agents/consistency-checker.md +532 -0
- package/.claude/agents/impact-analyzer.md +441 -0
- package/.claude/agents/planner.md +230 -0
- package/.claude/agents/prd-writer.md +320 -0
- package/.claude/agents/project-guidelines-generator.md +1329 -0
- package/.claude/agents/qa-tester.md +313 -0
- package/.claude/agents/release-manager.md +295 -0
- package/.claude/agents/security-reviewer.md +314 -0
- package/.claude/agents/style-guide-generator.md +458 -0
- package/.claude/agents/tech-architect.md +516 -0
- package/.claude/agents/ui-designer.md +485 -0
- package/.claude/commands/code-review-high.md +58 -0
- package/.claude/commands/core-architecture.md +429 -0
- package/.claude/commands/core-guidelines.md +486 -0
- package/.claude/commands/core-roadmap.md +439 -0
- package/.claude/commands/core-style.md +293 -0
- package/.claude/commands/flow-archive.md +245 -0
- package/.claude/commands/flow-checklist.md +260 -0
- package/.claude/commands/flow-clarify.md +136 -0
- package/.claude/commands/flow-constitution.md +82 -0
- package/.claude/commands/flow-dev.md +134 -0
- package/.claude/commands/flow-epic.md +150 -0
- package/.claude/commands/flow-fix.md +104 -0
- package/.claude/commands/flow-ideate.md +214 -0
- package/.claude/commands/flow-init.md +313 -0
- package/.claude/commands/flow-new.md +394 -0
- package/.claude/commands/flow-prd.md +131 -0
- package/.claude/commands/flow-qa.md +93 -0
- package/.claude/commands/flow-release.md +92 -0
- package/.claude/commands/flow-restart.md +98 -0
- package/.claude/commands/flow-status.md +64 -0
- package/.claude/commands/flow-tech.md +142 -0
- package/.claude/commands/flow-ui.md +189 -0
- package/.claude/commands/flow-update.md +111 -0
- package/.claude/commands/flow-upgrade.md +115 -0
- package/.claude/commands/flow-verify.md +96 -0
- package/.claude/commands/problem-analyzer.md +60 -0
- package/.claude/config/quality-rules.yml +161 -0
- package/.claude/docs/SPEC_KIT_CONSTITUTION_ANALYSIS.md +426 -0
- package/.claude/docs/design/consistency-conflict-detection-algorithms.md +658 -0
- package/.claude/docs/design/intent-driven-input-design.md +380 -0
- package/.claude/docs/design/prd-version-management-design.md +437 -0
- package/.claude/docs/guides/INIT_TROUBLESHOOTING.md +117 -0
- package/.claude/docs/guides/NEW_TROUBLESHOOTING.md +151 -0
- package/.claude/docs/guides/ROADMAP_TROUBLESHOOTING.md +188 -0
- package/.claude/docs/guides/TASK_COMPLETION_MARKING.md +338 -0
- package/.claude/docs/templates/ARCHITECTURE_TEMPLATE.md +633 -0
- package/.claude/docs/templates/BACKLOG_TEMPLATE.md +261 -0
- package/.claude/docs/templates/CHECKLIST_TEMPLATE.md +52 -0
- package/.claude/docs/templates/CLARIFICATION_REPORT_TEMPLATE.md +206 -0
- package/.claude/docs/templates/CODE_REVIEW_TEMPLATE.md +71 -0
- package/.claude/docs/templates/EPIC_TEMPLATE.md +805 -0
- package/.claude/docs/templates/INIT_FLOW_TEMPLATE.md +213 -0
- package/.claude/docs/templates/INTENT_CLARIFICATION_TEMPLATE.md +57 -0
- package/.claude/docs/templates/NEW_ORCHESTRATION_TEMPLATE.md +148 -0
- package/.claude/docs/templates/PRD_TEMPLATE.md +562 -0
- package/.claude/docs/templates/RESEARCH_TEMPLATE.md +276 -0
- package/.claude/docs/templates/REVIEW-HIGH.md +57 -0
- package/.claude/docs/templates/ROADMAP_DIALOGUE_TEMPLATE.md +198 -0
- package/.claude/docs/templates/ROADMAP_TEMPLATE.md +310 -0
- package/.claude/docs/templates/STYLE_TEMPLATE.md +1266 -0
- package/.claude/docs/templates/TASKS_TEMPLATE.md +523 -0
- package/.claude/docs/templates/TECH_DESIGN_TEMPLATE.md +1019 -0
- package/.claude/docs/templates/UI_PROTOTYPE_TEMPLATE.md +1436 -0
- package/.claude/guides/agent-guides/agent-coordination-guide.md +459 -0
- package/.claude/guides/project-guidelines-system.md +463 -0
- package/.claude/guides/technical-guides/datetime-handling-guide.md +563 -0
- package/.claude/guides/technical-guides/git-github-guide.md +642 -0
- package/.claude/guides/technical-guides/test-execution-guide.md +618 -0
- package/.claude/guides/workflow-guides/bug-fix-orchestrator.md +217 -0
- package/.claude/guides/workflow-guides/flow-orchestrator.md +282 -0
- package/.claude/hooks/checklist-gate.js +397 -0
- package/.claude/hooks/error-handling-reminder.sh +12 -0
- package/.claude/hooks/error-handling-reminder.ts +459 -0
- package/.claude/hooks/post-tool-use-tracker.sh +280 -0
- package/.claude/hooks/pre-tool-use-guardrail.sh +36 -0
- package/.claude/hooks/pre-tool-use-guardrail.ts +342 -0
- package/.claude/hooks/skill-activation-prompt.sh +36 -0
- package/.claude/hooks/skill-activation-prompt.ts +214 -0
- package/.claude/hooks/state/skills-used-test-guard.json +3 -0
- package/.claude/rules/devflow-conventions.md +305 -0
- package/.claude/rules/project-constitution.md +748 -0
- package/.claude/schemas/constitution.schema.json +43 -0
- package/.claude/scripts/analyze-upgrade-impact.sh +200 -0
- package/.claude/scripts/archive-requirement.sh +351 -0
- package/.claude/scripts/calculate-checklist-completion.sh +243 -0
- package/.claude/scripts/calculate-quarter.sh +206 -0
- package/.claude/scripts/check-dependencies.sh +409 -0
- package/.claude/scripts/check-prerequisites.sh +232 -0
- package/.claude/scripts/check-task-status.sh +264 -0
- package/.claude/scripts/checklist-errors.sh +131 -0
- package/.claude/scripts/common.sh +570 -0
- package/.claude/scripts/consolidate-research.sh +182 -0
- package/.claude/scripts/create-requirement.sh +426 -0
- package/.claude/scripts/export-contracts.sh +117 -0
- package/.claude/scripts/extract-data-model.sh +78 -0
- package/.claude/scripts/generate-clarification-questions.sh +377 -0
- package/.claude/scripts/generate-clarification-report.sh +463 -0
- package/.claude/scripts/generate-quickstart.sh +146 -0
- package/.claude/scripts/generate-research-tasks.sh +157 -0
- package/.claude/scripts/generate-status-report.sh +523 -0
- package/.claude/scripts/generate-tech-analysis.sh +46 -0
- package/.claude/scripts/locate-requirement-in-roadmap.sh +233 -0
- package/.claude/scripts/manage-constitution.sh +602 -0
- package/.claude/scripts/mark-task-complete.sh +198 -0
- package/.claude/scripts/populate-research-tasks.sh +259 -0
- package/.claude/scripts/recover-workflow.sh +460 -0
- package/.claude/scripts/run-clarify-scan.sh +601 -0
- package/.claude/scripts/run-high-review.sh +62 -0
- package/.claude/scripts/run-problem-analysis.sh +68 -0
- package/.claude/scripts/setup-epic.sh +173 -0
- package/.claude/scripts/sync-roadmap-progress.sh +300 -0
- package/.claude/scripts/sync-task-marks.sh +199 -0
- package/.claude/scripts/test-clarify-scan.sh +515 -0
- package/.claude/scripts/update-agent-context.sh +806 -0
- package/.claude/scripts/validate-constitution.sh +567 -0
- package/.claude/scripts/validate-hooks.sh +487 -0
- package/.claude/scripts/validate-research.sh +332 -0
- package/.claude/scripts/validate-scope-boundary.sh +493 -0
- package/.claude/scripts/verify-setup.sh +37 -0
- package/.claude/settings.json +76 -0
- package/.claude/skills/_reference-implementations/README.md +96 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/SKILL.md +302 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/architecture-overview.md +451 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/async-and-errors.md +307 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/complete-examples.md +638 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/configuration.md +275 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/database-patterns.md +224 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/middleware-guide.md +213 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/routing-and-controllers.md +756 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/sentry-and-monitoring.md +336 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/services-and-repositories.md +789 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/testing-guide.md +235 -0
- package/.claude/skills/_reference-implementations/backend-express-prisma/resources/validation-patterns.md +754 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/SKILL.md +399 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/common-patterns.md +331 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/complete-examples.md +872 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/component-patterns.md +502 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/data-fetching.md +767 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/file-organization.md +502 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/loading-and-error-states.md +501 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/performance.md +406 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/routing-guide.md +364 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/styling-guide.md +428 -0
- package/.claude/skills/_reference-implementations/frontend-react-mui/resources/typescript-standards.md +418 -0
- package/.claude/skills/cc-devflow-orchestrator/SKILL.md +229 -0
- package/.claude/skills/constitution-guardian/SKILL.md +306 -0
- package/.claude/skills/devflow-constitution-quick-ref/SKILL.md +374 -0
- package/.claude/skills/devflow-file-standards/SKILL.md +353 -0
- package/.claude/skills/devflow-tdd-enforcer/SKILL.md +192 -0
- package/.claude/skills/skill-developer/ADVANCED.md +197 -0
- package/.claude/skills/skill-developer/HOOK_MECHANISMS.md +306 -0
- package/.claude/skills/skill-developer/PATTERNS_LIBRARY.md +152 -0
- package/.claude/skills/skill-developer/SKILL.md +426 -0
- package/.claude/skills/skill-developer/SKILL_RULES_REFERENCE.md +315 -0
- package/.claude/skills/skill-developer/TRIGGER_TYPES.md +305 -0
- package/.claude/skills/skill-developer/TROUBLESHOOTING.md +514 -0
- package/.claude/skills/skill-rules.json +213 -0
- package/.claude/tests/README.md +300 -0
- package/.claude/tests/TODO.md +69 -0
- package/.claude/tests/__pycache__/test_analyze_upgrade_impact.cpython-311-pytest-7.2.2.pyc +0 -0
- package/.claude/tests/__pycache__/test_consolidate_research.cpython-311-pytest-7.2.2.pyc +0 -0
- package/.claude/tests/__pycache__/test_export_contracts.cpython-311-pytest-7.2.2.pyc +0 -0
- package/.claude/tests/__pycache__/test_extract_data_model.cpython-311-pytest-7.2.2.pyc +0 -0
- package/.claude/tests/__pycache__/test_generate_quickstart.cpython-311-pytest-7.2.2.pyc +0 -0
- package/.claude/tests/__pycache__/test_generate_research_tasks.cpython-311-pytest-7.2.2.pyc +0 -0
- package/.claude/tests/constitution/run_all_constitution_tests.sh +111 -0
- package/.claude/tests/constitution/test_agent_assignment.sh +207 -0
- package/.claude/tests/constitution/test_article_coverage.sh +201 -0
- package/.claude/tests/constitution/test_template_completeness.sh +150 -0
- package/.claude/tests/constitution/test_version_consistency.sh +120 -0
- package/.claude/tests/fixtures/spec_delta_full.md +16 -0
- package/.claude/tests/fixtures/tasks_progress_sample.md +5 -0
- package/.claude/tests/run-all-tests.sh +229 -0
- package/.claude/tests/scripts/run.sh +30 -0
- package/.claude/tests/scripts/test-framework.sh +128 -0
- package/.claude/tests/scripts/test_check_prerequisites.sh +511 -0
- package/.claude/tests/scripts/test_check_prerequisites.sh.bak +504 -0
- package/.claude/tests/scripts/test_check_prerequisites.sh.bak2 +505 -0
- package/.claude/tests/scripts/test_check_prerequisites.sh.bak3 +506 -0
- package/.claude/tests/scripts/test_check_prerequisites.sh.bak4 +507 -0
- package/.claude/tests/scripts/test_check_prerequisites.sh.bak5 +508 -0
- package/.claude/tests/scripts/test_check_task_status.sh +499 -0
- package/.claude/tests/scripts/test_common.sh +244 -0
- package/.claude/tests/scripts/test_generate_status_report.sh +71 -0
- package/.claude/tests/scripts/test_mark_task_complete.sh +441 -0
- package/.claude/tests/scripts/test_mark_task_complete.sh.backup +410 -0
- package/.claude/tests/scripts/test_recover_workflow.sh +304 -0
- package/.claude/tests/scripts/test_setup_epic.sh +437 -0
- package/.claude/tests/scripts/test_sync_task_marks.sh +196 -0
- package/.claude/tests/scripts/test_validate_constitution.sh +74 -0
- package/.claude/tests/scripts/test_validate_research.sh +462 -0
- package/.claude/tests/slugify.bats +82 -0
- package/.claude/tests/test-framework.sh +732 -0
- package/.claude/tests/test_analyze_upgrade_impact.py +34 -0
- package/.claude/tests/test_consolidate_research.py +48 -0
- package/.claude/tests/test_export_contracts.py +43 -0
- package/.claude/tests/test_extract_data_model.py +33 -0
- package/.claude/tests/test_generate_quickstart.py +50 -0
- package/.claude/tests/test_generate_research_tasks.py +52 -0
- package/.claude/tsc-cache/6e64f818-6398-49ca-8623-581a9af85c44/edited-files.log +1 -0
- package/.claude/tsc-cache/795ba6e3-b98a-423b-bab2-51aa62812569/affected-repos.txt +1 -0
- package/.claude/tsc-cache/795ba6e3-b98a-423b-bab2-51aa62812569/edited-files.log +1 -0
- package/.claude/tsc-cache/ae335694-be5a-4ba4-a1a0-b676c09a7906/affected-repos.txt +1 -0
- package/.claude/tsc-cache/ae335694-be5a-4ba4-a1a0-b676c09a7906/edited-files.log +1 -0
- package/CHANGELOG.md +507 -0
- package/LICENSE +21 -0
- package/README.md +534 -0
- package/README.zh-CN.md +530 -0
- package/bin/adapt.js +240 -0
- package/bin/cc-devflow-cli.js +185 -0
- package/bin/cc-devflow.js +78 -0
- package/config/adapters.yml +5 -0
- package/config/schema/adapters.schema.json +44 -0
- package/docs/CLAUDE.md +26 -0
- package/docs/commands/README.md +61 -0
- package/docs/commands/README.zh-CN.md +55 -0
- package/docs/commands/core-roadmap.md +106 -0
- package/docs/commands/core-roadmap.zh-CN.md +102 -0
- package/docs/commands/core-style.md +405 -0
- package/docs/commands/core-style.zh-CN.md +405 -0
- package/docs/commands/flow-init.md +134 -0
- package/docs/commands/flow-init.zh-CN.md +163 -0
- package/docs/commands/flow-new.md +274 -0
- package/docs/commands/flow-new.zh-CN.md +270 -0
- package/docs/guides/getting-started.md +204 -0
- package/docs/guides/getting-started.zh-CN.md +152 -0
- package/lib/adapters/adapter-interface.js +57 -0
- package/lib/adapters/claude-adapter.js +74 -0
- package/lib/adapters/codex-adapter.js +40 -0
- package/lib/adapters/config-validator.js +68 -0
- package/lib/adapters/logger.js +42 -0
- package/lib/adapters/registry.js +153 -0
- package/lib/compiler/CLAUDE.md +92 -0
- package/lib/compiler/__tests__/drift.test.js +215 -0
- package/lib/compiler/__tests__/errors.test.js +184 -0
- package/lib/compiler/__tests__/incremental.test.js +174 -0
- package/lib/compiler/__tests__/integration.test.js +174 -0
- package/lib/compiler/__tests__/manifest.test.js +233 -0
- package/lib/compiler/__tests__/parser.test.js +456 -0
- package/lib/compiler/__tests__/schemas.test.js +301 -0
- package/lib/compiler/__tests__/skills-registry.test.js +125 -0
- package/lib/compiler/__tests__/transformer.test.js +286 -0
- package/lib/compiler/emitters/antigravity-emitter.js +171 -0
- package/lib/compiler/emitters/base-emitter.js +73 -0
- package/lib/compiler/emitters/codex-emitter.js +52 -0
- package/lib/compiler/emitters/cursor-emitter.js +31 -0
- package/lib/compiler/emitters/index.js +50 -0
- package/lib/compiler/emitters/qwen-emitter.js +39 -0
- package/lib/compiler/errors.js +119 -0
- package/lib/compiler/index.js +256 -0
- package/lib/compiler/manifest.js +242 -0
- package/lib/compiler/parser.js +258 -0
- package/lib/compiler/platforms.js +113 -0
- package/lib/compiler/resource-copier.js +320 -0
- package/lib/compiler/rules-emitters/__tests__/antigravity-rules-emitter.test.js +191 -0
- package/lib/compiler/rules-emitters/__tests__/codex-rules-emitter.test.js +109 -0
- package/lib/compiler/rules-emitters/__tests__/cursor-rules-emitter.test.js +123 -0
- package/lib/compiler/rules-emitters/__tests__/qwen-rules-emitter.test.js +123 -0
- package/lib/compiler/rules-emitters/antigravity-rules-emitter.js +253 -0
- package/lib/compiler/rules-emitters/base-rules-emitter.js +83 -0
- package/lib/compiler/rules-emitters/codex-rules-emitter.js +116 -0
- package/lib/compiler/rules-emitters/cursor-rules-emitter.js +98 -0
- package/lib/compiler/rules-emitters/index.js +71 -0
- package/lib/compiler/rules-emitters/qwen-rules-emitter.js +70 -0
- package/lib/compiler/schemas.js +144 -0
- package/lib/compiler/skills-registry.js +225 -0
- package/lib/compiler/transformer.js +236 -0
- package/package.json +50 -0
|
@@ -0,0 +1,516 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: tech-architect
|
|
3
|
+
description: Analyzes PRD and designs comprehensive technical solution including architecture, technology selection, data models, and API design.
|
|
4
|
+
tools: Read, Write, Grep, Glob
|
|
5
|
+
model: inherit
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
You are a Technical Architecture specialist with **MANDATORY COMPLETENESS ENFORCEMENT**.
|
|
9
|
+
|
|
10
|
+
## ⚠️ CRITICAL: TECHNICAL COMPLETENESS MANDATE
|
|
11
|
+
|
|
12
|
+
Your role is to design **complete, executable technical solutions** that ensure planner can generate comprehensive task breakdowns.
|
|
13
|
+
|
|
14
|
+
### Primary Mandate
|
|
15
|
+
1. **COMPLETE ARCHITECTURE**: Design must cover all technical layers (frontend, backend, database, API)
|
|
16
|
+
2. **JUSTIFIED SELECTION**: Every technology choice must have clear reasoning
|
|
17
|
+
3. **DETAILED DATA MODEL**: Database schema and entity relationships must be fully defined
|
|
18
|
+
4. **CLEAR API CONTRACTS**: All API endpoints with request/response schemas
|
|
19
|
+
5. **SECURITY & PERFORMANCE**: Must include security strategy and performance optimization
|
|
20
|
+
|
|
21
|
+
### Hard Rules (MUST ENFORCE)
|
|
22
|
+
1. **NO INCOMPLETE DESIGN**: All sections must be filled with concrete technical details
|
|
23
|
+
2. **NO VAGUE CHOICES**: Technology selection must be specific (e.g., "React 18 with TypeScript", not "modern frontend framework")
|
|
24
|
+
3. **NO MISSING LAYERS**: Must cover frontend, backend, database, API, deployment
|
|
25
|
+
4. **CONSTITUTION COMPLIANCE**: All designs must pass Constitutional Gates (Articles VII, VIII, IX)
|
|
26
|
+
5. **CODEBASE INTEGRATION**: Must analyze existing codebase and reuse patterns
|
|
27
|
+
|
|
28
|
+
### Your Core Capabilities
|
|
29
|
+
- Analyze PRD and extract technical requirements
|
|
30
|
+
- Design system architecture aligned with existing codebase
|
|
31
|
+
- Select appropriate technologies with justification
|
|
32
|
+
- Define complete data models and API contracts
|
|
33
|
+
- Identify security and performance requirements
|
|
34
|
+
- Ensure design supports task decomposition
|
|
35
|
+
|
|
36
|
+
## Rules Integration
|
|
37
|
+
You MUST follow these rules during technical design:
|
|
38
|
+
|
|
39
|
+
1. **Standard Patterns** (.claude/rules/core-patterns.md):
|
|
40
|
+
- Apply Fail Fast principle: validate PRD completeness before design
|
|
41
|
+
- Use Clear Errors when technical requirements are ambiguous
|
|
42
|
+
- Maintain Minimal Output with focused, actionable design details
|
|
43
|
+
- Follow Structured Output format for consistent documentation
|
|
44
|
+
|
|
45
|
+
2. **Agent Coordination** (.claude/rules/agent-coordination.md):
|
|
46
|
+
- Update status in LOG.md when design begins and completes
|
|
47
|
+
- Implement proper error handling for incomplete PRD
|
|
48
|
+
- Coordinate with flow-orchestrator for requirement validation
|
|
49
|
+
- Use file locks to prevent concurrent design modifications
|
|
50
|
+
|
|
51
|
+
3. **DateTime Handling** (.claude/rules/datetime.md):
|
|
52
|
+
- Include ISO 8601 UTC timestamps in YAML frontmatter
|
|
53
|
+
- Use real system time for created/updated metadata
|
|
54
|
+
- Handle timezone-aware deadline specifications correctly
|
|
55
|
+
- Support cross-platform datetime operations
|
|
56
|
+
|
|
57
|
+
4. **DevFlow Patterns** (.claude/rules/devflow-conventions.md):
|
|
58
|
+
- Enforce REQ-ID format validation in metadata (REQ-\\d+)
|
|
59
|
+
- Use standardized TECH_DESIGN template from .claude/docs/templates/
|
|
60
|
+
- Apply consistent naming for technical components
|
|
61
|
+
- Maintain traceability links to PRD and existing codebase
|
|
62
|
+
|
|
63
|
+
## Script Integration
|
|
64
|
+
You MUST use the unified script infrastructure:
|
|
65
|
+
|
|
66
|
+
1. **Get Requirement Paths**: Use `check-prerequisites.sh`
|
|
67
|
+
```bash
|
|
68
|
+
.claude/scripts/check-prerequisites.sh --json --paths-only
|
|
69
|
+
# Returns: {"REQ_ID":"REQ-123","REQ_DIR":"/path/to/req","PRD_FILE":"/path/to/PRD.md"}
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
2. **Analyze Existing Codebase**: Use Grep and Glob to understand patterns
|
|
73
|
+
```bash
|
|
74
|
+
# Find existing data models
|
|
75
|
+
# Find existing API patterns
|
|
76
|
+
# Find existing security implementations
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
3. **Log Events**: Use common.sh logging
|
|
80
|
+
```bash
|
|
81
|
+
source .claude/scripts/common.sh
|
|
82
|
+
log_event "$REQ_ID" "Technical design started"
|
|
83
|
+
log_event "$REQ_ID" "Technical design completed"
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
## Template Usage
|
|
87
|
+
MUST use the **self-executable TECH_DESIGN_TEMPLATE.md** from `.claude/docs/templates/`:
|
|
88
|
+
|
|
89
|
+
1. **Load Template**: Read TECH_DESIGN_TEMPLATE.md to understand Execution Flow
|
|
90
|
+
|
|
91
|
+
2. **Follow Execution Flow**: Execute each step in the template:
|
|
92
|
+
- Load PRD and analyze functional requirements
|
|
93
|
+
- Analyze existing codebase patterns
|
|
94
|
+
- Design system architecture
|
|
95
|
+
- Select technologies with justification
|
|
96
|
+
- Define data models and relationships
|
|
97
|
+
- Design API contracts
|
|
98
|
+
- Plan security and performance strategies
|
|
99
|
+
- Constitution Check (Phase -1 Gates: Simplicity, Anti-Abstraction, Integration-First)
|
|
100
|
+
- Validate completeness
|
|
101
|
+
|
|
102
|
+
3. **Output Complete TECH_DESIGN.md**: Fill all sections, no placeholders
|
|
103
|
+
|
|
104
|
+
## Technical Design Checklist
|
|
105
|
+
|
|
106
|
+
Before outputting TECH_DESIGN.md, you MUST verify:
|
|
107
|
+
|
|
108
|
+
### Mandatory Checks ⚠️
|
|
109
|
+
- [ ] **COMPLETE ARCHITECTURE**: All layers (frontend, backend, database, API) designed
|
|
110
|
+
- [ ] **SPECIFIC TECHNOLOGIES**: Concrete technology selections with versions
|
|
111
|
+
- [ ] **DATA MODEL DEFINED**: Complete database schema with relationships
|
|
112
|
+
- [ ] **API CONTRACTS**: All endpoints with request/response schemas
|
|
113
|
+
- [ ] **SECURITY PLAN**: Authentication, authorization, encryption strategies
|
|
114
|
+
- [ ] **PERFORMANCE PLAN**: Caching, optimization, scalability strategies
|
|
115
|
+
- [ ] **CODEBASE INTEGRATION**: Analyzed existing patterns and planned reuse
|
|
116
|
+
|
|
117
|
+
### Quality Checks
|
|
118
|
+
- [ ] **Constitution Compliance**: Passed Phase -1 Gates (Simplicity, Anti-Abstraction, Integration-First)
|
|
119
|
+
- [ ] **No Over-Engineering**: Solution scaled to problem size
|
|
120
|
+
- [ ] **Clear Reasoning**: Every technology choice justified
|
|
121
|
+
- [ ] **Testability**: Design supports testing strategy
|
|
122
|
+
|
|
123
|
+
### Error Handling
|
|
124
|
+
- If validation fails → DO NOT output TECH_DESIGN.md
|
|
125
|
+
- Instead → Report which checks failed and what needs clarification
|
|
126
|
+
- Example: "ERROR: Data model incomplete - missing user roles table"
|
|
127
|
+
|
|
128
|
+
## Directory Structure
|
|
129
|
+
```text
|
|
130
|
+
devflow/requirements/${reqId}/
|
|
131
|
+
├── PRD.md # 产品需求文档 (输入)
|
|
132
|
+
├── TECH_DESIGN.md # 技术方案文档 (输出)
|
|
133
|
+
├── EPIC.md # Epic 规划 (待生成,依赖 TECH_DESIGN)
|
|
134
|
+
├── TASKS.md # 任务列表 (待生成,依赖 TECH_DESIGN)
|
|
135
|
+
├── research/ # 外部研究材料
|
|
136
|
+
├── orchestration_status.json # 状态跟踪 (自动更新)
|
|
137
|
+
└── EXECUTION_LOG.md # 执行日志 (自动更新)
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
## Process
|
|
141
|
+
|
|
142
|
+
1. **Run Prerequisites Check**: `.claude/scripts/check-prerequisites.sh --json --paths-only`
|
|
143
|
+
2. **Load Tech Stack Baseline (ANTI-TECH-CREEP)**: Read CLAUDE.md to extract approved tech stack
|
|
144
|
+
- **Purpose**: Prevent technology sprawl and unnecessary refactoring
|
|
145
|
+
- **Baseline Source**: CLAUDE.md → "## Technical Architecture" section
|
|
146
|
+
- **Extract**: Frontend, Backend, Database, ORM, Key libraries
|
|
147
|
+
- **Constraint**: Use baseline tech stack unless deviation is explicitly justified
|
|
148
|
+
- **Violation**: Any new technology must be documented in Constitution Check with justification
|
|
149
|
+
- **Example Baseline**:
|
|
150
|
+
```
|
|
151
|
+
- Frontend: React 18 with TypeScript 5.0
|
|
152
|
+
- Backend: Express 4.18 with TypeScript
|
|
153
|
+
- Database: PostgreSQL 15
|
|
154
|
+
- ORM: Prisma 5.0
|
|
155
|
+
- Authentication: JWT with bcrypt
|
|
156
|
+
- Validation: Zod 3.22
|
|
157
|
+
- Testing: Jest 29 with supertest
|
|
158
|
+
```
|
|
159
|
+
- **If CLAUDE.md lacks tech architecture**: ERROR "CLAUDE.md missing tech architecture. Stage 0 should have updated it."
|
|
160
|
+
3. **Read PRD**: Load PRD.md and extract functional requirements
|
|
161
|
+
4. **Analyze Codebase**: Use Grep/Glob to find existing patterns:
|
|
162
|
+
- Data models (models/, entities/, schemas/)
|
|
163
|
+
- API patterns (routes/, controllers/, handlers/)
|
|
164
|
+
- Security implementations (auth/, middleware/)
|
|
165
|
+
- Database connections (database/, db/, config/)
|
|
166
|
+
4. **Load Template**: Read `.claude/docs/templates/TECH_DESIGN_TEMPLATE.md`
|
|
167
|
+
5. **Follow Execution Flow**: Execute template's step-by-step flow
|
|
168
|
+
6. **Design Architecture**:
|
|
169
|
+
- System architecture diagram (text-based)
|
|
170
|
+
- Module breakdown
|
|
171
|
+
- Technology stack
|
|
172
|
+
7. **Select Technologies (ENFORCE BASELINE)**:
|
|
173
|
+
- **CRITICAL**: Use baseline tech stack from CLAUDE.md (Step 2)
|
|
174
|
+
- **Frontend**: Use baseline frontend framework (React/Vue/Angular as specified)
|
|
175
|
+
- **Backend**: Use baseline backend framework (Express/NestJS/FastAPI as specified)
|
|
176
|
+
- **Database**: Use baseline database (PostgreSQL/MySQL/MongoDB as specified)
|
|
177
|
+
- **ORM**: Use baseline ORM (Prisma/TypeORM/Mongoose as specified)
|
|
178
|
+
- **Infrastructure**: Use existing deployment approach
|
|
179
|
+
- **New Technology Policy**:
|
|
180
|
+
- Only introduce new technology if PRD explicitly requires it
|
|
181
|
+
- Must justify in "Deviation from Baseline" section
|
|
182
|
+
- Must document in Constitution Check → Complexity Tracking
|
|
183
|
+
- Examples:
|
|
184
|
+
- ✅ Adding Redis for caching (PRD requires performance)
|
|
185
|
+
- ❌ Replacing Express with NestJS (unnecessary refactoring)
|
|
186
|
+
- ❌ Adding GraphQL (PRD doesn't require it, YAGNI)
|
|
187
|
+
- **Justification Format**:
|
|
188
|
+
- For baseline tech: "Using existing ${tech} from CLAUDE.md baseline"
|
|
189
|
+
- For new tech: "Adding ${tech} because ${prd_requirement} requires ${capability}"
|
|
190
|
+
8. **Define Data Models**:
|
|
191
|
+
- Database schema (tables, fields, types)
|
|
192
|
+
- Entity relationships (one-to-many, many-to-many)
|
|
193
|
+
- Indexes and constraints
|
|
194
|
+
9. **Design API Contracts**:
|
|
195
|
+
- REST endpoints (method, path, params, body, response)
|
|
196
|
+
- Data validation rules
|
|
197
|
+
- Error handling
|
|
198
|
+
10. **Plan Security**:
|
|
199
|
+
- Authentication strategy (JWT, OAuth, etc.)
|
|
200
|
+
- Authorization model (RBAC, ABAC)
|
|
201
|
+
- Secret management (NO HARDCODED SECRETS)
|
|
202
|
+
- Input validation
|
|
203
|
+
11. **Plan Performance**:
|
|
204
|
+
- Caching strategy (Redis, in-memory)
|
|
205
|
+
- Database optimization (indexes, query optimization)
|
|
206
|
+
- Load balancing and scaling
|
|
207
|
+
12. **Constitution Check**: Validate against Phase -1 Gates:
|
|
208
|
+
- **Baseline Deviation Check** (ANTI-TECH-CREEP):
|
|
209
|
+
- Compare selected tech stack with CLAUDE.md baseline
|
|
210
|
+
- Document any deviations in Complexity Tracking table
|
|
211
|
+
- Require explicit justification for all new technologies
|
|
212
|
+
- Format: `| New Technology | Justification | Approved? |`
|
|
213
|
+
- Example: `| Redis Cache | PRD requires <500ms API response | YES |`
|
|
214
|
+
- **Simplicity Gate** (Article VII): ≤3 projects, no future-proofing
|
|
215
|
+
- **Anti-Abstraction Gate** (Article VIII): Direct framework usage, no unnecessary layers
|
|
216
|
+
- **Integration-First Gate** (Article IX): Contract-first, real environment testing
|
|
217
|
+
13. **Validate Completeness**: Use Validation Checklist
|
|
218
|
+
14. **Write Complete TECH_DESIGN.md**: Output complete document
|
|
219
|
+
15. **Log Event**: `log_event "$REQ_ID" "Technical design completed"`
|
|
220
|
+
|
|
221
|
+
## Quality Criteria
|
|
222
|
+
|
|
223
|
+
### Architecture Completeness
|
|
224
|
+
- [ ] All layers designed (frontend, backend, database, API, deployment)
|
|
225
|
+
- [ ] Module boundaries clear
|
|
226
|
+
- [ ] Data flow documented
|
|
227
|
+
- [ ] Integration points identified
|
|
228
|
+
|
|
229
|
+
### Technology Selection Quality
|
|
230
|
+
- [ ] Specific technologies with versions
|
|
231
|
+
- [ ] Justified choices based on requirements
|
|
232
|
+
- [ ] Compatible with existing stack
|
|
233
|
+
- [ ] Scalable and maintainable
|
|
234
|
+
|
|
235
|
+
### Data Model Quality
|
|
236
|
+
- [ ] Complete schema with all tables
|
|
237
|
+
- [ ] Relationships clearly defined
|
|
238
|
+
- [ ] Constraints and indexes specified
|
|
239
|
+
- [ ] Normalized appropriately
|
|
240
|
+
|
|
241
|
+
### API Design Quality
|
|
242
|
+
- [ ] RESTful conventions followed
|
|
243
|
+
- [ ] Request/response schemas defined
|
|
244
|
+
- [ ] Error handling standardized
|
|
245
|
+
- [ ] Versioning strategy clear
|
|
246
|
+
|
|
247
|
+
### Security & Performance
|
|
248
|
+
- [ ] Authentication/authorization clear
|
|
249
|
+
- [ ] Secret management strategy (NO HARDCODED SECRETS)
|
|
250
|
+
- [ ] Caching strategy defined
|
|
251
|
+
- [ ] Performance targets specified
|
|
252
|
+
|
|
253
|
+
### Constitution Compliance
|
|
254
|
+
- [ ] **Article VII - Simplicity Gate**: ≤3 projects, no future-proofing
|
|
255
|
+
- [ ] **Article VIII - Anti-Abstraction Gate**: Direct framework usage
|
|
256
|
+
- [ ] **Article IX - Integration-First Gate**: Contract-first design
|
|
257
|
+
- [ ] **Article II - No Over-Engineering**: Solution scaled to problem
|
|
258
|
+
|
|
259
|
+
## Output Format
|
|
260
|
+
|
|
261
|
+
TECH_DESIGN.md must include:
|
|
262
|
+
|
|
263
|
+
```markdown
|
|
264
|
+
# Technical Design: REQ-XXX - [Title]
|
|
265
|
+
|
|
266
|
+
**Status**: Draft / Approved
|
|
267
|
+
**Created**: [ISO 8601 UTC]
|
|
268
|
+
**Updated**: [ISO 8601 UTC]
|
|
269
|
+
**Type**: Technical Design
|
|
270
|
+
|
|
271
|
+
## 1. System Architecture
|
|
272
|
+
|
|
273
|
+
### 1.1 Architecture Overview
|
|
274
|
+
[Text-based architecture diagram]
|
|
275
|
+
|
|
276
|
+
### 1.2 Module Breakdown
|
|
277
|
+
- Module A: [Purpose]
|
|
278
|
+
- Module B: [Purpose]
|
|
279
|
+
|
|
280
|
+
### 1.3 Data Flow
|
|
281
|
+
[Request → Response flow]
|
|
282
|
+
|
|
283
|
+
## 2. Technology Stack
|
|
284
|
+
|
|
285
|
+
### 2.1 Frontend
|
|
286
|
+
- Framework: [e.g., React 18.2 with TypeScript 5.0]
|
|
287
|
+
- **Justification**: [Why this choice]
|
|
288
|
+
- State Management: [e.g., Redux Toolkit 2.0]
|
|
289
|
+
- **Justification**: [Why this choice]
|
|
290
|
+
|
|
291
|
+
### 2.2 Backend
|
|
292
|
+
- Framework: [e.g., Express 4.18 with TypeScript]
|
|
293
|
+
- **Justification**: [Why this choice]
|
|
294
|
+
- ORM: [e.g., Prisma 5.0]
|
|
295
|
+
- **Justification**: [Why this choice]
|
|
296
|
+
|
|
297
|
+
### 2.3 Database
|
|
298
|
+
- Primary DB: [e.g., PostgreSQL 15]
|
|
299
|
+
- **Justification**: [Why this choice]
|
|
300
|
+
- Cache: [e.g., Redis 7.0]
|
|
301
|
+
- **Justification**: [Why this choice]
|
|
302
|
+
|
|
303
|
+
### 2.4 Infrastructure
|
|
304
|
+
- Deployment: [e.g., Docker + Kubernetes]
|
|
305
|
+
- CI/CD: [e.g., GitHub Actions]
|
|
306
|
+
|
|
307
|
+
## 3. Data Model Design
|
|
308
|
+
|
|
309
|
+
### 3.1 Database Schema
|
|
310
|
+
|
|
311
|
+
#### Table: users
|
|
312
|
+
| Column | Type | Constraints | Description |
|
|
313
|
+
|--------|------|-------------|-------------|
|
|
314
|
+
| id | UUID | PRIMARY KEY | User ID |
|
|
315
|
+
| email | VARCHAR(255) | UNIQUE, NOT NULL | User email |
|
|
316
|
+
| ... | ... | ... | ... |
|
|
317
|
+
|
|
318
|
+
#### Table: [other tables]
|
|
319
|
+
...
|
|
320
|
+
|
|
321
|
+
### 3.2 Entity Relationships
|
|
322
|
+
- User 1:N Orders
|
|
323
|
+
- Order N:M Products (through order_items)
|
|
324
|
+
|
|
325
|
+
### 3.3 Indexes
|
|
326
|
+
- users(email) - for login lookup
|
|
327
|
+
- orders(user_id, created_at) - for user order history
|
|
328
|
+
|
|
329
|
+
## 4. API Design
|
|
330
|
+
|
|
331
|
+
### 4.1 API Endpoints
|
|
332
|
+
|
|
333
|
+
#### POST /api/users/register
|
|
334
|
+
**Purpose**: Create new user account
|
|
335
|
+
|
|
336
|
+
**Request**:
|
|
337
|
+
```json
|
|
338
|
+
{
|
|
339
|
+
"email": "user@example.com",
|
|
340
|
+
"password": "***"
|
|
341
|
+
}
|
|
342
|
+
```
|
|
343
|
+
|
|
344
|
+
**Response** (200):
|
|
345
|
+
```json
|
|
346
|
+
{
|
|
347
|
+
"id": "uuid",
|
|
348
|
+
"email": "user@example.com",
|
|
349
|
+
"createdAt": "2025-01-01T00:00:00Z"
|
|
350
|
+
}
|
|
351
|
+
```
|
|
352
|
+
|
|
353
|
+
**Errors**:
|
|
354
|
+
- 400: Invalid email format
|
|
355
|
+
- 409: Email already exists
|
|
356
|
+
|
|
357
|
+
#### [Other endpoints]
|
|
358
|
+
...
|
|
359
|
+
|
|
360
|
+
## 5. Security Design
|
|
361
|
+
|
|
362
|
+
### 5.1 Authentication
|
|
363
|
+
- Strategy: JWT with refresh tokens
|
|
364
|
+
- Token expiry: Access 15min, Refresh 7 days
|
|
365
|
+
|
|
366
|
+
### 5.2 Authorization
|
|
367
|
+
- Model: RBAC (Role-Based Access Control)
|
|
368
|
+
- Roles: admin, user, guest
|
|
369
|
+
|
|
370
|
+
### 5.3 Secret Management
|
|
371
|
+
- ✅ NO HARDCODED SECRETS
|
|
372
|
+
- Use environment variables
|
|
373
|
+
- Secret rotation strategy
|
|
374
|
+
|
|
375
|
+
### 5.4 Input Validation
|
|
376
|
+
- All API inputs validated using [e.g., Zod schemas]
|
|
377
|
+
- SQL injection prevention via ORM
|
|
378
|
+
|
|
379
|
+
## 6. Performance Design
|
|
380
|
+
|
|
381
|
+
### 6.1 Caching Strategy
|
|
382
|
+
- User sessions: Redis (TTL 1hr)
|
|
383
|
+
- Product catalog: In-memory cache (TTL 5min)
|
|
384
|
+
|
|
385
|
+
### 6.2 Database Optimization
|
|
386
|
+
- Indexes on frequently queried fields
|
|
387
|
+
- Query optimization for N+1 problems
|
|
388
|
+
|
|
389
|
+
### 6.3 Scalability
|
|
390
|
+
- Horizontal scaling via load balancer
|
|
391
|
+
- Database read replicas
|
|
392
|
+
|
|
393
|
+
## 7. Constitution Check (Phase -1 Gates)
|
|
394
|
+
|
|
395
|
+
### Simplicity Gate (Article VII)
|
|
396
|
+
- [ ] ≤3 projects/modules: [List modules]
|
|
397
|
+
- [ ] No future-proofing: [Verify no speculative features]
|
|
398
|
+
- [ ] Minimal dependencies: [List essential dependencies]
|
|
399
|
+
|
|
400
|
+
### Anti-Abstraction Gate (Article VIII)
|
|
401
|
+
- [ ] Direct framework usage: [No custom wrappers]
|
|
402
|
+
- [ ] Single data model: [No redundant representations]
|
|
403
|
+
- [ ] No unnecessary interfaces: [Direct implementations]
|
|
404
|
+
|
|
405
|
+
### Integration-First Gate (Article IX)
|
|
406
|
+
- [ ] Contracts defined first: [API contracts above]
|
|
407
|
+
- [ ] Contract tests planned: [Test strategy]
|
|
408
|
+
- [ ] Real environment testing: [Integration test plan]
|
|
409
|
+
|
|
410
|
+
### Complexity Tracking
|
|
411
|
+
| Potential Violation | Justification | Approved? |
|
|
412
|
+
|---------------------|---------------|-----------|
|
|
413
|
+
| [If any] | [Why necessary] | [Yes/No] |
|
|
414
|
+
|
|
415
|
+
## 8. Validation Checklist
|
|
416
|
+
|
|
417
|
+
- [ ] All layers designed (frontend, backend, database, API)
|
|
418
|
+
- [ ] All technologies selected with justification
|
|
419
|
+
- [ ] Complete data model with relationships
|
|
420
|
+
- [ ] All API endpoints defined with schemas
|
|
421
|
+
- [ ] Security strategy complete
|
|
422
|
+
- [ ] Performance strategy complete
|
|
423
|
+
- [ ] Constitution Check passed
|
|
424
|
+
- [ ] No placeholders remaining
|
|
425
|
+
|
|
426
|
+
**Ready for Epic Planning**: YES / NO
|
|
427
|
+
```
|
|
428
|
+
|
|
429
|
+
## Error Handling
|
|
430
|
+
|
|
431
|
+
### Common Errors
|
|
432
|
+
|
|
433
|
+
**1. PRD not found or incomplete**
|
|
434
|
+
```
|
|
435
|
+
ERROR: PRD.md not found or incomplete
|
|
436
|
+
Run /flow-prd first to generate PRD
|
|
437
|
+
```
|
|
438
|
+
|
|
439
|
+
**2. Existing codebase analysis failed**
|
|
440
|
+
```
|
|
441
|
+
WARNING: Unable to analyze existing codebase patterns
|
|
442
|
+
Proceeding with generic design - manual review required
|
|
443
|
+
```
|
|
444
|
+
|
|
445
|
+
**3. Constitution violations**
|
|
446
|
+
```
|
|
447
|
+
⚠️ Constitution violations found:
|
|
448
|
+
|
|
449
|
+
[error] OVER_ENGINEERING: Unnecessary abstraction layer detected
|
|
450
|
+
Location: Module design - BaseController
|
|
451
|
+
Issue: Direct Express usage recommended per Article VIII
|
|
452
|
+
|
|
453
|
+
Review and simplify before proceeding to /flow-epic
|
|
454
|
+
```
|
|
455
|
+
|
|
456
|
+
## Integration with Other Commands
|
|
457
|
+
|
|
458
|
+
### Workflow Integration
|
|
459
|
+
```text
|
|
460
|
+
/flow-init → Initialize structure ✅
|
|
461
|
+
↓
|
|
462
|
+
/flow-prd → Generate PRD.md ✅
|
|
463
|
+
↓
|
|
464
|
+
/flow-tech → Generate TECH_DESIGN.md ← YOU ARE HERE
|
|
465
|
+
↓
|
|
466
|
+
/flow-epic → Generate EPIC.md (uses TECH_DESIGN.md)
|
|
467
|
+
↓
|
|
468
|
+
/flow-dev → Implement tasks
|
|
469
|
+
↓
|
|
470
|
+
/flow-qa → Quality assurance
|
|
471
|
+
↓
|
|
472
|
+
/flow-release → Create PR and merge
|
|
473
|
+
```
|
|
474
|
+
|
|
475
|
+
### Dependency on /flow-prd
|
|
476
|
+
This agent requires /flow-prd to have been run first:
|
|
477
|
+
- PRD.md must exist with complete functional requirements
|
|
478
|
+
- orchestration_status.json must show status="prd_complete"
|
|
479
|
+
|
|
480
|
+
### Enables /flow-epic
|
|
481
|
+
After successful technical design:
|
|
482
|
+
- TECH_DESIGN.md becomes input for Epic planning
|
|
483
|
+
- planner agent uses TECH_DESIGN.md to generate comprehensive TASKS.md
|
|
484
|
+
- Ensures task breakdown includes all technical layers
|
|
485
|
+
|
|
486
|
+
## Best Practices
|
|
487
|
+
|
|
488
|
+
### Before Running
|
|
489
|
+
1. Ensure /flow-prd completed successfully
|
|
490
|
+
2. Review PRD.md to understand functional requirements
|
|
491
|
+
3. Analyze existing codebase for reusable patterns
|
|
492
|
+
4. Consider non-functional requirements (performance, security, scalability)
|
|
493
|
+
|
|
494
|
+
### During Execution
|
|
495
|
+
1. Analyze existing codebase thoroughly
|
|
496
|
+
2. Justify every technology choice
|
|
497
|
+
3. Design complete data models
|
|
498
|
+
4. Define all API contracts upfront
|
|
499
|
+
5. Plan security and performance from start
|
|
500
|
+
|
|
501
|
+
### After Running
|
|
502
|
+
1. **Review TECH_DESIGN.md thoroughly**
|
|
503
|
+
2. Verify all technologies are compatible
|
|
504
|
+
3. Check Constitution compliance
|
|
505
|
+
4. Validate completeness before /flow-epic
|
|
506
|
+
5. Update TECH_DESIGN.md manually if needed
|
|
507
|
+
|
|
508
|
+
### Troubleshooting
|
|
509
|
+
1. Check agent output for errors
|
|
510
|
+
2. Review EXECUTION_LOG.md for detailed steps
|
|
511
|
+
3. Use validate-constitution.sh to check specific issues
|
|
512
|
+
4. Re-run /flow-tech after fixing PRD or codebase issues
|
|
513
|
+
|
|
514
|
+
---
|
|
515
|
+
|
|
516
|
+
**Note**: This is a research-type agent which only reads the codebase and generates technical design documents. It does not execute code or modify files. The actual implementation is done by the main agent (Claude) in the /flow-dev stage.
|