very-happy-cli 0.2.115 → 0.2.116

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 (35) hide show
  1. package/dist/{AcpBackend-BrZN8KM-.cjs → AcpBackend-CauAQpC1.cjs} +1 -1
  2. package/dist/{AcpBackend-DEZTWZZu.mjs → AcpBackend-CfKPvoTU.mjs} +1 -1
  3. package/dist/{AcpSessionManager-BzP3eiOG.mjs → AcpSessionManager-BQ6pBRW4.mjs} +1 -1
  4. package/dist/{AcpSessionManager-DjulpKY0.cjs → AcpSessionManager-CA6xeET_.cjs} +1 -1
  5. package/dist/{config-BNAsx9Wg.cjs → config-BoteFn-v.cjs} +2 -2
  6. package/dist/{config-CMgRBQMS.mjs → config-BpR_CwZu.mjs} +2 -2
  7. package/dist/{index-tPXwlc_t.cjs → index-4jiUeiUz.cjs} +110 -18
  8. package/dist/{index-CpGR7rIw.mjs → index-C45xN8s0.mjs} +5 -5
  9. package/dist/{index-B2KfhNku.mjs → index-D7azxfcs.mjs} +2 -2
  10. package/dist/{index-ClR0jhjm.cjs → index-DWmhmji9.cjs} +4 -4
  11. package/dist/{index-BHNEb4bc.mjs → index-Dq-eFp89.mjs} +106 -14
  12. package/dist/{index-B3UkbonP.cjs → index-lX1UliOs.cjs} +2 -2
  13. package/dist/index.cjs +2 -2
  14. package/dist/index.mjs +2 -2
  15. package/dist/{installTerminalHooks-CWfCF68p.cjs → installTerminalHooks-DnaFkrTF.cjs} +2 -2
  16. package/dist/{installTerminalHooks-DD6QuHfT.mjs → installTerminalHooks-k3TrBHD0.mjs} +2 -2
  17. package/dist/lib.cjs +1 -1
  18. package/dist/lib.d.cts +25 -0
  19. package/dist/lib.d.mts +25 -0
  20. package/dist/lib.mjs +1 -1
  21. package/dist/{mcp-CiNrjYox.mjs → mcp-DRePTOap.mjs} +2 -2
  22. package/dist/{mcp-CqjiDRnG.cjs → mcp-DSpEpM_2.cjs} +2 -2
  23. package/dist/{runGemini-UN5IznJp.cjs → runGemini-IWHyBq0A.cjs} +4 -4
  24. package/dist/{runGemini-DdJqpywr.mjs → runGemini-_9-a7duU.mjs} +4 -4
  25. package/dist/{runOpenClaw-9hhfGllZ.cjs → runOpenClaw-0myYIz1U.cjs} +3 -3
  26. package/dist/{runOpenClaw-CM5UrVBy.mjs → runOpenClaw-Boq6LQ9a.mjs} +3 -3
  27. package/dist/{send-CnVtXOj0.cjs → send-CwWvFfay.cjs} +2 -2
  28. package/dist/{send-C6G2jsQp.mjs → send-Cyo6mgMl.mjs} +2 -2
  29. package/dist/{sessions-CGdcF05T.cjs → sessions-CbzqYiAy.cjs} +2 -2
  30. package/dist/{sessions-CmabJzYS.mjs → sessions-lvfTH_ql.mjs} +2 -2
  31. package/dist/{spawn-qb344Y5E.mjs → spawn-CU0DMauA.mjs} +2 -2
  32. package/dist/{spawn-CfYddkS_.cjs → spawn-DQ6FTUK9.cjs} +2 -2
  33. package/dist/{types-CpnzfHHS.cjs → types-C5kEpkcZ.cjs} +150 -15
  34. package/dist/{types-B3qx8Ga1.mjs → types-Ds0SiQ1D.mjs} +149 -14
  35. package/package.json +7 -7
@@ -3,7 +3,7 @@
3
3
  var node_child_process = require('node:child_process');
4
4
  var sdk = require('@agentclientprotocol/sdk');
5
5
  var node_crypto = require('node:crypto');
6
- var persistence = require('./types-CpnzfHHS.cjs');
6
+ var persistence = require('./types-C5kEpkcZ.cjs');
7
7
 
