@silbaram/artifact-driven-agent 0.1.6 → 0.1.9

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 (80) hide show
  1. package/README.md +709 -516
  2. package/ai-dev-team/.ada-status.json +10 -0
  3. package/ai-dev-team/.ada-version +6 -0
  4. package/ai-dev-team/.current-template +1 -0
  5. package/ai-dev-team/.sessions/logs/20260124-014551-00f04724.log +5 -0
  6. package/ai-dev-team/.sessions/logs/20260124-014623-cb2b1d44.log +5 -0
  7. package/ai-dev-team/ada.config.json +15 -0
  8. package/ai-dev-team/artifacts/api.md +212 -0
  9. package/ai-dev-team/artifacts/decision.md +72 -0
  10. package/ai-dev-team/artifacts/improvement-reports/IMP-0000-template.md +57 -0
  11. package/ai-dev-team/artifacts/plan.md +187 -0
  12. package/ai-dev-team/artifacts/project.md +193 -0
  13. package/ai-dev-team/artifacts/sprints/_template/docs/release-notes.md +37 -0
  14. package/ai-dev-team/artifacts/sprints/_template/meta.md +54 -0
  15. package/ai-dev-team/artifacts/sprints/_template/retrospective.md +50 -0
  16. package/ai-dev-team/artifacts/sprints/_template/review-reports/review-template.md +49 -0
  17. package/ai-dev-team/artifacts/sprints/_template/tasks/task-template.md +43 -0
  18. package/ai-dev-team/artifacts/ui.md +104 -0
  19. package/ai-dev-team/roles/analyzer.md +265 -0
  20. package/ai-dev-team/roles/developer.md +222 -0
  21. package/ai-dev-team/roles/documenter.md +715 -0
  22. package/ai-dev-team/roles/improver.md +461 -0
  23. package/ai-dev-team/roles/manager.md +544 -0
  24. package/ai-dev-team/roles/planner.md +398 -0
  25. package/ai-dev-team/roles/reviewer.md +294 -0
  26. package/ai-dev-team/rules/api-change.md +198 -0
  27. package/ai-dev-team/rules/document-priority.md +199 -0
  28. package/ai-dev-team/rules/escalation.md +172 -0
  29. package/ai-dev-team/rules/iteration.md +236 -0
  30. package/ai-dev-team/rules/rfc.md +31 -0
  31. package/ai-dev-team/rules/rollback.md +218 -0
  32. package/bin/cli.js +49 -5
  33. package/core/artifacts/sprints/_template/meta.md +4 -4
  34. package/core/docs-templates/mkdocs/docs/architecture/overview.md +29 -0
  35. package/core/docs-templates/mkdocs/docs/changelog.md +36 -0
  36. package/core/docs-templates/mkdocs/docs/contributing/contributing.md +60 -0
  37. package/core/docs-templates/mkdocs/docs/getting-started/configuration.md +51 -0
  38. package/core/docs-templates/mkdocs/docs/getting-started/installation.md +41 -0
  39. package/core/docs-templates/mkdocs/docs/getting-started/quick-start.md +56 -0
  40. package/core/docs-templates/mkdocs/docs/guides/api-reference.md +83 -0
  41. package/core/docs-templates/mkdocs/docs/index.md +32 -0
  42. package/core/docs-templates/mkdocs/mkdocs.yml +86 -0
  43. package/core/roles/analyzer.md +32 -10
  44. package/core/roles/developer.md +222 -223
  45. package/core/roles/documenter.md +592 -170
  46. package/core/roles/improver.md +461 -0
  47. package/core/roles/manager.md +4 -1
  48. package/core/roles/planner.md +160 -10
  49. package/core/roles/reviewer.md +31 -3
  50. package/core/rules/document-priority.md +2 -1
  51. package/core/rules/rollback.md +3 -3
  52. package/package.json +1 -1
  53. package/src/commands/config.js +371 -0
  54. package/src/commands/docs.js +502 -0
  55. package/src/commands/interactive.js +324 -33
  56. package/src/commands/monitor.js +236 -0
  57. package/src/commands/run.js +360 -122
  58. package/src/commands/sessions.js +270 -70
  59. package/src/commands/setup.js +22 -1
  60. package/src/commands/sprint.js +295 -54
  61. package/src/commands/status.js +34 -1
  62. package/src/commands/upgrade.js +416 -0
  63. package/src/commands/validate.js +4 -3
  64. package/src/index.js +1 -0
  65. package/src/ui/dashboard.js +518 -0
  66. package/src/ui/keyHandler.js +147 -0
  67. package/src/ui/quickActions.js +111 -0
  68. package/src/utils/config.js +74 -0
  69. package/src/utils/files.js +70 -3
  70. package/src/utils/sessionState.js +472 -328
  71. package/src/utils/sessionState.process.test.js +101 -0
  72. package/src/utils/sessionState.test.js +183 -0
  73. package/src/utils/sprintUtils.js +134 -0
  74. package/src/utils/taskParser.js +134 -0
  75. package/src/utils/taskParser.test.js +76 -0
  76. package/ai-dev-team/artifacts/features/_template/qa.md +0 -16
  77. package/examples/todo-app/README.md +0 -23
  78. package/examples/todo-app/artifacts/backlog.md +0 -23
  79. package/examples/todo-app/artifacts/plan.md +0 -23
  80. package/examples/todo-app/artifacts/project.md +0 -23
