moai-adk 0.3.6__py3-none-any.whl → 0.3.9__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.
- moai_adk/__init__.py +1 -1
- moai_adk/templates/.claude/agents/alfred/cc-manager.md +474 -0
- moai_adk/templates/.claude/agents/alfred/debug-helper.md +166 -0
- moai_adk/templates/.claude/agents/alfred/doc-syncer.md +175 -0
- moai_adk/templates/.claude/agents/alfred/git-manager.md +327 -0
- moai_adk/templates/.claude/agents/alfred/implementation-planner.md +311 -0
- moai_adk/templates/.claude/agents/alfred/project-manager.md +152 -0
- moai_adk/templates/.claude/agents/alfred/quality-gate.md +301 -0
- moai_adk/templates/.claude/agents/alfred/spec-builder.md +241 -0
- moai_adk/templates/.claude/agents/alfred/tag-agent.md +247 -0
- moai_adk/templates/.claude/agents/alfred/tdd-implementer.md +280 -0
- moai_adk/templates/.claude/agents/alfred/trust-checker.md +332 -0
- moai_adk/templates/.claude/commands/alfred/0-project.md +523 -0
- moai_adk/templates/.claude/commands/alfred/1-spec.md +532 -0
- moai_adk/templates/.claude/commands/alfred/2-build.md +432 -0
- moai_adk/templates/.claude/commands/alfred/3-sync.md +554 -0
- moai_adk/templates/.claude/hooks/alfred/README.md +230 -0
- moai_adk/templates/.claude/hooks/alfred/alfred_hooks.py +160 -0
- moai_adk/templates/.claude/hooks/alfred/core/__init__.py +79 -0
- moai_adk/templates/.claude/hooks/alfred/core/checkpoint.py +271 -0
- moai_adk/templates/.claude/hooks/alfred/core/context.py +110 -0
- moai_adk/templates/.claude/hooks/alfred/core/project.py +284 -0
- moai_adk/templates/.claude/hooks/alfred/core/tags.py +244 -0
- moai_adk/templates/.claude/hooks/alfred/handlers/__init__.py +21 -0
- moai_adk/templates/.claude/hooks/alfred/handlers/notification.py +25 -0
- moai_adk/templates/.claude/hooks/alfred/handlers/session.py +80 -0
- moai_adk/templates/.claude/hooks/alfred/handlers/tool.py +71 -0
- moai_adk/templates/.claude/hooks/alfred/handlers/user.py +41 -0
- moai_adk/templates/.claude/output-styles/alfred/agentic-coding.md +635 -0
- moai_adk/templates/.claude/output-styles/alfred/moai-adk-learning.md +691 -0
- moai_adk/templates/.claude/output-styles/alfred/study-with-alfred.md +469 -0
- moai_adk/templates/.claude/settings.json +108 -0
- moai_adk/templates/.moai/project/product.md +45 -5
- moai_adk/templates/.moai/project/structure.md +9 -3
- moai_adk/templates/.moai/project/tech.md +9 -3
- moai_adk/templates/CLAUDE.md +727 -0
- {moai_adk-0.3.6.dist-info → moai_adk-0.3.9.dist-info}/METADATA +112 -194
- {moai_adk-0.3.6.dist-info → moai_adk-0.3.9.dist-info}/RECORD +41 -9
- {moai_adk-0.3.6.dist-info → moai_adk-0.3.9.dist-info}/WHEEL +0 -0
- {moai_adk-0.3.6.dist-info → moai_adk-0.3.9.dist-info}/entry_points.txt +0 -0
- {moai_adk-0.3.6.dist-info → moai_adk-0.3.9.dist-info}/licenses/LICENSE +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: moai-adk
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.9
|
|
4
4
|
Summary: MoAI Agentic Development Kit - SPEC-First TDD with Alfred SuperAgent
|
|
5
5
|
Project-URL: Homepage, https://github.com/modu-ai/moai-adk
|
|
6
6
|
Project-URL: Repository, https://github.com/modu-ai/moai-adk
|
|
@@ -57,44 +57,43 @@ Description-Content-Type: text/markdown
|
|
|
57
57
|
|
|
58
58
|
## 목차
|
|
59
59
|
|
|
60
|
-
- [이런 문제 겪고 계신가요?](
|
|
61
|
-
- [Meet Alfred](
|
|
62
|
-
- [5분 만에 이해하는 핵심 개념](
|
|
63
|
-
- [Quick Start](
|
|
64
|
-
- [첫 번째 프로젝트: Todo API](
|
|
65
|
-
- [3단계 워크플로우](
|
|
66
|
-
- [실전 시나리오](
|
|
67
|
-
- [AI 모델 선택 가이드](
|
|
68
|
-
- [CLI Reference](
|
|
69
|
-
- [출력 스타일](
|
|
70
|
-
- [언어 지원](
|
|
71
|
-
- [TRUST 5원칙](
|
|
72
|
-
- [
|
|
73
|
-
- [
|
|
74
|
-
- [문제 해결](#-문제-해결)
|
|
60
|
+
- [이런 문제 겪고 계신가요?](#이런-문제-겪고-계신가요)
|
|
61
|
+
- [Meet Alfred](#meet-alfred---12개-ai-에이전트-팀)
|
|
62
|
+
- [5분 만에 이해하는 핵심 개념](#5분-만에-이해하는-핵심-개념)
|
|
63
|
+
- [Quick Start](#quick-start-3분-실전)
|
|
64
|
+
- [첫 번째 프로젝트: Todo API](#첫-번째-프로젝트-todo-api-만들기)
|
|
65
|
+
- [3단계 워크플로우](#3단계-워크플로우)
|
|
66
|
+
- [실전 시나리오](#실전-시나리오)
|
|
67
|
+
- [AI 모델 선택 가이드](#ai-모델-선택-가이드)
|
|
68
|
+
- [CLI Reference](#cli-reference)
|
|
69
|
+
- [출력 스타일](#alfreds-output-styles)
|
|
70
|
+
- [언어 지원](#universal-language-support)
|
|
71
|
+
- [TRUST 5원칙](#trust-5원칙)
|
|
72
|
+
- [FAQ](#faq)
|
|
73
|
+
- [문제 해결](#문제-해결)
|
|
75
74
|
|
|
76
75
|
---
|
|
77
76
|
|
|
78
|
-
##
|
|
77
|
+
## ■ 이런 문제 겪고 계신가요?
|
|
79
78
|
|
|
80
79
|
### AI 코딩의 현실
|
|
81
80
|
|
|
82
|
-
-
|
|
81
|
+
- **"AI가 만든 코드, 나중에 유지보수 불가능..."**
|
|
83
82
|
- 같은 기능을 매번 다르게 구현
|
|
84
83
|
- 코드 스타일이 파일마다 제각각
|
|
85
84
|
- 테스트 코드는 없고 버그는 많음
|
|
86
85
|
|
|
87
|
-
-
|
|
86
|
+
- **"같은 질문 반복해도 매번 다른 답변..."**
|
|
88
87
|
- 이전 대화 내용을 기억하지 못함
|
|
89
88
|
- 일관된 아키텍처를 유지하기 어려움
|
|
90
89
|
- 프로젝트 전체 맥락을 놓침
|
|
91
90
|
|
|
92
|
-
-
|
|
91
|
+
- **"코드는 많은데 문서는 없고, 추적 불가능..."**
|
|
93
92
|
- 왜 이렇게 만들었는지 알 수 없음
|
|
94
93
|
- 코드 변경 이력 추적 불가
|
|
95
94
|
- 요구사항과 코드가 따로 놈
|
|
96
95
|
|
|
97
|
-
-
|
|
96
|
+
- **"프롬프트 엔지니어링에만 하루가 다 갔어요..."**
|
|
98
97
|
- 완벽한 프롬프트를 찾기 위해 수십 번 시도
|
|
99
98
|
- AI에게 매번 같은 제약사항을 반복 설명
|
|
100
99
|
- 코드 품질을 수동으로 검증
|
|
@@ -102,42 +101,44 @@ Description-Content-Type: text/markdown
|
|
|
102
101
|
### MoAI-ADK는 이렇게 해결합니다
|
|
103
102
|
|
|
104
103
|
```mermaid
|
|
104
|
+
%%{init: {'theme':'neutral'}}%%
|
|
105
105
|
flowchart TD
|
|
106
|
-
Problem["
|
|
107
|
-
Solution --> SPEC["
|
|
108
|
-
Solution --> TDD["
|
|
109
|
-
Solution --> TAG["
|
|
106
|
+
Problem["■ 문제: 플랑켄슈타인 코드"] --> Solution["MoAI-ADK"]
|
|
107
|
+
Solution --> SPEC["SPEC 우선<br/>명세 없으면 코드 없다"]
|
|
108
|
+
Solution --> TDD["TDD 강제<br/>테스트 없으면 구현 없다"]
|
|
109
|
+
Solution --> TAG["@TAG 추적<br/>모든 코드가 SPEC과 연결"]
|
|
110
110
|
|
|
111
|
-
SPEC --> Result["
|
|
111
|
+
SPEC --> Result["결과"]
|
|
112
112
|
TDD --> Result
|
|
113
113
|
TAG --> Result
|
|
114
114
|
|
|
115
|
-
Result --> Quality["
|
|
116
|
-
Result --> Track["
|
|
117
|
-
Result --> Maintain["
|
|
115
|
+
Result --> Quality["높은 품질<br/>TRUST 5원칙 자동 검증"]
|
|
116
|
+
Result --> Track["완벽한 추적성<br/>SPEC→TEST→CODE→DOC"]
|
|
117
|
+
Result --> Maintain["쉬운 유지보수<br/>코드 변경 이력 완전 기록"]
|
|
118
118
|
```
|
|
119
119
|
|
|
120
120
|
---
|
|
121
121
|
|
|
122
|
-
##
|
|
122
|
+
## ■ Meet Alfred - AI 에이전트 팀
|
|
123
123
|
|
|
124
|
-
안녕하세요, 모두의AI SuperAgent
|
|
124
|
+
안녕하세요, 모두의AI SuperAgent **Alfred**입니다!
|
|
125
125
|
|
|
126
126
|

|
|
127
127
|
|
|
128
|
-
저는 MoAI-ADK의 SuperAgent이자 중앙 오케스트레이터 AI입니다. **
|
|
128
|
+
저는 MoAI-ADK의 SuperAgent이자 중앙 오케스트레이터 AI입니다. **AI 에이전트 팀**(Alfred + 다수 전문 에이전트)을 조율하여 Claude Code 환경에서 완벽한 개발 지원을 제공합니다.
|
|
129
129
|
|
|
130
|
-
###
|
|
130
|
+
### ▶ 흥미로운 사실: AI가 만든 AI 개발 도구
|
|
131
131
|
|
|
132
132
|
이 프로젝트의 모든 코드는 **100% AI에 의해 작성**되었습니다.
|
|
133
133
|
|
|
134
134
|
- **AI 협업 설계**: GPT-5 Pro와 Claude 4.1 Opus가 함께 아키텍처를 설계
|
|
135
|
-
- **Agentic Coding 적용**:
|
|
135
|
+
- **Agentic Coding 적용**: AI 에이전트 팀(Alfred + 다수 전문 에이전트)이 자율적으로 SPEC 작성, TDD 구현, 문서 동기화 수행
|
|
136
136
|
- **투명성**: 완벽하지 않은 부분을 숨기지 않고, 커뮤니티와 함께 개선해나가는 오픈소스
|
|
137
137
|
|
|
138
138
|
### Alfred가 제공하는 4가지 핵심 가치
|
|
139
139
|
|
|
140
140
|
```mermaid
|
|
141
|
+
%%{init: {'theme':'neutral'}}%%
|
|
141
142
|
mindmap
|
|
142
143
|
root((Alfred))
|
|
143
144
|
일관성
|
|
@@ -158,36 +159,37 @@ mindmap
|
|
|
158
159
|
모바일 Flutter Swift
|
|
159
160
|
```
|
|
160
161
|
|
|
161
|
-
#### 1
|
|
162
|
+
#### 1. 일관성 (Consistency)
|
|
162
163
|
|
|
163
164
|
**SPEC → TDD → Sync** 3단계 파이프라인으로 플랑켄슈타인 코드 방지
|
|
164
165
|
|
|
165
|
-
#### 2
|
|
166
|
+
#### 2. 품질 (Quality)
|
|
166
167
|
|
|
167
168
|
**TRUST 5원칙** 자동 적용 및 검증 (Test First, Readable, Unified, Secured, Trackable)
|
|
168
169
|
|
|
169
|
-
#### 3
|
|
170
|
+
#### 3. 추적성 (Traceability)
|
|
170
171
|
|
|
171
172
|
**@TAG 시스템**으로 `@SPEC → @TEST → @CODE → @DOC` 완벽 연결
|
|
172
173
|
|
|
173
|
-
#### 4
|
|
174
|
+
#### 4. 범용성 (Universality)
|
|
174
175
|
|
|
175
176
|
**모든 주요 언어 지원** (Python, TypeScript, Java, Go, Rust, Dart, Swift, Kotlin 등)
|
|
176
177
|
|
|
177
178
|
---
|
|
178
179
|
|
|
179
|
-
##
|
|
180
|
+
## ■ 5분 만에 이해하는 핵심 개념
|
|
180
181
|
|
|
181
|
-
### 1
|
|
182
|
+
### 1. SPEC-First: 설계도 먼저 그리기
|
|
182
183
|
|
|
183
184
|
**비유**: 집을 짓기 전에 설계도를 그리듯이, 코드를 쓰기 전에 SPEC을 작성합니다.
|
|
184
185
|
|
|
185
186
|
```mermaid
|
|
187
|
+
%%{init: {'theme':'neutral'}}%%
|
|
186
188
|
graph LR
|
|
187
|
-
A["
|
|
188
|
-
B --> C["
|
|
189
|
-
C --> D["
|
|
190
|
-
D --> E["
|
|
189
|
+
A["SPEC 작성<br/>(설계도)"] --> B["RED<br/>(실패하는 테스트)"]
|
|
190
|
+
B --> C["GREEN<br/>(최소 구현)"]
|
|
191
|
+
C --> D["REFACTOR<br/>(품질 개선)"]
|
|
192
|
+
D --> E["SYNC<br/>(문서화)"]
|
|
191
193
|
```
|
|
192
194
|
|
|
193
195
|
#### EARS 구문으로 명세 작성 (실제 예시)
|
|
@@ -229,15 +231,16 @@ graph LR
|
|
|
229
231
|
|
|
230
232
|
---
|
|
231
233
|
|
|
232
|
-
### 2
|
|
234
|
+
### 2. @TAG 추적: 코드와 문서를 실로 엮기
|
|
233
235
|
|
|
234
236
|
**비유**: 책의 색인처럼, 모든 코드를 SPEC과 연결합니다.
|
|
235
237
|
|
|
236
238
|
```mermaid
|
|
239
|
+
%%{init: {'theme':'neutral'}}%%
|
|
237
240
|
graph TD
|
|
238
|
-
SPEC["
|
|
239
|
-
TEST --> CODE["
|
|
240
|
-
CODE --> DOC["
|
|
241
|
+
SPEC["@SPEC:AUTH-001<br/>.moai/specs/SPEC-AUTH-001/spec.md"] --> TEST["@TEST:AUTH-001<br/>tests/test_auth_login.py"]
|
|
242
|
+
TEST --> CODE["@CODE:AUTH-001<br/>src/auth/service.py"]
|
|
243
|
+
CODE --> DOC["@DOC:AUTH-001<br/>docs/api/auth.md"]
|
|
241
244
|
```
|
|
242
245
|
|
|
243
246
|
#### 실제 코드 예시
|
|
@@ -282,11 +285,12 @@ rg '@SPEC:AUTH-001' -n .moai/specs/ # SPEC 있는지 확인
|
|
|
282
285
|
|
|
283
286
|
---
|
|
284
287
|
|
|
285
|
-
### 3
|
|
288
|
+
### 3. TRUST 품질: 5가지 원칙으로 코드 품질 보장
|
|
286
289
|
|
|
287
290
|
**비유**: 자동차 안전검사처럼, 코드도 5가지 기준으로 검사합니다.
|
|
288
291
|
|
|
289
292
|
```mermaid
|
|
293
|
+
%%{init: {'theme':'neutral'}}%%
|
|
290
294
|
mindmap
|
|
291
295
|
root((TRUST 5원칙))
|
|
292
296
|
Test First
|
|
@@ -362,18 +366,18 @@ def create_user_with_profile_and_settings_and_notifications(
|
|
|
362
366
|
|
|
363
367
|
---
|
|
364
368
|
|
|
365
|
-
##
|
|
369
|
+
## ■ Quick Start (3분 실전)
|
|
366
370
|
|
|
367
|
-
###
|
|
371
|
+
### ▶ 준비물
|
|
368
372
|
|
|
369
373
|
- ✅ Python 3.13+
|
|
370
374
|
- ✅ **uv** (필수 - pip보다 10-100배 빠름)
|
|
371
375
|
- ✅ Claude Code 실행 중
|
|
372
376
|
- ✅ Git 설치 (선택사항)
|
|
373
377
|
|
|
374
|
-
###
|
|
378
|
+
### ▶ 3단계로 시작하기
|
|
375
379
|
|
|
376
|
-
#### 1
|
|
380
|
+
#### 1. uv 설치 (필수)
|
|
377
381
|
|
|
378
382
|
**uv는 pip보다 10-100배 빠른 Python 패키지 관리자입니다** (Rust 기반).
|
|
379
383
|
|
|
@@ -388,7 +392,7 @@ powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
|
|
|
388
392
|
uv --version
|
|
389
393
|
```
|
|
390
394
|
|
|
391
|
-
#### 2
|
|
395
|
+
#### 2. moai-adk 설치 (10초)
|
|
392
396
|
|
|
393
397
|
```bash
|
|
394
398
|
uv pip install moai-adk
|
|
@@ -397,7 +401,7 @@ uv pip install moai-adk
|
|
|
397
401
|
moai-adk --version
|
|
398
402
|
```
|
|
399
403
|
|
|
400
|
-
#### 3
|
|
404
|
+
#### 3. 프로젝트 시작 (1분)
|
|
401
405
|
|
|
402
406
|
**새 프로젝트:**
|
|
403
407
|
|
|
@@ -429,7 +433,7 @@ claude
|
|
|
429
433
|
/alfred:3-sync
|
|
430
434
|
```
|
|
431
435
|
|
|
432
|
-
###
|
|
436
|
+
### ▶ 완료!
|
|
433
437
|
|
|
434
438
|
**생성된 것들:**
|
|
435
439
|
|
|
@@ -441,7 +445,7 @@ claude
|
|
|
441
445
|
|
|
442
446
|
---
|
|
443
447
|
|
|
444
|
-
##
|
|
448
|
+
## ■ 첫 번째 프로젝트: Todo API 만들기
|
|
445
449
|
|
|
446
450
|
### Step 1: SPEC 작성 (5분)
|
|
447
451
|
|
|
@@ -498,6 +502,7 @@ priority: high
|
|
|
498
502
|
**Alfred의 3단계 TDD 프로세스**:
|
|
499
503
|
|
|
500
504
|
```mermaid
|
|
505
|
+
%%{init: {'theme':'neutral'}}%%
|
|
501
506
|
stateDiagram-v2
|
|
502
507
|
[*] --> Phase1: SPEC 분석
|
|
503
508
|
Phase1 --> Phase2: 계획 수립
|
|
@@ -510,25 +515,25 @@ stateDiagram-v2
|
|
|
510
515
|
Phase3 --> [*]: 완료
|
|
511
516
|
|
|
512
517
|
note right of RED
|
|
513
|
-
|
|
518
|
+
RED
|
|
514
519
|
- 실패하는 테스트 작성
|
|
515
520
|
- @TEST:TODO-001 TAG 추가
|
|
516
521
|
end note
|
|
517
522
|
|
|
518
523
|
note right of GREEN
|
|
519
|
-
|
|
524
|
+
GREEN
|
|
520
525
|
- 최소 구현으로 테스트 통과
|
|
521
526
|
- @CODE:TODO-001 TAG 추가
|
|
522
527
|
end note
|
|
523
528
|
|
|
524
529
|
note right of REFACTOR
|
|
525
|
-
|
|
530
|
+
REFACTOR
|
|
526
531
|
- 코드 품질 개선
|
|
527
532
|
- 중복 제거, 가독성 향상
|
|
528
533
|
end note
|
|
529
534
|
|
|
530
535
|
note right of Phase3
|
|
531
|
-
|
|
536
|
+
품질 게이트
|
|
532
537
|
- TRUST 5원칙 검증
|
|
533
538
|
- 테스트 커버리지 확인
|
|
534
539
|
end note
|
|
@@ -598,11 +603,10 @@ src/todo/routes.py # @CODE:TODO-001:API
|
|
|
598
603
|
"created_at": "2025-10-17T10:00:00Z"
|
|
599
604
|
}
|
|
600
605
|
```
|
|
601
|
-
```
|
|
602
606
|
|
|
603
607
|
---
|
|
604
608
|
|
|
605
|
-
###
|
|
609
|
+
### ▶ 완료! 15분 만에 Todo API 완성
|
|
606
610
|
|
|
607
611
|
**생성된 것들**:
|
|
608
612
|
|
|
@@ -627,20 +631,21 @@ cat docs/api/todo.md
|
|
|
627
631
|
|
|
628
632
|
---
|
|
629
633
|
|
|
630
|
-
##
|
|
634
|
+
## ■ 3단계 워크플로우
|
|
631
635
|
|
|
632
636
|
Alfred의 핵심은 **체계적인 3단계 워크플로우**입니다.
|
|
633
637
|
|
|
634
638
|
```mermaid
|
|
639
|
+
%%{init: {'theme':'neutral'}}%%
|
|
635
640
|
graph TD
|
|
636
|
-
Start([사용자 요청]) --> Spec[1
|
|
637
|
-
Spec --> Build[2
|
|
638
|
-
Build --> Sync[3
|
|
641
|
+
Start([사용자 요청]) --> Spec[1. SPEC 작성<br/>/alfred:1-spec]
|
|
642
|
+
Spec --> Build[2. TDD 구현<br/>/alfred:2-build]
|
|
643
|
+
Build --> Sync[3. 문서 동기화<br/>/alfred:3-sync]
|
|
639
644
|
Sync --> End([완료])
|
|
640
645
|
Sync -.-> Spec
|
|
641
646
|
```
|
|
642
647
|
|
|
643
|
-
### 1
|
|
648
|
+
### 1. SPEC - 명세 작성
|
|
644
649
|
|
|
645
650
|
**명령어**: `/alfred:1-spec "JWT 기반 사용자 로그인 API"`
|
|
646
651
|
|
|
@@ -658,7 +663,7 @@ graph TD
|
|
|
658
663
|
- `.moai/specs/SPEC-AUTH-001/plan.md`
|
|
659
664
|
- `.moai/specs/SPEC-AUTH-001/acceptance.md`
|
|
660
665
|
|
|
661
|
-
### 2
|
|
666
|
+
### 2. BUILD - TDD 구현
|
|
662
667
|
|
|
663
668
|
**명령어**: `/alfred:2-build AUTH-001`
|
|
664
669
|
|
|
@@ -679,7 +684,7 @@ graph TD
|
|
|
679
684
|
- `@TEST:AUTH-001` → `@CODE:AUTH-001` TAG 체인
|
|
680
685
|
- 품질 검증 리포트
|
|
681
686
|
|
|
682
|
-
### 3
|
|
687
|
+
### 3. SYNC - 문서 동기화
|
|
683
688
|
|
|
684
689
|
**명령어**: `/alfred:3-sync`
|
|
685
690
|
|
|
@@ -699,7 +704,7 @@ graph TD
|
|
|
699
704
|
|
|
700
705
|
---
|
|
701
706
|
|
|
702
|
-
##
|
|
707
|
+
## ■ 실전 시나리오
|
|
703
708
|
|
|
704
709
|
### 시나리오 1: 긴급 버그 수정 (Hotfix)
|
|
705
710
|
|
|
@@ -766,23 +771,7 @@ git pull origin develop
|
|
|
766
771
|
|
|
767
772
|
---
|
|
768
773
|
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
```bash
|
|
772
|
-
# 표준 방식 (권장):
|
|
773
|
-
git checkout develop
|
|
774
|
-
gh pr create --base main --head develop --title "Release v1.0.0"
|
|
775
|
-
|
|
776
|
-
# 직접 push 방식 (허용):
|
|
777
|
-
git checkout develop
|
|
778
|
-
git push origin main # ⚠️ Advisory 경고 표시되지만 진행됨
|
|
779
|
-
git tag -a v1.0.0 -m "Release v1.0.0"
|
|
780
|
-
git push origin v1.0.0
|
|
781
|
-
```
|
|
782
|
-
|
|
783
|
-
---
|
|
784
|
-
|
|
785
|
-
## 🧠 AI 모델 선택 가이드
|
|
774
|
+
## ■ AI 모델 선택 가이드
|
|
786
775
|
|
|
787
776
|
MoAI-ADK는 **Haiku 4.5**와 **Sonnet 4.5** 두 가지 AI 모델을 전략적으로 활용하여 **최적의 성능과 비용 효율**을 제공합니다.
|
|
788
777
|
|
|
@@ -802,7 +791,7 @@ Claude Code에서 `/model` 명령어로 전체 세션의 기본 모델을 변경
|
|
|
802
791
|
|
|
803
792
|
Alfred는 **작업 특성**에 따라 각 에이전트에 최적 모델을 할당합니다:
|
|
804
793
|
|
|
805
|
-
####
|
|
794
|
+
#### ▶ Haiku 에이전트 (6개) - 패스트 모드
|
|
806
795
|
|
|
807
796
|
**빠른 응답이 필요한 반복 작업 및 패턴 매칭**
|
|
808
797
|
|
|
@@ -817,11 +806,11 @@ Alfred는 **작업 특성**에 따라 각 에이전트에 최적 모델을 할
|
|
|
817
806
|
|
|
818
807
|
**장점**:
|
|
819
808
|
|
|
820
|
-
-
|
|
821
|
-
-
|
|
822
|
-
-
|
|
809
|
+
- **속도 2~5배 향상**: 실시간 응답 (수 초 → 1초 이내)
|
|
810
|
+
- **비용 67% 절감**: 반복 작업이 많은 프로젝트에 효과적
|
|
811
|
+
- **높은 정확도**: 패턴화된 작업에서 Sonnet과 동등한 품질
|
|
823
812
|
|
|
824
|
-
####
|
|
813
|
+
#### ▶ Sonnet 에이전트 (6개) - 스마트 모드
|
|
825
814
|
|
|
826
815
|
**복잡한 판단과 창의적 설계가 필요한 작업**
|
|
827
816
|
|
|
@@ -836,20 +825,20 @@ Alfred는 **작업 특성**에 따라 각 에이전트에 최적 모델을 할
|
|
|
836
825
|
|
|
837
826
|
**장점**:
|
|
838
827
|
|
|
839
|
-
-
|
|
840
|
-
-
|
|
841
|
-
-
|
|
828
|
+
- **높은 품질**: 복잡한 코드 품질 보장
|
|
829
|
+
- **깊은 이해**: 맥락 파악 및 창의적 해결책 제시
|
|
830
|
+
- **정확한 판단**: 아키텍처 결정, 설계 선택
|
|
842
831
|
|
|
843
832
|
### 사용 시나리오별 권장 모델
|
|
844
833
|
|
|
845
|
-
| 시나리오
|
|
846
|
-
|
|
|
847
|
-
|
|
|
848
|
-
|
|
|
849
|
-
|
|
|
850
|
-
|
|
|
851
|
-
|
|
|
852
|
-
|
|
|
834
|
+
| 시나리오 | 권장 모델 | 이유 |
|
|
835
|
+
| ------------------ | --------- | ----------------------------- |
|
|
836
|
+
| **새 프로젝트 시작** | Sonnet | SPEC 설계, 아키텍처 결정 필요 |
|
|
837
|
+
| **반복 개발** | Haiku | 이미 정해진 패턴 반복 구현 |
|
|
838
|
+
| **버그 수정** | Sonnet | 원인 분석 및 해결 방법 도출 |
|
|
839
|
+
| **문서 작성** | Haiku | Living Document 동기화 |
|
|
840
|
+
| **코드 탐색** | Haiku | 파일 검색, TAG 조회 |
|
|
841
|
+
| **리팩토링** | Sonnet | 구조 개선, 복잡한 변경 |
|
|
853
842
|
|
|
854
843
|
### 모델 전환 팁
|
|
855
844
|
|
|
@@ -873,7 +862,7 @@ Alfred는 **작업 특성**에 따라 각 에이전트에 최적 모델을 할
|
|
|
873
862
|
|
|
874
863
|
---
|
|
875
864
|
|
|
876
|
-
##
|
|
865
|
+
## ■ CLI Reference
|
|
877
866
|
|
|
878
867
|
### 프로젝트 관리
|
|
879
868
|
|
|
@@ -975,13 +964,13 @@ moai-adk --help
|
|
|
975
964
|
|
|
976
965
|
---
|
|
977
966
|
|
|
978
|
-
##
|
|
967
|
+
## ■ Alfred's Output Styles
|
|
979
968
|
|
|
980
969
|
Alfred는 작업 특성과 사용자 경험 수준에 따라 **3가지 출력 스타일**을 제공합니다. Claude Code에서 `/output-style` 명령어로 언제든지 전환할 수 있습니다.
|
|
981
970
|
|
|
982
971
|
### 3가지 표준 스타일
|
|
983
972
|
|
|
984
|
-
#### 1. Agentic Coding (기본값)
|
|
973
|
+
#### 1. Agentic Coding (기본값)
|
|
985
974
|
|
|
986
975
|
**대상**: 실무 개발자, 팀 리더, 아키텍트
|
|
987
976
|
|
|
@@ -989,12 +978,12 @@ Alfred SuperAgent가 11개 전문 에이전트를 조율하여 빠른 개발과
|
|
|
989
978
|
|
|
990
979
|
**두 가지 작업 방식**:
|
|
991
980
|
|
|
992
|
-
-
|
|
981
|
+
- **Fast Mode (기본)**: 빠른 개발, 구현 위주 작업
|
|
993
982
|
- SPEC → TDD → SYNC 자동화
|
|
994
983
|
- 간결한 기술 커뮤니케이션
|
|
995
984
|
- 최소 설명, 최대 효율
|
|
996
985
|
- TRUST 5원칙 자동 검증
|
|
997
|
-
-
|
|
986
|
+
- **Collab Mode (자동 전환)**: "협업", "브레인스토밍", "설계", "리뷰" 키워드 감지 시
|
|
998
987
|
- 질문 기반 대화
|
|
999
988
|
- 트레이드오프 분석
|
|
1000
989
|
- 아키텍처 다이어그램 제공
|
|
@@ -1015,7 +1004,7 @@ Alfred SuperAgent가 11개 전문 에이전트를 조율하여 빠른 개발과
|
|
|
1015
1004
|
|
|
1016
1005
|
---
|
|
1017
1006
|
|
|
1018
|
-
#### 2. MoAI ADK Learning
|
|
1007
|
+
#### 2. MoAI ADK Learning
|
|
1019
1008
|
|
|
1020
1009
|
**대상**: MoAI-ADK를 처음 사용하는 개발자
|
|
1021
1010
|
|
|
@@ -1049,7 +1038,7 @@ MoAI-ADK의 핵심 개념과 3단계 워크플로우를 친절하게 설명하
|
|
|
1049
1038
|
|
|
1050
1039
|
---
|
|
1051
1040
|
|
|
1052
|
-
#### 3. Study with Alfred
|
|
1041
|
+
#### 3. Study with Alfred
|
|
1053
1042
|
|
|
1054
1043
|
**대상**: 새로운 기술/언어/프레임워크를 배우려는 개발자
|
|
1055
1044
|
|
|
@@ -1098,11 +1087,11 @@ Alfred가 함께 배우는 친구처럼 새로운 기술을 쉽게 설명하고,
|
|
|
1098
1087
|
|
|
1099
1088
|
| 상황 | 권장 스타일 | 이유 |
|
|
1100
1089
|
| ------------------- | ----------------------- | -------------------------------- |
|
|
1101
|
-
|
|
|
1102
|
-
|
|
|
1103
|
-
|
|
|
1104
|
-
|
|
|
1105
|
-
|
|
|
1090
|
+
| **실무 개발** | Agentic Coding | Fast/Collab 자동 전환, 효율 중심 |
|
|
1091
|
+
| **MoAI-ADK 학습** | MoAI ADK Learning | SPEC-First, TAG, TRUST 개념 이해 |
|
|
1092
|
+
| **새 기술 학습** | Study with Alfred | What-Why-How-Practice 4단계 |
|
|
1093
|
+
| **반복 작업** | Agentic Coding (Fast) | 최소 설명, 빠른 실행 |
|
|
1094
|
+
| **팀 협업** | Agentic Coding (Collab) | 트레이드오프 분석, 브레인스토밍 |
|
|
1106
1095
|
|
|
1107
1096
|
**스타일 전환 예시**:
|
|
1108
1097
|
|
|
@@ -1121,7 +1110,7 @@ Alfred가 함께 배우는 친구처럼 새로운 기술을 쉽게 설명하고,
|
|
|
1121
1110
|
|
|
1122
1111
|
---
|
|
1123
1112
|
|
|
1124
|
-
##
|
|
1113
|
+
## ■ Universal Language Support
|
|
1125
1114
|
|
|
1126
1115
|
Alfred는 **17개 주요 프로그래밍 언어**를 지원하며, 각 언어에 최적화된 도구 체인을 자동으로 선택합니다.
|
|
1127
1116
|
|
|
@@ -1234,7 +1223,7 @@ Alfred는 각 디렉토리의 언어를 자동 감지하고 적절한 도구 체
|
|
|
1234
1223
|
|
|
1235
1224
|
---
|
|
1236
1225
|
|
|
1237
|
-
##
|
|
1226
|
+
## ■ TRUST 5원칙
|
|
1238
1227
|
|
|
1239
1228
|
Alfred가 모든 코드에 자동으로 적용하는 품질 기준입니다.
|
|
1240
1229
|
|
|
@@ -1287,78 +1276,7 @@ Alfred가 모든 코드에 자동으로 적용하는 품질 기준입니다.
|
|
|
1287
1276
|
|
|
1288
1277
|
---
|
|
1289
1278
|
|
|
1290
|
-
##
|
|
1291
|
-
|
|
1292
|
-
### 리팩토링 규칙: 3회 반복 규칙
|
|
1293
|
-
|
|
1294
|
-
**원칙**: 동일한 패턴이 3번째 반복될 때 리팩토링을 고려합니다.
|
|
1295
|
-
|
|
1296
|
-
```python
|
|
1297
|
-
# ❌ 반복 1회: 복사-붙여넣기 OK
|
|
1298
|
-
def process_user_data(user):
|
|
1299
|
-
if not user.is_active:
|
|
1300
|
-
return None
|
|
1301
|
-
return user.data
|
|
1302
|
-
|
|
1303
|
-
# ❌ 반복 2회: 복사-붙여넣기 OK (하지만 주의)
|
|
1304
|
-
def process_admin_data(admin):
|
|
1305
|
-
if not admin.is_active:
|
|
1306
|
-
return None
|
|
1307
|
-
return admin.data
|
|
1308
|
-
|
|
1309
|
-
# ✅ 반복 3회: 리팩토링 필수!
|
|
1310
|
-
def process_data(entity):
|
|
1311
|
-
"""공통 로직 추출"""
|
|
1312
|
-
if not entity.is_active:
|
|
1313
|
-
return None
|
|
1314
|
-
return entity.data
|
|
1315
|
-
```
|
|
1316
|
-
|
|
1317
|
-
### 변수 역할 참고 (11가지 패턴)
|
|
1318
|
-
|
|
1319
|
-
**변수 명명에 도움이 되는 역할 분류**:
|
|
1320
|
-
|
|
1321
|
-
| 역할 | 설명 | 예시 |
|
|
1322
|
-
| ------------------ | ----------------------- | ------------------------------------- |
|
|
1323
|
-
| Fixed Value | 초기화 후 불변 | `const MAX_SIZE = 100` |
|
|
1324
|
-
| Stepper | 순차적으로 변화 | `for (let i = 0; i < n; i++)` |
|
|
1325
|
-
| Flag | 불린 상태 표시 | `let isValid = true` |
|
|
1326
|
-
| Walker | 자료구조 순회 | `while (node) { node = node.next; }` |
|
|
1327
|
-
| Most Recent Holder | 가장 최근 값 보관 | `let lastError` |
|
|
1328
|
-
| Most Wanted Holder | 최적/최대값 보관 | `let bestScore = -Infinity` |
|
|
1329
|
-
| Gatherer | 누적기 | `sum += value` |
|
|
1330
|
-
| Container | 여러 값 저장 | `const list = []` |
|
|
1331
|
-
| Follower | 다른 변수의 이전 값 | `prev = curr; curr = next;` |
|
|
1332
|
-
| Organizer | 데이터 재구성 | `const sorted = array.sort()` |
|
|
1333
|
-
| Temporary | 임시 저장 | `const temp = a; a = b; b = temp;` |
|
|
1334
|
-
|
|
1335
|
-
**실제 적용 예시**:
|
|
1336
|
-
|
|
1337
|
-
```python
|
|
1338
|
-
# ✅ 좋은 예: 역할이 명확한 변수명
|
|
1339
|
-
def find_max_score(scores: List[int]) -> int:
|
|
1340
|
-
"""최고 점수 찾기"""
|
|
1341
|
-
best_score = -float('inf') # Most Wanted Holder
|
|
1342
|
-
|
|
1343
|
-
for score in scores: # Stepper (implicit)
|
|
1344
|
-
if score > best_score:
|
|
1345
|
-
best_score = score
|
|
1346
|
-
|
|
1347
|
-
return best_score
|
|
1348
|
-
|
|
1349
|
-
|
|
1350
|
-
# ❌ 나쁜 예: 역할이 불명확한 변수명
|
|
1351
|
-
def find_max(data):
|
|
1352
|
-
x = -999999
|
|
1353
|
-
for d in data:
|
|
1354
|
-
if d > x:
|
|
1355
|
-
x = d
|
|
1356
|
-
return x
|
|
1357
|
-
```
|
|
1358
|
-
|
|
1359
|
-
---
|
|
1360
|
-
|
|
1361
|
-
## ⬆️ 업그레이드 가이드
|
|
1279
|
+
## ■ 업그레이드 가이드
|
|
1362
1280
|
|
|
1363
1281
|
### 1단계: 패키지 업데이트
|
|
1364
1282
|
|
|
@@ -1421,7 +1339,7 @@ Running system diagnostics...
|
|
|
1421
1339
|
|
|
1422
1340
|
---
|
|
1423
1341
|
|
|
1424
|
-
##
|
|
1342
|
+
## ■ FAQ
|
|
1425
1343
|
|
|
1426
1344
|
### Q1: MoAI-ADK는 어떤 프로젝트에 적합한가요?
|
|
1427
1345
|
|
|
@@ -1501,7 +1419,7 @@ Running system diagnostics...
|
|
|
1501
1419
|
|
|
1502
1420
|
---
|
|
1503
1421
|
|
|
1504
|
-
##
|
|
1422
|
+
## ■ 문제 해결
|
|
1505
1423
|
|
|
1506
1424
|
### 설치 문제
|
|
1507
1425
|
|
|
@@ -1614,7 +1532,7 @@ rg "@SPEC:" -n .moai/specs/
|
|
|
1614
1532
|
|
|
1615
1533
|
---
|
|
1616
1534
|
|
|
1617
|
-
##
|
|
1535
|
+
## ■ 문서 및 지원
|
|
1618
1536
|
|
|
1619
1537
|
### 공식 문서
|
|
1620
1538
|
|
|
@@ -1644,7 +1562,7 @@ MIT License - 자유롭게 사용하실 수 있습니다.
|
|
|
1644
1562
|
|
|
1645
1563
|
---
|
|
1646
1564
|
|
|
1647
|
-
##
|
|
1565
|
+
## ■ 감사의 말
|
|
1648
1566
|
|
|
1649
1567
|
MoAI-ADK는 다음 프로젝트와 커뮤니티의 도움으로 만들어졌습니다:
|
|
1650
1568
|
|