very-happy-cli 0.2.175 → 0.2.177
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.
- package/dist/{AcpBackend-Sb6N_HcB.cjs → AcpBackend-B-ny68XM.cjs} +188 -37
- package/dist/{AcpBackend-BZrLVcHb.mjs → AcpBackend-B0K0WrtW.mjs} +187 -38
- package/dist/{AcpSessionManager-C2MqOirs.cjs → AcpSessionManager-CjdJLofq.cjs} +1 -1
- package/dist/{AcpSessionManager-y1Iy1mzc.mjs → AcpSessionManager-DykjzBM4.mjs} +1 -1
- package/dist/{BasePermissionHandler-BbLYwd13.cjs → BasePermissionHandler-DR6nxuEn.cjs} +1 -1
- package/dist/{BasePermissionHandler-DriZLITp.mjs → BasePermissionHandler-hdY7kTqX.mjs} +1 -1
- package/dist/{agentHome-BoYfpemd.cjs → agentHome-BdTXEUPe.cjs} +4 -4
- package/dist/{agentHome-BtuRubHG.mjs → agentHome-GRN2VfHv.mjs} +4 -4
- package/dist/{api-KZmVqSKO.cjs → api-BWX10o97.cjs} +17 -10
- package/dist/{api-D08IEaWa.mjs → api-CKBViqI3.mjs} +18 -11
- package/dist/{apiMachine-Dct2GDAq.cjs → apiMachine-BYYFGgFs.cjs} +15 -14
- package/dist/{apiMachine-Cx9Zn-78.mjs → apiMachine-DttO4UFj.mjs} +15 -14
- package/dist/{attachmentContent-PrNJg8gG.mjs → attachmentContent-cPVF463_.mjs} +2 -2
- package/dist/{attachmentContent-4L9dO8E3.cjs → attachmentContent-kJKXpkMX.cjs} +2 -2
- package/dist/{attachmentLimits-BLbji11b.mjs → attachmentLimits-Di1Z93lN.mjs} +1 -1
- package/dist/{attachmentLimits-D6bT2jU1.cjs → attachmentLimits-DtFqqiwR.cjs} +1 -1
- package/dist/{auth-D1qHU-i_.mjs → auth-BmESeKuM.mjs} +5 -5
- package/dist/{auth-PY_HGlzz.mjs → auth-CKdXb9zp.mjs} +8 -8
- package/dist/{auth-BGmM3Vlm.cjs → auth-CTECt2Oz.cjs} +5 -5
- package/dist/{auth-BI0CsMcy.cjs → auth-DNxVmVbn.cjs} +8 -8
- package/dist/{auto-COMphIfD.mjs → auto-Ch3203qd.mjs} +17 -16
- package/dist/{auto-DM4_FeKb.cjs → auto-D1ypjjfx.cjs} +16 -15
- package/dist/{backgroundTaskActivity-8PdPxrvy.mjs → backgroundTaskActivity-BVwJBl02.mjs} +1 -1
- package/dist/{bootstrap-DTJ6-vYT.cjs → bootstrap-6OI698q9.cjs} +2 -2
- package/dist/{bootstrap-CWjpC5-J.mjs → bootstrap-C0s2bPFQ.mjs} +2 -2
- package/dist/{browser-xuW4fiHo.mjs → browser-BlLWZUMx.mjs} +1 -1
- package/dist/{browser-DmgVoopB.cjs → browser-DG6Uof5O.cjs} +1 -1
- package/dist/{claudeLocal-B0P-wVJJ.mjs → claudeLocal-CcWcKnoo.mjs} +5 -5
- package/dist/{claudeLocal-CtZVz3ee.cjs → claudeLocal-CemsIArT.cjs} +5 -5
- package/dist/{claudeLocalLauncher-D4vmjI3c.mjs → claudeLocalLauncher-7p6y88nj.mjs} +15 -18
- package/dist/{claudeLocalLauncher-Dnv4CH8r.cjs → claudeLocalLauncher-A4VuevIi.cjs} +15 -18
- package/dist/{claudeSessionFork-CxjOBoBh.mjs → claudeSessionFork-BtROOjqf.mjs} +1 -1
- package/dist/{claudeSessionFork-DQk5-dzR.cjs → claudeSessionFork-CbDfm8Fz.cjs} +1 -1
- package/dist/{client-eQjOvC55.mjs → client-BPMWutfs.mjs} +3 -3
- package/dist/{client-BhLhjj_x.cjs → client-COmgDDy0.cjs} +2 -2
- package/dist/{client-C4ddTzrD.mjs → client-DG5ndWLw.mjs} +2 -2
- package/dist/{client-BHZVyQwi.cjs → client-DyvBTYee.cjs} +3 -3
- package/dist/codex/happyMcpStdioBridge.cjs +15 -15
- package/dist/codex/happyMcpStdioBridge.mjs +16 -16
- package/dist/{codexAppServerClient-CppPl_R6.mjs → codexAppServerClient-D-Z8qSfI.mjs} +233 -24
- package/dist/{codexAppServerClient-D-9z-lWP.cjs → codexAppServerClient-R24WZZfg.cjs} +233 -24
- package/dist/{codexCommand-AgVJYnFU.cjs → codexCommand-6hW19gsq.cjs} +159 -84
- package/dist/{codexCommand-BdrBNbZu.mjs → codexCommand-CVTkZJ1o.mjs} +158 -83
- package/dist/{BaseReasoningProcessor-_S1PbSvH.cjs → codexTermination-BBU7e92y.cjs} +25 -1
- package/dist/{BaseReasoningProcessor-DnykPlPo.mjs → codexTermination-CCIfwzcx.mjs} +25 -2
- package/dist/{config-Cr3VUzbE.mjs → config-CvsNChKX.mjs} +3 -3
- package/dist/{config-D89sE3wK.cjs → config-DhdrvOLV.cjs} +3 -3
- package/dist/{configuration-BNGPXg07.mjs → configuration-D55F0t16.mjs} +1 -1
- package/dist/{configuration-UV4EE5ui.cjs → configuration-DZPy0T9Z.cjs} +1 -1
- package/dist/{connect-C0iLkCiY.mjs → connect-CwCXMRmD.mjs} +14 -14
- package/dist/{connect-B35YXbdZ.cjs → connect-Wz-XZYXW.cjs} +13 -13
- package/dist/{context-BmH2BKip.cjs → context-BKbrZ55r.cjs} +1 -1
- package/dist/{context-Ptdnlcv6.mjs → context-CCRpVXFo.mjs} +1 -1
- package/dist/{controlClient-DqtC0pq1.mjs → controlClient-C4xB5J6O.mjs} +4 -4
- package/dist/{controlClient-CtsQMw--.cjs → controlClient-SX8gSza2.cjs} +3 -3
- package/dist/{createSessionMetadata-2IuH5nlA.cjs → createSessionMetadata-BCFmYlBo.cjs} +2 -2
- package/dist/{createSessionMetadata-CtNMvfth.mjs → createSessionMetadata-Bi-m0Y_O.mjs} +2 -2
- package/dist/{defaultPermissionMode-Bn4HcU8S.cjs → defaultPermissionMode-DMBEnXll.cjs} +2 -2
- package/dist/{defaultPermissionMode-DYihjV2g.mjs → defaultPermissionMode-wBcbBezm.mjs} +2 -2
- package/dist/{deterministicJson-DF4xv6MH.mjs → deterministicJson-BkQETt8_.mjs} +9 -9
- package/dist/{deterministicJson-je21npNx.cjs → deterministicJson-ChGfQEF6.cjs} +9 -9
- package/dist/{doctor-Ba92L7-b.mjs → doctor-B9c2C9dF.mjs} +8 -8
- package/dist/{doctor-BXKcYVGU.cjs → doctor-BsN3JZJn.cjs} +7 -7
- package/dist/{downloadTarget-CUJg8iJV.mjs → downloadTarget-ByXzbDK4.mjs} +6 -6
- package/dist/{downloadTarget-JC7FZl7W.cjs → downloadTarget-Dj3WoVJa.cjs} +6 -6
- package/dist/{ensureDaemonRunning-JPA9tHNE.mjs → ensureDaemonRunning--HYzs5Ce.mjs} +5 -5
- package/dist/{ensureDaemonRunning-bIp6-vgi.cjs → ensureDaemonRunning-7Wb8M7Lv.cjs} +5 -5
- package/dist/{handleResumeCommand-B6lE5DtU.mjs → handleResumeCommand-DHddBkNJ.mjs} +5 -5
- package/dist/{handleResumeCommand-B6b9kIYf.cjs → handleResumeCommand-OmuUGYjQ.cjs} +5 -5
- package/dist/{index-B2KL0aPc.cjs → index-BRJzH4sc.cjs} +141 -87
- package/dist/{index-CjE4kBKx.mjs → index-BzJNDsJq.mjs} +143 -89
- package/dist/{index-B6UGRQ7h.mjs → index-CEjJnq05.mjs} +3 -0
- package/dist/{index-CZLwo1FS.mjs → index-CEm0MYiS.mjs} +3 -3
- package/dist/{index-B1ABQRrB.cjs → index-CrR4JISa.cjs} +4 -4
- package/dist/{index-D759ViMU.cjs → index-D9NoYc5I.cjs} +3 -3
- package/dist/{index-D3kI0hDR.cjs → index-DFPT4HOO.cjs} +3 -0
- package/dist/{index-boE-d8CM.mjs → index-DMy3OCBe.mjs} +8 -1
- package/dist/{index-BZdhwBKa.cjs → index-De8L5lFK.cjs} +8 -0
- package/dist/{index-DW1ONaGc.mjs → index-Dhl6_bw7.mjs} +4 -4
- package/dist/index.cjs +2 -2
- package/dist/index.mjs +2 -2
- package/dist/{install-KjIsK_EA.cjs → install-1qn-D9FS.cjs} +3 -3
- package/dist/{install-CmojqnLK.mjs → install-BDIUtPXi.mjs} +3 -3
- package/dist/lib.cjs +12 -12
- package/dist/lib.d.cts +7 -1
- package/dist/lib.d.mts +7 -1
- package/dist/lib.mjs +13 -13
- package/dist/{lidState-CL1NdKfQ.mjs → lidState-BqVsw7H1.mjs} +1 -1
- package/dist/{lidState-BmJp2pLt.cjs → lidState-DxbK0qfu.cjs} +1 -1
- package/dist/{localHappyAgentAuth-B7f4Ysn0.mjs → localHappyAgentAuth-Ce8kO2yc.mjs} +1 -1
- package/dist/{localHappyAgentAuth-9SP7hdiw.cjs → localHappyAgentAuth-D5tANdRD.cjs} +1 -1
- package/dist/{logger-D5EzMy30.mjs → logger-13cBr_ew.mjs} +2 -2
- package/dist/{logger-C7dRaCkE.cjs → logger-LvwVeATU.cjs} +2 -2
- package/dist/{machineMetadata-DYYuK_0c.cjs → machineMetadata-29h7vgf4.cjs} +3 -3
- package/dist/{machineMetadata-DqplCWue.mjs → machineMetadata-dMida2qq.mjs} +3 -3
- package/dist/{main-kgCQgknK.cjs → main-DpM5jaFH.cjs} +44 -44
- package/dist/{main-CnV62agu.mjs → main-x4nAhdH5.mjs} +44 -44
- package/dist/{mcp-bDPaj-tM.mjs → mcp-DMiFGYMT.mjs} +15 -15
- package/dist/{mcp-BV0vxHtz.cjs → mcp-DQv3caXs.cjs} +14 -14
- package/dist/{mirrorProtocol-BSHVZ8Nf.cjs → mirrorProtocol-BfrERW7Z.cjs} +3 -3
- package/dist/{mirrorProtocol-ClKhNXYe.mjs → mirrorProtocol-Bz8tEabR.mjs} +3 -3
- package/dist/{package-VqWv7EI5.cjs → package-Ch9WGDV_.cjs} +7 -7
- package/dist/{package-D0dxZ-W8.mjs → package-CjlsAaRe.mjs} +7 -7
- package/dist/{peerTools-B_eiNB3P.mjs → peerTools-CxmrKnfV.mjs} +4 -4
- package/dist/{peerTools-BktGmlpd.cjs → peerTools-DtGKWli5.cjs} +4 -4
- package/dist/{persistence-CIIhP0Uw.mjs → persistence-C_tYtOqK.mjs} +2 -2
- package/dist/{persistence-DweHi8xa.cjs → persistence-DXbKOHxl.cjs} +2 -2
- package/dist/{piRunnerArgs-BNzWTNRV.cjs → piRunnerArgs-BVRZe2AR.cjs} +1 -1
- package/dist/{piRunnerArgs-cQafsadv.mjs → piRunnerArgs-BpHc-JZl.mjs} +1 -1
- package/dist/{piRuntime-VZLSwW-4.cjs → piRuntime-D7eio8Ix.cjs} +1 -1
- package/dist/{piRuntime-Bel5lOLb.mjs → piRuntime-DOdGF395.mjs} +1 -1
- package/dist/{piTerminal-CS5SDi_H.mjs → piTerminal-dpxz4Q8D.mjs} +17 -17
- package/dist/{piTerminal-DkR8sPv-.cjs → piTerminal-y_PRo2NY.cjs} +16 -16
- package/dist/processTree-CMHWlVse.cjs +66 -0
- package/dist/processTree-CP5IvQ2Z.mjs +61 -0
- package/dist/{rateLimitWindows-Bp4T21RI.cjs → rateLimitWindows-DFnMU2Vt.cjs} +1 -1
- package/dist/{rateLimitWindows-Bo6XVnie.mjs → rateLimitWindows-DYHDGuzQ.mjs} +1 -1
- package/dist/{registerCommonHandlers-B7QZxkCL.cjs → registerCommonHandlers-60VuTkdg.cjs} +2 -2
- package/dist/{registerCommonHandlers-CR5jpiSx.mjs → registerCommonHandlers-D8OMpBbQ.mjs} +2 -2
- package/dist/{registerKillSessionHandler-DLiu24CQ.mjs → registerKillSessionHandler-Drhf7-Vz.mjs} +6 -6
- package/dist/{registerKillSessionHandler-CcX84g-T.cjs → registerKillSessionHandler-pqChBKwO.cjs} +6 -6
- package/dist/{remoteSessionClient-CL3akj0K.cjs → remoteSessionClient-B7NvjHD3.cjs} +5 -5
- package/dist/{remoteSessionClient-CUjw1COc.mjs → remoteSessionClient-D01Hso2-.mjs} +5 -5
- package/dist/{reportProgressTool-BLLwMQrN.mjs → reportProgressTool-B203EZCR.mjs} +2 -2
- package/dist/{reportProgressTool-DzMi4mvH.cjs → reportProgressTool-Du_zAK4h.cjs} +2 -2
- package/dist/{run-DGokR_6q.mjs → run-DX4Zs3Ug.mjs} +34 -34
- package/dist/{run-5pmOElaW.cjs → run-DZ5jU53c.cjs} +34 -34
- package/dist/{runClaude-BFlpZQds.mjs → runClaude-CgPHXP0L.mjs} +27 -23
- package/dist/{runClaude-EnYNvkV0.cjs → runClaude-ClRhHpwR.cjs} +26 -22
- package/dist/{runClaudeDeps-CUDebE9e.cjs → runClaudeDeps-D2v_WDSL.cjs} +387 -89
- package/dist/{runClaudeDeps-D1M1dzlZ.mjs → runClaudeDeps-Dz2iydq4.mjs} +393 -95
- package/dist/{runGemini-Bu69Zu1u.cjs → runGemini-BtZqGFkp.cjs} +208 -193
- package/dist/{runGemini-Bub8T5cM.mjs → runGemini-DBXxpoY8.mjs} +208 -193
- package/dist/{runOpenClaw-DVu73F_i.mjs → runOpenClaw-BOHpzCEU.mjs} +19 -19
- package/dist/{runOpenClaw-Cob5F3FC.cjs → runOpenClaw-D8q8G57u.cjs} +18 -18
- package/dist/{sandbox-9EKOFyQF.mjs → sandbox-C452Vrsc.mjs} +4 -4
- package/dist/{sandbox-GDqMagSF.cjs → sandbox-Cu9mMzjx.cjs} +4 -4
- package/dist/selfCheck-BAvqBwBR.mjs +84 -0
- package/dist/{selfCheck-DiNo34da.cjs → selfCheck-gKa3uVr1.cjs} +35 -35
- package/dist/{send-ThC80164.cjs → send-2Vb5eppI.cjs} +8 -8
- package/dist/{send-wgtHphq8.mjs → send-B8HARi7x.mjs} +9 -9
- package/dist/{server-Bb8v2fOj.mjs → server-BBWCIZyS.mjs} +4 -4
- package/dist/{server-bidHnstE.cjs → server-Db9Wuam3.cjs} +6 -6
- package/dist/{sessionLock-BWBcBZKh.cjs → sessionLock-6qL_N6Rn.cjs} +3 -3
- package/dist/{sessionLock-gb32sVPR.mjs → sessionLock-ZfvFVdUi.mjs} +3 -3
- package/dist/{sessionModeFile-C-fr1M1h.mjs → sessionModeFile-CWVq8AT9.mjs} +1 -1
- package/dist/{sessionModeFile-DhuTNcJr.cjs → sessionModeFile-CsLtn_PL.cjs} +1 -1
- package/dist/{sessionOps-ByZJbkMq.mjs → sessionOps-CdgbEJgf.mjs} +5 -5
- package/dist/{sessionOps-9MChM9Op.cjs → sessionOps-Dmt7WUUs.cjs} +4 -4
- package/dist/{sessionScanner-CxXPAVyS.mjs → sessionScanner-CNVaSNOn.mjs} +34 -4
- package/dist/{sessionScanner-BpegdnXK.cjs → sessionScanner-CQL_WSaC.cjs} +34 -3
- package/dist/{sessions-C1X4z_Lm.cjs → sessions-BJblG_Hx.cjs} +9 -9
- package/dist/{sessions-l-UgJGjV.mjs → sessions-DTomHfFg.mjs} +10 -10
- package/dist/{setupOfflineReconnection-CgtXlV74.mjs → setupOfflineReconnection-C5trsV-j.mjs} +2 -2
- package/dist/{setupOfflineReconnection-CS_8Da8R.cjs → setupOfflineReconnection-DVA0VpQL.cjs} +2 -2
- package/dist/{spawn-FyoHqYWo.mjs → spawn-CQJFgoOq.mjs} +15 -14
- package/dist/{spawn-D2BlNdZu.cjs → spawn-DRyNAqD8.cjs} +14 -13
- package/dist/{spawnAgents-BhsbJ253.mjs → spawnAgents-BjtmjBvP.mjs} +1 -1
- package/dist/{spawnAgents-CgMKuOhZ.cjs → spawnAgents-CCjJifAW.cjs} +1 -1
- package/dist/{spawnHappyCLI-DsC256j_.mjs → spawnHappyCLI-B_0RWxD4.mjs} +1 -1
- package/dist/{spawnHappyCLI-DByQcqEN.cjs → spawnHappyCLI-ChniczJ5.cjs} +1 -1
- package/dist/{specialCommands-DGUeZqdm.cjs → specialCommands-DbntVs0d.cjs} +3 -3
- package/dist/{specialCommands-DUUBqzvd.mjs → specialCommands-DkdFJi4N.mjs} +3 -3
- package/dist/{startFileWatcher-BtBaahTn.cjs → startFileWatcher-C292fhra.cjs} +1 -1
- package/dist/{startFileWatcher-CaYRObJu.mjs → startFileWatcher-UQyTSRAP.mjs} +1 -1
- package/dist/{streamRelay-DqPFsCgx.cjs → streamRelay-Cx01enfe.cjs} +1 -1
- package/dist/{streamRelay-C8zI7OnR.mjs → streamRelay-_qCd873P.mjs} +1 -1
- package/dist/{sync-D5YqUVjS.mjs → sync-C3p7-KLn.mjs} +1 -1
- package/dist/{sync-BK-IBkuB.cjs → sync-C7sxoUYG.cjs} +1 -1
- package/dist/{systemPrompt-e-qeag_h.mjs → systemPrompt-CdHOlyVW.mjs} +2 -2
- package/dist/{systemPrompt-DaTKLEb-.cjs → systemPrompt-DtibzbRU.cjs} +2 -2
- package/dist/{teams-D9xwa_d3.cjs → teams-D7O7TpVU.cjs} +6 -6
- package/dist/{teams-ClrppvKu.mjs → teams-ujXr3AFn.mjs} +6 -6
- package/dist/{time-0szhiPo4.cjs → time-Dg5tVB8S.cjs} +1 -1
- package/dist/{time-CvrpeD3S.mjs → time-yEL6wHUF.mjs} +1 -1
- package/dist/{titleGenerator-Dz5P7sE1.cjs → titleGenerator-BMEaDTwU.cjs} +2 -2
- package/dist/{titleGenerator-BZ5770wq.mjs → titleGenerator-Dr-BtjzO.mjs} +1 -1
- package/dist/{todo-CkmNJQey.cjs → todo-CUcFamGs.cjs} +6 -6
- package/dist/{todo-o-miKcN2.mjs → todo-CvJe4M2C.mjs} +6 -6
- package/dist/{tools-Cp0qJeBq.mjs → tools-BrM3bZW5.mjs} +1 -1
- package/dist/{tools-C77-Ssan.cjs → tools-DDKTB5aQ.cjs} +1 -1
- package/dist/{uninstall-DGUPERDX.cjs → uninstall-7oLuhYIu.cjs} +3 -3
- package/dist/{uninstall-jNJDCLD_.mjs → uninstall-CEcMMQGz.mjs} +3 -3
- package/package.json +7 -7
- package/dist/selfCheck-CNo4uzGB.mjs +0 -84
|
@@ -1,34 +1,35 @@
|
|
|
1
|
-
import { D as DefaultTransport, A as AcpBackend } from './AcpBackend-
|
|
2
|
-
export {
|
|
3
|
-
import { l as logger } from './logger-
|
|
4
|
-
import { A as AcpSessionManager } from './AcpSessionManager-
|
|
5
|
-
import { o as BUILTIN_TODO_DISCOVERY, P as PROMPT_QUEUE_CAPABILITY } from './index-
|
|
1
|
+
import { D as DefaultTransport, A as AcpBackend, i as isAgentExitError, a as acpNoticeMessage } from './AcpBackend-B0K0WrtW.mjs';
|
|
2
|
+
export { b as DEFAULT_IDLE_TIMEOUT_MS, c as DEFAULT_TOOL_CALL_TIMEOUT_MS, e as extractErrorDetail, f as formatDuration, d as formatDurationMinutes, h as handleAgentMessageChunk, g as handleAgentThoughtChunk, j as handleLegacyMessageChunk, k as handlePlanUpdate, l as handleThinkingUpdate, m as handleToolCall, n as handleToolCallUpdate, p as parseArgsFromContent } from './AcpBackend-B0K0WrtW.mjs';
|
|
3
|
+
import { l as logger } from './logger-13cBr_ew.mjs';
|
|
4
|
+
import { A as AcpSessionManager } from './AcpSessionManager-DykjzBM4.mjs';
|
|
5
|
+
import { o as BUILTIN_TODO_DISCOVERY, P as PROMPT_QUEUE_CAPABILITY } from './index-DMy3OCBe.mjs';
|
|
6
6
|
import { r as registerAgentAttachmentDownloads } from './agentAttachments-M_B5qEF2.mjs';
|
|
7
|
-
import { c as configuration } from './configuration-
|
|
8
|
-
import {
|
|
9
|
-
import { p as preparePiTeamsRuntime } from './piRuntime-
|
|
7
|
+
import { c as configuration } from './configuration-D55F0t16.mjs';
|
|
8
|
+
import { a as stageClaudeAttachments, b as appendStagedAttachmentsToPrompt, C as CLAUDE_ATTACHMENT_KINDS } from './attachmentContent-cPVF463_.mjs';
|
|
9
|
+
import { p as preparePiTeamsRuntime } from './piRuntime-DOdGF395.mjs';
|
|
10
10
|
import { randomUUID } from 'node:crypto';
|
|
11
11
|
import { join } from 'node:path';
|
|
12
|
-
import { c as connectionState, A as ApiClient } from './api-
|
|
13
|
-
import { M as MessageQueue2, r as registerKillSessionHandler } from './registerKillSessionHandler-
|
|
14
|
-
import { h as hashObject, s as startHappyServer } from './deterministicJson-
|
|
15
|
-
import { r as readSettings } from './persistence-
|
|
16
|
-
import { g as getInitialMachineMetadata } from './machineMetadata-
|
|
17
|
-
import { c as createSessionMetadata } from './createSessionMetadata-
|
|
18
|
-
import { s as setupOfflineReconnection } from './setupOfflineReconnection-
|
|
19
|
-
import { n as notifyDaemonSessionStarted, j as reportSessionEditToDaemon } from './controlClient-
|
|
12
|
+
import { c as connectionState, A as ApiClient } from './api-CKBViqI3.mjs';
|
|
13
|
+
import { M as MessageQueue2, r as registerKillSessionHandler } from './registerKillSessionHandler-Drhf7-Vz.mjs';
|
|
14
|
+
import { h as hashObject, s as startHappyServer } from './deterministicJson-BkQETt8_.mjs';
|
|
15
|
+
import { r as readSettings } from './persistence-C_tYtOqK.mjs';
|
|
16
|
+
import { g as getInitialMachineMetadata } from './machineMetadata-dMida2qq.mjs';
|
|
17
|
+
import { c as createSessionMetadata } from './createSessionMetadata-Bi-m0Y_O.mjs';
|
|
18
|
+
import { s as setupOfflineReconnection } from './setupOfflineReconnection-C5trsV-j.mjs';
|
|
19
|
+
import { n as notifyDaemonSessionStarted, j as reportSessionEditToDaemon } from './controlClient-C4xB5J6O.mjs';
|
|
20
20
|
import { e as encodeBase64 } from './authRelay-DSAvg1uv.mjs';
|
|
21
|
-
import { S as StreamRelay } from './streamRelay-
|
|
21
|
+
import { S as StreamRelay } from './streamRelay-_qCd873P.mjs';
|
|
22
22
|
import { p as projectPath } from './projectPath-BTBIMB57.mjs';
|
|
23
|
-
import { B as BasePermissionHandler } from './BasePermissionHandler-
|
|
24
|
-
import { T as TitleGenerator } from './titleGenerator-
|
|
25
|
-
import { w as writeSessionModeFile, n as normalizeAcpPermissionMode, r as removeSessionModeFile } from './sessionModeFile-
|
|
23
|
+
import { B as BasePermissionHandler } from './BasePermissionHandler-hdY7kTqX.mjs';
|
|
24
|
+
import { T as TitleGenerator } from './titleGenerator-Dr-BtjzO.mjs';
|
|
25
|
+
import { w as writeSessionModeFile, n as normalizeAcpPermissionMode, r as removeSessionModeFile } from './sessionModeFile-CWVq8AT9.mjs';
|
|
26
26
|
import { E as EditReportThrottle, e as extractAcpEditPaths } from './editPaths-BVfS_FFL.mjs';
|
|
27
27
|
import 'node:child_process';
|
|
28
28
|
import '@agentclientprotocol/sdk';
|
|
29
|
-
import './time-
|
|
29
|
+
import './time-yEL6wHUF.mjs';
|
|
30
30
|
import './contentLogMetadata-BlWI0egu.mjs';
|
|
31
|
-
import './
|
|
31
|
+
import './processTree-CP5IvQ2Z.mjs';
|
|
32
|
+
import './package-CjlsAaRe.mjs';
|
|
32
33
|
import 'chalk';
|
|
33
34
|
import 'node:util';
|
|
34
35
|
import 'node:fs';
|
|
@@ -36,49 +37,49 @@ import '@paralleldrive/cuid2';
|
|
|
36
37
|
import 'zod';
|
|
37
38
|
import 'node:os';
|
|
38
39
|
import 'node:fs/promises';
|
|
39
|
-
import './attachmentLimits-
|
|
40
|
+
import './attachmentLimits-Di1Z93lN.mjs';
|
|
40
41
|
import './resources-BdFBQi8r.mjs';
|
|
41
42
|
import 'axios';
|
|
42
|
-
import './lidState-
|
|
43
|
+
import './lidState-BqVsw7H1.mjs';
|
|
43
44
|
import 'os';
|
|
44
45
|
import 'child_process';
|
|
45
46
|
import 'node:events';
|
|
46
47
|
import 'socket.io-client';
|
|
47
48
|
import './limits-DIo7rEBR.mjs';
|
|
48
|
-
import './registerCommonHandlers-
|
|
49
|
+
import './registerCommonHandlers-D8OMpBbQ.mjs';
|
|
49
50
|
import 'util';
|
|
50
51
|
import 'fs/promises';
|
|
51
52
|
import 'crypto';
|
|
52
53
|
import 'path';
|
|
53
54
|
import 'cross-spawn';
|
|
54
|
-
import './sync-
|
|
55
|
-
import './backgroundTaskActivity-
|
|
55
|
+
import './sync-C3p7-KLn.mjs';
|
|
56
|
+
import './backgroundTaskActivity-BVwJBl02.mjs';
|
|
56
57
|
import 'tweetnacl';
|
|
57
58
|
import './types-CkqAACXx.mjs';
|
|
58
|
-
import './client-
|
|
59
|
-
import './context-
|
|
60
|
-
import './sessionOps-
|
|
61
|
-
import './tools-
|
|
62
|
-
import './reportProgressTool-
|
|
63
|
-
import './client-
|
|
59
|
+
import './client-BPMWutfs.mjs';
|
|
60
|
+
import './context-CCRpVXFo.mjs';
|
|
61
|
+
import './sessionOps-CdgbEJgf.mjs';
|
|
62
|
+
import './tools-BrM3bZW5.mjs';
|
|
63
|
+
import './reportProgressTool-B203EZCR.mjs';
|
|
64
|
+
import './client-DG5ndWLw.mjs';
|
|
64
65
|
import './precheckCompat-DeEbilbr.mjs';
|
|
65
66
|
import './agentGuidance-BDYt2Qy2.mjs';
|
|
66
67
|
import './trimIdent-BAjmv_TG.mjs';
|
|
67
|
-
import './peerTools-
|
|
68
|
+
import './peerTools-CxmrKnfV.mjs';
|
|
68
69
|
import './ids-DU6sLx4C.mjs';
|
|
69
|
-
import './remoteSessionClient-
|
|
70
|
+
import './remoteSessionClient-D01Hso2-.mjs';
|
|
70
71
|
import '@modelcontextprotocol/sdk/server/mcp.js';
|
|
71
72
|
import 'node:http';
|
|
72
73
|
import '@modelcontextprotocol/sdk/server/streamableHttp.js';
|
|
73
|
-
import './downloadTarget-
|
|
74
|
+
import './downloadTarget-ByXzbDK4.mjs';
|
|
74
75
|
import './terminals-Dlg0x3nY.mjs';
|
|
75
76
|
import './terminalTitleSuggest-CeKsX_V6.mjs';
|
|
76
77
|
import './tmuxSocket-B8Yx20sT.mjs';
|
|
77
|
-
import './bootstrap-
|
|
78
|
+
import './bootstrap-C0s2bPFQ.mjs';
|
|
78
79
|
import './previewPath-CXN4Vag0.mjs';
|
|
79
80
|
import './detectCLI-CSGMlV51.mjs';
|
|
80
81
|
import 'fs';
|
|
81
|
-
import './localHappyAgentAuth-
|
|
82
|
+
import './localHappyAgentAuth-Ce8kO2yc.mjs';
|
|
82
83
|
import 'url';
|
|
83
84
|
import 'node:module';
|
|
84
85
|
import './oneShotPrompts-DT4p6RNd.mjs';
|
|
@@ -97,6 +98,35 @@ function createAcpBackend(options) {
|
|
|
97
98
|
return new AcpBackend(backendOptions);
|
|
98
99
|
}
|
|
99
100
|
|
|
101
|
+
const MAX_DETAIL_CHARS = 400;
|
|
102
|
+
function detailOf(error) {
|
|
103
|
+
if (error instanceof Error) return error.message;
|
|
104
|
+
if (error && typeof error === "object") {
|
|
105
|
+
const record = error;
|
|
106
|
+
const data = record.data && typeof record.data === "object" ? record.data : null;
|
|
107
|
+
const details = typeof data?.details === "string" ? data.details : null;
|
|
108
|
+
const message = typeof record.message === "string" ? record.message : null;
|
|
109
|
+
const text = details && message && details !== message ? `${message}: ${details}` : details ?? message;
|
|
110
|
+
if (text) return text;
|
|
111
|
+
try {
|
|
112
|
+
return JSON.stringify(error);
|
|
113
|
+
} catch {
|
|
114
|
+
return String(error);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
return String(error);
|
|
118
|
+
}
|
|
119
|
+
function oneLine(text) {
|
|
120
|
+
const folded = text.replace(/\s+/g, " ").trim();
|
|
121
|
+
return folded.length > MAX_DETAIL_CHARS ? `${folded.slice(0, MAX_DETAIL_CHARS - 1)}\u2026` : folded;
|
|
122
|
+
}
|
|
123
|
+
function describeAcpTurnFailure(agentName, error) {
|
|
124
|
+
if (isAgentExitError(error)) {
|
|
125
|
+
return { message: `Process exited unexpectedly: ${oneLine(error.message)}`, exited: true };
|
|
126
|
+
}
|
|
127
|
+
return { message: `${agentName} error: ${oneLine(detailOf(error))}`, exited: false };
|
|
128
|
+
}
|
|
129
|
+
|
|
100
130
|
const SUPPORTED_CATEGORIES = /* @__PURE__ */ new Set(["mode", "model", "thought_level"]);
|
|
101
131
|
function isRecord$1(value) {
|
|
102
132
|
return !!value && typeof value === "object";
|
|
@@ -264,7 +294,6 @@ function mergeAcpSessionConfigIntoMetadata(metadata, snapshot) {
|
|
|
264
294
|
return next;
|
|
265
295
|
}
|
|
266
296
|
|
|
267
|
-
const TURN_TIMEOUT_MS = 5 * 60 * 1e3;
|
|
268
297
|
const ACP_EVENT_PREVIEW_CHARS = 240;
|
|
269
298
|
const ACP_RAW_PREVIEW_CHARS = 2e3;
|
|
270
299
|
const ACP_COLOR_RESET = "\x1B[0m";
|
|
@@ -732,7 +761,7 @@ async function runAcp(opts) {
|
|
|
732
761
|
}
|
|
733
762
|
};
|
|
734
763
|
const teamsPiEnv = opts.agentName === "pi" ? await preparePiTeamsRuntime() : {};
|
|
735
|
-
const
|
|
764
|
+
const createBackend = () => new AcpBackend({
|
|
736
765
|
agentName: opts.agentName,
|
|
737
766
|
cwd: process.cwd(),
|
|
738
767
|
command: opts.command,
|
|
@@ -751,6 +780,7 @@ async function runAcp(opts) {
|
|
|
751
780
|
transportHandler: new DefaultTransport(opts.agentName),
|
|
752
781
|
verbose
|
|
753
782
|
});
|
|
783
|
+
let backend = createBackend();
|
|
754
784
|
let thinking = false;
|
|
755
785
|
const setThinking = (next) => {
|
|
756
786
|
if (thinking === next) {
|
|
@@ -762,34 +792,15 @@ async function runAcp(opts) {
|
|
|
762
792
|
let acpSessionId = null;
|
|
763
793
|
let shouldExit = false;
|
|
764
794
|
let abortController = new AbortController();
|
|
765
|
-
let pendingTurn = null;
|
|
766
795
|
let turnCancelled = false;
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
}
|
|
771
|
-
clearTimeout(pendingTurn.timeout);
|
|
772
|
-
const current = pendingTurn;
|
|
773
|
-
pendingTurn = null;
|
|
774
|
-
if (error) {
|
|
775
|
-
current.reject(error);
|
|
776
|
-
return;
|
|
777
|
-
}
|
|
778
|
-
current.resolve();
|
|
779
|
-
};
|
|
780
|
-
const waitForTurnEnd = () => new Promise((resolve, reject) => {
|
|
781
|
-
const timeout = setTimeout(() => {
|
|
782
|
-
pendingTurn = null;
|
|
783
|
-
reject(new Error(`Timed out waiting for ${opts.agentName} to finish the turn`));
|
|
784
|
-
}, TURN_TIMEOUT_MS);
|
|
785
|
-
pendingTurn = { resolve, reject, timeout };
|
|
786
|
-
});
|
|
796
|
+
let backendStarted = false;
|
|
797
|
+
let backendGone = null;
|
|
798
|
+
let todoDiscoverySent = false;
|
|
787
799
|
const stopRunnerFromBackendStatus = (status, detail) => {
|
|
788
800
|
const reason = detail ? `${opts.agentName} backend ${status}: ${detail}` : `${opts.agentName} backend ${status}`;
|
|
789
801
|
logger.debug(`[${opts.agentName}] ${reason}; stopping ACP runner`);
|
|
790
802
|
shouldExit = true;
|
|
791
803
|
messageQueue.close();
|
|
792
|
-
clearPendingTurn(new Error(reason));
|
|
793
804
|
};
|
|
794
805
|
const sendEnvelopes = (envelopes) => {
|
|
795
806
|
for (const envelope of envelopes) {
|
|
@@ -1055,14 +1066,21 @@ async function runAcp(opts) {
|
|
|
1055
1066
|
const suffix = msg.detail ? `: ${msg.detail}` : "";
|
|
1056
1067
|
const statusLine = `Status: ${msg.status}${suffix}`;
|
|
1057
1068
|
logAcp("muted", statusLine);
|
|
1058
|
-
if (msg.status === "idle") {
|
|
1059
|
-
clearPendingTurn();
|
|
1060
|
-
}
|
|
1061
1069
|
if (msg.status === "error" || msg.status === "stopped") {
|
|
1062
1070
|
if (msg.status === "error") opts.onBackendError?.(msg.detail);
|
|
1063
|
-
|
|
1071
|
+
if (!backendStarted) {
|
|
1072
|
+
stopRunnerFromBackendStatus(msg.status, msg.detail);
|
|
1073
|
+
} else if (msg.status === "stopped") {
|
|
1074
|
+
backendGone = new Error(msg.detail ?? `${opts.agentName} process exited`);
|
|
1075
|
+
}
|
|
1064
1076
|
}
|
|
1065
1077
|
}
|
|
1078
|
+
if (msg.type === "event" && msg.name === "notice") {
|
|
1079
|
+
const message = acpNoticeMessage(opts.agentName, msg.payload);
|
|
1080
|
+
logAcp("muted", message);
|
|
1081
|
+
session.sendSessionEvent({ type: "message", message });
|
|
1082
|
+
return;
|
|
1083
|
+
}
|
|
1066
1084
|
const frontendMessage = formatAcpMessageForFrontend(opts.agentName, msg, verbose);
|
|
1067
1085
|
if (frontendMessage) {
|
|
1068
1086
|
logAcp(frontendMessage.kind, frontendMessage.text);
|
|
@@ -1114,8 +1132,9 @@ async function runAcp(opts) {
|
|
|
1114
1132
|
const keepAliveInterval = setInterval(() => {
|
|
1115
1133
|
session.keepAlive(thinking, "remote");
|
|
1116
1134
|
}, 2e3);
|
|
1135
|
+
let promptInFlight = false;
|
|
1117
1136
|
async function handleAbort() {
|
|
1118
|
-
turnCancelled = thinking;
|
|
1137
|
+
turnCancelled = thinking && promptInFlight;
|
|
1119
1138
|
try {
|
|
1120
1139
|
if (acpSessionId) {
|
|
1121
1140
|
await backend.cancel(acpSessionId);
|
|
@@ -1148,15 +1167,12 @@ async function runAcp(opts) {
|
|
|
1148
1167
|
const disposeTermination = registerKillSessionHandler(session.rpcHandlerManager, async () => {
|
|
1149
1168
|
shouldExit = true;
|
|
1150
1169
|
messageQueue.close();
|
|
1151
|
-
clearPendingTurn(new Error("Session terminated"));
|
|
1152
1170
|
await handleAbort();
|
|
1153
1171
|
}, session, { processSignals: true });
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
await switchModelIfRequested(opts.model);
|
|
1159
|
-
const applied = isCurrentRequestedModel(opts.model);
|
|
1172
|
+
const afterSessionStarted = async (requestedModel) => {
|
|
1173
|
+
if (requestedModel) {
|
|
1174
|
+
await switchModelIfRequested(requestedModel);
|
|
1175
|
+
const applied = isCurrentRequestedModel(requestedModel);
|
|
1160
1176
|
if (!applied) session.sendSessionEvent({ type: "message", message: "The saved model is unavailable for this agent; using its current model." });
|
|
1161
1177
|
}
|
|
1162
1178
|
session.updateMetadata((current) => ({
|
|
@@ -1165,8 +1181,33 @@ async function runAcp(opts) {
|
|
|
1165
1181
|
}));
|
|
1166
1182
|
if (permissionModeIsFileBacked()) {
|
|
1167
1183
|
fileBackedModeActive = true;
|
|
1168
|
-
publishFileBackedPermissionMode(initialPermissionMode);
|
|
1184
|
+
publishFileBackedPermissionMode(fileBackedPermissionMode ?? initialPermissionMode);
|
|
1185
|
+
}
|
|
1186
|
+
};
|
|
1187
|
+
const restartBackend = async () => {
|
|
1188
|
+
const gone = backendGone;
|
|
1189
|
+
backend.offMessage?.(onBackendMessage);
|
|
1190
|
+
acpSessionId = null;
|
|
1191
|
+
try {
|
|
1192
|
+
await backend.dispose();
|
|
1193
|
+
} catch (error) {
|
|
1194
|
+
logger.debug(`[${opts.agentName}] dispose of the dead backend failed:`, error);
|
|
1169
1195
|
}
|
|
1196
|
+
backend = createBackend();
|
|
1197
|
+
backend.onMessage(onBackendMessage);
|
|
1198
|
+
const started = await backend.startSession();
|
|
1199
|
+
acpSessionId = started.sessionId;
|
|
1200
|
+
backendGone = null;
|
|
1201
|
+
todoDiscoverySent = false;
|
|
1202
|
+
await afterSessionStarted(currentModel ?? opts.model);
|
|
1203
|
+
logger.debug(`[${opts.agentName}] Restarted the agent after it exited: ${gone?.message ?? "unknown"}`);
|
|
1204
|
+
session.sendSessionEvent({ type: "message", message: `${opts.agentName} was restarted after its process exited; it does not remember the earlier conversation (the transcript here is kept).` });
|
|
1205
|
+
};
|
|
1206
|
+
try {
|
|
1207
|
+
const started = await backend.startSession();
|
|
1208
|
+
acpSessionId = started.sessionId;
|
|
1209
|
+
backendStarted = true;
|
|
1210
|
+
await afterSessionStarted(opts.model);
|
|
1170
1211
|
if (verbose) {
|
|
1171
1212
|
if (!sawSlashCommands) {
|
|
1172
1213
|
logAcp("muted", `Outgoing slash commands from ${opts.agentName}: not reported yet`);
|
|
@@ -1178,7 +1219,6 @@ async function runAcp(opts) {
|
|
|
1178
1219
|
logAcp("muted", `Outgoing models from ${opts.agentName}: not reported yet`);
|
|
1179
1220
|
}
|
|
1180
1221
|
}
|
|
1181
|
-
let todoDiscoverySent = false;
|
|
1182
1222
|
while (!shouldExit) {
|
|
1183
1223
|
const waitSignal = abortController.signal;
|
|
1184
1224
|
const batch = await messageQueue.waitForMessagesAndGetAsString(waitSignal);
|
|
@@ -1191,17 +1231,17 @@ async function runAcp(opts) {
|
|
|
1191
1231
|
}
|
|
1192
1232
|
break;
|
|
1193
1233
|
}
|
|
1194
|
-
if (!acpSessionId) {
|
|
1195
|
-
throw new Error("ACP session is not started");
|
|
1196
|
-
}
|
|
1197
1234
|
logAcp("incoming", `Incoming prompt: ${formatUnknownForConsole(batch.message, ACP_EVENT_PREVIEW_CHARS)}`);
|
|
1198
1235
|
sendEnvelopes(sessionManager.startTurn());
|
|
1199
1236
|
turnCancelled = false;
|
|
1200
1237
|
setThinking(true);
|
|
1201
|
-
const turnEnded = waitForTurnEnd();
|
|
1202
|
-
void turnEnded.catch(() => {
|
|
1203
|
-
});
|
|
1204
1238
|
try {
|
|
1239
|
+
if (backendGone) {
|
|
1240
|
+
await restartBackend();
|
|
1241
|
+
}
|
|
1242
|
+
if (!acpSessionId) {
|
|
1243
|
+
throw new Error("ACP session is not started");
|
|
1244
|
+
}
|
|
1205
1245
|
if (typeof batch.mode.permissionMode === "string" && batch.mode.permissionMode.length > 0) {
|
|
1206
1246
|
await switchPermissionModeIfRequested(batch.mode.permissionMode);
|
|
1207
1247
|
}
|
|
@@ -1217,10 +1257,23 @@ ${BUILTIN_TODO_DISCOVERY}`;
|
|
|
1217
1257
|
happyHomeDir: configuration.happyHomeDir,
|
|
1218
1258
|
sessionId: session.sessionId
|
|
1219
1259
|
}) : [];
|
|
1220
|
-
|
|
1260
|
+
promptInFlight = true;
|
|
1261
|
+
let outcome;
|
|
1262
|
+
try {
|
|
1263
|
+
outcome = await backend.sendPrompt(acpSessionId, appendStagedAttachmentsToPrompt(prompt, staged), attachments);
|
|
1264
|
+
} finally {
|
|
1265
|
+
promptInFlight = false;
|
|
1266
|
+
}
|
|
1221
1267
|
todoDiscoverySent = true;
|
|
1222
|
-
|
|
1223
|
-
|
|
1268
|
+
const stopReason = outcome && typeof outcome === "object" ? outcome.stopReason : void 0;
|
|
1269
|
+
if (stopReason === "error") {
|
|
1270
|
+
throw new Error("the turn ended with an error reported by the agent");
|
|
1271
|
+
}
|
|
1272
|
+
const cancelled = turnCancelled || stopReason === "cancelled";
|
|
1273
|
+
sendEnvelopes(sessionManager.endTurn(cancelled ? "cancelled" : "completed"));
|
|
1274
|
+
if (!cancelled && stopReason && stopReason !== "end_turn") {
|
|
1275
|
+
session.sendSessionEvent({ type: "message", message: `${opts.agentName} stopped the turn: ${stopReason}` });
|
|
1276
|
+
}
|
|
1224
1277
|
streamRelay.endTurn();
|
|
1225
1278
|
setThinking(false);
|
|
1226
1279
|
session.sendSessionEvent({ type: "ready" });
|
|
@@ -1228,14 +1281,16 @@ ${BUILTIN_TODO_DISCOVERY}`;
|
|
|
1228
1281
|
logAcp("muted", `Outgoing prompt completion from ${opts.agentName}`);
|
|
1229
1282
|
}
|
|
1230
1283
|
} catch (error) {
|
|
1231
|
-
|
|
1284
|
+
const failure = describeAcpTurnFailure(opts.agentName, error);
|
|
1285
|
+
session.sendSessionEvent({ type: "message", message: failure.message });
|
|
1232
1286
|
sendEnvelopes(sessionManager.endTurn("failed"));
|
|
1233
1287
|
streamRelay.endTurn();
|
|
1234
1288
|
setThinking(false);
|
|
1235
1289
|
session.sendSessionEvent({ type: "ready" });
|
|
1236
1290
|
logAcp("error", `Prompt error from ${opts.agentName}: ${error instanceof Error ? error.message : String(error)}`);
|
|
1237
|
-
|
|
1238
|
-
|
|
1291
|
+
if (failure.exited && error instanceof Error) {
|
|
1292
|
+
backendGone = error;
|
|
1293
|
+
}
|
|
1239
1294
|
}
|
|
1240
1295
|
}
|
|
1241
1296
|
} finally {
|
|
@@ -1245,7 +1300,6 @@ ${BUILTIN_TODO_DISCOVERY}`;
|
|
|
1245
1300
|
streamRelay.endTurn();
|
|
1246
1301
|
streamRelay.dispose();
|
|
1247
1302
|
reconnectionHandle?.cancel();
|
|
1248
|
-
clearPendingTurn(new Error("ACP runner shutting down"));
|
|
1249
1303
|
try {
|
|
1250
1304
|
permissionHandler.reset();
|
|
1251
1305
|
} catch (error) {
|
|
@@ -79,6 +79,9 @@ function query(params) {
|
|
|
79
79
|
if (typeof value === "string") env[key] = value;
|
|
80
80
|
}
|
|
81
81
|
env.CLAUDE_CODE_ENTRYPOINT = resolveHappyEntrypoint(env.CLAUDE_CODE_ENTRYPOINT);
|
|
82
|
+
if (env.CLAUDE_CODE_EMIT_SESSION_STATE_EVENTS === void 0) {
|
|
83
|
+
env.CLAUDE_CODE_EMIT_SESSION_STATE_EVENTS = "1";
|
|
84
|
+
}
|
|
82
85
|
pinSmallFastModel(env);
|
|
83
86
|
if (opts?.mcpServers && Object.keys(opts.mcpServers).length > 0) {
|
|
84
87
|
ensureLocalProxyBypass(env);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { p as packageJson } from './package-
|
|
1
|
+
import { p as packageJson } from './package-CjlsAaRe.mjs';
|
|
2
2
|
import module$1 from 'node:module';
|
|
3
3
|
import { existsSync } from 'node:fs';
|
|
4
4
|
import { readdir, rm } from 'node:fs/promises';
|
|
@@ -57,10 +57,10 @@ async function pruneStaleCompileCaches(happyHomeDir, cliVersion) {
|
|
|
57
57
|
async function run(args) {
|
|
58
58
|
enableCompileCacheIfPossible(packageJson.version);
|
|
59
59
|
if (isStandaloneVersionRequest(args) || isSelfCheckRequest(args)) {
|
|
60
|
-
const { selfCheckMain } = await import('./selfCheck-
|
|
60
|
+
const { selfCheckMain } = await import('./selfCheck-BAvqBwBR.mjs');
|
|
61
61
|
process.exit(await selfCheckMain({ verbose: isSelfCheckRequest(args) }));
|
|
62
62
|
}
|
|
63
|
-
const { main } = await import('./main-
|
|
63
|
+
const { main } = await import('./main-x4nAhdH5.mjs');
|
|
64
64
|
await main();
|
|
65
65
|
}
|
|
66
66
|
void run(process.argv.slice(2));
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
var node_fs = require('node:fs');
|
|
4
4
|
var os = require('node:os');
|
|
5
|
-
var logger = require('./logger-
|
|
6
|
-
var persistence = require('./persistence-
|
|
5
|
+
var logger = require('./logger-LvwVeATU.cjs');
|
|
6
|
+
var persistence = require('./persistence-DXbKOHxl.cjs');
|
|
7
7
|
var loginShellEnv = require('./loginShellEnv-BkuYtExZ.cjs');
|
|
8
8
|
require('chalk');
|
|
9
9
|
require('node:util');
|
|
10
|
-
require('./configuration-
|
|
10
|
+
require('./configuration-DZPy0T9Z.cjs');
|
|
11
11
|
require('node:path');
|
|
12
|
-
require('./package-
|
|
12
|
+
require('./package-Ch9WGDV_.cjs');
|
|
13
13
|
require('node:fs/promises');
|
|
14
14
|
require('zod');
|
|
15
15
|
require('./authRelay-BdYkC1Po.cjs');
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var _package = require('./package-
|
|
3
|
+
var _package = require('./package-Ch9WGDV_.cjs');
|
|
4
4
|
var module$1 = require('node:module');
|
|
5
5
|
var node_fs = require('node:fs');
|
|
6
6
|
var promises = require('node:fs/promises');
|
|
@@ -59,10 +59,10 @@ async function pruneStaleCompileCaches(happyHomeDir, cliVersion) {
|
|
|
59
59
|
async function run(args) {
|
|
60
60
|
enableCompileCacheIfPossible(_package.packageJson.version);
|
|
61
61
|
if (isStandaloneVersionRequest(args) || isSelfCheckRequest(args)) {
|
|
62
|
-
const { selfCheckMain } = await Promise.resolve().then(function () { return require('./selfCheck-
|
|
62
|
+
const { selfCheckMain } = await Promise.resolve().then(function () { return require('./selfCheck-gKa3uVr1.cjs'); });
|
|
63
63
|
process.exit(await selfCheckMain({ verbose: isSelfCheckRequest(args) }));
|
|
64
64
|
}
|
|
65
|
-
const { main } = await Promise.resolve().then(function () { return require('./main-
|
|
65
|
+
const { main } = await Promise.resolve().then(function () { return require('./main-DpM5jaFH.cjs'); });
|
|
66
66
|
await main();
|
|
67
67
|
}
|
|
68
68
|
void run(process.argv.slice(2));
|
|
@@ -80,6 +80,9 @@ function query(params) {
|
|
|
80
80
|
if (typeof value === "string") env[key] = value;
|
|
81
81
|
}
|
|
82
82
|
env.CLAUDE_CODE_ENTRYPOINT = resolveHappyEntrypoint(env.CLAUDE_CODE_ENTRYPOINT);
|
|
83
|
+
if (env.CLAUDE_CODE_EMIT_SESSION_STATE_EVENTS === void 0) {
|
|
84
|
+
env.CLAUDE_CODE_EMIT_SESSION_STATE_EVENTS = "1";
|
|
85
|
+
}
|
|
83
86
|
smallFastModel.pinSmallFastModel(env);
|
|
84
87
|
if (opts?.mcpServers && Object.keys(opts.mcpServers).length > 0) {
|
|
85
88
|
smallFastModel.ensureLocalProxyBypass(env);
|
|
@@ -2,6 +2,7 @@ import * as z from 'zod';
|
|
|
2
2
|
import { z as z$1 } from 'zod';
|
|
3
3
|
import { isCuid, createId } from '@paralleldrive/cuid2';
|
|
4
4
|
|
|
5
|
+
const CODEX_STEER_CAPABILITY = "codex-steer-v1";
|
|
5
6
|
const sessionRoleSchema = z.enum(["user", "agent"]);
|
|
6
7
|
const sessionTextEventSchema = z.object({
|
|
7
8
|
t: z.literal("text"),
|
|
@@ -976,5 +977,11 @@ z$1.object({
|
|
|
976
977
|
sid: z$1.string(),
|
|
977
978
|
items: z$1.array(PromptQueueItemSchema)
|
|
978
979
|
});
|
|
980
|
+
z$1.object({
|
|
981
|
+
url: z$1.string().url().max(512),
|
|
982
|
+
webappUrl: z$1.string().url().max(512),
|
|
983
|
+
handoff: z$1.string().regex(/^vh1\.[A-Za-z0-9_-]{16,2048}\.[A-Za-z0-9_-]{43}$/),
|
|
984
|
+
issuedAt: z$1.number().int().positive()
|
|
985
|
+
});
|
|
979
986
|
|
|
980
|
-
export { AUTOMATION_NAME_PATTERN as A, BUILTIN_TODO_SKILL as B, ContextUsageSchema as C, PROMPT_QUEUE_CAPABILITY as P, ReleaseDrainNoticeSchema as R, STREAM_DELTA_MAX_CHARS as S, AUTOMATION_PRECHECK_MAX_TIMEOUT_MS as a, AutomationPrecheckSchema as b, createEnvelope as c, createBuiltinTodoClient as d, isClaudeOpus55Model as e, supportsClaudeOpus55 as f, getAgentCodeDefaults as g, AutomationNameSchema as h, isAutomationRunTerminal as i, AutomationConcurrencySchema as j, AutomationActionSchema as k, AutomationTriggerSchema as l, AgentVersionsSchema as m, normalizeAgentKey as n, BUILTIN_TODO_DISCOVERY as o, AGENT_VERSION_SOURCES as p, RelayAssignmentResponseSchema as q,
|
|
987
|
+
export { AUTOMATION_NAME_PATTERN as A, BUILTIN_TODO_SKILL as B, ContextUsageSchema as C, PROMPT_QUEUE_CAPABILITY as P, ReleaseDrainNoticeSchema as R, STREAM_DELTA_MAX_CHARS as S, AUTOMATION_PRECHECK_MAX_TIMEOUT_MS as a, AutomationPrecheckSchema as b, createEnvelope as c, createBuiltinTodoClient as d, isClaudeOpus55Model as e, supportsClaudeOpus55 as f, getAgentCodeDefaults as g, AutomationNameSchema as h, isAutomationRunTerminal as i, AutomationConcurrencySchema as j, AutomationActionSchema as k, AutomationTriggerSchema as l, AgentVersionsSchema as m, normalizeAgentKey as n, BUILTIN_TODO_DISCOVERY as o, AGENT_VERSION_SOURCES as p, RelayAssignmentResponseSchema as q, CODEX_STEER_CAPABILITY as r, streamKeyOf as s, RelayCandidatesResponseSchema as t, AUTOMATION_SUMMARY_MAX_CHARS as u, AUTOMATION_PRECHECK_OUTPUT_MAX_CHARS as v, AUTOMATION_PRECHECK_DEFAULT_TIMEOUT_MS as w, AUTOMATION_CLAIM_MAX_RUNS as x, AUTOMATION_DAEMON_CAPABILITY_PRECHECK as y, AUTOMATION_DEFAULT_LEASE_MS as z };
|
|
@@ -22,6 +22,7 @@ function _interopNamespaceDefault(e) {
|
|
|
22
22
|
|
|
23
23
|
var z__namespace = /*#__PURE__*/_interopNamespaceDefault(z);
|
|
24
24
|
|
|
25
|
+
const CODEX_STEER_CAPABILITY = "codex-steer-v1";
|
|
25
26
|
const sessionRoleSchema = z__namespace.enum(["user", "agent"]);
|
|
26
27
|
const sessionTextEventSchema = z__namespace.object({
|
|
27
28
|
t: z__namespace.literal("text"),
|
|
@@ -996,6 +997,12 @@ z.z.object({
|
|
|
996
997
|
sid: z.z.string(),
|
|
997
998
|
items: z.z.array(PromptQueueItemSchema)
|
|
998
999
|
});
|
|
1000
|
+
z.z.object({
|
|
1001
|
+
url: z.z.string().url().max(512),
|
|
1002
|
+
webappUrl: z.z.string().url().max(512),
|
|
1003
|
+
handoff: z.z.string().regex(/^vh1\.[A-Za-z0-9_-]{16,2048}\.[A-Za-z0-9_-]{43}$/),
|
|
1004
|
+
issuedAt: z.z.number().int().positive()
|
|
1005
|
+
});
|
|
999
1006
|
|
|
1000
1007
|
exports.AGENT_VERSION_SOURCES = AGENT_VERSION_SOURCES;
|
|
1001
1008
|
exports.AUTOMATION_CLAIM_MAX_RUNS = AUTOMATION_CLAIM_MAX_RUNS;
|
|
@@ -1014,6 +1021,7 @@ exports.AutomationPrecheckSchema = AutomationPrecheckSchema;
|
|
|
1014
1021
|
exports.AutomationTriggerSchema = AutomationTriggerSchema;
|
|
1015
1022
|
exports.BUILTIN_TODO_DISCOVERY = BUILTIN_TODO_DISCOVERY;
|
|
1016
1023
|
exports.BUILTIN_TODO_SKILL = BUILTIN_TODO_SKILL;
|
|
1024
|
+
exports.CODEX_STEER_CAPABILITY = CODEX_STEER_CAPABILITY;
|
|
1017
1025
|
exports.ContextUsageSchema = ContextUsageSchema;
|
|
1018
1026
|
exports.PROMPT_QUEUE_CAPABILITY = PROMPT_QUEUE_CAPABILITY;
|
|
1019
1027
|
exports.RelayAssignmentResponseSchema = RelayAssignmentResponseSchema;
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { statSync, readdirSync } from 'node:fs';
|
|
2
2
|
import { homedir } from 'node:os';
|
|
3
|
-
import { l as logger } from './logger-
|
|
4
|
-
import { r as readSettings } from './persistence-
|
|
3
|
+
import { l as logger } from './logger-13cBr_ew.mjs';
|
|
4
|
+
import { r as readSettings } from './persistence-C_tYtOqK.mjs';
|
|
5
5
|
import { d as describeAgentHome, C as CLAUDE_CONFIG_DIR_ENV, a as CODEX_HOME_ENV, f as findClaudeConversation, b as agentHomeCandidates, c as findCodexThread, r as resolveAgentHomes, A as AGENT_HOME_ENV_NAMES, g as agentHomeEnv, p as probeLoginShellEnv } from './loginShellEnv-Dw8M7tkI.mjs';
|
|
6
6
|
export { h as claudeConversationPath, i as claudeProjectDirName, j as codexRolloutFileMatches, e as expandHomePath } from './loginShellEnv-Dw8M7tkI.mjs';
|
|
7
7
|
import 'chalk';
|
|
8
8
|
import 'node:util';
|
|
9
|
-
import './configuration-
|
|
9
|
+
import './configuration-D55F0t16.mjs';
|
|
10
10
|
import 'node:path';
|
|
11
|
-
import './package-
|
|
11
|
+
import './package-CjlsAaRe.mjs';
|
|
12
12
|
import 'node:fs/promises';
|
|
13
13
|
import 'zod';
|
|
14
14
|
import './authRelay-DSAvg1uv.mjs';
|
package/dist/index.cjs
CHANGED
package/dist/index.mjs
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var logger = require('./logger-
|
|
3
|
+
var logger = require('./logger-LvwVeATU.cjs');
|
|
4
4
|
var fs = require('fs');
|
|
5
5
|
var child_process = require('child_process');
|
|
6
6
|
var trimIdent = require('./trimIdent-4gvk9Wk6.cjs');
|
|
7
7
|
var os = require('os');
|
|
8
8
|
require('chalk');
|
|
9
9
|
require('node:util');
|
|
10
|
-
require('./configuration-
|
|
10
|
+
require('./configuration-DZPy0T9Z.cjs');
|
|
11
11
|
require('node:fs');
|
|
12
12
|
require('node:os');
|
|
13
13
|
require('node:path');
|
|
14
|
-
require('./package-
|
|
14
|
+
require('./package-Ch9WGDV_.cjs');
|
|
15
15
|
require('node:fs/promises');
|
|
16
16
|
|
|
17
17
|
const PLIST_LABEL = "com.happy-cli.daemon";
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { l as logger } from './logger-
|
|
1
|
+
import { l as logger } from './logger-13cBr_ew.mjs';
|
|
2
2
|
import { existsSync, writeFileSync, chmodSync } from 'fs';
|
|
3
3
|
import { execSync } from 'child_process';
|
|
4
4
|
import { t as trimIdent } from './trimIdent-BAjmv_TG.mjs';
|
|
5
5
|
import os from 'os';
|
|
6
6
|
import 'chalk';
|
|
7
7
|
import 'node:util';
|
|
8
|
-
import './configuration-
|
|
8
|
+
import './configuration-D55F0t16.mjs';
|
|
9
9
|
import 'node:fs';
|
|
10
10
|
import 'node:os';
|
|
11
11
|
import 'node:path';
|
|
12
|
-
import './package-
|
|
12
|
+
import './package-CjlsAaRe.mjs';
|
|
13
13
|
import 'node:fs/promises';
|
|
14
14
|
|
|
15
15
|
const PLIST_LABEL = "com.happy-cli.daemon";
|