@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.
Files changed (79) hide show
  1. package/CLAUDE.md +31 -10
  2. package/README.ko.md +90 -25
  3. package/README.md +139 -25
  4. package/agents/teams/debug-team.md +70 -0
  5. package/agents/teams/dev-team.md +88 -0
  6. package/agents/teams/docs-team.md +80 -0
  7. package/agents/teams/figma/figma-analyst.md +52 -0
  8. package/agents/teams/figma/figma-architect.md +112 -0
  9. package/agents/teams/figma/figma-auditor.md +82 -0
  10. package/agents/teams/figma/figma-builder.md +100 -0
  11. package/agents/teams/figma-team.md +85 -0
  12. package/agents/teams/fullstack-team.md +83 -0
  13. package/agents/teams/lite-team.md +69 -0
  14. package/agents/teams/migration-team.md +78 -0
  15. package/agents/teams/refactor-team.md +94 -0
  16. package/agents/teams/research-team.md +86 -0
  17. package/agents/teams/review-debate-team.md +125 -0
  18. package/agents/teams/security-team.md +81 -0
  19. package/commands/vibe.analyze.md +324 -170
  20. package/commands/vibe.figma.md +549 -34
  21. package/commands/vibe.harness.md +177 -0
  22. package/commands/vibe.review.md +1 -63
  23. package/commands/vibe.run.md +52 -403
  24. package/commands/vibe.scaffold.md +195 -0
  25. package/commands/vibe.spec.md +373 -1003
  26. package/commands/vibe.trace.md +17 -0
  27. package/commands/vibe.verify.md +19 -10
  28. package/dist/cli/commands/init.d.ts.map +1 -1
  29. package/dist/cli/commands/init.js +29 -1
  30. package/dist/cli/commands/init.js.map +1 -1
  31. package/dist/cli/commands/update.d.ts.map +1 -1
  32. package/dist/cli/commands/update.js +4 -2
  33. package/dist/cli/commands/update.js.map +1 -1
  34. package/dist/cli/postinstall/constants.d.ts +1 -1
  35. package/dist/cli/postinstall/constants.d.ts.map +1 -1
  36. package/dist/cli/postinstall/constants.js +6 -1
  37. package/dist/cli/postinstall/constants.js.map +1 -1
  38. package/dist/cli/setup/ProjectSetup.d.ts +12 -1
  39. package/dist/cli/setup/ProjectSetup.d.ts.map +1 -1
  40. package/dist/cli/setup/ProjectSetup.js +259 -72
  41. package/dist/cli/setup/ProjectSetup.js.map +1 -1
  42. package/dist/cli/setup.d.ts +1 -1
  43. package/dist/cli/setup.d.ts.map +1 -1
  44. package/dist/cli/setup.js +1 -1
  45. package/dist/cli/setup.js.map +1 -1
  46. package/hooks/scripts/figma-guard.js +220 -0
  47. package/hooks/scripts/figma-refine.js +315 -0
  48. package/hooks/scripts/figma-to-scss.js +394 -0
  49. package/hooks/scripts/figma-validate.js +353 -0
  50. package/package.json +1 -1
  51. package/skills/arch-guard/SKILL.md +1 -1
  52. package/skills/capability-loop/SKILL.md +106 -2
  53. package/skills/chub-usage/SKILL.md +43 -43
  54. package/skills/claude-md-guide/SKILL.md +175 -175
  55. package/skills/design-teach/SKILL.md +33 -33
  56. package/skills/devlog/SKILL.md +38 -38
  57. package/skills/event-comms/SKILL.md +23 -13
  58. package/skills/event-ops/SKILL.md +28 -19
  59. package/skills/event-planning/SKILL.md +13 -1
  60. package/skills/priority-todos/SKILL.md +1 -1
  61. package/skills/vibe.figma/SKILL.md +263 -115
  62. package/skills/vibe.figma/templates/component-spec.md +168 -0
  63. package/skills/vibe.figma.convert/SKILL.md +131 -84
  64. package/skills/vibe.figma.convert/rubrics/conversion-rules.md +12 -0
  65. package/skills/vibe.figma.extract/SKILL.md +148 -108
  66. package/skills/vibe.figma.extract/rubrics/image-rules.md +15 -3
  67. package/skills/vibe.interview/SKILL.md +358 -0
  68. package/skills/vibe.interview/checklists/api.md +101 -0
  69. package/skills/vibe.interview/checklists/feature.md +88 -0
  70. package/skills/vibe.interview/checklists/library.md +95 -0
  71. package/skills/vibe.interview/checklists/mobile.md +89 -0
  72. package/skills/vibe.interview/checklists/webapp.md +97 -0
  73. package/skills/vibe.interview/checklists/website.md +99 -0
  74. package/skills/vibe.plan/SKILL.md +216 -0
  75. package/skills/vibe.spec/SKILL.md +1155 -0
  76. package/{commands/vibe.spec.review.md → skills/vibe.spec.review/SKILL.md} +272 -155
  77. package/vibe/templates/claudemd-template.md +74 -0
  78. package/vibe/templates/constitution-template.md +15 -0
  79. package/vibe/templates/plan-template.md +194 -0
@@ -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? → Retry (max 3)
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 (max 3 times)
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** | Auto-retries on failure (up to 3 times) |
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 95%? │ │
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
- MAX_ITERATIONS: 5 (prevent infinite loops)
277
- COVERAGE_THRESHOLD: 95% (quality gate)
278
- ZERO TOLERANCE for scope reduction
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}}/{{MAX}}]` to show progress |
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 95% coverage to complete |
308
- | **Max Iterations** | Stop at 5 iterations (report remaining gaps as TODO) |
309
- | **Convergence Detection** | If coverage % unchanged between iterations → STOP (converged) |
310
- | **Diminishing Returns** | Iteration 3+ → only implement unmet core requirements (REQ-*-001~003), rest goes to TODO |
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/5]
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 95% THRESHOLD
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/5]
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% ✅ ABOVE 95% THRESHOLD
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 (max 3 per phase)
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/3...
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 | Max Retries | Parallel Agents | Checkpoints |
458
- |-------|------|------------|--------------|------------|-------------|-----------------|-------------|
459
- | L0 | Manual | `manual` | No | No | 0 | No | All |
460
- | L1 | Guided | `guided`, `verify` | No | No | 0 | No | All |
461
- | L2 | Semi-auto | `quick` (default) | Yes | Yes | 2 | No | Key points |
462
- | L3 | Auto | `ultrawork`, `ulw` | Yes | Yes | 3 | Yes | Checkpoint-only |
463
- | L4 | Full-auto | `ralph`, `ralplan` | Yes | Yes | 5 | Yes | None |
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/3]
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
- > **Agent Teams**: 에이전트들이 팀을 이루어 서로 소통하며 구현합니다.
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
- > **일반 모드에서도 협업**. Dev Team의 축소 버전으로, 3개 이상 시나리오 시 자동 활성화.
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
- > P1/P2 이슈 교차 검증을 위한 보안+아키텍처+성능+단순성 전문 리뷰 팀.
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
- > `/vibe.spec` Step 3 리서치 단계에서 4개 전문 리서치 에이전트가 팀으로 협업.
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
- > Frontend + Backend 동시 변경이 필요한 풀스택 기능 구현 팀.
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/3...
1695
+ 🔄 Auto-fix [iteration 1]...
2047
1696
  Fix: auth.service.ts line 42
2048
1697
 
2049
1698
  🔍 Re-verifying...