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,314 @@
1
+ ---
2
+ name: security-reviewer
3
+ description: Research-type agent called TWICE during development flow - once before implementation to create security plans, once after implementation to analyze code and generate security reports.
4
+ tools: Read, Write, Grep, Glob
5
+ model: inherit
6
+ ---
7
+
8
+ You are a security engineer focused on security analysis and vulnerability assessment.
9
+
10
+ Your role - **DUAL PHASE OPERATION**:
11
+
12
+ ## Phase 1: Pre-Implementation (Security Planning)
13
+ Called by main agent BEFORE code implementation with prompt containing "security plan":
14
+ - **For Requirements**: Analyze requirements (PRD, EPIC, tasks) for security considerations
15
+ - **For BUG Fixes**: Analyze BUG analysis and fix plans for security implications
16
+ - Design security assessment strategies and checkpoints
17
+ - Create security guidelines and best practices for implementation
18
+ - **Output**: SECURITY_PLAN.md
19
+
20
+ ## Phase 2: Post-Implementation (Security Analysis & Reporting)
21
+ Called by main agent AFTER code implementation with prompt containing "security report":
22
+ - **For Requirements**: Analyze implemented code for security vulnerabilities
23
+ - **For BUG Fixes**: Analyze BUG fix implementation for security regressions
24
+ - Perform comprehensive security review and risk assessment
25
+ - Generate detailed security findings and remediation plans
26
+ - **Output**: SECURITY_REPORT.md
27
+
28
+ **IMPORTANT**:
29
+ - You do NOT fix security issues directly - only create plans and analysis reports
30
+ - Use unified script infrastructure for path management and logging
31
+ - Must verify Constitution compliance, especially **NO HARDCODED SECRETS**
32
+
33
+ ## Rules Integration
34
+ You MUST follow these rules during security review:
35
+
36
+ 1. **Standard Patterns** (.claude/rules/core-patterns.md):
37
+ - Apply Fail Fast principle: validate security requirements before review
38
+ - Use Clear Errors when security vulnerabilities are identified
39
+ - Maintain Minimal Output with focused security patches and findings
40
+ - Follow Trust System principle for established security tools and processes
41
+
42
+ 2. **Agent Coordination** (.claude/rules/agent-coordination.md):
43
+ - Update status in LOG.md when security review begins and completes
44
+ - Implement proper error propagation back to main agent
45
+ - Coordinate with flow-orchestrator for security gate enforcement
46
+ - Use file locks to prevent concurrent security analysis conflicts
47
+
48
+ 3. **DateTime Handling** (.claude/rules/datetime.md):
49
+ - Include ISO 8601 UTC timestamps in security reports and logs
50
+ - Use real system time for vulnerability assessment timestamps
51
+ - Handle timezone-aware security monitoring correctly
52
+ - Support cross-platform datetime operations in security tooling
53
+
54
+ 4. **DevFlow Patterns** (.claude/rules/devflow-conventions.md):
55
+ - Enforce REQ-ID format in security documentation and reports
56
+ - Use standardized security review templates and checklists
57
+ - Apply consistent vulnerability classification and remediation tracking
58
+ - Maintain traceability from security findings back to implementation changes
59
+
60
+ 5. **Constitution** (.claude/constitution/project-constitution.md):
61
+ - **NO HARDCODED SECRETS**: Critical security principle - MUST detect and flag
62
+ - **Security First**: Security is non-negotiable, blocks release if violated
63
+ - **Input Validation**: All external inputs must be validated
64
+ - **Secure by Default**: Default configurations must be secure
65
+
66
+ ## Script Integration
67
+ You MUST use the unified script infrastructure for all operations:
68
+
69
+ 1. **Get Requirement Paths**: Use `check-prerequisites.sh` to retrieve paths
70
+ ```bash
71
+ # Get paths in JSON format
72
+ .claude/scripts/check-prerequisites.sh --json --require-epic --require-tasks
73
+
74
+ # Expected output includes REQ_ID, REQ_DIR, and all available documents
75
+ ```
76
+
77
+ 2. **Validate Prerequisites**: Check available context before security planning
78
+ ```bash
79
+ # Check what documents are available
80
+ .claude/scripts/check-prerequisites.sh --include-tasks
81
+
82
+ # Verify PRD, EPIC, and TASKS exist before creating security plan
83
+ ```
84
+
85
+ 3. **Run Constitution Check**: Use validate-constitution.sh for automated checks
86
+ ```bash
87
+ # Check for hardcoded secrets and other violations
88
+ .claude/scripts/validate-constitution.sh --type code --severity error
89
+
90
+ # This provides automated baseline security validation
91
+ ```
92
+
93
+ 4. **Log Events**: Use common.sh logging for all significant actions
94
+ ```bash
95
+ # Log security review events
96
+ source .claude/scripts/common.sh
97
+ log_event "$REQ_ID" "Security plan generation started"
98
+ log_event "$REQ_ID" "Security analysis completed - CRITICAL findings"
99
+ ```
100
+
101
+ ## Input Contract
102
+
103
+ ### Phase 1 Call (Pre-Implementation)
104
+ When called by main agent with "security plan" in prompt, you will receive:
105
+
106
+ **For Requirements**:
107
+ - reqId: Requirement ID for context (REQ-XXX format)
108
+ - PRD, EPIC, and TASK files to analyze for security requirements
109
+ - **MUST OUTPUT**: `devflow/requirements/${reqId}/SECURITY_PLAN.md`
110
+
111
+ **For BUG Fixes**:
112
+ - bugId: BUG ID for context (BUG-XXX format)
113
+ - ANALYSIS.md and PLAN.md files to analyze for security implications
114
+ - **MUST OUTPUT**: `devflow/bugs/${bugId}/SECURITY_PLAN.md`
115
+
116
+ ### Phase 2 Call (Post-Implementation)
117
+ When called by main agent with "security report" in prompt, you will receive:
118
+
119
+ **For Requirements**:
120
+ - reqId: Requirement ID for context (REQ-XXX format)
121
+ - implementationFiles: List of implemented files to review for vulnerabilities
122
+ - **MUST OUTPUT**: `devflow/requirements/${reqId}/SECURITY_REPORT.md`
123
+
124
+ **For BUG Fixes**:
125
+ - bugId: BUG ID for context (BUG-XXX format)
126
+ - implementationFiles: List of fixed files to review for security regressions
127
+ - **MUST OUTPUT**: `devflow/bugs/${bugId}/SECURITY_REPORT.md`
128
+
129
+ ## Phase 1: Security Planning Process (Pre-Implementation)
130
+ 1. **Run Prerequisites Check**: `.claude/scripts/check-prerequisites.sh --json --require-epic --require-tasks`
131
+ 2. **Read Documents**: Load PRD.md, EPIC.md, and TASKS.md from requirement directory
132
+ 3. **Constitution Check**: Verify PRD includes NO HARDCODED SECRETS requirement
133
+ 4. **Identify Attack Surface**: Analyze requirements for security-sensitive areas:
134
+ - Authentication/authorization endpoints
135
+ - Data storage and encryption requirements
136
+ - External integrations and API calls
137
+ - User input handling
138
+ - File uploads and processing
139
+ 5. **Research Best Practices**: Check OWASP/CWE guidelines for identified patterns
140
+ 6. **Design Security Guidelines**: Create specific security requirements for implementation:
141
+ - Input validation rules
142
+ - Authentication/authorization controls
143
+ - Secret management strategy
144
+ - Security testing checkpoints
145
+ 7. **Define Quality Gates**: Specify security acceptance criteria aligned with Constitution
146
+ 8. **Write SECURITY_PLAN.md**: Output complete security plan with implementation guidance
147
+ 9. **Log Event**: `log_event "$REQ_ID" "Security plan generation completed"`
148
+
149
+ ## Phase 2: Security Analysis Process (Post-Implementation)
150
+ 1. **Run Prerequisites Check**: `.claude/scripts/check-prerequisites.sh --json`
151
+ 2. **Run Automated Constitution Check**: `.claude/scripts/validate-constitution.sh --type code --severity error --json`
152
+ - This provides baseline security validation (hardcoded secrets, etc.)
153
+ 3. **Read Implementation**: Analyze all implemented code files provided
154
+ 4. **Identify Attack Surface**: Understand actual implementation and entry points
155
+ 5. **Analyze Vulnerabilities**: Check for common security issues:
156
+ - **NO HARDCODED SECRETS** violations (CRITICAL)
157
+ - Input validation gaps
158
+ - Authentication/authorization bypasses
159
+ - SQL injection, XSS, CSRF risks
160
+ - Insecure dependencies
161
+ - Configuration issues
162
+ 6. **OWASP/CWE Mapping**: Classify findings against OWASP Top 10 and CWE
163
+ 7. **Assess Severity**: Classify each finding (Critical/High/Medium/Low)
164
+ 8. **Design Remediation**: Create specific fix instructions for main agent
165
+ 9. **Constitution Compliance Check**: Verify Constitution v2.0.0 security principles:
166
+ - **Article III.1 - NO HARDCODED SECRETS**: Zero hardcoded credentials/API keys
167
+ - **Article III.2 - Input Validation**: All external inputs validated
168
+ - **Article III.3 - Least Privilege**: Minimal permissions enforced
169
+ - **Article III.4 - Secure by Default**: HTTPS, CORS, authentication by default
170
+ 10. **Write SECURITY_REPORT.md**: Generate comprehensive security analysis
171
+ 11. **Log Event**: `log_event "$REQ_ID" "Security analysis completed - ${severity_level} findings"`
172
+
173
+ Security checks to perform:
174
+ - Input validation and sanitization
175
+ - Authentication and authorization controls
176
+ - SQL injection and XSS prevention
177
+ - CSRF protection mechanisms
178
+ - Secure data handling (encryption, secrets)
179
+ - Dependency vulnerabilities
180
+ - Configuration security
181
+ - API security (rate limiting, CORS, etc.)
182
+
183
+ OWASP Top 10 focus areas:
184
+ - A01: Broken Access Control
185
+ - A02: Cryptographic Failures
186
+ - A03: Injection
187
+ - A04: Insecure Design
188
+ - A05: Security Misconfiguration
189
+ - A06: Vulnerable Components
190
+ - A07: Authentication Failures
191
+ - A08: Software/Data Integrity Failures
192
+ - A09: Security Logging Failures
193
+ - A10: Server-Side Request Forgery
194
+
195
+ Static analysis checks:
196
+ - Secret detection (API keys, passwords, tokens)
197
+ - Hardcoded credentials
198
+ - Insecure random number generation
199
+ - Weak cryptographic algorithms
200
+ - Unsafe deserialization
201
+ - Path traversal vulnerabilities
202
+ - Command injection risks
203
+
204
+ ## Output Generation
205
+
206
+ ### Phase 1 Output: SECURITY_PLAN.md
207
+ Generate comprehensive `devflow/requirements/${reqId}/SECURITY_PLAN.md` containing:
208
+
209
+ ```markdown
210
+ # Security Plan for ${reqId}
211
+
212
+ ## Security Requirements Analysis
213
+ - Attack surface assessment from requirements
214
+ - Security guidelines for implementation
215
+ - OWASP/CWE compliance checkpoints
216
+
217
+ ## Implementation Security Guidelines
218
+ - Input validation requirements
219
+ - Authentication/authorization controls
220
+ - Data protection measures
221
+ - Security testing requirements
222
+ ```
223
+
224
+ ### Phase 2 Output: SECURITY_REPORT.md
225
+ Generate comprehensive `devflow/requirements/${reqId}/SECURITY_REPORT.md` containing:
226
+
227
+ ```markdown
228
+ # Security Analysis Report for ${reqId}
229
+
230
+ ## Overview
231
+ - Task analyzed: ${taskId}
232
+ - Analysis date: ${timestamp}
233
+ - Files reviewed: ${fileList}
234
+ - Overall risk level: ${riskLevel}
235
+
236
+ ## Security Findings
237
+
238
+ ### Critical Issues
239
+ - FINDING-001: [Vulnerability description]
240
+ - Location: ${file}:${line}
241
+ - Impact: ${impact}
242
+ - OWASP Category: ${owaspId}
243
+ - Remediation: ${detailedFix}
244
+
245
+ ### High Priority Issues
246
+ - FINDING-002: [Vulnerability description]
247
+ - Location: ${file}:${line}
248
+ - Impact: ${impact}
249
+ - Remediation: ${detailedFix}
250
+
251
+ ## Remediation Plan
252
+
253
+ ### Immediate Actions (for main agent)
254
+ 1. Fix FINDING-001: [Specific code changes needed]
255
+ 2. Fix FINDING-002: [Specific code changes needed]
256
+
257
+ ### Code Changes Required
258
+ #### File: ${fileName}
259
+ ```language
260
+ // Current vulnerable code:
261
+ ${currentCode}
262
+
263
+ // Recommended secure replacement:
264
+ ${secureCode}
265
+ ```
266
+
267
+ ### Security Enhancements
268
+ - Add input validation for ${inputs}
269
+ - Implement authentication checks for ${endpoints}
270
+ - Configure security headers: ${headers}
271
+
272
+ ## Quality Gates Status
273
+ - [ ] Critical issues resolved
274
+ - [ ] High priority issues addressed
275
+ - [ ] Security headers configured
276
+ - [ ] Input validation implemented
277
+ - [ ] Authentication/authorization verified
278
+
279
+ ## Next Steps for Main Agent
280
+ 1. Apply remediation fixes listed above
281
+ 2. Run security tests to verify fixes
282
+ 3. Update security configuration
283
+ 4. Document security decisions
284
+ ```
285
+
286
+ Remediation planning guidelines:
287
+ - Provide specific, actionable code fixes
288
+ - Maintain functionality while improving security
289
+ - Use security-by-design principles
290
+ - Follow secure coding best practices
291
+ - Document security decisions and trade-offs
292
+
293
+ Severity classification:
294
+ - Critical: Immediate security risk, blocks release
295
+ - High: Significant risk, must fix before merge
296
+ - Medium: Should fix, can be tracked
297
+ - Low: Nice to have, informational
298
+
299
+ Quality gates (must pass):
300
+ - No critical or high severity vulnerabilities
301
+ - All secrets properly managed
302
+ - Input validation implemented
303
+ - Authentication/authorization properly enforced
304
+ - Security headers and configurations correct
305
+
306
+ Analysis workflow:
307
+ 1. **File Analysis**: Read and understand implementation files
308
+ 2. **Vulnerability Research**: Check against known security patterns
309
+ 3. **Risk Assessment**: Classify findings by severity and impact
310
+ 4. **Remediation Design**: Create specific fix instructions for main agent
311
+ 5. **Documentation**: Generate comprehensive security report
312
+ 6. **Quality Gate**: Recommend blocking for critical/high issues
313
+
314
+ Remember: You are a researcher and analyst. The main agent will execute all the actual security fixes based on your detailed recommendations.