vivus-agent 1.0.4 → 1.0.6
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/main.js +286 -93
- package/package.json +1 -1
package/dist/main.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
// Vivus CLI — local AI coding agent
|
|
3
|
-
// Built from source at 2026-06-
|
|
3
|
+
// Built from source at 2026-06-05T23:17:49.924Z
|
|
4
4
|
import { createRequire } from "node:module";
|
|
5
5
|
var __create = Object.create;
|
|
6
6
|
var __getProtoOf = Object.getPrototypeOf;
|
|
@@ -113373,6 +113373,117 @@ var init_modelAllowlist = __esm(() => {
|
|
|
113373
113373
|
init_modelStrings();
|
|
113374
113374
|
});
|
|
113375
113375
|
|
|
113376
|
+
// src/utils/model/proxyModelLabels.ts
|
|
113377
|
+
function stripTag(name) {
|
|
113378
|
+
const i2 = name.indexOf(":");
|
|
113379
|
+
return i2 === -1 ? name : name.slice(0, i2);
|
|
113380
|
+
}
|
|
113381
|
+
function titleCaseFromName(stripped) {
|
|
113382
|
+
return stripped.split(/[-_/]/).filter(Boolean).map((p) => p.charAt(0).toUpperCase() + p.slice(1)).join(" ");
|
|
113383
|
+
}
|
|
113384
|
+
function extractSizeFromTag(name) {
|
|
113385
|
+
const i2 = name.indexOf(":");
|
|
113386
|
+
if (i2 === -1)
|
|
113387
|
+
return null;
|
|
113388
|
+
const tag2 = name.slice(i2 + 1);
|
|
113389
|
+
const m = tag2.match(/^(\d+(?:\.\d+)?)b\b/i);
|
|
113390
|
+
return m ? `${m[1]}B` : null;
|
|
113391
|
+
}
|
|
113392
|
+
function lookupProxyModelLabel(name, fallback) {
|
|
113393
|
+
const base2 = stripTag(name).toLowerCase();
|
|
113394
|
+
const sizeFromTag = extractSizeFromTag(name);
|
|
113395
|
+
const entry = PROXY_MODEL_LABELS[base2];
|
|
113396
|
+
if (entry) {
|
|
113397
|
+
return {
|
|
113398
|
+
label: entry.label + (sizeFromTag ? ` (${sizeFromTag})` : ""),
|
|
113399
|
+
description: entry.description
|
|
113400
|
+
};
|
|
113401
|
+
}
|
|
113402
|
+
const label = titleCaseFromName(stripTag(name));
|
|
113403
|
+
const size = sizeFromTag ?? fallback?.parameterSize?.replace(/\s+/g, "") ?? null;
|
|
113404
|
+
const descParts = [];
|
|
113405
|
+
if (fallback?.family)
|
|
113406
|
+
descParts.push(fallback.family);
|
|
113407
|
+
if (size)
|
|
113408
|
+
descParts.push(size);
|
|
113409
|
+
return {
|
|
113410
|
+
label: label + (sizeFromTag ? ` (${sizeFromTag})` : ""),
|
|
113411
|
+
description: descParts.length > 0 ? descParts.join(" · ") : "Custom model"
|
|
113412
|
+
};
|
|
113413
|
+
}
|
|
113414
|
+
function isProxyModelName(name) {
|
|
113415
|
+
if (!name)
|
|
113416
|
+
return false;
|
|
113417
|
+
if (name.includes(":"))
|
|
113418
|
+
return true;
|
|
113419
|
+
return PROXY_MODEL_LABELS[name.toLowerCase()] !== undefined;
|
|
113420
|
+
}
|
|
113421
|
+
var PROXY_MODEL_LABELS;
|
|
113422
|
+
var init_proxyModelLabels = __esm(() => {
|
|
113423
|
+
PROXY_MODEL_LABELS = {
|
|
113424
|
+
"minimax-m3": {
|
|
113425
|
+
label: "MiniMax M3",
|
|
113426
|
+
description: "Balanced default · strong general reasoning, long context"
|
|
113427
|
+
},
|
|
113428
|
+
"qwen3-coder-next": {
|
|
113429
|
+
label: "Qwen3 Coder Next",
|
|
113430
|
+
description: "Latest coding model · best for code tasks"
|
|
113431
|
+
},
|
|
113432
|
+
"qwen3-coder": {
|
|
113433
|
+
label: "Qwen3 Coder",
|
|
113434
|
+
description: "Coding-focused MoE"
|
|
113435
|
+
},
|
|
113436
|
+
"qwen3-vl": {
|
|
113437
|
+
label: "Qwen3 VL",
|
|
113438
|
+
description: "Vision-capable · multimodal input"
|
|
113439
|
+
},
|
|
113440
|
+
qwen3: {
|
|
113441
|
+
label: "Qwen3",
|
|
113442
|
+
description: "General-purpose Alibaba Qwen"
|
|
113443
|
+
},
|
|
113444
|
+
"qwen3.6": {
|
|
113445
|
+
label: "Qwen 3.6",
|
|
113446
|
+
description: "Latest Qwen · improved reasoning"
|
|
113447
|
+
},
|
|
113448
|
+
"deepseek-v4-flash": {
|
|
113449
|
+
label: "DeepSeek V4 Flash",
|
|
113450
|
+
description: "Fast responses · low latency"
|
|
113451
|
+
},
|
|
113452
|
+
"deepseek-v4-pro": {
|
|
113453
|
+
label: "DeepSeek V4 Pro",
|
|
113454
|
+
description: "Advanced reasoning · deep analysis"
|
|
113455
|
+
},
|
|
113456
|
+
"deepseek-v3.1": {
|
|
113457
|
+
label: "DeepSeek V3.1",
|
|
113458
|
+
description: "Strong reasoning · MoE"
|
|
113459
|
+
},
|
|
113460
|
+
"glm-5.1": {
|
|
113461
|
+
label: "GLM 5.1",
|
|
113462
|
+
description: "General-purpose · long context"
|
|
113463
|
+
},
|
|
113464
|
+
"kimi-k2.6": {
|
|
113465
|
+
label: "Kimi K2.6",
|
|
113466
|
+
description: "Deep reasoning · trillion-parameter scale"
|
|
113467
|
+
},
|
|
113468
|
+
"gpt-oss": {
|
|
113469
|
+
label: "GPT-OSS",
|
|
113470
|
+
description: "Open-weight GPT-style model"
|
|
113471
|
+
},
|
|
113472
|
+
gemma4: {
|
|
113473
|
+
label: "Gemma 4",
|
|
113474
|
+
description: "Google Gemma · compact and capable"
|
|
113475
|
+
},
|
|
113476
|
+
"granite4.1": {
|
|
113477
|
+
label: "Granite 4.1",
|
|
113478
|
+
description: "IBM Granite · enterprise coder"
|
|
113479
|
+
},
|
|
113480
|
+
nemotron3: {
|
|
113481
|
+
label: "Nemotron 3",
|
|
113482
|
+
description: "NVIDIA Nemotron · multimodal"
|
|
113483
|
+
}
|
|
113484
|
+
};
|
|
113485
|
+
});
|
|
113486
|
+
|
|
113376
113487
|
// src/utils/model/model.ts
|
|
113377
113488
|
var exports_model = {};
|
|
113378
113489
|
__export(exports_model, {
|
|
@@ -113469,6 +113580,9 @@ function getRuntimeMainLoopModel(params) {
|
|
|
113469
113580
|
return mainLoopModel;
|
|
113470
113581
|
}
|
|
113471
113582
|
function getDefaultMainLoopModelSetting() {
|
|
113583
|
+
if (!isFirstPartyAnthropicBaseUrl()) {
|
|
113584
|
+
return process.env.VIVUS_DEFAULT_PROXY_MODEL || process.env.ANTHROPIC_MODEL || "minimax-m3:cloud";
|
|
113585
|
+
}
|
|
113472
113586
|
if (process.env.USER_TYPE === "ant") {
|
|
113473
113587
|
return getAntModelOverrideConfig()?.defaultModel ?? getDefaultOpusModel() + "[1m]";
|
|
113474
113588
|
}
|
|
@@ -113618,6 +113732,9 @@ function maskModelCodename(baseName) {
|
|
|
113618
113732
|
return [masked, ...rest].join("-");
|
|
113619
113733
|
}
|
|
113620
113734
|
function renderModelName(model) {
|
|
113735
|
+
if (isProxyModelName(model)) {
|
|
113736
|
+
return lookupProxyModelLabel(model).label;
|
|
113737
|
+
}
|
|
113621
113738
|
const publicName = getPublicModelDisplayName(model);
|
|
113622
113739
|
if (publicName) {
|
|
113623
113740
|
return publicName;
|
|
@@ -113767,6 +113884,7 @@ var init_model = __esm(() => {
|
|
|
113767
113884
|
init_modelAllowlist();
|
|
113768
113885
|
init_aliases();
|
|
113769
113886
|
init_stringUtils();
|
|
113887
|
+
init_proxyModelLabels();
|
|
113770
113888
|
LEGACY_OPUS_FIRSTPARTY = [
|
|
113771
113889
|
"vivus-opus-4-20250514",
|
|
113772
113890
|
"vivus-opus-4-1-20250805",
|
|
@@ -115958,7 +116076,7 @@ var init_auth = __esm(() => {
|
|
|
115958
116076
|
|
|
115959
116077
|
// src/utils/userAgent.ts
|
|
115960
116078
|
function getVivusCodeUserAgent() {
|
|
115961
|
-
return `vivus/${"1.0.
|
|
116079
|
+
return `vivus/${"1.0.6+40bcf59"}`;
|
|
115962
116080
|
}
|
|
115963
116081
|
|
|
115964
116082
|
// src/utils/workloadContext.ts
|
|
@@ -115980,7 +116098,7 @@ function getUserAgent() {
|
|
|
115980
116098
|
const clientApp = process.env.VIVUS_AGENT_SDK_CLIENT_APP ? `, client-app/${process.env.VIVUS_AGENT_SDK_CLIENT_APP}` : "";
|
|
115981
116099
|
const workload = getWorkload();
|
|
115982
116100
|
const workloadSuffix = workload ? `, workload/${workload}` : "";
|
|
115983
|
-
return `vivus-cli/${"1.0.
|
|
116101
|
+
return `vivus-cli/${"1.0.6+40bcf59"} (${process.env.USER_TYPE}, ${process.env.VIVUS_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
|
|
115984
116102
|
}
|
|
115985
116103
|
function getMCPUserAgent() {
|
|
115986
116104
|
const parts = [];
|
|
@@ -115994,7 +116112,7 @@ function getMCPUserAgent() {
|
|
|
115994
116112
|
parts.push(`client-app/${process.env.VIVUS_AGENT_SDK_CLIENT_APP}`);
|
|
115995
116113
|
}
|
|
115996
116114
|
const suffix = parts.length > 0 ? ` (${parts.join(", ")})` : "";
|
|
115997
|
-
return `vivus/${"1.0.
|
|
116115
|
+
return `vivus/${"1.0.6+40bcf59"}${suffix}`;
|
|
115998
116116
|
}
|
|
115999
116117
|
function getWebFetchUserAgent() {
|
|
116000
116118
|
return `Vivus-User (${getVivusCodeUserAgent()}; +https://support.anthropic.com/)`;
|
|
@@ -116132,7 +116250,7 @@ var init_user = __esm(() => {
|
|
|
116132
116250
|
deviceId,
|
|
116133
116251
|
sessionId: getSessionId(),
|
|
116134
116252
|
email: getEmail(),
|
|
116135
|
-
appVersion: "1.0.
|
|
116253
|
+
appVersion: "1.0.6+40bcf59",
|
|
116136
116254
|
platform: getHostPlatformForAnalytics(),
|
|
116137
116255
|
organizationUuid,
|
|
116138
116256
|
accountUuid,
|
|
@@ -127798,7 +127916,7 @@ var init_metadata = __esm(() => {
|
|
|
127798
127916
|
COMPOUND_OPERATOR_REGEX = /\s*(?:&&|\|\||[;|])\s*/;
|
|
127799
127917
|
WHITESPACE_REGEX = /\s+/;
|
|
127800
127918
|
getVersionBase = memoize_default(() => {
|
|
127801
|
-
const match = "1.0.
|
|
127919
|
+
const match = "1.0.6+40bcf59".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
|
|
127802
127920
|
return match ? match[0] : undefined;
|
|
127803
127921
|
});
|
|
127804
127922
|
buildEnvContext = memoize_default(async () => {
|
|
@@ -127838,9 +127956,9 @@ var init_metadata = __esm(() => {
|
|
|
127838
127956
|
isGithubAction: isEnvTruthy(process.env.GITHUB_ACTIONS),
|
|
127839
127957
|
isVivusCodeAction: isEnvTruthy(process.env.VIVUS_CODE_ACTION),
|
|
127840
127958
|
isVivusAiAuth: isVivusAISubscriber(),
|
|
127841
|
-
version: "1.0.
|
|
127959
|
+
version: "1.0.6+40bcf59",
|
|
127842
127960
|
versionBase: getVersionBase(),
|
|
127843
|
-
buildTime: "2026-06-
|
|
127961
|
+
buildTime: "2026-06-05T23:17:49.323Z",
|
|
127844
127962
|
deploymentEnvironment: env2.detectDeploymentEnvironment(),
|
|
127845
127963
|
...isEnvTruthy(process.env.GITHUB_ACTIONS) && {
|
|
127846
127964
|
githubEventName: process.env.GITHUB_EVENT_NAME,
|
|
@@ -128508,7 +128626,7 @@ function initialize1PEventLogging() {
|
|
|
128508
128626
|
const platform2 = getPlatform();
|
|
128509
128627
|
const attributes = {
|
|
128510
128628
|
[import_semantic_conventions.ATTR_SERVICE_NAME]: "vivus",
|
|
128511
|
-
[import_semantic_conventions.ATTR_SERVICE_VERSION]: "1.0.
|
|
128629
|
+
[import_semantic_conventions.ATTR_SERVICE_VERSION]: "1.0.6+40bcf59"
|
|
128512
128630
|
};
|
|
128513
128631
|
if (platform2 === "wsl") {
|
|
128514
128632
|
const wslVersion = getWslVersion();
|
|
@@ -128535,7 +128653,7 @@ function initialize1PEventLogging() {
|
|
|
128535
128653
|
})
|
|
128536
128654
|
]
|
|
128537
128655
|
});
|
|
128538
|
-
firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.anthropic.vivus_code.events", "1.0.
|
|
128656
|
+
firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.anthropic.vivus_code.events", "1.0.6+40bcf59");
|
|
128539
128657
|
}
|
|
128540
128658
|
async function reinitialize1PEventLoggingIfConfigChanged() {
|
|
128541
128659
|
if (!is1PEventLoggingEnabled() || !firstPartyEventLoggerProvider) {
|
|
@@ -162624,7 +162742,7 @@ function getAttributionHeader(fingerprint) {
|
|
|
162624
162742
|
if (!isAttributionHeaderEnabled()) {
|
|
162625
162743
|
return "";
|
|
162626
162744
|
}
|
|
162627
|
-
const version2 = `${"1.0.
|
|
162745
|
+
const version2 = `${"1.0.6+40bcf59"}.${fingerprint}`;
|
|
162628
162746
|
const entrypoint = process.env.VIVUS_CODE_ENTRYPOINT ?? "unknown";
|
|
162629
162747
|
const cch = "";
|
|
162630
162748
|
const workload = getWorkload();
|
|
@@ -175781,7 +175899,7 @@ function getTelemetryAttributes() {
|
|
|
175781
175899
|
attributes["session.id"] = sessionId;
|
|
175782
175900
|
}
|
|
175783
175901
|
if (shouldIncludeAttribute("OTEL_METRICS_INCLUDE_VERSION")) {
|
|
175784
|
-
attributes["app.version"] = "1.0.
|
|
175902
|
+
attributes["app.version"] = "1.0.6+40bcf59";
|
|
175785
175903
|
}
|
|
175786
175904
|
const oauthAccount = getOauthAccountInfo();
|
|
175787
175905
|
if (oauthAccount) {
|
|
@@ -235915,7 +236033,7 @@ function computeFingerprint(messageText, version2) {
|
|
|
235915
236033
|
}
|
|
235916
236034
|
function computeFingerprintFromMessages(messages) {
|
|
235917
236035
|
const firstMessageText = extractFirstMessageText(messages);
|
|
235918
|
-
return computeFingerprint(firstMessageText, "1.0.
|
|
236036
|
+
return computeFingerprint(firstMessageText, "1.0.6+40bcf59");
|
|
235919
236037
|
}
|
|
235920
236038
|
var FINGERPRINT_SALT = "59cf53e54c78";
|
|
235921
236039
|
var init_fingerprint = () => {};
|
|
@@ -235957,7 +236075,7 @@ async function sideQuery(opts) {
|
|
|
235957
236075
|
betas.push(STRUCTURED_OUTPUTS_BETA_HEADER);
|
|
235958
236076
|
}
|
|
235959
236077
|
const messageText = extractFirstUserMessageText(messages);
|
|
235960
|
-
const fingerprint = computeFingerprint(messageText, "1.0.
|
|
236078
|
+
const fingerprint = computeFingerprint(messageText, "1.0.6+40bcf59");
|
|
235961
236079
|
const attributionHeader = getAttributionHeader(fingerprint);
|
|
235962
236080
|
const systemBlocks = [
|
|
235963
236081
|
attributionHeader ? { type: "text", text: attributionHeader } : null,
|
|
@@ -237109,7 +237227,7 @@ async function setupSdkMcpClients(sdkMcpConfigs, sendMcpMessage) {
|
|
|
237109
237227
|
const client2 = new Client({
|
|
237110
237228
|
name: "vivus",
|
|
237111
237229
|
title: "Vivus",
|
|
237112
|
-
version: "1.0.
|
|
237230
|
+
version: "1.0.6+40bcf59",
|
|
237113
237231
|
description: "Anthropic's agentic coding tool",
|
|
237114
237232
|
websiteUrl: PRODUCT_URL
|
|
237115
237233
|
}, {
|
|
@@ -237463,7 +237581,7 @@ var init_client6 = __esm(() => {
|
|
|
237463
237581
|
const client2 = new Client({
|
|
237464
237582
|
name: "vivus",
|
|
237465
237583
|
title: "Vivus",
|
|
237466
|
-
version: "1.0.
|
|
237584
|
+
version: "1.0.6+40bcf59",
|
|
237467
237585
|
description: "Anthropic's agentic coding tool",
|
|
237468
237586
|
websiteUrl: PRODUCT_URL
|
|
237469
237587
|
}, {
|
|
@@ -239521,7 +239639,7 @@ function getInstallationEnv() {
|
|
|
239521
239639
|
return;
|
|
239522
239640
|
}
|
|
239523
239641
|
function getVivusCodeVersion() {
|
|
239524
|
-
return "1.0.
|
|
239642
|
+
return "1.0.6+40bcf59";
|
|
239525
239643
|
}
|
|
239526
239644
|
async function getInstalledVSCodeExtensionVersion(command) {
|
|
239527
239645
|
const { stdout } = await execFileNoThrow(command, ["--list-extensions", "--show-versions"], {
|
|
@@ -272011,7 +272129,7 @@ async function initializeBetaTracing(resource) {
|
|
|
272011
272129
|
});
|
|
272012
272130
|
import_api_logs.logs.setGlobalLoggerProvider(loggerProvider);
|
|
272013
272131
|
setLoggerProvider(loggerProvider);
|
|
272014
|
-
const eventLogger = import_api_logs.logs.getLogger("com.anthropic.vivus_code.events", "1.0.
|
|
272132
|
+
const eventLogger = import_api_logs.logs.getLogger("com.anthropic.vivus_code.events", "1.0.6+40bcf59");
|
|
272015
272133
|
setEventLogger(eventLogger);
|
|
272016
272134
|
process.on("beforeExit", async () => {
|
|
272017
272135
|
await loggerProvider?.forceFlush();
|
|
@@ -272051,7 +272169,7 @@ async function initializeTelemetry() {
|
|
|
272051
272169
|
const platform5 = getPlatform();
|
|
272052
272170
|
const baseAttributes = {
|
|
272053
272171
|
[import_semantic_conventions2.ATTR_SERVICE_NAME]: "vivus",
|
|
272054
|
-
[import_semantic_conventions2.ATTR_SERVICE_VERSION]: "1.0.
|
|
272172
|
+
[import_semantic_conventions2.ATTR_SERVICE_VERSION]: "1.0.6+40bcf59"
|
|
272055
272173
|
};
|
|
272056
272174
|
if (platform5 === "wsl") {
|
|
272057
272175
|
const wslVersion = getWslVersion();
|
|
@@ -272096,7 +272214,7 @@ async function initializeTelemetry() {
|
|
|
272096
272214
|
} catch {}
|
|
272097
272215
|
};
|
|
272098
272216
|
registerCleanup(shutdownTelemetry2);
|
|
272099
|
-
return meterProvider2.getMeter("com.anthropic.vivus_code", "1.0.
|
|
272217
|
+
return meterProvider2.getMeter("com.anthropic.vivus_code", "1.0.6+40bcf59");
|
|
272100
272218
|
}
|
|
272101
272219
|
const meterProvider = new import_sdk_metrics2.MeterProvider({
|
|
272102
272220
|
resource,
|
|
@@ -272116,7 +272234,7 @@ async function initializeTelemetry() {
|
|
|
272116
272234
|
});
|
|
272117
272235
|
import_api_logs.logs.setGlobalLoggerProvider(loggerProvider);
|
|
272118
272236
|
setLoggerProvider(loggerProvider);
|
|
272119
|
-
const eventLogger = import_api_logs.logs.getLogger("com.anthropic.vivus_code.events", "1.0.
|
|
272237
|
+
const eventLogger = import_api_logs.logs.getLogger("com.anthropic.vivus_code.events", "1.0.6+40bcf59");
|
|
272120
272238
|
setEventLogger(eventLogger);
|
|
272121
272239
|
logForDebugging("[3P telemetry] Event logger set successfully");
|
|
272122
272240
|
process.on("beforeExit", async () => {
|
|
@@ -272178,7 +272296,7 @@ Current timeout: ${timeoutMs}ms
|
|
|
272178
272296
|
}
|
|
272179
272297
|
};
|
|
272180
272298
|
registerCleanup(shutdownTelemetry);
|
|
272181
|
-
return meterProvider.getMeter("com.anthropic.vivus_code", "1.0.
|
|
272299
|
+
return meterProvider.getMeter("com.anthropic.vivus_code", "1.0.6+40bcf59");
|
|
272182
272300
|
}
|
|
272183
272301
|
async function flushTelemetry() {
|
|
272184
272302
|
const meterProvider = getMeterProvider();
|
|
@@ -272864,9 +272982,9 @@ async function assertMinVersion() {
|
|
|
272864
272982
|
if (false) {}
|
|
272865
272983
|
try {
|
|
272866
272984
|
const versionConfig = await getDynamicConfig_BLOCKS_ON_INIT("tengu_version_config", { minVersion: "0.0.0" });
|
|
272867
|
-
if (versionConfig.minVersion && lt("1.0.
|
|
272985
|
+
if (versionConfig.minVersion && lt("1.0.6+40bcf59", versionConfig.minVersion)) {
|
|
272868
272986
|
console.error(`
|
|
272869
|
-
It looks like your version of Vivus (${"1.0.
|
|
272987
|
+
It looks like your version of Vivus (${"1.0.6+40bcf59"}) needs an update.
|
|
272870
272988
|
A newer version (${versionConfig.minVersion} or higher) is required to continue.
|
|
272871
272989
|
|
|
272872
272990
|
To update, please run:
|
|
@@ -273082,7 +273200,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
273082
273200
|
logError2(new AutoUpdaterError("Another process is currently installing an update"));
|
|
273083
273201
|
logEvent("tengu_auto_updater_lock_contention", {
|
|
273084
273202
|
pid: process.pid,
|
|
273085
|
-
currentVersion: "1.0.
|
|
273203
|
+
currentVersion: "1.0.6+40bcf59"
|
|
273086
273204
|
});
|
|
273087
273205
|
return "in_progress";
|
|
273088
273206
|
}
|
|
@@ -273091,7 +273209,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
273091
273209
|
if (!env2.isRunningWithBun() && env2.isNpmFromWindowsPath()) {
|
|
273092
273210
|
logError2(new Error("Windows NPM detected in WSL environment"));
|
|
273093
273211
|
logEvent("tengu_auto_updater_windows_npm_in_wsl", {
|
|
273094
|
-
currentVersion: "1.0.
|
|
273212
|
+
currentVersion: "1.0.6+40bcf59"
|
|
273095
273213
|
});
|
|
273096
273214
|
console.error(`
|
|
273097
273215
|
Error: Windows NPM detected in WSL
|
|
@@ -273624,7 +273742,7 @@ function detectLinuxGlobPatternWarnings() {
|
|
|
273624
273742
|
}
|
|
273625
273743
|
async function getDoctorDiagnostic() {
|
|
273626
273744
|
const installationType = await getCurrentInstallationType();
|
|
273627
|
-
const version2 = typeof MACRO !== "undefined" ? "1.0.
|
|
273745
|
+
const version2 = typeof MACRO !== "undefined" ? "1.0.6+40bcf59" : "unknown";
|
|
273628
273746
|
const installationPath = await getInstallationPath();
|
|
273629
273747
|
const invokedBinary = getInvokedBinary();
|
|
273630
273748
|
const multipleInstallations = await detectMultipleInstallations();
|
|
@@ -274557,8 +274675,8 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
274557
274675
|
const maxVersion = await getMaxVersion();
|
|
274558
274676
|
if (maxVersion && gt(version2, maxVersion)) {
|
|
274559
274677
|
logForDebugging(`Native installer: maxVersion ${maxVersion} is set, capping update from ${version2} to ${maxVersion}`);
|
|
274560
|
-
if (gte("1.0.
|
|
274561
|
-
logForDebugging(`Native installer: current version ${"1.0.
|
|
274678
|
+
if (gte("1.0.6+40bcf59", maxVersion)) {
|
|
274679
|
+
logForDebugging(`Native installer: current version ${"1.0.6+40bcf59"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
274562
274680
|
logEvent("tengu_native_update_skipped_max_version", {
|
|
274563
274681
|
latency_ms: Date.now() - startTime,
|
|
274564
274682
|
max_version: maxVersion,
|
|
@@ -274569,7 +274687,7 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
274569
274687
|
version2 = maxVersion;
|
|
274570
274688
|
}
|
|
274571
274689
|
}
|
|
274572
|
-
if (!forceReinstall && version2 === "1.0.
|
|
274690
|
+
if (!forceReinstall && version2 === "1.0.6+40bcf59" && await versionIsAvailable(version2) && await isPossibleVivusBinary(executablePath)) {
|
|
274573
274691
|
logForDebugging(`Found ${version2} at ${executablePath}, skipping install`);
|
|
274574
274692
|
logEvent("tengu_native_update_complete", {
|
|
274575
274693
|
latency_ms: Date.now() - startTime,
|
|
@@ -330609,7 +330727,7 @@ function getAnthropicEnvMetadata() {
|
|
|
330609
330727
|
function getBuildAgeMinutes() {
|
|
330610
330728
|
if (false)
|
|
330611
330729
|
;
|
|
330612
|
-
const buildTime = new Date("2026-06-
|
|
330730
|
+
const buildTime = new Date("2026-06-05T23:17:49.323Z").getTime();
|
|
330613
330731
|
if (isNaN(buildTime))
|
|
330614
330732
|
return;
|
|
330615
330733
|
return Math.floor((Date.now() - buildTime) / 60000);
|
|
@@ -360760,6 +360878,15 @@ function getDefaultOptionForUser(fastMode = false) {
|
|
|
360760
360878
|
descriptionForModel: `Default model (currently ${currentModel})`
|
|
360761
360879
|
};
|
|
360762
360880
|
}
|
|
360881
|
+
if (!isFirstPartyAnthropicBaseUrl()) {
|
|
360882
|
+
const currentModel = renderDefaultModelSetting(getDefaultMainLoopModelSetting());
|
|
360883
|
+
return {
|
|
360884
|
+
value: null,
|
|
360885
|
+
label: "Default (recommended)",
|
|
360886
|
+
description: `Use the default model (currently ${currentModel})`,
|
|
360887
|
+
descriptionForModel: `Default model (currently ${currentModel})`
|
|
360888
|
+
};
|
|
360889
|
+
}
|
|
360763
360890
|
if (isVivusAISubscriber()) {
|
|
360764
360891
|
return {
|
|
360765
360892
|
value: null,
|
|
@@ -360919,6 +361046,12 @@ function getOpusPlanOption() {
|
|
|
360919
361046
|
};
|
|
360920
361047
|
}
|
|
360921
361048
|
function getModelOptionsBase(fastMode = false) {
|
|
361049
|
+
if (!isFirstPartyAnthropicBaseUrl()) {
|
|
361050
|
+
const proxyCache = getGlobalConfig().additionalModelOptionsCache ?? [];
|
|
361051
|
+
if (proxyCache.length > 0) {
|
|
361052
|
+
return [getDefaultOptionForUser(fastMode), ...proxyCache];
|
|
361053
|
+
}
|
|
361054
|
+
}
|
|
360922
361055
|
if (process.env.USER_TYPE === "ant") {
|
|
360923
361056
|
const antModelOptions = getAntModels().map((m) => ({
|
|
360924
361057
|
value: m.alias,
|
|
@@ -377824,7 +377957,7 @@ var init_filesystem = __esm(() => {
|
|
|
377824
377957
|
});
|
|
377825
377958
|
getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
|
|
377826
377959
|
const nonce = randomBytes17(16).toString("hex");
|
|
377827
|
-
return join106(getVivusTempDir(), "bundled-skills", "1.0.
|
|
377960
|
+
return join106(getVivusTempDir(), "bundled-skills", "1.0.6+40bcf59", nonce);
|
|
377828
377961
|
});
|
|
377829
377962
|
getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
|
|
377830
377963
|
});
|
|
@@ -379584,7 +379717,7 @@ function Feedback({
|
|
|
379584
379717
|
platform: env2.platform,
|
|
379585
379718
|
gitRepo: envInfo.isGit,
|
|
379586
379719
|
terminal: env2.terminal,
|
|
379587
|
-
version: "1.0.
|
|
379720
|
+
version: "1.0.6+40bcf59",
|
|
379588
379721
|
transcript: normalizeMessagesForAPI(messages),
|
|
379589
379722
|
errors: sanitizedErrors,
|
|
379590
379723
|
lastApiRequest: getLastAPIRequest(),
|
|
@@ -379776,7 +379909,7 @@ function Feedback({
|
|
|
379776
379909
|
", ",
|
|
379777
379910
|
env2.terminal,
|
|
379778
379911
|
", v",
|
|
379779
|
-
"1.0.
|
|
379912
|
+
"1.0.6+40bcf59"
|
|
379780
379913
|
]
|
|
379781
379914
|
}, undefined, true, undefined, this)
|
|
379782
379915
|
]
|
|
@@ -379882,7 +380015,7 @@ ${sanitizedDescription}
|
|
|
379882
380015
|
` + `**Environment Info**
|
|
379883
380016
|
` + `- Platform: ${env2.platform}
|
|
379884
380017
|
` + `- Terminal: ${env2.terminal}
|
|
379885
|
-
` + `- Version: ${"1.0.
|
|
380018
|
+
` + `- Version: ${"1.0.6+40bcf59"}
|
|
379886
380019
|
` + `- Feedback ID: ${feedbackId}
|
|
379887
380020
|
` + `
|
|
379888
380021
|
**Errors**
|
|
@@ -383013,7 +383146,7 @@ function buildPrimarySection() {
|
|
|
383013
383146
|
}, undefined, false, undefined, this);
|
|
383014
383147
|
return [{
|
|
383015
383148
|
label: "Version",
|
|
383016
|
-
value: "1.0.
|
|
383149
|
+
value: "1.0.6+40bcf59"
|
|
383017
383150
|
}, {
|
|
383018
383151
|
label: "Session name",
|
|
383019
383152
|
value: nameValue
|
|
@@ -386764,7 +386897,7 @@ function Config({
|
|
|
386764
386897
|
}
|
|
386765
386898
|
}, undefined, false, undefined, this)
|
|
386766
386899
|
}, undefined, false, undefined, this) : showSubmenu === "ChannelDowngrade" ? /* @__PURE__ */ jsx_dev_runtime178.jsxDEV(ChannelDowngradeDialog, {
|
|
386767
|
-
currentVersion: "1.0.
|
|
386900
|
+
currentVersion: "1.0.6+40bcf59",
|
|
386768
386901
|
onChoice: (choice) => {
|
|
386769
386902
|
setShowSubmenu(null);
|
|
386770
386903
|
setTabsHidden(false);
|
|
@@ -386776,7 +386909,7 @@ function Config({
|
|
|
386776
386909
|
autoUpdatesChannel: "stable"
|
|
386777
386910
|
};
|
|
386778
386911
|
if (choice === "stay") {
|
|
386779
|
-
newSettings.minimumVersion = "1.0.
|
|
386912
|
+
newSettings.minimumVersion = "1.0.6+40bcf59";
|
|
386780
386913
|
}
|
|
386781
386914
|
updateSettingsForSource("userSettings", newSettings);
|
|
386782
386915
|
setSettingsData((prev_27) => ({
|
|
@@ -394862,7 +394995,7 @@ function HelpV2(t0) {
|
|
|
394862
394995
|
let t6;
|
|
394863
394996
|
if ($2[31] !== tabs) {
|
|
394864
394997
|
t6 = /* @__PURE__ */ jsx_dev_runtime205.jsxDEV(Tabs, {
|
|
394865
|
-
title: `Vivus v${"1.0.
|
|
394998
|
+
title: `Vivus v${"1.0.6+40bcf59"}`,
|
|
394866
394999
|
color: "professionalBlue",
|
|
394867
395000
|
defaultTab: "general",
|
|
394868
395001
|
children: tabs
|
|
@@ -419087,7 +419220,7 @@ function getAllReleaseNotes(changelogContent = getStoredChangelogFromMemory()) {
|
|
|
419087
419220
|
return [];
|
|
419088
419221
|
}
|
|
419089
419222
|
}
|
|
419090
|
-
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.0.
|
|
419223
|
+
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.0.6+40bcf59") {
|
|
419091
419224
|
if (process.env.USER_TYPE === "ant") {
|
|
419092
419225
|
const changelog = "";
|
|
419093
419226
|
if (changelog) {
|
|
@@ -419114,7 +419247,7 @@ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.0.4+b41
|
|
|
419114
419247
|
releaseNotes
|
|
419115
419248
|
};
|
|
419116
419249
|
}
|
|
419117
|
-
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.0.
|
|
419250
|
+
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.0.6+40bcf59") {
|
|
419118
419251
|
if (process.env.USER_TYPE === "ant") {
|
|
419119
419252
|
const changelog = "";
|
|
419120
419253
|
if (changelog) {
|
|
@@ -420284,7 +420417,7 @@ function getRecentActivitySync() {
|
|
|
420284
420417
|
return cachedActivity;
|
|
420285
420418
|
}
|
|
420286
420419
|
function getLogoDisplayData() {
|
|
420287
|
-
const version2 = process.env.DEMO_VERSION ?? "1.0.
|
|
420420
|
+
const version2 = process.env.DEMO_VERSION ?? "1.0.6+40bcf59";
|
|
420288
420421
|
const serverUrl = getDirectConnectServerUrl();
|
|
420289
420422
|
const displayPath = process.env.DEMO_VERSION ? "/code/vivus" : getDisplayPath(getCwd());
|
|
420290
420423
|
const cwd2 = serverUrl ? `${displayPath} in ${serverUrl.replace(/^https?:\/\//, "")}` : displayPath;
|
|
@@ -421811,7 +421944,7 @@ function LogoV2() {
|
|
|
421811
421944
|
if ($2[2] === Symbol.for("react.memo_cache_sentinel")) {
|
|
421812
421945
|
t2 = () => {
|
|
421813
421946
|
const currentConfig = getGlobalConfig();
|
|
421814
|
-
if (currentConfig.lastReleaseNotesSeen === "1.0.
|
|
421947
|
+
if (currentConfig.lastReleaseNotesSeen === "1.0.6+40bcf59") {
|
|
421815
421948
|
return;
|
|
421816
421949
|
}
|
|
421817
421950
|
saveGlobalConfig(_temp329);
|
|
@@ -422487,12 +422620,12 @@ function LogoV2() {
|
|
|
422487
422620
|
return t41;
|
|
422488
422621
|
}
|
|
422489
422622
|
function _temp329(current) {
|
|
422490
|
-
if (current.lastReleaseNotesSeen === "1.0.
|
|
422623
|
+
if (current.lastReleaseNotesSeen === "1.0.6+40bcf59") {
|
|
422491
422624
|
return current;
|
|
422492
422625
|
}
|
|
422493
422626
|
return {
|
|
422494
422627
|
...current,
|
|
422495
|
-
lastReleaseNotesSeen: "1.0.
|
|
422628
|
+
lastReleaseNotesSeen: "1.0.6+40bcf59"
|
|
422496
422629
|
};
|
|
422497
422630
|
}
|
|
422498
422631
|
function _temp245(s_0) {
|
|
@@ -448789,7 +448922,7 @@ async function captureMemoryDiagnostics(trigger, dumpNumber = 0) {
|
|
|
448789
448922
|
smapsRollup,
|
|
448790
448923
|
platform: process.platform,
|
|
448791
448924
|
nodeVersion: process.version,
|
|
448792
|
-
ccVersion: "1.0.
|
|
448925
|
+
ccVersion: "1.0.6+40bcf59"
|
|
448793
448926
|
};
|
|
448794
448927
|
}
|
|
448795
448928
|
async function performHeapDump(trigger = "manual", dumpNumber = 0) {
|
|
@@ -449375,7 +449508,7 @@ var init_bridge_kick = __esm(() => {
|
|
|
449375
449508
|
var call56 = async () => {
|
|
449376
449509
|
return {
|
|
449377
449510
|
type: "text",
|
|
449378
|
-
value: `${"1.0.
|
|
449511
|
+
value: `${"1.0.6+40bcf59"} (built ${"2026-06-05T23:17:49.323Z"})`
|
|
449379
449512
|
};
|
|
449380
449513
|
}, version2, version_default;
|
|
449381
449514
|
var init_version = __esm(() => {
|
|
@@ -458338,7 +458471,7 @@ function generateHtmlReport(data, insights) {
|
|
|
458338
458471
|
</html>`;
|
|
458339
458472
|
}
|
|
458340
458473
|
function buildExportData(data, insights, facets, remoteStats) {
|
|
458341
|
-
const version3 = typeof MACRO !== "undefined" ? "1.0.
|
|
458474
|
+
const version3 = typeof MACRO !== "undefined" ? "1.0.6+40bcf59" : "unknown";
|
|
458342
458475
|
const remote_hosts_collected = remoteStats?.hosts.filter((h2) => h2.sessionCount > 0).map((h2) => h2.name);
|
|
458343
458476
|
const facets_summary = {
|
|
458344
458477
|
total: facets.size,
|
|
@@ -462447,7 +462580,7 @@ var init_sessionStorage = __esm(() => {
|
|
|
462447
462580
|
init_settings2();
|
|
462448
462581
|
init_slowOperations();
|
|
462449
462582
|
init_uuid();
|
|
462450
|
-
VERSION5 = typeof MACRO !== "undefined" ? "1.0.
|
|
462583
|
+
VERSION5 = typeof MACRO !== "undefined" ? "1.0.6+40bcf59" : "unknown";
|
|
462451
462584
|
MAX_TOMBSTONE_REWRITE_BYTES = 50 * 1024 * 1024;
|
|
462452
462585
|
SKIP_FIRST_PROMPT_PATTERN = /^(?:\s*<[a-z][\w-]*[\s>]|\[Request interrupted by user[^\]]*\])/;
|
|
462453
462586
|
EPHEMERAL_PROGRESS_TYPES = new Set([
|
|
@@ -465318,7 +465451,7 @@ function buildSystemInitMessage(inputs) {
|
|
|
465318
465451
|
slash_commands: inputs.commands.filter((c4) => c4.userInvocable !== false).map((c4) => c4.name),
|
|
465319
465452
|
apiKeySource: getAnthropicApiKeyWithSource().source,
|
|
465320
465453
|
betas: getSdkBetas(),
|
|
465321
|
-
vivus_code_version: "1.0.
|
|
465454
|
+
vivus_code_version: "1.0.6+40bcf59",
|
|
465322
465455
|
output_style: outputStyle2,
|
|
465323
465456
|
agents: inputs.agents.map((agent) => agent.agentType),
|
|
465324
465457
|
skills: inputs.skills.filter((s) => s.userInvocable !== false).map((skill) => skill.name),
|
|
@@ -479946,7 +480079,7 @@ var init_useVoiceEnabled = __esm(() => {
|
|
|
479946
480079
|
function getSemverPart(version3) {
|
|
479947
480080
|
return `${import_semver13.major(version3, { loose: true })}.${import_semver13.minor(version3, { loose: true })}.${import_semver13.patch(version3, { loose: true })}`;
|
|
479948
480081
|
}
|
|
479949
|
-
function useUpdateNotification(updatedVersion, initialVersion = "1.0.
|
|
480082
|
+
function useUpdateNotification(updatedVersion, initialVersion = "1.0.6+40bcf59") {
|
|
479950
480083
|
const [lastNotifiedSemver, setLastNotifiedSemver] = import_react227.useState(() => getSemverPart(initialVersion));
|
|
479951
480084
|
if (!updatedVersion) {
|
|
479952
480085
|
return null;
|
|
@@ -479986,7 +480119,7 @@ function AutoUpdater({
|
|
|
479986
480119
|
return;
|
|
479987
480120
|
}
|
|
479988
480121
|
if (false) {}
|
|
479989
|
-
const currentVersion = "1.0.
|
|
480122
|
+
const currentVersion = "1.0.6+40bcf59";
|
|
479990
480123
|
const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
|
|
479991
480124
|
let latestVersion = await getLatestVersion(channel);
|
|
479992
480125
|
const isDisabled = isAutoUpdaterDisabled();
|
|
@@ -480199,12 +480332,12 @@ function NativeAutoUpdater({
|
|
|
480199
480332
|
logEvent("tengu_native_auto_updater_start", {});
|
|
480200
480333
|
try {
|
|
480201
480334
|
const maxVersion = await getMaxVersion();
|
|
480202
|
-
if (maxVersion && gt("1.0.
|
|
480335
|
+
if (maxVersion && gt("1.0.6+40bcf59", maxVersion)) {
|
|
480203
480336
|
const msg = await getMaxVersionMessage();
|
|
480204
480337
|
setMaxVersionIssue(msg ?? "affects your version");
|
|
480205
480338
|
}
|
|
480206
480339
|
const result = await installLatest(channel);
|
|
480207
|
-
const currentVersion = "1.0.
|
|
480340
|
+
const currentVersion = "1.0.6+40bcf59";
|
|
480208
480341
|
const latencyMs = Date.now() - startTime;
|
|
480209
480342
|
if (result.lockFailed) {
|
|
480210
480343
|
logEvent("tengu_native_auto_updater_lock_contention", {
|
|
@@ -480341,17 +480474,17 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
480341
480474
|
const maxVersion = await getMaxVersion();
|
|
480342
480475
|
if (maxVersion && latest && gt(latest, maxVersion)) {
|
|
480343
480476
|
logForDebugging(`PackageManagerAutoUpdater: maxVersion ${maxVersion} is set, capping update from ${latest} to ${maxVersion}`);
|
|
480344
|
-
if (gte("1.0.
|
|
480345
|
-
logForDebugging(`PackageManagerAutoUpdater: current version ${"1.0.
|
|
480477
|
+
if (gte("1.0.6+40bcf59", maxVersion)) {
|
|
480478
|
+
logForDebugging(`PackageManagerAutoUpdater: current version ${"1.0.6+40bcf59"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
480346
480479
|
setUpdateAvailable(false);
|
|
480347
480480
|
return;
|
|
480348
480481
|
}
|
|
480349
480482
|
latest = maxVersion;
|
|
480350
480483
|
}
|
|
480351
|
-
const hasUpdate = latest && !gte("1.0.
|
|
480484
|
+
const hasUpdate = latest && !gte("1.0.6+40bcf59", latest) && !shouldSkipVersion(latest);
|
|
480352
480485
|
setUpdateAvailable(!!hasUpdate);
|
|
480353
480486
|
if (hasUpdate) {
|
|
480354
|
-
logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.0.
|
|
480487
|
+
logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.0.6+40bcf59"} -> ${latest}`);
|
|
480355
480488
|
}
|
|
480356
480489
|
};
|
|
480357
480490
|
$2[0] = t1;
|
|
@@ -480385,7 +480518,7 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
480385
480518
|
wrap: "truncate",
|
|
480386
480519
|
children: [
|
|
480387
480520
|
"currentVersion: ",
|
|
480388
|
-
"1.0.
|
|
480521
|
+
"1.0.6+40bcf59"
|
|
480389
480522
|
]
|
|
480390
480523
|
}, undefined, true, undefined, this);
|
|
480391
480524
|
$2[3] = verbose;
|
|
@@ -488553,7 +488686,7 @@ function buildStatusLineCommandInput(permissionMode, exceeds200kTokens, settings
|
|
|
488553
488686
|
project_dir: getOriginalCwd(),
|
|
488554
488687
|
added_dirs: addedDirs
|
|
488555
488688
|
},
|
|
488556
|
-
version: "1.0.
|
|
488689
|
+
version: "1.0.6+40bcf59",
|
|
488557
488690
|
output_style: {
|
|
488558
488691
|
name: outputStyleName
|
|
488559
488692
|
},
|
|
@@ -500037,7 +500170,7 @@ async function submitTranscriptShare(messages, trigger, appearanceId) {
|
|
|
500037
500170
|
} catch {}
|
|
500038
500171
|
const data = {
|
|
500039
500172
|
trigger,
|
|
500040
|
-
version: "1.0.
|
|
500173
|
+
version: "1.0.6+40bcf59",
|
|
500041
500174
|
platform: process.platform,
|
|
500042
500175
|
transcript,
|
|
500043
500176
|
subagentTranscripts: Object.keys(subagentTranscripts).length > 0 ? subagentTranscripts : undefined,
|
|
@@ -511443,7 +511576,7 @@ function WelcomeV2() {
|
|
|
511443
511576
|
dimColor: true,
|
|
511444
511577
|
children: [
|
|
511445
511578
|
"v",
|
|
511446
|
-
"1.0.
|
|
511579
|
+
"1.0.6+40bcf59",
|
|
511447
511580
|
" "
|
|
511448
511581
|
]
|
|
511449
511582
|
}, undefined, true, undefined, this)
|
|
@@ -511643,7 +511776,7 @@ function WelcomeV2() {
|
|
|
511643
511776
|
dimColor: true,
|
|
511644
511777
|
children: [
|
|
511645
511778
|
"v",
|
|
511646
|
-
"1.0.
|
|
511779
|
+
"1.0.6+40bcf59",
|
|
511647
511780
|
" "
|
|
511648
511781
|
]
|
|
511649
511782
|
}, undefined, true, undefined, this)
|
|
@@ -511869,7 +512002,7 @@ function AppleTerminalWelcomeV2(t0) {
|
|
|
511869
512002
|
dimColor: true,
|
|
511870
512003
|
children: [
|
|
511871
512004
|
"v",
|
|
511872
|
-
"1.0.
|
|
512005
|
+
"1.0.6+40bcf59",
|
|
511873
512006
|
" "
|
|
511874
512007
|
]
|
|
511875
512008
|
}, undefined, true, undefined, this);
|
|
@@ -512123,7 +512256,7 @@ function AppleTerminalWelcomeV2(t0) {
|
|
|
512123
512256
|
dimColor: true,
|
|
512124
512257
|
children: [
|
|
512125
512258
|
"v",
|
|
512126
|
-
"1.0.
|
|
512259
|
+
"1.0.6+40bcf59",
|
|
512127
512260
|
" "
|
|
512128
512261
|
]
|
|
512129
512262
|
}, undefined, true, undefined, this);
|
|
@@ -515187,7 +515320,7 @@ function appendToLog(path25, message) {
|
|
|
515187
515320
|
cwd: getFsImplementation().cwd(),
|
|
515188
515321
|
userType: process.env.USER_TYPE,
|
|
515189
515322
|
sessionId: getSessionId(),
|
|
515190
|
-
version: "1.0.
|
|
515323
|
+
version: "1.0.6+40bcf59"
|
|
515191
515324
|
};
|
|
515192
515325
|
getLogWriter(path25).write(messageWithTimestamp);
|
|
515193
515326
|
}
|
|
@@ -519172,8 +519305,8 @@ async function getEnvLessBridgeConfig() {
|
|
|
519172
519305
|
}
|
|
519173
519306
|
async function checkEnvLessBridgeMinVersion() {
|
|
519174
519307
|
const cfg = await getEnvLessBridgeConfig();
|
|
519175
|
-
if (cfg.min_version && lt("1.0.
|
|
519176
|
-
return `Your version of Vivus (${"1.0.
|
|
519308
|
+
if (cfg.min_version && lt("1.0.6+40bcf59", cfg.min_version)) {
|
|
519309
|
+
return `Your version of Vivus (${"1.0.6+40bcf59"}) is too old for Remote Control.
|
|
519177
519310
|
Version ${cfg.min_version} or higher is required. Run \`vivus update\` to update.`;
|
|
519178
519311
|
}
|
|
519179
519312
|
return null;
|
|
@@ -519647,7 +519780,7 @@ async function initBridgeCore(params) {
|
|
|
519647
519780
|
const rawApi = createBridgeApiClient({
|
|
519648
519781
|
baseUrl,
|
|
519649
519782
|
getAccessToken,
|
|
519650
|
-
runnerVersion: "1.0.
|
|
519783
|
+
runnerVersion: "1.0.6+40bcf59",
|
|
519651
519784
|
onDebug: logForDebugging,
|
|
519652
519785
|
onAuth401,
|
|
519653
519786
|
getTrustedDeviceToken
|
|
@@ -525311,7 +525444,7 @@ async function startMCPServer(cwd3, debug2, verbose) {
|
|
|
525311
525444
|
setCwd(cwd3);
|
|
525312
525445
|
const server = new Server({
|
|
525313
525446
|
name: "vivus/tengu",
|
|
525314
|
-
version: "1.0.
|
|
525447
|
+
version: "1.0.6+40bcf59"
|
|
525315
525448
|
}, {
|
|
525316
525449
|
capabilities: {
|
|
525317
525450
|
tools: {}
|
|
@@ -526922,7 +527055,7 @@ __export(exports_update, {
|
|
|
526922
527055
|
});
|
|
526923
527056
|
async function update() {
|
|
526924
527057
|
logEvent("tengu_update_check", {});
|
|
526925
|
-
writeToStdout(`Current version: ${"1.0.
|
|
527058
|
+
writeToStdout(`Current version: ${"1.0.6+40bcf59"}
|
|
526926
527059
|
`);
|
|
526927
527060
|
const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
|
|
526928
527061
|
writeToStdout(`Checking for updates to ${channel} version...
|
|
@@ -526997,8 +527130,8 @@ async function update() {
|
|
|
526997
527130
|
writeToStdout(`Vivus is managed by Homebrew.
|
|
526998
527131
|
`);
|
|
526999
527132
|
const latest = await getLatestVersion(channel);
|
|
527000
|
-
if (latest && !gte("1.0.
|
|
527001
|
-
writeToStdout(`Update available: ${"1.0.
|
|
527133
|
+
if (latest && !gte("1.0.6+40bcf59", latest)) {
|
|
527134
|
+
writeToStdout(`Update available: ${"1.0.6+40bcf59"} → ${latest}
|
|
527002
527135
|
`);
|
|
527003
527136
|
writeToStdout(`
|
|
527004
527137
|
`);
|
|
@@ -527014,8 +527147,8 @@ async function update() {
|
|
|
527014
527147
|
writeToStdout(`Vivus is managed by winget.
|
|
527015
527148
|
`);
|
|
527016
527149
|
const latest = await getLatestVersion(channel);
|
|
527017
|
-
if (latest && !gte("1.0.
|
|
527018
|
-
writeToStdout(`Update available: ${"1.0.
|
|
527150
|
+
if (latest && !gte("1.0.6+40bcf59", latest)) {
|
|
527151
|
+
writeToStdout(`Update available: ${"1.0.6+40bcf59"} → ${latest}
|
|
527019
527152
|
`);
|
|
527020
527153
|
writeToStdout(`
|
|
527021
527154
|
`);
|
|
@@ -527031,8 +527164,8 @@ async function update() {
|
|
|
527031
527164
|
writeToStdout(`Vivus is managed by apk.
|
|
527032
527165
|
`);
|
|
527033
527166
|
const latest = await getLatestVersion(channel);
|
|
527034
|
-
if (latest && !gte("1.0.
|
|
527035
|
-
writeToStdout(`Update available: ${"1.0.
|
|
527167
|
+
if (latest && !gte("1.0.6+40bcf59", latest)) {
|
|
527168
|
+
writeToStdout(`Update available: ${"1.0.6+40bcf59"} → ${latest}
|
|
527036
527169
|
`);
|
|
527037
527170
|
writeToStdout(`
|
|
527038
527171
|
`);
|
|
@@ -527097,11 +527230,11 @@ async function update() {
|
|
|
527097
527230
|
`);
|
|
527098
527231
|
await gracefulShutdown(1);
|
|
527099
527232
|
}
|
|
527100
|
-
if (result.latestVersion === "1.0.
|
|
527101
|
-
writeToStdout(source_default.green(`Vivus is up to date (${"1.0.
|
|
527233
|
+
if (result.latestVersion === "1.0.6+40bcf59") {
|
|
527234
|
+
writeToStdout(source_default.green(`Vivus is up to date (${"1.0.6+40bcf59"})`) + `
|
|
527102
527235
|
`);
|
|
527103
527236
|
} else {
|
|
527104
|
-
writeToStdout(source_default.green(`Successfully updated from ${"1.0.
|
|
527237
|
+
writeToStdout(source_default.green(`Successfully updated from ${"1.0.6+40bcf59"} to version ${result.latestVersion}`) + `
|
|
527105
527238
|
`);
|
|
527106
527239
|
await regenerateCompletionCache();
|
|
527107
527240
|
}
|
|
@@ -527158,12 +527291,12 @@ async function update() {
|
|
|
527158
527291
|
`);
|
|
527159
527292
|
await gracefulShutdown(1);
|
|
527160
527293
|
}
|
|
527161
|
-
if (latestVersion === "1.0.
|
|
527162
|
-
writeToStdout(source_default.green(`Vivus is up to date (${"1.0.
|
|
527294
|
+
if (latestVersion === "1.0.6+40bcf59") {
|
|
527295
|
+
writeToStdout(source_default.green(`Vivus is up to date (${"1.0.6+40bcf59"})`) + `
|
|
527163
527296
|
`);
|
|
527164
527297
|
await gracefulShutdown(0);
|
|
527165
527298
|
}
|
|
527166
|
-
writeToStdout(`New version available: ${latestVersion} (current: ${"1.0.
|
|
527299
|
+
writeToStdout(`New version available: ${latestVersion} (current: ${"1.0.6+40bcf59"})
|
|
527167
527300
|
`);
|
|
527168
527301
|
writeToStdout(`Installing update...
|
|
527169
527302
|
`);
|
|
@@ -527208,7 +527341,7 @@ async function update() {
|
|
|
527208
527341
|
logForDebugging(`update: Installation status: ${status2}`);
|
|
527209
527342
|
switch (status2) {
|
|
527210
527343
|
case "success":
|
|
527211
|
-
writeToStdout(source_default.green(`Successfully updated from ${"1.0.
|
|
527344
|
+
writeToStdout(source_default.green(`Successfully updated from ${"1.0.6+40bcf59"} to version ${latestVersion}`) + `
|
|
527212
527345
|
`);
|
|
527213
527346
|
await regenerateCompletionCache();
|
|
527214
527347
|
break;
|
|
@@ -527571,6 +527704,7 @@ init_debug();
|
|
|
527571
527704
|
init_http2();
|
|
527572
527705
|
init_log3();
|
|
527573
527706
|
init_providers();
|
|
527707
|
+
init_proxyModelLabels();
|
|
527574
527708
|
var bootstrapResponseSchema = lazySchema(() => exports_external2.object({
|
|
527575
527709
|
client_data: exports_external2.record(exports_external2.unknown()).nullish(),
|
|
527576
527710
|
additional_model_options: exports_external2.array(exports_external2.object({
|
|
@@ -527636,15 +527770,74 @@ async function fetchBootstrapAPI() {
|
|
|
527636
527770
|
throw error41;
|
|
527637
527771
|
}
|
|
527638
527772
|
}
|
|
527773
|
+
async function fetchProxyModelOptions() {
|
|
527774
|
+
if (isFirstPartyAnthropicBaseUrl())
|
|
527775
|
+
return null;
|
|
527776
|
+
const baseUrl = process.env.ANTHROPIC_BASE_URL;
|
|
527777
|
+
if (!baseUrl)
|
|
527778
|
+
return null;
|
|
527779
|
+
let tagsUrl;
|
|
527780
|
+
try {
|
|
527781
|
+
tagsUrl = new URL("/api/tags", baseUrl).toString();
|
|
527782
|
+
} catch {
|
|
527783
|
+
return null;
|
|
527784
|
+
}
|
|
527785
|
+
try {
|
|
527786
|
+
logForDebugging(`[Bootstrap] Probing proxy model list: ${tagsUrl}`);
|
|
527787
|
+
const response = await axios_default.get(tagsUrl, { timeout: 5000 });
|
|
527788
|
+
const data = response.data;
|
|
527789
|
+
const models = Array.isArray(data?.models) ? data.models : [];
|
|
527790
|
+
if (models.length === 0) {
|
|
527791
|
+
logForDebugging("[Bootstrap] Proxy returned empty model list");
|
|
527792
|
+
return [];
|
|
527793
|
+
}
|
|
527794
|
+
const options2 = [];
|
|
527795
|
+
const seen = new Set;
|
|
527796
|
+
for (const m of models) {
|
|
527797
|
+
const name = typeof m.name === "string" ? m.name : null;
|
|
527798
|
+
if (!name || seen.has(name))
|
|
527799
|
+
continue;
|
|
527800
|
+
seen.add(name);
|
|
527801
|
+
const details = m.details ?? {};
|
|
527802
|
+
const family = typeof details.family === "string" ? details.family : null;
|
|
527803
|
+
const paramSize = typeof details.parameter_size === "string" ? details.parameter_size : null;
|
|
527804
|
+
const { label, description } = lookupProxyModelLabel(name, {
|
|
527805
|
+
family,
|
|
527806
|
+
parameterSize: paramSize
|
|
527807
|
+
});
|
|
527808
|
+
options2.push({
|
|
527809
|
+
value: name,
|
|
527810
|
+
label,
|
|
527811
|
+
description
|
|
527812
|
+
});
|
|
527813
|
+
}
|
|
527814
|
+
logForDebugging(`[Bootstrap] Proxy model list: ${options2.map((o2) => o2.value).join(", ")}`);
|
|
527815
|
+
return options2;
|
|
527816
|
+
} catch (error41) {
|
|
527817
|
+
logForDebugging(`[Bootstrap] Proxy /api/tags fetch failed: ${axios_default.isAxiosError(error41) ? error41.response?.status ?? error41.code : "unknown"}`);
|
|
527818
|
+
return null;
|
|
527819
|
+
}
|
|
527820
|
+
}
|
|
527639
527821
|
async function fetchBootstrapData() {
|
|
527640
527822
|
try {
|
|
527641
|
-
const response = await
|
|
527642
|
-
|
|
527823
|
+
const [response, proxyModels] = await Promise.all([
|
|
527824
|
+
fetchBootstrapAPI().catch(() => null),
|
|
527825
|
+
fetchProxyModelOptions()
|
|
527826
|
+
]);
|
|
527827
|
+
if (!response && !proxyModels)
|
|
527643
527828
|
return;
|
|
527644
|
-
const clientData = response
|
|
527645
|
-
const
|
|
527829
|
+
const clientData = response?.client_data ?? null;
|
|
527830
|
+
const apiOptions = response?.additional_model_options ?? [];
|
|
527831
|
+
const merged = [...apiOptions];
|
|
527832
|
+
if (proxyModels) {
|
|
527833
|
+
for (const opt of proxyModels) {
|
|
527834
|
+
if (!merged.some((existing) => existing.value === opt.value)) {
|
|
527835
|
+
merged.push(opt);
|
|
527836
|
+
}
|
|
527837
|
+
}
|
|
527838
|
+
}
|
|
527646
527839
|
const config4 = getGlobalConfig();
|
|
527647
|
-
if (isEqual_default(config4.clientDataCache, clientData) && isEqual_default(config4.additionalModelOptionsCache,
|
|
527840
|
+
if (isEqual_default(config4.clientDataCache, clientData) && isEqual_default(config4.additionalModelOptionsCache, merged)) {
|
|
527648
527841
|
logForDebugging("[Bootstrap] Cache unchanged, skipping write");
|
|
527649
527842
|
return;
|
|
527650
527843
|
}
|
|
@@ -527652,7 +527845,7 @@ async function fetchBootstrapData() {
|
|
|
527652
527845
|
saveGlobalConfig((current) => ({
|
|
527653
527846
|
...current,
|
|
527654
527847
|
clientDataCache: clientData,
|
|
527655
|
-
additionalModelOptionsCache:
|
|
527848
|
+
additionalModelOptionsCache: merged
|
|
527656
527849
|
}));
|
|
527657
527850
|
} catch (error41) {
|
|
527658
527851
|
logError2(error41);
|
|
@@ -528178,7 +528371,7 @@ function completeOnboarding() {
|
|
|
528178
528371
|
saveGlobalConfig((current) => ({
|
|
528179
528372
|
...current,
|
|
528180
528373
|
hasCompletedOnboarding: true,
|
|
528181
|
-
lastOnboardingVersion: "1.0.
|
|
528374
|
+
lastOnboardingVersion: "1.0.6+40bcf59"
|
|
528182
528375
|
}));
|
|
528183
528376
|
}
|
|
528184
528377
|
function showDialog(root2, renderer) {
|
|
@@ -532267,7 +532460,7 @@ ${customInstructions}` : customInstructions;
|
|
|
532267
532460
|
}
|
|
532268
532461
|
}
|
|
532269
532462
|
logForDiagnosticsNoPII("info", "started", {
|
|
532270
|
-
version: "1.0.
|
|
532463
|
+
version: "1.0.6+40bcf59",
|
|
532271
532464
|
is_native_binary: isInBundledMode()
|
|
532272
532465
|
});
|
|
532273
532466
|
registerCleanup(async () => {
|
|
@@ -533051,7 +533244,7 @@ Usage: vivus --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
533051
533244
|
pendingHookMessages
|
|
533052
533245
|
}, renderAndRun);
|
|
533053
533246
|
}
|
|
533054
|
-
}).version("1.0.
|
|
533247
|
+
}).version("1.0.6+40bcf59 (Vivus)", "-v, --version", "Output the version number");
|
|
533055
533248
|
program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
|
|
533056
533249
|
program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
|
|
533057
533250
|
if (canUserConfigureAdvisor()) {
|