@su-record/vibe 1.1.9 → 1.2.0
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/agents/explorer.md +21 -21
- package/.claude/agents/implementer.md +24 -24
- package/.claude/agents/searcher.md +26 -26
- package/.claude/agents/simplifier.md +52 -53
- package/.claude/agents/tester.md +17 -17
- package/.claude/commands/vibe.analyze.md +138 -138
- package/.claude/commands/vibe.diagram.md +48 -48
- package/.claude/commands/vibe.reason.md +174 -174
- package/.claude/commands/vibe.run.md +384 -175
- package/.claude/commands/vibe.spec.md +160 -160
- package/.claude/commands/vibe.ui.md +38 -38
- package/.claude/commands/vibe.verify.md +77 -77
- package/.claude/settings.local.json +2 -1
- package/CLAUDE.md +17 -0
- package/README.md +64 -10
- package/package.json +4 -2
- package/templates/hooks-template.json +16 -5
|
@@ -5,301 +5,510 @@ argument-hint: "feature name" or --phase N
|
|
|
5
5
|
|
|
6
6
|
# /vibe.run
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
Execute implementation based on SPEC (Implementation Agent with Multi-Model Orchestration).
|
|
9
9
|
|
|
10
10
|
## Usage
|
|
11
11
|
|
|
12
12
|
```
|
|
13
|
-
/vibe.run "
|
|
14
|
-
/vibe.run "
|
|
13
|
+
/vibe.run "feature-name" # Full implementation
|
|
14
|
+
/vibe.run "feature-name" --phase 1 # Specific Phase only
|
|
15
|
+
/vibe.run "feature-name" ultrawork # ULTRAWORK mode (recommended)
|
|
16
|
+
/vibe.run "feature-name" ulw # Short alias for ultrawork
|
|
15
17
|
```
|
|
16
18
|
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## **ULTRAWORK Mode** (ulw)
|
|
22
|
+
|
|
23
|
+
> Include `ultrawork` or `ulw` in your command to activate **maximum performance mode**.
|
|
24
|
+
|
|
25
|
+
### What ULTRAWORK Enables
|
|
26
|
+
|
|
27
|
+
When you include `ultrawork` (or `ulw`), ALL of these activate automatically:
|
|
28
|
+
|
|
29
|
+
| Feature | Description |
|
|
30
|
+
|---------|-------------|
|
|
31
|
+
| **Parallel Exploration** | 3+ Task(haiku) agents run simultaneously |
|
|
32
|
+
| **Boulder Loop** | Auto-continues until ALL phases complete |
|
|
33
|
+
| **Context Compression** | Aggressive auto-save at 70%+ context |
|
|
34
|
+
| **No Pause** | Doesn't wait for confirmation between phases |
|
|
35
|
+
| **External LLMs** | Auto-consults GPT/Gemini if enabled |
|
|
36
|
+
| **Error Recovery** | Auto-retries on failure (up to 3 times) |
|
|
37
|
+
|
|
38
|
+
### Boulder Loop (Inspired by Sisyphus)
|
|
39
|
+
|
|
40
|
+
Like Sisyphus rolling the boulder, ULTRAWORK **keeps going until done**:
|
|
41
|
+
|
|
42
|
+
```
|
|
43
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
44
|
+
│ BOULDER LOOP (ultrawork) │
|
|
45
|
+
│ │
|
|
46
|
+
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
|
|
47
|
+
│ │ Phase 1 │───→│ Phase 2 │───→│ Phase 3 │───→│ Phase N │ │
|
|
48
|
+
│ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │
|
|
49
|
+
│ │ │ │ │ │
|
|
50
|
+
│ ↓ ↓ ↓ ↓ │
|
|
51
|
+
│ [Parallel] [Parallel] [Parallel] [Parallel] │
|
|
52
|
+
│ [Implement] [Implement] [Implement] [Implement] │
|
|
53
|
+
│ [Test] [Test] [Test] [Test] │
|
|
54
|
+
│ │ │ │ │ │
|
|
55
|
+
│ └───────────────┴───────────────┴───────────────┘ │
|
|
56
|
+
│ │ │
|
|
57
|
+
│ ↓ │
|
|
58
|
+
│ ┌──────────────┐ │
|
|
59
|
+
│ │ ALL DONE? │ │
|
|
60
|
+
│ └──────────────┘ │
|
|
61
|
+
│ │ │ │
|
|
62
|
+
│ NO YES │
|
|
63
|
+
│ │ │ │
|
|
64
|
+
│ ↓ ↓ │
|
|
65
|
+
│ [Continue] [🎉 Complete!] │
|
|
66
|
+
│ │
|
|
67
|
+
│ NO STOPPING until acceptance criteria met or error limit hit │
|
|
68
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
### ULTRAWORK Example
|
|
72
|
+
|
|
73
|
+
```
|
|
74
|
+
User: /vibe.run "brick-game" ultrawork
|
|
75
|
+
|
|
76
|
+
Claude:
|
|
77
|
+
🚀 ULTRAWORK MODE ACTIVATED
|
|
78
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
79
|
+
|
|
80
|
+
📄 SPEC: .vibe/specs/brick-game.md
|
|
81
|
+
🎯 4 Phases detected
|
|
82
|
+
⚡ Boulder Loop: ENABLED (will continue until all phases complete)
|
|
83
|
+
🔄 Auto-retry: ON (max 3 per phase)
|
|
84
|
+
💾 Context compression: AGGRESSIVE
|
|
85
|
+
|
|
86
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
87
|
+
🏔️ BOULDER ROLLING... Phase 1/4
|
|
88
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
89
|
+
|
|
90
|
+
⚡ [PARALLEL] Launching 3 exploration agents...
|
|
91
|
+
✅ Exploration complete (7.2s)
|
|
92
|
+
🔨 Implementing...
|
|
93
|
+
✅ Phase 1 complete
|
|
94
|
+
|
|
95
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
96
|
+
🏔️ BOULDER ROLLING... Phase 2/4
|
|
97
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
98
|
+
|
|
99
|
+
⚡ [PARALLEL] Launching 3 exploration agents...
|
|
100
|
+
✅ Exploration complete (6.8s)
|
|
101
|
+
🔨 Implementing...
|
|
102
|
+
❌ Test failed: collision detection
|
|
103
|
+
🔄 Auto-retry 1/3...
|
|
104
|
+
🔨 Fixing...
|
|
105
|
+
✅ Phase 2 complete
|
|
106
|
+
|
|
107
|
+
[...continues automatically...]
|
|
108
|
+
|
|
109
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
110
|
+
🎉 BOULDER REACHED THE TOP!
|
|
111
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
112
|
+
|
|
113
|
+
✅ All 4 phases complete
|
|
114
|
+
✅ All acceptance criteria passed
|
|
115
|
+
✅ Build succeeded
|
|
116
|
+
✅ Tests passed
|
|
117
|
+
|
|
118
|
+
⏱️ Total: 8m 24s
|
|
119
|
+
📊 Retries: 2
|
|
120
|
+
💾 Context saved: 3 checkpoints
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
### Normal vs ULTRAWORK Comparison
|
|
124
|
+
|
|
125
|
+
| Aspect | Normal | ULTRAWORK |
|
|
126
|
+
|--------|--------|-----------|
|
|
127
|
+
| Phase transition | May pause | Auto-continues |
|
|
128
|
+
| On error | Reports and stops | Auto-retries (3x) |
|
|
129
|
+
| Context 70%+ | Warning only | Auto-compress + save |
|
|
130
|
+
| Exploration | Sequential possible | FORCED parallel |
|
|
131
|
+
| Completion | Phase-by-phase | Until ALL done |
|
|
132
|
+
|
|
133
|
+
---
|
|
134
|
+
|
|
17
135
|
## Rules Reference
|
|
18
136
|
|
|
19
|
-
|
|
20
|
-
- `core/development-philosophy.md` -
|
|
21
|
-
- `core/quick-start.md` -
|
|
22
|
-
- `standards/complexity-metrics.md` -
|
|
23
|
-
- `quality/checklist.md` -
|
|
137
|
+
**Must follow `.vibe/rules/`:**
|
|
138
|
+
- `core/development-philosophy.md` - Surgical precision, modify only requested scope
|
|
139
|
+
- `core/quick-start.md` - Korean, DRY, SRP, YAGNI
|
|
140
|
+
- `standards/complexity-metrics.md` - Functions ≤20 lines, nesting ≤3 levels
|
|
141
|
+
- `quality/checklist.md` - Code quality checklist
|
|
24
142
|
|
|
25
143
|
## Description
|
|
26
144
|
|
|
27
|
-
PTCF
|
|
145
|
+
Read PTCF structured SPEC document and execute implementation immediately.
|
|
28
146
|
|
|
29
|
-
> **PLAN, TASKS
|
|
147
|
+
> **PLAN, TASKS documents unnecessary** - SPEC is the executable prompt
|
|
30
148
|
|
|
31
|
-
##
|
|
149
|
+
## Model Orchestration
|
|
32
150
|
|
|
33
|
-
|
|
151
|
+
Automatically select optimal model based on task type:
|
|
34
152
|
|
|
35
153
|
```
|
|
36
154
|
┌─────────────────────────────────────────────────────────────┐
|
|
37
|
-
│ Opus 4.5 (
|
|
38
|
-
│ -
|
|
39
|
-
│ -
|
|
155
|
+
│ Opus 4.5 (Orchestrator) │
|
|
156
|
+
│ - Coordinate overall flow │
|
|
157
|
+
│ - Final decisions/review │
|
|
40
158
|
└─────────────────────────┬───────────────────────────────────┘
|
|
41
159
|
│
|
|
42
160
|
┌─────────────────────┼─────────────────────┐
|
|
43
161
|
↓ ↓ ↓
|
|
44
162
|
┌─────────┐ ┌─────────┐ ┌─────────┐
|
|
45
163
|
│ Haiku │ │ Sonnet │ │ Haiku │
|
|
46
|
-
│
|
|
164
|
+
│(Explore)│ │ (Impl) │ │ (Test) │
|
|
47
165
|
└─────────┘ └─────────┘ └─────────┘
|
|
48
166
|
```
|
|
49
167
|
|
|
50
|
-
###
|
|
168
|
+
### Task Calls by Role
|
|
51
169
|
|
|
52
|
-
|
|
|
53
|
-
|
|
54
|
-
|
|
|
55
|
-
|
|
|
56
|
-
|
|
|
57
|
-
|
|
|
58
|
-
|
|
|
170
|
+
| Task Type | Model | Task Parameter |
|
|
171
|
+
|-----------|-------|----------------|
|
|
172
|
+
| Codebase exploration | Haiku 4.5 | `model: "haiku"` |
|
|
173
|
+
| Core implementation | Sonnet 4 | `model: "sonnet"` |
|
|
174
|
+
| Test writing | Haiku 4.5 | `model: "haiku"` |
|
|
175
|
+
| Architecture decisions | Opus 4.5 | Main session |
|
|
176
|
+
| Final review | Opus 4.5 | Main session |
|
|
59
177
|
|
|
60
|
-
###
|
|
178
|
+
### External LLM Usage (When Enabled)
|
|
61
179
|
|
|
62
|
-
`.vibe/config.json
|
|
180
|
+
When external LLMs are enabled in `.vibe/config.json`:
|
|
63
181
|
|
|
64
|
-
|
|
|
65
|
-
|
|
66
|
-
|
|
|
67
|
-
| UI/UX
|
|
182
|
+
| Role | Model | Condition |
|
|
183
|
+
|------|-------|-----------|
|
|
184
|
+
| Architecture/Debugging | GPT 5.2 | When `vibe gpt <key>` executed |
|
|
185
|
+
| UI/UX Design | Gemini 3 | When `vibe gemini <key>` executed |
|
|
68
186
|
|
|
69
|
-
|
|
70
|
-
- `mcp__vibe-gpt__chat` - GPT 5.2
|
|
71
|
-
- `mcp__vibe-gemini__chat` - Gemini 3 UI/UX
|
|
187
|
+
When external LLM enabled, automatically called via MCP:
|
|
188
|
+
- `mcp__vibe-gpt__chat` - GPT 5.2 architecture consultation
|
|
189
|
+
- `mcp__vibe-gemini__chat` - Gemini 3 UI/UX consultation
|
|
72
190
|
|
|
73
|
-
##
|
|
191
|
+
## Semantic Code Analysis (hi-ai MCP)
|
|
74
192
|
|
|
75
|
-
|
|
193
|
+
Use hi-ai MCP semantic tools to accurately understand codebase before implementation:
|
|
76
194
|
|
|
77
|
-
| MCP
|
|
78
|
-
|
|
79
|
-
| `mcp__vibe__find_symbol` |
|
|
80
|
-
| `mcp__vibe__find_references` |
|
|
81
|
-
| `mcp__vibe__analyze_complexity` |
|
|
82
|
-
| `mcp__vibe__validate_code_quality` |
|
|
195
|
+
| MCP Tool | Purpose | When Used |
|
|
196
|
+
|----------|---------|-----------|
|
|
197
|
+
| `mcp__vibe__find_symbol` | Find symbol definitions | Locate class/function |
|
|
198
|
+
| `mcp__vibe__find_references` | Find references | Analyze impact scope |
|
|
199
|
+
| `mcp__vibe__analyze_complexity` | Analyze complexity | Determine refactoring need |
|
|
200
|
+
| `mcp__vibe__validate_code_quality` | Validate quality | Verify post-implementation quality |
|
|
83
201
|
|
|
84
|
-
###
|
|
202
|
+
### Semantic Analysis Flow
|
|
85
203
|
|
|
86
204
|
```
|
|
87
|
-
|
|
205
|
+
Start Implementation
|
|
88
206
|
│
|
|
89
|
-
├─→ find_symbol:
|
|
207
|
+
├─→ find_symbol: Locate exact position of function/class to modify
|
|
90
208
|
│
|
|
91
|
-
├─→ find_references:
|
|
209
|
+
├─→ find_references: Check all places using that symbol
|
|
92
210
|
│
|
|
93
|
-
├─→ analyze_complexity:
|
|
211
|
+
├─→ analyze_complexity: Check existing code complexity
|
|
94
212
|
│
|
|
95
213
|
↓
|
|
96
|
-
|
|
214
|
+
Implementation (with accurate understanding of impact scope)
|
|
97
215
|
│
|
|
98
216
|
↓
|
|
99
|
-
validate_code_quality:
|
|
217
|
+
validate_code_quality: Verify quality after implementation
|
|
100
218
|
```
|
|
101
219
|
|
|
102
|
-
###
|
|
220
|
+
### Context Management (Session Continuity)
|
|
103
221
|
|
|
104
|
-
| MCP
|
|
105
|
-
|
|
106
|
-
| `mcp__vibe__start_session` |
|
|
107
|
-
| `mcp__vibe__auto_save_context` |
|
|
108
|
-
| `mcp__vibe__restore_session_context` |
|
|
109
|
-
| `mcp__vibe__save_memory` |
|
|
222
|
+
| MCP Tool | Purpose |
|
|
223
|
+
|----------|---------|
|
|
224
|
+
| `mcp__vibe__start_session` | Start session, restore previous context |
|
|
225
|
+
| `mcp__vibe__auto_save_context` | Auto-save current state |
|
|
226
|
+
| `mcp__vibe__restore_session_context` | Restore previous session context |
|
|
227
|
+
| `mcp__vibe__save_memory` | Save important decisions/patterns |
|
|
110
228
|
|
|
111
|
-
|
|
112
|
-
|
|
229
|
+
**On session start**: `mcp__vibe__start_session` auto-restores previous context
|
|
230
|
+
**On session end**: Hook auto-executes `mcp__vibe__auto_save_context`
|
|
113
231
|
|
|
114
232
|
## Process
|
|
115
233
|
|
|
116
|
-
### 1. SPEC
|
|
234
|
+
### 1. Read SPEC and Config
|
|
117
235
|
|
|
118
|
-
`.vibe/specs/{
|
|
236
|
+
Parse `.vibe/specs/{feature-name}.md`:
|
|
119
237
|
|
|
120
|
-
|
|
|
121
|
-
|
|
122
|
-
| `<role>` | AI
|
|
123
|
-
| `<context>` |
|
|
124
|
-
| `<task>` | Phase
|
|
125
|
-
| `<constraints>` |
|
|
126
|
-
| `<output_format>` |
|
|
127
|
-
| `<acceptance>` |
|
|
238
|
+
| Section | Purpose |
|
|
239
|
+
|---------|---------|
|
|
240
|
+
| `<role>` | AI role definition |
|
|
241
|
+
| `<context>` | Background, tech stack, related code |
|
|
242
|
+
| `<task>` | Phase-by-phase task list |
|
|
243
|
+
| `<constraints>` | Constraints |
|
|
244
|
+
| `<output_format>` | Files to create/modify |
|
|
245
|
+
| `<acceptance>` | Verification criteria |
|
|
128
246
|
|
|
129
|
-
`.vibe/config.json
|
|
130
|
-
-
|
|
247
|
+
Check `.vibe/config.json`:
|
|
248
|
+
- External LLM enablement (`models.gpt.enabled`, `models.gemini.enabled`)
|
|
131
249
|
|
|
132
|
-
### 2. Feature
|
|
250
|
+
### 2. Check Feature File
|
|
133
251
|
|
|
134
|
-
`.vibe/features/{
|
|
135
|
-
- BDD Scenarios
|
|
136
|
-
-
|
|
252
|
+
`.vibe/features/{feature-name}.feature`:
|
|
253
|
+
- Check BDD Scenarios
|
|
254
|
+
- Use as test cases
|
|
137
255
|
|
|
138
|
-
### 3. Phase
|
|
256
|
+
### 3. Phase-by-Phase Implementation
|
|
139
257
|
|
|
140
|
-
`<task>`
|
|
258
|
+
Follow `<task>` section Phase order.
|
|
259
|
+
|
|
260
|
+
---
|
|
261
|
+
|
|
262
|
+
## **CRITICAL: Parallel Sub-Agent Execution**
|
|
263
|
+
|
|
264
|
+
> **MUST USE PARALLEL TASK CALLS** - This is REQUIRED, not optional.
|
|
265
|
+
> Sequential execution when parallel is possible = VIOLATION of this workflow.
|
|
266
|
+
|
|
267
|
+
### Mandatory Parallel Exploration (Phase Start)
|
|
268
|
+
|
|
269
|
+
**BEFORE any implementation, you MUST launch these Task calls IN PARALLEL (single message, multiple tool calls):**
|
|
141
270
|
|
|
142
271
|
```
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
272
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
273
|
+
│ STEP 1: PARALLEL EXPLORATION (REQUIRED) │
|
|
274
|
+
│ │
|
|
275
|
+
│ Launch ALL of these in ONE message: │
|
|
276
|
+
│ │
|
|
277
|
+
│ Task(haiku) ─┬─→ "Analyze related files in <context>" │
|
|
278
|
+
│ │ │
|
|
279
|
+
│ Task(haiku) ─┼─→ "Check dependencies and imports" │
|
|
280
|
+
│ │ │
|
|
281
|
+
│ Task(haiku) ─┴─→ "Find existing patterns and conventions" │
|
|
282
|
+
│ │
|
|
283
|
+
│ [If GPT enabled] + MCP(vibe-gpt): Architecture review │
|
|
284
|
+
│ [If Gemini enabled] + MCP(vibe-gemini): UI/UX consultation │
|
|
285
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
286
|
+
│
|
|
287
|
+
↓ (wait for all to complete)
|
|
288
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
289
|
+
│ STEP 2: SYNTHESIZE (Opus) │
|
|
290
|
+
│ - Review all exploration results │
|
|
291
|
+
│ - Decide implementation approach │
|
|
292
|
+
│ - Identify files to modify/create │
|
|
293
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
294
|
+
│
|
|
295
|
+
↓
|
|
296
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
297
|
+
│ STEP 3: IMPLEMENT (Task sonnet) │
|
|
298
|
+
│ - Execute implementation with full context │
|
|
299
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
300
|
+
│
|
|
301
|
+
↓
|
|
302
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
303
|
+
│ STEP 4: TEST (Task haiku) │
|
|
304
|
+
│ - Write tests for implemented code │
|
|
305
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
306
|
+
```
|
|
307
|
+
|
|
308
|
+
### Parallel Task Call Pattern (MUST FOLLOW)
|
|
309
|
+
|
|
310
|
+
**Correct - Single message with multiple parallel Tasks:**
|
|
311
|
+
```
|
|
312
|
+
<message>
|
|
313
|
+
Task(haiku, "Analyze src/components/ for existing patterns")
|
|
314
|
+
Task(haiku, "Check package.json dependencies")
|
|
315
|
+
Task(haiku, "Find usage of similar features in codebase")
|
|
316
|
+
</message>
|
|
317
|
+
→ All 3 run simultaneously, ~3x faster
|
|
318
|
+
```
|
|
319
|
+
|
|
320
|
+
**WRONG - Sequential calls (DO NOT DO THIS):**
|
|
321
|
+
```
|
|
322
|
+
<message>Task(haiku, "Analyze...")</message>
|
|
323
|
+
<message>Task(haiku, "Check...")</message>
|
|
324
|
+
<message>Task(haiku, "Find...")</message>
|
|
325
|
+
→ 3x slower, wastes time
|
|
326
|
+
```
|
|
327
|
+
|
|
328
|
+
### Why Parallel Matters
|
|
329
|
+
|
|
330
|
+
| Approach | Time | Cache Benefit |
|
|
331
|
+
|----------|------|---------------|
|
|
332
|
+
| Sequential (3 Tasks) | ~30s | Cache cold on each |
|
|
333
|
+
| **Parallel (3 Tasks)** | **~10s** | **Cache warmed once, shared** |
|
|
334
|
+
|
|
335
|
+
hi-ai ProjectCache (LRU) caches ts-morph parsing results. Parallel calls share the warmed cache.
|
|
336
|
+
|
|
337
|
+
### Phase Execution Flow
|
|
338
|
+
|
|
339
|
+
```
|
|
340
|
+
Phase N Start
|
|
147
341
|
│
|
|
148
|
-
├─→ [
|
|
149
|
-
│
|
|
342
|
+
├─→ [PARALLEL] Task(haiku) × 2-3: Exploration
|
|
343
|
+
│ - Related code analysis
|
|
344
|
+
│ - Dependency check
|
|
345
|
+
│ - Pattern discovery
|
|
150
346
|
│
|
|
151
|
-
|
|
152
|
-
│ "UI 구현 방향을 제안해주세요"
|
|
347
|
+
↓ (all complete)
|
|
153
348
|
│
|
|
154
|
-
|
|
155
|
-
Opus: 분석 결과 종합, 구현 방향 결정
|
|
349
|
+
├─→ Opus: Synthesize and decide
|
|
156
350
|
│
|
|
157
|
-
|
|
158
|
-
Task(sonnet): 핵심 구현
|
|
159
|
-
"SPEC에 따라 코드를 구현하세요"
|
|
351
|
+
├─→ Task(sonnet): Implementation
|
|
160
352
|
│
|
|
161
|
-
|
|
162
|
-
Task(haiku): 테스트 작성
|
|
163
|
-
"구현된 코드의 테스트를 작성하세요"
|
|
353
|
+
├─→ Task(haiku): Tests
|
|
164
354
|
│
|
|
165
355
|
↓
|
|
166
|
-
|
|
356
|
+
Phase N Complete → Next Phase
|
|
167
357
|
```
|
|
168
358
|
|
|
169
|
-
|
|
170
|
-
```javascript
|
|
171
|
-
// 독립적인 작업은 병렬로 Task 호출
|
|
172
|
-
Task(haiku) - 코드 분석
|
|
173
|
-
Task(haiku) - 의존성 확인
|
|
174
|
-
// → 동시 실행
|
|
175
|
-
|
|
176
|
-
// 순차적 작업
|
|
177
|
-
Task(sonnet) - 구현 (분석 완료 후)
|
|
178
|
-
Task(haiku) - 테스트 (구현 완료 후)
|
|
179
|
-
```
|
|
359
|
+
---
|
|
180
360
|
|
|
181
|
-
1.
|
|
182
|
-
2.
|
|
183
|
-
3.
|
|
184
|
-
4.
|
|
361
|
+
1. **Related code analysis**: Task(haiku) explores `<context>` related code
|
|
362
|
+
2. **File creation/modification**: Task(sonnet) implements per `<output_format>`
|
|
363
|
+
3. **Constraint compliance**: Check `<constraints>`
|
|
364
|
+
4. **Run verification**: Execute verification commands
|
|
185
365
|
|
|
186
|
-
### 4. Acceptance Criteria
|
|
366
|
+
### 4. Acceptance Criteria Verification
|
|
187
367
|
|
|
188
|
-
`<acceptance>`
|
|
189
|
-
- [ ]
|
|
190
|
-
- [ ]
|
|
191
|
-
- [ ]
|
|
368
|
+
Check `<acceptance>` checklist:
|
|
369
|
+
- [ ] Each criterion pass status
|
|
370
|
+
- [ ] Tests pass
|
|
371
|
+
- [ ] Build succeeds
|
|
192
372
|
|
|
193
|
-
### 5. SPEC
|
|
373
|
+
### 5. Update SPEC
|
|
194
374
|
|
|
195
|
-
|
|
375
|
+
Check completed Tasks:
|
|
196
376
|
```markdown
|
|
197
377
|
## Task
|
|
198
378
|
<task>
|
|
199
379
|
### Phase 1: Backend
|
|
200
|
-
1. [x] DB
|
|
201
|
-
2. [x] API
|
|
380
|
+
1. [x] Write DB schema ✅
|
|
381
|
+
2. [x] API endpoint ✅
|
|
202
382
|
...
|
|
203
383
|
</task>
|
|
204
384
|
```
|
|
205
385
|
|
|
206
|
-
## TRUST 5
|
|
386
|
+
## TRUST 5 Principles
|
|
207
387
|
|
|
208
|
-
|
|
388
|
+
Follow during implementation:
|
|
209
389
|
|
|
210
|
-
|
|
|
211
|
-
|
|
212
|
-
| **T**est-first |
|
|
213
|
-
| **R**eadable |
|
|
214
|
-
| **U**nified |
|
|
215
|
-
| **S**ecured |
|
|
216
|
-
| **T**rackable |
|
|
390
|
+
| Principle | Description |
|
|
391
|
+
|-----------|-------------|
|
|
392
|
+
| **T**est-first | Write tests first |
|
|
393
|
+
| **R**eadable | Clear code |
|
|
394
|
+
| **U**nified | Consistent style |
|
|
395
|
+
| **S**ecured | Consider security |
|
|
396
|
+
| **T**rackable | Logging, monitoring |
|
|
217
397
|
|
|
218
398
|
## Input
|
|
219
399
|
|
|
220
|
-
- `.vibe/specs/{
|
|
221
|
-
- `.vibe/features/{
|
|
222
|
-
- `CLAUDE.md` (
|
|
400
|
+
- `.vibe/specs/{feature-name}.md` (PTCF SPEC)
|
|
401
|
+
- `.vibe/features/{feature-name}.feature` (BDD)
|
|
402
|
+
- `CLAUDE.md` (project context)
|
|
223
403
|
|
|
224
404
|
## Output
|
|
225
405
|
|
|
226
|
-
-
|
|
227
|
-
-
|
|
228
|
-
- SPEC
|
|
406
|
+
- Implemented code files
|
|
407
|
+
- Test files
|
|
408
|
+
- Updated SPEC document (checkmarks)
|
|
229
409
|
|
|
230
410
|
## Example
|
|
231
411
|
|
|
232
412
|
```
|
|
233
|
-
User: /vibe.run "
|
|
413
|
+
User: /vibe.run "brick-game"
|
|
234
414
|
|
|
235
415
|
Claude:
|
|
236
|
-
📄 SPEC
|
|
416
|
+
📄 Reading SPEC: .vibe/specs/brick-game.md
|
|
417
|
+
|
|
418
|
+
<role> analysis:
|
|
419
|
+
- Web game senior developer
|
|
420
|
+
- Phaser.js expert
|
|
421
|
+
|
|
422
|
+
<context> analysis:
|
|
423
|
+
- Tech stack: Phaser.js, TypeScript
|
|
424
|
+
- New project
|
|
237
425
|
|
|
238
|
-
<
|
|
239
|
-
-
|
|
240
|
-
-
|
|
426
|
+
<task> analysis:
|
|
427
|
+
- Phase 1: Project setup (3 tasks)
|
|
428
|
+
- Phase 2: Game logic (5 tasks)
|
|
429
|
+
- Phase 3: UI/UX (3 tasks)
|
|
430
|
+
- Phase 4: Testing (2 tasks)
|
|
241
431
|
|
|
242
|
-
|
|
243
|
-
- 기술 스택: Phaser.js, TypeScript
|
|
244
|
-
- 신규 프로젝트
|
|
432
|
+
🚀 Starting Phase 1...
|
|
245
433
|
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
-
|
|
249
|
-
-
|
|
250
|
-
-
|
|
434
|
+
⚡ Launching parallel exploration...
|
|
435
|
+
[Task(haiku) × 3 launched in parallel]
|
|
436
|
+
- Analyzing Phaser.js project patterns
|
|
437
|
+
- Checking TypeScript configuration standards
|
|
438
|
+
- Finding game loop conventions
|
|
251
439
|
|
|
252
|
-
|
|
440
|
+
✅ Exploration complete (3 tasks, 8.2s)
|
|
441
|
+
📋 Synthesizing results...
|
|
253
442
|
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
- TypeScript 설정
|
|
257
|
-
- Phaser.js 설치
|
|
443
|
+
🔨 Implementing Phase 1...
|
|
444
|
+
[Task(sonnet) - Project setup]
|
|
258
445
|
|
|
259
|
-
|
|
260
|
-
|
|
446
|
+
✅ Phase 1 complete
|
|
447
|
+
- package.json created
|
|
448
|
+
- TypeScript configured
|
|
449
|
+
- Phaser.js installed
|
|
261
450
|
|
|
262
|
-
|
|
263
|
-
📊 Acceptance Criteria 검증 중...
|
|
264
|
-
✅ 게임 시작/종료 동작
|
|
265
|
-
✅ 공-패들 충돌 처리
|
|
266
|
-
✅ 점수 표시
|
|
267
|
-
✅ npm run build 성공
|
|
451
|
+
🚀 Starting Phase 2...
|
|
268
452
|
|
|
269
|
-
|
|
453
|
+
⚡ Launching parallel exploration...
|
|
454
|
+
[Task(haiku) × 3 launched in parallel]
|
|
455
|
+
- Analyzing game scene structure
|
|
456
|
+
- Checking physics engine patterns
|
|
457
|
+
- Finding collision detection approaches
|
|
458
|
+
|
|
459
|
+
✅ Exploration complete (3 tasks, 7.5s)
|
|
460
|
+
|
|
461
|
+
🔨 Implementing Phase 2...
|
|
462
|
+
[Task(sonnet) - Game logic]
|
|
463
|
+
|
|
464
|
+
[Implementation continues...]
|
|
465
|
+
|
|
466
|
+
✅ All Phases complete!
|
|
467
|
+
📊 Verifying Acceptance Criteria...
|
|
468
|
+
✅ Game start/end works
|
|
469
|
+
✅ Ball-paddle collision handling
|
|
470
|
+
✅ Score display
|
|
471
|
+
✅ npm run build succeeds
|
|
472
|
+
|
|
473
|
+
🎉 Implementation complete!
|
|
474
|
+
|
|
475
|
+
⏱️ Total time: 4m 32s (vs ~12m sequential)
|
|
270
476
|
```
|
|
271
477
|
|
|
272
|
-
### Phase
|
|
478
|
+
### Phase-specific Execution
|
|
273
479
|
|
|
274
480
|
```
|
|
275
|
-
User: /vibe.run "
|
|
481
|
+
User: /vibe.run "brick-game" --phase 2
|
|
276
482
|
|
|
277
483
|
Claude:
|
|
278
|
-
📄 SPEC
|
|
279
|
-
🎯 Phase 2
|
|
484
|
+
📄 Reading SPEC: .vibe/specs/brick-game.md
|
|
485
|
+
🎯 Executing Phase 2 only.
|
|
486
|
+
|
|
487
|
+
Phase 2: Game Logic
|
|
488
|
+
1. [ ] Paddle movement implementation
|
|
489
|
+
2. [ ] Ball physics engine
|
|
490
|
+
3. [ ] Brick collision handling
|
|
491
|
+
4. [ ] Score system
|
|
492
|
+
5. [ ] Game over conditions
|
|
280
493
|
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
2. [ ] 공 물리엔진
|
|
284
|
-
3. [ ] 벽돌 충돌 처리
|
|
285
|
-
4. [ ] 점수 시스템
|
|
286
|
-
5. [ ] 게임 오버 조건
|
|
494
|
+
⚡ Launching parallel exploration...
|
|
495
|
+
[Task(haiku) × 3 launched in parallel]
|
|
287
496
|
|
|
288
|
-
🚀
|
|
497
|
+
🚀 Starting implementation...
|
|
289
498
|
```
|
|
290
499
|
|
|
291
500
|
## Error Handling
|
|
292
501
|
|
|
293
|
-
|
|
294
|
-
1.
|
|
295
|
-
2. `<constraints>`
|
|
296
|
-
3.
|
|
297
|
-
4.
|
|
502
|
+
On failure:
|
|
503
|
+
1. Check error message
|
|
504
|
+
2. Review `<constraints>`
|
|
505
|
+
3. Fix code and retry
|
|
506
|
+
4. If continues to fail, report to user
|
|
298
507
|
|
|
299
508
|
## Next Step
|
|
300
509
|
|
|
301
510
|
```
|
|
302
|
-
/vibe.verify "
|
|
511
|
+
/vibe.verify "brick-game"
|
|
303
512
|
```
|
|
304
513
|
|
|
305
514
|
---
|