@su-record/vibe 2.4.1 → 2.4.3
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/.claude/settings.json +13 -0
- package/.claude/settings.local.json +1 -8
- package/README.md +95 -748
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +18 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/tools/analytics/index.d.ts +5 -0
- package/dist/tools/analytics/index.d.ts.map +1 -0
- package/dist/tools/analytics/index.js +5 -0
- package/dist/tools/analytics/index.js.map +1 -0
- package/dist/tools/convention/index.d.ts +10 -0
- package/dist/tools/convention/index.d.ts.map +1 -0
- package/dist/tools/convention/index.js +10 -0
- package/dist/tools/convention/index.js.map +1 -0
- package/dist/tools/memory/index.d.ts +19 -0
- package/dist/tools/memory/index.d.ts.map +1 -0
- package/dist/tools/memory/index.js +19 -0
- package/dist/tools/memory/index.js.map +1 -0
- package/dist/tools/planning/index.d.ts +8 -0
- package/dist/tools/planning/index.d.ts.map +1 -0
- package/dist/tools/planning/index.js +8 -0
- package/dist/tools/planning/index.js.map +1 -0
- package/dist/tools/prompt/index.d.ts +7 -0
- package/dist/tools/prompt/index.d.ts.map +1 -0
- package/dist/tools/prompt/index.js +7 -0
- package/dist/tools/prompt/index.js.map +1 -0
- package/dist/tools/reasoning/index.d.ts +5 -0
- package/dist/tools/reasoning/index.d.ts.map +1 -0
- package/dist/tools/reasoning/index.js +5 -0
- package/dist/tools/reasoning/index.js.map +1 -0
- package/dist/tools/semantic/index.d.ts +7 -0
- package/dist/tools/semantic/index.d.ts.map +1 -0
- package/dist/tools/semantic/index.js +7 -0
- package/dist/tools/semantic/index.js.map +1 -0
- package/dist/tools/thinking/index.d.ts +10 -0
- package/dist/tools/thinking/index.d.ts.map +1 -0
- package/dist/tools/thinking/index.js +10 -0
- package/dist/tools/thinking/index.js.map +1 -0
- package/dist/tools/time/index.d.ts +5 -0
- package/dist/tools/time/index.d.ts.map +1 -0
- package/dist/tools/time/index.js +5 -0
- package/dist/tools/time/index.js.map +1 -0
- package/dist/tools/ui/index.d.ts +5 -0
- package/dist/tools/ui/index.d.ts.map +1 -0
- package/dist/tools/ui/index.js +5 -0
- package/dist/tools/ui/index.js.map +1 -0
- package/hooks/hooks.json +72 -9
- package/package.json +11 -1
- package/skills/context7-usage.md +82 -0
- package/skills/git-worktree.md +3 -0
- package/skills/multi-llm-orchestration.md +97 -0
- package/skills/parallel-research.md +77 -0
- package/skills/priority-todos.md +3 -0
- package/skills/tool-fallback.md +126 -0
- package/skills/vibe-capabilities.md +127 -0
package/README.md
CHANGED
|
@@ -1,561 +1,105 @@
|
|
|
1
1
|
# Vibe
|
|
2
2
|
|
|
3
|
-
**SPEC
|
|
4
|
-
|
|
5
|
-
SPEC 문서 하나로 AI가 바로 구현하고, **시나리오별 자동 검증**으로 품질을 보장하는 프레임워크.
|
|
6
|
-
|
|
7
|
-
> **품질은 사용자가 신경 쓰는 게 아니라, 시스템이 보장하는 것.**
|
|
3
|
+
**SPEC 기반 AI 코딩 프레임워크** (Claude Code 전용)
|
|
8
4
|
|
|
9
5
|
[](https://www.npmjs.com/package/@su-record/vibe)
|
|
10
6
|
[](https://opensource.org/licenses/MIT)
|
|
11
|
-
[](https://github.com/su-record/vibe)
|
|
12
|
-
|
|
13
|
-
---
|
|
14
|
-
|
|
15
|
-
## Features
|
|
16
|
-
|
|
17
|
-
- **🤖 멀티모델 AI 오케스트레이션**: Claude + GPT + Gemini를 서브에이전트로 통합 (OAuth 인증)
|
|
18
|
-
- **시나리오 주도 개발 (SDD)**: 각 시나리오 = 구현 단위 = 검증 단위
|
|
19
|
-
- **BDD 자동 검증**: Given/When/Then 단계별 자동 품질 검증
|
|
20
|
-
- **품질 보장 시스템**: 비개발자도 품질을 신뢰할 수 있는 자동화
|
|
21
|
-
- **ULTRAWORK Mode**: `ulw` 한 단어로 모든 최적화 자동 활성화
|
|
22
|
-
- **Boulder Loop**: 모든 시나리오 완료까지 자동 진행
|
|
23
|
-
- **병렬 서브에이전트**: Haiku 3+ 동시 탐색으로 ~3배 속도 향상
|
|
24
|
-
- **자동 컨텍스트 관리**: 80%+ 시 자동 저장, 세션 자동 복원
|
|
25
|
-
- **36개 내장 도구**: 코드 분석, 품질 검증, 세션 메모리 (MCP 오버헤드 제거)
|
|
26
|
-
|
|
27
|
-
### v2.4.0 신규 기능
|
|
28
|
-
|
|
29
|
-
- **🎭 Agent Orchestrator**: Claude Agent SDK 기반 멀티에이전트 오케스트레이션
|
|
30
|
-
- **🚀 병렬 에이전트 실행**: `@su-record/vibe/orchestrator` 모듈로 프로그래밍 방식 에이전트 제어
|
|
31
|
-
- **📡 Background Agents**: 구현 중 다음 Phase 준비를 위한 백그라운드 에이전트
|
|
32
|
-
|
|
33
|
-
### v2.3.0 기능
|
|
34
|
-
|
|
35
|
-
- **📦 14개 프레임워크별 언어 룰**: Next.js, React, Vue, Nuxt, React Native 등 프레임워크별 최적화 규칙
|
|
36
|
-
- **🔄 모노레포 완벽 지원**: packages/*, apps/* 하위 패키지별 자동 감지 및 룰 적용
|
|
37
|
-
- **🧹 레거시 자동 정리**: `vibe update` 시 이전 버전 파일 자동 정리
|
|
38
|
-
- **⚙️ 명령어 구조 개선**: 7개 core 명령어 + `/vibe.utils` 유틸리티 통합
|
|
39
|
-
|
|
40
|
-
### v2.2.0 기능
|
|
41
|
-
|
|
42
|
-
- **⚡ ULTRAWORK Pipeline**: 구현 중 백그라운드 에이전트로 다음 Phase 준비
|
|
43
|
-
- **🔄 Phase 파이프라이닝**: Phase 간 대기 시간 제거 (~50% 속도 향상)
|
|
44
|
-
|
|
45
|
-
### v2.1.0 기능
|
|
46
|
-
|
|
47
|
-
- **🔍 병렬 코드 리뷰**: 13+ 전문 에이전트가 동시 리뷰 (P1/P2/P3 우선순위)
|
|
48
|
-
- **🎭 E2E 테스트**: Playwright 기반 브라우저 자동화 (시각적 회귀, 비디오 녹화)
|
|
49
|
-
- **📚 지식 복리**: 해결책 자동 문서화 → `.claude/vibe/solutions/`
|
|
50
|
-
- **🔬 병렬 리서치**: 요구사항 확정 후 4개 에이전트 동시 조사
|
|
51
|
-
|
|
52
|
-
---
|
|
53
7
|
|
|
54
|
-
##
|
|
55
|
-
|
|
56
|
-
### CLI 설치
|
|
8
|
+
## 설치
|
|
57
9
|
|
|
58
10
|
```bash
|
|
59
11
|
npm install -g @su-record/vibe
|
|
60
12
|
vibe init
|
|
61
13
|
```
|
|
62
14
|
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
```text
|
|
66
|
-
project/
|
|
67
|
-
├── CLAUDE.md # 프로젝트 컨텍스트
|
|
68
|
-
└── .claude/
|
|
69
|
-
├── commands/ # 슬래시 커맨드 (7개)
|
|
70
|
-
├── agents/ # 서브에이전트
|
|
71
|
-
│ ├── review/ # 리뷰 에이전트 (12개)
|
|
72
|
-
│ └── research/ # 리서치 에이전트 (4개)
|
|
73
|
-
├── settings.json # Hooks 설정
|
|
74
|
-
└── vibe/
|
|
75
|
-
├── rules/ # 코딩 규칙
|
|
76
|
-
├── specs/ # SPEC 문서
|
|
77
|
-
├── features/ # BDD Feature 파일
|
|
78
|
-
└── config.json # 프로젝트 설정
|
|
79
|
-
```
|
|
80
|
-
|
|
81
|
-
---
|
|
82
|
-
|
|
83
|
-
## Quick Start
|
|
84
|
-
|
|
85
|
-
```bash
|
|
86
|
-
# 기존 프로젝트에서
|
|
87
|
-
vibe init
|
|
88
|
-
# → 커맨드/에이전트 설치 + MCP 서버 등록 (context7, vibe-gemini, vibe-gpt)
|
|
89
|
-
|
|
90
|
-
# 새 프로젝트 생성
|
|
91
|
-
vibe init my-project
|
|
92
|
-
cd my-project
|
|
93
|
-
```
|
|
94
|
-
|
|
95
|
-
### 슬래시 커맨드 사용 (Claude Code)
|
|
96
|
-
|
|
97
|
-
```
|
|
98
|
-
/vibe.spec "로그인 기능" # SPEC 작성 (대화형)
|
|
99
|
-
/vibe.run "로그인 기능" # 구현 실행
|
|
100
|
-
/vibe.run "로그인 기능" ultrawork # 🚀 최대 성능 모드 (권장)
|
|
101
|
-
/vibe.verify "로그인 기능" # 검증
|
|
102
|
-
```
|
|
103
|
-
|
|
104
|
-
---
|
|
105
|
-
|
|
106
|
-
## Workflow
|
|
107
|
-
|
|
108
|
-
```
|
|
109
|
-
/vibe.spec "기능명"
|
|
110
|
-
↓ 대화형 요구사항 수집
|
|
111
|
-
↓ 요구사항 확정 후 4개 병렬 리서치
|
|
112
|
-
↓ .claude/vibe/specs/{기능명}.md + .feature
|
|
113
|
-
|
|
114
|
-
/vibe.run "기능명" ultrawork
|
|
115
|
-
↓ 시나리오별 구현 + 즉시 검증 (SDD)
|
|
116
|
-
↓ Scenario 1 → Scenario 2 → ...
|
|
117
|
-
|
|
118
|
-
/vibe.verify "기능명"
|
|
119
|
-
↓ Given/When/Then 단계별 검증
|
|
15
|
+
## 명령어
|
|
120
16
|
|
|
121
|
-
|
|
122
|
-
↓ 13+ 병렬 리뷰 에이전트 (P1/P2/P3)
|
|
123
|
-
|
|
124
|
-
/vibe.analyze "기능명"
|
|
125
|
-
↓ 코드 탐색/구조 분석
|
|
126
|
-
|
|
127
|
-
/vibe.reason "문제"
|
|
128
|
-
↓ 9단계 체계적 추론
|
|
129
|
-
|
|
130
|
-
/vibe.utils --옵션
|
|
131
|
-
↓ 유틸리티 (--ui, --diagram, --e2e, --compound)
|
|
132
|
-
```
|
|
133
|
-
|
|
134
|
-
### 시나리오 주도 개발 (SDD)
|
|
135
|
-
|
|
136
|
-
> **각 시나리오가 곧 구현 단위이자 검증 단위입니다.**
|
|
137
|
-
|
|
138
|
-
```
|
|
139
|
-
Feature 로드 → Scenario 1 [구현→검증] → Scenario 2 [구현→검증] → ... → 품질 리포트
|
|
140
|
-
↓ ↓
|
|
141
|
-
✅ 통과 시 다음 ❌ 실패 시 수정 후 재검증
|
|
142
|
-
```
|
|
143
|
-
|
|
144
|
-
비개발자도 시나리오 통과율만 보면 품질을 알 수 있습니다:
|
|
145
|
-
- ✅ 4/4 시나리오 통과 = 품질 보장
|
|
146
|
-
- 📈 품질 점수: 94/100
|
|
147
|
-
|
|
148
|
-
### Plan Mode vs VIBE
|
|
149
|
-
|
|
150
|
-
> **작업 규모에 따라 적합한 워크플로우를 선택하세요.**
|
|
151
|
-
|
|
152
|
-
| 작업 규모 | 권장 방식 |
|
|
153
|
-
|----------|----------|
|
|
154
|
-
| 간단한 수정 (1-2 파일) | Plan Mode |
|
|
155
|
-
| 복잡한 기능 (3+ 파일, 리서치/검증 필요) | `/vibe.spec` |
|
|
156
|
-
|
|
157
|
-
| 항목 | Plan Mode | VIBE |
|
|
158
|
-
|------|-----------|------|
|
|
159
|
-
| 저장 위치 | `~/.claude/plans/` (전역) | `.claude/vibe/specs/` (프로젝트) |
|
|
160
|
-
| 문서 형식 | 자유 형식 | PTCF 구조 (AI 실행 최적화) |
|
|
161
|
-
| 리서치 | 없음 | 4개 병렬 에이전트 |
|
|
162
|
-
| 검증 | 없음 | `/vibe.verify`로 SPEC 대비 검증 |
|
|
163
|
-
| 히스토리 | 추적 불가 | Git으로 버전 관리 |
|
|
164
|
-
|
|
165
|
-
**워크플로우 연계:**
|
|
166
|
-
- `/vibe.analyze` 또는 `/vibe.review` 후 개발/수정 요청 시 → 사용자에게 워크플로우 선택 질문
|
|
167
|
-
|
|
168
|
-
---
|
|
169
|
-
|
|
170
|
-
## Commands
|
|
171
|
-
|
|
172
|
-
### 터미널 명령어
|
|
17
|
+
### 터미널
|
|
173
18
|
|
|
174
19
|
| 명령어 | 설명 |
|
|
175
20
|
|--------|------|
|
|
176
|
-
| `vibe init` |
|
|
177
|
-
| `vibe
|
|
178
|
-
| `vibe
|
|
179
|
-
| `vibe
|
|
180
|
-
| `vibe
|
|
21
|
+
| `vibe init` | 프로젝트 초기화 |
|
|
22
|
+
| `vibe update` | 설정 업데이트 |
|
|
23
|
+
| `vibe status` | 현재 상태 확인 |
|
|
24
|
+
| `vibe auth gpt` | GPT OAuth 인증 |
|
|
25
|
+
| `vibe auth gemini` | Gemini OAuth 인증 |
|
|
181
26
|
| `vibe help` | 도움말 |
|
|
182
|
-
| `vibe version` | 버전 정보 |
|
|
183
|
-
|
|
184
|
-
### 외부 LLM 연동 (선택적)
|
|
185
|
-
|
|
186
|
-
| 명령어 | 설명 |
|
|
187
|
-
|--------|------|
|
|
188
|
-
| `vibe auth gpt` | GPT OAuth 인증 (ChatGPT Plus/Pro 구독자용, 권장) |
|
|
189
|
-
| `vibe auth gpt --key <key>` | GPT API 키 방식 |
|
|
190
|
-
| `vibe auth gemini` | Gemini OAuth 인증 (구독자용, 권장) |
|
|
191
|
-
| `vibe auth gemini --key <key>` | Gemini API 키 방식 |
|
|
192
|
-
| `vibe status gpt` / `vibe status gemini` | 인증 상태 확인 |
|
|
193
|
-
| `vibe logout gpt` / `vibe logout gemini` | 로그아웃 |
|
|
194
|
-
| `vibe remove gpt` / `vibe remove gemini` | 비활성화 |
|
|
195
27
|
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
### Claude Code 슬래시 커맨드
|
|
28
|
+
### Claude Code
|
|
199
29
|
|
|
200
30
|
| 명령어 | 설명 |
|
|
201
31
|
|--------|------|
|
|
202
|
-
| `/vibe.spec "
|
|
203
|
-
| `/vibe.run "
|
|
204
|
-
| `/vibe.run "
|
|
205
|
-
| `/vibe.verify "
|
|
206
|
-
| `/vibe.review` |
|
|
207
|
-
| `/vibe.analyze
|
|
208
|
-
| `/vibe.reason "문제"` | 체계적 추론
|
|
209
|
-
| `/vibe.utils
|
|
210
|
-
|
|
211
|
-
---
|
|
32
|
+
| `/vibe.spec "기능"` | SPEC 문서 작성 + 병렬 리서치 |
|
|
33
|
+
| `/vibe.run "기능"` | 구현 실행 |
|
|
34
|
+
| `/vibe.run "기능" ultrawork` | 최대 성능 모드 |
|
|
35
|
+
| `/vibe.verify "기능"` | BDD 검증 |
|
|
36
|
+
| `/vibe.review` | 13+ 에이전트 병렬 리뷰 |
|
|
37
|
+
| `/vibe.analyze` | 코드 분석 |
|
|
38
|
+
| `/vibe.reason "문제"` | 체계적 추론 |
|
|
39
|
+
| `/vibe.utils` | 유틸리티 (--e2e, --diagram 등) |
|
|
212
40
|
|
|
213
|
-
##
|
|
41
|
+
## 워크플로우
|
|
214
42
|
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
```bash
|
|
218
|
-
/vibe.run "기능명" ultrawork # 최대 성능 모드
|
|
219
|
-
/vibe.run "기능명" ulw # 동일 (단축어)
|
|
43
|
+
```
|
|
44
|
+
/vibe.spec → /vibe.run → /vibe.verify → /vibe.review
|
|
220
45
|
```
|
|
221
46
|
|
|
222
|
-
|
|
47
|
+
## 주요 기능
|
|
223
48
|
|
|
224
49
|
| 기능 | 설명 |
|
|
225
50
|
|------|------|
|
|
226
|
-
|
|
|
227
|
-
| **
|
|
228
|
-
|
|
|
229
|
-
|
|
|
230
|
-
|
|
|
231
|
-
|
|
|
232
|
-
|
|
233
|
-
### Boulder Loop
|
|
234
|
-
|
|
235
|
-
시지푸스처럼 바위를 굴리듯, **모든 시나리오가 통과될 때까지** 자동으로 진행:
|
|
236
|
-
|
|
237
|
-
```
|
|
238
|
-
Scenario 1 → Scenario 2 → Scenario 3 → ... → Scenario N
|
|
239
|
-
↓ ↓ ↓ ↓
|
|
240
|
-
[탐색+구현] [탐색+구현] [탐색+구현] [탐색+구현]
|
|
241
|
-
[즉시 검증] [즉시 검증] [즉시 검증] [즉시 검증]
|
|
242
|
-
✅ ✅ ✅ ✅
|
|
243
|
-
↓
|
|
244
|
-
🎉 품질 보장 완료!
|
|
245
|
-
```
|
|
246
|
-
|
|
247
|
-
### 일반 모드 vs ULTRAWORK
|
|
248
|
-
|
|
249
|
-
| 항목 | 일반 모드 | ULTRAWORK |
|
|
250
|
-
|------|----------|-----------|
|
|
251
|
-
| 시나리오 전환 | 일시정지 가능 | 자동 진행 |
|
|
252
|
-
| 검증 실패 | 보고 후 중단 | 자동 재시도 (3회) |
|
|
253
|
-
| 컨텍스트 80%+ | 경고만 | 자동 저장 |
|
|
254
|
-
| 탐색 방식 | 순차 가능 | **강제 병렬** |
|
|
255
|
-
| 완료 조건 | 시나리오별 | 전체 시나리오 통과까지 |
|
|
256
|
-
|
|
257
|
-
---
|
|
258
|
-
|
|
259
|
-
## BDD 자동 검증
|
|
260
|
-
|
|
261
|
-
### 품질 리포트 예시
|
|
262
|
-
|
|
263
|
-
`/vibe.verify` 실행 시 자동 생성되는 품질 리포트:
|
|
264
|
-
|
|
265
|
-
**VERIFICATION REPORT: login**
|
|
266
|
-
|
|
267
|
-
시나리오: 4/4 통과 (100%)
|
|
268
|
-
|
|
269
|
-
| # | Scenario | Given | When | Then | Status |
|
|
270
|
-
|---|----------|-------|------|------|--------|
|
|
271
|
-
| 1 | 유효한 로그인 성공 | ✅ | ✅ | ✅ | ✅ |
|
|
272
|
-
| 2 | 잘못된 비밀번호 에러 | ✅ | ✅ | ✅ | ✅ |
|
|
273
|
-
| 3 | 이메일 형식 검증 | ✅ | ✅ | ✅ | ✅ |
|
|
274
|
-
| 4 | 비밀번호 찾기 링크 | ✅ | ✅ | ✅ | ✅ |
|
|
275
|
-
|
|
276
|
-
품질 점수: **94/100**
|
|
277
|
-
|
|
278
|
-
### 검증 실패 시
|
|
279
|
-
|
|
280
|
-
```
|
|
281
|
-
❌ Scenario 4: 비밀번호 찾기 링크
|
|
282
|
-
|
|
283
|
-
When: "비밀번호 찾기" 클릭
|
|
284
|
-
❌ 문제: 링크가 구현되지 않음
|
|
285
|
-
📍 위치: LoginForm.tsx line 42
|
|
286
|
-
💡 수정: "Forgot password" 링크 추가 필요
|
|
287
|
-
|
|
288
|
-
🔧 자동 수정: /vibe.run "login" --fix
|
|
289
|
-
```
|
|
290
|
-
|
|
291
|
-
비개발자가 알아야 할 것:
|
|
292
|
-
- ✅ 시나리오 4/4 통과 → **품질 보장됨**
|
|
293
|
-
- ❌ 시나리오 3/4 통과 → **수정 필요** (자동 수정 가능)
|
|
294
|
-
|
|
295
|
-
---
|
|
296
|
-
|
|
297
|
-
## New in v2.1.0
|
|
298
|
-
|
|
299
|
-
### 병렬 코드 리뷰 (/vibe.review)
|
|
300
|
-
|
|
301
|
-
13+ 전문 에이전트가 동시에 코드 리뷰:
|
|
302
|
-
|
|
303
|
-
| 분야 | 검토 항목 |
|
|
304
|
-
|------|----------|
|
|
305
|
-
| Security | OWASP Top 10, SQL injection, XSS |
|
|
306
|
-
| Performance | N+1 queries, memory leaks |
|
|
307
|
-
| Architecture | SOLID violations, layer breaches |
|
|
308
|
-
| Language | Python, TypeScript, Rails, React |
|
|
309
|
-
| Quality | Complexity, test coverage, git |
|
|
310
|
-
|
|
311
|
-
**우선순위 시스템:**
|
|
312
|
-
- 🔴 **P1 (Critical)**: 머지 차단 - 보안 취약점, 데이터 손실
|
|
313
|
-
- 🟡 **P2 (Important)**: 수정 권장 - 성능 문제, 테스트 누락
|
|
314
|
-
- 🔵 **P3 (Nice-to-have)**: 백로그 - 코드 스타일, 리팩토링
|
|
51
|
+
| **멀티모델 오케스트레이션** | Claude + GPT-5.2 + Gemini 3 Pro 통합 |
|
|
52
|
+
| **13+ 병렬 리뷰 에이전트** | 보안, 성능, 아키텍처 동시 검토 |
|
|
53
|
+
| **BDD 자동 검증** | Given/When/Then 시나리오별 검증 |
|
|
54
|
+
| **ULTRAWORK 모드** | `ulw` 한 단어로 모든 최적화 활성화 |
|
|
55
|
+
| **36개 내장 도구** | 코드 분석, 메모리 관리, 품질 검증 |
|
|
56
|
+
| **자동 컨텍스트 관리** | 80%+ 자동 저장, 세션 복원 |
|
|
315
57
|
|
|
316
|
-
|
|
58
|
+
## ULTRAWORK 모드
|
|
317
59
|
|
|
318
|
-
|
|
60
|
+
`ultrawork` 또는 `ulw` 키워드로 최대 성능 모드 활성화:
|
|
319
61
|
|
|
320
62
|
```bash
|
|
321
|
-
/vibe.
|
|
322
|
-
/vibe.
|
|
323
|
-
/vibe.utils --e2e --record # 비디오 녹화
|
|
324
|
-
```
|
|
325
|
-
|
|
326
|
-
**기능:**
|
|
327
|
-
- 스크린샷 캡처 및 비교
|
|
328
|
-
- 콘솔 에러 자동 수집
|
|
329
|
-
- 접근성(a11y) 검사
|
|
330
|
-
- 버그 재현 자동화
|
|
331
|
-
|
|
332
|
-
### 지식 복리 (자동 트리거)
|
|
333
|
-
|
|
334
|
-
해결한 문제를 자동 문서화하여 지식 축적:
|
|
335
|
-
|
|
336
|
-
```
|
|
337
|
-
.claude/vibe/solutions/
|
|
338
|
-
├── security/ # 보안 해결책
|
|
339
|
-
├── performance/ # 성능 최적화
|
|
340
|
-
├── database/ # DB 관련
|
|
341
|
-
└── integration/ # 외부 연동
|
|
342
|
-
```
|
|
343
|
-
|
|
344
|
-
**자동 트리거**: "버그 해결됨", "bug fixed", "PR merged" 등 (Hooks에서 자동 감지)
|
|
345
|
-
|
|
346
|
-
### 리서치 에이전트 강화
|
|
347
|
-
|
|
348
|
-
`/vibe.spec` 실행 시 **요구사항 확정 후** 4개 병렬 리서치:
|
|
349
|
-
|
|
350
|
-
```
|
|
351
|
-
문답으로 요구사항 확정 → 병렬 리서치 → SPEC 작성
|
|
352
|
-
```
|
|
353
|
-
|
|
354
|
-
| 에이전트 | 역할 | 외부 LLM 강화 |
|
|
355
|
-
|----------|------|--------------|
|
|
356
|
-
| best-practices-agent | 확정된 기능+스택 베스트 프랙티스 | - |
|
|
357
|
-
| framework-docs-agent | 확정된 스택 최신 문서 (context7) | Gemini (웹 검색) |
|
|
358
|
-
| codebase-patterns-agent | 기존 유사 패턴 분석 | - |
|
|
359
|
-
| security-advisory-agent | 확정된 기능 보안 권고 | GPT (CVE 지식) |
|
|
360
|
-
|
|
361
|
-
> ⚠️ **리서치는 요구사항 확정 후 실행** (VIBE 원칙: 요구사항 먼저)
|
|
362
|
-
|
|
363
|
-
### 외부 LLM 통합 (선택적)
|
|
364
|
-
|
|
365
|
-
GPT/Gemini가 활성화되어 있으면 특정 에이전트가 자동으로 활용합니다:
|
|
366
|
-
|
|
367
|
-
| 에이전트 | 외부 LLM | 용도 |
|
|
368
|
-
|----------|----------|------|
|
|
369
|
-
| framework-docs-agent | Gemini | context7 문서 부재 시 웹 검색으로 최신 문서 보강 |
|
|
370
|
-
| security-advisory-agent | GPT | CVE/보안 취약점 DB 지식 보강 |
|
|
371
|
-
| python-reviewer | GPT Codex | Python 코드 리뷰 2nd opinion |
|
|
372
|
-
|
|
373
|
-
**동작 방식:**
|
|
374
|
-
```
|
|
375
|
-
Primary: Task(Haiku) 실행
|
|
376
|
-
↓
|
|
377
|
-
[외부 LLM 활성화?]
|
|
378
|
-
↓ YES
|
|
379
|
-
외부 LLM 호출 → 결과 병합
|
|
380
|
-
↓ NO
|
|
381
|
-
Primary 결과만 사용
|
|
382
|
-
```
|
|
383
|
-
|
|
384
|
-
> **후방 호환성**: GPT/Gemini가 설정되지 않아도 Primary(Haiku)만으로 정상 작동합니다.
|
|
385
|
-
|
|
386
|
-
---
|
|
387
|
-
|
|
388
|
-
## Project Structure
|
|
389
|
-
|
|
390
|
-
`vibe init` 실행 후 생성되는 구조:
|
|
391
|
-
|
|
392
|
-
```
|
|
393
|
-
project/
|
|
394
|
-
├── CLAUDE.md # 프로젝트 컨텍스트 ← git 공유
|
|
395
|
-
└── .claude/ # ⚠️ 반드시 git에 커밋 ← git 공유
|
|
396
|
-
├── commands/ # 슬래시 커맨드 (7개)
|
|
397
|
-
├── agents/ # 서브에이전트
|
|
398
|
-
│ ├── review/ # 리뷰 에이전트 (12개)
|
|
399
|
-
│ └── research/ # 리서치 에이전트 (4개)
|
|
400
|
-
├── settings.json # Hooks 설정
|
|
401
|
-
├── settings.local.json # 개인 설정 ← git 제외 (자동)
|
|
402
|
-
└── vibe/
|
|
403
|
-
├── config.json # 프로젝트 설정
|
|
404
|
-
├── constitution.md # 프로젝트 원칙
|
|
405
|
-
├── rules/ # 코딩 규칙
|
|
406
|
-
├── specs/ # SPEC 문서들
|
|
407
|
-
├── features/ # BDD Feature 파일들
|
|
408
|
-
├── solutions/ # 해결책 아카이브
|
|
409
|
-
└── todos/ # 우선순위 TODO
|
|
410
|
-
```
|
|
411
|
-
|
|
412
|
-
> **⚠️ 중요**: `.claude/` 폴더는 팀과 공유해야 합니다. 커밋 시 제외하지 마세요.
|
|
413
|
-
> `settings.local.json`만 개인 설정이므로 자동으로 git에서 제외됩니다.
|
|
414
|
-
|
|
415
|
-
---
|
|
416
|
-
|
|
417
|
-
## Feature 파일 (BDD 시나리오)
|
|
418
|
-
|
|
419
|
-
```gherkin
|
|
420
|
-
# .claude/vibe/features/login.feature
|
|
421
|
-
|
|
422
|
-
Feature: 로그인
|
|
423
|
-
|
|
424
|
-
Scenario: 유효한 로그인 성공
|
|
425
|
-
Given 사용자가 등록되어 있다
|
|
426
|
-
# 검증: 사용자 생성 API 존재
|
|
427
|
-
When 유효한 이메일과 비밀번호로 로그인
|
|
428
|
-
# 검증: POST /login 엔드포인트
|
|
429
|
-
Then 로그인 성공 + JWT 토큰 반환
|
|
430
|
-
# 검증: 200 응답 + 토큰 포함
|
|
431
|
-
|
|
432
|
-
Scenario: 잘못된 비밀번호 에러
|
|
433
|
-
Given 사용자가 등록되어 있다
|
|
434
|
-
When 잘못된 비밀번호로 로그인
|
|
435
|
-
Then 401 에러 + "비밀번호가 틀립니다" 메시지
|
|
436
|
-
```
|
|
437
|
-
|
|
438
|
-
각 시나리오의 Given/When/Then이 자동 검증 포인트가 됩니다.
|
|
439
|
-
|
|
440
|
-
---
|
|
441
|
-
|
|
442
|
-
## SPEC Document (PTCF Structure)
|
|
443
|
-
|
|
444
|
-
```markdown
|
|
445
|
-
# SPEC: {기능명}
|
|
446
|
-
|
|
447
|
-
## Persona
|
|
448
|
-
<role>
|
|
449
|
-
AI의 역할과 전문성 정의
|
|
450
|
-
</role>
|
|
451
|
-
|
|
452
|
-
## Context
|
|
453
|
-
<context>
|
|
454
|
-
- 배경, 목적
|
|
455
|
-
- 기술 스택
|
|
456
|
-
- 관련 코드
|
|
457
|
-
</context>
|
|
458
|
-
|
|
459
|
-
## Task
|
|
460
|
-
<task>
|
|
461
|
-
### Scenario 1: {시나리오명}
|
|
462
|
-
Given: {전제 조건}
|
|
463
|
-
When: {사용자 행동}
|
|
464
|
-
Then: {예상 결과}
|
|
465
|
-
|
|
466
|
-
### Scenario 2: {시나리오명}
|
|
467
|
-
...
|
|
468
|
-
</task>
|
|
469
|
-
|
|
470
|
-
## Constraints
|
|
471
|
-
<constraints>
|
|
472
|
-
- 기존 코드 패턴 준수
|
|
473
|
-
- 에러 메시지 한글화
|
|
474
|
-
</constraints>
|
|
475
|
-
|
|
476
|
-
## Acceptance Criteria
|
|
477
|
-
<acceptance>
|
|
478
|
-
- [ ] Scenario 1 통과
|
|
479
|
-
- [ ] Scenario 2 통과
|
|
480
|
-
</acceptance>
|
|
481
|
-
```
|
|
482
|
-
|
|
483
|
-
---
|
|
484
|
-
|
|
485
|
-
## Coding Rules (.claude/vibe/rules/)
|
|
486
|
-
|
|
487
|
-
### 14개 프레임워크별 언어 룰 (v2.3.0)
|
|
488
|
-
|
|
489
|
-
`vibe init` / `vibe update` 시 프로젝트의 기술 스택을 감지하여 **프레임워크별 최적화 규칙**을 자동 설치합니다.
|
|
490
|
-
|
|
491
|
-
| 감지 스택 | 룰 파일 | 주요 내용 |
|
|
492
|
-
|----------|---------|----------|
|
|
493
|
-
| Next.js | `typescript-nextjs.md` | App Router, Server Components, Server Actions |
|
|
494
|
-
| React | `typescript-react.md` | Hooks, 컴포넌트 패턴, 상태관리 |
|
|
495
|
-
| Vue.js | `typescript-vue.md` | Composition API, Pinia, script setup |
|
|
496
|
-
| Nuxt 3 | `typescript-nuxt.md` | useFetch, Server API, Auto-imports |
|
|
497
|
-
| React Native | `typescript-react-native.md` | 네이티브 모듈, 성능 최적화 |
|
|
498
|
-
| Node.js | `typescript-node.md` | Express/Fastify/NestJS 패턴 |
|
|
499
|
-
| FastAPI | `python-fastapi.md` | Pydantic, 비동기 처리, 의존성 주입 |
|
|
500
|
-
| Django | `python-django.md` | ORM, 뷰 패턴, 시그널 |
|
|
501
|
-
| Flutter | `dart-flutter.md` | Riverpod/BLoC, 위젯 트리 |
|
|
502
|
-
| Go | `go.md` | 에러 처리, 고루틴, 인터페이스 |
|
|
503
|
-
| Rust | `rust.md` | Result/Option, 소유권, unsafe |
|
|
504
|
-
| Spring Boot | `java-spring.md` | DI, JPA, 트랜잭션 |
|
|
505
|
-
| Android | `kotlin-android.md` | Compose, ViewModel, Coroutines |
|
|
506
|
-
| iOS | `swift-ios.md` | SwiftUI, Combine, 프로토콜 |
|
|
507
|
-
|
|
508
|
-
### 모노레포 지원
|
|
509
|
-
|
|
510
|
-
`packages/*`, `apps/*` 하위 패키지별로 각각 감지하여 필요한 룰만 설치:
|
|
511
|
-
|
|
512
|
-
```bash
|
|
513
|
-
# 모노레포 예시
|
|
514
|
-
monorepo/
|
|
515
|
-
├── packages/
|
|
516
|
-
│ ├── web/ → typescript-nextjs.md 설치
|
|
517
|
-
│ ├── mobile/ → typescript-react-native.md 설치
|
|
518
|
-
│ └── api/ → python-fastapi.md 설치
|
|
63
|
+
/vibe.run "기능명" ultrawork
|
|
64
|
+
/vibe.run "기능명" ulw # 동일
|
|
519
65
|
```
|
|
520
66
|
|
|
521
|
-
|
|
67
|
+
**활성화 기능:**
|
|
68
|
+
- 병렬 서브에이전트 탐색 (3+ 동시)
|
|
69
|
+
- Boulder Loop (모든 시나리오 완료까지 자동 진행)
|
|
70
|
+
- 에러 자동 재시도 (최대 3회)
|
|
71
|
+
- Phase 간 확인 없이 연속 실행
|
|
72
|
+
- 컨텍스트 80%+ 시 자동 저장
|
|
522
73
|
|
|
523
|
-
|
|
74
|
+
## 멀티모델 오케스트레이션
|
|
524
75
|
|
|
525
|
-
|
|
526
|
-
- **한국어 우선**: 모든 커뮤니케이션은 한국어로
|
|
527
|
-
- **DRY**: 반복하지 말고 재사용
|
|
528
|
-
- **SRP**: 하나의 함수는 하나의 목적만
|
|
529
|
-
- **YAGNI**: 필요하지 않으면 만들지 않음
|
|
76
|
+
Claude Code에서 GPT-5.2, Gemini 3 Pro를 서브에이전트로 활용:
|
|
530
77
|
|
|
531
|
-
|
|
78
|
+
| 상황 | 추천 모델 | MCP 도구 |
|
|
79
|
+
|------|----------|----------|
|
|
80
|
+
| 아키텍처 검토 | GPT-5.2 | `gpt_analyze_architecture` |
|
|
81
|
+
| UI/UX 리뷰 | Gemini 3 Pro | `gemini_review_ui` |
|
|
82
|
+
| 디버깅 | GPT-5.2 | `gpt_debug` |
|
|
83
|
+
| 코드 분석 | Gemini 3 Pro | `gemini_analyze_code` |
|
|
532
84
|
|
|
533
|
-
|
|
534
|
-
|--------|------|
|
|
535
|
-
| 순환 복잡도 | ≤ 10 |
|
|
536
|
-
| 함수 길이 | ≤ 30줄 (권장), ≤ 50줄 (허용) |
|
|
537
|
-
| 중첩 깊이 | ≤ 3단계 |
|
|
538
|
-
| 매개변수 | ≤ 5개 |
|
|
539
|
-
| 컴포넌트 JSX | ≤ 50줄 |
|
|
85
|
+
## 병렬 리뷰 에이전트
|
|
540
86
|
|
|
541
|
-
|
|
87
|
+
`/vibe.review` 실행 시 13+ 에이전트가 동시 검토:
|
|
542
88
|
|
|
543
|
-
|
|
|
544
|
-
|
|
545
|
-
|
|
|
546
|
-
|
|
|
547
|
-
|
|
|
548
|
-
|
|
|
549
|
-
|
|
|
550
|
-
| F | < 70 | 리팩토링 필요 |
|
|
551
|
-
|
|
552
|
-
---
|
|
553
|
-
|
|
554
|
-
## 내장 도구 & MCP
|
|
89
|
+
| 분야 | 에이전트 |
|
|
90
|
+
|------|----------|
|
|
91
|
+
| 보안 | security-reviewer, data-integrity-reviewer |
|
|
92
|
+
| 성능 | performance-reviewer, complexity-reviewer |
|
|
93
|
+
| 아키텍처 | architecture-reviewer, simplicity-reviewer |
|
|
94
|
+
| 언어별 | python, typescript, rails, react reviewers |
|
|
95
|
+
| 컨텍스트 | git-history, test-coverage reviewers |
|
|
555
96
|
|
|
556
|
-
|
|
97
|
+
**우선순위:**
|
|
98
|
+
- 🔴 P1 (Critical): 머지 차단
|
|
99
|
+
- 🟡 P2 (Important): 수정 권장
|
|
100
|
+
- 🔵 P3 (Nice-to-have): 백로그
|
|
557
101
|
|
|
558
|
-
|
|
102
|
+
## 내장 도구
|
|
559
103
|
|
|
560
104
|
| 도구 | 설명 |
|
|
561
105
|
|------|------|
|
|
@@ -563,255 +107,58 @@ vibe는 36개의 도구를 **내장**하여 MCP 프로토콜 오버헤드 없이
|
|
|
563
107
|
| `vibe_find_references` | 참조 찾기 |
|
|
564
108
|
| `vibe_analyze_complexity` | 복잡도 분석 |
|
|
565
109
|
| `vibe_validate_code_quality` | 품질 검증 |
|
|
566
|
-
| `vibe_start_session` | 세션 시작 (이전 컨텍스트
|
|
567
|
-
| `vibe_auto_save_context` | 현재 상태 저장 |
|
|
110
|
+
| `vibe_start_session` | 세션 시작 (이전 컨텍스트 복원) |
|
|
568
111
|
| `vibe_save_memory` | 중요 결정사항 저장 |
|
|
112
|
+
| `vibe_auto_save_context` | 현재 상태 자동 저장 |
|
|
569
113
|
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
| MCP 서버 | 설명 | 등록 방식 |
|
|
573
|
-
|----------|------|----------|
|
|
574
|
-
| `vibe-gemini` | Gemini 3 Flash/Pro 서브에이전트 | 전역 (`-s user`) |
|
|
575
|
-
| `vibe-gpt` | GPT-5.2 Codex 서브에이전트 | 전역 (`-s user`) |
|
|
576
|
-
| `context7` | 라이브러리 문서 실시간 검색 | 전역 (`-s user`) |
|
|
577
|
-
|
|
578
|
-
> **Note**: MCP 서버들은 전역 등록되어 모든 프로젝트에서 사용 가능합니다.
|
|
579
|
-
> OAuth 인증 후 Claude Code에서 GPT/Gemini를 서브에이전트로 호출할 수 있습니다.
|
|
580
|
-
|
|
581
|
-
### Hooks (자동 설정)
|
|
582
|
-
|
|
583
|
-
| Hook | 트리거 | 동작 |
|
|
584
|
-
|------|--------|------|
|
|
585
|
-
| `SessionStart` | 세션 시작 | `vibe_start_session` 자동 호출 → 이전 컨텍스트 복원 |
|
|
586
|
-
| `UserPromptSubmit` | `ultrawork`/`ulw` 감지 | 🚀 ULTRAWORK 모드 활성화 |
|
|
587
|
-
| `PostToolUse` | Write/Edit 후 | 품질 체크 (멈추지 않음) |
|
|
588
|
-
| `Notification` | 컨텍스트 80% | **MANDATORY** `vibe_auto_save_context` 호출 |
|
|
589
|
-
| `Notification` | 컨텍스트 90% | **MANDATORY** 즉시 저장 (urgency=high) |
|
|
590
|
-
| `Notification` | 컨텍스트 95% | **MANDATORY** 긴급 저장 + 세션 전환 준비 |
|
|
591
|
-
|
|
592
|
-
### 선택적 연동 (외부 LLM)
|
|
593
|
-
|
|
594
|
-
| MCP 서버 | 명령어 | 설명 |
|
|
595
|
-
|----------|--------|------|
|
|
596
|
-
| GPT-5.2 Codex | `vibe auth gpt` | OAuth 인증 (ChatGPT Plus/Pro, 권장) |
|
|
597
|
-
| GPT-5.2 Codex | `vibe auth gpt --key <key>` | API 키 방식 |
|
|
598
|
-
| Gemini 3 Flash/Pro | `vibe auth gemini` | OAuth 인증 (구독자용, 권장) |
|
|
599
|
-
| Gemini 3 Flash/Pro | `vibe auth gemini --key <key>` | API 키 방식 |
|
|
600
|
-
|
|
601
|
-
> **OAuth 인증** 또는 API 키를 등록해서 사용할 수 있습니다.
|
|
602
|
-
|
|
603
|
-
### 주요 내장 도구
|
|
604
|
-
|
|
605
|
-
- **코드 분석**: `vibe_analyze_complexity`, `vibe_validate_code_quality`
|
|
606
|
-
- **시맨틱 검색**: `vibe_find_symbol`, `vibe_find_references`
|
|
607
|
-
- **추론**: `vibe_create_thinking_chain`, `vibe_analyze_problem`
|
|
608
|
-
- **메모리**: `vibe_save_memory`, `vibe_recall_memory`, `vibe_auto_save_context`
|
|
609
|
-
- **UI**: `vibe_preview_ui_ascii`
|
|
610
|
-
|
|
611
|
-
### context7 사용법
|
|
612
|
-
|
|
613
|
-
최신 라이브러리 문서가 필요할 때:
|
|
114
|
+
## 프로젝트 구조
|
|
614
115
|
|
|
615
116
|
```
|
|
616
|
-
|
|
617
|
-
|
|
117
|
+
.claude/
|
|
118
|
+
├── commands/ # 슬래시 커맨드
|
|
119
|
+
├── agents/ # 리뷰/리서치 에이전트
|
|
120
|
+
├── skills/ # 자동 활성화 가이드
|
|
121
|
+
└── vibe/
|
|
122
|
+
├── specs/ # SPEC 문서
|
|
123
|
+
├── features/ # BDD 시나리오
|
|
124
|
+
├── rules/ # 코딩 규칙
|
|
125
|
+
└── solutions/ # 해결책 아카이브
|
|
618
126
|
```
|
|
619
127
|
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
## 컨텍스트 관리 팁
|
|
623
|
-
|
|
624
|
-
### 모델 선택 전략
|
|
625
|
-
|
|
626
|
-
| 작업 유형 | 권장 모델 | 이유 |
|
|
627
|
-
|----------|----------|------|
|
|
628
|
-
| 탐색/검색 | Haiku | 빠르고 저비용 |
|
|
629
|
-
| 구현/디버깅 | Sonnet | 균형잡힌 성능 |
|
|
630
|
-
| 아키텍처/복잡한 로직 | Opus | 최고 성능 |
|
|
128
|
+
## 코드 품질 기준
|
|
631
129
|
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
### Claude Code 기본 명령어
|
|
635
|
-
|
|
636
|
-
| 명령어 | 용도 |
|
|
130
|
+
| 메트릭 | 제한 |
|
|
637
131
|
|--------|------|
|
|
638
|
-
|
|
|
639
|
-
|
|
|
640
|
-
|
|
|
641
|
-
|
|
|
642
|
-
|
|
643
|
-
> **⚠️ `/compact` 사용 금지**: 정보 손실/왜곡 위험. vibe 메모리 시스템 사용 권장.
|
|
132
|
+
| 함수 길이 | 30줄 권장, 50줄 허용 |
|
|
133
|
+
| 중첩 깊이 | 3단계 이하 |
|
|
134
|
+
| 매개변수 | 5개 이하 |
|
|
135
|
+
| 순환 복잡도 | 10 이하 |
|
|
644
136
|
|
|
645
|
-
|
|
137
|
+
## 사용 예시
|
|
646
138
|
|
|
647
139
|
```
|
|
648
|
-
|
|
649
|
-
90% 도달 → 즉시 저장 (urgency=high)
|
|
650
|
-
95% 도달 → 긴급 저장 + 세션 전환 준비
|
|
651
|
-
|
|
652
|
-
새 세션 시작 → vibe_start_session 자동 호출 → 이전 컨텍스트 복원
|
|
653
|
-
```
|
|
654
|
-
|
|
655
|
-
> **⚠️ `/compact` 사용 금지**: 정보 손실/왜곡 위험. vibe 메모리 시스템이 자동으로 관리합니다.
|
|
140
|
+
User: /vibe.spec "로그인 기능"
|
|
656
141
|
|
|
657
|
-
|
|
142
|
+
Claude: 로그인 기능을 만드시는군요! 몇 가지 질문이 있습니다.
|
|
143
|
+
1. 인증 방식은? (이메일/비밀번호, OAuth, Passkey)
|
|
144
|
+
2. 기술 스택은?
|
|
145
|
+
...
|
|
658
146
|
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
3. **자동 저장** - 80%+ 시 `vibe_auto_save_context` 자동 호출
|
|
662
|
-
4. **Just-in-Time** - context7로 필요할 때만 문서 검색
|
|
147
|
+
[대화로 요구사항 확정]
|
|
148
|
+
[4개 병렬 리서치 에이전트 실행]
|
|
663
149
|
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
150
|
+
✅ SPEC 문서 생성 완료
|
|
151
|
+
📄 .claude/vibe/specs/login.md
|
|
152
|
+
📄 .claude/vibe/features/login.feature
|
|
667
153
|
|
|
154
|
+
다음 단계: /vibe.run "로그인 기능" ultrawork
|
|
668
155
|
```
|
|
669
|
-
User: /vibe.spec "벽돌게임"
|
|
670
|
-
|
|
671
|
-
Claude:
|
|
672
|
-
벽돌게임을 만드시는군요! 어떤 스타일을 생각하고 계신가요?
|
|
673
|
-
|
|
674
|
-
1. 클래식 벽돌깨기 (Breakout)
|
|
675
|
-
2. 아르카노이드 (파워업 포함)
|
|
676
|
-
3. 커스텀 스타일
|
|
677
|
-
|
|
678
|
-
또는 직접 설명해주셔도 됩니다.
|
|
679
|
-
|
|
680
|
-
User: 1
|
|
681
|
-
|
|
682
|
-
Claude: 어떤 플랫폼에서 실행하시겠어요?
|
|
683
|
-
|
|
684
|
-
1. 웹 (브라우저)
|
|
685
|
-
2. 모바일
|
|
686
|
-
3. 데스크톱
|
|
687
156
|
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
Claude: 기술 스택을 제안드립니다:
|
|
691
|
-
|
|
692
|
-
1. Phaser.js (추천) - 게임 프레임워크
|
|
693
|
-
2. Canvas + JavaScript
|
|
694
|
-
3. PixiJS + Matter.js
|
|
695
|
-
|
|
696
|
-
User: 1
|
|
697
|
-
|
|
698
|
-
[대화 계속...]
|
|
699
|
-
|
|
700
|
-
✅ SPEC 문서 작성 완료!
|
|
701
|
-
📄 .claude/vibe/specs/brick-game.md
|
|
702
|
-
📄 .claude/vibe/features/brick-game.feature
|
|
703
|
-
|
|
704
|
-
다음 단계: /vibe.run "벽돌게임"
|
|
705
|
-
```
|
|
706
|
-
|
|
707
|
-
---
|
|
708
|
-
|
|
709
|
-
## Orchestrator Module (v2.4.0)
|
|
710
|
-
|
|
711
|
-
### `@su-record/vibe/orchestrator`
|
|
712
|
-
|
|
713
|
-
Claude Agent SDK 기반 프로그래밍 방식 멀티에이전트 오케스트레이션.
|
|
714
|
-
|
|
715
|
-
```javascript
|
|
716
|
-
import('@su-record/vibe/orchestrator').then(o => {
|
|
717
|
-
// 병렬 리서치 (4개 에이전트 동시 실행)
|
|
718
|
-
o.research('passkey auth', ['React', 'Supabase'])
|
|
719
|
-
.then(r => console.log(r.content[0].text));
|
|
720
|
-
|
|
721
|
-
// 병렬 코드 리뷰 (12+ 에이전트 동시 실행)
|
|
722
|
-
o.review(['src/api/users.ts', 'src/components/Login.tsx'], ['TypeScript', 'React'])
|
|
723
|
-
.then(r => console.log(r.content[0].text));
|
|
724
|
-
|
|
725
|
-
// 커스텀 에이전트 실행
|
|
726
|
-
o.runAgent('Analyze authentication flow', 'auth-analyzer')
|
|
727
|
-
.then(r => console.log(r.content[0].text));
|
|
728
|
-
|
|
729
|
-
// 에이전트 목록 조회
|
|
730
|
-
o.listAgents().then(r => console.log(r.content[0].text));
|
|
731
|
-
|
|
732
|
-
// 오케스트레이터 상태
|
|
733
|
-
console.log(o.status().content[0].text);
|
|
734
|
-
});
|
|
735
|
-
```
|
|
736
|
-
|
|
737
|
-
### 함수 목록
|
|
738
|
-
|
|
739
|
-
| 함수 | 설명 |
|
|
740
|
-
|------|------|
|
|
741
|
-
| `research(feature, techStack)` | 4개 병렬 리서치 에이전트 실행 |
|
|
742
|
-
| `review(filePaths, techStack)` | 12+ 병렬 리뷰 에이전트 실행 |
|
|
743
|
-
| `runAgent(prompt, agentName?)` | 커스텀 에이전트 실행 |
|
|
744
|
-
| `listAgents()` | 프로젝트의 에이전트 목록 조회 |
|
|
745
|
-
| `status()` | 오케스트레이터 상태 (활성 세션, 메모리 등) |
|
|
157
|
+
## 요구사항
|
|
746
158
|
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
각 `/vibe.*` 명령어는 내부적으로 오케스트레이터를 활용합니다:
|
|
750
|
-
|
|
751
|
-
| 명령어 | 오케스트레이터 사용 |
|
|
752
|
-
|--------|-------------------|
|
|
753
|
-
| `/vibe.spec` | `research()` - 4개 병렬 리서치 |
|
|
754
|
-
| `/vibe.review` | `review()` - 12+ 병렬 리뷰 |
|
|
755
|
-
| `/vibe.run ultrawork` | `runAgent()` - 백그라운드 에이전트 |
|
|
756
|
-
| `/vibe.analyze` | `runAgent()` - 병렬 탐색 에이전트 |
|
|
757
|
-
|
|
758
|
-
### 에이전트 디렉토리
|
|
759
|
-
|
|
760
|
-
프로젝트의 `.claude/agents/` 또는 `agents/` 폴더에서 에이전트를 자동 탐지:
|
|
761
|
-
|
|
762
|
-
```
|
|
763
|
-
.claude/agents/
|
|
764
|
-
├── review/ # 리뷰 에이전트 (12개)
|
|
765
|
-
│ ├── security-reviewer.md
|
|
766
|
-
│ ├── performance-reviewer.md
|
|
767
|
-
│ └── ...
|
|
768
|
-
└── research/ # 리서치 에이전트 (4개)
|
|
769
|
-
├── best-practices-agent.md
|
|
770
|
-
├── framework-docs-agent.md
|
|
771
|
-
└── ...
|
|
772
|
-
```
|
|
773
|
-
|
|
774
|
-
---
|
|
775
|
-
|
|
776
|
-
## Requirements
|
|
777
|
-
|
|
778
|
-
- **Node.js**: 18.0.0+
|
|
779
|
-
- **Claude Code**: 필수
|
|
780
|
-
|
|
781
|
-
---
|
|
782
|
-
|
|
783
|
-
## Links
|
|
784
|
-
|
|
785
|
-
- **Repository**: [github.com/su-record/vibe](https://github.com/su-record/vibe)
|
|
786
|
-
- **Issues**: [GitHub Issues](https://github.com/su-record/vibe/issues)
|
|
787
|
-
|
|
788
|
-
---
|
|
789
|
-
|
|
790
|
-
## License
|
|
791
|
-
|
|
792
|
-
MIT License
|
|
793
|
-
|
|
794
|
-
---
|
|
795
|
-
|
|
796
|
-
**Built with ❤️ by Su & Claude**
|
|
797
|
-
|
|
798
|
-
## Vibe Setup (AI Coding)
|
|
799
|
-
|
|
800
|
-
이 프로젝트는 [Vibe](https://github.com/su-record/vibe) AI 코딩 프레임워크를 사용합니다.
|
|
801
|
-
|
|
802
|
-
### 협업자 설치
|
|
803
|
-
|
|
804
|
-
```bash
|
|
805
|
-
# 전역 설치 (권장)
|
|
806
|
-
npm install -g @su-record/vibe
|
|
807
|
-
vibe update
|
|
808
|
-
|
|
809
|
-
# 또는 setup 스크립트 실행
|
|
810
|
-
./.claude/vibe/setup.sh
|
|
811
|
-
```
|
|
159
|
+
- Node.js 18.0.0+
|
|
160
|
+
- Claude Code
|
|
812
161
|
|
|
813
|
-
|
|
162
|
+
## 라이선스
|
|
814
163
|
|
|
815
|
-
|
|
816
|
-
- `/vibe.spec "기능명"` - SPEC 문서 작성
|
|
817
|
-
- `/vibe.run "기능명"` - 구현 실행
|
|
164
|
+
MIT - [GitHub](https://github.com/su-record/vibe)
|