localclawd 1.1.10 → 1.1.11

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.
Files changed (2) hide show
  1. package/dist/cli.mjs +109 -99
  2. package/package.json +1 -1
package/dist/cli.mjs CHANGED
@@ -89253,7 +89253,7 @@ var init_isEqual = __esm(() => {
89253
89253
 
89254
89254
  // src/utils/userAgent.ts
89255
89255
  function getClaudeCodeUserAgent() {
89256
- return `claude-code/${"1.1.10"}`;
89256
+ return `claude-code/${"1.1.11"}`;
89257
89257
  }
89258
89258
 
89259
89259
  // src/utils/workloadContext.ts
@@ -89275,7 +89275,7 @@ function getUserAgent() {
89275
89275
  const clientApp = process.env.CLAUDE_AGENT_SDK_CLIENT_APP ? `, client-app/${process.env.CLAUDE_AGENT_SDK_CLIENT_APP}` : "";
89276
89276
  const workload = getWorkload();
89277
89277
  const workloadSuffix = workload ? `, workload/${workload}` : "";
89278
- return `claude-cli/${"1.1.10"} (${process.env.USER_TYPE}, ${process.env.CLAUDE_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
89278
+ return `claude-cli/${"1.1.11"} (${process.env.USER_TYPE}, ${process.env.CLAUDE_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
89279
89279
  }
89280
89280
  function getMCPUserAgent() {
89281
89281
  const parts = [];
@@ -89289,7 +89289,7 @@ function getMCPUserAgent() {
89289
89289
  parts.push(`client-app/${process.env.CLAUDE_AGENT_SDK_CLIENT_APP}`);
89290
89290
  }
89291
89291
  const suffix = parts.length > 0 ? ` (${parts.join(", ")})` : "";
89292
- return `claude-code/${"1.1.10"}${suffix}`;
89292
+ return `claude-code/${"1.1.11"}${suffix}`;
89293
89293
  }
89294
89294
  function getWebFetchUserAgent() {
89295
89295
  return `Claude-User (${getClaudeCodeUserAgent()}; +https://support.anthropic.com/)`;
@@ -99198,7 +99198,7 @@ function getAttributionHeader(fingerprint) {
99198
99198
  if (!isAttributionHeaderEnabled()) {
99199
99199
  return "";
99200
99200
  }
99201
- const version = `${"1.1.10"}.${fingerprint}`;
99201
+ const version = `${"1.1.11"}.${fingerprint}`;
99202
99202
  const entrypoint = process.env.CLAUDE_CODE_ENTRYPOINT ?? "unknown";
99203
99203
  const cch = "";
99204
99204
  const workload = getWorkload();
@@ -132745,7 +132745,7 @@ var init_metadata = __esm(() => {
132745
132745
  COMPOUND_OPERATOR_REGEX = /\s*(?:&&|\|\||[;|])\s*/;
132746
132746
  WHITESPACE_REGEX = /\s+/;
132747
132747
  getVersionBase = memoize_default(() => {
132748
- const match = "1.1.10".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
132748
+ const match = "1.1.11".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
132749
132749
  return match ? match[0] : undefined;
132750
132750
  });
132751
132751
  buildEnvContext = memoize_default(async () => {
@@ -132785,9 +132785,9 @@ var init_metadata = __esm(() => {
132785
132785
  isGithubAction: isEnvTruthy(process.env.GITHUB_ACTIONS),
132786
132786
  isClaudeCodeAction: isEnvTruthy(process.env.CLAUDE_CODE_ACTION),
132787
132787
  isClaudeAiAuth: isClaudeAISubscriber(),
132788
- version: "1.1.10",
132788
+ version: "1.1.11",
132789
132789
  versionBase: getVersionBase(),
132790
- buildTime: "2026-04-07T13:57:33.526Z",
132790
+ buildTime: "2026-04-07T15:28:04.082Z",
132791
132791
  deploymentEnvironment: env4.detectDeploymentEnvironment(),
132792
132792
  ...isEnvTruthy(process.env.GITHUB_ACTIONS) && {
132793
132793
  githubEventName: process.env.GITHUB_EVENT_NAME,
@@ -197374,7 +197374,7 @@ function getTelemetryAttributes() {
197374
197374
  attributes["session.id"] = sessionId;
197375
197375
  }
197376
197376
  if (shouldIncludeAttribute("OTEL_METRICS_INCLUDE_VERSION")) {
197377
- attributes["app.version"] = "1.1.10";
197377
+ attributes["app.version"] = "1.1.11";
197378
197378
  }
197379
197379
  const oauthAccount = getOauthAccountInfo();
197380
197380
  if (oauthAccount) {
@@ -229435,7 +229435,7 @@ function getInstallationEnv() {
229435
229435
  return;
229436
229436
  }
229437
229437
  function getClaudeCodeVersion() {
229438
- return "1.1.10";
229438
+ return "1.1.11";
229439
229439
  }
229440
229440
  async function getInstalledVSCodeExtensionVersion(command) {
229441
229441
  const { stdout } = await execFileNoThrow(command, ["--list-extensions", "--show-versions"], {
@@ -235037,7 +235037,7 @@ async function setupSdkMcpClients(sdkMcpConfigs, sendMcpMessage) {
235037
235037
  const client4 = new Client({
235038
235038
  name: "claude-code",
235039
235039
  title: "Claude Code",
235040
- version: "1.1.10",
235040
+ version: "1.1.11",
235041
235041
  description: "Anthropic's agentic coding tool",
235042
235042
  websiteUrl: PRODUCT_URL
235043
235043
  }, {
@@ -235390,7 +235390,7 @@ var init_client9 = __esm(() => {
235390
235390
  const client4 = new Client({
235391
235391
  name: "claude-code",
235392
235392
  title: "Claude Code",
235393
- version: "1.1.10",
235393
+ version: "1.1.11",
235394
235394
  description: "Anthropic's agentic coding tool",
235395
235395
  websiteUrl: PRODUCT_URL
235396
235396
  }, {
@@ -258581,7 +258581,7 @@ var init_user = __esm(() => {
258581
258581
  deviceId,
258582
258582
  sessionId: getSessionId(),
258583
258583
  email: getEmail(),
258584
- appVersion: "1.1.10",
258584
+ appVersion: "1.1.11",
258585
258585
  platform: getHostPlatformForAnalytics(),
258586
258586
  organizationUuid,
258587
258587
  accountUuid,
@@ -259905,7 +259905,7 @@ async function initializeBetaTracing(resource) {
259905
259905
  });
259906
259906
  logs.setGlobalLoggerProvider(loggerProvider);
259907
259907
  setLoggerProvider(loggerProvider);
259908
- const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "1.1.10");
259908
+ const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "1.1.11");
259909
259909
  setEventLogger(eventLogger);
259910
259910
  process.on("beforeExit", async () => {
259911
259911
  await loggerProvider?.forceFlush();
@@ -259945,7 +259945,7 @@ async function initializeTelemetry() {
259945
259945
  const platform3 = getPlatform();
259946
259946
  const baseAttributes = {
259947
259947
  [ATTR_SERVICE_NAME5]: "claude-code",
259948
- [ATTR_SERVICE_VERSION5]: "1.1.10"
259948
+ [ATTR_SERVICE_VERSION5]: "1.1.11"
259949
259949
  };
259950
259950
  if (platform3 === "wsl") {
259951
259951
  const wslVersion = getWslVersion();
@@ -259990,7 +259990,7 @@ async function initializeTelemetry() {
259990
259990
  } catch {}
259991
259991
  };
259992
259992
  registerCleanup(shutdownTelemetry2);
259993
- return meterProvider2.getMeter("com.anthropic.claude_code", "1.1.10");
259993
+ return meterProvider2.getMeter("com.anthropic.claude_code", "1.1.11");
259994
259994
  }
259995
259995
  const meterProvider = new MeterProvider5({
259996
259996
  resource,
@@ -260010,7 +260010,7 @@ async function initializeTelemetry() {
260010
260010
  });
260011
260011
  logs.setGlobalLoggerProvider(loggerProvider);
260012
260012
  setLoggerProvider(loggerProvider);
260013
- const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "1.1.10");
260013
+ const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "1.1.11");
260014
260014
  setEventLogger(eventLogger);
260015
260015
  logForDebugging("[3P telemetry] Event logger set successfully");
260016
260016
  process.on("beforeExit", async () => {
@@ -260072,7 +260072,7 @@ Current timeout: ${timeoutMs}ms
260072
260072
  }
260073
260073
  };
260074
260074
  registerCleanup(shutdownTelemetry);
260075
- return meterProvider.getMeter("com.anthropic.claude_code", "1.1.10");
260075
+ return meterProvider.getMeter("com.anthropic.claude_code", "1.1.11");
260076
260076
  }
260077
260077
  async function flushTelemetry() {
260078
260078
  const meterProvider = getMeterProvider();
@@ -261295,7 +261295,7 @@ function detectLinuxGlobPatternWarnings() {
261295
261295
  }
261296
261296
  async function getDoctorDiagnostic() {
261297
261297
  const installationType = await getCurrentInstallationType();
261298
- const version = typeof MACRO !== "undefined" ? "1.1.10" : "unknown";
261298
+ const version = typeof MACRO !== "undefined" ? "1.1.11" : "unknown";
261299
261299
  const installationPath = await getInstallationPath();
261300
261300
  const invokedBinary = getInvokedBinary();
261301
261301
  const multipleInstallations = await detectMultipleInstallations();
@@ -262236,8 +262236,8 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
262236
262236
  const maxVersion = await getMaxVersion();
262237
262237
  if (maxVersion && gt(version, maxVersion)) {
262238
262238
  logForDebugging(`Native installer: maxVersion ${maxVersion} is set, capping update from ${version} to ${maxVersion}`);
262239
- if (gte("1.1.10", maxVersion)) {
262240
- logForDebugging(`Native installer: current version ${"1.1.10"} is already at or above maxVersion ${maxVersion}, skipping update`);
262239
+ if (gte("1.1.11", maxVersion)) {
262240
+ logForDebugging(`Native installer: current version ${"1.1.11"} is already at or above maxVersion ${maxVersion}, skipping update`);
262241
262241
  logEvent("tengu_native_update_skipped_max_version", {
262242
262242
  latency_ms: Date.now() - startTime,
262243
262243
  max_version: maxVersion,
@@ -262248,7 +262248,7 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
262248
262248
  version = maxVersion;
262249
262249
  }
262250
262250
  }
262251
- if (!forceReinstall && version === "1.1.10" && await versionIsAvailable(version) && await isPossibleLocalClawdBinary(executablePath)) {
262251
+ if (!forceReinstall && version === "1.1.11" && await versionIsAvailable(version) && await isPossibleLocalClawdBinary(executablePath)) {
262252
262252
  logForDebugging(`Found ${version} at ${executablePath}, skipping install`);
262253
262253
  logEvent("tengu_native_update_complete", {
262254
262254
  latency_ms: Date.now() - startTime,
@@ -334468,7 +334468,7 @@ function getAnthropicEnvMetadata() {
334468
334468
  function getBuildAgeMinutes() {
334469
334469
  if (false)
334470
334470
  ;
334471
- const buildTime = new Date("2026-04-07T13:57:33.526Z").getTime();
334471
+ const buildTime = new Date("2026-04-07T15:28:04.082Z").getTime();
334472
334472
  if (isNaN(buildTime))
334473
334473
  return;
334474
334474
  return Math.floor((Date.now() - buildTime) / 60000);
@@ -340532,10 +340532,10 @@ Resume standard operation:
340532
340532
  const fullChain = parseCommandChain2(`/thinkharder ${args ?? ""}`);
340533
340533
  if (fullChain && fullChain.length > 1) {
340534
340534
  const validation = validateCommandChain2(fullChain);
340535
- if (!validation.ok) {
340536
- const handleReady = () => onDone(chainWarning2(validation.reason));
340535
+ if (validation.ok === false) {
340536
+ const msg = chainWarning2(validation.reason);
340537
340537
  return /* @__PURE__ */ jsx_dev_runtime152.jsxDEV(ThinkHarderBanner, {
340538
- onReady: handleReady
340538
+ onReady: () => onDone(msg)
340539
340539
  }, undefined, false, undefined, this);
340540
340540
  }
340541
340541
  }
@@ -358534,7 +358534,7 @@ function Feedback({
358534
358534
  platform: env4.platform,
358535
358535
  gitRepo: envInfo.isGit,
358536
358536
  terminal: env4.terminal,
358537
- version: "1.1.10",
358537
+ version: "1.1.11",
358538
358538
  transcript: normalizeMessagesForAPI(messages),
358539
358539
  errors: sanitizedErrors,
358540
358540
  lastApiRequest: getLastAPIRequest(),
@@ -358726,7 +358726,7 @@ function Feedback({
358726
358726
  ", ",
358727
358727
  env4.terminal,
358728
358728
  ", v",
358729
- "1.1.10"
358729
+ "1.1.11"
358730
358730
  ]
358731
358731
  }, undefined, true, undefined, this)
358732
358732
  ]
@@ -358832,7 +358832,7 @@ ${sanitizedDescription}
358832
358832
  ` + `**Environment Info**
358833
358833
  ` + `- Platform: ${env4.platform}
358834
358834
  ` + `- Terminal: ${env4.terminal}
358835
- ` + `- Version: ${"1.1.10"}
358835
+ ` + `- Version: ${"1.1.11"}
358836
358836
  ` + `- Feedback ID: ${feedbackId}
358837
358837
  ` + `
358838
358838
  **Errors**
@@ -361945,7 +361945,7 @@ function buildPrimarySection() {
361945
361945
  }, undefined, false, undefined, this);
361946
361946
  return [{
361947
361947
  label: "Version",
361948
- value: "1.1.10"
361948
+ value: "1.1.11"
361949
361949
  }, {
361950
361950
  label: "Session name",
361951
361951
  value: nameValue
@@ -363516,7 +363516,7 @@ function SimpleMenu({ items, isActive, onSelect, onCancel }) {
363516
363516
  const VISIBLE = Math.min(7, items.length);
363517
363517
  const [focusIdx, setFocusIdx] = import_react100.useState(0);
363518
363518
  const [fromIdx, setFromIdx] = import_react100.useState(0);
363519
- use_input_default((_input, key) => {
363519
+ use_input_default((input, key) => {
363520
363520
  if (key.upArrow) {
363521
363521
  setFocusIdx((prev) => {
363522
363522
  const next = Math.max(0, prev - 1);
@@ -363535,7 +363535,7 @@ function SimpleMenu({ items, isActive, onSelect, onCancel }) {
363535
363535
  const item = items[focusIdx];
363536
363536
  if (item)
363537
363537
  onSelect(item.value);
363538
- } else if (key.escape) {
363538
+ } else if (key.escape || key.ctrl && input === "c") {
363539
363539
  onCancel?.();
363540
363540
  }
363541
363541
  }, { isActive });
@@ -363758,11 +363758,11 @@ function LocalBackendSetup({
363758
363758
  fetchAvailableModels(url3, provider, apiKey, abort.signal).then((result) => {
363759
363759
  if (abort.signal.aborted)
363760
363760
  return;
363761
- if (result.ok) {
363761
+ if (result.ok === true) {
363762
363762
  setAvailableModels(result.models);
363763
363763
  setScanError(null);
363764
363764
  } else {
363765
- setScanError(result.error);
363765
+ setScanError(result.ok === false ? result.error : "Scan failed");
363766
363766
  setAvailableModels([]);
363767
363767
  }
363768
363768
  setStep("model");
@@ -366553,7 +366553,7 @@ function Config({
366553
366553
  }
366554
366554
  }, undefined, false, undefined, this)
366555
366555
  }, undefined, false, undefined, this) : showSubmenu === "ChannelDowngrade" ? /* @__PURE__ */ jsx_dev_runtime179.jsxDEV(ChannelDowngradeDialog, {
366556
- currentVersion: "1.1.10",
366556
+ currentVersion: "1.1.11",
366557
366557
  onChoice: (choice) => {
366558
366558
  setShowSubmenu(null);
366559
366559
  setTabsHidden(false);
@@ -366565,7 +366565,7 @@ function Config({
366565
366565
  autoUpdatesChannel: "stable"
366566
366566
  };
366567
366567
  if (choice === "stay") {
366568
- newSettings.minimumVersion = "1.1.10";
366568
+ newSettings.minimumVersion = "1.1.11";
366569
366569
  }
366570
366570
  updateSettingsForSource("userSettings", newSettings);
366571
366571
  setSettingsData((prev_27) => ({
@@ -374063,12 +374063,13 @@ var React62, jsx_dev_runtime204, heartbeatInterval = 5, heartbeatBeat = 0, heart
374063
374063
  const fullChain = parseCommandChain2(`/heartbeat ${rawArgs}`);
374064
374064
  if (fullChain && fullChain.length > 1) {
374065
374065
  const validation = validateCommandChain2(fullChain);
374066
- if (!validation.ok) {
374066
+ if (validation.ok === false) {
374067
+ const msg = chainWarning2(validation.reason);
374067
374068
  return /* @__PURE__ */ jsx_dev_runtime204.jsxDEV(HeartbeatBanner, {
374068
374069
  beat: 0,
374069
374070
  intervalMins: heartbeatInterval,
374070
- task: chainWarning2(validation.reason),
374071
- onReady: () => onDone(chainWarning2(validation.reason))
374071
+ task: msg,
374072
+ onReady: () => onDone(msg)
374072
374073
  }, undefined, false, undefined, this);
374073
374074
  }
374074
374075
  }
@@ -374568,7 +374569,7 @@ var React65, jsx_dev_runtime207, call27 = async (onDone, _context, args) => {
374568
374569
  const fullChain = parseCommandChain(`/research ${rawArgs}`);
374569
374570
  if (fullChain && fullChain.length > 1) {
374570
374571
  const validation = validateCommandChain(fullChain);
374571
- if (!validation.ok) {
374572
+ if (validation.ok === false) {
374572
374573
  const msg = chainWarning(validation.reason);
374573
374574
  return /* @__PURE__ */ jsx_dev_runtime207.jsxDEV(ResearchWarning, {
374574
374575
  message: msg,
@@ -376297,7 +376298,7 @@ function HelpV2(t0) {
376297
376298
  let t6;
376298
376299
  if ($2[31] !== tabs) {
376299
376300
  t6 = /* @__PURE__ */ jsx_dev_runtime214.jsxDEV(Tabs, {
376300
- title: `localclawd v${"1.1.10"}`,
376301
+ title: `localclawd v${"1.1.11"}`,
376301
376302
  color: "professionalBlue",
376302
376303
  defaultTab: "general",
376303
376304
  children: tabs
@@ -400455,7 +400456,7 @@ function getAllReleaseNotes(changelogContent = getStoredChangelogFromMemory()) {
400455
400456
  return [];
400456
400457
  }
400457
400458
  }
400458
- async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.1.10") {
400459
+ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.1.11") {
400459
400460
  if (process.env.USER_TYPE === "ant") {
400460
400461
  const changelog = MACRO.VERSION_CHANGELOG;
400461
400462
  if (changelog) {
@@ -400482,7 +400483,7 @@ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.1.10")
400482
400483
  releaseNotes
400483
400484
  };
400484
400485
  }
400485
- function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.1.10") {
400486
+ function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.1.11") {
400486
400487
  if (process.env.USER_TYPE === "ant") {
400487
400488
  const changelog = MACRO.VERSION_CHANGELOG;
400488
400489
  if (changelog) {
@@ -401649,7 +401650,7 @@ function getRecentActivitySync() {
401649
401650
  return cachedActivity;
401650
401651
  }
401651
401652
  function getLogoDisplayData() {
401652
- const version = process.env.DEMO_VERSION ?? "1.1.10";
401653
+ const version = process.env.DEMO_VERSION ?? "1.1.11";
401653
401654
  const serverUrl = getDirectConnectServerUrl();
401654
401655
  const displayPath = process.env.DEMO_VERSION ? "/code/claude" : getDisplayPath(getCwd());
401655
401656
  const cwd2 = serverUrl ? `${displayPath} in ${serverUrl.replace(/^https?:\/\//, "")}` : displayPath;
@@ -402923,7 +402924,7 @@ function LogoV2() {
402923
402924
  if ($2[2] === Symbol.for("react.memo_cache_sentinel")) {
402924
402925
  t2 = () => {
402925
402926
  const currentConfig = getGlobalConfig();
402926
- if (currentConfig.lastReleaseNotesSeen === "1.1.10") {
402927
+ if (currentConfig.lastReleaseNotesSeen === "1.1.11") {
402927
402928
  return;
402928
402929
  }
402929
402930
  saveGlobalConfig(_temp327);
@@ -403599,12 +403600,12 @@ function LogoV2() {
403599
403600
  return t41;
403600
403601
  }
403601
403602
  function _temp327(current) {
403602
- if (current.lastReleaseNotesSeen === "1.1.10") {
403603
+ if (current.lastReleaseNotesSeen === "1.1.11") {
403603
403604
  return current;
403604
403605
  }
403605
403606
  return {
403606
403607
  ...current,
403607
- lastReleaseNotesSeen: "1.1.10"
403608
+ lastReleaseNotesSeen: "1.1.11"
403608
403609
  };
403609
403610
  }
403610
403611
  function _temp245(s_0) {
@@ -429806,7 +429807,7 @@ async function captureMemoryDiagnostics(trigger, dumpNumber = 0) {
429806
429807
  smapsRollup,
429807
429808
  platform: process.platform,
429808
429809
  nodeVersion: process.version,
429809
- ccVersion: "1.1.10"
429810
+ ccVersion: "1.1.11"
429810
429811
  };
429811
429812
  }
429812
429813
  async function performHeapDump(trigger = "manual", dumpNumber = 0) {
@@ -430391,7 +430392,7 @@ var init_bridge_kick = __esm(() => {
430391
430392
  var call64 = async () => {
430392
430393
  return {
430393
430394
  type: "text",
430394
- value: `${"1.1.10"} (built ${"2026-04-07T13:57:33.526Z"})`
430395
+ value: `${"1.1.11"} (built ${"2026-04-07T15:28:04.082Z"})`
430395
430396
  };
430396
430397
  }, version, version_default;
430397
430398
  var init_version = __esm(() => {
@@ -432382,6 +432383,8 @@ var init_stickers2 = __esm(() => {
432382
432383
  type: "local",
432383
432384
  name: "stickers",
432384
432385
  description: "Order localclawd stickers",
432386
+ isEnabled: () => false,
432387
+ isHidden: true,
432385
432388
  supportsNonInteractive: false,
432386
432389
  load: () => Promise.resolve().then(() => (init_stickers(), exports_stickers))
432387
432390
  };
@@ -439327,7 +439330,7 @@ function generateHtmlReport(data, insights) {
439327
439330
  </html>`;
439328
439331
  }
439329
439332
  function buildExportData(data, insights, facets, remoteStats) {
439330
- const version2 = typeof MACRO !== "undefined" ? "1.1.10" : "unknown";
439333
+ const version2 = typeof MACRO !== "undefined" ? "1.1.11" : "unknown";
439331
439334
  const remote_hosts_collected = remoteStats?.hosts.filter((h) => h.sessionCount > 0).map((h) => h.name);
439332
439335
  const facets_summary = {
439333
439336
  total: facets.size,
@@ -443494,7 +443497,7 @@ var init_sessionStorage = __esm(() => {
443494
443497
  init_settings2();
443495
443498
  init_slowOperations();
443496
443499
  init_uuid();
443497
- VERSION6 = typeof MACRO !== "undefined" ? "1.1.10" : "unknown";
443500
+ VERSION6 = typeof MACRO !== "undefined" ? "1.1.11" : "unknown";
443498
443501
  MAX_TOMBSTONE_REWRITE_BYTES = 50 * 1024 * 1024;
443499
443502
  SKIP_FIRST_PROMPT_PATTERN = /^(?:\s*<[a-z][\w-]*[\s>]|\[Request interrupted by user[^\]]*\])/;
443500
443503
  EPHEMERAL_PROGRESS_TYPES = new Set([
@@ -444696,7 +444699,7 @@ var init_filesystem = __esm(() => {
444696
444699
  });
444697
444700
  getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
444698
444701
  const nonce = randomBytes19(16).toString("hex");
444699
- return join130(getClaudeTempDir(), "bundled-skills", "1.1.10", nonce);
444702
+ return join130(getClaudeTempDir(), "bundled-skills", "1.1.11", nonce);
444700
444703
  });
444701
444704
  getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
444702
444705
  });
@@ -450695,7 +450698,7 @@ function computeFingerprint(messageText, version2) {
450695
450698
  }
450696
450699
  function computeFingerprintFromMessages(messages) {
450697
450700
  const firstMessageText = extractFirstMessageText(messages);
450698
- return computeFingerprint(firstMessageText, "1.1.10");
450701
+ return computeFingerprint(firstMessageText, "1.1.11");
450699
450702
  }
450700
450703
  var FINGERPRINT_SALT = "59cf53e54c78";
450701
450704
  var init_fingerprint = () => {};
@@ -452550,7 +452553,7 @@ async function sideQuery(opts) {
452550
452553
  betas.push(STRUCTURED_OUTPUTS_BETA_HEADER);
452551
452554
  }
452552
452555
  const messageText = extractFirstUserMessageText(messages);
452553
- const fingerprint = computeFingerprint(messageText, "1.1.10");
452556
+ const fingerprint = computeFingerprint(messageText, "1.1.11");
452554
452557
  const attributionHeader = getAttributionHeader(fingerprint);
452555
452558
  const systemBlocks = [
452556
452559
  attributionHeader ? { type: "text", text: attributionHeader } : null,
@@ -457348,7 +457351,7 @@ function buildSystemInitMessage(inputs) {
457348
457351
  slash_commands: inputs.commands.filter((c5) => c5.userInvocable !== false).map((c5) => c5.name),
457349
457352
  apiKeySource: getAnthropicApiKeyWithSource().source,
457350
457353
  betas: getSdkBetas(),
457351
- claude_code_version: "1.1.10",
457354
+ claude_code_version: "1.1.11",
457352
457355
  output_style: outputStyle2,
457353
457356
  agents: inputs.agents.map((agent) => agent.agentType),
457354
457357
  skills: inputs.skills.filter((s) => s.userInvocable !== false).map((skill) => skill.name),
@@ -471927,7 +471930,7 @@ var init_useVoiceEnabled = __esm(() => {
471927
471930
  function getSemverPart(version2) {
471928
471931
  return `${import_semver12.major(version2, { loose: true })}.${import_semver12.minor(version2, { loose: true })}.${import_semver12.patch(version2, { loose: true })}`;
471929
471932
  }
471930
- function useUpdateNotification(updatedVersion, initialVersion = "1.1.10") {
471933
+ function useUpdateNotification(updatedVersion, initialVersion = "1.1.11") {
471931
471934
  const [lastNotifiedSemver, setLastNotifiedSemver] = import_react228.useState(() => getSemverPart(initialVersion));
471932
471935
  if (!updatedVersion) {
471933
471936
  return null;
@@ -471967,7 +471970,7 @@ function AutoUpdater({
471967
471970
  return;
471968
471971
  }
471969
471972
  if (false) {}
471970
- const currentVersion = "1.1.10";
471973
+ const currentVersion = "1.1.11";
471971
471974
  const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
471972
471975
  let latestVersion = await getLatestVersion(channel);
471973
471976
  const isDisabled = isAutoUpdaterDisabled();
@@ -472178,12 +472181,12 @@ function NativeAutoUpdater({
472178
472181
  logEvent("tengu_native_auto_updater_start", {});
472179
472182
  try {
472180
472183
  const maxVersion = await getMaxVersion();
472181
- if (maxVersion && gt("1.1.10", maxVersion)) {
472184
+ if (maxVersion && gt("1.1.11", maxVersion)) {
472182
472185
  const msg = await getMaxVersionMessage();
472183
472186
  setMaxVersionIssue(msg ?? "affects your version");
472184
472187
  }
472185
472188
  const result = await installLatest(channel);
472186
- const currentVersion = "1.1.10";
472189
+ const currentVersion = "1.1.11";
472187
472190
  const latencyMs = Date.now() - startTime;
472188
472191
  if (result.lockFailed) {
472189
472192
  logEvent("tengu_native_auto_updater_lock_contention", {
@@ -472318,17 +472321,17 @@ function PackageManagerAutoUpdater(t0) {
472318
472321
  const maxVersion = await getMaxVersion();
472319
472322
  if (maxVersion && latest && gt(latest, maxVersion)) {
472320
472323
  logForDebugging(`PackageManagerAutoUpdater: maxVersion ${maxVersion} is set, capping update from ${latest} to ${maxVersion}`);
472321
- if (gte("1.1.10", maxVersion)) {
472322
- logForDebugging(`PackageManagerAutoUpdater: current version ${"1.1.10"} is already at or above maxVersion ${maxVersion}, skipping update`);
472324
+ if (gte("1.1.11", maxVersion)) {
472325
+ logForDebugging(`PackageManagerAutoUpdater: current version ${"1.1.11"} is already at or above maxVersion ${maxVersion}, skipping update`);
472323
472326
  setUpdateAvailable(false);
472324
472327
  return;
472325
472328
  }
472326
472329
  latest = maxVersion;
472327
472330
  }
472328
- const hasUpdate = latest && !gte("1.1.10", latest) && !shouldSkipVersion(latest);
472331
+ const hasUpdate = latest && !gte("1.1.11", latest) && !shouldSkipVersion(latest);
472329
472332
  setUpdateAvailable(!!hasUpdate);
472330
472333
  if (hasUpdate) {
472331
- logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.1.10"} -> ${latest}`);
472334
+ logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.1.11"} -> ${latest}`);
472332
472335
  }
472333
472336
  };
472334
472337
  $2[0] = t1;
@@ -472362,7 +472365,7 @@ function PackageManagerAutoUpdater(t0) {
472362
472365
  wrap: "truncate",
472363
472366
  children: [
472364
472367
  "currentVersion: ",
472365
- "1.1.10"
472368
+ "1.1.11"
472366
472369
  ]
472367
472370
  }, undefined, true, undefined, this);
472368
472371
  $2[3] = verbose;
@@ -479920,7 +479923,7 @@ function buildStatusLineCommandInput(permissionMode, exceeds200kTokens, settings
479920
479923
  project_dir: getOriginalCwd(),
479921
479924
  added_dirs: addedDirs
479922
479925
  },
479923
- version: "1.1.10",
479926
+ version: "1.1.11",
479924
479927
  output_style: {
479925
479928
  name: outputStyleName
479926
479929
  },
@@ -491480,7 +491483,7 @@ async function submitTranscriptShare(messages, trigger, appearanceId) {
491480
491483
  } catch {}
491481
491484
  const data = {
491482
491485
  trigger,
491483
- version: "1.1.10",
491486
+ version: "1.1.11",
491484
491487
  platform: process.platform,
491485
491488
  transcript,
491486
491489
  subagentTranscripts: Object.keys(subagentTranscripts).length > 0 ? subagentTranscripts : undefined,
@@ -503069,7 +503072,7 @@ function WelcomeV2() {
503069
503072
  dimColor: true,
503070
503073
  children: [
503071
503074
  "v",
503072
- "1.1.10"
503075
+ "1.1.11"
503073
503076
  ]
503074
503077
  }, undefined, true, undefined, this)
503075
503078
  ]
@@ -503104,13 +503107,15 @@ function StartPage({ currentConfig, onDone }) {
503104
503107
  const hasSavedConfig = hasSavedBackendConfig(currentConfig);
503105
503108
  const options = hasSavedConfig ? CONTINUE_OPTIONS : SETUP_OPTIONS;
503106
503109
  const [focusIdx, setFocusIdx] = import_react321.useState(0);
503107
- use_input_default((_input, key) => {
503110
+ use_input_default((input, key) => {
503108
503111
  if (key.upArrow) {
503109
503112
  setFocusIdx((i2) => (i2 - 1 + options.length) % options.length);
503110
503113
  } else if (key.downArrow) {
503111
503114
  setFocusIdx((i2) => (i2 + 1) % options.length);
503112
503115
  } else if (key.return) {
503113
503116
  onDone(options[focusIdx].value);
503117
+ } else if (key.escape || key.ctrl && input === "c") {
503118
+ gracefulShutdownSync(0);
503114
503119
  }
503115
503120
  });
503116
503121
  return /* @__PURE__ */ jsx_dev_runtime483.jsxDEV(ThemedBox_default, {
@@ -503221,7 +503226,7 @@ function StartPage({ currentConfig, onDone }) {
503221
503226
  }, undefined, false, undefined, this),
503222
503227
  /* @__PURE__ */ jsx_dev_runtime483.jsxDEV(ThemedText, {
503223
503228
  dimColor: true,
503224
- children: "↑↓ navigate · Enter confirm"
503229
+ children: "↑↓ navigate · Enter confirm · Esc exit"
503225
503230
  }, undefined, false, undefined, this)
503226
503231
  ]
503227
503232
  }, undefined, true, undefined, this)
@@ -503231,6 +503236,7 @@ function StartPage({ currentConfig, onDone }) {
503231
503236
  var import_react321, jsx_dev_runtime483, CONTINUE_OPTIONS, SETUP_OPTIONS;
503232
503237
  var init_StartPage = __esm(() => {
503233
503238
  init_ink2();
503239
+ init_gracefulShutdown();
503234
503240
  init_providers();
503235
503241
  init_WelcomeV2();
503236
503242
  import_react321 = __toESM(require_react(), 1);
@@ -503391,7 +503397,7 @@ function SimpleMenu2({ items, isActive, onSelect, onCancel }) {
503391
503397
  const VISIBLE = Math.min(7, items.length);
503392
503398
  const [focusIdx, setFocusIdx] = import_react324.useState(0);
503393
503399
  const [fromIdx, setFromIdx] = import_react324.useState(0);
503394
- use_input_default((_input, key) => {
503400
+ use_input_default((input, key) => {
503395
503401
  if (key.upArrow) {
503396
503402
  setFocusIdx((prev) => {
503397
503403
  const next = Math.max(0, prev - 1);
@@ -503410,7 +503416,7 @@ function SimpleMenu2({ items, isActive, onSelect, onCancel }) {
503410
503416
  const item = items[focusIdx];
503411
503417
  if (item)
503412
503418
  onSelect(item.value);
503413
- } else if (key.escape) {
503419
+ } else if (key.escape || key.ctrl && input === "c") {
503414
503420
  onCancel?.();
503415
503421
  }
503416
503422
  }, { isActive });
@@ -503722,7 +503728,13 @@ import { homedir as homedir36 } from "os";
503722
503728
  function TrustDialog({ onDone }) {
503723
503729
  const hasTrustDialogAccepted = checkHasTrustDialogAccepted();
503724
503730
  const [focusIdx, setFocusIdx] = import_react325.useState(0);
503725
- use_input_default((_input, key) => {
503731
+ import_react325.useEffect(() => {
503732
+ if (hasTrustDialogAccepted) {
503733
+ setSessionTrustAccepted(true);
503734
+ onDone();
503735
+ }
503736
+ }, [hasTrustDialogAccepted, onDone]);
503737
+ use_input_default((input, key) => {
503726
503738
  if (hasTrustDialogAccepted)
503727
503739
  return;
503728
503740
  if (key.upArrow) {
@@ -503748,14 +503760,12 @@ function TrustDialog({ onDone }) {
503748
503760
  onDone();
503749
503761
  }
503750
503762
  }
503751
- } else if (key.escape) {
503763
+ } else if (key.escape || key.ctrl && input === "c") {
503752
503764
  gracefulShutdownSync(0);
503753
503765
  }
503754
503766
  });
503755
- if (hasTrustDialogAccepted) {
503756
- setTimeout(onDone, 0);
503767
+ if (hasTrustDialogAccepted)
503757
503768
  return null;
503758
- }
503759
503769
  const cwd2 = getFsImplementation().cwd();
503760
503770
  return /* @__PURE__ */ jsx_dev_runtime487.jsxDEV(PermissionDialog, {
503761
503771
  color: "warning",
@@ -504129,7 +504139,7 @@ function completeOnboarding() {
504129
504139
  saveGlobalConfig((current) => ({
504130
504140
  ...current,
504131
504141
  hasCompletedOnboarding: true,
504132
- lastOnboardingVersion: "1.1.10"
504142
+ lastOnboardingVersion: "1.1.11"
504133
504143
  }));
504134
504144
  }
504135
504145
  function showDialog(root3, renderer) {
@@ -508688,7 +508698,7 @@ function appendToLog(path17, message) {
508688
508698
  cwd: getFsImplementation().cwd(),
508689
508699
  userType: process.env.USER_TYPE,
508690
508700
  sessionId: getSessionId(),
508691
- version: "1.1.10"
508701
+ version: "1.1.11"
508692
508702
  };
508693
508703
  getLogWriter(path17).write(messageWithTimestamp);
508694
508704
  }
@@ -512688,8 +512698,8 @@ async function getEnvLessBridgeConfig() {
512688
512698
  }
512689
512699
  async function checkEnvLessBridgeMinVersion() {
512690
512700
  const cfg = await getEnvLessBridgeConfig();
512691
- if (cfg.min_version && lt("1.1.10", cfg.min_version)) {
512692
- return `Your version of localclawd (${"1.1.10"}) is too old for Remote Control.
512701
+ if (cfg.min_version && lt("1.1.11", cfg.min_version)) {
512702
+ return `Your version of localclawd (${"1.1.11"}) is too old for Remote Control.
512693
512703
  Version ${cfg.min_version} or higher is required. Run \`localclawd update\` to update.`;
512694
512704
  }
512695
512705
  return null;
@@ -513161,7 +513171,7 @@ async function initBridgeCore(params) {
513161
513171
  const rawApi = createBridgeApiClient({
513162
513172
  baseUrl,
513163
513173
  getAccessToken,
513164
- runnerVersion: "1.1.10",
513174
+ runnerVersion: "1.1.11",
513165
513175
  onDebug: logForDebugging,
513166
513176
  onAuth401,
513167
513177
  getTrustedDeviceToken
@@ -518817,7 +518827,7 @@ async function startMCPServer(cwd3, debug4, verbose) {
518817
518827
  setCwd(cwd3);
518818
518828
  const server = new Server({
518819
518829
  name: "claude/tengu",
518820
- version: "1.1.10"
518830
+ version: "1.1.11"
518821
518831
  }, {
518822
518832
  capabilities: {
518823
518833
  tools: {}
@@ -520422,7 +520432,7 @@ __export(exports_update, {
520422
520432
  });
520423
520433
  async function update() {
520424
520434
  logEvent("tengu_update_check", {});
520425
- writeToStdout(`Current version: ${"1.1.10"}
520435
+ writeToStdout(`Current version: ${"1.1.11"}
520426
520436
  `);
520427
520437
  const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
520428
520438
  writeToStdout(`Checking for updates to ${channel} version...
@@ -520497,8 +520507,8 @@ async function update() {
520497
520507
  writeToStdout(`localclawd is managed by Homebrew.
520498
520508
  `);
520499
520509
  const latest = await getLatestVersion(channel);
520500
- if (latest && !gte("1.1.10", latest)) {
520501
- writeToStdout(`Update available: ${"1.1.10"} → ${latest}
520510
+ if (latest && !gte("1.1.11", latest)) {
520511
+ writeToStdout(`Update available: ${"1.1.11"} → ${latest}
520502
520512
  `);
520503
520513
  writeToStdout(`
520504
520514
  `);
@@ -520514,8 +520524,8 @@ async function update() {
520514
520524
  writeToStdout(`localclawd is managed by winget.
520515
520525
  `);
520516
520526
  const latest = await getLatestVersion(channel);
520517
- if (latest && !gte("1.1.10", latest)) {
520518
- writeToStdout(`Update available: ${"1.1.10"} → ${latest}
520527
+ if (latest && !gte("1.1.11", latest)) {
520528
+ writeToStdout(`Update available: ${"1.1.11"} → ${latest}
520519
520529
  `);
520520
520530
  writeToStdout(`
520521
520531
  `);
@@ -520529,8 +520539,8 @@ async function update() {
520529
520539
  writeToStdout(`localclawd is managed by apk.
520530
520540
  `);
520531
520541
  const latest = await getLatestVersion(channel);
520532
- if (latest && !gte("1.1.10", latest)) {
520533
- writeToStdout(`Update available: ${"1.1.10"} → ${latest}
520542
+ if (latest && !gte("1.1.11", latest)) {
520543
+ writeToStdout(`Update available: ${"1.1.11"} → ${latest}
520534
520544
  `);
520535
520545
  writeToStdout(`
520536
520546
  `);
@@ -520595,11 +520605,11 @@ async function update() {
520595
520605
  `);
520596
520606
  await gracefulShutdown(1);
520597
520607
  }
520598
- if (result.latestVersion === "1.1.10") {
520599
- writeToStdout(source_default.green(`localclawd is up to date (${"1.1.10"})`) + `
520608
+ if (result.latestVersion === "1.1.11") {
520609
+ writeToStdout(source_default.green(`localclawd is up to date (${"1.1.11"})`) + `
520600
520610
  `);
520601
520611
  } else {
520602
- writeToStdout(source_default.green(`Successfully updated from ${"1.1.10"} to version ${result.latestVersion}`) + `
520612
+ writeToStdout(source_default.green(`Successfully updated from ${"1.1.11"} to version ${result.latestVersion}`) + `
520603
520613
  `);
520604
520614
  await regenerateCompletionCache();
520605
520615
  }
@@ -520659,12 +520669,12 @@ async function update() {
520659
520669
  `);
520660
520670
  await gracefulShutdown(1);
520661
520671
  }
520662
- if (latestVersion === "1.1.10") {
520663
- writeToStdout(source_default.green(`localclawd is up to date (${"1.1.10"})`) + `
520672
+ if (latestVersion === "1.1.11") {
520673
+ writeToStdout(source_default.green(`localclawd is up to date (${"1.1.11"})`) + `
520664
520674
  `);
520665
520675
  await gracefulShutdown(0);
520666
520676
  }
520667
- writeToStdout(`New version available: ${latestVersion} (current: ${"1.1.10"})
520677
+ writeToStdout(`New version available: ${latestVersion} (current: ${"1.1.11"})
520668
520678
  `);
520669
520679
  writeToStdout(`Installing update...
520670
520680
  `);
@@ -520709,7 +520719,7 @@ async function update() {
520709
520719
  logForDebugging(`update: Installation status: ${status2}`);
520710
520720
  switch (status2) {
520711
520721
  case "success":
520712
- writeToStdout(source_default.green(`Successfully updated from ${"1.1.10"} to version ${latestVersion}`) + `
520722
+ writeToStdout(source_default.green(`Successfully updated from ${"1.1.11"} to version ${latestVersion}`) + `
520713
520723
  `);
520714
520724
  await regenerateCompletionCache();
520715
520725
  break;
@@ -521974,7 +521984,7 @@ ${customInstructions}` : customInstructions;
521974
521984
  }
521975
521985
  }
521976
521986
  logForDiagnosticsNoPII("info", "started", {
521977
- version: "1.1.10",
521987
+ version: "1.1.11",
521978
521988
  is_native_binary: isInBundledMode()
521979
521989
  });
521980
521990
  registerCleanup(async () => {
@@ -522758,7 +522768,7 @@ Usage: localclawd --remote "your task description"`, () => gracefulShutdown(1));
522758
522768
  pendingHookMessages
522759
522769
  }, renderAndRun);
522760
522770
  }
522761
- }).version("1.1.10 (localClawd)", "-v, --version", "Output the version number");
522771
+ }).version("1.1.11 (localClawd)", "-v, --version", "Output the version number");
522762
522772
  program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
522763
522773
  program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
522764
522774
  if (canUserConfigureAdvisor()) {
@@ -523266,7 +523276,7 @@ if (false) {}
523266
523276
  async function main2() {
523267
523277
  const args = process.argv.slice(2);
523268
523278
  if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
523269
- console.log(`${"1.1.10"} (localclawd)`);
523279
+ console.log(`${"1.1.11"} (localclawd)`);
523270
523280
  return;
523271
523281
  }
523272
523282
  const {
@@ -523350,4 +523360,4 @@ async function main2() {
523350
523360
  }
523351
523361
  main2();
523352
523362
 
523353
- //# debugId=8FD76418D3A40B8164756E2164756E21
523363
+ //# debugId=A19C602AE08D364F64756E2164756E21
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "localclawd",
3
- "version": "1.1.10",
3
+ "version": "1.1.11",
4
4
  "description": "Local-first coding CLI for vLLM, Ollama, and OpenAI-compatible backends.",
5
5
  "private": false,
6
6
  "type": "module",