@su-record/vibe 2.4.41 → 2.4.44
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/commands/vibe.run.md +9 -7
- package/commands/vibe.spec.md +6 -4
- package/dist/cli/collaborator.d.ts.map +1 -1
- package/dist/cli/collaborator.js +1 -9
- package/dist/cli/collaborator.js.map +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +6 -54
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/llm.d.ts +2 -2
- package/dist/cli/llm.d.ts.map +1 -1
- package/dist/cli/llm.js +85 -88
- package/dist/cli/llm.js.map +1 -1
- package/dist/cli/setup.d.ts.map +1 -1
- package/dist/cli/setup.js +5 -58
- package/dist/cli/setup.js.map +1 -1
- package/dist/lib/gemini-oauth.d.ts.map +1 -1
- package/dist/lib/gemini-oauth.js +17 -10
- package/dist/lib/gemini-oauth.js.map +1 -1
- package/dist/lib/gpt-api.d.ts +0 -1
- package/dist/lib/gpt-api.d.ts.map +1 -1
- package/dist/lib/gpt-api.js +11 -160
- package/dist/lib/gpt-api.js.map +1 -1
- package/dist/lib/gpt-oauth.d.ts.map +1 -1
- package/dist/lib/gpt-oauth.js +17 -10
- package/dist/lib/gpt-oauth.js.map +1 -1
- package/package.json +1 -1
package/dist/cli/llm.js
CHANGED
|
@@ -34,12 +34,12 @@ export const EXTERNAL_LLMS = {
|
|
|
34
34
|
export function setupExternalLLM(llmType, apiKey) {
|
|
35
35
|
if (!apiKey) {
|
|
36
36
|
console.log(`
|
|
37
|
-
❌ API
|
|
37
|
+
❌ API key required.
|
|
38
38
|
|
|
39
|
-
|
|
39
|
+
Usage:
|
|
40
40
|
vibe ${llmType} <api-key>
|
|
41
41
|
|
|
42
|
-
${llmType === 'gpt' ? 'OpenAI API
|
|
42
|
+
${llmType === 'gpt' ? 'OpenAI API key: https://platform.openai.com/api-keys' : 'Google API key: https://aistudio.google.com/apikey'}
|
|
43
43
|
`);
|
|
44
44
|
return;
|
|
45
45
|
}
|
|
@@ -108,10 +108,10 @@ export function removeExternalLLM(llmType) {
|
|
|
108
108
|
*/
|
|
109
109
|
export async function gptAuth() {
|
|
110
110
|
console.log(`
|
|
111
|
-
🔐 GPT Plus/Pro
|
|
111
|
+
🔐 GPT Plus/Pro Authentication (OAuth)
|
|
112
112
|
|
|
113
|
-
ChatGPT Plus
|
|
114
|
-
|
|
113
|
+
With ChatGPT Plus or Pro subscription, you can use the Codex API.
|
|
114
|
+
Login with your OpenAI account in browser.
|
|
115
115
|
`);
|
|
116
116
|
try {
|
|
117
117
|
const gptOAuthPath = path.join(__dirname, '../lib/gpt-oauth.js');
|
|
@@ -128,16 +128,15 @@ ChatGPT Plus 또는 Pro 구독이 있으면 Codex API를 사용할 수 있습니
|
|
|
128
128
|
accountId: tokens.accountId,
|
|
129
129
|
});
|
|
130
130
|
console.log(`
|
|
131
|
-
✅ GPT
|
|
131
|
+
✅ GPT authenticated!
|
|
132
132
|
|
|
133
|
-
|
|
134
|
-
|
|
133
|
+
Account: ${tokens.email}
|
|
134
|
+
Account ID: ${tokens.accountId || '(auto-detected)'}
|
|
135
135
|
|
|
136
|
-
⚠️
|
|
137
|
-
구독이 없으면 인증은 성공하지만 API 호출 시 오류가 발생합니다.
|
|
136
|
+
⚠️ Note: ChatGPT Plus/Pro subscription required for API calls.
|
|
138
137
|
|
|
139
|
-
|
|
140
|
-
|
|
138
|
+
Status: vibe status gpt
|
|
139
|
+
Logout: vibe logout gpt
|
|
141
140
|
`);
|
|
142
141
|
// config.json 업데이트
|
|
143
142
|
const projectRoot = process.cwd();
|
|
@@ -160,20 +159,20 @@ ChatGPT Plus 또는 Pro 구독이 있으면 Codex API를 사용할 수 있습니
|
|
|
160
159
|
catch { /* ignore: optional operation */ }
|
|
161
160
|
}
|
|
162
161
|
console.log(`
|
|
163
|
-
GPT
|
|
164
|
-
- "gpt
|
|
165
|
-
- import('@su-record/vibe/lib/gpt')
|
|
162
|
+
GPT is called via Hooks:
|
|
163
|
+
- Auto-called with "gpt. query" prefix
|
|
164
|
+
- Direct use: import('@su-record/vibe/lib/gpt')
|
|
166
165
|
`);
|
|
167
166
|
process.exit(0);
|
|
168
167
|
}
|
|
169
168
|
catch (error) {
|
|
170
169
|
const message = error instanceof Error ? error.message : String(error);
|
|
171
170
|
console.error(`
|
|
172
|
-
❌ GPT
|
|
171
|
+
❌ GPT authentication failed
|
|
173
172
|
|
|
174
|
-
|
|
173
|
+
Error: ${message}
|
|
175
174
|
|
|
176
|
-
|
|
175
|
+
Retry: vibe gpt --auth
|
|
177
176
|
`);
|
|
178
177
|
process.exit(1);
|
|
179
178
|
}
|
|
@@ -188,35 +187,35 @@ export function gptStatus() {
|
|
|
188
187
|
const accounts = storage.getAllAccounts();
|
|
189
188
|
if (accounts.length === 0) {
|
|
190
189
|
console.log(`
|
|
191
|
-
📊 GPT
|
|
190
|
+
📊 GPT Status
|
|
192
191
|
|
|
193
|
-
|
|
192
|
+
No authenticated account
|
|
194
193
|
|
|
195
|
-
|
|
194
|
+
Login: vibe gpt --auth
|
|
196
195
|
`);
|
|
197
196
|
return;
|
|
198
197
|
}
|
|
199
198
|
const activeAccount = storage.getActiveAccount();
|
|
200
199
|
const isExpired = storage.isTokenExpired(activeAccount);
|
|
201
200
|
console.log(`
|
|
202
|
-
📊 GPT
|
|
201
|
+
📊 GPT Status
|
|
203
202
|
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
203
|
+
Active: ${activeAccount.email}
|
|
204
|
+
Account ID: ${activeAccount.accountId || '(none)'}
|
|
205
|
+
Token: ${isExpired ? '⚠️ Expired (auto-refresh)' : '✅ Valid'}
|
|
206
|
+
Last used: ${new Date(activeAccount.lastUsed).toLocaleString()}
|
|
208
207
|
|
|
209
|
-
|
|
208
|
+
Accounts (${accounts.length}):
|
|
210
209
|
${accounts.map((acc, i) => ` ${i === storage.loadAccounts()?.activeIndex ? '→' : ' '} ${acc.email}`).join('\n')}
|
|
211
210
|
|
|
212
|
-
⚠️
|
|
211
|
+
⚠️ Note: ChatGPT Plus/Pro subscription required.
|
|
213
212
|
|
|
214
|
-
|
|
213
|
+
Logout: vibe logout gpt
|
|
215
214
|
`);
|
|
216
215
|
}
|
|
217
216
|
catch (error) {
|
|
218
217
|
const message = error instanceof Error ? error.message : String(error);
|
|
219
|
-
console.error('
|
|
218
|
+
console.error('Status check failed:', message);
|
|
220
219
|
}
|
|
221
220
|
}
|
|
222
221
|
/**
|
|
@@ -233,11 +232,11 @@ export function gptLogout() {
|
|
|
233
232
|
}
|
|
234
233
|
storage.clearAccounts();
|
|
235
234
|
console.log(`
|
|
236
|
-
✅ GPT
|
|
235
|
+
✅ GPT logged out
|
|
237
236
|
|
|
238
|
-
${activeAccount.email}
|
|
237
|
+
Account ${activeAccount.email} removed.
|
|
239
238
|
|
|
240
|
-
|
|
239
|
+
Login again: vibe gpt --auth
|
|
241
240
|
`);
|
|
242
241
|
// config.json 업데이트
|
|
243
242
|
const projectRoot = process.cwd();
|
|
@@ -258,7 +257,7 @@ ${activeAccount.email} 계정이 제거되었습니다.
|
|
|
258
257
|
}
|
|
259
258
|
catch (error) {
|
|
260
259
|
const message = error instanceof Error ? error.message : String(error);
|
|
261
|
-
console.error('
|
|
260
|
+
console.error('Logout failed:', message);
|
|
262
261
|
}
|
|
263
262
|
}
|
|
264
263
|
// ============================================================================
|
|
@@ -269,10 +268,10 @@ ${activeAccount.email} 계정이 제거되었습니다.
|
|
|
269
268
|
*/
|
|
270
269
|
export async function geminiAuth() {
|
|
271
270
|
console.log(`
|
|
272
|
-
🔐 Gemini
|
|
271
|
+
🔐 Gemini Authentication (OAuth)
|
|
273
272
|
|
|
274
|
-
Gemini Advanced
|
|
275
|
-
|
|
273
|
+
With Gemini Advanced subscription, you can use it at no additional cost.
|
|
274
|
+
Login with your Google account in browser.
|
|
276
275
|
`);
|
|
277
276
|
try {
|
|
278
277
|
const geminiOAuthPath = path.join(__dirname, '../lib/gemini-oauth.js');
|
|
@@ -288,19 +287,17 @@ Gemini Advanced 구독이 있으면 추가 비용 없이 사용할 수 있습니
|
|
|
288
287
|
projectId: tokens.projectId,
|
|
289
288
|
});
|
|
290
289
|
console.log(`
|
|
291
|
-
✅ Gemini
|
|
290
|
+
✅ Gemini authenticated!
|
|
292
291
|
|
|
293
|
-
|
|
294
|
-
|
|
292
|
+
Account: ${tokens.email}
|
|
293
|
+
Project: ${tokens.projectId || '(auto-detected)'}
|
|
295
294
|
|
|
296
|
-
|
|
297
|
-
- Gemini 3 Flash (
|
|
298
|
-
- Gemini 3 Pro (
|
|
295
|
+
Available models:
|
|
296
|
+
- Gemini 3 Flash (fast, exploration/search)
|
|
297
|
+
- Gemini 3 Pro (high accuracy)
|
|
299
298
|
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
상태 확인: vibe status gemini
|
|
303
|
-
로그아웃: vibe logout gemini
|
|
299
|
+
Status: vibe status gemini
|
|
300
|
+
Logout: vibe logout gemini
|
|
304
301
|
`);
|
|
305
302
|
// config.json 업데이트
|
|
306
303
|
const projectRoot = process.cwd();
|
|
@@ -323,20 +320,20 @@ Gemini Advanced 구독이 있으면 추가 비용 없이 사용할 수 있습니
|
|
|
323
320
|
catch { /* ignore: optional operation */ }
|
|
324
321
|
}
|
|
325
322
|
console.log(`
|
|
326
|
-
Gemini
|
|
327
|
-
- "gemini
|
|
328
|
-
- import('@su-record/vibe/lib/gemini')
|
|
323
|
+
Gemini is called via Hooks:
|
|
324
|
+
- Auto-called with "gemini. query" prefix
|
|
325
|
+
- Direct use: import('@su-record/vibe/lib/gemini')
|
|
329
326
|
`);
|
|
330
327
|
process.exit(0);
|
|
331
328
|
}
|
|
332
329
|
catch (error) {
|
|
333
330
|
const message = error instanceof Error ? error.message : String(error);
|
|
334
331
|
console.error(`
|
|
335
|
-
❌ Gemini
|
|
332
|
+
❌ Gemini authentication failed
|
|
336
333
|
|
|
337
|
-
|
|
334
|
+
Error: ${message}
|
|
338
335
|
|
|
339
|
-
|
|
336
|
+
Retry: vibe gemini --auth
|
|
340
337
|
`);
|
|
341
338
|
process.exit(1);
|
|
342
339
|
}
|
|
@@ -353,36 +350,36 @@ export function geminiStatus() {
|
|
|
353
350
|
const accounts = storage.getAllAccounts();
|
|
354
351
|
if (accounts.length === 0) {
|
|
355
352
|
console.log(`
|
|
356
|
-
📊 Gemini
|
|
353
|
+
📊 Gemini Status
|
|
357
354
|
|
|
358
|
-
|
|
355
|
+
No authenticated account
|
|
359
356
|
|
|
360
|
-
|
|
357
|
+
Login: vibe gemini --auth
|
|
361
358
|
`);
|
|
362
359
|
return;
|
|
363
360
|
}
|
|
364
361
|
const activeAccount = storage.getActiveAccount();
|
|
365
362
|
const isExpired = storage.isTokenExpired(activeAccount);
|
|
366
363
|
console.log(`
|
|
367
|
-
📊 Gemini
|
|
364
|
+
📊 Gemini Status
|
|
368
365
|
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
366
|
+
Active: ${activeAccount.email}
|
|
367
|
+
Project: ${activeAccount.projectId || '(auto)'}
|
|
368
|
+
Token: ${isExpired ? '⚠️ Expired (auto-refresh)' : '✅ Valid'}
|
|
369
|
+
Last used: ${new Date(activeAccount.lastUsed).toLocaleString()}
|
|
373
370
|
|
|
374
|
-
|
|
371
|
+
Accounts (${accounts.length}):
|
|
375
372
|
${accounts.map((acc, i) => ` ${i === storage.loadAccounts()?.activeIndex ? '→' : ' '} ${acc.email}`).join('\n')}
|
|
376
373
|
|
|
377
|
-
|
|
374
|
+
Available models:
|
|
378
375
|
${Object.entries(GEMINI_MODELS).map(([id, info]) => ` - ${id}: ${info.description}`).join('\n')}
|
|
379
376
|
|
|
380
|
-
|
|
377
|
+
Logout: vibe logout gemini
|
|
381
378
|
`);
|
|
382
379
|
}
|
|
383
380
|
catch (error) {
|
|
384
381
|
const message = error instanceof Error ? error.message : String(error);
|
|
385
|
-
console.error('
|
|
382
|
+
console.error('Status check failed:', message);
|
|
386
383
|
}
|
|
387
384
|
}
|
|
388
385
|
/**
|
|
@@ -399,11 +396,11 @@ export function geminiLogout() {
|
|
|
399
396
|
}
|
|
400
397
|
storage.clearAccounts();
|
|
401
398
|
console.log(`
|
|
402
|
-
✅ Gemini
|
|
399
|
+
✅ Gemini logged out
|
|
403
400
|
|
|
404
|
-
${activeAccount.email}
|
|
401
|
+
Account ${activeAccount.email} removed.
|
|
405
402
|
|
|
406
|
-
|
|
403
|
+
Login again: vibe gemini --auth
|
|
407
404
|
`);
|
|
408
405
|
// config.json 업데이트
|
|
409
406
|
const projectRoot = process.cwd();
|
|
@@ -424,41 +421,41 @@ ${activeAccount.email} 계정이 제거되었습니다.
|
|
|
424
421
|
}
|
|
425
422
|
catch (error) {
|
|
426
423
|
const message = error instanceof Error ? error.message : String(error);
|
|
427
|
-
console.error('
|
|
424
|
+
console.error('Logout failed:', message);
|
|
428
425
|
}
|
|
429
426
|
}
|
|
430
427
|
// ============================================================================
|
|
431
428
|
// Help Functions
|
|
432
429
|
// ============================================================================
|
|
433
430
|
/**
|
|
434
|
-
*
|
|
431
|
+
* Auth help
|
|
435
432
|
*/
|
|
436
433
|
export function showAuthHelp() {
|
|
437
434
|
console.log(`
|
|
438
|
-
🔐 vibe auth - LLM
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
vibe auth gpt GPT Plus/Pro OAuth
|
|
442
|
-
vibe auth gpt --key <key> GPT API
|
|
443
|
-
vibe auth gemini Gemini
|
|
444
|
-
vibe auth gemini --key <key> Gemini API
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
vibe auth gpt OpenAI
|
|
448
|
-
vibe auth gemini Google
|
|
449
|
-
vibe auth gpt --key sk-xxx API
|
|
435
|
+
🔐 vibe auth - LLM Authentication
|
|
436
|
+
|
|
437
|
+
Usage:
|
|
438
|
+
vibe auth gpt GPT Plus/Pro OAuth
|
|
439
|
+
vibe auth gpt --key <key> GPT API key
|
|
440
|
+
vibe auth gemini Gemini OAuth (recommended)
|
|
441
|
+
vibe auth gemini --key <key> Gemini API key
|
|
442
|
+
|
|
443
|
+
Examples:
|
|
444
|
+
vibe auth gpt OpenAI login (Plus/Pro subscription required)
|
|
445
|
+
vibe auth gemini Google login (free with Gemini Advanced)
|
|
446
|
+
vibe auth gpt --key sk-xxx API key (usage-based billing)
|
|
450
447
|
`);
|
|
451
448
|
}
|
|
452
449
|
/**
|
|
453
|
-
*
|
|
450
|
+
* Logout help
|
|
454
451
|
*/
|
|
455
452
|
export function showLogoutHelp() {
|
|
456
453
|
console.log(`
|
|
457
|
-
🚪 vibe logout - LLM
|
|
454
|
+
🚪 vibe logout - LLM Logout
|
|
458
455
|
|
|
459
|
-
|
|
460
|
-
vibe logout gpt GPT
|
|
461
|
-
vibe logout gemini Gemini
|
|
456
|
+
Usage:
|
|
457
|
+
vibe logout gpt GPT logout
|
|
458
|
+
vibe logout gemini Gemini logout
|
|
462
459
|
`);
|
|
463
460
|
}
|
|
464
461
|
//# sourceMappingURL=llm.js.map
|
package/dist/cli/llm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm.js","sourceRoot":"","sources":["../../src/cli/llm.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"llm.js","sourceRoot":"","sources":["../../src/cli/llm.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/setup.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/cli/setup.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,OAAO,EAAc,SAAS,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAYjE;;;;;GAKG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAOzC;AAED,wBAAgB,wBAAwB,CAAC,QAAQ,UAAQ,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/cli/setup.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,OAAO,EAAc,SAAS,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAYjE;;;;;GAKG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAOzC;AAED,wBAAgB,wBAAwB,CAAC,QAAQ,UAAQ,GAAG,IAAI,CA6D/D;AAMD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,UAAQ,GAAG,IAAI,CAczD;AAMD;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,SAAS,EAAE,EAC3B,YAAY,EAAE,YAAY,GACzB,IAAI,CA8CN;AAMD;;GAEG;AACH,wBAAgB,cAAc,CAC5B,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,SAAS,EAAE,EAC3B,QAAQ,UAAQ,GACf,IAAI,CAoDN;AAMD;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,EAAE,QAAQ,UAAQ,GAAG,IAAI,CA4BhG;AAMD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,UAAQ,GAAG,IAAI,CA8C1D;AAMD;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAyB/E;AAMD;;GAEG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAgCzD;AAMD;;GAEG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,SAAS,EAAE,EAC3B,YAAY,EAAE,YAAY,EAC1B,QAAQ,UAAQ,GACf,IAAI,CAmBN;AAMD;;GAEG;AACH,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CA8C1E;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAkBzD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CA6C1C;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAOtD"}
|
package/dist/cli/setup.js
CHANGED
|
@@ -40,13 +40,11 @@ export function installGlobalVibePackage(isUpdate = false) {
|
|
|
40
40
|
try {
|
|
41
41
|
const installed = JSON.parse(fs.readFileSync(installedPackageJson, 'utf-8'));
|
|
42
42
|
if (installed.version === currentVersion && !isUpdate) {
|
|
43
|
-
log(' ℹ️ vibe package already installed (v' + currentVersion + ')\n');
|
|
44
43
|
return;
|
|
45
44
|
}
|
|
46
45
|
}
|
|
47
46
|
catch { /* ignore: reinstall if can't read */ }
|
|
48
47
|
}
|
|
49
|
-
log(' 📦 Installing vibe package globally (~/.config/vibe/)...\n');
|
|
50
48
|
// 디렉토리 생성
|
|
51
49
|
ensureDir(globalVibeDir);
|
|
52
50
|
ensureDir(nodeModulesDir);
|
|
@@ -61,15 +59,12 @@ export function installGlobalVibePackage(isUpdate = false) {
|
|
|
61
59
|
const globalNpmVibeDir = path.join(globalNpmRoot, '@su-record', 'vibe');
|
|
62
60
|
if (fs.existsSync(globalNpmVibeDir)) {
|
|
63
61
|
copyDirRecursive(globalNpmVibeDir, vibePackageDir);
|
|
64
|
-
log(' ✅ vibe package installed globally (v' + currentVersion + ')\n');
|
|
65
62
|
}
|
|
66
63
|
else {
|
|
67
64
|
// Install from npm if global npm install not found
|
|
68
|
-
log(' ⬇️ Installing vibe package from npm...\n');
|
|
69
65
|
execSync(`npm install @su-record/vibe@${currentVersion} --prefix "${globalVibeDir}" --no-save`, {
|
|
70
66
|
stdio: 'pipe',
|
|
71
67
|
});
|
|
72
|
-
log(' ✅ vibe package installed globally (v' + currentVersion + ')\n');
|
|
73
68
|
}
|
|
74
69
|
// Copy hooks/scripts folder to VIBE_PATH (referenced by hooks.json)
|
|
75
70
|
// Source priority: 1) Just installed package 2) Current package root (npm link etc)
|
|
@@ -84,13 +79,11 @@ export function installGlobalVibePackage(isUpdate = false) {
|
|
|
84
79
|
removeDirRecursive(hooksScriptsTarget);
|
|
85
80
|
}
|
|
86
81
|
copyDirRecursive(hooksScriptsSource, hooksScriptsTarget);
|
|
87
|
-
log(' ✅ Hook scripts installed (~/.config/vibe/hooks/scripts/)\n');
|
|
88
82
|
}
|
|
89
83
|
}
|
|
90
84
|
catch (e) {
|
|
91
85
|
const message = e instanceof Error ? e.message : String(e);
|
|
92
|
-
log(' ⚠️
|
|
93
|
-
log(' ℹ️ Manual install: cd ~/.config/vibe && npm install @su-record/vibe\n');
|
|
86
|
+
log(' ⚠️ Package install failed: ' + message + '\n');
|
|
94
87
|
}
|
|
95
88
|
}
|
|
96
89
|
// ============================================================================
|
|
@@ -110,18 +103,8 @@ export function registerMcpServers(isUpdate = false) {
|
|
|
110
103
|
// context7 MCP만 등록 (라이브러리 문서 검색용)
|
|
111
104
|
try {
|
|
112
105
|
registerMcp('context7', { command: 'npx', args: ['-y', '@upstash/context7-mcp@latest'] });
|
|
113
|
-
log(isUpdate ? ' ✅ context7 MCP registered globally\n' : ' ✅ Context7 MCP registered (library docs search)\n');
|
|
114
106
|
}
|
|
115
|
-
catch
|
|
116
|
-
const message = e instanceof Error ? e.message : String(e);
|
|
117
|
-
if (message.includes('already exists')) {
|
|
118
|
-
log(' ℹ️ Context7 MCP already registered\n');
|
|
119
|
-
}
|
|
120
|
-
else {
|
|
121
|
-
log(' ⚠️ Context7 MCP manual registration required\n');
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
log(' ℹ️ GPT/Gemini called via Hooks (no MCP needed)\n');
|
|
107
|
+
catch { /* ignore: optional */ }
|
|
125
108
|
}
|
|
126
109
|
// ============================================================================
|
|
127
110
|
// constitution.md 생성/업데이트
|
|
@@ -188,15 +171,10 @@ export function updateClaudeMd(projectRoot, detectedStacks, isUpdate = false) {
|
|
|
188
171
|
}
|
|
189
172
|
const newContent = beforeVibe + (beforeVibe ? '\n\n---\n\n' : '') + vibeContent + afterVibe;
|
|
190
173
|
fs.writeFileSync(projectClaudeMd, newContent);
|
|
191
|
-
log(' ✅ CLAUDE.md vibe section updated\n');
|
|
192
174
|
}
|
|
193
175
|
else if (!existingContent.includes('/vibe.spec')) {
|
|
194
176
|
const mergedContent = existingContent.trim() + '\n\n---\n\n' + vibeContent;
|
|
195
177
|
fs.writeFileSync(projectClaudeMd, mergedContent);
|
|
196
|
-
log(' ✅ CLAUDE.md vibe section added\n');
|
|
197
|
-
}
|
|
198
|
-
else {
|
|
199
|
-
log(' ℹ️ CLAUDE.md vibe section kept\n');
|
|
200
178
|
}
|
|
201
179
|
}
|
|
202
180
|
else {
|
|
@@ -204,16 +182,11 @@ export function updateClaudeMd(projectRoot, detectedStacks, isUpdate = false) {
|
|
|
204
182
|
if (!existingContent.includes('/vibe.spec')) {
|
|
205
183
|
const mergedContent = existingContent.trim() + '\n\n---\n\n' + vibeContent;
|
|
206
184
|
fs.writeFileSync(projectClaudeMd, mergedContent);
|
|
207
|
-
log(' ✅ CLAUDE.md vibe section added\n');
|
|
208
|
-
}
|
|
209
|
-
else {
|
|
210
|
-
log(' ℹ️ CLAUDE.md vibe section already exists\n');
|
|
211
185
|
}
|
|
212
186
|
}
|
|
213
187
|
}
|
|
214
188
|
else {
|
|
215
189
|
fs.writeFileSync(projectClaudeMd, vibeContent);
|
|
216
|
-
log(' ✅ CLAUDE.md created\n');
|
|
217
190
|
}
|
|
218
191
|
}
|
|
219
192
|
// ============================================================================
|
|
@@ -246,7 +219,6 @@ export function updateRules(vibeDir, detectedStacks, isUpdate = false) {
|
|
|
246
219
|
}
|
|
247
220
|
});
|
|
248
221
|
}
|
|
249
|
-
log(' ✅ Coding rules ' + (isUpdate ? 'updated' : 'installed') + ' (.claude/vibe/)\n');
|
|
250
222
|
}
|
|
251
223
|
// ============================================================================
|
|
252
224
|
// 전역 assets 설치/업데이트
|
|
@@ -262,20 +234,17 @@ export function installGlobalAssets(isUpdate = false) {
|
|
|
262
234
|
ensureDir(globalCommandsDir);
|
|
263
235
|
const commandsSource = path.join(__dirname, '../../commands');
|
|
264
236
|
copyDirRecursive(commandsSource, globalCommandsDir);
|
|
265
|
-
log(' ✅ Slash commands ' + (isUpdate ? 'updated' : 'installed') + ' (~/.claude/commands/)\n');
|
|
266
237
|
// agents
|
|
267
238
|
const globalAgentsDir = path.join(globalClaudeDir, 'agents');
|
|
268
239
|
ensureDir(globalAgentsDir);
|
|
269
240
|
const agentsSource = path.join(__dirname, '../../agents');
|
|
270
241
|
copyDirRecursive(agentsSource, globalAgentsDir);
|
|
271
|
-
log(' ✅ Subagents ' + (isUpdate ? 'updated' : 'installed') + ' (~/.claude/agents/)\n');
|
|
272
242
|
// skills
|
|
273
243
|
const globalSkillsDir = path.join(globalClaudeDir, 'skills');
|
|
274
244
|
ensureDir(globalSkillsDir);
|
|
275
245
|
const skillsSource = path.join(__dirname, '../../skills');
|
|
276
246
|
if (fs.existsSync(skillsSource)) {
|
|
277
247
|
copyDirRecursive(skillsSource, globalSkillsDir);
|
|
278
|
-
log(' ✅ Skills ' + (isUpdate ? 'updated' : 'installed') + ' (~/.claude/skills/)\n');
|
|
279
248
|
}
|
|
280
249
|
// hooks - 템플릿에서 {{VIBE_PATH}}를 실제 경로로 치환
|
|
281
250
|
const globalSettingsPath = path.join(globalClaudeDir, 'settings.json');
|
|
@@ -296,8 +265,6 @@ export function installGlobalAssets(isUpdate = false) {
|
|
|
296
265
|
else {
|
|
297
266
|
fs.writeFileSync(globalSettingsPath, hooksContent);
|
|
298
267
|
}
|
|
299
|
-
log(' ✅ Hooks ' + (isUpdate ? 'updated' : 'installed') + ' (~/.claude/settings.json)\n');
|
|
300
|
-
log(' ℹ️ VIBE_PATH: ' + vibeConfigPath + '\n');
|
|
301
268
|
}
|
|
302
269
|
}
|
|
303
270
|
// ============================================================================
|
|
@@ -310,7 +277,6 @@ export function migrateLegacyVibe(projectRoot, vibeDir) {
|
|
|
310
277
|
const legacyVibeDir = path.join(projectRoot, '.vibe');
|
|
311
278
|
if (!fs.existsSync(legacyVibeDir))
|
|
312
279
|
return false;
|
|
313
|
-
log(' 🔄 Migrating legacy .vibe/ folder...\n');
|
|
314
280
|
ensureDir(vibeDir);
|
|
315
281
|
try {
|
|
316
282
|
const itemsToMigrate = ['specs', 'features', 'solutions', 'todos', 'memory', 'rules', 'config.json', 'constitution.md'];
|
|
@@ -327,11 +293,9 @@ export function migrateLegacyVibe(projectRoot, vibeDir) {
|
|
|
327
293
|
}
|
|
328
294
|
});
|
|
329
295
|
removeDirRecursive(legacyVibeDir);
|
|
330
|
-
log(' ✅ .vibe/ → .claude/vibe/ migration complete\n');
|
|
331
296
|
return true;
|
|
332
297
|
}
|
|
333
298
|
catch { /* ignore: optional operation */
|
|
334
|
-
log(' ⚠️ Migration failed - manual deletion of .vibe/ required\n');
|
|
335
299
|
return false;
|
|
336
300
|
}
|
|
337
301
|
}
|
|
@@ -364,7 +328,6 @@ export function updateGitignore(projectRoot) {
|
|
|
364
328
|
gitignore = gitignore.replace(/\.claude\/settings\.local\.json\n?/g, '');
|
|
365
329
|
gitignore = gitignore.replace(/settings\.local\.json\n?/g, '');
|
|
366
330
|
modified = true;
|
|
367
|
-
log(' ✅ Removed settings.local.json from .gitignore\n');
|
|
368
331
|
}
|
|
369
332
|
if (modified) {
|
|
370
333
|
fs.writeFileSync(gitignorePath, gitignore);
|
|
@@ -408,12 +371,10 @@ export function cleanupLegacy(projectRoot, claudeDir) {
|
|
|
408
371
|
const oldRulesDir = path.join(projectRoot, '.agent/rules');
|
|
409
372
|
const oldAgentDir = path.join(projectRoot, '.agent');
|
|
410
373
|
if (fs.existsSync(oldRulesDir)) {
|
|
411
|
-
log(' 🔄 Migration: .agent/rules/ → .claude/vibe/rules/\n');
|
|
412
374
|
removeDirRecursive(oldRulesDir);
|
|
413
375
|
if (fs.existsSync(oldAgentDir) && fs.readdirSync(oldAgentDir).length === 0) {
|
|
414
376
|
fs.rmdirSync(oldAgentDir);
|
|
415
377
|
}
|
|
416
|
-
log(' ✅ Legacy .agent/rules/ folder cleaned up\n');
|
|
417
378
|
}
|
|
418
379
|
// 레거시 커맨드 파일 정리
|
|
419
380
|
const commandsDir = path.join(claudeDir, 'commands');
|
|
@@ -444,14 +405,10 @@ export function cleanupLegacy(projectRoot, claudeDir) {
|
|
|
444
405
|
// 프로젝트 로컬 settings.json 제거 (전역으로 이동됨)
|
|
445
406
|
const localSettingsPath = path.join(claudeDir, 'settings.json');
|
|
446
407
|
if (fs.existsSync(localSettingsPath)) {
|
|
447
|
-
log(' 🧹 Removing local settings.json (moved to global)...\n');
|
|
448
408
|
try {
|
|
449
409
|
fs.unlinkSync(localSettingsPath);
|
|
450
|
-
log(' ✅ .claude/settings.json deleted\n');
|
|
451
|
-
}
|
|
452
|
-
catch { /* ignore: optional operation */
|
|
453
|
-
log(' ⚠️ .claude/settings.json manual deletion required\n');
|
|
454
410
|
}
|
|
411
|
+
catch { /* ignore: optional operation */ }
|
|
455
412
|
}
|
|
456
413
|
}
|
|
457
414
|
/**
|
|
@@ -473,8 +430,6 @@ export function removeLocalAssets(claudeDir) {
|
|
|
473
430
|
else {
|
|
474
431
|
fs.unlinkSync(asset.path);
|
|
475
432
|
}
|
|
476
|
-
const name = path.basename(asset.path);
|
|
477
|
-
log(` 🧹 Removed local ${name}${asset.isDir ? '/' : ''} (moved to global)\n`);
|
|
478
433
|
}
|
|
479
434
|
});
|
|
480
435
|
}
|
|
@@ -517,13 +472,9 @@ export function cleanupClaudeConfig() {
|
|
|
517
472
|
}
|
|
518
473
|
if (configModified) {
|
|
519
474
|
fs.writeFileSync(claudeConfigPath, JSON.stringify(claudeConfig, null, 2));
|
|
520
|
-
log(' ✅ ~/.claude.json local MCP settings cleaned up\n');
|
|
521
475
|
}
|
|
522
476
|
}
|
|
523
|
-
catch
|
|
524
|
-
const message = e instanceof Error ? e.message : String(e);
|
|
525
|
-
log(' ⚠️ ~/.claude.json cleanup failed: ' + message + '\n');
|
|
526
|
-
}
|
|
477
|
+
catch { /* ignore: optional operation */ }
|
|
527
478
|
}
|
|
528
479
|
/**
|
|
529
480
|
* 레거시 mcp/ 폴더 정리
|
|
@@ -531,14 +482,10 @@ export function cleanupClaudeConfig() {
|
|
|
531
482
|
export function cleanupLegacyMcp(vibeDir) {
|
|
532
483
|
const oldMcpDir = path.join(vibeDir, 'mcp');
|
|
533
484
|
if (fs.existsSync(oldMcpDir)) {
|
|
534
|
-
log(' 🧹 Cleaning up legacy mcp/ folder...\n');
|
|
535
485
|
try {
|
|
536
486
|
removeDirRecursive(oldMcpDir);
|
|
537
|
-
log(' ✅ mcp/ folder deleted\n');
|
|
538
|
-
}
|
|
539
|
-
catch { /* ignore: optional operation */
|
|
540
|
-
log(' ⚠️ mcp/ folder manual deletion required\n');
|
|
541
487
|
}
|
|
488
|
+
catch { /* ignore: optional operation */ }
|
|
542
489
|
}
|
|
543
490
|
}
|
|
544
491
|
//# sourceMappingURL=setup.js.map
|