@duheso/zerocli 0.9.3 → 0.9.5
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 +328 -256
- package/package.json +2 -2
package/dist/cli.mjs
CHANGED
|
@@ -119192,7 +119192,7 @@ function buildProviderInfoLines() {
|
|
|
119192
119192
|
const sLen = ` ● ${sL} ${sReady}`.length;
|
|
119193
119193
|
out.push(boxRow(sRow, W2, sLen));
|
|
119194
119194
|
out.push(`${rgb(...BORDER)}╚${"═".repeat(W2 - 2)}╝${RESET}`);
|
|
119195
|
-
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.5"}${RESET}`);
|
|
119196
119196
|
return out;
|
|
119197
119197
|
}
|
|
119198
119198
|
function printStartupScreen() {}
|
|
@@ -147383,7 +147383,7 @@ function getAttributionHeader(fingerprint) {
|
|
|
147383
147383
|
if (!isAttributionHeaderEnabled()) {
|
|
147384
147384
|
return "";
|
|
147385
147385
|
}
|
|
147386
|
-
const version2 = `${"0.9.
|
|
147386
|
+
const version2 = `${"0.9.5"}.${fingerprint}`;
|
|
147387
147387
|
const entrypoint = process.env.CLAUDE_CODE_ENTRYPOINT ?? "unknown";
|
|
147388
147388
|
const cch = "";
|
|
147389
147389
|
const workload = getWorkload();
|
|
@@ -190393,7 +190393,7 @@ var init_imageValidation = __esm(() => {
|
|
|
190393
190393
|
|
|
190394
190394
|
// src/utils/userAgent.ts
|
|
190395
190395
|
function getZeroCodeUserAgent() {
|
|
190396
|
-
return `claude-code/${"0.9.
|
|
190396
|
+
return `claude-code/${"0.9.5"}`;
|
|
190397
190397
|
}
|
|
190398
190398
|
|
|
190399
190399
|
// src/utils/http.ts
|
|
@@ -190402,7 +190402,7 @@ function getUserAgent() {
|
|
|
190402
190402
|
const clientApp = process.env.CLAUDE_AGENT_SDK_CLIENT_APP ? `, client-app/${process.env.CLAUDE_AGENT_SDK_CLIENT_APP}` : "";
|
|
190403
190403
|
const workload = getWorkload();
|
|
190404
190404
|
const workloadSuffix = workload ? `, workload/${workload}` : "";
|
|
190405
|
-
return `claude-cli/${"0.9.
|
|
190405
|
+
return `claude-cli/${"0.9.5"} (${process.env.USER_TYPE}, ${process.env.CLAUDE_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
|
|
190406
190406
|
}
|
|
190407
190407
|
function getMCPUserAgent() {
|
|
190408
190408
|
const parts = [];
|
|
@@ -190416,7 +190416,7 @@ function getMCPUserAgent() {
|
|
|
190416
190416
|
parts.push(`client-app/${process.env.CLAUDE_AGENT_SDK_CLIENT_APP}`);
|
|
190417
190417
|
}
|
|
190418
190418
|
const suffix = parts.length > 0 ? ` (${parts.join(", ")})` : "";
|
|
190419
|
-
return `claude-code/${"0.9.
|
|
190419
|
+
return `claude-code/${"0.9.5"}${suffix}`;
|
|
190420
190420
|
}
|
|
190421
190421
|
function getWebFetchUserAgent() {
|
|
190422
190422
|
const supportUrl = getAPIProvider() === "firstParty" ? "https://support.anthropic.com/" : "https://github.com/Duheso/ZeroCLI";
|
|
@@ -191429,6 +191429,7 @@ var init_openaiSchemaSanitizer = __esm(() => {
|
|
|
191429
191429
|
});
|
|
191430
191430
|
|
|
191431
191431
|
// src/services/api/codexShim.ts
|
|
191432
|
+
import { randomUUID as randomUUID5 } from "crypto";
|
|
191432
191433
|
function makeUsage(usage) {
|
|
191433
191434
|
return {
|
|
191434
191435
|
input_tokens: usage?.input_tokens ?? 0,
|
|
@@ -191438,7 +191439,7 @@ function makeUsage(usage) {
|
|
|
191438
191439
|
};
|
|
191439
191440
|
}
|
|
191440
191441
|
function makeMessageId() {
|
|
191441
|
-
return `msg_${
|
|
191442
|
+
return `msg_${randomUUID5().replace(/-/g, "")}`;
|
|
191442
191443
|
}
|
|
191443
191444
|
function normalizeToolUseId(toolUseId) {
|
|
191444
191445
|
const value = (toolUseId || "").trim();
|
|
@@ -192346,9 +192347,9 @@ var init_toolArgumentNormalization = __esm(() => {
|
|
|
192346
192347
|
});
|
|
192347
192348
|
|
|
192348
192349
|
// src/utils/requestLogging.ts
|
|
192349
|
-
import { randomUUID as
|
|
192350
|
+
import { randomUUID as randomUUID6 } from "crypto";
|
|
192350
192351
|
function createCorrelationId() {
|
|
192351
|
-
return
|
|
192352
|
+
return randomUUID6();
|
|
192352
192353
|
}
|
|
192353
192354
|
function logApiCallStart(provider, model) {
|
|
192354
192355
|
const correlationId = createCorrelationId();
|
|
@@ -192419,6 +192420,7 @@ var exports_openaiShim = {};
|
|
|
192419
192420
|
__export(exports_openaiShim, {
|
|
192420
192421
|
createOpenAIShimClient: () => createOpenAIShimClient
|
|
192421
192422
|
});
|
|
192423
|
+
import { randomUUID as randomUUID7 } from "crypto";
|
|
192422
192424
|
function isGithubModelsMode() {
|
|
192423
192425
|
return isEnvTruthy(process.env.CLAUDE_CODE_USE_GITHUB);
|
|
192424
192426
|
}
|
|
@@ -192678,7 +192680,7 @@ function convertMessages(messages, system, options2) {
|
|
|
192678
192680
|
}
|
|
192679
192681
|
if (toolUses.length > 0) {
|
|
192680
192682
|
const mappedToolCalls = toolUses.map((tu) => {
|
|
192681
|
-
const id = tu.id ?? `call_${
|
|
192683
|
+
const id = tu.id ?? `call_${randomUUID7().replace(/-/g, "")}`;
|
|
192682
192684
|
if (!toolResultIds.has(id) && !isLastInHistory) {
|
|
192683
192685
|
return null;
|
|
192684
192686
|
}
|
|
@@ -192825,7 +192827,7 @@ function convertTools(tools) {
|
|
|
192825
192827
|
});
|
|
192826
192828
|
}
|
|
192827
192829
|
function makeMessageId2() {
|
|
192828
|
-
return `msg_${
|
|
192830
|
+
return `msg_${randomUUID7().replace(/-/g, "")}`;
|
|
192829
192831
|
}
|
|
192830
192832
|
function convertChunkUsage(usage) {
|
|
192831
192833
|
if (!usage)
|
|
@@ -200954,7 +200956,7 @@ var init_bedrock_sdk = __esm(() => {
|
|
|
200954
200956
|
});
|
|
200955
200957
|
|
|
200956
200958
|
// src/services/api/client.ts
|
|
200957
|
-
import { randomUUID as
|
|
200959
|
+
import { randomUUID as randomUUID8 } from "crypto";
|
|
200958
200960
|
function createStderrLogger() {
|
|
200959
200961
|
return {
|
|
200960
200962
|
error: (msg, ...args) => console.error("[Anthropic SDK ERROR]", msg, ...args),
|
|
@@ -201160,7 +201162,7 @@ function buildFetch(fetchOverride, source) {
|
|
|
201160
201162
|
return (input, init) => {
|
|
201161
201163
|
const headers = new Headers(init?.headers);
|
|
201162
201164
|
if (injectClientRequestId && !headers.has(CLIENT_REQUEST_ID_HEADER)) {
|
|
201163
|
-
headers.set(CLIENT_REQUEST_ID_HEADER,
|
|
201165
|
+
headers.set(CLIENT_REQUEST_ID_HEADER, randomUUID8());
|
|
201164
201166
|
}
|
|
201165
201167
|
try {
|
|
201166
201168
|
const url3 = input instanceof Request ? input.url : String(input);
|
|
@@ -244850,7 +244852,7 @@ function getTelemetryAttributes() {
|
|
|
244850
244852
|
attributes["session.id"] = sessionId;
|
|
244851
244853
|
}
|
|
244852
244854
|
if (shouldIncludeAttribute("OTEL_METRICS_INCLUDE_VERSION")) {
|
|
244853
|
-
attributes["app.version"] = "0.9.
|
|
244855
|
+
attributes["app.version"] = "0.9.5";
|
|
244854
244856
|
}
|
|
244855
244857
|
const oauthAccount = getOauthAccountInfo();
|
|
244856
244858
|
if (oauthAccount) {
|
|
@@ -253644,7 +253646,7 @@ var init_queryHelpers = __esm(() => {
|
|
|
253644
253646
|
});
|
|
253645
253647
|
|
|
253646
253648
|
// src/services/PromptSuggestion/speculation.ts
|
|
253647
|
-
import { randomUUID as
|
|
253649
|
+
import { randomUUID as randomUUID9 } from "crypto";
|
|
253648
253650
|
import { rm as rm2 } from "fs";
|
|
253649
253651
|
import { appendFile as appendFile3, copyFile, mkdir as mkdir7 } from "fs/promises";
|
|
253650
253652
|
import { dirname as dirname23, isAbsolute as isAbsolute11, join as join46, relative as relative7 } from "path";
|
|
@@ -253835,7 +253837,7 @@ async function startSpeculation(suggestionText, context3, setAppState, isPipelin
|
|
|
253835
253837
|
if (!isSpeculationEnabled())
|
|
253836
253838
|
return;
|
|
253837
253839
|
abortSpeculation(setAppState);
|
|
253838
|
-
const id =
|
|
253840
|
+
const id = randomUUID9().slice(0, 8);
|
|
253839
253841
|
const abortController = createChildAbortController(context3.toolUseContext.abortController);
|
|
253840
253842
|
if (abortController.signal.aborted)
|
|
253841
253843
|
return;
|
|
@@ -254215,7 +254217,7 @@ var init_speculation = __esm(() => {
|
|
|
254215
254217
|
});
|
|
254216
254218
|
|
|
254217
254219
|
// src/utils/sdkEventQueue.ts
|
|
254218
|
-
import { randomUUID as
|
|
254220
|
+
import { randomUUID as randomUUID10 } from "crypto";
|
|
254219
254221
|
function enqueueSdkEvent(event) {
|
|
254220
254222
|
if (!getIsNonInteractiveSession()) {
|
|
254221
254223
|
return;
|
|
@@ -254232,7 +254234,7 @@ function drainSdkEvents() {
|
|
|
254232
254234
|
const events = queue.splice(0);
|
|
254233
254235
|
return events.map((e) => ({
|
|
254234
254236
|
...e,
|
|
254235
|
-
uuid:
|
|
254237
|
+
uuid: randomUUID10(),
|
|
254236
254238
|
session_id: getSessionId()
|
|
254237
254239
|
}));
|
|
254238
254240
|
}
|
|
@@ -257089,7 +257091,7 @@ function computeFingerprint(messageText, version2) {
|
|
|
257089
257091
|
}
|
|
257090
257092
|
function computeFingerprintFromMessages(messages) {
|
|
257091
257093
|
const firstMessageText = extractFirstMessageText(messages);
|
|
257092
|
-
return computeFingerprint(firstMessageText, "0.9.
|
|
257094
|
+
return computeFingerprint(firstMessageText, "0.9.5");
|
|
257093
257095
|
}
|
|
257094
257096
|
var FINGERPRINT_SALT = "59cf53e54c78";
|
|
257095
257097
|
var init_fingerprint = () => {};
|
|
@@ -257131,7 +257133,7 @@ async function sideQuery(opts) {
|
|
|
257131
257133
|
betas.push(STRUCTURED_OUTPUTS_BETA_HEADER);
|
|
257132
257134
|
}
|
|
257133
257135
|
const messageText = extractFirstUserMessageText(messages);
|
|
257134
|
-
const fingerprint = computeFingerprint(messageText, "0.9.
|
|
257136
|
+
const fingerprint = computeFingerprint(messageText, "0.9.5");
|
|
257135
257137
|
const attributionHeader = getAttributionHeader(fingerprint);
|
|
257136
257138
|
const systemBlocks = [
|
|
257137
257139
|
attributionHeader ? { type: "text", text: attributionHeader } : null,
|
|
@@ -266033,7 +266035,7 @@ var init_user = __esm(() => {
|
|
|
266033
266035
|
deviceId,
|
|
266034
266036
|
sessionId: getSessionId(),
|
|
266035
266037
|
email: getEmail(),
|
|
266036
|
-
appVersion: "0.9.
|
|
266038
|
+
appVersion: "0.9.5",
|
|
266037
266039
|
platform: getHostPlatformForAnalytics(),
|
|
266038
266040
|
organizationUuid,
|
|
266039
266041
|
accountUuid,
|
|
@@ -266427,7 +266429,7 @@ async function initializeBetaTracing(resource) {
|
|
|
266427
266429
|
});
|
|
266428
266430
|
logs.setGlobalLoggerProvider(loggerProvider);
|
|
266429
266431
|
setLoggerProvider(loggerProvider);
|
|
266430
|
-
const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "0.9.
|
|
266432
|
+
const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "0.9.5");
|
|
266431
266433
|
setEventLogger(eventLogger);
|
|
266432
266434
|
process.on("beforeExit", async () => {
|
|
266433
266435
|
await loggerProvider?.forceFlush();
|
|
@@ -266467,7 +266469,7 @@ async function initializeTelemetry() {
|
|
|
266467
266469
|
const platform3 = getPlatform();
|
|
266468
266470
|
const baseAttributes = {
|
|
266469
266471
|
[ATTR_SERVICE_NAME3]: "claude-code",
|
|
266470
|
-
[ATTR_SERVICE_VERSION3]: "0.9.
|
|
266472
|
+
[ATTR_SERVICE_VERSION3]: "0.9.5"
|
|
266471
266473
|
};
|
|
266472
266474
|
if (platform3 === "wsl") {
|
|
266473
266475
|
const wslVersion = getWslVersion();
|
|
@@ -266512,7 +266514,7 @@ async function initializeTelemetry() {
|
|
|
266512
266514
|
} catch {}
|
|
266513
266515
|
};
|
|
266514
266516
|
registerCleanup(shutdownTelemetry2);
|
|
266515
|
-
return meterProvider2.getMeter("com.anthropic.claude_code", "0.9.
|
|
266517
|
+
return meterProvider2.getMeter("com.anthropic.claude_code", "0.9.5");
|
|
266516
266518
|
}
|
|
266517
266519
|
const meterProvider = new MeterProvider3({
|
|
266518
266520
|
resource,
|
|
@@ -266532,7 +266534,7 @@ async function initializeTelemetry() {
|
|
|
266532
266534
|
});
|
|
266533
266535
|
logs.setGlobalLoggerProvider(loggerProvider);
|
|
266534
266536
|
setLoggerProvider(loggerProvider);
|
|
266535
|
-
const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "0.9.
|
|
266537
|
+
const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "0.9.5");
|
|
266536
266538
|
setEventLogger(eventLogger);
|
|
266537
266539
|
logForDebugging("[3P telemetry] Event logger set successfully");
|
|
266538
266540
|
process.on("beforeExit", async () => {
|
|
@@ -266594,7 +266596,7 @@ Current timeout: ${timeoutMs}ms
|
|
|
266594
266596
|
}
|
|
266595
266597
|
};
|
|
266596
266598
|
registerCleanup(shutdownTelemetry);
|
|
266597
|
-
return meterProvider.getMeter("com.anthropic.claude_code", "0.9.
|
|
266599
|
+
return meterProvider.getMeter("com.anthropic.claude_code", "0.9.5");
|
|
266598
266600
|
}
|
|
266599
266601
|
async function flushTelemetry() {
|
|
266600
266602
|
const meterProvider = getMeterProvider();
|
|
@@ -267406,9 +267408,9 @@ async function assertMinVersion() {
|
|
|
267406
267408
|
}
|
|
267407
267409
|
try {
|
|
267408
267410
|
const versionConfig = await getDynamicConfig_BLOCKS_ON_INIT("tengu_version_config", { minVersion: "0.0.0" });
|
|
267409
|
-
if (versionConfig.minVersion && lt("0.9.
|
|
267411
|
+
if (versionConfig.minVersion && lt("0.9.5", versionConfig.minVersion)) {
|
|
267410
267412
|
console.error(`
|
|
267411
|
-
It looks like your version of ZeroCLI (${"0.9.
|
|
267413
|
+
It looks like your version of ZeroCLI (${"0.9.5"}) needs an update.
|
|
267412
267414
|
A newer version (${versionConfig.minVersion} or higher) is required to continue.
|
|
267413
267415
|
|
|
267414
267416
|
To update, please run:
|
|
@@ -267624,7 +267626,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
267624
267626
|
logError2(new AutoUpdaterError("Another process is currently installing an update"));
|
|
267625
267627
|
logEvent("tengu_auto_updater_lock_contention", {
|
|
267626
267628
|
pid: process.pid,
|
|
267627
|
-
currentVersion: "0.9.
|
|
267629
|
+
currentVersion: "0.9.5"
|
|
267628
267630
|
});
|
|
267629
267631
|
return "in_progress";
|
|
267630
267632
|
}
|
|
@@ -267633,7 +267635,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
267633
267635
|
if (!env2.isRunningWithBun() && env2.isNpmFromWindowsPath()) {
|
|
267634
267636
|
logError2(new Error("Windows NPM detected in WSL environment"));
|
|
267635
267637
|
logEvent("tengu_auto_updater_windows_npm_in_wsl", {
|
|
267636
|
-
currentVersion: "0.9.
|
|
267638
|
+
currentVersion: "0.9.5"
|
|
267637
267639
|
});
|
|
267638
267640
|
console.error(`
|
|
267639
267641
|
Error: Windows NPM detected in WSL
|
|
@@ -268187,7 +268189,7 @@ async function getDoctorDiagnostic() {
|
|
|
268187
268189
|
const installationType = await getCurrentInstallationType();
|
|
268188
268190
|
let version2;
|
|
268189
268191
|
try {
|
|
268190
|
-
version2 = "0.9.
|
|
268192
|
+
version2 = "0.9.5";
|
|
268191
268193
|
} catch {
|
|
268192
268194
|
version2 = "unknown";
|
|
268193
268195
|
}
|
|
@@ -269681,7 +269683,7 @@ function getInstallationEnv() {
|
|
|
269681
269683
|
return;
|
|
269682
269684
|
}
|
|
269683
269685
|
function getZeroCodeVersion() {
|
|
269684
|
-
return "0.9.
|
|
269686
|
+
return "0.9.5";
|
|
269685
269687
|
}
|
|
269686
269688
|
async function getInstalledVSCodeExtensionVersion(command) {
|
|
269687
269689
|
const { stdout } = await execFileNoThrow(command, ["--list-extensions", "--show-versions"], {
|
|
@@ -271048,8 +271050,8 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
271048
271050
|
const maxVersion = await getMaxVersion();
|
|
271049
271051
|
if (maxVersion && gt(version2, maxVersion)) {
|
|
271050
271052
|
logForDebugging(`Native installer: maxVersion ${maxVersion} is set, capping update from ${version2} to ${maxVersion}`);
|
|
271051
|
-
if (gte("0.9.
|
|
271052
|
-
logForDebugging(`Native installer: current version ${"0.9.
|
|
271053
|
+
if (gte("0.9.5", maxVersion)) {
|
|
271054
|
+
logForDebugging(`Native installer: current version ${"0.9.5"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
271053
271055
|
logEvent("tengu_native_update_skipped_max_version", {
|
|
271054
271056
|
latency_ms: Date.now() - startTime2,
|
|
271055
271057
|
max_version: maxVersion,
|
|
@@ -271060,7 +271062,7 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
271060
271062
|
version2 = maxVersion;
|
|
271061
271063
|
}
|
|
271062
271064
|
}
|
|
271063
|
-
if (!forceReinstall && version2 === "0.9.
|
|
271065
|
+
if (!forceReinstall && version2 === "0.9.5" && await versionIsAvailable(version2) && await isPossibleZeroBinary(executablePath)) {
|
|
271064
271066
|
logForDebugging(`Found ${version2} at ${executablePath}, skipping install`);
|
|
271065
271067
|
logEvent("tengu_native_update_complete", {
|
|
271066
271068
|
latency_ms: Date.now() - startTime2,
|
|
@@ -283871,7 +283873,7 @@ __export(exports_api, {
|
|
|
283871
283873
|
CodeSessionSchema: () => CodeSessionSchema,
|
|
283872
283874
|
CCR_BYOC_BETA: () => CCR_BYOC_BETA
|
|
283873
283875
|
});
|
|
283874
|
-
import { randomUUID as
|
|
283876
|
+
import { randomUUID as randomUUID11 } from "crypto";
|
|
283875
283877
|
function isTransientNetworkError(error42) {
|
|
283876
283878
|
if (!axios_default.isAxiosError(error42)) {
|
|
283877
283879
|
return false;
|
|
@@ -284014,7 +284016,7 @@ async function sendEventToRemoteSession(sessionId, messageContent, opts) {
|
|
|
284014
284016
|
"x-organization-uuid": orgUUID
|
|
284015
284017
|
};
|
|
284016
284018
|
const userEvent = {
|
|
284017
|
-
uuid: opts?.uuid ??
|
|
284019
|
+
uuid: opts?.uuid ?? randomUUID11(),
|
|
284018
284020
|
session_id: sessionId,
|
|
284019
284021
|
type: "user",
|
|
284020
284022
|
parent_tool_use_id: null,
|
|
@@ -294443,7 +294445,7 @@ __export(exports_processSlashCommand, {
|
|
|
294443
294445
|
looksLikeCommand: () => looksLikeCommand,
|
|
294444
294446
|
formatSkillLoadingMetadata: () => formatSkillLoadingMetadata
|
|
294445
294447
|
});
|
|
294446
|
-
import { randomUUID as
|
|
294448
|
+
import { randomUUID as randomUUID12 } from "crypto";
|
|
294447
294449
|
async function executeForkedSlashCommand(command, args, context4, precedingInputBlocks, setToolJSX, canUseTool) {
|
|
294448
294450
|
const agentId = createAgentId();
|
|
294449
294451
|
const pluginMarketplace = command.pluginInfo ? parsePluginIdentifier(command.pluginInfo.repository).marketplace : undefined;
|
|
@@ -294487,7 +294489,7 @@ async function executeForkedSlashCommand(command, args, context4, precedingInput
|
|
|
294487
294489
|
parentToolUseID,
|
|
294488
294490
|
toolUseID: `${parentToolUseID}-${toolUseCounter}`,
|
|
294489
294491
|
timestamp: new Date().toISOString(),
|
|
294490
|
-
uuid:
|
|
294492
|
+
uuid: randomUUID12()
|
|
294491
294493
|
};
|
|
294492
294494
|
};
|
|
294493
294495
|
const updateProgress = () => {
|
|
@@ -294612,7 +294614,7 @@ async function processSlashCommand(inputString, precedingInputBlocks, imageConte
|
|
|
294612
294614
|
resultText: unknownMessage
|
|
294613
294615
|
};
|
|
294614
294616
|
}
|
|
294615
|
-
const promptId =
|
|
294617
|
+
const promptId = randomUUID12();
|
|
294616
294618
|
setPromptId(promptId);
|
|
294617
294619
|
logEvent("tengu_input_prompt", {});
|
|
294618
294620
|
logOTelEvent("user_prompt", {
|
|
@@ -295124,7 +295126,7 @@ var init_MonitorMcpTask = __esm(() => {
|
|
|
295124
295126
|
});
|
|
295125
295127
|
|
|
295126
295128
|
// src/tools/AgentTool/runAgent.ts
|
|
295127
|
-
import { randomUUID as
|
|
295129
|
+
import { randomUUID as randomUUID13 } from "crypto";
|
|
295128
295130
|
async function initializeAgentMcpServers(agentDefinition, parentClients) {
|
|
295129
295131
|
if (!agentDefinition.mcpServers?.length) {
|
|
295130
295132
|
return {
|
|
@@ -295313,7 +295315,7 @@ async function* runAgent({
|
|
|
295313
295315
|
type: "hook_additional_context",
|
|
295314
295316
|
content: additionalContexts,
|
|
295315
295317
|
hookName: "SubagentStart",
|
|
295316
|
-
toolUseID:
|
|
295318
|
+
toolUseID: randomUUID13(),
|
|
295317
295319
|
hookEvent: "SubagentStart"
|
|
295318
295320
|
});
|
|
295319
295321
|
initialMessages.push(contextMessage);
|
|
@@ -298328,7 +298330,7 @@ var init_words = __esm(() => {
|
|
|
298328
298330
|
});
|
|
298329
298331
|
|
|
298330
298332
|
// src/utils/plans.ts
|
|
298331
|
-
import { randomUUID as
|
|
298333
|
+
import { randomUUID as randomUUID14 } from "crypto";
|
|
298332
298334
|
import { copyFile as copyFile4, writeFile as writeFile16 } from "fs/promises";
|
|
298333
298335
|
import { join as join69, resolve as resolve23, sep as sep14 } from "path";
|
|
298334
298336
|
function getPlanSlug(sessionId) {
|
|
@@ -298511,7 +298513,7 @@ async function persistFileSnapshotIfRemote() {
|
|
|
298511
298513
|
level: "info",
|
|
298512
298514
|
isMeta: true,
|
|
298513
298515
|
timestamp: new Date().toISOString(),
|
|
298514
|
-
uuid:
|
|
298516
|
+
uuid: randomUUID14(),
|
|
298515
298517
|
files: snapshotFiles
|
|
298516
298518
|
};
|
|
298517
298519
|
const { recordTranscript: recordTranscript2 } = await Promise.resolve().then(() => (init_sessionStorage(), exports_sessionStorage));
|
|
@@ -299472,7 +299474,7 @@ var init_conversationRecovery = __esm(() => {
|
|
|
299472
299474
|
});
|
|
299473
299475
|
|
|
299474
299476
|
// src/services/api/filesApi.ts
|
|
299475
|
-
import { randomUUID as
|
|
299477
|
+
import { randomUUID as randomUUID15 } from "crypto";
|
|
299476
299478
|
import * as fs2 from "fs/promises";
|
|
299477
299479
|
import * as path12 from "path";
|
|
299478
299480
|
function getDefaultApiBaseUrl() {
|
|
@@ -299656,7 +299658,7 @@ async function uploadFile(filePath, relativePath, config2, opts) {
|
|
|
299656
299658
|
success: false
|
|
299657
299659
|
};
|
|
299658
299660
|
}
|
|
299659
|
-
const boundary = `----FormBoundary${
|
|
299661
|
+
const boundary = `----FormBoundary${randomUUID15()}`;
|
|
299660
299662
|
const filename = path12.basename(relativePath);
|
|
299661
299663
|
const bodyParts = [];
|
|
299662
299664
|
bodyParts.push(Buffer.from(`--${boundary}\r
|
|
@@ -299960,7 +299962,7 @@ __export(exports_teleport, {
|
|
|
299960
299962
|
checkOutTeleportedSessionBranch: () => checkOutTeleportedSessionBranch,
|
|
299961
299963
|
archiveRemoteSession: () => archiveRemoteSession
|
|
299962
299964
|
});
|
|
299963
|
-
import { randomUUID as
|
|
299965
|
+
import { randomUUID as randomUUID16 } from "crypto";
|
|
299964
299966
|
function createTeleportResumeSystemMessage(branchError) {
|
|
299965
299967
|
if (branchError === null) {
|
|
299966
299968
|
return createSystemMessage("Session resumed", "info");
|
|
@@ -300677,7 +300679,7 @@ async function teleportToRemote(options2) {
|
|
|
300677
300679
|
type: "event",
|
|
300678
300680
|
data: {
|
|
300679
300681
|
type: "control_request",
|
|
300680
|
-
request_id: `set-mode-${
|
|
300682
|
+
request_id: `set-mode-${randomUUID16()}`,
|
|
300681
300683
|
request: {
|
|
300682
300684
|
subtype: "set_permission_mode",
|
|
300683
300685
|
mode: options2.permissionMode,
|
|
@@ -300690,7 +300692,7 @@ async function teleportToRemote(options2) {
|
|
|
300690
300692
|
events.push({
|
|
300691
300693
|
type: "event",
|
|
300692
300694
|
data: {
|
|
300693
|
-
uuid:
|
|
300695
|
+
uuid: randomUUID16(),
|
|
300694
300696
|
session_id: "",
|
|
300695
300697
|
type: "user",
|
|
300696
300698
|
parent_tool_use_id: null,
|
|
@@ -302009,12 +302011,12 @@ ${result.result}`
|
|
|
302009
302011
|
});
|
|
302010
302012
|
|
|
302011
302013
|
// src/services/lsp/LSPDiagnosticRegistry.ts
|
|
302012
|
-
import { randomUUID as
|
|
302014
|
+
import { randomUUID as randomUUID17 } from "crypto";
|
|
302013
302015
|
function registerPendingLSPDiagnostic({
|
|
302014
302016
|
serverName,
|
|
302015
302017
|
files
|
|
302016
302018
|
}) {
|
|
302017
|
-
const diagnosticId =
|
|
302019
|
+
const diagnosticId = randomUUID17();
|
|
302018
302020
|
logForDebugging(`LSP Diagnostics: Registering ${files.length} diagnostic file(s) from ${serverName} (ID: ${diagnosticId})`);
|
|
302019
302021
|
pendingDiagnostics.set(diagnosticId, {
|
|
302020
302022
|
serverName,
|
|
@@ -315854,7 +315856,7 @@ var init_PowerShellTool = __esm(() => {
|
|
|
315854
315856
|
});
|
|
315855
315857
|
|
|
315856
315858
|
// src/utils/promptShellExecution.ts
|
|
315857
|
-
import { randomUUID as
|
|
315859
|
+
import { randomUUID as randomUUID18 } from "crypto";
|
|
315858
315860
|
async function executeShellCommandsInPrompt(text, context4, slashCommandName, shell) {
|
|
315859
315861
|
let result = text;
|
|
315860
315862
|
const shellTool = shell === "powershell" && isPowerShellToolEnabled() ? getPowerShellTool() : BashTool;
|
|
@@ -315875,7 +315877,7 @@ async function executeShellCommandsInPrompt(text, context4, slashCommandName, sh
|
|
|
315875
315877
|
stdout: typeof data.stdout === "string" ? data.stdout : "",
|
|
315876
315878
|
stderr: typeof data.stderr === "string" ? data.stderr : ""
|
|
315877
315879
|
};
|
|
315878
|
-
const toolResultBlock = await processToolResultBlock(shellTool, normalizedData,
|
|
315880
|
+
const toolResultBlock = await processToolResultBlock(shellTool, normalizedData, randomUUID18());
|
|
315879
315881
|
const output = typeof toolResultBlock.content === "string" ? toolResultBlock.content : formatBashOutput(normalizedData.stdout, normalizedData.stderr);
|
|
315880
315882
|
result = result.replace(match[0], () => output);
|
|
315881
315883
|
} catch (e) {
|
|
@@ -358079,6 +358081,23 @@ var init_TestingPermissionTool = __esm(() => {
|
|
|
358079
358081
|
});
|
|
358080
358082
|
|
|
358081
358083
|
// src/tools/AskUserQuestionTool/AskUserQuestionTool.tsx
|
|
358084
|
+
function tryParseJsonString(val) {
|
|
358085
|
+
if (typeof val === "string") {
|
|
358086
|
+
try {
|
|
358087
|
+
const parsed = JSON.parse(val);
|
|
358088
|
+
if (typeof parsed === "string") {
|
|
358089
|
+
try {
|
|
358090
|
+
const reparsed = JSON.parse(parsed);
|
|
358091
|
+
if (typeof reparsed === "object" && reparsed !== null)
|
|
358092
|
+
return reparsed;
|
|
358093
|
+
} catch {}
|
|
358094
|
+
}
|
|
358095
|
+
if (typeof parsed === "object" && parsed !== null)
|
|
358096
|
+
return parsed;
|
|
358097
|
+
} catch {}
|
|
358098
|
+
}
|
|
358099
|
+
return val;
|
|
358100
|
+
}
|
|
358082
358101
|
function AskUserQuestionResultMessage(t0) {
|
|
358083
358102
|
const $2 = import_react_compiler_runtime113.c(3);
|
|
358084
358103
|
const {
|
|
@@ -358173,7 +358192,7 @@ var init_AskUserQuestionTool = __esm(() => {
|
|
|
358173
358192
|
questionSchema = lazySchema(() => exports_external.object({
|
|
358174
358193
|
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?"'),
|
|
358175
358194
|
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".`),
|
|
358176
|
-
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.`),
|
|
358195
|
+
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.`),
|
|
358177
358196
|
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.")
|
|
358178
358197
|
}));
|
|
358179
358198
|
annotationsSchema = lazySchema(() => {
|
|
@@ -358206,8 +358225,8 @@ var init_AskUserQuestionTool = __esm(() => {
|
|
|
358206
358225
|
source: exports_external.string().optional().describe('Optional identifier for the source of this question (e.g., "remember" for /remember command). Used for analytics tracking.')
|
|
358207
358226
|
}).optional().describe("Optional metadata for tracking and analytics purposes. Not displayed to user.")
|
|
358208
358227
|
}));
|
|
358209
|
-
inputSchema20 = lazySchema(() => exports_external.
|
|
358210
|
-
questions: exports_external.array(questionSchema()).min(1).max(4).describe("Questions to ask the user (1-4 questions)"),
|
|
358228
|
+
inputSchema20 = lazySchema(() => exports_external.object({
|
|
358229
|
+
questions: exports_external.preprocess(tryParseJsonString, exports_external.array(questionSchema()).min(1).max(4)).describe("Questions to ask the user (1-4 questions)"),
|
|
358211
358230
|
...commonFields()
|
|
358212
358231
|
}).refine(UNIQUENESS_REFINE.check, {
|
|
358213
358232
|
message: UNIQUENESS_REFINE.message
|
|
@@ -375200,13 +375219,13 @@ var init_config5 = __esm(() => {
|
|
|
375200
375219
|
});
|
|
375201
375220
|
|
|
375202
375221
|
// src/query/deps.ts
|
|
375203
|
-
import { randomUUID as
|
|
375222
|
+
import { randomUUID as randomUUID19 } from "crypto";
|
|
375204
375223
|
function productionDeps() {
|
|
375205
375224
|
return {
|
|
375206
375225
|
callModel: queryModelWithStreaming,
|
|
375207
375226
|
microcompact: microcompactMessages,
|
|
375208
375227
|
autocompact: autoCompactIfNeeded,
|
|
375209
|
-
uuid:
|
|
375228
|
+
uuid: randomUUID19
|
|
375210
375229
|
};
|
|
375211
375230
|
}
|
|
375212
375231
|
var init_deps = __esm(() => {
|
|
@@ -376267,7 +376286,7 @@ function getAnthropicEnvMetadata() {
|
|
|
376267
376286
|
function getBuildAgeMinutes() {
|
|
376268
376287
|
if (false)
|
|
376269
376288
|
;
|
|
376270
|
-
const buildTime = new Date("2026-05-
|
|
376289
|
+
const buildTime = new Date("2026-05-11T18:46:47.195Z").getTime();
|
|
376271
376290
|
if (isNaN(buildTime))
|
|
376272
376291
|
return;
|
|
376273
376292
|
return Math.floor((Date.now() - buildTime) / 60000);
|
|
@@ -376718,7 +376737,7 @@ var init_denialTracking = __esm(() => {
|
|
|
376718
376737
|
});
|
|
376719
376738
|
|
|
376720
376739
|
// src/utils/forkedAgent.ts
|
|
376721
|
-
import { randomUUID as
|
|
376740
|
+
import { randomUUID as randomUUID20 } from "crypto";
|
|
376722
376741
|
function saveCacheSafeParams(params) {
|
|
376723
376742
|
lastCacheSafeParams = params;
|
|
376724
376743
|
}
|
|
@@ -376827,7 +376846,7 @@ function createSubagentContext(parentContext, overrides) {
|
|
|
376827
376846
|
agentId: overrides?.agentId ?? createAgentId(),
|
|
376828
376847
|
agentType: overrides?.agentType,
|
|
376829
376848
|
queryTracking: {
|
|
376830
|
-
chainId:
|
|
376849
|
+
chainId: randomUUID20(),
|
|
376831
376850
|
depth: (parentContext.queryTracking?.depth ?? -1) + 1
|
|
376832
376851
|
},
|
|
376833
376852
|
fileReadingLimits: parentContext.fileReadingLimits,
|
|
@@ -379904,7 +379923,7 @@ var init_toolSearch = __esm(() => {
|
|
|
379904
379923
|
});
|
|
379905
379924
|
|
|
379906
379925
|
// src/services/vcr.ts
|
|
379907
|
-
import { createHash as createHash14, randomUUID as
|
|
379926
|
+
import { createHash as createHash14, randomUUID as randomUUID21 } from "crypto";
|
|
379908
379927
|
import { mkdir as mkdir23, readFile as readFile27, writeFile as writeFile24 } from "fs/promises";
|
|
379909
379928
|
import { dirname as dirname35, join as join88 } from "path";
|
|
379910
379929
|
function shouldUseVCR() {
|
|
@@ -379957,7 +379976,7 @@ async function withVCR(messages, f) {
|
|
|
379957
379976
|
try {
|
|
379958
379977
|
const cached3 = jsonParse(await readFile27(filename, { encoding: "utf8" }));
|
|
379959
379978
|
cached3.output.forEach(addCachedCostToTotalSessionCost);
|
|
379960
|
-
return cached3.output.map((message, index) => mapMessage(message, hydrateValue, index,
|
|
379979
|
+
return cached3.output.map((message, index) => mapMessage(message, hydrateValue, index, randomUUID21()));
|
|
379961
379980
|
} catch (e2) {
|
|
379962
379981
|
const code = getErrnoCode(e2);
|
|
379963
379982
|
if (code !== "ENOENT") {
|
|
@@ -380418,7 +380437,7 @@ var init_tokenEstimation = __esm(() => {
|
|
|
380418
380437
|
});
|
|
380419
380438
|
|
|
380420
380439
|
// src/utils/pdf.ts
|
|
380421
|
-
import { randomUUID as
|
|
380440
|
+
import { randomUUID as randomUUID22 } from "crypto";
|
|
380422
380441
|
import { mkdir as mkdir24, readdir as readdir15, readFile as readFile28 } from "fs/promises";
|
|
380423
380442
|
import { join as join89 } from "path";
|
|
380424
380443
|
async function readPDF(filePath) {
|
|
@@ -380529,7 +380548,7 @@ async function extractPDFPages(filePath, options2) {
|
|
|
380529
380548
|
}
|
|
380530
380549
|
};
|
|
380531
380550
|
}
|
|
380532
|
-
const uuid3 =
|
|
380551
|
+
const uuid3 = randomUUID22();
|
|
380533
380552
|
const outputDir = join89(getToolResultsDir(), `pdf-${uuid3}`);
|
|
380534
380553
|
await mkdir24(outputDir, { recursive: true });
|
|
380535
380554
|
const prefix = join89(outputDir, "page");
|
|
@@ -382099,7 +382118,7 @@ var init_findRelevantMemories = __esm(() => {
|
|
|
382099
382118
|
// src/utils/attachments.ts
|
|
382100
382119
|
import { readdir as readdir17, stat as stat33 } from "fs/promises";
|
|
382101
382120
|
import { dirname as dirname36, parse as parse10, relative as relative20, resolve as resolve32 } from "path";
|
|
382102
|
-
import { randomUUID as
|
|
382121
|
+
import { randomUUID as randomUUID23 } from "crypto";
|
|
382103
382122
|
async function getAttachments(input, toolUseContext, ideSelection, queuedCommands, messages, querySource, options2) {
|
|
382104
382123
|
if (isEnvTruthy(process.env.CLAUDE_CODE_DISABLE_ATTACHMENTS) || isEnvTruthy(process.env.CLAUDE_CODE_SIMPLE)) {
|
|
382105
382124
|
return getQueuedCommandAttachments(queuedCommands);
|
|
@@ -383326,7 +383345,7 @@ function createAttachmentMessage(attachment) {
|
|
|
383326
383345
|
return {
|
|
383327
383346
|
attachment,
|
|
383328
383347
|
type: "attachment",
|
|
383329
|
-
uuid:
|
|
383348
|
+
uuid: randomUUID23(),
|
|
383330
383349
|
timestamp: new Date().toISOString()
|
|
383331
383350
|
};
|
|
383332
383351
|
}
|
|
@@ -388965,7 +388984,7 @@ ${EXPLANATORY_FEATURE_PROMPT}`
|
|
|
388965
388984
|
});
|
|
388966
388985
|
|
|
388967
388986
|
// src/utils/messages.ts
|
|
388968
|
-
import { randomUUID as
|
|
388987
|
+
import { randomUUID as randomUUID24 } from "crypto";
|
|
388969
388988
|
function getTeammateMailbox() {
|
|
388970
388989
|
return init_teammateMailbox(), __toCommonJS(exports_teammateMailbox);
|
|
388971
388990
|
}
|
|
@@ -389045,10 +389064,10 @@ function baseCreateAssistantMessage({
|
|
|
389045
389064
|
}) {
|
|
389046
389065
|
return {
|
|
389047
389066
|
type: "assistant",
|
|
389048
|
-
uuid:
|
|
389067
|
+
uuid: randomUUID24(),
|
|
389049
389068
|
timestamp: new Date().toISOString(),
|
|
389050
389069
|
message: {
|
|
389051
|
-
id:
|
|
389070
|
+
id: randomUUID24(),
|
|
389052
389071
|
container: null,
|
|
389053
389072
|
model: SYNTHETIC_MODEL,
|
|
389054
389073
|
role: "assistant",
|
|
@@ -389129,7 +389148,7 @@ function createUserMessage({
|
|
|
389129
389148
|
isVirtual,
|
|
389130
389149
|
isCompactSummary,
|
|
389131
389150
|
summarizeMetadata,
|
|
389132
|
-
uuid: uuid3 ||
|
|
389151
|
+
uuid: uuid3 || randomUUID24(),
|
|
389133
389152
|
timestamp: timestamp ?? new Date().toISOString(),
|
|
389134
389153
|
toolUseResult,
|
|
389135
389154
|
mcpMeta,
|
|
@@ -389198,7 +389217,7 @@ function createProgressMessage({
|
|
|
389198
389217
|
data,
|
|
389199
389218
|
toolUseID,
|
|
389200
389219
|
parentToolUseID,
|
|
389201
|
-
uuid:
|
|
389220
|
+
uuid: randomUUID24(),
|
|
389202
389221
|
timestamp: new Date().toISOString()
|
|
389203
389222
|
};
|
|
389204
389223
|
}
|
|
@@ -391545,7 +391564,7 @@ function createSystemMessage(content, level, toolUseID, preventContinuation) {
|
|
|
391545
391564
|
content,
|
|
391546
391565
|
isMeta: false,
|
|
391547
391566
|
timestamp: new Date().toISOString(),
|
|
391548
|
-
uuid:
|
|
391567
|
+
uuid: randomUUID24(),
|
|
391549
391568
|
toolUseID,
|
|
391550
391569
|
level,
|
|
391551
391570
|
...preventContinuation && { preventContinuation }
|
|
@@ -391560,7 +391579,7 @@ function createPermissionRetryMessage(commands) {
|
|
|
391560
391579
|
level: "info",
|
|
391561
391580
|
isMeta: false,
|
|
391562
391581
|
timestamp: new Date().toISOString(),
|
|
391563
|
-
uuid:
|
|
391582
|
+
uuid: randomUUID24()
|
|
391564
391583
|
};
|
|
391565
391584
|
}
|
|
391566
391585
|
function createScheduledTaskFireMessage(content) {
|
|
@@ -391570,7 +391589,7 @@ function createScheduledTaskFireMessage(content) {
|
|
|
391570
391589
|
content,
|
|
391571
391590
|
isMeta: false,
|
|
391572
391591
|
timestamp: new Date().toISOString(),
|
|
391573
|
-
uuid:
|
|
391592
|
+
uuid: randomUUID24()
|
|
391574
391593
|
};
|
|
391575
391594
|
}
|
|
391576
391595
|
function createStopHookSummaryMessage(hookCount, hookInfos, hookErrors, preventedContinuation, stopReason, hasOutput, level, toolUseID, hookLabel, totalDurationMs) {
|
|
@@ -391586,7 +391605,7 @@ function createStopHookSummaryMessage(hookCount, hookInfos, hookErrors, prevente
|
|
|
391586
391605
|
hasOutput,
|
|
391587
391606
|
level,
|
|
391588
391607
|
timestamp: new Date().toISOString(),
|
|
391589
|
-
uuid:
|
|
391608
|
+
uuid: randomUUID24(),
|
|
391590
391609
|
toolUseID,
|
|
391591
391610
|
hookLabel,
|
|
391592
391611
|
totalDurationMs
|
|
@@ -391602,7 +391621,7 @@ function createTurnDurationMessage(durationMs, budget, messageCount) {
|
|
|
391602
391621
|
budgetNudges: budget?.nudges,
|
|
391603
391622
|
messageCount,
|
|
391604
391623
|
timestamp: new Date().toISOString(),
|
|
391605
|
-
uuid:
|
|
391624
|
+
uuid: randomUUID24(),
|
|
391606
391625
|
isMeta: false
|
|
391607
391626
|
};
|
|
391608
391627
|
}
|
|
@@ -391612,7 +391631,7 @@ function createAwaySummaryMessage(content) {
|
|
|
391612
391631
|
subtype: "away_summary",
|
|
391613
391632
|
content,
|
|
391614
391633
|
timestamp: new Date().toISOString(),
|
|
391615
|
-
uuid:
|
|
391634
|
+
uuid: randomUUID24(),
|
|
391616
391635
|
isMeta: false
|
|
391617
391636
|
};
|
|
391618
391637
|
}
|
|
@@ -391622,7 +391641,7 @@ function createMemorySavedMessage(writtenPaths) {
|
|
|
391622
391641
|
subtype: "memory_saved",
|
|
391623
391642
|
writtenPaths,
|
|
391624
391643
|
timestamp: new Date().toISOString(),
|
|
391625
|
-
uuid:
|
|
391644
|
+
uuid: randomUUID24(),
|
|
391626
391645
|
isMeta: false
|
|
391627
391646
|
};
|
|
391628
391647
|
}
|
|
@@ -391631,7 +391650,7 @@ function createAgentsKilledMessage() {
|
|
|
391631
391650
|
type: "system",
|
|
391632
391651
|
subtype: "agents_killed",
|
|
391633
391652
|
timestamp: new Date().toISOString(),
|
|
391634
|
-
uuid:
|
|
391653
|
+
uuid: randomUUID24(),
|
|
391635
391654
|
isMeta: false
|
|
391636
391655
|
};
|
|
391637
391656
|
}
|
|
@@ -391642,7 +391661,7 @@ function createCommandInputMessage(content) {
|
|
|
391642
391661
|
content,
|
|
391643
391662
|
level: "info",
|
|
391644
391663
|
timestamp: new Date().toISOString(),
|
|
391645
|
-
uuid:
|
|
391664
|
+
uuid: randomUUID24(),
|
|
391646
391665
|
isMeta: false
|
|
391647
391666
|
};
|
|
391648
391667
|
}
|
|
@@ -391653,7 +391672,7 @@ function createCompactBoundaryMessage(trigger, preTokens, lastPreCompactMessageU
|
|
|
391653
391672
|
content: `Conversation compacted`,
|
|
391654
391673
|
isMeta: false,
|
|
391655
391674
|
timestamp: new Date().toISOString(),
|
|
391656
|
-
uuid:
|
|
391675
|
+
uuid: randomUUID24(),
|
|
391657
391676
|
level: "info",
|
|
391658
391677
|
compactMetadata: {
|
|
391659
391678
|
trigger,
|
|
@@ -391674,7 +391693,7 @@ function createMicrocompactBoundaryMessage(trigger, preTokens, tokensSaved, comp
|
|
|
391674
391693
|
content: "Context microcompacted",
|
|
391675
391694
|
isMeta: false,
|
|
391676
391695
|
timestamp: new Date().toISOString(),
|
|
391677
|
-
uuid:
|
|
391696
|
+
uuid: randomUUID24(),
|
|
391678
391697
|
level: "info",
|
|
391679
391698
|
microcompactMetadata: {
|
|
391680
391699
|
trigger,
|
|
@@ -391696,7 +391715,7 @@ function createSystemAPIErrorMessage(error42, retryInMs, retryAttempt, maxRetrie
|
|
|
391696
391715
|
retryAttempt,
|
|
391697
391716
|
maxRetries,
|
|
391698
391717
|
timestamp: new Date().toISOString(),
|
|
391699
|
-
uuid:
|
|
391718
|
+
uuid: randomUUID24()
|
|
391700
391719
|
};
|
|
391701
391720
|
}
|
|
391702
391721
|
function isCompactBoundaryMessage(message) {
|
|
@@ -391967,7 +391986,7 @@ function createToolUseSummaryMessage(summary, precedingToolUseIds) {
|
|
|
391967
391986
|
summary,
|
|
391968
391987
|
precedingToolUseIds,
|
|
391969
391988
|
toolUseIDs: precedingToolUseIds,
|
|
391970
|
-
uuid:
|
|
391989
|
+
uuid: randomUUID24(),
|
|
391971
391990
|
timestamp: new Date().toISOString()
|
|
391972
391991
|
};
|
|
391973
391992
|
}
|
|
@@ -395494,7 +395513,7 @@ var init_xaaIdpLogin = __esm(() => {
|
|
|
395494
395513
|
});
|
|
395495
395514
|
|
|
395496
395515
|
// src/services/mcp/auth.ts
|
|
395497
|
-
import { createHash as createHash16, randomBytes as randomBytes11, randomUUID as
|
|
395516
|
+
import { createHash as createHash16, randomBytes as randomBytes11, randomUUID as randomUUID25 } from "crypto";
|
|
395498
395517
|
import { mkdir as mkdir26 } from "fs/promises";
|
|
395499
395518
|
import { createServer as createServer4 } from "http";
|
|
395500
395519
|
import { join as join99 } from "path";
|
|
@@ -395948,7 +395967,7 @@ async function performMCPOAuthFlow(serverName, serverConfig, onAuthorizationUrl,
|
|
|
395948
395967
|
scope: cachedStepUpScope,
|
|
395949
395968
|
resourceMetadataUrl
|
|
395950
395969
|
};
|
|
395951
|
-
const flowAttemptId =
|
|
395970
|
+
const flowAttemptId = randomUUID25();
|
|
395952
395971
|
logEvent("tengu_mcp_oauth_flow_start", {
|
|
395953
395972
|
flowAttemptId,
|
|
395954
395973
|
isOAuthFlow: true,
|
|
@@ -403703,7 +403722,7 @@ async function setupSdkMcpClients(sdkMcpConfigs, sendMcpMessage) {
|
|
|
403703
403722
|
const client2 = new Client({
|
|
403704
403723
|
name: "claude-code",
|
|
403705
403724
|
title: "ZeroCLI",
|
|
403706
|
-
version: "0.9.
|
|
403725
|
+
version: "0.9.5",
|
|
403707
403726
|
description: "Anthropic's agentic coding tool",
|
|
403708
403727
|
websiteUrl: PRODUCT_URL
|
|
403709
403728
|
}, {
|
|
@@ -404055,7 +404074,7 @@ var init_client7 = __esm(() => {
|
|
|
404055
404074
|
const client2 = new Client({
|
|
404056
404075
|
name: "claude-code",
|
|
404057
404076
|
title: "ZeroCLI",
|
|
404058
|
-
version: "0.9.
|
|
404077
|
+
version: "0.9.5",
|
|
404059
404078
|
description: "Anthropic's agentic coding tool",
|
|
404060
404079
|
websiteUrl: PRODUCT_URL
|
|
404061
404080
|
}, {
|
|
@@ -405082,6 +405101,58 @@ function normalizeToolInput(tool, input, agentId) {
|
|
|
405082
405101
|
timeout: timeout ?? 30000
|
|
405083
405102
|
};
|
|
405084
405103
|
}
|
|
405104
|
+
case "AskUserQuestion": {
|
|
405105
|
+
const raw = { ...input };
|
|
405106
|
+
if (typeof raw.questions === "string") {
|
|
405107
|
+
try {
|
|
405108
|
+
const parsed = JSON.parse(raw.questions);
|
|
405109
|
+
if (Array.isArray(parsed))
|
|
405110
|
+
raw.questions = parsed;
|
|
405111
|
+
} catch {}
|
|
405112
|
+
}
|
|
405113
|
+
if (Array.isArray(raw.questions)) {
|
|
405114
|
+
raw.questions = raw.questions.map((q) => {
|
|
405115
|
+
if (typeof q === "string") {
|
|
405116
|
+
try {
|
|
405117
|
+
const p = JSON.parse(q);
|
|
405118
|
+
if (typeof p === "object" && p !== null)
|
|
405119
|
+
return p;
|
|
405120
|
+
} catch {}
|
|
405121
|
+
return q;
|
|
405122
|
+
}
|
|
405123
|
+
if (typeof q !== "object" || q === null)
|
|
405124
|
+
return q;
|
|
405125
|
+
const question = { ...q };
|
|
405126
|
+
if (typeof question.options === "string") {
|
|
405127
|
+
try {
|
|
405128
|
+
const parsed = JSON.parse(question.options);
|
|
405129
|
+
if (Array.isArray(parsed))
|
|
405130
|
+
question.options = parsed;
|
|
405131
|
+
} catch {}
|
|
405132
|
+
}
|
|
405133
|
+
if (question.multiSelect === null)
|
|
405134
|
+
question.multiSelect = false;
|
|
405135
|
+
if ("preview" in question && question.preview === null)
|
|
405136
|
+
delete question.preview;
|
|
405137
|
+
if (Array.isArray(question.options)) {
|
|
405138
|
+
question.options = question.options.map((opt) => {
|
|
405139
|
+
if (typeof opt !== "object" || opt === null)
|
|
405140
|
+
return opt;
|
|
405141
|
+
const o2 = { ...opt };
|
|
405142
|
+
if ("preview" in o2 && o2.preview === null)
|
|
405143
|
+
delete o2.preview;
|
|
405144
|
+
return o2;
|
|
405145
|
+
});
|
|
405146
|
+
}
|
|
405147
|
+
return question;
|
|
405148
|
+
});
|
|
405149
|
+
}
|
|
405150
|
+
if (raw.metadata === null)
|
|
405151
|
+
delete raw.metadata;
|
|
405152
|
+
if (raw.answers === null)
|
|
405153
|
+
delete raw.answers;
|
|
405154
|
+
return raw;
|
|
405155
|
+
}
|
|
405085
405156
|
default:
|
|
405086
405157
|
return input;
|
|
405087
405158
|
}
|
|
@@ -405244,7 +405315,7 @@ function insertBlockAfterToolResults(content, block2) {
|
|
|
405244
405315
|
}
|
|
405245
405316
|
|
|
405246
405317
|
// src/services/api/claude.ts
|
|
405247
|
-
import { randomUUID as
|
|
405318
|
+
import { randomUUID as randomUUID26 } from "crypto";
|
|
405248
405319
|
function getExtraBodyParams(betaHeaders) {
|
|
405249
405320
|
const extraBodyStr = process.env.CLAUDE_CODE_EXTRA_BODY;
|
|
405250
405321
|
let result = {};
|
|
@@ -406070,7 +406141,7 @@ ${deferredToolList}
|
|
|
406070
406141
|
if (!options2.agentId) {
|
|
406071
406142
|
headlessProfilerCheckpoint("api_request_sent");
|
|
406072
406143
|
}
|
|
406073
|
-
clientRequestId = getAPIProvider() === "firstParty" && isFirstPartyAnthropicBaseUrl() ?
|
|
406144
|
+
clientRequestId = getAPIProvider() === "firstParty" && isFirstPartyAnthropicBaseUrl() ? randomUUID26() : undefined;
|
|
406074
406145
|
const result = await anthropic.beta.messages.create({ ...params, stream: true }, {
|
|
406075
406146
|
signal,
|
|
406076
406147
|
...clientRequestId && {
|
|
@@ -406300,7 +406371,7 @@ ${deferredToolList}
|
|
|
406300
406371
|
},
|
|
406301
406372
|
requestId: streamRequestId ?? undefined,
|
|
406302
406373
|
type: "assistant",
|
|
406303
|
-
uuid:
|
|
406374
|
+
uuid: randomUUID26(),
|
|
406304
406375
|
timestamp: new Date().toISOString(),
|
|
406305
406376
|
...process.env.USER_TYPE === "ant" && research !== undefined && { research },
|
|
406306
406377
|
...advisorModel && { advisorModel }
|
|
@@ -406482,7 +406553,7 @@ ${deferredToolList}
|
|
|
406482
406553
|
},
|
|
406483
406554
|
requestId: streamRequestId ?? undefined,
|
|
406484
406555
|
type: "assistant",
|
|
406485
|
-
uuid:
|
|
406556
|
+
uuid: randomUUID26(),
|
|
406486
406557
|
timestamp: new Date().toISOString(),
|
|
406487
406558
|
...process.env.USER_TYPE === "ant" && research !== undefined && {
|
|
406488
406559
|
research
|
|
@@ -406536,7 +406607,7 @@ ${deferredToolList}
|
|
|
406536
406607
|
},
|
|
406537
406608
|
requestId: streamRequestId ?? undefined,
|
|
406538
406609
|
type: "assistant",
|
|
406539
|
-
uuid:
|
|
406610
|
+
uuid: randomUUID26(),
|
|
406540
406611
|
timestamp: new Date().toISOString(),
|
|
406541
406612
|
...process.env.USER_TYPE === "ant" && research !== undefined && { research },
|
|
406542
406613
|
...advisorModel && { advisorModel }
|
|
@@ -414718,7 +414789,7 @@ function Feedback({
|
|
|
414718
414789
|
platform: env2.platform,
|
|
414719
414790
|
gitRepo: envInfo.isGit,
|
|
414720
414791
|
terminal: env2.terminal,
|
|
414721
|
-
version: "0.9.
|
|
414792
|
+
version: "0.9.5",
|
|
414722
414793
|
transcript: normalizeMessagesForAPI(messages),
|
|
414723
414794
|
errors: sanitizedErrors,
|
|
414724
414795
|
lastApiRequest: getLastAPIRequest(),
|
|
@@ -414911,7 +414982,7 @@ function Feedback({
|
|
|
414911
414982
|
", ",
|
|
414912
414983
|
env2.terminal,
|
|
414913
414984
|
", v",
|
|
414914
|
-
"0.9.
|
|
414985
|
+
"0.9.5"
|
|
414915
414986
|
]
|
|
414916
414987
|
})
|
|
414917
414988
|
]
|
|
@@ -415019,7 +415090,7 @@ ${sanitizedDescription}
|
|
|
415019
415090
|
` + `**Environment Info**
|
|
415020
415091
|
` + `- Platform: ${env2.platform}
|
|
415021
415092
|
` + `- Terminal: ${env2.terminal}
|
|
415022
|
-
` + `- Version: ${"0.9.
|
|
415093
|
+
` + `- Version: ${"0.9.5"}
|
|
415023
415094
|
` + feedbackIdLine + `
|
|
415024
415095
|
**Errors**
|
|
415025
415096
|
\`\`\`json
|
|
@@ -416249,7 +416320,7 @@ var exports_conversation = {};
|
|
|
416249
416320
|
__export(exports_conversation, {
|
|
416250
416321
|
clearConversation: () => clearConversation
|
|
416251
416322
|
});
|
|
416252
|
-
import { randomUUID as
|
|
416323
|
+
import { randomUUID as randomUUID27 } from "crypto";
|
|
416253
416324
|
async function clearConversation({
|
|
416254
416325
|
setMessages,
|
|
416255
416326
|
readFileState,
|
|
@@ -416291,7 +416362,7 @@ async function clearConversation({
|
|
|
416291
416362
|
setMessages(() => []);
|
|
416292
416363
|
if (false) {}
|
|
416293
416364
|
if (setConversationId) {
|
|
416294
|
-
setConversationId(
|
|
416365
|
+
setConversationId(randomUUID27());
|
|
416295
416366
|
}
|
|
416296
416367
|
clearSessionCaches(preservedAgentIds);
|
|
416297
416368
|
setCwd(getOriginalCwd());
|
|
@@ -418172,7 +418243,7 @@ function buildPrimarySection() {
|
|
|
418172
418243
|
});
|
|
418173
418244
|
return [{
|
|
418174
418245
|
label: "Version",
|
|
418175
|
-
value: "0.9.
|
|
418246
|
+
value: "0.9.5"
|
|
418176
418247
|
}, {
|
|
418177
418248
|
label: "Session name",
|
|
418178
418249
|
value: nameValue
|
|
@@ -422942,7 +423013,7 @@ function Config({
|
|
|
422942
423013
|
}
|
|
422943
423014
|
})
|
|
422944
423015
|
}) : showSubmenu === "ChannelDowngrade" ? /* @__PURE__ */ jsx_runtime181.jsx(ChannelDowngradeDialog, {
|
|
422945
|
-
currentVersion: "0.9.
|
|
423016
|
+
currentVersion: "0.9.5",
|
|
422946
423017
|
onChoice: (choice) => {
|
|
422947
423018
|
setShowSubmenu(null);
|
|
422948
423019
|
setTabsHidden(false);
|
|
@@ -422954,7 +423025,7 @@ function Config({
|
|
|
422954
423025
|
autoUpdatesChannel: "stable"
|
|
422955
423026
|
};
|
|
422956
423027
|
if (choice === "stay") {
|
|
422957
|
-
newSettings.minimumVersion = "0.9.
|
|
423028
|
+
newSettings.minimumVersion = "0.9.5";
|
|
422958
423029
|
}
|
|
422959
423030
|
updateSettingsForSource("userSettings", newSettings);
|
|
422960
423031
|
setSettingsData((prev_27) => ({
|
|
@@ -429895,7 +429966,7 @@ function UpdateScreen({ onDone }) {
|
|
|
429895
429966
|
setState({ type: "dev-build" });
|
|
429896
429967
|
return;
|
|
429897
429968
|
}
|
|
429898
|
-
const currentVersion = "0.9.
|
|
429969
|
+
const currentVersion = "0.9.5";
|
|
429899
429970
|
const channel2 = getInitialSettings()?.autoUpdatesChannel ?? "latest";
|
|
429900
429971
|
const latestVersion = await getLatestVersion(channel2);
|
|
429901
429972
|
if (!latestVersion) {
|
|
@@ -432006,7 +432077,7 @@ function HelpV2(t0) {
|
|
|
432006
432077
|
let t6;
|
|
432007
432078
|
if ($2[31] !== tabs) {
|
|
432008
432079
|
t6 = /* @__PURE__ */ jsx_runtime211.jsx(Tabs, {
|
|
432009
|
-
title: `ZeroCLI v${"0.9.
|
|
432080
|
+
title: `ZeroCLI v${"0.9.5"}`,
|
|
432010
432081
|
color: "professionalBlue",
|
|
432011
432082
|
defaultTab: "general",
|
|
432012
432083
|
children: tabs
|
|
@@ -456850,7 +456921,7 @@ function getAllReleaseNotes(changelogContent = getStoredChangelogFromMemory()) {
|
|
|
456850
456921
|
return [];
|
|
456851
456922
|
}
|
|
456852
456923
|
}
|
|
456853
|
-
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "0.9.
|
|
456924
|
+
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "0.9.5") {
|
|
456854
456925
|
if (process.env.USER_TYPE === "ant") {
|
|
456855
456926
|
const changelog = MACRO.VERSION_CHANGELOG;
|
|
456856
456927
|
if (changelog) {
|
|
@@ -466163,7 +466234,7 @@ function AsyncAgentDetailDialog(t0) {
|
|
|
466163
466234
|
t5 = $2[10];
|
|
466164
466235
|
}
|
|
466165
466236
|
const planContent = t5;
|
|
466166
|
-
const displayPrompt = agent2.prompt.length >
|
|
466237
|
+
const displayPrompt = agent2.prompt.length > 800 ? agent2.prompt.substring(0, 797) + "…" : agent2.prompt;
|
|
466167
466238
|
const tokenCount = agent2.result?.totalTokens ?? agent2.progress?.tokenCount;
|
|
466168
466239
|
const toolUseCount = agent2.result?.totalToolUseCount ?? agent2.progress?.toolUseCount;
|
|
466169
466240
|
const t6 = agent2.selectedAgent?.agentType ?? "agent";
|
|
@@ -466295,8 +466366,8 @@ function AsyncAgentDetailDialog(t0) {
|
|
|
466295
466366
|
t14 = $2[30];
|
|
466296
466367
|
}
|
|
466297
466368
|
let t15;
|
|
466298
|
-
if ($2[31] !== agent2.progress || $2[
|
|
466299
|
-
t15 = agent2.
|
|
466369
|
+
if ($2[31] !== agent2.progress || $2[33] !== theme) {
|
|
466370
|
+
t15 = agent2.progress?.recentActivities && agent2.progress.recentActivities.length > 0 && /* @__PURE__ */ jsx_runtime275.jsxs(ThemedBox_default, {
|
|
466300
466371
|
flexDirection: "column",
|
|
466301
466372
|
children: [
|
|
466302
466373
|
/* @__PURE__ */ jsx_runtime275.jsx(ThemedText, {
|
|
@@ -468047,7 +468118,7 @@ var init_InProcessTeammateDetailDialog = __esm(() => {
|
|
|
468047
468118
|
});
|
|
468048
468119
|
|
|
468049
468120
|
// src/utils/messages/mappers.ts
|
|
468050
|
-
import { randomUUID as
|
|
468121
|
+
import { randomUUID as randomUUID28 } from "crypto";
|
|
468051
468122
|
function toInternalMessages(messages) {
|
|
468052
468123
|
return messages.flatMap((message) => {
|
|
468053
468124
|
switch (message.type) {
|
|
@@ -468066,7 +468137,7 @@ function toInternalMessages(messages) {
|
|
|
468066
468137
|
{
|
|
468067
468138
|
type: "user",
|
|
468068
468139
|
message: message.message,
|
|
468069
|
-
uuid: message.uuid ??
|
|
468140
|
+
uuid: message.uuid ?? randomUUID28(),
|
|
468070
468141
|
timestamp: message.timestamp ?? new Date().toISOString(),
|
|
468071
468142
|
isMeta: message.isSynthetic
|
|
468072
468143
|
}
|
|
@@ -468081,7 +468152,7 @@ function toInternalMessages(messages) {
|
|
|
468081
468152
|
level: "info",
|
|
468082
468153
|
subtype: "compact_boundary",
|
|
468083
468154
|
compactMetadata: fromSDKCompactMetadata(compactMsg.compact_metadata),
|
|
468084
|
-
uuid: message.uuid ??
|
|
468155
|
+
uuid: message.uuid ?? randomUUID28(),
|
|
468085
468156
|
timestamp: new Date().toISOString(),
|
|
468086
468157
|
isMeta: message.isSynthetic ?? false
|
|
468087
468158
|
}
|
|
@@ -479303,7 +479374,7 @@ __export(exports_branch, {
|
|
|
479303
479374
|
deriveFirstPrompt: () => deriveFirstPrompt,
|
|
479304
479375
|
call: () => call53
|
|
479305
479376
|
});
|
|
479306
|
-
import { randomUUID as
|
|
479377
|
+
import { randomUUID as randomUUID29 } from "crypto";
|
|
479307
479378
|
import { mkdir as mkdir35, readFile as readFile42, writeFile as writeFile39 } from "fs/promises";
|
|
479308
479379
|
function deriveFirstPrompt(firstUserMessage) {
|
|
479309
479380
|
const content = firstUserMessage?.message?.content;
|
|
@@ -479315,7 +479386,7 @@ function deriveFirstPrompt(firstUserMessage) {
|
|
|
479315
479386
|
return raw.replace(/\s+/g, " ").trim().slice(0, 100) || "Branched conversation";
|
|
479316
479387
|
}
|
|
479317
479388
|
async function createFork(customTitle) {
|
|
479318
|
-
const forkSessionId =
|
|
479389
|
+
const forkSessionId = randomUUID29();
|
|
479319
479390
|
const originalSessionId = getSessionId();
|
|
479320
479391
|
const projectDir = getProjectDir2(getOriginalCwd());
|
|
479321
479392
|
const forkSessionPath = getTranscriptPathForSession(forkSessionId);
|
|
@@ -485888,7 +485959,7 @@ async function captureMemoryDiagnostics(trigger, dumpNumber = 0) {
|
|
|
485888
485959
|
smapsRollup,
|
|
485889
485960
|
platform: process.platform,
|
|
485890
485961
|
nodeVersion: process.version,
|
|
485891
|
-
ccVersion: "0.9.
|
|
485962
|
+
ccVersion: "0.9.5"
|
|
485892
485963
|
};
|
|
485893
485964
|
}
|
|
485894
485965
|
async function performHeapDump(trigger = "manual", dumpNumber = 0) {
|
|
@@ -486475,7 +486546,7 @@ var init_bridge_kick = __esm(() => {
|
|
|
486475
486546
|
var call60 = async () => {
|
|
486476
486547
|
return {
|
|
486477
486548
|
type: "text",
|
|
486478
|
-
value: `${"0.9.
|
|
486549
|
+
value: `${"0.9.5"} (built ${"2026-05-11T18:46:47.195Z"})`
|
|
486479
486550
|
};
|
|
486480
486551
|
}, version2, version_default;
|
|
486481
486552
|
var init_version = __esm(() => {
|
|
@@ -496632,7 +496703,7 @@ function generateHtmlReport(data, insights) {
|
|
|
496632
496703
|
function buildExportData(data, insights, facets) {
|
|
496633
496704
|
let version3;
|
|
496634
496705
|
try {
|
|
496635
|
-
version3 = "0.9.
|
|
496706
|
+
version3 = "0.9.5";
|
|
496636
496707
|
} catch {
|
|
496637
496708
|
version3 = "unknown";
|
|
496638
496709
|
}
|
|
@@ -500828,7 +500899,7 @@ var init_sessionStorage = __esm(() => {
|
|
|
500828
500899
|
init_slowOperations();
|
|
500829
500900
|
init_uuid();
|
|
500830
500901
|
try {
|
|
500831
|
-
VERSION7 = "0.9.
|
|
500902
|
+
VERSION7 = "0.9.5";
|
|
500832
500903
|
} catch {
|
|
500833
500904
|
VERSION7 = "unknown";
|
|
500834
500905
|
}
|
|
@@ -502149,7 +502220,7 @@ var init_filesystem = __esm(() => {
|
|
|
502149
502220
|
});
|
|
502150
502221
|
getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
|
|
502151
502222
|
const nonce = randomBytes17(16).toString("hex");
|
|
502152
|
-
return join137(getZeroTempDir(), "bundled-skills", "0.9.
|
|
502223
|
+
return join137(getZeroTempDir(), "bundled-skills", "0.9.5", nonce);
|
|
502153
502224
|
});
|
|
502154
502225
|
getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
|
|
502155
502226
|
});
|
|
@@ -502888,9 +502959,9 @@ var init_hookHelpers = __esm(() => {
|
|
|
502888
502959
|
});
|
|
502889
502960
|
|
|
502890
502961
|
// src/utils/hooks/execPromptHook.ts
|
|
502891
|
-
import { randomUUID as
|
|
502962
|
+
import { randomUUID as randomUUID30 } from "crypto";
|
|
502892
502963
|
async function execPromptHook(hook, hookName, hookEvent, jsonInput, signal, toolUseContext, messages, toolUseID) {
|
|
502893
|
-
const effectiveToolUseID = toolUseID || `hook-${
|
|
502964
|
+
const effectiveToolUseID = toolUseID || `hook-${randomUUID30()}`;
|
|
502894
502965
|
try {
|
|
502895
502966
|
const processedPrompt = addArgumentsToPrompt(hook.prompt, jsonInput);
|
|
502896
502967
|
logForDebugging(`Hooks: Processing prompt hook with prompt: ${processedPrompt}`);
|
|
@@ -503044,9 +503115,9 @@ var init_execPromptHook = __esm(() => {
|
|
|
503044
503115
|
});
|
|
503045
503116
|
|
|
503046
503117
|
// src/utils/hooks/execAgentHook.ts
|
|
503047
|
-
import { randomUUID as
|
|
503118
|
+
import { randomUUID as randomUUID31 } from "crypto";
|
|
503048
503119
|
async function execAgentHook(hook, hookName, hookEvent, jsonInput, signal, toolUseContext, toolUseID, _messages, agentName) {
|
|
503049
|
-
const effectiveToolUseID = toolUseID || `hook-${
|
|
503120
|
+
const effectiveToolUseID = toolUseID || `hook-${randomUUID31()}`;
|
|
503050
503121
|
const transcriptPath = toolUseContext.agentId ? getAgentTranscriptPath(toolUseContext.agentId) : getTranscriptPath();
|
|
503051
503122
|
const hookStartTime = Date.now();
|
|
503052
503123
|
try {
|
|
@@ -503081,7 +503152,7 @@ When done, return your result using the ${SYNTHETIC_OUTPUT_TOOL_NAME} tool with:
|
|
|
503081
503152
|
]);
|
|
503082
503153
|
const model = hook.model ?? getSmallFastModel();
|
|
503083
503154
|
const MAX_AGENT_TURNS = 50;
|
|
503084
|
-
const hookAgentId = asAgentId(`hook-agent-${
|
|
503155
|
+
const hookAgentId = asAgentId(`hook-agent-${randomUUID31()}`);
|
|
503085
503156
|
const agentToolUseContext = {
|
|
503086
503157
|
...toolUseContext,
|
|
503087
503158
|
agentId: hookAgentId,
|
|
@@ -504626,7 +504697,7 @@ __export(exports_hooks2, {
|
|
|
504626
504697
|
});
|
|
504627
504698
|
import { basename as basename47 } from "path";
|
|
504628
504699
|
import { spawn as spawn9 } from "child_process";
|
|
504629
|
-
import { randomUUID as
|
|
504700
|
+
import { randomUUID as randomUUID32 } from "crypto";
|
|
504630
504701
|
function isLocalSyncHook(json2) {
|
|
504631
504702
|
return !(("async" in json2) && json2.async === true);
|
|
504632
504703
|
}
|
|
@@ -505746,7 +505817,7 @@ async function* executeHooks({
|
|
|
505746
505817
|
parentToolUseID: toolUseID,
|
|
505747
505818
|
toolUseID,
|
|
505748
505819
|
timestamp: new Date().toISOString(),
|
|
505749
|
-
uuid:
|
|
505820
|
+
uuid: randomUUID32()
|
|
505750
505821
|
}
|
|
505751
505822
|
};
|
|
505752
505823
|
}
|
|
@@ -505808,7 +505879,7 @@ async function* executeHooks({
|
|
|
505808
505879
|
const { signal: abortSignal, cleanup } = createCombinedAbortSignal(signal, {
|
|
505809
505880
|
timeoutMs: commandTimeoutMs
|
|
505810
505881
|
});
|
|
505811
|
-
const hookId =
|
|
505882
|
+
const hookId = randomUUID32();
|
|
505812
505883
|
const hookStartMs = Date.now();
|
|
505813
505884
|
const hookCommand = getHookDisplayText(hook);
|
|
505814
505885
|
try {
|
|
@@ -506456,7 +506527,7 @@ async function executeHooksOutsideREPL({
|
|
|
506456
506527
|
const callbackTimeoutMs = hook.timeout ? hook.timeout * 1000 : timeoutMs;
|
|
506457
506528
|
const { signal: abortSignal2, cleanup: cleanup2 } = createCombinedAbortSignal(signal, { timeoutMs: callbackTimeoutMs });
|
|
506458
506529
|
try {
|
|
506459
|
-
const toolUseID =
|
|
506530
|
+
const toolUseID = randomUUID32();
|
|
506460
506531
|
const json2 = await hook.callback(hookInput, toolUseID, abortSignal2, hookIndex);
|
|
506461
506532
|
cleanup2?.();
|
|
506462
506533
|
if (isLocalAsyncHook(json2)) {
|
|
@@ -506567,7 +506638,7 @@ async function executeHooksOutsideREPL({
|
|
|
506567
506638
|
const commandTimeoutMs = hook.timeout ? hook.timeout * 1000 : timeoutMs;
|
|
506568
506639
|
const { signal: abortSignal, cleanup } = createCombinedAbortSignal(signal, { timeoutMs: commandTimeoutMs });
|
|
506569
506640
|
try {
|
|
506570
|
-
const result = await execCommandHook(hook, hookEvent, hookName, jsonInput, abortSignal,
|
|
506641
|
+
const result = await execCommandHook(hook, hookEvent, hookName, jsonInput, abortSignal, randomUUID32(), hookIndex, pluginRoot, pluginId);
|
|
506571
506642
|
cleanup?.();
|
|
506572
506643
|
if (result.aborted) {
|
|
506573
506644
|
logForDebugging(`${hookName} [${hook.command}] cancelled`);
|
|
@@ -506785,7 +506856,7 @@ async function* executeStopHooks(permissionMode, signal, timeoutMs = TOOL_HOOK_E
|
|
|
506785
506856
|
};
|
|
506786
506857
|
yield* executeHooks({
|
|
506787
506858
|
hookInput,
|
|
506788
|
-
toolUseID:
|
|
506859
|
+
toolUseID: randomUUID32(),
|
|
506789
506860
|
signal,
|
|
506790
506861
|
timeoutMs,
|
|
506791
506862
|
toolUseContext,
|
|
@@ -506802,7 +506873,7 @@ async function* executeTeammateIdleHooks(teammateName, teamName, permissionMode,
|
|
|
506802
506873
|
};
|
|
506803
506874
|
yield* executeHooks({
|
|
506804
506875
|
hookInput,
|
|
506805
|
-
toolUseID:
|
|
506876
|
+
toolUseID: randomUUID32(),
|
|
506806
506877
|
signal,
|
|
506807
506878
|
timeoutMs
|
|
506808
506879
|
});
|
|
@@ -506819,7 +506890,7 @@ async function* executeTaskCreatedHooks(taskId, taskSubject, taskDescription, te
|
|
|
506819
506890
|
};
|
|
506820
506891
|
yield* executeHooks({
|
|
506821
506892
|
hookInput,
|
|
506822
|
-
toolUseID:
|
|
506893
|
+
toolUseID: randomUUID32(),
|
|
506823
506894
|
signal,
|
|
506824
506895
|
timeoutMs,
|
|
506825
506896
|
toolUseContext
|
|
@@ -506839,7 +506910,7 @@ async function* executeTaskCompletedHooks(taskId, taskSubject, taskDescription,
|
|
|
506839
506910
|
let preventedContinuation = false;
|
|
506840
506911
|
for await (const result of executeHooks({
|
|
506841
506912
|
hookInput,
|
|
506842
|
-
toolUseID:
|
|
506913
|
+
toolUseID: randomUUID32(),
|
|
506843
506914
|
signal,
|
|
506844
506915
|
timeoutMs,
|
|
506845
506916
|
toolUseContext
|
|
@@ -506877,7 +506948,7 @@ async function* executeUserPromptSubmitHooks(prompt, permissionMode, toolUseCont
|
|
|
506877
506948
|
};
|
|
506878
506949
|
yield* executeHooks({
|
|
506879
506950
|
hookInput,
|
|
506880
|
-
toolUseID:
|
|
506951
|
+
toolUseID: randomUUID32(),
|
|
506881
506952
|
signal: toolUseContext.abortController.signal,
|
|
506882
506953
|
timeoutMs: TOOL_HOOK_EXECUTION_TIMEOUT_MS,
|
|
506883
506954
|
toolUseContext,
|
|
@@ -506894,7 +506965,7 @@ async function* executeSessionStartHooks(source, sessionId, agentType, model, si
|
|
|
506894
506965
|
};
|
|
506895
506966
|
yield* executeHooks({
|
|
506896
506967
|
hookInput,
|
|
506897
|
-
toolUseID:
|
|
506968
|
+
toolUseID: randomUUID32(),
|
|
506898
506969
|
matchQuery: source,
|
|
506899
506970
|
signal,
|
|
506900
506971
|
timeoutMs,
|
|
@@ -506909,7 +506980,7 @@ async function* executeSetupHooks(trigger, signal, timeoutMs = TOOL_HOOK_EXECUTI
|
|
|
506909
506980
|
};
|
|
506910
506981
|
yield* executeHooks({
|
|
506911
506982
|
hookInput,
|
|
506912
|
-
toolUseID:
|
|
506983
|
+
toolUseID: randomUUID32(),
|
|
506913
506984
|
matchQuery: trigger,
|
|
506914
506985
|
signal,
|
|
506915
506986
|
timeoutMs,
|
|
@@ -506925,7 +506996,7 @@ async function* executeSubagentStartHooks(agentId, agentType, signal, timeoutMs
|
|
|
506925
506996
|
};
|
|
506926
506997
|
yield* executeHooks({
|
|
506927
506998
|
hookInput,
|
|
506928
|
-
toolUseID:
|
|
506999
|
+
toolUseID: randomUUID32(),
|
|
506929
507000
|
matchQuery: agentType,
|
|
506930
507001
|
signal,
|
|
506931
507002
|
timeoutMs
|
|
@@ -507288,7 +507359,7 @@ async function executeStatusLineCommand(statusLineInput, signal, timeoutMs = 500
|
|
|
507288
507359
|
const abortSignal = signal || AbortSignal.timeout(timeoutMs);
|
|
507289
507360
|
try {
|
|
507290
507361
|
const jsonInput = jsonStringify(statusLineInput);
|
|
507291
|
-
const result = await execCommandHook(statusLine, "StatusLine", "statusLine", jsonInput, abortSignal,
|
|
507362
|
+
const result = await execCommandHook(statusLine, "StatusLine", "statusLine", jsonInput, abortSignal, randomUUID32());
|
|
507292
507363
|
if (result.aborted) {
|
|
507293
507364
|
return;
|
|
507294
507365
|
}
|
|
@@ -507332,7 +507403,7 @@ async function executeFileSuggestionCommand(fileSuggestionInput, signal, timeout
|
|
|
507332
507403
|
try {
|
|
507333
507404
|
const jsonInput = jsonStringify(fileSuggestionInput);
|
|
507334
507405
|
const hook = { type: "command", command: fileSuggestion.command };
|
|
507335
|
-
const result = await execCommandHook(hook, "FileSuggestion", "FileSuggestion", jsonInput, abortSignal,
|
|
507406
|
+
const result = await execCommandHook(hook, "FileSuggestion", "FileSuggestion", jsonInput, abortSignal, randomUUID32());
|
|
507336
507407
|
if (result.aborted || result.status !== 0) {
|
|
507337
507408
|
return [];
|
|
507338
507409
|
}
|
|
@@ -513147,7 +513218,7 @@ var init_inboundMessages = __esm(() => {
|
|
|
513147
513218
|
});
|
|
513148
513219
|
|
|
513149
513220
|
// src/utils/messages/systemInit.ts
|
|
513150
|
-
import { randomUUID as
|
|
513221
|
+
import { randomUUID as randomUUID33 } from "crypto";
|
|
513151
513222
|
function sdkCompatToolName(name) {
|
|
513152
513223
|
return name === AGENT_TOOL_NAME ? LEGACY_AGENT_TOOL_NAME : name;
|
|
513153
513224
|
}
|
|
@@ -513169,7 +513240,7 @@ function buildSystemInitMessage(inputs) {
|
|
|
513169
513240
|
slash_commands: inputs.commands.filter((c6) => c6.userInvocable !== false).map((c6) => c6.name),
|
|
513170
513241
|
apiKeySource: getAnthropicApiKeyWithSource().source,
|
|
513171
513242
|
betas: getSdkBetas(),
|
|
513172
|
-
claude_code_version: "0.9.
|
|
513243
|
+
claude_code_version: "0.9.5",
|
|
513173
513244
|
output_style: outputStyle2,
|
|
513174
513245
|
agents: inputs.agents.map((agent2) => agent2.agentType),
|
|
513175
513246
|
skills: inputs.skills.filter((s) => s.userInvocable !== false).map((skill) => skill.name),
|
|
@@ -513178,7 +513249,7 @@ function buildSystemInitMessage(inputs) {
|
|
|
513178
513249
|
path: plugin2.path,
|
|
513179
513250
|
source: plugin2.source
|
|
513180
513251
|
})),
|
|
513181
|
-
uuid:
|
|
513252
|
+
uuid: randomUUID33()
|
|
513182
513253
|
};
|
|
513183
513254
|
if (false) {}
|
|
513184
513255
|
initMessage.fast_mode_state = getFastModeState(inputs.model, inputs.fastMode);
|
|
@@ -513262,7 +513333,7 @@ __export(exports_MessageSelector, {
|
|
|
513262
513333
|
messagesAfterAreOnlySynthetic: () => messagesAfterAreOnlySynthetic,
|
|
513263
513334
|
MessageSelector: () => MessageSelector
|
|
513264
513335
|
});
|
|
513265
|
-
import { randomUUID as
|
|
513336
|
+
import { randomUUID as randomUUID34 } from "crypto";
|
|
513266
513337
|
import * as path21 from "path";
|
|
513267
513338
|
function isTextBlock2(block2) {
|
|
513268
513339
|
return block2.type === "text";
|
|
@@ -513282,7 +513353,7 @@ function MessageSelector({
|
|
|
513282
513353
|
const fileHistory = useAppState((s) => s.fileHistory);
|
|
513283
513354
|
const [error42, setError] = import_react198.useState(undefined);
|
|
513284
513355
|
const isFileHistoryEnabled = fileHistoryEnabled();
|
|
513285
|
-
const currentUUID = import_react198.useMemo(
|
|
513356
|
+
const currentUUID = import_react198.useMemo(randomUUID34, []);
|
|
513286
513357
|
const messageOptions = import_react198.useMemo(() => [...messages.filter(selectableUserMessagesFilter), {
|
|
513287
513358
|
...createUserMessage({
|
|
513288
513359
|
content: ""
|
|
@@ -519125,7 +519196,7 @@ var init_FileEditToolDiff = __esm(() => {
|
|
|
519125
519196
|
});
|
|
519126
519197
|
|
|
519127
519198
|
// src/hooks/useDiffInIDE.ts
|
|
519128
|
-
import { randomUUID as
|
|
519199
|
+
import { randomUUID as randomUUID35 } from "crypto";
|
|
519129
519200
|
import { basename as basename50 } from "path";
|
|
519130
519201
|
function useDiffInIDE({
|
|
519131
519202
|
onChange,
|
|
@@ -519136,7 +519207,7 @@ function useDiffInIDE({
|
|
|
519136
519207
|
}) {
|
|
519137
519208
|
const isUnmounted = import_react209.useRef(false);
|
|
519138
519209
|
const [hasError, setHasError] = import_react209.useState(false);
|
|
519139
|
-
const sha = import_react209.useMemo(() =>
|
|
519210
|
+
const sha = import_react209.useMemo(() => randomUUID35().slice(0, 6), []);
|
|
519140
519211
|
const tabName = import_react209.useMemo(() => `⟁ [ZeroCLI] ${basename50(filePath)} (${sha}) ⧉`, [filePath, sha]);
|
|
519141
519212
|
const shouldShowDiffInIDE = hasAccessToIDEExtensionDiffFeature(toolUseContext.options.mcpClients) && getGlobalConfig().diffTool === "auto" && !filePath.endsWith(".ipynb");
|
|
519142
519213
|
const ideName = getConnectedIdeName(toolUseContext.options.mcpClients) ?? "IDE";
|
|
@@ -528484,7 +528555,7 @@ var init_useVoiceEnabled = __esm(() => {
|
|
|
528484
528555
|
function getSemverPart(version3) {
|
|
528485
528556
|
return `${import_semver12.major(version3, { loose: true })}.${import_semver12.minor(version3, { loose: true })}.${import_semver12.patch(version3, { loose: true })}`;
|
|
528486
528557
|
}
|
|
528487
|
-
function useUpdateNotification(updatedVersion, initialVersion = "0.9.
|
|
528558
|
+
function useUpdateNotification(updatedVersion, initialVersion = "0.9.5") {
|
|
528488
528559
|
const [lastNotifiedSemver, setLastNotifiedSemver] = import_react226.useState(() => getSemverPart(initialVersion));
|
|
528489
528560
|
if (!updatedVersion) {
|
|
528490
528561
|
return null;
|
|
@@ -528527,7 +528598,7 @@ function AutoUpdater({
|
|
|
528527
528598
|
return;
|
|
528528
528599
|
}
|
|
528529
528600
|
if (false) {}
|
|
528530
|
-
const currentVersion = "0.9.
|
|
528601
|
+
const currentVersion = "0.9.5";
|
|
528531
528602
|
const channel2 = getInitialSettings()?.autoUpdatesChannel ?? "latest";
|
|
528532
528603
|
let latestVersion = await getLatestVersion(channel2);
|
|
528533
528604
|
const isDisabled = isAutoUpdaterDisabled();
|
|
@@ -528748,12 +528819,12 @@ function NativeAutoUpdater({
|
|
|
528748
528819
|
logEvent("tengu_native_auto_updater_start", {});
|
|
528749
528820
|
try {
|
|
528750
528821
|
const maxVersion = await getMaxVersion();
|
|
528751
|
-
if (maxVersion && gt("0.9.
|
|
528822
|
+
if (maxVersion && gt("0.9.5", maxVersion)) {
|
|
528752
528823
|
const msg = await getMaxVersionMessage();
|
|
528753
528824
|
setMaxVersionIssue(msg ?? "affects your version");
|
|
528754
528825
|
}
|
|
528755
528826
|
const result = await installLatest(channel2);
|
|
528756
|
-
const currentVersion = "0.9.
|
|
528827
|
+
const currentVersion = "0.9.5";
|
|
528757
528828
|
const latencyMs = Date.now() - startTime2;
|
|
528758
528829
|
if (result.lockFailed) {
|
|
528759
528830
|
logEvent("tengu_native_auto_updater_lock_contention", {
|
|
@@ -528895,17 +528966,17 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
528895
528966
|
const maxVersion = await getMaxVersion();
|
|
528896
528967
|
if (maxVersion && latest && gt(latest, maxVersion)) {
|
|
528897
528968
|
logForDebugging(`PackageManagerAutoUpdater: maxVersion ${maxVersion} is set, capping update from ${latest} to ${maxVersion}`);
|
|
528898
|
-
if (gte("0.9.
|
|
528899
|
-
logForDebugging(`PackageManagerAutoUpdater: current version ${"0.9.
|
|
528969
|
+
if (gte("0.9.5", maxVersion)) {
|
|
528970
|
+
logForDebugging(`PackageManagerAutoUpdater: current version ${"0.9.5"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
528900
528971
|
setUpdateAvailable(false);
|
|
528901
528972
|
return;
|
|
528902
528973
|
}
|
|
528903
528974
|
latest = maxVersion;
|
|
528904
528975
|
}
|
|
528905
|
-
const hasUpdate = latest && !gte("0.9.
|
|
528976
|
+
const hasUpdate = latest && !gte("0.9.5", latest) && !shouldSkipVersion(latest);
|
|
528906
528977
|
setUpdateAvailable(!!hasUpdate);
|
|
528907
528978
|
if (hasUpdate) {
|
|
528908
|
-
logForDebugging(`PackageManagerAutoUpdater: Update available ${"0.9.
|
|
528979
|
+
logForDebugging(`PackageManagerAutoUpdater: Update available ${"0.9.5"} -> ${latest}`);
|
|
528909
528980
|
}
|
|
528910
528981
|
};
|
|
528911
528982
|
$2[0] = t1;
|
|
@@ -528939,7 +529010,7 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
528939
529010
|
wrap: "truncate",
|
|
528940
529011
|
children: [
|
|
528941
529012
|
"currentVersion: ",
|
|
528942
|
-
"0.9.
|
|
529013
|
+
"0.9.5"
|
|
528943
529014
|
]
|
|
528944
529015
|
});
|
|
528945
529016
|
$2[3] = verbose;
|
|
@@ -535938,7 +536009,7 @@ var init_teamDiscovery = __esm(() => {
|
|
|
535938
536009
|
});
|
|
535939
536010
|
|
|
535940
536011
|
// src/components/teams/TeamsDialog.tsx
|
|
535941
|
-
import { randomUUID as
|
|
536012
|
+
import { randomUUID as randomUUID36 } from "crypto";
|
|
535942
536013
|
function TeamsDialog({
|
|
535943
536014
|
initialTeams,
|
|
535944
536015
|
onDone
|
|
@@ -536566,7 +536637,7 @@ async function killTeammate(paneId, backendType, teamName, teammateId, teammateN
|
|
|
536566
536637
|
},
|
|
536567
536638
|
inbox: {
|
|
536568
536639
|
messages: [...prev.inbox.messages, {
|
|
536569
|
-
id:
|
|
536640
|
+
id: randomUUID36(),
|
|
536570
536641
|
from: "system",
|
|
536571
536642
|
text: jsonStringify({
|
|
536572
536643
|
type: "teammate_terminated",
|
|
@@ -537968,7 +538039,7 @@ function buildStatusLineCommandInput(permissionMode, exceeds200kTokens, settings
|
|
|
537968
538039
|
project_dir: getOriginalCwd(),
|
|
537969
538040
|
added_dirs: addedDirs
|
|
537970
538041
|
},
|
|
537971
|
-
version: "0.9.
|
|
538042
|
+
version: "0.9.5",
|
|
537972
538043
|
output_style: {
|
|
537973
538044
|
name: outputStyleName
|
|
537974
538045
|
},
|
|
@@ -542369,7 +542440,7 @@ function normalizeControlMessageKeys(obj) {
|
|
|
542369
542440
|
}
|
|
542370
542441
|
|
|
542371
542442
|
// src/bridge/bridgeMessaging.ts
|
|
542372
|
-
import { randomUUID as
|
|
542443
|
+
import { randomUUID as randomUUID37 } from "crypto";
|
|
542373
542444
|
function isSDKMessage(value) {
|
|
542374
542445
|
return value !== null && typeof value === "object" && "type" in value && typeof value.type === "string";
|
|
542375
542446
|
}
|
|
@@ -542577,7 +542648,7 @@ function makeResultMessage(sessionId) {
|
|
|
542577
542648
|
modelUsage: {},
|
|
542578
542649
|
permission_denials: [],
|
|
542579
542650
|
session_id: sessionId,
|
|
542580
|
-
uuid:
|
|
542651
|
+
uuid: randomUUID37()
|
|
542581
542652
|
};
|
|
542582
542653
|
}
|
|
542583
542654
|
|
|
@@ -542620,7 +542691,7 @@ var init_bridgeMessaging = __esm(() => {
|
|
|
542620
542691
|
});
|
|
542621
542692
|
|
|
542622
542693
|
// src/remote/SessionsWebSocket.ts
|
|
542623
|
-
import { randomUUID as
|
|
542694
|
+
import { randomUUID as randomUUID38 } from "crypto";
|
|
542624
542695
|
function isSessionsMessage(value) {
|
|
542625
542696
|
if (typeof value !== "object" || value === null || !("type" in value)) {
|
|
542626
542697
|
return false;
|
|
@@ -542804,7 +542875,7 @@ class SessionsWebSocket {
|
|
|
542804
542875
|
}
|
|
542805
542876
|
const controlRequest = {
|
|
542806
542877
|
type: "control_request",
|
|
542807
|
-
request_id:
|
|
542878
|
+
request_id: randomUUID38(),
|
|
542808
542879
|
request
|
|
542809
542880
|
};
|
|
542810
542881
|
logForDebugging(`[SessionsWebSocket] Sending control request: ${request.subtype}`);
|
|
@@ -542998,11 +543069,11 @@ var init_RemoteSessionManager = __esm(() => {
|
|
|
542998
543069
|
});
|
|
542999
543070
|
|
|
543000
543071
|
// src/remote/remotePermissionBridge.ts
|
|
543001
|
-
import { randomUUID as
|
|
543072
|
+
import { randomUUID as randomUUID39 } from "crypto";
|
|
543002
543073
|
function createSyntheticAssistantMessage(request, requestId) {
|
|
543003
543074
|
return {
|
|
543004
543075
|
type: "assistant",
|
|
543005
|
-
uuid:
|
|
543076
|
+
uuid: randomUUID39(),
|
|
543006
543077
|
message: {
|
|
543007
543078
|
id: `remote-${requestId}`,
|
|
543008
543079
|
type: "message",
|
|
@@ -543528,6 +543599,7 @@ var init_useRemoteSession = __esm(() => {
|
|
|
543528
543599
|
});
|
|
543529
543600
|
|
|
543530
543601
|
// src/server/directConnectManager.ts
|
|
543602
|
+
import { randomUUID as randomUUID40 } from "crypto";
|
|
543531
543603
|
function isStdoutMessage(value) {
|
|
543532
543604
|
return typeof value === "object" && value !== null && "type" in value && typeof value.type === "string";
|
|
543533
543605
|
}
|
|
@@ -543627,7 +543699,7 @@ class DirectConnectSessionManager {
|
|
|
543627
543699
|
}
|
|
543628
543700
|
const request = jsonStringify({
|
|
543629
543701
|
type: "control_request",
|
|
543630
|
-
request_id:
|
|
543702
|
+
request_id: randomUUID40(),
|
|
543631
543703
|
request: {
|
|
543632
543704
|
subtype: "interrupt"
|
|
543633
543705
|
}
|
|
@@ -543815,7 +543887,7 @@ var init_useDirectConnect = __esm(() => {
|
|
|
543815
543887
|
});
|
|
543816
543888
|
|
|
543817
543889
|
// src/hooks/useSSHSession.ts
|
|
543818
|
-
import { randomUUID as
|
|
543890
|
+
import { randomUUID as randomUUID41 } from "crypto";
|
|
543819
543891
|
function useSSHSession({
|
|
543820
543892
|
session: session2,
|
|
543821
543893
|
setMessages,
|
|
@@ -543915,7 +543987,7 @@ function useSSHSession({
|
|
|
543915
543987
|
subtype: "informational",
|
|
543916
543988
|
content: `SSH connection dropped — reconnecting (attempt ${attempt}/${max2})...`,
|
|
543917
543989
|
timestamp: new Date().toISOString(),
|
|
543918
|
-
uuid:
|
|
543990
|
+
uuid: randomUUID41(),
|
|
543919
543991
|
level: "warning",
|
|
543920
543992
|
isMeta: false
|
|
543921
543993
|
};
|
|
@@ -546057,7 +546129,7 @@ var init_PermissionContext = __esm(() => {
|
|
|
546057
546129
|
});
|
|
546058
546130
|
|
|
546059
546131
|
// src/hooks/toolPermission/handlers/interactiveHandler.ts
|
|
546060
|
-
import { randomUUID as
|
|
546132
|
+
import { randomUUID as randomUUID42 } from "crypto";
|
|
546061
546133
|
function handleInteractivePermission(params, resolve44) {
|
|
546062
546134
|
const {
|
|
546063
546135
|
ctx,
|
|
@@ -546071,7 +546143,7 @@ function handleInteractivePermission(params, resolve44) {
|
|
|
546071
546143
|
let userInteracted = false;
|
|
546072
546144
|
let checkmarkTransitionTimer;
|
|
546073
546145
|
let checkmarkAbortHandler;
|
|
546074
|
-
const bridgeRequestId = bridgeCallbacks ?
|
|
546146
|
+
const bridgeRequestId = bridgeCallbacks ? randomUUID42() : undefined;
|
|
546075
546147
|
let channelUnsubscribe;
|
|
546076
546148
|
const permissionPromptStartTimeMs = Date.now();
|
|
546077
546149
|
const displayInput = result.updatedInput ?? ctx.input;
|
|
@@ -546493,9 +546565,9 @@ function matchesKeepGoingKeyword(input) {
|
|
|
546493
546565
|
}
|
|
546494
546566
|
|
|
546495
546567
|
// src/utils/processUserInput/processTextPrompt.ts
|
|
546496
|
-
import { randomUUID as
|
|
546568
|
+
import { randomUUID as randomUUID43 } from "crypto";
|
|
546497
546569
|
function processTextPrompt(input, imageContentBlocks, imagePasteIds, attachmentMessages, uuid3, permissionMode, isMeta) {
|
|
546498
|
-
const promptId =
|
|
546570
|
+
const promptId = randomUUID43();
|
|
546499
546571
|
setPromptId(promptId);
|
|
546500
546572
|
const userPromptText = typeof input === "string" ? input : input.find((block2) => block2.type === "text")?.text || "";
|
|
546501
546573
|
startInteractionSpan(userPromptText);
|
|
@@ -546628,7 +546700,7 @@ var exports_processBashCommand = {};
|
|
|
546628
546700
|
__export(exports_processBashCommand, {
|
|
546629
546701
|
processBashCommand: () => processBashCommand
|
|
546630
546702
|
});
|
|
546631
|
-
import { randomUUID as
|
|
546703
|
+
import { randomUUID as randomUUID44 } from "crypto";
|
|
546632
546704
|
async function processBashCommand(inputString, precedingInputBlocks, attachmentMessages, context6, setToolJSX) {
|
|
546633
546705
|
const usePowerShell = isPowerShellToolEnabled() && resolveDefaultShell() === "powershell";
|
|
546634
546706
|
logEvent("tengu_input_bash", {
|
|
@@ -546694,7 +546766,7 @@ async function processBashCommand(inputString, precedingInputBlocks, attachmentM
|
|
|
546694
546766
|
const mapped = await processToolResultBlock(shellTool, {
|
|
546695
546767
|
...data,
|
|
546696
546768
|
stderr: ""
|
|
546697
|
-
},
|
|
546769
|
+
}, randomUUID44());
|
|
546698
546770
|
const stdout = typeof mapped.content === "string" ? mapped.content : escapeXml(data.stdout);
|
|
546699
546771
|
return {
|
|
546700
546772
|
messages: [createSyntheticUserCaveatMessage(), userMessage, ...attachmentMessages, createUserMessage({
|
|
@@ -546742,7 +546814,7 @@ var init_processBashCommand = __esm(() => {
|
|
|
546742
546814
|
});
|
|
546743
546815
|
|
|
546744
546816
|
// src/utils/processUserInput/processUserInput.ts
|
|
546745
|
-
import { randomUUID as
|
|
546817
|
+
import { randomUUID as randomUUID45 } from "crypto";
|
|
546746
546818
|
async function processUserInput({
|
|
546747
546819
|
input,
|
|
546748
546820
|
preExpansionInput,
|
|
@@ -546804,7 +546876,7 @@ Original prompt: ${input}`, "warning")
|
|
|
546804
546876
|
type: "hook_additional_context",
|
|
546805
546877
|
content: hookResult.additionalContexts.map(applyTruncation),
|
|
546806
546878
|
hookName: "UserPromptSubmit",
|
|
546807
|
-
toolUseID: `hook-${
|
|
546879
|
+
toolUseID: `hook-${randomUUID45()}`,
|
|
546808
546880
|
hookEvent: "UserPromptSubmit"
|
|
546809
546881
|
}));
|
|
546810
546882
|
}
|
|
@@ -548323,7 +548395,7 @@ var init_sessionRestore = __esm(() => {
|
|
|
548323
548395
|
});
|
|
548324
548396
|
|
|
548325
548397
|
// src/hooks/useInboxPoller.ts
|
|
548326
|
-
import { randomUUID as
|
|
548398
|
+
import { randomUUID as randomUUID46 } from "crypto";
|
|
548327
548399
|
function getAgentNameToPoll(appState) {
|
|
548328
548400
|
if (isInProcessTeammate()) {
|
|
548329
548401
|
return;
|
|
@@ -548740,7 +548812,7 @@ function useInboxPoller({
|
|
|
548740
548812
|
messages: [
|
|
548741
548813
|
...prev.inbox.messages,
|
|
548742
548814
|
{
|
|
548743
|
-
id:
|
|
548815
|
+
id: randomUUID46(),
|
|
548744
548816
|
from: "system",
|
|
548745
548817
|
text: jsonStringify({
|
|
548746
548818
|
type: "teammate_terminated",
|
|
@@ -548780,7 +548852,7 @@ ${messageContent}
|
|
|
548780
548852
|
messages: [
|
|
548781
548853
|
...prev.inbox.messages,
|
|
548782
548854
|
...regularMessages.map((m) => ({
|
|
548783
|
-
id:
|
|
548855
|
+
id: randomUUID46(),
|
|
548784
548856
|
from: m.from,
|
|
548785
548857
|
text: m.text,
|
|
548786
548858
|
timestamp: m.timestamp,
|
|
@@ -549619,7 +549691,7 @@ async function submitTranscriptShare() {
|
|
|
549619
549691
|
}
|
|
549620
549692
|
|
|
549621
549693
|
// src/components/FeedbackSurvey/useSurveyState.tsx
|
|
549622
|
-
import { randomUUID as
|
|
549694
|
+
import { randomUUID as randomUUID47 } from "crypto";
|
|
549623
549695
|
function useSurveyState({
|
|
549624
549696
|
hideThanksAfterMs,
|
|
549625
549697
|
onOpen,
|
|
@@ -549630,7 +549702,7 @@ function useSurveyState({
|
|
|
549630
549702
|
}) {
|
|
549631
549703
|
const [state2, setState] = import_react291.useState("closed");
|
|
549632
549704
|
const [lastResponse, setLastResponse] = import_react291.useState(null);
|
|
549633
|
-
const appearanceId = import_react291.useRef(
|
|
549705
|
+
const appearanceId = import_react291.useRef(randomUUID47());
|
|
549634
549706
|
const lastResponseRef = import_react291.useRef(null);
|
|
549635
549707
|
const showThanksThenClose = import_react291.useCallback(() => {
|
|
549636
549708
|
setState("thanks");
|
|
@@ -549648,7 +549720,7 @@ function useSurveyState({
|
|
|
549648
549720
|
return;
|
|
549649
549721
|
}
|
|
549650
549722
|
setState("open");
|
|
549651
|
-
appearanceId.current =
|
|
549723
|
+
appearanceId.current = randomUUID47();
|
|
549652
549724
|
onOpen(appearanceId.current);
|
|
549653
549725
|
}, [state2, onOpen]);
|
|
549654
549726
|
const handleSelect = import_react291.useCallback((selected) => {
|
|
@@ -552555,7 +552627,7 @@ var init_ndjsonSafeStringify = __esm(() => {
|
|
|
552555
552627
|
});
|
|
552556
552628
|
|
|
552557
552629
|
// src/cli/structuredIO.ts
|
|
552558
|
-
import { randomUUID as
|
|
552630
|
+
import { randomUUID as randomUUID48 } from "crypto";
|
|
552559
552631
|
function serializeDecisionReason(reason) {
|
|
552560
552632
|
if (!reason) {
|
|
552561
552633
|
return;
|
|
@@ -552808,7 +552880,7 @@ class StructuredIO {
|
|
|
552808
552880
|
writeToStdout(ndjsonSafeStringify(message) + `
|
|
552809
552881
|
`);
|
|
552810
552882
|
}
|
|
552811
|
-
async sendRequest(request, schema, signal, requestId =
|
|
552883
|
+
async sendRequest(request, schema, signal, requestId = randomUUID48()) {
|
|
552812
552884
|
const message = {
|
|
552813
552885
|
type: "control_request",
|
|
552814
552886
|
request_id: requestId,
|
|
@@ -552874,7 +552946,7 @@ class StructuredIO {
|
|
|
552874
552946
|
parentSignal.addEventListener("abort", onParentAbort, { once: true });
|
|
552875
552947
|
try {
|
|
552876
552948
|
const hookPromise = executePermissionRequestHooksForSDK(tool.name, toolUseID, input, toolUseContext, mainPermissionResult.suggestions).then((decision) => ({ source: "hook", decision }));
|
|
552877
|
-
const requestId =
|
|
552949
|
+
const requestId = randomUUID48();
|
|
552878
552950
|
onPermissionPrompt?.(buildRequiresActionDetails(tool, input, toolUseID, requestId));
|
|
552879
552951
|
const sdkPromise = this.sendRequest({
|
|
552880
552952
|
subtype: "can_use_tool",
|
|
@@ -552954,7 +553026,7 @@ class StructuredIO {
|
|
|
552954
553026
|
subtype: "can_use_tool",
|
|
552955
553027
|
tool_name: SANDBOX_NETWORK_ACCESS_TOOL_NAME,
|
|
552956
553028
|
input: { host: hostPattern.host },
|
|
552957
|
-
tool_use_id:
|
|
553029
|
+
tool_use_id: randomUUID48(),
|
|
552958
553030
|
description: `Allow network connection to ${hostPattern.host}?`
|
|
552959
553031
|
}, outputSchema35());
|
|
552960
553032
|
return result.behavior === "allow";
|
|
@@ -557552,7 +557624,7 @@ __export(exports_REPL, {
|
|
|
557552
557624
|
import { dirname as dirname59, join as join149 } from "path";
|
|
557553
557625
|
import { tmpdir as tmpdir10 } from "os";
|
|
557554
557626
|
import { writeFile as writeFile51 } from "fs/promises";
|
|
557555
|
-
import { randomUUID as
|
|
557627
|
+
import { randomUUID as randomUUID49 } from "crypto";
|
|
557556
557628
|
function TranscriptModeFooter(t0) {
|
|
557557
557629
|
const $2 = import_react_compiler_runtime351.c(9);
|
|
557558
557630
|
const {
|
|
@@ -558317,7 +558389,7 @@ function REPL({
|
|
|
558317
558389
|
const [isMessageSelectorVisible, setIsMessageSelectorVisible] = import_react318.useState(false);
|
|
558318
558390
|
const [messageSelectorPreselect, setMessageSelectorPreselect] = import_react318.useState(undefined);
|
|
558319
558391
|
const [showCostDialog, setShowCostDialog] = import_react318.useState(false);
|
|
558320
|
-
const [conversationId, setConversationId] = import_react318.useState(
|
|
558392
|
+
const [conversationId, setConversationId] = import_react318.useState(randomUUID49());
|
|
558321
558393
|
const [idleReturnPending, setIdleReturnPending] = import_react318.useState(null);
|
|
558322
558394
|
const skipIdleCheckRef = import_react318.useRef(false);
|
|
558323
558395
|
const lastQueryCompletionTimeRef = import_react318.useRef(lastQueryCompletionTime);
|
|
@@ -559075,7 +559147,7 @@ Error: sandbox required but unavailable: ${reason}
|
|
|
559075
559147
|
} else {
|
|
559076
559148
|
setMessages(() => [newMessage]);
|
|
559077
559149
|
}
|
|
559078
|
-
setConversationId(
|
|
559150
|
+
setConversationId(randomUUID49());
|
|
559079
559151
|
if (false) {}
|
|
559080
559152
|
} else if (newMessage.type === "progress" && isEphemeralToolProgress(newMessage.data.type)) {
|
|
559081
559153
|
setMessages((oldMessages) => {
|
|
@@ -559151,7 +559223,7 @@ Error: sandbox required but unavailable: ${reason}
|
|
|
559151
559223
|
});
|
|
559152
559224
|
if (!shouldQuery) {
|
|
559153
559225
|
if (newMessages.some(isCompactBoundaryMessage)) {
|
|
559154
|
-
setConversationId(
|
|
559226
|
+
setConversationId(randomUUID49());
|
|
559155
559227
|
if (false) {}
|
|
559156
559228
|
}
|
|
559157
559229
|
resetLoadingState();
|
|
@@ -559784,7 +559856,7 @@ Error: sandbox required but unavailable: ${reason}
|
|
|
559784
559856
|
rewindToMessageIndex: messageIndex
|
|
559785
559857
|
});
|
|
559786
559858
|
setMessages(prev.slice(0, messageIndex));
|
|
559787
|
-
setConversationId(
|
|
559859
|
+
setConversationId(randomUUID49());
|
|
559788
559860
|
resetMicrocompactState();
|
|
559789
559861
|
if (false) {}
|
|
559790
559862
|
setAppState((prev2) => ({
|
|
@@ -560961,7 +561033,7 @@ Note: ctrl + z now suspends ZeroCLI, ctrl + _ undoes input.
|
|
|
560961
561033
|
setMessages(postCompact);
|
|
560962
561034
|
}
|
|
560963
561035
|
if (false) {}
|
|
560964
|
-
setConversationId(
|
|
561036
|
+
setConversationId(randomUUID49());
|
|
560965
561037
|
runPostCompactCleanup(context6.options.querySource);
|
|
560966
561038
|
if (direction === "from") {
|
|
560967
561039
|
const r = textForResubmit(message);
|
|
@@ -562470,7 +562542,7 @@ function WelcomeV2() {
|
|
|
562470
562542
|
dimColor: true,
|
|
562471
562543
|
children: [
|
|
562472
562544
|
"v",
|
|
562473
|
-
"0.9.
|
|
562545
|
+
"0.9.5",
|
|
562474
562546
|
" "
|
|
562475
562547
|
]
|
|
562476
562548
|
})
|
|
@@ -562704,7 +562776,7 @@ function WelcomeV2() {
|
|
|
562704
562776
|
dimColor: true,
|
|
562705
562777
|
children: [
|
|
562706
562778
|
"v",
|
|
562707
|
-
"0.9.
|
|
562779
|
+
"0.9.5",
|
|
562708
562780
|
" "
|
|
562709
562781
|
]
|
|
562710
562782
|
})
|
|
@@ -562951,7 +563023,7 @@ function AppleTerminalWelcomeV2(t0) {
|
|
|
562951
563023
|
dimColor: true,
|
|
562952
563024
|
children: [
|
|
562953
563025
|
"v",
|
|
562954
|
-
"0.9.
|
|
563026
|
+
"0.9.5",
|
|
562955
563027
|
" "
|
|
562956
563028
|
]
|
|
562957
563029
|
});
|
|
@@ -563224,7 +563296,7 @@ function AppleTerminalWelcomeV2(t0) {
|
|
|
563224
563296
|
dimColor: true,
|
|
563225
563297
|
children: [
|
|
563226
563298
|
"v",
|
|
563227
|
-
"0.9.
|
|
563299
|
+
"0.9.5",
|
|
563228
563300
|
" "
|
|
563229
563301
|
]
|
|
563230
563302
|
});
|
|
@@ -564736,7 +564808,7 @@ function completeOnboarding() {
|
|
|
564736
564808
|
saveGlobalConfig((current) => ({
|
|
564737
564809
|
...current,
|
|
564738
564810
|
hasCompletedOnboarding: true,
|
|
564739
|
-
lastOnboardingVersion: "0.9.
|
|
564811
|
+
lastOnboardingVersion: "0.9.5"
|
|
564740
564812
|
}));
|
|
564741
564813
|
}
|
|
564742
564814
|
function showDialog(root2, renderer) {
|
|
@@ -568987,7 +569059,7 @@ function appendToLog(path24, message) {
|
|
|
568987
569059
|
cwd: getFsImplementation().cwd(),
|
|
568988
569060
|
userType: process.env.USER_TYPE,
|
|
568989
569061
|
sessionId: getSessionId(),
|
|
568990
|
-
version: "0.9.
|
|
569062
|
+
version: "0.9.5"
|
|
568991
569063
|
};
|
|
568992
569064
|
getLogWriter(path24).write(messageWithTimestamp);
|
|
568993
569065
|
}
|
|
@@ -569593,7 +569665,7 @@ async function startMCPServer(cwd2, debug, verbose) {
|
|
|
569593
569665
|
setCwd(cwd2);
|
|
569594
569666
|
const server = new Server({
|
|
569595
569667
|
name: "claude/tengu",
|
|
569596
|
-
version: "0.9.
|
|
569668
|
+
version: "0.9.5"
|
|
569597
569669
|
}, {
|
|
569598
569670
|
capabilities: {
|
|
569599
569671
|
tools: {}
|
|
@@ -571203,7 +571275,7 @@ function coalescePatches(base2, overlay) {
|
|
|
571203
571275
|
var init_WorkerStateUploader = () => {};
|
|
571204
571276
|
|
|
571205
571277
|
// src/cli/transports/ccrClient.ts
|
|
571206
|
-
import { randomUUID as
|
|
571278
|
+
import { randomUUID as randomUUID50 } from "crypto";
|
|
571207
571279
|
function alwaysValidStatus() {
|
|
571208
571280
|
return true;
|
|
571209
571281
|
}
|
|
@@ -571564,7 +571636,7 @@ class CCRClient {
|
|
|
571564
571636
|
return {
|
|
571565
571637
|
payload: {
|
|
571566
571638
|
...msg,
|
|
571567
|
-
uuid: typeof msg.uuid === "string" ? msg.uuid :
|
|
571639
|
+
uuid: typeof msg.uuid === "string" ? msg.uuid : randomUUID50()
|
|
571568
571640
|
}
|
|
571569
571641
|
};
|
|
571570
571642
|
}
|
|
@@ -571588,7 +571660,7 @@ class CCRClient {
|
|
|
571588
571660
|
payload: {
|
|
571589
571661
|
type: eventType,
|
|
571590
571662
|
...payload,
|
|
571591
|
-
uuid: typeof payload.uuid === "string" ? payload.uuid :
|
|
571663
|
+
uuid: typeof payload.uuid === "string" ? payload.uuid : randomUUID50()
|
|
571592
571664
|
},
|
|
571593
571665
|
...isCompaction && { is_compaction: true },
|
|
571594
571666
|
...agentId && { agent_id: agentId }
|
|
@@ -573097,7 +573169,7 @@ var init_queryContext = __esm(() => {
|
|
|
573097
573169
|
});
|
|
573098
573170
|
|
|
573099
573171
|
// src/QueryEngine.ts
|
|
573100
|
-
import { randomUUID as
|
|
573172
|
+
import { randomUUID as randomUUID51 } from "crypto";
|
|
573101
573173
|
|
|
573102
573174
|
class QueryEngine {
|
|
573103
573175
|
config;
|
|
@@ -573399,7 +573471,7 @@ class QueryEngine {
|
|
|
573399
573471
|
modelUsage: getModelUsage(),
|
|
573400
573472
|
permission_denials: this.permissionDenials,
|
|
573401
573473
|
fast_mode_state: getFastModeState(mainLoopModel, initialAppState.fastMode),
|
|
573402
|
-
uuid:
|
|
573474
|
+
uuid: randomUUID51()
|
|
573403
573475
|
};
|
|
573404
573476
|
return;
|
|
573405
573477
|
}
|
|
@@ -573522,7 +573594,7 @@ class QueryEngine {
|
|
|
573522
573594
|
event: message.event,
|
|
573523
573595
|
session_id: getSessionId(),
|
|
573524
573596
|
parent_tool_use_id: null,
|
|
573525
|
-
uuid:
|
|
573597
|
+
uuid: randomUUID51()
|
|
573526
573598
|
};
|
|
573527
573599
|
}
|
|
573528
573600
|
break;
|
|
@@ -573554,7 +573626,7 @@ class QueryEngine {
|
|
|
573554
573626
|
modelUsage: getModelUsage(),
|
|
573555
573627
|
permission_denials: this.permissionDenials,
|
|
573556
573628
|
fast_mode_state: getFastModeState(mainLoopModel, initialAppState.fastMode),
|
|
573557
|
-
uuid:
|
|
573629
|
+
uuid: randomUUID51(),
|
|
573558
573630
|
errors: [
|
|
573559
573631
|
`Reached maximum number of turns (${message.attachment.maxTurns})`
|
|
573560
573632
|
]
|
|
@@ -573649,7 +573721,7 @@ class QueryEngine {
|
|
|
573649
573721
|
modelUsage: getModelUsage(),
|
|
573650
573722
|
permission_denials: this.permissionDenials,
|
|
573651
573723
|
fast_mode_state: getFastModeState(mainLoopModel, initialAppState.fastMode),
|
|
573652
|
-
uuid:
|
|
573724
|
+
uuid: randomUUID51(),
|
|
573653
573725
|
errors: [`Reached maximum budget ($${maxBudgetUsd})`]
|
|
573654
573726
|
};
|
|
573655
573727
|
return;
|
|
@@ -573678,7 +573750,7 @@ class QueryEngine {
|
|
|
573678
573750
|
modelUsage: getModelUsage(),
|
|
573679
573751
|
permission_denials: this.permissionDenials,
|
|
573680
573752
|
fast_mode_state: getFastModeState(mainLoopModel, initialAppState.fastMode),
|
|
573681
|
-
uuid:
|
|
573753
|
+
uuid: randomUUID51(),
|
|
573682
573754
|
errors: [
|
|
573683
573755
|
`Failed to provide valid structured output after ${maxRetries} attempts`
|
|
573684
573756
|
]
|
|
@@ -573710,7 +573782,7 @@ class QueryEngine {
|
|
|
573710
573782
|
modelUsage: getModelUsage(),
|
|
573711
573783
|
permission_denials: this.permissionDenials,
|
|
573712
573784
|
fast_mode_state: getFastModeState(mainLoopModel, initialAppState.fastMode),
|
|
573713
|
-
uuid:
|
|
573785
|
+
uuid: randomUUID51(),
|
|
573714
573786
|
errors: (() => {
|
|
573715
573787
|
const all6 = getInMemoryErrors();
|
|
573716
573788
|
const start = errorLogWatermark ? all6.lastIndexOf(errorLogWatermark) + 1 : 0;
|
|
@@ -573747,7 +573819,7 @@ class QueryEngine {
|
|
|
573747
573819
|
permission_denials: this.permissionDenials,
|
|
573748
573820
|
structured_output: structuredOutputFromTool,
|
|
573749
573821
|
fast_mode_state: getFastModeState(mainLoopModel, initialAppState.fastMode),
|
|
573750
|
-
uuid:
|
|
573822
|
+
uuid: randomUUID51()
|
|
573751
573823
|
};
|
|
573752
573824
|
}
|
|
573753
573825
|
interrupt() {
|
|
@@ -573925,7 +573997,7 @@ var init_idleTimeout = __esm(() => {
|
|
|
573925
573997
|
});
|
|
573926
573998
|
|
|
573927
573999
|
// src/bridge/inboundAttachments.ts
|
|
573928
|
-
import { randomUUID as
|
|
574000
|
+
import { randomUUID as randomUUID52 } from "crypto";
|
|
573929
574001
|
import { mkdir as mkdir48, writeFile as writeFile53 } from "fs/promises";
|
|
573930
574002
|
import { basename as basename61, join as join153 } from "path";
|
|
573931
574003
|
function debug(msg) {
|
|
@@ -573970,7 +574042,7 @@ async function resolveOne(att) {
|
|
|
573970
574042
|
return;
|
|
573971
574043
|
}
|
|
573972
574044
|
const safeName = sanitizeFileName(att.file_name);
|
|
573973
|
-
const prefix = (att.file_uuid.slice(0, 8) ||
|
|
574045
|
+
const prefix = (att.file_uuid.slice(0, 8) || randomUUID52().slice(0, 8)).replace(/[^a-zA-Z0-9_-]/g, "_");
|
|
573974
574046
|
const dir = uploadsDir();
|
|
573975
574047
|
const outPath = join153(dir, `${prefix}-${safeName}`);
|
|
573976
574048
|
try {
|
|
@@ -574034,11 +574106,11 @@ var init_inboundAttachments = __esm(() => {
|
|
|
574034
574106
|
});
|
|
574035
574107
|
|
|
574036
574108
|
// src/utils/sessionUrl.ts
|
|
574037
|
-
import { randomUUID as
|
|
574109
|
+
import { randomUUID as randomUUID53 } from "crypto";
|
|
574038
574110
|
function parseSessionIdentifier(resumeIdentifier) {
|
|
574039
574111
|
if (resumeIdentifier.toLowerCase().endsWith(".jsonl")) {
|
|
574040
574112
|
return {
|
|
574041
|
-
sessionId:
|
|
574113
|
+
sessionId: randomUUID53(),
|
|
574042
574114
|
ingressUrl: null,
|
|
574043
574115
|
isUrl: false,
|
|
574044
574116
|
jsonlFile: resumeIdentifier,
|
|
@@ -574057,7 +574129,7 @@ function parseSessionIdentifier(resumeIdentifier) {
|
|
|
574057
574129
|
try {
|
|
574058
574130
|
const url4 = new URL(resumeIdentifier);
|
|
574059
574131
|
return {
|
|
574060
|
-
sessionId:
|
|
574132
|
+
sessionId: randomUUID53(),
|
|
574061
574133
|
ingressUrl: url4.href,
|
|
574062
574134
|
isUrl: true,
|
|
574063
574135
|
jsonlFile: null,
|
|
@@ -574232,8 +574304,8 @@ async function getEnvLessBridgeConfig() {
|
|
|
574232
574304
|
}
|
|
574233
574305
|
async function checkEnvLessBridgeMinVersion() {
|
|
574234
574306
|
const cfg = await getEnvLessBridgeConfig();
|
|
574235
|
-
if (cfg.min_version && lt("0.9.
|
|
574236
|
-
return `Your version of ZeroCLI (${"0.9.
|
|
574307
|
+
if (cfg.min_version && lt("0.9.5", cfg.min_version)) {
|
|
574308
|
+
return `Your version of ZeroCLI (${"0.9.5"}) is too old for Remote Control.
|
|
574237
574309
|
Version ${cfg.min_version} or higher is required. Run \`zero update\` to update.`;
|
|
574238
574310
|
}
|
|
574239
574311
|
return null;
|
|
@@ -574666,7 +574738,7 @@ var init_bridgePointer = __esm(() => {
|
|
|
574666
574738
|
});
|
|
574667
574739
|
|
|
574668
574740
|
// src/bridge/replBridge.ts
|
|
574669
|
-
import { randomUUID as
|
|
574741
|
+
import { randomUUID as randomUUID54 } from "crypto";
|
|
574670
574742
|
async function initBridgeCore(params) {
|
|
574671
574743
|
const {
|
|
574672
574744
|
dir,
|
|
@@ -574708,7 +574780,7 @@ async function initBridgeCore(params) {
|
|
|
574708
574780
|
const rawApi = createBridgeApiClient({
|
|
574709
574781
|
baseUrl,
|
|
574710
574782
|
getAccessToken,
|
|
574711
|
-
runnerVersion: "0.9.
|
|
574783
|
+
runnerVersion: "0.9.5",
|
|
574712
574784
|
onDebug: logForDebugging,
|
|
574713
574785
|
onAuth401,
|
|
574714
574786
|
getTrustedDeviceToken
|
|
@@ -574723,9 +574795,9 @@ async function initBridgeCore(params) {
|
|
|
574723
574795
|
spawnMode: "single-session",
|
|
574724
574796
|
verbose: false,
|
|
574725
574797
|
sandbox: false,
|
|
574726
|
-
bridgeId:
|
|
574798
|
+
bridgeId: randomUUID54(),
|
|
574727
574799
|
workerType,
|
|
574728
|
-
environmentId:
|
|
574800
|
+
environmentId: randomUUID54(),
|
|
574729
574801
|
reuseEnvironmentId: prior?.environmentId,
|
|
574730
574802
|
apiBaseUrl: baseUrl,
|
|
574731
574803
|
sessionIngressUrl
|
|
@@ -576573,7 +576645,7 @@ __export(exports_print, {
|
|
|
576573
576645
|
import { readFile as readFile55, stat as stat55 } from "fs/promises";
|
|
576574
576646
|
import { dirname as dirname63 } from "path";
|
|
576575
576647
|
import { cwd as cwd3 } from "process";
|
|
576576
|
-
import { randomUUID as
|
|
576648
|
+
import { randomUUID as randomUUID55 } from "crypto";
|
|
576577
576649
|
function trackReceivedMessageUuid(uuid3) {
|
|
576578
576650
|
if (receivedMessageUuids.has(uuid3)) {
|
|
576579
576651
|
return false;
|
|
@@ -576693,7 +576765,7 @@ Error: sandbox required but unavailable: ${sandboxUnavailableReason}
|
|
|
576693
576765
|
hook_id: event.hookId,
|
|
576694
576766
|
hook_name: event.hookName,
|
|
576695
576767
|
hook_event: event.hookEvent,
|
|
576696
|
-
uuid:
|
|
576768
|
+
uuid: randomUUID55(),
|
|
576697
576769
|
session_id: getSessionId()
|
|
576698
576770
|
};
|
|
576699
576771
|
case "progress":
|
|
@@ -576706,7 +576778,7 @@ Error: sandbox required but unavailable: ${sandboxUnavailableReason}
|
|
|
576706
576778
|
stdout: event.stdout,
|
|
576707
576779
|
stderr: event.stderr,
|
|
576708
576780
|
output: event.output,
|
|
576709
|
-
uuid:
|
|
576781
|
+
uuid: randomUUID55(),
|
|
576710
576782
|
session_id: getSessionId()
|
|
576711
576783
|
};
|
|
576712
576784
|
case "response":
|
|
@@ -576721,7 +576793,7 @@ Error: sandbox required but unavailable: ${sandboxUnavailableReason}
|
|
|
576721
576793
|
stderr: event.stderr,
|
|
576722
576794
|
exit_code: event.exitCode,
|
|
576723
576795
|
outcome: event.outcome,
|
|
576724
|
-
uuid:
|
|
576796
|
+
uuid: randomUUID55(),
|
|
576725
576797
|
session_id: getSessionId()
|
|
576726
576798
|
};
|
|
576727
576799
|
}
|
|
@@ -576921,7 +576993,7 @@ function runHeadlessStreaming(structuredIO, mcpClients, commands, tools, initial
|
|
|
576921
576993
|
subtype: "status",
|
|
576922
576994
|
status: null,
|
|
576923
576995
|
permissionMode: newMode,
|
|
576924
|
-
uuid:
|
|
576996
|
+
uuid: randomUUID55(),
|
|
576925
576997
|
session_id: getSessionId()
|
|
576926
576998
|
});
|
|
576927
576999
|
}
|
|
@@ -576942,7 +577014,7 @@ function runHeadlessStreaming(structuredIO, mcpClients, commands, tools, initial
|
|
|
576942
577014
|
isAuthenticating: status2.isAuthenticating,
|
|
576943
577015
|
output: status2.output,
|
|
576944
577016
|
error: status2.error,
|
|
576945
|
-
uuid:
|
|
577017
|
+
uuid: randomUUID55(),
|
|
576946
577018
|
session_id: getSessionId()
|
|
576947
577019
|
});
|
|
576948
577020
|
});
|
|
@@ -576953,7 +577025,7 @@ function runHeadlessStreaming(structuredIO, mcpClients, commands, tools, initial
|
|
|
576953
577025
|
output.enqueue({
|
|
576954
577026
|
type: "rate_limit_event",
|
|
576955
577027
|
rate_limit_info: rateLimitInfo,
|
|
576956
|
-
uuid:
|
|
577028
|
+
uuid: randomUUID55(),
|
|
576957
577029
|
session_id: getSessionId()
|
|
576958
577030
|
});
|
|
576959
577031
|
}
|
|
@@ -576969,7 +577041,7 @@ function runHeadlessStreaming(structuredIO, mcpClients, commands, tools, initial
|
|
|
576969
577041
|
enqueue({
|
|
576970
577042
|
mode: "prompt",
|
|
576971
577043
|
value: turnInterruptionState.message.message.content,
|
|
576972
|
-
uuid:
|
|
577044
|
+
uuid: randomUUID55()
|
|
576973
577045
|
});
|
|
576974
577046
|
}
|
|
576975
577047
|
const modelOptions = getModelOptions();
|
|
@@ -577062,7 +577134,7 @@ function runHeadlessStreaming(structuredIO, mcpClients, commands, tools, initial
|
|
|
577062
577134
|
subtype: "elicitation_complete",
|
|
577063
577135
|
mcp_server_name: serverName,
|
|
577064
577136
|
elicitation_id: elicitationId,
|
|
577065
|
-
uuid:
|
|
577137
|
+
uuid: randomUUID55(),
|
|
577066
577138
|
session_id: getSessionId()
|
|
577067
577139
|
});
|
|
577068
577140
|
});
|
|
@@ -577408,7 +577480,7 @@ function runHeadlessStreaming(structuredIO, mcpClients, commands, tools, initial
|
|
|
577408
577480
|
duration_ms: durationMsMatch ? parseInt(durationMsMatch[1], 10) : 0
|
|
577409
577481
|
} : undefined,
|
|
577410
577482
|
session_id: getSessionId(),
|
|
577411
|
-
uuid:
|
|
577483
|
+
uuid: randomUUID55()
|
|
577412
577484
|
});
|
|
577413
577485
|
}
|
|
577414
577486
|
}
|
|
@@ -577482,7 +577554,7 @@ function runHeadlessStreaming(structuredIO, mcpClients, commands, tools, initial
|
|
|
577482
577554
|
subtype: "status",
|
|
577483
577555
|
status: status2,
|
|
577484
577556
|
session_id: getSessionId(),
|
|
577485
|
-
uuid:
|
|
577557
|
+
uuid: randomUUID55()
|
|
577486
577558
|
});
|
|
577487
577559
|
}
|
|
577488
577560
|
})) {
|
|
@@ -577530,7 +577602,7 @@ function runHeadlessStreaming(structuredIO, mcpClients, commands, tools, initial
|
|
|
577530
577602
|
const suggestionMsg = {
|
|
577531
577603
|
type: "prompt_suggestion",
|
|
577532
577604
|
suggestion: result.suggestion,
|
|
577533
|
-
uuid:
|
|
577605
|
+
uuid: randomUUID55(),
|
|
577534
577606
|
session_id: getSessionId()
|
|
577535
577607
|
};
|
|
577536
577608
|
const lastEmittedEntry = {
|
|
@@ -577620,7 +577692,7 @@ function runHeadlessStreaming(structuredIO, mcpClients, commands, tools, initial
|
|
|
577620
577692
|
usage: EMPTY_USAGE,
|
|
577621
577693
|
modelUsage: {},
|
|
577622
577694
|
permission_denials: [],
|
|
577623
|
-
uuid:
|
|
577695
|
+
uuid: randomUUID55(),
|
|
577624
577696
|
errors: [
|
|
577625
577697
|
errorMessage(error42),
|
|
577626
577698
|
...getInMemoryErrors().map((_) => _.error)
|
|
@@ -577704,7 +577776,7 @@ ${m.text}
|
|
|
577704
577776
|
enqueue({
|
|
577705
577777
|
mode: "prompt",
|
|
577706
577778
|
value: formatted,
|
|
577707
|
-
uuid:
|
|
577779
|
+
uuid: randomUUID55()
|
|
577708
577780
|
});
|
|
577709
577781
|
run();
|
|
577710
577782
|
return;
|
|
@@ -577715,7 +577787,7 @@ ${m.text}
|
|
|
577715
577787
|
enqueue({
|
|
577716
577788
|
mode: "prompt",
|
|
577717
577789
|
value: SHUTDOWN_TEAM_PROMPT,
|
|
577718
|
-
uuid:
|
|
577790
|
+
uuid: randomUUID55()
|
|
577719
577791
|
});
|
|
577720
577792
|
run();
|
|
577721
577793
|
return;
|
|
@@ -577739,7 +577811,7 @@ ${m.text}
|
|
|
577739
577811
|
enqueue({
|
|
577740
577812
|
mode: "prompt",
|
|
577741
577813
|
value: SHUTDOWN_TEAM_PROMPT,
|
|
577742
|
-
uuid:
|
|
577814
|
+
uuid: randomUUID55()
|
|
577743
577815
|
});
|
|
577744
577816
|
run();
|
|
577745
577817
|
} else {
|
|
@@ -577766,7 +577838,7 @@ ${m.text}
|
|
|
577766
577838
|
enqueue({
|
|
577767
577839
|
mode: "prompt",
|
|
577768
577840
|
value: prompt,
|
|
577769
|
-
uuid:
|
|
577841
|
+
uuid: randomUUID55(),
|
|
577770
577842
|
priority: "later",
|
|
577771
577843
|
isMeta: true,
|
|
577772
577844
|
workload: WORKLOAD_CRON
|
|
@@ -578511,7 +578583,7 @@ ${m.text}
|
|
|
578511
578583
|
subtype: "bridge_state",
|
|
578512
578584
|
state: state2,
|
|
578513
578585
|
detail,
|
|
578514
|
-
uuid:
|
|
578586
|
+
uuid: randomUUID55(),
|
|
578515
578587
|
session_id: getSessionId()
|
|
578516
578588
|
});
|
|
578517
578589
|
},
|
|
@@ -578823,7 +578895,7 @@ async function handleInitializeRequest(request, requestId, initialized5, output,
|
|
|
578823
578895
|
isAuthenticating: status2.isAuthenticating,
|
|
578824
578896
|
output: status2.output,
|
|
578825
578897
|
error: status2.error,
|
|
578826
|
-
uuid:
|
|
578898
|
+
uuid: randomUUID55(),
|
|
578827
578899
|
session_id: getSessionId()
|
|
578828
578900
|
});
|
|
578829
578901
|
}
|
|
@@ -579031,7 +579103,7 @@ function emitLoadError(message, outputFormat) {
|
|
|
579031
579103
|
usage: EMPTY_USAGE,
|
|
579032
579104
|
modelUsage: {},
|
|
579033
579105
|
permission_denials: [],
|
|
579034
|
-
uuid:
|
|
579106
|
+
uuid: randomUUID55(),
|
|
579035
579107
|
errors: [message]
|
|
579036
579108
|
};
|
|
579037
579109
|
process.stdout.write(jsonStringify(errorResult) + `
|
|
@@ -580996,7 +581068,7 @@ __export(exports_update2, {
|
|
|
580996
581068
|
});
|
|
580997
581069
|
async function update2() {
|
|
580998
581070
|
logEvent("tengu_update_check", {});
|
|
580999
|
-
writeToStdout(`Current version: ${"0.9.
|
|
581071
|
+
writeToStdout(`Current version: ${"0.9.5"}
|
|
581000
581072
|
`);
|
|
581001
581073
|
const channel2 = getInitialSettings()?.autoUpdatesChannel ?? "latest";
|
|
581002
581074
|
writeToStdout(`Checking for updates to ${channel2} version...
|
|
@@ -581071,8 +581143,8 @@ async function update2() {
|
|
|
581071
581143
|
writeToStdout(`Zero is managed by Homebrew.
|
|
581072
581144
|
`);
|
|
581073
581145
|
const latest = await getLatestVersion(channel2);
|
|
581074
|
-
if (latest && !gte("0.9.
|
|
581075
|
-
writeToStdout(`Update available: ${"0.9.
|
|
581146
|
+
if (latest && !gte("0.9.5", latest)) {
|
|
581147
|
+
writeToStdout(`Update available: ${"0.9.5"} → ${latest}
|
|
581076
581148
|
`);
|
|
581077
581149
|
writeToStdout(`
|
|
581078
581150
|
`);
|
|
@@ -581088,8 +581160,8 @@ async function update2() {
|
|
|
581088
581160
|
writeToStdout(`Zero is managed by winget.
|
|
581089
581161
|
`);
|
|
581090
581162
|
const latest = await getLatestVersion(channel2);
|
|
581091
|
-
if (latest && !gte("0.9.
|
|
581092
|
-
writeToStdout(`Update available: ${"0.9.
|
|
581163
|
+
if (latest && !gte("0.9.5", latest)) {
|
|
581164
|
+
writeToStdout(`Update available: ${"0.9.5"} → ${latest}
|
|
581093
581165
|
`);
|
|
581094
581166
|
writeToStdout(`
|
|
581095
581167
|
`);
|
|
@@ -581105,8 +581177,8 @@ async function update2() {
|
|
|
581105
581177
|
writeToStdout(`Zero is managed by apk.
|
|
581106
581178
|
`);
|
|
581107
581179
|
const latest = await getLatestVersion(channel2);
|
|
581108
|
-
if (latest && !gte("0.9.
|
|
581109
|
-
writeToStdout(`Update available: ${"0.9.
|
|
581180
|
+
if (latest && !gte("0.9.5", latest)) {
|
|
581181
|
+
writeToStdout(`Update available: ${"0.9.5"} → ${latest}
|
|
581110
581182
|
`);
|
|
581111
581183
|
writeToStdout(`
|
|
581112
581184
|
`);
|
|
@@ -581171,11 +581243,11 @@ async function update2() {
|
|
|
581171
581243
|
`);
|
|
581172
581244
|
await gracefulShutdown(1);
|
|
581173
581245
|
}
|
|
581174
|
-
if (result.latestVersion === "0.9.
|
|
581175
|
-
writeToStdout(source_default.green(`Zero CLI is up to date (${"0.9.
|
|
581246
|
+
if (result.latestVersion === "0.9.5") {
|
|
581247
|
+
writeToStdout(source_default.green(`Zero CLI is up to date (${"0.9.5"})`) + `
|
|
581176
581248
|
`);
|
|
581177
581249
|
} else {
|
|
581178
|
-
writeToStdout(source_default.green(`Successfully updated from ${"0.9.
|
|
581250
|
+
writeToStdout(source_default.green(`Successfully updated from ${"0.9.5"} to version ${result.latestVersion}`) + `
|
|
581179
581251
|
`);
|
|
581180
581252
|
await regenerateCompletionCache();
|
|
581181
581253
|
}
|
|
@@ -581235,12 +581307,12 @@ async function update2() {
|
|
|
581235
581307
|
`);
|
|
581236
581308
|
await gracefulShutdown(1);
|
|
581237
581309
|
}
|
|
581238
|
-
if (latestVersion === "0.9.
|
|
581239
|
-
writeToStdout(source_default.green(`Zero CLI is up to date (${"0.9.
|
|
581310
|
+
if (latestVersion === "0.9.5") {
|
|
581311
|
+
writeToStdout(source_default.green(`Zero CLI is up to date (${"0.9.5"})`) + `
|
|
581240
581312
|
`);
|
|
581241
581313
|
await gracefulShutdown(0);
|
|
581242
581314
|
}
|
|
581243
|
-
writeToStdout(`New version available: ${latestVersion} (current: ${"0.9.
|
|
581315
|
+
writeToStdout(`New version available: ${latestVersion} (current: ${"0.9.5"})
|
|
581244
581316
|
`);
|
|
581245
581317
|
writeToStdout(`Installing update...
|
|
581246
581318
|
`);
|
|
@@ -581285,7 +581357,7 @@ async function update2() {
|
|
|
581285
581357
|
logForDebugging(`update: Installation status: ${status2}`);
|
|
581286
581358
|
switch (status2) {
|
|
581287
581359
|
case "success":
|
|
581288
|
-
writeToStdout(source_default.green(`Successfully updated from ${"0.9.
|
|
581360
|
+
writeToStdout(source_default.green(`Successfully updated from ${"0.9.5"} to version ${latestVersion}`) + `
|
|
581289
581361
|
`);
|
|
581290
581362
|
await regenerateCompletionCache();
|
|
581291
581363
|
break;
|
|
@@ -582586,7 +582658,7 @@ ${customInstructions}` : customInstructions;
|
|
|
582586
582658
|
}
|
|
582587
582659
|
}
|
|
582588
582660
|
logForDiagnosticsNoPII("info", "started", {
|
|
582589
|
-
version: "0.9.
|
|
582661
|
+
version: "0.9.5",
|
|
582590
582662
|
is_native_binary: isInBundledMode()
|
|
582591
582663
|
});
|
|
582592
582664
|
registerCleanup(async () => {
|
|
@@ -583469,7 +583541,7 @@ Usage: claude --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
583469
583541
|
pendingHookMessages
|
|
583470
583542
|
}, renderAndRun);
|
|
583471
583543
|
}
|
|
583472
|
-
}).version("0.9.
|
|
583544
|
+
}).version("0.9.5", "-v, --version", "Output the version number");
|
|
583473
583545
|
program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
|
|
583474
583546
|
program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
|
|
583475
583547
|
if (canUserConfigureAdvisor()) {
|
|
@@ -584135,7 +584207,7 @@ if (false) {}
|
|
|
584135
584207
|
async function main2() {
|
|
584136
584208
|
const args = process.argv.slice(2);
|
|
584137
584209
|
if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
|
|
584138
|
-
console.log(`${"0.9.
|
|
584210
|
+
console.log(`${"0.9.5"} (ZeroCLI)`);
|
|
584139
584211
|
return;
|
|
584140
584212
|
}
|
|
584141
584213
|
if (args.includes("--provider")) {
|
|
@@ -584277,4 +584349,4 @@ async function main2() {
|
|
|
584277
584349
|
}
|
|
584278
584350
|
main2();
|
|
584279
584351
|
|
|
584280
|
-
//# debugId=
|
|
584352
|
+
//# debugId=93A40B18BC7C0BDA64756E2164756E21
|