very-happy-cli 0.2.153 → 0.2.155

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 (55) hide show
  1. package/dist/{AcpBackend-YDGv4E-g.mjs → AcpBackend-DVB0nzgR.mjs} +2 -2
  2. package/dist/{AcpBackend-DSt8nTYm.cjs → AcpBackend-DmFcRh54.cjs} +3 -3
  3. package/dist/{AcpSessionManager-uov6I9C8.cjs → AcpSessionManager-CWaSYTnT.cjs} +1 -1
  4. package/dist/{AcpSessionManager-Cxf5HQX1.mjs → AcpSessionManager-dGDgNb-p.mjs} +1 -1
  5. package/dist/agentGuidance-BWxFC6UL.mjs +1613 -0
  6. package/dist/agentGuidance-un7YPryB.cjs +1665 -0
  7. package/dist/{agentHome-D68Xh2ae.mjs → agentHome-ByLb2HFg.mjs} +5 -5
  8. package/dist/{agentHome-BJ7bde35.cjs → agentHome-aucT8BHw.cjs} +5 -5
  9. package/dist/{auto-CcXxfqkC.mjs → auto-BQnD6gVx.mjs} +21 -21
  10. package/dist/{auto-C-90ojIH.cjs → auto-P9RoJaY0.cjs} +24 -24
  11. package/dist/codex/happyMcpStdioBridge.cjs +6 -3
  12. package/dist/codex/happyMcpStdioBridge.mjs +6 -3
  13. package/dist/{config-CHJ189UJ.mjs → config-BPZ2Y6o8.mjs} +8 -8
  14. package/dist/{config-D23kF0_u.cjs → config-BoePh9PX.cjs} +8 -8
  15. package/dist/{index-D49WvbDT.cjs → index--KCpVs1c.cjs} +7 -7
  16. package/dist/{index-BacwoXzs.mjs → index-B4oXnbYw.mjs} +522 -729
  17. package/dist/{index-BgYZGODP.mjs → index-BjzdXb9x.mjs} +21 -13
  18. package/dist/{index-DEOVn46R.cjs → index-DRrLaljt.cjs} +21 -13
  19. package/dist/{index-BXA9fxbK.mjs → index-DVVRqaVG.mjs} +7 -7
  20. package/dist/{index-DHrwHxHf.cjs → index-D_fYUxVg.cjs} +579 -798
  21. package/dist/index.cjs +6 -6
  22. package/dist/index.mjs +6 -6
  23. package/dist/{install-BiOXBnnS.cjs → install-CGigiocs.cjs} +1 -1
  24. package/dist/{install-Ca7_Z3bV.mjs → install-DP5aPNEX.mjs} +1 -1
  25. package/dist/{installTerminalHooks-BF0kL0ae.cjs → installTerminalHooks-XrcPvfBs.cjs} +5 -5
  26. package/dist/{installTerminalHooks-Bpl32K75.mjs → installTerminalHooks-tIg7mANc.mjs} +5 -5
  27. package/dist/lib.cjs +2 -2
  28. package/dist/lib.mjs +2 -2
  29. package/dist/{limits-BtAuKRl2.mjs → limits-C_DW0M0q.mjs} +309 -13
  30. package/dist/{limits-DY_sFA3J.cjs → limits-DkfHJ3nS.cjs} +329 -12
  31. package/dist/{mcp-JpqI2POW.cjs → mcp-BqlXl10F.cjs} +23 -23
  32. package/dist/{mcp-DQkmk4VV.mjs → mcp-o7QglAQM.mjs} +17 -17
  33. package/dist/{piRuntime-DRbbeQ72.cjs → piRuntime-BxP4B_zY.cjs} +2 -2
  34. package/dist/{piRuntime-DBpe12NN.mjs → piRuntime-MjiJI-nV.mjs} +2 -2
  35. package/dist/{piTerminal-qdJ9KZVL.cjs → piTerminal-DYzRcwgb.cjs} +6 -6
  36. package/dist/{piTerminal-BoHvPEZ_.mjs → piTerminal-Dpq6yqKU.mjs} +6 -6
  37. package/dist/{runGemini-CtOEFvhf.cjs → runGemini-8Pxh94Fm.cjs} +7 -7
  38. package/dist/{runGemini-YqH7a-7O.mjs → runGemini-CDlcQ-OA.mjs} +6 -6
  39. package/dist/{runOpenClaw-DoqZXBvL.cjs → runOpenClaw-B5FSZIbK.cjs} +6 -6
  40. package/dist/{runOpenClaw-DSSyFQBb.mjs → runOpenClaw-YkhsgPs0.mjs} +5 -5
  41. package/dist/{send-9075kHZP.cjs → send-CwrYXTPr.cjs} +58 -54
  42. package/dist/{send-Cs-RwqNf.mjs → send-DJStmLBv.mjs} +56 -53
  43. package/dist/{sessions-iBnYzVUK.mjs → sessions-JaVXlSqj.mjs} +88 -45
  44. package/dist/{sessions-qULzUzlI.cjs → sessions-MX21NJXd.cjs} +99 -56
  45. package/dist/{spawn-C6fRkedx.mjs → spawn-BaPnjClT.mjs} +22 -22
  46. package/dist/{spawn-od9V23cc.cjs → spawn-cIoglKVf.cjs} +30 -30
  47. package/dist/{teams-CkrWQ4uM.mjs → teams-DXV5Pwwt.mjs} +8 -8
  48. package/dist/{teams-CrCzU-AV.cjs → teams-Dqk7F3D-.cjs} +8 -8
  49. package/dist/{todo-aCZmSt27.mjs → todo-2Z1REhfx.mjs} +8 -6
  50. package/dist/{todo-BCT_ZPuV.cjs → todo-Buuqn9gm.cjs} +8 -6
  51. package/dist/{types-BvqOVUOW.mjs → types-CkbfdRzq.mjs} +7 -267
  52. package/dist/{types-CUCU7Vw8.cjs → types-a2xsH2UI.cjs} +19 -295
  53. package/package.json +7 -7
  54. package/dist/agentGuidance-BM4kMNyr.cjs +0 -553
  55. package/dist/agentGuidance-C8unGWp7.mjs +0 -529
