@su-record/vibe 2.4.36 → 2.4.41

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 (59) hide show
  1. package/README.md +26 -13
  2. package/dist/cli/auth.js +9 -9
  3. package/dist/cli/auth.js.map +1 -1
  4. package/dist/cli/collaborator.js +28 -28
  5. package/dist/cli/collaborator.js.map +1 -1
  6. package/dist/cli/index.d.ts.map +1 -1
  7. package/dist/cli/index.js +57 -54
  8. package/dist/cli/index.js.map +1 -1
  9. package/dist/cli/llm.js +20 -20
  10. package/dist/cli/llm.js.map +1 -1
  11. package/dist/cli/setup.d.ts.map +1 -1
  12. package/dist/cli/setup.js +59 -44
  13. package/dist/cli/setup.js.map +1 -1
  14. package/dist/lib/gemini-api.d.ts +2 -2
  15. package/dist/lib/gemini-api.d.ts.map +1 -1
  16. package/dist/lib/gemini-api.js +9 -5
  17. package/dist/lib/gemini-api.js.map +1 -1
  18. package/dist/lib/gpt-api.d.ts +2 -2
  19. package/dist/lib/gpt-api.d.ts.map +1 -1
  20. package/dist/lib/gpt-api.js +12 -6
  21. package/dist/lib/gpt-api.js.map +1 -1
  22. package/dist/lib/utils.d.ts +15 -0
  23. package/dist/lib/utils.d.ts.map +1 -1
  24. package/dist/lib/utils.js +27 -0
  25. package/dist/lib/utils.js.map +1 -1
  26. package/dist/orchestrator/backgroundAgent.d.ts.map +1 -1
  27. package/dist/orchestrator/backgroundAgent.js +37 -1
  28. package/dist/orchestrator/backgroundAgent.js.map +1 -1
  29. package/dist/orchestrator/index.d.ts +112 -1
  30. package/dist/orchestrator/index.d.ts.map +1 -1
  31. package/dist/orchestrator/index.js +216 -0
  32. package/dist/orchestrator/index.js.map +1 -1
  33. package/dist/orchestrator/orchestrator.d.ts +115 -1
  34. package/dist/orchestrator/orchestrator.d.ts.map +1 -1
  35. package/dist/orchestrator/orchestrator.js +358 -1
  36. package/dist/orchestrator/orchestrator.js.map +1 -1
  37. package/dist/orchestrator/types.d.ts +42 -0
  38. package/dist/orchestrator/types.d.ts.map +1 -1
  39. package/dist/orchestrator/types.js +10 -1
  40. package/dist/orchestrator/types.js.map +1 -1
  41. package/hooks/hooks.json +29 -29
  42. package/hooks/scripts/code-check.js +22 -0
  43. package/hooks/scripts/code-review.js +22 -0
  44. package/hooks/scripts/complexity.js +22 -0
  45. package/hooks/scripts/compound.js +23 -0
  46. package/hooks/scripts/context-save.js +33 -0
  47. package/hooks/scripts/llm-orchestrate.js +64 -0
  48. package/hooks/scripts/recall.js +22 -0
  49. package/hooks/scripts/session-start.js +30 -0
  50. package/hooks/scripts/utils.js +40 -0
  51. package/package.json +1 -1
  52. package/dist/lib/gemini-mcp.d.ts +0 -10
  53. package/dist/lib/gemini-mcp.d.ts.map +0 -1
  54. package/dist/lib/gemini-mcp.js +0 -353
  55. package/dist/lib/gemini-mcp.js.map +0 -1
  56. package/dist/lib/gpt-mcp.d.ts +0 -10
  57. package/dist/lib/gpt-mcp.d.ts.map +0 -1
  58. package/dist/lib/gpt-mcp.js +0 -352
  59. package/dist/lib/gpt-mcp.js.map +0 -1
@@ -7,6 +7,8 @@
7
7
  * 사용법 (코드에서):
8
8
  * import { VibeOrchestrator, parallelResearch } from '@su-record/vibe/orchestrator';
9
9
  */
10
+ // Smart Routing constants
11
+ export { TASK_LLM_PRIORITY } from './types.js';
10
12
  // Agent Discovery
11
13
  export { discoverAgents, loadAgent, listAgentsByCategory } from './agentDiscovery.js';
