localclawd 1.1.34 → 1.1.35

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 +108 -111
  2. package/package.json +1 -1
package/dist/cli.mjs CHANGED
@@ -87696,7 +87696,7 @@ var init_isEqual = __esm(() => {
87696
87696
 
87697
87697
  // src/utils/userAgent.ts
87698
87698
  function getClaudeCodeUserAgent() {
87699
- return `claude-code/${"1.1.34"}`;
87699
+ return `claude-code/${"1.1.35"}`;
87700
87700
  }
87701
87701
 
87702
87702
  // src/utils/workloadContext.ts
@@ -87718,7 +87718,7 @@ function getUserAgent() {
87718
87718
  const clientApp = process.env.CLAUDE_AGENT_SDK_CLIENT_APP ? `, client-app/${process.env.CLAUDE_AGENT_SDK_CLIENT_APP}` : "";
87719
87719
  const workload = getWorkload();
87720
87720
  const workloadSuffix = workload ? `, workload/${workload}` : "";
87721
- return `claude-cli/${"1.1.34"} (${process.env.USER_TYPE}, ${process.env.CLAUDE_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
87721
+ return `claude-cli/${"1.1.35"} (${process.env.USER_TYPE}, ${process.env.CLAUDE_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
87722
87722
  }
87723
87723
  function getMCPUserAgent() {
87724
87724
  const parts = [];
@@ -87732,7 +87732,7 @@ function getMCPUserAgent() {
87732
87732
  parts.push(`client-app/${process.env.CLAUDE_AGENT_SDK_CLIENT_APP}`);
87733
87733
  }
87734
87734
  const suffix = parts.length > 0 ? ` (${parts.join(", ")})` : "";
87735
- return `claude-code/${"1.1.34"}${suffix}`;
87735
+ return `claude-code/${"1.1.35"}${suffix}`;
87736
87736
  }
87737
87737
  function getWebFetchUserAgent() {
87738
87738
  return `Claude-User (${getClaudeCodeUserAgent()}; +https://support.anthropic.com/)`;
@@ -97347,15 +97347,15 @@ function getSubscriptionName() {
97347
97347
  const subscriptionType = getSubscriptionType();
97348
97348
  switch (subscriptionType) {
97349
97349
  case "enterprise":
97350
- return "Claude Enterprise";
97350
+ return "localclawd Enterprise";
97351
97351
  case "team":
97352
- return "Claude Team";
97352
+ return "localclawd Team";
97353
97353
  case "max":
97354
- return "Claude Max";
97354
+ return "localclawd Max";
97355
97355
  case "pro":
97356
- return "Claude Pro";
97356
+ return "localclawd Pro";
97357
97357
  default:
97358
- return "Claude API";
97358
+ return "localclawd API";
97359
97359
  }
97360
97360
  }
97361
97361
  function isUsing3PServices() {
@@ -98417,9 +98417,9 @@ function renderModelName(model) {
98417
98417
  function getPublicModelName(model) {
98418
98418
  const publicName = getPublicModelDisplayName(model);
98419
98419
  if (publicName) {
98420
- return `Claude ${publicName}`;
98420
+ return `localclawd ${publicName}`;
98421
98421
  }
98422
- return `Claude (${model})`;
98422
+ return `localclawd (${model})`;
98423
98423
  }
98424
98424
  function parseUserSpecifiedModel(modelInput) {
98425
98425
  const modelInputTrimmed = modelInput.trim();
@@ -130956,7 +130956,7 @@ function getAttributionHeader(fingerprint) {
130956
130956
  if (!isAttributionHeaderEnabled()) {
130957
130957
  return "";
130958
130958
  }
130959
- const version = `${"1.1.34"}.${fingerprint}`;
130959
+ const version = `${"1.1.35"}.${fingerprint}`;
130960
130960
  const entrypoint = process.env.CLAUDE_CODE_ENTRYPOINT ?? "unknown";
130961
130961
  const cch = "";
130962
130962
  const workload = getWorkload();
@@ -145224,10 +145224,10 @@ var SEND_MESSAGE_TOOL_NAME = "SendMessage";
145224
145224
  function getWebSearchPrompt() {
145225
145225
  const currentMonthYear = getLocalMonthYear();
145226
145226
  return `
145227
- - Allows Claude to search the web and use the results to inform responses
145227
+ - Allows localclawd to search the web and use the results to inform responses
145228
145228
  - Provides up-to-date information for current events and recent data
145229
145229
  - Returns search result information formatted as search result blocks, including links as markdown hyperlinks
145230
- - Use this tool for accessing information beyond Claude's knowledge cutoff
145230
+ - Use this tool for accessing information beyond localclawd's knowledge cutoff
145231
145231
  - Searches are performed automatically within a single API call
145232
145232
 
145233
145233
  CRITICAL REQUIREMENT - You MUST follow this:
@@ -145259,15 +145259,15 @@ var init_prompt4 = __esm(() => {
145259
145259
  // src/tools/AgentTool/built-in/guideAgent.ts
145260
145260
  function getClaudeCodeGuideBasePrompt() {
145261
145261
  const localSearchHint = hasEmbeddedSearchTools() ? `${FILE_READ_TOOL_NAME}, \`find\`, and \`grep\`` : `${FILE_READ_TOOL_NAME}, ${GLOB_TOOL_NAME}, and ${GREP_TOOL_NAME}`;
145262
- return `You are the Claude guide agent. Your primary responsibility is helping users understand and use localclawd, the Claude Agent SDK, and the Claude API (formerly the Anthropic API) effectively.
145262
+ return `You are the localclawd guide agent. Your primary responsibility is helping users understand and use localclawd effectively.
145263
145263
 
145264
145264
  **Your expertise spans three domains:**
145265
145265
 
145266
145266
  1. **localclawd** (the CLI tool): Installation, configuration, hooks, skills, MCP servers, keyboard shortcuts, IDE integrations, settings, and workflows.
145267
145267
 
145268
- 2. **Claude Agent SDK**: A framework for building custom AI agents based on localclawd technology. Available for Node.js/TypeScript and Python.
145268
+ 2. **localclawd Agent SDK**: A framework for building custom AI agents based on localclawd technology. Available for Node.js/TypeScript and Python.
145269
145269
 
145270
- 3. **Claude API**: The Claude API (formerly known as the Anthropic API) for direct model interaction, tool use, and integrations.
145270
+ 3. **localclawd API**: The localclawd API for direct model interaction, tool use, and integrations.
145271
145271
 
145272
145272
  **Documentation sources:**
145273
145273
 
@@ -145282,16 +145282,16 @@ function getClaudeCodeGuideBasePrompt() {
145282
145282
  - Subagents and plugins
145283
145283
  - Sandboxing and security
145284
145284
 
145285
- - **Claude Agent SDK docs** (${CDP_DOCS_MAP_URL}): Fetch this for questions about building agents with the SDK, including:
145285
+ - **localclawd Agent SDK docs** (${CDP_DOCS_MAP_URL}): Fetch this for questions about building agents with the SDK, including:
145286
145286
  - SDK overview and getting started (Python and TypeScript)
145287
145287
  - Agent configuration + custom tools
145288
145288
  - Session management and permissions
145289
145289
  - MCP integration in agents
145290
145290
  - Hosting and deployment
145291
145291
  - Cost tracking and context management
145292
- Note: Agent SDK docs are part of the Claude API documentation at the same URL.
145292
+ Note: Agent SDK docs are part of the localclawd API documentation at the same URL.
145293
145293
 
145294
- - **Claude API docs** (${CDP_DOCS_MAP_URL}): Fetch this for questions about the Claude API (formerly the Anthropic API), including:
145294
+ - **localclawd API docs** (${CDP_DOCS_MAP_URL}): Fetch this for questions about the localclawd API, including:
145295
145295
  - Messages API and streaming
145296
145296
  - Tool use (function calling) and Anthropic-defined tools (computer use, code execution, web search, text editor, bash, programmatic tool calling, tool search tool, context editing, Files API, structured outputs)
145297
145297
  - Vision, PDF support, and citations
@@ -145334,7 +145334,7 @@ var init_guideAgent = __esm(() => {
145334
145334
  init_slowOperations();
145335
145335
  CLAUDE_CODE_GUIDE_AGENT = {
145336
145336
  agentType: CLAUDE_CODE_GUIDE_AGENT_TYPE,
145337
- whenToUse: `Use this agent when the user asks questions ("Can Claude...", "Does Claude...", "How do I...") about: (1) localclawd (the CLI tool) - features, hooks, slash commands, MCP servers, settings, IDE integrations, keyboard shortcuts; (2) Claude Agent SDK - building custom agents; (3) Claude API (formerly Anthropic API) - API usage, tool use, Anthropic SDK usage. **IMPORTANT:** Before spawning a new agent, check if there is already a running or recently completed claude-code-guide agent that you can continue via ${SEND_MESSAGE_TOOL_NAME}.`,
145337
+ whenToUse: `Use this agent when the user asks questions ("Can localclawd...", "Does localclawd...", "How do I...") about: (1) localclawd (the CLI tool) - features, hooks, slash commands, MCP servers, settings, IDE integrations, keyboard shortcuts; (2) localclawd Agent SDK - building custom agents; (3) localclawd API - API usage, tool use, SDK usage. **IMPORTANT:** Before spawning a new agent, check if there is already a running or recently completed claude-code-guide agent that you can continue via ${SEND_MESSAGE_TOOL_NAME}.`,
145338
145338
  tools: hasEmbeddedSearchTools() ? [
145339
145339
  BASH_TOOL_NAME,
145340
145340
  FILE_READ_TOOL_NAME,
@@ -147145,7 +147145,7 @@ var init_metadata = __esm(() => {
147145
147145
  COMPOUND_OPERATOR_REGEX = /\s*(?:&&|\|\||[;|])\s*/;
147146
147146
  WHITESPACE_REGEX = /\s+/;
147147
147147
  getVersionBase = memoize_default(() => {
147148
- const match = "1.1.34".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
147148
+ const match = "1.1.35".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
147149
147149
  return match ? match[0] : undefined;
147150
147150
  });
147151
147151
  buildEnvContext = memoize_default(async () => {
@@ -147185,9 +147185,9 @@ var init_metadata = __esm(() => {
147185
147185
  isGithubAction: isEnvTruthy(process.env.GITHUB_ACTIONS),
147186
147186
  isClaudeCodeAction: isEnvTruthy(process.env.CLAUDE_CODE_ACTION),
147187
147187
  isClaudeAiAuth: isClaudeAISubscriber(),
147188
- version: "1.1.34",
147188
+ version: "1.1.35",
147189
147189
  versionBase: getVersionBase(),
147190
- buildTime: "2026-04-13T04:11:24.859Z",
147190
+ buildTime: "2026-04-14T13:54:24.741Z",
147191
147191
  deploymentEnvironment: env3.detectDeploymentEnvironment(),
147192
147192
  ...isEnvTruthy(process.env.GITHUB_ACTIONS) && {
147193
147193
  githubEventName: process.env.GITHUB_EVENT_NAME,
@@ -149147,7 +149147,7 @@ Run /share and post the JSON file to ${MACRO.FEEDBACK_CHANNEL}.`;
149147
149147
  }
149148
149148
  if (isClaudeAISubscriber() && error5 instanceof APIError && error5.status === 400 && error5.message.toLowerCase().includes("invalid model name") && (isNonCustomOpusModel(model) || model === "opus")) {
149149
149149
  return createAssistantAPIErrorMessage({
149150
- content: "Claude Opus is not available with the Claude Pro plan. If you have updated your subscription plan recently, run /logout and /login for the plan to take effect.",
149150
+ content: "Opus is not available with the Pro plan. If you have updated your subscription plan recently, run /logout and /login for the plan to take effect.",
149151
149151
  error: "invalid_request"
149152
149152
  });
149153
149153
  }
@@ -179543,7 +179543,7 @@ function getTelemetryAttributes() {
179543
179543
  attributes["session.id"] = sessionId;
179544
179544
  }
179545
179545
  if (shouldIncludeAttribute("OTEL_METRICS_INCLUDE_VERSION")) {
179546
- attributes["app.version"] = "1.1.34";
179546
+ attributes["app.version"] = "1.1.35";
179547
179547
  }
179548
179548
  const oauthAccount = getOauthAccountInfo();
179549
179549
  if (oauthAccount) {
@@ -242267,7 +242267,7 @@ function getInstallationEnv() {
242267
242267
  return;
242268
242268
  }
242269
242269
  function getClaudeCodeVersion() {
242270
- return "1.1.34";
242270
+ return "1.1.35";
242271
242271
  }
242272
242272
  async function getInstalledVSCodeExtensionVersion(command) {
242273
242273
  const { stdout } = await execFileNoThrow(command, ["--list-extensions", "--show-versions"], {
@@ -247541,7 +247541,7 @@ async function setupSdkMcpClients(sdkMcpConfigs, sendMcpMessage) {
247541
247541
  const client4 = new Client({
247542
247542
  name: "localclawd",
247543
247543
  title: "localclawd",
247544
- version: "1.1.34",
247544
+ version: "1.1.35",
247545
247545
  description: "local-first AI coding tool",
247546
247546
  websiteUrl: PRODUCT_URL
247547
247547
  }, {
@@ -247883,7 +247883,7 @@ var init_client9 = __esm(() => {
247883
247883
  const client4 = new Client({
247884
247884
  name: "localclawd",
247885
247885
  title: "localclawd",
247886
- version: "1.1.34",
247886
+ version: "1.1.35",
247887
247887
  description: "local-first AI coding tool",
247888
247888
  websiteUrl: PRODUCT_URL
247889
247889
  }, {
@@ -262273,7 +262273,7 @@ function computeFingerprint(messageText, version) {
262273
262273
  }
262274
262274
  function computeFingerprintFromMessages(messages) {
262275
262275
  const firstMessageText = extractFirstMessageText(messages);
262276
- return computeFingerprint(firstMessageText, "1.1.34");
262276
+ return computeFingerprint(firstMessageText, "1.1.35");
262277
262277
  }
262278
262278
  var FINGERPRINT_SALT = "59cf53e54c78";
262279
262279
  var init_fingerprint = () => {};
@@ -262315,7 +262315,7 @@ async function sideQuery(opts) {
262315
262315
  betas.push(STRUCTURED_OUTPUTS_BETA_HEADER);
262316
262316
  }
262317
262317
  const messageText = extractFirstUserMessageText(messages);
262318
- const fingerprint = computeFingerprint(messageText, "1.1.34");
262318
+ const fingerprint = computeFingerprint(messageText, "1.1.35");
262319
262319
  const attributionHeader = getAttributionHeader(fingerprint);
262320
262320
  const systemBlocks = [
262321
262321
  attributionHeader ? { type: "text", text: attributionHeader } : null,
@@ -283039,7 +283039,7 @@ var init_user = __esm(() => {
283039
283039
  deviceId,
283040
283040
  sessionId: getSessionId(),
283041
283041
  email: getEmail(),
283042
- appVersion: "1.1.34",
283042
+ appVersion: "1.1.35",
283043
283043
  platform: getHostPlatformForAnalytics(),
283044
283044
  organizationUuid,
283045
283045
  accountUuid,
@@ -284104,7 +284104,7 @@ async function initializeBetaTracing(resource) {
284104
284104
  });
284105
284105
  logs.setGlobalLoggerProvider(loggerProvider);
284106
284106
  setLoggerProvider(loggerProvider);
284107
- const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "1.1.34");
284107
+ const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "1.1.35");
284108
284108
  setEventLogger(eventLogger);
284109
284109
  process.on("beforeExit", async () => {
284110
284110
  await loggerProvider?.forceFlush();
@@ -284144,7 +284144,7 @@ async function initializeTelemetry() {
284144
284144
  const platform2 = getPlatform();
284145
284145
  const baseAttributes = {
284146
284146
  [ATTR_SERVICE_NAME4]: "claude-code",
284147
- [ATTR_SERVICE_VERSION4]: "1.1.34"
284147
+ [ATTR_SERVICE_VERSION4]: "1.1.35"
284148
284148
  };
284149
284149
  if (platform2 === "wsl") {
284150
284150
  const wslVersion = getWslVersion();
@@ -284189,7 +284189,7 @@ async function initializeTelemetry() {
284189
284189
  } catch {}
284190
284190
  };
284191
284191
  registerCleanup(shutdownTelemetry2);
284192
- return meterProvider2.getMeter("com.anthropic.claude_code", "1.1.34");
284192
+ return meterProvider2.getMeter("com.anthropic.claude_code", "1.1.35");
284193
284193
  }
284194
284194
  const meterProvider = new MeterProvider4({
284195
284195
  resource,
@@ -284209,7 +284209,7 @@ async function initializeTelemetry() {
284209
284209
  });
284210
284210
  logs.setGlobalLoggerProvider(loggerProvider);
284211
284211
  setLoggerProvider(loggerProvider);
284212
- const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "1.1.34");
284212
+ const eventLogger = logs.getLogger("com.anthropic.claude_code.events", "1.1.35");
284213
284213
  setEventLogger(eventLogger);
284214
284214
  logForDebugging("[3P telemetry] Event logger set successfully");
284215
284215
  process.on("beforeExit", async () => {
@@ -284271,7 +284271,7 @@ Current timeout: ${timeoutMs}ms
284271
284271
  }
284272
284272
  };
284273
284273
  registerCleanup(shutdownTelemetry);
284274
- return meterProvider.getMeter("com.anthropic.claude_code", "1.1.34");
284274
+ return meterProvider.getMeter("com.anthropic.claude_code", "1.1.35");
284275
284275
  }
284276
284276
  async function flushTelemetry() {
284277
284277
  const meterProvider = getMeterProvider();
@@ -285461,7 +285461,7 @@ function detectLinuxGlobPatternWarnings() {
285461
285461
  }
285462
285462
  async function getDoctorDiagnostic() {
285463
285463
  const installationType = await getCurrentInstallationType();
285464
- const version = typeof MACRO !== "undefined" ? "1.1.34" : "unknown";
285464
+ const version = typeof MACRO !== "undefined" ? "1.1.35" : "unknown";
285465
285465
  const installationPath = await getInstallationPath();
285466
285466
  const invokedBinary = getInvokedBinary();
285467
285467
  const multipleInstallations = await detectMultipleInstallations();
@@ -286402,8 +286402,8 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
286402
286402
  const maxVersion = await getMaxVersion();
286403
286403
  if (maxVersion && gt(version, maxVersion)) {
286404
286404
  logForDebugging(`Native installer: maxVersion ${maxVersion} is set, capping update from ${version} to ${maxVersion}`);
286405
- if (gte("1.1.34", maxVersion)) {
286406
- logForDebugging(`Native installer: current version ${"1.1.34"} is already at or above maxVersion ${maxVersion}, skipping update`);
286405
+ if (gte("1.1.35", maxVersion)) {
286406
+ logForDebugging(`Native installer: current version ${"1.1.35"} is already at or above maxVersion ${maxVersion}, skipping update`);
286407
286407
  logEvent("tengu_native_update_skipped_max_version", {
286408
286408
  latency_ms: Date.now() - startTime,
286409
286409
  max_version: maxVersion,
@@ -286414,7 +286414,7 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
286414
286414
  version = maxVersion;
286415
286415
  }
286416
286416
  }
286417
- if (!forceReinstall && version === "1.1.34" && await versionIsAvailable(version) && await isPossibleLocalClawdBinary(executablePath)) {
286417
+ if (!forceReinstall && version === "1.1.35" && await versionIsAvailable(version) && await isPossibleLocalClawdBinary(executablePath)) {
286418
286418
  logForDebugging(`Found ${version} at ${executablePath}, skipping install`);
286419
286419
  logEvent("tengu_native_update_complete", {
286420
286420
  latency_ms: Date.now() - startTime,
@@ -297264,8 +297264,7 @@ function formatPreconditionError(error5) {
297264
297264
  case "no_git_remote":
297265
297265
  return "Background tasks require a GitHub remote. Add one with `git remote add origin REPO_URL`.";
297266
297266
  case "github_app_not_installed":
297267
- return `The Claude GitHub app must be installed on this repository first.
297268
- https://github.com/apps/claude/installations/new`;
297267
+ return "The localclawd GitHub app must be installed on this repository first.";
297269
297268
  case "policy_blocked":
297270
297269
  return "Remote sessions are disabled by your organization's policy. Contact your organization admin to enable them.";
297271
297270
  }
@@ -317926,7 +317925,7 @@ var init_WebFetchTool = __esm(() => {
317926
317925
  if (askRule) {
317927
317926
  return {
317928
317927
  behavior: "ask",
317929
- message: `Claude requested permissions to use ${WebFetchTool.name}, but you haven't granted it yet.`,
317928
+ message: `localclawd requested permissions to use ${WebFetchTool.name}, but you haven't granted it yet.`,
317930
317929
  decisionReason: {
317931
317930
  type: "rule",
317932
317931
  rule: askRule
@@ -317947,7 +317946,7 @@ var init_WebFetchTool = __esm(() => {
317947
317946
  }
317948
317947
  return {
317949
317948
  behavior: "ask",
317950
- message: `Claude requested permissions to use ${WebFetchTool.name}, but you haven't granted it yet.`,
317949
+ message: `localclawd requested permissions to use ${WebFetchTool.name}, but you haven't granted it yet.`,
317951
317950
  suggestions: buildSuggestions(ruleContent)
317952
317951
  };
317953
317952
  },
@@ -318577,7 +318576,7 @@ function renderToolResultMessage15(output, _progressMessages, options) {
318577
318576
  children: [
318578
318577
  /* @__PURE__ */ jsx_dev_runtime138.jsxDEV(ThemedText, {
318579
318578
  color: "briefLabelClaude",
318580
- children: "Claude"
318579
+ children: "localclawd"
318581
318580
  }, undefined, false, undefined, this),
318582
318581
  ts ? /* @__PURE__ */ jsx_dev_runtime138.jsxDEV(ThemedText, {
318583
318582
  dimColor: true,
@@ -323626,7 +323625,7 @@ var init_supportedSettings = __esm(() => {
323626
323625
  language: {
323627
323626
  source: "settings",
323628
323627
  type: "string",
323629
- description: 'Preferred language for Claude responses and voice dictation (e.g., "japanese", "spanish")'
323628
+ description: 'Preferred language for localclawd responses and voice dictation (e.g., "japanese", "spanish")'
323630
323629
  },
323631
323630
  teammateMode: {
323632
323631
  source: "global",
@@ -330804,7 +330803,7 @@ function getAnthropicEnvMetadata() {
330804
330803
  function getBuildAgeMinutes() {
330805
330804
  if (false)
330806
330805
  ;
330807
- const buildTime = new Date("2026-04-13T04:11:24.859Z").getTime();
330806
+ const buildTime = new Date("2026-04-14T13:54:24.741Z").getTime();
330808
330807
  if (isNaN(buildTime))
330809
330808
  return;
330810
330809
  return Math.floor((Date.now() - buildTime) / 60000);
@@ -349511,7 +349510,7 @@ async function computeSimpleEnvInfo(modelId, additionalWorkingDirectories) {
349511
349510
  `OS Version: ${unameSR}`,
349512
349511
  modelDescription,
349513
349512
  knowledgeCutoffMessage,
349514
- process.env.USER_TYPE === "ant" && isUndercover() ? null : `The most recent Claude model family is Claude 4.5/4.6. Model IDs — Opus 4.6: '${CLAUDE_4_5_OR_4_6_MODEL_IDS.opus}', Sonnet 4.6: '${CLAUDE_4_5_OR_4_6_MODEL_IDS.sonnet}', Haiku 4.5: '${CLAUDE_4_5_OR_4_6_MODEL_IDS.haiku}'. When building AI applications, default to the latest and most capable Claude models.`,
349513
+ process.env.USER_TYPE === "ant" && isUndercover() ? null : `The most recent localclawd model family is 4.5/4.6. Model IDs — Opus 4.6: '${CLAUDE_4_5_OR_4_6_MODEL_IDS.opus}', Sonnet 4.6: '${CLAUDE_4_5_OR_4_6_MODEL_IDS.sonnet}', Haiku 4.5: '${CLAUDE_4_5_OR_4_6_MODEL_IDS.haiku}'. When building AI applications, default to the latest and most capable models.`,
349515
349514
  process.env.USER_TYPE === "ant" && isUndercover() ? null : `localclawd is available as a terminal CLI and can also integrate with supported IDE workflows.`,
349516
349515
  process.env.USER_TYPE === "ant" && isUndercover() ? null : `Fast mode for localclawd uses the same ${FRONTIER_MODEL_NAME} model with faster output. It does NOT switch to a different model. It can be toggled with /fast.`
349517
349516
  ].filter((item) => item !== null);
@@ -349600,7 +349599,7 @@ function getFunctionResultClearingSection(model) {
349600
349599
 
349601
349600
  Old tool results will be automatically cleared from context to free up space. The ${config.keepRecent} most recent results are always kept.`;
349602
349601
  }
349603
- var getCachedMCConfigForFRC = null, DISCOVER_SKILLS_TOOL_NAME = null, SYSTEM_PROMPT_DYNAMIC_BOUNDARY = "__SYSTEM_PROMPT_DYNAMIC_BOUNDARY__", FRONTIER_MODEL_NAME = "Claude Opus 4.6", CLAUDE_4_5_OR_4_6_MODEL_IDS, DEFAULT_AGENT_PROMPT = `You are an agent for localclawd, a local-first coding CLI running against user-controlled models. Given the user's message, you should use the tools available to complete the task. Complete the task fully—don't gold-plate, but don't leave it half-done. When you complete the task, respond with a concise report covering what was done and any key findings — the caller will relay this to the user, so it only needs the essentials.`, SUMMARIZE_TOOL_RESULTS_SECTION = `When working with tool results, write down any important information you might need later in your response, as the original tool result may be cleared later.`;
349602
+ var getCachedMCConfigForFRC = null, DISCOVER_SKILLS_TOOL_NAME = null, SYSTEM_PROMPT_DYNAMIC_BOUNDARY = "__SYSTEM_PROMPT_DYNAMIC_BOUNDARY__", FRONTIER_MODEL_NAME = "localclawd Opus 4.6", CLAUDE_4_5_OR_4_6_MODEL_IDS, DEFAULT_AGENT_PROMPT = `You are an agent for localclawd, a local-first coding CLI running against user-controlled models. Given the user's message, you should use the tools available to complete the task. Complete the task fully—don't gold-plate, but don't leave it half-done. When you complete the task, respond with a concise report covering what was done and any key findings — the caller will relay this to the user, so it only needs the essentials.`, SUMMARIZE_TOOL_RESULTS_SECTION = `When working with tool results, write down any important information you might need later in your response, as the original tool result may be cleared later.`;
349604
349603
  var init_prompts3 = __esm(() => {
349605
349604
  init_env();
349606
349605
  init_git();
@@ -359180,7 +359179,7 @@ function Feedback({
359180
359179
  platform: env3.platform,
359181
359180
  gitRepo: envInfo.isGit,
359182
359181
  terminal: env3.terminal,
359183
- version: "1.1.34",
359182
+ version: "1.1.35",
359184
359183
  transcript: normalizeMessagesForAPI(messages),
359185
359184
  errors: sanitizedErrors,
359186
359185
  lastApiRequest: getLastAPIRequest(),
@@ -359372,7 +359371,7 @@ function Feedback({
359372
359371
  ", ",
359373
359372
  env3.terminal,
359374
359373
  ", v",
359375
- "1.1.34"
359374
+ "1.1.35"
359376
359375
  ]
359377
359376
  }, undefined, true, undefined, this)
359378
359377
  ]
@@ -359478,7 +359477,7 @@ ${sanitizedDescription}
359478
359477
  ` + `**Environment Info**
359479
359478
  ` + `- Platform: ${env3.platform}
359480
359479
  ` + `- Terminal: ${env3.terminal}
359481
- ` + `- Version: ${"1.1.34"}
359480
+ ` + `- Version: ${"1.1.35"}
359482
359481
  ` + `- Feedback ID: ${feedbackId}
359483
359482
  ` + `
359484
359483
  **Errors**
@@ -362106,7 +362105,7 @@ function buildPrimarySection() {
362106
362105
  }, undefined, false, undefined, this);
362107
362106
  return [{
362108
362107
  label: "Version",
362109
- value: "1.1.34"
362108
+ value: "1.1.35"
362110
362109
  }, {
362111
362110
  label: "Session name",
362112
362111
  value: nameValue
@@ -366705,7 +366704,7 @@ function Config({
366705
366704
  }
366706
366705
  }, undefined, false, undefined, this)
366707
366706
  }, undefined, false, undefined, this) : showSubmenu === "ChannelDowngrade" ? /* @__PURE__ */ jsx_dev_runtime175.jsxDEV(ChannelDowngradeDialog, {
366708
- currentVersion: "1.1.34",
366707
+ currentVersion: "1.1.35",
366709
366708
  onChoice: (choice) => {
366710
366709
  setShowSubmenu(null);
366711
366710
  setTabsHidden(false);
@@ -366717,7 +366716,7 @@ function Config({
366717
366716
  autoUpdatesChannel: "stable"
366718
366717
  };
366719
366718
  if (choice === "stay") {
366720
- newSettings.minimumVersion = "1.1.34";
366719
+ newSettings.minimumVersion = "1.1.35";
366721
366720
  }
366722
366721
  updateSettingsForSource("userSettings", newSettings);
366723
366722
  setSettingsData((prev_27) => ({
@@ -375598,7 +375597,7 @@ function Help(t0) {
375598
375597
  let t6;
375599
375598
  if ($2[31] !== tabs) {
375600
375599
  t6 = /* @__PURE__ */ jsx_dev_runtime207.jsxDEV(Tabs, {
375601
- title: `localclawd v${"1.1.34"}`,
375600
+ title: `localclawd v${"1.1.35"}`,
375602
375601
  color: "professionalBlue",
375603
375602
  defaultTab: "general",
375604
375603
  children: tabs
@@ -391831,7 +391830,7 @@ function getAllReleaseNotes(changelogContent = getStoredChangelogFromMemory()) {
391831
391830
  return [];
391832
391831
  }
391833
391832
  }
391834
- async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.1.34") {
391833
+ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.1.35") {
391835
391834
  if (process.env.USER_TYPE === "ant") {
391836
391835
  const changelog = MACRO.VERSION_CHANGELOG;
391837
391836
  if (changelog) {
@@ -391858,7 +391857,7 @@ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.1.34")
391858
391857
  releaseNotes
391859
391858
  };
391860
391859
  }
391861
- function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.1.34") {
391860
+ function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.1.35") {
391862
391861
  if (process.env.USER_TYPE === "ant") {
391863
391862
  const changelog = MACRO.VERSION_CHANGELOG;
391864
391863
  if (changelog) {
@@ -393116,7 +393115,7 @@ function getRecentActivitySync() {
393116
393115
  return cachedActivity;
393117
393116
  }
393118
393117
  function getLogoDisplayData() {
393119
- const version = process.env.DEMO_VERSION ?? "1.1.34";
393118
+ const version = process.env.DEMO_VERSION ?? "1.1.35";
393120
393119
  const serverUrl = getDirectConnectServerUrl();
393121
393120
  const displayPath = process.env.DEMO_VERSION ? "/code/claude" : getDisplayPath(getCwd());
393122
393121
  const cwd2 = serverUrl ? `${displayPath} in ${serverUrl.replace(/^https?:\/\//, "")}` : displayPath;
@@ -394223,7 +394222,7 @@ function Logo() {
394223
394222
  if ($2[2] === Symbol.for("react.memo_cache_sentinel")) {
394224
394223
  t2 = () => {
394225
394224
  const currentConfig = getGlobalConfig();
394226
- if (currentConfig.lastReleaseNotesSeen === "1.1.34") {
394225
+ if (currentConfig.lastReleaseNotesSeen === "1.1.35") {
394227
394226
  return;
394228
394227
  }
394229
394228
  saveGlobalConfig(_temp326);
@@ -394882,12 +394881,12 @@ function Logo() {
394882
394881
  return t41;
394883
394882
  }
394884
394883
  function _temp326(current) {
394885
- if (current.lastReleaseNotesSeen === "1.1.34") {
394884
+ if (current.lastReleaseNotesSeen === "1.1.35") {
394886
394885
  return current;
394887
394886
  }
394888
394887
  return {
394889
394888
  ...current,
394890
- lastReleaseNotesSeen: "1.1.34"
394889
+ lastReleaseNotesSeen: "1.1.35"
394891
394890
  };
394892
394891
  }
394893
394892
  function _temp241(s_0) {
@@ -425366,7 +425365,7 @@ async function captureMemoryDiagnostics(trigger, dumpNumber = 0) {
425366
425365
  smapsRollup,
425367
425366
  platform: process.platform,
425368
425367
  nodeVersion: process.version,
425369
- ccVersion: "1.1.34"
425368
+ ccVersion: "1.1.35"
425370
425369
  };
425371
425370
  }
425372
425371
  async function performHeapDump(trigger = "manual", dumpNumber = 0) {
@@ -425951,7 +425950,7 @@ var init_bridge_kick = __esm(() => {
425951
425950
  var call58 = async () => {
425952
425951
  return {
425953
425952
  type: "text",
425954
- value: `${"1.1.34"} (built ${"2026-04-13T04:11:24.859Z"})`
425953
+ value: `${"1.1.35"} (built ${"2026-04-14T13:54:24.741Z"})`
425955
425954
  };
425956
425955
  }, version, version_default;
425957
425956
  var init_version = __esm(() => {
@@ -433895,7 +433894,7 @@ function generateHtmlReport(data, insights) {
433895
433894
  </html>`;
433896
433895
  }
433897
433896
  function buildExportData(data, insights, facets, remoteStats) {
433898
- const version2 = typeof MACRO !== "undefined" ? "1.1.34" : "unknown";
433897
+ const version2 = typeof MACRO !== "undefined" ? "1.1.35" : "unknown";
433899
433898
  const remote_hosts_collected = remoteStats?.hosts.filter((h) => h.sessionCount > 0).map((h) => h.name);
433900
433899
  const facets_summary = {
433901
433900
  total: facets.size,
@@ -434409,7 +434408,7 @@ Include 3 friction categories with 2 examples each.`,
434409
434408
  prompt: `Analyze this localclawd usage data and suggest improvements.
434410
434409
 
434411
434410
  ## CC FEATURES REFERENCE (pick from these for features_to_try):
434412
- 1. **MCP Servers**: Connect Claude to external tools, databases, and APIs via Model Context Protocol.
434411
+ 1. **MCP Servers**: Connect localclawd to external tools, databases, and APIs via Model Context Protocol.
434413
434412
  - How to use: Run \`claude mcp add <server-name> -- <command>\`
434414
434413
  - Good for: database queries, Slack integration, GitHub issue lookup, connecting to internal APIs
434415
434414
 
@@ -435101,9 +435100,7 @@ var init_commands2 = __esm(() => {
435101
435100
  feedback_default,
435102
435101
  plan_default,
435103
435102
  keybindings_default,
435104
- statusline_default,
435105
- stickers,
435106
- mobile
435103
+ statusline_default
435107
435104
  ]);
435108
435105
  BRIDGE_SAFE_COMMANDS = new Set([
435109
435106
  compact_default,
@@ -438041,7 +438038,7 @@ var init_sessionStorage = __esm(() => {
438041
438038
  init_settings2();
438042
438039
  init_slowOperations();
438043
438040
  init_uuid();
438044
- VERSION6 = typeof MACRO !== "undefined" ? "1.1.34" : "unknown";
438041
+ VERSION6 = typeof MACRO !== "undefined" ? "1.1.35" : "unknown";
438045
438042
  MAX_TOMBSTONE_REWRITE_BYTES = 50 * 1024 * 1024;
438046
438043
  SKIP_FIRST_PROMPT_PATTERN = /^(?:\s*<[a-z][\w-]*[\s>]|\[Request interrupted by user[^\]]*\])/;
438047
438044
  EPHEMERAL_PROGRESS_TYPES = new Set([
@@ -439243,7 +439240,7 @@ var init_filesystem = __esm(() => {
439243
439240
  });
439244
439241
  getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
439245
439242
  const nonce = randomBytes19(16).toString("hex");
439246
- return join126(getClaudeTempDir(), "bundled-skills", "1.1.34", nonce);
439243
+ return join126(getClaudeTempDir(), "bundled-skills", "1.1.35", nonce);
439247
439244
  });
439248
439245
  getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
439249
439246
  });
@@ -448528,7 +448525,7 @@ function buildSystemInitMessage(inputs) {
448528
448525
  slash_commands: inputs.commands.filter((c5) => c5.userInvocable !== false).map((c5) => c5.name),
448529
448526
  apiKeySource: getAnthropicApiKeyWithSource().source,
448530
448527
  betas: getSdkBetas(),
448531
- claude_code_version: "1.1.34",
448528
+ claude_code_version: "1.1.35",
448532
448529
  output_style: outputStyle2,
448533
448530
  agents: inputs.agents.map((agent) => agent.agentType),
448534
448531
  skills: inputs.skills.filter((s) => s.userInvocable !== false).map((skill) => skill.name),
@@ -463107,7 +463104,7 @@ var init_useVoiceEnabled = __esm(() => {
463107
463104
  function getSemverPart(version2) {
463108
463105
  return `${import_semver10.major(version2, { loose: true })}.${import_semver10.minor(version2, { loose: true })}.${import_semver10.patch(version2, { loose: true })}`;
463109
463106
  }
463110
- function useUpdateNotification(updatedVersion, initialVersion = "1.1.34") {
463107
+ function useUpdateNotification(updatedVersion, initialVersion = "1.1.35") {
463111
463108
  const [lastNotifiedSemver, setLastNotifiedSemver] = import_react214.useState(() => getSemverPart(initialVersion));
463112
463109
  if (!updatedVersion) {
463113
463110
  return null;
@@ -463147,7 +463144,7 @@ function AutoUpdater({
463147
463144
  return;
463148
463145
  }
463149
463146
  if (false) {}
463150
- const currentVersion = "1.1.34";
463147
+ const currentVersion = "1.1.35";
463151
463148
  const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
463152
463149
  let latestVersion = await getLatestVersion(channel);
463153
463150
  const isDisabled = isAutoUpdaterDisabled();
@@ -463358,12 +463355,12 @@ function NativeAutoUpdater({
463358
463355
  logEvent("tengu_native_auto_updater_start", {});
463359
463356
  try {
463360
463357
  const maxVersion = await getMaxVersion();
463361
- if (maxVersion && gt("1.1.34", maxVersion)) {
463358
+ if (maxVersion && gt("1.1.35", maxVersion)) {
463362
463359
  const msg = await getMaxVersionMessage();
463363
463360
  setMaxVersionIssue(msg ?? "affects your version");
463364
463361
  }
463365
463362
  const result = await installLatest(channel);
463366
- const currentVersion = "1.1.34";
463363
+ const currentVersion = "1.1.35";
463367
463364
  const latencyMs = Date.now() - startTime;
463368
463365
  if (result.lockFailed) {
463369
463366
  logEvent("tengu_native_auto_updater_lock_contention", {
@@ -463498,17 +463495,17 @@ function PackageManagerAutoUpdater(t0) {
463498
463495
  const maxVersion = await getMaxVersion();
463499
463496
  if (maxVersion && latest && gt(latest, maxVersion)) {
463500
463497
  logForDebugging(`PackageManagerAutoUpdater: maxVersion ${maxVersion} is set, capping update from ${latest} to ${maxVersion}`);
463501
- if (gte("1.1.34", maxVersion)) {
463502
- logForDebugging(`PackageManagerAutoUpdater: current version ${"1.1.34"} is already at or above maxVersion ${maxVersion}, skipping update`);
463498
+ if (gte("1.1.35", maxVersion)) {
463499
+ logForDebugging(`PackageManagerAutoUpdater: current version ${"1.1.35"} is already at or above maxVersion ${maxVersion}, skipping update`);
463503
463500
  setUpdateAvailable(false);
463504
463501
  return;
463505
463502
  }
463506
463503
  latest = maxVersion;
463507
463504
  }
463508
- const hasUpdate = latest && !gte("1.1.34", latest) && !shouldSkipVersion(latest);
463505
+ const hasUpdate = latest && !gte("1.1.35", latest) && !shouldSkipVersion(latest);
463509
463506
  setUpdateAvailable(!!hasUpdate);
463510
463507
  if (hasUpdate) {
463511
- logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.1.34"} -> ${latest}`);
463508
+ logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.1.35"} -> ${latest}`);
463512
463509
  }
463513
463510
  };
463514
463511
  $2[0] = t1;
@@ -463542,7 +463539,7 @@ function PackageManagerAutoUpdater(t0) {
463542
463539
  wrap: "truncate",
463543
463540
  children: [
463544
463541
  "currentVersion: ",
463545
- "1.1.34"
463542
+ "1.1.35"
463546
463543
  ]
463547
463544
  }, undefined, true, undefined, this);
463548
463545
  $2[3] = verbose;
@@ -471100,7 +471097,7 @@ function buildStatusLineCommandInput(permissionMode, exceeds200kTokens, settings
471100
471097
  project_dir: getOriginalCwd(),
471101
471098
  added_dirs: addedDirs
471102
471099
  },
471103
- version: "1.1.34",
471100
+ version: "1.1.35",
471104
471101
  output_style: {
471105
471102
  name: outputStyleName
471106
471103
  },
@@ -482668,7 +482665,7 @@ async function submitTranscriptShare(messages, trigger, appearanceId) {
482668
482665
  } catch {}
482669
482666
  const data = {
482670
482667
  trigger,
482671
- version: "1.1.34",
482668
+ version: "1.1.35",
482672
482669
  platform: process.platform,
482673
482670
  transcript,
482674
482671
  subagentTranscripts: Object.keys(subagentTranscripts).length > 0 ? subagentTranscripts : undefined,
@@ -497629,7 +497626,7 @@ name: {{skill-name}}
497629
497626
  description: {{one-line description}}
497630
497627
  allowed-tools:
497631
497628
  {{list of tool permission patterns observed during session}}
497632
- when_to_use: {{detailed description of when Claude should automatically invoke this skill, including trigger phrases and example user messages}}
497629
+ when_to_use: {{detailed description of when localclawd should automatically invoke this skill, including trigger phrases and example user messages}}
497633
497630
  argument-hint: "{{hint showing argument placeholders}}"
497634
497631
  arguments:
497635
497632
  {{list of argument names}}
@@ -497779,7 +497776,7 @@ function generateSettingsSchema() {
497779
497776
  function registerUpdateConfigSkill() {
497780
497777
  registerBundledSkill({
497781
497778
  name: "update-config",
497782
- description: 'Use this skill to configure the localclawd harness via settings.json. Automated behaviors ("from now on when X", "each time X", "whenever X", "before/after X") require hooks configured in settings.json - the harness executes these, not Claude, so memory/preferences cannot fulfill them. Also use for: permissions ("allow X", "add permission", "move permission to"), env vars ("set X=Y"), hook troubleshooting, or any changes to settings.json/settings.local.json files. Examples: "allow npm commands", "add bq permission to global settings", "move permission to user settings", "set DEBUG=true", "when claude stops show X". For simple settings like theme/model, use Config tool.',
497779
+ description: 'Use this skill to configure the localclawd harness via settings.json. Automated behaviors ("from now on when X", "each time X", "whenever X", "before/after X") require hooks configured in settings.json - the harness executes these, not localclawd, so memory/preferences cannot fulfill them. Also use for: permissions ("allow X", "add permission", "move permission to"), env vars ("set X=Y"), hook troubleshooting, or any changes to settings.json/settings.local.json files. Examples: "allow npm commands", "add bq permission to global settings", "move permission to user settings", "set DEBUG=true", "when localclawd stops show X". For simple settings like theme/model, use Config tool.',
497783
497780
  allowedTools: ["Read"],
497784
497781
  userInvocable: true,
497785
497782
  async getPromptForCommand(args) {
@@ -497940,7 +497937,7 @@ Hooks run commands at specific points in localclawd's lifecycle.
497940
497937
  | PostToolUse | Tool name | Run after successful tool |
497941
497938
  | PostToolUseFailure | Tool name | Run after tool fails |
497942
497939
  | Notification | Notification type | Run on notifications |
497943
- | Stop | - | Run when Claude stops (including clear, resume, compact) |
497940
+ | Stop | - | Run when localclawd stops (including clear, resume, compact) |
497944
497941
  | PreCompact | "manual"/"auto" | Before compaction |
497945
497942
  | PostCompact | "manual"/"auto" | After compaction (receives summary) |
497946
497943
  | UserPromptSubmit | - | When user submits |
@@ -498185,7 +498182,7 @@ ${HOOK_VERIFICATION_FLOW}
498185
498182
 
498186
498183
  ### Adding a Hook
498187
498184
 
498188
- User: "Format my code after Claude writes it"
498185
+ User: "Format my code after localclawd writes it"
498189
498186
 
498190
498187
  1. **Clarify**: Which formatter? (prettier, gofmt, etc.)
498191
498188
  2. **Read**: \`.claude/settings.json\` (or create if missing)
@@ -499133,7 +499130,7 @@ function appendToLog(path17, message) {
499133
499130
  cwd: getFsImplementation().cwd(),
499134
499131
  userType: process.env.USER_TYPE,
499135
499132
  sessionId: getSessionId(),
499136
- version: "1.1.34"
499133
+ version: "1.1.35"
499137
499134
  };
499138
499135
  getLogWriter(path17).write(messageWithTimestamp);
499139
499136
  }
@@ -503132,8 +503129,8 @@ async function getEnvLessBridgeConfig() {
503132
503129
  }
503133
503130
  async function checkEnvLessBridgeMinVersion() {
503134
503131
  const cfg = await getEnvLessBridgeConfig();
503135
- if (cfg.min_version && lt("1.1.34", cfg.min_version)) {
503136
- return `Your version of localclawd (${"1.1.34"}) is too old for Remote Control.
503132
+ if (cfg.min_version && lt("1.1.35", cfg.min_version)) {
503133
+ return `Your version of localclawd (${"1.1.35"}) is too old for Remote Control.
503137
503134
  Version ${cfg.min_version} or higher is required. Run \`localclawd update\` to update.`;
503138
503135
  }
503139
503136
  return null;
@@ -503605,7 +503602,7 @@ async function initBridgeCore(params) {
503605
503602
  const rawApi = createBridgeApiClient({
503606
503603
  baseUrl,
503607
503604
  getAccessToken,
503608
- runnerVersion: "1.1.34",
503605
+ runnerVersion: "1.1.35",
503609
503606
  onDebug: logForDebugging,
503610
503607
  onAuth401,
503611
503608
  getTrustedDeviceToken
@@ -509324,7 +509321,7 @@ async function startMCPServer(cwd3, debug4, verbose) {
509324
509321
  setCwd(cwd3);
509325
509322
  const server = new Server({
509326
509323
  name: "claude/tengu",
509327
- version: "1.1.34"
509324
+ version: "1.1.35"
509328
509325
  }, {
509329
509326
  capabilities: {
509330
509327
  tools: {}
@@ -510405,7 +510402,7 @@ function WelcomeLogo() {
510405
510402
  dimColor: true,
510406
510403
  children: [
510407
510404
  "v",
510408
- "1.1.34"
510405
+ "1.1.35"
510409
510406
  ]
510410
510407
  }, undefined, true, undefined, this)
510411
510408
  ]
@@ -510596,7 +510593,7 @@ __export(exports_update, {
510596
510593
  });
510597
510594
  async function update() {
510598
510595
  logEvent("tengu_update_check", {});
510599
- writeToStdout(`Current version: ${"1.1.34"}
510596
+ writeToStdout(`Current version: ${"1.1.35"}
510600
510597
  `);
510601
510598
  const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
510602
510599
  writeToStdout(`Checking for updates to ${channel} version...
@@ -510671,8 +510668,8 @@ async function update() {
510671
510668
  writeToStdout(`localclawd is managed by Homebrew.
510672
510669
  `);
510673
510670
  const latest = await getLatestVersion(channel);
510674
- if (latest && !gte("1.1.34", latest)) {
510675
- writeToStdout(`Update available: ${"1.1.34"} → ${latest}
510671
+ if (latest && !gte("1.1.35", latest)) {
510672
+ writeToStdout(`Update available: ${"1.1.35"} → ${latest}
510676
510673
  `);
510677
510674
  writeToStdout(`
510678
510675
  `);
@@ -510688,8 +510685,8 @@ async function update() {
510688
510685
  writeToStdout(`localclawd is managed by winget.
510689
510686
  `);
510690
510687
  const latest = await getLatestVersion(channel);
510691
- if (latest && !gte("1.1.34", latest)) {
510692
- writeToStdout(`Update available: ${"1.1.34"} → ${latest}
510688
+ if (latest && !gte("1.1.35", latest)) {
510689
+ writeToStdout(`Update available: ${"1.1.35"} → ${latest}
510693
510690
  `);
510694
510691
  writeToStdout(`
510695
510692
  `);
@@ -510703,8 +510700,8 @@ async function update() {
510703
510700
  writeToStdout(`localclawd is managed by apk.
510704
510701
  `);
510705
510702
  const latest = await getLatestVersion(channel);
510706
- if (latest && !gte("1.1.34", latest)) {
510707
- writeToStdout(`Update available: ${"1.1.34"} → ${latest}
510703
+ if (latest && !gte("1.1.35", latest)) {
510704
+ writeToStdout(`Update available: ${"1.1.35"} → ${latest}
510708
510705
  `);
510709
510706
  writeToStdout(`
510710
510707
  `);
@@ -510769,11 +510766,11 @@ async function update() {
510769
510766
  `);
510770
510767
  await gracefulShutdown(1);
510771
510768
  }
510772
- if (result.latestVersion === "1.1.34") {
510773
- writeToStdout(source_default.green(`localclawd is up to date (${"1.1.34"})`) + `
510769
+ if (result.latestVersion === "1.1.35") {
510770
+ writeToStdout(source_default.green(`localclawd is up to date (${"1.1.35"})`) + `
510774
510771
  `);
510775
510772
  } else {
510776
- writeToStdout(source_default.green(`Successfully updated from ${"1.1.34"} to version ${result.latestVersion}`) + `
510773
+ writeToStdout(source_default.green(`Successfully updated from ${"1.1.35"} to version ${result.latestVersion}`) + `
510777
510774
  `);
510778
510775
  await regenerateCompletionCache();
510779
510776
  }
@@ -510833,12 +510830,12 @@ async function update() {
510833
510830
  `);
510834
510831
  await gracefulShutdown(1);
510835
510832
  }
510836
- if (latestVersion === "1.1.34") {
510837
- writeToStdout(source_default.green(`localclawd is up to date (${"1.1.34"})`) + `
510833
+ if (latestVersion === "1.1.35") {
510834
+ writeToStdout(source_default.green(`localclawd is up to date (${"1.1.35"})`) + `
510838
510835
  `);
510839
510836
  await gracefulShutdown(0);
510840
510837
  }
510841
- writeToStdout(`New version available: ${latestVersion} (current: ${"1.1.34"})
510838
+ writeToStdout(`New version available: ${latestVersion} (current: ${"1.1.35"})
510842
510839
  `);
510843
510840
  writeToStdout(`Installing update...
510844
510841
  `);
@@ -510883,7 +510880,7 @@ async function update() {
510883
510880
  logForDebugging(`update: Installation status: ${status2}`);
510884
510881
  switch (status2) {
510885
510882
  case "success":
510886
- writeToStdout(source_default.green(`Successfully updated from ${"1.1.34"} to version ${latestVersion}`) + `
510883
+ writeToStdout(source_default.green(`Successfully updated from ${"1.1.35"} to version ${latestVersion}`) + `
510887
510884
  `);
510888
510885
  await regenerateCompletionCache();
510889
510886
  break;
@@ -512125,7 +512122,7 @@ Run with --debug for more details.
512125
512122
  }
512126
512123
  }
512127
512124
  logForDiagnosticsNoPII("info", "started", {
512128
- version: "1.1.34",
512125
+ version: "1.1.35",
512129
512126
  is_native_binary: isInBundledMode()
512130
512127
  });
512131
512128
  registerCleanup(async () => {
@@ -512909,7 +512906,7 @@ Usage: localclawd --remote "your task description"`, () => gracefulShutdown(1));
512909
512906
  pendingHookMessages
512910
512907
  }, renderAndRun);
512911
512908
  }
512912
- }).version("1.1.34 (localclawd)", "-v, --version", "Output the version number");
512909
+ }).version("1.1.35 (localclawd)", "-v, --version", "Output the version number");
512913
512910
  program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
512914
512911
  program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
512915
512912
  if (canUserConfigureAdvisor()) {
@@ -513409,7 +513406,7 @@ if (false) {}
513409
513406
  async function main2() {
513410
513407
  const args = process.argv.slice(2);
513411
513408
  if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
513412
- console.log(`${"1.1.34"} (localclawd)`);
513409
+ console.log(`${"1.1.35"} (localclawd)`);
513413
513410
  return;
513414
513411
  }
513415
513412
  const {
@@ -513492,4 +513489,4 @@ localclawd crashed: ${msg}
513492
513489
  process.exit(1);
513493
513490
  });
513494
513491
 
513495
- //# debugId=DF3E949855745D2864756E2164756E21
513492
+ //# debugId=B3364D9664593D7B64756E2164756E21
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "localclawd",
3
- "version": "1.1.34",
3
+ "version": "1.1.35",
4
4
  "description": "Local-first coding CLI for vLLM, Ollama, and OpenAI-compatible backends.",
5
5
  "private": false,
6
6
  "type": "module",