@@ -1,33 +1,33 @@
1
- import { D as DefaultTransport, A as AcpBackend } from './AcpBackend-YDGv4E-g.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-YDGv4E-g.mjs';
3
- import { r as readSettings, j as encodeBase64, l as logger, k as BUILTIN_TODO_DISCOVERY, c as configuration } from './limits-BtAuKRl2.mjs';
4
- import { A as AcpSessionManager } from './AcpSessionManager-Cxf5HQX1.mjs';
5
- import { B as initialMachineMetadata, C as createSessionMetadata, E as setupOfflineReconnection, F as StreamRelay, H as MessageQueue2, I as hashObject, J as startHappyServer, K as registerAgentAttachmentDownloads, L as TitleGenerator, N as registerKillSessionHandler, O as CLAUDE_ATTACHMENT_KINDS, Q as stageClaudeAttachments, R as appendStagedAttachmentsToPrompt, U as BasePermissionHandler, V as writeSessionModeFile, W as normalizeAcpPermissionMode, X as removeSessionModeFile } from './index-BacwoXzs.mjs';
6
- import { p as preparePiTeamsRuntime } from './piRuntime-DBpe12NN.mjs';
1
+ import { D as DefaultTransport, A as AcpBackend } from './AcpBackend-DVB0nzgR.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-DVB0nzgR.mjs';
3
+ import { r as readSettings, v as notifyDaemonSessionStarted, w as encodeBase64, l as logger, x as BUILTIN_TODO_DISCOVERY, c as configuration, y as reportSessionEditToDaemon } from './limits-C_DW0M0q.mjs';
4
+ import { A as AcpSessionManager } from './AcpSessionManager-dGDgNb-p.mjs';
5
+ import { h as initialMachineMetadata, j as createSessionMetadata, k as setupOfflineReconnection, l as StreamRelay, M as MessageQueue2, m as hashObject, n as startHappyServer, o as registerAgentAttachmentDownloads, u as TitleGenerator, v as registerKillSessionHandler, C as CLAUDE_ATTACHMENT_KINDS, w as stageClaudeAttachments, x as appendStagedAttachmentsToPrompt, B as BasePermissionHandler, E as EditReportThrottle, y as extractAcpEditPaths, z as writeSessionModeFile, F as normalizeAcpPermissionMode, H as removeSessionModeFile } from './index-B4oXnbYw.mjs';
6
+ import { p as preparePiTeamsRuntime } from './piRuntime-MjiJI-nV.mjs';
7
7
  import { randomUUID } from 'node:crypto';
8
8
  import { join } from 'node:path';
9
- import { o as connectionState, A as ApiClient, q as notifyDaemonSessionStarted } from './types-BvqOVUOW.mjs';
9
+ import { h as connectionState, A as ApiClient } from './types-CkbfdRzq.mjs';
10
10
  import { p as projectPath } from './terminalTitleSuggest-DKgX3osW.mjs';
11
11
  import 'node:child_process';
12
12
  import '@agentclientprotocol/sdk';