12
14
  // Parallel Research
@@ -112,4 +114,218 @@ export function status() {
112
114
  }]
113
115
  };
114
116
  }
117
+ // ============================================
118
+ // Multi-LLM Integration (GPT, Gemini)
119
+ // ============================================
120
+ import * as gptApi from '../lib/gpt-api.js';
121
+ import * as geminiApi from '../lib/gemini-api.js';
122
+ // ============================================
123
+ // GPT Integration (웹 검색, 아키텍처 분석)
124
+ // ============================================
125
+ /**
126
+ * GPT 웹 검색 (간편 API)
127
+ *
128
+ * @example
129
+ * node -e "import('@su-record/vibe/orchestrator').then(o => o.gptSearch('React 19 features')).then(console.log)"
130
+ */
131
+ export async function gptSearch(query) {
132
+ try {
133
+ const result = await gptApi.quickWebSearch(query);
134
+ return {
135
+ content: [{ type: 'text', text: result }],
136
+ success: true
137
+ };
138
+ }
139
+ catch (error) {
140
+ return {
141
+ content: [{ type: 'text', text: `[GPT Error] ${error.message}` }],
142
+ success: false
143
+ };
144
+ }
145
+ }
146
+ /**
147
+ * GPT 오케스트레이션 (간편 API)
148
+ *
149
+ * @example
150
+ * node -e "import('@su-record/vibe/orchestrator').then(o => o.gpt('Analyze this architecture')).then(console.log)"
151
+ */
152
+ export async function gpt(prompt, systemPrompt = 'You are a helpful assistant.') {
153
+ try {
154
+ const result = await gptApi.vibeGptOrchestrate(prompt, systemPrompt, { jsonMode: false });
155
+ return {
156
+ content: [{ type: 'text', text: result }],
157
+ success: true
158
+ };
159
+ }
160
+ catch (error) {
161
+ return {
162
+ content: [{ type: 'text', text: `[GPT Error] ${error.message}` }],
163
+ success: false
164
+ };
165
+ }
166
+ }
167
+ // ============================================
168
+ // Gemini Integration (UI/UX 분석, 코드 분석)
169
+ // ============================================
170
+ /**
171
+ * Gemini 웹 검색 (간편 API)
172
+ *
173
+ * @example
174
+ * node -e "import('@su-record/vibe/orchestrator').then(o => o.geminiSearch('React 19 features')).then(console.log)"
175
+ */
176
+ export async function geminiSearch(query) {
177
+ try {
178
+ const result = await geminiApi.quickWebSearch(query);
179
+ return {
180
+ content: [{ type: 'text', text: result }],
181
+ success: true
182
+ };
183
+ }
184
+ catch (error) {
185
+ return {
186
+ content: [{ type: 'text', text: `[Gemini Error] ${error.message}` }],
187
+ success: false
188
+ };
189
+ }
190
+ }
191
+ /**
192
+ * Gemini 오케스트레이션 (간편 API)
193
+ *
194
+ * @example
195
+ * node -e "import('@su-record/vibe/orchestrator').then(o => o.gemini('Review this UI')).then(console.log)"
196
+ */
197
+ export async function gemini(prompt, systemPrompt = 'You are a helpful assistant.') {
198
+ try {
199
+ const result = await geminiApi.vibeGeminiOrchestrate(prompt, systemPrompt, { jsonMode: false });
200
+ return {
201
+ content: [{ type: 'text', text: result }],
202
+ success: true
203
+ };
204
+ }
205
+ catch (error) {
206
+ return {
207
+ content: [{ type: 'text', text: `[Gemini Error] ${error.message}` }],
208
+ success: false
209
+ };
210
+ }
211
+ }
212
+ // ============================================
213
+ // Multi-LLM Orchestration
214
+ // ============================================
215
+ /**
216
+ * 멀티 LLM 병렬 쿼리 (간편 API)
217
+ * GPT, Gemini 동시 호출
218
+ *
219
+ * @example
220
+ * node -e "import('@su-record/vibe/orchestrator').then(o => o.multiLlm('Review this code')).then(console.log)"
221
+ */
222
+ export async function multiLlm(prompt, options) {
223
+ const orchestrator = new VibeOrchestrator();
224
+ const results = await orchestrator.multiLlmQuery(prompt, options);
225
+ let summary = '## Multi-LLM Results\n\n';
226
+ if (results.gpt) {
227
+ summary += `### GPT\n${results.gpt}\n\n`;
228
+ }
229
+ if (results.gemini) {
230
+ summary += `### Gemini\n${results.gemini}\n\n`;
231
+ }
232
+ return {
233
+ content: [{ type: 'text', text: summary }],
234
+ results
235
+ };
236
+ }
237
+ /**
238
+ * LLM 상태 확인 (간편 API)
239
+ *
240
+ * @example
241
+ * node -e "import('@su-record/vibe/orchestrator').then(o => o.llmStatus()).then(console.log)"
242
+ */
243
+ export async function llmStatus() {
244
+ const orchestrator = new VibeOrchestrator();
245
+ const llmStatusResult = await orchestrator.checkLlmStatus();
246
+ const gptIcon = llmStatusResult.gpt.available ? '✓' : '✗';
247
+ const geminiIcon = llmStatusResult.gemini.available ? '✓' : '✗';
248
+ let text = '## LLM Status\n\n';
249
+ text += `- GPT: ${gptIcon} ${llmStatusResult.gpt.available ? 'Available' : 'Unavailable'}\n`;
250
+ text += `- Gemini: ${geminiIcon} ${llmStatusResult.gemini.available ? 'Available' : 'Unavailable'}\n`;
251
+ return {
252
+ content: [{ type: 'text', text }],
253
+ status: llmStatusResult
254
+ };
255
+ }
256
+ /**
257
+ * 스마트 라우팅 - 작업 유형에 따라 최적의 LLM 선택 + 자동 fallback
258
+ *
259
+ * @example
260
+ * node -e "import('@su-record/vibe/orchestrator').then(o => o.smartRoute({type:'architecture',prompt:'Review this design'})).then(console.log)"
261
+ */
262
+ export async function smartRoute(type, prompt, systemPrompt) {
263
+ const orchestrator = new VibeOrchestrator();
264
+ const result = await orchestrator.smartRoute({ type, prompt, systemPrompt });
265
+ const fallbackInfo = result.usedFallback
266
+ ? ` (fallback from ${result.attemptedProviders.slice(0, -1).join(' → ')})`
267
+ : '';
268
+ return {
269
+ content: [{
270
+ type: 'text',
271
+ text: `[${result.provider.toUpperCase()}${fallbackInfo}]\n\n${result.content}`
272
+ }],
273
+ result
274
+ };
275
+ }
276
+ /**
277
+ * 아키텍처 분석 with fallback (GPT → Gemini → Claude)
278
+ *
279
+ * @example
280
+ * node -e "import('@su-record/vibe/orchestrator').then(o => o.smartArchitecture('Review this system design')).then(console.log)"
281
+ */
282
+ export async function smartArchitecture(prompt) {
283
+ return smartRoute('architecture', prompt, 'You are a software architect. Analyze and review the architecture.');
284
+ }
285
+ /**
286
+ * UI/UX 분석 with fallback (Gemini → GPT → Claude)
287
+ *
288
+ * @example
289
+ * node -e "import('@su-record/vibe/orchestrator').then(o => o.smartUiux('Improve this form UX')).then(console.log)"
290
+ */
291
+ export async function smartUiux(prompt) {
292
+ return smartRoute('uiux', prompt, 'You are a UI/UX expert. Analyze and provide feedback.');
293
+ }
294
+ /**
295
+ * 코드 분석 with fallback (Gemini → GPT → Claude)
296
+ *
297
+ * @example
298
+ * node -e "import('@su-record/vibe/orchestrator').then(o => o.smartCodeAnalysis('Analyze this code')).then(console.log)"
299
+ */
300
+ export async function smartCodeAnalysis(prompt) {
301
+ return smartRoute('code-analysis', prompt, 'You are a code analysis expert. Review and analyze the code.');
302
+ }
303
+ /**
304
+ * 디버깅 with fallback (GPT → Gemini → Claude)
305
+ *
306
+ * @example
307
+ * node -e "import('@su-record/vibe/orchestrator').then(o => o.smartDebugging('Find bugs in this code')).then(console.log)"
308
+ */
309
+ export async function smartDebugging(prompt) {
310
+ return smartRoute('debugging', prompt, 'You are a debugging expert. Find bugs and suggest fixes.');
311
+ }
312
+ /**
313
+ * 웹 검색 with fallback (GPT → Gemini → Claude)
314
+ *
315
+ * @example
316
+ * node -e "import('@su-record/vibe/orchestrator').then(o => o.smartWebSearch('React 19 new features')).then(console.log)"
317
+ */
318
+ export async function smartWebSearch(query) {
319
+ return smartRoute('web-search', query, 'Search the web and provide relevant information.');
320
+ }
321
+ /**
322
+ * 코드 생성 with fallback (Claude 직접)
323
+ *
324
+ * @example
325
+ * node -e "import('@su-record/vibe/orchestrator').then(o => o.smartCodeGen('Create a React button component')).then(console.log)"
326
+ */
327
+ export async function smartCodeGen(description, context) {
328
+ const prompt = context ? `${description}\n\nContext:\n${context}` : description;
329
+ return smartRoute('code-gen', prompt, 'Generate clean, well-documented code.');
330
+ }
115
331
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/orchestrator/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/orchestrator/index.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  * Orchestrator - 메인 오케스트레이터 클래스
3
3
  * /vibe.* 명령어에서 사용할 중앙 오케스트레이션 로직