@@ -0,0 +1,236 @@
1
+ # Iteration Rules (스프린트/Task 단위 작업 규칙)
2
+
3
+ > 이 문서는 Task 단위 반복 개발의 규칙을 정의한다.
4
+ > 모든 역할이 이 규칙을 따른다.
5
+ > Manager가 스프린트를 관리한다.
6
+
7
+ ---
8
+
9
+ ## 1. 핵심 원칙
10
+
11
+ ### 1.1 Task 단위 개발
12
+
13
+ ```
14
+ ❌ 잘못된 방식 (Waterfall)
15
+ 전체 기획 → 전체 설계 → 전체 개발 → 전체 테스트
16
+
17
+ ✅ 올바른 방식 (Iterative)
18
+ Task 1 완성 → Task 2 완성 → Task 3 완성 → ...
19
+ ```
20
+
21
+ ### 1.2 작업 범위 제한
22
+
23
+ - 각 역할은 **sprints/sprint-N/meta.md에 정의된 Task만** 작업한다
24
+ - 스프린트 외 작업은 금지 (Manager 승인 없이)
25
+ - "김에" 작업 금지
26
+
27
+ ### 1.3 완료의 정의
28
+
29
+ Task는 다음을 모두 충족해야 DONE:
30
+ - [ ] 수용 조건 100% 충족
31
+ - [ ] 구현 완료
32
+ - [ ] 문서 반영 완료
33
+ - [ ] Reviewer PASS
34
+ - [ ] Reviewer PASS
35
+ - [ ] Manager 승인
36
+
37
+ ---
38
+
39
+ ## 2. 스프린트 라이프사이클
40
+
41
+ ### 2.1 스프린트 시작
42
+
43
+ **트리거:** Manager가 스프린트 시작 선언
44
+
45
+ **절차:**
46
+ 1. Manager가 backlog/task-NNN.md에서 READY 상태 Task 선택
47
+ 2. 선택된 Task를 IN_SPRINT로 변경
48
+ 3. sprints/sprint-N/meta.md 생성/갱신
49
+ 4. 스프린트 목표 정의
50
+ 5. 역할별 작업 배정
51
+
52
+ **산출물:**
53
+ - sprints/sprint-N/meta.md 갱신
54
+ - backlog/task-NNN.md 상태 갱신
55
+
56
+ ### 2.2 스프린트 진행
57
+
58
+ **Task 상태 흐름:**
59
+ ```
60
+ IN_SPRINT → IN_DEV → IN_REVIEW → IN_REVIEW → DONE
61
+ ↑ ↓ ↓
62
+ └──────────┴──────────┘
63
+ (REJECT/FAIL 시)
64
+ ```
65
+
66
+ **일일 확인 사항:**
67
+ - 각 Task 상태
68
+ - 차단 사항 (Blockers)
69
+ - 예상 완료 여부
70
+
71
+ ### 2.3 스프린트 종료
72
+
73
+ **트리거:**
74
+ - 모든 Task DONE, 또는
75
+ - 스프린트 종료일 도달
76
+
77
+ **절차:**
78
+ 1. 완료/미완료 Task 정리
79
+ 2. 미완료 Task 처리 결정 (이월/취소)
80
+ 3. sprints/sprint-N/meta.md 회고 작성
81
+ 4. backlog/task-NNN.md 상태 갱신
82
+ 5. 다음 스프린트 준비
83
+
84
+ ---
85
+
86
+ ## 3. 역할별 이터레이션 규칙
87
+
88
+ ### 3.1 Planner
89
+
90
+ - 스프린트 중 새 요구사항 → backlog에 BACKLOG 상태로 추가
91
+ - 현재 스프린트의 Task 변경 금지 (Manager 승인 없이)
92
+ - 진행 중(IN_DEV+) Task의 수용 조건 변경 금지
93
+
94
+ ### 3.2 Developer
95
+
96
+ - sprints/sprint-N/meta.md의 내 Task만 작업
97
+ - Task 완료 후 다음 Task로 이동
98
+ - 스프린트 외 작업 금지
99
+ - 수용 조건 외 기능 추가 금지
100
+
101
+ ### 3.3 Reviewer
102
+
103
+ - IN_REVIEW 상태 Task만 리뷰
104
+ - 해당 Task 범위 내 코드만 리뷰
105
+ - 스프린트 외 코드 리뷰 금지
106
+ - 수용 조건 외 요구 금지
107
+
108
+ ### 3.4 Reviewer
109
+
110
+ - IN_REVIEW 상태 Task만 검증
111
+ - 해당 Task 수용 조건만 검증
112
+ - 스프린트 외 기능 검증 금지
113
+ - 수용 조건 외 기준으로 FAIL 금지
114
+
115
+ ### 3.5 Manager
116
+
117
+ - 스프린트 시작/종료 결정
118
+ - Task 상태 전환 승인 (→ DONE)
119
+ - 긴급 Task 추가 승인
120
+ - 스프린트 범위 변경 승인
121
+
122
+ ---
123
+
124
+ ## 4. Task 단위 문서 갱신
125
+
126
+ ### 4.1 갱신 시점
127
+
128
+ | 문서 | 갱신 시점 | 담당 |
129
+ |------|----------|------|
130
+ | backlog/task-NNN.md | Task 상태 변경 시 | 해당 역할 |
131
+ | sprints/sprint-N/meta.md | 매일 / 상태 변경 시 | Manager |
132
+ | 인터페이스 문서 | Task 완료 시 | Developer |
133
+ | review-reports/task-NNN.md | 리뷰 완료 시 | Reviewer |
134
+ | review-reports/task-NNN.md | Reviewer 완료 시 | Reviewer |
135
+ | decision.md | 판단 발생 시 | Manager |
136
+
137
+ ### 4.2 Task 태그
138
+
139
+ 문서 변경 시 관련 Task ID를 태그:
140
+
141
+ ```markdown
142
+ ## 변경 이력
143
+ | Task | 날짜 | 변경 내용 |
144
+ |------|------|----------|
145
+ | [TASK-001] | 2024-01-15 | 초기 구현 |
146
+ ```
147
+
148
+ ---
149
+
150
+ ## 5. 예외 상황 처리
151
+
152
+ ### 5.1 긴급 Task 추가
153
+
154
+ ```
155
+ 긴급 요청 발생
156
+
157
+ Planner: backlog에 P0로 추가
158
+
159
+ C0acC6a9C790: 긴급성 판단
160
+ ├── 긴급 아님 → 다음 스프린트
161
+ └── 긴급 맞음 ↓
162
+
163
+ C0acC6a9C790: 현재 스프린트에 추가
164
+
165
+ 필요시 다른 Task 조정
166
+
167
+ decision.md에 예외 기록
168
+ ```
169
+
170
+ ### 5.2 요구사항 변경
171
+
172
+ - 진행 중 Task: 현재 수용 조건으로 완료 후 새 Task 생성
173
+ - 미시작 Task: 수용 조건 수정 가능 (Manager 승인)
174
+
175
+ ### 5.3 차단 (Blocker) 발생
176
+
177
+ ```
178
+ 차단 발생
179
+
180
+ Task 상태 → BLOCKED
181
+
182
+ Manager에게 즉시 보고
183
+
184
+ 해결 방안 결정
185
+
186
+ 해결 후 원래 상태로 복귀
187
+ ```
188
+
189
+ ---
190
+
191
+ ## 6. 스프린트 체크리스트
192
+
193
+ ### 스프린트 시작 체크리스트
194
+
195
+ - [ ] backlog/task-NNN.md에 READY Task 있음
196
+ - [ ] 스프린트 목표 정의됨
197
+ - [ ] sprints/sprint-N/meta.md 생성됨
198
+ - [ ] Task 담당자 배정됨
199
+ - [ ] 의존성 확인됨
200
+
201
+ ### 스프린트 종료 체크리스트
202
+
203
+ - [ ] 모든 Task 상태 확인
204
+ - [ ] 미완료 Task 처리 결정됨
205
+ - [ ] 회고 작성됨
206
+ - [ ] backlog/task-NNN.md 갱신됨
207
+ - [ ] 스프린트 히스토리 기록됨
208
+
209
+ ---
210
+
211
+ ## 7. 문서 참조 관계
212
+
213
+ ```
214
+ backlog/task-NNN.md (전체 Task)
215
+
216
+ ├── sprints/sprint-N/meta.md (현재 범위)
217
+ │ │
218
+ │ ├── 인터페이스 문서 (Task별 변경)
219
+ │ └── 소스 코드
220
+
221
+ ├── plan.md (요구사항 출처)
222
+ └── project.md (기술 기준)
223
+ ```
224
+
225
+ ---
226
+
227
+ ## 8. 금지 사항 요약
228
+
229
+ | 역할 | 금지 사항 |
230
+ |------|----------|
231
+ | 전체 | 스프린트 외 작업 |
232
+ | 전체 | 수용 조건 외 기능 추가 |
233
+ | Developer | "김에" 리팩토링 |
234
+ | Reviewer | 스프린트 외 코드 리뷰 |
235
+ | Reviewer | 스프린트 외 기능 검증 |
236
+ | Planner | 진행 중 Task 변경 |
@@ -0,0 +1,31 @@
1
+ # RFC (Request for Change) 규칙
2
+
3
+ > Frozen 문서 변경을 위한 공식 절차
4
+
5
+ ## RFC가 필요한 경우
6
+
7
+ - project.md 변경
8
+ - plan.md의 확정된 기능 범위 변경
9
+ - 승인된 decision.md 항목 번복
10
+
11
+ ## RFC 절차
12
+
13
+ 1. RFC 문서 작성 (`rfc/RFC-NNNN-title.md`)
14
+ 2. 사용자 리뷰
15
+ 3. 승인/거부 결정
16
+ 4. 승인 시: 문서 업데이트 + decision.md 기록
17
+
18
+ ## RFC 상태
19
+
20
+ | 상태 | 설명 |
21
+ |------|------|
22
+ | Draft | 작성 중 |
23
+ | Under Review | 리뷰 중 |
24
+ | Approved | 승인됨 |
25
+ | Rejected | 거부됨 |
26
+
27
+ ## 긴급 변경
28
+
29
+ - 보안 취약점, 심각한 버그 등
30
+ - 구두 승인 후 적용
31
+ - 24시간 내 RFC 사후 작성
@@ -0,0 +1,218 @@
1
+ # Rollback Rules (되돌림 규칙)
2
+
3
+ > 이 문서는 REJECT/FAIL 발생 시 되돌림 절차를 정의한다.
4
+ > Manager가 되돌림을 관리한다.
5
+
6
+ ---
7
+
8
+ ## 1. 되돌림 원칙
9
+
10
+ - REJECT/FAIL은 정상적인 피드백
11
+ - 되돌림은 품질 보장 과정
12
+ - 되돌림 시 원인 분석 필수
13
+ - 반복 되돌림 시 프로세스 점검
14
+
15
+ ---
16
+
17
+ ## 2. Reviewer REJECT 시 되돌림
18
+
19
+ ### 2.1 REJECT 유형별 처리
20
+
21
+ | REJECT 유형 | 되돌림 대상 | Manager 개입 |
22
+ |-------------|------------|:------------:|
23
+ | 수용 조건 미충족 | Developer | 불필요 |
24
+ | project.md 규칙 위반 | Developer | 불필요 |
25
+ | 구조적 문제 | Architect | 필요 |
26
+ | 설계 수준 문제 | Architect | 필요 |
27
+
28
+ ### 2.2 REJECT 처리 절차
29
+
30
+ ```
31
+ Reviewer REJECT
32
+
33
+ Task 상태: IN_REVIEW → IN_DEV
34
+
35
+ review-report.md에 REJECT 사유 기록
36
+
37
+ Developer가 수정
38
+
39
+ Task 상태: IN_DEV → IN_REVIEW
40
+
41
+ Reviewer 재리뷰
42
+ ```
43
+
44
+ ### 2.3 구조적 REJECT 시
45
+
46
+ ```
47
+ Reviewer: 구조적 문제로 REJECT
48
+
49
+ Manager에게 에스컬레이션
50
+
51
+ Manager: Architect 재검토 결정
52
+
53
+ C0acC6a9C790: project.md 또는 설계 수정
54
+
55
+ Developer: 수정된 설계로 재구현
56
+ ```
57
+
58
+ ---
59
+
60
+ ## 3. Reviewer REJECT 시 되돌림
61
+
62
+ ### 3.1 FAIL 유형별 처리
63
+
64
+ | FAIL 유형 | 되돌림 대상 | 조치 |
65
+ |-----------|------------|------|
66
+ | 구현 누락 | Developer | 누락 기능 구현 |
67
+ | 버그 | Developer | 버그 수정 |
68
+ | 조건 모호 | Planner | 조건 명확화 |
69
+ | 기술적 불가 | Architect | 설계 재검토 |
70
+
71
+ ### 3.2 FAIL 처리 절차
72
+
73
+ ```
74
+ Reviewer REJECT
75
+
76
+ Task 상태: IN_REVIEW → IN_DEV
77
+
78
+ review-report.md에 FAIL 사유 기록
79
+
80
+ 원인에 따라 담당자 결정
81
+
82
+ 수정 후 재리뷰
83
+ ```
84
+
85
+ ---
86
+
87
+ ## 4. BLOCK 시 되돌림
88
+
89
+ ### 4.1 BLOCK 상황
90
+
91
+ | 상황 | 처리 |
92
+ |------|------|
93
+ | 기술적 불가 | Architect 재검토 |
94
+ | 요구사항 불명확 | Planner 명확화 |
95
+ | 외부 의존성 | 대기 또는 우회 |
96
+
97
+ ### 4.2 BLOCK 처리 절차
98
+
99
+ ```
100
+ BLOCK 발생
101
+
102
+ Task 상태 → BLOCKED
103
+
104
+ Manager에게 에스컬레이션
105
+
106
+ Manager: 원인 분석 및 대상 결정
107
+
108
+ 해당 역할이 문제 해결
109
+
110
+ Task 상태 복원 → 재진행
111
+ ```
112
+
113
+ ---
114
+
115
+ ## 5. 문서 수정 시 연쇄 영향
116
+
117
+ ### 5.1 plan.md 수정 시
118
+
119
+ | 영향 | 조치 |
120
+ |------|------|
121
+ | 기존 Task 영향 | backlog.md 수용 조건 검토 |
122
+ | 새 기능 추가 | 새 Task 생성 |
123
+ | 기능 삭제 | 관련 Task 취소 검토 |
124
+
125
+ ### 5.2 project.md 수정 시
126
+
127
+ | 영향 | 조치 |
128
+ |------|------|
129
+ | 기술 스택 변경 | 전체 코드 검토 필요 |
130
+ | 규칙 변경 | 영향받는 Task 재리뷰 |
131
+ | 구조 변경 | 영향받는 코드 수정 |
132
+
133
+ > ⚠️ project.md는 Frozen이므로 수정 시 Manager 승인 필수
134
+
135
+ ### 5.3 연쇄 영향 흐름
136
+
137
+ ```
138
+ 상위 문서 수정
139
+
140
+ 영향받는 하위 문서 식별
141
+
142
+ 영향받는 Task 식별
143
+
144
+ Task 상태에 따른 처리:
145
+ ├── DONE → 재검증 필요 여부 판단
146
+ ├── IN_REVIEW → 재검증
147
+ ├── IN_DEV → 수정 반영
148
+ └── IN_SPRINT/READY → 문서만 갱신
149
+ ```
150
+
151
+ ---
152
+
153
+ ## 6. 되돌림 제한 규칙
154
+
155
+ ### 6.1 반복 되돌림
156
+
157
+ | 횟수 | 조치 |
158
+ |:----:|------|
159
+ | 1-2회 | 정상 피드백 |
160
+ | 3회 | Manager 개입, 원인 분석 |
161
+ | 4회+ | 프로세스/역량 점검 |
162
+
163
+ ### 6.2 되돌림 제한
164
+
165
+ - 같은 사유로 3회 이상 되돌림 금지
166
+ - 3회 도달 시 근본 원인 해결 필수
167
+ - Manager가 되돌림 패턴 모니터링
168
+
169
+ ---
170
+
171
+ ## 7. 되돌림 기록 형식
172
+
173
+ ### decision.md 기록
174
+
175
+ ```markdown
176
+ ## Rollback #[번호]
177
+
178
+ | 항목 | 값 |
179
+ |------|-----|
180
+ | 일시 | YYYY-MM-DD |
181
+ | Task | TASK-XXX |
182
+ | 유형 | REJECT / FAIL / BLOCK |
183
+ | 원인 | [원인] |
184
+
185
+ ### 상세
186
+ - 문제: [문제 설명]
187
+ - 원인 분석: [원인]
188
+ - 되돌림 대상: [역할]
189
+ - 조치: [조치 내용]
190
+
191
+ ### 재발 방지
192
+ - [방지 조치]
193
+ ```
194
+
195
+ ---
196
+
197
+ ## 8. 되돌림 흐름 요약
198
+
199
+ ```
200
+ ┌─────────────────────────────────────────────────────────────────┐
201
+ │ │
202
+ │ REJECT / FAIL / BLOCK 발생 │
203
+ │ ↓ │
204
+ │ 원인 분석 │
205
+ │ ↓ │
206
+ │ 되돌림 대상 결정 │
207
+ │ (Developer / Planner / Architect) │
208
+ │ ↓ │
209
+ │ decision.md 기록 │
210
+ │ ↓ │
211
+ │ 수정 수행 │
212
+ │ ↓ │
213
+ │ 재검증 (영향받는 단계부터) │
214
+ │ ↓ │
215
+ │ 완료 또는 재되돌림 │
216
+ │ │
217
+ └─────────────────────────────────────────────────────────────────┘
218
+ ```
package/bin/cli.js CHANGED
@@ -8,8 +8,12 @@ import { validate } from '../src/commands/validate.js';
8
8
  import { sessions } from '../src/commands/sessions.js';
