very-happy-cli 0.2.139 → 0.2.140

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 (43) hide show
  1. package/dist/{AcpBackend-ioCPQLt4.cjs → AcpBackend-C0Lq4uoA.cjs} +2 -2
  2. package/dist/{AcpBackend-BwTEBAyP.mjs → AcpBackend-DsSYq8T-.mjs} +2 -2
  3. package/dist/{AcpSessionManager-Bh3KETfz.mjs → AcpSessionManager-BAErE9s0.mjs} +1 -1
  4. package/dist/{AcpSessionManager-o9T6W69-.cjs → AcpSessionManager-DIqByTH7.cjs} +1 -1
  5. package/dist/{agentGuidance-Dxt2uz3R.cjs → agentGuidance-Dl3apItH.cjs} +1 -1
  6. package/dist/{agentGuidance-DRnXdFAY.mjs → agentGuidance-xk3v4_7E.mjs} +1 -1
  7. package/dist/codex/happyMcpStdioBridge.cjs +2 -2
  8. package/dist/codex/happyMcpStdioBridge.mjs +2 -2
  9. package/dist/{config-o9NFsj8x.mjs → config-BVoHul9V.mjs} +4 -4
  10. package/dist/{config-nyMHCx-i.cjs → config-D0-jnCOC.cjs} +4 -4
  11. package/dist/{index-BkmfJyCf.mjs → index-BNydKYvS.mjs} +7 -7
  12. package/dist/{index-CTemcNko.mjs → index-BPnAbcz_.mjs} +4 -4
  13. package/dist/{index-gkFhwPXq.cjs → index-BuQn9kUK.cjs} +4 -4
  14. package/dist/{index-BZr5l8TH.mjs → index-D0IP7gXG.mjs} +42 -21
  15. package/dist/{index-klhxcpC8.cjs → index-DJvzGXVN.cjs} +6 -6
  16. package/dist/{index-C3NtU4Ch.cjs → index-__h-pCTK.cjs} +46 -25
  17. package/dist/index.cjs +4 -4
  18. package/dist/index.mjs +4 -4
  19. package/dist/{installTerminalHooks-8CHTgUC-.mjs → installTerminalHooks-D2ice1a-.mjs} +4 -4
  20. package/dist/{installTerminalHooks-DZUBgnFh.cjs → installTerminalHooks-D3jfvbyY.cjs} +4 -4
  21. package/dist/lib.cjs +2 -2
  22. package/dist/lib.mjs +2 -2
  23. package/dist/{limits-C_RGzva6.cjs → limits-Dbip6eVO.cjs} +7 -7
  24. package/dist/{limits-DefXc1TL.mjs → limits-nhD0Wran.mjs} +7 -7
  25. package/dist/{mcp-czNIfD59.cjs → mcp-DeapmTWN.cjs} +4 -4
  26. package/dist/{mcp-8DcunR0J.mjs → mcp-V26C05fN.mjs} +4 -4
  27. package/dist/{runGemini-Dy3y-lD9.cjs → runGemini-D34eCFpz.cjs} +6 -6
  28. package/dist/{runGemini-CDUObQTD.mjs → runGemini-sa5kAgPe.mjs} +6 -6
  29. package/dist/{runOpenClaw-CJusckVM.cjs → runOpenClaw-B8F8D--R.cjs} +5 -5
  30. package/dist/{runOpenClaw-B6KMCsVB.mjs → runOpenClaw-Bdsq8KBa.mjs} +5 -5
  31. package/dist/{send-B4Qo-87h.cjs → send-DP_S3wn0.cjs} +4 -4
  32. package/dist/{send-BT32Jiel.mjs → send-KICC_ACz.mjs} +4 -4
  33. package/dist/{sessions-Dh0Lg-5z.mjs → sessions-C6EvnC4B.mjs} +4 -4
  34. package/dist/{sessions-CN2y0xBl.cjs → sessions-CGBBgVZn.cjs} +4 -4
  35. package/dist/{spawn-jWj3xFhX.cjs → spawn-BhUK0Vt2.cjs} +4 -4
  36. package/dist/{spawn-DFIyobCt.mjs → spawn-C1OqXJNb.mjs} +4 -4
  37. package/dist/{teams-BhFspeAY.cjs → teams-C29nEHFD.cjs} +4 -4
  38. package/dist/{teams-CZ9ICWeB.mjs → teams-Dm5HGpNz.mjs} +4 -4
  39. package/dist/{todo-jL3ttna3.mjs → todo-C-vovA0N.mjs} +3 -3
  40. package/dist/{todo-B0kvqUTQ.cjs → todo-CeJX0z_2.cjs} +3 -3
  41. package/dist/{types-CxGm_YJ-.cjs → types-DCVS050m.cjs} +2 -2
  42. package/dist/{types-CrKeJuyF.mjs → types-thyvQB2a.mjs} +1 -1
  43. package/package.json +7 -7
@@ -3,13 +3,13 @@
3
3
  var chalk = require('chalk');
4
4
  var os = require('node:os');
5
5
  var node_crypto = require('node:crypto');
6
- var api = require('./types-CxGm_YJ-.cjs');
7
- var persistence = require('./limits-C_RGzva6.cjs');
6
+ var api = require('./types-DCVS050m.cjs');
7
+ var persistence = require('./limits-Dbip6eVO.cjs');
8
8
  var spawn = require('cross-spawn');
9
9
  var path = require('node:path');
10
10
  var node_readline = require('node:readline');