4
4
  */
5
- import { OrchestratorOptions, AgentResult, BackgroundAgentArgs, BackgroundAgentHandle, ParallelResearchArgs, ParallelResearchResult, DiscoveredAgent } from './types.js';
5
+ import { OrchestratorOptions, AgentResult, BackgroundAgentArgs, BackgroundAgentHandle, ParallelResearchArgs, ParallelResearchResult, DiscoveredAgent, SmartRouteRequest, SmartRouteResult } from './types.js';
6
6
  import { ToolResult } from '../types/tool.js';
7
7
  /**
8
8
  * Vibe Orchestrator
@@ -12,6 +12,70 @@ export declare class VibeOrchestrator {
12
12
  private options;
13
13
  private memoryManager;
14
14
  constructor(options?: OrchestratorOptions);
15
+ /**
16
+ * 스마트 라우팅 - 작업 유형에 따라 최적의 LLM 선택 + fallback
17
+ *
18
+ * @example
19
+ * const result = await orchestrator.smartRoute({
20
+ * type: 'architecture',
21
+ * prompt: 'Review this system design'
22
+ * });
23
+ */
24
+ smartRoute(request: SmartRouteRequest): Promise<SmartRouteResult>;
25
+ /**
26
+ * LLM 호출 (provider별 분기)
27
+ */
28
+ private callLlm;
29
+ /**
30
+ * 재시도 없이 즉시 다음 LLM으로 넘어가야 하는 에러인지 확인
31
+ * - Rate limit/Quota 에러
32
+ * - 인증 에러 (토큰/키 없음)
33
+ */
34
+ private shouldSkipRetry;
35
+ /**
36
+ * LLM 가용성 확인 (캐시 기반)
37
+ */
38
+ private isLlmUnavailable;
39
+ /**
40
+ * LLM 가용 상태로 마킹
41
+ */
42
+ private markLlmAvailable;
43
+ /**
44
+ * LLM 불가용 상태로 마킹
45
+ */
46
+ private markLlmUnavailable;
47
+ /**
48
+ * Fallback 메시지 생성 (Claude가 직접 처리하도록 안내)
49
+ */
50
+ private buildFallbackMessage;
51
+ /**
52
+ * 지연 유틸리티
53
+ */
54
+ private delay;
55
+ /**
56
+ * 웹 검색 with fallback (GPT → Gemini → Claude WebSearch)
57
+ */
58
+ smartWebSearch(query: string): Promise<SmartRouteResult>;
59
+ /**
60
+ * 아키텍처 분석 with fallback
61
+ */
62
+ smartArchitectureReview(prompt: string): Promise<SmartRouteResult>;
63
+ /**
64
+ * UI/UX 분석 with fallback
65
+ */
66
+ smartUiuxReview(prompt: string): Promise<SmartRouteResult>;
67
+ /**
68
+ * 코드 분석 with fallback
69
+ */
70
+ smartCodeAnalysis(prompt: string): Promise<SmartRouteResult>;
71
+ /**
72
+ * 디버깅 with fallback
73
+ */
74
+ smartDebugging(prompt: string): Promise<SmartRouteResult>;
75
+ /**
76
+ * 코드 생성 with fallback (Claude 직접)
77
+ */
78
+ smartCodeGen(description: string, context?: string): Promise<SmartRouteResult>;
15
79
  /**
16
80
  * 에이전트 탐색
17
81
  */