9
9
  import { logs } from '../src/commands/logs.js';
10
10
  import { run } from '../src/commands/run.js';
11
+ import { config } from '../src/commands/config.js';
11
12
  import { interactive } from '../src/commands/interactive.js';
13
+ import { upgrade } from '../src/commands/upgrade.js';
14
+ import { monitor } from '../src/commands/monitor.js';
12
15
  import sprint from '../src/commands/sprint.js';
16
+ import docs from '../src/commands/docs.js';
13
17
  import { createRequire } from 'node:module';
14
18
 
15
19
  const require = createRequire(import.meta.url);
@@ -17,7 +21,8 @@ const { version } = require('../package.json');
17
21
  program
18
22
  .name('ada')
19
23
  .description('Artifact-Driven AI Agent Framework\nAI가 규칙을 어기지 못하게 하는 문서 기반 개발')
20
- .version(version);
24
+ .version(version)
25
+ .option('-m, --monitor', 'UI 모드 실행 (인터랙티브 인터페이스)');
21
26
 
22
27
  // Setup command
23
28
  program
@@ -38,6 +43,15 @@ program
38
43
  .option('-f, --force', '확인 없이 강제 초기화')
39
44
  .action(reset);
40
45
 
46
+ // Upgrade command
47
+ program
48
+ .command('upgrade')
49
+ .description('작업공간을 최신 버전으로 업그레이드')
50
+ .option('-f, --force', '확인 없이 강제 업그레이드')
51
+ .option('--dry-run', '변경 사항 미리보기 (실제 변경 없음)')
52
+ .option('--rollback', '이전 백업으로 롤백')
53
+ .action(upgrade);
54
+
41
55
  // Validate command
