@verboo/code 0.7.18 → 0.7.20
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/dist/cli.mjs +395 -270
- package/package.json +5 -1
package/dist/cli.mjs
CHANGED
|
@@ -31540,7 +31540,7 @@ function buildFullPath(baseURL, requestedURL, allowAbsoluteUrls) {
|
|
|
31540
31540
|
}
|
|
31541
31541
|
var init_buildFullPath = () => {};
|
|
31542
31542
|
|
|
31543
|
-
// node_modules/proxy-from-env/index.js
|
|
31543
|
+
// node_modules/axios/node_modules/proxy-from-env/index.js
|
|
31544
31544
|
function parseUrl(urlString) {
|
|
31545
31545
|
try {
|
|
31546
31546
|
return new URL(urlString);
|
|
@@ -36291,158 +36291,6 @@ var init_providerProfile = __esm(() => {
|
|
|
36291
36291
|
];
|
|
36292
36292
|
});
|
|
36293
36293
|
|
|
36294
|
-
// src/utils/providerFlag.ts
|
|
36295
|
-
var exports_providerFlag = {};
|
|
36296
|
-
__export(exports_providerFlag, {
|
|
36297
|
-
parseProviderFlag: () => parseProviderFlag,
|
|
36298
|
-
applyProviderFlagFromArgs: () => applyProviderFlagFromArgs,
|
|
36299
|
-
applyProviderFlag: () => applyProviderFlag,
|
|
36300
|
-
VALID_PROVIDERS: () => VALID_PROVIDERS
|
|
36301
|
-
});
|
|
36302
|
-
function parseProviderFlag(args) {
|
|
36303
|
-
const idx = args.indexOf("--provider");
|
|
36304
|
-
if (idx === -1)
|
|
36305
|
-
return null;
|
|
36306
|
-
const value = args[idx + 1];
|
|
36307
|
-
if (!value || value.startsWith("--"))
|
|
36308
|
-
return null;
|
|
36309
|
-
return value;
|
|
36310
|
-
}
|
|
36311
|
-
function applyProviderFlagFromArgs(args) {
|
|
36312
|
-
const provider = parseProviderFlag(args);
|
|
36313
|
-
if (!provider)
|
|
36314
|
-
return;
|
|
36315
|
-
return applyProviderFlag(provider, args);
|
|
36316
|
-
}
|
|
36317
|
-
function parseModelFlag(args) {
|
|
36318
|
-
const idx = args.indexOf("--model");
|
|
36319
|
-
if (idx === -1)
|
|
36320
|
-
return null;
|
|
36321
|
-
const value = args[idx + 1];
|
|
36322
|
-
if (!value || value.startsWith("--"))
|
|
36323
|
-
return null;
|
|
36324
|
-
return value;
|
|
36325
|
-
}
|
|
36326
|
-
function applyProviderFlag(provider, args) {
|
|
36327
|
-
return {
|
|
36328
|
-
error: "Verboo Code usa apenas o provider nativo Verboo."
|
|
36329
|
-
};
|
|
36330
|
-
if (!VALID_PROVIDERS.includes(provider)) {
|
|
36331
|
-
return {
|
|
36332
|
-
error: `Unknown provider "${provider}". Valid providers: ${VALID_PROVIDERS.join(", ")}`
|
|
36333
|
-
};
|
|
36334
|
-
}
|
|
36335
|
-
delete process.env.CLAUDE_CODE_USE_OPENAI;
|
|
36336
|
-
delete process.env.CLAUDE_CODE_USE_GEMINI;
|
|
36337
|
-
delete process.env.CLAUDE_CODE_USE_MISTRAL;
|
|
36338
|
-
delete process.env.CLAUDE_CODE_USE_GITHUB;
|
|
36339
|
-
delete process.env.CLAUDE_CODE_USE_BEDROCK;
|
|
36340
|
-
delete process.env.CLAUDE_CODE_USE_VERTEX;
|
|
36341
|
-
const model = parseModelFlag(args);
|
|
36342
|
-
switch (provider) {
|
|
36343
|
-
case "anthropic":
|
|
36344
|
-
break;
|
|
36345
|
-
case "openai":
|
|
36346
|
-
process.env.CLAUDE_CODE_USE_OPENAI = "1";
|
|
36347
|
-
if (model)
|
|
36348
|
-
process.env.OPENAI_MODEL = model;
|
|
36349
|
-
break;
|
|
36350
|
-
case "gemini":
|
|
36351
|
-
process.env.CLAUDE_CODE_USE_GEMINI = "1";
|
|
36352
|
-
if (model)
|
|
36353
|
-
process.env.GEMINI_MODEL = model;
|
|
36354
|
-
break;
|
|
36355
|
-
case "mistral":
|
|
36356
|
-
process.env.CLAUDE_CODE_USE_MISTRAL = "1";
|
|
36357
|
-
if (model)
|
|
36358
|
-
process.env.MISTRAL_MODEL = model;
|
|
36359
|
-
break;
|
|
36360
|
-
case "github":
|
|
36361
|
-
process.env.CLAUDE_CODE_USE_GITHUB = "1";
|
|
36362
|
-
if (model)
|
|
36363
|
-
process.env.OPENAI_MODEL = model;
|
|
36364
|
-
break;
|
|
36365
|
-
case "bedrock":
|
|
36366
|
-
process.env.CLAUDE_CODE_USE_BEDROCK = "1";
|
|
36367
|
-
break;
|
|
36368
|
-
case "vertex":
|
|
36369
|
-
process.env.CLAUDE_CODE_USE_VERTEX = "1";
|
|
36370
|
-
break;
|
|
36371
|
-
case "ollama":
|
|
36372
|
-
process.env.CLAUDE_CODE_USE_OPENAI = "1";
|
|
36373
|
-
if (!process.env.OPENAI_BASE_URL) {
|
|
36374
|
-
process.env.OPENAI_BASE_URL = "http://localhost:11434/v1";
|
|
36375
|
-
}
|
|
36376
|
-
if (!process.env.OPENAI_API_KEY) {
|
|
36377
|
-
process.env.OPENAI_API_KEY = "ollama";
|
|
36378
|
-
}
|
|
36379
|
-
if (model)
|
|
36380
|
-
process.env.OPENAI_MODEL = model;
|
|
36381
|
-
break;
|
|
36382
|
-
case "nvidia-nim":
|
|
36383
|
-
process.env.CLAUDE_CODE_USE_OPENAI = "1";
|
|
36384
|
-
process.env.OPENAI_BASE_URL ??= "https://integrate.api.nvidia.com/v1";
|
|
36385
|
-
process.env.NVIDIA_NIM = "1";
|
|
36386
|
-
process.env.OPENAI_MODEL ??= "nvidia/llama-3.1-nemotron-70b-instruct";
|
|
36387
|
-
if (model)
|
|
36388
|
-
process.env.OPENAI_MODEL = model;
|
|
36389
|
-
break;
|
|
36390
|
-
case "minimax":
|
|
36391
|
-
process.env.CLAUDE_CODE_USE_OPENAI = "1";
|
|
36392
|
-
process.env.OPENAI_BASE_URL ??= "https://api.minimax.io/v1";
|
|
36393
|
-
process.env.OPENAI_MODEL ??= "MiniMax-M2.5";
|
|
36394
|
-
if (model)
|
|
36395
|
-
process.env.OPENAI_MODEL = model;
|
|
36396
|
-
break;
|
|
36397
|
-
case "bankr":
|
|
36398
|
-
process.env.CLAUDE_CODE_USE_OPENAI = "1";
|
|
36399
|
-
process.env.OPENAI_BASE_URL ??= "https://llm.bankr.bot/v1";
|
|
36400
|
-
process.env.OPENAI_MODEL ??= "claude-opus-4.6";
|
|
36401
|
-
if (model)
|
|
36402
|
-
process.env.OPENAI_MODEL = model;
|
|
36403
|
-
if (process.env.BNKR_API_KEY && !process.env.OPENAI_API_KEY) {
|
|
36404
|
-
process.env.OPENAI_API_KEY = process.env.BNKR_API_KEY;
|
|
36405
|
-
}
|
|
36406
|
-
break;
|
|
36407
|
-
case "zai":
|
|
36408
|
-
process.env.CLAUDE_CODE_USE_OPENAI = "1";
|
|
36409
|
-
process.env.OPENAI_BASE_URL ??= "https://api.z.ai/api/coding/paas/v4";
|
|
36410
|
-
process.env.OPENAI_MODEL ??= "GLM-5.1";
|
|
36411
|
-
if (model)
|
|
36412
|
-
process.env.OPENAI_MODEL = model;
|
|
36413
|
-
break;
|
|
36414
|
-
case "xai":
|
|
36415
|
-
process.env.CLAUDE_CODE_USE_OPENAI = "1";
|
|
36416
|
-
process.env.OPENAI_BASE_URL ??= "https://api.x.ai/v1";
|
|
36417
|
-
process.env.OPENAI_MODEL ??= "grok-4";
|
|
36418
|
-
if (model)
|
|
36419
|
-
process.env.OPENAI_MODEL = model;
|
|
36420
|
-
if (process.env.XAI_API_KEY && !process.env.OPENAI_API_KEY) {
|
|
36421
|
-
process.env.OPENAI_API_KEY = process.env.XAI_API_KEY;
|
|
36422
|
-
}
|
|
36423
|
-
break;
|
|
36424
|
-
}
|
|
36425
|
-
return {};
|
|
36426
|
-
}
|
|
36427
|
-
var VALID_PROVIDERS;
|
|
36428
|
-
var init_providerFlag = __esm(() => {
|
|
36429
|
-
VALID_PROVIDERS = [
|
|
36430
|
-
"anthropic",
|
|
36431
|
-
"bankr",
|
|
36432
|
-
"zai",
|
|
36433
|
-
"xai",
|
|
36434
|
-
"openai",
|
|
36435
|
-
"gemini",
|
|
36436
|
-
"mistral",
|
|
36437
|
-
"github",
|
|
36438
|
-
"bedrock",
|
|
36439
|
-
"vertex",
|
|
36440
|
-
"ollama",
|
|
36441
|
-
"nvidia-nim",
|
|
36442
|
-
"minimax"
|
|
36443
|
-
];
|
|
36444
|
-
});
|
|
36445
|
-
|
|
36446
36294
|
// node_modules/lodash-es/_baseSet.js
|
|
36447
36295
|
function baseSet(object, path9, value, customizer) {
|
|
36448
36296
|
if (!isObject_default(object)) {
|
|
@@ -58628,6 +58476,239 @@ var init_config = __esm(() => {
|
|
|
58628
58476
|
_wouldLoseAuthStateForTesting = wouldLoseAuthState;
|
|
58629
58477
|
});
|
|
58630
58478
|
|
|
58479
|
+
// src/utils/providerStartupOverrides.ts
|
|
58480
|
+
function clearStartupProviderOverrides(options) {
|
|
58481
|
+
const updateUserSettings = options?.updateUserSettings ?? updateSettingsForSource;
|
|
58482
|
+
const saveConfig2 = options?.saveConfig ?? saveGlobalConfig;
|
|
58483
|
+
const envPatch = Object.fromEntries(STARTUP_PROVIDER_OVERRIDE_ENV_KEYS.map((key) => [
|
|
58484
|
+
key,
|
|
58485
|
+
DELETE_SETTINGS_ENV_VALUE
|
|
58486
|
+
]));
|
|
58487
|
+
const { error: error41 } = updateUserSettings("userSettings", { env: envPatch });
|
|
58488
|
+
let globalConfigError = null;
|
|
58489
|
+
try {
|
|
58490
|
+
saveConfig2((current) => {
|
|
58491
|
+
const currentEnv = current.env ?? {};
|
|
58492
|
+
let changed = false;
|
|
58493
|
+
const nextEnv = { ...currentEnv };
|
|
58494
|
+
for (const key of STARTUP_PROVIDER_OVERRIDE_ENV_KEYS) {
|
|
58495
|
+
if (key in nextEnv) {
|
|
58496
|
+
delete nextEnv[key];
|
|
58497
|
+
changed = true;
|
|
58498
|
+
}
|
|
58499
|
+
}
|
|
58500
|
+
return changed ? { ...current, env: nextEnv } : current;
|
|
58501
|
+
});
|
|
58502
|
+
} catch (configError) {
|
|
58503
|
+
globalConfigError = configError instanceof Error ? configError.message : String(configError);
|
|
58504
|
+
}
|
|
58505
|
+
return error41?.message ?? globalConfigError;
|
|
58506
|
+
}
|
|
58507
|
+
function clearStartupProviderEnvFromProcessEnv(processEnv = process.env) {
|
|
58508
|
+
for (const key of STARTUP_PROVIDER_OVERRIDE_ENV_KEYS) {
|
|
58509
|
+
delete processEnv[key];
|
|
58510
|
+
}
|
|
58511
|
+
}
|
|
58512
|
+
var STARTUP_PROVIDER_OVERRIDE_ENV_KEYS, DELETE_SETTINGS_ENV_VALUE = undefined;
|
|
58513
|
+
var init_providerStartupOverrides = __esm(() => {
|
|
58514
|
+
init_config();
|
|
58515
|
+
init_settings2();
|
|
58516
|
+
STARTUP_PROVIDER_OVERRIDE_ENV_KEYS = [
|
|
58517
|
+
"CLAUDE_CODE_USE_OPENAI",
|
|
58518
|
+
"CLAUDE_CODE_USE_GEMINI",
|
|
58519
|
+
"CLAUDE_CODE_USE_MISTRAL",
|
|
58520
|
+
"CLAUDE_CODE_USE_GITHUB",
|
|
58521
|
+
"CLAUDE_CODE_USE_BEDROCK",
|
|
58522
|
+
"CLAUDE_CODE_USE_VERTEX",
|
|
58523
|
+
"CLAUDE_CODE_USE_FOUNDRY",
|
|
58524
|
+
"OPENAI_BASE_URL",
|
|
58525
|
+
"OPENAI_API_BASE",
|
|
58526
|
+
"OPENAI_MODEL",
|
|
58527
|
+
"OPENAI_API_KEY",
|
|
58528
|
+
"OPENAI_ORG",
|
|
58529
|
+
"OPENAI_PROJECT",
|
|
58530
|
+
"OPENAI_ORGANIZATION",
|
|
58531
|
+
"ANTHROPIC_BASE_URL",
|
|
58532
|
+
"ANTHROPIC_MODEL",
|
|
58533
|
+
"ANTHROPIC_API_KEY",
|
|
58534
|
+
"CLAUDE_MODEL",
|
|
58535
|
+
"GEMINI_API_KEY",
|
|
58536
|
+
"GOOGLE_API_KEY",
|
|
58537
|
+
"GEMINI_BASE_URL",
|
|
58538
|
+
"GEMINI_MODEL",
|
|
58539
|
+
"GEMINI_ACCESS_TOKEN",
|
|
58540
|
+
"GEMINI_AUTH_MODE",
|
|
58541
|
+
"MISTRAL_BASE_URL",
|
|
58542
|
+
"MISTRAL_MODEL",
|
|
58543
|
+
"MISTRAL_API_KEY",
|
|
58544
|
+
"CODEX_API_KEY",
|
|
58545
|
+
"CODEX_CREDENTIAL_SOURCE",
|
|
58546
|
+
"CHATGPT_ACCOUNT_ID",
|
|
58547
|
+
"CODEX_ACCOUNT_ID",
|
|
58548
|
+
"MINIMAX_API_KEY",
|
|
58549
|
+
"MINIMAX_BASE_URL",
|
|
58550
|
+
"MINIMAX_MODEL",
|
|
58551
|
+
"NVIDIA_API_KEY",
|
|
58552
|
+
"NVIDIA_NIM",
|
|
58553
|
+
"BANKR_BASE_URL",
|
|
58554
|
+
"BANKR_MODEL",
|
|
58555
|
+
"BNKR_API_KEY",
|
|
58556
|
+
"XAI_API_KEY"
|
|
58557
|
+
];
|
|
58558
|
+
});
|
|
58559
|
+
|
|
58560
|
+
// src/utils/providerFlag.ts
|
|
58561
|
+
var exports_providerFlag = {};
|
|
58562
|
+
__export(exports_providerFlag, {
|
|
58563
|
+
parseProviderFlag: () => parseProviderFlag,
|
|
58564
|
+
applyProviderFlagFromArgs: () => applyProviderFlagFromArgs,
|
|
58565
|
+
applyProviderFlag: () => applyProviderFlag,
|
|
58566
|
+
VALID_PROVIDERS: () => VALID_PROVIDERS
|
|
58567
|
+
});
|
|
58568
|
+
function parseProviderFlag(args) {
|
|
58569
|
+
const idx = args.indexOf("--provider");
|
|
58570
|
+
if (idx === -1)
|
|
58571
|
+
return null;
|
|
58572
|
+
const value = args[idx + 1];
|
|
58573
|
+
if (!value || value.startsWith("--"))
|
|
58574
|
+
return null;
|
|
58575
|
+
return value;
|
|
58576
|
+
}
|
|
58577
|
+
function applyProviderFlagFromArgs(args) {
|
|
58578
|
+
const provider = parseProviderFlag(args);
|
|
58579
|
+
if (!provider)
|
|
58580
|
+
return;
|
|
58581
|
+
return applyProviderFlag(provider, args);
|
|
58582
|
+
}
|
|
58583
|
+
function parseModelFlag(args) {
|
|
58584
|
+
const idx = args.indexOf("--model");
|
|
58585
|
+
if (idx === -1)
|
|
58586
|
+
return null;
|
|
58587
|
+
const value = args[idx + 1];
|
|
58588
|
+
if (!value || value.startsWith("--"))
|
|
58589
|
+
return null;
|
|
58590
|
+
return value;
|
|
58591
|
+
}
|
|
58592
|
+
function applyProviderFlag(provider, args) {
|
|
58593
|
+
return {
|
|
58594
|
+
error: "Verboo Code usa apenas o provider nativo Verboo."
|
|
58595
|
+
};
|
|
58596
|
+
if (!VALID_PROVIDERS.includes(provider)) {
|
|
58597
|
+
return {
|
|
58598
|
+
error: `Unknown provider "${provider}". Valid providers: ${VALID_PROVIDERS.join(", ")}`
|
|
58599
|
+
};
|
|
58600
|
+
}
|
|
58601
|
+
delete process.env.CLAUDE_CODE_USE_OPENAI;
|
|
58602
|
+
delete process.env.CLAUDE_CODE_USE_GEMINI;
|
|
58603
|
+
delete process.env.CLAUDE_CODE_USE_MISTRAL;
|
|
58604
|
+
delete process.env.CLAUDE_CODE_USE_GITHUB;
|
|
58605
|
+
delete process.env.CLAUDE_CODE_USE_BEDROCK;
|
|
58606
|
+
delete process.env.CLAUDE_CODE_USE_VERTEX;
|
|
58607
|
+
const model = parseModelFlag(args);
|
|
58608
|
+
switch (provider) {
|
|
58609
|
+
case "anthropic":
|
|
58610
|
+
break;
|
|
58611
|
+
case "openai":
|
|
58612
|
+
process.env.CLAUDE_CODE_USE_OPENAI = "1";
|
|
58613
|
+
if (model)
|
|
58614
|
+
process.env.OPENAI_MODEL = model;
|
|
58615
|
+
break;
|
|
58616
|
+
case "gemini":
|
|
58617
|
+
process.env.CLAUDE_CODE_USE_GEMINI = "1";
|
|
58618
|
+
if (model)
|
|
58619
|
+
process.env.GEMINI_MODEL = model;
|
|
58620
|
+
break;
|
|
58621
|
+
case "mistral":
|
|
58622
|
+
process.env.CLAUDE_CODE_USE_MISTRAL = "1";
|
|
58623
|
+
if (model)
|
|
58624
|
+
process.env.MISTRAL_MODEL = model;
|
|
58625
|
+
break;
|
|
58626
|
+
case "github":
|
|
58627
|
+
process.env.CLAUDE_CODE_USE_GITHUB = "1";
|
|
58628
|
+
if (model)
|
|
58629
|
+
process.env.OPENAI_MODEL = model;
|
|
58630
|
+
break;
|
|
58631
|
+
case "bedrock":
|
|
58632
|
+
process.env.CLAUDE_CODE_USE_BEDROCK = "1";
|
|
58633
|
+
break;
|
|
58634
|
+
case "vertex":
|
|
58635
|
+
process.env.CLAUDE_CODE_USE_VERTEX = "1";
|
|
58636
|
+
break;
|
|
58637
|
+
case "ollama":
|
|
58638
|
+
process.env.CLAUDE_CODE_USE_OPENAI = "1";
|
|
58639
|
+
if (!process.env.OPENAI_BASE_URL) {
|
|
58640
|
+
process.env.OPENAI_BASE_URL = "http://localhost:11434/v1";
|
|
58641
|
+
}
|
|
58642
|
+
if (!process.env.OPENAI_API_KEY) {
|
|
58643
|
+
process.env.OPENAI_API_KEY = "ollama";
|
|
58644
|
+
}
|
|
58645
|
+
if (model)
|
|
58646
|
+
process.env.OPENAI_MODEL = model;
|
|
58647
|
+
break;
|
|
58648
|
+
case "nvidia-nim":
|
|
58649
|
+
process.env.CLAUDE_CODE_USE_OPENAI = "1";
|
|
58650
|
+
process.env.OPENAI_BASE_URL ??= "https://integrate.api.nvidia.com/v1";
|
|
58651
|
+
process.env.NVIDIA_NIM = "1";
|
|
58652
|
+
process.env.OPENAI_MODEL ??= "nvidia/llama-3.1-nemotron-70b-instruct";
|
|
58653
|
+
if (model)
|
|
58654
|
+
process.env.OPENAI_MODEL = model;
|
|
58655
|
+
break;
|
|
58656
|
+
case "minimax":
|
|
58657
|
+
process.env.CLAUDE_CODE_USE_OPENAI = "1";
|
|
58658
|
+
process.env.OPENAI_BASE_URL ??= "https://api.minimax.io/v1";
|
|
58659
|
+
process.env.OPENAI_MODEL ??= "MiniMax-M2.5";
|
|
58660
|
+
if (model)
|
|
58661
|
+
process.env.OPENAI_MODEL = model;
|
|
58662
|
+
break;
|
|
58663
|
+
case "bankr":
|
|
58664
|
+
process.env.CLAUDE_CODE_USE_OPENAI = "1";
|
|
58665
|
+
process.env.OPENAI_BASE_URL ??= "https://llm.bankr.bot/v1";
|
|
58666
|
+
process.env.OPENAI_MODEL ??= "claude-opus-4.6";
|
|
58667
|
+
if (model)
|
|
58668
|
+
process.env.OPENAI_MODEL = model;
|
|
58669
|
+
if (process.env.BNKR_API_KEY && !process.env.OPENAI_API_KEY) {
|
|
58670
|
+
process.env.OPENAI_API_KEY = process.env.BNKR_API_KEY;
|
|
58671
|
+
}
|
|
58672
|
+
break;
|
|
58673
|
+
case "zai":
|
|
58674
|
+
process.env.CLAUDE_CODE_USE_OPENAI = "1";
|
|
58675
|
+
process.env.OPENAI_BASE_URL ??= "https://api.z.ai/api/coding/paas/v4";
|
|
58676
|
+
process.env.OPENAI_MODEL ??= "GLM-5.1";
|
|
58677
|
+
if (model)
|
|
58678
|
+
process.env.OPENAI_MODEL = model;
|
|
58679
|
+
break;
|
|
58680
|
+
case "xai":
|
|
58681
|
+
process.env.CLAUDE_CODE_USE_OPENAI = "1";
|
|
58682
|
+
process.env.OPENAI_BASE_URL ??= "https://api.x.ai/v1";
|
|
58683
|
+
process.env.OPENAI_MODEL ??= "grok-4";
|
|
58684
|
+
if (model)
|
|
58685
|
+
process.env.OPENAI_MODEL = model;
|
|
58686
|
+
if (process.env.XAI_API_KEY && !process.env.OPENAI_API_KEY) {
|
|
58687
|
+
process.env.OPENAI_API_KEY = process.env.XAI_API_KEY;
|
|
58688
|
+
}
|
|
58689
|
+
break;
|
|
58690
|
+
}
|
|
58691
|
+
return {};
|
|
58692
|
+
}
|
|
58693
|
+
var VALID_PROVIDERS;
|
|
58694
|
+
var init_providerFlag = __esm(() => {
|
|
58695
|
+
VALID_PROVIDERS = [
|
|
58696
|
+
"anthropic",
|
|
58697
|
+
"bankr",
|
|
58698
|
+
"zai",
|
|
58699
|
+
"xai",
|
|
58700
|
+
"openai",
|
|
58701
|
+
"gemini",
|
|
58702
|
+
"mistral",
|
|
58703
|
+
"github",
|
|
58704
|
+
"bedrock",
|
|
58705
|
+
"vertex",
|
|
58706
|
+
"ollama",
|
|
58707
|
+
"nvidia-nim",
|
|
58708
|
+
"minimax"
|
|
58709
|
+
];
|
|
58710
|
+
});
|
|
58711
|
+
|
|
58631
58712
|
// node_modules/chalk/source/vendor/ansi-styles/index.js
|
|
58632
58713
|
function assembleStyles() {
|
|
58633
58714
|
const codes = new Map;
|
|
@@ -115467,6 +115548,13 @@ __export(exports_StartupScreen, {
|
|
|
115467
115548
|
detectProvider: () => detectProvider
|
|
115468
115549
|
});
|
|
115469
115550
|
function detectProvider(modelOverride) {
|
|
115551
|
+
if (isVerbooMode()) {
|
|
115552
|
+
const safeOverride = modelOverride && !isClaudeModelLike(modelOverride) ? modelOverride : getDefaultVerbooModel();
|
|
115553
|
+
const resolvedModel2 = parseUserSpecifiedModel(safeOverride);
|
|
115554
|
+
const baseUrl2 = VERBOO_ROUTER_URL;
|
|
115555
|
+
const isLocal2 = isLocalProviderUrl(baseUrl2);
|
|
115556
|
+
return { name: "Verboo", model: resolvedModel2, baseUrl: baseUrl2, isLocal: isLocal2 };
|
|
115557
|
+
}
|
|
115470
115558
|
const useGemini = process.env.CLAUDE_CODE_USE_GEMINI === "1" || process.env.CLAUDE_CODE_USE_GEMINI === "true";
|
|
115471
115559
|
const useGithub = process.env.CLAUDE_CODE_USE_GITHUB === "1" || process.env.CLAUDE_CODE_USE_GITHUB === "true";
|
|
115472
115560
|
const useOpenAI = process.env.CLAUDE_CODE_USE_OPENAI === "1" || process.env.CLAUDE_CODE_USE_OPENAI === "true";
|
|
@@ -115555,8 +115643,7 @@ function detectProvider(modelOverride) {
|
|
|
115555
115643
|
}
|
|
115556
115644
|
return { name, model: displayModel, baseUrl: baseUrl2, isLocal: isLocal2 };
|
|
115557
115645
|
}
|
|
115558
|
-
const
|
|
115559
|
-
const modelSetting = modelOverride || settings.model || process.env.ANTHROPIC_MODEL || process.env.CLAUDE_MODEL || "claude-sonnet-4-6";
|
|
115646
|
+
const modelSetting = modelOverride || getDefaultVerbooModel();
|
|
115560
115647
|
const resolvedModel = parseUserSpecifiedModel(modelSetting);
|
|
115561
115648
|
const baseUrl = VERBOO_ROUTER_URL;
|
|
115562
115649
|
const isLocal = isLocalProviderUrl(baseUrl);
|
|
@@ -115570,7 +115657,7 @@ function printStartupScreen(modelOverride) {
|
|
|
115570
115657
|
const home = process.env.HOME || process.env.USERPROFILE || "";
|
|
115571
115658
|
const cwd2 = process.cwd();
|
|
115572
115659
|
const displayCwd = home && cwd2.startsWith(home) ? `~${cwd2.slice(home.length)}` : cwd2;
|
|
115573
|
-
const version2 = "0.7.
|
|
115660
|
+
const version2 = "0.7.20";
|
|
115574
115661
|
const bold2 = `${ESC}1m`;
|
|
115575
115662
|
const PURPLE = rgb(...ACCENT);
|
|
115576
115663
|
const SOFT = rgb(...CREAM);
|
|
@@ -115596,7 +115683,6 @@ var init_StartupScreen = __esm(() => {
|
|
|
115596
115683
|
init_oauth();
|
|
115597
115684
|
init_providerConfig();
|
|
115598
115685
|
init_providerDiscovery();
|
|
115599
|
-
init_settings2();
|
|
115600
115686
|
init_model();
|
|
115601
115687
|
init_zaiProvider();
|
|
115602
115688
|
RESET = `${ESC}0m`;
|
|
@@ -178299,6 +178385,8 @@ function resolveRipgrepConfig({
|
|
|
178299
178385
|
bundledMode,
|
|
178300
178386
|
builtinCommand,
|
|
178301
178387
|
builtinExists,
|
|
178388
|
+
npmCommand,
|
|
178389
|
+
npmExists = false,
|
|
178302
178390
|
systemExecutablePath,
|
|
178303
178391
|
processExecPath = process.execPath
|
|
178304
178392
|
}) {
|
|
@@ -178316,10 +178404,13 @@ function resolveRipgrepConfig({
|
|
|
178316
178404
|
if (builtinExists) {
|
|
178317
178405
|
return { mode: "builtin", command: builtinCommand, args: [] };
|
|
178318
178406
|
}
|
|
178407
|
+
if (npmExists && npmCommand) {
|
|
178408
|
+
return { mode: "builtin", command: npmCommand, args: [] };
|
|
178409
|
+
}
|
|
178319
178410
|
if (systemExecutablePath !== "rg") {
|
|
178320
178411
|
return { mode: "system", command: "rg", args: [] };
|
|
178321
178412
|
}
|
|
178322
|
-
return { mode: "
|
|
178413
|
+
return { mode: "system", command: "rg", args: [] };
|
|
178323
178414
|
}
|
|
178324
178415
|
function ripgrepCommand() {
|
|
178325
178416
|
const config2 = getRipgrepConfig();
|
|
@@ -178623,12 +178714,16 @@ var init_ripgrep = __esm(() => {
|
|
|
178623
178714
|
const rgRoot = path10.resolve(__dirname2, "vendor", "ripgrep");
|
|
178624
178715
|
const builtinCommand = process.platform === "win32" ? path10.resolve(rgRoot, `${process.arch}-win32`, "rg.exe") : path10.resolve(rgRoot, `${process.arch}-${process.platform}`, "rg");
|
|
178625
178716
|
const builtinExists = existsSync6(builtinCommand);
|
|
178717
|
+
const npmCommand = process.platform === "win32" ? path10.resolve(__dirname2, "..", "node_modules", "@vscode", "ripgrep", "bin", "rg.exe") : path10.resolve(__dirname2, "..", "node_modules", "@vscode", "ripgrep", "bin", "rg");
|
|
178718
|
+
const npmExists = existsSync6(npmCommand);
|
|
178626
178719
|
const { cmd: systemExecutablePath } = findExecutable("rg", []);
|
|
178627
178720
|
return resolveRipgrepConfig({
|
|
178628
178721
|
userWantsSystemRipgrep,
|
|
178629
178722
|
bundledMode,
|
|
178630
178723
|
builtinCommand,
|
|
178631
178724
|
builtinExists,
|
|
178725
|
+
npmCommand,
|
|
178726
|
+
npmExists,
|
|
178632
178727
|
systemExecutablePath
|
|
178633
178728
|
});
|
|
178634
178729
|
});
|
|
@@ -273078,77 +273173,6 @@ var init_notifier = __esm(() => {
|
|
|
273078
273173
|
init_log3();
|
|
273079
273174
|
});
|
|
273080
273175
|
|
|
273081
|
-
// src/utils/providerStartupOverrides.ts
|
|
273082
|
-
function clearStartupProviderOverrides(options2) {
|
|
273083
|
-
const updateUserSettings = options2?.updateUserSettings ?? updateSettingsForSource;
|
|
273084
|
-
const saveConfig2 = options2?.saveConfig ?? saveGlobalConfig;
|
|
273085
|
-
const envPatch = Object.fromEntries(STARTUP_PROVIDER_OVERRIDE_ENV_KEYS.map((key) => [
|
|
273086
|
-
key,
|
|
273087
|
-
DELETE_SETTINGS_ENV_VALUE
|
|
273088
|
-
]));
|
|
273089
|
-
const { error: error42 } = updateUserSettings("userSettings", { env: envPatch });
|
|
273090
|
-
let globalConfigError = null;
|
|
273091
|
-
try {
|
|
273092
|
-
saveConfig2((current) => {
|
|
273093
|
-
const currentEnv = current.env ?? {};
|
|
273094
|
-
let changed = false;
|
|
273095
|
-
const nextEnv = { ...currentEnv };
|
|
273096
|
-
for (const key of STARTUP_PROVIDER_OVERRIDE_ENV_KEYS) {
|
|
273097
|
-
if (key in nextEnv) {
|
|
273098
|
-
delete nextEnv[key];
|
|
273099
|
-
changed = true;
|
|
273100
|
-
}
|
|
273101
|
-
}
|
|
273102
|
-
return changed ? { ...current, env: nextEnv } : current;
|
|
273103
|
-
});
|
|
273104
|
-
} catch (configError) {
|
|
273105
|
-
globalConfigError = configError instanceof Error ? configError.message : String(configError);
|
|
273106
|
-
}
|
|
273107
|
-
return error42?.message ?? globalConfigError;
|
|
273108
|
-
}
|
|
273109
|
-
var STARTUP_PROVIDER_OVERRIDE_ENV_KEYS, DELETE_SETTINGS_ENV_VALUE = undefined;
|
|
273110
|
-
var init_providerStartupOverrides = __esm(() => {
|
|
273111
|
-
init_config();
|
|
273112
|
-
init_settings2();
|
|
273113
|
-
STARTUP_PROVIDER_OVERRIDE_ENV_KEYS = [
|
|
273114
|
-
"CLAUDE_CODE_USE_OPENAI",
|
|
273115
|
-
"CLAUDE_CODE_USE_GEMINI",
|
|
273116
|
-
"CLAUDE_CODE_USE_MISTRAL",
|
|
273117
|
-
"CLAUDE_CODE_USE_GITHUB",
|
|
273118
|
-
"CLAUDE_CODE_USE_BEDROCK",
|
|
273119
|
-
"CLAUDE_CODE_USE_VERTEX",
|
|
273120
|
-
"CLAUDE_CODE_USE_FOUNDRY",
|
|
273121
|
-
"OPENAI_BASE_URL",
|
|
273122
|
-
"OPENAI_API_BASE",
|
|
273123
|
-
"OPENAI_MODEL",
|
|
273124
|
-
"OPENAI_API_KEY",
|
|
273125
|
-
"OPENAI_ORG",
|
|
273126
|
-
"OPENAI_PROJECT",
|
|
273127
|
-
"OPENAI_ORGANIZATION",
|
|
273128
|
-
"ANTHROPIC_BASE_URL",
|
|
273129
|
-
"ANTHROPIC_MODEL",
|
|
273130
|
-
"ANTHROPIC_API_KEY",
|
|
273131
|
-
"GEMINI_API_KEY",
|
|
273132
|
-
"GOOGLE_API_KEY",
|
|
273133
|
-
"GEMINI_BASE_URL",
|
|
273134
|
-
"GEMINI_MODEL",
|
|
273135
|
-
"GEMINI_ACCESS_TOKEN",
|
|
273136
|
-
"GEMINI_AUTH_MODE",
|
|
273137
|
-
"MISTRAL_BASE_URL",
|
|
273138
|
-
"MISTRAL_MODEL",
|
|
273139
|
-
"MISTRAL_API_KEY",
|
|
273140
|
-
"CODEX_API_KEY",
|
|
273141
|
-
"CODEX_CREDENTIAL_SOURCE",
|
|
273142
|
-
"CHATGPT_ACCOUNT_ID",
|
|
273143
|
-
"CODEX_ACCOUNT_ID",
|
|
273144
|
-
"MINIMAX_API_KEY",
|
|
273145
|
-
"MINIMAX_BASE_URL",
|
|
273146
|
-
"MINIMAX_MODEL",
|
|
273147
|
-
"NVIDIA_API_KEY",
|
|
273148
|
-
"NVIDIA_NIM"
|
|
273149
|
-
];
|
|
273150
|
-
});
|
|
273151
|
-
|
|
273152
273176
|
// src/utils/urlRedaction.ts
|
|
273153
273177
|
function shouldRedactUrlQueryParam2(name) {
|
|
273154
273178
|
const lower = name.toLowerCase();
|
|
@@ -277225,7 +277249,8 @@ function SpinnerAnimationRow({
|
|
|
277225
277249
|
}) {
|
|
277226
277250
|
const [viewportRef, time3] = useAnimationFrame(reducedMotion ? null : 50);
|
|
277227
277251
|
const now2 = Date.now();
|
|
277228
|
-
const
|
|
277252
|
+
const rawElapsedTimeMs = pauseStartTimeRef.current !== null ? pauseStartTimeRef.current - loadingStartTimeRef.current - totalPausedMsRef.current : now2 - loadingStartTimeRef.current - totalPausedMsRef.current;
|
|
277253
|
+
const elapsedTimeMs = loadingStartTimeRef.current > 0 ? Math.max(0, rawElapsedTimeMs) : 0;
|
|
277229
277254
|
const derivedStart = now2 - elapsedTimeMs;
|
|
277230
277255
|
const turnStartRef = import_react55.useRef(derivedStart);
|
|
277231
277256
|
if (!hasRunningTeammates || derivedStart < turnStartRef.current) {
|
|
@@ -342483,6 +342508,76 @@ function buildFullPath2(baseURL, requestedURL, allowAbsoluteUrls) {
|
|
|
342483
342508
|
}
|
|
342484
342509
|
var init_buildFullPath2 = () => {};
|
|
342485
342510
|
|
|
342511
|
+
// node_modules/@mendable/firecrawl-js/node_modules/axios/node_modules/proxy-from-env/index.js
|
|
342512
|
+
function parseUrl2(urlString) {
|
|
342513
|
+
try {
|
|
342514
|
+
return new URL(urlString);
|
|
342515
|
+
} catch {
|
|
342516
|
+
return null;
|
|
342517
|
+
}
|
|
342518
|
+
}
|
|
342519
|
+
function getProxyForUrl2(url4) {
|
|
342520
|
+
var parsedUrl = (typeof url4 === "string" ? parseUrl2(url4) : url4) || {};
|
|
342521
|
+
var proto2 = parsedUrl.protocol;
|
|
342522
|
+
var hostname3 = parsedUrl.host;
|
|
342523
|
+
var port = parsedUrl.port;
|
|
342524
|
+
if (typeof hostname3 !== "string" || !hostname3 || typeof proto2 !== "string") {
|
|
342525
|
+
return "";
|
|
342526
|
+
}
|
|
342527
|
+
proto2 = proto2.split(":", 1)[0];
|
|
342528
|
+
hostname3 = hostname3.replace(/:\d*$/, "");
|
|
342529
|
+
port = parseInt(port) || DEFAULT_PORTS3[proto2] || 0;
|
|
342530
|
+
if (!shouldProxy2(hostname3, port)) {
|
|
342531
|
+
return "";
|
|
342532
|
+
}
|
|
342533
|
+
var proxy = getEnv3(proto2 + "_proxy") || getEnv3("all_proxy");
|
|
342534
|
+
if (proxy && proxy.indexOf("://") === -1) {
|
|
342535
|
+
proxy = proto2 + "://" + proxy;
|
|
342536
|
+
}
|
|
342537
|
+
return proxy;
|
|
342538
|
+
}
|
|
342539
|
+
function shouldProxy2(hostname3, port) {
|
|
342540
|
+
var NO_PROXY = getEnv3("no_proxy").toLowerCase();
|
|
342541
|
+
if (!NO_PROXY) {
|
|
342542
|
+
return true;
|
|
342543
|
+
}
|
|
342544
|
+
if (NO_PROXY === "*") {
|
|
342545
|
+
return false;
|
|
342546
|
+
}
|
|
342547
|
+
return NO_PROXY.split(/[,\s]/).every(function(proxy) {
|
|
342548
|
+
if (!proxy) {
|
|
342549
|
+
return true;
|
|
342550
|
+
}
|
|
342551
|
+
var parsedProxy = proxy.match(/^(.+):(\d+)$/);
|
|
342552
|
+
var parsedProxyHostname = parsedProxy ? parsedProxy[1] : proxy;
|
|
342553
|
+
var parsedProxyPort = parsedProxy ? parseInt(parsedProxy[2]) : 0;
|
|
342554
|
+
if (parsedProxyPort && parsedProxyPort !== port) {
|
|
342555
|
+
return true;
|
|
342556
|
+
}
|
|
342557
|
+
if (!/^[.*]/.test(parsedProxyHostname)) {
|
|
342558
|
+
return hostname3 !== parsedProxyHostname;
|
|
342559
|
+
}
|
|
342560
|
+
if (parsedProxyHostname.charAt(0) === "*") {
|
|
342561
|
+
parsedProxyHostname = parsedProxyHostname.slice(1);
|
|
342562
|
+
}
|
|
342563
|
+
return !hostname3.endsWith(parsedProxyHostname);
|
|
342564
|
+
});
|
|
342565
|
+
}
|
|
342566
|
+
function getEnv3(key) {
|
|
342567
|
+
return process.env[key.toLowerCase()] || process.env[key.toUpperCase()] || "";
|
|
342568
|
+
}
|
|
342569
|
+
var DEFAULT_PORTS3;
|
|
342570
|
+
var init_proxy_from_env2 = __esm(() => {
|
|
342571
|
+
DEFAULT_PORTS3 = {
|
|
342572
|
+
ftp: 21,
|
|
342573
|
+
gopher: 70,
|
|
342574
|
+
http: 80,
|
|
342575
|
+
https: 443,
|
|
342576
|
+
ws: 80,
|
|
342577
|
+
wss: 443
|
|
342578
|
+
};
|
|
342579
|
+
});
|
|
342580
|
+
|
|
342486
342581
|
// node_modules/@mendable/firecrawl-js/node_modules/axios/lib/env/data.js
|
|
342487
342582
|
var VERSION5 = "1.14.0";
|
|
342488
342583
|
|
|
@@ -343050,7 +343145,7 @@ function dispatchBeforeRedirect2(options2, responseDetails) {
|
|
|
343050
343145
|
function setProxy2(options2, configProxy, location) {
|
|
343051
343146
|
let proxy = configProxy;
|
|
343052
343147
|
if (!proxy && proxy !== false) {
|
|
343053
|
-
const proxyUrl =
|
|
343148
|
+
const proxyUrl = getProxyForUrl2(location);
|
|
343054
343149
|
if (proxyUrl) {
|
|
343055
343150
|
proxy = new URL(proxyUrl);
|
|
343056
343151
|
}
|
|
@@ -343120,7 +343215,7 @@ var init_http3 = __esm(() => {
|
|
|
343120
343215
|
init_settle2();
|
|
343121
343216
|
init_buildFullPath2();
|
|
343122
343217
|
init_buildURL2();
|
|
343123
|
-
|
|
343218
|
+
init_proxy_from_env2();
|
|
343124
343219
|
init_transitional2();
|
|
343125
343220
|
init_AxiosError2();
|
|
343126
343221
|
init_CanceledError2();
|
|
@@ -376975,7 +377070,7 @@ function getAnthropicEnvMetadata() {
|
|
|
376975
377070
|
function getBuildAgeMinutes() {
|
|
376976
377071
|
if (false)
|
|
376977
377072
|
;
|
|
376978
|
-
const buildTime = new Date("2026-05-
|
|
377073
|
+
const buildTime = new Date("2026-05-02T20:28:08.723Z").getTime();
|
|
376979
377074
|
if (isNaN(buildTime))
|
|
376980
377075
|
return;
|
|
376981
377076
|
return Math.floor((Date.now() - buildTime) / 60000);
|
|
@@ -415086,7 +415181,17 @@ async function getProjectFiles(abortSignal, respectGitignore) {
|
|
|
415086
415181
|
if (!respectGitignore) {
|
|
415087
415182
|
rgArgs.push("--no-ignore-vcs");
|
|
415088
415183
|
}
|
|
415089
|
-
|
|
415184
|
+
let files;
|
|
415185
|
+
try {
|
|
415186
|
+
files = await ripGrep(rgArgs, ".", abortSignal);
|
|
415187
|
+
} catch (error42) {
|
|
415188
|
+
if (error42 instanceof RipgrepUnavailableError) {
|
|
415189
|
+
logForDebugging2(`[FileIndex] ripgrep unavailable; continuing with empty non-git file index: ${error42.message}`);
|
|
415190
|
+
logEvent("tengu_file_suggestions_ripgrep_unavailable", {});
|
|
415191
|
+
return [];
|
|
415192
|
+
}
|
|
415193
|
+
throw error42;
|
|
415194
|
+
}
|
|
415090
415195
|
const relativePaths = files.map((f) => path17.relative(getCwd(), f));
|
|
415091
415196
|
const duration3 = Date.now() - startTime;
|
|
415092
415197
|
logForDebugging2(`[FileIndex] ripgrep: ${relativePaths.length} files in ${duration3}ms`);
|
|
@@ -417511,7 +417616,7 @@ function buildPrimarySection() {
|
|
|
417511
417616
|
}, undefined, false, undefined, this);
|
|
417512
417617
|
return [{
|
|
417513
417618
|
label: "Version",
|
|
417514
|
-
value: "0.7.
|
|
417619
|
+
value: "0.7.20"
|
|
417515
417620
|
}, {
|
|
417516
417621
|
label: "Session name",
|
|
417517
417622
|
value: nameValue
|
|
@@ -485461,7 +485566,7 @@ var init_bridge_kick = __esm(() => {
|
|
|
485461
485566
|
var call60 = async () => {
|
|
485462
485567
|
return {
|
|
485463
485568
|
type: "text",
|
|
485464
|
-
value: `${"99.0.0"} (built ${"2026-05-
|
|
485569
|
+
value: `${"99.0.0"} (built ${"2026-05-02T20:28:08.723Z"})`
|
|
485465
485570
|
};
|
|
485466
485571
|
}, version2, version_default;
|
|
485467
485572
|
var init_version = __esm(() => {
|
|
@@ -557984,6 +558089,8 @@ Error: sandbox required but unavailable: ${reason}
|
|
|
557984
558089
|
effortValue: effort
|
|
557985
558090
|
});
|
|
557986
558091
|
}
|
|
558092
|
+
if (abortController2.signal.aborted)
|
|
558093
|
+
return;
|
|
557987
558094
|
queryCheckpoint("query_context_loading_start");
|
|
557988
558095
|
const [, , defaultSystemPrompt, baseUserContext, systemContext] = await Promise.all([
|
|
557989
558096
|
checkAndDisableBypassPermissionsIfNeeded(toolPermissionContext, setAppState),
|
|
@@ -557992,6 +558099,8 @@ Error: sandbox required but unavailable: ${reason}
|
|
|
557992
558099
|
getUserContext(),
|
|
557993
558100
|
getSystemContext()
|
|
557994
558101
|
]);
|
|
558102
|
+
if (abortController2.signal.aborted)
|
|
558103
|
+
return;
|
|
557995
558104
|
const userContext = {
|
|
557996
558105
|
...baseUserContext,
|
|
557997
558106
|
...getCoordinatorUserContext2(freshMcpClients, isScratchpadEnabled() ? getScratchpadDir() : undefined),
|
|
@@ -558006,6 +558115,8 @@ Error: sandbox required but unavailable: ${reason}
|
|
|
558006
558115
|
appendSystemPrompt
|
|
558007
558116
|
});
|
|
558008
558117
|
toolUseContext.renderedSystemPrompt = systemPrompt;
|
|
558118
|
+
if (abortController2.signal.aborted)
|
|
558119
|
+
return;
|
|
558009
558120
|
queryCheckpoint("query_query_start");
|
|
558010
558121
|
resetTurnHookDuration();
|
|
558011
558122
|
resetTurnToolDuration();
|
|
@@ -558056,6 +558167,7 @@ Error: sandbox required but unavailable: ${reason}
|
|
|
558056
558167
|
return;
|
|
558057
558168
|
}
|
|
558058
558169
|
try {
|
|
558170
|
+
startQueryProfile();
|
|
558059
558171
|
resetTimingRefs();
|
|
558060
558172
|
resetCurrentTurn();
|
|
558061
558173
|
setMessages((oldMessages) => [...oldMessages, ...newMessages]);
|
|
@@ -558070,9 +558182,13 @@ Error: sandbox required but unavailable: ${reason}
|
|
|
558070
558182
|
const latestMessages = messagesRef.current;
|
|
558071
558183
|
if (input) {
|
|
558072
558184
|
await mrOnBeforeQuery(input, latestMessages, newMessages.length);
|
|
558185
|
+
if (abortController2.signal.aborted)
|
|
558186
|
+
return;
|
|
558073
558187
|
}
|
|
558074
558188
|
if (onBeforeQueryCallback && input) {
|
|
558075
558189
|
const shouldProceed = await onBeforeQueryCallback(input, latestMessages);
|
|
558190
|
+
if (abortController2.signal.aborted)
|
|
558191
|
+
return;
|
|
558076
558192
|
if (!shouldProceed) {
|
|
558077
558193
|
return;
|
|
558078
558194
|
}
|
|
@@ -561250,7 +561366,7 @@ function WelcomeV2() {
|
|
|
561250
561366
|
dimColor: true,
|
|
561251
561367
|
children: [
|
|
561252
561368
|
"v",
|
|
561253
|
-
"0.7.
|
|
561369
|
+
"0.7.20",
|
|
561254
561370
|
" "
|
|
561255
561371
|
]
|
|
561256
561372
|
}, undefined, true, undefined, this)
|
|
@@ -561437,7 +561553,7 @@ function WelcomeV2() {
|
|
|
561437
561553
|
dimColor: true,
|
|
561438
561554
|
children: [
|
|
561439
561555
|
"v",
|
|
561440
|
-
"0.7.
|
|
561556
|
+
"0.7.20",
|
|
561441
561557
|
" "
|
|
561442
561558
|
]
|
|
561443
561559
|
}, undefined, true, undefined, this)
|
|
@@ -561653,7 +561769,7 @@ function AppleTerminalWelcomeV2(t0) {
|
|
|
561653
561769
|
dimColor: true,
|
|
561654
561770
|
children: [
|
|
561655
561771
|
"v",
|
|
561656
|
-
"0.7.
|
|
561772
|
+
"0.7.20",
|
|
561657
561773
|
" "
|
|
561658
561774
|
]
|
|
561659
561775
|
}, undefined, true, undefined, this);
|
|
@@ -561862,7 +561978,7 @@ function AppleTerminalWelcomeV2(t0) {
|
|
|
561862
561978
|
dimColor: true,
|
|
561863
561979
|
children: [
|
|
561864
561980
|
"v",
|
|
561865
|
-
"0.7.
|
|
561981
|
+
"0.7.20",
|
|
561866
561982
|
" "
|
|
561867
561983
|
]
|
|
561868
561984
|
}, undefined, true, undefined, this);
|
|
@@ -579993,7 +580109,7 @@ __export(exports_update, {
|
|
|
579993
580109
|
async function update() {
|
|
579994
580110
|
if (getAPIProvider() !== "firstParty") {
|
|
579995
580111
|
writeToStdout(source_default.yellow(`Auto-update is not available for third-party provider builds.
|
|
579996
|
-
`) + `Current version: ${"0.7.
|
|
580112
|
+
`) + `Current version: ${"0.7.20"}
|
|
579997
580113
|
|
|
579998
580114
|
` + `To update, reinstall from npm:
|
|
579999
580115
|
` + source_default.bold(` npm install -g ${"@verboo/code"}@latest`) + `
|
|
@@ -580004,7 +580120,7 @@ async function update() {
|
|
|
580004
580120
|
await gracefulShutdown(0);
|
|
580005
580121
|
}
|
|
580006
580122
|
logEvent("tengu_update_check", {});
|
|
580007
|
-
writeToStdout(`Current version: ${"0.7.
|
|
580123
|
+
writeToStdout(`Current version: ${"0.7.20"}
|
|
580008
580124
|
`);
|
|
580009
580125
|
const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
|
|
580010
580126
|
writeToStdout(`Checking for updates to ${channel} version...
|
|
@@ -580089,8 +580205,8 @@ async function update() {
|
|
|
580089
580205
|
writeToStdout(`Claude is managed by Homebrew.
|
|
580090
580206
|
`);
|
|
580091
580207
|
const latest = await getLatestVersion(channel);
|
|
580092
|
-
if (latest && !gte("0.7.
|
|
580093
|
-
writeToStdout(`Update available: ${"0.7.
|
|
580208
|
+
if (latest && !gte("0.7.20", latest)) {
|
|
580209
|
+
writeToStdout(`Update available: ${"0.7.20"} → ${latest}
|
|
580094
580210
|
`);
|
|
580095
580211
|
writeToStdout(`
|
|
580096
580212
|
`);
|
|
@@ -580106,8 +580222,8 @@ async function update() {
|
|
|
580106
580222
|
writeToStdout(`Claude is managed by winget.
|
|
580107
580223
|
`);
|
|
580108
580224
|
const latest = await getLatestVersion(channel);
|
|
580109
|
-
if (latest && !gte("0.7.
|
|
580110
|
-
writeToStdout(`Update available: ${"0.7.
|
|
580225
|
+
if (latest && !gte("0.7.20", latest)) {
|
|
580226
|
+
writeToStdout(`Update available: ${"0.7.20"} → ${latest}
|
|
580111
580227
|
`);
|
|
580112
580228
|
writeToStdout(`
|
|
580113
580229
|
`);
|
|
@@ -580123,8 +580239,8 @@ async function update() {
|
|
|
580123
580239
|
writeToStdout(`Claude is managed by apk.
|
|
580124
580240
|
`);
|
|
580125
580241
|
const latest = await getLatestVersion(channel);
|
|
580126
|
-
if (latest && !gte("0.7.
|
|
580127
|
-
writeToStdout(`Update available: ${"0.7.
|
|
580242
|
+
if (latest && !gte("0.7.20", latest)) {
|
|
580243
|
+
writeToStdout(`Update available: ${"0.7.20"} → ${latest}
|
|
580128
580244
|
`);
|
|
580129
580245
|
writeToStdout(`
|
|
580130
580246
|
`);
|
|
@@ -580189,11 +580305,11 @@ async function update() {
|
|
|
580189
580305
|
`);
|
|
580190
580306
|
await gracefulShutdown(1);
|
|
580191
580307
|
}
|
|
580192
|
-
if (result.latestVersion === "0.7.
|
|
580193
|
-
writeToStdout(source_default.green(`Verboo Code is up to date (${"0.7.
|
|
580308
|
+
if (result.latestVersion === "0.7.20") {
|
|
580309
|
+
writeToStdout(source_default.green(`Verboo Code is up to date (${"0.7.20"})`) + `
|
|
580194
580310
|
`);
|
|
580195
580311
|
} else {
|
|
580196
|
-
writeToStdout(source_default.green(`Successfully updated from ${"0.7.
|
|
580312
|
+
writeToStdout(source_default.green(`Successfully updated from ${"0.7.20"} to version ${result.latestVersion}`) + `
|
|
580197
580313
|
`);
|
|
580198
580314
|
await regenerateCompletionCache();
|
|
580199
580315
|
}
|
|
@@ -580253,12 +580369,12 @@ async function update() {
|
|
|
580253
580369
|
`);
|
|
580254
580370
|
await gracefulShutdown(1);
|
|
580255
580371
|
}
|
|
580256
|
-
if (latestVersion === "0.7.
|
|
580257
|
-
writeToStdout(source_default.green(`Verboo Code is up to date (${"0.7.
|
|
580372
|
+
if (latestVersion === "0.7.20") {
|
|
580373
|
+
writeToStdout(source_default.green(`Verboo Code is up to date (${"0.7.20"})`) + `
|
|
580258
580374
|
`);
|
|
580259
580375
|
await gracefulShutdown(0);
|
|
580260
580376
|
}
|
|
580261
|
-
writeToStdout(`New version available: ${latestVersion} (current: ${"0.7.
|
|
580377
|
+
writeToStdout(`New version available: ${latestVersion} (current: ${"0.7.20"})
|
|
580262
580378
|
`);
|
|
580263
580379
|
writeToStdout(`Installing update...
|
|
580264
580380
|
`);
|
|
@@ -580303,7 +580419,7 @@ async function update() {
|
|
|
580303
580419
|
logForDebugging2(`update: Installation status: ${status2}`);
|
|
580304
580420
|
switch (status2) {
|
|
580305
580421
|
case "success":
|
|
580306
|
-
writeToStdout(source_default.green(`Successfully updated from ${"0.7.
|
|
580422
|
+
writeToStdout(source_default.green(`Successfully updated from ${"0.7.20"} to version ${latestVersion}`) + `
|
|
580307
580423
|
`);
|
|
580308
580424
|
await regenerateCompletionCache();
|
|
580309
580425
|
break;
|
|
@@ -582356,7 +582472,7 @@ Usage: verboo --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
582356
582472
|
pendingHookMessages
|
|
582357
582473
|
}, renderAndRun);
|
|
582358
582474
|
}
|
|
582359
|
-
}).version(`0.7.
|
|
582475
|
+
}).version(`0.7.20 (${cliDesc})`, "-v, --version", "Output the version number");
|
|
582360
582476
|
program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
|
|
582361
582477
|
program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
|
|
582362
582478
|
if (canUserConfigureAdvisor()) {
|
|
@@ -582898,6 +583014,8 @@ var init_main3 = __esm(() => {
|
|
|
582898
583014
|
// src/entrypoints/cli.tsx
|
|
582899
583015
|
init_providerProfile();
|
|
582900
583016
|
init_providerValidation();
|
|
583017
|
+
init_providerStartupOverrides();
|
|
583018
|
+
var IS_VERBOO_CLI = true;
|
|
582901
583019
|
if (typeof globalThis.File === "undefined") {
|
|
582902
583020
|
try {
|
|
582903
583021
|
const { File: NodeFile } = __require("node:buffer");
|
|
@@ -582924,10 +583042,10 @@ if (false) {}
|
|
|
582924
583042
|
async function main2() {
|
|
582925
583043
|
const args = process.argv.slice(2);
|
|
582926
583044
|
if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
|
|
582927
|
-
console.log(`${"0.7.
|
|
583045
|
+
console.log(`${"0.7.20"} (Verboo Code)`);
|
|
582928
583046
|
return;
|
|
582929
583047
|
}
|
|
582930
|
-
if (args.includes("--provider")) {
|
|
583048
|
+
if (!IS_VERBOO_CLI && args.includes("--provider")) {
|
|
582931
583049
|
const { applyProviderFlagFromArgs: applyProviderFlagFromArgs2 } = await Promise.resolve().then(() => (init_providerFlag(), exports_providerFlag));
|
|
582932
583050
|
const result = applyProviderFlagFromArgs2(args);
|
|
582933
583051
|
if (result?.error) {
|
|
@@ -582943,15 +583061,20 @@ async function main2() {
|
|
|
582943
583061
|
const { applySafeConfigEnvironmentVariables: applySafeConfigEnvironmentVariables2 } = await Promise.resolve().then(() => (init_managedEnv(), exports_managedEnv));
|
|
582944
583062
|
applySafeConfigEnvironmentVariables2();
|
|
582945
583063
|
}
|
|
582946
|
-
|
|
582947
|
-
|
|
582948
|
-
}
|
|
582949
|
-
if (
|
|
582950
|
-
const
|
|
582951
|
-
|
|
582952
|
-
|
|
582953
|
-
|
|
582954
|
-
|
|
583064
|
+
if (IS_VERBOO_CLI) {
|
|
583065
|
+
clearStartupProviderEnvFromProcessEnv();
|
|
583066
|
+
}
|
|
583067
|
+
if (!IS_VERBOO_CLI) {
|
|
583068
|
+
const startupEnv = await buildStartupEnvFromProfile({
|
|
583069
|
+
processEnv: process.env
|
|
583070
|
+
});
|
|
583071
|
+
if (startupEnv !== process.env) {
|
|
583072
|
+
const startupProfileError = await getProviderValidationError(startupEnv);
|
|
583073
|
+
if (startupProfileError) {
|
|
583074
|
+
console.error(`Warning: ignoring saved provider profile. ${startupProfileError}`);
|
|
583075
|
+
} else {
|
|
583076
|
+
applyProfileEnvToProcessEnv(process.env, startupEnv);
|
|
583077
|
+
}
|
|
582955
583078
|
}
|
|
582956
583079
|
}
|
|
582957
583080
|
{
|
|
@@ -582959,8 +583082,10 @@ async function main2() {
|
|
|
582959
583082
|
hydrateGithubModelsTokenFromSecureStorage: hydrateGithubModelsTokenFromSecureStorage2,
|
|
582960
583083
|
refreshGithubModelsTokenIfNeeded: refreshGithubModelsTokenIfNeeded2
|
|
582961
583084
|
} = await Promise.resolve().then(() => (init_githubModelsCredentials(), exports_githubModelsCredentials));
|
|
582962
|
-
|
|
582963
|
-
|
|
583085
|
+
if (!IS_VERBOO_CLI) {
|
|
583086
|
+
await refreshGithubModelsTokenIfNeeded2();
|
|
583087
|
+
hydrateGithubModelsTokenFromSecureStorage2();
|
|
583088
|
+
}
|
|
582964
583089
|
}
|
|
582965
583090
|
await validateProviderEnvForStartupOrExit();
|
|
582966
583091
|
const { eagerParseCliFlag: eagerParseCliFlag2 } = await Promise.resolve().then(() => exports_cliArgs);
|
|
@@ -583080,4 +583205,4 @@ async function main2() {
|
|
|
583080
583205
|
}
|
|
583081
583206
|
main2();
|
|
583082
583207
|
|
|
583083
|
-
//# debugId=
|
|
583208
|
+
//# debugId=367099289D71500264756E2164756E21
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@verboo/code",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.20",
|
|
4
4
|
"description": "Verboo Code — coding agent for the Verboo platform",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
"bin/verboo",
|
|
11
11
|
"bin/import-specifier.mjs",
|
|
12
12
|
"dist/cli.mjs",
|
|
13
|
+
"dist/vendor/ripgrep/**",
|
|
13
14
|
"scripts/postinstall.mjs",
|
|
14
15
|
"README.md"
|
|
15
16
|
],
|
|
@@ -139,6 +140,9 @@
|
|
|
139
140
|
"tsx": "^4.21.0",
|
|
140
141
|
"typescript": "5.9.3"
|
|
141
142
|
},
|
|
143
|
+
"optionalDependencies": {
|
|
144
|
+
"@vscode/ripgrep": "^1.15.14"
|
|
145
|
+
},
|
|
142
146
|
"engines": {
|
|
143
147
|
"node": ">=20.0.0"
|
|
144
148
|
},
|