moai-adk 0.3.12__py3-none-any.whl → 0.4.0__py3-none-any.whl

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.

Potentially problematic release.


This version of moai-adk might be problematic. Click here for more details.

Files changed (92) hide show
  1. moai_adk/__init__.py +8 -1
  2. moai_adk/__main__.py +1 -1
  3. moai_adk/cli/commands/__init__.py +1 -1
  4. moai_adk/cli/commands/doctor.py +2 -2
  5. moai_adk/cli/commands/status.py +1 -1
  6. moai_adk/cli/commands/update.py +136 -90
  7. moai_adk/cli/prompts/init_prompts.py +1 -1
  8. moai_adk/core/__init__.py +1 -1
  9. moai_adk/core/git/branch.py +1 -1
  10. moai_adk/core/git/manager.py +1 -1
  11. moai_adk/core/project/detector.py +14 -2
  12. moai_adk/core/quality/__init__.py +1 -1
  13. moai_adk/core/quality/trust_checker.py +1 -1
  14. moai_adk/core/quality/validators/__init__.py +1 -1
  15. moai_adk/core/quality/validators/base_validator.py +1 -1
  16. moai_adk/core/template/__init__.py +1 -1
  17. moai_adk/core/template/backup.py +2 -1
  18. moai_adk/core/template/config.py +24 -0
  19. moai_adk/core/template/languages.py +1 -1
  20. moai_adk/core/template/merger.py +58 -1
  21. moai_adk/core/template/processor.py +41 -12
  22. moai_adk/templates/.claude/agents/alfred/cc-manager.md +558 -3
  23. moai_adk/templates/.claude/commands/alfred/0-project.md +480 -12
  24. moai_adk/templates/.claude/commands/alfred/1-plan.md +563 -0
  25. moai_adk/templates/.claude/commands/alfred/1-spec.md +15 -516
  26. moai_adk/templates/.claude/commands/alfred/2-build.md +15 -417
  27. moai_adk/templates/.claude/commands/alfred/2-run.md +460 -0
  28. moai_adk/templates/.claude/hooks/alfred/handlers/session.py +12 -0
  29. moai_adk/templates/.claude/skills/moai-claude-code/SKILL.md +67 -0
  30. moai_adk/templates/.claude/skills/moai-claude-code/examples.md +513 -0
  31. moai_adk/templates/.claude/skills/moai-claude-code/reference.md +419 -0
  32. moai_adk/templates/.claude/skills/moai-claude-code/templates/agent-full.md +332 -0
  33. moai_adk/templates/.claude/skills/moai-claude-code/templates/command-full.md +384 -0
  34. moai_adk/templates/.claude/skills/moai-claude-code/templates/plugin-full.json +349 -0
  35. moai_adk/templates/.claude/skills/moai-claude-code/templates/settings-full.json +552 -0
  36. moai_adk/templates/.claude/skills/moai-claude-code/templates/skill-full.md +499 -0
  37. moai_adk/templates/.claude/skills/moai-domain-backend/SKILL.md +68 -0
  38. moai_adk/templates/.claude/skills/moai-domain-cli-tool/SKILL.md +64 -0
  39. moai_adk/templates/.claude/skills/moai-domain-data-science/SKILL.md +67 -0
  40. moai_adk/templates/.claude/skills/moai-domain-database/SKILL.md +69 -0
  41. moai_adk/templates/.claude/skills/moai-domain-devops/SKILL.md +69 -0
  42. moai_adk/templates/.claude/skills/moai-domain-frontend/SKILL.md +68 -0
  43. moai_adk/templates/.claude/skills/moai-domain-ml/SKILL.md +67 -0
  44. moai_adk/templates/.claude/skills/moai-domain-mobile-app/SKILL.md +62 -0
  45. moai_adk/templates/.claude/skills/moai-domain-security/SKILL.md +74 -0
  46. moai_adk/templates/.claude/skills/moai-domain-web-api/SKILL.md +66 -0
  47. moai_adk/templates/.claude/skills/moai-essentials-debug/SKILL.md +66 -0
  48. moai_adk/templates/.claude/skills/moai-essentials-perf/SKILL.md +68 -0
  49. moai_adk/templates/.claude/skills/moai-essentials-refactor/SKILL.md +59 -0
  50. moai_adk/templates/.claude/skills/moai-essentials-review/SKILL.md +76 -0
  51. moai_adk/templates/.claude/skills/moai-foundation-ears/SKILL.md +61 -0
  52. moai_adk/templates/.claude/skills/moai-foundation-git/SKILL.md +63 -0
  53. moai_adk/templates/.claude/skills/moai-foundation-langs/SKILL.md +64 -0
  54. moai_adk/templates/.claude/skills/moai-foundation-specs/SKILL.md +61 -0
  55. moai_adk/templates/.claude/skills/moai-foundation-tags/SKILL.md +54 -0
  56. moai_adk/templates/.claude/skills/moai-foundation-trust/SKILL.md +46 -0
  57. moai_adk/templates/.claude/skills/moai-lang-c/SKILL.md +68 -0
  58. moai_adk/templates/.claude/skills/moai-lang-clojure/SKILL.md +68 -0
  59. moai_adk/templates/.claude/skills/moai-lang-cpp/SKILL.md +69 -0
  60. moai_adk/templates/.claude/skills/moai-lang-csharp/SKILL.md +67 -0
  61. moai_adk/templates/.claude/skills/moai-lang-dart/SKILL.md +66 -0
  62. moai_adk/templates/.claude/skills/moai-lang-elixir/SKILL.md +66 -0
  63. moai_adk/templates/.claude/skills/moai-lang-go/SKILL.md +67 -0
  64. moai_adk/templates/.claude/skills/moai-lang-haskell/SKILL.md +67 -0
  65. moai_adk/templates/.claude/skills/moai-lang-java/SKILL.md +66 -0
  66. moai_adk/templates/.claude/skills/moai-lang-javascript/SKILL.md +64 -0
  67. moai_adk/templates/.claude/skills/moai-lang-julia/SKILL.md +66 -0
  68. moai_adk/templates/.claude/skills/moai-lang-kotlin/SKILL.md +67 -0
  69. moai_adk/templates/.claude/skills/moai-lang-lua/SKILL.md +65 -0
  70. moai_adk/templates/.claude/skills/moai-lang-php/SKILL.md +65 -0
  71. moai_adk/templates/.claude/skills/moai-lang-python/SKILL.md +64 -0
  72. moai_adk/templates/.claude/skills/moai-lang-r/SKILL.md +66 -0
  73. moai_adk/templates/.claude/skills/moai-lang-ruby/SKILL.md +66 -0
  74. moai_adk/templates/.claude/skills/moai-lang-rust/SKILL.md +68 -0
  75. moai_adk/templates/.claude/skills/moai-lang-scala/SKILL.md +68 -0
  76. moai_adk/templates/.claude/skills/moai-lang-shell/SKILL.md +67 -0
  77. moai_adk/templates/.claude/skills/moai-lang-sql/SKILL.md +68 -0
  78. moai_adk/templates/.claude/skills/moai-lang-swift/SKILL.md +67 -0
  79. moai_adk/templates/.claude/skills/moai-lang-typescript/SKILL.md +64 -0
  80. moai_adk/templates/.claude/skills/scripts/standardize_skills.py +166 -0
  81. moai_adk/templates/.claude/skills/scripts/verify_standardization.sh +43 -0
  82. moai_adk/templates/CLAUDE.md +153 -0
  83. moai_adk/templates/__init__.py +1 -1
  84. moai_adk/utils/__init__.py +1 -1
  85. moai_adk/utils/banner.py +1 -1
  86. moai_adk/utils/logger.py +1 -1
  87. {moai_adk-0.3.12.dist-info → moai_adk-0.4.0.dist-info}/METADATA +244 -3
  88. moai_adk-0.4.0.dist-info/RECORD +145 -0
  89. moai_adk-0.3.12.dist-info/RECORD +0 -90
  90. {moai_adk-0.3.12.dist-info → moai_adk-0.4.0.dist-info}/WHEEL +0 -0
  91. {moai_adk-0.3.12.dist-info → moai_adk-0.4.0.dist-info}/entry_points.txt +0 -0
  92. {moai_adk-0.3.12.dist-info → moai_adk-0.4.0.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,460 @@
1
+ ---
2
+ name: alfred:2-run
3
+ description: "구현할 SPEC ID (예: SPEC-001) 또는 all로 모든 SPEC 구현 - 계획된 작업 실행 (TDD 구현, 프로토타입, 문서화 등)"
4
+ argument-hint: "SPEC-ID - 구현할 SPEC ID (예: SPEC-001) 또는 all로 모든 SPEC 구현"
5
+ allowed-tools:
6
+ - Read
7
+ - Write
8
+ - Edit
9
+ - MultiEdit
10
+ - Bash(python3:*)
11
+ - Bash(pytest:*)
12
+ - Bash(npm:*)
13
+ - Bash(node:*)
14
+ - Bash(git:*)
15
+ - Task
16
+ - WebFetch
17
+ - Grep
18
+ - Glob
19
+ - TodoWrite
20
+ ---
21
+
22
+ # ⚒️ MoAI-ADK 2단계: 계획 실행 (Run) - 유연한 구현 전략
23
+
24
+ ## 🎯 커맨드 목적
25
+
26
+ SPEC 문서를 분석하여 계획된 작업을 실행합니다. TDD 구현뿐만 아니라 프로토타입 제작, 문서화 작업 등 다양한 실행 시나리오를 지원합니다.
27
+
28
+ **실행 대상**: $ARGUMENTS
29
+
30
+ ## 💡 실행 철학: "계획(Plan) → 실행(Run) → 동기화(Sync)"
31
+
32
+ `/alfred:2-run`은 단순히 코드를 "빌드"하는 것이 아니라, **계획된 작업을 수행**하는 범용 커맨드입니다.
33
+
34
+ ### 3가지 주요 시나리오
35
+
36
+ #### 시나리오 1: TDD 구현 (주 사용 방식) ⭐
37
+ ```bash
38
+ /alfred:2-run SPEC-AUTH-001
39
+ → RED → GREEN → REFACTOR
40
+ → 테스트 주도 개발로 고품질 코드 구현
41
+ ```
42
+
43
+ #### 시나리오 2: 프로토타입 제작
44
+ ```bash
45
+ /alfred:2-run SPEC-PROTO-001
46
+ → 빠른 검증을 위한 프로토타입 구현
47
+ → 최소한의 테스트로 신속한 피드백
48
+ ```
49
+
50
+ #### 시나리오 3: 문서화 작업
51
+ ```bash
52
+ /alfred:2-run SPEC-DOCS-001
53
+ → 문서 작성 및 샘플 코드 생성
54
+ → API 문서, 튜토리얼, 가이드 등
55
+ ```
56
+
57
+ > **표준 2단계 워크플로우** (자세한 내용: `CLAUDE.md` - "Alfred 커맨드 실행 패턴" 참조)
58
+
59
+ ## 📋 실행 흐름
60
+
61
+ 1. **SPEC 분석**: 요구사항 추출 및 복잡도 평가
62
+ 2. **실행 전략 수립**: 언어별 최적화된 접근법 결정 (TDD, 프로토타입, 문서화 등)
63
+ 3. **사용자 확인**: 실행 계획 검토 및 승인
64
+ 4. **작업 실행**: 승인된 계획에 따라 작업 수행
65
+ 5. **Git 작업**: git-manager를 통한 단계별 커밋 생성
66
+
67
+ ## 🔗 연관 에이전트
68
+
69
+ - **Phase 1**: implementation-planner (📋 테크니컬 아키텍트) - SPEC 분석 및 실행 전략 수립
70
+ - **Phase 2**: tdd-implementer (🔬 시니어 개발자) - 실행 작업 전담
71
+ - **Phase 2.5**: quality-gate (🛡️ 품질 보증 엔지니어) - TRUST 원칙 검증 (자동)
72
+ - **Phase 3**: git-manager (🚀 릴리스 엔지니어) - Git 커밋 전담
73
+
74
+ ## 💡 사용 예시
75
+
76
+ 사용자가 다음과 같이 커맨드를 실행할 수 있습니다:
77
+ - `/alfred:2-run SPEC-001` - 특정 SPEC 실행
78
+ - `/alfred:2-run all` - 모든 SPEC 일괄 실행
79
+ - `/alfred:2-run SPEC-003 --test` - 테스트만 실행
80
+
81
+ ## 🔍 STEP 1: SPEC 분석 및 실행 계획 수립
82
+
83
+ 먼저 지정된 SPEC을 분석하여 실행 계획을 수립하고 사용자 확인을 받습니다.
84
+
85
+ **implementation-planner 에이전트가 자동으로 필요한 문서를 로드하여 분석합니다.**
86
+
87
+ ### 🔍 코드베이스 탐색 (권장)
88
+
89
+ **기존 코드 구조를 파악하거나 유사 패턴을 찾아야 하는 경우** Explore 에이전트를 먼저 활용합니다:
90
+
91
+ ```
92
+ Task tool 호출 (Explore 에이전트):
93
+ - subagent_type: "Explore"
94
+ - description: "기존 코드 구조 및 패턴 탐색"
95
+ - prompt: "SPEC-$ARGUMENTS와 관련된 기존 코드를 탐색해주세요:
96
+ - 유사한 기능 구현 코드 (src/)
97
+ - 참고할 테스트 패턴 (tests/)
98
+ - 아키텍처 패턴 및 디자인 패턴
99
+ - 사용 중인 라이브러리 및 버전 (package.json, requirements.txt)
100
+ thoroughness 레벨: medium"
101
+ ```
102
+
103
+ **Explore 에이전트 사용 시점**:
104
+ - ✅ 기존 코드 구조/패턴 파악이 필요한 경우
105
+ - ✅ 유사 기능의 구현 방식을 참고해야 할 때
106
+ - ✅ 프로젝트의 아키텍처 규칙을 이해해야 할 때
107
+ - ✅ 사용 중인 라이브러리 및 버전 확인
108
+
109
+ ### ⚙️ 에이전트 호출 방법
110
+
111
+ **STEP 1에서는 Task tool을 사용하여 implementation-planner 에이전트를 호출합니다**:
112
+
113
+ ```
114
+ Task tool 호출 예시:
115
+ - subagent_type: "implementation-planner"
116
+ - description: "SPEC 분석 및 실행 전략 수립"
117
+ - prompt: "$ARGUMENTS 의 SPEC을 분석하여 실행 계획을 수립해주세요.
118
+ 다음을 포함해야 합니다:
119
+ 1. SPEC 요구사항 추출 및 복잡도 평가
120
+ 2. 라이브러리 및 도구 선정 (WebFetch 사용)
121
+ 3. TAG 체인 설계
122
+ 4. 단계별 실행 계획
123
+ 5. 리스크 및 대응 방안
124
+ 6. 실행 계획서 작성 및 사용자 승인 대기
125
+ (선택) Explore 결과: $EXPLORE_RESULTS"
126
+ ```
127
+
128
+ ### SPEC 분석 진행
129
+
130
+ 1. **SPEC 문서 분석**
131
+ - 요구사항 추출 및 복잡도 평가
132
+ - 기술적 제약사항 확인
133
+ - 의존성 및 영향 범위 분석
134
+ - (선택) Explore 결과 기반 기존 코드 구조 파악
135
+
136
+ 2. **실행 전략 수립**
137
+ - 프로젝트 언어 감지 및 최적화된 실행 전략
138
+ - 접근 방식 결정 (TDD, 프로토타입, 문서화 등)
139
+ - 예상 작업 범위 및 시간 산정
140
+
141
+ 3. **라이브러리 버전 확인 및 명시 (필수)**
142
+ - **웹 검색**: `WebSearch`를 통해 사용할 모든 라이브러리의 최신 안정 버전 확인
143
+ - **버전 명시**: 구현 계획 보고서에 라이브러리별 정확한 버전 명시 (예: `fastapi>=0.118.3`)
144
+ - **안정성 우선**: 베타/알파 버전 제외, 프로덕션 안정 버전만 선택
145
+ - **호환성 확인**: 라이브러리 간 버전 호환성 검증
146
+ - **검색 키워드 예시**:
147
+ - `"FastAPI latest stable version 2025"`
148
+ - `"SQLAlchemy 2.0 latest stable version 2025"`
149
+ - `"React 18 latest stable version 2025"`
150
+
151
+ 4. **실행 계획 보고**
152
+ - 단계별 실행 계획 제시
153
+ - 잠재적 위험 요소 식별
154
+ - 품질 게이트 체크포인트 설정
155
+ - **라이브러리 버전 명시 (필수)**
156
+
157
+ ### 사용자 확인 단계
158
+
159
+ 실행 계획 검토 후 다음 중 선택하세요:
160
+ - **"진행"** 또는 **"시작"**: 계획대로 작업 실행 시작
161
+ - **"수정 [내용]"**: 계획 수정 요청
162
+ - **"중단"**: 작업 중단
163
+
164
+ ---
165
+
166
+ ## 🚀 STEP 2: 작업 실행 (사용자 승인 후)
167
+
168
+ 사용자 승인 후 **Task tool을 사용하여 tdd-implementer 에이전트를 호출**합니다.
169
+
170
+ ### ⚙️ 에이전트 호출 방법
171
+
172
+ **STEP 2에서는 Task tool을 사용하여 tdd-implementer를 호출합니다**:
173
+
174
+ ```
175
+ Task tool 호출 예시:
176
+ - subagent_type: "tdd-implementer"
177
+ - description: "작업 실행"
178
+ - prompt: "STEP 1에서 승인된 계획에 따라 작업을 실행해주세요.
179
+ TDD 시나리오의 경우:
180
+ - RED → GREEN → REFACTOR 사이클을 수행하며,
181
+ 각 TAG별로 다음을 수행합니다:
182
+ 1. RED Phase: @TEST:ID 태그로 실패하는 테스트 작성
183
+ 2. GREEN Phase: @CODE:ID 태그로 최소 구현
184
+ 3. REFACTOR Phase: 코드 품질 개선
185
+ 4. TAG 완료 조건 검증 및 다음 TAG로 진행
186
+
187
+ 실행 대상: $ARGUMENTS"
188
+ ```
189
+
190
+ ## 🔗 언어별 TDD 최적화
191
+
192
+ ### 프로젝트 언어 감지 및 최적 라우팅
193
+
194
+ `tdd-implementer`는 프로젝트의 언어를 자동으로 감지하여 최적의 TDD 도구와 워크플로우를 선택합니다:
195
+
196
+ - **언어 감지**: 프로젝트 파일(package.json, pyproject.toml, go.mod 등) 분석
197
+ - **도구 선택**: 언어별 최적 테스트 프레임워크 자동 선택
198
+ - **TAG 적용**: 코드 파일에 @TAG 주석 직접 작성
199
+ - **사이클 실행**: RED → GREEN → REFACTOR 순차 진행
200
+
201
+ ### TDD 도구 매핑
202
+
203
+ #### 백엔드/시스템
204
+
205
+ | SPEC 타입 | 구현 언어 | 테스트 프레임워크 | 성능 목표 | 커버리지 목표 |
206
+ |-----------|-----------|-------------------|-----------|---------------|
207
+ | **CLI/시스템** | TypeScript | Jest + ts-node | < 18ms | 95%+ |
208
+ | **API/백엔드** | TypeScript | Jest + SuperTest | < 50ms | 90%+ |
209
+ | **프론트엔드** | TypeScript | Jest + Testing Library | < 100ms | 85%+ |
210
+ | **데이터 처리** | TypeScript | Jest + Mock | < 200ms | 85%+ |
211
+ | **Python 프로젝트** | Python | pytest + mypy | 사용자 정의 | 85%+ |
212
+
213
+ #### 모바일 프레임워크
214
+
215
+ | SPEC 타입 | 구현 언어 | 테스트 프레임워크 | 성능 목표 | 커버리지 목표 |
216
+ |-----------|-----------|-------------------|-----------|---------------|
217
+ | **Flutter 앱** | Dart | flutter test + widget test | < 100ms | 85%+ |
218
+ | **React Native** | TypeScript | Jest + RN Testing Library | < 100ms | 85%+ |
219
+ | **iOS 앱** | Swift | XCTest + XCUITest | < 150ms | 80%+ |
220
+ | **Android 앱** | Kotlin | JUnit + Espresso | < 150ms | 80%+ |
221
+
222
+ ## 🚀 최적화된 에이전트 협업 구조
223
+
224
+ - **Phase 1**: `implementation-planner` 에이전트가 SPEC 분석 및 실행 전략 수립
225
+ - **Phase 2**: `tdd-implementer` 에이전트가 작업 실행 (TDD 사이클, 프로토타입, 문서화 등)
226
+ - **Phase 2.5**: `quality-gate` 에이전트가 TRUST 원칙 검증 및 품질 검증 (자동)
227
+ - **Phase 3**: `git-manager` 에이전트가 작업 완료 후 모든 커밋을 한 번에 처리
228
+ - **단일 책임 원칙**: 각 에이전트는 자신의 전문 영역만 담당
229
+ - **에이전트 간 호출 금지**: 각 에이전트는 독립적으로 실행, 커맨드 레벨에서만 순차 호출
230
+
231
+ ## 🔄 2단계 워크플로우 실행 순서
232
+
233
+ ### Phase 1: 분석 및 계획 단계
234
+
235
+ `implementation-planner` 에이전트가 다음을 수행:
236
+
237
+ 1. **SPEC 문서 분석**: 지정된 SPEC ID의 요구사항 추출 및 복잡도 평가
238
+ 2. **라이브러리 선정**: WebFetch를 통한 최신 안정 버전 확인 및 호환성 검증
239
+ 3. **TAG 체인 설계**: TAG 순서 및 의존성 결정
240
+ 4. **실행 전략 수립**: 단계별 실행 계획 및 리스크 식별
241
+ 5. **실행 계획서 작성**: 구조화된 계획서 생성 및 사용자 승인 대기
242
+
243
+ ### Phase 2: 작업 실행 단계 (승인 후)
244
+
245
+ `tdd-implementer` 에이전트가 사용자 승인 후 **TAG 단위로** 수행 (TDD 시나리오 기준):
246
+
247
+ 1. **RED Phase**: 실패하는 테스트 작성 (@TEST:ID 태그 추가) 및 실패 확인
248
+ 2. **GREEN Phase**: 테스트를 통과하는 최소한의 코드 작성 (@CODE:ID 태그 추가)
249
+ 3. **REFACTOR Phase**: 코드 품질 개선 (기능 변경 없이)
250
+ 4. **TAG 완료 확인**: 각 TAG의 완료 조건 검증 및 다음 TAG로 진행
251
+
252
+ ### Phase 2.5: 품질 검증 게이트 (자동 실행)
253
+
254
+ 작업 실행 완료 후 `quality-gate` 에이전트가 **자동으로** 품질 검증을 수행합니다.
255
+
256
+ **자동 실행 조건**:
257
+ - 작업 실행 완료 시 자동 호출
258
+ - 사용자 요청 시 수동 호출 가능
259
+
260
+ **검증 항목**:
261
+ - **TRUST 원칙 검증**: trust-checker 스크립트 실행 및 결과 파싱
262
+ - T (Testable): 테스트 커버리지 ≥ 85%
263
+ - R (Readable): 코드 가독성 (파일≤300 LOC, 함수≤50 LOC, 복잡도≤10)
264
+ - U (Unified): 아키텍처 통합성
265
+ - S (Secured): 보안 취약점 없음
266
+ - T (Traceable): @TAG 체인 무결성
267
+ - **코드 스타일**: 린터(ESLint/Pylint) 실행 및 검증
268
+ - **테스트 커버리지**: 언어별 커버리지 도구 실행 및 목표 달성 확인
269
+ - **TAG 체인 검증**: 고아 TAG, 누락된 TAG 확인
270
+ - **의존성 검증**: 보안 취약점 확인
271
+
272
+ **실행 방식**: Alfred가 작업 실행 완료 시 자동으로 quality-gate 에이전트를 호출하여 품질 검증을 수행합니다.
273
+
274
+ **검증 결과 처리**:
275
+
276
+ ✅ **PASS (Critical 0개, Warning 5개 이하)**:
277
+ - Phase 3 (Git 작업)로 진행
278
+ - 품질 리포트 생성
279
+
280
+ ⚠️ **WARNING (Critical 0개, Warning 6개 이상)**:
281
+ - 경고 표시
282
+ - 사용자 선택: "계속 진행" 또는 "수정 후 재검증"
283
+
284
+ ❌ **CRITICAL (Critical 1개 이상)**:
285
+ - Git 커밋 차단
286
+ - 개선 필요 항목 상세 보고 (파일:라인 정보 포함)
287
+ - tdd-implementer 재호출 권장
288
+
289
+ **검증 생략 옵션**: 품질 검증을 건너뛰려면 `--skip-quality-check` 옵션을 사용합니다.
290
+
291
+ ### Phase 3: Git 작업 (git-manager)
292
+
293
+ `git-manager` 에이전트가 작업 완료 후 **한 번에** 수행:
294
+
295
+ 1. **체크포인트 생성**: 작업 시작 전 백업 포인트
296
+ 2. **구조화된 커밋**: 단계별 커밋 생성 (TDD의 경우 RED→GREEN→REFACTOR)
297
+ 3. **최종 동기화**: 모드별 Git 전략 적용 및 원격 동기화
298
+
299
+
300
+ ## 📋 STEP 1 실행 가이드: SPEC 분석 및 계획 수립
301
+
302
+ ### 1. SPEC 문서 분석
303
+
304
+ Alfred는 implementation-planner 에이전트를 호출하여 SPEC 문서를 확인하고 실행 계획을 수립합니다.
305
+
306
+ #### 분석 체크리스트
307
+
308
+ - [ ] **요구사항 명확성**: SPEC의 기능 요구사항이 구체적인가?
309
+ - [ ] **기술적 제약**: 성능, 호환성, 보안 요구사항 확인
310
+ - [ ] **의존성 분석**: 기존 코드와의 연결점 및 영향 범위
311
+ - [ ] **복잡도 평가**: 구현 난이도 및 예상 작업량
312
+
313
+ ### 2. 실행 전략 결정
314
+
315
+ #### TypeScript 실행 기준
316
+
317
+ | SPEC 특성 | 실행 언어 | 이유 |
318
+ |-----------|-----------|------|
319
+ | CLI/시스템 도구 | TypeScript | 고성능 (18ms), 타입 안전성, SQLite3 통합 |
320
+ | API/백엔드 | TypeScript | Node.js 생태계, Express/Fastify 호환성 |
321
+ | 프론트엔드 | TypeScript | React/Vue 네이티브 지원 |
322
+ | 데이터 처리 | TypeScript | 고성능 비동기 처리, 타입 안전성 |
323
+ | 사용자 Python 프로젝트 | Python 도구 지원 | MoAI-ADK가 Python 프로젝트 개발 도구 제공 |
324
+
325
+ #### 접근 방식
326
+
327
+ - **Bottom-up**: 유틸리티 → 서비스 → API
328
+ - **Top-down**: API → 서비스 → 유틸리티
329
+ - **Middle-out**: 핵심 로직 → 양방향 확장
330
+
331
+ ### 3. 실행 계획 보고서 생성
332
+
333
+ 다음 형식으로 계획을 제시합니다:
334
+
335
+ ```
336
+ ## 실행 계획 보고서: [SPEC-ID]
337
+
338
+ ### 📊 분석 결과
339
+ - **복잡도**: [낮음/중간/높음]
340
+ - **예상 작업시간**: [시간 산정]
341
+ - **주요 기술 도전**: [기술적 어려움]
342
+
343
+ ### 🎯 실행 전략
344
+ - **선택 언어**: [Python/TypeScript + 이유]
345
+ - **접근법**: [Bottom-up/Top-down/Middle-out 또는 프로토타입/문서화]
346
+ - **핵심 모듈**: [주요 작업 대상]
347
+
348
+ ### 📦 라이브러리 버전 (필수 - 웹 검색 기반)
349
+ **백엔드 의존성** (예시):
350
+ | 패키지 | 최신 안정 버전 | 설치 명령 |
351
+ |--------|--------------|----------|
352
+ | FastAPI | 0.118.3 | fastapi>=0.118.3 |
353
+ | SQLAlchemy | 2.0.43 | sqlalchemy>=2.0.43 |
354
+
355
+ **프론트엔드 의존성** (예시):
356
+ | 패키지 | 최신 안정 버전 | 설치 명령 |
357
+ |--------|--------------|----------|
358
+ | React | 18.3.1 | react@^18.3.1 |
359
+ | Vite | 7.1.9 | vite@^7.1.9 |
360
+
361
+ **중요 호환성 정보**:
362
+ - [특정 버전 요구사항]
363
+ - [알려진 호환성 이슈]
364
+
365
+ ### ⚠️ 위험 요소
366
+ - **기술적 위험**: [예상 문제점]
367
+ - **의존성 위험**: [외부 의존성 이슈]
368
+ - **일정 위험**: [지연 가능성]
369
+
370
+ ### ✅ 품질 게이트
371
+ - **테스트 커버리지**: [목표 %]
372
+ - **성능 목표**: [구체적 지표]
373
+ - **보안 체크포인트**: [검증 항목]
374
+
375
+ ---
376
+ **승인 요청**: 위 계획으로 진행하시겠습니까?
377
+ ("진행", "수정 [내용]", "중단" 중 선택)
378
+ ```
379
+
380
+ ---
381
+
382
+ ## 🚀 STEP 2 실행 가이드: 작업 실행 (승인 후)
383
+
384
+ 사용자가 **"진행"** 또는 **"시작"**을 선택한 경우에만 Alfred는 tdd-implementer 에이전트를 호출하여 작업을 시작합니다.
385
+
386
+ ### TDD 단계별 가이드
387
+
388
+ 1. **RED**: Given/When/Then 구조로 실패 테스트 작성. 언어별 테스트 파일 규칙을 따르고, 실패 로그를 간단히 기록합니다.
389
+ 2. **GREEN**: 테스트를 통과시키는 최소한의 구현만 추가합니다. 최적화는 REFACTOR 단계로 미룹니다.
390
+ 3. **REFACTOR**: 중복 제거, 명시적 네이밍, 구조화 로깅/예외 처리 보강. 필요 시 추가 커밋으로 분리합니다.
391
+
392
+ **TRUST 5원칙 연계** (상세: `development-guide.md` - "TRUST 5원칙"):
393
+ - **T (Test First)**: RED 단계에서 SPEC 기반 테스트 작성
394
+ - **R (Readable)**: REFACTOR 단계에서 가독성 개선 (파일≤300 LOC, 함수≤50 LOC)
395
+ - **T (Trackable)**: 모든 단계에서 @TAG 추적성 유지
396
+
397
+ > TRUST 5원칙은 기본 권장치만 제공하므로, `simplicity_threshold`를 초과하는 구조가 필요하다면 SPEC 또는 ADR에 근거를 남기고 진행하세요.
398
+
399
+ ## 에이전트 역할 분리
400
+
401
+ ### implementation-planner 전담 영역
402
+
403
+ - SPEC 문서 분석 및 요구사항 추출
404
+ - 라이브러리 선정 및 버전 관리
405
+ - TAG 체인 설계 및 순서 결정
406
+ - 실행 전략 수립 및 리스크 식별
407
+ - 실행 계획서 작성
408
+
409
+ ### tdd-implementer 전담 영역
410
+
411
+ - 작업 실행 (TDD, 프로토타입, 문서화 등)
412
+ - 테스트 작성 및 실행 (TDD 시나리오)
413
+ - TAG 주석 추가 및 관리
414
+ - 코드 품질 개선 (리팩토링)
415
+ - 언어별 린터/포매터 실행
416
+
417
+ ### quality-gate 전담 영역
418
+
419
+ - TRUST 원칙 검증
420
+ - 코드 스타일 검증
421
+ - 테스트 커버리지 확인
422
+ - TAG 체인 무결성 검증
423
+ - 의존성 보안 검증
424
+
425
+ ### git-manager 전담 영역
426
+
427
+ - 모든 Git 커밋 작업 (add, commit, push)
428
+ - 작업 단계별 체크포인트 생성
429
+ - 모드별 커밋 전략 적용
430
+ - 깃 브랜치/태그 관리
431
+ - 원격 동기화 처리
432
+
433
+ ## 품질 게이트 체크리스트
434
+
435
+ - 테스트 커버리지 ≥ `.moai/config.json.test_coverage_target` (기본 85%)
436
+ - 린터/포매터 통과 (`ruff`, `eslint --fix`, `gofmt` 등)
437
+ - 구조화 로깅 또는 관측 도구 호출 존재 확인
438
+ - @TAG 업데이트 필요 변경 사항 메모 (다음 단계에서 doc-syncer가 사용)
439
+
440
+ ---
441
+
442
+ ## 🧠 Context Management (컨텍스트 관리)
443
+
444
+ > 자세한 내용: `.moai/memory/development-guide.md` - "Context Engineering" 섹션 참조
445
+
446
+ ### 이 커맨드의 핵심 전략
447
+
448
+ **우선 로드**: `.moai/specs/SPEC-XXX/spec.md` (구현 대상 요구사항)
449
+
450
+ **권장사항**: 작업 실행이 완료되었습니다. 다음 단계(`/alfred:3-sync`) 진행 전 `/clear` 또는 `/new` 명령으로 새로운 대화 세션을 시작하면 더 나은 성능과 컨텍스트 관리를 경험할 수 있습니다.
451
+
452
+ ---
453
+
454
+ ## 다음 단계
455
+
456
+ **권장사항**: 다음 단계 진행 전 `/clear` 또는 `/new` 명령으로 새로운 대화 세션을 시작하면 더 나은 성능과 컨텍스트 관리를 경험할 수 있습니다.
457
+
458
+ - 작업 실행 완료 후 `/alfred:3-sync`로 문서 동기화 진행
459
+ - 모든 Git 작업은 git-manager 에이전트가 전담하여 일관성 보장
460
+ - 에이전트 간 직접 호출 없이 커맨드 레벨 오케스트레이션만 사용
@@ -29,13 +29,25 @@ def handle_session_start(payload: HookPayload) -> HookResult:
29
29
  SPEC Progress: {완료}/{전체} ({퍼센트}%)
30
30
  Checkpoints: {개수} available (최신 3개 표시)
31
31
 
32
+ Note:
33
+ - Claude Code는 SessionStart를 여러 단계로 처리 (clear → compact)
34
+ - 중복 출력 방지를 위해 "compact" 단계에서만 메시지 표시
35
+ - "clear" 단계는 빈 결과 반환 (사용자에게 보이지 않음)
36
+
32
37
  TDD History:
33
38
  - RED: 세션 시작 메시지 형식 테스트
34
39
  - GREEN: helper 함수 조합하여 상태 메시지 생성
35
40
  - REFACTOR: 메시지 포맷 개선, 가독성 향상, checkpoint 목록 추가
41
+ - FIX: clear 단계 중복 출력 방지 (compact 단계만 표시)
36
42
 
37
43
  @TAG:CHECKPOINT-EVENT-001
38
44
  """
45
+ # Claude Code SessionStart는 여러 단계로 실행됨 (clear, compact 등)
46
+ # "clear" 단계는 무시하고 "compact" 단계에서만 메시지 출력
47
+ event_phase = payload.get("phase", "")
48
+ if event_phase == "clear":
49
+ return HookResult() # 빈 결과 반환 (중복 출력 방지)
50
+
39
51
  cwd = payload.get("cwd", ".")
40
52
  language = detect_language(cwd)
41
53
  git_info = get_git_info(cwd)
@@ -0,0 +1,67 @@
1
+ ---
2
+ name: moai-claude-code
3
+ description: Claude Code 5가지 컴포넌트 생성 및 관리 - Agent, Command, Skill, Plugin, Settings
4
+ 템플릿 기반 정확한 파일 생성
5
+ allowed-tools:
6
+ - Read
7
+ - Write
8
+ - Edit
9
+ ---
10
+
11
+ # MoAI Claude Code Manager
12
+
13
+ Claude Code의 5가지 핵심 컴포넌트를 공식 표준에 맞게 생성하고 관리합니다.
14
+
15
+ ## 지원 컴포넌트
16
+
17
+ 1. **Agent** (.claude/agents/) - 전문 에이전트
18
+ 2. **Command** (.claude/commands/) - 슬래시 커맨드
19
+ 3. **Skill** (.claude/skills/) - 재사용 기능 모듈
20
+ 4. **Plugin** (settings.json의 mcpServers) - MCP 서버 통합
21
+ 5. **Settings** (.claude/settings.json) - 권한 및 훅 설정
22
+
23
+ ## 템플릿 특징
24
+
25
+ MoAI-ADK 통합 프로덕션급 템플릿 (5개)
26
+
27
+ - 완전 상세 (완전하고 실무 사용 가능)
28
+ - MoAI-ADK 워크플로우 통합
29
+ - 복사-붙여넣기 즉시 사용
30
+ - 검증 및 트러블슈팅 가이드 포함
31
+
32
+ ## 사용법
33
+
34
+ ### Agent 생성
35
+ "spec-builder Agent를 생성해주세요"
36
+
37
+ ### Settings 최적화
38
+ "Python 프로젝트용 settings.json을 생성해주세요"
39
+
40
+ ### 전체 검증
41
+ "모든 Claude Code 설정을 검증해주세요"
42
+
43
+ ## 상세 문서
44
+
45
+ - **reference.md**: 컴포넌트별 작성 가이드
46
+ - **examples.md**: 실전 예제 모음
47
+ - **templates/**: 5개 프로덕션급 템플릿
48
+ - **scripts/**: Python 검증 스크립트 (선택적)
49
+
50
+ ## 작동 방식
51
+
52
+ 1. 사용자 요청 분석 → 컴포넌트 유형 파악
53
+ 2. 적절한 템플릿 선택 (templates/ 디렉토리)
54
+ 3. 플레이스홀더 치환 및 파일 생성
55
+ 4. 자동 검증 (선택적, scripts/ 실행)
56
+
57
+ ## 핵심 원칙
58
+
59
+ - **공식 표준 준수**: Anthropic 가이드라인 완벽 준수
60
+ - **할루시네이션 방지**: 검증된 템플릿만 사용
61
+ - **최소 권한**: 필요한 도구만 명시
62
+ - **보안 우선**: 민감 정보 환경변수 관리
63
+
64
+ ---
65
+
66
+ **공식 문서**: https://docs.claude.com/en/docs/claude-code/skills
67
+ **버전**: 1.0.0