@zju_han/claudex-cli 2.1.88 → 2.1.89

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.

Potentially problematic release.


This version of @zju_han/claudex-cli might be problematic. Click here for more details.

Files changed (2) hide show
  1. package/dist-ant/cli.js +108 -94
  2. package/package.json +8 -1
package/dist-ant/cli.js CHANGED
@@ -9956,6 +9956,22 @@ var init_startupProfiler = __esm(() => {
9956
9956
  }
9957
9957
  });
9958
9958
 
9959
+ // stubs/claude-for-chrome-mcp/index.js
9960
+ var exports_claude_for_chrome_mcp = {};
9961
+ __export(exports_claude_for_chrome_mcp, {
9962
+ createClaudeForChromeMcpServer: () => createClaudeForChromeMcpServer,
9963
+ BROWSER_TOOLS: () => BROWSER_TOOLS
9964
+ });
9965
+ function createClaudeForChromeMcpServer() {
9966
+ return {
9967
+ async connect() {}
9968
+ };
9969
+ }
9970
+ var BROWSER_TOOLS;
9971
+ var init_claude_for_chrome_mcp = __esm(() => {
9972
+ BROWSER_TOOLS = [];
9973
+ });
9974
+
9959
9975
  // node_modules/zod/v4/core/core.js
9960
9976
  function $constructor(name, initializer, params) {
9961
9977
  function init(inst, def) {
@@ -177958,7 +177974,7 @@ async function getOpenAICodexClientVersion() {
177958
177974
  cachedVersion = codexVersion;
177959
177975
  return cachedVersion;
177960
177976
  }
177961
- const macroVersion = typeof MACRO !== "undefined" ? "2.1.88".trim() : "";
177977
+ const macroVersion = typeof MACRO !== "undefined" ? "2.1.89".trim() : "";
177962
177978
  if (macroVersion) {
177963
177979
  cachedVersion = macroVersion;
177964
177980
  return cachedVersion;
@@ -181757,7 +181773,7 @@ var init_auth2 = __esm(() => {
181757
181773
 
181758
181774
  // src/utils/userAgent.ts
181759
181775
  function getClaudeCodeUserAgent() {
181760
- return `claude-code/${"2.1.88"}`;
181776
+ return `claude-code/${"2.1.89"}`;
181761
181777
  }
181762
181778
 
181763
181779
  // src/utils/workloadContext.ts
@@ -181779,7 +181795,7 @@ function getUserAgent() {
181779
181795
  const clientApp = process.env.CLAUDE_AGENT_SDK_CLIENT_APP ? `, client-app/${process.env.CLAUDE_AGENT_SDK_CLIENT_APP}` : "";
181780
181796
  const workload = getWorkload();
181781
181797
  const workloadSuffix = workload ? `, workload/${workload}` : "";
181782
- return `claude-cli/${"2.1.88"} (${process.env.USER_TYPE}, ${process.env.CLAUDE_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
181798
+ return `claude-cli/${"2.1.89"} (${process.env.USER_TYPE}, ${process.env.CLAUDE_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
181783
181799
  }
181784
181800
  function getMCPUserAgent() {
181785
181801
  const parts = [];
@@ -181793,7 +181809,7 @@ function getMCPUserAgent() {
181793
181809
  parts.push(`client-app/${process.env.CLAUDE_AGENT_SDK_CLIENT_APP}`);
181794
181810
  }
181795
181811
  const suffix = parts.length > 0 ? ` (${parts.join(", ")})` : "";
181796
- return `claude-code/${"2.1.88"}${suffix}`;
181812
+ return `claude-code/${"2.1.89"}${suffix}`;
181797
181813
  }
181798
181814
  function getWebFetchUserAgent() {
181799
181815
  return `Claude-User (${getClaudeCodeUserAgent()}; +https://support.anthropic.com/)`;
@@ -181931,7 +181947,7 @@ var init_user = __esm(() => {
181931
181947
  deviceId,
181932
181948
  sessionId: getSessionId(),
181933
181949
  email: getEmail(),
181934
- appVersion: "2.1.88",
181950
+ appVersion: "2.1.89",
181935
181951
  platform: getHostPlatformForAnalytics(),
181936
181952
  organizationUuid,
181937
181953
  accountUuid,
@@ -189628,7 +189644,7 @@ var init_metadata = __esm(() => {
189628
189644
  COMPOUND_OPERATOR_REGEX = /\s*(?:&&|\|\||[;|])\s*/;
189629
189645
  WHITESPACE_REGEX = /\s+/;
189630
189646
  getVersionBase = memoize_default(() => {
189631
- const match = "2.1.88".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
189647
+ const match = "2.1.89".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
189632
189648
  return match ? match[0] : undefined;
189633
189649
  });
189634
189650
  buildEnvContext = memoize_default(async () => {
@@ -189668,9 +189684,9 @@ var init_metadata = __esm(() => {
189668
189684
  isGithubAction: isEnvTruthy(process.env.GITHUB_ACTIONS),
189669
189685
  isClaudeCodeAction: isEnvTruthy(process.env.CLAUDE_CODE_ACTION),
189670
189686
  isClaudeAiAuth: isClaudeAISubscriber(),
189671
- version: "2.1.88",
189687
+ version: "2.1.89",
189672
189688
  versionBase: getVersionBase(),
189673
- buildTime: "2026-04-06T06:31:03.959Z",
189689
+ buildTime: "2026-04-06T06:45:30.672Z",
189674
189690
  deploymentEnvironment: env4.detectDeploymentEnvironment(),
189675
189691
  ...isEnvTruthy(process.env.GITHUB_ACTIONS) && {
189676
189692
  githubEventName: process.env.GITHUB_EVENT_NAME,
@@ -190338,7 +190354,7 @@ function initialize1PEventLogging() {
190338
190354
  const platform3 = getPlatform();
190339
190355
  const attributes = {
190340
190356
  [import_semantic_conventions.ATTR_SERVICE_NAME]: "claude-code",
190341
- [import_semantic_conventions.ATTR_SERVICE_VERSION]: "2.1.88"
190357
+ [import_semantic_conventions.ATTR_SERVICE_VERSION]: "2.1.89"
190342
190358
  };
190343
190359
  if (platform3 === "wsl") {
190344
190360
  const wslVersion = getWslVersion();
@@ -190365,7 +190381,7 @@ function initialize1PEventLogging() {
190365
190381
  })
190366
190382
  ]
190367
190383
  });
190368
- firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.anthropic.claude_code.events", "2.1.88");
190384
+ firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.anthropic.claude_code.events", "2.1.89");
190369
190385
  }
190370
190386
  async function reinitialize1PEventLoggingIfConfigChanged() {
190371
190387
  if (!is1PEventLoggingEnabled() || !firstPartyEventLoggerProvider) {
@@ -192253,7 +192269,7 @@ function getAttributionHeader(fingerprint) {
192253
192269
  if (!isAttributionHeaderEnabled()) {
192254
192270
  return "";
192255
192271
  }
192256
- const version6 = `${"2.1.88"}.${fingerprint}`;
192272
+ const version6 = `${"2.1.89"}.${fingerprint}`;
192257
192273
  const entrypoint = process.env.CLAUDE_CODE_ENTRYPOINT ?? "unknown";
192258
192274
  const cch = "";
192259
192275
  const workload = getWorkload();
@@ -302264,7 +302280,7 @@ function getTelemetryAttributes() {
302264
302280
  attributes["session.id"] = sessionId;
302265
302281
  }
302266
302282
  if (shouldIncludeAttribute("OTEL_METRICS_INCLUDE_VERSION")) {
302267
- attributes["app.version"] = "2.1.88";
302283
+ attributes["app.version"] = "2.1.89";
302268
302284
  }
302269
302285
  const oauthAccount = getOauthAccountInfo();
302270
302286
  if (oauthAccount) {
@@ -333945,7 +333961,7 @@ function getInstallationEnv() {
333945
333961
  return;
333946
333962
  }
333947
333963
  function getClaudeCodeVersion() {
333948
- return "2.1.88";
333964
+ return "2.1.89";
333949
333965
  }
333950
333966
  async function getInstalledVSCodeExtensionVersion(command) {
333951
333967
  const { stdout } = await execFileNoThrow(command, ["--list-extensions", "--show-versions"], {
@@ -339551,7 +339567,7 @@ async function setupSdkMcpClients(sdkMcpConfigs, sendMcpMessage) {
339551
339567
  const client5 = new Client({
339552
339568
  name: "claude-code",
339553
339569
  title: "Claude Code",
339554
- version: "2.1.88",
339570
+ version: "2.1.89",
339555
339571
  description: "Anthropic's agentic coding tool",
339556
339572
  websiteUrl: PRODUCT_URL
339557
339573
  }, {
@@ -339864,10 +339880,10 @@ var init_client9 = __esm(() => {
339864
339880
  logMCPDebug(name3, `claude.ai proxy transport created successfully`);
339865
339881
  } else if ((serverRef.type === "stdio" || !serverRef.type) && isClaudeInChromeMCPServer(name3)) {
339866
339882
  const { createChromeContext } = await Promise.resolve().then(() => (init_mcpServer(), exports_mcpServer));
339867
- const { createClaudeForChromeMcpServer } = await import("@ant/claude-for-chrome-mcp");
339883
+ const { createClaudeForChromeMcpServer: createClaudeForChromeMcpServer2 } = await Promise.resolve().then(() => (init_claude_for_chrome_mcp(), exports_claude_for_chrome_mcp));
339868
339884
  const { createLinkedTransportPair: createLinkedTransportPair2 } = await Promise.resolve().then(() => exports_InProcessTransport);
339869
339885
  const context3 = createChromeContext(serverRef.env);
339870
- inProcessServer = createClaudeForChromeMcpServer(context3);
339886
+ inProcessServer = createClaudeForChromeMcpServer2(context3);
339871
339887
  const [clientTransport, serverTransport] = createLinkedTransportPair2();
339872
339888
  await inProcessServer.connect(serverTransport);
339873
339889
  transport = clientTransport;
@@ -339905,7 +339921,7 @@ var init_client9 = __esm(() => {
339905
339921
  const client5 = new Client({
339906
339922
  name: "claude-code",
339907
339923
  title: "Claude Code",
339908
- version: "2.1.88",
339924
+ version: "2.1.89",
339909
339925
  description: "Anthropic's agentic coding tool",
339910
339926
  websiteUrl: PRODUCT_URL
339911
339927
  }, {
@@ -388239,7 +388255,7 @@ async function initializeBetaTracing(resource) {
388239
388255
  });
388240
388256
  import_api_logs.logs.setGlobalLoggerProvider(loggerProvider);
388241
388257
  setLoggerProvider(loggerProvider);
388242
- const eventLogger = import_api_logs.logs.getLogger("com.anthropic.claude_code.events", "2.1.88");
388258
+ const eventLogger = import_api_logs.logs.getLogger("com.anthropic.claude_code.events", "2.1.89");
388243
388259
  setEventLogger(eventLogger);
388244
388260
  process.on("beforeExit", async () => {
388245
388261
  await loggerProvider?.forceFlush();
@@ -388279,7 +388295,7 @@ async function initializeTelemetry() {
388279
388295
  const platform5 = getPlatform();
388280
388296
  const baseAttributes = {
388281
388297
  [import_semantic_conventions2.ATTR_SERVICE_NAME]: "claude-code",
388282
- [import_semantic_conventions2.ATTR_SERVICE_VERSION]: "2.1.88"
388298
+ [import_semantic_conventions2.ATTR_SERVICE_VERSION]: "2.1.89"
388283
388299
  };
388284
388300
  if (platform5 === "wsl") {
388285
388301
  const wslVersion = getWslVersion();
@@ -388324,7 +388340,7 @@ async function initializeTelemetry() {
388324
388340
  } catch {}
388325
388341
  };
388326
388342
  registerCleanup(shutdownTelemetry2);
388327
- return meterProvider2.getMeter("com.anthropic.claude_code", "2.1.88");
388343
+ return meterProvider2.getMeter("com.anthropic.claude_code", "2.1.89");
388328
388344
  }
388329
388345
  const meterProvider = new import_sdk_metrics2.MeterProvider({
388330
388346
  resource,
@@ -388344,7 +388360,7 @@ async function initializeTelemetry() {
388344
388360
  });
388345
388361
  import_api_logs.logs.setGlobalLoggerProvider(loggerProvider);
388346
388362
  setLoggerProvider(loggerProvider);
388347
- const eventLogger = import_api_logs.logs.getLogger("com.anthropic.claude_code.events", "2.1.88");
388363
+ const eventLogger = import_api_logs.logs.getLogger("com.anthropic.claude_code.events", "2.1.89");
388348
388364
  setEventLogger(eventLogger);
388349
388365
  logForDebugging("[3P telemetry] Event logger set successfully");
388350
388366
  process.on("beforeExit", async () => {
@@ -388406,7 +388422,7 @@ Current timeout: ${timeoutMs}ms
388406
388422
  }
388407
388423
  };
388408
388424
  registerCleanup(shutdownTelemetry);
388409
- return meterProvider.getMeter("com.anthropic.claude_code", "2.1.88");
388425
+ return meterProvider.getMeter("com.anthropic.claude_code", "2.1.89");
388410
388426
  }
388411
388427
  async function flushTelemetry() {
388412
388428
  const meterProvider = getMeterProvider();
@@ -389101,9 +389117,9 @@ async function assertMinVersion() {
389101
389117
  if (false) {}
389102
389118
  try {
389103
389119
  const versionConfig = await getDynamicConfig_BLOCKS_ON_INIT("tengu_version_config", { minVersion: "0.0.0" });
389104
- if (versionConfig.minVersion && lt("2.1.88", versionConfig.minVersion)) {
389120
+ if (versionConfig.minVersion && lt("2.1.89", versionConfig.minVersion)) {
389105
389121
  console.error(`
389106
- It looks like your version of Claude Code (${"2.1.88"}) needs an update.
389122
+ It looks like your version of Claude Code (${"2.1.89"}) needs an update.
389107
389123
  A newer version (${versionConfig.minVersion} or higher) is required to continue.
389108
389124
 
389109
389125
  To update, please run:
@@ -389319,7 +389335,7 @@ async function installGlobalPackage(specificVersion) {
389319
389335
  logError2(new AutoUpdaterError("Another process is currently installing an update"));
389320
389336
  logEvent("tengu_auto_updater_lock_contention", {
389321
389337
  pid: process.pid,
389322
- currentVersion: "2.1.88"
389338
+ currentVersion: "2.1.89"
389323
389339
  });
389324
389340
  return "in_progress";
389325
389341
  }
@@ -389328,7 +389344,7 @@ async function installGlobalPackage(specificVersion) {
389328
389344
  if (!env4.isRunningWithBun() && env4.isNpmFromWindowsPath()) {
389329
389345
  logError2(new Error("Windows NPM detected in WSL environment"));
389330
389346
  logEvent("tengu_auto_updater_windows_npm_in_wsl", {
389331
- currentVersion: "2.1.88"
389347
+ currentVersion: "2.1.89"
389332
389348
  });
389333
389349
  console.error(`
389334
389350
  Error: Windows NPM detected in WSL
@@ -389863,7 +389879,7 @@ function detectLinuxGlobPatternWarnings() {
389863
389879
  }
389864
389880
  async function getDoctorDiagnostic() {
389865
389881
  const installationType = await getCurrentInstallationType();
389866
- const version6 = typeof MACRO !== "undefined" ? "2.1.88" : "unknown";
389882
+ const version6 = typeof MACRO !== "undefined" ? "2.1.89" : "unknown";
389867
389883
  const installationPath = await getInstallationPath();
389868
389884
  const invokedBinary = getInvokedBinary();
389869
389885
  const multipleInstallations = await detectMultipleInstallations();
@@ -390798,8 +390814,8 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
390798
390814
  const maxVersion = await getMaxVersion();
390799
390815
  if (maxVersion && gt(version6, maxVersion)) {
390800
390816
  logForDebugging(`Native installer: maxVersion ${maxVersion} is set, capping update from ${version6} to ${maxVersion}`);
390801
- if (gte("2.1.88", maxVersion)) {
390802
- logForDebugging(`Native installer: current version ${"2.1.88"} is already at or above maxVersion ${maxVersion}, skipping update`);
390817
+ if (gte("2.1.89", maxVersion)) {
390818
+ logForDebugging(`Native installer: current version ${"2.1.89"} is already at or above maxVersion ${maxVersion}, skipping update`);
390803
390819
  logEvent("tengu_native_update_skipped_max_version", {
390804
390820
  latency_ms: Date.now() - startTime,
390805
390821
  max_version: maxVersion,
@@ -390810,7 +390826,7 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
390810
390826
  version6 = maxVersion;
390811
390827
  }
390812
390828
  }
390813
- if (!forceReinstall && version6 === "2.1.88" && await versionIsAvailable(version6) && await isPossibleClaudeBinary(executablePath)) {
390829
+ if (!forceReinstall && version6 === "2.1.89" && await versionIsAvailable(version6) && await isPossibleClaudeBinary(executablePath)) {
390814
390830
  logForDebugging(`Found ${version6} at ${executablePath}, skipping install`);
390815
390831
  logEvent("tengu_native_update_complete", {
390816
390832
  latency_ms: Date.now() - startTime,
@@ -477312,7 +477328,7 @@ function getAnthropicEnvMetadata() {
477312
477328
  function getBuildAgeMinutes() {
477313
477329
  if (false)
477314
477330
  ;
477315
- const buildTime = new Date("2026-04-06T06:31:03.959Z").getTime();
477331
+ const buildTime = new Date("2026-04-06T06:45:30.672Z").getTime();
477316
477332
  if (isNaN(buildTime))
477317
477333
  return;
477318
477334
  return Math.floor((Date.now() - buildTime) / 60000);
@@ -501095,7 +501111,7 @@ function Feedback({
501095
501111
  platform: env4.platform,
501096
501112
  gitRepo: envInfo.isGit,
501097
501113
  terminal: env4.terminal,
501098
- version: "2.1.88",
501114
+ version: "2.1.89",
501099
501115
  transcript: normalizeMessagesForAPI(messages),
501100
501116
  errors: sanitizedErrors,
501101
501117
  lastApiRequest: getLastAPIRequest(),
@@ -501287,7 +501303,7 @@ function Feedback({
501287
501303
  ", ",
501288
501304
  env4.terminal,
501289
501305
  ", v",
501290
- "2.1.88"
501306
+ "2.1.89"
501291
501307
  ]
501292
501308
  }, undefined, true, undefined, this)
501293
501309
  ]
@@ -501393,7 +501409,7 @@ ${sanitizedDescription}
501393
501409
  ` + `**Environment Info**
501394
501410
  ` + `- Platform: ${env4.platform}
501395
501411
  ` + `- Terminal: ${env4.terminal}
501396
- ` + `- Version: ${"2.1.88"}
501412
+ ` + `- Version: ${"2.1.89"}
501397
501413
  ` + `- Feedback ID: ${feedbackId}
501398
501414
  ` + `
501399
501415
  **Errors**
@@ -504524,7 +504540,7 @@ function buildPrimarySection() {
504524
504540
  }, undefined, false, undefined, this);
504525
504541
  return [{
504526
504542
  label: "Version",
504527
- value: "2.1.88"
504543
+ value: "2.1.89"
504528
504544
  }, {
504529
504545
  label: "Session name",
504530
504546
  value: nameValue
@@ -508012,7 +508028,7 @@ function Config({
508012
508028
  }
508013
508029
  }, undefined, false, undefined, this)
508014
508030
  }, undefined, false, undefined, this) : showSubmenu === "ChannelDowngrade" ? /* @__PURE__ */ jsx_dev_runtime179.jsxDEV(ChannelDowngradeDialog, {
508015
- currentVersion: "2.1.88",
508031
+ currentVersion: "2.1.89",
508016
508032
  onChoice: (choice) => {
508017
508033
  setShowSubmenu(null);
508018
508034
  setTabsHidden(false);
@@ -508024,7 +508040,7 @@ function Config({
508024
508040
  autoUpdatesChannel: "stable"
508025
508041
  };
508026
508042
  if (choice === "stay") {
508027
- newSettings.minimumVersion = "2.1.88";
508043
+ newSettings.minimumVersion = "2.1.89";
508028
508044
  }
508029
508045
  updateSettingsForSource("userSettings", newSettings);
508030
508046
  setSettingsData((prev_27) => ({
@@ -516117,7 +516133,7 @@ function HelpV2(t0) {
516117
516133
  let t6;
516118
516134
  if ($3[31] !== tabs) {
516119
516135
  t6 = /* @__PURE__ */ jsx_dev_runtime206.jsxDEV(Tabs, {
516120
- title: `Claude Code v${"2.1.88"}`,
516136
+ title: `Claude Code v${"2.1.89"}`,
516121
516137
  color: "professionalBlue",
516122
516138
  defaultTab: "general",
516123
516139
  children: tabs
@@ -540337,7 +540353,7 @@ function getAllReleaseNotes(changelogContent = getStoredChangelogFromMemory()) {
540337
540353
  return [];
540338
540354
  }
540339
540355
  }
540340
- async function checkForReleaseNotes(lastSeenVersion, currentVersion = "2.1.88") {
540356
+ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "2.1.89") {
540341
540357
  if (process.env.USER_TYPE === "ant") {
540342
540358
  const changelog = "";
540343
540359
  if (changelog) {
@@ -540364,7 +540380,7 @@ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "2.1.88")
540364
540380
  releaseNotes
540365
540381
  };
540366
540382
  }
540367
- function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "2.1.88") {
540383
+ function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "2.1.89") {
540368
540384
  if (process.env.USER_TYPE === "ant") {
540369
540385
  const changelog = "";
540370
540386
  if (changelog) {
@@ -541531,7 +541547,7 @@ function getRecentActivitySync() {
541531
541547
  return cachedActivity;
541532
541548
  }
541533
541549
  function getLogoDisplayData() {
541534
- const version6 = process.env.DEMO_VERSION ?? "2.1.88";
541550
+ const version6 = process.env.DEMO_VERSION ?? "2.1.89";
541535
541551
  const serverUrl = getDirectConnectServerUrl();
541536
541552
  const displayPath = process.env.DEMO_VERSION ? "/code/claude" : getDisplayPath2(getCwd());
541537
541553
  const cwd2 = serverUrl ? `${displayPath} in ${serverUrl.replace(/^https?:\/\//, "")}` : displayPath;
@@ -542612,7 +542628,7 @@ function LogoV2() {
542612
542628
  if ($3[2] === Symbol.for("react.memo_cache_sentinel")) {
542613
542629
  t2 = () => {
542614
542630
  const currentConfig = getGlobalConfig();
542615
- if (currentConfig.lastReleaseNotesSeen === "2.1.88") {
542631
+ if (currentConfig.lastReleaseNotesSeen === "2.1.89") {
542616
542632
  return;
542617
542633
  }
542618
542634
  saveGlobalConfig(_temp328);
@@ -543288,12 +543304,12 @@ function LogoV2() {
543288
543304
  return t41;
543289
543305
  }
543290
543306
  function _temp328(current) {
543291
- if (current.lastReleaseNotesSeen === "2.1.88") {
543307
+ if (current.lastReleaseNotesSeen === "2.1.89") {
543292
543308
  return current;
543293
543309
  }
543294
543310
  return {
543295
543311
  ...current,
543296
- lastReleaseNotesSeen: "2.1.88"
543312
+ lastReleaseNotesSeen: "2.1.89"
543297
543313
  };
543298
543314
  }
543299
543315
  function _temp241(s_0) {
@@ -569612,7 +569628,7 @@ async function captureMemoryDiagnostics(trigger, dumpNumber = 0) {
569612
569628
  smapsRollup,
569613
569629
  platform: process.platform,
569614
569630
  nodeVersion: process.version,
569615
- ccVersion: "2.1.88"
569631
+ ccVersion: "2.1.89"
569616
569632
  };
569617
569633
  }
569618
569634
  async function performHeapDump(trigger = "manual", dumpNumber = 0) {
@@ -570198,7 +570214,7 @@ var init_bridge_kick = __esm(() => {
570198
570214
  var call56 = async () => {
570199
570215
  return {
570200
570216
  type: "text",
570201
- value: `${"2.1.88"} (built ${"2026-04-06T06:31:03.959Z"})`
570217
+ value: `${"2.1.89"} (built ${"2026-04-06T06:45:30.672Z"})`
570202
570218
  };
570203
570219
  }, version6, version_default;
570204
570220
  var init_version = __esm(() => {
@@ -571526,7 +571542,6 @@ var init_setupPortable = __esm(() => {
571526
571542
  });
571527
571543
 
571528
571544
  // src/utils/claudeInChrome/setup.ts
571529
- import { BROWSER_TOOLS } from "@ant/claude-for-chrome-mcp";
571530
571545
  import { chmod as chmod10, mkdir as mkdir34, readFile as readFile48, writeFile as writeFile38 } from "fs/promises";
571531
571546
  import { homedir as homedir31 } from "os";
571532
571547
  import { join as join121 } from "path";
@@ -571749,6 +571764,7 @@ async function isChromeExtensionInstalled() {
571749
571764
  }
571750
571765
  var CHROME_EXTENSION_RECONNECT_URL = "https://clau.de/chrome/reconnect", NATIVE_HOST_IDENTIFIER = "com.anthropic.claude_code_browser_extension", NATIVE_HOST_MANIFEST_NAME, shouldAutoEnable = undefined;
571751
571766
  var init_setup2 = __esm(() => {
571767
+ init_claude_for_chrome_mcp();
571752
571768
  init_state();
571753
571769
  init_growthbook();
571754
571770
  init_config2();
@@ -579193,7 +579209,7 @@ function generateHtmlReport(data, insights) {
579193
579209
  </html>`;
579194
579210
  }
579195
579211
  function buildExportData(data, insights, facets, remoteStats) {
579196
- const version7 = typeof MACRO !== "undefined" ? "2.1.88" : "unknown";
579212
+ const version7 = typeof MACRO !== "undefined" ? "2.1.89" : "unknown";
579197
579213
  const remote_hosts_collected = remoteStats?.hosts.filter((h3) => h3.sessionCount > 0).map((h3) => h3.name);
579198
579214
  const facets_summary = {
579199
579215
  total: facets.size,
@@ -583306,7 +583322,7 @@ var init_sessionStorage = __esm(() => {
583306
583322
  init_settings2();
583307
583323
  init_slowOperations();
583308
583324
  init_uuid();
583309
- VERSION5 = typeof MACRO !== "undefined" ? "2.1.88" : "unknown";
583325
+ VERSION5 = typeof MACRO !== "undefined" ? "2.1.89" : "unknown";
583310
583326
  MAX_TOMBSTONE_REWRITE_BYTES = 50 * 1024 * 1024;
583311
583327
  SKIP_FIRST_PROMPT_PATTERN = /^(?:\s*<[a-z][\w-]*[\s>]|\[Request interrupted by user[^\]]*\])/;
583312
583328
  EPHEMERAL_PROGRESS_TYPES = new Set([
@@ -584511,7 +584527,7 @@ var init_filesystem = __esm(() => {
584511
584527
  });
584512
584528
  getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
584513
584529
  const nonce = randomBytes19(16).toString("hex");
584514
- return join131(getClaudeTempDir(), "bundled-skills", "2.1.88", nonce);
584530
+ return join131(getClaudeTempDir(), "bundled-skills", "2.1.89", nonce);
584515
584531
  });
584516
584532
  getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
584517
584533
  });
@@ -590698,7 +590714,7 @@ function computeFingerprint(messageText, version7) {
590698
590714
  }
590699
590715
  function computeFingerprintFromMessages(messages) {
590700
590716
  const firstMessageText = extractFirstMessageText(messages);
590701
- return computeFingerprint(firstMessageText, "2.1.88");
590717
+ return computeFingerprint(firstMessageText, "2.1.89");
590702
590718
  }
590703
590719
  var FINGERPRINT_SALT = "59cf53e54c78";
590704
590720
  var init_fingerprint = () => {};
@@ -592842,7 +592858,7 @@ async function sideQuery(opts) {
592842
592858
  betas.push(STRUCTURED_OUTPUTS_BETA_HEADER);
592843
592859
  }
592844
592860
  const messageText = extractFirstUserMessageText(messages);
592845
- const fingerprint = computeFingerprint(messageText, "2.1.88");
592861
+ const fingerprint = computeFingerprint(messageText, "2.1.89");
592846
592862
  const attributionHeader = getAttributionHeader(fingerprint);
592847
592863
  const systemBlocks = [
592848
592864
  attributionHeader ? { type: "text", text: attributionHeader } : null,
@@ -592926,9 +592942,6 @@ __export(exports_mcpServer, {
592926
592942
  runClaudeInChromeMcpServer: () => runClaudeInChromeMcpServer,
592927
592943
  createChromeContext: () => createChromeContext
592928
592944
  });
592929
- import {
592930
- createClaudeForChromeMcpServer
592931
- } from "@ant/claude-for-chrome-mcp";
592932
592945
  import { format as format4 } from "util";
592933
592946
  function isPermissionMode(raw) {
592934
592947
  return PERMISSION_MODES4.some((m3) => m3 === raw);
@@ -593090,6 +593103,7 @@ class DebugLogger {
593090
593103
  }
593091
593104
  var EXTENSION_DOWNLOAD_URL = "https://claude.ai/chrome", BUG_REPORT_URL = "https://github.com/anthropics/claude-code/issues/new?labels=bug,claude-in-chrome", SAFE_BRIDGE_STRING_KEYS, PERMISSION_MODES4;
593092
593105
  var init_mcpServer = __esm(() => {
593106
+ init_claude_for_chrome_mcp();
593093
593107
  init_stdio2();
593094
593108
  init_datadog();
593095
593109
  init_firstPartyEventLogger();
@@ -597679,7 +597693,7 @@ function buildSystemInitMessage(inputs) {
597679
597693
  slash_commands: inputs.commands.filter((c6) => c6.userInvocable !== false).map((c6) => c6.name),
597680
597694
  apiKeySource,
597681
597695
  betas: getSdkBetas(),
597682
- claude_code_version: "2.1.88",
597696
+ claude_code_version: "2.1.89",
597683
597697
  output_style: outputStyle2,
597684
597698
  agents: inputs.agents.map((agent) => agent.agentType),
597685
597699
  skills: inputs.skills.filter((s2) => s2.userInvocable !== false).map((skill) => skill.name),
@@ -612308,7 +612322,7 @@ var init_useVoiceEnabled = __esm(() => {
612308
612322
  function getSemverPart(version7) {
612309
612323
  return `${import_semver13.major(version7, { loose: true })}.${import_semver13.minor(version7, { loose: true })}.${import_semver13.patch(version7, { loose: true })}`;
612310
612324
  }
612311
- function useUpdateNotification(updatedVersion, initialVersion = "2.1.88") {
612325
+ function useUpdateNotification(updatedVersion, initialVersion = "2.1.89") {
612312
612326
  const [lastNotifiedSemver, setLastNotifiedSemver] = import_react226.useState(() => getSemverPart(initialVersion));
612313
612327
  if (!updatedVersion) {
612314
612328
  return null;
@@ -612348,7 +612362,7 @@ function AutoUpdater({
612348
612362
  return;
612349
612363
  }
612350
612364
  if (false) {}
612351
- const currentVersion = "2.1.88";
612365
+ const currentVersion = "2.1.89";
612352
612366
  const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
612353
612367
  let latestVersion = await getLatestVersion(channel);
612354
612368
  const isDisabled = isAutoUpdaterDisabled();
@@ -612561,12 +612575,12 @@ function NativeAutoUpdater({
612561
612575
  logEvent("tengu_native_auto_updater_start", {});
612562
612576
  try {
612563
612577
  const maxVersion = await getMaxVersion();
612564
- if (maxVersion && gt("2.1.88", maxVersion)) {
612578
+ if (maxVersion && gt("2.1.89", maxVersion)) {
612565
612579
  const msg = await getMaxVersionMessage();
612566
612580
  setMaxVersionIssue(msg ?? "affects your version");
612567
612581
  }
612568
612582
  const result = await installLatest(channel);
612569
- const currentVersion = "2.1.88";
612583
+ const currentVersion = "2.1.89";
612570
612584
  const latencyMs = Date.now() - startTime;
612571
612585
  if (result.lockFailed) {
612572
612586
  logEvent("tengu_native_auto_updater_lock_contention", {
@@ -612703,17 +612717,17 @@ function PackageManagerAutoUpdater(t0) {
612703
612717
  const maxVersion = await getMaxVersion();
612704
612718
  if (maxVersion && latest && gt(latest, maxVersion)) {
612705
612719
  logForDebugging(`PackageManagerAutoUpdater: maxVersion ${maxVersion} is set, capping update from ${latest} to ${maxVersion}`);
612706
- if (gte("2.1.88", maxVersion)) {
612707
- logForDebugging(`PackageManagerAutoUpdater: current version ${"2.1.88"} is already at or above maxVersion ${maxVersion}, skipping update`);
612720
+ if (gte("2.1.89", maxVersion)) {
612721
+ logForDebugging(`PackageManagerAutoUpdater: current version ${"2.1.89"} is already at or above maxVersion ${maxVersion}, skipping update`);
612708
612722
  setUpdateAvailable(false);
612709
612723
  return;
612710
612724
  }
612711
612725
  latest = maxVersion;
612712
612726
  }
612713
- const hasUpdate = latest && !gte("2.1.88", latest) && !shouldSkipVersion(latest);
612727
+ const hasUpdate = latest && !gte("2.1.89", latest) && !shouldSkipVersion(latest);
612714
612728
  setUpdateAvailable(!!hasUpdate);
612715
612729
  if (hasUpdate) {
612716
- logForDebugging(`PackageManagerAutoUpdater: Update available ${"2.1.88"} -> ${latest}`);
612730
+ logForDebugging(`PackageManagerAutoUpdater: Update available ${"2.1.89"} -> ${latest}`);
612717
612731
  }
612718
612732
  };
612719
612733
  $3[0] = t1;
@@ -612747,7 +612761,7 @@ function PackageManagerAutoUpdater(t0) {
612747
612761
  wrap: "truncate",
612748
612762
  children: [
612749
612763
  "currentVersion: ",
612750
- "2.1.88"
612764
+ "2.1.89"
612751
612765
  ]
612752
612766
  }, undefined, true, undefined, this);
612753
612767
  $3[3] = verbose;
@@ -620513,7 +620527,7 @@ function buildStatusLineCommandInput(permissionMode, exceeds200kTokens, settings
620513
620527
  project_dir: getOriginalCwd(),
620514
620528
  added_dirs: addedDirs
620515
620529
  },
620516
- version: "2.1.88",
620530
+ version: "2.1.89",
620517
620531
  output_style: {
620518
620532
  name: outputStyleName
620519
620533
  },
@@ -632005,7 +632019,7 @@ async function submitTranscriptShare(messages, trigger, appearanceId) {
632005
632019
  } catch {}
632006
632020
  const data = {
632007
632021
  trigger,
632008
- version: "2.1.88",
632022
+ version: "2.1.89",
632009
632023
  platform: process.platform,
632010
632024
  transcript,
632011
632025
  subagentTranscripts: Object.keys(subagentTranscripts).length > 0 ? subagentTranscripts : undefined,
@@ -643951,7 +643965,7 @@ function WelcomeV2() {
643951
643965
  dimColor: true,
643952
643966
  children: [
643953
643967
  "v",
643954
- "2.1.88"
643968
+ "2.1.89"
643955
643969
  ]
643956
643970
  }, undefined, true, undefined, this)
643957
643971
  ]
@@ -645307,7 +645321,7 @@ function completeOnboarding() {
645307
645321
  saveGlobalConfig((current) => ({
645308
645322
  ...current,
645309
645323
  hasCompletedOnboarding: true,
645310
- lastOnboardingVersion: "2.1.88"
645324
+ lastOnboardingVersion: "2.1.89"
645311
645325
  }));
645312
645326
  }
645313
645327
  function showDialog(root2, renderer) {
@@ -647210,7 +647224,6 @@ var init_batch = __esm(() => {
647210
647224
  });
647211
647225
 
647212
647226
  // src/skills/bundled/claudeInChrome.ts
647213
- import { BROWSER_TOOLS as BROWSER_TOOLS2 } from "@ant/claude-for-chrome-mcp";
647214
647227
  function registerClaudeInChromeSkill() {
647215
647228
  registerBundledSkill({
647216
647229
  name: "claude-in-chrome",
@@ -647238,9 +647251,10 @@ Now that this skill is invoked, you have access to Chrome browser automation too
647238
647251
  IMPORTANT: Start by calling mcp__claude-in-chrome__tabs_context_mcp to get information about the user's current browser tabs.
647239
647252
  `;
647240
647253
  var init_claudeInChrome = __esm(() => {
647254
+ init_claude_for_chrome_mcp();
647241
647255
  init_setup2();
647242
647256
  init_bundledSkills();
647243
- CLAUDE_IN_CHROME_MCP_TOOLS = BROWSER_TOOLS2.map((tool) => `mcp__claude-in-chrome__${tool.name}`);
647257
+ CLAUDE_IN_CHROME_MCP_TOOLS = BROWSER_TOOLS.map((tool) => `mcp__claude-in-chrome__${tool.name}`);
647244
647258
  });
647245
647259
 
647246
647260
  // src/skills/bundled/debug.ts
@@ -649803,7 +649817,7 @@ function appendToLog(path25, message) {
649803
649817
  cwd: getFsImplementation().cwd(),
649804
649818
  userType: process.env.USER_TYPE,
649805
649819
  sessionId: getSessionId(),
649806
- version: "2.1.88"
649820
+ version: "2.1.89"
649807
649821
  };
649808
649822
  getLogWriter(path25).write(messageWithTimestamp);
649809
649823
  }
@@ -653788,8 +653802,8 @@ async function getEnvLessBridgeConfig() {
653788
653802
  }
653789
653803
  async function checkEnvLessBridgeMinVersion() {
653790
653804
  const cfg = await getEnvLessBridgeConfig();
653791
- if (cfg.min_version && lt("2.1.88", cfg.min_version)) {
653792
- return `Your version of Claude Code (${"2.1.88"}) is too old for Remote Control.
653805
+ if (cfg.min_version && lt("2.1.89", cfg.min_version)) {
653806
+ return `Your version of Claude Code (${"2.1.89"}) is too old for Remote Control.
653793
653807
  Version ${cfg.min_version} or higher is required. Run \`claude update\` to update.`;
653794
653808
  }
653795
653809
  return null;
@@ -654263,7 +654277,7 @@ async function initBridgeCore(params) {
654263
654277
  const rawApi = createBridgeApiClient({
654264
654278
  baseUrl,
654265
654279
  getAccessToken,
654266
- runnerVersion: "2.1.88",
654280
+ runnerVersion: "2.1.89",
654267
654281
  onDebug: logForDebugging,
654268
654282
  onAuth401,
654269
654283
  getTrustedDeviceToken
@@ -659927,7 +659941,7 @@ async function startMCPServer(cwd3, debug4, verbose) {
659927
659941
  setCwd(cwd3);
659928
659942
  const server = new Server({
659929
659943
  name: "claude/tengu",
659930
- version: "2.1.88"
659944
+ version: "2.1.89"
659931
659945
  }, {
659932
659946
  capabilities: {
659933
659947
  tools: {}
@@ -661690,7 +661704,7 @@ async function update() {
661690
661704
  return;
661691
661705
  }
661692
661706
  logEvent("tengu_update_check", {});
661693
- writeToStdout(`Current version: ${"2.1.88"}
661707
+ writeToStdout(`Current version: ${"2.1.89"}
661694
661708
  `);
661695
661709
  const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
661696
661710
  writeToStdout(`Checking for updates to ${channel} version...
@@ -661765,8 +661779,8 @@ async function update() {
661765
661779
  writeToStdout(`Claude is managed by Homebrew.
661766
661780
  `);
661767
661781
  const latest = await getLatestVersion(channel);
661768
- if (latest && !gte("2.1.88", latest)) {
661769
- writeToStdout(`Update available: ${"2.1.88"} → ${latest}
661782
+ if (latest && !gte("2.1.89", latest)) {
661783
+ writeToStdout(`Update available: ${"2.1.89"} → ${latest}
661770
661784
  `);
661771
661785
  writeToStdout(`
661772
661786
  `);
@@ -661782,8 +661796,8 @@ async function update() {
661782
661796
  writeToStdout(`Claude is managed by winget.
661783
661797
  `);
661784
661798
  const latest = await getLatestVersion(channel);
661785
- if (latest && !gte("2.1.88", latest)) {
661786
- writeToStdout(`Update available: ${"2.1.88"} → ${latest}
661799
+ if (latest && !gte("2.1.89", latest)) {
661800
+ writeToStdout(`Update available: ${"2.1.89"} → ${latest}
661787
661801
  `);
661788
661802
  writeToStdout(`
661789
661803
  `);
@@ -661799,8 +661813,8 @@ async function update() {
661799
661813
  writeToStdout(`Claude is managed by apk.
661800
661814
  `);
661801
661815
  const latest = await getLatestVersion(channel);
661802
- if (latest && !gte("2.1.88", latest)) {
661803
- writeToStdout(`Update available: ${"2.1.88"} → ${latest}
661816
+ if (latest && !gte("2.1.89", latest)) {
661817
+ writeToStdout(`Update available: ${"2.1.89"} → ${latest}
661804
661818
  `);
661805
661819
  writeToStdout(`
661806
661820
  `);
@@ -661865,11 +661879,11 @@ async function update() {
661865
661879
  `);
661866
661880
  await gracefulShutdown(1);
661867
661881
  }
661868
- if (result.latestVersion === "2.1.88") {
661869
- writeToStdout(source_default.green(`${BRAND_NAME} is up to date (${"2.1.88"})`) + `
661882
+ if (result.latestVersion === "2.1.89") {
661883
+ writeToStdout(source_default.green(`${BRAND_NAME} is up to date (${"2.1.89"})`) + `
661870
661884
  `);
661871
661885
  } else {
661872
- writeToStdout(source_default.green(`Successfully updated from ${"2.1.88"} to version ${result.latestVersion}`) + `
661886
+ writeToStdout(source_default.green(`Successfully updated from ${"2.1.89"} to version ${result.latestVersion}`) + `
661873
661887
  `);
661874
661888
  await regenerateCompletionCache();
661875
661889
  }
@@ -661929,12 +661943,12 @@ async function update() {
661929
661943
  `);
661930
661944
  await gracefulShutdown(1);
661931
661945
  }
661932
- if (latestVersion === "2.1.88") {
661933
- writeToStdout(source_default.green(`${BRAND_NAME} is up to date (${"2.1.88"})`) + `
661946
+ if (latestVersion === "2.1.89") {
661947
+ writeToStdout(source_default.green(`${BRAND_NAME} is up to date (${"2.1.89"})`) + `
661934
661948
  `);
661935
661949
  await gracefulShutdown(0);
661936
661950
  }
661937
- writeToStdout(`New version available: ${latestVersion} (current: ${"2.1.88"})
661951
+ writeToStdout(`New version available: ${latestVersion} (current: ${"2.1.89"})
661938
661952
  `);
661939
661953
  writeToStdout(`Installing update...
661940
661954
  `);
@@ -661979,7 +661993,7 @@ async function update() {
661979
661993
  logForDebugging(`update: Installation status: ${status2}`);
661980
661994
  switch (status2) {
661981
661995
  case "success":
661982
- writeToStdout(source_default.green(`Successfully updated from ${"2.1.88"} to version ${latestVersion}`) + `
661996
+ writeToStdout(source_default.green(`Successfully updated from ${"2.1.89"} to version ${latestVersion}`) + `
661983
661997
  `);
661984
661998
  await regenerateCompletionCache();
661985
661999
  break;
@@ -663286,7 +663300,7 @@ ${customInstructions}` : customInstructions;
663286
663300
  }
663287
663301
  }
663288
663302
  logForDiagnosticsNoPII("info", "started", {
663289
- version: "2.1.88",
663303
+ version: "2.1.89",
663290
663304
  is_native_binary: isInBundledMode()
663291
663305
  });
663292
663306
  registerCleanup(async () => {
@@ -664070,7 +664084,7 @@ Usage: claude --remote "your task description"`, () => gracefulShutdown(1));
664070
664084
  pendingHookMessages
664071
664085
  }, renderAndRun);
664072
664086
  }
664073
- }).version("2.1.88 (Claude Code)", "-v, --version", "Output the version number");
664087
+ }).version("2.1.89 (Claude Code)", "-v, --version", "Output the version number");
664074
664088
  program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
664075
664089
  program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
664076
664090
  if (canUserConfigureAdvisor()) {
@@ -664614,7 +664628,7 @@ if (false) {}
664614
664628
  async function main2() {
664615
664629
  const args = process.argv.slice(2);
664616
664630
  if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
664617
- console.log(`${"2.1.88"} (Claude Code)`);
664631
+ console.log(`${"2.1.89"} (Claude Code)`);
664618
664632
  return;
664619
664633
  }
664620
664634
  const {
@@ -664698,5 +664712,5 @@ async function main2() {
664698
664712
  }
664699
664713
  main2();
664700
664714
 
664701
- //# debugId=BBCFC4C95FC2E13F64756E2164756E21
664715
+ //# debugId=E151AC66B06DE2CD64756E2164756E21
664702
664716
  //# sourceMappingURL=cli.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zju_han/claudex-cli",
3
- "version": "2.1.88",
3
+ "version": "2.1.89",
4
4
  "description": "ClaudeX is a local coding agent CLI powered by OpenAI/Codex-compatible Responses models.",
5
5
  "type": "module",
6
6
  "license": "SEE LICENSE IN README.md",
@@ -16,6 +16,13 @@
16
16
  "engines": {
17
17
  "node": ">=18.0.0"
18
18
  },
19
+ "dependencies": {
20
+ "@anthropic-ai/mcpb": "^2.1.2",
21
+ "@anthropic-ai/sandbox-runtime": "^0.0.44"
22
+ },
23
+ "optionalDependencies": {
24
+ "modifiers-napi": "0.0.1"
25
+ },
19
26
  "bin": {
20
27
  "claudex": "cli.js"
21
28
  },