@costrict/csc 4.2.17-beta1 → 4.2.17

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 CHANGED
@@ -66548,8 +66548,8 @@ function getClientVersion() {
66548
66548
  if (cached)
66549
66549
  return cached;
66550
66550
  try {
66551
- if ("4.2.17-beta1") {
66552
- cached = "4.2.17-beta1";
66551
+ if ("4.2.17") {
66552
+ cached = "4.2.17";
66553
66553
  return cached;
66554
66554
  }
66555
66555
  } catch {}
@@ -220222,7 +220222,7 @@ async function fetchCoStrictModels(baseUrl, accessToken) {
220222
220222
  headers: {
220223
220223
  Authorization: `Bearer ${accessToken}`,
220224
220224
  Accept: "application/json",
220225
- "User-Agent": `csc/${"4.2.17-beta1"}`
220225
+ "User-Agent": `csc/${"4.2.17"}`
220226
220226
  },
220227
220227
  signal: controller.signal
220228
220228
  });
@@ -222259,7 +222259,7 @@ var init_auth7 = __esm(() => {
222259
222259
 
222260
222260
  // src/utils/userAgent.ts
222261
222261
  function getClaudeCodeUserAgent() {
222262
- return `costrict/${"4.2.17-beta1"}`;
222262
+ return `costrict/${"4.2.17"}`;
222263
222263
  }
222264
222264
 
222265
222265
  // src/utils/workloadContext.ts
@@ -222281,7 +222281,7 @@ function getUserAgent() {
222281
222281
  const clientApp = process.env.CLAUDE_AGENT_SDK_CLIENT_APP ? `, client-app/${process.env.CLAUDE_AGENT_SDK_CLIENT_APP}` : "";
222282
222282
  const workload = getWorkload();
222283
222283
  const workloadSuffix = workload ? `, workload/${workload}` : "";
222284
- return `csc/${"4.2.17-beta1"}`;
222284
+ return `csc/${"4.2.17"}`;
222285
222285
  }
222286
222286
  function getMCPUserAgent() {
222287
222287
  const parts = [];
@@ -222295,7 +222295,7 @@ function getMCPUserAgent() {
222295
222295
  parts.push(`client-app/${process.env.CLAUDE_AGENT_SDK_CLIENT_APP}`);
222296
222296
  }
222297
222297
  const suffix = parts.length > 0 ? ` (${parts.join(", ")})` : "";
222298
- return `csc/${"4.2.17-beta1"}${suffix}`;
222298
+ return `csc/${"4.2.17"}${suffix}`;
222299
222299
  }
222300
222300
  function getWebFetchUserAgent() {
222301
222301
  return `Claude-User (${getClaudeCodeUserAgent()}; +https://support.anthropic.com/)`;
@@ -222415,7 +222415,7 @@ var init_user = __esm(() => {
222415
222415
  deviceId,
222416
222416
  sessionId: getSessionId(),
222417
222417
  email: getEmail(),
222418
- appVersion: "4.2.17-beta1",
222418
+ appVersion: "4.2.17",
222419
222419
  platform: getHostPlatformForAnalytics(),
222420
222420
  organizationUuid,
222421
222421
  accountUuid,
@@ -233463,7 +233463,7 @@ var init_metadata = __esm(() => {
233463
233463
  COMPOUND_OPERATOR_REGEX = /\s*(?:&&|\|\||[;|])\s*/;
233464
233464
  WHITESPACE_REGEX = /\s+/;
233465
233465
  getVersionBase = memoize_default(() => {
233466
- const match = "4.2.17-beta1".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
233466
+ const match = "4.2.17".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
233467
233467
  return match ? match[0] : undefined;
233468
233468
  });
233469
233469
  buildEnvContext = memoize_default(async () => {
@@ -233503,9 +233503,9 @@ var init_metadata = __esm(() => {
233503
233503
  isGithubAction: isEnvTruthy(process.env.GITHUB_ACTIONS),
233504
233504
  isClaudeCodeAction: isEnvTruthy(process.env.CLAUDE_CODE_ACTION),
233505
233505
  isClaudeAiAuth: isClaudeAISubscriber(),
233506
- version: "4.2.17-beta1",
233506
+ version: "4.2.17",
233507
233507
  versionBase: getVersionBase(),
233508
- buildTime: "2026-07-23T00:14:33.873Z",
233508
+ buildTime: "2026-07-23T09:15:44.097Z",
233509
233509
  deploymentEnvironment: env4.detectDeploymentEnvironment(),
233510
233510
  ...isEnvTruthy(process.env.GITHUB_ACTIONS) && {
233511
233511
  githubEventName: process.env.GITHUB_EVENT_NAME,
@@ -234176,7 +234176,7 @@ function initialize1PEventLogging() {
234176
234176
  const platform3 = getPlatform();
234177
234177
  const attributes = {
234178
234178
  [import_semantic_conventions2.ATTR_SERVICE_NAME]: "claude-code",
234179
- [import_semantic_conventions2.ATTR_SERVICE_VERSION]: "4.2.17-beta1"
234179
+ [import_semantic_conventions2.ATTR_SERVICE_VERSION]: "4.2.17"
234180
234180
  };
234181
234181
  if (platform3 === "wsl") {
234182
234182
  const wslVersion = getWslVersion();
@@ -234203,7 +234203,7 @@ function initialize1PEventLogging() {
234203
234203
  })
234204
234204
  ]
234205
234205
  });
234206
- firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.anthropic.claude_code.events", "4.2.17-beta1");
234206
+ firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.anthropic.claude_code.events", "4.2.17");
234207
234207
  }
234208
234208
  async function reinitialize1PEventLoggingIfConfigChanged() {
234209
234209
  if (!is1PEventLoggingEnabled() || !firstPartyEventLoggerProvider) {
@@ -434133,7 +434133,7 @@ function getTelemetryAttributes() {
434133
434133
  attributes["session.id"] = sessionId;
434134
434134
  }
434135
434135
  if (shouldIncludeAttribute("OTEL_METRICS_INCLUDE_VERSION")) {
434136
- attributes["app.version"] = "4.2.17-beta1";
434136
+ attributes["app.version"] = "4.2.17";
434137
434137
  }
434138
434138
  const oauthAccount = getOauthAccountInfo();
434139
434139
  if (oauthAccount) {
@@ -467653,7 +467653,7 @@ function initLangfuse() {
467653
467653
  flushInterval: parseInt(process.env.LANGFUSE_FLUSH_INTERVAL ?? "10", 10),
467654
467654
  mask: maskFn,
467655
467655
  environment: process.env.LANGFUSE_TRACING_ENVIRONMENT ?? "development",
467656
- release: "4.2.17-beta1",
467656
+ release: "4.2.17",
467657
467657
  exportMode: process.env.LANGFUSE_EXPORT_MODE ?? "batched",
467658
467658
  timeout: parseInt(process.env.LANGFUSE_TIMEOUT ?? "5", 10)
467659
467659
  });
@@ -499553,7 +499553,7 @@ function initSentry() {
499553
499553
  }
499554
499554
  init3({
499555
499555
  dsn,
499556
- release: typeof MACRO !== "undefined" ? "4.2.17-beta1" : undefined,
499556
+ release: typeof MACRO !== "undefined" ? "4.2.17" : undefined,
499557
499557
  environment: typeof BUILD_ENV !== "undefined" ? BUILD_ENV : "production",
499558
499558
  maxBreadcrumbs: 20,
499559
499559
  sampleRate: 1,
@@ -527444,7 +527444,7 @@ async function initializeBetaTracing(resource) {
527444
527444
  });
527445
527445
  logs.setGlobalLoggerProvider(loggerProvider);
527446
527446
  setLoggerProvider(loggerProvider);
527447
- const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "4.2.17-beta1");
527447
+ const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "4.2.17");
527448
527448
  setEventLogger(eventLogger);
527449
527449
  process.on("beforeExit", async () => {
527450
527450
  await loggerProvider?.forceFlush();
@@ -527484,7 +527484,7 @@ async function initializeTelemetry() {
527484
527484
  const platform5 = getPlatform();
527485
527485
  const baseAttributes = {
527486
527486
  [import_semantic_conventions29.ATTR_SERVICE_NAME]: "claude-code",
527487
- [import_semantic_conventions29.ATTR_SERVICE_VERSION]: "4.2.17-beta1"
527487
+ [import_semantic_conventions29.ATTR_SERVICE_VERSION]: "4.2.17"
527488
527488
  };
527489
527489
  if (platform5 === "wsl") {
527490
527490
  const wslVersion = getWslVersion();
@@ -527529,7 +527529,7 @@ async function initializeTelemetry() {
527529
527529
  } catch {}
527530
527530
  };
527531
527531
  registerCleanup(shutdownTelemetry2);
527532
- return meterProvider2.getMeter("com.anthropic.claude_code", "4.2.17-beta1");
527532
+ return meterProvider2.getMeter("com.anthropic.claude_code", "4.2.17");
527533
527533
  }
527534
527534
  const meterProvider = new import_sdk_metrics2.MeterProvider({
527535
527535
  resource,
@@ -527549,7 +527549,7 @@ async function initializeTelemetry() {
527549
527549
  });
527550
527550
  logs.setGlobalLoggerProvider(loggerProvider);
527551
527551
  setLoggerProvider(loggerProvider);
527552
- const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "4.2.17-beta1");
527552
+ const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "4.2.17");
527553
527553
  setEventLogger(eventLogger);
527554
527554
  logForDebugging("[3P telemetry] Event logger set successfully");
527555
527555
  process.on("beforeExit", async () => {
@@ -527611,7 +527611,7 @@ Current timeout: ${timeoutMs}ms
527611
527611
  }
527612
527612
  };
527613
527613
  registerCleanup(shutdownTelemetry);
527614
- return meterProvider.getMeter("com.anthropic.claude_code", "4.2.17-beta1");
527614
+ return meterProvider.getMeter("com.anthropic.claude_code", "4.2.17");
527615
527615
  }
527616
527616
  async function flushTelemetry() {
527617
527617
  const meterProvider = getMeterProvider();
@@ -528670,7 +528670,7 @@ async function installGlobalPackage(specificVersion) {
528670
528670
  logError3(new AutoUpdaterError("Another process is currently installing an update"));
528671
528671
  logEvent("tengu_auto_updater_lock_contention", {
528672
528672
  pid: process.pid,
528673
- currentVersion: "4.2.17-beta1"
528673
+ currentVersion: "4.2.17"
528674
528674
  });
528675
528675
  return { status: "in_progress" };
528676
528676
  }
@@ -528679,7 +528679,7 @@ async function installGlobalPackage(specificVersion) {
528679
528679
  if (!env4.isRunningWithBun() && env4.isNpmFromWindowsPath()) {
528680
528680
  logError3(new Error("Windows NPM detected in WSL environment"));
528681
528681
  logEvent("tengu_auto_updater_windows_npm_in_wsl", {
528682
- currentVersion: "4.2.17-beta1"
528682
+ currentVersion: "4.2.17"
528683
528683
  });
528684
528684
  return {
528685
528685
  status: "install_failed",
@@ -529225,7 +529225,7 @@ function detectLinuxGlobPatternWarnings() {
529225
529225
  }
529226
529226
  async function getDoctorDiagnostic() {
529227
529227
  const installationType = await getCurrentInstallationType();
529228
- const version9 = typeof MACRO !== "undefined" ? "4.2.17-beta1" : "unknown";
529228
+ const version9 = typeof MACRO !== "undefined" ? "4.2.17" : "unknown";
529229
529229
  const installationPath = await getInstallationPath();
529230
529230
  const invokedBinary = getInvokedBinary();
529231
529231
  const multipleInstallations = await detectMultipleInstallations();
@@ -567381,7 +567381,7 @@ async function setupSdkMcpClients(sdkMcpConfigs, sendMcpMessage) {
567381
567381
  const client10 = new Client3({
567382
567382
  name: "claude-code",
567383
567383
  title: "CoStrict",
567384
- version: "4.2.17-beta1",
567384
+ version: "4.2.17",
567385
567385
  description: "CoStrict agentic coding tool",
567386
567386
  websiteUrl: PRODUCT_URL
567387
567387
  }, {
@@ -567752,7 +567752,7 @@ var init_client18 = __esm(() => {
567752
567752
  const client10 = new Client3({
567753
567753
  name: "claude-code",
567754
567754
  title: "CoStrict",
567755
- version: "4.2.17-beta1",
567755
+ version: "4.2.17",
567756
567756
  description: "CoStrict agentic coding tool",
567757
567757
  websiteUrl: PRODUCT_URL
567758
567758
  }, {
@@ -569130,7 +569130,7 @@ function getInstallationEnv() {
569130
569130
  return;
569131
569131
  }
569132
569132
  function getClaudeCodeVersion() {
569133
- return "4.2.17-beta1";
569133
+ return "4.2.17";
569134
569134
  }
569135
569135
  async function getInstalledVSCodeExtensionVersion(command4) {
569136
569136
  const { stdout } = await execFileNoThrow2(command4, ["--list-extensions", "--show-versions"], {
@@ -570494,8 +570494,8 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
570494
570494
  const maxVersion = await getMaxVersion();
570495
570495
  if (maxVersion && gt(version10, maxVersion)) {
570496
570496
  logForDebugging(`Native installer: maxVersion ${maxVersion} is set, capping update from ${version10} to ${maxVersion}`);
570497
- if (gte2("4.2.17-beta1", maxVersion)) {
570498
- logForDebugging(`Native installer: current version ${"4.2.17-beta1"} is already at or above maxVersion ${maxVersion}, skipping update`);
570497
+ if (gte2("4.2.17", maxVersion)) {
570498
+ logForDebugging(`Native installer: current version ${"4.2.17"} is already at or above maxVersion ${maxVersion}, skipping update`);
570499
570499
  logEvent("tengu_native_update_skipped_max_version", {
570500
570500
  latency_ms: Date.now() - startTime2,
570501
570501
  max_version: maxVersion,
@@ -570506,7 +570506,7 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
570506
570506
  version10 = maxVersion;
570507
570507
  }
570508
570508
  }
570509
- if (!forceReinstall && version10 === "4.2.17-beta1" && await versionIsAvailable(version10) && await isPossibleClaudeBinary(executablePath)) {
570509
+ if (!forceReinstall && version10 === "4.2.17" && await versionIsAvailable(version10) && await isPossibleClaudeBinary(executablePath)) {
570510
570510
  logForDebugging(`Found ${version10} at ${executablePath}, skipping install`);
570511
570511
  logEvent("tengu_native_update_complete", {
570512
570512
  latency_ms: Date.now() - startTime2,
@@ -707626,7 +707626,7 @@ function Feedback({
707626
707626
  platform: env4.platform,
707627
707627
  gitRepo: envInfo.isGit,
707628
707628
  terminal: env4.terminal,
707629
- version: "4.2.17-beta1",
707629
+ version: "4.2.17",
707630
707630
  transcript: normalizeMessagesForAPI(messages),
707631
707631
  errors: sanitizedErrors,
707632
707632
  lastApiRequest: getLastAPIRequest(),
@@ -707809,7 +707809,7 @@ function Feedback({
707809
707809
  ", ",
707810
707810
  env4.terminal,
707811
707811
  ", v",
707812
- "4.2.17-beta1"
707812
+ "4.2.17"
707813
707813
  ]
707814
707814
  })
707815
707815
  ]
@@ -707906,7 +707906,7 @@ ${sanitizedDescription}
707906
707906
  ` + `**Environment Info**
707907
707907
  ` + `- Platform: ${env4.platform}
707908
707908
  ` + `- Terminal: ${env4.terminal}
707909
- ` + `- Version: ${"4.2.17-beta1"}
707909
+ ` + `- Version: ${"4.2.17"}
707910
707910
  ` + `- Feedback ID: ${feedbackId}
707911
707911
  ` + `
707912
707912
  **Errors**
@@ -710142,7 +710142,7 @@ function buildPrimarySection() {
710142
710142
  children: t("settings.status.renameHint")
710143
710143
  });
710144
710144
  return [
710145
- { label: t("settings.status.version"), value: "4.2.17-beta1" },
710145
+ { label: t("settings.status.version"), value: "4.2.17" },
710146
710146
  { label: t("settings.status.sessionName"), value: nameValue },
710147
710147
  { label: t("settings.status.sessionId"), value: sessionId },
710148
710148
  { label: t("settings.status.cwd"), value: getCwd() },
@@ -713000,7 +713000,7 @@ function Config({
713000
713000
  }
713001
713001
  })
713002
713002
  }) : showSubmenu === "ChannelDowngrade" ? /* @__PURE__ */ jsx_runtime190.jsx(ChannelDowngradeDialog, {
713003
- currentVersion: "4.2.17-beta1",
713003
+ currentVersion: "4.2.17",
713004
713004
  onChoice: (choice) => {
713005
713005
  setShowSubmenu(null);
713006
713006
  setTabsHidden(false);
@@ -713012,7 +713012,7 @@ function Config({
713012
713012
  autoUpdatesChannel: "stable"
713013
713013
  };
713014
713014
  if (choice === "stay") {
713015
- newSettings.minimumVersion = "4.2.17-beta1";
713015
+ newSettings.minimumVersion = "4.2.17";
713016
713016
  }
713017
713017
  updateSettingsForSource("userSettings", newSettings);
713018
713018
  setSettingsData((prev) => ({
@@ -718481,7 +718481,7 @@ function HelpV2({ onClose, commands: commands11 }) {
718481
718481
  color: "professionalBlue",
718482
718482
  children: [
718483
718483
  /* @__PURE__ */ jsx_runtime217.jsx(Tabs, {
718484
- title: process.env.USER_TYPE === "sf" ? "/help" : `CoStrict v${"4.2.17-beta1"}`,
718484
+ title: process.env.USER_TYPE === "sf" ? "/help" : `CoStrict v${"4.2.17"}`,
718485
718485
  color: "professionalBlue",
718486
718486
  defaultTab: "general",
718487
718487
  children: tabs
@@ -741482,7 +741482,7 @@ function getAllReleaseNotes(changelogContent = getStoredChangelogFromMemory()) {
741482
741482
  return [];
741483
741483
  }
741484
741484
  }
741485
- async function checkForReleaseNotes(lastSeenVersion, currentVersion = "4.2.17-beta1") {
741485
+ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "4.2.17") {
741486
741486
  if (process.env.USER_TYPE === "sf") {
741487
741487
  const changelog = "";
741488
741488
  if (changelog) {
@@ -741509,7 +741509,7 @@ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "4.2.17-be
741509
741509
  releaseNotes
741510
741510
  };
741511
741511
  }
741512
- function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "4.2.17-beta1") {
741512
+ function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "4.2.17") {
741513
741513
  if (process.env.USER_TYPE === "sf") {
741514
741514
  const changelog = "";
741515
741515
  if (changelog) {
@@ -744022,7 +744022,7 @@ function isNotLoggedIn() {
744022
744022
  return true;
744023
744023
  }
744024
744024
  function getLogoDisplayData() {
744025
- const version10 = process.env.DEMO_VERSION ?? "4.2.17-beta1";
744025
+ const version10 = process.env.DEMO_VERSION ?? "4.2.17";
744026
744026
  const serverUrl = getDirectConnectServerUrl();
744027
744027
  const displayPath = process.env.DEMO_VERSION ? "/code/claude" : getDisplayPath(getCwd());
744028
744028
  const cwd2 = serverUrl ? `${displayPath} in ${serverUrl.replace(/^https?:\/\//, "")}` : displayPath;
@@ -744600,7 +744600,7 @@ var init_MatrixMessageLine = __esm(() => {
744600
744600
  // src/components/matrix-tactical/MatrixWelcome.tsx
744601
744601
  import { basename as basename47 } from "path";
744602
744602
  function MatrixWelcome({
744603
- version: version10 = "4.2.17-beta1",
744603
+ version: version10 = "4.2.17",
744604
744604
  projectName,
744605
744605
  cwd: cwd2,
744606
744606
  modelDisplayName,
@@ -745235,13 +745235,13 @@ function LogoV2() {
745235
745235
  const { hasReleaseNotes } = checkForReleaseNotesSync(config13.lastReleaseNotesSeen);
745236
745236
  import_react167.useEffect(() => {
745237
745237
  const currentConfig = getGlobalConfig();
745238
- if (currentConfig.lastReleaseNotesSeen === "4.2.17-beta1") {
745238
+ if (currentConfig.lastReleaseNotesSeen === "4.2.17") {
745239
745239
  return;
745240
745240
  }
745241
745241
  saveGlobalConfig((current2) => {
745242
- if (current2.lastReleaseNotesSeen === "4.2.17-beta1")
745242
+ if (current2.lastReleaseNotesSeen === "4.2.17")
745243
745243
  return current2;
745244
- return { ...current2, lastReleaseNotesSeen: "4.2.17-beta1" };
745244
+ return { ...current2, lastReleaseNotesSeen: "4.2.17" };
745245
745245
  });
745246
745246
  if (showOnboarding) {
745247
745247
  incrementProjectOnboardingSeenCount();
@@ -767770,7 +767770,7 @@ async function captureMemoryDiagnostics(trigger, dumpNumber = 0) {
767770
767770
  smapsRollup,
767771
767771
  platform: process.platform,
767772
767772
  nodeVersion: process.version,
767773
- ccVersion: "4.2.17-beta1"
767773
+ ccVersion: "4.2.17"
767774
767774
  };
767775
767775
  }
767776
767776
  async function performHeapDump(trigger = "manual", dumpNumber = 0) {
@@ -767886,7 +767886,7 @@ var init_mock_limits = __esm(() => {
767886
767886
  var call54 = async () => {
767887
767887
  return {
767888
767888
  type: "text",
767889
- value: `${"4.2.17-beta1"} (built ${"2026-07-23T00:14:33.873Z"})`
767889
+ value: `${"4.2.17"} (built ${"2026-07-23T09:15:44.097Z"})`
767890
767890
  };
767891
767891
  }, version10, version_default;
767892
767892
  var init_version2 = __esm(() => {
@@ -785052,7 +785052,7 @@ function generateHtmlReport(data, insights) {
785052
785052
  </html>`;
785053
785053
  }
785054
785054
  function buildExportData(data, insights, facets, remoteStats) {
785055
- const version11 = typeof MACRO !== "undefined" ? "4.2.17-beta1" : "unknown";
785055
+ const version11 = typeof MACRO !== "undefined" ? "4.2.17" : "unknown";
785056
785056
  const remote_hosts_collected = remoteStats?.hosts.filter((h8) => h8.sessionCount > 0).map((h8) => h8.name);
785057
785057
  const facets_summary = {
785058
785058
  total: facets.size,
@@ -789500,7 +789500,7 @@ var init_sessionStorage = __esm(() => {
789500
789500
  init_settings2();
789501
789501
  init_slowOperations();
789502
789502
  init_uuid();
789503
- VERSION11 = typeof MACRO !== "undefined" ? "4.2.17-beta1" : "unknown";
789503
+ VERSION11 = typeof MACRO !== "undefined" ? "4.2.17" : "unknown";
789504
789504
  MAX_TOMBSTONE_REWRITE_BYTES = 50 * 1024 * 1024;
789505
789505
  SKIP_FIRST_PROMPT_PATTERN2 = /^(?:\s*<[a-z][\w-]*[\s>]|\[Request interrupted by user[^\]]*\])/;
789506
789506
  EPHEMERAL_PROGRESS_TYPES = new Set([
@@ -790841,7 +790841,7 @@ var init_filesystem = __esm(() => {
790841
790841
  });
790842
790842
  getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
790843
790843
  const nonce = randomBytes24(16).toString("hex");
790844
- return join204(getCostrictTempDir(), "bundled-skills", "4.2.17-beta1", nonce);
790844
+ return join204(getCostrictTempDir(), "bundled-skills", "4.2.17", nonce);
790845
790845
  });
790846
790846
  getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
790847
790847
  });
@@ -797111,7 +797111,7 @@ function computeFingerprint(messageText, version11) {
797111
797111
  }
797112
797112
  function computeFingerprintFromMessages(messages) {
797113
797113
  const firstMessageText = extractFirstMessageText(messages);
797114
- return computeFingerprint(firstMessageText, "4.2.17-beta1");
797114
+ return computeFingerprint(firstMessageText, "4.2.17");
797115
797115
  }
797116
797116
  var FINGERPRINT_SALT = "59cf53e54c78";
797117
797117
  var init_fingerprint = () => {};
@@ -797521,7 +797521,7 @@ function getAnthropicEnvMetadata() {
797521
797521
  function getBuildAgeMinutes() {
797522
797522
  if (false)
797523
797523
  ;
797524
- const buildTime = new Date("2026-07-23T00:14:33.873Z").getTime();
797524
+ const buildTime = new Date("2026-07-23T09:15:44.097Z").getTime();
797525
797525
  if (isNaN(buildTime))
797526
797526
  return;
797527
797527
  return Math.floor((Date.now() - buildTime) / 60000);
@@ -802918,7 +802918,7 @@ async function sideQuery(opts) {
802918
802918
  betas.push(STRUCTURED_OUTPUTS_BETA_HEADER);
802919
802919
  }
802920
802920
  const messageText = extractFirstUserMessageText(messages);
802921
- const fingerprint = computeFingerprint(messageText, "4.2.17-beta1");
802921
+ const fingerprint = computeFingerprint(messageText, "4.2.17");
802922
802922
  const attributionHeader = getAttributionHeader(fingerprint);
802923
802923
  const systemBlocks = [
802924
802924
  attributionHeader ? { type: "text", text: attributionHeader } : null,
@@ -806314,7 +806314,7 @@ function buildSystemInitMessage(inputs) {
806314
806314
  slash_commands: inputs.commands.filter((c10) => c10.userInvocable !== false).map((c10) => c10.name),
806315
806315
  apiKeySource: getAnthropicApiKeyWithSource().source,
806316
806316
  betas: getSdkBetas(),
806317
- claude_code_version: "4.2.17-beta1",
806317
+ claude_code_version: "4.2.17",
806318
806318
  output_style: outputStyle2,
806319
806319
  agents: inputs.agents.map((agent) => agent.agentType),
806320
806320
  skills: inputs.skills.filter((s) => s.userInvocable !== false).map((skill) => skill.name),
@@ -809857,7 +809857,7 @@ function appendToLog(path53, message2) {
809857
809857
  cwd: getFsImplementation().cwd(),
809858
809858
  userType: process.env.USER_TYPE,
809859
809859
  sessionId: getSessionId(),
809860
- version: "4.2.17-beta1"
809860
+ version: "4.2.17"
809861
809861
  };
809862
809862
  getLogWriter(path53).write(messageWithTimestamp);
809863
809863
  }
@@ -830833,7 +830833,7 @@ function buildStatusLineCommandInput(permissionMode, exceeds200kTokens, settings
830833
830833
  project_dir: getOriginalCwd(),
830834
830834
  added_dirs: addedDirs
830835
830835
  },
830836
- version: "4.2.17-beta1",
830836
+ version: "4.2.17",
830837
830837
  output_style: {
830838
830838
  name: outputStyleName
830839
830839
  },
@@ -849401,7 +849401,7 @@ async function submitTranscriptShare(messages, trigger, appearanceId) {
849401
849401
  } catch {}
849402
849402
  const data = {
849403
849403
  trigger,
849404
- version: "4.2.17-beta1",
849404
+ version: "4.2.17",
849405
849405
  platform: process.platform,
849406
849406
  transcript,
849407
849407
  subagentTranscripts: Object.keys(subagentTranscripts).length > 0 ? subagentTranscripts : undefined,
@@ -850656,7 +850656,7 @@ function getReleaseType(current2, latest) {
850656
850656
  return "patch";
850657
850657
  }
850658
850658
  async function checkNewAutoUpdate(callbacks) {
850659
- const currentVersion = "4.2.17-beta1";
850659
+ const currentVersion = "4.2.17";
850660
850660
  logForDebugging(`[newAutoUpdater] checking, current: ${currentVersion}`);
850661
850661
  if (isNewAutoUpdaterDisabled()) {
850662
850662
  return { action: "skip", currentVersion, latestVersion: null };
@@ -861813,7 +861813,7 @@ function WelcomeV2() {
861813
861813
  dimColor: true,
861814
861814
  children: [
861815
861815
  "v",
861816
- "4.2.17-beta1",
861816
+ "4.2.17",
861817
861817
  " "
861818
861818
  ]
861819
861819
  })
@@ -861879,7 +861879,7 @@ function WelcomeV2() {
861879
861879
  dimColor: true,
861880
861880
  children: [
861881
861881
  "v",
861882
- "4.2.17-beta1",
861882
+ "4.2.17",
861883
861883
  " "
861884
861884
  ]
861885
861885
  })
@@ -861981,7 +861981,7 @@ function AppleTerminalWelcomeV2({ theme: theme2, welcomeMessage }) {
861981
861981
  dimColor: true,
861982
861982
  children: [
861983
861983
  "v",
861984
- "4.2.17-beta1",
861984
+ "4.2.17",
861985
861985
  " "
861986
861986
  ]
861987
861987
  })
@@ -862047,7 +862047,7 @@ function AppleTerminalWelcomeV2({ theme: theme2, welcomeMessage }) {
862047
862047
  dimColor: true,
862048
862048
  children: [
862049
862049
  "v",
862050
- "4.2.17-beta1",
862050
+ "4.2.17",
862051
862051
  " "
862052
862052
  ]
862053
862053
  })
@@ -862987,7 +862987,7 @@ function completeOnboarding() {
862987
862987
  saveGlobalConfig((current2) => ({
862988
862988
  ...current2,
862989
862989
  hasCompletedOnboarding: true,
862990
- lastOnboardingVersion: "4.2.17-beta1"
862990
+ lastOnboardingVersion: "4.2.17"
862991
862991
  }));
862992
862992
  }
862993
862993
  function showDialog(root9, renderer) {
@@ -877971,7 +877971,7 @@ async function startMCPServer(cwd3, debug5, verbose) {
877971
877971
  setCwd(cwd3);
877972
877972
  const server2 = new Server({
877973
877973
  name: "claude/tengu",
877974
- version: "4.2.17-beta1"
877974
+ version: "4.2.17"
877975
877975
  }, {
877976
877976
  capabilities: {
877977
877977
  tools: {}
@@ -880256,7 +880256,7 @@ function createHealthRoutes(sessionManager) {
880256
880256
  const uptime2 = process.uptime() * 1000;
880257
880257
  return c10.json({
880258
880258
  status: "ok",
880259
- version: "4.2.17-beta1",
880259
+ version: "4.2.17",
880260
880260
  uptime_ms: Math.round(uptime2),
880261
880261
  active_sessions: sessionManager.getActiveCount()
880262
880262
  });
@@ -880528,7 +880528,7 @@ function getMacroDefines() {
880528
880528
  commit = execSync3("git rev-parse --short HEAD", { encoding: "utf-8", cwd: __dirname }).trim();
880529
880529
  } catch {}
880530
880530
  return {
880531
- "MACRO.VERSION": JSON.stringify("4.2.17-beta1"),
880531
+ "MACRO.VERSION": JSON.stringify("4.2.17"),
880532
880532
  "MACRO.BUILD_TIME": JSON.stringify(new Date().toISOString()),
880533
880533
  "MACRO.COMMIT": JSON.stringify(commit),
880534
880534
  "MACRO.FEEDBACK_CHANNEL": JSON.stringify(""),
@@ -887278,7 +887278,7 @@ __export(exports_update, {
887278
887278
  });
887279
887279
  async function update() {
887280
887280
  logEvent("tengu_update_check", {});
887281
- writeToStdout(`${t("cli.update.currentVersion", "Current version")}: ${"4.2.17-beta1"}
887281
+ writeToStdout(`${t("cli.update.currentVersion", "Current version")}: ${"4.2.17"}
887282
887282
  `);
887283
887283
  const channel5 = getInitialSettings()?.autoUpdatesChannel ?? "latest";
887284
887284
  writeToStdout(`${t("cli.update.checkingUpdates", { channel: channel5 }, "Checking for updates to {channel} version...")}
@@ -887353,8 +887353,8 @@ async function update() {
887353
887353
  writeToStdout(`${t("cli.update.managedByHomebrew", "CoStrict is managed by Homebrew.")}
887354
887354
  `);
887355
887355
  const latest = await getLatestVersion(channel5);
887356
- if (latest && !gte2("4.2.17-beta1", latest)) {
887357
- writeToStdout(`${t("cli.update.updateAvailable", { current: "4.2.17-beta1", latest }, "Update available: {current} \u2192 {latest}")}
887356
+ if (latest && !gte2("4.2.17", latest)) {
887357
+ writeToStdout(`${t("cli.update.updateAvailable", { current: "4.2.17", latest }, "Update available: {current} \u2192 {latest}")}
887358
887358
  `);
887359
887359
  writeToStdout(`
887360
887360
  `);
@@ -887370,8 +887370,8 @@ async function update() {
887370
887370
  writeToStdout(`${t("cli.update.managedByWinget", "CoStrict is managed by winget.")}
887371
887371
  `);
887372
887372
  const latest = await getLatestVersion(channel5);
887373
- if (latest && !gte2("4.2.17-beta1", latest)) {
887374
- writeToStdout(`${t("cli.update.updateAvailable", { current: "4.2.17-beta1", latest }, "Update available: {current} \u2192 {latest}")}
887373
+ if (latest && !gte2("4.2.17", latest)) {
887374
+ writeToStdout(`${t("cli.update.updateAvailable", { current: "4.2.17", latest }, "Update available: {current} \u2192 {latest}")}
887375
887375
  `);
887376
887376
  writeToStdout(`
887377
887377
  `);
@@ -887387,8 +887387,8 @@ async function update() {
887387
887387
  writeToStdout(`${t("cli.update.managedByApk", "CoStrict is managed by apk.")}
887388
887388
  `);
887389
887389
  const latest = await getLatestVersion(channel5);
887390
- if (latest && !gte2("4.2.17-beta1", latest)) {
887391
- writeToStdout(`${t("cli.update.updateAvailable", { current: "4.2.17-beta1", latest }, "Update available: {current} \u2192 {latest}")}
887390
+ if (latest && !gte2("4.2.17", latest)) {
887391
+ writeToStdout(`${t("cli.update.updateAvailable", { current: "4.2.17", latest }, "Update available: {current} \u2192 {latest}")}
887392
887392
  `);
887393
887393
  writeToStdout(`
887394
887394
  `);
@@ -887453,11 +887453,11 @@ async function update() {
887453
887453
  `);
887454
887454
  await gracefulShutdown(1);
887455
887455
  }
887456
- if (result2.latestVersion === "4.2.17-beta1") {
887457
- writeToStdout(source_default.green(t("cli.update.upToDateVersion", { version: "4.2.17-beta1" }, "CoStrict is up to date ({version})")) + `
887456
+ if (result2.latestVersion === "4.2.17") {
887457
+ writeToStdout(source_default.green(t("cli.update.upToDateVersion", { version: "4.2.17" }, "CoStrict is up to date ({version})")) + `
887458
887458
  `);
887459
887459
  } else {
887460
- writeToStdout(source_default.green(t("cli.update.successfullyUpdated", { from: "4.2.17-beta1", to: String(result2.latestVersion) }, "Successfully updated from {from} to version {to}")) + `
887460
+ writeToStdout(source_default.green(t("cli.update.successfullyUpdated", { from: "4.2.17", to: String(result2.latestVersion) }, "Successfully updated from {from} to version {to}")) + `
887461
887461
  `);
887462
887462
  regenerateCompletionCache();
887463
887463
  }
@@ -887517,12 +887517,12 @@ async function update() {
887517
887517
  `);
887518
887518
  await gracefulShutdown(1);
887519
887519
  }
887520
- if (latestVersion === "4.2.17-beta1") {
887521
- writeToStdout(source_default.green(t("cli.update.upToDateVersion", { version: "4.2.17-beta1" }, "CoStrict is up to date ({version})")) + `
887520
+ if (latestVersion === "4.2.17") {
887521
+ writeToStdout(source_default.green(t("cli.update.upToDateVersion", { version: "4.2.17" }, "CoStrict is up to date ({version})")) + `
887522
887522
  `);
887523
887523
  await gracefulShutdown(0);
887524
887524
  }
887525
- writeToStdout(`${t("cli.update.newVersionAvailable", { latest: String(latestVersion), current: "4.2.17-beta1" }, "New version available: {latest} (current: {current})")}
887525
+ writeToStdout(`${t("cli.update.newVersionAvailable", { latest: String(latestVersion), current: "4.2.17" }, "New version available: {latest} (current: {current})")}
887526
887526
  `);
887527
887527
  writeToStdout(`${t("cli.update.installing", "Installing update...")}
887528
887528
  `);
@@ -887567,7 +887567,7 @@ async function update() {
887567
887567
  logForDebugging(`update: Installation status: ${result.status}`);
887568
887568
  switch (result.status) {
887569
887569
  case "success":
887570
- writeToStdout(source_default.green(t("cli.update.successfullyUpdated", { from: "4.2.17-beta1", to: String(latestVersion) }, "Successfully updated from {from} to version {to}")) + `
887570
+ writeToStdout(source_default.green(t("cli.update.successfullyUpdated", { from: "4.2.17", to: String(latestVersion) }, "Successfully updated from {from} to version {to}")) + `
887571
887571
  `);
887572
887572
  regenerateCompletionCache();
887573
887573
  break;
@@ -889761,7 +889761,7 @@ ${assistantAddendum}` : assistantAddendum;
889761
889761
  }
889762
889762
  }
889763
889763
  logForDiagnosticsNoPII("info", "started", {
889764
- version: "4.2.17-beta1",
889764
+ version: "4.2.17",
889765
889765
  is_native_binary: isInBundledMode()
889766
889766
  });
889767
889767
  registerCleanup(async () => {
@@ -890251,7 +890251,7 @@ Session: ${directConnectConfig.sessionId}`, "info");
890251
890251
  sshSession = await createSSHSession2({
890252
890252
  host: _pendingSSH.host,
890253
890253
  cwd: _pendingSSH.cwd,
890254
- localVersion: "4.2.17-beta1",
890254
+ localVersion: "4.2.17",
890255
890255
  permissionMode: _pendingSSH.permissionMode,
890256
890256
  dangerouslySkipPermissions: _pendingSSH.dangerouslySkipPermissions,
890257
890257
  extraCliArgs: _pendingSSH.extraCliArgs,
@@ -890720,7 +890720,7 @@ Usage: csc --remote "your task description"`, () => gracefulShutdown(1));
890720
890720
  pendingHookMessages
890721
890721
  }, renderAndRun);
890722
890722
  }
890723
- }).version("4.2.17-beta1 (CoStrict)", "-v, --version", cliDesc("cli.option.version", "Output the version number"));
890723
+ }).version("4.2.17 (CoStrict)", "-v, --version", cliDesc("cli.option.version", "Output the version number"));
890724
890724
  program2.addOption(new Option("-w, --worktree [name]", cliDesc("cli.option.worktree", "Create a new git worktree for this session (optionally specify a name)")).hideHelp());
890725
890725
  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());
890726
890726
  if (canUserConfigureAdvisor()) {
@@ -891441,10 +891441,10 @@ if (process.env.CLAUDE_CODE_REMOTE === "true") {
891441
891441
  async function main2() {
891442
891442
  const args = process.argv.slice(2);
891443
891443
  if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
891444
- const d7 = new Date("2026-07-23T00:14:33.873Z");
891444
+ const d7 = new Date("2026-07-23T09:15:44.097Z");
891445
891445
  const p2 = (n3) => String(n3).padStart(2, "0");
891446
891446
  const buildTime = `${d7.getFullYear()}/${p2(d7.getMonth() + 1)}/${p2(d7.getDate())} ${p2(d7.getHours())}:${p2(d7.getMinutes())}:${p2(d7.getSeconds())}`;
891447
- console.log(`${"4.2.17-beta1"} (commit: ${"c81cd5147"}, built: ${buildTime})`);
891447
+ console.log(`${"4.2.17"} (commit: ${"0496e1517"}, built: ${buildTime})`);
891448
891448
  return;
891449
891449
  }
891450
891450
  const { terminateBatchWorker: terminateBatchWorker2 } = await Promise.resolve().then(() => (init_spawn(), exports_spawn));
@@ -891595,5 +891595,5 @@ async function main2() {
891595
891595
  }
891596
891596
  main2();
891597
891597
 
891598
- //# debugId=05954A0CA29DE9D664756E2164756E21
891598
+ //# debugId=D22AC901ADF181BF64756E2164756E21
891599
891599
 
@@ -736,8 +736,8 @@ function getClientVersion() {
736
736
  if (cached)
737
737
  return cached;
738
738
  try {
739
- if ("4.2.17-beta1") {
740
- cached = "4.2.17-beta1";
739
+ if ("4.2.17") {
740
+ cached = "4.2.17";
741
741
  return cached;
742
742
  }
743
743
  } catch {}
@@ -138445,7 +138445,7 @@ var init_user = __esm(() => {
138445
138445
  deviceId,
138446
138446
  sessionId: getSessionId(),
138447
138447
  email: getEmail(),
138448
- appVersion: "4.2.17-beta1",
138448
+ appVersion: "4.2.17",
138449
138449
  platform: getHostPlatformForAnalytics(),
138450
138450
  organizationUuid,
138451
138451
  accountUuid,
@@ -138732,7 +138732,7 @@ var init_metadata = __esm(() => {
138732
138732
  "sed"
138733
138733
  ]);
138734
138734
  getVersionBase = memoize_default(() => {
138735
- const match = "4.2.17-beta1".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
138735
+ const match = "4.2.17".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
138736
138736
  return match ? match[0] : undefined;
138737
138737
  });
138738
138738
  buildEnvContext = memoize_default(async () => {
@@ -138772,9 +138772,9 @@ var init_metadata = __esm(() => {
138772
138772
  isGithubAction: isEnvTruthy(process.env.GITHUB_ACTIONS),
138773
138773
  isClaudeCodeAction: isEnvTruthy(process.env.CLAUDE_CODE_ACTION),
138774
138774
  isClaudeAiAuth: isClaudeAISubscriber(),
138775
- version: "4.2.17-beta1",
138775
+ version: "4.2.17",
138776
138776
  versionBase: getVersionBase(),
138777
- buildTime: "2026-07-23T00:14:36.438Z",
138777
+ buildTime: "2026-07-23T09:15:46.464Z",
138778
138778
  deploymentEnvironment: env4.detectDeploymentEnvironment(),
138779
138779
  ...isEnvTruthy(process.env.GITHUB_ACTIONS) && {
138780
138780
  githubEventName: process.env.GITHUB_EVENT_NAME,
@@ -143112,5 +143112,5 @@ export {
143112
143112
  isParentHeartbeatValid
143113
143113
  };
143114
143114
 
143115
- //# debugId=666CEE07EBCC55A264756E2164756E21
143115
+ //# debugId=AA48DD7E9D5D86CF64756E2164756E21
143116
143116
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@costrict/csc",
3
- "version": "4.2.17-beta1",
3
+ "version": "4.2.17",
4
4
  "description": "costrict",
5
5
  "type": "module",
6
6
  "author": "costrict",