@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,544 @@
1
+ # Role: Manager (프로젝트 관리자)
2
+
3
+ > 이 문서는 **사용자(당신)**를 위한 가이드입니다.
4
+ > 프로젝트 전체를 슈퍼권한으로 관리하는 방법을 설명합니다.
5
+
6
+ ---
7
+
8
+ ## 🎯 Manager 역할 개요
9
+
10
+ **Manager = 사용자 본인**
11
+
12
+ AI 역할들(Planner, Developer, Reviewer, Documenter)을 관리하고,
13
+ 최종 결정권을 가진 프로젝트 책임자입니다.
14
+
15
+ ### 핵심 책임
16
+
17
+ - ✅ 스프린트 생성 및 종료 (CLI)
18
+ - ✅ 최종 결정 및 승인 (decision.md)
19
+ - ✅ AI 역할들의 질문에 응답
20
+ - ✅ 프로젝트 전체 모니터링
21
+ - ✅ 문서 간 충돌 해결
22
+
23
+ ---
24
+
25
+ ## 1. 스프린트 관리 (CLI)
26
+
27
+ ### 1.1 스프린트 생성
28
+
29
+ ```bash
30
+ # 새 스프린트 생성
31
+ ada sprint create
32
+
33
+ # 생성 결과
34
+ ✅ Sprint 1 생성됨
35
+ 📁 sprints/sprint-1/
36
+ ├── meta.md
37
+ ├── tasks/
38
+ ├── review-reports/
39
+ └── docs/
40
+ ```
41
+
42
+ ### 1.2 Task 추가
43
+
44
+ ```bash
45
+ # backlog에서 Task 선택하여 스프린트에 추가
46
+ ada sprint add task-001 task-002 task-003
47
+
48
+ # 확인
49
+ ✅ task-001 추가됨 (P0, M)
50
+ ✅ task-002 추가됨 (P1, S)
51
+ ✅ task-003 추가됨 (P1, L)
52
+
53
+ 📊 Sprint 1 현황
54
+ - 총 Task: 3개
55
+ - 예상 규모: M×1 + S×1 + L×1
56
+ ```
57
+
58
+ ### 1.3 스프린트 진행 상황 확인
59
+
60
+ ```bash
61
+ # 기본 확인
62
+ ada sessions
63
+
64
+ # 실시간 모니터링 대시보드
65
+ ada sessions --watch
66
+ ada sessions -w
67
+ ```
68
+
69
+ **대시보드 내용:**
70
+ ```
71
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
72
+ 📊 ADA 세션 모니터링 대시보드
73
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
74
+
75
+ 📈 통계
76
+ 활성 세션: 2 대기 질문: 1 진행 Task: 3
77
+
78
+ 🟢 활성 세션
79
+ ┌──────────┬────────┬──────────┬─────────────┐
80
+ │ 역할 │ 도구 │ Task │ 실행 시간 │
81
+ ├──────────┼────────┼──────────┼─────────────┤
82
+ │ Developer│ claude │ task-001 │ 15분 23초 │
83
+ │ Reviewer │ gemini │ task-003 │ 5분 10초 │
84
+ └──────────┴────────┴──────────┴─────────────┘
85
+
86
+ ⚠️ 대기 질문 (1개)
87
+ [Q001] Developer: Redis 캐시 추가 승인 필요
88
+ 옵션: (y) 승인 / (n) 거부
89
+ 대기 시간: 2분 30초
90
+
91
+ 📊 Task 진행률
92
+ task-001 [████████░░] 80% (Developer)
93
+ task-002 [██████████] 100% (DONE)
94
+ task-003 [████░░░░░░] 40% (Reviewer)
95
+
96
+ 키: q(종료) r(새로고침) c(화면지우기) h(도움말)
97
+ ```
98
+
99
+ ### 1.4 스프린트 종료
100
+
101
+ ```bash
102
+ ada sprint close
103
+
104
+ # 회고 작성 프롬프트
105
+ ✅ Sprint 1 종료 처리 중...
106
+
107
+ 📝 회고 작성
108
+ 1. 완료된 Task: 3개
109
+ 2. 미완료 Task: 0개
110
+
111
+ 잘된 점을 입력하세요:
112
+ > _
113
+
114
+ 개선할 점을 입력하세요:
115
+ > _
116
+
117
+ ✅ Sprint 1 종료됨
118
+ 📁 retrospective.md 생성됨
119
+ ```
120
+
121
+ ---
122
+
123
+ ## 2. AI 역할 질문 응답
124
+
125
+ ### 2.1 직접 응답 (터미널)
126
+
127
+ AI가 작업 중 질문하면 터미널에서 직접 응답:
128
+
129
+ ```
130
+ Developer 세션:
131
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
132
+ 💻 Developer 작업 중...
133
+
134
+ ⚠️ 결정 필요
135
+ project.md에 없는 기술이 필요합니다.
136
+
137
+ 기술: Redis (캐시 서버)
138
+ 목적: API 응답 속도 개선
139
+ 영향: project.md 업데이트 필요
140
+
141
+ 추가하시겠습니까? (y/n): _
142
+ ```
143
+
144
+ 사용자 입력: `y`
145
+
146
+ ```
147
+ ✅ 승인됨
148
+ 📝 decision.md에 기록됨
149
+
150
+ 계속 진행합니다...
151
+ ```
152
+
153
+ ### 2.2 모니터링 대시보드에서 응답
154
+
155
+ 백그라운드 실행 중이거나 다른 터미널에서 실행 중일 때:
156
+
157
+ ```bash
158
+ ada sessions --watch
159
+ ```
160
+
161
+ 대시보드에서 질문 확인 후:
162
+ - 질문 번호와 응답 입력: `1 y` 또는 `1 n`
163
+ - AI 세션이 자동으로 응답 수신
164
+
165
+ ### 2.3 Task 파일에서 확인
166
+
167
+ 급하지 않은 질문은 Task 파일에 이슈로 기록됨:
168
+
169
+ ```bash
170
+ # Task 파일 확인
171
+ cat ai-dev-team/artifacts/backlog/task-001.md
172
+
173
+ # 또는 스프린트 Task
174
+ cat ai-dev-team/artifacts/sprints/sprint-1/tasks/task-001.md
175
+ ```
176
+
177
+ ```markdown
178
+ ## 이슈
179
+
180
+ ### Redis 캐시 추가 필요
181
+ - 상황: API 응답 속도가 느림
182
+ - 제안: Redis 캐시 도입
183
+ - 영향: project.md에 Redis 추가 필요
184
+
185
+ → 사용자 승인 대기
186
+ ```
187
+
188
+ 직접 파일 수정하여 응답:
189
+ ```markdown
190
+ → ✅ 승인됨 (2024-01-04)
191
+ ```
192
+
193
+ ---
194
+
195
+ ## 3. 결정 사항 기록 (decision.md)
196
+
197
+ ### 3.1 자동 기록
198
+
199
+ 중요한 결정은 자동으로 decision.md에 기록됨:
200
+ - AI 질문에 대한 승인/거부
201
+ - RFC 승인
202
+ - 스프린트 생성/종료
203
+ - 예외 처리
204
+
205
+ ### 3.2 수동 기록
206
+
207
+ 필요시 직접 기록:
208
+
209
+ ```markdown
210
+ # Decision Log
211
+
212
+ ## Decision #003
213
+ - 일시: 2024-01-04 14:30
214
+ - 유형: 기술 추가 승인
215
+ - 내용: Redis 캐시 서버 도입 승인
216
+ - 근거: API 응답 속도 개선 필요 (300ms → 50ms 목표)
217
+ - 결과: 승인
218
+ - 영향: project.md 업데이트 필요
219
+ ```
220
+
221
+ ---
222
+
223
+ ## 4. 프로젝트 전체 관리
224
+
225
+ ### 4.1 문서 상태 확인
226
+
227
+ ```bash
228
+ ada status
229
+
230
+ # 출력
231
+ 📋 역할 (5개)
232
+ ✅ planner
233
+ ✅ developer
234
+ ✅ reviewer
235
+ ✅ documenter
236
+ ✅ analyzer
237
+
238
+ 📄 산출물 (3개)
239
+ ✅ plan.md
240
+ ⚠️ project.md (선택, 미생성)
241
+ ✅ decision.md
242
+
243
+ 📊 스프린트
244
+ 현재: sprint-1 (active)
245
+ Task: 3개 (2 DONE, 1 IN_DEV)
246
+
247
+ 📦 Backlog
248
+ 총 Task: 5개
249
+ READY: 2개
250
+ ```
251
+
252
+ ### 4.2 문서 검증
253
+
254
+ ```bash
255
+ # 전체 검증
256
+ ada validate
257
+
258
+ # 특정 문서 검증
259
+ ada validate plan
260
+ ada validate project
261
+ ```
262
+
263
+ ### 4.3 로그 확인
264
+
265
+ ```bash
266
+ # 최근 세션 로그
267
+ ada logs
268
+
269
+ # 특정 세션 로그
270
+ ada logs 20240104-143022-a1b2
271
+ ```
272
+
273
+ ---
274
+
275
+ ## 5. 슈퍼권한 작업
276
+
277
+ ### 5.1 문서 직접 수정
278
+
279
+ 모든 문서를 직접 수정 가능:
280
+ ```bash
281
+ # plan.md 직접 수정
282
+ vim ai-dev-team/artifacts/plan.md
283
+
284
+ # project.md 수정 (Frozen이지만 권한 있음)
285
+ vim ai-dev-team/artifacts/project.md
286
+ ```
287
+
288
+ **주의:** project.md는 Frozen 문서이므로 변경 시 decision.md에 기록 권장
289
+
290
+ ### 5.2 Task 상태 강제 변경
291
+
292
+ ```bash
293
+ # sprints/sprint-1/meta.md에서 직접 수정
294
+ vim ai-dev-team/artifacts/sprints/sprint-1/meta.md
295
+
296
+ # Task 상태 변경
297
+ | task-001 | BACKLOG | - | P0 | M |
298
+
299
+ | task-001 | DONE | developer | P0 | M |
300
+ ```
301
+
302
+ ### 5.3 스프린트 강제 종료
303
+
304
+ ```bash
305
+ ada sprint close -f # 미완료 Task 있어도 강제 종료
306
+ ```
307
+
308
+ ### 5.4 세션 정리
309
+
310
+ ```bash
311
+ # 좀비 세션 정리 (프로세스 종료 감지 포함)
312
+ ada sessions
313
+
314
+ # 오래된 완료 세션 정리
315
+ ada sessions --clean
316
+
317
+ # 특정 세션 강제 종료
318
+ kill [session-pid]
319
+ ```
320
+
321
+ ---
322
+
323
+ ## 6. 워크플로우 예시
324
+
325
+ ### 6.1 신규 프로젝트 시작
326
+
327
+ ```bash
328
+ # 1. 템플릿 설정
329
+ ada setup web
330
+
331
+ # 2. 기획 시작
332
+ ada planner claude
333
+ # → plan.md, backlog/*.md 생성
334
+
335
+ # 3. project.md 작성 (선택)
336
+ vim ai-dev-team/artifacts/project.md
337
+ # → 기술 스택, 구조, 품질 기준 정의
338
+
339
+ # 4. 스프린트 생성
340
+ ada sprint create
341
+ ada sprint add task-001 task-002
342
+
343
+ # 5. 개발 시작
344
+ ada developer claude
345
+
346
+ # 6. 모니터링 (별도 터미널)
347
+ ada sessions --watch
348
+
349
+ # 7. 리뷰
350
+ ada reviewer claude
351
+
352
+ # 8. 문서 작성
353
+ ada documenter claude
354
+
355
+ # 9. 스프린트 종료
356
+ ada sprint close
357
+ ```
358
+
359
+ ### 6.2 진행 중 개입
360
+
361
+ **시나리오 1: AI가 막혔을 때**
362
+ ```
363
+ Developer: ⚠️ 구현 불가 - Websocket 필요하지만 project.md에 없음
364
+ 사용자: y (승인)
365
+ → decision.md에 자동 기록
366
+ → project.md 업데이트
367
+ Developer: ✅ 계속 진행
368
+ ```
369
+
370
+ **시나리오 2: 품질 문제 발견**
371
+ ```
372
+ Reviewer: ❌ REJECT - 수용 조건 미충족
373
+ 사용자: (ada sessions로 확인)
374
+ → review-reports/task-001.md 확인
375
+ → Developer에게 재작업 지시
376
+ ```
377
+
378
+ **시나리오 3: 긴급 Task 추가**
379
+ ```
380
+ 사용자: vim ai-dev-team/artifacts/backlog/task-010.md
381
+ (긴급 Task 생성)
382
+
383
+ ada sprint add task-010
384
+ ✅ 현재 스프린트에 추가됨
385
+
386
+ decision.md에 기록:
387
+ "긴급 보안 패치 - CVE-2024-XXXX 대응"
388
+ ```
389
+
390
+ ---
391
+
392
+ ## 7. 모니터링 팁
393
+
394
+ ### 7.1 Watch 모드 활용
395
+
396
+ **터미널 1:** 개발 진행
397
+ ```bash
398
+ ada developer claude
399
+ ```
400
+
401
+ **터미널 2:** 실시간 모니터링
402
+ ```bash
403
+ ada sessions --watch
404
+ ```
405
+
406
+ **터미널 3:** 리뷰 진행
407
+ ```bash
408
+ ada reviewer gemini
409
+ ```
410
+
411
+ ### 7.2 알림 확인
412
+
413
+ `.ada-status.json`의 notifications 필드:
414
+ ```json
415
+ {
416
+ "notifications": [
417
+ {
418
+ "from": "developer",
419
+ "message": "task-001 구현 완료",
420
+ "taskId": "task-001",
421
+ "timestamp": "2024-01-04T14:30:00Z",
422
+ "read": false
423
+ }
424
+ ]
425
+ }
426
+ ```
427
+
428
+ `ada sessions`로 확인 가능
429
+
430
+ ---
431
+
432
+ ## 8. 충돌 해결
433
+
434
+ ### 8.1 문서 간 충돌
435
+
436
+ AI가 충돌을 발견하면 보고:
437
+ ```
438
+ Developer: ⚠️ 문서 충돌 발견
439
+ plan.md: "사용자 인증 필요"
440
+ project.md: "인증 시스템 제외"
441
+
442
+ 어떻게 처리할까요?
443
+ ```
444
+
445
+ 사용자 결정:
446
+ ```
447
+ 옵션:
448
+ 1. plan.md 우선 (project.md 수정)
449
+ 2. project.md 우선 (plan.md 수정)
450
+ 3. 둘 다 수정
451
+
452
+ 선택: _
453
+ ```
454
+
455
+ decision.md에 기록하여 향후 참조
456
+
457
+ ### 8.2 역할 간 해석 차이
458
+
459
+ ```
460
+ Developer: "로그인 = 이메일/비밀번호"
461
+ Reviewer: "로그인 = OAuth 포함해야 함"
462
+
463
+ → plan.md 명확화 필요
464
+ → 사용자가 최종 판단
465
+ ```
466
+
467
+ ---
468
+
469
+ ## 9. 금지 사항
470
+
471
+ Manager(사용자)는 슈퍼권한을 가지지만, 다음을 지키는 것을 권장:
472
+
473
+ - ⚠️ Frozen 문서 무단 변경 (RFC 절차 권장)
474
+ - ⚠️ 진행 중인 스프린트 범위 임의 변경
475
+ - ⚠️ AI 역할의 산출물 직접 수정 (역할 재실행 권장)
476
+
477
+ **권장 방식:**
478
+ - ✅ AI가 잘못했으면 → 역할 재실행
479
+ - ✅ 문서 수정 필요하면 → decision.md에 기록
480
+ - ✅ 긴급 상황만 → 직접 수정
481
+
482
+ ---
483
+
484
+ ## 10. 체크리스트
485
+
486
+ ### 스프린트 시작 전
487
+ - [ ] plan.md 확정
488
+ - [ ] backlog에 READY Task 충분
489
+ - [ ] project.md 작성 (선택)
490
+ - [ ] 스프린트 생성 및 Task 추가
491
+
492
+ ### 스프린트 진행 중
493
+ - [ ] ada sessions로 주기적 확인
494
+ - [ ] AI 질문에 신속 응답
495
+ - [ ] REJECT된 Task 확인 및 조치
496
+ - [ ] 충돌/이슈 즉시 해결
497
+
498
+ ### 스프린트 종료 전
499
+ - [ ] 모든 Task DONE 확인
500
+ - [ ] 문서 작성 완료 (Documenter)
501
+ - [ ] 회고 작성
502
+ - [ ] decision.md 정리
503
+
504
+ ---
505
+
506
+ ## 11. 참고 명령어 요약
507
+
508
+ ```bash
509
+ # 스프린트
510
+ ada sprint create # 생성
511
+ ada sprint add task-001 # Task 추가
512
+ ada sprint close # 종료
513
+ ada sprint list # 목록
514
+
515
+ # 모니터링
516
+ ada sessions # 세션 확인
517
+ ada sessions --watch # 실시간 대시보드
518
+ ada sessions --clean # 좀비 정리
519
+ ada logs [id] # 로그
520
+
521
+ # 상태 확인
522
+ ada status # 전체 상태
523
+ ada validate # 문서 검증
524
+
525
+ # AI 역할 실행
526
+ ada planner claude
527
+ ada developer codex
528
+ ada reviewer gemini
529
+ ada documenter claude
530
+ ```
531
+
532
+ ---
533
+
534
+ ## 12. 마무리
535
+
536
+ **Manager = 당신**
537
+
538
+ - 🎯 최종 결정권자
539
+ - 📊 프로젝트 전체 조망
540
+ - ⚖️ AI 역할들의 중재자
541
+ - 📝 품질 최종 책임자
542
+
543
+ CLI 도구와 모니터링 대시보드를 활용하여
544
+ 효율적으로 프로젝트를 관리하세요! 🚀