13
+ import 'zod';
14
+ import '@paralleldrive/cuid2';
13
15
  import 'node:fs/promises';
14
16
  import 'node:fs';
15
- import 'node:os';
16
- import 'zod';
17
17
  import 'tweetnacl';
18
18
  import 'chalk';
19
19
  import 'node:util';
20
- import '@paralleldrive/cuid2';
20
+ import 'node:os';
21
21
  import 'cross-spawn';
22
22
  import 'node:readline';
23
- import './agentGuidance-C8unGWp7.mjs';
23
+ import './agentGuidance-BWxFC6UL.mjs';
24
+ import 'axios';
25
+ import 'socket.io-client';
24
26
  import 'fs/promises';
25
27
  import 'ink';
26
28
  import 'react';
27
29
  import '@anthropic-ai/claude-agent-sdk';
28
- import 'axios';
29
30
  import 'node:events';
30
- import 'socket.io-client';
31
31
  import 'os';
32
32
  import 'child_process';
33
33
  import 'fs';
@@ -702,6 +702,8 @@ async function runAcp(opts) {
702
702
  HAPPY_MCP_URL: happyServer.url,
703
703
  ...happyServer.contextUsageUrl ? { HAPPY_CONTEXT_USAGE_URL: happyServer.contextUsageUrl } : {},
704
704
  HAPPY_SESSION_ID: session.sessionId,
705
+ // B-497: sender identity for `very-happy sessions message|peers` in this shell.
706
+ VH_PEER_SESSION_ID: session.sessionId,
705
707
  HAPPY_PERMISSION_MODE: initialPermissionMode
706
708
  },
707
709
  mcpServers,
@@ -895,6 +897,7 @@ async function runAcp(opts) {
895
897
  if (modelSelector) return resolveRequestedCode(modelSelector.options, requested) === modelSelector.currentCode;
896
898
  return !!legacyModels && resolveRequestedLegacyModelCode(legacyModels, requested) === legacyModels.currentModelId;
897
899
  };
