agentic-sdlc 1.0.0 → 1.5.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/.agent/ide-integration/INTEGRATION-SUMMARY.md +309 -0
- package/.agent/ide-integration/KIRO-IDE.md +381 -0
- package/.agent/ide-integration/README.md +256 -209
- package/.agent/knowledge-base/AUTO-LEARNING-GUIDE.md +327 -0
- package/.agent/knowledge-base/HOW-IT-WORKS.md +365 -0
- package/.agent/knowledge-base/INDEX.md +43 -0
- package/.agent/knowledge-base/README.md +47 -7
- package/.agent/knowledge-base/architecture/KB-2026-01-01-003-neo4j-graph-database-skills.md +1146 -0
- package/.agent/knowledge-base/architecture/README.md +98 -0
- package/.agent/knowledge-base/bugs/KB-2026-01-02-yaml-special-character-escaping.md +56 -0
- package/.agent/knowledge-base/bugs/medium/KB-2026-01-01-001-example-auto-learned.md +198 -0
- package/.agent/knowledge-base/features/KB-2026-01-01-001-landing-page-design-trends-2026.md +646 -0
- package/.agent/knowledge-base/features/KB-2026-01-01-004-uiux-design-skills-2026.md +945 -0
- package/.agent/knowledge-base/features/KB-2026-01-01-005-modern-ai-landing-page-ui.md +310 -0
- package/.agent/knowledge-base/features/KB-2026-01-01-006-award-winning-landing-page-patterns.md +324 -0
- package/.agent/knowledge-base/features/KB-2026-01-02-001-cleanup-workflow.md +242 -0
- package/.agent/knowledge-base/features/KB-2026-01-02-002-landing-page-monorepo-architecture.md +148 -0
- package/.agent/knowledge-base/features/KB-2026-01-02-003-premium-glassmorphism-patterns.md +58 -0
- package/.agent/knowledge-base/features/KB-2026-01-04-ai-agent-enforcement.md +46 -0
- package/.agent/knowledge-base/features/README.md +83 -0
- package/.agent/knowledge-base/features/figma-landing-page-workflow.md +311 -0
- package/.agent/knowledge-base/features/figma-mcp-sa-guide.md +673 -0
- package/.agent/knowledge-base/features/figma-mcp-uiux-guide.md +459 -0
- package/.agent/knowledge-base/performance/KB-2026-01-02-lazy-loading-optimization.md +80 -0
- package/.agent/knowledge-base/platform-specific/KB-2026-01-02-windows-console-encoding.md +56 -0
- package/.agent/knowledge-base/role-guides/DEV-KB-Guide.md +527 -0
- package/.agent/knowledge-base/role-guides/DEVOPS-KB-Guide.md +491 -0
- package/.agent/knowledge-base/role-guides/PM-KB-Guide.md +299 -0
- package/.agent/knowledge-base/role-guides/SECA-KB-Guide.md +555 -0
- package/.agent/knowledge-base/role-guides/TESTER-KB-Guide.md +519 -0
- package/.agent/knowledge-base/security/KB-2026-01-02-input-validation-sanitization.md +74 -0
- package/.agent/rules/AUTO-LEARNING.md +418 -0
- package/.agent/rules/ai-enforcement.md +11 -0
- package/.agent/rules/artifacts.md +77 -58
- package/.agent/rules/git-workflow.md +25 -65
- package/.agent/rules/global.md +18 -13
- package/.agent/skills/role-ba.md +76 -0
- package/.agent/skills/role-brain.md +470 -0
- package/.agent/skills/role-dev.md +338 -0
- package/.agent/skills/role-devops.md +122 -0
- package/.agent/skills/role-orchestrator.md +223 -0
- package/.agent/skills/role-pm.md +258 -0
- package/.agent/skills/role-po.md +237 -0
- package/.agent/skills/role-qa.md +81 -0
- package/.agent/skills/role-reporter.md +117 -0
- package/.agent/skills/role-sa.md +277 -0
- package/.agent/skills/role-seca.md +294 -0
- package/.agent/skills/role-stakeholder.md +105 -0
- package/.agent/skills/role-tester.md +294 -0
- package/.agent/skills/role-uiux.md +264 -0
- package/.agent/templates/CHANGELOG-Template.md +83 -0
- package/.agent/templates/Knowledge-Entry-Template.md +3 -0
- package/.agent/workflows/brain.md +84 -53
- package/.agent/workflows/compound.md +51 -0
- package/.agent/workflows/cycle.md +61 -0
- package/.agent/workflows/emergency.md +114 -0
- package/.agent/workflows/explore.md +147 -0
- package/.agent/workflows/housekeeping.md +105 -0
- package/.agent/workflows/metrics.md +179 -0
- package/.agent/workflows/orchestrator.md +68 -0
- package/.agent/workflows/preflight.md +35 -0
- package/.agent/workflows/release.md +153 -0
- package/.agent/workflows/route.md +160 -0
- package/.agent/workflows/sprint.md +125 -0
- package/.agent/workflows/validate.md +146 -0
- package/CHANGELOG.md +360 -6
- package/README.md +178 -88
- package/bin/CROSS-PLATFORM-CLI.md +526 -0
- package/bin/README.md +525 -0
- package/bin/cli.js +65 -90
- package/bin/kb +34 -0
- package/bin/kb.bat +28 -0
- package/bin/kb_cli.py +226 -0
- package/bin/lib/README.md +411 -0
- package/bin/lib/__init__.py +7 -0
- package/bin/lib/__pycache__/kb_add.cpython-313.pyc +0 -0
- package/bin/lib/__pycache__/kb_common.cpython-313.pyc +0 -0
- package/bin/lib/__pycache__/kb_compound.cpython-313.pyc +0 -0
- package/bin/lib/__pycache__/kb_index.cpython-313.pyc +0 -0
- package/bin/lib/__pycache__/kb_list.cpython-313.pyc +0 -0
- package/bin/lib/__pycache__/kb_search.cpython-313.pyc +0 -0
- package/bin/lib/__pycache__/kb_stats.cpython-313.pyc +0 -0
- package/bin/lib/kb_add.py +203 -0
- package/bin/lib/kb_common.py +224 -0
- package/bin/lib/kb_compound.py +250 -0
- package/bin/lib/kb_index.py +193 -0
- package/bin/lib/kb_list.py +144 -0
- package/bin/lib/kb_search.py +121 -0
- package/bin/lib/kb_stats.py +153 -0
- package/docs/AGENT-MANAGEMENT-GUIDE.md +298 -0
- package/docs/ARCHITECTURE-OVERVIEW.md +350 -0
- package/docs/BRAIN-ARCHITECTURE.md +396 -0
- package/docs/COMPOUND-ENGINEERING-SETUP.md +326 -0
- package/docs/KNOWLEDGE-BASE-GUIDE.md +330 -0
- package/docs/KNOWLEDGE-BASE-SIMPLE.md +248 -0
- package/docs/MONOREPO-ARCHITECTURE.md +492 -0
- package/docs/PROJECT-DOCUMENTATION-INDEX.md +540 -0
- package/docs/SDLC-Diagram.md +235 -0
- package/docs/analysis/Workflow-Optimization-Diagram.md +524 -0
- package/docs/analysis/Workflows-Deep-Analysis-2026-01-03.md +604 -0
- package/docs/architecture/{brain.md → BRAIN.md} +1 -1
- package/docs/global/Master-Documentation.md +307 -0
- package/docs/global/reports/Final-Approval-Report.md +257 -0
- package/docs/guides/AUTO-LEARNING-COMPLETE-GUIDE.md +519 -0
- package/docs/guides/AUTO-LEARNING-SYSTEM.md +322 -0
- package/docs/guides/LEARNING-FLOW.md +0 -0
- package/docs/guides/MCP-QUICK-REFERENCE.md +104 -0
- package/docs/guides/MCP-SETUP.md +139 -0
- package/docs/guides/QUICK-START.md +4 -0
- package/docs/guides/ROLE-COMMUNICATION-SYSTEM.md +71 -0
- package/docs/reports/Metrics-Dashboard-2026-01-02.md +66 -0
- package/docs/reports/Metrics-Dashboard-2026-01-04.md +68 -0
- package/docs/reports/UIUX-Design-Skills-Research-Report-2026.md +91 -0
- package/docs/reports/Validation-Report-2026-01-04.md +23 -0
- package/docs/research-reports/research-20260103-101315.json +95 -0
- package/docs/research-reports/research-20260103-101315.md +78 -0
- package/docs/research-reports/research-20260103-183837.json +95 -0
- package/docs/research-reports/research-20260103-183837.md +78 -0
- package/docs/research-reports/research-20260103-190346.json +100 -0
- package/docs/research-reports/research-20260103-190346.md +83 -0
- package/docs/research-reports/research-20260104-094131.json +94 -0
- package/docs/research-reports/research-20260104-094131.md +78 -0
- package/docs/setup/{github-management.md → GITHUB-MANAGEMENT.md} +1 -1
- package/docs/setup/RESEARCH-AGENT-SETUP.md +575 -0
- package/docs/sprints/{sprint-github-issues.md → SPRINT-GITHUB-ISSUES.md} +1 -1
- package/docs/sprints/{sprint-leann-integration.md → SPRINT-LEANN-INTEGRATION.md} +1 -1
- package/docs/sprints/sprint-1/designs/Backend-Design-Spec-Sprint-1-v1.md +1206 -0
- package/docs/sprints/sprint-1/designs/System-Design-Spec-Sprint-1-v1.md +439 -0
- package/docs/sprints/sprint-1/designs/System-Design-Spec-v1.0.md +425 -0
- package/docs/sprints/sprint-1/designs/UIUX-Design-Spec-Sprint-1-v1.md +55 -0
- package/docs/sprints/sprint-1/designs/UIUX-Design-Spec-v1.0.md +644 -0
- package/docs/sprints/sprint-1/logs/DevOps-Plan-and-Log-Sprint-1-v1.md +253 -0
- package/docs/sprints/sprint-1/logs/Development-Log-Phase1.md +433 -0
- package/docs/sprints/sprint-1/logs/Development-Log-Sprint-1-v1.md +181 -0
- package/docs/sprints/sprint-1/logs/Development-Log-Sprint-1.md +548 -0
- package/docs/sprints/sprint-1/logs/Orchestration-Log-Sprint-1.md +46 -0
- package/docs/sprints/sprint-1/logs/Phase1-Summary.md +84 -0
- package/docs/sprints/sprint-1/plans/Product-Backlog-Sprint-1-v1.md +40 -0
- package/docs/sprints/sprint-1/plans/Product-Backlog-v1.0.md +613 -0
- package/docs/sprints/sprint-1/plans/Project-Plan-Sprint-1-v1.0.md +210 -0
- package/docs/sprints/sprint-1/plans/Project-Plan-Sprint-1-v1.md +377 -0
- package/docs/sprints/sprint-1/reports/Design-Verification-Report-v1.0.md +220 -0
- package/docs/sprints/sprint-1/reports/Phase-Report-Sprint-1-v1.md +238 -0
- package/docs/sprints/sprint-1/reports/Security-Review-Report-v1.0.md +285 -0
- package/docs/sprints/sprint-1/reports/Sprint-Report-Sprint-1.md +74 -0
- package/docs/sprints/sprint-1/reports/Test-Report-v1.0.md +346 -0
- package/docs/sprints/sprint-1/reviews/Design-Verification-Report.md +508 -0
- package/docs/sprints/sprint-1/reviews/Security-Review-Report.md +589 -0
- package/docs/sprints/sprint-1/sprint-current/logs/WORKFLOW-CLEANUP-FINAL.md +121 -0
- package/docs/sprints/sprint-1/sprint-current/logs/WORKFLOW-OPTIMIZATION-COMPLETE.md +224 -0
- package/docs/sprints/sprint-1/sprint-current/logs/Workflow-Optimization-Progress.md +310 -0
- package/docs/sprints/sprint-1/sprint-current/logs/Workflow-Optimization-Session-Summary.md +420 -0
- package/docs/sprints/sprint-1/sprint-current/plans/Workflow-Optimization-Implementation-Plan.md +1124 -0
- package/docs/sprints/sprint-2/SPRINT-SUMMARY.md +150 -0
- package/docs/sprints/sprint-2/designs/UIUX-Design-Spec-Sprint-2-v1.md +352 -0
- package/docs/sprints/sprint-2/logs/Development-Log-Sprint-2-v1.md +293 -0
- package/docs/sprints/sprint-2/plans/Product-Backlog-Sprint-2-v1.md +62 -0
- package/docs/sprints/sprint-2/plans/Project-Plan-Sprint-2-v1.md +228 -0
- package/docs/sprints/sprint-2/reports/Phase-Report-Sprint-2-v1.md +303 -0
- package/docs/sprints/sprint-3/designs/UIUX-Design-Spec-Sprint-3-v1.md +160 -0
- package/docs/sprints/sprint-3/logs/Development-Log-Sprint-3-v1.md +249 -0
- package/docs/sprints/sprint-3/logs/Testing-Report-Sprint-3-v1.md +244 -0
- package/docs/sprints/sprint-3/plans/Product-Backlog-Sprint-3-v1.md +95 -0
- package/docs/sprints/sprint-3/reports/Final-Approval-Report-Sprint-3-v1.md +299 -0
- package/docs/sprints/sprint-3/reports/Sprint-Summary-Sprint-3-v1.md +276 -0
- package/docs/sprints/sprint-3/reviews/Design-Verification-Report-Sprint-3-v1.md +122 -0
- package/docs/sprints/sprint-3/reviews/Security-Review-Report-Sprint-3-v1.md +67 -0
- package/docs/sprints/sprint-5/designs/Backend-Design-Spec-Sprint-5-v1.md +1734 -0
- package/docs/sprints/sprint-5/designs/Design-Verification-Report.md +101 -0
- package/docs/sprints/sprint-5/designs/Security-Review-Report.md +84 -0
- package/docs/sprints/sprint-6/.brain-state.json +29 -0
- package/package.json +92 -16
- package/.agent/ide-integration/aider-commands.md +0 -40
- package/.agent/ide-integration/cline-config.json +0 -108
- package/.agent/ide-integration/cursor-rules.md +0 -63
- package/.agent/ide-integration/github-copilot-instructions.md +0 -75
- package/.agent/ide-integration/vscode-commands.json +0 -190
- package/.agent/ide-integration/windsurf-cascade.md +0 -125
- package/.agent/knowledge-base/index.md +0 -202
- package/.agent/legacy/roles/designer.md +0 -311
- package/.agent/legacy/roles/dev.md +0 -177
- package/.agent/legacy/roles/devops.md +0 -146
- package/.agent/legacy/roles/orchestrator.md +0 -339
- package/.agent/legacy/roles/pm.md +0 -120
- package/.agent/legacy/roles/po.md +0 -89
- package/.agent/legacy/roles/qa.md +0 -108
- package/.agent/legacy/roles/reporter.md +0 -70
- package/.agent/legacy/roles/sa.md +0 -118
- package/.agent/legacy/roles/seca.md +0 -112
- package/.agent/legacy/roles/stakeholder.md +0 -111
- package/.agent/legacy/roles/tester.md +0 -129
- package/.agent/rules/global.md.bak +0 -154
- package/.agent/usage.md +0 -653
- package/.agent/workflows/auto.md +0 -35
- package/.agent/workflows/dev.md +0 -30
- package/.agent/workflows/devops.md +0 -28
- package/.agent/workflows/kb-search.md +0 -22
- package/.agent/workflows/pm.md +0 -42
- package/.agent/workflows/po.md +0 -21
- package/.agent/workflows/qa.md +0 -31
- package/.agent/workflows/reporter.md +0 -21
- package/.agent/workflows/sa.md +0 -51
- package/.agent/workflows/seca.md +0 -21
- package/.agent/workflows/stakeholder.md +0 -26
- package/.agent/workflows/tester.md +0 -21
- package/.agent/workflows/uiux.md +0 -38
- package/.cursorrules +0 -49
- package/.env.template +0 -10
- package/.github/ISSUE_TEMPLATE/bug_report.yml +0 -47
- package/.github/ISSUE_TEMPLATE/config.yml +0 -8
- package/.github/ISSUE_TEMPLATE/feature_request.yml +0 -33
- package/.github/ISSUE_TEMPLATE/security_alert.yml +0 -28
- package/.github/ISSUE_TEMPLATE/task_implementation.yml +0 -37
- package/.github/copilot-instructions.md +0 -60
- package/bin/commands/create.js +0 -96
- package/bin/commands/help.js +0 -69
- package/bin/commands/ide.js +0 -116
- package/bin/commands/init-kb.js +0 -74
- package/bin/commands/install.js +0 -68
- package/bin/commands/list.js +0 -35
- package/bin/graph_brain.py +0 -86
- package/bin/sync_github.py +0 -75
- package/bin/utils/args-parser.js +0 -33
- package/bin/utils/colors.js +0 -21
- package/bin/verify_neo4j.py +0 -25
- /package/.agent/rules/{knowledge-base.md → KNOWLEDGE-BASE.md} +0 -0
- /package/docs/architecture/{neo4j-learning-queries.md → NEO4J-LEARNING-QUERIES.md} +0 -0
- /package/docs/reports/{comparison-leann-neo4j.md → COMPARISON-LEANN-NEO4J.md} +0 -0
- /package/docs/sprints/{sprint-neo4j-brain.md → SPRINT-NEO4J-BRAIN.md} +0 -0
|
@@ -0,0 +1,1206 @@
|
|
|
1
|
+
# Backend Design Specification - Sprint 1
|
|
2
|
+
|
|
3
|
+
**Project:** Agentic SDLC
|
|
4
|
+
**Version:** 1.0
|
|
5
|
+
**Date:** 2026-01-01
|
|
6
|
+
**Author:** @SA (System Analyst)
|
|
7
|
+
**Status:** Draft
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Executive Summary
|
|
12
|
+
|
|
13
|
+
Agentic SDLC là một **hệ thống mô phỏng SDLC hoàn chỉnh** sử dụng 12 AI agents chuyên biệt để thực thi quy trình phát triển phần mềm. Đây là một **framework/toolkit** được phân phối qua NPM, cho phép developers tích hợp quy trình SDLC tự động vào bất kỳ project nào.
|
|
14
|
+
|
|
15
|
+
### Kiến trúc tổng quan:
|
|
16
|
+
|
|
17
|
+
1. **CLI Distribution Layer** - NPM package để cài đặt và khởi tạo
|
|
18
|
+
2. **Agent Orchestration Layer** - 12 AI roles thực thi SDLC workflow
|
|
19
|
+
3. **Knowledge Management Layer** - Hệ thống học tự động từ bugs/features
|
|
20
|
+
4. **IDE Integration Layer** - Tích hợp với Cursor, Copilot, Windsurf, Cline, Aider
|
|
21
|
+
5. **MCP Integration Layer** - Kết nối với external tools (GitHub, Playwright, Git, etc.)
|
|
22
|
+
|
|
23
|
+
### Mục đích chính:
|
|
24
|
+
- **Không phải là một ứng dụng** - Là một **development framework**
|
|
25
|
+
- **Không có backend server** - Chạy hoàn toàn local trên máy developer
|
|
26
|
+
- **Không có database bắt buộc** - Sử dụng file system, Neo4j optional
|
|
27
|
+
- **Tích hợp vào project hiện có** - Không tạo project mới từ đầu
|
|
28
|
+
|
|
29
|
+
**Tech Stack:**
|
|
30
|
+
- **Runtime:** Node.js 16+ (CLI tool)
|
|
31
|
+
- **Distribution:** NPM package
|
|
32
|
+
- **Storage:** File system (Markdown) + Neo4j (optional)
|
|
33
|
+
- **Integration:** MCP (Model Context Protocol)
|
|
34
|
+
- **IDE Support:** Cursor, GitHub Copilot, Windsurf, Cline, Aider
|
|
35
|
+
- **Marketing:** Astro landing page (riêng biệt)
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## 1. Architecture Overview
|
|
40
|
+
|
|
41
|
+
### 1.1 High-Level Architecture
|
|
42
|
+
|
|
43
|
+
**Lưu ý:** Đây là kiến trúc của **Agentic SDLC Framework**, không phải một ứng dụng web/mobile.
|
|
44
|
+
|
|
45
|
+
```
|
|
46
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
47
|
+
│ DEVELOPER'S MACHINE │
|
|
48
|
+
│ │
|
|
49
|
+
│ ┌────────────────────────────────────────────────────────┐ │
|
|
50
|
+
│ │ IDE (Cursor/Copilot/Windsurf) │ │
|
|
51
|
+
│ │ ┌──────────────────────────────────────────────────┐ │ │
|
|
52
|
+
│ │ │ AI Assistant (Kiro/Copilot/etc.) │ │ │
|
|
53
|
+
│ │ │ • Đọc .agent/workflows/ (12 roles) │ │ │
|
|
54
|
+
│ │ │ • Thực thi SDLC workflow │ │ │
|
|
55
|
+
│ │ │ • Tạo artifacts trong docs/sprints/ │ │ │
|
|
56
|
+
│ │ └──────────────────────────────────────────────────┘ │ │
|
|
57
|
+
│ └────────────────────────────────────────────────────────┘ │
|
|
58
|
+
│ │ │
|
|
59
|
+
│ ▼ │
|
|
60
|
+
│ ┌────────────────────────────────────────────────────────┐ │
|
|
61
|
+
│ │ PROJECT DIRECTORY (User's Code) │ │
|
|
62
|
+
│ │ │ │
|
|
63
|
+
│ │ .agent/ ← Installed by CLI │ │
|
|
64
|
+
│ │ ├── workflows/ ← 12 AI role definitions │ │
|
|
65
|
+
│ │ ├── templates/ ← Document templates │ │
|
|
66
|
+
│ │ ├── knowledge-base/ ← Learning system │ │
|
|
67
|
+
│ │ ├── rules/ ← Global rules │ │
|
|
68
|
+
│ │ └── ide-integration/ ← IDE configs │ │
|
|
69
|
+
│ │ │ │
|
|
70
|
+
│ │ docs/sprints/ ← Generated artifacts │ │
|
|
71
|
+
│ │ └── sprint-N/ │ │
|
|
72
|
+
│ │ ├── plans/ ← PM outputs │ │
|
|
73
|
+
│ │ ├── designs/ ← SA, UIUX outputs │ │
|
|
74
|
+
│ │ ├── reviews/ ← QA, SECA outputs │ │
|
|
75
|
+
│ │ ├── logs/ ← DEV, DEVOPS logs │ │
|
|
76
|
+
│ │ └── reports/ ← Final reports │ │
|
|
77
|
+
│ │ │ │
|
|
78
|
+
│ │ src/ ← User's actual code │ │
|
|
79
|
+
│ │ package.json │ │
|
|
80
|
+
│ │ .cursorrules ← IDE integration │ │
|
|
81
|
+
│ │ .github/copilot-instructions.md │ │
|
|
82
|
+
│ └────────────────────────────────────────────────────────┘ │
|
|
83
|
+
│ │ │
|
|
84
|
+
│ ▼ │
|
|
85
|
+
│ ┌────────────────────────────────────────────────────────┐ │
|
|
86
|
+
│ │ MCP Integration Layer │ │
|
|
87
|
+
│ │ (Model Context Protocol - Tool Orchestration) │ │
|
|
88
|
+
│ │ │ │
|
|
89
|
+
│ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌─────────┐ │ │
|
|
90
|
+
│ │ │ GitHub │ │Playwright│ │ Git │ │ Fetch │ │ │
|
|
91
|
+
│ │ │ MCP │ │ MCP │ │ MCP │ │ MCP │ │ │
|
|
92
|
+
│ │ └──────────┘ └──────────┘ └──────────┘ └─────────┘ │ │
|
|
93
|
+
│ │ • Issue tracking │ │
|
|
94
|
+
│ │ • Browser automation │ │
|
|
95
|
+
│ │ • Version control │ │
|
|
96
|
+
│ │ • HTTP requests │ │
|
|
97
|
+
│ └────────────────────────────────────────────────────────┘ │
|
|
98
|
+
│ │ │
|
|
99
|
+
│ ▼ │
|
|
100
|
+
│ ┌────────────────────────────────────────────────────────┐ │
|
|
101
|
+
│ │ Optional: Neo4j Knowledge Graph │ │
|
|
102
|
+
│ │ (Advanced pattern recognition) │ │
|
|
103
|
+
│ └────────────────────────────────────────────────────────┘ │
|
|
104
|
+
└─────────────────────────────────────────────────────────────┘
|
|
105
|
+
│
|
|
106
|
+
▼
|
|
107
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
108
|
+
│ EXTERNAL SERVICES │
|
|
109
|
+
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
|
|
110
|
+
│ │ GitHub │ │ Neo4j │ │ Vercel │ │
|
|
111
|
+
│ │ (Issues, │ │ (Cloud/ │ │ (Landing │ │
|
|
112
|
+
│ │ Repos) │ │ Local) │ │ Page) │ │
|
|
113
|
+
│ └──────────────┘ └──────────────┘ └──────────────┘ │
|
|
114
|
+
└─────────────────────────────────────────────────────────────┘
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
**Giải thích kiến trúc:**
|
|
118
|
+
|
|
119
|
+
1. **Developer's Machine** - Tất cả chạy local, không có server
|
|
120
|
+
2. **IDE** - Cursor, Copilot, Windsurf, etc. đọc workflow files
|
|
121
|
+
3. **AI Assistant** - Thực thi 12 roles theo SDLC flow
|
|
122
|
+
4. **Project Directory** - Code của user + .agent/ framework
|
|
123
|
+
5. **MCP Layer** - Kết nối với external tools
|
|
124
|
+
6. **External Services** - Optional, không bắt buộc
|
|
125
|
+
|
|
126
|
+
### 1.2 System Components
|
|
127
|
+
|
|
128
|
+
**Lưu ý quan trọng:** Agentic SDLC là một **framework**, không phải application.
|
|
129
|
+
|
|
130
|
+
| Component | Technology | Purpose | Location |
|
|
131
|
+
|-----------|-----------|---------|----------|
|
|
132
|
+
| **CLI Tool** | Node.js + fs-extra | Install framework vào project | `bin/cli.js` |
|
|
133
|
+
| **12 AI Roles** | Markdown workflows | SDLC execution logic | `.agent/workflows/` |
|
|
134
|
+
| **16 Templates** | Markdown templates | Document generation | `.agent/templates/` |
|
|
135
|
+
| **Knowledge Base** | File system + Neo4j (optional) | Auto-learning system | `.agent/knowledge-base/` |
|
|
136
|
+
| **IDE Integration** | Config files | Activate roles in IDE | `.cursorrules`, etc. |
|
|
137
|
+
| **MCP Integration** | Model Context Protocol | External tool access | `.kiro/settings/mcp.json` |
|
|
138
|
+
| **Landing Page** | Astro + React + Tailwind | Marketing (separate) | `landing-page/` |
|
|
139
|
+
|
|
140
|
+
**Workflow thực tế:**
|
|
141
|
+
1. Developer chạy `npm install -g agentic-sdlc`
|
|
142
|
+
2. Trong project, chạy `agentic-sdlc install`
|
|
143
|
+
3. Framework copy `.agent/` vào project
|
|
144
|
+
4. Developer dùng IDE với slash commands: `/pm`, `/dev`, `/auto`
|
|
145
|
+
5. AI assistant đọc workflows và thực thi
|
|
146
|
+
6. Artifacts được tạo trong `docs/sprints/`
|
|
147
|
+
|
|
148
|
+
---
|
|
149
|
+
|
|
150
|
+
## 2. Data Models & Schema
|
|
151
|
+
|
|
152
|
+
### 2.1 File System Structure (Core Framework)
|
|
153
|
+
|
|
154
|
+
**Đây là cấu trúc THỰC TẾ của Agentic SDLC framework:**
|
|
155
|
+
|
|
156
|
+
```
|
|
157
|
+
agentic-sdlc/ # NPM package root
|
|
158
|
+
├── bin/ # CLI implementation
|
|
159
|
+
│ ├── cli.js # Entry point
|
|
160
|
+
│ ├── commands/ # Command handlers
|
|
161
|
+
│ │ ├── install.js # Install framework
|
|
162
|
+
│ │ ├── create.js # Create new project
|
|
163
|
+
│ │ ├── ide.js # Setup IDE integration
|
|
164
|
+
│ │ ├── init-kb.js # Initialize knowledge base
|
|
165
|
+
│ │ ├── list.js # List templates/roles
|
|
166
|
+
│ │ └── help.js # Help & version
|
|
167
|
+
│ ├── utils/ # Utilities
|
|
168
|
+
│ │ ├── colors.js # Console colors
|
|
169
|
+
│ │ └── args-parser.js # Argument parsing
|
|
170
|
+
│ ├── graph_brain.py # Neo4j integration (optional)
|
|
171
|
+
│ ├── sync_github.py # GitHub sync (optional)
|
|
172
|
+
│ └── verify_neo4j.py # Neo4j verification
|
|
173
|
+
│
|
|
174
|
+
├── .agent/ # Framework core (copied to user projects)
|
|
175
|
+
│ ├── workflows/ # 12 AI role definitions
|
|
176
|
+
│ │ ├── pm.md # Project Manager
|
|
177
|
+
│ │ ├── po.md # Product Owner
|
|
178
|
+
│ │ ├── sa.md # System Analyst
|
|
179
|
+
│ │ ├── uiux.md # UI/UX Designer
|
|
180
|
+
│ │ ├── qa.md # Quality Assurance
|
|
181
|
+
│ │ ├── seca.md # Security Analyst
|
|
182
|
+
│ │ ├── dev.md # Developer
|
|
183
|
+
│ │ ├── devops.md # DevOps Engineer
|
|
184
|
+
│ │ ├── tester.md # Tester
|
|
185
|
+
│ │ ├── reporter.md # Reporter
|
|
186
|
+
│ │ ├── stakeholder.md # Stakeholder
|
|
187
|
+
│ │ ├── auto.md # Orchestrator
|
|
188
|
+
│ │ └── brain.md # Knowledge brain
|
|
189
|
+
│ │
|
|
190
|
+
│ ├── templates/ # 16 document templates
|
|
191
|
+
│ │ ├── Project-Plan-Template.md
|
|
192
|
+
│ │ ├── System-Design-Spec-Template.md
|
|
193
|
+
│ │ ├── UIUX-Design-Spec-Template.md
|
|
194
|
+
│ │ ├── Design-Verification-Report-Template.md
|
|
195
|
+
│ │ ├── Security-Review-Report-Template.md
|
|
196
|
+
│ │ ├── Development-Log-Template.md
|
|
197
|
+
│ │ ├── DevOps-Plan-Template.md
|
|
198
|
+
│ │ ├── Test-Report-Template.md
|
|
199
|
+
│ │ ├── Final-Project-Report-Template.md
|
|
200
|
+
│ │ ├── Final-Approval-Report-Template.md
|
|
201
|
+
│ │ ├── Product-Backlog-Template.md
|
|
202
|
+
│ │ ├── Phase-Report-Template.md
|
|
203
|
+
│ │ ├── Master-Documentation-Template.md
|
|
204
|
+
│ │ ├── Knowledge-Entry-Template.md
|
|
205
|
+
│ │ ├── CHANGELOG-Template.md
|
|
206
|
+
│ │ ├── definition-of-done.md
|
|
207
|
+
│ │ └── incident-response.md
|
|
208
|
+
│ │
|
|
209
|
+
│ ├── knowledge-base/ # Auto-learning system
|
|
210
|
+
│ │ ├── README.md # KB documentation
|
|
211
|
+
│ │ ├── AUTO-LEARNING-GUIDE.md # Learning guide
|
|
212
|
+
│ │ ├── index.md # Searchable index
|
|
213
|
+
│ │ ├── bugs/ # Bug patterns
|
|
214
|
+
│ │ │ ├── critical/
|
|
215
|
+
│ │ │ ├── high/
|
|
216
|
+
│ │ │ ├── medium/
|
|
217
|
+
│ │ │ └── low/
|
|
218
|
+
│ │ ├── features/ # Feature solutions
|
|
219
|
+
│ │ │ ├── authentication/
|
|
220
|
+
│ │ │ ├── performance/
|
|
221
|
+
│ │ │ ├── integration/
|
|
222
|
+
│ │ │ └── ui-ux/
|
|
223
|
+
│ │ ├── architecture/ # Design decisions
|
|
224
|
+
│ │ ├── security/ # Security issues
|
|
225
|
+
│ │ ├── performance/ # Performance optimizations
|
|
226
|
+
│ │ └── platform-specific/ # Platform issues
|
|
227
|
+
│ │ ├── web/
|
|
228
|
+
│ │ ├── mobile/
|
|
229
|
+
│ │ ├── desktop/
|
|
230
|
+
│ │ ├── cli/
|
|
231
|
+
│ │ └── embedded/
|
|
232
|
+
│ │
|
|
233
|
+
│ ├── rules/ # Global rules
|
|
234
|
+
│ │ ├── global.md # Core rules
|
|
235
|
+
│ │ ├── artifacts.md # Artifact rules
|
|
236
|
+
│ │ ├── git-workflow.md # Git conventions
|
|
237
|
+
│ │ ├── knowledge-base.md # KB rules
|
|
238
|
+
│ │ └── auto-learning.md # Learning rules
|
|
239
|
+
│ │
|
|
240
|
+
│ ├── ide-integration/ # IDE configs
|
|
241
|
+
│ │ ├── README.md
|
|
242
|
+
│ │ ├── cursor-rules.md # Cursor IDE
|
|
243
|
+
│ │ ├── github-copilot-instructions.md
|
|
244
|
+
│ │ ├── windsurf-cascade.md # Windsurf IDE
|
|
245
|
+
│ │ ├── cline-config.json # Cline IDE
|
|
246
|
+
│ │ ├── aider-commands.md # Aider IDE
|
|
247
|
+
│ │ └── vscode-commands.json
|
|
248
|
+
│ │
|
|
249
|
+
│ └── usage.md # Complete documentation
|
|
250
|
+
│
|
|
251
|
+
├── docs/ # Documentation
|
|
252
|
+
│ ├── OUTLINE.md # Doc structure
|
|
253
|
+
│ ├── guides/ # User guides
|
|
254
|
+
│ │ ├── QUICK-START.md
|
|
255
|
+
│ │ ├── CLI-EXAMPLES.md
|
|
256
|
+
│ │ ├── INTEGRATION-GUIDE.md
|
|
257
|
+
│ │ └── MCP-GUIDE.md
|
|
258
|
+
│ ├── architecture/ # Architecture docs
|
|
259
|
+
│ │ ├── brain.md
|
|
260
|
+
│ │ └── neo4j-learning-queries.md
|
|
261
|
+
│ ├── setup/ # Setup guides
|
|
262
|
+
│ │ └── github-management.md
|
|
263
|
+
│ └── sprints/ # Example sprints
|
|
264
|
+
│ └── sprint-1/
|
|
265
|
+
│
|
|
266
|
+
├── landing-page/ # Marketing site (separate)
|
|
267
|
+
│ ├── src/
|
|
268
|
+
│ │ ├── components/
|
|
269
|
+
│ │ ├── pages/
|
|
270
|
+
│ │ └── layouts/
|
|
271
|
+
│ ├── astro.config.mjs
|
|
272
|
+
│ ├── package.json
|
|
273
|
+
│ └── README.md
|
|
274
|
+
│
|
|
275
|
+
├── .kiro/ # Kiro IDE config (for development)
|
|
276
|
+
│ └── settings/
|
|
277
|
+
│ └── mcp.json # MCP server configs
|
|
278
|
+
│
|
|
279
|
+
├── package.json # NPM package config
|
|
280
|
+
├── README.md # Main README
|
|
281
|
+
├── CHANGELOG.md # Version history
|
|
282
|
+
├── .env.template # Environment variables template
|
|
283
|
+
└── .gitignore
|
|
284
|
+
```
|
|
285
|
+
|
|
286
|
+
### 2.2 User Project Structure (After Installation)
|
|
287
|
+
|
|
288
|
+
**Khi user chạy `agentic-sdlc install` trong project của họ:**
|
|
289
|
+
|
|
290
|
+
```
|
|
291
|
+
user-project/ # User's existing project
|
|
292
|
+
├── .agent/ # ← Copied from framework
|
|
293
|
+
│ ├── workflows/ # 12 roles
|
|
294
|
+
│ ├── templates/ # 16 templates
|
|
295
|
+
│ ├── knowledge-base/ # Learning system
|
|
296
|
+
│ ├── rules/ # Global rules
|
|
297
|
+
│ └── ide-integration/ # IDE configs
|
|
298
|
+
│
|
|
299
|
+
├── docs/ # ← Created by framework
|
|
300
|
+
│ └── sprints/ # Sprint artifacts
|
|
301
|
+
│ └── sprint-N/
|
|
302
|
+
│ ├── plans/ # PM outputs
|
|
303
|
+
│ ├── designs/ # SA, UIUX outputs
|
|
304
|
+
│ ├── reviews/ # QA, SECA outputs
|
|
305
|
+
│ ├── logs/ # DEV, DEVOPS logs
|
|
306
|
+
│ └── reports/ # Final reports
|
|
307
|
+
│
|
|
308
|
+
├── .cursorrules # ← Created by `agentic-sdlc ide cursor`
|
|
309
|
+
├── .github/
|
|
310
|
+
│ └── copilot-instructions.md # ← Created by `agentic-sdlc ide copilot`
|
|
311
|
+
│
|
|
312
|
+
├── src/ # User's actual code
|
|
313
|
+
├── package.json # User's package.json
|
|
314
|
+
└── ... # User's other files
|
|
315
|
+
```
|
|
316
|
+
|
|
317
|
+
### 2.3 Knowledge Base Schema (Neo4j - Optional)
|
|
318
|
+
|
|
319
|
+
**Lưu ý:** Neo4j là OPTIONAL, không bắt buộc. Mặc định dùng file system.
|
|
320
|
+
|
|
321
|
+
```cypher
|
|
322
|
+
// Node Types
|
|
323
|
+
(:Project {
|
|
324
|
+
id: string,
|
|
325
|
+
name: string,
|
|
326
|
+
description: string,
|
|
327
|
+
created_at: datetime
|
|
328
|
+
})
|
|
329
|
+
|
|
330
|
+
(:Sprint {
|
|
331
|
+
number: integer,
|
|
332
|
+
start_date: date,
|
|
333
|
+
end_date: date,
|
|
334
|
+
status: enum['planning', 'design', 'development', 'testing', 'completed']
|
|
335
|
+
})
|
|
336
|
+
|
|
337
|
+
(:KnowledgeEntry {
|
|
338
|
+
id: string, // KB-YYYY-MM-DD-###
|
|
339
|
+
title: string,
|
|
340
|
+
category: enum['bug', 'feature', 'architecture', 'security', 'performance'],
|
|
341
|
+
severity: enum['critical', 'high', 'medium', 'low'],
|
|
342
|
+
problem: text,
|
|
343
|
+
root_cause: text,
|
|
344
|
+
solution: text,
|
|
345
|
+
prevention: text[],
|
|
346
|
+
tags: string[],
|
|
347
|
+
created_at: datetime,
|
|
348
|
+
auto_generated: boolean,
|
|
349
|
+
source_task: string
|
|
350
|
+
})
|
|
351
|
+
|
|
352
|
+
(:Bug {
|
|
353
|
+
id: string,
|
|
354
|
+
severity: enum['critical', 'high', 'medium', 'low'],
|
|
355
|
+
status: enum['open', 'in_progress', 'resolved', 'closed'],
|
|
356
|
+
description: text
|
|
357
|
+
})
|
|
358
|
+
|
|
359
|
+
(:Feature {
|
|
360
|
+
id: string,
|
|
361
|
+
complexity: enum['simple', 'medium', 'complex'],
|
|
362
|
+
status: enum['planned', 'in_progress', 'completed'],
|
|
363
|
+
description: text
|
|
364
|
+
})
|
|
365
|
+
|
|
366
|
+
(:Technology {
|
|
367
|
+
name: string,
|
|
368
|
+
version: string,
|
|
369
|
+
category: enum['language', 'framework', 'library', 'tool', 'database']
|
|
370
|
+
})
|
|
371
|
+
|
|
372
|
+
(:Role {
|
|
373
|
+
name: enum['PM', 'PO', 'SA', 'UIUX', 'QA', 'SECA', 'DEV', 'DEVOPS', 'TESTER', 'REPORTER', 'STAKEHOLDER', 'ORCHESTRATOR'],
|
|
374
|
+
responsibilities: string[]
|
|
375
|
+
})
|
|
376
|
+
|
|
377
|
+
// Relationships
|
|
378
|
+
(:KnowledgeEntry)-[:RELATES_TO]->(:KnowledgeEntry)
|
|
379
|
+
(:KnowledgeEntry)-[:USES]->(:Technology)
|
|
380
|
+
(:KnowledgeEntry)-[:SOLVED_BY]->(:Role)
|
|
381
|
+
(:KnowledgeEntry)-[:SIMILAR_TO]->(:KnowledgeEntry)
|
|
382
|
+
(:Bug)-[:DOCUMENTED_IN]->(:KnowledgeEntry)
|
|
383
|
+
(:Feature)-[:DOCUMENTED_IN]->(:KnowledgeEntry)
|
|
384
|
+
(:Sprint)-[:CONTAINS]->(:KnowledgeEntry)
|
|
385
|
+
(:Sprint)-[:CONTAINS]->(:Bug)
|
|
386
|
+
(:Sprint)-[:CONTAINS]->(:Feature)
|
|
387
|
+
(:Project)-[:HAS_SPRINT]->(:Sprint)
|
|
388
|
+
```
|
|
389
|
+
|
|
390
|
+
**Khi nào dùng Neo4j:**
|
|
391
|
+
- Project lớn (> 1000 knowledge entries)
|
|
392
|
+
- Cần pattern recognition nâng cao
|
|
393
|
+
- Cần graph queries phức tạp
|
|
394
|
+
- Team collaboration với shared knowledge base
|
|
395
|
+
|
|
396
|
+
**Khi nào dùng File System:**
|
|
397
|
+
- Project nhỏ/vừa (< 1000 entries)
|
|
398
|
+
- Solo developer
|
|
399
|
+
- Không cần advanced queries
|
|
400
|
+
- Muốn đơn giản, không setup database
|
|
401
|
+
|
|
402
|
+
### 2.4 Artifact Data Models
|
|
403
|
+
|
|
404
|
+
**Project Plan (PM)**
|
|
405
|
+
```yaml
|
|
406
|
+
metadata:
|
|
407
|
+
version: string
|
|
408
|
+
sprint: number
|
|
409
|
+
status: draft|approved|rejected
|
|
410
|
+
created_at: datetime
|
|
411
|
+
approved_by: string
|
|
412
|
+
|
|
413
|
+
content:
|
|
414
|
+
project_overview: string
|
|
415
|
+
objectives: string[]
|
|
416
|
+
scope:
|
|
417
|
+
in_scope: string[]
|
|
418
|
+
out_of_scope: string[]
|
|
419
|
+
user_stories: UserStory[]
|
|
420
|
+
timeline: Phase[]
|
|
421
|
+
risks: Risk[]
|
|
422
|
+
success_criteria: string[]
|
|
423
|
+
```
|
|
424
|
+
|
|
425
|
+
**Backend Design Spec (SA)**
|
|
426
|
+
```yaml
|
|
427
|
+
metadata:
|
|
428
|
+
version: string
|
|
429
|
+
sprint: number
|
|
430
|
+
status: draft|review|approved
|
|
431
|
+
|
|
432
|
+
architecture:
|
|
433
|
+
overview: string
|
|
434
|
+
components: Component[]
|
|
435
|
+
data_models: Model[]
|
|
436
|
+
api_specs: APIEndpoint[]
|
|
437
|
+
integrations: Integration[]
|
|
438
|
+
|
|
439
|
+
technical:
|
|
440
|
+
tech_stack: Technology[]
|
|
441
|
+
error_handling: Strategy[]
|
|
442
|
+
security: SecurityMeasure[]
|
|
443
|
+
performance: PerformanceTarget[]
|
|
444
|
+
```
|
|
445
|
+
|
|
446
|
+
**Knowledge Entry**
|
|
447
|
+
```yaml
|
|
448
|
+
metadata:
|
|
449
|
+
id: KB-YYYY-MM-DD-###
|
|
450
|
+
title: string
|
|
451
|
+
category: enum
|
|
452
|
+
severity: enum
|
|
453
|
+
auto_generated: boolean
|
|
454
|
+
source_task: string
|
|
455
|
+
created_at: datetime
|
|
456
|
+
|
|
457
|
+
content:
|
|
458
|
+
problem: string
|
|
459
|
+
root_cause: string
|
|
460
|
+
solution: string
|
|
461
|
+
code_snippets: CodeBlock[]
|
|
462
|
+
prevention: string[]
|
|
463
|
+
related_entries: string[]
|
|
464
|
+
tags: string[]
|
|
465
|
+
```
|
|
466
|
+
|
|
467
|
+
---
|
|
468
|
+
|
|
469
|
+
## 3. API Specifications
|
|
470
|
+
|
|
471
|
+
### 3.1 CLI Commands API
|
|
472
|
+
|
|
473
|
+
**Agentic SDLC CLI** - Tool để install và setup framework
|
|
474
|
+
|
|
475
|
+
**Command Structure:**
|
|
476
|
+
```bash
|
|
477
|
+
agentic-sdlc <command> [arguments] [options]
|
|
478
|
+
```
|
|
479
|
+
|
|
480
|
+
**Available Commands:**
|
|
481
|
+
|
|
482
|
+
| Command | Arguments | Options | Description | Use Case |
|
|
483
|
+
|---------|-----------|---------|-------------|----------|
|
|
484
|
+
| `install` | - | `--force`, `--quiet`, `--verbose` | Install framework vào current directory | Thêm vào existing project |
|
|
485
|
+
| `create` | `<project-name>` | `--force`, `--quiet`, `--verbose` | Tạo project mới với framework | Start new project |
|
|
486
|
+
| `ide` | `<cursor\|copilot\|windsurf\|cline\|aider\|all>` | `--force` | Setup IDE integration | Configure IDE |
|
|
487
|
+
| `init-kb` | - | `--with-neo4j` | Initialize knowledge base | Setup learning system |
|
|
488
|
+
| `list` | - | - | List templates & roles | Explore framework |
|
|
489
|
+
| `--help` | - | - | Show help | Get help |
|
|
490
|
+
| `--version` | - | - | Show version | Check version |
|
|
491
|
+
|
|
492
|
+
**Command Details:**
|
|
493
|
+
|
|
494
|
+
#### 1. `agentic-sdlc install`
|
|
495
|
+
**Purpose:** Install framework vào existing project
|
|
496
|
+
|
|
497
|
+
**What it does:**
|
|
498
|
+
1. Copy `.agent/` directory vào project
|
|
499
|
+
2. Verify installation
|
|
500
|
+
3. Show next steps
|
|
501
|
+
|
|
502
|
+
**Example:**
|
|
503
|
+
```bash
|
|
504
|
+
cd my-existing-project
|
|
505
|
+
agentic-sdlc install
|
|
506
|
+
|
|
507
|
+
# Output:
|
|
508
|
+
# ✓ Copying template files...
|
|
509
|
+
# ✓ Installation complete!
|
|
510
|
+
# Location: /path/to/project/.agent
|
|
511
|
+
#
|
|
512
|
+
# Next Steps:
|
|
513
|
+
# • Setup IDE: agentic-sdlc ide cursor
|
|
514
|
+
# • Review: .agent/usage.md
|
|
515
|
+
# • Start: /pm Build your project
|
|
516
|
+
```
|
|
517
|
+
|
|
518
|
+
**Options:**
|
|
519
|
+
- `--force`: Overwrite existing `.agent/` directory
|
|
520
|
+
- `--quiet`: Minimal output
|
|
521
|
+
- `--verbose`: Detailed logging
|
|
522
|
+
|
|
523
|
+
#### 2. `agentic-sdlc create <project-name>`
|
|
524
|
+
**Purpose:** Tạo project mới với framework đã setup
|
|
525
|
+
|
|
526
|
+
**What it does:**
|
|
527
|
+
1. Create project directory
|
|
528
|
+
2. Install framework (`.agent/`)
|
|
529
|
+
3. Create basic structure (`docs/sprints/`, `package.json`, `README.md`)
|
|
530
|
+
4. Create `.gitignore`
|
|
531
|
+
|
|
532
|
+
**Example:**
|
|
533
|
+
```bash
|
|
534
|
+
agentic-sdlc create my-new-project
|
|
535
|
+
|
|
536
|
+
# Output:
|
|
537
|
+
# ✓ Creating project directory...
|
|
538
|
+
# ✓ Installing instructions...
|
|
539
|
+
# ✓ Setting up project structure...
|
|
540
|
+
# ✓ Project created successfully!
|
|
541
|
+
#
|
|
542
|
+
# Next Steps:
|
|
543
|
+
# cd my-new-project
|
|
544
|
+
# agentic-sdlc ide cursor
|
|
545
|
+
# • Review .agent/usage.md
|
|
546
|
+
# • Start: /pm Build your project
|
|
547
|
+
```
|
|
548
|
+
|
|
549
|
+
#### 3. `agentic-sdlc ide <ide-name>`
|
|
550
|
+
**Purpose:** Setup IDE integration
|
|
551
|
+
|
|
552
|
+
**Supported IDEs:**
|
|
553
|
+
- `cursor` - Copy `.cursorrules`
|
|
554
|
+
- `copilot` - Copy `.github/copilot-instructions.md`
|
|
555
|
+
- `windsurf` - Copy windsurf config
|
|
556
|
+
- `cline` - Copy cline config
|
|
557
|
+
- `aider` - Copy aider commands
|
|
558
|
+
- `all` - Setup all IDEs
|
|
559
|
+
|
|
560
|
+
**Example:**
|
|
561
|
+
```bash
|
|
562
|
+
agentic-sdlc ide cursor
|
|
563
|
+
|
|
564
|
+
# Output:
|
|
565
|
+
# ✓ Setting up Cursor IDE...
|
|
566
|
+
# ✓ Copied .cursorrules
|
|
567
|
+
# ✓ IDE setup complete!
|
|
568
|
+
#
|
|
569
|
+
# Next Steps:
|
|
570
|
+
# • Restart Cursor IDE
|
|
571
|
+
# • Use slash commands: /pm, /dev, /auto
|
|
572
|
+
```
|
|
573
|
+
|
|
574
|
+
#### 4. `agentic-sdlc init-kb`
|
|
575
|
+
**Purpose:** Initialize knowledge base
|
|
576
|
+
|
|
577
|
+
**What it does:**
|
|
578
|
+
1. Create knowledge base structure
|
|
579
|
+
2. Setup index
|
|
580
|
+
3. Optionally setup Neo4j connection
|
|
581
|
+
|
|
582
|
+
**Example:**
|
|
583
|
+
```bash
|
|
584
|
+
agentic-sdlc init-kb
|
|
585
|
+
|
|
586
|
+
# Or with Neo4j:
|
|
587
|
+
agentic-sdlc init-kb --with-neo4j
|
|
588
|
+
```
|
|
589
|
+
|
|
590
|
+
#### 5. `agentic-sdlc list`
|
|
591
|
+
**Purpose:** List available templates and roles
|
|
592
|
+
|
|
593
|
+
**Example:**
|
|
594
|
+
```bash
|
|
595
|
+
agentic-sdlc list
|
|
596
|
+
|
|
597
|
+
# Output:
|
|
598
|
+
# Available Roles (12):
|
|
599
|
+
# • PM - Project Manager
|
|
600
|
+
# • SA - System Analyst
|
|
601
|
+
# • DEV - Developer
|
|
602
|
+
# ...
|
|
603
|
+
#
|
|
604
|
+
# Available Templates (16):
|
|
605
|
+
# • Project-Plan-Template.md
|
|
606
|
+
# • System-Design-Spec-Template.md
|
|
607
|
+
# ...
|
|
608
|
+
```
|
|
609
|
+
|
|
610
|
+
**Command Implementation:**
|
|
611
|
+
|
|
612
|
+
```javascript
|
|
613
|
+
// bin/cli.js
|
|
614
|
+
#!/usr/bin/env node
|
|
615
|
+
|
|
616
|
+
import fs from 'fs-extra';
|
|
617
|
+
import path from 'path';
|
|
618
|
+
import { fileURLToPath } from 'url';
|
|
619
|
+
|
|
620
|
+
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
|
621
|
+
const templatePath = path.join(__dirname, '../.agent');
|
|
622
|
+
|
|
623
|
+
async function main() {
|
|
624
|
+
const args = process.argv.slice(2);
|
|
625
|
+
const { options, args: filteredArgs } = parseArgs(args);
|
|
626
|
+
const command = filteredArgs[0];
|
|
627
|
+
|
|
628
|
+
switch (command) {
|
|
629
|
+
case 'install':
|
|
630
|
+
await install(templatePath, options);
|
|
631
|
+
break;
|
|
632
|
+
case 'create':
|
|
633
|
+
const projectName = filteredArgs[1];
|
|
634
|
+
await createProject(templatePath, projectName, options);
|
|
635
|
+
break;
|
|
636
|
+
case 'ide':
|
|
637
|
+
const ideName = filteredArgs[1];
|
|
638
|
+
await setupIDE(templatePath, ideName, options);
|
|
639
|
+
break;
|
|
640
|
+
case 'init-kb':
|
|
641
|
+
await initKnowledgeBase(templatePath, options);
|
|
642
|
+
break;
|
|
643
|
+
case 'list':
|
|
644
|
+
await listTemplates(templatePath);
|
|
645
|
+
break;
|
|
646
|
+
default:
|
|
647
|
+
showHelp();
|
|
648
|
+
}
|
|
649
|
+
}
|
|
650
|
+
|
|
651
|
+
main();
|
|
652
|
+
```
|
|
653
|
+
|
|
654
|
+
### 3.2 IDE Slash Commands (In-IDE API)
|
|
655
|
+
|
|
656
|
+
**Đây là API chính mà user sử dụng hàng ngày**
|
|
657
|
+
|
|
658
|
+
Sau khi setup IDE, user dùng slash commands trong IDE để activate các AI roles.
|
|
659
|
+
|
|
660
|
+
**Available Commands:**
|
|
661
|
+
|
|
662
|
+
| Command | Role | Purpose | Output Location |
|
|
663
|
+
|---------|------|---------|-----------------|
|
|
664
|
+
| `/pm` | Project Manager | Tạo project plan | `docs/sprints/sprint-N/plans/` |
|
|
665
|
+
| `/auto` | Orchestrator | Full automation mode | All directories |
|
|
666
|
+
| `/sa` | System Analyst | Architecture design | `docs/sprints/sprint-N/designs/` |
|
|
667
|
+
| `/uiux` | UI/UX Designer | Interface design | `docs/sprints/sprint-N/designs/` |
|
|
668
|
+
| `/po` | Product Owner | Product backlog | `docs/sprints/sprint-N/plans/` |
|
|
669
|
+
| `/qa` | Quality Assurance | Design review | `docs/sprints/sprint-N/reviews/` |
|
|
670
|
+
| `/seca` | Security Analyst | Security review | `docs/sprints/sprint-N/reviews/` |
|
|
671
|
+
| `/dev` | Developer | Implementation | `src/`, `docs/sprints/sprint-N/logs/` |
|
|
672
|
+
| `/devops` | DevOps | Infrastructure | `docs/sprints/sprint-N/logs/` |
|
|
673
|
+
| `/tester` | Tester | Testing | `docs/sprints/sprint-N/tests/` |
|
|
674
|
+
| `/reporter` | Reporter | Documentation | `docs/sprints/sprint-N/reports/` |
|
|
675
|
+
| `/stakeholder` | Stakeholder | Final review | `docs/sprints/sprint-N/reports/` |
|
|
676
|
+
| `/kb-search` | - | Search knowledge base | - |
|
|
677
|
+
|
|
678
|
+
**Workflow Example:**
|
|
679
|
+
|
|
680
|
+
```bash
|
|
681
|
+
# 1. User starts with PM
|
|
682
|
+
/pm Build a todo app with authentication
|
|
683
|
+
|
|
684
|
+
# PM creates:
|
|
685
|
+
# - docs/sprints/sprint-1/plans/Project-Plan-v1.md
|
|
686
|
+
# - Waits for user approval
|
|
687
|
+
|
|
688
|
+
# 2. User approves
|
|
689
|
+
"Approved"
|
|
690
|
+
|
|
691
|
+
# 3. PM triggers design phase
|
|
692
|
+
# @SA, @UIUX, @PO work in parallel
|
|
693
|
+
|
|
694
|
+
/sa Design the backend architecture
|
|
695
|
+
# Creates: docs/sprints/sprint-1/designs/Backend-Design-Spec-Sprint-1-v1.md
|
|
696
|
+
|
|
697
|
+
/uiux Design the UI
|
|
698
|
+
# Creates: docs/sprints/sprint-1/designs/UIUX-Design-Spec-Sprint-1-v1.md
|
|
699
|
+
|
|
700
|
+
# 4. Design review
|
|
701
|
+
/qa Review the design
|
|
702
|
+
/seca Check security
|
|
703
|
+
|
|
704
|
+
# 5. Development
|
|
705
|
+
/dev Implement the backend
|
|
706
|
+
/devops Setup deployment
|
|
707
|
+
|
|
708
|
+
# 6. Testing
|
|
709
|
+
/tester Run tests
|
|
710
|
+
|
|
711
|
+
# 7. Reporting
|
|
712
|
+
/reporter Generate final report
|
|
713
|
+
|
|
714
|
+
# 8. Final review
|
|
715
|
+
/stakeholder Review and approve
|
|
716
|
+
```
|
|
717
|
+
|
|
718
|
+
**Implementation Mechanism:**
|
|
719
|
+
|
|
720
|
+
1. **Cursor IDE:**
|
|
721
|
+
```markdown
|
|
722
|
+
<!-- .cursorrules -->
|
|
723
|
+
When user types /pm:
|
|
724
|
+
1. Read .agent/workflows/pm.md
|
|
725
|
+
2. Execute PM workflow
|
|
726
|
+
3. Generate artifacts in docs/sprints/sprint-N/plans/
|
|
727
|
+
4. Wait for approval
|
|
728
|
+
```
|
|
729
|
+
|
|
730
|
+
2. **GitHub Copilot:**
|
|
731
|
+
```markdown
|
|
732
|
+
<!-- .github/copilot-instructions.md -->
|
|
733
|
+
When user types /pm:
|
|
734
|
+
1. Load .agent/workflows/pm.md
|
|
735
|
+
2. Follow PM role instructions
|
|
736
|
+
3. Create project plan
|
|
737
|
+
4. Tag @SA, @UIUX, @PO for next phase
|
|
738
|
+
```
|
|
739
|
+
|
|
740
|
+
3. **Windsurf:**
|
|
741
|
+
```markdown
|
|
742
|
+
<!-- .agent/ide-integration/windsurf-cascade.md -->
|
|
743
|
+
Slash commands map to .agent/workflows/
|
|
744
|
+
/pm → pm.md
|
|
745
|
+
/dev → dev.md
|
|
746
|
+
/auto → auto.md
|
|
747
|
+
```
|
|
748
|
+
|
|
749
|
+
**Auto-Communication Between Roles:**
|
|
750
|
+
|
|
751
|
+
Roles tự động tag nhau:
|
|
752
|
+
|
|
753
|
+
```markdown
|
|
754
|
+
### Next Step:
|
|
755
|
+
- @SA - Please design the backend architecture
|
|
756
|
+
- @UIUX - Please design the UI/UX
|
|
757
|
+
- @PO - Please create product backlog
|
|
758
|
+
|
|
759
|
+
#designing #architecture #ui-ux
|
|
760
|
+
```
|
|
761
|
+
|
|
762
|
+
AI assistant tự động đọc tags và activate roles tiếp theo.
|
|
763
|
+
|
|
764
|
+
### 3.3 MCP Tool Integration
|
|
765
|
+
|
|
766
|
+
**Configured MCP Servers:**
|
|
767
|
+
|
|
768
|
+
```json
|
|
769
|
+
{
|
|
770
|
+
"mcpServers": {
|
|
771
|
+
"github": {
|
|
772
|
+
"command": "uvx",
|
|
773
|
+
"args": ["mcp-server-github"],
|
|
774
|
+
"capabilities": ["issues", "milestones", "labels", "projects"]
|
|
775
|
+
},
|
|
776
|
+
"playwright": {
|
|
777
|
+
"command": "uvx",
|
|
778
|
+
"args": ["mcp-playwright"],
|
|
779
|
+
"capabilities": ["browser_automation", "e2e_testing", "screenshots"]
|
|
780
|
+
},
|
|
781
|
+
"git": {
|
|
782
|
+
"command": "uvx",
|
|
783
|
+
"args": ["mcp-server-git"],
|
|
784
|
+
"capabilities": ["commit", "branch", "status", "diff"]
|
|
785
|
+
},
|
|
786
|
+
"fetch": {
|
|
787
|
+
"command": "uvx",
|
|
788
|
+
"args": ["mcp-server-fetch"],
|
|
789
|
+
"capabilities": ["http_requests", "api_calls"]
|
|
790
|
+
}
|
|
791
|
+
}
|
|
792
|
+
}
|
|
793
|
+
```
|
|
794
|
+
|
|
795
|
+
**Usage Pattern:**
|
|
796
|
+
1. AI agent activates role (e.g., @DEV)
|
|
797
|
+
2. Role workflow specifies MCP tools needed
|
|
798
|
+
3. Kiro IDE executes MCP tool calls
|
|
799
|
+
4. Results integrated into workflow
|
|
800
|
+
|
|
801
|
+
---
|
|
802
|
+
|
|
803
|
+
## 4. Integration Points
|
|
804
|
+
|
|
805
|
+
### 4.1 IDE Integration
|
|
806
|
+
|
|
807
|
+
**Supported IDEs:**
|
|
808
|
+
- Cursor (`.cursorrules`)
|
|
809
|
+
- GitHub Copilot (`.github/copilot-instructions.md`)
|
|
810
|
+
- Windsurf (`.agent/ide-integration/windsurf-cascade.md`)
|
|
811
|
+
- Cline (`.agent/ide-integration/cline-config.json`)
|
|
812
|
+
- Aider (`.agent/ide-integration/aider-commands.md`)
|
|
813
|
+
|
|
814
|
+
**Integration Mechanism:**
|
|
815
|
+
1. CLI copies IDE-specific config files
|
|
816
|
+
2. Config files reference `.agent/workflows/` for role definitions
|
|
817
|
+
3. AI assistant reads workflows and executes accordingly
|
|
818
|
+
4. Artifacts generated in `docs/sprints/`
|
|
819
|
+
|
|
820
|
+
### 4.2 GitHub Integration
|
|
821
|
+
|
|
822
|
+
**Via MCP GitHub Server:**
|
|
823
|
+
- Create/update issues
|
|
824
|
+
- Manage milestones
|
|
825
|
+
- Apply labels
|
|
826
|
+
- Track project boards
|
|
827
|
+
|
|
828
|
+
**Workflow:**
|
|
829
|
+
```
|
|
830
|
+
@PM creates plan → GitHub issue created
|
|
831
|
+
@DEV implements → Commits reference issue
|
|
832
|
+
@TESTER finds bug → GitHub issue created with #fixbug-[priority]
|
|
833
|
+
@REPORTER generates report → Issue updated with report link
|
|
834
|
+
```
|
|
835
|
+
|
|
836
|
+
### 4.3 Knowledge Base Integration
|
|
837
|
+
|
|
838
|
+
**Auto-Learning Triggers:**
|
|
839
|
+
- Bug fixed (medium+ priority) → Create KB entry
|
|
840
|
+
- 3+ implementation attempts → Create KB entry
|
|
841
|
+
- Security issue resolved → Create KB entry
|
|
842
|
+
- Performance optimization → Create KB entry
|
|
843
|
+
|
|
844
|
+
**Search Integration:**
|
|
845
|
+
```markdown
|
|
846
|
+
### KB Search Before Starting
|
|
847
|
+
**Keywords:** [error message, technology]
|
|
848
|
+
**Category:** [bugs/features/architecture]
|
|
849
|
+
**Results:** [KB entries found]
|
|
850
|
+
```
|
|
851
|
+
|
|
852
|
+
### 4.4 Landing Page Integration
|
|
853
|
+
|
|
854
|
+
**Astro Static Site:**
|
|
855
|
+
- Marketing content
|
|
856
|
+
- Documentation links
|
|
857
|
+
- Quick start guide
|
|
858
|
+
- CLI download instructions
|
|
859
|
+
|
|
860
|
+
**Deployment:**
|
|
861
|
+
- Hosted on Vercel
|
|
862
|
+
- Auto-deploy from `main` branch
|
|
863
|
+
- CDN distribution
|
|
864
|
+
|
|
865
|
+
---
|
|
866
|
+
|
|
867
|
+
## 5. Error Handling & Validation
|
|
868
|
+
|
|
869
|
+
### 5.1 CLI Error Handling
|
|
870
|
+
|
|
871
|
+
**Error Categories:**
|
|
872
|
+
|
|
873
|
+
| Error Type | Handling Strategy | User Feedback |
|
|
874
|
+
|------------|-------------------|---------------|
|
|
875
|
+
| Invalid command | Show help | "Unknown command: X. Run --help" |
|
|
876
|
+
| Missing arguments | Show usage | "Project name required" |
|
|
877
|
+
| File system errors | Graceful fail | "Cannot write to directory" |
|
|
878
|
+
| Permission errors | Suggest fix | "Run with sudo or check permissions" |
|
|
879
|
+
| Network errors | Retry logic | "Failed to download. Retrying..." |
|
|
880
|
+
|
|
881
|
+
**Implementation:**
|
|
882
|
+
```javascript
|
|
883
|
+
process.on('uncaughtException', (err) => {
|
|
884
|
+
log.error('Unexpected error occurred');
|
|
885
|
+
log.error(err.message);
|
|
886
|
+
process.exit(1);
|
|
887
|
+
});
|
|
888
|
+
|
|
889
|
+
process.on('unhandledRejection', (err) => {
|
|
890
|
+
log.error('Unhandled promise rejection');
|
|
891
|
+
log.error(err.message);
|
|
892
|
+
process.exit(1);
|
|
893
|
+
});
|
|
894
|
+
```
|
|
895
|
+
|
|
896
|
+
### 5.2 Workflow Validation
|
|
897
|
+
|
|
898
|
+
**Approval Gates:**
|
|
899
|
+
1. **Project Plan Approval** - User must approve before design phase
|
|
900
|
+
2. **Design Review** - QA + SECA must approve before development
|
|
901
|
+
3. **Final Approval** - STAKEHOLDER must approve before completion
|
|
902
|
+
|
|
903
|
+
**Validation Rules:**
|
|
904
|
+
- No phase skipping
|
|
905
|
+
- All required artifacts present
|
|
906
|
+
- Proper artifact placement (`docs/sprints/sprint-N/`)
|
|
907
|
+
- Valid handoff tags (@ROLE)
|
|
908
|
+
|
|
909
|
+
### 5.3 Knowledge Base Validation
|
|
910
|
+
|
|
911
|
+
**Entry Quality Checklist:**
|
|
912
|
+
- [ ] Clear problem description
|
|
913
|
+
- [ ] Root cause explained
|
|
914
|
+
- [ ] Working solution documented
|
|
915
|
+
- [ ] Code snippets included
|
|
916
|
+
- [ ] Prevention measures listed
|
|
917
|
+
- [ ] Proper category and severity
|
|
918
|
+
- [ ] Relevant tags added
|
|
919
|
+
- [ ] Index updated
|
|
920
|
+
|
|
921
|
+
---
|
|
922
|
+
|
|
923
|
+
## 6. Security Considerations
|
|
924
|
+
|
|
925
|
+
### 6.1 Secrets Management
|
|
926
|
+
|
|
927
|
+
**Environment Variables:**
|
|
928
|
+
```bash
|
|
929
|
+
# .env.template
|
|
930
|
+
NEO4J_URI=
|
|
931
|
+
NEO4J_USERNAME=
|
|
932
|
+
NEO4J_PASSWORD=
|
|
933
|
+
GITHUB_TOKEN=
|
|
934
|
+
BRAVE_API_KEY=
|
|
935
|
+
POSTGRES_CONNECTION_STRING=
|
|
936
|
+
```
|
|
937
|
+
|
|
938
|
+
**Security Measures:**
|
|
939
|
+
- `.env` in `.gitignore`
|
|
940
|
+
- Template file (`.env.template`) for reference
|
|
941
|
+
- MCP servers use `${VAR}` substitution
|
|
942
|
+
- No hardcoded credentials
|
|
943
|
+
|
|
944
|
+
### 6.2 File System Security
|
|
945
|
+
|
|
946
|
+
**Validation:**
|
|
947
|
+
- Path traversal prevention
|
|
948
|
+
- Write permission checks
|
|
949
|
+
- Overwrite protection (--force flag required)
|
|
950
|
+
- Sanitize user input for file names
|
|
951
|
+
|
|
952
|
+
**Implementation:**
|
|
953
|
+
```javascript
|
|
954
|
+
// Validate project name
|
|
955
|
+
if (!/^[a-zA-Z0-9-_]+$/.test(projectName)) {
|
|
956
|
+
throw new Error('Invalid project name');
|
|
957
|
+
}
|
|
958
|
+
|
|
959
|
+
// Check existing directory
|
|
960
|
+
if (await fs.pathExists(targetPath) && !options.force) {
|
|
961
|
+
throw new Error('Directory exists. Use --force');
|
|
962
|
+
}
|
|
963
|
+
```
|
|
964
|
+
|
|
965
|
+
### 6.3 MCP Security
|
|
966
|
+
|
|
967
|
+
**Tool Approval:**
|
|
968
|
+
- Auto-approve list in `mcp.json`
|
|
969
|
+
- User confirmation for sensitive operations
|
|
970
|
+
- Scoped permissions per MCP server
|
|
971
|
+
|
|
972
|
+
### 6.4 Security Analyst Role (@SECA)
|
|
973
|
+
|
|
974
|
+
**Responsibilities:**
|
|
975
|
+
- Review API security
|
|
976
|
+
- Check authentication/authorization
|
|
977
|
+
- Validate input sanitization
|
|
978
|
+
- Assess data encryption
|
|
979
|
+
- Review dependency vulnerabilities
|
|
980
|
+
|
|
981
|
+
**Deliverable:** `Security-Review-Report.md`
|
|
982
|
+
|
|
983
|
+
---
|
|
984
|
+
|
|
985
|
+
## 7. Performance & Scalability
|
|
986
|
+
|
|
987
|
+
### 7.1 CLI Performance
|
|
988
|
+
|
|
989
|
+
**Optimization Strategies:**
|
|
990
|
+
- Lazy loading of commands
|
|
991
|
+
- Parallel file operations where possible
|
|
992
|
+
- Progress indicators for long operations
|
|
993
|
+
- Minimal dependencies (only fs-extra)
|
|
994
|
+
|
|
995
|
+
**Benchmarks:**
|
|
996
|
+
- Install: < 2 seconds
|
|
997
|
+
- Create project: < 3 seconds
|
|
998
|
+
- IDE setup: < 1 second
|
|
999
|
+
|
|
1000
|
+
### 7.2 Knowledge Base Performance
|
|
1001
|
+
|
|
1002
|
+
**File System Approach:**
|
|
1003
|
+
- Fast for small-medium projects (< 1000 entries)
|
|
1004
|
+
- Simple grep/search for queries
|
|
1005
|
+
- No database overhead
|
|
1006
|
+
|
|
1007
|
+
**Neo4j Approach (Optional):**
|
|
1008
|
+
- Scalable for large projects (> 1000 entries)
|
|
1009
|
+
- Graph queries for pattern recognition
|
|
1010
|
+
- Relationship traversal for related entries
|
|
1011
|
+
|
|
1012
|
+
**Search Performance:**
|
|
1013
|
+
```bash
|
|
1014
|
+
# File system search (fast for < 1000 files)
|
|
1015
|
+
grep -r "error message" .agent/knowledge-base/
|
|
1016
|
+
|
|
1017
|
+
# Neo4j search (fast for any size)
|
|
1018
|
+
MATCH (k:KnowledgeEntry)
|
|
1019
|
+
WHERE k.problem CONTAINS "error message"
|
|
1020
|
+
RETURN k
|
|
1021
|
+
```
|
|
1022
|
+
|
|
1023
|
+
### 7.3 Workflow Scalability
|
|
1024
|
+
|
|
1025
|
+
**Parallel Execution:**
|
|
1026
|
+
- Design phase: SA + UIUX + PO in parallel
|
|
1027
|
+
- Review phase: QA + SECA in parallel
|
|
1028
|
+
- Development: DEV + DEVOPS in parallel
|
|
1029
|
+
|
|
1030
|
+
**Sequential Gates:**
|
|
1031
|
+
- Planning → Approval → Design → Review → Development → Testing → Reporting
|
|
1032
|
+
|
|
1033
|
+
### 7.4 Landing Page Performance
|
|
1034
|
+
|
|
1035
|
+
**Astro Optimizations:**
|
|
1036
|
+
- Static site generation (SSG)
|
|
1037
|
+
- Zero JavaScript by default
|
|
1038
|
+
- Automatic image optimization
|
|
1039
|
+
- Inline critical CSS
|
|
1040
|
+
- CDN distribution via Vercel
|
|
1041
|
+
|
|
1042
|
+
**Performance Targets:**
|
|
1043
|
+
- Lighthouse score: > 95
|
|
1044
|
+
- First Contentful Paint: < 1s
|
|
1045
|
+
- Time to Interactive: < 2s
|
|
1046
|
+
|
|
1047
|
+
---
|
|
1048
|
+
|
|
1049
|
+
## 8. Deployment Architecture
|
|
1050
|
+
|
|
1051
|
+
### 8.1 NPM Package Distribution
|
|
1052
|
+
|
|
1053
|
+
**Package Structure:**
|
|
1054
|
+
```json
|
|
1055
|
+
{
|
|
1056
|
+
"name": "agentic-sdlc",
|
|
1057
|
+
"version": "1.0.1",
|
|
1058
|
+
"bin": {
|
|
1059
|
+
"agentic-sdlc": "./bin/cli.js"
|
|
1060
|
+
},
|
|
1061
|
+
"files": [
|
|
1062
|
+
"bin/",
|
|
1063
|
+
".agent/",
|
|
1064
|
+
"docs/",
|
|
1065
|
+
"README.md"
|
|
1066
|
+
]
|
|
1067
|
+
}
|
|
1068
|
+
```
|
|
1069
|
+
|
|
1070
|
+
**Installation:**
|
|
1071
|
+
```bash
|
|
1072
|
+
# Global install
|
|
1073
|
+
npm install -g agentic-sdlc
|
|
1074
|
+
|
|
1075
|
+
# Local install
|
|
1076
|
+
npx agentic-sdlc create my-project
|
|
1077
|
+
```
|
|
1078
|
+
|
|
1079
|
+
### 8.2 Landing Page Deployment
|
|
1080
|
+
|
|
1081
|
+
**Vercel Configuration:**
|
|
1082
|
+
```json
|
|
1083
|
+
{
|
|
1084
|
+
"buildCommand": "npm run build",
|
|
1085
|
+
"outputDirectory": "dist",
|
|
1086
|
+
"framework": "astro"
|
|
1087
|
+
}
|
|
1088
|
+
```
|
|
1089
|
+
|
|
1090
|
+
**Deployment Flow:**
|
|
1091
|
+
1. Push to `main` branch
|
|
1092
|
+
2. Vercel auto-builds
|
|
1093
|
+
3. Deploy to CDN
|
|
1094
|
+
4. Update DNS
|
|
1095
|
+
|
|
1096
|
+
### 8.3 Version Management
|
|
1097
|
+
|
|
1098
|
+
**Semantic Versioning:**
|
|
1099
|
+
- Major: Breaking changes
|
|
1100
|
+
- Minor: New features
|
|
1101
|
+
- Patch: Bug fixes
|
|
1102
|
+
|
|
1103
|
+
**Release Process:**
|
|
1104
|
+
1. Update `CHANGELOG.md`
|
|
1105
|
+
2. Bump version in `package.json`
|
|
1106
|
+
3. Create git tag
|
|
1107
|
+
4. Publish to NPM
|
|
1108
|
+
5. Deploy landing page
|
|
1109
|
+
|
|
1110
|
+
---
|
|
1111
|
+
|
|
1112
|
+
## 9. Technology Stack Details
|
|
1113
|
+
|
|
1114
|
+
### 9.1 Core Technologies
|
|
1115
|
+
|
|
1116
|
+
| Technology | Version | Purpose | Justification |
|
|
1117
|
+
|------------|---------|---------|---------------|
|
|
1118
|
+
| Node.js | 16+ | Runtime | Universal, npm ecosystem |
|
|
1119
|
+
| fs-extra | 11.2.0 | File operations | Enhanced fs with promises |
|
|
1120
|
+
| Astro | 4.16.18 | Landing page | Fast SSG, minimal JS |
|
|
1121
|
+
| Tailwind CSS | 3.4.17 | Styling | Utility-first, responsive |
|
|
1122
|
+
| React | 18.3.1 | UI components | Interactive elements |
|
|
1123
|
+
| Neo4j | Latest | Knowledge graph | Optional, advanced queries |
|
|
1124
|
+
|
|
1125
|
+
### 9.2 Development Tools
|
|
1126
|
+
|
|
1127
|
+
| Tool | Purpose |
|
|
1128
|
+
|------|---------|
|
|
1129
|
+
| ESLint | Code linting |
|
|
1130
|
+
| Prettier | Code formatting |
|
|
1131
|
+
| Git | Version control |
|
|
1132
|
+
| GitHub Actions | CI/CD (future) |
|
|
1133
|
+
|
|
1134
|
+
### 9.3 MCP Ecosystem
|
|
1135
|
+
|
|
1136
|
+
| MCP Server | Purpose | Provider |
|
|
1137
|
+
|------------|---------|----------|
|
|
1138
|
+
| mcp-server-github | GitHub integration | Official |
|
|
1139
|
+
| mcp-playwright | Browser automation | Official |
|
|
1140
|
+
| mcp-server-git | Git operations | Official |
|
|
1141
|
+
| mcp-server-fetch | HTTP requests | Official |
|
|
1142
|
+
| mcp-server-postgresql | Database | Official |
|
|
1143
|
+
| mcp-server-sqlite | Local database | Official |
|
|
1144
|
+
| mcp-server-memory | Context memory | Official |
|
|
1145
|
+
|
|
1146
|
+
---
|
|
1147
|
+
|
|
1148
|
+
## 10. Future Enhancements
|
|
1149
|
+
|
|
1150
|
+
### 10.1 Planned Features
|
|
1151
|
+
|
|
1152
|
+
**Phase 2:**
|
|
1153
|
+
- GitHub Actions integration for CI/CD
|
|
1154
|
+
- Automated testing framework
|
|
1155
|
+
- Performance monitoring dashboard
|
|
1156
|
+
- Team collaboration features
|
|
1157
|
+
|
|
1158
|
+
**Phase 3:**
|
|
1159
|
+
- VS Code extension
|
|
1160
|
+
- Web-based dashboard
|
|
1161
|
+
- Real-time collaboration
|
|
1162
|
+
- AI model fine-tuning
|
|
1163
|
+
|
|
1164
|
+
### 10.2 Scalability Roadmap
|
|
1165
|
+
|
|
1166
|
+
**Short-term:**
|
|
1167
|
+
- Optimize file operations
|
|
1168
|
+
- Add caching layer
|
|
1169
|
+
- Improve search performance
|
|
1170
|
+
|
|
1171
|
+
**Long-term:**
|
|
1172
|
+
- Distributed knowledge base
|
|
1173
|
+
- Multi-project management
|
|
1174
|
+
- Enterprise features
|
|
1175
|
+
|
|
1176
|
+
---
|
|
1177
|
+
|
|
1178
|
+
## Next Steps
|
|
1179
|
+
|
|
1180
|
+
### Immediate Actions:
|
|
1181
|
+
1. **@UIUX** - Review API endpoints and confirm they support UI requirements
|
|
1182
|
+
2. **@QA** - Verify architecture for testability and completeness
|
|
1183
|
+
3. **@SECA** - Assess security vulnerabilities in CLI, file system, and MCP integrations
|
|
1184
|
+
|
|
1185
|
+
### Design Review Checklist:
|
|
1186
|
+
- [ ] Architecture diagram reviewed
|
|
1187
|
+
- [ ] Data models validated
|
|
1188
|
+
- [ ] API specifications complete
|
|
1189
|
+
- [ ] Integration points documented
|
|
1190
|
+
- [ ] Security measures defined
|
|
1191
|
+
- [ ] Performance targets set
|
|
1192
|
+
- [ ] Error handling strategy approved
|
|
1193
|
+
|
|
1194
|
+
---
|
|
1195
|
+
|
|
1196
|
+
**Tags:** #designing #backend #architecture #system-design #sprint-1
|
|
1197
|
+
|
|
1198
|
+
**Related Documents:**
|
|
1199
|
+
- Project Plan: `docs/sprints/sprint-1/plans/Project-Plan-v*.md`
|
|
1200
|
+
- UIUX Design: `docs/sprints/sprint-1/designs/UIUX-Design-Spec-Sprint-1-v*.md`
|
|
1201
|
+
- Templates: `.agent/templates/System-Design-Spec-Template.md`
|
|
1202
|
+
|
|
1203
|
+
---
|
|
1204
|
+
|
|
1205
|
+
*Generated by @SA - System Analyst*
|
|
1206
|
+
*Date: 2026-01-01*
|