11
11
  var node_fs = require('node:fs');
12
- var agentGuidance = require('./agentGuidance-Dxt2uz3R.cjs');
12
+ var agentGuidance = require('./agentGuidance-Dl3apItH.cjs');
13
13
  var promises = require('node:fs/promises');
14
14
  var fs = require('fs/promises');
15
15
  var ink = require('ink');
@@ -3718,6 +3718,7 @@ function applyClaudeSdkMetadata(current, update) {
3718
3718
  function createTurnSteeringController() {
3719
3719
  let interrupt = null;
3720
3720
  let steering = false;
3721
+ let interrupting = false;
3721
3722
  return {
3722
3723
  setInterrupt(next) {
3723
3724
  interrupt = next;
@@ -3742,17 +3743,31 @@ function createTurnSteeringController() {
3742
3743
  */
3743
3744
  async interruptTurn() {
3744
3745
  if (!interrupt) return false;
3745
- await interrupt();
3746
- return true;
3746
+ interrupting = true;
3747
+ try {
3748
+ await interrupt();
3749
+ return true;
3750
+ } catch (error) {
3751
+ interrupting = false;
3752
+ throw error;
3753
+ }
3747
3754
  },
3748
3755
  consumeReady() {
3749
3756
  if (!steering) return false;
3750
3757
  steering = false;
3751
3758
  return true;
3752
3759
  },
3760
+ /** The next `result` belongs to a stop-button interrupt: close the
3761
+ * turn as cancelled and say "Aborted by user", not "failed". */
3762
+ consumeInterrupted() {
3763
+ if (!interrupting) return false;
3764
+ interrupting = false;
3765
+ return true;
3766
+ },
3753
3767
  reset() {
3754
3768
  interrupt = null;
3755
3769
  steering = false;
3770
+ interrupting = false;
3756
3771
  }
3757
3772
  };
3758
3773
  }
@@ -3914,6 +3929,7 @@ async function claudeRemoteLauncher(session, onPermissionModeChange, onEffective
3914
3929
  return;
3915
3930
  }
3916
3931
  persistence.logger.debug("[remote]: interrupt did not stop the turn in time; escalating to hard abort");
3932
+ turnSteering.consumeInterrupted();
3917
3933
  }
3918
3934
  await abort();
3919
3935
  }
@@ -4247,6 +4263,11 @@ async function claudeRemoteLauncher(session, onPermissionModeChange, onEffective
4247
4263
  session.client.closeClaudeSessionTurn("cancelled");
4248
4264
  return;
4249
4265
  }
4266
+ if (turnSteering.consumeInterrupted()) {
4267
+ session.client.closeClaudeSessionTurn("cancelled");
4268
+ session.client.sendSessionEvent({ type: "message", message: "Aborted by user" });
4269
+ return;
4270
+ }
4250
4271
  applyClaudeResultLifecycle(result, {
4251
4272
  closeCompleted: () => session.client.closeClaudeSessionTurn("completed"),
4252
4273
  closeFailed: (error) => session.client.closeClaudeSessionTurn("failed", { error }),
@@ -7854,7 +7875,7 @@ function parseJsonObject(text) {
7854
7875
  return null;
7855
7876
  }
7856
7877
  }
7857
- 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-C3NtU4Ch.cjs', document.baseURI).href))).resolve(s)) {
7878
+ 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-__h-pCTK.cjs', document.baseURI).href))).resolve(s)) {
7858
7879
  const platformArch = `${platform}-${arch}`;
7859
7880
  const candidates = [
7860
7881
  `@anthropic-ai/claude-agent-sdk-${platformArch}/claude`,
@@ -12306,7 +12327,7 @@ function registerSideQuestionHandler(rpc, deps) {
12306
12327
  const retainMs = deps.retainMs ?? SIDE_QUESTION_RETAIN_MS;
12307
12328
  const maxRunMs = deps.maxRunMs ?? SIDE_QUESTION_MAX_RUN_MS;
12308
12329
  const run = deps.run ?? (async (input) => {
12309
- const { query } = await Promise.resolve().then(function () { return require('./index-gkFhwPXq.cjs'); });
12330
+ const { query } = await Promise.resolve().then(function () { return require('./index-BuQn9kUK.cjs'); });
12310
12331
  return runSideQuestion(query, input);
12311
12332
  });
12312
12333
  const slots = /* @__PURE__ */ new Map();
@@ -12408,7 +12429,7 @@ const MAX_TITLE_CHARS = 60;
12408
12429
  const GENERATION_TIMEOUT_MS = 3e4;
12409
12430
  function resolveClaudeBinary() {
12410
12431
  try {
12411
- 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-C3NtU4Ch.cjs', document.baseURI).href)));
12432
+ 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-__h-pCTK.cjs', document.baseURI).href)));
12412
12433
  const utilsPath = path.resolve(path.join(api.projectPath(), "scripts", "claude_version_utils.cjs"));
12413
12434
  const { getClaudeCliPath } = require$1(utilsPath);
12414
12435
  const path$1 = getClaudeCliPath();
@@ -14634,9 +14655,9 @@ function resolveLocalSignupBootstrap(configuredMode, configuredInviteCodes, gene
14634
14655
  };
14635
14656
  }
14636
14657
 
14637
- 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-C3NtU4Ch.cjs', document.baseURI).href)));
14658
+ 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-__h-pCTK.cjs', document.baseURI).href)));
14638
14659
  const __dirname$1 = path.dirname(__filename$1);
14639
- const require_ = node_module.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index-C3NtU4Ch.cjs', document.baseURI).href)));
14660
+ const require_ = node_module.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index-__h-pCTK.cjs', document.baseURI).href)));
14640
14661
  const PRISMA_QUERY_ENGINE_FILES = {
14641
14662
  "arm64-darwin": "libquery_engine-darwin-arm64.dylib.node",
14642
14663
  "x64-darwin": "libquery_engine-darwin.dylib.node",
@@ -17542,7 +17563,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
17542
17563
  process.exit(0);
17543
17564
  } else if (subcommand === "install-terminal-hooks") {
17544
17565
  try {
17545
- const { installTerminalHooks, parseTerminalHooksArgs, TERMINAL_HOOKS_HELP } = await Promise.resolve().then(function () { return require('./installTerminalHooks-DZUBgnFh.cjs'); });
17566
+ const { installTerminalHooks, parseTerminalHooksArgs, TERMINAL_HOOKS_HELP } = await Promise.resolve().then(function () { return require('./installTerminalHooks-D3jfvbyY.cjs'); });
17546
17567
  const command = parseTerminalHooksArgs(args.slice(1));
17547
17568
  if (command.action === "help") {
17548
17569
  console.log(TERMINAL_HOOKS_HELP);
@@ -17559,7 +17580,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
17559
17580
  }
17560
17581
  } else if (subcommand === "spawn") {
17561
17582
  try {
17562
- const { handleSpawnCommand } = await Promise.resolve().then(function () { return require('./spawn-jWj3xFhX.cjs'); });
17583
+ const { handleSpawnCommand } = await Promise.resolve().then(function () { return require('./spawn-BhUK0Vt2.cjs'); });
17563
17584
  await handleSpawnCommand(args.slice(1));
17564
17585
  } catch (error) {
17565
17586
  console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
@@ -17571,7 +17592,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
17571
17592
  return;
17572
17593
  } else if (subcommand === "sessions") {
17573
17594
  try {
17574
- const { handleSessionsCommand } = await Promise.resolve().then(function () { return require('./sessions-CN2y0xBl.cjs'); });
17595
+ const { handleSessionsCommand } = await Promise.resolve().then(function () { return require('./sessions-CGBBgVZn.cjs'); });
17575
17596
  await handleSessionsCommand(args.slice(1));
17576
17597
  } catch (error) {
17577
17598
  console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
@@ -17583,7 +17604,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
17583
17604
  return;
17584
17605
  } else if (subcommand === "send") {
17585
17606
  try {
17586
- const { handleSendCommand } = await Promise.resolve().then(function () { return require('./send-B4Qo-87h.cjs'); });
17607
+ const { handleSendCommand } = await Promise.resolve().then(function () { return require('./send-DP_S3wn0.cjs'); });
17587
17608
  await handleSendCommand(args.slice(1));
17588
17609
  } catch (error) {
17589
17610
  console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
@@ -17689,9 +17710,9 @@ Conversation history is preserved on the server, but in-flight tool calls are in
17689
17710
  if (geminiSubcommand === "project" && args[2] === "set" && args[3]) {
17690
17711
  const projectId = args[3];
17691
17712
  try {
17692
- const { saveGoogleCloudProjectToConfig } = await Promise.resolve().then(function () { return require('./config-nyMHCx-i.cjs'); });
17693
- const { readCredentialsForConfiguredRelay: readCredentialsForConfiguredRelay2 } = await Promise.resolve().then(function () { return require('./limits-C_RGzva6.cjs'); }).then(function (n) { return n.persistence; });
17694
- const { ApiClient: ApiClient2 } = await Promise.resolve().then(function () { return require('./types-CxGm_YJ-.cjs'); }).then(function (n) { return n.api; });
17713
+ const { saveGoogleCloudProjectToConfig } = await Promise.resolve().then(function () { return require('./config-D0-jnCOC.cjs'); });
17714
+ const { readCredentialsForConfiguredRelay: readCredentialsForConfiguredRelay2 } = await Promise.resolve().then(function () { return require('./limits-Dbip6eVO.cjs'); }).then(function (n) { return n.persistence; });
17715
+ const { ApiClient: ApiClient2 } = await Promise.resolve().then(function () { return require('./types-DCVS050m.cjs'); }).then(function (n) { return n.api; });
17695
17716
  let userEmail = void 0;
17696
17717
  try {
17697
17718
  const credentials = await readCredentialsForConfiguredRelay2();
@@ -17722,7 +17743,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
17722
17743
  }
17723
17744
  if (geminiSubcommand === "project" && args[2] === "get") {
17724
17745
  try {
17725
- const { readGeminiLocalConfig } = await Promise.resolve().then(function () { return require('./config-nyMHCx-i.cjs'); });
17746
+ const { readGeminiLocalConfig } = await Promise.resolve().then(function () { return require('./config-D0-jnCOC.cjs'); });
17726
17747
  const config = readGeminiLocalConfig();
17727
17748
  if (config.googleCloudProject) {
17728
17749
  console.log(`Current Google Cloud Project: ${config.googleCloudProject}`);
@@ -17762,7 +17783,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
17762
17783
  process.exit(0);
17763
17784
  }
17764
17785
  try {
17765
- const { runGemini } = await Promise.resolve().then(function () { return require('./runGemini-Dy3y-lD9.cjs'); });
17786
+ const { runGemini } = await Promise.resolve().then(function () { return require('./runGemini-D34eCFpz.cjs'); });
17766
17787
  let startedBy = void 0;
17767
17788
  for (let i = 1; i < args.length; i++) {
17768
17789
  if (args[i] === "--started-by") {
@@ -17792,7 +17813,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
17792
17813
  }
17793
17814
  };
17794
17815
  try {
17795
- const { runAcp, resolveAcpAgentConfig } = await Promise.resolve().then(function () { return require('./index-klhxcpC8.cjs'); });
17816
+ const { runAcp, resolveAcpAgentConfig } = await Promise.resolve().then(function () { return require('./index-DJvzGXVN.cjs'); });
17796
17817
  const parsed = parsePiRunnerArgs(args.slice(1));
17797
17818
  const resolved = resolveAcpAgentConfig(["pi", ...parsed.passthrough]);
17798
17819
  const { credentials } = await authAndSetupMachineIfNeeded();
@@ -17820,7 +17841,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
17820
17841
  return;
17821
17842
  } else if (subcommand === "acp") {
17822
17843
  try {
17823
- const { runAcp, resolveAcpAgentConfig } = await Promise.resolve().then(function () { return require('./index-klhxcpC8.cjs'); });
17844
+ const { runAcp, resolveAcpAgentConfig } = await Promise.resolve().then(function () { return require('./index-DJvzGXVN.cjs'); });
17824
17845
  let startedBy = void 0;
17825
17846
  let verbose = false;
17826
17847
  const acpArgs = [];
@@ -17860,7 +17881,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
17860
17881
  return;
17861
17882
  } else if (subcommand === "openclaw") {
17862
17883
  try {
17863
- const { runOpenClaw } = await Promise.resolve().then(function () { return require('./runOpenClaw-CJusckVM.cjs'); });
17884
+ const { runOpenClaw } = await Promise.resolve().then(function () { return require('./runOpenClaw-B8F8D--R.cjs'); });
17864
17885
  let startedBy = void 0;
17865
17886
  let verbose = false;
17866
17887
  let gatewayUrl;
@@ -17911,7 +17932,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
17911
17932
  return;
17912
17933
  } else if (subcommand === "todo") {
17913
17934
  try {
17914
- const { handleTodoCommand } = await Promise.resolve().then(function () { return require('./todo-B0kvqUTQ.cjs'); });
17935
+ const { handleTodoCommand } = await Promise.resolve().then(function () { return require('./todo-CeJX0z_2.cjs'); });
17915
17936
  await handleTodoCommand(args.slice(1));
17916
17937
  } catch (error) {
17917
17938
  console.error(JSON.stringify({ error: error instanceof Error ? error.message : "Todo command failed" }));
@@ -17920,7 +17941,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
17920
17941
  return;
17921
17942
  } else if (subcommand === "teams") {
17922
17943
  try {
17923
- const { handleTeamsCommand } = await Promise.resolve().then(function () { return require('./teams-BhFspeAY.cjs'); });
17944
+ const { handleTeamsCommand } = await Promise.resolve().then(function () { return require('./teams-C29nEHFD.cjs'); });
17924
17945
  await handleTeamsCommand(args.slice(1));
17925
17946
  } catch (error) {
17926
17947
  console.error(error instanceof Error ? error.message : "Teams command failed");
@@ -17929,7 +17950,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
17929
17950
  return;
17930
17951
  } else if (subcommand === "mcp" && args.length === 1) {
17931
17952
  try {
17932
- const { handleMcpCommand } = await Promise.resolve().then(function () { return require('./mcp-czNIfD59.cjs'); });
17953
+ const { handleMcpCommand } = await Promise.resolve().then(function () { return require('./mcp-DeapmTWN.cjs'); });
17933
17954
  await handleMcpCommand();
17934
17955
  } catch (error) {
17935
17956
  process.stderr.write(`[very-happy mcp] Fatal: ${error instanceof Error ? error.message : String(error)}
package/dist/index.cjs CHANGED
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
3
  require('chalk');
4
- require('./index-C3NtU4Ch.cjs');
5
- require('./limits-C_RGzva6.cjs');
4
+ require('./index-__h-pCTK.cjs');
5
+ require('./limits-Dbip6eVO.cjs');
6
6
  require('zod');
7
- require('./types-CxGm_YJ-.cjs');
7
+ require('./types-DCVS050m.cjs');
8
8
  require('node:child_process');
9
9
  require('node:os');
10
10
  require('node:crypto');
@@ -12,7 +12,7 @@ require('cross-spawn');
12
12
  require('node:path');
13
13
  require('node:readline');
14
14
  require('node:fs');
15
- require('./agentGuidance-Dxt2uz3R.cjs');
15
+ require('./agentGuidance-Dl3apItH.cjs');
16
16
  require('node:fs/promises');
17
17
  require('fs/promises');
18
18
  require('ink');
package/dist/index.mjs CHANGED
@@ -1,8 +1,8 @@
1
1
  import 'chalk';
2
- import './index-BZr5l8TH.mjs';
3
- import './limits-DefXc1TL.mjs';
2
+ import './index-D0IP7gXG.mjs';
3
+ import './limits-nhD0Wran.mjs';
4
4
  import 'zod';
5
- import './types-CrKeJuyF.mjs';
5
+ import './types-thyvQB2a.mjs';
6
6
  import 'node:child_process';
7
7
  import 'node:os';
8
8
  import 'node:crypto';
@@ -10,7 +10,7 @@ import 'cross-spawn';
10
10
  import 'node:path';
11
11
  import 'node:readline';
12
12
  import 'node:fs';
13
- import './agentGuidance-DRnXdFAY.mjs';
13
+ import './agentGuidance-xk3v4_7E.mjs';
14
14
  import 'node:fs/promises';
15
15
  import 'fs/promises';
16
16
  import 'ink';
@@ -3,10 +3,10 @@ import { join, resolve } from 'node:path';
3
3
  import { homedir } from 'node:os';
4
4
  import { spawnSync } from 'node:child_process';
5
5
  import chalk from 'chalk';
6
- import { p as projectPath } from './types-CrKeJuyF.mjs';
7
- import { t as tmuxSupportsSessionEnv } from './index-BZr5l8TH.mjs';
6
+ import { p as projectPath } from './types-thyvQB2a.mjs';
7
+ import { t as tmuxSupportsSessionEnv } from './index-D0IP7gXG.mjs';
8
8
  import 'axios';
9
- import './limits-DefXc1TL.mjs';
9
+ import './limits-nhD0Wran.mjs';
10
10
  import 'node:fs/promises';
11
11
  import 'zod';
12
12
  import 'node:crypto';
@@ -28,7 +28,7 @@ import 'fs';
28
28
  import 'node:readline';
29
29
  import '@anthropic-ai/sandbox-runtime';
30
30
  import 'expo-server-sdk';
31
- import './agentGuidance-DRnXdFAY.mjs';
31
+ import './agentGuidance-xk3v4_7E.mjs';
32
32
  import 'ink';
33
33
  import 'react';
34
34
  import '@anthropic-ai/claude-agent-sdk';
@@ -5,10 +5,10 @@ var path = require('node:path');
5
5
  var os = require('node:os');
6
6
  var node_child_process = require('node:child_process');
7
7
  var chalk = require('chalk');
8
- var api = require('./types-CxGm_YJ-.cjs');
9
- var index = require('./index-C3NtU4Ch.cjs');
8
+ var api = require('./types-DCVS050m.cjs');
9
+ var index = require('./index-__h-pCTK.cjs');
10
10
  require('axios');
11
- require('./limits-C_RGzva6.cjs');
11
+ require('./limits-Dbip6eVO.cjs');
12
12
  require('node:fs/promises');
13
13
  require('zod');
14
14
  require('node:crypto');
@@ -30,7 +30,7 @@ require('fs');
30
30
  require('node:readline');
31
31
  require('@anthropic-ai/sandbox-runtime');
32
32
  require('expo-server-sdk');
33
- require('./agentGuidance-Dxt2uz3R.cjs');
33
+ require('./agentGuidance-Dl3apItH.cjs');
34
34
  require('ink');
35
35
  require('react');
36
36
  require('@anthropic-ai/claude-agent-sdk');
package/dist/lib.cjs CHANGED
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var api = require('./types-CxGm_YJ-.cjs');
4
- var persistence = require('./limits-C_RGzva6.cjs');
3
+ var api = require('./types-DCVS050m.cjs');
4
+ var persistence = require('./limits-Dbip6eVO.cjs');
5
5
  require('axios');
6
6
  require('node:events');
7
7
  require('socket.io-client');
package/dist/lib.mjs CHANGED
@@ -1,5 +1,5 @@
1
- export { A as ApiClient, a as ApiSessionClient, R as RawJSONLinesSchema } from './types-CrKeJuyF.mjs';
2
- export { c as configuration, l as logger } from './limits-DefXc1TL.mjs';
1
+ export { A as ApiClient, a as ApiSessionClient, R as RawJSONLinesSchema } from './types-thyvQB2a.mjs';
2
+ export { c as configuration, l as logger } from './limits-nhD0Wran.mjs';
3
3
  import 'axios';
4
4
  import 'node:events';
5
5
  import 'socket.io-client';
@@ -30,7 +30,7 @@ function _interopNamespaceDefault(e) {
30
30
  var z__namespace = /*#__PURE__*/_interopNamespaceDefault(z);
31
31
 
32
32
  var name = "very-happy-cli";
33
- var version = "0.2.139";
33
+ var version = "0.2.140";
34
34
  var description = "Remote multi-agent workspace CLI with deep Claude integration, native terminal streaming, and self-hosting.";
35
35
  var author = "Kirill Dubovitskiy";
36
36
  var contributors = [
@@ -143,12 +143,12 @@ var dependencies = {
143
143
  zod: "^4.0.0"
144
144
  };
145
145
  var optionalDependencies = {
146
- "very-happy-tools-arm64-darwin": "0.2.139",
147
- "very-happy-tools-x64-darwin": "0.2.139",
148
- "very-happy-tools-arm64-linux": "0.2.139",
149
- "very-happy-tools-x64-linux": "0.2.139",
150
- "very-happy-tools-arm64-win32": "0.2.139",
151
- "very-happy-tools-x64-win32": "0.2.139"
146
+ "very-happy-tools-arm64-darwin": "0.2.140",
147
+ "very-happy-tools-x64-darwin": "0.2.140",
148
+ "very-happy-tools-arm64-linux": "0.2.140",
149
+ "very-happy-tools-x64-linux": "0.2.140",
150
+ "very-happy-tools-arm64-win32": "0.2.140",
151
+ "very-happy-tools-x64-win32": "0.2.140"
152
152
  };
153
153
  var devDependencies = {
154
154
  "@slopus/happy-wire": "workspace:*",
@@ -9,7 +9,7 @@ import chalk from 'chalk';
9
9
  import { inspect } from 'node:util';
10
10
 
11
11
  var name = "very-happy-cli";
12
- var version = "0.2.139";
12
+ var version = "0.2.140";
13
13
  var description = "Remote multi-agent workspace CLI with deep Claude integration, native terminal streaming, and self-hosting.";
14
14
  var author = "Kirill Dubovitskiy";
15
15
  var contributors = [
@@ -122,12 +122,12 @@ var dependencies = {
122
122
  zod: "^4.0.0"
123
123
  };
124
124
  var optionalDependencies = {
125
- "very-happy-tools-arm64-darwin": "0.2.139",
126
- "very-happy-tools-x64-darwin": "0.2.139",
127
- "very-happy-tools-arm64-linux": "0.2.139",
128
- "very-happy-tools-x64-linux": "0.2.139",
129
- "very-happy-tools-arm64-win32": "0.2.139",
130
- "very-happy-tools-x64-win32": "0.2.139"
125
+ "very-happy-tools-arm64-darwin": "0.2.140",
126
+ "very-happy-tools-x64-darwin": "0.2.140",
127
+ "very-happy-tools-arm64-linux": "0.2.140",
128
+ "very-happy-tools-x64-linux": "0.2.140",
129
+ "very-happy-tools-arm64-win32": "0.2.140",
130
+ "very-happy-tools-x64-win32": "0.2.140"
131
131
  };
132
132
  var devDependencies = {
133
133
  "@slopus/happy-wire": "workspace:*",
@@ -1,12 +1,12 @@
1
1
  'use strict';
2
2
 
3
- var agentGuidance = require('./agentGuidance-Dxt2uz3R.cjs');
3
+ var agentGuidance = require('./agentGuidance-Dl3apItH.cjs');
4
4
  var mcp_js = require('@modelcontextprotocol/sdk/server/mcp.js');
5
5
  var stdio_js = require('@modelcontextprotocol/sdk/server/stdio.js');
6
6
  var z = require('zod');
7
- var api = require('./types-CxGm_YJ-.cjs');
8
- var persistence = require('./limits-C_RGzva6.cjs');
9
- var index = require('./index-C3NtU4Ch.cjs');
7
+ var api = require('./types-DCVS050m.cjs');
8
+ var persistence = require('./limits-Dbip6eVO.cjs');
9
+ var index = require('./index-__h-pCTK.cjs');
10
10
  require('node:fs/promises');
11
11
  require('node:os');
12
12
  require('node:crypto');
@@ -1,10 +1,10 @@
1
- import { r as registerTeamsTools } from './agentGuidance-DRnXdFAY.mjs';
1
+ import { r as registerTeamsTools } from './agentGuidance-xk3v4_7E.mjs';
2
2
  import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
3
3
  import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
4
4
  import { z } from 'zod';
5
- import { f as pushClipboardViaDaemon, g as setTerminalTitleViaDaemon } from './types-CrKeJuyF.mjs';
6
- import { l as logger, C as CLIPBOARD_TOOL_NAME, a as CLIPBOARD_TOOL_TITLE, b as CLIPBOARD_TOOL_DESCRIPTION, e as CLIPBOARD_MAX_BYTES } from './limits-DefXc1TL.mjs';
7
- import { h as registerAssistantSessionTools } from './index-BZr5l8TH.mjs';
5
+ import { f as pushClipboardViaDaemon, g as setTerminalTitleViaDaemon } from './types-thyvQB2a.mjs';
6
+ import { l as logger, C as CLIPBOARD_TOOL_NAME, a as CLIPBOARD_TOOL_TITLE, b as CLIPBOARD_TOOL_DESCRIPTION, e as CLIPBOARD_MAX_BYTES } from './limits-nhD0Wran.mjs';
7
+ import { h as registerAssistantSessionTools } from './index-D0IP7gXG.mjs';
8
8
  import 'node:fs/promises';
9
9
  import 'node:os';
10
10
  import 'node:crypto';
@@ -4,11 +4,11 @@ var ink = require('ink');
4
4
  var React = require('react');
5
5
  var node_crypto = require('node:crypto');
6
6
  var path = require('node:path');
7
- var api = require('./types-CxGm_YJ-.cjs');
8
- var persistence = require('./limits-C_RGzva6.cjs');
9
- var index = require('./index-C3NtU4Ch.cjs');
10
- var AcpBackend = require('./AcpBackend-ioCPQLt4.cjs');
11
- var config = require('./config-nyMHCx-i.cjs');
7
+ var api = require('./types-DCVS050m.cjs');
8
+ var persistence = require('./limits-Dbip6eVO.cjs');
9
+ var index = require('./index-__h-pCTK.cjs');
10
+ var AcpBackend = require('./AcpBackend-C0Lq4uoA.cjs');
11
+ var config = require('./config-D0-jnCOC.cjs');
12
12
  require('axios');
13
13
  require('node:events');
14
14
  require('socket.io-client');
@@ -34,7 +34,7 @@ require('@anthropic-ai/sandbox-runtime');
34
34
  require('expo-server-sdk');
35
35
  require('chalk');
36
36
  require('node:util');
37
- require('./agentGuidance-Dxt2uz3R.cjs');
37
+ require('./agentGuidance-Dl3apItH.cjs');
38
38
  require('@anthropic-ai/claude-agent-sdk');
39
39
  require('ps-list');
40
40
  require('tmp');
@@ -2,11 +2,11 @@ import { useStdout, useInput, Box, Text, render } from 'ink';
2
2
  import React, { useState, useRef, useEffect, useCallback } from 'react';
3
3
  import { randomUUID } from 'node:crypto';
4
4
  import { join } from 'node:path';
5
- import { k as connectionState, A as ApiClient, h as errorLogMetadata, n as notifyDaemonSessionStarted, p as projectPath, j as contentLogMetadata } from './types-CrKeJuyF.mjs';
6
- import { l as logger, g as readSettings, i as encodeBase64 } from './limits-DefXc1TL.mjs';
7
- import { J as GEMINI_API_KEY_ENV, K as GOOGLE_API_KEY_ENV, G as GEMINI_MODEL_ENV, E as BasePermissionHandler, L as BaseReasoningProcessor, j as initialMachineMetadata, k as createSessionMetadata, m as setupOfflineReconnection, n as MessageQueue2, u as hashObject, N as MessageBuffer, O as CHANGE_TITLE_INSTRUCTION, o as registerKillSessionHandler, v as startHappyServer } from './index-BZr5l8TH.mjs';
8
- import { A as AcpBackend } from './AcpBackend-BwTEBAyP.mjs';
9
- import { readGeminiLocalConfig, determineGeminiModel, getGeminiModelSource, getInitialGeminiModel, saveGeminiModelToConfig } from './config-o9NFsj8x.mjs';
5
+ import { k as connectionState, A as ApiClient, h as errorLogMetadata, n as notifyDaemonSessionStarted, p as projectPath, j as contentLogMetadata } from './types-thyvQB2a.mjs';
6
+ import { l as logger, g as readSettings, i as encodeBase64 } from './limits-nhD0Wran.mjs';
7
+ import { J as GEMINI_API_KEY_ENV, K as GOOGLE_API_KEY_ENV, G as GEMINI_MODEL_ENV, E as BasePermissionHandler, L as BaseReasoningProcessor, j as initialMachineMetadata, k as createSessionMetadata, m as setupOfflineReconnection, n as MessageQueue2, u as hashObject, N as MessageBuffer, O as CHANGE_TITLE_INSTRUCTION, o as registerKillSessionHandler, v as startHappyServer } from './index-D0IP7gXG.mjs';
8
+ import { A as AcpBackend } from './AcpBackend-DsSYq8T-.mjs';
9
+ import { readGeminiLocalConfig, determineGeminiModel, getGeminiModelSource, getInitialGeminiModel, saveGeminiModelToConfig } from './config-BVoHul9V.mjs';
10
10
  import 'axios';
11
11
  import 'node:events';
12
12
  import 'socket.io-client';
@@ -32,7 +32,7 @@ import '@anthropic-ai/sandbox-runtime';
32
32
  import 'expo-server-sdk';
33
33
  import 'chalk';
34
34
  import 'node:util';
35
- import './agentGuidance-DRnXdFAY.mjs';
35
+ import './agentGuidance-xk3v4_7E.mjs';
36
36
  import '@anthropic-ai/claude-agent-sdk';
37
37
  import 'ps-list';
38
38
  import 'tmp';
@@ -5,10 +5,10 @@ var node_child_process = require('node:child_process');
5
5
  var os = require('node:os');
6
6
  var node_fs = require('node:fs');
7
7
  var path = require('node:path');
8
- var api = require('./types-CxGm_YJ-.cjs');
9
- var AcpSessionManager = require('./AcpSessionManager-o9T6W69-.cjs');
10
- var persistence = require('./limits-C_RGzva6.cjs');
11
- var index = require('./index-C3NtU4Ch.cjs');
8
+ var api = require('./types-DCVS050m.cjs');
9
+ var AcpSessionManager = require('./AcpSessionManager-DIqByTH7.cjs');
10
+ var persistence = require('./limits-Dbip6eVO.cjs');
11
+ var index = require('./index-__h-pCTK.cjs');
12
12
  var WebSocket = require('ws');
13
13
  var ed = require('@noble/ed25519');
14
14
  var sha2_js = require('@noble/hashes/sha2.js');
@@ -34,7 +34,7 @@ require('@anthropic-ai/sandbox-runtime');
34
34
  require('expo-server-sdk');
35
35
  require('chalk');
36
36
  require('node:util');
37
- require('./agentGuidance-Dxt2uz3R.cjs');
37
+ require('./agentGuidance-Dl3apItH.cjs');
38
38
  require('ink');
39
39
  require('react');
40
40
  require('@anthropic-ai/claude-agent-sdk');
@@ -3,10 +3,10 @@ import { execFileSync } from 'node:child_process';
3
3
  import os from 'node:os';
4
4
  import { existsSync, readFileSync } from 'node:fs';
5
5
  import { join } from 'node:path';
6
- import { h as errorLogMetadata, j as contentLogMetadata, k as connectionState, A as ApiClient, n as notifyDaemonSessionStarted } from './types-CrKeJuyF.mjs';
7
- import { A as AcpSessionManager } from './AcpSessionManager-Bh3KETfz.mjs';
8
- import { f as ensurePrivateDirectorySync, h as hardenPrivateFileSync, w as writePrivateFileSync, g as readSettings, i as encodeBase64, l as logger, c as configuration } from './limits-DefXc1TL.mjs';
9
- import { j as initialMachineMetadata, k as createSessionMetadata, m as setupOfflineReconnection, n as MessageQueue2, o as registerKillSessionHandler } from './index-BZr5l8TH.mjs';
6
+ import { h as errorLogMetadata, j as contentLogMetadata, k as connectionState, A as ApiClient, n as notifyDaemonSessionStarted } from './types-thyvQB2a.mjs';
7
+ import { A as AcpSessionManager } from './AcpSessionManager-BAErE9s0.mjs';
8
+ import { f as ensurePrivateDirectorySync, h as hardenPrivateFileSync, w as writePrivateFileSync, g as readSettings, i as encodeBase64, l as logger, c as configuration } from './limits-nhD0Wran.mjs';
9
+ import { j as initialMachineMetadata, k as createSessionMetadata, m as setupOfflineReconnection, n as MessageQueue2, o as registerKillSessionHandler } from './index-D0IP7gXG.mjs';
10
10
  import WebSocket from 'ws';
11
11
  import * as ed from '@noble/ed25519';
12
12
  import { sha512 } from '@noble/hashes/sha2.js';
@@ -32,7 +32,7 @@ import '@anthropic-ai/sandbox-runtime';
32
32
  import 'expo-server-sdk';
33
33
  import 'chalk';
34
34
  import 'node:util';
35
- import './agentGuidance-DRnXdFAY.mjs';
35
+ import './agentGuidance-xk3v4_7E.mjs';
36
36
  import 'ink';
37
37
  import 'react';
38
38
  import '@anthropic-ai/claude-agent-sdk';
@@ -3,15 +3,15 @@
3
3
  var chalk = require('chalk');
4
4
  var node_fs = require('node:fs');
5
5
  var path = require('node:path');
6
- var persistence = require('./limits-C_RGzva6.cjs');
7
- var index = require('./index-C3NtU4Ch.cjs');
6
+ var persistence = require('./limits-Dbip6eVO.cjs');
7
+ var index = require('./index-__h-pCTK.cjs');
8
8
  require('node:fs/promises');
9
9
  require('node:os');
10
10
  require('zod');
11
11
  require('node:crypto');
12
12
  require('tweetnacl');
13
13
  require('node:util');
14
- require('./types-CxGm_YJ-.cjs');
14
+ require('./types-DCVS050m.cjs');
15
15
  require('axios');
16
16
  require('node:events');
17
17
  require('socket.io-client');
@@ -30,7 +30,7 @@ require('fs');
30
30
  require('node:readline');
31
31
  require('@anthropic-ai/sandbox-runtime');
32
32
  require('expo-server-sdk');
33
- require('./agentGuidance-Dxt2uz3R.cjs');
33
+ require('./agentGuidance-Dl3apItH.cjs');
34
34
  require('ink');
35
35
  require('react');
36
36
  require('@anthropic-ai/claude-agent-sdk');
@@ -1,15 +1,15 @@
1
1
  import chalk from 'chalk';
2
2
  import { readFileSync } from 'node:fs';
3
3
  import { resolve } from 'node:path';
4
- import { r as readPersistedSessions, c as configuration } from './limits-DefXc1TL.mjs';
5
- import { b as sendUserMessage, s as sessionWebUrl } from './index-BZr5l8TH.mjs';
4
+ import { r as readPersistedSessions, c as configuration } from './limits-nhD0Wran.mjs';
5
+ import { b as sendUserMessage, s as sessionWebUrl } from './index-D0IP7gXG.mjs';
6
6
  import 'node:fs/promises';
7
7
  import 'node:os';
8
8
  import 'zod';
9
9
  import 'node:crypto';
10
10
  import 'tweetnacl';
11
11
  import 'node:util';
12
- import './types-CrKeJuyF.mjs';
12
+ import './types-thyvQB2a.mjs';
13
13
  import 'axios';
14
14
  import 'node:events';
15
15
  import 'socket.io-client';
@@ -28,7 +28,7 @@ import 'fs';
28
28
  import 'node:readline';
29
29
  import '@anthropic-ai/sandbox-runtime';
30
30
  import 'expo-server-sdk';
31
- import './agentGuidance-DRnXdFAY.mjs';
31
+ import './agentGuidance-xk3v4_7E.mjs';
32
32
  import 'ink';
33
33
  import 'react';
34
34
  import '@anthropic-ai/claude-agent-sdk';
@@ -1,9 +1,9 @@
1
1
  import chalk from 'chalk';
2
- import { D as DEFAULT_RECENT_LIMIT, M as MAX_READ_LIMIT, l as listAccountSessions, c as listSessions, r as readSessionTranscript, d as stopSession, e as resolvePermissionRequest, f as archiveSession } from './index-BZr5l8TH.mjs';
3
- import { i as isValidSessionId } from './types-CrKeJuyF.mjs';
2
+ import { D as DEFAULT_RECENT_LIMIT, M as MAX_READ_LIMIT, l as listAccountSessions, c as listSessions, r as readSessionTranscript, d as stopSession, e as resolvePermissionRequest, f as archiveSession } from './index-D0IP7gXG.mjs';
3
+ import { i as isValidSessionId } from './types-thyvQB2a.mjs';
4
4
  import 'node:os';
5
5
  import 'node:crypto';
6
- import './limits-DefXc1TL.mjs';
6
+ import './limits-nhD0Wran.mjs';
7
7
  import 'node:fs/promises';
8
8
  import 'node:fs';
9
9
  import 'node:path';
@@ -12,7 +12,7 @@ import 'tweetnacl';
12
12
  import 'node:util';
13
13
  import 'cross-spawn';
14
14
  import 'node:readline';
15
- import './agentGuidance-DRnXdFAY.mjs';
15
+ import './agentGuidance-xk3v4_7E.mjs';
16
16
  import 'fs/promises';
17
17
  import 'ink';
18
18
  import 'react';