42
56
  program
43
57
  .command('validate [doc]')
@@ -49,6 +63,7 @@ program
49
63
  .command('sessions')
50
64
  .description('AI 실행 세션 목록')
51
65
  .option('-w, --watch', '실시간 모니터링 모드')
66
+ .option('-c, --clean', '완료된 세션 정리')
52
67
  .action(sessions);
53
68
 
54
69
  // Logs command
@@ -63,21 +78,50 @@ program
63
78
  .description('스프린트 관리 (create, add, close, list)')
64
79
  .action(sprint);
65
80
 
81
+ // Docs command
82
+ program
83
+ .command('docs <action>')
84
+ .description('문서 관리 (init, generate, publish, serve)')
85
+ .option('-g, --generator <type>', '문서 생성기 (mkdocs, jekyll)')
86
+ .action(docs);
87
+
88
+ // Monitor command (UI 모드)
89
+ program
90
+ .command('monitor')
91
+ .alias('m')
92
+ .description('UI 모드 (인터랙티브 인터페이스)')
93
+ .action(monitor);
94
+
95
+ // Config command
96
+ program
97
+ .command('config [action] [key] [value]')
98
+ .description('설정 조회/변경 (대화형), show, get <key>, set <key> <value>')
99
+ .action(config);
100
+
66
101
  // Run command
