@duheso/zerocli 0.9.2 → 0.9.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli.mjs +160 -90
- package/package.json +2 -2
package/dist/cli.mjs
CHANGED
|
@@ -114198,7 +114198,8 @@ function getPublicModelDisplayName(model) {
|
|
|
114198
114198
|
"gemini-3.1-pro-preview": "Gemini 3.1 Pro Preview",
|
|
114199
114199
|
"gemini-3-flash-preview": "Gemini 3 Flash",
|
|
114200
114200
|
"gemini-2.5-pro": "Gemini 2.5 Pro",
|
|
114201
|
-
"grok-code-fast-1": "Grok Code Fast 1"
|
|
114201
|
+
"grok-code-fast-1": "Grok Code Fast 1",
|
|
114202
|
+
"qwen3.6-27b": "Qwen 3.6 27B"
|
|
114202
114203
|
};
|
|
114203
114204
|
if (copilotModelNames[model]) {
|
|
114204
114205
|
return copilotModelNames[model];
|
|
@@ -114276,9 +114277,9 @@ function renderModelName(model) {
|
|
|
114276
114277
|
function getPublicModelName(model) {
|
|
114277
114278
|
const publicName = getPublicModelDisplayName(model);
|
|
114278
114279
|
if (publicName) {
|
|
114279
|
-
return `
|
|
114280
|
+
return `ZeroCLI - ${publicName}`;
|
|
114280
114281
|
}
|
|
114281
|
-
return `
|
|
114282
|
+
return `ZeroCLI - ${model}`;
|
|
114282
114283
|
}
|
|
114283
114284
|
function parseUserSpecifiedModel(modelInput) {
|
|
114284
114285
|
const modelInputTrimmed = normalizeModelSetting(modelInput);
|
|
@@ -119191,7 +119192,7 @@ function buildProviderInfoLines() {
|
|
|
119191
119192
|
const sLen = ` ● ${sL} ${sReady}`.length;
|
|
119192
119193
|
out.push(boxRow(sRow, W2, sLen));
|
|
119193
119194
|
out.push(`${rgb(...BORDER)}╚${"═".repeat(W2 - 2)}╝${RESET}`);
|
|
119194
|
-
out.push(` ${DIM}${rgb(...DIMCOL)}zero ${RESET}${rgb(...ACCENT)}v${"0.9.
|
|
119195
|
+
out.push(` ${DIM}${rgb(...DIMCOL)}zero ${RESET}${rgb(...ACCENT)}v${"0.9.4"}${RESET}`);
|
|
119195
119196
|
return out;
|
|
119196
119197
|
}
|
|
119197
119198
|
function printStartupScreen() {}
|
|
@@ -147382,7 +147383,7 @@ function getAttributionHeader(fingerprint) {
|
|
|
147382
147383
|
if (!isAttributionHeaderEnabled()) {
|
|
147383
147384
|
return "";
|
|
147384
147385
|
}
|
|
147385
|
-
const version2 = `${"0.9.
|
|
147386
|
+
const version2 = `${"0.9.4"}.${fingerprint}`;
|
|
147386
147387
|
const entrypoint = process.env.CLAUDE_CODE_ENTRYPOINT ?? "unknown";
|
|
147387
147388
|
const cch = "";
|
|
147388
147389
|
const workload = getWorkload();
|
|
@@ -190392,7 +190393,7 @@ var init_imageValidation = __esm(() => {
|
|
|
190392
190393
|
|
|
190393
190394
|
// src/utils/userAgent.ts
|
|
190394
190395
|
function getZeroCodeUserAgent() {
|
|
190395
|
-
return `claude-code/${"0.9.
|
|
190396
|
+
return `claude-code/${"0.9.4"}`;
|
|
190396
190397
|
}
|
|
190397
190398
|
|
|
190398
190399
|
// src/utils/http.ts
|
|
@@ -190401,7 +190402,7 @@ function getUserAgent() {
|
|
|
190401
190402
|
const clientApp = process.env.CLAUDE_AGENT_SDK_CLIENT_APP ? `, client-app/${process.env.CLAUDE_AGENT_SDK_CLIENT_APP}` : "";
|
|
190402
190403
|
const workload = getWorkload();
|
|
190403
190404
|
const workloadSuffix = workload ? `, workload/${workload}` : "";
|
|
190404
|
-
return `claude-cli/${"0.9.
|
|
190405
|
+
return `claude-cli/${"0.9.4"} (${process.env.USER_TYPE}, ${process.env.CLAUDE_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
|
|
190405
190406
|
}
|
|
190406
190407
|
function getMCPUserAgent() {
|
|
190407
190408
|
const parts = [];
|
|
@@ -190415,7 +190416,7 @@ function getMCPUserAgent() {
|
|
|
190415
190416
|
parts.push(`client-app/${process.env.CLAUDE_AGENT_SDK_CLIENT_APP}`);
|
|
190416
190417
|
}
|
|
190417
190418
|
const suffix = parts.length > 0 ? ` (${parts.join(", ")})` : "";
|
|
190418
|
-
return `claude-code/${"0.9.
|
|
190419
|
+
return `claude-code/${"0.9.4"}${suffix}`;
|
|
190419
190420
|
}
|
|
190420
190421
|
function getWebFetchUserAgent() {
|
|
190421
190422
|
const supportUrl = getAPIProvider() === "firstParty" ? "https://support.anthropic.com/" : "https://github.com/Duheso/ZeroCLI";
|
|
@@ -193312,7 +193313,7 @@ class OpenAIShimMessages {
|
|
|
193312
193313
|
} else if (maxCompletionTokensValue !== undefined) {
|
|
193313
193314
|
body.max_completion_tokens = maxCompletionTokensValue;
|
|
193314
193315
|
}
|
|
193315
|
-
if (params.stream
|
|
193316
|
+
if (params.stream) {
|
|
193316
193317
|
body.stream_options = { include_usage: true };
|
|
193317
193318
|
}
|
|
193318
193319
|
const isGithub = isGithubModelsMode();
|
|
@@ -244849,7 +244850,7 @@ function getTelemetryAttributes() {
|
|
|
244849
244850
|
attributes["session.id"] = sessionId;
|
|
244850
244851
|
}
|
|
244851
244852
|
if (shouldIncludeAttribute("OTEL_METRICS_INCLUDE_VERSION")) {
|
|
244852
|
-
attributes["app.version"] = "0.9.
|
|
244853
|
+
attributes["app.version"] = "0.9.4";
|
|
244853
244854
|
}
|
|
244854
244855
|
const oauthAccount = getOauthAccountInfo();
|
|
244855
244856
|
if (oauthAccount) {
|
|
@@ -257088,7 +257089,7 @@ function computeFingerprint(messageText, version2) {
|
|
|
257088
257089
|
}
|
|
257089
257090
|
function computeFingerprintFromMessages(messages) {
|
|
257090
257091
|
const firstMessageText = extractFirstMessageText(messages);
|
|
257091
|
-
return computeFingerprint(firstMessageText, "0.9.
|
|
257092
|
+
return computeFingerprint(firstMessageText, "0.9.4");
|
|
257092
257093
|
}
|
|
257093
257094
|
var FINGERPRINT_SALT = "59cf53e54c78";
|
|
257094
257095
|
var init_fingerprint = () => {};
|
|
@@ -257130,7 +257131,7 @@ async function sideQuery(opts) {
|
|
|
257130
257131
|
betas.push(STRUCTURED_OUTPUTS_BETA_HEADER);
|
|
257131
257132
|
}
|
|
257132
257133
|
const messageText = extractFirstUserMessageText(messages);
|
|
257133
|
-
const fingerprint = computeFingerprint(messageText, "0.9.
|
|
257134
|
+
const fingerprint = computeFingerprint(messageText, "0.9.4");
|
|
257134
257135
|
const attributionHeader = getAttributionHeader(fingerprint);
|
|
257135
257136
|
const systemBlocks = [
|
|
257136
257137
|
attributionHeader ? { type: "text", text: attributionHeader } : null,
|
|
@@ -266032,7 +266033,7 @@ var init_user = __esm(() => {
|
|
|
266032
266033
|
deviceId,
|
|
266033
266034
|
sessionId: getSessionId(),
|
|
266034
266035
|
email: getEmail(),
|
|
266035
|
-
appVersion: "0.9.
|
|
266036
|
+
appVersion: "0.9.4",
|
|
266036
266037
|
platform: getHostPlatformForAnalytics(),
|
|
266037
266038
|
organizationUuid,
|
|
266038
266039
|
accountUuid,
|
|
@@ -266426,7 +266427,7 @@ async function initializeBetaTracing(resource) {
|
|
|
266426
266427
|
});
|
|
266427
266428
|
logs.setGlobalLoggerProvider(loggerProvider);
|
|
266428
266429
|
setLoggerProvider(loggerProvider);
|
|
266429
|
-
const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "0.9.
|
|
266430
|
+
const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "0.9.4");
|
|
266430
266431
|
setEventLogger(eventLogger);
|
|
266431
266432
|
process.on("beforeExit", async () => {
|
|
266432
266433
|
await loggerProvider?.forceFlush();
|
|
@@ -266466,7 +266467,7 @@ async function initializeTelemetry() {
|
|
|
266466
266467
|
const platform3 = getPlatform();
|
|
266467
266468
|
const baseAttributes = {
|
|
266468
266469
|
[ATTR_SERVICE_NAME3]: "claude-code",
|
|
266469
|
-
[ATTR_SERVICE_VERSION3]: "0.9.
|
|
266470
|
+
[ATTR_SERVICE_VERSION3]: "0.9.4"
|
|
266470
266471
|
};
|
|
266471
266472
|
if (platform3 === "wsl") {
|
|
266472
266473
|
const wslVersion = getWslVersion();
|
|
@@ -266511,7 +266512,7 @@ async function initializeTelemetry() {
|
|
|
266511
266512
|
} catch {}
|
|
266512
266513
|
};
|
|
266513
266514
|
registerCleanup(shutdownTelemetry2);
|
|
266514
|
-
return meterProvider2.getMeter("com.anthropic.claude_code", "0.9.
|
|
266515
|
+
return meterProvider2.getMeter("com.anthropic.claude_code", "0.9.4");
|
|
266515
266516
|
}
|
|
266516
266517
|
const meterProvider = new MeterProvider3({
|
|
266517
266518
|
resource,
|
|
@@ -266531,7 +266532,7 @@ async function initializeTelemetry() {
|
|
|
266531
266532
|
});
|
|
266532
266533
|
logs.setGlobalLoggerProvider(loggerProvider);
|
|
266533
266534
|
setLoggerProvider(loggerProvider);
|
|
266534
|
-
const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "0.9.
|
|
266535
|
+
const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "0.9.4");
|
|
266535
266536
|
setEventLogger(eventLogger);
|
|
266536
266537
|
logForDebugging("[3P telemetry] Event logger set successfully");
|
|
266537
266538
|
process.on("beforeExit", async () => {
|
|
@@ -266593,7 +266594,7 @@ Current timeout: ${timeoutMs}ms
|
|
|
266593
266594
|
}
|
|
266594
266595
|
};
|
|
266595
266596
|
registerCleanup(shutdownTelemetry);
|
|
266596
|
-
return meterProvider.getMeter("com.anthropic.claude_code", "0.9.
|
|
266597
|
+
return meterProvider.getMeter("com.anthropic.claude_code", "0.9.4");
|
|
266597
266598
|
}
|
|
266598
266599
|
async function flushTelemetry() {
|
|
266599
266600
|
const meterProvider = getMeterProvider();
|
|
@@ -267405,9 +267406,9 @@ async function assertMinVersion() {
|
|
|
267405
267406
|
}
|
|
267406
267407
|
try {
|
|
267407
267408
|
const versionConfig = await getDynamicConfig_BLOCKS_ON_INIT("tengu_version_config", { minVersion: "0.0.0" });
|
|
267408
|
-
if (versionConfig.minVersion && lt("0.9.
|
|
267409
|
+
if (versionConfig.minVersion && lt("0.9.4", versionConfig.minVersion)) {
|
|
267409
267410
|
console.error(`
|
|
267410
|
-
It looks like your version of ZeroCLI (${"0.9.
|
|
267411
|
+
It looks like your version of ZeroCLI (${"0.9.4"}) needs an update.
|
|
267411
267412
|
A newer version (${versionConfig.minVersion} or higher) is required to continue.
|
|
267412
267413
|
|
|
267413
267414
|
To update, please run:
|
|
@@ -267623,7 +267624,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
267623
267624
|
logError2(new AutoUpdaterError("Another process is currently installing an update"));
|
|
267624
267625
|
logEvent("tengu_auto_updater_lock_contention", {
|
|
267625
267626
|
pid: process.pid,
|
|
267626
|
-
currentVersion: "0.9.
|
|
267627
|
+
currentVersion: "0.9.4"
|
|
267627
267628
|
});
|
|
267628
267629
|
return "in_progress";
|
|
267629
267630
|
}
|
|
@@ -267632,7 +267633,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
267632
267633
|
if (!env2.isRunningWithBun() && env2.isNpmFromWindowsPath()) {
|
|
267633
267634
|
logError2(new Error("Windows NPM detected in WSL environment"));
|
|
267634
267635
|
logEvent("tengu_auto_updater_windows_npm_in_wsl", {
|
|
267635
|
-
currentVersion: "0.9.
|
|
267636
|
+
currentVersion: "0.9.4"
|
|
267636
267637
|
});
|
|
267637
267638
|
console.error(`
|
|
267638
267639
|
Error: Windows NPM detected in WSL
|
|
@@ -268186,7 +268187,7 @@ async function getDoctorDiagnostic() {
|
|
|
268186
268187
|
const installationType = await getCurrentInstallationType();
|
|
268187
268188
|
let version2;
|
|
268188
268189
|
try {
|
|
268189
|
-
version2 = "0.9.
|
|
268190
|
+
version2 = "0.9.4";
|
|
268190
268191
|
} catch {
|
|
268191
268192
|
version2 = "unknown";
|
|
268192
268193
|
}
|
|
@@ -269680,7 +269681,7 @@ function getInstallationEnv() {
|
|
|
269680
269681
|
return;
|
|
269681
269682
|
}
|
|
269682
269683
|
function getZeroCodeVersion() {
|
|
269683
|
-
return "0.9.
|
|
269684
|
+
return "0.9.4";
|
|
269684
269685
|
}
|
|
269685
269686
|
async function getInstalledVSCodeExtensionVersion(command) {
|
|
269686
269687
|
const { stdout } = await execFileNoThrow(command, ["--list-extensions", "--show-versions"], {
|
|
@@ -271047,8 +271048,8 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
271047
271048
|
const maxVersion = await getMaxVersion();
|
|
271048
271049
|
if (maxVersion && gt(version2, maxVersion)) {
|
|
271049
271050
|
logForDebugging(`Native installer: maxVersion ${maxVersion} is set, capping update from ${version2} to ${maxVersion}`);
|
|
271050
|
-
if (gte("0.9.
|
|
271051
|
-
logForDebugging(`Native installer: current version ${"0.9.
|
|
271051
|
+
if (gte("0.9.4", maxVersion)) {
|
|
271052
|
+
logForDebugging(`Native installer: current version ${"0.9.4"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
271052
271053
|
logEvent("tengu_native_update_skipped_max_version", {
|
|
271053
271054
|
latency_ms: Date.now() - startTime2,
|
|
271054
271055
|
max_version: maxVersion,
|
|
@@ -271059,7 +271060,7 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
271059
271060
|
version2 = maxVersion;
|
|
271060
271061
|
}
|
|
271061
271062
|
}
|
|
271062
|
-
if (!forceReinstall && version2 === "0.9.
|
|
271063
|
+
if (!forceReinstall && version2 === "0.9.4" && await versionIsAvailable(version2) && await isPossibleZeroBinary(executablePath)) {
|
|
271063
271064
|
logForDebugging(`Found ${version2} at ${executablePath}, skipping install`);
|
|
271064
271065
|
logEvent("tengu_native_update_complete", {
|
|
271065
271066
|
latency_ms: Date.now() - startTime2,
|
|
@@ -358078,6 +358079,23 @@ var init_TestingPermissionTool = __esm(() => {
|
|
|
358078
358079
|
});
|
|
358079
358080
|
|
|
358080
358081
|
// src/tools/AskUserQuestionTool/AskUserQuestionTool.tsx
|
|
358082
|
+
function tryParseJsonString(val) {
|
|
358083
|
+
if (typeof val === "string") {
|
|
358084
|
+
try {
|
|
358085
|
+
const parsed = JSON.parse(val);
|
|
358086
|
+
if (typeof parsed === "string") {
|
|
358087
|
+
try {
|
|
358088
|
+
const reparsed = JSON.parse(parsed);
|
|
358089
|
+
if (typeof reparsed === "object" && reparsed !== null)
|
|
358090
|
+
return reparsed;
|
|
358091
|
+
} catch {}
|
|
358092
|
+
}
|
|
358093
|
+
if (typeof parsed === "object" && parsed !== null)
|
|
358094
|
+
return parsed;
|
|
358095
|
+
} catch {}
|
|
358096
|
+
}
|
|
358097
|
+
return val;
|
|
358098
|
+
}
|
|
358081
358099
|
function AskUserQuestionResultMessage(t0) {
|
|
358082
358100
|
const $2 = import_react_compiler_runtime113.c(3);
|
|
358083
358101
|
const {
|
|
@@ -358172,7 +358190,7 @@ var init_AskUserQuestionTool = __esm(() => {
|
|
|
358172
358190
|
questionSchema = lazySchema(() => exports_external.object({
|
|
358173
358191
|
question: exports_external.string().describe('The complete question to ask the user. Should be clear, specific, and end with a question mark. Example: "Which library should we use for date formatting?" If multiSelect is true, phrase it accordingly, e.g. "Which features do you want to enable?"'),
|
|
358174
358192
|
header: exports_external.string().describe(`Very short label displayed as a chip/tag (max ${ASK_USER_QUESTION_TOOL_CHIP_WIDTH} chars). Examples: "Auth method", "Library", "Approach".`),
|
|
358175
|
-
options: exports_external.array(questionOptionSchema()).min(2).max(4).describe(`The available choices for this question. Must have 2-4 options. Each option should be a distinct, mutually exclusive choice (unless multiSelect is enabled). There should be no 'Other' option, that will be provided automatically.`),
|
|
358193
|
+
options: exports_external.preprocess(tryParseJsonString, exports_external.array(questionOptionSchema()).min(2).max(4)).describe(`The available choices for this question. Must have 2-4 options. Each option should be a distinct, mutually exclusive choice (unless multiSelect is enabled). There should be no 'Other' option, that will be provided automatically.`),
|
|
358176
358194
|
multiSelect: exports_external.boolean().default(false).describe("Set to true to allow the user to select multiple options instead of just one. Use when choices are not mutually exclusive.")
|
|
358177
358195
|
}));
|
|
358178
358196
|
annotationsSchema = lazySchema(() => {
|
|
@@ -358205,8 +358223,8 @@ var init_AskUserQuestionTool = __esm(() => {
|
|
|
358205
358223
|
source: exports_external.string().optional().describe('Optional identifier for the source of this question (e.g., "remember" for /remember command). Used for analytics tracking.')
|
|
358206
358224
|
}).optional().describe("Optional metadata for tracking and analytics purposes. Not displayed to user.")
|
|
358207
358225
|
}));
|
|
358208
|
-
inputSchema20 = lazySchema(() => exports_external.
|
|
358209
|
-
questions: exports_external.array(questionSchema()).min(1).max(4).describe("Questions to ask the user (1-4 questions)"),
|
|
358226
|
+
inputSchema20 = lazySchema(() => exports_external.object({
|
|
358227
|
+
questions: exports_external.preprocess(tryParseJsonString, exports_external.array(questionSchema()).min(1).max(4)).describe("Questions to ask the user (1-4 questions)"),
|
|
358210
358228
|
...commonFields()
|
|
358211
358229
|
}).refine(UNIQUENESS_REFINE.check, {
|
|
358212
358230
|
message: UNIQUENESS_REFINE.message
|
|
@@ -368853,7 +368871,7 @@ function getAttributionTexts() {
|
|
|
368853
368871
|
}
|
|
368854
368872
|
const model = getMainLoopModel();
|
|
368855
368873
|
const isKnownPublicModel = getPublicModelDisplayName(model) !== null;
|
|
368856
|
-
const modelName = isInternalModelRepoCached() || isKnownPublicModel ? getPublicModelName(model) : "
|
|
368874
|
+
const modelName = isInternalModelRepoCached() || isKnownPublicModel ? getPublicModelName(model) : "ZeroCLI";
|
|
368857
368875
|
const defaultAttribution = "\uD83E\uDD16 Generated with [Zero CLI](https://github.com/Duheso/ZeroCLI)";
|
|
368858
368876
|
const coAuthorDomain = getAPIProvider() === "firstParty" ? "anthropic.com" : "zerocli.dev";
|
|
368859
368877
|
const defaultCommit = isEnvTruthy(process.env.ZERO_DISABLE_CO_AUTHORED_BY) ? "" : `Co-Authored-By: ${modelName} <noreply@${coAuthorDomain}>`;
|
|
@@ -376266,7 +376284,7 @@ function getAnthropicEnvMetadata() {
|
|
|
376266
376284
|
function getBuildAgeMinutes() {
|
|
376267
376285
|
if (false)
|
|
376268
376286
|
;
|
|
376269
|
-
const buildTime = new Date("2026-05-
|
|
376287
|
+
const buildTime = new Date("2026-05-11T01:40:36.001Z").getTime();
|
|
376270
376288
|
if (isNaN(buildTime))
|
|
376271
376289
|
return;
|
|
376272
376290
|
return Math.floor((Date.now() - buildTime) / 60000);
|
|
@@ -403702,7 +403720,7 @@ async function setupSdkMcpClients(sdkMcpConfigs, sendMcpMessage) {
|
|
|
403702
403720
|
const client2 = new Client({
|
|
403703
403721
|
name: "claude-code",
|
|
403704
403722
|
title: "ZeroCLI",
|
|
403705
|
-
version: "0.9.
|
|
403723
|
+
version: "0.9.4",
|
|
403706
403724
|
description: "Anthropic's agentic coding tool",
|
|
403707
403725
|
websiteUrl: PRODUCT_URL
|
|
403708
403726
|
}, {
|
|
@@ -404054,7 +404072,7 @@ var init_client7 = __esm(() => {
|
|
|
404054
404072
|
const client2 = new Client({
|
|
404055
404073
|
name: "claude-code",
|
|
404056
404074
|
title: "ZeroCLI",
|
|
404057
|
-
version: "0.9.
|
|
404075
|
+
version: "0.9.4",
|
|
404058
404076
|
description: "Anthropic's agentic coding tool",
|
|
404059
404077
|
websiteUrl: PRODUCT_URL
|
|
404060
404078
|
}, {
|
|
@@ -405081,6 +405099,58 @@ function normalizeToolInput(tool, input, agentId) {
|
|
|
405081
405099
|
timeout: timeout ?? 30000
|
|
405082
405100
|
};
|
|
405083
405101
|
}
|
|
405102
|
+
case "AskUserQuestion": {
|
|
405103
|
+
const raw = { ...input };
|
|
405104
|
+
if (typeof raw.questions === "string") {
|
|
405105
|
+
try {
|
|
405106
|
+
const parsed = JSON.parse(raw.questions);
|
|
405107
|
+
if (Array.isArray(parsed))
|
|
405108
|
+
raw.questions = parsed;
|
|
405109
|
+
} catch {}
|
|
405110
|
+
}
|
|
405111
|
+
if (Array.isArray(raw.questions)) {
|
|
405112
|
+
raw.questions = raw.questions.map((q) => {
|
|
405113
|
+
if (typeof q === "string") {
|
|
405114
|
+
try {
|
|
405115
|
+
const p = JSON.parse(q);
|
|
405116
|
+
if (typeof p === "object" && p !== null)
|
|
405117
|
+
return p;
|
|
405118
|
+
} catch {}
|
|
405119
|
+
return q;
|
|
405120
|
+
}
|
|
405121
|
+
if (typeof q !== "object" || q === null)
|
|
405122
|
+
return q;
|
|
405123
|
+
const question = { ...q };
|
|
405124
|
+
if (typeof question.options === "string") {
|
|
405125
|
+
try {
|
|
405126
|
+
const parsed = JSON.parse(question.options);
|
|
405127
|
+
if (Array.isArray(parsed))
|
|
405128
|
+
question.options = parsed;
|
|
405129
|
+
} catch {}
|
|
405130
|
+
}
|
|
405131
|
+
if (question.multiSelect === null)
|
|
405132
|
+
question.multiSelect = false;
|
|
405133
|
+
if ("preview" in question && question.preview === null)
|
|
405134
|
+
delete question.preview;
|
|
405135
|
+
if (Array.isArray(question.options)) {
|
|
405136
|
+
question.options = question.options.map((opt) => {
|
|
405137
|
+
if (typeof opt !== "object" || opt === null)
|
|
405138
|
+
return opt;
|
|
405139
|
+
const o2 = { ...opt };
|
|
405140
|
+
if ("preview" in o2 && o2.preview === null)
|
|
405141
|
+
delete o2.preview;
|
|
405142
|
+
return o2;
|
|
405143
|
+
});
|
|
405144
|
+
}
|
|
405145
|
+
return question;
|
|
405146
|
+
});
|
|
405147
|
+
}
|
|
405148
|
+
if (raw.metadata === null)
|
|
405149
|
+
delete raw.metadata;
|
|
405150
|
+
if (raw.answers === null)
|
|
405151
|
+
delete raw.answers;
|
|
405152
|
+
return raw;
|
|
405153
|
+
}
|
|
405084
405154
|
default:
|
|
405085
405155
|
return input;
|
|
405086
405156
|
}
|
|
@@ -414717,7 +414787,7 @@ function Feedback({
|
|
|
414717
414787
|
platform: env2.platform,
|
|
414718
414788
|
gitRepo: envInfo.isGit,
|
|
414719
414789
|
terminal: env2.terminal,
|
|
414720
|
-
version: "0.9.
|
|
414790
|
+
version: "0.9.4",
|
|
414721
414791
|
transcript: normalizeMessagesForAPI(messages),
|
|
414722
414792
|
errors: sanitizedErrors,
|
|
414723
414793
|
lastApiRequest: getLastAPIRequest(),
|
|
@@ -414910,7 +414980,7 @@ function Feedback({
|
|
|
414910
414980
|
", ",
|
|
414911
414981
|
env2.terminal,
|
|
414912
414982
|
", v",
|
|
414913
|
-
"0.9.
|
|
414983
|
+
"0.9.4"
|
|
414914
414984
|
]
|
|
414915
414985
|
})
|
|
414916
414986
|
]
|
|
@@ -415018,7 +415088,7 @@ ${sanitizedDescription}
|
|
|
415018
415088
|
` + `**Environment Info**
|
|
415019
415089
|
` + `- Platform: ${env2.platform}
|
|
415020
415090
|
` + `- Terminal: ${env2.terminal}
|
|
415021
|
-
` + `- Version: ${"0.9.
|
|
415091
|
+
` + `- Version: ${"0.9.4"}
|
|
415022
415092
|
` + feedbackIdLine + `
|
|
415023
415093
|
**Errors**
|
|
415024
415094
|
\`\`\`json
|
|
@@ -418171,7 +418241,7 @@ function buildPrimarySection() {
|
|
|
418171
418241
|
});
|
|
418172
418242
|
return [{
|
|
418173
418243
|
label: "Version",
|
|
418174
|
-
value: "0.9.
|
|
418244
|
+
value: "0.9.4"
|
|
418175
418245
|
}, {
|
|
418176
418246
|
label: "Session name",
|
|
418177
418247
|
value: nameValue
|
|
@@ -422941,7 +423011,7 @@ function Config({
|
|
|
422941
423011
|
}
|
|
422942
423012
|
})
|
|
422943
423013
|
}) : showSubmenu === "ChannelDowngrade" ? /* @__PURE__ */ jsx_runtime181.jsx(ChannelDowngradeDialog, {
|
|
422944
|
-
currentVersion: "0.9.
|
|
423014
|
+
currentVersion: "0.9.4",
|
|
422945
423015
|
onChoice: (choice) => {
|
|
422946
423016
|
setShowSubmenu(null);
|
|
422947
423017
|
setTabsHidden(false);
|
|
@@ -422953,7 +423023,7 @@ function Config({
|
|
|
422953
423023
|
autoUpdatesChannel: "stable"
|
|
422954
423024
|
};
|
|
422955
423025
|
if (choice === "stay") {
|
|
422956
|
-
newSettings.minimumVersion = "0.9.
|
|
423026
|
+
newSettings.minimumVersion = "0.9.4";
|
|
422957
423027
|
}
|
|
422958
423028
|
updateSettingsForSource("userSettings", newSettings);
|
|
422959
423029
|
setSettingsData((prev_27) => ({
|
|
@@ -429894,7 +429964,7 @@ function UpdateScreen({ onDone }) {
|
|
|
429894
429964
|
setState({ type: "dev-build" });
|
|
429895
429965
|
return;
|
|
429896
429966
|
}
|
|
429897
|
-
const currentVersion = "0.9.
|
|
429967
|
+
const currentVersion = "0.9.4";
|
|
429898
429968
|
const channel2 = getInitialSettings()?.autoUpdatesChannel ?? "latest";
|
|
429899
429969
|
const latestVersion = await getLatestVersion(channel2);
|
|
429900
429970
|
if (!latestVersion) {
|
|
@@ -432005,7 +432075,7 @@ function HelpV2(t0) {
|
|
|
432005
432075
|
let t6;
|
|
432006
432076
|
if ($2[31] !== tabs) {
|
|
432007
432077
|
t6 = /* @__PURE__ */ jsx_runtime211.jsx(Tabs, {
|
|
432008
|
-
title: `ZeroCLI v${"0.9.
|
|
432078
|
+
title: `ZeroCLI v${"0.9.4"}`,
|
|
432009
432079
|
color: "professionalBlue",
|
|
432010
432080
|
defaultTab: "general",
|
|
432011
432081
|
children: tabs
|
|
@@ -456849,7 +456919,7 @@ function getAllReleaseNotes(changelogContent = getStoredChangelogFromMemory()) {
|
|
|
456849
456919
|
return [];
|
|
456850
456920
|
}
|
|
456851
456921
|
}
|
|
456852
|
-
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "0.9.
|
|
456922
|
+
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "0.9.4") {
|
|
456853
456923
|
if (process.env.USER_TYPE === "ant") {
|
|
456854
456924
|
const changelog = MACRO.VERSION_CHANGELOG;
|
|
456855
456925
|
if (changelog) {
|
|
@@ -466162,7 +466232,7 @@ function AsyncAgentDetailDialog(t0) {
|
|
|
466162
466232
|
t5 = $2[10];
|
|
466163
466233
|
}
|
|
466164
466234
|
const planContent = t5;
|
|
466165
|
-
const displayPrompt = agent2.prompt.length >
|
|
466235
|
+
const displayPrompt = agent2.prompt.length > 800 ? agent2.prompt.substring(0, 797) + "…" : agent2.prompt;
|
|
466166
466236
|
const tokenCount = agent2.result?.totalTokens ?? agent2.progress?.tokenCount;
|
|
466167
466237
|
const toolUseCount = agent2.result?.totalToolUseCount ?? agent2.progress?.toolUseCount;
|
|
466168
466238
|
const t6 = agent2.selectedAgent?.agentType ?? "agent";
|
|
@@ -466294,8 +466364,8 @@ function AsyncAgentDetailDialog(t0) {
|
|
|
466294
466364
|
t14 = $2[30];
|
|
466295
466365
|
}
|
|
466296
466366
|
let t15;
|
|
466297
|
-
if ($2[31] !== agent2.progress || $2[
|
|
466298
|
-
t15 = agent2.
|
|
466367
|
+
if ($2[31] !== agent2.progress || $2[33] !== theme) {
|
|
466368
|
+
t15 = agent2.progress?.recentActivities && agent2.progress.recentActivities.length > 0 && /* @__PURE__ */ jsx_runtime275.jsxs(ThemedBox_default, {
|
|
466299
466369
|
flexDirection: "column",
|
|
466300
466370
|
children: [
|
|
466301
466371
|
/* @__PURE__ */ jsx_runtime275.jsx(ThemedText, {
|
|
@@ -485887,7 +485957,7 @@ async function captureMemoryDiagnostics(trigger, dumpNumber = 0) {
|
|
|
485887
485957
|
smapsRollup,
|
|
485888
485958
|
platform: process.platform,
|
|
485889
485959
|
nodeVersion: process.version,
|
|
485890
|
-
ccVersion: "0.9.
|
|
485960
|
+
ccVersion: "0.9.4"
|
|
485891
485961
|
};
|
|
485892
485962
|
}
|
|
485893
485963
|
async function performHeapDump(trigger = "manual", dumpNumber = 0) {
|
|
@@ -486474,7 +486544,7 @@ var init_bridge_kick = __esm(() => {
|
|
|
486474
486544
|
var call60 = async () => {
|
|
486475
486545
|
return {
|
|
486476
486546
|
type: "text",
|
|
486477
|
-
value: `${"0.9.
|
|
486547
|
+
value: `${"0.9.4"} (built ${"2026-05-11T01:40:36.001Z"})`
|
|
486478
486548
|
};
|
|
486479
486549
|
}, version2, version_default;
|
|
486480
486550
|
var init_version = __esm(() => {
|
|
@@ -496631,7 +496701,7 @@ function generateHtmlReport(data, insights) {
|
|
|
496631
496701
|
function buildExportData(data, insights, facets) {
|
|
496632
496702
|
let version3;
|
|
496633
496703
|
try {
|
|
496634
|
-
version3 = "0.9.
|
|
496704
|
+
version3 = "0.9.4";
|
|
496635
496705
|
} catch {
|
|
496636
496706
|
version3 = "unknown";
|
|
496637
496707
|
}
|
|
@@ -500827,7 +500897,7 @@ var init_sessionStorage = __esm(() => {
|
|
|
500827
500897
|
init_slowOperations();
|
|
500828
500898
|
init_uuid();
|
|
500829
500899
|
try {
|
|
500830
|
-
VERSION7 = "0.9.
|
|
500900
|
+
VERSION7 = "0.9.4";
|
|
500831
500901
|
} catch {
|
|
500832
500902
|
VERSION7 = "unknown";
|
|
500833
500903
|
}
|
|
@@ -502148,7 +502218,7 @@ var init_filesystem = __esm(() => {
|
|
|
502148
502218
|
});
|
|
502149
502219
|
getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
|
|
502150
502220
|
const nonce = randomBytes17(16).toString("hex");
|
|
502151
|
-
return join137(getZeroTempDir(), "bundled-skills", "0.9.
|
|
502221
|
+
return join137(getZeroTempDir(), "bundled-skills", "0.9.4", nonce);
|
|
502152
502222
|
});
|
|
502153
502223
|
getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
|
|
502154
502224
|
});
|
|
@@ -513168,7 +513238,7 @@ function buildSystemInitMessage(inputs) {
|
|
|
513168
513238
|
slash_commands: inputs.commands.filter((c6) => c6.userInvocable !== false).map((c6) => c6.name),
|
|
513169
513239
|
apiKeySource: getAnthropicApiKeyWithSource().source,
|
|
513170
513240
|
betas: getSdkBetas(),
|
|
513171
|
-
claude_code_version: "0.9.
|
|
513241
|
+
claude_code_version: "0.9.4",
|
|
513172
513242
|
output_style: outputStyle2,
|
|
513173
513243
|
agents: inputs.agents.map((agent2) => agent2.agentType),
|
|
513174
513244
|
skills: inputs.skills.filter((s) => s.userInvocable !== false).map((skill) => skill.name),
|
|
@@ -528483,7 +528553,7 @@ var init_useVoiceEnabled = __esm(() => {
|
|
|
528483
528553
|
function getSemverPart(version3) {
|
|
528484
528554
|
return `${import_semver12.major(version3, { loose: true })}.${import_semver12.minor(version3, { loose: true })}.${import_semver12.patch(version3, { loose: true })}`;
|
|
528485
528555
|
}
|
|
528486
|
-
function useUpdateNotification(updatedVersion, initialVersion = "0.9.
|
|
528556
|
+
function useUpdateNotification(updatedVersion, initialVersion = "0.9.4") {
|
|
528487
528557
|
const [lastNotifiedSemver, setLastNotifiedSemver] = import_react226.useState(() => getSemverPart(initialVersion));
|
|
528488
528558
|
if (!updatedVersion) {
|
|
528489
528559
|
return null;
|
|
@@ -528526,7 +528596,7 @@ function AutoUpdater({
|
|
|
528526
528596
|
return;
|
|
528527
528597
|
}
|
|
528528
528598
|
if (false) {}
|
|
528529
|
-
const currentVersion = "0.9.
|
|
528599
|
+
const currentVersion = "0.9.4";
|
|
528530
528600
|
const channel2 = getInitialSettings()?.autoUpdatesChannel ?? "latest";
|
|
528531
528601
|
let latestVersion = await getLatestVersion(channel2);
|
|
528532
528602
|
const isDisabled = isAutoUpdaterDisabled();
|
|
@@ -528747,12 +528817,12 @@ function NativeAutoUpdater({
|
|
|
528747
528817
|
logEvent("tengu_native_auto_updater_start", {});
|
|
528748
528818
|
try {
|
|
528749
528819
|
const maxVersion = await getMaxVersion();
|
|
528750
|
-
if (maxVersion && gt("0.9.
|
|
528820
|
+
if (maxVersion && gt("0.9.4", maxVersion)) {
|
|
528751
528821
|
const msg = await getMaxVersionMessage();
|
|
528752
528822
|
setMaxVersionIssue(msg ?? "affects your version");
|
|
528753
528823
|
}
|
|
528754
528824
|
const result = await installLatest(channel2);
|
|
528755
|
-
const currentVersion = "0.9.
|
|
528825
|
+
const currentVersion = "0.9.4";
|
|
528756
528826
|
const latencyMs = Date.now() - startTime2;
|
|
528757
528827
|
if (result.lockFailed) {
|
|
528758
528828
|
logEvent("tengu_native_auto_updater_lock_contention", {
|
|
@@ -528894,17 +528964,17 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
528894
528964
|
const maxVersion = await getMaxVersion();
|
|
528895
528965
|
if (maxVersion && latest && gt(latest, maxVersion)) {
|
|
528896
528966
|
logForDebugging(`PackageManagerAutoUpdater: maxVersion ${maxVersion} is set, capping update from ${latest} to ${maxVersion}`);
|
|
528897
|
-
if (gte("0.9.
|
|
528898
|
-
logForDebugging(`PackageManagerAutoUpdater: current version ${"0.9.
|
|
528967
|
+
if (gte("0.9.4", maxVersion)) {
|
|
528968
|
+
logForDebugging(`PackageManagerAutoUpdater: current version ${"0.9.4"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
528899
528969
|
setUpdateAvailable(false);
|
|
528900
528970
|
return;
|
|
528901
528971
|
}
|
|
528902
528972
|
latest = maxVersion;
|
|
528903
528973
|
}
|
|
528904
|
-
const hasUpdate = latest && !gte("0.9.
|
|
528974
|
+
const hasUpdate = latest && !gte("0.9.4", latest) && !shouldSkipVersion(latest);
|
|
528905
528975
|
setUpdateAvailable(!!hasUpdate);
|
|
528906
528976
|
if (hasUpdate) {
|
|
528907
|
-
logForDebugging(`PackageManagerAutoUpdater: Update available ${"0.9.
|
|
528977
|
+
logForDebugging(`PackageManagerAutoUpdater: Update available ${"0.9.4"} -> ${latest}`);
|
|
528908
528978
|
}
|
|
528909
528979
|
};
|
|
528910
528980
|
$2[0] = t1;
|
|
@@ -528938,7 +529008,7 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
528938
529008
|
wrap: "truncate",
|
|
528939
529009
|
children: [
|
|
528940
529010
|
"currentVersion: ",
|
|
528941
|
-
"0.9.
|
|
529011
|
+
"0.9.4"
|
|
528942
529012
|
]
|
|
528943
529013
|
});
|
|
528944
529014
|
$2[3] = verbose;
|
|
@@ -537967,7 +538037,7 @@ function buildStatusLineCommandInput(permissionMode, exceeds200kTokens, settings
|
|
|
537967
538037
|
project_dir: getOriginalCwd(),
|
|
537968
538038
|
added_dirs: addedDirs
|
|
537969
538039
|
},
|
|
537970
|
-
version: "0.9.
|
|
538040
|
+
version: "0.9.4",
|
|
537971
538041
|
output_style: {
|
|
537972
538042
|
name: outputStyleName
|
|
537973
538043
|
},
|
|
@@ -562469,7 +562539,7 @@ function WelcomeV2() {
|
|
|
562469
562539
|
dimColor: true,
|
|
562470
562540
|
children: [
|
|
562471
562541
|
"v",
|
|
562472
|
-
"0.9.
|
|
562542
|
+
"0.9.4",
|
|
562473
562543
|
" "
|
|
562474
562544
|
]
|
|
562475
562545
|
})
|
|
@@ -562703,7 +562773,7 @@ function WelcomeV2() {
|
|
|
562703
562773
|
dimColor: true,
|
|
562704
562774
|
children: [
|
|
562705
562775
|
"v",
|
|
562706
|
-
"0.9.
|
|
562776
|
+
"0.9.4",
|
|
562707
562777
|
" "
|
|
562708
562778
|
]
|
|
562709
562779
|
})
|
|
@@ -562950,7 +563020,7 @@ function AppleTerminalWelcomeV2(t0) {
|
|
|
562950
563020
|
dimColor: true,
|
|
562951
563021
|
children: [
|
|
562952
563022
|
"v",
|
|
562953
|
-
"0.9.
|
|
563023
|
+
"0.9.4",
|
|
562954
563024
|
" "
|
|
562955
563025
|
]
|
|
562956
563026
|
});
|
|
@@ -563223,7 +563293,7 @@ function AppleTerminalWelcomeV2(t0) {
|
|
|
563223
563293
|
dimColor: true,
|
|
563224
563294
|
children: [
|
|
563225
563295
|
"v",
|
|
563226
|
-
"0.9.
|
|
563296
|
+
"0.9.4",
|
|
563227
563297
|
" "
|
|
563228
563298
|
]
|
|
563229
563299
|
});
|
|
@@ -564735,7 +564805,7 @@ function completeOnboarding() {
|
|
|
564735
564805
|
saveGlobalConfig((current) => ({
|
|
564736
564806
|
...current,
|
|
564737
564807
|
hasCompletedOnboarding: true,
|
|
564738
|
-
lastOnboardingVersion: "0.9.
|
|
564808
|
+
lastOnboardingVersion: "0.9.4"
|
|
564739
564809
|
}));
|
|
564740
564810
|
}
|
|
564741
564811
|
function showDialog(root2, renderer) {
|
|
@@ -568986,7 +569056,7 @@ function appendToLog(path24, message) {
|
|
|
568986
569056
|
cwd: getFsImplementation().cwd(),
|
|
568987
569057
|
userType: process.env.USER_TYPE,
|
|
568988
569058
|
sessionId: getSessionId(),
|
|
568989
|
-
version: "0.9.
|
|
569059
|
+
version: "0.9.4"
|
|
568990
569060
|
};
|
|
568991
569061
|
getLogWriter(path24).write(messageWithTimestamp);
|
|
568992
569062
|
}
|
|
@@ -569592,7 +569662,7 @@ async function startMCPServer(cwd2, debug, verbose) {
|
|
|
569592
569662
|
setCwd(cwd2);
|
|
569593
569663
|
const server = new Server({
|
|
569594
569664
|
name: "claude/tengu",
|
|
569595
|
-
version: "0.9.
|
|
569665
|
+
version: "0.9.4"
|
|
569596
569666
|
}, {
|
|
569597
569667
|
capabilities: {
|
|
569598
569668
|
tools: {}
|
|
@@ -574231,8 +574301,8 @@ async function getEnvLessBridgeConfig() {
|
|
|
574231
574301
|
}
|
|
574232
574302
|
async function checkEnvLessBridgeMinVersion() {
|
|
574233
574303
|
const cfg = await getEnvLessBridgeConfig();
|
|
574234
|
-
if (cfg.min_version && lt("0.9.
|
|
574235
|
-
return `Your version of ZeroCLI (${"0.9.
|
|
574304
|
+
if (cfg.min_version && lt("0.9.4", cfg.min_version)) {
|
|
574305
|
+
return `Your version of ZeroCLI (${"0.9.4"}) is too old for Remote Control.
|
|
574236
574306
|
Version ${cfg.min_version} or higher is required. Run \`zero update\` to update.`;
|
|
574237
574307
|
}
|
|
574238
574308
|
return null;
|
|
@@ -574707,7 +574777,7 @@ async function initBridgeCore(params) {
|
|
|
574707
574777
|
const rawApi = createBridgeApiClient({
|
|
574708
574778
|
baseUrl,
|
|
574709
574779
|
getAccessToken,
|
|
574710
|
-
runnerVersion: "0.9.
|
|
574780
|
+
runnerVersion: "0.9.4",
|
|
574711
574781
|
onDebug: logForDebugging,
|
|
574712
574782
|
onAuth401,
|
|
574713
574783
|
getTrustedDeviceToken
|
|
@@ -580995,7 +581065,7 @@ __export(exports_update2, {
|
|
|
580995
581065
|
});
|
|
580996
581066
|
async function update2() {
|
|
580997
581067
|
logEvent("tengu_update_check", {});
|
|
580998
|
-
writeToStdout(`Current version: ${"0.9.
|
|
581068
|
+
writeToStdout(`Current version: ${"0.9.4"}
|
|
580999
581069
|
`);
|
|
581000
581070
|
const channel2 = getInitialSettings()?.autoUpdatesChannel ?? "latest";
|
|
581001
581071
|
writeToStdout(`Checking for updates to ${channel2} version...
|
|
@@ -581070,8 +581140,8 @@ async function update2() {
|
|
|
581070
581140
|
writeToStdout(`Zero is managed by Homebrew.
|
|
581071
581141
|
`);
|
|
581072
581142
|
const latest = await getLatestVersion(channel2);
|
|
581073
|
-
if (latest && !gte("0.9.
|
|
581074
|
-
writeToStdout(`Update available: ${"0.9.
|
|
581143
|
+
if (latest && !gte("0.9.4", latest)) {
|
|
581144
|
+
writeToStdout(`Update available: ${"0.9.4"} → ${latest}
|
|
581075
581145
|
`);
|
|
581076
581146
|
writeToStdout(`
|
|
581077
581147
|
`);
|
|
@@ -581087,8 +581157,8 @@ async function update2() {
|
|
|
581087
581157
|
writeToStdout(`Zero is managed by winget.
|
|
581088
581158
|
`);
|
|
581089
581159
|
const latest = await getLatestVersion(channel2);
|
|
581090
|
-
if (latest && !gte("0.9.
|
|
581091
|
-
writeToStdout(`Update available: ${"0.9.
|
|
581160
|
+
if (latest && !gte("0.9.4", latest)) {
|
|
581161
|
+
writeToStdout(`Update available: ${"0.9.4"} → ${latest}
|
|
581092
581162
|
`);
|
|
581093
581163
|
writeToStdout(`
|
|
581094
581164
|
`);
|
|
@@ -581104,8 +581174,8 @@ async function update2() {
|
|
|
581104
581174
|
writeToStdout(`Zero is managed by apk.
|
|
581105
581175
|
`);
|
|
581106
581176
|
const latest = await getLatestVersion(channel2);
|
|
581107
|
-
if (latest && !gte("0.9.
|
|
581108
|
-
writeToStdout(`Update available: ${"0.9.
|
|
581177
|
+
if (latest && !gte("0.9.4", latest)) {
|
|
581178
|
+
writeToStdout(`Update available: ${"0.9.4"} → ${latest}
|
|
581109
581179
|
`);
|
|
581110
581180
|
writeToStdout(`
|
|
581111
581181
|
`);
|
|
@@ -581170,11 +581240,11 @@ async function update2() {
|
|
|
581170
581240
|
`);
|
|
581171
581241
|
await gracefulShutdown(1);
|
|
581172
581242
|
}
|
|
581173
|
-
if (result.latestVersion === "0.9.
|
|
581174
|
-
writeToStdout(source_default.green(`Zero CLI is up to date (${"0.9.
|
|
581243
|
+
if (result.latestVersion === "0.9.4") {
|
|
581244
|
+
writeToStdout(source_default.green(`Zero CLI is up to date (${"0.9.4"})`) + `
|
|
581175
581245
|
`);
|
|
581176
581246
|
} else {
|
|
581177
|
-
writeToStdout(source_default.green(`Successfully updated from ${"0.9.
|
|
581247
|
+
writeToStdout(source_default.green(`Successfully updated from ${"0.9.4"} to version ${result.latestVersion}`) + `
|
|
581178
581248
|
`);
|
|
581179
581249
|
await regenerateCompletionCache();
|
|
581180
581250
|
}
|
|
@@ -581234,12 +581304,12 @@ async function update2() {
|
|
|
581234
581304
|
`);
|
|
581235
581305
|
await gracefulShutdown(1);
|
|
581236
581306
|
}
|
|
581237
|
-
if (latestVersion === "0.9.
|
|
581238
|
-
writeToStdout(source_default.green(`Zero CLI is up to date (${"0.9.
|
|
581307
|
+
if (latestVersion === "0.9.4") {
|
|
581308
|
+
writeToStdout(source_default.green(`Zero CLI is up to date (${"0.9.4"})`) + `
|
|
581239
581309
|
`);
|
|
581240
581310
|
await gracefulShutdown(0);
|
|
581241
581311
|
}
|
|
581242
|
-
writeToStdout(`New version available: ${latestVersion} (current: ${"0.9.
|
|
581312
|
+
writeToStdout(`New version available: ${latestVersion} (current: ${"0.9.4"})
|
|
581243
581313
|
`);
|
|
581244
581314
|
writeToStdout(`Installing update...
|
|
581245
581315
|
`);
|
|
@@ -581284,7 +581354,7 @@ async function update2() {
|
|
|
581284
581354
|
logForDebugging(`update: Installation status: ${status2}`);
|
|
581285
581355
|
switch (status2) {
|
|
581286
581356
|
case "success":
|
|
581287
|
-
writeToStdout(source_default.green(`Successfully updated from ${"0.9.
|
|
581357
|
+
writeToStdout(source_default.green(`Successfully updated from ${"0.9.4"} to version ${latestVersion}`) + `
|
|
581288
581358
|
`);
|
|
581289
581359
|
await regenerateCompletionCache();
|
|
581290
581360
|
break;
|
|
@@ -582585,7 +582655,7 @@ ${customInstructions}` : customInstructions;
|
|
|
582585
582655
|
}
|
|
582586
582656
|
}
|
|
582587
582657
|
logForDiagnosticsNoPII("info", "started", {
|
|
582588
|
-
version: "0.9.
|
|
582658
|
+
version: "0.9.4",
|
|
582589
582659
|
is_native_binary: isInBundledMode()
|
|
582590
582660
|
});
|
|
582591
582661
|
registerCleanup(async () => {
|
|
@@ -583468,7 +583538,7 @@ Usage: claude --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
583468
583538
|
pendingHookMessages
|
|
583469
583539
|
}, renderAndRun);
|
|
583470
583540
|
}
|
|
583471
|
-
}).version("0.9.
|
|
583541
|
+
}).version("0.9.4", "-v, --version", "Output the version number");
|
|
583472
583542
|
program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
|
|
583473
583543
|
program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
|
|
583474
583544
|
if (canUserConfigureAdvisor()) {
|
|
@@ -584134,7 +584204,7 @@ if (false) {}
|
|
|
584134
584204
|
async function main2() {
|
|
584135
584205
|
const args = process.argv.slice(2);
|
|
584136
584206
|
if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
|
|
584137
|
-
console.log(`${"0.9.
|
|
584207
|
+
console.log(`${"0.9.4"} (ZeroCLI)`);
|
|
584138
584208
|
return;
|
|
584139
584209
|
}
|
|
584140
584210
|
if (args.includes("--provider")) {
|
|
@@ -584276,4 +584346,4 @@ async function main2() {
|
|
|
584276
584346
|
}
|
|
584277
584347
|
main2();
|
|
584278
584348
|
|
|
584279
|
-
//# debugId=
|
|
584349
|
+
//# debugId=C6156E411B8F3BDB64756E2164756E21
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@duheso/zerocli",
|
|
3
|
-
"version": "0.9.
|
|
4
|
-
"description": "Zero
|
|
3
|
+
"version": "0.9.4",
|
|
4
|
+
"description": "Zero CLI to any LLM — OpenAI, Gemini, DeepSeek, Ollama, and 200+ models",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
7
7
|
"zero": "bin/zero"
|