@@ -77,6 +141,56 @@ export declare class VibeOrchestrator {
77
141
  * 메모리에서 결과 조회
78
142
  */
79
143
  getFromMemory(key: string): string | null;
144
+ /**
145
+ * GPT 웹 검색
146
+ * @param query 검색 쿼리
147
+ */
148
+ gptWebSearch(query: string): Promise<string>;
149
+ /**
150
+ * GPT 오케스트레이션
151
+ * @param prompt 프롬프트
152
+ * @param systemPrompt 시스템 프롬프트
153
+ * @param options 옵션 (jsonMode 등)
154
+ */
155
+ gptOrchestrate(prompt: string, systemPrompt?: string, options?: {
156
+ jsonMode?: boolean;
157
+ }): Promise<string>;
158
+ /**
159
+ * Gemini 웹 검색
160
+ * @param query 검색 쿼리
161
+ */
162
+ geminiWebSearch(query: string): Promise<string>;
163
+ /**
164
+ * Gemini 오케스트레이션
165
+ * @param prompt 프롬프트
166
+ * @param systemPrompt 시스템 프롬프트
167
+ * @param options 옵션 (jsonMode 등)
168
+ */
169
+ geminiOrchestrate(prompt: string, systemPrompt?: string, options?: {
170
+ jsonMode?: boolean;
171
+ }): Promise<string>;
172
+ /**
173
+ * 멀티 LLM 병렬 쿼리
174
+ * GPT, Gemini 동시 호출하여 결과 비교
175
+ */
176
+ multiLlmQuery(prompt: string, options?: {
177
+ useGpt?: boolean;
178
+ useGemini?: boolean;
179
+ }): Promise<{
180
+ gpt?: string;
181
+ gemini?: string;
182
+ }>;
183
+ /**
184
+ * LLM 상태 확인 (전체)
185
+ */
186
+ checkLlmStatus(): Promise<{
187
+ gpt: {
188
+ available: boolean;
189
+ };
190
+ gemini: {
191
+ available: boolean;
192
+ };
193
+ }>;
80
194
  }