67
102
  program
68
- .command('run <role> <tool>')
69
- .description('AI 에이전트 실행 (예: run backend claude)')
103
+ .command('run <role> [tool]')
104
+ .description('AI 에이전트 실행 (예: run backend [claude])')
70
105
  .action(run);
71
106
 
72
107
  // Parse arguments
73
108
  const args = process.argv.slice(2);
74
109
 
110
+ // 명령어 목록
111
+ const COMMANDS = ['setup', 'status', 'reset', 'upgrade', 'validate', 'sessions', 'logs', 'run', 'sprint', 'docs', 'config', 'monitor', 'm'];
112
+
75
113
  if (args.length === 0) {
76
114
  // 인자 없으면 대화형 모드
77
115
  interactive();
78
- } else if (args.length === 2 && !args[0].startsWith('-') && !['setup', 'status', 'reset', 'validate', 'sessions', 'logs', 'run', 'sprint'].includes(args[0])) {
79
- // 개의 인자가 명령어가 아니면 role tool로 간주
116
+ } else if (args.includes('-m') || args.includes('--monitor')) {
117
+ // -m 또는 --monitor 옵션이 있으면 대시보드 실행
118
+ monitor();
119
+ } else if (args.length === 2 && !args[0].startsWith('-') && !COMMANDS.includes(args[0])) {
120
+ // 두 개의 인자가 명령어가 아니면 role tool로 간주 (간편 실행)
80
121
  run(args[0], args[1]);
122
+ } else if (args.length === 1 && !args[0].startsWith('-') && !COMMANDS.includes(args[0])) {
123
+ // 인자가 하나면 role로 간주하고 도구는 자동 선택
124
+ run(args[0]);
81
125
  } else {
82
126
  program.parse();
83
127
  }