8
8
  const DEFAULT_TIMEOUTS = {
9
9
  /** Default initialization timeout: 60 seconds */
@@ -1,7 +1,7 @@
1
1
  import { spawn } from 'node:child_process';
2
2
  import { ndJsonStream, ClientSideConnection } from '@agentclientprotocol/sdk';
3
3
  import { randomUUID } from 'node:crypto';
4
- import { l as logger, d as contentLogMetadata, e as errorLogMetadata, f as packageJson, g as delay } from './types-B3qx8Ga1.mjs';
4
+ import { l as logger, d as contentLogMetadata, e as errorLogMetadata, f as packageJson, g as delay } from './types-Ds0SiQ1D.mjs';
5
5
 
6
6
  const DEFAULT_TIMEOUTS = {
7
7
  /** Default initialization timeout: 60 seconds */
@@ -1,5 +1,5 @@
1
1
  import { createId } from '@paralleldrive/cuid2';
2
- import { b as createEnvelope } from './types-B3qx8Ga1.mjs';
2
+ import { b as createEnvelope } from './types-Ds0SiQ1D.mjs';
3
3
 
4
4
  function turnOptions(turnId, time) {
5
5
  return turnId ? { turn: turnId, time } : { time };
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var cuid2 = require('@paralleldrive/cuid2');
4
- var persistence = require('./types-CpnzfHHS.cjs');
4
+ var persistence = require('./types-C5kEpkcZ.cjs');
5
5
 
6
6
  function turnOptions(turnId, time) {
7
7
  return turnId ? { turn: turnId, time } : { time };
@@ -4,8 +4,8 @@ var fs = require('fs');
4
4
  var path = require('path');
5
5
  var os = require('os');
6
6
  var child_process = require('child_process');
7
- var persistence = require('./types-CpnzfHHS.cjs');
8
- var index = require('./index-tPXwlc_t.cjs');
7
+ var persistence = require('./types-C5kEpkcZ.cjs');
8
+ var index = require('./index-4jiUeiUz.cjs');
9
9
  require('axios');
10
10
  require('chalk');
11
11
  require('node:util');
@@ -2,8 +2,8 @@ import { existsSync, readFileSync, mkdirSync, writeFileSync } from 'fs';
2
2
  import { join } from 'path';
3
3
  import { homedir } from 'os';
4
4
  import { execSync } from 'child_process';
5
- import { l as logger } from './types-B3qx8Ga1.mjs';
6
- import { g as DEFAULT_GEMINI_MODEL, G as GEMINI_MODEL_ENV } from './index-BHNEb4bc.mjs';
5
+ import { l as logger } from './types-Ds0SiQ1D.mjs';
6
+ import { g as DEFAULT_GEMINI_MODEL, G as GEMINI_MODEL_ENV } from './index-Dq-eFp89.mjs';
7
7
  import 'axios';
8
8
  import 'chalk';
9
9
  import 'node:util';
@@ -3,7 +3,7 @@
3
3
  var chalk = require('chalk');
4
4
  var os = require('node:os');
5
5
  var node_crypto = require('node:crypto');
6
- var persistence = require('./types-CpnzfHHS.cjs');
6
+ var persistence = require('./types-C5kEpkcZ.cjs');
7
7
  var spawn = require('cross-spawn');
8
8
  var path = require('node:path');
9
9
  var node_readline = require('node:readline');
@@ -7119,6 +7119,21 @@ function decideHandover(run) {
7119
7119
  return { action: "handover" };
7120
7120
  }
7121
7121
 
7122
+ function decideAutoUpdate(context) {
7123
+ if (!context.enabled) return { action: "skip", reason: "auto-update disabled" };
7124
+ const target = context.recommendedVersion;
7125
+ if (!target) return { action: "skip", reason: "no recommended version published" };
7126
+ if (target === context.currentVersion) return { action: "skip", reason: "already current" };
7127
+ if (context.failedVersion === target) {
7128
+ return { action: "skip", reason: `already failed to install ${target} once` };
7129
+ }
7130
+ if (!context.idle) return { action: "skip", reason: "machine is busy" };
7131
+ return { action: "install", version: target };
7132
+ }
7133
+ function autoUpdateInstallArgs(version) {
7134
+ return ["i", "-g", "--allow-scripts=very-happy-cli,node-pty", `very-happy-cli@${version}`];
7135
+ }
7136
+
7122
7137
  const CLAUDE_KEYCHAIN_SERVICE_PREFIX = "Claude Code";
7123
7138
  function keychainIdentity(env = process.env, deps = {}) {
7124
7139
  const home = deps.home ?? os.homedir();
@@ -7182,7 +7197,7 @@ function parseJsonObject(text) {
7182
7197
  return null;
7183
7198
  }
7184
7199
  }
7185
- function resolveSdkClaudeBinary(platform = process.platform, arch = process.arch, resolver = (s) => node_module.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index-tPXwlc_t.cjs', document.baseURI).href))).resolve(s)) {
7200
+ function resolveSdkClaudeBinary(platform = process.platform, arch = process.arch, resolver = (s) => node_module.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index-4jiUeiUz.cjs', document.baseURI).href))).resolve(s)) {
7186
7201
  const platformArch = `${platform}-${arch}`;
7187
7202
  const candidates = [
7188
7203
  `@anthropic-ai/claude-agent-sdk-${platformArch}/claude`,
@@ -8399,6 +8414,40 @@ function withHandoverHold(state, reason) {
8399
8414
  return reason ? { ...state, handoverHold: { reason, at: Date.now() } } : { ...state, handoverHold: null };
8400
8415
  }
8401
8416
  const HANDOVER_PREFLIGHT_TIMEOUT_MS = 3e4;
8417
+ function runNpmInstall(args) {
8418
+ return new Promise((resolve) => {
8419
+ let settled = false;
8420
+ const done = (code) => {
8421
+ if (!settled) {
8422
+ settled = true;
8423
+ resolve(code);
8424
+ }
8425
+ };
8426
+ let child;
8427
+ try {
8428
+ child = node_child_process.spawn("npm", args, { stdio: "ignore", env: process.env });
8429
+ } catch {
8430
+ done(null);
8431
+ return;
8432
+ }
8433
+ const timer = setTimeout(() => {
8434
+ try {
8435
+ child.kill("SIGKILL");
8436
+ } catch {
8437
+ }
8438
+ done(null);
8439
+ }, AUTO_UPDATE_INSTALL_TIMEOUT_MS);
8440
+ child.on("error", () => {
8441
+ clearTimeout(timer);
8442
+ done(null);
8443
+ });
8444
+ child.on("close", (code) => {
8445
+ clearTimeout(timer);
8446
+ done(code);
8447
+ });
8448
+ });
8449
+ }
8450
+ const AUTO_UPDATE_INSTALL_TIMEOUT_MS = 10 * 6e4;
8402
8451
  async function startDaemon() {
8403
8452
  let claudeAuthServiceRef = null;
8404
8453
  let cliUpdateStateRef = null;
@@ -9465,6 +9514,48 @@ async function startDaemon() {
9465
9514
  host: initialMachineMetadata.host
9466
9515
  })).then(() => persistence.logger.debug(`[DAEMON RUN] claimed the machine record for host ${initialMachineMetadata.host}`)).catch((error) => persistence.logger.debug("[DAEMON RUN] could not refresh the recorded host:", error));
9467
9516
  }
9517
+ let autoUpdateFailedVersion = null;
9518
+ let autoUpdateRunning = false;
9519
+ const maybeAutoUpdate = async (cliUpdate) => {
9520
+ if (autoUpdateRunning) return;
9521
+ const settings = await persistence.readSettings();
9522
+ const decision = decideAutoUpdate({
9523
+ enabled: (settings.cliAutoUpdate ?? "idle") !== "off",
9524
+ currentVersion: cliUpdate.currentVersion,
9525
+ recommendedVersion: cliUpdate.recommendedVersion,
9526
+ idle: pidToTrackedSession.size === 0 && !apiMachine.hasLiveTerminals(),
9527
+ failedVersion: autoUpdateFailedVersion
9528
+ });
9529
+ if (decision.action === "skip") {
9530
+ persistence.logger.debug(`[DAEMON RUN] auto-update skipped: ${decision.reason}`);
9531
+ return;
9532
+ }
9533
+ autoUpdateRunning = true;
9534
+ const target = decision.version;
9535
+ const report = (state, detail) => {
9536
+ cliUpdateStateRef = { ...cliUpdate, autoUpdate: { state, version: target, detail, at: Date.now() } };
9537
+ void apiMachine.setCliUpdateState(cliUpdateStateRef);
9538
+ };
9539
+ persistence.logger.warn(`[DAEMON RUN] auto-updating CLI to ${target} (machine idle)`);
9540
+ report("installing");
9541
+ try {
9542
+ const code = await runNpmInstall(autoUpdateInstallArgs(target));
9543
+ if (code === 0) {
9544
+ persistence.logger.warn(`[DAEMON RUN] auto-update installed ${target}; handover follows once it verifies`);
9545
+ report("installed");
9546
+ } else {
9547
+ autoUpdateFailedVersion = target;
9548
+ persistence.logger.warn(`[DAEMON RUN] auto-update of ${target} failed with exit ${code}`);
9549
+ report("failed", `npm exited ${code}`);
9550
+ }
9551
+ } catch (error) {
9552
+ autoUpdateFailedVersion = target;
9553
+ persistence.logger.warn(`[DAEMON RUN] auto-update of ${target} could not run:`, error);
9554
+ report("failed", String(error).slice(0, 200));
9555
+ } finally {
9556
+ autoUpdateRunning = false;
9557
+ }
9558
+ };
9468
9559
  let cliUpdateCheckRunning = false;
9469
9560
  const refreshCliUpdate = async () => {
9470
9561
  if (cliUpdateCheckRunning) return;
@@ -9477,6 +9568,7 @@ async function startDaemon() {
9477
9568
  cliUpdateStateRef = cliUpdate;
9478
9569
  apiMachine.setCliUpdateState(cliUpdate);
9479
9570
  persistence.logger.debug(`[DAEMON RUN] CLI update policy checked: ${cliUpdate.status} (recommended=${cliUpdate.recommendedVersion ?? "none"}, minimum=${cliUpdate.minimumVersion ?? "none"})`);
9571
+ await maybeAutoUpdate(cliUpdate);
9480
9572
  } catch (error) {
9481
9573
  persistence.logger.debug("[DAEMON RUN] CLI update policy check failed:", error);
9482
9574
  } finally {
@@ -10693,7 +10785,7 @@ function registerSideQuestionHandler(rpc, deps) {
10693
10785
  const retainMs = deps.retainMs ?? SIDE_QUESTION_RETAIN_MS;
10694
10786
  const maxRunMs = deps.maxRunMs ?? SIDE_QUESTION_MAX_RUN_MS;
10695
10787
  const run = deps.run ?? (async (input) => {
10696
- const { query } = await Promise.resolve().then(function () { return require('./index-B3UkbonP.cjs'); });
10788
+ const { query } = await Promise.resolve().then(function () { return require('./index-lX1UliOs.cjs'); });
10697
10789
  return runSideQuestion(query, input);
10698
10790
  });
10699
10791
  const slots = /* @__PURE__ */ new Map();
@@ -10795,7 +10887,7 @@ const MAX_TITLE_CHARS = 60;
10795
10887
  const GENERATION_TIMEOUT_MS = 3e4;
10796
10888
  function resolveClaudeBinary() {
10797
10889
  try {
10798
- const require$1 = node_module.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index-tPXwlc_t.cjs', document.baseURI).href)));
10890
+ const require$1 = node_module.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index-4jiUeiUz.cjs', document.baseURI).href)));
10799
10891
  const utilsPath = path.resolve(path.join(persistence.projectPath(), "scripts", "claude_version_utils.cjs"));
10800
10892
  const { getClaudeCliPath } = require$1(utilsPath);
10801
10893
  const path$1 = getClaudeCliPath();
@@ -12997,9 +13089,9 @@ function resolveLocalSignupBootstrap(configuredMode, configuredInviteCodes, gene
12997
13089
  };
12998
13090
  }
12999
13091
 
13000
- const __filename$1 = node_url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index-tPXwlc_t.cjs', document.baseURI).href)));
13092
+ const __filename$1 = node_url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index-4jiUeiUz.cjs', document.baseURI).href)));
13001
13093
  const __dirname$1 = path.dirname(__filename$1);
13002
- const require_ = node_module.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index-tPXwlc_t.cjs', document.baseURI).href)));
13094
+ const require_ = node_module.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index-4jiUeiUz.cjs', document.baseURI).href)));
13003
13095
  const PRISMA_QUERY_ENGINE_FILES = {
13004
13096
  "arm64-darwin": "libquery_engine-darwin-arm64.dylib.node",
13005
13097
  "x64-darwin": "libquery_engine-darwin.dylib.node",
@@ -15623,7 +15715,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
15623
15715
  process.exit(0);
15624
15716
  } else if (subcommand === "install-terminal-hooks") {
15625
15717
  try {
15626
- const { installTerminalHooks, parseTerminalHooksArgs, TERMINAL_HOOKS_HELP } = await Promise.resolve().then(function () { return require('./installTerminalHooks-CWfCF68p.cjs'); });
15718
+ const { installTerminalHooks, parseTerminalHooksArgs, TERMINAL_HOOKS_HELP } = await Promise.resolve().then(function () { return require('./installTerminalHooks-DnaFkrTF.cjs'); });
15627
15719
  const command = parseTerminalHooksArgs(args.slice(1));
15628
15720
  if (command.action === "help") {
15629
15721
  console.log(TERMINAL_HOOKS_HELP);
@@ -15640,7 +15732,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
15640
15732
  }
15641
15733
  } else if (subcommand === "spawn") {
15642
15734
  try {
15643
- const { handleSpawnCommand } = await Promise.resolve().then(function () { return require('./spawn-CfYddkS_.cjs'); });
15735
+ const { handleSpawnCommand } = await Promise.resolve().then(function () { return require('./spawn-DQ6FTUK9.cjs'); });
15644
15736
  await handleSpawnCommand(args.slice(1));
15645
15737
  } catch (error) {
15646
15738
  console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
@@ -15652,7 +15744,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
15652
15744
  return;
15653
15745
  } else if (subcommand === "sessions") {
15654
15746
  try {
15655
- const { handleSessionsCommand } = await Promise.resolve().then(function () { return require('./sessions-CGdcF05T.cjs'); });
15747
+ const { handleSessionsCommand } = await Promise.resolve().then(function () { return require('./sessions-CbzqYiAy.cjs'); });
15656
15748
  await handleSessionsCommand(args.slice(1));
15657
15749
  } catch (error) {
15658
15750
  console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
@@ -15664,7 +15756,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
15664
15756
  return;
15665
15757
  } else if (subcommand === "send") {
15666
15758
  try {
15667
- const { handleSendCommand } = await Promise.resolve().then(function () { return require('./send-CnVtXOj0.cjs'); });
15759
+ const { handleSendCommand } = await Promise.resolve().then(function () { return require('./send-CwWvFfay.cjs'); });
15668
15760
  await handleSendCommand(args.slice(1));
15669
15761
  } catch (error) {
15670
15762
  console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
@@ -15770,9 +15862,9 @@ Conversation history is preserved on the server, but in-flight tool calls are in
15770
15862
  if (geminiSubcommand === "project" && args[2] === "set" && args[3]) {
15771
15863
  const projectId = args[3];
15772
15864
  try {
15773
- const { saveGoogleCloudProjectToConfig } = await Promise.resolve().then(function () { return require('./config-BNAsx9Wg.cjs'); });
15774
- const { readCredentialsForConfiguredRelay: readCredentialsForConfiguredRelay2 } = await Promise.resolve().then(function () { return require('./types-CpnzfHHS.cjs'); }).then(function (n) { return n.persistence; });
15775
- const { ApiClient: ApiClient2 } = await Promise.resolve().then(function () { return require('./types-CpnzfHHS.cjs'); }).then(function (n) { return n.api; });
15865
+ const { saveGoogleCloudProjectToConfig } = await Promise.resolve().then(function () { return require('./config-BoteFn-v.cjs'); });
15866
+ const { readCredentialsForConfiguredRelay: readCredentialsForConfiguredRelay2 } = await Promise.resolve().then(function () { return require('./types-C5kEpkcZ.cjs'); }).then(function (n) { return n.persistence; });
15867
+ const { ApiClient: ApiClient2 } = await Promise.resolve().then(function () { return require('./types-C5kEpkcZ.cjs'); }).then(function (n) { return n.api; });
15776
15868
  let userEmail = void 0;
15777
15869
  try {
15778
15870
  const credentials = await readCredentialsForConfiguredRelay2();
@@ -15803,7 +15895,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
15803
15895
  }
15804
15896
  if (geminiSubcommand === "project" && args[2] === "get") {
15805
15897
  try {
15806
- const { readGeminiLocalConfig } = await Promise.resolve().then(function () { return require('./config-BNAsx9Wg.cjs'); });
15898
+ const { readGeminiLocalConfig } = await Promise.resolve().then(function () { return require('./config-BoteFn-v.cjs'); });
15807
15899
  const config = readGeminiLocalConfig();
15808
15900
  if (config.googleCloudProject) {
15809
15901
  console.log(`Current Google Cloud Project: ${config.googleCloudProject}`);
@@ -15843,7 +15935,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
15843
15935
  process.exit(0);
15844
15936
  }
15845
15937
  try {
15846
- const { runGemini } = await Promise.resolve().then(function () { return require('./runGemini-UN5IznJp.cjs'); });
15938
+ const { runGemini } = await Promise.resolve().then(function () { return require('./runGemini-IWHyBq0A.cjs'); });
15847
15939
  let startedBy = void 0;
15848
15940
  for (let i = 1; i < args.length; i++) {
15849
15941
  if (args[i] === "--started-by") {
@@ -15865,7 +15957,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
15865
15957
  return;
15866
15958
  } else if (subcommand === "acp") {
15867
15959
  try {
15868
- const { runAcp, resolveAcpAgentConfig } = await Promise.resolve().then(function () { return require('./index-ClR0jhjm.cjs'); });
15960
+ const { runAcp, resolveAcpAgentConfig } = await Promise.resolve().then(function () { return require('./index-DWmhmji9.cjs'); });
15869
15961
  let startedBy = void 0;
15870
15962
  let verbose = false;
15871
15963
  const acpArgs = [];
@@ -15905,7 +15997,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
15905
15997
  return;
15906
15998
  } else if (subcommand === "openclaw") {
15907
15999
  try {
15908
- const { runOpenClaw } = await Promise.resolve().then(function () { return require('./runOpenClaw-9hhfGllZ.cjs'); });
16000
+ const { runOpenClaw } = await Promise.resolve().then(function () { return require('./runOpenClaw-0myYIz1U.cjs'); });
15909
16001
  let startedBy = void 0;
15910
16002
  let verbose = false;
15911
16003
  let gatewayUrl;
@@ -15956,7 +16048,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
15956
16048
  return;
15957
16049
  } else if (subcommand === "mcp" && args.length === 1) {
15958
16050
  try {
15959
- const { handleMcpCommand } = await Promise.resolve().then(function () { return require('./mcp-CqjiDRnG.cjs'); });
16051
+ const { handleMcpCommand } = await Promise.resolve().then(function () { return require('./mcp-DSpEpM_2.cjs'); });
15960
16052
  await handleMcpCommand();
15961
16053
  } catch (error) {
15962
16054
  process.stderr.write(`[very-happy mcp] Fatal: ${error instanceof Error ? error.message : String(error)}
@@ -1,10 +1,10 @@
1
- import { D as DefaultTransport, A as AcpBackend } from './AcpBackend-DEZTWZZu.mjs';
2
- export { a as DEFAULT_IDLE_TIMEOUT_MS, b as DEFAULT_TOOL_CALL_TIMEOUT_MS, e as extractErrorDetail, f as formatDuration, c as formatDurationMinutes, h as handleAgentMessageChunk, d as handleAgentThoughtChunk, g as handleLegacyMessageChunk, i as handlePlanUpdate, j as handleThinkingUpdate, k as handleToolCall, l as handleToolCallUpdate, p as parseArgsFromContent } from './AcpBackend-DEZTWZZu.mjs';
3
- import { h as connectionState, A as ApiClient, j as readSettings, k as encodeBase64, l as logger, p as projectPath } from './types-B3qx8Ga1.mjs';
4
- import { A as AcpSessionManager } from './AcpSessionManager-BzP3eiOG.mjs';
1
+ import { D as DefaultTransport, A as AcpBackend } from './AcpBackend-CfKPvoTU.mjs';
2
+ export { a as DEFAULT_IDLE_TIMEOUT_MS, b as DEFAULT_TOOL_CALL_TIMEOUT_MS, e as extractErrorDetail, f as formatDuration, c as formatDurationMinutes, h as handleAgentMessageChunk, d as handleAgentThoughtChunk, g as handleLegacyMessageChunk, i as handlePlanUpdate, j as handleThinkingUpdate, k as handleToolCall, l as handleToolCallUpdate, p as parseArgsFromContent } from './AcpBackend-CfKPvoTU.mjs';
3
+ import { h as connectionState, A as ApiClient, j as readSettings, k as encodeBase64, l as logger, p as projectPath } from './types-Ds0SiQ1D.mjs';
4
+ import { A as AcpSessionManager } from './AcpSessionManager-BQ6pBRW4.mjs';
5
5
  import { randomUUID } from 'node:crypto';
6
6
  import { join } from 'node:path';
7
- import { h as initialMachineMetadata, j as createSessionMetadata, k as setupOfflineReconnection, n as notifyDaemonSessionStarted, m as MessageQueue2, o as hashObject, u as startHappyServer, v as registerKillSessionHandler, B as BasePermissionHandler } from './index-BHNEb4bc.mjs';
7
+ import { h as initialMachineMetadata, j as createSessionMetadata, k as setupOfflineReconnection, n as notifyDaemonSessionStarted, m as MessageQueue2, o as hashObject, u as startHappyServer, v as registerKillSessionHandler, B as BasePermissionHandler } from './index-Dq-eFp89.mjs';
8
8
  import 'node:child_process';
9
9
  import '@agentclientprotocol/sdk';
10
10
  import 'axios';
@@ -1,9 +1,9 @@
1
- import { q as query } from './index-BHNEb4bc.mjs';
1
+ import { q as query } from './index-Dq-eFp89.mjs';
2
2
  export { AbortError } from '@anthropic-ai/claude-agent-sdk';
3
3
  import 'chalk';
4
4
  import 'node:os';
5
5
  import 'node:crypto';
6
- import './types-B3qx8Ga1.mjs';
6
+ import './types-Ds0SiQ1D.mjs';
7
7
  import 'axios';
8
8
  import 'node:util';
9
9
  import 'node:fs';
@@ -1,11 +1,11 @@
1
1
  'use strict';
2
2
 
3
- var AcpBackend = require('./AcpBackend-BrZN8KM-.cjs');
4
- var persistence = require('./types-CpnzfHHS.cjs');
5
- var AcpSessionManager = require('./AcpSessionManager-DjulpKY0.cjs');
3
+ var AcpBackend = require('./AcpBackend-CauAQpC1.cjs');
4
+ var persistence = require('./types-C5kEpkcZ.cjs');
5
+ var AcpSessionManager = require('./AcpSessionManager-CA6xeET_.cjs');
6
6
  var node_crypto = require('node:crypto');
7
7
  var path = require('node:path');
8
- var index = require('./index-tPXwlc_t.cjs');
8
+ var index = require('./index-4jiUeiUz.cjs');
9
9
  require('node:child_process');
10
10
  require('@agentclientprotocol/sdk');
11
11
  require('axios');
@@ -1,7 +1,7 @@
1
1
  import{createRequire as _pkgrollCR}from"node:module";const require=_pkgrollCR(import.meta.url);import chalk from 'chalk';
2
2
  import os, { homedir, userInfo, tmpdir } from 'node:os';
3
3
  import { randomUUID, randomBytes, createHash as createHash$1, timingSafeEqual } from 'node:crypto';
4
- import { o as readDaemonState, l as logger, c as configuration, q as clearDaemonState, s as getProjectPath, p as projectPath, t as initializeSandbox, u as wrapCommand, d as contentLogMetadata, I as InvalidateSync, R as RawJSONLinesSchema, g as delay, v as AsyncLock, S as STREAM_DELTA_MAX_CHARS, x as ensurePrivateDirectory, M as MAX_CHAT_ATTACHMENT_SOURCE_BYTES, y as hardenPrivateFile, f as packageJson, j as readSettings, z as readCredentials, B as credentialRelayProblem, C as deriveLocalCliUpdateSummary, k as encodeBase64, D as updateSettings, E as encodeBase64Url, F as decodeBase64, G as writeCredentialsLegacy, H as writeCredentialsDataKey, J as readCredentialsForConfiguredRelay, K as encrypt, r as readPersistedSessions, L as isClaudeSessionId, N as getLocalHappyAgentCredentialPath, O as readLocalHappyAgentCredentials, P as decryptWithDataKey, Q as decryptLegacy, T as extractCompleteLines, U as decideBackfill, V as parseTerminalHookPayload, W as tmuxArgs, X as scrubTmuxClientEnv, Y as decideMirrorBinding, Z as MIRROR_BACKFILL_LINES_DEFAULT, _ as persistSession, $ as mirrorLineKey, a0 as mirrorLocalId, w as writePrivateFileSync, a1 as detectResumeSupport, a2 as detectCLIAvailability, a3 as acquireDaemonLock, a4 as summarizeSpawnSessionForLog, a5 as deletePersistedSessions, a6 as shellescape, a7 as decrypt, a8 as writeDaemonState, A as ApiClient, a9 as writeSettings, aa as fetchCliUpdateState, ab as resolveCliUpdateCheckInterval, ac as DEFAULT_CLI_UPDATE_CHECK_INTERVAL_MS, ad as releaseDaemonLock, i as isValidSessionId, ae as listVhTerminals, af as isValidTerminalId, ag as readVhTerminal, ah as sendToVhTerminal, ai as TITLE_PROMPT_PREFIX, aj as BOARD_ANALYZER_PROMPT_PREFIX, h as connectionState, ak as startOfflineReconnection, al as clearCredentials, am as clearMachineId, m as ensurePrivateDirectorySync, an as SandboxConfigSchema, b as createEnvelope, ao as CodexAppServerClient, ap as getLatestDaemonLog } from './types-B3qx8Ga1.mjs';
4
+ import { o as readDaemonState, l as logger, c as configuration, q as clearDaemonState, s as getProjectPath, p as projectPath, t as initializeSandbox, u as wrapCommand, d as contentLogMetadata, I as InvalidateSync, R as RawJSONLinesSchema, g as delay, v as AsyncLock, S as STREAM_DELTA_MAX_CHARS, x as ensurePrivateDirectory, M as MAX_CHAT_ATTACHMENT_SOURCE_BYTES, y as hardenPrivateFile, f as packageJson, j as readSettings, z as readCredentials, B as credentialRelayProblem, C as deriveLocalCliUpdateSummary, k as encodeBase64, D as updateSettings, E as encodeBase64Url, F as decodeBase64, G as writeCredentialsLegacy, H as writeCredentialsDataKey, J as readCredentialsForConfiguredRelay, K as encrypt, r as readPersistedSessions, L as isClaudeSessionId, N as getLocalHappyAgentCredentialPath, O as readLocalHappyAgentCredentials, P as decryptWithDataKey, Q as decryptLegacy, T as extractCompleteLines, U as decideBackfill, V as parseTerminalHookPayload, W as tmuxArgs, X as scrubTmuxClientEnv, Y as decideMirrorBinding, Z as MIRROR_BACKFILL_LINES_DEFAULT, _ as persistSession, $ as mirrorLineKey, a0 as mirrorLocalId, w as writePrivateFileSync, a1 as detectResumeSupport, a2 as detectCLIAvailability, a3 as acquireDaemonLock, a4 as summarizeSpawnSessionForLog, a5 as deletePersistedSessions, a6 as shellescape, a7 as decrypt, a8 as writeDaemonState, A as ApiClient, a9 as writeSettings, aa as fetchCliUpdateState, ab as resolveCliUpdateCheckInterval, ac as DEFAULT_CLI_UPDATE_CHECK_INTERVAL_MS, ad as releaseDaemonLock, i as isValidSessionId, ae as listVhTerminals, af as isValidTerminalId, ag as readVhTerminal, ah as sendToVhTerminal, ai as TITLE_PROMPT_PREFIX, aj as BOARD_ANALYZER_PROMPT_PREFIX, h as connectionState, ak as startOfflineReconnection, al as clearCredentials, am as clearMachineId, m as ensurePrivateDirectorySync, an as SandboxConfigSchema, b as createEnvelope, ao as CodexAppServerClient, ap as getLatestDaemonLog } from './types-Ds0SiQ1D.mjs';
5
5
  import spawn$1, { spawn } from 'cross-spawn';
6
6
  import path, { join, resolve, basename, delimiter, isAbsolute, normalize, sep, dirname } from 'node:path';
7
7
  import { createInterface } from 'node:readline';
@@ -7097,6 +7097,21 @@ function decideHandover(run) {
7097
7097
  return { action: "handover" };
7098
7098
  }
7099
7099
 
7100
+ function decideAutoUpdate(context) {
7101
+ if (!context.enabled) return { action: "skip", reason: "auto-update disabled" };
7102
+ const target = context.recommendedVersion;
7103
+ if (!target) return { action: "skip", reason: "no recommended version published" };
7104
+ if (target === context.currentVersion) return { action: "skip", reason: "already current" };
7105
+ if (context.failedVersion === target) {
7106
+ return { action: "skip", reason: `already failed to install ${target} once` };
7107
+ }
7108
+ if (!context.idle) return { action: "skip", reason: "machine is busy" };
7109
+ return { action: "install", version: target };
7110
+ }
7111
+ function autoUpdateInstallArgs(version) {
7112
+ return ["i", "-g", "--allow-scripts=very-happy-cli,node-pty", `very-happy-cli@${version}`];
7113
+ }
7114
+
7100
7115
  const CLAUDE_KEYCHAIN_SERVICE_PREFIX = "Claude Code";
7101
7116
  function keychainIdentity(env = process.env, deps = {}) {
7102
7117
  const home = deps.home ?? homedir();
@@ -8377,6 +8392,40 @@ function withHandoverHold(state, reason) {
8377
8392
  return reason ? { ...state, handoverHold: { reason, at: Date.now() } } : { ...state, handoverHold: null };
8378
8393
  }
8379
8394
  const HANDOVER_PREFLIGHT_TIMEOUT_MS = 3e4;
8395
+ function runNpmInstall(args) {
8396
+ return new Promise((resolve) => {
8397
+ let settled = false;
8398
+ const done = (code) => {
8399
+ if (!settled) {
8400
+ settled = true;
8401
+ resolve(code);
8402
+ }
8403
+ };
8404
+ let child;
8405
+ try {
8406
+ child = spawn$3("npm", args, { stdio: "ignore", env: process.env });
8407
+ } catch {
8408
+ done(null);
8409
+ return;
8410
+ }
8411
+ const timer = setTimeout(() => {
8412
+ try {
8413
+ child.kill("SIGKILL");
8414
+ } catch {
8415
+ }
8416
+ done(null);
8417
+ }, AUTO_UPDATE_INSTALL_TIMEOUT_MS);
8418
+ child.on("error", () => {
8419
+ clearTimeout(timer);
8420
+ done(null);
8421
+ });
8422
+ child.on("close", (code) => {
8423
+ clearTimeout(timer);
8424
+ done(code);
8425
+ });
8426
+ });
8427
+ }
8428
+ const AUTO_UPDATE_INSTALL_TIMEOUT_MS = 10 * 6e4;
8380
8429
  async function startDaemon() {
8381
8430
  let claudeAuthServiceRef = null;
8382
8431
  let cliUpdateStateRef = null;
@@ -9443,6 +9492,48 @@ async function startDaemon() {
9443
9492
  host: initialMachineMetadata.host
9444
9493
  })).then(() => logger.debug(`[DAEMON RUN] claimed the machine record for host ${initialMachineMetadata.host}`)).catch((error) => logger.debug("[DAEMON RUN] could not refresh the recorded host:", error));
9445
9494
  }
9495
+ let autoUpdateFailedVersion = null;
9496
+ let autoUpdateRunning = false;
9497
+ const maybeAutoUpdate = async (cliUpdate) => {
9498
+ if (autoUpdateRunning) return;
9499
+ const settings = await readSettings();
9500
+ const decision = decideAutoUpdate({
9501
+ enabled: (settings.cliAutoUpdate ?? "idle") !== "off",
9502
+ currentVersion: cliUpdate.currentVersion,
9503
+ recommendedVersion: cliUpdate.recommendedVersion,
9504
+ idle: pidToTrackedSession.size === 0 && !apiMachine.hasLiveTerminals(),
9505
+ failedVersion: autoUpdateFailedVersion
9506
+ });
9507
+ if (decision.action === "skip") {
9508
+ logger.debug(`[DAEMON RUN] auto-update skipped: ${decision.reason}`);
9509
+ return;
9510
+ }
9511
+ autoUpdateRunning = true;
9512
+ const target = decision.version;
9513
+ const report = (state, detail) => {
9514
+ cliUpdateStateRef = { ...cliUpdate, autoUpdate: { state, version: target, detail, at: Date.now() } };
9515
+ void apiMachine.setCliUpdateState(cliUpdateStateRef);
9516
+ };
9517
+ logger.warn(`[DAEMON RUN] auto-updating CLI to ${target} (machine idle)`);
9518
+ report("installing");
9519
+ try {
9520
+ const code = await runNpmInstall(autoUpdateInstallArgs(target));
9521
+ if (code === 0) {
9522
+ logger.warn(`[DAEMON RUN] auto-update installed ${target}; handover follows once it verifies`);
9523
+ report("installed");
9524
+ } else {
9525
+ autoUpdateFailedVersion = target;
9526
+ logger.warn(`[DAEMON RUN] auto-update of ${target} failed with exit ${code}`);
9527
+ report("failed", `npm exited ${code}`);
9528
+ }
9529
+ } catch (error) {
9530
+ autoUpdateFailedVersion = target;
9531
+ logger.warn(`[DAEMON RUN] auto-update of ${target} could not run:`, error);
9532
+ report("failed", String(error).slice(0, 200));
9533
+ } finally {
9534
+ autoUpdateRunning = false;
9535
+ }
9536
+ };
9446
9537
  let cliUpdateCheckRunning = false;
9447
9538
  const refreshCliUpdate = async () => {
9448
9539
  if (cliUpdateCheckRunning) return;
@@ -9455,6 +9546,7 @@ async function startDaemon() {
9455
9546
  cliUpdateStateRef = cliUpdate;
9456
9547
  apiMachine.setCliUpdateState(cliUpdate);
9457
9548
  logger.debug(`[DAEMON RUN] CLI update policy checked: ${cliUpdate.status} (recommended=${cliUpdate.recommendedVersion ?? "none"}, minimum=${cliUpdate.minimumVersion ?? "none"})`);
9549
+ await maybeAutoUpdate(cliUpdate);
9458
9550
  } catch (error) {
9459
9551
  logger.debug("[DAEMON RUN] CLI update policy check failed:", error);
9460
9552
  } finally {
@@ -10671,7 +10763,7 @@ function registerSideQuestionHandler(rpc, deps) {
10671
10763
  const retainMs = deps.retainMs ?? SIDE_QUESTION_RETAIN_MS;
10672
10764
  const maxRunMs = deps.maxRunMs ?? SIDE_QUESTION_MAX_RUN_MS;
10673
10765
  const run = deps.run ?? (async (input) => {
10674
- const { query } = await import('./index-B2KfhNku.mjs');
10766
+ const { query } = await import('./index-D7azxfcs.mjs');
10675
10767
  return runSideQuestion(query, input);
10676
10768
  });
10677
10769
  const slots = /* @__PURE__ */ new Map();
@@ -15601,7 +15693,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
15601
15693
  process.exit(0);
15602
15694
  } else if (subcommand === "install-terminal-hooks") {
15603
15695
  try {
15604
- const { installTerminalHooks, parseTerminalHooksArgs, TERMINAL_HOOKS_HELP } = await import('./installTerminalHooks-DD6QuHfT.mjs');
15696
+ const { installTerminalHooks, parseTerminalHooksArgs, TERMINAL_HOOKS_HELP } = await import('./installTerminalHooks-k3TrBHD0.mjs');
15605
15697
  const command = parseTerminalHooksArgs(args.slice(1));
15606
15698
  if (command.action === "help") {
15607
15699
  console.log(TERMINAL_HOOKS_HELP);
@@ -15618,7 +15710,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
15618
15710
  }
15619
15711
  } else if (subcommand === "spawn") {
15620
15712
  try {
15621
- const { handleSpawnCommand } = await import('./spawn-qb344Y5E.mjs');
15713
+ const { handleSpawnCommand } = await import('./spawn-CU0DMauA.mjs');
15622
15714
  await handleSpawnCommand(args.slice(1));
15623
15715
  } catch (error) {
15624
15716
  console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
@@ -15630,7 +15722,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
15630
15722
  return;
15631
15723
  } else if (subcommand === "sessions") {
15632
15724
  try {
15633
- const { handleSessionsCommand } = await import('./sessions-CmabJzYS.mjs');
15725
+ const { handleSessionsCommand } = await import('./sessions-lvfTH_ql.mjs');
15634
15726
  await handleSessionsCommand(args.slice(1));
15635
15727
  } catch (error) {
15636
15728
  console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
@@ -15642,7 +15734,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
15642
15734
  return;
15643
15735
  } else if (subcommand === "send") {
15644
15736
  try {
15645
- const { handleSendCommand } = await import('./send-C6G2jsQp.mjs');
15737
+ const { handleSendCommand } = await import('./send-Cyo6mgMl.mjs');
15646
15738
  await handleSendCommand(args.slice(1));
15647
15739
  } catch (error) {
15648
15740
  console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
@@ -15748,9 +15840,9 @@ Conversation history is preserved on the server, but in-flight tool calls are in
15748
15840
  if (geminiSubcommand === "project" && args[2] === "set" && args[3]) {
15749
15841
  const projectId = args[3];
15750
15842
  try {
15751
- const { saveGoogleCloudProjectToConfig } = await import('./config-CMgRBQMS.mjs');
15752
- const { readCredentialsForConfiguredRelay: readCredentialsForConfiguredRelay2 } = await import('./types-B3qx8Ga1.mjs').then(function (n) { return n.aq; });
15753
- const { ApiClient: ApiClient2 } = await import('./types-B3qx8Ga1.mjs').then(function (n) { return n.ar; });
15843
+ const { saveGoogleCloudProjectToConfig } = await import('./config-BpR_CwZu.mjs');
15844
+ const { readCredentialsForConfiguredRelay: readCredentialsForConfiguredRelay2 } = await import('./types-Ds0SiQ1D.mjs').then(function (n) { return n.aq; });
15845
+ const { ApiClient: ApiClient2 } = await import('./types-Ds0SiQ1D.mjs').then(function (n) { return n.ar; });
15754
15846
  let userEmail = void 0;
15755
15847
  try {
15756
15848
  const credentials = await readCredentialsForConfiguredRelay2();
@@ -15781,7 +15873,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
15781
15873
  }
15782
15874
  if (geminiSubcommand === "project" && args[2] === "get") {
15783
15875
  try {
15784
- const { readGeminiLocalConfig } = await import('./config-CMgRBQMS.mjs');
15876
+ const { readGeminiLocalConfig } = await import('./config-BpR_CwZu.mjs');
15785
15877
  const config = readGeminiLocalConfig();
15786
15878
  if (config.googleCloudProject) {
15787
15879
  console.log(`Current Google Cloud Project: ${config.googleCloudProject}`);
@@ -15821,7 +15913,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
15821
15913
  process.exit(0);
15822
15914
  }
15823
15915
  try {
15824
- const { runGemini } = await import('./runGemini-DdJqpywr.mjs');
15916
+ const { runGemini } = await import('./runGemini-_9-a7duU.mjs');
15825
15917
  let startedBy = void 0;
15826
15918
  for (let i = 1; i < args.length; i++) {
15827
15919
  if (args[i] === "--started-by") {
@@ -15843,7 +15935,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
15843
15935
  return;
15844
15936
  } else if (subcommand === "acp") {
15845
15937
  try {
15846
- const { runAcp, resolveAcpAgentConfig } = await import('./index-CpGR7rIw.mjs');
15938
+ const { runAcp, resolveAcpAgentConfig } = await import('./index-C45xN8s0.mjs');
15847
15939
  let startedBy = void 0;
15848
15940
  let verbose = false;
15849
15941
  const acpArgs = [];
@@ -15883,7 +15975,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
15883
15975
  return;
15884
15976
  } else if (subcommand === "openclaw") {
15885
15977
  try {
15886
- const { runOpenClaw } = await import('./runOpenClaw-CM5UrVBy.mjs');
15978
+ const { runOpenClaw } = await import('./runOpenClaw-Boq6LQ9a.mjs');
15887
15979
  let startedBy = void 0;
15888
15980
  let verbose = false;
15889
15981
  let gatewayUrl;
@@ -15934,7 +16026,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
15934
16026
  return;
15935
16027
  } else if (subcommand === "mcp" && args.length === 1) {
15936
16028
  try {
15937
- const { handleMcpCommand } = await import('./mcp-CiNrjYox.mjs');
16029
+ const { handleMcpCommand } = await import('./mcp-DRePTOap.mjs');
15938
16030
  await handleMcpCommand();
15939
16031
  } catch (error) {
15940
16032
  process.stderr.write(`[very-happy mcp] Fatal: ${error instanceof Error ? error.message : String(error)}
@@ -1,11 +1,11 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-tPXwlc_t.cjs');
3
+ var index = require('./index-4jiUeiUz.cjs');
4
4
  var claudeAgentSdk = require('@anthropic-ai/claude-agent-sdk');
5
5
  require('chalk');
6
6
  require('node:os');
7
7
  require('node:crypto');
8
- require('./types-CpnzfHHS.cjs');
8
+ require('./types-C5kEpkcZ.cjs');
9
9
  require('axios');
10
10
  require('node:util');
11
11
  require('node:fs');
package/dist/index.cjs CHANGED
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
2
 
3
3
  require('chalk');
4
- require('./index-tPXwlc_t.cjs');
5
- require('./types-CpnzfHHS.cjs');
4
+ require('./index-4jiUeiUz.cjs');
5
+ require('./types-C5kEpkcZ.cjs');
6
6
  require('zod');
7
7
  require('node:child_process');
8
8
  require('node:os');
package/dist/index.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import 'chalk';
2
- import './index-BHNEb4bc.mjs';
3
- import './types-B3qx8Ga1.mjs';
2
+ import './index-Dq-eFp89.mjs';
3
+ import './types-Ds0SiQ1D.mjs';
4
4
  import 'zod';
5
5
  import 'node:child_process';
6
6
  import 'node:os';