@su-record/vibe 2.9.1 → 2.9.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.md +31 -10
- package/README.ko.md +90 -25
- package/README.md +139 -25
- package/agents/teams/debug-team.md +70 -0
- package/agents/teams/dev-team.md +88 -0
- package/agents/teams/docs-team.md +80 -0
- package/agents/teams/figma/figma-analyst.md +52 -0
- package/agents/teams/figma/figma-architect.md +112 -0
- package/agents/teams/figma/figma-auditor.md +82 -0
- package/agents/teams/figma/figma-builder.md +100 -0
- package/agents/teams/figma-team.md +85 -0
- package/agents/teams/fullstack-team.md +83 -0
- package/agents/teams/lite-team.md +69 -0
- package/agents/teams/migration-team.md +78 -0
- package/agents/teams/refactor-team.md +94 -0
- package/agents/teams/research-team.md +86 -0
- package/agents/teams/review-debate-team.md +125 -0
- package/agents/teams/security-team.md +81 -0
- package/commands/vibe.analyze.md +324 -170
- package/commands/vibe.figma.md +549 -34
- package/commands/vibe.harness.md +177 -0
- package/commands/vibe.review.md +1 -63
- package/commands/vibe.run.md +52 -403
- package/commands/vibe.scaffold.md +195 -0
- package/commands/vibe.spec.md +373 -1003
- package/commands/vibe.trace.md +17 -0
- package/commands/vibe.verify.md +19 -10
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +29 -1
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/update.d.ts.map +1 -1
- package/dist/cli/commands/update.js +4 -2
- package/dist/cli/commands/update.js.map +1 -1
- package/dist/cli/postinstall/constants.d.ts +1 -1
- package/dist/cli/postinstall/constants.d.ts.map +1 -1
- package/dist/cli/postinstall/constants.js +6 -1
- package/dist/cli/postinstall/constants.js.map +1 -1
- package/dist/cli/setup/ProjectSetup.d.ts +12 -1
- package/dist/cli/setup/ProjectSetup.d.ts.map +1 -1
- package/dist/cli/setup/ProjectSetup.js +259 -72
- package/dist/cli/setup/ProjectSetup.js.map +1 -1
- package/dist/cli/setup.d.ts +1 -1
- package/dist/cli/setup.d.ts.map +1 -1
- package/dist/cli/setup.js +1 -1
- package/dist/cli/setup.js.map +1 -1
- package/hooks/scripts/figma-guard.js +220 -0
- package/hooks/scripts/figma-refine.js +315 -0
- package/hooks/scripts/figma-to-scss.js +394 -0
- package/hooks/scripts/figma-validate.js +353 -0
- package/package.json +1 -1
- package/skills/arch-guard/SKILL.md +1 -1
- package/skills/capability-loop/SKILL.md +106 -2
- package/skills/chub-usage/SKILL.md +43 -43
- package/skills/claude-md-guide/SKILL.md +175 -175
- package/skills/design-teach/SKILL.md +33 -33
- package/skills/devlog/SKILL.md +38 -38
- package/skills/event-comms/SKILL.md +23 -13
- package/skills/event-ops/SKILL.md +28 -19
- package/skills/event-planning/SKILL.md +13 -1
- package/skills/priority-todos/SKILL.md +1 -1
- package/skills/vibe.figma/SKILL.md +263 -115
- package/skills/vibe.figma/templates/component-spec.md +168 -0
- package/skills/vibe.figma.convert/SKILL.md +131 -84
- package/skills/vibe.figma.convert/rubrics/conversion-rules.md +12 -0
- package/skills/vibe.figma.extract/SKILL.md +148 -108
- package/skills/vibe.figma.extract/rubrics/image-rules.md +15 -3
- package/skills/vibe.interview/SKILL.md +358 -0
- package/skills/vibe.interview/checklists/api.md +101 -0
- package/skills/vibe.interview/checklists/feature.md +88 -0
- package/skills/vibe.interview/checklists/library.md +95 -0
- package/skills/vibe.interview/checklists/mobile.md +89 -0
- package/skills/vibe.interview/checklists/webapp.md +97 -0
- package/skills/vibe.interview/checklists/website.md +99 -0
- package/skills/vibe.plan/SKILL.md +216 -0
- package/skills/vibe.spec/SKILL.md +1155 -0
- package/{commands/vibe.spec.review.md → skills/vibe.spec.review/SKILL.md} +272 -155
- package/vibe/templates/claudemd-template.md +74 -0
- package/vibe/templates/constitution-template.md +15 -0
- package/vibe/templates/plan-template.md +194 -0
package/commands/vibe.run.md
CHANGED
|
@@ -132,7 +132,7 @@ After implementing each scenario, **automatic verification**:
|
|
|
132
132
|
│ → Fix code (Read full file first) │
|
|
133
133
|
│ → Re-run failed scenario only │
|
|
134
134
|
│ → PASS? → Next scenario │
|
|
135
|
-
│ → FAIL? →
|
|
135
|
+
│ → FAIL (same as prev)? → STUCK → Ask user │
|
|
136
136
|
│ │
|
|
137
137
|
│ 핵심: 검증이 가벼울수록 루프는 더 많이 돈다 │
|
|
138
138
|
│ - 접근성 트리: button "Sign In" = 15 chars │
|
|
@@ -171,9 +171,17 @@ Scenario verification failed (코드 분석 또는 E2E)
|
|
|
171
171
|
↓
|
|
172
172
|
[Re-verify] - Re-run ONLY failed scenario (save tokens)
|
|
173
173
|
↓
|
|
174
|
-
Repeat until pass (
|
|
174
|
+
Repeat until pass (라운드 수 캡 없음 — stuck 감지로 종료)
|
|
175
175
|
```
|
|
176
176
|
|
|
177
|
+
**Termination conditions:**
|
|
178
|
+
- ✅ PASS → 다음 scenario
|
|
179
|
+
- ⚠️ Stuck (같은 failure가 이전 라운드와 동일) → 사용자 질문:
|
|
180
|
+
1. 직접 수정 방법 제공 (예: "LoginForm.tsx 42줄 수정") → 재시도
|
|
181
|
+
2. "proceed" — 남은 실패 TODO 기록 후 다음 scenario
|
|
182
|
+
3. "abort" — 구현 중단
|
|
183
|
+
- `ultrawork` 모드: stuck 시 프롬프트 없이 TODO 기록 후 다음 scenario
|
|
184
|
+
|
|
177
185
|
---
|
|
178
186
|
|
|
179
187
|
## **ULTRAWORK Mode** (ulw)
|
|
@@ -191,7 +199,7 @@ When you include `ultrawork` (or `ulw`), ALL of these activate automatically:
|
|
|
191
199
|
| **Context Compression** | Aggressive auto-save at 70%+ context |
|
|
192
200
|
| **No Pause** | Doesn't wait for confirmation between phases |
|
|
193
201
|
| **External LLMs** | Auto-consults GPT/Gemini if enabled |
|
|
194
|
-
| **Error Recovery** |
|
|
202
|
+
| **Error Recovery** | Loops until 100% or stuck; on stuck auto-records TODO and proceeds (no user prompt) |
|
|
195
203
|
| **Race Review (v2.6.9)** | Multi-LLM review (GPT+Gemini) with cross-validation |
|
|
196
204
|
|
|
197
205
|
### Boulder Loop (Inspired by Sisyphus)
|
|
@@ -258,7 +266,7 @@ Like Sisyphus rolling the boulder, ULTRAWORK **keeps going until done**:
|
|
|
258
266
|
│ └──────────────────────────────────────────────────────────┘ │
|
|
259
267
|
│ │ │
|
|
260
268
|
│ ┌──────────┴──────────┐ │
|
|
261
|
-
│ │ Coverage
|
|
269
|
+
│ │ Coverage == 100%? │ │
|
|
262
270
|
│ └──────────┬──────────┘ │
|
|
263
271
|
│ │ │ │
|
|
264
272
|
│ NO YES │
|
|
@@ -273,9 +281,18 @@ Like Sisyphus rolling the boulder, ULTRAWORK **keeps going until done**:
|
|
|
273
281
|
│ │ │
|
|
274
282
|
│ └──────────→ [Re-generate RTM] │
|
|
275
283
|
│ │
|
|
276
|
-
│
|
|
277
|
-
│
|
|
278
|
-
│
|
|
284
|
+
│ │ │
|
|
285
|
+
│ ↓ │
|
|
286
|
+
│ Stuck? (coverage unchanged from prev iteration) │
|
|
287
|
+
│ │ │
|
|
288
|
+
│ ├─ Interactive: Ask user │
|
|
289
|
+
│ │ 1. Provide resolution → retry │
|
|
290
|
+
│ │ 2. "proceed" → TODO + done │
|
|
291
|
+
│ │ 3. "abort" → stop │
|
|
292
|
+
│ └─ ultrawork: TODO + done │
|
|
293
|
+
│ │
|
|
294
|
+
│ NO iteration cap — loop until 100% OR stuck │
|
|
295
|
+
│ ZERO TOLERANCE for silent scope reduction │
|
|
279
296
|
└─────────────────────────────────────────────────────────────────┘
|
|
280
297
|
```
|
|
281
298
|
|
|
@@ -302,18 +319,18 @@ node -e "import('{{VIBE_PATH_URL}}/node_modules/@su-record/vibe/dist/tools/index
|
|
|
302
319
|
| Rule | Description |
|
|
303
320
|
|------|-------------|
|
|
304
321
|
| **No Scope Reduction** | Never say "simplified" or "basic version" - implement FULL request |
|
|
305
|
-
| **Iteration Tracking** | Display `[{{ITER}}
|
|
322
|
+
| **Iteration Tracking** | Display `[{{ITER}}]` to show progress (no max — loop until done) |
|
|
306
323
|
| **RTM-Based Gap List** | Use `uncoveredRequirements` array - no manual comparison |
|
|
307
|
-
| **Coverage Threshold** | Must reach
|
|
308
|
-
| **
|
|
309
|
-
| **
|
|
310
|
-
| **Diminishing Returns** | Iteration 3+ →
|
|
324
|
+
| **Coverage Threshold** | Must reach 100% coverage to complete |
|
|
325
|
+
| **No Iteration Cap** | Loop until 100% coverage OR stuck (convergence detected) |
|
|
326
|
+
| **Stuck Handling** | If coverage % unchanged between iterations → ask user (proceed/abort/fix), or ultrawork → TODO + done |
|
|
327
|
+
| **Diminishing Returns (Narrowing)** | Iteration 3+ → focus on core requirements (REQ-*-001~003) first; P2/P3 requirements continue to loop but lower priority |
|
|
311
328
|
|
|
312
329
|
**Ralph Loop Output Format:**
|
|
313
330
|
|
|
314
331
|
```
|
|
315
332
|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
316
|
-
🔄 RALPH VERIFICATION [Iteration 1
|
|
333
|
+
🔄 RALPH VERIFICATION [Iteration 1]
|
|
317
334
|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
318
335
|
|
|
319
336
|
📊 RTM Coverage Report: login
|
|
@@ -334,7 +351,7 @@ Requirements Traceability:
|
|
|
334
351
|
❌ REQ-login-008: Error toast → NOT IMPLEMENTED
|
|
335
352
|
✅ REQ-login-009: Session storage → Scenario 4 → (no test)
|
|
336
353
|
|
|
337
|
-
Overall Coverage: 55% ⚠️ BELOW
|
|
354
|
+
Overall Coverage: 55% ⚠️ BELOW 100% TARGET
|
|
338
355
|
|
|
339
356
|
UNCOVERED REQUIREMENTS (auto-extracted from RTM):
|
|
340
357
|
1. REQ-login-004: Remember me checkbox
|
|
@@ -345,7 +362,7 @@ UNCOVERED REQUIREMENTS (auto-extracted from RTM):
|
|
|
345
362
|
⚠️ NOT COMPLETE - Implementing uncovered requirements...
|
|
346
363
|
|
|
347
364
|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
348
|
-
🔄 RALPH VERIFICATION [Iteration 2
|
|
365
|
+
🔄 RALPH VERIFICATION [Iteration 2]
|
|
349
366
|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
350
367
|
|
|
351
368
|
📊 RTM Coverage Report: login
|
|
@@ -356,7 +373,7 @@ Requirements Traceability:
|
|
|
356
373
|
Feature Covered: 9/9 (100%)
|
|
357
374
|
Test Covered: 9/9 (100%)
|
|
358
375
|
|
|
359
|
-
Overall Coverage: 100% ✅
|
|
376
|
+
Overall Coverage: 100% ✅ TARGET REACHED
|
|
360
377
|
|
|
361
378
|
Build: ✅ Passed
|
|
362
379
|
Tests: ✅ 12/12 Passed
|
|
@@ -396,7 +413,7 @@ Claude:
|
|
|
396
413
|
📄 SPEC: .claude/vibe/specs/brick-game.md
|
|
397
414
|
🎯 4 Phases detected
|
|
398
415
|
⚡ Boulder Loop: ENABLED (will continue until all phases complete)
|
|
399
|
-
🔄 Auto-retry: ON (
|
|
416
|
+
🔄 Auto-retry: ON (loop until 100% or stuck → auto-TODO)
|
|
400
417
|
💾 Context compression: AGGRESSIVE
|
|
401
418
|
|
|
402
419
|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
@@ -416,7 +433,7 @@ Claude:
|
|
|
416
433
|
✅ Exploration complete (6.8s)
|
|
417
434
|
🔨 Implementing...
|
|
418
435
|
❌ Test failed: collision detection
|
|
419
|
-
🔄 Auto-retry 1
|
|
436
|
+
🔄 Auto-retry [iteration 1]...
|
|
420
437
|
🔨 Fixing...
|
|
421
438
|
✅ Phase 2 complete
|
|
422
439
|
|
|
@@ -454,13 +471,13 @@ Magic keywords in the user input automatically set the **AutomationLevel**, whic
|
|
|
454
471
|
|
|
455
472
|
### Level Definitions
|
|
456
473
|
|
|
457
|
-
| Level | Name | Keyword(s) | Auto-advance | Auto-retry |
|
|
458
|
-
|
|
459
|
-
| L0 | Manual | `manual` | No | No |
|
|
460
|
-
| L1 | Guided | `guided`, `verify` | No | No |
|
|
461
|
-
| L2 | Semi-auto | `quick` (default) | Yes | Yes | 2 | No | Key points |
|
|
462
|
-
| L3 | Auto | `ultrawork`, `ulw` | Yes | Yes |
|
|
463
|
-
| L4 | Full-auto | `ralph`, `ralplan` | Yes | Yes |
|
|
474
|
+
| Level | Name | Keyword(s) | Auto-advance | Auto-retry | Stuck Behavior | Parallel Agents | Checkpoints |
|
|
475
|
+
|-------|------|------------|--------------|------------|----------------|-----------------|-------------|
|
|
476
|
+
| L0 | Manual | `manual` | No | No | Ask user every step | No | All |
|
|
477
|
+
| L1 | Guided | `guided`, `verify` | No | No | Ask user on stuck | No | All |
|
|
478
|
+
| L2 | Semi-auto | `quick` (default) | Yes | Yes (low cap: 2) | Ask user after 2 retries | No | Key points |
|
|
479
|
+
| L3 | Auto | `ultrawork`, `ulw` | Yes | Yes (no cap) | Auto-TODO + proceed | Yes | Checkpoint-only |
|
|
480
|
+
| L4 | Full-auto | `ralph`, `ralplan` | Yes | Yes (no cap) | Auto-TODO + proceed | Yes | None |
|
|
464
481
|
|
|
465
482
|
### Detection Rule
|
|
466
483
|
|
|
@@ -1043,7 +1060,7 @@ Then: Login success + JWT token returned
|
|
|
1043
1060
|
❌ Then: "Invalid credentials" error message
|
|
1044
1061
|
Actual: "Error occurred" returned
|
|
1045
1062
|
|
|
1046
|
-
[Auto-fix 1
|
|
1063
|
+
[Auto-fix iteration 1]
|
|
1047
1064
|
Cause: Error message not properly set
|
|
1048
1065
|
Fix: auth.service.ts line 42
|
|
1049
1066
|
|
|
@@ -1286,128 +1303,16 @@ Phase N+1 Start (IMMEDIATE - exploration already done!)
|
|
|
1286
1303
|
|
|
1287
1304
|
### Agent Teams — Dev Team
|
|
1288
1305
|
|
|
1289
|
-
>
|
|
1306
|
+
> **팀 정의**: `agents/teams/dev-team.md` 참조
|
|
1290
1307
|
> 설정: `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1` + `teammateMode: in-process` (`~/.claude/settings.json` 전역 — postinstall 자동 설정)
|
|
1291
1308
|
|
|
1292
|
-
**팀 구성:**
|
|
1293
|
-
|
|
1294
|
-
| 팀원 | 역할 |
|
|
1295
|
-
|------|------|
|
|
1296
|
-
| architect (리더) | 설계 결정, 구현 방향 조율, SPEC 준수 검증, 팀 합의 주도 |
|
|
1297
|
-
| implementer | 핵심 비즈니스 로직 구현, architect 설계를 따라 코드 작성 |
|
|
1298
|
-
| tester | 구현 완료 즉시 테스트 작성, 실패 시 implementer에 피드백 |
|
|
1299
|
-
| security-reviewer | 실시간 보안 취약점 검증, 블로킹 이슈 식별 |
|
|
1300
|
-
|
|
1301
|
-
**실행 순서:**
|
|
1302
|
-
|
|
1303
|
-
1. `TeamCreate(team_name="dev-{feature}")` — 팀 + 공유 태스크 리스트 생성
|
|
1304
|
-
2. 4개 팀원 병렬 생성 — 각각 `Task(team_name=..., name=..., subagent_type=...)` 으로 spawn
|
|
1305
|
-
3. architect가 SPEC Phase를 분석하여 구현 계획 수립 → TaskList에 작업 등록
|
|
1306
|
-
4. 팀원들이 TaskList에서 작업을 claim하고, SendMessage로 실시간 협업
|
|
1307
|
-
5. 모든 시나리오 검증 완료 → 팀원 shutdown_request → TeamDelete로 정리
|
|
1308
|
-
|
|
1309
|
-
**팀원 spawn 패턴:**
|
|
1310
|
-
|
|
1311
|
-
```text
|
|
1312
|
-
TeamCreate(team_name="dev-{feature}", description="Implementation team for {feature} Phase {N}")
|
|
1313
|
-
|
|
1314
|
-
# 4개 병렬 spawn
|
|
1315
|
-
Task(team_name="dev-{feature}", name="architect", subagent_type="architect",
|
|
1316
|
-
prompt="구현 팀 리더. Phase {N}의 SPEC을 분석하고 구현 계획을 수립하세요.
|
|
1317
|
-
SPEC: {spec_content}
|
|
1318
|
-
Feature Scenarios: {scenarios}
|
|
1319
|
-
역할: 설계 결정, 구현 방향 조율, 팀원 간 충돌 해결, SPEC 준수 검증.
|
|
1320
|
-
TaskList에 구현 작업을 등록하세요. implementer에게 설계를 SendMessage로 전달하세요.
|
|
1321
|
-
모든 시나리오가 통과할 때까지 팀을 조율하세요.")
|
|
1322
|
-
|
|
1323
|
-
Task(team_name="dev-{feature}", name="implementer", subagent_type="implementer",
|
|
1324
|
-
mode="bypassPermissions",
|
|
1325
|
-
prompt="구현 팀 코드 담당. SPEC: {spec_content}
|
|
1326
|
-
역할: architect의 설계를 따라 프로덕션 코드 작성.
|
|
1327
|
-
architect에게서 설계를 받으면 구현을 시작하세요.
|
|
1328
|
-
컴포넌트 구현 완료 시 tester에게 SendMessage로 테스트 요청하세요.
|
|
1329
|
-
security-reviewer의 블로킹 이슈는 즉시 수정하세요.
|
|
1330
|
-
TaskList에서 구현 작업을 claim하세요.")
|
|
1331
|
-
|
|
1332
|
-
Task(team_name="dev-{feature}", name="tester", subagent_type="tester",
|
|
1333
|
-
mode="bypassPermissions",
|
|
1334
|
-
prompt="구현 팀 테스트 담당. SPEC: {spec_content}
|
|
1335
|
-
역할: implementer가 완료한 컴포넌트부터 즉시 테스트 작성.
|
|
1336
|
-
구현 전체를 기다리지 말고 컴포넌트 단위로 점진적 테스트하세요.
|
|
1337
|
-
테스트 실패 시 implementer에게 SendMessage로 피드백하세요.
|
|
1338
|
-
edge case 발견 시 architect에게 설계 검토를 요청하세요.
|
|
1339
|
-
TaskList에서 테스트 작업을 claim하세요.")
|
|
1340
|
-
|
|
1341
|
-
Task(team_name="dev-{feature}", name="security-reviewer", subagent_type="security-reviewer",
|
|
1342
|
-
mode="bypassPermissions",
|
|
1343
|
-
prompt="구현 팀 보안 담당. SPEC: {spec_content}
|
|
1344
|
-
역할: 구현 코드의 보안 취약점 실시간 검증.
|
|
1345
|
-
보안 이슈는 BLOCKING — implementer에게 SendMessage로 즉시 수정 요청하세요.
|
|
1346
|
-
심각한 설계 결함 발견 시 architect에게 SendMessage로 알리세요.
|
|
1347
|
-
TaskList에서 보안 검증 작업을 claim하세요.")
|
|
1348
|
-
```
|
|
1349
|
-
|
|
1350
|
-
**팀원 간 통신 예시:**
|
|
1351
|
-
|
|
1352
|
-
```text
|
|
1353
|
-
architect → implementer: "Repository 패턴으로 데이터 접근 계층 분리해서 구현해주세요. 인터페이스는 TaskList에 등록했습니다"
|
|
1354
|
-
implementer → tester: "LoginService 구현 완료. 정상/실패/잠금 시나리오 테스트 요청합니다"
|
|
1355
|
-
security-reviewer → implementer: "SQL injection 위험: raw query 사용 감지. parameterized query로 즉시 수정 필요"
|
|
1356
|
-
tester → architect: "edge case 3건 실패 (빈 입력, 특수문자, 동시 요청). 설계 검토 요청합니다"
|
|
1357
|
-
architect → broadcast: "Phase {N} 모든 시나리오 통과 확인. 구현 완료합니다"
|
|
1358
|
-
```
|
|
1359
|
-
|
|
1360
|
-
**팀 모드 vs 기존 병렬 모드 비교:**
|
|
1361
|
-
|
|
1362
|
-
| 측면 | 기존 병렬 모드 | Agent Teams |
|
|
1363
|
-
|------|---------------|-------------|
|
|
1364
|
-
| 통신 | 결과만 수집 | 실시간 상호 피드백 |
|
|
1365
|
-
| 테스트 | 구현 후 별도 단계 | 구현과 동시 진행 |
|
|
1366
|
-
| 보안 | 사후 리뷰 | 실시간 검증 |
|
|
1367
|
-
| 설계 변경 | 메인 에이전트만 결정 | architect 주도 팀 합의 |
|
|
1368
|
-
| 오류 복구 | 재시도 루프 | 팀 내 즉시 피드백 |
|
|
1369
|
-
|
|
1370
1309
|
**활성화 조건 (Dev Team Full — 4명):**
|
|
1371
1310
|
- ULTRAWORK 모드 + 3개 이상 시나리오
|
|
1372
1311
|
- 또는 복잡도 점수 20+ (High)
|
|
1373
1312
|
|
|
1374
1313
|
### Agent Teams — Lite Team (Normal Mode)
|
|
1375
1314
|
|
|
1376
|
-
>
|
|
1377
|
-
> security-reviewer를 제외한 architect + implementer + tester 3명 구성.
|
|
1378
|
-
|
|
1379
|
-
**팀 구성:**
|
|
1380
|
-
|
|
1381
|
-
| 팀원 | 역할 |
|
|
1382
|
-
|------|------|
|
|
1383
|
-
| architect (리더) | 설계 결정, 시나리오 분석, 구현 방향 조율 |
|
|
1384
|
-
| implementer | 핵심 비즈니스 로직 구현 |
|
|
1385
|
-
| tester | 구현 완료 즉시 테스트 작성, 실패 시 피드백 |
|
|
1386
|
-
|
|
1387
|
-
**spawn 패턴:**
|
|
1388
|
-
|
|
1389
|
-
```text
|
|
1390
|
-
TeamCreate(team_name="lite-{feature}", description="Lite implementation team for {feature} Phase {N}")
|
|
1391
|
-
|
|
1392
|
-
Task(team_name="lite-{feature}", name="architect", subagent_type="architect",
|
|
1393
|
-
prompt="Lite 팀 리더. Phase {N}의 SPEC을 분석하고 구현 계획을 수립하세요.
|
|
1394
|
-
SPEC: {spec_content}
|
|
1395
|
-
Feature Scenarios: {scenarios}
|
|
1396
|
-
역할: 설계 결정, 구현 방향 조율. TaskList에 작업을 등록하세요.
|
|
1397
|
-
implementer에게 설계를 SendMessage로 전달하세요.")
|
|
1398
|
-
|
|
1399
|
-
Task(team_name="lite-{feature}", name="implementer", subagent_type="implementer",
|
|
1400
|
-
mode="bypassPermissions",
|
|
1401
|
-
prompt="Lite 팀 코드 담당. SPEC: {spec_content}
|
|
1402
|
-
역할: architect의 설계를 따라 프로덕션 코드 작성.
|
|
1403
|
-
완료 시 tester에게 SendMessage로 테스트 요청하세요.")
|
|
1404
|
-
|
|
1405
|
-
Task(team_name="lite-{feature}", name="tester", subagent_type="tester",
|
|
1406
|
-
mode="bypassPermissions",
|
|
1407
|
-
prompt="Lite 팀 테스트 담당. SPEC: {spec_content}
|
|
1408
|
-
역할: implementer가 완료한 컴포넌트부터 즉시 테스트 작성.
|
|
1409
|
-
테스트 실패 시 implementer에게 SendMessage로 피드백하세요.")
|
|
1410
|
-
```
|
|
1315
|
+
> **팀 정의**: `agents/teams/lite-team.md` 참조
|
|
1411
1316
|
|
|
1412
1317
|
**활성화 조건 (Lite Team — 3명):**
|
|
1413
1318
|
- 일반 모드 + 3개 이상 시나리오
|
|
@@ -1424,58 +1329,7 @@ Task(team_name="lite-{feature}", name="tester", subagent_type="tester",
|
|
|
1424
1329
|
|
|
1425
1330
|
### Agent Teams — Review Team
|
|
1426
1331
|
|
|
1427
|
-
>
|
|
1428
|
-
> `/vibe.review` 시 P1/P2 이슈가 발견되면 자동 활성화.
|
|
1429
|
-
|
|
1430
|
-
**팀 구성:**
|
|
1431
|
-
|
|
1432
|
-
| 팀원 | 역할 |
|
|
1433
|
-
|------|------|
|
|
1434
|
-
| security-reviewer (리더) | 보안 이슈 우선순위 결정, 교차 검증 주도, 오탐 제거 |
|
|
1435
|
-
| architecture-reviewer | 아키텍처 위반 검증, 설계 패턴 평가 |
|
|
1436
|
-
| performance-reviewer | 성능 병목 검증, N+1 쿼리/메모리 누수 확인 |
|
|
1437
|
-
| simplicity-reviewer | 과도한 복잡성 검증, 불필요한 추상화 식별 |
|
|
1438
|
-
|
|
1439
|
-
**spawn 패턴:**
|
|
1440
|
-
|
|
1441
|
-
```text
|
|
1442
|
-
TeamCreate(team_name="review-{feature}", description="Cross-validation review team for {feature}")
|
|
1443
|
-
|
|
1444
|
-
Task(team_name="review-{feature}", name="security-reviewer", subagent_type="security-reviewer",
|
|
1445
|
-
mode="bypassPermissions",
|
|
1446
|
-
prompt="Review team leader. Cross-validate P1/P2 issues found in parallel review.
|
|
1447
|
-
Files: {changed_files}
|
|
1448
|
-
Found issues: {p1_p2_issues}
|
|
1449
|
-
Role: Verify each P1/P2 issue is genuine (not false positive). Prioritize by actual impact.
|
|
1450
|
-
Send disputed findings to relevant reviewer for confirmation via SendMessage.")
|
|
1451
|
-
|
|
1452
|
-
Task(team_name="review-{feature}", name="architecture-reviewer", subagent_type="architecture-reviewer",
|
|
1453
|
-
mode="bypassPermissions",
|
|
1454
|
-
prompt="Review team architecture expert. Validate architecture-related findings.
|
|
1455
|
-
Files: {changed_files}
|
|
1456
|
-
Role: Confirm or dispute architecture violations. Check SOLID principles and layer boundaries.")
|
|
1457
|
-
|
|
1458
|
-
Task(team_name="review-{feature}", name="performance-reviewer", subagent_type="performance-reviewer",
|
|
1459
|
-
mode="bypassPermissions",
|
|
1460
|
-
prompt="Review team performance expert. Validate performance-related findings.
|
|
1461
|
-
Files: {changed_files}
|
|
1462
|
-
Role: Confirm or dispute performance issues. Run complexity analysis on flagged code.")
|
|
1463
|
-
|
|
1464
|
-
Task(team_name="review-{feature}", name="simplicity-reviewer", subagent_type="simplicity-reviewer",
|
|
1465
|
-
mode="bypassPermissions",
|
|
1466
|
-
prompt="Review team simplicity advocate. Challenge over-engineering findings.
|
|
1467
|
-
Files: {changed_files}
|
|
1468
|
-
Role: Verify YAGNI violations. Confirm or dispute unnecessary abstraction flags.")
|
|
1469
|
-
```
|
|
1470
|
-
|
|
1471
|
-
**팀원 간 통신 예시:**
|
|
1472
|
-
|
|
1473
|
-
```text
|
|
1474
|
-
security-reviewer → architecture-reviewer: "SQL injection finding in users.py:42 — is this pattern used elsewhere?"
|
|
1475
|
-
architecture-reviewer → security-reviewer: "Confirmed. Same pattern in orders.py:78. Elevate to P1."
|
|
1476
|
-
performance-reviewer → security-reviewer: "N+1 query finding is false positive — already uses prefetch_related."
|
|
1477
|
-
security-reviewer → broadcast: "Review complete. 2 P1 confirmed, 1 P2 downgraded to P3."
|
|
1478
|
-
```
|
|
1332
|
+
> **팀 정의**: `agents/teams/review-debate-team.md` 참조
|
|
1479
1333
|
|
|
1480
1334
|
**활성화 조건:**
|
|
1481
1335
|
|
|
@@ -1484,42 +1338,7 @@ security-reviewer → broadcast: "Review complete. 2 P1 confirmed, 1 P2 downgrad
|
|
|
1484
1338
|
|
|
1485
1339
|
### Agent Teams — Debug Team
|
|
1486
1340
|
|
|
1487
|
-
>
|
|
1488
|
-
> UltraQA 3회 실패 진입 시 또는 빌드 실패 3회+ 시 자동 활성화.
|
|
1489
|
-
|
|
1490
|
-
**팀 구성:**
|
|
1491
|
-
|
|
1492
|
-
| 팀원 | 역할 |
|
|
1493
|
-
|------|------|
|
|
1494
|
-
| architect (리더) | 근본 원인 진단, 수정 방향 설계, 아키텍처 레벨 문제 식별 |
|
|
1495
|
-
| implementer | architect 진단에 따라 최소 diff 수정 적용 |
|
|
1496
|
-
| tester | 수정 후 즉시 테스트 실행, 회귀 검증 |
|
|
1497
|
-
|
|
1498
|
-
**spawn 패턴:**
|
|
1499
|
-
|
|
1500
|
-
```text
|
|
1501
|
-
TeamCreate(team_name="debug-{feature}", description="Debug team for {feature} build/test failure")
|
|
1502
|
-
|
|
1503
|
-
Task(team_name="debug-{feature}", name="architect", subagent_type="architect",
|
|
1504
|
-
prompt="Debug team leader. Diagnose root cause of build/test failure.
|
|
1505
|
-
Error: {error_output}
|
|
1506
|
-
Failed files: {failed_files}
|
|
1507
|
-
Previous attempts: {attempt_history}
|
|
1508
|
-
Role: Analyze error, identify root cause (not symptoms). Design minimal fix.
|
|
1509
|
-
Send diagnosis to implementer via SendMessage. If same failure 3x, escalate to user.")
|
|
1510
|
-
|
|
1511
|
-
Task(team_name="debug-{feature}", name="implementer", subagent_type="implementer",
|
|
1512
|
-
mode="bypassPermissions",
|
|
1513
|
-
prompt="Debug team fixer. Apply minimal-diff fixes based on architect diagnosis.
|
|
1514
|
-
Role: Wait for architect diagnosis. Apply ONLY the specific fix recommended.
|
|
1515
|
-
Do NOT refactor surrounding code. Notify tester when fix is applied.")
|
|
1516
|
-
|
|
1517
|
-
Task(team_name="debug-{feature}", name="tester", subagent_type="tester",
|
|
1518
|
-
mode="bypassPermissions",
|
|
1519
|
-
prompt="Debug team verifier. Run tests after each fix to verify resolution.
|
|
1520
|
-
Role: Wait for implementer fix notification. Run failing tests.
|
|
1521
|
-
Report results to architect. If still failing, provide detailed error output.")
|
|
1522
|
-
```
|
|
1341
|
+
> **팀 정의**: `agents/teams/debug-team.md` 참조
|
|
1523
1342
|
|
|
1524
1343
|
**활성화 조건:**
|
|
1525
1344
|
|
|
@@ -1528,48 +1347,7 @@ Task(team_name="debug-{feature}", name="tester", subagent_type="tester",
|
|
|
1528
1347
|
|
|
1529
1348
|
### Agent Teams — Research Team
|
|
1530
1349
|
|
|
1531
|
-
>
|
|
1532
|
-
> 리서치 결과 교차 검증 및 충돌 해결.
|
|
1533
|
-
|
|
1534
|
-
**팀 구성:**
|
|
1535
|
-
|
|
1536
|
-
| 팀원 | 역할 |
|
|
1537
|
-
|------|------|
|
|
1538
|
-
| best-practices-agent (리더) | 베스트 프랙티스 수집, 리서치 통합, 충돌 해결 |
|
|
1539
|
-
| security-advisory-agent | 보안 취약점 조사, CVE 확인, 보안 권장사항 |
|
|
1540
|
-
| codebase-patterns-agent | 기존 코드베이스 패턴 분석, 유사 구현 참조 |
|
|
1541
|
-
| framework-docs-agent | 프레임워크 최신 문서 확인, API 변경사항 추적 |
|
|
1542
|
-
|
|
1543
|
-
**spawn 패턴:**
|
|
1544
|
-
|
|
1545
|
-
```text
|
|
1546
|
-
TeamCreate(team_name="research-{feature}", description="Research team for {feature} SPEC")
|
|
1547
|
-
|
|
1548
|
-
Task(team_name="research-{feature}", name="best-practices-agent", subagent_type="best-practices-agent",
|
|
1549
|
-
prompt="Research team leader. Coordinate research for {feature} SPEC.
|
|
1550
|
-
Tech stack: {tech_stack}
|
|
1551
|
-
Requirements: {requirements}
|
|
1552
|
-
Role: Collect best practices. Integrate findings from all researchers.
|
|
1553
|
-
Resolve conflicting recommendations. Produce unified research summary.")
|
|
1554
|
-
|
|
1555
|
-
Task(team_name="research-{feature}", name="security-advisory-agent", subagent_type="security-advisory-agent",
|
|
1556
|
-
prompt="Research team security specialist. Check security advisories for {feature}.
|
|
1557
|
-
Tech stack: {tech_stack}
|
|
1558
|
-
Role: Check CVEs for dependencies. Identify security patterns to follow.
|
|
1559
|
-
Share findings with best-practices-agent for integration.")
|
|
1560
|
-
|
|
1561
|
-
Task(team_name="research-{feature}", name="codebase-patterns-agent", subagent_type="codebase-patterns-agent",
|
|
1562
|
-
prompt="Research team codebase analyst. Analyze existing patterns for {feature}.
|
|
1563
|
-
Project path: {project_path}
|
|
1564
|
-
Role: Find similar implementations in codebase. Extract conventions and patterns.
|
|
1565
|
-
Share findings with best-practices-agent.")
|
|
1566
|
-
|
|
1567
|
-
Task(team_name="research-{feature}", name="framework-docs-agent", subagent_type="framework-docs-agent",
|
|
1568
|
-
prompt="Research team docs specialist. Check latest framework docs for {feature}.
|
|
1569
|
-
Tech stack: {tech_stack}
|
|
1570
|
-
Role: Verify API usage against latest docs. Check for breaking changes.
|
|
1571
|
-
Share findings with best-practices-agent.")
|
|
1572
|
-
```
|
|
1350
|
+
> **팀 정의**: `agents/teams/research-team.md` 참조
|
|
1573
1351
|
|
|
1574
1352
|
**활성화 조건:**
|
|
1575
1353
|
|
|
@@ -1578,50 +1356,7 @@ Task(team_name="research-{feature}", name="framework-docs-agent", subagent_type=
|
|
|
1578
1356
|
|
|
1579
1357
|
### Agent Teams — Security Team
|
|
1580
1358
|
|
|
1581
|
-
>
|
|
1582
|
-
> 인증, 권한, 결제, 개인정보 관련 코드 변경 감지 시 자동 활성화.
|
|
1583
|
-
|
|
1584
|
-
**팀 구성:**
|
|
1585
|
-
|
|
1586
|
-
| 팀원 | 역할 |
|
|
1587
|
-
|------|------|
|
|
1588
|
-
| security-reviewer (리더) | OWASP Top 10 검증, 보안 이슈 우선순위 결정 |
|
|
1589
|
-
| data-integrity-reviewer | 데이터 무결성, 트랜잭션 관리, 입력 검증 |
|
|
1590
|
-
| security-advisory-agent | 사용 라이브러리 CVE 확인, 보안 패치 확인 |
|
|
1591
|
-
| tester | 보안 테스트 케이스 작성, 침투 테스트 시나리오 검증 |
|
|
1592
|
-
|
|
1593
|
-
**spawn 패턴:**
|
|
1594
|
-
|
|
1595
|
-
```text
|
|
1596
|
-
TeamCreate(team_name="security-{feature}", description="Security audit team for {feature}")
|
|
1597
|
-
|
|
1598
|
-
Task(team_name="security-{feature}", name="security-reviewer", subagent_type="security-reviewer",
|
|
1599
|
-
mode="bypassPermissions",
|
|
1600
|
-
prompt="Security team leader. Comprehensive security audit for {feature}.
|
|
1601
|
-
Files: {changed_files}
|
|
1602
|
-
Role: OWASP Top 10 check. XSS, CSRF, SQL injection, auth bypass.
|
|
1603
|
-
Coordinate with data-integrity-reviewer for data flow analysis.
|
|
1604
|
-
Any P1 finding blocks merge — notify team immediately.")
|
|
1605
|
-
|
|
1606
|
-
Task(team_name="security-{feature}", name="data-integrity-reviewer", subagent_type="data-integrity-reviewer",
|
|
1607
|
-
mode="bypassPermissions",
|
|
1608
|
-
prompt="Security team data specialist. Verify data integrity for {feature}.
|
|
1609
|
-
Files: {changed_files}
|
|
1610
|
-
Role: Check transaction management, input validation, data sanitization.
|
|
1611
|
-
Report findings to security-reviewer.")
|
|
1612
|
-
|
|
1613
|
-
Task(team_name="security-{feature}", name="security-advisory-agent", subagent_type="security-advisory-agent",
|
|
1614
|
-
prompt="Security team advisory specialist. Check dependencies for {feature}.
|
|
1615
|
-
Role: Scan for known CVEs in project dependencies. Check security advisories.
|
|
1616
|
-
Report critical findings to security-reviewer.")
|
|
1617
|
-
|
|
1618
|
-
Task(team_name="security-{feature}", name="tester", subagent_type="tester",
|
|
1619
|
-
mode="bypassPermissions",
|
|
1620
|
-
prompt="Security team test specialist. Write security-focused tests for {feature}.
|
|
1621
|
-
Files: {changed_files}
|
|
1622
|
-
Role: Write tests for auth bypass, injection, permission escalation.
|
|
1623
|
-
Report test results to security-reviewer.")
|
|
1624
|
-
```
|
|
1359
|
+
> **팀 정의**: `agents/teams/security-team.md` 참조
|
|
1625
1360
|
|
|
1626
1361
|
**활성화 조건:**
|
|
1627
1362
|
|
|
@@ -1630,48 +1365,7 @@ Task(team_name="security-{feature}", name="tester", subagent_type="tester",
|
|
|
1630
1365
|
|
|
1631
1366
|
### Agent Teams — Migration Team
|
|
1632
1367
|
|
|
1633
|
-
>
|
|
1634
|
-
> 대규모 의존성 업그레이드, 프레임워크 전환 시 활성화.
|
|
1635
|
-
|
|
1636
|
-
**팀 구성:**
|
|
1637
|
-
|
|
1638
|
-
| 팀원 | 역할 |
|
|
1639
|
-
|------|------|
|
|
1640
|
-
| architect (리더) | 마이그레이션 전략 설계, 호환성 분석, 단계별 계획 |
|
|
1641
|
-
| implementer | 코드 변환 실행, API 변경 적용 |
|
|
1642
|
-
| tester | 마이그레이션 후 회귀 테스트, 호환성 검증 |
|
|
1643
|
-
| build-error-resolver | 빌드 에러 즉시 해결, 타입 에러 수정 |
|
|
1644
|
-
|
|
1645
|
-
**spawn 패턴:**
|
|
1646
|
-
|
|
1647
|
-
```text
|
|
1648
|
-
TeamCreate(team_name="migration-{feature}", description="Migration team for {feature}")
|
|
1649
|
-
|
|
1650
|
-
Task(team_name="migration-{feature}", name="architect", subagent_type="architect",
|
|
1651
|
-
prompt="Migration team leader. Plan migration strategy for {feature}.
|
|
1652
|
-
From: {current_version}
|
|
1653
|
-
To: {target_version}
|
|
1654
|
-
Role: Analyze breaking changes. Create step-by-step migration plan.
|
|
1655
|
-
Assign file groups to implementer. Monitor build-error-resolver for blockers.")
|
|
1656
|
-
|
|
1657
|
-
Task(team_name="migration-{feature}", name="implementer", subagent_type="implementer",
|
|
1658
|
-
mode="bypassPermissions",
|
|
1659
|
-
prompt="Migration team implementer. Execute code migration for {feature}.
|
|
1660
|
-
Role: Apply migration changes per architect plan. Work file-by-file.
|
|
1661
|
-
Notify tester after each file group. Report blockers to architect.")
|
|
1662
|
-
|
|
1663
|
-
Task(team_name="migration-{feature}", name="tester", subagent_type="tester",
|
|
1664
|
-
mode="bypassPermissions",
|
|
1665
|
-
prompt="Migration team tester. Verify migration correctness for {feature}.
|
|
1666
|
-
Role: Run existing tests after each migration step. Add new tests for changed APIs.
|
|
1667
|
-
Report regressions to implementer and architect.")
|
|
1668
|
-
|
|
1669
|
-
Task(team_name="migration-{feature}", name="build-error-resolver", subagent_type="build-error-resolver",
|
|
1670
|
-
mode="bypassPermissions",
|
|
1671
|
-
prompt="Migration team build fixer. Resolve build errors during {feature} migration.
|
|
1672
|
-
Role: Monitor build output. Apply minimal-diff type fixes for migration errors.
|
|
1673
|
-
Notify implementer of patterns requiring broader changes.")
|
|
1674
|
-
```
|
|
1368
|
+
> **팀 정의**: `agents/teams/migration-team.md` 참조
|
|
1675
1369
|
|
|
1676
1370
|
**활성화 조건:**
|
|
1677
1371
|
|
|
@@ -1680,52 +1374,7 @@ Task(team_name="migration-{feature}", name="build-error-resolver", subagent_type
|
|
|
1680
1374
|
|
|
1681
1375
|
### Agent Teams — Fullstack Team
|
|
1682
1376
|
|
|
1683
|
-
>
|
|
1684
|
-
> API 엔드포인트 + UI 컴포넌트를 동시에 개발.
|
|
1685
|
-
|
|
1686
|
-
**팀 구성:**
|
|
1687
|
-
|
|
1688
|
-
| 팀원 | 역할 |
|
|
1689
|
-
|------|------|
|
|
1690
|
-
| architect (리더) | API 인터페이스 설계, frontend/backend 분업 조율 |
|
|
1691
|
-
| implementer-backend | Backend API, 데이터베이스, 서비스 로직 구현 |
|
|
1692
|
-
| implementer-frontend | Frontend UI, 상태 관리, API 연동 구현 |
|
|
1693
|
-
| tester | E2E 테스트, API 테스트, 통합 테스트 |
|
|
1694
|
-
|
|
1695
|
-
**spawn 패턴:**
|
|
1696
|
-
|
|
1697
|
-
```text
|
|
1698
|
-
TeamCreate(team_name="fullstack-{feature}", description="Fullstack team for {feature}")
|
|
1699
|
-
|
|
1700
|
-
Task(team_name="fullstack-{feature}", name="architect", subagent_type="architect",
|
|
1701
|
-
prompt="Fullstack team leader. Design API contract for {feature}.
|
|
1702
|
-
SPEC: {spec_content}
|
|
1703
|
-
Role: Define API endpoints (request/response schemas). Design data models.
|
|
1704
|
-
Share API contract with both implementers. Coordinate integration timing.")
|
|
1705
|
-
|
|
1706
|
-
Task(team_name="fullstack-{feature}", name="implementer-backend", subagent_type="implementer",
|
|
1707
|
-
mode="bypassPermissions",
|
|
1708
|
-
prompt="Fullstack team backend developer. Implement API for {feature}.
|
|
1709
|
-
SPEC: {spec_content}
|
|
1710
|
-
Role: Implement API endpoints per architect's contract. Create data models and services.
|
|
1711
|
-
Notify implementer-frontend when endpoints are ready for integration.
|
|
1712
|
-
Share API response samples with tester.")
|
|
1713
|
-
|
|
1714
|
-
Task(team_name="fullstack-{feature}", name="implementer-frontend", subagent_type="implementer",
|
|
1715
|
-
mode="bypassPermissions",
|
|
1716
|
-
prompt="Fullstack team frontend developer. Implement UI for {feature}.
|
|
1717
|
-
SPEC: {spec_content}
|
|
1718
|
-
Role: Build UI components and pages per SPEC. Use architect's API contract for types.
|
|
1719
|
-
Start with mock data, switch to real API when backend notifies readiness.
|
|
1720
|
-
Notify tester when UI is ready for E2E testing.")
|
|
1721
|
-
|
|
1722
|
-
Task(team_name="fullstack-{feature}", name="tester", subagent_type="tester",
|
|
1723
|
-
mode="bypassPermissions",
|
|
1724
|
-
prompt="Fullstack team tester. Write comprehensive tests for {feature}.
|
|
1725
|
-
SPEC: {spec_content}
|
|
1726
|
-
Role: Write API tests (after backend ready). Write E2E tests (after frontend ready).
|
|
1727
|
-
Test API contract conformance. Report integration issues to architect.")
|
|
1728
|
-
```
|
|
1377
|
+
> **팀 정의**: `agents/teams/fullstack-team.md` 참조
|
|
1729
1378
|
|
|
1730
1379
|
**활성화 조건:**
|
|
1731
1380
|
|
|
@@ -2043,7 +1692,7 @@ Then: Login success + JWT token returned
|
|
|
2043
1692
|
❌ Then: "Invalid credentials" error message
|
|
2044
1693
|
Actual: "Error" returned
|
|
2045
1694
|
|
|
2046
|
-
🔄 Auto-fix 1
|
|
1695
|
+
🔄 Auto-fix [iteration 1]...
|
|
2047
1696
|
Fix: auth.service.ts line 42
|
|
2048
1697
|
|
|
2049
1698
|
🔍 Re-verifying...
|