vivus-agent 1.0.5 → 1.0.7
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 +292 -102
- 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-05T23:
|
|
3
|
+
// Built from source at 2026-06-05T23:30:25.551Z
|
|
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.7+5259b6e"}`;
|
|
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.7+5259b6e"} (${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.7+5259b6e"}${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.7+5259b6e",
|
|
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.7+5259b6e".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.7+5259b6e",
|
|
127842
127960
|
versionBase: getVersionBase(),
|
|
127843
|
-
buildTime: "2026-06-05T23:
|
|
127961
|
+
buildTime: "2026-06-05T23:30:24.955Z",
|
|
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.7+5259b6e"
|
|
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.7+5259b6e");
|
|
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.7+5259b6e"}.${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.7+5259b6e";
|
|
175785
175903
|
}
|
|
175786
175904
|
const oauthAccount = getOauthAccountInfo();
|
|
175787
175905
|
if (oauthAccount) {
|
|
@@ -207597,7 +207715,8 @@ function FallbackToolUseErrorMessage(t0) {
|
|
|
207597
207715
|
const withoutErrorTags = withoutSandboxViolations.replace(/<\/?error>/g, "");
|
|
207598
207716
|
const trimmed = withoutErrorTags.trim();
|
|
207599
207717
|
if (!verbose && trimmed.includes("InputValidationError: ")) {
|
|
207600
|
-
|
|
207718
|
+
const stripped = trimmed.replace(/^InputValidationError:\s*/, "");
|
|
207719
|
+
error41 = `Invalid tool parameters: ${stripped}`;
|
|
207601
207720
|
} else {
|
|
207602
207721
|
if (trimmed.startsWith("Error: ") || trimmed.startsWith("Cancelled: ")) {
|
|
207603
207722
|
error41 = trimmed;
|
|
@@ -235915,7 +236034,7 @@ function computeFingerprint(messageText, version2) {
|
|
|
235915
236034
|
}
|
|
235916
236035
|
function computeFingerprintFromMessages(messages) {
|
|
235917
236036
|
const firstMessageText = extractFirstMessageText(messages);
|
|
235918
|
-
return computeFingerprint(firstMessageText, "1.0.
|
|
236037
|
+
return computeFingerprint(firstMessageText, "1.0.7+5259b6e");
|
|
235919
236038
|
}
|
|
235920
236039
|
var FINGERPRINT_SALT = "59cf53e54c78";
|
|
235921
236040
|
var init_fingerprint = () => {};
|
|
@@ -235957,7 +236076,7 @@ async function sideQuery(opts) {
|
|
|
235957
236076
|
betas.push(STRUCTURED_OUTPUTS_BETA_HEADER);
|
|
235958
236077
|
}
|
|
235959
236078
|
const messageText = extractFirstUserMessageText(messages);
|
|
235960
|
-
const fingerprint = computeFingerprint(messageText, "1.0.
|
|
236079
|
+
const fingerprint = computeFingerprint(messageText, "1.0.7+5259b6e");
|
|
235961
236080
|
const attributionHeader = getAttributionHeader(fingerprint);
|
|
235962
236081
|
const systemBlocks = [
|
|
235963
236082
|
attributionHeader ? { type: "text", text: attributionHeader } : null,
|
|
@@ -237109,7 +237228,7 @@ async function setupSdkMcpClients(sdkMcpConfigs, sendMcpMessage) {
|
|
|
237109
237228
|
const client2 = new Client({
|
|
237110
237229
|
name: "vivus",
|
|
237111
237230
|
title: "Vivus",
|
|
237112
|
-
version: "1.0.
|
|
237231
|
+
version: "1.0.7+5259b6e",
|
|
237113
237232
|
description: "Anthropic's agentic coding tool",
|
|
237114
237233
|
websiteUrl: PRODUCT_URL
|
|
237115
237234
|
}, {
|
|
@@ -237463,7 +237582,7 @@ var init_client6 = __esm(() => {
|
|
|
237463
237582
|
const client2 = new Client({
|
|
237464
237583
|
name: "vivus",
|
|
237465
237584
|
title: "Vivus",
|
|
237466
|
-
version: "1.0.
|
|
237585
|
+
version: "1.0.7+5259b6e",
|
|
237467
237586
|
description: "Anthropic's agentic coding tool",
|
|
237468
237587
|
websiteUrl: PRODUCT_URL
|
|
237469
237588
|
}, {
|
|
@@ -239521,7 +239640,7 @@ function getInstallationEnv() {
|
|
|
239521
239640
|
return;
|
|
239522
239641
|
}
|
|
239523
239642
|
function getVivusCodeVersion() {
|
|
239524
|
-
return "1.0.
|
|
239643
|
+
return "1.0.7+5259b6e";
|
|
239525
239644
|
}
|
|
239526
239645
|
async function getInstalledVSCodeExtensionVersion(command) {
|
|
239527
239646
|
const { stdout } = await execFileNoThrow(command, ["--list-extensions", "--show-versions"], {
|
|
@@ -272011,7 +272130,7 @@ async function initializeBetaTracing(resource) {
|
|
|
272011
272130
|
});
|
|
272012
272131
|
import_api_logs.logs.setGlobalLoggerProvider(loggerProvider);
|
|
272013
272132
|
setLoggerProvider(loggerProvider);
|
|
272014
|
-
const eventLogger = import_api_logs.logs.getLogger("com.anthropic.vivus_code.events", "1.0.
|
|
272133
|
+
const eventLogger = import_api_logs.logs.getLogger("com.anthropic.vivus_code.events", "1.0.7+5259b6e");
|
|
272015
272134
|
setEventLogger(eventLogger);
|
|
272016
272135
|
process.on("beforeExit", async () => {
|
|
272017
272136
|
await loggerProvider?.forceFlush();
|
|
@@ -272051,7 +272170,7 @@ async function initializeTelemetry() {
|
|
|
272051
272170
|
const platform5 = getPlatform();
|
|
272052
272171
|
const baseAttributes = {
|
|
272053
272172
|
[import_semantic_conventions2.ATTR_SERVICE_NAME]: "vivus",
|
|
272054
|
-
[import_semantic_conventions2.ATTR_SERVICE_VERSION]: "1.0.
|
|
272173
|
+
[import_semantic_conventions2.ATTR_SERVICE_VERSION]: "1.0.7+5259b6e"
|
|
272055
272174
|
};
|
|
272056
272175
|
if (platform5 === "wsl") {
|
|
272057
272176
|
const wslVersion = getWslVersion();
|
|
@@ -272096,7 +272215,7 @@ async function initializeTelemetry() {
|
|
|
272096
272215
|
} catch {}
|
|
272097
272216
|
};
|
|
272098
272217
|
registerCleanup(shutdownTelemetry2);
|
|
272099
|
-
return meterProvider2.getMeter("com.anthropic.vivus_code", "1.0.
|
|
272218
|
+
return meterProvider2.getMeter("com.anthropic.vivus_code", "1.0.7+5259b6e");
|
|
272100
272219
|
}
|
|
272101
272220
|
const meterProvider = new import_sdk_metrics2.MeterProvider({
|
|
272102
272221
|
resource,
|
|
@@ -272116,7 +272235,7 @@ async function initializeTelemetry() {
|
|
|
272116
272235
|
});
|
|
272117
272236
|
import_api_logs.logs.setGlobalLoggerProvider(loggerProvider);
|
|
272118
272237
|
setLoggerProvider(loggerProvider);
|
|
272119
|
-
const eventLogger = import_api_logs.logs.getLogger("com.anthropic.vivus_code.events", "1.0.
|
|
272238
|
+
const eventLogger = import_api_logs.logs.getLogger("com.anthropic.vivus_code.events", "1.0.7+5259b6e");
|
|
272120
272239
|
setEventLogger(eventLogger);
|
|
272121
272240
|
logForDebugging("[3P telemetry] Event logger set successfully");
|
|
272122
272241
|
process.on("beforeExit", async () => {
|
|
@@ -272178,7 +272297,7 @@ Current timeout: ${timeoutMs}ms
|
|
|
272178
272297
|
}
|
|
272179
272298
|
};
|
|
272180
272299
|
registerCleanup(shutdownTelemetry);
|
|
272181
|
-
return meterProvider.getMeter("com.anthropic.vivus_code", "1.0.
|
|
272300
|
+
return meterProvider.getMeter("com.anthropic.vivus_code", "1.0.7+5259b6e");
|
|
272182
272301
|
}
|
|
272183
272302
|
async function flushTelemetry() {
|
|
272184
272303
|
const meterProvider = getMeterProvider();
|
|
@@ -272864,9 +272983,9 @@ async function assertMinVersion() {
|
|
|
272864
272983
|
if (false) {}
|
|
272865
272984
|
try {
|
|
272866
272985
|
const versionConfig = await getDynamicConfig_BLOCKS_ON_INIT("tengu_version_config", { minVersion: "0.0.0" });
|
|
272867
|
-
if (versionConfig.minVersion && lt("1.0.
|
|
272986
|
+
if (versionConfig.minVersion && lt("1.0.7+5259b6e", versionConfig.minVersion)) {
|
|
272868
272987
|
console.error(`
|
|
272869
|
-
It looks like your version of Vivus (${"1.0.
|
|
272988
|
+
It looks like your version of Vivus (${"1.0.7+5259b6e"}) needs an update.
|
|
272870
272989
|
A newer version (${versionConfig.minVersion} or higher) is required to continue.
|
|
272871
272990
|
|
|
272872
272991
|
To update, please run:
|
|
@@ -273082,7 +273201,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
273082
273201
|
logError2(new AutoUpdaterError("Another process is currently installing an update"));
|
|
273083
273202
|
logEvent("tengu_auto_updater_lock_contention", {
|
|
273084
273203
|
pid: process.pid,
|
|
273085
|
-
currentVersion: "1.0.
|
|
273204
|
+
currentVersion: "1.0.7+5259b6e"
|
|
273086
273205
|
});
|
|
273087
273206
|
return "in_progress";
|
|
273088
273207
|
}
|
|
@@ -273091,7 +273210,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
273091
273210
|
if (!env2.isRunningWithBun() && env2.isNpmFromWindowsPath()) {
|
|
273092
273211
|
logError2(new Error("Windows NPM detected in WSL environment"));
|
|
273093
273212
|
logEvent("tengu_auto_updater_windows_npm_in_wsl", {
|
|
273094
|
-
currentVersion: "1.0.
|
|
273213
|
+
currentVersion: "1.0.7+5259b6e"
|
|
273095
273214
|
});
|
|
273096
273215
|
console.error(`
|
|
273097
273216
|
Error: Windows NPM detected in WSL
|
|
@@ -273624,7 +273743,7 @@ function detectLinuxGlobPatternWarnings() {
|
|
|
273624
273743
|
}
|
|
273625
273744
|
async function getDoctorDiagnostic() {
|
|
273626
273745
|
const installationType = await getCurrentInstallationType();
|
|
273627
|
-
const version2 = typeof MACRO !== "undefined" ? "1.0.
|
|
273746
|
+
const version2 = typeof MACRO !== "undefined" ? "1.0.7+5259b6e" : "unknown";
|
|
273628
273747
|
const installationPath = await getInstallationPath();
|
|
273629
273748
|
const invokedBinary = getInvokedBinary();
|
|
273630
273749
|
const multipleInstallations = await detectMultipleInstallations();
|
|
@@ -274557,8 +274676,8 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
274557
274676
|
const maxVersion = await getMaxVersion();
|
|
274558
274677
|
if (maxVersion && gt(version2, maxVersion)) {
|
|
274559
274678
|
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.
|
|
274679
|
+
if (gte("1.0.7+5259b6e", maxVersion)) {
|
|
274680
|
+
logForDebugging(`Native installer: current version ${"1.0.7+5259b6e"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
274562
274681
|
logEvent("tengu_native_update_skipped_max_version", {
|
|
274563
274682
|
latency_ms: Date.now() - startTime,
|
|
274564
274683
|
max_version: maxVersion,
|
|
@@ -274569,7 +274688,7 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
274569
274688
|
version2 = maxVersion;
|
|
274570
274689
|
}
|
|
274571
274690
|
}
|
|
274572
|
-
if (!forceReinstall && version2 === "1.0.
|
|
274691
|
+
if (!forceReinstall && version2 === "1.0.7+5259b6e" && await versionIsAvailable(version2) && await isPossibleVivusBinary(executablePath)) {
|
|
274573
274692
|
logForDebugging(`Found ${version2} at ${executablePath}, skipping install`);
|
|
274574
274693
|
logEvent("tengu_native_update_complete", {
|
|
274575
274694
|
latency_ms: Date.now() - startTime,
|
|
@@ -327026,6 +327145,68 @@ var init_toolErrors = __esm(() => {
|
|
|
327026
327145
|
init_messages3();
|
|
327027
327146
|
});
|
|
327028
327147
|
|
|
327148
|
+
// src/utils/toolInputCoercion.ts
|
|
327149
|
+
function looksLikeNumericKeyedArray(obj) {
|
|
327150
|
+
const keys2 = Object.keys(obj);
|
|
327151
|
+
if (keys2.length === 0)
|
|
327152
|
+
return false;
|
|
327153
|
+
for (const k2 of keys2) {
|
|
327154
|
+
if (!/^\d+$/.test(k2))
|
|
327155
|
+
return false;
|
|
327156
|
+
}
|
|
327157
|
+
return true;
|
|
327158
|
+
}
|
|
327159
|
+
function objectToArray(obj) {
|
|
327160
|
+
return Object.keys(obj).map((k2) => Number.parseInt(k2, 10)).sort((a2, b) => a2 - b).map((i2) => obj[String(i2)]);
|
|
327161
|
+
}
|
|
327162
|
+
function coerceValue(value, depth) {
|
|
327163
|
+
if (depth > MAX_COERCE_DEPTH)
|
|
327164
|
+
return value;
|
|
327165
|
+
if (value == null)
|
|
327166
|
+
return value;
|
|
327167
|
+
if (typeof value === "string") {
|
|
327168
|
+
const trimmed = value.trim();
|
|
327169
|
+
if (trimmed === "true")
|
|
327170
|
+
return true;
|
|
327171
|
+
if (trimmed === "false")
|
|
327172
|
+
return false;
|
|
327173
|
+
if (trimmed === "null")
|
|
327174
|
+
return null;
|
|
327175
|
+
if (trimmed.startsWith("{") && trimmed.endsWith("}") || trimmed.startsWith("[") && trimmed.endsWith("]")) {
|
|
327176
|
+
try {
|
|
327177
|
+
const parsed = JSON.parse(trimmed);
|
|
327178
|
+
return coerceValue(parsed, depth + 1);
|
|
327179
|
+
} catch {
|
|
327180
|
+
return value;
|
|
327181
|
+
}
|
|
327182
|
+
}
|
|
327183
|
+
return value;
|
|
327184
|
+
}
|
|
327185
|
+
if (Array.isArray(value)) {
|
|
327186
|
+
return value.map((v) => coerceValue(v, depth + 1));
|
|
327187
|
+
}
|
|
327188
|
+
if (typeof value === "object") {
|
|
327189
|
+
const obj = value;
|
|
327190
|
+
if (looksLikeNumericKeyedArray(obj)) {
|
|
327191
|
+
return objectToArray(obj).map((v) => coerceValue(v, depth + 1));
|
|
327192
|
+
}
|
|
327193
|
+
const out = {};
|
|
327194
|
+
for (const [k2, v] of Object.entries(obj)) {
|
|
327195
|
+
out[k2] = coerceValue(v, depth + 1);
|
|
327196
|
+
}
|
|
327197
|
+
return out;
|
|
327198
|
+
}
|
|
327199
|
+
return value;
|
|
327200
|
+
}
|
|
327201
|
+
function coerceToolInput(input) {
|
|
327202
|
+
const coerced = coerceValue(input, 0);
|
|
327203
|
+
if (coerced && typeof coerced === "object" && !Array.isArray(coerced)) {
|
|
327204
|
+
return coerced;
|
|
327205
|
+
}
|
|
327206
|
+
return input ?? {};
|
|
327207
|
+
}
|
|
327208
|
+
var MAX_COERCE_DEPTH = 12;
|
|
327209
|
+
|
|
327029
327210
|
// src/utils/permissions/PermissionResult.ts
|
|
327030
327211
|
function getRuleBehaviorDescription(permissionResult) {
|
|
327031
327212
|
switch (permissionResult) {
|
|
@@ -327711,7 +327892,14 @@ function buildSchemaNotSentHint(tool, messages, tools) {
|
|
|
327711
327892
|
This tool's schema was not sent to the API — it was not in the discovered-tool set derived from message history. ` + `Without the schema in your prompt, typed parameters (arrays, numbers, booleans) get emitted as strings and the client-side parser rejects them. ` + `Load the tool first: call ${TOOL_SEARCH_TOOL_NAME} with query "select:${tool.name}", then retry this call.`;
|
|
327712
327893
|
}
|
|
327713
327894
|
async function checkPermissionsAndCallTool(tool, toolUseID, input, toolUseContext, canUseTool, assistantMessage, messageId, requestId, mcpServerType, mcpServerBaseUrl, onToolProgress) {
|
|
327714
|
-
const
|
|
327895
|
+
const coercedInput = coerceToolInput(input);
|
|
327896
|
+
let parsedInput = tool.inputSchema.safeParse(coercedInput);
|
|
327897
|
+
if (!parsedInput.success && coercedInput !== input) {
|
|
327898
|
+
const original = tool.inputSchema.safeParse(input);
|
|
327899
|
+
if (original.success) {
|
|
327900
|
+
parsedInput = original;
|
|
327901
|
+
}
|
|
327902
|
+
}
|
|
327715
327903
|
if (!parsedInput.success) {
|
|
327716
327904
|
let errorContent = formatZodValidationError(tool.name, parsedInput.error);
|
|
327717
327905
|
const schemaHint = buildSchemaNotSentHint(tool, toolUseContext.messages, toolUseContext.options.tools);
|
|
@@ -330609,7 +330797,7 @@ function getAnthropicEnvMetadata() {
|
|
|
330609
330797
|
function getBuildAgeMinutes() {
|
|
330610
330798
|
if (false)
|
|
330611
330799
|
;
|
|
330612
|
-
const buildTime = new Date("2026-06-05T23:
|
|
330800
|
+
const buildTime = new Date("2026-06-05T23:30:24.955Z").getTime();
|
|
330613
330801
|
if (isNaN(buildTime))
|
|
330614
330802
|
return;
|
|
330615
330803
|
return Math.floor((Date.now() - buildTime) / 60000);
|
|
@@ -360760,6 +360948,15 @@ function getDefaultOptionForUser(fastMode = false) {
|
|
|
360760
360948
|
descriptionForModel: `Default model (currently ${currentModel})`
|
|
360761
360949
|
};
|
|
360762
360950
|
}
|
|
360951
|
+
if (!isFirstPartyAnthropicBaseUrl()) {
|
|
360952
|
+
const currentModel = renderDefaultModelSetting(getDefaultMainLoopModelSetting());
|
|
360953
|
+
return {
|
|
360954
|
+
value: null,
|
|
360955
|
+
label: "Default (recommended)",
|
|
360956
|
+
description: `Use the default model (currently ${currentModel})`,
|
|
360957
|
+
descriptionForModel: `Default model (currently ${currentModel})`
|
|
360958
|
+
};
|
|
360959
|
+
}
|
|
360763
360960
|
if (isVivusAISubscriber()) {
|
|
360764
360961
|
return {
|
|
360765
360962
|
value: null,
|
|
@@ -377830,7 +378027,7 @@ var init_filesystem = __esm(() => {
|
|
|
377830
378027
|
});
|
|
377831
378028
|
getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
|
|
377832
378029
|
const nonce = randomBytes17(16).toString("hex");
|
|
377833
|
-
return join106(getVivusTempDir(), "bundled-skills", "1.0.
|
|
378030
|
+
return join106(getVivusTempDir(), "bundled-skills", "1.0.7+5259b6e", nonce);
|
|
377834
378031
|
});
|
|
377835
378032
|
getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
|
|
377836
378033
|
});
|
|
@@ -379590,7 +379787,7 @@ function Feedback({
|
|
|
379590
379787
|
platform: env2.platform,
|
|
379591
379788
|
gitRepo: envInfo.isGit,
|
|
379592
379789
|
terminal: env2.terminal,
|
|
379593
|
-
version: "1.0.
|
|
379790
|
+
version: "1.0.7+5259b6e",
|
|
379594
379791
|
transcript: normalizeMessagesForAPI(messages),
|
|
379595
379792
|
errors: sanitizedErrors,
|
|
379596
379793
|
lastApiRequest: getLastAPIRequest(),
|
|
@@ -379782,7 +379979,7 @@ function Feedback({
|
|
|
379782
379979
|
", ",
|
|
379783
379980
|
env2.terminal,
|
|
379784
379981
|
", v",
|
|
379785
|
-
"1.0.
|
|
379982
|
+
"1.0.7+5259b6e"
|
|
379786
379983
|
]
|
|
379787
379984
|
}, undefined, true, undefined, this)
|
|
379788
379985
|
]
|
|
@@ -379888,7 +380085,7 @@ ${sanitizedDescription}
|
|
|
379888
380085
|
` + `**Environment Info**
|
|
379889
380086
|
` + `- Platform: ${env2.platform}
|
|
379890
380087
|
` + `- Terminal: ${env2.terminal}
|
|
379891
|
-
` + `- Version: ${"1.0.
|
|
380088
|
+
` + `- Version: ${"1.0.7+5259b6e"}
|
|
379892
380089
|
` + `- Feedback ID: ${feedbackId}
|
|
379893
380090
|
` + `
|
|
379894
380091
|
**Errors**
|
|
@@ -383019,7 +383216,7 @@ function buildPrimarySection() {
|
|
|
383019
383216
|
}, undefined, false, undefined, this);
|
|
383020
383217
|
return [{
|
|
383021
383218
|
label: "Version",
|
|
383022
|
-
value: "1.0.
|
|
383219
|
+
value: "1.0.7+5259b6e"
|
|
383023
383220
|
}, {
|
|
383024
383221
|
label: "Session name",
|
|
383025
383222
|
value: nameValue
|
|
@@ -386770,7 +386967,7 @@ function Config({
|
|
|
386770
386967
|
}
|
|
386771
386968
|
}, undefined, false, undefined, this)
|
|
386772
386969
|
}, undefined, false, undefined, this) : showSubmenu === "ChannelDowngrade" ? /* @__PURE__ */ jsx_dev_runtime178.jsxDEV(ChannelDowngradeDialog, {
|
|
386773
|
-
currentVersion: "1.0.
|
|
386970
|
+
currentVersion: "1.0.7+5259b6e",
|
|
386774
386971
|
onChoice: (choice) => {
|
|
386775
386972
|
setShowSubmenu(null);
|
|
386776
386973
|
setTabsHidden(false);
|
|
@@ -386782,7 +386979,7 @@ function Config({
|
|
|
386782
386979
|
autoUpdatesChannel: "stable"
|
|
386783
386980
|
};
|
|
386784
386981
|
if (choice === "stay") {
|
|
386785
|
-
newSettings.minimumVersion = "1.0.
|
|
386982
|
+
newSettings.minimumVersion = "1.0.7+5259b6e";
|
|
386786
386983
|
}
|
|
386787
386984
|
updateSettingsForSource("userSettings", newSettings);
|
|
386788
386985
|
setSettingsData((prev_27) => ({
|
|
@@ -394868,7 +395065,7 @@ function HelpV2(t0) {
|
|
|
394868
395065
|
let t6;
|
|
394869
395066
|
if ($2[31] !== tabs) {
|
|
394870
395067
|
t6 = /* @__PURE__ */ jsx_dev_runtime205.jsxDEV(Tabs, {
|
|
394871
|
-
title: `Vivus v${"1.0.
|
|
395068
|
+
title: `Vivus v${"1.0.7+5259b6e"}`,
|
|
394872
395069
|
color: "professionalBlue",
|
|
394873
395070
|
defaultTab: "general",
|
|
394874
395071
|
children: tabs
|
|
@@ -419093,7 +419290,7 @@ function getAllReleaseNotes(changelogContent = getStoredChangelogFromMemory()) {
|
|
|
419093
419290
|
return [];
|
|
419094
419291
|
}
|
|
419095
419292
|
}
|
|
419096
|
-
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.0.
|
|
419293
|
+
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.0.7+5259b6e") {
|
|
419097
419294
|
if (process.env.USER_TYPE === "ant") {
|
|
419098
419295
|
const changelog = "";
|
|
419099
419296
|
if (changelog) {
|
|
@@ -419120,7 +419317,7 @@ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.0.5+c25
|
|
|
419120
419317
|
releaseNotes
|
|
419121
419318
|
};
|
|
419122
419319
|
}
|
|
419123
|
-
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.0.
|
|
419320
|
+
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.0.7+5259b6e") {
|
|
419124
419321
|
if (process.env.USER_TYPE === "ant") {
|
|
419125
419322
|
const changelog = "";
|
|
419126
419323
|
if (changelog) {
|
|
@@ -420290,7 +420487,7 @@ function getRecentActivitySync() {
|
|
|
420290
420487
|
return cachedActivity;
|
|
420291
420488
|
}
|
|
420292
420489
|
function getLogoDisplayData() {
|
|
420293
|
-
const version2 = process.env.DEMO_VERSION ?? "1.0.
|
|
420490
|
+
const version2 = process.env.DEMO_VERSION ?? "1.0.7+5259b6e";
|
|
420294
420491
|
const serverUrl = getDirectConnectServerUrl();
|
|
420295
420492
|
const displayPath = process.env.DEMO_VERSION ? "/code/vivus" : getDisplayPath(getCwd());
|
|
420296
420493
|
const cwd2 = serverUrl ? `${displayPath} in ${serverUrl.replace(/^https?:\/\//, "")}` : displayPath;
|
|
@@ -421817,7 +422014,7 @@ function LogoV2() {
|
|
|
421817
422014
|
if ($2[2] === Symbol.for("react.memo_cache_sentinel")) {
|
|
421818
422015
|
t2 = () => {
|
|
421819
422016
|
const currentConfig = getGlobalConfig();
|
|
421820
|
-
if (currentConfig.lastReleaseNotesSeen === "1.0.
|
|
422017
|
+
if (currentConfig.lastReleaseNotesSeen === "1.0.7+5259b6e") {
|
|
421821
422018
|
return;
|
|
421822
422019
|
}
|
|
421823
422020
|
saveGlobalConfig(_temp329);
|
|
@@ -422493,12 +422690,12 @@ function LogoV2() {
|
|
|
422493
422690
|
return t41;
|
|
422494
422691
|
}
|
|
422495
422692
|
function _temp329(current) {
|
|
422496
|
-
if (current.lastReleaseNotesSeen === "1.0.
|
|
422693
|
+
if (current.lastReleaseNotesSeen === "1.0.7+5259b6e") {
|
|
422497
422694
|
return current;
|
|
422498
422695
|
}
|
|
422499
422696
|
return {
|
|
422500
422697
|
...current,
|
|
422501
|
-
lastReleaseNotesSeen: "1.0.
|
|
422698
|
+
lastReleaseNotesSeen: "1.0.7+5259b6e"
|
|
422502
422699
|
};
|
|
422503
422700
|
}
|
|
422504
422701
|
function _temp245(s_0) {
|
|
@@ -448795,7 +448992,7 @@ async function captureMemoryDiagnostics(trigger, dumpNumber = 0) {
|
|
|
448795
448992
|
smapsRollup,
|
|
448796
448993
|
platform: process.platform,
|
|
448797
448994
|
nodeVersion: process.version,
|
|
448798
|
-
ccVersion: "1.0.
|
|
448995
|
+
ccVersion: "1.0.7+5259b6e"
|
|
448799
448996
|
};
|
|
448800
448997
|
}
|
|
448801
448998
|
async function performHeapDump(trigger = "manual", dumpNumber = 0) {
|
|
@@ -449381,7 +449578,7 @@ var init_bridge_kick = __esm(() => {
|
|
|
449381
449578
|
var call56 = async () => {
|
|
449382
449579
|
return {
|
|
449383
449580
|
type: "text",
|
|
449384
|
-
value: `${"1.0.
|
|
449581
|
+
value: `${"1.0.7+5259b6e"} (built ${"2026-06-05T23:30:24.955Z"})`
|
|
449385
449582
|
};
|
|
449386
449583
|
}, version2, version_default;
|
|
449387
449584
|
var init_version = __esm(() => {
|
|
@@ -458344,7 +458541,7 @@ function generateHtmlReport(data, insights) {
|
|
|
458344
458541
|
</html>`;
|
|
458345
458542
|
}
|
|
458346
458543
|
function buildExportData(data, insights, facets, remoteStats) {
|
|
458347
|
-
const version3 = typeof MACRO !== "undefined" ? "1.0.
|
|
458544
|
+
const version3 = typeof MACRO !== "undefined" ? "1.0.7+5259b6e" : "unknown";
|
|
458348
458545
|
const remote_hosts_collected = remoteStats?.hosts.filter((h2) => h2.sessionCount > 0).map((h2) => h2.name);
|
|
458349
458546
|
const facets_summary = {
|
|
458350
458547
|
total: facets.size,
|
|
@@ -462453,7 +462650,7 @@ var init_sessionStorage = __esm(() => {
|
|
|
462453
462650
|
init_settings2();
|
|
462454
462651
|
init_slowOperations();
|
|
462455
462652
|
init_uuid();
|
|
462456
|
-
VERSION5 = typeof MACRO !== "undefined" ? "1.0.
|
|
462653
|
+
VERSION5 = typeof MACRO !== "undefined" ? "1.0.7+5259b6e" : "unknown";
|
|
462457
462654
|
MAX_TOMBSTONE_REWRITE_BYTES = 50 * 1024 * 1024;
|
|
462458
462655
|
SKIP_FIRST_PROMPT_PATTERN = /^(?:\s*<[a-z][\w-]*[\s>]|\[Request interrupted by user[^\]]*\])/;
|
|
462459
462656
|
EPHEMERAL_PROGRESS_TYPES = new Set([
|
|
@@ -465324,7 +465521,7 @@ function buildSystemInitMessage(inputs) {
|
|
|
465324
465521
|
slash_commands: inputs.commands.filter((c4) => c4.userInvocable !== false).map((c4) => c4.name),
|
|
465325
465522
|
apiKeySource: getAnthropicApiKeyWithSource().source,
|
|
465326
465523
|
betas: getSdkBetas(),
|
|
465327
|
-
vivus_code_version: "1.0.
|
|
465524
|
+
vivus_code_version: "1.0.7+5259b6e",
|
|
465328
465525
|
output_style: outputStyle2,
|
|
465329
465526
|
agents: inputs.agents.map((agent) => agent.agentType),
|
|
465330
465527
|
skills: inputs.skills.filter((s) => s.userInvocable !== false).map((skill) => skill.name),
|
|
@@ -479952,7 +480149,7 @@ var init_useVoiceEnabled = __esm(() => {
|
|
|
479952
480149
|
function getSemverPart(version3) {
|
|
479953
480150
|
return `${import_semver13.major(version3, { loose: true })}.${import_semver13.minor(version3, { loose: true })}.${import_semver13.patch(version3, { loose: true })}`;
|
|
479954
480151
|
}
|
|
479955
|
-
function useUpdateNotification(updatedVersion, initialVersion = "1.0.
|
|
480152
|
+
function useUpdateNotification(updatedVersion, initialVersion = "1.0.7+5259b6e") {
|
|
479956
480153
|
const [lastNotifiedSemver, setLastNotifiedSemver] = import_react227.useState(() => getSemverPart(initialVersion));
|
|
479957
480154
|
if (!updatedVersion) {
|
|
479958
480155
|
return null;
|
|
@@ -479992,7 +480189,7 @@ function AutoUpdater({
|
|
|
479992
480189
|
return;
|
|
479993
480190
|
}
|
|
479994
480191
|
if (false) {}
|
|
479995
|
-
const currentVersion = "1.0.
|
|
480192
|
+
const currentVersion = "1.0.7+5259b6e";
|
|
479996
480193
|
const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
|
|
479997
480194
|
let latestVersion = await getLatestVersion(channel);
|
|
479998
480195
|
const isDisabled = isAutoUpdaterDisabled();
|
|
@@ -480205,12 +480402,12 @@ function NativeAutoUpdater({
|
|
|
480205
480402
|
logEvent("tengu_native_auto_updater_start", {});
|
|
480206
480403
|
try {
|
|
480207
480404
|
const maxVersion = await getMaxVersion();
|
|
480208
|
-
if (maxVersion && gt("1.0.
|
|
480405
|
+
if (maxVersion && gt("1.0.7+5259b6e", maxVersion)) {
|
|
480209
480406
|
const msg = await getMaxVersionMessage();
|
|
480210
480407
|
setMaxVersionIssue(msg ?? "affects your version");
|
|
480211
480408
|
}
|
|
480212
480409
|
const result = await installLatest(channel);
|
|
480213
|
-
const currentVersion = "1.0.
|
|
480410
|
+
const currentVersion = "1.0.7+5259b6e";
|
|
480214
480411
|
const latencyMs = Date.now() - startTime;
|
|
480215
480412
|
if (result.lockFailed) {
|
|
480216
480413
|
logEvent("tengu_native_auto_updater_lock_contention", {
|
|
@@ -480347,17 +480544,17 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
480347
480544
|
const maxVersion = await getMaxVersion();
|
|
480348
480545
|
if (maxVersion && latest && gt(latest, maxVersion)) {
|
|
480349
480546
|
logForDebugging(`PackageManagerAutoUpdater: maxVersion ${maxVersion} is set, capping update from ${latest} to ${maxVersion}`);
|
|
480350
|
-
if (gte("1.0.
|
|
480351
|
-
logForDebugging(`PackageManagerAutoUpdater: current version ${"1.0.
|
|
480547
|
+
if (gte("1.0.7+5259b6e", maxVersion)) {
|
|
480548
|
+
logForDebugging(`PackageManagerAutoUpdater: current version ${"1.0.7+5259b6e"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
480352
480549
|
setUpdateAvailable(false);
|
|
480353
480550
|
return;
|
|
480354
480551
|
}
|
|
480355
480552
|
latest = maxVersion;
|
|
480356
480553
|
}
|
|
480357
|
-
const hasUpdate = latest && !gte("1.0.
|
|
480554
|
+
const hasUpdate = latest && !gte("1.0.7+5259b6e", latest) && !shouldSkipVersion(latest);
|
|
480358
480555
|
setUpdateAvailable(!!hasUpdate);
|
|
480359
480556
|
if (hasUpdate) {
|
|
480360
|
-
logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.0.
|
|
480557
|
+
logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.0.7+5259b6e"} -> ${latest}`);
|
|
480361
480558
|
}
|
|
480362
480559
|
};
|
|
480363
480560
|
$2[0] = t1;
|
|
@@ -480391,7 +480588,7 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
480391
480588
|
wrap: "truncate",
|
|
480392
480589
|
children: [
|
|
480393
480590
|
"currentVersion: ",
|
|
480394
|
-
"1.0.
|
|
480591
|
+
"1.0.7+5259b6e"
|
|
480395
480592
|
]
|
|
480396
480593
|
}, undefined, true, undefined, this);
|
|
480397
480594
|
$2[3] = verbose;
|
|
@@ -488559,7 +488756,7 @@ function buildStatusLineCommandInput(permissionMode, exceeds200kTokens, settings
|
|
|
488559
488756
|
project_dir: getOriginalCwd(),
|
|
488560
488757
|
added_dirs: addedDirs
|
|
488561
488758
|
},
|
|
488562
|
-
version: "1.0.
|
|
488759
|
+
version: "1.0.7+5259b6e",
|
|
488563
488760
|
output_style: {
|
|
488564
488761
|
name: outputStyleName
|
|
488565
488762
|
},
|
|
@@ -500043,7 +500240,7 @@ async function submitTranscriptShare(messages, trigger, appearanceId) {
|
|
|
500043
500240
|
} catch {}
|
|
500044
500241
|
const data = {
|
|
500045
500242
|
trigger,
|
|
500046
|
-
version: "1.0.
|
|
500243
|
+
version: "1.0.7+5259b6e",
|
|
500047
500244
|
platform: process.platform,
|
|
500048
500245
|
transcript,
|
|
500049
500246
|
subagentTranscripts: Object.keys(subagentTranscripts).length > 0 ? subagentTranscripts : undefined,
|
|
@@ -511449,7 +511646,7 @@ function WelcomeV2() {
|
|
|
511449
511646
|
dimColor: true,
|
|
511450
511647
|
children: [
|
|
511451
511648
|
"v",
|
|
511452
|
-
"1.0.
|
|
511649
|
+
"1.0.7+5259b6e",
|
|
511453
511650
|
" "
|
|
511454
511651
|
]
|
|
511455
511652
|
}, undefined, true, undefined, this)
|
|
@@ -511649,7 +511846,7 @@ function WelcomeV2() {
|
|
|
511649
511846
|
dimColor: true,
|
|
511650
511847
|
children: [
|
|
511651
511848
|
"v",
|
|
511652
|
-
"1.0.
|
|
511849
|
+
"1.0.7+5259b6e",
|
|
511653
511850
|
" "
|
|
511654
511851
|
]
|
|
511655
511852
|
}, undefined, true, undefined, this)
|
|
@@ -511875,7 +512072,7 @@ function AppleTerminalWelcomeV2(t0) {
|
|
|
511875
512072
|
dimColor: true,
|
|
511876
512073
|
children: [
|
|
511877
512074
|
"v",
|
|
511878
|
-
"1.0.
|
|
512075
|
+
"1.0.7+5259b6e",
|
|
511879
512076
|
" "
|
|
511880
512077
|
]
|
|
511881
512078
|
}, undefined, true, undefined, this);
|
|
@@ -512129,7 +512326,7 @@ function AppleTerminalWelcomeV2(t0) {
|
|
|
512129
512326
|
dimColor: true,
|
|
512130
512327
|
children: [
|
|
512131
512328
|
"v",
|
|
512132
|
-
"1.0.
|
|
512329
|
+
"1.0.7+5259b6e",
|
|
512133
512330
|
" "
|
|
512134
512331
|
]
|
|
512135
512332
|
}, undefined, true, undefined, this);
|
|
@@ -515193,7 +515390,7 @@ function appendToLog(path25, message) {
|
|
|
515193
515390
|
cwd: getFsImplementation().cwd(),
|
|
515194
515391
|
userType: process.env.USER_TYPE,
|
|
515195
515392
|
sessionId: getSessionId(),
|
|
515196
|
-
version: "1.0.
|
|
515393
|
+
version: "1.0.7+5259b6e"
|
|
515197
515394
|
};
|
|
515198
515395
|
getLogWriter(path25).write(messageWithTimestamp);
|
|
515199
515396
|
}
|
|
@@ -519178,8 +519375,8 @@ async function getEnvLessBridgeConfig() {
|
|
|
519178
519375
|
}
|
|
519179
519376
|
async function checkEnvLessBridgeMinVersion() {
|
|
519180
519377
|
const cfg = await getEnvLessBridgeConfig();
|
|
519181
|
-
if (cfg.min_version && lt("1.0.
|
|
519182
|
-
return `Your version of Vivus (${"1.0.
|
|
519378
|
+
if (cfg.min_version && lt("1.0.7+5259b6e", cfg.min_version)) {
|
|
519379
|
+
return `Your version of Vivus (${"1.0.7+5259b6e"}) is too old for Remote Control.
|
|
519183
519380
|
Version ${cfg.min_version} or higher is required. Run \`vivus update\` to update.`;
|
|
519184
519381
|
}
|
|
519185
519382
|
return null;
|
|
@@ -519653,7 +519850,7 @@ async function initBridgeCore(params) {
|
|
|
519653
519850
|
const rawApi = createBridgeApiClient({
|
|
519654
519851
|
baseUrl,
|
|
519655
519852
|
getAccessToken,
|
|
519656
|
-
runnerVersion: "1.0.
|
|
519853
|
+
runnerVersion: "1.0.7+5259b6e",
|
|
519657
519854
|
onDebug: logForDebugging,
|
|
519658
519855
|
onAuth401,
|
|
519659
519856
|
getTrustedDeviceToken
|
|
@@ -525317,7 +525514,7 @@ async function startMCPServer(cwd3, debug2, verbose) {
|
|
|
525317
525514
|
setCwd(cwd3);
|
|
525318
525515
|
const server = new Server({
|
|
525319
525516
|
name: "vivus/tengu",
|
|
525320
|
-
version: "1.0.
|
|
525517
|
+
version: "1.0.7+5259b6e"
|
|
525321
525518
|
}, {
|
|
525322
525519
|
capabilities: {
|
|
525323
525520
|
tools: {}
|
|
@@ -526928,7 +527125,7 @@ __export(exports_update, {
|
|
|
526928
527125
|
});
|
|
526929
527126
|
async function update() {
|
|
526930
527127
|
logEvent("tengu_update_check", {});
|
|
526931
|
-
writeToStdout(`Current version: ${"1.0.
|
|
527128
|
+
writeToStdout(`Current version: ${"1.0.7+5259b6e"}
|
|
526932
527129
|
`);
|
|
526933
527130
|
const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
|
|
526934
527131
|
writeToStdout(`Checking for updates to ${channel} version...
|
|
@@ -527003,8 +527200,8 @@ async function update() {
|
|
|
527003
527200
|
writeToStdout(`Vivus is managed by Homebrew.
|
|
527004
527201
|
`);
|
|
527005
527202
|
const latest = await getLatestVersion(channel);
|
|
527006
|
-
if (latest && !gte("1.0.
|
|
527007
|
-
writeToStdout(`Update available: ${"1.0.
|
|
527203
|
+
if (latest && !gte("1.0.7+5259b6e", latest)) {
|
|
527204
|
+
writeToStdout(`Update available: ${"1.0.7+5259b6e"} → ${latest}
|
|
527008
527205
|
`);
|
|
527009
527206
|
writeToStdout(`
|
|
527010
527207
|
`);
|
|
@@ -527020,8 +527217,8 @@ async function update() {
|
|
|
527020
527217
|
writeToStdout(`Vivus is managed by winget.
|
|
527021
527218
|
`);
|
|
527022
527219
|
const latest = await getLatestVersion(channel);
|
|
527023
|
-
if (latest && !gte("1.0.
|
|
527024
|
-
writeToStdout(`Update available: ${"1.0.
|
|
527220
|
+
if (latest && !gte("1.0.7+5259b6e", latest)) {
|
|
527221
|
+
writeToStdout(`Update available: ${"1.0.7+5259b6e"} → ${latest}
|
|
527025
527222
|
`);
|
|
527026
527223
|
writeToStdout(`
|
|
527027
527224
|
`);
|
|
@@ -527037,8 +527234,8 @@ async function update() {
|
|
|
527037
527234
|
writeToStdout(`Vivus is managed by apk.
|
|
527038
527235
|
`);
|
|
527039
527236
|
const latest = await getLatestVersion(channel);
|
|
527040
|
-
if (latest && !gte("1.0.
|
|
527041
|
-
writeToStdout(`Update available: ${"1.0.
|
|
527237
|
+
if (latest && !gte("1.0.7+5259b6e", latest)) {
|
|
527238
|
+
writeToStdout(`Update available: ${"1.0.7+5259b6e"} → ${latest}
|
|
527042
527239
|
`);
|
|
527043
527240
|
writeToStdout(`
|
|
527044
527241
|
`);
|
|
@@ -527103,11 +527300,11 @@ async function update() {
|
|
|
527103
527300
|
`);
|
|
527104
527301
|
await gracefulShutdown(1);
|
|
527105
527302
|
}
|
|
527106
|
-
if (result.latestVersion === "1.0.
|
|
527107
|
-
writeToStdout(source_default.green(`Vivus is up to date (${"1.0.
|
|
527303
|
+
if (result.latestVersion === "1.0.7+5259b6e") {
|
|
527304
|
+
writeToStdout(source_default.green(`Vivus is up to date (${"1.0.7+5259b6e"})`) + `
|
|
527108
527305
|
`);
|
|
527109
527306
|
} else {
|
|
527110
|
-
writeToStdout(source_default.green(`Successfully updated from ${"1.0.
|
|
527307
|
+
writeToStdout(source_default.green(`Successfully updated from ${"1.0.7+5259b6e"} to version ${result.latestVersion}`) + `
|
|
527111
527308
|
`);
|
|
527112
527309
|
await regenerateCompletionCache();
|
|
527113
527310
|
}
|
|
@@ -527164,12 +527361,12 @@ async function update() {
|
|
|
527164
527361
|
`);
|
|
527165
527362
|
await gracefulShutdown(1);
|
|
527166
527363
|
}
|
|
527167
|
-
if (latestVersion === "1.0.
|
|
527168
|
-
writeToStdout(source_default.green(`Vivus is up to date (${"1.0.
|
|
527364
|
+
if (latestVersion === "1.0.7+5259b6e") {
|
|
527365
|
+
writeToStdout(source_default.green(`Vivus is up to date (${"1.0.7+5259b6e"})`) + `
|
|
527169
527366
|
`);
|
|
527170
527367
|
await gracefulShutdown(0);
|
|
527171
527368
|
}
|
|
527172
|
-
writeToStdout(`New version available: ${latestVersion} (current: ${"1.0.
|
|
527369
|
+
writeToStdout(`New version available: ${latestVersion} (current: ${"1.0.7+5259b6e"})
|
|
527173
527370
|
`);
|
|
527174
527371
|
writeToStdout(`Installing update...
|
|
527175
527372
|
`);
|
|
@@ -527214,7 +527411,7 @@ async function update() {
|
|
|
527214
527411
|
logForDebugging(`update: Installation status: ${status2}`);
|
|
527215
527412
|
switch (status2) {
|
|
527216
527413
|
case "success":
|
|
527217
|
-
writeToStdout(source_default.green(`Successfully updated from ${"1.0.
|
|
527414
|
+
writeToStdout(source_default.green(`Successfully updated from ${"1.0.7+5259b6e"} to version ${latestVersion}`) + `
|
|
527218
527415
|
`);
|
|
527219
527416
|
await regenerateCompletionCache();
|
|
527220
527417
|
break;
|
|
@@ -527577,6 +527774,7 @@ init_debug();
|
|
|
527577
527774
|
init_http2();
|
|
527578
527775
|
init_log3();
|
|
527579
527776
|
init_providers();
|
|
527777
|
+
init_proxyModelLabels();
|
|
527580
527778
|
var bootstrapResponseSchema = lazySchema(() => exports_external2.object({
|
|
527581
527779
|
client_data: exports_external2.record(exports_external2.unknown()).nullish(),
|
|
527582
527780
|
additional_model_options: exports_external2.array(exports_external2.object({
|
|
@@ -527642,12 +527840,6 @@ async function fetchBootstrapAPI() {
|
|
|
527642
527840
|
throw error41;
|
|
527643
527841
|
}
|
|
527644
527842
|
}
|
|
527645
|
-
function titleCaseModelName(name) {
|
|
527646
|
-
const base2 = name.replace(/:latest$/, "");
|
|
527647
|
-
if (!base2)
|
|
527648
|
-
return name;
|
|
527649
|
-
return base2.split(/[-_/:]/).filter(Boolean).map((part) => part.charAt(0).toUpperCase() + part.slice(1)).join(" ");
|
|
527650
|
-
}
|
|
527651
527843
|
async function fetchProxyModelOptions() {
|
|
527652
527844
|
if (isFirstPartyAnthropicBaseUrl())
|
|
527653
527845
|
return null;
|
|
@@ -527679,15 +527871,13 @@ async function fetchProxyModelOptions() {
|
|
|
527679
527871
|
const details = m.details ?? {};
|
|
527680
527872
|
const family = typeof details.family === "string" ? details.family : null;
|
|
527681
527873
|
const paramSize = typeof details.parameter_size === "string" ? details.parameter_size : null;
|
|
527682
|
-
const
|
|
527683
|
-
|
|
527684
|
-
|
|
527685
|
-
|
|
527686
|
-
descParts.push(paramSize);
|
|
527687
|
-
const description = descParts.length > 0 ? descParts.join(" · ") : name;
|
|
527874
|
+
const { label, description } = lookupProxyModelLabel(name, {
|
|
527875
|
+
family,
|
|
527876
|
+
parameterSize: paramSize
|
|
527877
|
+
});
|
|
527688
527878
|
options2.push({
|
|
527689
527879
|
value: name,
|
|
527690
|
-
label
|
|
527880
|
+
label,
|
|
527691
527881
|
description
|
|
527692
527882
|
});
|
|
527693
527883
|
}
|
|
@@ -528251,7 +528441,7 @@ function completeOnboarding() {
|
|
|
528251
528441
|
saveGlobalConfig((current) => ({
|
|
528252
528442
|
...current,
|
|
528253
528443
|
hasCompletedOnboarding: true,
|
|
528254
|
-
lastOnboardingVersion: "1.0.
|
|
528444
|
+
lastOnboardingVersion: "1.0.7+5259b6e"
|
|
528255
528445
|
}));
|
|
528256
528446
|
}
|
|
528257
528447
|
function showDialog(root2, renderer) {
|
|
@@ -532340,7 +532530,7 @@ ${customInstructions}` : customInstructions;
|
|
|
532340
532530
|
}
|
|
532341
532531
|
}
|
|
532342
532532
|
logForDiagnosticsNoPII("info", "started", {
|
|
532343
|
-
version: "1.0.
|
|
532533
|
+
version: "1.0.7+5259b6e",
|
|
532344
532534
|
is_native_binary: isInBundledMode()
|
|
532345
532535
|
});
|
|
532346
532536
|
registerCleanup(async () => {
|
|
@@ -533124,7 +533314,7 @@ Usage: vivus --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
533124
533314
|
pendingHookMessages
|
|
533125
533315
|
}, renderAndRun);
|
|
533126
533316
|
}
|
|
533127
|
-
}).version("1.0.
|
|
533317
|
+
}).version("1.0.7+5259b6e (Vivus)", "-v, --version", "Output the version number");
|
|
533128
533318
|
program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
|
|
533129
533319
|
program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
|
|
533130
533320
|
if (canUserConfigureAdvisor()) {
|