900
+ const editThrottle = new EditReportThrottle();
898
901
  const onBackendMessage = (msg) => {
899
902
  if (verbose) {
900
903
  logAcp("muted", `Outgoing raw backend message from ${opts.agentName}: ${formatUnknownForConsole(msg, ACP_RAW_PREVIEW_CHARS)}`);
@@ -1027,6 +1030,11 @@ async function runAcp(opts) {
1027
1030
  if (msg.type === "token-count") {
1028
1031
  session.sendAgentUsageSnapshot(resolveSessionFlavor(opts.agentName), msg);
1029
1032
  }
1033
+ if (msg.type === "tool-call") {
1034
+ for (const edit of editThrottle.take(extractAcpEditPaths(msg.toolName, msg.args))) {
1035
+ reportSessionEditToDaemon({ sessionId: session.sessionId, path: edit.path, tool: edit.tool, cwd: process.cwd() });
1036
+ }
1037
+ }
1030
1038
  sendEnvelopes(sessionManager.mapMessage(msg));
1031
1039
  };
1032
1040
  backend.onMessage(onBackendMessage);
@@ -1,34 +1,34 @@
1
1
  'use strict';
2
2
 
3
- var AcpBackend = require('./AcpBackend-DSt8nTYm.cjs');
4
- var persistence = require('./limits-DY_sFA3J.cjs');
5
- var AcpSessionManager = require('./AcpSessionManager-uov6I9C8.cjs');
6
- var index$1 = require('./index-DHrwHxHf.cjs');
7
- var piRuntime = require('./piRuntime-DRbbeQ72.cjs');
3
+ var AcpBackend = require('./AcpBackend-DmFcRh54.cjs');
4
+ var persistence = require('./limits-DkfHJ3nS.cjs');
5
+ var AcpSessionManager = require('./AcpSessionManager-CWaSYTnT.cjs');
6
+ var index$1 = require('./index-D_fYUxVg.cjs');
7
+ var piRuntime = require('./piRuntime-BxP4B_zY.cjs');
8
8
  var node_crypto = require('node:crypto');
9
9
  var path = require('node:path');
10
- var index = require('./types-CUCU7Vw8.cjs');
10
+ var index = require('./types-a2xsH2UI.cjs');
11
11
  var terminalTitleSuggest = require('./terminalTitleSuggest-Dji8I0Jy.cjs');
12
12
  require('node:child_process');
13
13
  require('@agentclientprotocol/sdk');
14
+ require('zod');
15
+ require('@paralleldrive/cuid2');
14
16
  require('node:fs/promises');
15
17
  require('node:fs');
16
- require('node:os');
17
- require('zod');
18
18
  require('tweetnacl');
19
19
  require('chalk');
20
20
  require('node:util');
21
- require('@paralleldrive/cuid2');
21
+ require('node:os');
22
22
  require('cross-spawn');
23
23
  require('node:readline');
24
- require('./agentGuidance-BM4kMNyr.cjs');
24
+ require('./agentGuidance-un7YPryB.cjs');
25
+ require('axios');
26
+ require('socket.io-client');
25
27
  require('fs/promises');
26
28
  require('ink');
27
29
  require('react');
28
30
  require('@anthropic-ai/claude-agent-sdk');
29
- require('axios');
30
31
  require('node:events');
31
- require('socket.io-client');
32
32
  require('os');
33
33
  require('child_process');
34
34
  require('fs');
@@ -629,7 +629,7 @@ async function runAcp(opts) {
629
629
  session = initialSession;
630
630
  if (response) {
631
631
  try {
632
- await index.notifyDaemonSessionStarted(response.id, metadata, {
632
+ await persistence.notifyDaemonSessionStarted(response.id, metadata, {
633
633
  encryptionKey: persistence.encodeBase64(response.encryptionKey),
634
634
  encryptionVariant: response.encryptionVariant,
635
635
  seq: response.seq,
@@ -703,6 +703,8 @@ async function runAcp(opts) {
703
703
  HAPPY_MCP_URL: happyServer.url,
704
704
  ...happyServer.contextUsageUrl ? { HAPPY_CONTEXT_USAGE_URL: happyServer.contextUsageUrl } : {},
705
705
  HAPPY_SESSION_ID: session.sessionId,
706
+ // B-497: sender identity for `very-happy sessions message|peers` in this shell.
707
+ VH_PEER_SESSION_ID: session.sessionId,
706
708
  HAPPY_PERMISSION_MODE: initialPermissionMode
707
709
  },
708
710
  mcpServers,
@@ -896,6 +898,7 @@ async function runAcp(opts) {
896
898
  if (modelSelector) return resolveRequestedCode(modelSelector.options, requested) === modelSelector.currentCode;
897
899
  return !!legacyModels && resolveRequestedLegacyModelCode(legacyModels, requested) === legacyModels.currentModelId;
898
900
  };
901
+ const editThrottle = new index$1.EditReportThrottle();
899
902
  const onBackendMessage = (msg) => {
900
903
  if (verbose) {
901
904
  logAcp("muted", `Outgoing raw backend message from ${opts.agentName}: ${formatUnknownForConsole(msg, ACP_RAW_PREVIEW_CHARS)}`);
@@ -1028,6 +1031,11 @@ async function runAcp(opts) {
1028
1031
  if (msg.type === "token-count") {
1029
1032
  session.sendAgentUsageSnapshot(resolveSessionFlavor(opts.agentName), msg);
1030
1033
  }
1034
+ if (msg.type === "tool-call") {
1035
+ for (const edit of editThrottle.take(index$1.extractAcpEditPaths(msg.toolName, msg.args))) {
1036
+ persistence.reportSessionEditToDaemon({ sessionId: session.sessionId, path: edit.path, tool: edit.tool, cwd: process.cwd() });
1037
+ }
1038
+ }
1031
1039
  sendEnvelopes(sessionManager.mapMessage(msg));
1032
1040
  };
1033
1041
  backend.onMessage(onBackendMessage);
@@ -1,18 +1,18 @@
1
- import { q as query } from './index-BacwoXzs.mjs';
1
+ import { q as query } from './index-B4oXnbYw.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-BvqOVUOW.mjs';
6
+ import './types-CkbfdRzq.mjs';
7
7
  import 'axios';
8
- import './limits-BtAuKRl2.mjs';
8
+ import './limits-C_DW0M0q.mjs';
9
+ import 'zod';
10
+ import '@paralleldrive/cuid2';
9
11
  import 'node:fs/promises';
10
12
  import 'node:fs';
11
- import 'node:path';
12
- import 'zod';
13
13
  import 'tweetnacl';
14
14
  import 'node:util';
15
- import '@paralleldrive/cuid2';
15
+ import 'node:path';
16
16
  import 'node:events';
17
17
  import 'socket.io-client';
18
18
  import 'child_process';
@@ -30,7 +30,7 @@ import 'fs';
30
30
  import 'node:readline';
31
31
  import '@anthropic-ai/sandbox-runtime';
32
32
  import 'expo-server-sdk';
33
- import './agentGuidance-C8unGWp7.mjs';
33
+ import './agentGuidance-BWxFC6UL.mjs';
34
34
  import 'ink';
35
35
  import 'react';
36
36
  import 'ps-list';