@costrict/csc 4.2.27-beta → 4.2.28
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.js +100 -94
- package/dist/services/rawDump/batchWorker.js +7 -7
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -2577,8 +2577,8 @@ function getClientVersion() {
|
|
|
2577
2577
|
if (cached)
|
|
2578
2578
|
return cached;
|
|
2579
2579
|
try {
|
|
2580
|
-
if ("4.2.
|
|
2581
|
-
cached = "4.2.
|
|
2580
|
+
if ("4.2.28") {
|
|
2581
|
+
cached = "4.2.28";
|
|
2582
2582
|
return cached;
|
|
2583
2583
|
}
|
|
2584
2584
|
} catch {}
|
|
@@ -222655,7 +222655,7 @@ async function fetchCoStrictModels(baseUrl, accessToken) {
|
|
|
222655
222655
|
headers: {
|
|
222656
222656
|
Authorization: `Bearer ${accessToken}`,
|
|
222657
222657
|
Accept: "application/json",
|
|
222658
|
-
"User-Agent": `csc/${"4.2.
|
|
222658
|
+
"User-Agent": `csc/${"4.2.28"}`
|
|
222659
222659
|
},
|
|
222660
222660
|
signal: controller.signal
|
|
222661
222661
|
});
|
|
@@ -224695,7 +224695,7 @@ var init_auth7 = __esm(() => {
|
|
|
224695
224695
|
|
|
224696
224696
|
// src/utils/userAgent.ts
|
|
224697
224697
|
function getClaudeCodeUserAgent() {
|
|
224698
|
-
return `costrict/${"4.2.
|
|
224698
|
+
return `costrict/${"4.2.28"}`;
|
|
224699
224699
|
}
|
|
224700
224700
|
|
|
224701
224701
|
// src/utils/workloadContext.ts
|
|
@@ -224717,7 +224717,7 @@ function getUserAgent() {
|
|
|
224717
224717
|
const clientApp = process.env.CLAUDE_AGENT_SDK_CLIENT_APP ? `, client-app/${process.env.CLAUDE_AGENT_SDK_CLIENT_APP}` : "";
|
|
224718
224718
|
const workload = getWorkload();
|
|
224719
224719
|
const workloadSuffix = workload ? `, workload/${workload}` : "";
|
|
224720
|
-
return `csc/${"4.2.
|
|
224720
|
+
return `csc/${"4.2.28"}`;
|
|
224721
224721
|
}
|
|
224722
224722
|
function getMCPUserAgent() {
|
|
224723
224723
|
const parts = [];
|
|
@@ -224731,7 +224731,7 @@ function getMCPUserAgent() {
|
|
|
224731
224731
|
parts.push(`client-app/${process.env.CLAUDE_AGENT_SDK_CLIENT_APP}`);
|
|
224732
224732
|
}
|
|
224733
224733
|
const suffix = parts.length > 0 ? ` (${parts.join(", ")})` : "";
|
|
224734
|
-
return `csc/${"4.2.
|
|
224734
|
+
return `csc/${"4.2.28"}${suffix}`;
|
|
224735
224735
|
}
|
|
224736
224736
|
function getWebFetchUserAgent() {
|
|
224737
224737
|
return `Claude-User (${getClaudeCodeUserAgent()}; +https://support.anthropic.com/)`;
|
|
@@ -224851,7 +224851,7 @@ var init_user = __esm(() => {
|
|
|
224851
224851
|
deviceId,
|
|
224852
224852
|
sessionId: getSessionId(),
|
|
224853
224853
|
email: getEmail(),
|
|
224854
|
-
appVersion: "4.2.
|
|
224854
|
+
appVersion: "4.2.28",
|
|
224855
224855
|
platform: getHostPlatformForAnalytics(),
|
|
224856
224856
|
organizationUuid,
|
|
224857
224857
|
accountUuid,
|
|
@@ -235899,7 +235899,7 @@ var init_metadata = __esm(() => {
|
|
|
235899
235899
|
COMPOUND_OPERATOR_REGEX = /\s*(?:&&|\|\||[;|])\s*/;
|
|
235900
235900
|
WHITESPACE_REGEX = /\s+/;
|
|
235901
235901
|
getVersionBase = memoize_default(() => {
|
|
235902
|
-
const match = "4.2.
|
|
235902
|
+
const match = "4.2.28".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
|
|
235903
235903
|
return match ? match[0] : undefined;
|
|
235904
235904
|
});
|
|
235905
235905
|
buildEnvContext = memoize_default(async () => {
|
|
@@ -235939,9 +235939,9 @@ var init_metadata = __esm(() => {
|
|
|
235939
235939
|
isGithubAction: isEnvTruthy(process.env.GITHUB_ACTIONS),
|
|
235940
235940
|
isClaudeCodeAction: isEnvTruthy(process.env.CLAUDE_CODE_ACTION),
|
|
235941
235941
|
isClaudeAiAuth: isClaudeAISubscriber(),
|
|
235942
|
-
version: "4.2.
|
|
235942
|
+
version: "4.2.28",
|
|
235943
235943
|
versionBase: getVersionBase(),
|
|
235944
|
-
buildTime: "2026-08-
|
|
235944
|
+
buildTime: "2026-08-18T11:01:08.201Z",
|
|
235945
235945
|
deploymentEnvironment: env4.detectDeploymentEnvironment(),
|
|
235946
235946
|
...isEnvTruthy(process.env.GITHUB_ACTIONS) && {
|
|
235947
235947
|
githubEventName: process.env.GITHUB_EVENT_NAME,
|
|
@@ -236612,7 +236612,7 @@ function initialize1PEventLogging() {
|
|
|
236612
236612
|
const platform3 = getPlatform();
|
|
236613
236613
|
const attributes = {
|
|
236614
236614
|
[import_semantic_conventions2.ATTR_SERVICE_NAME]: "claude-code",
|
|
236615
|
-
[import_semantic_conventions2.ATTR_SERVICE_VERSION]: "4.2.
|
|
236615
|
+
[import_semantic_conventions2.ATTR_SERVICE_VERSION]: "4.2.28"
|
|
236616
236616
|
};
|
|
236617
236617
|
if (platform3 === "wsl") {
|
|
236618
236618
|
const wslVersion = getWslVersion();
|
|
@@ -236639,7 +236639,7 @@ function initialize1PEventLogging() {
|
|
|
236639
236639
|
})
|
|
236640
236640
|
]
|
|
236641
236641
|
});
|
|
236642
|
-
firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.anthropic.claude_code.events", "4.2.
|
|
236642
|
+
firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.anthropic.claude_code.events", "4.2.28");
|
|
236643
236643
|
}
|
|
236644
236644
|
async function reinitialize1PEventLoggingIfConfigChanged() {
|
|
236645
236645
|
if (!is1PEventLoggingEnabled() || !firstPartyEventLoggerProvider) {
|
|
@@ -306302,7 +306302,7 @@ async function loadAgentFromFile(filePath, pluginName, namespace, sourceName, pl
|
|
|
306302
306302
|
model = trimmed.toLowerCase() === "inherit" ? "inherit" : trimmed;
|
|
306303
306303
|
}
|
|
306304
306304
|
const backgroundRaw = frontmatter.background;
|
|
306305
|
-
const background = backgroundRaw === "true" || backgroundRaw === true ? true : undefined;
|
|
306305
|
+
const background = backgroundRaw === "true" || backgroundRaw === true ? true : backgroundRaw === "false" || backgroundRaw === false ? false : undefined;
|
|
306306
306306
|
let systemPrompt = substitutePluginVariables(markdownContent.trim(), {
|
|
306307
306307
|
path: pluginPath,
|
|
306308
306308
|
source: sourceName
|
|
@@ -306369,7 +306369,7 @@ async function loadAgentFromFile(filePath, pluginName, namespace, sourceName, pl
|
|
|
306369
306369
|
model,
|
|
306370
306370
|
filename: baseAgentName,
|
|
306371
306371
|
plugin: sourceName,
|
|
306372
|
-
...background ? { background } : {},
|
|
306372
|
+
...background !== undefined ? { background } : {},
|
|
306373
306373
|
...memory ? { memory } : {},
|
|
306374
306374
|
...isolation ? { isolation } : {},
|
|
306375
306375
|
...effort !== undefined ? { effort } : {},
|
|
@@ -310942,7 +310942,7 @@ function parseAgentFromJson(name3, definition, source = "flagSettings") {
|
|
|
310942
310942
|
...parsed.maxTurns !== undefined ? { maxTurns: parsed.maxTurns } : {},
|
|
310943
310943
|
...parsed.skills && parsed.skills.length > 0 ? { skills: parsed.skills } : {},
|
|
310944
310944
|
...parsed.initialPrompt ? { initialPrompt: parsed.initialPrompt } : {},
|
|
310945
|
-
...parsed.background ? { background: parsed.background } : {},
|
|
310945
|
+
...parsed.background !== undefined ? { background: parsed.background } : {},
|
|
310946
310946
|
...parsed.memory ? { memory: parsed.memory } : {},
|
|
310947
310947
|
...parsed.isolation ? { isolation: parsed.isolation } : {}
|
|
310948
310948
|
};
|
|
@@ -310989,7 +310989,7 @@ function parseAgentFromMarkdown(filePath, baseDir, frontmatter, content, source)
|
|
|
310989
310989
|
if (backgroundRaw !== undefined && backgroundRaw !== "true" && backgroundRaw !== "false" && backgroundRaw !== true && backgroundRaw !== false) {
|
|
310990
310990
|
logForDebugging(`Agent file ${filePath} has invalid background value '${backgroundRaw}'. Must be 'true', 'false', or omitted.`);
|
|
310991
310991
|
}
|
|
310992
|
-
const background = backgroundRaw === "true" || backgroundRaw === true ? true : undefined;
|
|
310992
|
+
const background = backgroundRaw === "true" || backgroundRaw === true ? true : backgroundRaw === "false" || backgroundRaw === false ? false : undefined;
|
|
310993
310993
|
const VALID_MEMORY_SCOPES2 = ["user", "project", "local"];
|
|
310994
310994
|
const memoryRaw = frontmatter["memory"];
|
|
310995
310995
|
let memory;
|
|
@@ -311085,7 +311085,7 @@ function parseAgentFromMarkdown(filePath, baseDir, frontmatter, content, source)
|
|
|
311085
311085
|
...parsedEffort !== undefined ? { effort: parsedEffort } : {},
|
|
311086
311086
|
...isValidPermissionMode ? { permissionMode: permissionModeRaw } : {},
|
|
311087
311087
|
...maxTurns !== undefined ? { maxTurns } : {},
|
|
311088
|
-
...background ? { background } : {},
|
|
311088
|
+
...background !== undefined ? { background } : {},
|
|
311089
311089
|
...memory ? { memory } : {},
|
|
311090
311090
|
...isolation ? { isolation } : {}
|
|
311091
311091
|
};
|
|
@@ -435563,7 +435563,7 @@ function getTelemetryAttributes() {
|
|
|
435563
435563
|
attributes["session.id"] = sessionId;
|
|
435564
435564
|
}
|
|
435565
435565
|
if (shouldIncludeAttribute("OTEL_METRICS_INCLUDE_VERSION")) {
|
|
435566
|
-
attributes["app.version"] = "4.2.
|
|
435566
|
+
attributes["app.version"] = "4.2.28";
|
|
435567
435567
|
}
|
|
435568
435568
|
const oauthAccount = getOauthAccountInfo();
|
|
435569
435569
|
if (oauthAccount) {
|
|
@@ -469083,7 +469083,7 @@ function initLangfuse() {
|
|
|
469083
469083
|
flushInterval: parseInt(process.env.LANGFUSE_FLUSH_INTERVAL ?? "10", 10),
|
|
469084
469084
|
mask: maskFn,
|
|
469085
469085
|
environment: process.env.LANGFUSE_TRACING_ENVIRONMENT ?? "development",
|
|
469086
|
-
release: "4.2.
|
|
469086
|
+
release: "4.2.28",
|
|
469087
469087
|
exportMode: process.env.LANGFUSE_EXPORT_MODE ?? "batched",
|
|
469088
469088
|
timeout: parseInt(process.env.LANGFUSE_TIMEOUT ?? "5", 10)
|
|
469089
469089
|
});
|
|
@@ -500880,7 +500880,7 @@ function initSentry() {
|
|
|
500880
500880
|
}
|
|
500881
500881
|
init3({
|
|
500882
500882
|
dsn,
|
|
500883
|
-
release: typeof MACRO !== "undefined" ? "4.2.
|
|
500883
|
+
release: typeof MACRO !== "undefined" ? "4.2.28" : undefined,
|
|
500884
500884
|
environment: typeof BUILD_ENV !== "undefined" ? BUILD_ENV : "production",
|
|
500885
500885
|
maxBreadcrumbs: 20,
|
|
500886
500886
|
sampleRate: 1,
|
|
@@ -528777,7 +528777,7 @@ async function initializeBetaTracing(resource) {
|
|
|
528777
528777
|
});
|
|
528778
528778
|
logs.setGlobalLoggerProvider(loggerProvider);
|
|
528779
528779
|
setLoggerProvider(loggerProvider);
|
|
528780
|
-
const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "4.2.
|
|
528780
|
+
const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "4.2.28");
|
|
528781
528781
|
setEventLogger(eventLogger);
|
|
528782
528782
|
process.on("beforeExit", async () => {
|
|
528783
528783
|
await loggerProvider?.forceFlush();
|
|
@@ -528817,7 +528817,7 @@ async function initializeTelemetry() {
|
|
|
528817
528817
|
const platform5 = getPlatform();
|
|
528818
528818
|
const baseAttributes = {
|
|
528819
528819
|
[import_semantic_conventions29.ATTR_SERVICE_NAME]: "claude-code",
|
|
528820
|
-
[import_semantic_conventions29.ATTR_SERVICE_VERSION]: "4.2.
|
|
528820
|
+
[import_semantic_conventions29.ATTR_SERVICE_VERSION]: "4.2.28"
|
|
528821
528821
|
};
|
|
528822
528822
|
if (platform5 === "wsl") {
|
|
528823
528823
|
const wslVersion = getWslVersion();
|
|
@@ -528862,7 +528862,7 @@ async function initializeTelemetry() {
|
|
|
528862
528862
|
} catch {}
|
|
528863
528863
|
};
|
|
528864
528864
|
registerCleanup(shutdownTelemetry2);
|
|
528865
|
-
return meterProvider2.getMeter("com.anthropic.claude_code", "4.2.
|
|
528865
|
+
return meterProvider2.getMeter("com.anthropic.claude_code", "4.2.28");
|
|
528866
528866
|
}
|
|
528867
528867
|
const meterProvider = new import_sdk_metrics2.MeterProvider({
|
|
528868
528868
|
resource,
|
|
@@ -528882,7 +528882,7 @@ async function initializeTelemetry() {
|
|
|
528882
528882
|
});
|
|
528883
528883
|
logs.setGlobalLoggerProvider(loggerProvider);
|
|
528884
528884
|
setLoggerProvider(loggerProvider);
|
|
528885
|
-
const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "4.2.
|
|
528885
|
+
const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "4.2.28");
|
|
528886
528886
|
setEventLogger(eventLogger);
|
|
528887
528887
|
logForDebugging("[3P telemetry] Event logger set successfully");
|
|
528888
528888
|
process.on("beforeExit", async () => {
|
|
@@ -528944,7 +528944,7 @@ Current timeout: ${timeoutMs}ms
|
|
|
528944
528944
|
}
|
|
528945
528945
|
};
|
|
528946
528946
|
registerCleanup(shutdownTelemetry);
|
|
528947
|
-
return meterProvider.getMeter("com.anthropic.claude_code", "4.2.
|
|
528947
|
+
return meterProvider.getMeter("com.anthropic.claude_code", "4.2.28");
|
|
528948
528948
|
}
|
|
528949
528949
|
async function flushTelemetry() {
|
|
528950
528950
|
const meterProvider = getMeterProvider();
|
|
@@ -530003,7 +530003,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
530003
530003
|
logError2(new AutoUpdaterError("Another process is currently installing an update"));
|
|
530004
530004
|
logEvent("tengu_auto_updater_lock_contention", {
|
|
530005
530005
|
pid: process.pid,
|
|
530006
|
-
currentVersion: "4.2.
|
|
530006
|
+
currentVersion: "4.2.28"
|
|
530007
530007
|
});
|
|
530008
530008
|
return { status: "in_progress" };
|
|
530009
530009
|
}
|
|
@@ -530012,7 +530012,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
530012
530012
|
if (!env4.isRunningWithBun() && env4.isNpmFromWindowsPath()) {
|
|
530013
530013
|
logError2(new Error("Windows NPM detected in WSL environment"));
|
|
530014
530014
|
logEvent("tengu_auto_updater_windows_npm_in_wsl", {
|
|
530015
|
-
currentVersion: "4.2.
|
|
530015
|
+
currentVersion: "4.2.28"
|
|
530016
530016
|
});
|
|
530017
530017
|
return {
|
|
530018
530018
|
status: "install_failed",
|
|
@@ -530558,7 +530558,7 @@ function detectLinuxGlobPatternWarnings() {
|
|
|
530558
530558
|
}
|
|
530559
530559
|
async function getDoctorDiagnostic() {
|
|
530560
530560
|
const installationType = await getCurrentInstallationType();
|
|
530561
|
-
const version9 = typeof MACRO !== "undefined" ? "4.2.
|
|
530561
|
+
const version9 = typeof MACRO !== "undefined" ? "4.2.28" : "unknown";
|
|
530562
530562
|
const installationPath = await getInstallationPath();
|
|
530563
530563
|
const invokedBinary = getInvokedBinary();
|
|
530564
530564
|
const multipleInstallations = await detectMultipleInstallations();
|
|
@@ -568745,7 +568745,7 @@ async function setupSdkMcpClients(sdkMcpConfigs, sendMcpMessage) {
|
|
|
568745
568745
|
const client10 = new Client3({
|
|
568746
568746
|
name: "claude-code",
|
|
568747
568747
|
title: "CoStrict",
|
|
568748
|
-
version: "4.2.
|
|
568748
|
+
version: "4.2.28",
|
|
568749
568749
|
description: "CoStrict agentic coding tool",
|
|
568750
568750
|
websiteUrl: PRODUCT_URL
|
|
568751
568751
|
}, {
|
|
@@ -569116,7 +569116,7 @@ var init_client18 = __esm(() => {
|
|
|
569116
569116
|
const client10 = new Client3({
|
|
569117
569117
|
name: "claude-code",
|
|
569118
569118
|
title: "CoStrict",
|
|
569119
|
-
version: "4.2.
|
|
569119
|
+
version: "4.2.28",
|
|
569120
569120
|
description: "CoStrict agentic coding tool",
|
|
569121
569121
|
websiteUrl: PRODUCT_URL
|
|
569122
569122
|
}, {
|
|
@@ -570506,7 +570506,7 @@ function getInstallationEnv() {
|
|
|
570506
570506
|
return;
|
|
570507
570507
|
}
|
|
570508
570508
|
function getClaudeCodeVersion() {
|
|
570509
|
-
return "4.2.
|
|
570509
|
+
return "4.2.28";
|
|
570510
570510
|
}
|
|
570511
570511
|
async function getInstalledVSCodeExtensionVersion(command4) {
|
|
570512
570512
|
const { stdout } = await execFileNoThrow(command4, ["--list-extensions", "--show-versions"], {
|
|
@@ -571870,8 +571870,8 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
571870
571870
|
const maxVersion = await getMaxVersion();
|
|
571871
571871
|
if (maxVersion && gt(version10, maxVersion)) {
|
|
571872
571872
|
logForDebugging(`Native installer: maxVersion ${maxVersion} is set, capping update from ${version10} to ${maxVersion}`);
|
|
571873
|
-
if (gte2("4.2.
|
|
571874
|
-
logForDebugging(`Native installer: current version ${"4.2.
|
|
571873
|
+
if (gte2("4.2.28", maxVersion)) {
|
|
571874
|
+
logForDebugging(`Native installer: current version ${"4.2.28"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
571875
571875
|
logEvent("tengu_native_update_skipped_max_version", {
|
|
571876
571876
|
latency_ms: Date.now() - startTime2,
|
|
571877
571877
|
max_version: maxVersion,
|
|
@@ -571882,7 +571882,7 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
571882
571882
|
version10 = maxVersion;
|
|
571883
571883
|
}
|
|
571884
571884
|
}
|
|
571885
|
-
if (!forceReinstall && version10 === "4.2.
|
|
571885
|
+
if (!forceReinstall && version10 === "4.2.28" && await versionIsAvailable(version10) && await isPossibleClaudeBinary(executablePath)) {
|
|
571886
571886
|
logForDebugging(`Found ${version10} at ${executablePath}, skipping install`);
|
|
571887
571887
|
logEvent("tengu_native_update_complete", {
|
|
571888
571888
|
latency_ms: Date.now() - startTime2,
|
|
@@ -666998,7 +666998,7 @@ var init_AgentTool = __esm(() => {
|
|
|
666998
666998
|
color: selectedAgent.color,
|
|
666999
666999
|
is_built_in_agent: isBuiltInAgent(selectedAgent),
|
|
667000
667000
|
is_resume: false,
|
|
667001
|
-
is_async: (run_in_background === true || selectedAgent.background === true) && !isBackgroundTasksDisabled2,
|
|
667001
|
+
is_async: run_in_background === false || selectedAgent.background === false ? false : (run_in_background === true || selectedAgent.background === true) && !isBackgroundTasksDisabled2,
|
|
667002
667002
|
is_fork: isForkPath
|
|
667003
667003
|
});
|
|
667004
667004
|
const effectiveIsolation = isolation ?? selectedAgent.isolation;
|
|
@@ -667086,11 +667086,12 @@ ${reasons}`);
|
|
|
667086
667086
|
isBuiltInAgent: isBuiltInAgent(selectedAgent),
|
|
667087
667087
|
startTime: startTime2,
|
|
667088
667088
|
agentType: selectedAgent.agentType,
|
|
667089
|
-
isAsync: (run_in_background === true || selectedAgent.background === true) && !isBackgroundTasksDisabled2
|
|
667089
|
+
isAsync: run_in_background === false || selectedAgent.background === false ? false : (run_in_background === true || selectedAgent.background === true) && !isBackgroundTasksDisabled2
|
|
667090
667090
|
};
|
|
667091
667091
|
const isCoordinator = false;
|
|
667092
667092
|
const assistantForceAsync = appState.kairosEnabled;
|
|
667093
|
-
const
|
|
667093
|
+
const explicitForeground = selectedAgent.background === false || run_in_background === false;
|
|
667094
|
+
const shouldRunAsync = !explicitForeground && (run_in_background === true || selectedAgent.background === true || isCoordinator || assistantForceAsync || (proactiveModule2?.isProactiveActive() ?? false)) && !isBackgroundTasksDisabled2;
|
|
667094
667095
|
const workerPermissionContext = {
|
|
667095
667096
|
...appState.toolPermissionContext,
|
|
667096
667097
|
mode: selectedAgent.permissionMode ?? "acceptEdits"
|
|
@@ -667241,7 +667242,7 @@ ${reasons}`);
|
|
|
667241
667242
|
let foregroundTaskId;
|
|
667242
667243
|
let backgroundPromise;
|
|
667243
667244
|
let cancelAutoBackground;
|
|
667244
|
-
if (!isBackgroundTasksDisabled2) {
|
|
667245
|
+
if (!isBackgroundTasksDisabled2 && !explicitForeground) {
|
|
667245
667246
|
const registration = registerAgentForeground({
|
|
667246
667247
|
agentId: syncAgentId,
|
|
667247
667248
|
description,
|
|
@@ -709984,7 +709985,7 @@ function Feedback({
|
|
|
709984
709985
|
platform: env4.platform,
|
|
709985
709986
|
gitRepo: envInfo.isGit,
|
|
709986
709987
|
terminal: env4.terminal,
|
|
709987
|
-
version: "4.2.
|
|
709988
|
+
version: "4.2.28",
|
|
709988
709989
|
transcript: normalizeMessagesForAPI(messages),
|
|
709989
709990
|
errors: sanitizedErrors,
|
|
709990
709991
|
lastApiRequest: getLastAPIRequest(),
|
|
@@ -710167,7 +710168,7 @@ function Feedback({
|
|
|
710167
710168
|
", ",
|
|
710168
710169
|
env4.terminal,
|
|
710169
710170
|
", v",
|
|
710170
|
-
"4.2.
|
|
710171
|
+
"4.2.28"
|
|
710171
710172
|
]
|
|
710172
710173
|
})
|
|
710173
710174
|
]
|
|
@@ -710264,7 +710265,7 @@ ${sanitizedDescription}
|
|
|
710264
710265
|
` + `**Environment Info**
|
|
710265
710266
|
` + `- Platform: ${env4.platform}
|
|
710266
710267
|
` + `- Terminal: ${env4.terminal}
|
|
710267
|
-
` + `- Version: ${"4.2.
|
|
710268
|
+
` + `- Version: ${"4.2.28"}
|
|
710268
710269
|
` + `- Feedback ID: ${feedbackId}
|
|
710269
710270
|
` + `
|
|
710270
710271
|
**Errors**
|
|
@@ -712503,7 +712504,7 @@ function buildPrimarySection() {
|
|
|
712503
712504
|
children: t("settings.status.renameHint")
|
|
712504
712505
|
});
|
|
712505
712506
|
return [
|
|
712506
|
-
{ label: t("settings.status.version"), value: "4.2.
|
|
712507
|
+
{ label: t("settings.status.version"), value: "4.2.28" },
|
|
712507
712508
|
{ label: t("settings.status.sessionName"), value: nameValue },
|
|
712508
712509
|
{ label: t("settings.status.sessionId"), value: sessionId },
|
|
712509
712510
|
{ label: t("settings.status.cwd"), value: getCwd() },
|
|
@@ -715364,7 +715365,7 @@ function Config({
|
|
|
715364
715365
|
}
|
|
715365
715366
|
})
|
|
715366
715367
|
}) : showSubmenu === "ChannelDowngrade" ? /* @__PURE__ */ jsx_runtime191.jsx(ChannelDowngradeDialog, {
|
|
715367
|
-
currentVersion: "4.2.
|
|
715368
|
+
currentVersion: "4.2.28",
|
|
715368
715369
|
onChoice: (choice) => {
|
|
715369
715370
|
setShowSubmenu(null);
|
|
715370
715371
|
setTabsHidden(false);
|
|
@@ -715376,7 +715377,7 @@ function Config({
|
|
|
715376
715377
|
autoUpdatesChannel: "stable"
|
|
715377
715378
|
};
|
|
715378
715379
|
if (choice === "stay") {
|
|
715379
|
-
newSettings.minimumVersion = "4.2.
|
|
715380
|
+
newSettings.minimumVersion = "4.2.28";
|
|
715380
715381
|
}
|
|
715381
715382
|
updateSettingsForSource("userSettings", newSettings);
|
|
715382
715383
|
setSettingsData((prev) => ({
|
|
@@ -720845,7 +720846,7 @@ function HelpV2({ onClose, commands: commands11 }) {
|
|
|
720845
720846
|
color: "professionalBlue",
|
|
720846
720847
|
children: [
|
|
720847
720848
|
/* @__PURE__ */ jsx_runtime218.jsx(Tabs, {
|
|
720848
|
-
title: process.env.USER_TYPE === "sf" ? "/help" : `CoStrict v${"4.2.
|
|
720849
|
+
title: process.env.USER_TYPE === "sf" ? "/help" : `CoStrict v${"4.2.28"}`,
|
|
720849
720850
|
color: "professionalBlue",
|
|
720850
720851
|
defaultTab: "general",
|
|
720851
720852
|
children: tabs
|
|
@@ -743907,7 +743908,7 @@ function getAllReleaseNotes(changelogContent = getStoredChangelogFromMemory()) {
|
|
|
743907
743908
|
return [];
|
|
743908
743909
|
}
|
|
743909
743910
|
}
|
|
743910
|
-
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "4.2.
|
|
743911
|
+
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "4.2.28") {
|
|
743911
743912
|
if (process.env.USER_TYPE === "sf") {
|
|
743912
743913
|
const changelog = "";
|
|
743913
743914
|
if (changelog) {
|
|
@@ -743934,7 +743935,7 @@ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "4.2.27-be
|
|
|
743934
743935
|
releaseNotes
|
|
743935
743936
|
};
|
|
743936
743937
|
}
|
|
743937
|
-
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "4.2.
|
|
743938
|
+
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "4.2.28") {
|
|
743938
743939
|
if (process.env.USER_TYPE === "sf") {
|
|
743939
743940
|
const changelog = "";
|
|
743940
743941
|
if (changelog) {
|
|
@@ -746447,7 +746448,7 @@ function isNotLoggedIn() {
|
|
|
746447
746448
|
return true;
|
|
746448
746449
|
}
|
|
746449
746450
|
function getLogoDisplayData() {
|
|
746450
|
-
const version10 = process.env.DEMO_VERSION ?? "4.2.
|
|
746451
|
+
const version10 = process.env.DEMO_VERSION ?? "4.2.28";
|
|
746451
746452
|
const serverUrl = getDirectConnectServerUrl();
|
|
746452
746453
|
const displayPath = process.env.DEMO_VERSION ? "/code/claude" : getDisplayPath(getCwd());
|
|
746453
746454
|
const cwd2 = serverUrl ? `${displayPath} in ${serverUrl.replace(/^https?:\/\//, "")}` : displayPath;
|
|
@@ -747025,7 +747026,7 @@ var init_MatrixMessageLine = __esm(() => {
|
|
|
747025
747026
|
// src/components/matrix-tactical/MatrixWelcome.tsx
|
|
747026
747027
|
import { basename as basename47 } from "path";
|
|
747027
747028
|
function MatrixWelcome({
|
|
747028
|
-
version: version10 = "4.2.
|
|
747029
|
+
version: version10 = "4.2.28",
|
|
747029
747030
|
projectName,
|
|
747030
747031
|
cwd: cwd2,
|
|
747031
747032
|
modelDisplayName,
|
|
@@ -747660,13 +747661,13 @@ function LogoV2() {
|
|
|
747660
747661
|
const { hasReleaseNotes } = checkForReleaseNotesSync(config13.lastReleaseNotesSeen);
|
|
747661
747662
|
import_react167.useEffect(() => {
|
|
747662
747663
|
const currentConfig = getGlobalConfig();
|
|
747663
|
-
if (currentConfig.lastReleaseNotesSeen === "4.2.
|
|
747664
|
+
if (currentConfig.lastReleaseNotesSeen === "4.2.28") {
|
|
747664
747665
|
return;
|
|
747665
747666
|
}
|
|
747666
747667
|
saveGlobalConfig((current2) => {
|
|
747667
|
-
if (current2.lastReleaseNotesSeen === "4.2.
|
|
747668
|
+
if (current2.lastReleaseNotesSeen === "4.2.28")
|
|
747668
747669
|
return current2;
|
|
747669
|
-
return { ...current2, lastReleaseNotesSeen: "4.2.
|
|
747670
|
+
return { ...current2, lastReleaseNotesSeen: "4.2.28" };
|
|
747670
747671
|
});
|
|
747671
747672
|
if (showOnboarding) {
|
|
747672
747673
|
incrementProjectOnboardingSeenCount();
|
|
@@ -770196,7 +770197,7 @@ async function captureMemoryDiagnostics(trigger, dumpNumber = 0) {
|
|
|
770196
770197
|
smapsRollup,
|
|
770197
770198
|
platform: process.platform,
|
|
770198
770199
|
nodeVersion: process.version,
|
|
770199
|
-
ccVersion: "4.2.
|
|
770200
|
+
ccVersion: "4.2.28"
|
|
770200
770201
|
};
|
|
770201
770202
|
}
|
|
770202
770203
|
async function performHeapDump(trigger = "manual", dumpNumber = 0) {
|
|
@@ -770312,7 +770313,7 @@ var init_mock_limits = __esm(() => {
|
|
|
770312
770313
|
var call55 = async () => {
|
|
770313
770314
|
return {
|
|
770314
770315
|
type: "text",
|
|
770315
|
-
value: `${"4.2.
|
|
770316
|
+
value: `${"4.2.28"} (built ${"2026-08-18T11:01:08.201Z"})`
|
|
770316
770317
|
};
|
|
770317
770318
|
}, version10, version_default;
|
|
770318
770319
|
var init_version2 = __esm(() => {
|
|
@@ -788458,7 +788459,7 @@ function generateHtmlReport(data, insights) {
|
|
|
788458
788459
|
</html>`;
|
|
788459
788460
|
}
|
|
788460
788461
|
function buildExportData(data, insights, facets, remoteStats) {
|
|
788461
|
-
const version11 = typeof MACRO !== "undefined" ? "4.2.
|
|
788462
|
+
const version11 = typeof MACRO !== "undefined" ? "4.2.28" : "unknown";
|
|
788462
788463
|
const remote_hosts_collected = remoteStats?.hosts.filter((h8) => h8.sessionCount > 0).map((h8) => h8.name);
|
|
788463
788464
|
const facets_summary = {
|
|
788464
788465
|
total: facets.size,
|
|
@@ -792908,7 +792909,7 @@ var init_sessionStorage = __esm(() => {
|
|
|
792908
792909
|
init_settings2();
|
|
792909
792910
|
init_slowOperations();
|
|
792910
792911
|
init_uuid();
|
|
792911
|
-
VERSION11 = typeof MACRO !== "undefined" ? "4.2.
|
|
792912
|
+
VERSION11 = typeof MACRO !== "undefined" ? "4.2.28" : "unknown";
|
|
792912
792913
|
MAX_TOMBSTONE_REWRITE_BYTES = 50 * 1024 * 1024;
|
|
792913
792914
|
SKIP_FIRST_PROMPT_PATTERN2 = /^(?:\s*<[a-z][\w-]*[\s>]|\[Request interrupted by user[^\]]*\])/;
|
|
792914
792915
|
EPHEMERAL_PROGRESS_TYPES = new Set([
|
|
@@ -794249,7 +794250,7 @@ var init_filesystem = __esm(() => {
|
|
|
794249
794250
|
});
|
|
794250
794251
|
getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
|
|
794251
794252
|
const nonce = randomBytes24(16).toString("hex");
|
|
794252
|
-
return join204(getCostrictTempDir(), "bundled-skills", "4.2.
|
|
794253
|
+
return join204(getCostrictTempDir(), "bundled-skills", "4.2.28", nonce);
|
|
794253
794254
|
});
|
|
794254
794255
|
getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
|
|
794255
794256
|
});
|
|
@@ -800519,7 +800520,7 @@ function computeFingerprint(messageText, version11) {
|
|
|
800519
800520
|
}
|
|
800520
800521
|
function computeFingerprintFromMessages(messages) {
|
|
800521
800522
|
const firstMessageText = extractFirstMessageText(messages);
|
|
800522
|
-
return computeFingerprint(firstMessageText, "4.2.
|
|
800523
|
+
return computeFingerprint(firstMessageText, "4.2.28");
|
|
800523
800524
|
}
|
|
800524
800525
|
var FINGERPRINT_SALT = "59cf53e54c78";
|
|
800525
800526
|
var init_fingerprint = () => {};
|
|
@@ -800929,7 +800930,7 @@ function getAnthropicEnvMetadata() {
|
|
|
800929
800930
|
function getBuildAgeMinutes() {
|
|
800930
800931
|
if (false)
|
|
800931
800932
|
;
|
|
800932
|
-
const buildTime = new Date("2026-08-
|
|
800933
|
+
const buildTime = new Date("2026-08-18T11:01:08.201Z").getTime();
|
|
800933
800934
|
if (isNaN(buildTime))
|
|
800934
800935
|
return;
|
|
800935
800936
|
return Math.floor((Date.now() - buildTime) / 60000);
|
|
@@ -806497,7 +806498,7 @@ async function sideQuery(opts) {
|
|
|
806497
806498
|
betas.push(STRUCTURED_OUTPUTS_BETA_HEADER);
|
|
806498
806499
|
}
|
|
806499
806500
|
const messageText = extractFirstUserMessageText(messages);
|
|
806500
|
-
const fingerprint = computeFingerprint(messageText, "4.2.
|
|
806501
|
+
const fingerprint = computeFingerprint(messageText, "4.2.28");
|
|
806501
806502
|
const attributionHeader = getAttributionHeader(fingerprint);
|
|
806502
806503
|
const systemBlocks = [
|
|
806503
806504
|
attributionHeader ? { type: "text", text: attributionHeader } : null,
|
|
@@ -809893,7 +809894,7 @@ function buildSystemInitMessage(inputs) {
|
|
|
809893
809894
|
slash_commands: inputs.commands.filter((c10) => c10.userInvocable !== false).map((c10) => c10.name),
|
|
809894
809895
|
apiKeySource: getAnthropicApiKeyWithSource().source,
|
|
809895
809896
|
betas: getSdkBetas(),
|
|
809896
|
-
claude_code_version: "4.2.
|
|
809897
|
+
claude_code_version: "4.2.28",
|
|
809897
809898
|
output_style: outputStyle2,
|
|
809898
809899
|
agents: inputs.agents.map((agent) => agent.agentType),
|
|
809899
809900
|
skills: inputs.skills.filter((s) => s.userInvocable !== false).map((skill) => skill.name),
|
|
@@ -813437,7 +813438,7 @@ function appendToLog(path58, message2) {
|
|
|
813437
813438
|
cwd: getFsImplementation().cwd(),
|
|
813438
813439
|
userType: process.env.USER_TYPE,
|
|
813439
813440
|
sessionId: getSessionId(),
|
|
813440
|
-
version: "4.2.
|
|
813441
|
+
version: "4.2.28"
|
|
813441
813442
|
};
|
|
813442
813443
|
getLogWriter(path58).write(messageWithTimestamp);
|
|
813443
813444
|
}
|
|
@@ -817114,6 +817115,11 @@ var init_App2 = __esm(() => {
|
|
|
817114
817115
|
jsx_runtime379 = __toESM(require_jsx_runtime(), 1);
|
|
817115
817116
|
});
|
|
817116
817117
|
|
|
817118
|
+
// src/screens/replMessageDisplay.ts
|
|
817119
|
+
function shouldUseSyncMessages(reducedMotion, hasYankBug, isLoading) {
|
|
817120
|
+
return !reducedMotion || !isLoading;
|
|
817121
|
+
}
|
|
817122
|
+
|
|
817117
817123
|
// src/components/CostThresholdDialog.tsx
|
|
817118
817124
|
function CostThresholdDialog({ onDone }) {
|
|
817119
817125
|
const { t: useT } = useTranslation();
|
|
@@ -834493,7 +834499,7 @@ function buildStatusLineCommandInput(permissionMode, exceeds200kTokens, settings
|
|
|
834493
834499
|
project_dir: getOriginalCwd(),
|
|
834494
834500
|
added_dirs: addedDirs
|
|
834495
834501
|
},
|
|
834496
|
-
version: "4.2.
|
|
834502
|
+
version: "4.2.28",
|
|
834497
834503
|
output_style: {
|
|
834498
834504
|
name: outputStyleName
|
|
834499
834505
|
},
|
|
@@ -853122,7 +853128,7 @@ async function submitTranscriptShare(messages, trigger, appearanceId) {
|
|
|
853122
853128
|
} catch {}
|
|
853123
853129
|
const data = {
|
|
853124
853130
|
trigger,
|
|
853125
|
-
version: "4.2.
|
|
853131
|
+
version: "4.2.28",
|
|
853126
853132
|
platform: process.platform,
|
|
853127
853133
|
transcript,
|
|
853128
853134
|
subagentTranscripts: Object.keys(subagentTranscripts).length > 0 ? subagentTranscripts : undefined,
|
|
@@ -854377,7 +854383,7 @@ function getReleaseType(current2, latest) {
|
|
|
854377
854383
|
return "patch";
|
|
854378
854384
|
}
|
|
854379
854385
|
async function checkNewAutoUpdate(callbacks) {
|
|
854380
|
-
const currentVersion = "4.2.
|
|
854386
|
+
const currentVersion = "4.2.28";
|
|
854381
854387
|
logForDebugging(`[newAutoUpdater] checking, current: ${currentVersion}`);
|
|
854382
854388
|
if (isNewAutoUpdaterDisabled()) {
|
|
854383
854389
|
return { action: "skip", currentVersion, latestVersion: null };
|
|
@@ -864694,7 +864700,7 @@ ${t("repl.suspended")}
|
|
|
864694
864700
|
const viewedTask = viewingAgentTaskId ? tasks2[viewingAgentTaskId] : undefined;
|
|
864695
864701
|
const viewedTeammateTask = viewedTask && isInProcessTeammateTask(viewedTask) ? viewedTask : undefined;
|
|
864696
864702
|
const viewedAgentTask = viewedTeammateTask ?? (viewedTask && isLocalAgentTask(viewedTask) ? viewedTask : undefined);
|
|
864697
|
-
const usesSyncMessages =
|
|
864703
|
+
const usesSyncMessages = shouldUseSyncMessages(reducedMotion, hasCursorUpViewportYankBug(), isLoading);
|
|
864698
864704
|
const rawAgentMessages = viewedAgentTask?.messages;
|
|
864699
864705
|
const displayedAgentMessages = import_react359.useMemo(() => {
|
|
864700
864706
|
if (!viewedAgentTask)
|
|
@@ -866632,7 +866638,7 @@ function WelcomeV2() {
|
|
|
866632
866638
|
dimColor: true,
|
|
866633
866639
|
children: [
|
|
866634
866640
|
"v",
|
|
866635
|
-
"4.2.
|
|
866641
|
+
"4.2.28",
|
|
866636
866642
|
" "
|
|
866637
866643
|
]
|
|
866638
866644
|
})
|
|
@@ -866698,7 +866704,7 @@ function WelcomeV2() {
|
|
|
866698
866704
|
dimColor: true,
|
|
866699
866705
|
children: [
|
|
866700
866706
|
"v",
|
|
866701
|
-
"4.2.
|
|
866707
|
+
"4.2.28",
|
|
866702
866708
|
" "
|
|
866703
866709
|
]
|
|
866704
866710
|
})
|
|
@@ -866800,7 +866806,7 @@ function AppleTerminalWelcomeV2({ theme: theme2, welcomeMessage }) {
|
|
|
866800
866806
|
dimColor: true,
|
|
866801
866807
|
children: [
|
|
866802
866808
|
"v",
|
|
866803
|
-
"4.2.
|
|
866809
|
+
"4.2.28",
|
|
866804
866810
|
" "
|
|
866805
866811
|
]
|
|
866806
866812
|
})
|
|
@@ -866866,7 +866872,7 @@ function AppleTerminalWelcomeV2({ theme: theme2, welcomeMessage }) {
|
|
|
866866
866872
|
dimColor: true,
|
|
866867
866873
|
children: [
|
|
866868
866874
|
"v",
|
|
866869
|
-
"4.2.
|
|
866875
|
+
"4.2.28",
|
|
866870
866876
|
" "
|
|
866871
866877
|
]
|
|
866872
866878
|
})
|
|
@@ -867806,7 +867812,7 @@ function completeOnboarding() {
|
|
|
867806
867812
|
saveGlobalConfig((current2) => ({
|
|
867807
867813
|
...current2,
|
|
867808
867814
|
hasCompletedOnboarding: true,
|
|
867809
|
-
lastOnboardingVersion: "4.2.
|
|
867815
|
+
lastOnboardingVersion: "4.2.28"
|
|
867810
867816
|
}));
|
|
867811
867817
|
}
|
|
867812
867818
|
function showDialog(root9, renderer) {
|
|
@@ -882935,7 +882941,7 @@ async function startMCPServer(cwd3, debug5, verbose) {
|
|
|
882935
882941
|
setCwd(cwd3);
|
|
882936
882942
|
const server2 = new Server({
|
|
882937
882943
|
name: "claude/tengu",
|
|
882938
|
-
version: "4.2.
|
|
882944
|
+
version: "4.2.28"
|
|
882939
882945
|
}, {
|
|
882940
882946
|
capabilities: {
|
|
882941
882947
|
tools: {}
|
|
@@ -885220,7 +885226,7 @@ function createHealthRoutes(sessionManager) {
|
|
|
885220
885226
|
const uptime2 = process.uptime() * 1000;
|
|
885221
885227
|
return c10.json({
|
|
885222
885228
|
status: "ok",
|
|
885223
|
-
version: "4.2.
|
|
885229
|
+
version: "4.2.28",
|
|
885224
885230
|
uptime_ms: Math.round(uptime2),
|
|
885225
885231
|
active_sessions: sessionManager.getActiveCount()
|
|
885226
885232
|
});
|
|
@@ -885492,7 +885498,7 @@ function getMacroDefines() {
|
|
|
885492
885498
|
commit = execSync3("git rev-parse --short HEAD", { encoding: "utf-8", cwd: __dirname }).trim();
|
|
885493
885499
|
} catch {}
|
|
885494
885500
|
return {
|
|
885495
|
-
"MACRO.VERSION": JSON.stringify("4.2.
|
|
885501
|
+
"MACRO.VERSION": JSON.stringify("4.2.28"),
|
|
885496
885502
|
"MACRO.BUILD_TIME": JSON.stringify(new Date().toISOString()),
|
|
885497
885503
|
"MACRO.COMMIT": JSON.stringify(commit),
|
|
885498
885504
|
"MACRO.FEEDBACK_CHANNEL": JSON.stringify(""),
|
|
@@ -892560,7 +892566,7 @@ __export(exports_update, {
|
|
|
892560
892566
|
});
|
|
892561
892567
|
async function update() {
|
|
892562
892568
|
logEvent("tengu_update_check", {});
|
|
892563
|
-
writeToStdout(`${t("cli.update.currentVersion", "Current version")}: ${"4.2.
|
|
892569
|
+
writeToStdout(`${t("cli.update.currentVersion", "Current version")}: ${"4.2.28"}
|
|
892564
892570
|
`);
|
|
892565
892571
|
const channel5 = getInitialSettings()?.autoUpdatesChannel ?? "latest";
|
|
892566
892572
|
writeToStdout(`${t("cli.update.checkingUpdates", { channel: channel5 }, "Checking for updates to {channel} version...")}
|
|
@@ -892635,8 +892641,8 @@ async function update() {
|
|
|
892635
892641
|
writeToStdout(`${t("cli.update.managedByHomebrew", "CoStrict is managed by Homebrew.")}
|
|
892636
892642
|
`);
|
|
892637
892643
|
const latest = await getLatestVersion(channel5);
|
|
892638
|
-
if (latest && !gte2("4.2.
|
|
892639
|
-
writeToStdout(`${t("cli.update.updateAvailable", { current: "4.2.
|
|
892644
|
+
if (latest && !gte2("4.2.28", latest)) {
|
|
892645
|
+
writeToStdout(`${t("cli.update.updateAvailable", { current: "4.2.28", latest }, "Update available: {current} \u2192 {latest}")}
|
|
892640
892646
|
`);
|
|
892641
892647
|
writeToStdout(`
|
|
892642
892648
|
`);
|
|
@@ -892652,8 +892658,8 @@ async function update() {
|
|
|
892652
892658
|
writeToStdout(`${t("cli.update.managedByWinget", "CoStrict is managed by winget.")}
|
|
892653
892659
|
`);
|
|
892654
892660
|
const latest = await getLatestVersion(channel5);
|
|
892655
|
-
if (latest && !gte2("4.2.
|
|
892656
|
-
writeToStdout(`${t("cli.update.updateAvailable", { current: "4.2.
|
|
892661
|
+
if (latest && !gte2("4.2.28", latest)) {
|
|
892662
|
+
writeToStdout(`${t("cli.update.updateAvailable", { current: "4.2.28", latest }, "Update available: {current} \u2192 {latest}")}
|
|
892657
892663
|
`);
|
|
892658
892664
|
writeToStdout(`
|
|
892659
892665
|
`);
|
|
@@ -892669,8 +892675,8 @@ async function update() {
|
|
|
892669
892675
|
writeToStdout(`${t("cli.update.managedByApk", "CoStrict is managed by apk.")}
|
|
892670
892676
|
`);
|
|
892671
892677
|
const latest = await getLatestVersion(channel5);
|
|
892672
|
-
if (latest && !gte2("4.2.
|
|
892673
|
-
writeToStdout(`${t("cli.update.updateAvailable", { current: "4.2.
|
|
892678
|
+
if (latest && !gte2("4.2.28", latest)) {
|
|
892679
|
+
writeToStdout(`${t("cli.update.updateAvailable", { current: "4.2.28", latest }, "Update available: {current} \u2192 {latest}")}
|
|
892674
892680
|
`);
|
|
892675
892681
|
writeToStdout(`
|
|
892676
892682
|
`);
|
|
@@ -892735,11 +892741,11 @@ async function update() {
|
|
|
892735
892741
|
`);
|
|
892736
892742
|
await gracefulShutdown(1);
|
|
892737
892743
|
}
|
|
892738
|
-
if (result2.latestVersion === "4.2.
|
|
892739
|
-
writeToStdout(source_default.green(t("cli.update.upToDateVersion", { version: "4.2.
|
|
892744
|
+
if (result2.latestVersion === "4.2.28") {
|
|
892745
|
+
writeToStdout(source_default.green(t("cli.update.upToDateVersion", { version: "4.2.28" }, "CoStrict is up to date ({version})")) + `
|
|
892740
892746
|
`);
|
|
892741
892747
|
} else {
|
|
892742
|
-
writeToStdout(source_default.green(t("cli.update.successfullyUpdated", { from: "4.2.
|
|
892748
|
+
writeToStdout(source_default.green(t("cli.update.successfullyUpdated", { from: "4.2.28", to: String(result2.latestVersion) }, "Successfully updated from {from} to version {to}")) + `
|
|
892743
892749
|
`);
|
|
892744
892750
|
regenerateCompletionCache();
|
|
892745
892751
|
}
|
|
@@ -892799,12 +892805,12 @@ async function update() {
|
|
|
892799
892805
|
`);
|
|
892800
892806
|
await gracefulShutdown(1);
|
|
892801
892807
|
}
|
|
892802
|
-
if (latestVersion === "4.2.
|
|
892803
|
-
writeToStdout(source_default.green(t("cli.update.upToDateVersion", { version: "4.2.
|
|
892808
|
+
if (latestVersion === "4.2.28") {
|
|
892809
|
+
writeToStdout(source_default.green(t("cli.update.upToDateVersion", { version: "4.2.28" }, "CoStrict is up to date ({version})")) + `
|
|
892804
892810
|
`);
|
|
892805
892811
|
await gracefulShutdown(0);
|
|
892806
892812
|
}
|
|
892807
|
-
writeToStdout(`${t("cli.update.newVersionAvailable", { latest: String(latestVersion), current: "4.2.
|
|
892813
|
+
writeToStdout(`${t("cli.update.newVersionAvailable", { latest: String(latestVersion), current: "4.2.28" }, "New version available: {latest} (current: {current})")}
|
|
892808
892814
|
`);
|
|
892809
892815
|
writeToStdout(`${t("cli.update.installing", "Installing update...")}
|
|
892810
892816
|
`);
|
|
@@ -892849,7 +892855,7 @@ async function update() {
|
|
|
892849
892855
|
logForDebugging(`update: Installation status: ${result.status}`);
|
|
892850
892856
|
switch (result.status) {
|
|
892851
892857
|
case "success":
|
|
892852
|
-
writeToStdout(source_default.green(t("cli.update.successfullyUpdated", { from: "4.2.
|
|
892858
|
+
writeToStdout(source_default.green(t("cli.update.successfullyUpdated", { from: "4.2.28", to: String(latestVersion) }, "Successfully updated from {from} to version {to}")) + `
|
|
892853
892859
|
`);
|
|
892854
892860
|
regenerateCompletionCache();
|
|
892855
892861
|
break;
|
|
@@ -895053,7 +895059,7 @@ ${assistantAddendum}` : assistantAddendum;
|
|
|
895053
895059
|
}
|
|
895054
895060
|
}
|
|
895055
895061
|
logForDiagnosticsNoPII("info", "started", {
|
|
895056
|
-
version: "4.2.
|
|
895062
|
+
version: "4.2.28",
|
|
895057
895063
|
is_native_binary: isInBundledMode()
|
|
895058
895064
|
});
|
|
895059
895065
|
registerCleanup(async () => {
|
|
@@ -895544,7 +895550,7 @@ Session: ${directConnectConfig.sessionId}`, "info");
|
|
|
895544
895550
|
sshSession = await createSSHSession2({
|
|
895545
895551
|
host: _pendingSSH.host,
|
|
895546
895552
|
cwd: _pendingSSH.cwd,
|
|
895547
|
-
localVersion: "4.2.
|
|
895553
|
+
localVersion: "4.2.28",
|
|
895548
895554
|
permissionMode: _pendingSSH.permissionMode,
|
|
895549
895555
|
dangerouslySkipPermissions: _pendingSSH.dangerouslySkipPermissions,
|
|
895550
895556
|
extraCliArgs: _pendingSSH.extraCliArgs,
|
|
@@ -896013,7 +896019,7 @@ Usage: csc --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
896013
896019
|
pendingHookMessages
|
|
896014
896020
|
}, renderAndRun);
|
|
896015
896021
|
}
|
|
896016
|
-
}).version("4.2.
|
|
896022
|
+
}).version("4.2.28 (CoStrict)", "-v, --version", cliDesc("cli.option.version", "Output the version number"));
|
|
896017
896023
|
program2.addOption(new Option("-w, --worktree [name]", cliDesc("cli.option.worktree", "Create a new git worktree for this session (optionally specify a name)")).hideHelp());
|
|
896018
896024
|
program2.addOption(new Option("--tmux", cliDesc("cli.option.tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.")).hideHelp());
|
|
896019
896025
|
if (canUserConfigureAdvisor()) {
|
|
@@ -896756,10 +896762,10 @@ if (process.env.CLAUDE_CODE_REMOTE === "true") {
|
|
|
896756
896762
|
async function main2() {
|
|
896757
896763
|
const args = process.argv.slice(2);
|
|
896758
896764
|
if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
|
|
896759
|
-
const d7 = new Date("2026-08-
|
|
896765
|
+
const d7 = new Date("2026-08-18T11:01:08.201Z");
|
|
896760
896766
|
const p2 = (n3) => String(n3).padStart(2, "0");
|
|
896761
896767
|
const buildTime = `${d7.getFullYear()}/${p2(d7.getMonth() + 1)}/${p2(d7.getDate())} ${p2(d7.getHours())}:${p2(d7.getMinutes())}:${p2(d7.getSeconds())}`;
|
|
896762
|
-
console.log(`${"4.2.
|
|
896768
|
+
console.log(`${"4.2.28"} (commit: ${"b8db0d23a"}, built: ${buildTime})`);
|
|
896763
896769
|
return;
|
|
896764
896770
|
}
|
|
896765
896771
|
if (args[0] === "git-credential") {
|
|
@@ -896940,5 +896946,5 @@ async function main2() {
|
|
|
896940
896946
|
}
|
|
896941
896947
|
main2();
|
|
896942
896948
|
|
|
896943
|
-
//# debugId=
|
|
896949
|
+
//# debugId=37B6B1EB0B1A78C264756E2164756E21
|
|
896944
896950
|
|
|
@@ -736,8 +736,8 @@ function getClientVersion() {
|
|
|
736
736
|
if (cached)
|
|
737
737
|
return cached;
|
|
738
738
|
try {
|
|
739
|
-
if ("4.2.
|
|
740
|
-
cached = "4.2.
|
|
739
|
+
if ("4.2.28") {
|
|
740
|
+
cached = "4.2.28";
|
|
741
741
|
return cached;
|
|
742
742
|
}
|
|
743
743
|
} catch {}
|
|
@@ -138570,7 +138570,7 @@ var init_user = __esm(() => {
|
|
|
138570
138570
|
deviceId,
|
|
138571
138571
|
sessionId: getSessionId(),
|
|
138572
138572
|
email: getEmail(),
|
|
138573
|
-
appVersion: "4.2.
|
|
138573
|
+
appVersion: "4.2.28",
|
|
138574
138574
|
platform: getHostPlatformForAnalytics(),
|
|
138575
138575
|
organizationUuid,
|
|
138576
138576
|
accountUuid,
|
|
@@ -138857,7 +138857,7 @@ var init_metadata = __esm(() => {
|
|
|
138857
138857
|
"sed"
|
|
138858
138858
|
]);
|
|
138859
138859
|
getVersionBase = memoize_default(() => {
|
|
138860
|
-
const match = "4.2.
|
|
138860
|
+
const match = "4.2.28".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
|
|
138861
138861
|
return match ? match[0] : undefined;
|
|
138862
138862
|
});
|
|
138863
138863
|
buildEnvContext = memoize_default(async () => {
|
|
@@ -138897,9 +138897,9 @@ var init_metadata = __esm(() => {
|
|
|
138897
138897
|
isGithubAction: isEnvTruthy(process.env.GITHUB_ACTIONS),
|
|
138898
138898
|
isClaudeCodeAction: isEnvTruthy(process.env.CLAUDE_CODE_ACTION),
|
|
138899
138899
|
isClaudeAiAuth: isClaudeAISubscriber(),
|
|
138900
|
-
version: "4.2.
|
|
138900
|
+
version: "4.2.28",
|
|
138901
138901
|
versionBase: getVersionBase(),
|
|
138902
|
-
buildTime: "2026-08-
|
|
138902
|
+
buildTime: "2026-08-18T11:01:10.342Z",
|
|
138903
138903
|
deploymentEnvironment: env4.detectDeploymentEnvironment(),
|
|
138904
138904
|
...isEnvTruthy(process.env.GITHUB_ACTIONS) && {
|
|
138905
138905
|
githubEventName: process.env.GITHUB_EVENT_NAME,
|
|
@@ -143237,5 +143237,5 @@ export {
|
|
|
143237
143237
|
isParentHeartbeatValid
|
|
143238
143238
|
};
|
|
143239
143239
|
|
|
143240
|
-
//# debugId=
|
|
143240
|
+
//# debugId=06C0F8C85F4ECBE064756E2164756E21
|
|
143241
143241
|
|