@su-record/vibe 2.6.16 → 2.6.17

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/README.md CHANGED
@@ -6,7 +6,7 @@
6
6
  [![npm downloads](https://img.shields.io/npm/dt/@su-record/vibe)](https://www.npmjs.com/package/@su-record/vibe)
7
7
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
8
8
 
9
- > Claude Code 전용 AI 코딩 프레임워크. SPEC 기반 요구사항 관리, Multi-LLM(Claude + GPT + Gemini) 오케스트레이션, 13+ 병렬 리뷰 에이전트를 통한 품질 자동화.
9
+ > AI coding framework for Claude Code. SPEC-based requirements management, Multi-LLM (Claude + GPT + Gemini) orchestration, and automated quality assurance with 13+ parallel review agents.
10
10
 
11
11
  ## Quick Start
12
12
 
@@ -20,20 +20,21 @@ vibe init
20
20
  ```
21
21
  /vibe.spec → /vibe.run → /vibe.trace → /vibe.verify → /vibe.review
22
22
  ↓ ↓ ↓ ↓ ↓
23
- SPEC 작성 구현 실행 추적성 매트릭스 BDD 검증 병렬 리뷰
23
+ Write SPEC Execute Traceability BDD Verify Parallel Review
24
24
  ```
25
25
 
26
26
  ## Key Features
27
27
 
28
28
  | Feature | Description |
29
29
  |---------|-------------|
30
- | **SPEC-driven Development** | 요구사항 → SPEC → Feature → Test 추적 가능한 개발 |
31
- | **Multi-LLM Orchestration** | Claude + GPT + Gemini 3-way 검증 자동 라우팅 |
32
- | **13+ Parallel Review Agents** | Security, Performance, Architecture 병렬 코드 리뷰 |
33
- | **ULTRAWORK Mode** | 키워드 하나로 모든 최적화 활성화 |
34
- | **Fire-and-Forget Agents** | 논블로킹 백그라운드 에이전트 실행 |
35
- | **Phase Pipelining** | 현재 Phase 실행 다음 Phase 준비 |
36
- | **23 Language Presets** | TypeScript, Python, Go, Rust, Swift, Kotlin |
30
+ | **SPEC-driven Development** | Traceable development: Requirements → SPEC → Feature → Test |
31
+ | **Multi-LLM Orchestration** | Claude + GPT + Gemini 3-way verification with automatic routing |
32
+ | **13+ Parallel Review Agents** | Parallel code review: Security, Performance, Architecture, etc. |
33
+ | **ULTRAWORK Mode** | Enable all optimizations with a single keyword |
34
+ | **Fire-and-Forget Agents** | Non-blocking background agent execution |
35
+ | **Phase Pipelining** | Prepare next phase while current phase executes |
36
+ | **Swarm Pattern** | Auto-split complex tasks for parallel processing (v2.7) |
37
+ | **23 Language Presets** | TypeScript, Python, Go, Rust, Swift, Kotlin, and more |
37
38
 
38
39
  ## Commands
39
40
 
@@ -41,40 +42,40 @@ vibe init
41
42
 
42
43
  | Command | Description |
43
44
  |---------|-------------|
44
- | `vibe init` | 프로젝트 초기화 |
45
- | `vibe update` | 설정 업데이트 |
46
- | `vibe status` | 상태 확인 |
47
- | `vibe gpt auth` | GPT OAuth 인증 |
48
- | `vibe gemini auth` | Gemini OAuth 인증 |
45
+ | `vibe init` | Initialize project |
46
+ | `vibe update` | Update configuration |
47
+ | `vibe status` | Check status |
48
+ | `vibe gpt auth` | GPT OAuth authentication |
49
+ | `vibe gemini auth` | Gemini OAuth authentication |
49
50
 
50
51
  ### Claude Code Slash Commands
51
52
 
52
53
  | Command | Description |
53
54
  |---------|-------------|
54
- | `/vibe.spec "feature"` | SPEC 문서 생성 + 병렬 리서치 |
55
- | `/vibe.run "feature"` | 구현 실행 |
56
- | `/vibe.run "feature" ultrawork` | 최대 성능 모드 |
57
- | `/vibe.verify "feature"` | BDD 검증 |
58
- | `/vibe.trace "feature"` | 요구사항 추적성 매트릭스 |
59
- | `/vibe.review` | 13+ 에이전트 병렬 리뷰 |
60
- | `/vibe.review --race` | GPT + Gemini 경쟁 리뷰 |
55
+ | `/vibe.spec "feature"` | Generate SPEC document + parallel research |
56
+ | `/vibe.run "feature"` | Execute implementation |
57
+ | `/vibe.run "feature" ultrawork` | Maximum performance mode |
58
+ | `/vibe.verify "feature"` | BDD verification |
59
+ | `/vibe.trace "feature"` | Requirements traceability matrix |
60
+ | `/vibe.review` | 13+ agent parallel review |
61
+ | `/vibe.review --race` | GPT + Gemini race review |
61
62
 
62
63
  ## ULTRAWORK Mode
63
64
 
64
- `ultrawork` 또는 `ulw` 키워드로 최대 성능 활성화:
65
+ Activate maximum performance with `ultrawork` or `ulw` keyword:
65
66
 
66
67
  ```bash
67
68
  /vibe.run "feature" ultrawork
68
69
  ```
69
70
 
70
- **활성화 기능:**
71
- - 병렬 서브에이전트 탐색 (3+ 동시)
72
- - 백그라운드 에이전트 (다음 Phase 사전 준비)
73
- - Phase 파이프라이닝 (Phase 대기 시간 제거)
74
- - Boulder Loop (모든 시나리오 완료까지 자동 진행)
75
- - 80%+ 컨텍스트에서 자동 저장
71
+ **Enabled Features:**
72
+ - Parallel sub-agent exploration (3+ concurrent)
73
+ - Background agents (prepare next phase during implementation)
74
+ - Phase pipelining (eliminate wait time between phases)
75
+ - Boulder Loop (auto-continue until all scenarios complete)
76
+ - Auto-save at 80%+ context
76
77
 
77
- **속도 비교:**
78
+ **Speed Comparison:**
78
79
 
79
80
  | Mode | 5 Phases |
80
81
  |------|----------|
@@ -86,18 +87,18 @@ vibe init
86
87
 
87
88
  ### Automatic Routing
88
89
 
89
- 프롬프트 키워드에 따라 자동으로 적합한 LLM 라우팅:
90
+ Automatically routes to the optimal LLM based on prompt keywords:
90
91
 
91
92
  | Keyword | Routes to | Use Case |
92
93
  |---------|-----------|----------|
93
- | `architecture`, `design` | GPT | 아키텍처 리뷰 |
94
- | `UI`, `UX` | Gemini | UI/UX 피드백 |
95
- | `debugging` | GPT | 버그 분석 |
96
- | `analyze code` | Gemini | 코드 리뷰 |
94
+ | `architecture`, `design` | GPT | Architecture review |
95
+ | `UI`, `UX` | Gemini | UI/UX feedback |
96
+ | `debugging` | GPT | Bug analysis |
97
+ | `analyze code` | Gemini | Code review |
97
98
 
98
99
  ### Race Review
99
100
 
100
- GPT + Gemini 병렬 실행 교차 검증:
101
+ Run GPT + Gemini in parallel for cross-validation:
101
102
 
102
103
  ```bash
103
104
  /vibe.review --race
@@ -110,7 +111,7 @@ GPT + Gemini 병렬 실행 후 교차 검증:
110
111
 
111
112
  ## Parallel Review Agents
112
113
 
113
- `/vibe.review`로 13+ 에이전트 동시 실행:
114
+ Run 13+ agents simultaneously with `/vibe.review`:
114
115
 
115
116
  | Category | Agents |
116
117
  |----------|--------|
@@ -120,13 +121,40 @@ GPT + Gemini 병렬 실행 후 교차 검증:
120
121
  | Language | python, typescript, rails, react reviewers |
121
122
 
122
123
  **Priority System:**
123
- - 🔴 P1 (Critical): 머지 차단
124
- - 🟡 P2 (Important): 수정 권장
125
- - 🔵 P3 (Nice-to-have): 백로그
124
+ - P1 (Critical): Blocks merge
125
+ - P2 (Important): Fix recommended
126
+ - P3 (Nice-to-have): Backlog
127
+
128
+ ## Swarm Pattern (v2.7)
129
+
130
+ Automatically split complex tasks for parallel processing:
131
+
132
+ ```typescript
133
+ import { swarm, analyzeTaskComplexity } from '@su-record/vibe/orchestrator';
134
+
135
+ // Analyze complexity
136
+ const analysis = analyzeTaskComplexity('Your prompt');
137
+ console.log(analysis.score); // Split if >= 15
138
+
139
+ // Execute swarm
140
+ const result = await swarm({
141
+ prompt: 'Complex task...',
142
+ maxDepth: 2, // Maximum split depth
143
+ splitThreshold: 15, // Complexity threshold
144
+ });
145
+ ```
146
+
147
+ **How it works:**
148
+ ```
149
+ Prompt → Complexity Analysis → Split Decision
150
+
151
+ ┌─ Low → Direct execution
152
+ └─ High → Create subtasks → Parallel processing → Merge results
153
+ ```
126
154
 
127
155
  ## Requirements Traceability (v2.6)
128
156
 
129
- 요구사항부터 테스트까지 추적:
157
+ Track from requirements to tests:
130
158
 
131
159
  ```bash
132
160
  /vibe.trace "feature"
@@ -161,14 +189,14 @@ REQ-login-002 → SPEC Phase 2 → Feature Scenario 3 → auth.test.ts
161
189
 
162
190
  | Metric | Limit |
163
191
  |--------|-------|
164
- | Function length | 30 lines (권장), 50 lines (허용) |
192
+ | Function length | 30 lines (recommended), 50 lines (allowed) |
165
193
  | Nesting depth | 3 levels |
166
194
  | Parameters | 5 |
167
195
  | Cyclomatic complexity | 10 |
168
196
 
169
197
  ## Cursor IDE Support
170
198
 
171
- `vibe init/update` 시 Cursor IDE 에셋 자동 설치:
199
+ Assets auto-installed on `vibe init/update`:
172
200
 
173
201
  | Asset | Path | Count |
174
202
  |-------|------|-------|
@@ -184,6 +212,14 @@ import { launch, poll } from '@su-record/vibe/orchestrator';
184
212
  const { taskId } = launch({ prompt: 'Analyze code', agentName: 'analyzer' });
185
213
  const result = await poll(taskId);
186
214
 
215
+ // Swarm pattern (v2.7) - Auto-split complex tasks
216
+ import { swarm } from '@su-record/vibe/orchestrator';
217
+ const result = await swarm({
218
+ prompt: 'Implement login with: 1. UI 2. Validation 3. API 4. Tests',
219
+ maxDepth: 2,
220
+ splitThreshold: 15,
221
+ });
222
+
187
223
  // LLM direct call
188
224
  import { ask } from '@su-record/vibe/lib/gpt';
189
225
  import { webSearch } from '@su-record/vibe/lib/gemini';
@@ -200,4 +236,4 @@ MIT - [GitHub](https://github.com/su-record/vibe)
200
236
 
201
237
  ---
202
238
 
203
- If this helps your workflow, consider giving it a star!
239
+ If this helps your workflow, consider giving it a star!
@@ -0,0 +1,144 @@
1
+ /**
2
+ * SwarmOrchestrator - 에이전트 자가 복제 패턴 (Swarm Pattern)
3
+ * v2.7.0: 복잡한 작업을 자동으로 분할하여 병렬 처리
4
+ *
5
+ * SKILL.md 참조: Claude Code의 Swarm 패턴을 Vibe 자체 구현으로 재현
6
+ * - 에이전트가 "너무 복잡하다" 판단 시 하위 에이전트 동적 생성
7
+ * - 기존 launch()/poll() 인프라 활용
8
+ * - Claude Code + Cursor IDE 모두 지원 (플랫폼 독립)
9
+ */
10
+ import { ToolResult } from '../types/tool.js';
11
+ import type { AgentResult, ClaudeModel } from './types.js';
12
+ /** Swarm 설정 */
13
+ export interface SwarmConfig {
14
+ /** 루트 프롬프트 */
15
+ prompt: string;
16
+ /** 에이전트 이름 (선택) */
17
+ agentName?: string;
18
+ /** 모델 (기본: sonnet) */
19
+ model?: ClaudeModel;
20
+ /** 최대 분할 깊이 (기본: 2) */
21
+ maxDepth?: number;
22
+ /** 복잡도 임계값 - 이 이상이면 분할 (기본: 15) */
23
+ splitThreshold?: number;
24
+ /** 최대 동시 하위 에이전트 수 (기본: 5) */
25
+ maxConcurrentChildren?: number;
26
+ /** 분할 시 콜백 */
27
+ onSplit?: (task: SwarmTask) => void;
28
+ /** 완료 시 콜백 */
29
+ onComplete?: (task: SwarmTask, result: AgentResult) => void;
30
+ /** 프로젝트 경로 */
31
+ projectPath?: string;
32
+ /** 타임아웃 (ms, 기본: 5분) */
33
+ timeout?: number;
34
+ }
35
+ /** Swarm 작업 */
36
+ export interface SwarmTask {
37
+ id: string;
38
+ parentId: string | null;
39
+ prompt: string;
40
+ depth: number;
41
+ status: 'pending' | 'analyzing' | 'running' | 'splitting' | 'completed' | 'failed';
42
+ complexity?: number;
43
+ children: string[];
44
+ taskId?: string;
45
+ result?: AgentResult;
46
+ error?: string;
47
+ createdAt: number;
48
+ startedAt?: number;
49
+ completedAt?: number;
50
+ }
51
+ /** Swarm 결과 */
52
+ export interface SwarmResult {
53
+ rootTaskId: string;
54
+ tasks: SwarmTask[];
55
+ totalDuration: number;
56
+ splitCount: number;
57
+ successCount: number;
58
+ failureCount: number;
59
+ maxDepthReached: number;
60
+ mergedResult: string;
61
+ }
62
+ /** 복잡도 분석 결과 */
63
+ interface ComplexityAnalysis {
64
+ score: number;
65
+ factors: string[];
66
+ suggestedSplits?: string[];
67
+ }
68
+ export declare class SwarmOrchestrator {
69
+ private tasks;
70
+ private config;
71
+ private startTime;
72
+ constructor(config: SwarmConfig);
73
+ /**
74
+ * Swarm 실행
75
+ */
76
+ execute(): Promise<SwarmResult>;
77
+ /**
78
+ * 태스크 처리
79
+ */
80
+ private processTask;
81
+ /**
82
+ * 복잡도 분석
83
+ */
84
+ private analyzeComplexity;
85
+ /**
86
+ * 분할 제안 생성
87
+ */
88
+ private suggestSplits;
89
+ /**
90
+ * 분할 여부 결정
91
+ */
92
+ private shouldSplit;
93
+ /**
94
+ * 태스크 분할
95
+ */
96
+ private splitTask;
97
+ /**
98
+ * 하위 프롬프트 생성
99
+ */
100
+ private createChildPrompt;
101
+ /**
102
+ * 하위 결과 병합
103
+ */
104
+ private mergeChildResults;
105
+ /**
106
+ * 태스크 실행 (분할 없이)
107
+ */
108
+ private executeTask;
109
+ /**
110
+ * 결과 수집
111
+ */
112
+ private collectResults;
113
+ /**
114
+ * 태스크 생성
115
+ */
116
+ private createTask;
117
+ private sleep;
118
+ }
119
+ /**
120
+ * Swarm 패턴으로 복잡한 작업 실행
121
+ *
122
+ * @example
123
+ * import { swarm } from '@su-record/vibe/orchestrator';
124
+ *
125
+ * const result = await swarm({
126
+ * prompt: 'Implement login feature with: 1. UI form 2. Validation 3. API call 4. Error handling',
127
+ * maxDepth: 2,
128
+ * splitThreshold: 15,
129
+ * onSplit: (task) => console.log(`Splitting: ${task.id}`),
130
+ * });
131
+ */
132
+ export declare function swarm(config: SwarmConfig): Promise<ToolResult & {
133
+ swarmResult: SwarmResult;
134
+ }>;
135
+ /**
136
+ * 작업 복잡도 분석 (swarm 없이)
137
+ *
138
+ * @example
139
+ * const analysis = analyzeTaskComplexity('Implement login with validation and error handling');
140
+ * console.log(analysis.score); // 15
141
+ */
142
+ export declare function analyzeTaskComplexity(prompt: string): ComplexityAnalysis;
143
+ export {};
144
+ //# sourceMappingURL=SwarmOrchestrator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SwarmOrchestrator.d.ts","sourceRoot":"","sources":["../../src/orchestrator/SwarmOrchestrator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,361 @@
1
+ /**
2
+ * SwarmOrchestrator - 에이전트 자가 복제 패턴 (Swarm Pattern)
3
+ * v2.7.0: 복잡한 작업을 자동으로 분할하여 병렬 처리
4
+ *
5
+ * SKILL.md 참조: Claude Code의 Swarm 패턴을 Vibe 자체 구현으로 재현
6
+ * - 에이전트가 "너무 복잡하다" 판단 시 하위 에이전트 동적 생성
7
+ * - 기존 launch()/poll() 인프라 활용
8
+ * - Claude Code + Cursor IDE 모두 지원 (플랫폼 독립)
9
+ */
10
+ import { launch, poll } from './BackgroundManager.js';
11
+ import { DEFAULT_MODELS } from '../lib/constants.js';
12
+ // ============================================
13
+ // SwarmOrchestrator
14
+ // ============================================
15
+ export class SwarmOrchestrator {
16
+ tasks = new Map();
17
+ config;
18
+ startTime = 0;
19
+ constructor(config) {
20
+ this.config = {
21
+ prompt: config.prompt,
22
+ agentName: config.agentName || 'swarm-root',
23
+ model: config.model || DEFAULT_MODELS.BACKGROUND,
24
+ maxDepth: config.maxDepth ?? 2,
25
+ splitThreshold: config.splitThreshold ?? 15,
26
+ maxConcurrentChildren: config.maxConcurrentChildren ?? 5,
27
+ onSplit: config.onSplit || (() => { }),
28
+ onComplete: config.onComplete || (() => { }),
29
+ projectPath: config.projectPath || process.cwd(),
30
+ timeout: config.timeout ?? 5 * 60 * 1000
31
+ };
32
+ }
33
+ /**
34
+ * Swarm 실행
35
+ */
36
+ async execute() {
37
+ this.startTime = Date.now();
38
+ // 루트 태스크 생성
39
+ const rootTask = this.createTask(this.config.prompt, null, 0);
40
+ this.tasks.set(rootTask.id, rootTask);
41
+ // 실행
42
+ await this.processTask(rootTask);
43
+ // 결과 수집
44
+ return this.collectResults(rootTask.id);
45
+ }
46
+ /**
47
+ * 태스크 처리
48
+ */
49
+ async processTask(task) {
50
+ // 타임아웃 체크
51
+ if (Date.now() - this.startTime > this.config.timeout) {
52
+ task.status = 'failed';
53
+ task.error = 'Swarm timeout exceeded';
54
+ return;
55
+ }
56
+ task.status = 'analyzing';
57
+ task.startedAt = Date.now();
58
+ // 복잡도 분석
59
+ const analysis = await this.analyzeComplexity(task.prompt);
60
+ task.complexity = analysis.score;
61
+ // 분할 결정
62
+ if (this.shouldSplit(task, analysis)) {
63
+ await this.splitTask(task, analysis);
64
+ }
65
+ else {
66
+ await this.executeTask(task);
67
+ }
68
+ }
69
+ /**
70
+ * 복잡도 분석
71
+ */
72
+ async analyzeComplexity(prompt) {
73
+ const factors = [];
74
+ let score = 0;
75
+ // 프롬프트 길이
76
+ if (prompt.length > 500) {
77
+ score += 5;
78
+ factors.push('long-prompt');
79
+ }
80
+ if (prompt.length > 1000) {
81
+ score += 5;
82
+ factors.push('very-long-prompt');
83
+ }
84
+ // 키워드 기반 복잡도
85
+ const complexKeywords = [
86
+ { pattern: /implement|create|build/gi, weight: 3 },
87
+ { pattern: /refactor|restructure|redesign/gi, weight: 4 },
88
+ { pattern: /multiple|several|all|every/gi, weight: 2 },
89
+ { pattern: /and then|after that|next/gi, weight: 2 },
90
+ { pattern: /test|verify|validate/gi, weight: 2 },
91
+ { pattern: /security|authentication|authorization/gi, weight: 3 },
92
+ { pattern: /database|migration|schema/gi, weight: 3 },
93
+ { pattern: /api|endpoint|route/gi, weight: 2 },
94
+ { pattern: /frontend|backend|fullstack/gi, weight: 3 },
95
+ { pattern: /phase|step|stage/gi, weight: 2 }
96
+ ];
97
+ for (const { pattern, weight } of complexKeywords) {
98
+ const matches = prompt.match(pattern);
99
+ if (matches) {
100
+ score += weight * matches.length;
101
+ factors.push(pattern.source.split('|')[0]);
102
+ }
103
+ }
104
+ // 파일/경로 언급
105
+ const fileMentions = prompt.match(/\.(ts|js|tsx|jsx|py|go|rs|java|rb|swift|kt)/gi);
106
+ if (fileMentions && fileMentions.length > 3) {
107
+ score += fileMentions.length * 2;
108
+ factors.push(`${fileMentions.length}-files`);
109
+ }
110
+ // 숫자 목록 (1. 2. 3. 등)
111
+ const numberedList = prompt.match(/^\d+\./gm);
112
+ if (numberedList && numberedList.length > 2) {
113
+ score += numberedList.length * 2;
114
+ factors.push(`${numberedList.length}-steps`);
115
+ }
116
+ // 분할 제안 생성
117
+ const suggestedSplits = this.suggestSplits(prompt);
118
+ return { score, factors, suggestedSplits };
119
+ }
120
+ /**
121
+ * 분할 제안 생성
122
+ */
123
+ suggestSplits(prompt) {
124
+ const splits = [];
125
+ // 숫자 목록으로 분할
126
+ const numberedSections = prompt.split(/(?=\d+\.\s)/);
127
+ if (numberedSections.length > 2) {
128
+ for (const section of numberedSections) {
129
+ const trimmed = section.trim();
130
+ if (trimmed.length > 20) {
131
+ splits.push(trimmed);
132
+ }
133
+ }
134
+ if (splits.length > 1)
135
+ return splits;
136
+ }
137
+ // "and", "then" 등으로 분할
138
+ const conjunctionSplit = prompt.split(/\s+(?:and then|then|after that|next,?)\s+/i);
139
+ if (conjunctionSplit.length > 1) {
140
+ return conjunctionSplit.map(s => s.trim()).filter(s => s.length > 20);
141
+ }
142
+ // 문장 단위 분할 (fallback)
143
+ const sentences = prompt.split(/(?<=[.!?])\s+/);
144
+ if (sentences.length > 3) {
145
+ // 2-3개 문장씩 그룹화
146
+ const grouped = [];
147
+ for (let i = 0; i < sentences.length; i += 2) {
148
+ const group = sentences.slice(i, i + 2).join(' ');
149
+ if (group.length > 30) {
150
+ grouped.push(group);
151
+ }
152
+ }
153
+ if (grouped.length > 1)
154
+ return grouped;
155
+ }
156
+ return [];
157
+ }
158
+ /**
159
+ * 분할 여부 결정
160
+ */
161
+ shouldSplit(task, analysis) {
162
+ // 최대 깊이 도달
163
+ if (task.depth >= this.config.maxDepth) {
164
+ return false;
165
+ }
166
+ // 복잡도 임계값 미달
167
+ if (analysis.score < this.config.splitThreshold) {
168
+ return false;
169
+ }
170
+ // 분할 가능한 항목이 없음
171
+ if (!analysis.suggestedSplits || analysis.suggestedSplits.length < 2) {
172
+ return false;
173
+ }
174
+ return true;
175
+ }
176
+ /**
177
+ * 태스크 분할
178
+ */
179
+ async splitTask(task, analysis) {
180
+ task.status = 'splitting';
181
+ this.config.onSplit(task);
182
+ const splits = analysis.suggestedSplits || [];
183
+ const childTasks = [];
184
+ // 하위 태스크 생성
185
+ for (let i = 0; i < Math.min(splits.length, this.config.maxConcurrentChildren); i++) {
186
+ const childPrompt = this.createChildPrompt(splits[i], i + 1, splits.length);
187
+ const childTask = this.createTask(childPrompt, task.id, task.depth + 1);
188
+ this.tasks.set(childTask.id, childTask);
189
+ task.children.push(childTask.id);
190
+ childTasks.push(childTask);
191
+ }
192
+ // 병렬 실행
193
+ await Promise.all(childTasks.map(child => this.processTask(child)));
194
+ // 결과 병합
195
+ await this.mergeChildResults(task);
196
+ }
197
+ /**
198
+ * 하위 프롬프트 생성
199
+ */
200
+ createChildPrompt(content, index, total) {
201
+ return `[Part ${index}/${total}] ${content}`;
202
+ }
203
+ /**
204
+ * 하위 결과 병합
205
+ */
206
+ async mergeChildResults(task) {
207
+ const childResults = [];
208
+ let allSuccess = true;
209
+ for (const childId of task.children) {
210
+ const child = this.tasks.get(childId);
211
+ if (child) {
212
+ if (child.status === 'completed' && child.result) {
213
+ childResults.push(`## Part ${task.children.indexOf(childId) + 1}\n${child.result.result}`);
214
+ }
215
+ else if (child.status === 'failed') {
216
+ allSuccess = false;
217
+ childResults.push(`## Part ${task.children.indexOf(childId) + 1}\n[FAILED] ${child.error || 'Unknown error'}`);
218
+ }
219
+ }
220
+ }
221
+ task.status = allSuccess ? 'completed' : 'failed';
222
+ task.completedAt = Date.now();
223
+ task.result = {
224
+ agentName: `${this.config.agentName}-merged`,
225
+ sessionId: task.id,
226
+ result: childResults.join('\n\n'),
227
+ success: allSuccess,
228
+ duration: task.completedAt - (task.startedAt || task.createdAt)
229
+ };
230
+ this.config.onComplete(task, task.result);
231
+ }
232
+ /**
233
+ * 태스크 실행 (분할 없이)
234
+ */
235
+ async executeTask(task) {
236
+ task.status = 'running';
237
+ const args = {
238
+ prompt: task.prompt,
239
+ agentName: `${this.config.agentName}-${task.depth}-${task.id.slice(-6)}`,
240
+ model: this.config.model,
241
+ projectPath: this.config.projectPath
242
+ };
243
+ // launch로 백그라운드 실행
244
+ const launchResult = launch(args);
245
+ task.taskId = launchResult.taskId;
246
+ // poll로 결과 대기
247
+ let pollResult = await poll(launchResult.taskId);
248
+ while (pollResult.task?.status === 'pending' || pollResult.task?.status === 'running') {
249
+ await this.sleep(500);
250
+ pollResult = await poll(launchResult.taskId);
251
+ }
252
+ if (pollResult.result) {
253
+ task.result = pollResult.result;
254
+ task.status = pollResult.result.success ? 'completed' : 'failed';
255
+ if (!pollResult.result.success) {
256
+ task.error = pollResult.result.error;
257
+ }
258
+ }
259
+ else {
260
+ task.status = 'failed';
261
+ task.error = 'No result from agent';
262
+ }
263
+ task.completedAt = Date.now();
264
+ if (task.result) {
265
+ this.config.onComplete(task, task.result);
266
+ }
267
+ }
268
+ /**
269
+ * 결과 수집
270
+ */
271
+ collectResults(rootTaskId) {
272
+ const allTasks = Array.from(this.tasks.values());
273
+ const rootTask = this.tasks.get(rootTaskId);
274
+ let maxDepth = 0;
275
+ let splitCount = 0;
276
+ let successCount = 0;
277
+ let failureCount = 0;
278
+ for (const task of allTasks) {
279
+ maxDepth = Math.max(maxDepth, task.depth);
280
+ if (task.children.length > 0)
281
+ splitCount++;
282
+ if (task.status === 'completed')
283
+ successCount++;
284
+ if (task.status === 'failed')
285
+ failureCount++;
286
+ }
287
+ return {
288
+ rootTaskId,
289
+ tasks: allTasks,
290
+ totalDuration: Date.now() - this.startTime,
291
+ splitCount,
292
+ successCount,
293
+ failureCount,
294
+ maxDepthReached: maxDepth,
295
+ mergedResult: rootTask.result?.result || ''
296
+ };
297
+ }
298
+ /**
299
+ * 태스크 생성
300
+ */
301
+ createTask(prompt, parentId, depth) {
302
+ return {
303
+ id: `swarm-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`,
304
+ parentId,
305
+ prompt,
306
+ depth,
307
+ status: 'pending',
308
+ children: [],
309
+ createdAt: Date.now()
310
+ };
311
+ }
312
+ sleep(ms) {
313
+ return new Promise(resolve => setTimeout(resolve, ms));
314
+ }
315
+ }
316
+ // ============================================
317
+ // 편의 함수
318
+ // ============================================
319
+ /**
320
+ * Swarm 패턴으로 복잡한 작업 실행
321
+ *
322
+ * @example
323
+ * import { swarm } from '@su-record/vibe/orchestrator';
324
+ *
325
+ * const result = await swarm({
326
+ * prompt: 'Implement login feature with: 1. UI form 2. Validation 3. API call 4. Error handling',
327
+ * maxDepth: 2,
328
+ * splitThreshold: 15,
329
+ * onSplit: (task) => console.log(`Splitting: ${task.id}`),
330
+ * });
331
+ */
332
+ export async function swarm(config) {
333
+ const orchestrator = new SwarmOrchestrator(config);
334
+ const result = await orchestrator.execute();
335
+ const statusEmoji = result.failureCount === 0 ? '✅' : result.successCount > 0 ? '⚠️' : '❌';
336
+ let summary = `## Swarm Execution ${statusEmoji}\n\n`;
337
+ summary += `**Duration**: ${(result.totalDuration / 1000).toFixed(1)}s\n`;
338
+ summary += `**Tasks**: ${result.tasks.length} (${result.splitCount} splits)\n`;
339
+ summary += `**Max Depth**: ${result.maxDepthReached}/${config.maxDepth || 2}\n`;
340
+ summary += `**Success**: ${result.successCount}/${result.tasks.length}\n\n`;
341
+ if (result.mergedResult) {
342
+ summary += `### Result\n\n${result.mergedResult}`;
343
+ }
344
+ return {
345
+ content: [{ type: 'text', text: summary }],
346
+ swarmResult: result
347
+ };
348
+ }
349
+ /**
350
+ * 작업 복잡도 분석 (swarm 없이)
351
+ *
352
+ * @example
353
+ * const analysis = analyzeTaskComplexity('Implement login with validation and error handling');
354
+ * console.log(analysis.score); // 15
355
+ */
356
+ export function analyzeTaskComplexity(prompt) {
357
+ const orchestrator = new SwarmOrchestrator({ prompt });
358
+ // @ts-expect-error - private method access for utility
359
+ return orchestrator.analyzeComplexity(prompt);
360
+ }
361
+ //# sourceMappingURL=SwarmOrchestrator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SwarmOrchestrator.js","sourceRoot":"","sources":["../../src/orchestrator/SwarmOrchestrator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * SwarmOrchestrator 테스트
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=SwarmOrchestrator.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SwarmOrchestrator.test.d.ts","sourceRoot":"","sources":["../../src/orchestrator/SwarmOrchestrator.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -0,0 +1,95 @@
1
+ /**
2
+ * SwarmOrchestrator 테스트
3
+ */
4
+ import { describe, it, expect, vi } from 'vitest';
5
+ import { SwarmOrchestrator, analyzeTaskComplexity } from './SwarmOrchestrator.js';
6
+ describe('SwarmOrchestrator', () => {
7
+ describe('analyzeTaskComplexity', () => {
8
+ it('간단한 프롬프트는 낮은 복잡도', async () => {
9
+ const analysis = await analyzeTaskComplexity('Fix a typo in README');
10
+ expect(analysis.score).toBeLessThan(10);
11
+ });
12
+ it('복잡한 프롬프트는 높은 복잡도', async () => {
13
+ const complexPrompt = `
14
+ Implement a complete login feature:
15
+ 1. Create the login form UI with React
16
+ 2. Add form validation with Zod
17
+ 3. Implement the API endpoint with authentication
18
+ 4. Add error handling and loading states
19
+ 5. Write unit tests for all components
20
+ 6. Add security measures against CSRF
21
+ `;
22
+ const analysis = await analyzeTaskComplexity(complexPrompt);
23
+ expect(analysis.score).toBeGreaterThan(15);
24
+ expect(analysis.suggestedSplits?.length).toBeGreaterThan(1);
25
+ });
26
+ it('파일 언급이 많으면 복잡도 증가', async () => {
27
+ const prompt = 'Update login.ts, auth.ts, user.ts, session.ts, and middleware.ts';
28
+ const analysis = await analyzeTaskComplexity(prompt);
29
+ expect(analysis.factors).toContain('5-files');
30
+ });
31
+ it('숫자 목록은 분할 제안 생성', async () => {
32
+ const prompt = `
33
+ 1. First do this task
34
+ 2. Then do second task
35
+ 3. Finally do third task
36
+ `;
37
+ const analysis = await analyzeTaskComplexity(prompt);
38
+ expect(analysis.suggestedSplits?.length).toBeGreaterThanOrEqual(2);
39
+ });
40
+ });
41
+ describe('SwarmOrchestrator 인스턴스', () => {
42
+ it('기본 설정으로 생성', () => {
43
+ const orchestrator = new SwarmOrchestrator({
44
+ prompt: 'Test prompt'
45
+ });
46
+ expect(orchestrator).toBeDefined();
47
+ });
48
+ it('커스텀 설정으로 생성', () => {
49
+ const onSplit = vi.fn();
50
+ const onComplete = vi.fn();
51
+ const orchestrator = new SwarmOrchestrator({
52
+ prompt: 'Test prompt',
53
+ agentName: 'test-agent',
54
+ maxDepth: 3,
55
+ splitThreshold: 20,
56
+ maxConcurrentChildren: 3,
57
+ onSplit,
58
+ onComplete,
59
+ timeout: 60000
60
+ });
61
+ expect(orchestrator).toBeDefined();
62
+ });
63
+ });
64
+ describe('분할 로직', () => {
65
+ it('maxDepth 도달 시 분할 안함', async () => {
66
+ // maxDepth: 0으로 설정하면 분할하지 않음
67
+ const orchestrator = new SwarmOrchestrator({
68
+ prompt: `
69
+ 1. Task one
70
+ 2. Task two
71
+ 3. Task three
72
+ `,
73
+ maxDepth: 0
74
+ });
75
+ // shouldSplit가 false 반환 확인 (내부 로직)
76
+ // @ts-expect-error - private method access for testing
77
+ const task = orchestrator.createTask('test', null, 0);
78
+ // @ts-expect-error - private method access for testing
79
+ const shouldSplit = orchestrator.shouldSplit(task, { score: 50, factors: [], suggestedSplits: ['a', 'b'] });
80
+ expect(shouldSplit).toBe(false);
81
+ });
82
+ it('splitThreshold 미만이면 분할 안함', async () => {
83
+ const orchestrator = new SwarmOrchestrator({
84
+ prompt: 'Simple task',
85
+ splitThreshold: 100
86
+ });
87
+ // @ts-expect-error - private method access for testing
88
+ const task = orchestrator.createTask('test', null, 0);
89
+ // @ts-expect-error - private method access for testing
90
+ const shouldSplit = orchestrator.shouldSplit(task, { score: 50, factors: [], suggestedSplits: ['a', 'b'] });
91
+ expect(shouldSplit).toBe(false);
92
+ });
93
+ });
94
+ });
95
+ //# sourceMappingURL=SwarmOrchestrator.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SwarmOrchestrator.test.js","sourceRoot":"","sources":["../../src/orchestrator/SwarmOrchestrator.test.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,8 @@ export { LLMCluster, LLMClusterOptions, MultiLlmQueryResult, LlmStatusResult, ge
19
19
  export { AgentManager, AgentManagerOptions, getAgentManager } from './AgentManager.js';
20
20
  export { PhasePipeline, createStage, createPipeline, createUltraworkPipeline, pipelineResultToToolResult } from './PhasePipeline.js';
21
21
  export type { PipelineStage, StageContext, StageResult, PipelineOptions, PipelineResult } from './PhasePipeline.js';
22
+ export { SwarmOrchestrator, swarm, analyzeTaskComplexity } from './SwarmOrchestrator.js';
23
+ export type { SwarmConfig, SwarmTask, SwarmResult } from './SwarmOrchestrator.js';
22
24
  import { ToolResult } from '../types/tool.js';
23
25
  /**
24
26
  * 기능 기반 병렬 리서치 (간편 API)
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/orchestrator/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/orchestrator/index.ts"],"names":[],"mappings":"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"}
@@ -27,6 +27,8 @@ export { LLMCluster, getLLMCluster } from './LLMCluster.js';
27
27
  export { AgentManager, getAgentManager } from './AgentManager.js';
28
28
  // PhasePipeline (v2.6.0)
29
29
  export { PhasePipeline, createStage, createPipeline, createUltraworkPipeline, pipelineResultToToolResult } from './PhasePipeline.js';
30
+ // SwarmOrchestrator (v2.7.0) - 에이전트 자가 복제 패턴
31
+ export { SwarmOrchestrator, swarm, analyzeTaskComplexity } from './SwarmOrchestrator.js';
30
32
  // ============================================
31
33
  // 간편 함수 (hooks에서 직접 호출용)
32
34
  // ============================================
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/orchestrator/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AA2BH,0BAA0B;AAC1B,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAE/C,kBAAkB;AAClB,OAAO,EACL,cAAc,EACd,SAAS,EACT,oBAAoB,EACrB,MAAM,qBAAqB,CAAC;AAE7B,oBAAoB;AACpB,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,mBAAmB;AACnB,8BAA8B;AAC9B,4BAA4B,EAC5B,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,uBAAuB,CAAC;AAE/B,mBAAmB;AACnB,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,qBAAqB,EACrB,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB;AACpB,6BAA6B;AAC7B,iBAAiB,EACjB,MAAM,EACN,IAAI,EACJ,MAAM,EACN,QAAQ,EACR,kBAAkB,EAClB,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,sBAAsB,CAAC;AAG9B,0BAA0B;AAC1B,OAAO,EACL,gBAAgB,EAChB,eAAe,EAChB,MAAM,mBAAmB,CAAC;AAE3B,iCAAiC;AACjC,OAAO,EACL,WAAW,EAEX,cAAc,EACf,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,UAAU,EAIV,aAAa,EACd,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,YAAY,EAEZ,eAAe,EAChB,MAAM,mBAAmB,CAAC;AAE3B,yBAAyB;AACzB,OAAO,EACL,aAAa,EACb,WAAW,EACX,cAAc,EACd,uBAAuB,EACvB,0BAA0B,EAC3B,MAAM,oBAAoB,CAAC;AAS5B,+CAA+C;AAC/C,yBAAyB;AACzB,+CAA+C;AAE/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAEL,4BAA4B,IAAI,6BAA6B,EAC7D,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,qBAAqB,IAAI,sBAAsB,EAC/C,wBAAwB,IAAI,yBAAyB,EACrD,kBAAkB,EAClB,iBAAiB,EAClB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,cAAc,IAAI,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAGxE;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,OAAe,EACf,YAAsB,EAAE,EACxB,cAAsB,OAAO,CAAC,GAAG,EAAE;IAEnC,MAAM,KAAK,GAAG,mBAAmB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACtD,mDAAmD;IACnD,OAAO,6BAA6B,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;AACnF,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,MAAc,EACd,SAAkB,EAClB,cAAsB,OAAO,CAAC,GAAG,EAAE;IAEnC,OAAO,sBAAsB,CAAC;QAC5B,MAAM;QACN,SAAS,EAAE,SAAS,IAAI,SAAS,IAAI,CAAC,GAAG,EAAE,EAAE;QAC7C,WAAW;KACZ,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,SAAiB;IAC/C,OAAO,yBAAyB,CAAC,SAAS,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,QAAiB,EACjB,cAAsB,OAAO,CAAC,GAAG,EAAE;IAEnC,OAAO,eAAe,CAAC,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC;AACpD,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,SAAmB,EACnB,YAAsB,EAAE,EACxB,cAAsB,OAAO,CAAC,GAAG,EAAE;IAEnC,MAAM,YAAY,GAAG,IAAI,gBAAgB,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;IAC3D,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,iBAAiB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAE3E,SAAS;IACT,IAAI,OAAO,GAAG,gCAAgC,CAAC;IAC/C,OAAO,IAAI,cAAc,SAAS,CAAC,MAAM,IAAI,CAAC;IAC9C,OAAO,IAAI,kBAAkB,OAAO,CAAC,MAAM,MAAM,CAAC;IAElD,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;IAC3D,OAAO,IAAI,gBAAgB,YAAY,IAAI,OAAO,CAAC,MAAM,MAAM,CAAC;IAEhE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAC1C,OAAO,IAAI,OAAO,MAAM,IAAI,MAAM,CAAC,SAAS,IAAI,CAAC;QACjD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YACvC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,GAAG;gBAAE,OAAO,IAAI,KAAK,CAAC;QACnD,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,UAAU,MAAM,CAAC,KAAK,EAAE,CAAC;QACtC,CAAC;QACD,OAAO,IAAI,MAAM,CAAC;IACpB,CAAC;IAED,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;QAC1C,OAAO;KACoC,CAAC;AAChD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,MAAM;IACpB,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;IACpC,MAAM,OAAO,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAErC,OAAO;QACL,OAAO,EAAE,CAAC;gBACR,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,6BAA6B,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;aAC1F,CAAC;KACH,CAAC;AACJ,CAAC;AAED,+CAA+C;AAC/C,sCAAsC;AACtC,+CAA+C;AAE/C,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAC;AAElD,+CAA+C;AAC/C,kCAAkC;AAClC,+CAA+C;AAE/C;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,KAAa;IAC3C,uCAAuC;IACvC,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC;AAC7B,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,GAAG,CACvB,MAAc,EACd,eAAuB,8BAA8B;IAErD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1F,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YACzC,OAAO,EAAE,IAAI;SACuB,CAAC;IACzC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,eAAgB,KAAe,CAAC,OAAO,EAAE,EAAE,CAAC;YAC5E,OAAO,EAAE,KAAK;SACsB,CAAC;IACzC,CAAC;AACH,CAAC;AAED,+CAA+C;AAC/C,uCAAuC;AACvC,+CAA+C;AAE/C;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,KAAa;IAC9C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QACrD,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YACzC,OAAO,EAAE,IAAI;SACuB,CAAC;IACzC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAmB,KAAe,CAAC,OAAO,EAAE,EAAE,CAAC;YAC/E,OAAO,EAAE,KAAK;SACsB,CAAC;IACzC,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,MAAc,EACd,eAAuB,8BAA8B;IAErD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,qBAAqB,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QAChG,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YACzC,OAAO,EAAE,IAAI;SACuB,CAAC;IACzC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAmB,KAAe,CAAC,OAAO,EAAE,EAAE,CAAC;YAC/E,OAAO,EAAE,KAAK;SACsB,CAAC;IACzC,CAAC;AACH,CAAC;AAED,+CAA+C;AAC/C,0BAA0B;AAC1B,+CAA+C;AAE/C;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,MAAc,EACd,OAAmD;IAEnD,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;IAC5C,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAElE,IAAI,OAAO,GAAG,0BAA0B,CAAC;IAEzC,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAChB,OAAO,IAAI,YAAY,OAAO,CAAC,GAAG,MAAM,CAAC;IAC3C,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,OAAO,IAAI,eAAe,OAAO,CAAC,MAAM,MAAM,CAAC;IACjD,CAAC;IAED,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;QAC1C,OAAO;KACoC,CAAC;AAChD,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS;IAC7B,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;IAC5C,MAAM,eAAe,GAAG,MAAM,YAAY,CAAC,cAAc,EAAE,CAAC;IAE5D,MAAM,OAAO,GAAG,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC1D,MAAM,UAAU,GAAG,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAEhE,IAAI,IAAI,GAAG,mBAAmB,CAAC;IAC/B,IAAI,IAAI,UAAU,OAAO,IAAI,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,IAAI,CAAC;IAC7F,IAAI,IAAI,aAAa,UAAU,IAAI,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,IAAI,CAAC;IAEtG,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;QACjC,MAAM,EAAE,eAAe;KAC2B,CAAC;AACvD,CAAC;AAQD;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,IAAc,EACd,MAAc,EACd,YAAqB;IAErB,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;IAC5C,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;IAE7E,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY;QACtC,CAAC,CAAC,mBAAmB,MAAM,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG;QAC1E,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO;QACL,OAAO,EAAE,CAAC;gBACR,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,GAAG,YAAY,QAAQ,MAAM,CAAC,OAAO,EAAE;aAC/E,CAAC;QACF,MAAM;KACP,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,MAAc;IACpD,OAAO,UAAU,CAAC,cAAc,EAAE,MAAM,EAAE,oEAAoE,CAAC,CAAC;AAClH,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,MAAc;IAC5C,OAAO,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,uDAAuD,CAAC,CAAC;AAC7F,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,MAAc;IACpD,OAAO,UAAU,CAAC,eAAe,EAAE,MAAM,EAAE,8DAA8D,CAAC,CAAC;AAC7G,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,MAAc;IACjD,OAAO,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,0DAA0D,CAAC,CAAC;AACrG,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,KAAa;IAChD,OAAO,UAAU,CAAC,YAAY,EAAE,KAAK,EAAE,kDAAkD,CAAC,CAAC;AAC7F,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,WAAmB,EAAE,OAAgB;IACtE,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,WAAW,iBAAiB,OAAO,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC;IAChF,OAAO,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,uCAAuC,CAAC,CAAC;AACjF,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/orchestrator/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AA2BH,0BAA0B;AAC1B,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAE/C,kBAAkB;AAClB,OAAO,EACL,cAAc,EACd,SAAS,EACT,oBAAoB,EACrB,MAAM,qBAAqB,CAAC;AAE7B,oBAAoB;AACpB,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,mBAAmB;AACnB,8BAA8B;AAC9B,4BAA4B,EAC5B,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,uBAAuB,CAAC;AAE/B,mBAAmB;AACnB,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,qBAAqB,EACrB,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB;AACpB,6BAA6B;AAC7B,iBAAiB,EACjB,MAAM,EACN,IAAI,EACJ,MAAM,EACN,QAAQ,EACR,kBAAkB,EAClB,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,sBAAsB,CAAC;AAG9B,0BAA0B;AAC1B,OAAO,EACL,gBAAgB,EAChB,eAAe,EAChB,MAAM,mBAAmB,CAAC;AAE3B,iCAAiC;AACjC,OAAO,EACL,WAAW,EAEX,cAAc,EACf,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,UAAU,EAIV,aAAa,EACd,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,YAAY,EAEZ,eAAe,EAChB,MAAM,mBAAmB,CAAC;AAE3B,yBAAyB;AACzB,OAAO,EACL,aAAa,EACb,WAAW,EACX,cAAc,EACd,uBAAuB,EACvB,0BAA0B,EAC3B,MAAM,oBAAoB,CAAC;AAS5B,6CAA6C;AAC7C,OAAO,EACL,iBAAiB,EACjB,KAAK,EACL,qBAAqB,EACtB,MAAM,wBAAwB,CAAC;AAOhC,+CAA+C;AAC/C,yBAAyB;AACzB,+CAA+C;AAE/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAEL,4BAA4B,IAAI,6BAA6B,EAC7D,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,qBAAqB,IAAI,sBAAsB,EAC/C,wBAAwB,IAAI,yBAAyB,EACrD,kBAAkB,EAClB,iBAAiB,EAClB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,cAAc,IAAI,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAGxE;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,OAAe,EACf,YAAsB,EAAE,EACxB,cAAsB,OAAO,CAAC,GAAG,EAAE;IAEnC,MAAM,KAAK,GAAG,mBAAmB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACtD,mDAAmD;IACnD,OAAO,6BAA6B,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;AACnF,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,MAAc,EACd,SAAkB,EAClB,cAAsB,OAAO,CAAC,GAAG,EAAE;IAEnC,OAAO,sBAAsB,CAAC;QAC5B,MAAM;QACN,SAAS,EAAE,SAAS,IAAI,SAAS,IAAI,CAAC,GAAG,EAAE,EAAE;QAC7C,WAAW;KACZ,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,SAAiB;IAC/C,OAAO,yBAAyB,CAAC,SAAS,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,QAAiB,EACjB,cAAsB,OAAO,CAAC,GAAG,EAAE;IAEnC,OAAO,eAAe,CAAC,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC;AACpD,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,SAAmB,EACnB,YAAsB,EAAE,EACxB,cAAsB,OAAO,CAAC,GAAG,EAAE;IAEnC,MAAM,YAAY,GAAG,IAAI,gBAAgB,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;IAC3D,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,iBAAiB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAE3E,SAAS;IACT,IAAI,OAAO,GAAG,gCAAgC,CAAC;IAC/C,OAAO,IAAI,cAAc,SAAS,CAAC,MAAM,IAAI,CAAC;IAC9C,OAAO,IAAI,kBAAkB,OAAO,CAAC,MAAM,MAAM,CAAC;IAElD,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;IAC3D,OAAO,IAAI,gBAAgB,YAAY,IAAI,OAAO,CAAC,MAAM,MAAM,CAAC;IAEhE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAC1C,OAAO,IAAI,OAAO,MAAM,IAAI,MAAM,CAAC,SAAS,IAAI,CAAC;QACjD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YACvC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,GAAG;gBAAE,OAAO,IAAI,KAAK,CAAC;QACnD,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,UAAU,MAAM,CAAC,KAAK,EAAE,CAAC;QACtC,CAAC;QACD,OAAO,IAAI,MAAM,CAAC;IACpB,CAAC;IAED,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;QAC1C,OAAO;KACoC,CAAC;AAChD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,MAAM;IACpB,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;IACpC,MAAM,OAAO,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAErC,OAAO;QACL,OAAO,EAAE,CAAC;gBACR,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,6BAA6B,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;aAC1F,CAAC;KACH,CAAC;AACJ,CAAC;AAED,+CAA+C;AAC/C,sCAAsC;AACtC,+CAA+C;AAE/C,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAC;AAElD,+CAA+C;AAC/C,kCAAkC;AAClC,+CAA+C;AAE/C;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,KAAa;IAC3C,uCAAuC;IACvC,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC;AAC7B,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,GAAG,CACvB,MAAc,EACd,eAAuB,8BAA8B;IAErD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1F,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YACzC,OAAO,EAAE,IAAI;SACuB,CAAC;IACzC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,eAAgB,KAAe,CAAC,OAAO,EAAE,EAAE,CAAC;YAC5E,OAAO,EAAE,KAAK;SACsB,CAAC;IACzC,CAAC;AACH,CAAC;AAED,+CAA+C;AAC/C,uCAAuC;AACvC,+CAA+C;AAE/C;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,KAAa;IAC9C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QACrD,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YACzC,OAAO,EAAE,IAAI;SACuB,CAAC;IACzC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAmB,KAAe,CAAC,OAAO,EAAE,EAAE,CAAC;YAC/E,OAAO,EAAE,KAAK;SACsB,CAAC;IACzC,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,MAAc,EACd,eAAuB,8BAA8B;IAErD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,qBAAqB,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QAChG,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YACzC,OAAO,EAAE,IAAI;SACuB,CAAC;IACzC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAmB,KAAe,CAAC,OAAO,EAAE,EAAE,CAAC;YAC/E,OAAO,EAAE,KAAK;SACsB,CAAC;IACzC,CAAC;AACH,CAAC;AAED,+CAA+C;AAC/C,0BAA0B;AAC1B,+CAA+C;AAE/C;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,MAAc,EACd,OAAmD;IAEnD,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;IAC5C,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAElE,IAAI,OAAO,GAAG,0BAA0B,CAAC;IAEzC,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAChB,OAAO,IAAI,YAAY,OAAO,CAAC,GAAG,MAAM,CAAC;IAC3C,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,OAAO,IAAI,eAAe,OAAO,CAAC,MAAM,MAAM,CAAC;IACjD,CAAC;IAED,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;QAC1C,OAAO;KACoC,CAAC;AAChD,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS;IAC7B,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;IAC5C,MAAM,eAAe,GAAG,MAAM,YAAY,CAAC,cAAc,EAAE,CAAC;IAE5D,MAAM,OAAO,GAAG,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC1D,MAAM,UAAU,GAAG,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAEhE,IAAI,IAAI,GAAG,mBAAmB,CAAC;IAC/B,IAAI,IAAI,UAAU,OAAO,IAAI,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,IAAI,CAAC;IAC7F,IAAI,IAAI,aAAa,UAAU,IAAI,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,IAAI,CAAC;IAEtG,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;QACjC,MAAM,EAAE,eAAe;KAC2B,CAAC;AACvD,CAAC;AAQD;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,IAAc,EACd,MAAc,EACd,YAAqB;IAErB,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;IAC5C,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;IAE7E,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY;QACtC,CAAC,CAAC,mBAAmB,MAAM,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG;QAC1E,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO;QACL,OAAO,EAAE,CAAC;gBACR,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,GAAG,YAAY,QAAQ,MAAM,CAAC,OAAO,EAAE;aAC/E,CAAC;QACF,MAAM;KACP,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,MAAc;IACpD,OAAO,UAAU,CAAC,cAAc,EAAE,MAAM,EAAE,oEAAoE,CAAC,CAAC;AAClH,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,MAAc;IAC5C,OAAO,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,uDAAuD,CAAC,CAAC;AAC7F,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,MAAc;IACpD,OAAO,UAAU,CAAC,eAAe,EAAE,MAAM,EAAE,8DAA8D,CAAC,CAAC;AAC7G,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,MAAc;IACjD,OAAO,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,0DAA0D,CAAC,CAAC;AACrG,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,KAAa;IAChD,OAAO,UAAU,CAAC,YAAY,EAAE,KAAK,EAAE,kDAAkD,CAAC,CAAC;AAC7F,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,WAAmB,EAAE,OAAgB;IACtE,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,WAAW,iBAAiB,OAAO,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC;IAChF,OAAO,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,uCAAuC,CAAC,CAAC;AACjF,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@su-record/vibe",
3
- "version": "2.6.16",
3
+ "version": "2.6.17",
4
4
  "description": "Vibe - Claude Code exclusive SPEC-driven AI coding framework with 35+ integrated tools",
5
5
  "type": "module",
6
6
  "main": "dist/cli/index.js",