@@ -8,11 +8,11 @@
8
8
  | 종료 예정 | YYYY-MM-DD (또는 완료일) |
9
9
  | 목표 | [스프린트 목표 설명] |
10
10
 
11
- ## Task 요약
11
+ ## Task 목록
12
12
 
13
- | Task | 상태 | 담당 | 우선순위 | 크기 |
14
- |------|:----:|------|:--------:|:----:|
15
- | task-NNN | BACKLOG | - | P0/P1/P2 | S/M/L |
13
+ | Task | 제목 | 상태 | 우선순위 | 크기 |
14
+ |------|------|:----:|:--------:|:----:|
15
+ | task-NNN | [Task 제목] | BACKLOG | P0/P1/P2 | S/M/L |
16
16
 
17
17
  **상태 범례:**
18
18
  - BACKLOG: 스프린트에 할당됨, 작업 미시작
@@ -0,0 +1,29 @@
1
+ # 아키텍처 개요
2
+
3
+ ## 시스템 아키텍처
4
+
5
+ [고수준 아키텍처 다이어그램 및 설명]
6
+
7
+ ## 구성 요소
8
+
9
+ ### 구성 요소 1
10
+ **목적:** [설명]
11
+ **책임:**
12
+ - 책임 1
13
+ - 책임 2
14
+
15
+ ### 구성 요소 2
16
+ **목적:** [설명]
17
+ **책임:**
18
+ - 책임 1
19
+ - 책임 2
20
+
21
+ ## 데이터 흐름
22
+
23
+ ```
24
+ 사용자 → 프론트엔드 → API → 백엔드 → 데이터베이스
25
+ ```
26
+
27
+ ## 기술 스택
28
+
29
+ 자세한 정보는 [기술 스택](tech-stack.md)을 참고하세요.
@@ -0,0 +1,36 @@
1
+ # 변경 이력
2
+
3
+ 이 프로젝트의 모든 주목할 만한 변경사항이 이 파일에 문서화됩니다.
4
+
5
+ 형식은 [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)를 기반으로 하며,
6
+ 이 프로젝트는 [Semantic Versioning](https://semver.org/spec/v2.0.0.html)을 따릅니다.
7
+
8
+ ## [Unreleased]
9
+
10
+ ### Added (추가)
11
+ - 개발 중인 새로운 기능
12
+
13
+ ### Changed (변경)
14
+ - 기존 기능의 변경사항
15
+
16
+ ### Deprecated (중단 예정)
17
+ - 곧 제거될 예정인 기능
18
+
19
+ ### Removed (제거)
20
+ - 제거된 기능
21
+
22
+ ### Fixed (수정)
23
+ - 버그 수정
24
+
25
+ ### Security (보안)
26
+ - 보안 업데이트
27
+
28
+ ## [1.0.0] - YYYY-MM-DD
29
+
30
+ ### Added (추가)
31
+ - 최초 릴리스
32
+ - 기능 1
33
+ - 기능 2
34
+
35
+ [Unreleased]: https://github.com/username/repo/compare/v1.0.0...HEAD
36
+ [1.0.0]: https://github.com/username/repo/releases/tag/v1.0.0