81
195
  export declare function getOrchestrator(options?: OrchestratorOptions): VibeOrchestrator;
82
196
  //# sourceMappingURL=orchestrator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../src/orchestrator/orchestrator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EACL,mBAAmB,EAEnB,WAAW,EACX,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,sBAAsB,EACtB,eAAe,EAChB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAmB9C;;;GAGG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,OAAO,CAAsB;IACrC,OAAO,CAAC,aAAa,CAAgB;gBAEzB,OAAO,GAAE,mBAAwB;IAW7C;;OAEG;IACG,cAAc,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAYnE;;OAEG;IACG,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAInE;;OAEG;IACG,mBAAmB,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAuBtF;;OAEG;IACG,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,GAAE,MAAM,EAAO,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAKjG;;OAEG;IACG,WAAW,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC;IAYnF;;OAEG;IACG,YAAY,CAAC,OAAO,EAAE,mBAAmB,EAAE,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;IAcpF;;OAEG;IACG,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IASpE;;OAEG;IACH,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAKvC;;OAEG;IACH,iBAAiB,IAAI,UAAU;IAI/B;;OAEG;IACH,UAAU,CAAC,KAAK,GAAE,MAAW,GAAG,UAAU;IAI1C;;;OAGG;IACG,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,SAAS,GAAE,MAAM,EAAO,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAkC9F;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAuC5B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAgBzB;;OAEG;YACW,sBAAsB;IAsBpC;;OAEG;IACH,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAuB,GAAG,IAAI;IAIjF;;OAEG;IACH,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;CAI1C;AAKD,wBAAgB,eAAe,CAAC,OAAO,CAAC,EAAE,mBAAmB,GAAG,gBAAgB,CAK/E"}
1
+ {"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../src/orchestrator/orchestrator.ts"],"names":[],"mappings":"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"}