very-happy-cli 0.2.176 → 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-9_ZI1Bv3.cjs → AcpBackend-B-ny68XM.cjs} +188 -37
- package/dist/{AcpBackend-COp6D8gl.mjs → AcpBackend-B0K0WrtW.mjs} +187 -38
- package/dist/{BasePermissionHandler-DPvLN7aR.cjs → BasePermissionHandler-DR6nxuEn.cjs} +1 -1
- package/dist/{BasePermissionHandler-ChMkmsGD.mjs → BasePermissionHandler-hdY7kTqX.mjs} +1 -1
- package/dist/{agentHome-BKi7tsE9.cjs → agentHome-BdTXEUPe.cjs} +4 -4
- package/dist/{agentHome-D61ZMLXM.mjs → agentHome-GRN2VfHv.mjs} +4 -4
- package/dist/{api-Buc_ejoA.cjs → api-BWX10o97.cjs} +15 -8
- package/dist/{api-CbwDDXJt.mjs → api-CKBViqI3.mjs} +16 -9
- package/dist/{apiMachine--PXoXwKq.cjs → apiMachine-BYYFGgFs.cjs} +14 -13
- package/dist/{apiMachine-CS7t3Rg-.mjs → apiMachine-DttO4UFj.mjs} +15 -14
- package/dist/{attachmentContent-BQYc8KpE.mjs → attachmentContent-cPVF463_.mjs} +1 -1
- package/dist/{attachmentContent-CFzzTeV9.cjs → attachmentContent-kJKXpkMX.cjs} +1 -1
- package/dist/{auth-B3xMoveE.mjs → auth-BmESeKuM.mjs} +5 -5
- package/dist/{auth-CBkmRIGw.mjs → auth-CKdXb9zp.mjs} +8 -8
- package/dist/{auth-CpO3ZUMz.cjs → auth-CTECt2Oz.cjs} +5 -5
- package/dist/{auth-LPvsVriN.cjs → auth-DNxVmVbn.cjs} +8 -8
- package/dist/{auto-DHGch_zK.mjs → auto-Ch3203qd.mjs} +16 -15
- package/dist/{auto-Dm3EIKT7.cjs → auto-D1ypjjfx.cjs} +14 -13
- package/dist/{backgroundTaskActivity-8PdPxrvy.mjs → backgroundTaskActivity-BVwJBl02.mjs} +1 -1
- package/dist/{bootstrap-BboDz_w2.cjs → bootstrap-6OI698q9.cjs} +2 -2
- package/dist/{bootstrap-CxuBAkJU.mjs → bootstrap-C0s2bPFQ.mjs} +2 -2
- package/dist/{browser-BvARP-YR.mjs → browser-BlLWZUMx.mjs} +1 -1
- package/dist/{browser-GQZJxD2n.cjs → browser-DG6Uof5O.cjs} +1 -1
- package/dist/{claudeLocal-B9EhFmD7.mjs → claudeLocal-CcWcKnoo.mjs} +5 -5
- package/dist/{claudeLocal-D-mujSX1.cjs → claudeLocal-CemsIArT.cjs} +4 -4
- package/dist/{claudeLocalLauncher-Bdl-9aU_.mjs → claudeLocalLauncher-7p6y88nj.mjs} +15 -18
- package/dist/{claudeLocalLauncher-Tbrx6TXF.cjs → claudeLocalLauncher-A4VuevIi.cjs} +14 -17
- package/dist/{claudeSessionFork-D_DKvDKE.mjs → claudeSessionFork-BtROOjqf.mjs} +1 -1
- package/dist/{claudeSessionFork-sOz97qqW.cjs → claudeSessionFork-CbDfm8Fz.cjs} +1 -1
- package/dist/{client-Cg6ABRe-.mjs → client-BPMWutfs.mjs} +3 -3
- package/dist/{client-D9pEOhn4.cjs → client-COmgDDy0.cjs} +2 -2
- package/dist/{client-Ryu9fllj.mjs → client-DG5ndWLw.mjs} +2 -2
- package/dist/{client-D7sSU04O.cjs → client-DyvBTYee.cjs} +3 -3
- package/dist/codex/happyMcpStdioBridge.cjs +14 -14
- package/dist/codex/happyMcpStdioBridge.mjs +15 -15
- package/dist/{codexAppServerClient-C70pJ-BB.mjs → codexAppServerClient-D-Z8qSfI.mjs} +10 -58
- package/dist/{codexAppServerClient-DsIUkVnX.cjs → codexAppServerClient-R24WZZfg.cjs} +6 -54
- package/dist/{codexCommand-Aycux-B7.cjs → codexCommand-6hW19gsq.cjs} +41 -63
- package/dist/{codexCommand-DWbA3pJN.mjs → codexCommand-CVTkZJ1o.mjs} +41 -63
- package/dist/{BaseReasoningProcessor-Dnf16mtJ.cjs → codexTermination-BBU7e92y.cjs} +25 -1
- package/dist/{BaseReasoningProcessor-pjvLSTQF.mjs → codexTermination-CCIfwzcx.mjs} +25 -2
- package/dist/{config-Bztmzu8z.mjs → config-CvsNChKX.mjs} +3 -3
- package/dist/{config-BcL0bxO5.cjs → config-DhdrvOLV.cjs} +3 -3
- package/dist/{configuration-BAwOtWFY.mjs → configuration-D55F0t16.mjs} +1 -1
- package/dist/{configuration-CpBrilxV.cjs → configuration-DZPy0T9Z.cjs} +1 -1
- package/dist/{connect-BeWQ4MMA.mjs → connect-CwCXMRmD.mjs} +12 -12
- package/dist/{connect-BBNCMTi8.cjs → connect-Wz-XZYXW.cjs} +11 -11
- package/dist/{context-Hk0j2Y9-.cjs → context-BKbrZ55r.cjs} +1 -1
- package/dist/{context-j114QJre.mjs → context-CCRpVXFo.mjs} +1 -1
- package/dist/{controlClient-00KYAjsI.mjs → controlClient-C4xB5J6O.mjs} +4 -4
- package/dist/{controlClient-bs_YqwDl.cjs → controlClient-SX8gSza2.cjs} +3 -3
- package/dist/{createSessionMetadata-D4Sj6H95.cjs → createSessionMetadata-BCFmYlBo.cjs} +2 -2
- package/dist/{createSessionMetadata-xlycGog5.mjs → createSessionMetadata-Bi-m0Y_O.mjs} +2 -2
- package/dist/{defaultPermissionMode-CMsiaRzr.cjs → defaultPermissionMode-DMBEnXll.cjs} +2 -2
- package/dist/{defaultPermissionMode-B97ox9p1.mjs → defaultPermissionMode-wBcbBezm.mjs} +2 -2
- package/dist/{deterministicJson-ucyv8j6b.mjs → deterministicJson-BkQETt8_.mjs} +8 -8
- package/dist/{deterministicJson-aHxtYLha.cjs → deterministicJson-ChGfQEF6.cjs} +8 -8
- package/dist/{doctor-D554c6Bg.mjs → doctor-B9c2C9dF.mjs} +8 -8
- package/dist/{doctor-BXkNXcok.cjs → doctor-BsN3JZJn.cjs} +7 -7
- package/dist/{downloadTarget-2_zMvt2N.mjs → downloadTarget-ByXzbDK4.mjs} +6 -6
- package/dist/{downloadTarget-CmdlljZW.cjs → downloadTarget-Dj3WoVJa.cjs} +6 -6
- package/dist/{ensureDaemonRunning-DJlziY-m.mjs → ensureDaemonRunning--HYzs5Ce.mjs} +5 -5
- package/dist/{ensureDaemonRunning-CY7iC--U.cjs → ensureDaemonRunning-7Wb8M7Lv.cjs} +5 -5
- package/dist/{handleResumeCommand-CNTnXBXA.mjs → handleResumeCommand-DHddBkNJ.mjs} +5 -5
- package/dist/{handleResumeCommand-lSVnvTNC.cjs → handleResumeCommand-OmuUGYjQ.cjs} +5 -5
- package/dist/{index-jeD70GGH.cjs → index-BRJzH4sc.cjs} +137 -83
- package/dist/{index-DY3I8j0W.mjs → index-BzJNDsJq.mjs} +139 -85
- package/dist/{index-B6UGRQ7h.mjs → index-CEjJnq05.mjs} +3 -0
- package/dist/{index-59hR7nVz.mjs → index-CEm0MYiS.mjs} +3 -3
- package/dist/{index-DhARRePz.cjs → index-CrR4JISa.cjs} +4 -4
- package/dist/{index-MwTVbeGW.cjs → index-D9NoYc5I.cjs} +3 -3
- package/dist/{index-D3kI0hDR.cjs → index-DFPT4HOO.cjs} +3 -0
- package/dist/{index-CxSLrTPA.mjs → index-Dhl6_bw7.mjs} +4 -4
- package/dist/index.cjs +2 -2
- package/dist/index.mjs +2 -2
- package/dist/{install-DXUEtGfU.cjs → install-1qn-D9FS.cjs} +3 -3
- package/dist/{install-DytIJ_Ia.mjs → install-BDIUtPXi.mjs} +3 -3
- package/dist/lib.cjs +10 -10
- package/dist/lib.d.cts +7 -1
- package/dist/lib.d.mts +7 -1
- package/dist/lib.mjs +11 -11
- package/dist/{lidState-CduPmrM0.mjs → lidState-BqVsw7H1.mjs} +1 -1
- package/dist/{lidState-UasMvPzw.cjs → lidState-DxbK0qfu.cjs} +1 -1
- package/dist/{localHappyAgentAuth-DL8JjHTV.mjs → localHappyAgentAuth-Ce8kO2yc.mjs} +1 -1
- package/dist/{localHappyAgentAuth-CA02WOny.cjs → localHappyAgentAuth-D5tANdRD.cjs} +1 -1
- package/dist/{logger-CihCDWDw.mjs → logger-13cBr_ew.mjs} +2 -2
- package/dist/{logger-zoO54Zsy.cjs → logger-LvwVeATU.cjs} +2 -2
- package/dist/{machineMetadata-BAKVtr-k.cjs → machineMetadata-29h7vgf4.cjs} +3 -3
- package/dist/{machineMetadata-DEZcQ_CQ.mjs → machineMetadata-dMida2qq.mjs} +3 -3
- package/dist/{main-BIvxyX71.cjs → main-DpM5jaFH.cjs} +44 -44
- package/dist/{main-DyJfNlL_.mjs → main-x4nAhdH5.mjs} +44 -44
- package/dist/{manager-2Il8XJVq.mjs → manager-BEsI4qt3.mjs} +1 -1
- package/dist/{mcp-yoIdGe6C.mjs → mcp-DMiFGYMT.mjs} +15 -15
- package/dist/{mcp-Dd11vHij.cjs → mcp-DQv3caXs.cjs} +14 -14
- package/dist/{mirrorProtocol-D-hF_SE5.cjs → mirrorProtocol-BfrERW7Z.cjs} +2 -2
- package/dist/{mirrorProtocol-BukXB5s3.mjs → mirrorProtocol-Bz8tEabR.mjs} +2 -2
- package/dist/{package-A7zOGx8B.cjs → package-Ch9WGDV_.cjs} +7 -7
- package/dist/{package-ayqGDKSp.mjs → package-CjlsAaRe.mjs} +7 -7
- package/dist/{peerTools-DDMSViPu.mjs → peerTools-CxmrKnfV.mjs} +4 -4
- package/dist/{peerTools-dPc9hRC5.cjs → peerTools-DtGKWli5.cjs} +4 -4
- package/dist/{persistence-Dy3lmall.mjs → persistence-C_tYtOqK.mjs} +2 -2
- package/dist/{persistence-Cih2AWml.cjs → persistence-DXbKOHxl.cjs} +2 -2
- package/dist/{piRunnerArgs-BuJgnUI5.cjs → piRunnerArgs-BVRZe2AR.cjs} +1 -1
- package/dist/{piRunnerArgs-D3z3-1VJ.mjs → piRunnerArgs-BpHc-JZl.mjs} +1 -1
- package/dist/{piRuntime-B-SPcWIr.cjs → piRuntime-D7eio8Ix.cjs} +1 -1
- package/dist/{piRuntime-kVGue-_5.mjs → piRuntime-DOdGF395.mjs} +1 -1
- package/dist/{piTerminal-aEtVdCJ2.mjs → piTerminal-dpxz4Q8D.mjs} +17 -17
- package/dist/{piTerminal-DSxK5aAm.cjs → piTerminal-y_PRo2NY.cjs} +16 -16
- package/dist/processTree-CMHWlVse.cjs +66 -0
- package/dist/processTree-CP5IvQ2Z.mjs +61 -0
- package/dist/{rateLimitWindows-82izLQy8.cjs → rateLimitWindows-DFnMU2Vt.cjs} +1 -1
- package/dist/{rateLimitWindows-E5DRjfE6.mjs → rateLimitWindows-DYHDGuzQ.mjs} +1 -1
- package/dist/{registerCommonHandlers-CqO075-X.cjs → registerCommonHandlers-60VuTkdg.cjs} +2 -2
- package/dist/{registerCommonHandlers-Bm7CMqMv.mjs → registerCommonHandlers-D8OMpBbQ.mjs} +2 -2
- package/dist/{registerKillSessionHandler-D02OY4vi.mjs → registerKillSessionHandler-Drhf7-Vz.mjs} +4 -4
- package/dist/{registerKillSessionHandler-WQra3T9B.cjs → registerKillSessionHandler-pqChBKwO.cjs} +4 -4
- package/dist/{remoteSessionClient-f3DYorl8.cjs → remoteSessionClient-B7NvjHD3.cjs} +5 -5
- package/dist/{remoteSessionClient-Buh6NejV.mjs → remoteSessionClient-D01Hso2-.mjs} +5 -5
- package/dist/{reportProgressTool-C5aSoKYX.mjs → reportProgressTool-B203EZCR.mjs} +1 -1
- package/dist/{reportProgressTool-C2gn_HWD.cjs → reportProgressTool-Du_zAK4h.cjs} +1 -1
- package/dist/{run-Drxogp0j.mjs → run-DX4Zs3Ug.mjs} +31 -31
- package/dist/{run-CDEmq6Zs.cjs → run-DZ5jU53c.cjs} +31 -31
- package/dist/{runClaude-BF6U2Js7.mjs → runClaude-CgPHXP0L.mjs} +25 -21
- package/dist/{runClaude-yEcZTCt_.cjs → runClaude-ClRhHpwR.cjs} +24 -20
- package/dist/{runClaudeDeps-CnNNFjlI.cjs → runClaudeDeps-D2v_WDSL.cjs} +384 -86
- package/dist/{runClaudeDeps-Bl4ndq7N.mjs → runClaudeDeps-Dz2iydq4.mjs} +390 -92
- package/dist/{runGemini-DDVDRNg4.cjs → runGemini-BtZqGFkp.cjs} +206 -191
- package/dist/{runGemini-C3wt7iv7.mjs → runGemini-DBXxpoY8.mjs} +206 -191
- package/dist/{runOpenClaw-CY6YHAvj.mjs → runOpenClaw-BOHpzCEU.mjs} +16 -16
- package/dist/{runOpenClaw-BzlVA_9Q.cjs → runOpenClaw-D8q8G57u.cjs} +15 -15
- package/dist/{sandbox-CX_wLwpq.mjs → sandbox-C452Vrsc.mjs} +4 -4
- package/dist/{sandbox-0UNHR3hP.cjs → sandbox-Cu9mMzjx.cjs} +4 -4
- package/dist/selfCheck-BAvqBwBR.mjs +84 -0
- package/dist/{selfCheck-FNwMFY8p.cjs → selfCheck-gKa3uVr1.cjs} +35 -35
- package/dist/{send-BQkl25g0.cjs → send-2Vb5eppI.cjs} +8 -8
- package/dist/{send-CpEGYict.mjs → send-B8HARi7x.mjs} +9 -9
- package/dist/{server-DnINX_Lm.mjs → server-BBWCIZyS.mjs} +4 -4
- package/dist/{server-BodFZ5sW.cjs → server-Db9Wuam3.cjs} +6 -6
- package/dist/{sessionLock-DOj6mMXn.cjs → sessionLock-6qL_N6Rn.cjs} +3 -3
- package/dist/{sessionLock-Ddn-fhZ0.mjs → sessionLock-ZfvFVdUi.mjs} +3 -3
- package/dist/{sessionModeFile-DDbonFR_.mjs → sessionModeFile-CWVq8AT9.mjs} +1 -1
- package/dist/{sessionModeFile-DVukoSp7.cjs → sessionModeFile-CsLtn_PL.cjs} +1 -1
- package/dist/{sessionOps-B1vQ25GS.mjs → sessionOps-CdgbEJgf.mjs} +5 -5
- package/dist/{sessionOps-Nryt1DZt.cjs → sessionOps-Dmt7WUUs.cjs} +4 -4
- package/dist/{sessionScanner-DCr3ofhR.mjs → sessionScanner-CNVaSNOn.mjs} +34 -4
- package/dist/{sessionScanner-D1h-cdte.cjs → sessionScanner-CQL_WSaC.cjs} +34 -3
- package/dist/{sessions-D2HsTbLf.cjs → sessions-BJblG_Hx.cjs} +9 -9
- package/dist/{sessions-DpAN6Ft9.mjs → sessions-DTomHfFg.mjs} +10 -10
- package/dist/{setupOfflineReconnection-DQHEp330.mjs → setupOfflineReconnection-C5trsV-j.mjs} +2 -2
- package/dist/{setupOfflineReconnection-B9Tw1Ouj.cjs → setupOfflineReconnection-DVA0VpQL.cjs} +2 -2
- package/dist/{spawn-CNjm1yOi.mjs → spawn-CQJFgoOq.mjs} +14 -13
- package/dist/{spawn-CvDZ38hi.cjs → spawn-DRyNAqD8.cjs} +12 -11
- package/dist/{spawnHappyCLI-C8Vl56wB.mjs → spawnHappyCLI-B_0RWxD4.mjs} +1 -1
- package/dist/{spawnHappyCLI-ahi4j6Mh.cjs → spawnHappyCLI-ChniczJ5.cjs} +1 -1
- package/dist/{specialCommands-BpqnGrOP.cjs → specialCommands-DbntVs0d.cjs} +3 -3
- package/dist/{specialCommands-DfVMGXTl.mjs → specialCommands-DkdFJi4N.mjs} +3 -3
- package/dist/{startFileWatcher-Ddn3L0u3.cjs → startFileWatcher-C292fhra.cjs} +1 -1
- package/dist/{startFileWatcher-DXJXY4AE.mjs → startFileWatcher-UQyTSRAP.mjs} +1 -1
- package/dist/{sync-BKvgkhPs.mjs → sync-C3p7-KLn.mjs} +1 -1
- package/dist/{sync-BgZuthoS.cjs → sync-C7sxoUYG.cjs} +1 -1
- package/dist/{systemPrompt-DuPem6c9.mjs → systemPrompt-CdHOlyVW.mjs} +1 -1
- package/dist/{systemPrompt-C6O1cHUg.cjs → systemPrompt-DtibzbRU.cjs} +1 -1
- package/dist/{teams-DifEhhmk.cjs → teams-D7O7TpVU.cjs} +6 -6
- package/dist/{teams-CffMBBfU.mjs → teams-ujXr3AFn.mjs} +6 -6
- package/dist/{time-s8CaneqW.cjs → time-Dg5tVB8S.cjs} +1 -1
- package/dist/{time-DxCTiteK.mjs → time-yEL6wHUF.mjs} +1 -1
- package/dist/{titleGenerator-CXr7t6cf.cjs → titleGenerator-BMEaDTwU.cjs} +2 -2
- package/dist/{titleGenerator-B5T7QSzu.mjs → titleGenerator-Dr-BtjzO.mjs} +1 -1
- package/dist/{todo-B41GKMcI.cjs → todo-CUcFamGs.cjs} +5 -5
- package/dist/{todo-DNO7s8td.mjs → todo-CvJe4M2C.mjs} +5 -5
- package/dist/{tools-697R1uqn.mjs → tools-BrM3bZW5.mjs} +1 -1
- package/dist/{tools-lotMyxIE.cjs → tools-DDKTB5aQ.cjs} +1 -1
- package/dist/{uninstall-CRu96len.cjs → uninstall-7oLuhYIu.cjs} +3 -3
- package/dist/{uninstall-CYO7EDjO.mjs → uninstall-CEcMMQGz.mjs} +3 -3
- package/package.json +7 -7
- package/dist/selfCheck-ClVv8NK3.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-
|
|
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
4
|
import { A as AcpSessionManager } from './AcpSessionManager-DykjzBM4.mjs';
|
|
5
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
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';
|
|
@@ -39,46 +40,46 @@ import 'node:fs/promises';
|
|
|
39
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);
|
|
@@ -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";
|
package/dist/lib.cjs
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var api = require('./api-
|
|
4
|
-
var logger = require('./logger-
|
|
5
|
-
var configuration = require('./configuration-
|
|
3
|
+
var api = require('./api-BWX10o97.cjs');
|
|
4
|
+
var logger = require('./logger-LvwVeATU.cjs');
|
|
5
|
+
var configuration = require('./configuration-DZPy0T9Z.cjs');
|
|
6
6
|
var types = require('./types-CRS-srZK.cjs');
|
|
7
7
|
require('axios');
|
|
8
|
-
require('./lidState-
|
|
8
|
+
require('./lidState-DxbK0qfu.cjs');
|
|
9
9
|
require('./authRelay-BdYkC1Po.cjs');
|
|
10
10
|
require('node:crypto');
|
|
11
11
|
require('tweetnacl');
|
|
@@ -18,8 +18,8 @@ require('zod');
|
|
|
18
18
|
require('./index-De8L5lFK.cjs');
|
|
19
19
|
require('@paralleldrive/cuid2');
|
|
20
20
|
require('./limits-C-a7gr04.cjs');
|
|
21
|
-
require('./time-
|
|
22
|
-
require('./registerCommonHandlers-
|
|
21
|
+
require('./time-Dg5tVB8S.cjs');
|
|
22
|
+
require('./registerCommonHandlers-60VuTkdg.cjs');
|
|
23
23
|
require('util');
|
|
24
24
|
require('fs/promises');
|
|
25
25
|
require('crypto');
|
|
@@ -27,10 +27,10 @@ require('path');
|
|
|
27
27
|
require('cross-spawn');
|
|
28
28
|
require('./projectPath-ChLhdOyt.cjs');
|
|
29
29
|
require('url');
|
|
30
|
-
require('./sync-
|
|
30
|
+
require('./sync-C7sxoUYG.cjs');
|
|
31
31
|
require('./backgroundTaskActivity-CBvUdj39.cjs');
|
|
32
|
-
require('./controlClient-
|
|
33
|
-
require('./persistence-
|
|
32
|
+
require('./controlClient-SX8gSza2.cjs');
|
|
33
|
+
require('./persistence-DXbKOHxl.cjs');
|
|
34
34
|
require('node:fs/promises');
|
|
35
35
|
require('node:fs');
|
|
36
36
|
require('./contentLogMetadata-ZSFk_NjQ.cjs');
|
|
@@ -38,7 +38,7 @@ require('chalk');
|
|
|
38
38
|
require('node:util');
|
|
39
39
|
require('node:path');
|
|
40
40
|
require('node:os');
|
|
41
|
-
require('./package-
|
|
41
|
+
require('./package-Ch9WGDV_.cjs');
|
|
42
42
|
|
|
43
43
|
|
|
44
44
|
|
package/dist/lib.d.cts
CHANGED
|
@@ -1285,9 +1285,15 @@ declare class ApiSessionClient extends EventEmitter {
|
|
|
1285
1285
|
* unique constraint swallow every envelope after the first. */
|
|
1286
1286
|
localIdFor?: (envelopeIndex: number) => string;
|
|
1287
1287
|
}): void;
|
|
1288
|
+
/**
|
|
1289
|
+
* Returns true when a `turn-end` envelope went out, false when no turn was
|
|
1290
|
+
* open to close (B-631: the web renders a failed turn-end's `error` as its
|
|
1291
|
+
* own line, so a launcher sends the matching session event only when this
|
|
1292
|
+
* says the turn-end did not carry it).
|
|
1293
|
+
*/
|
|
1288
1294
|
closeClaudeSessionTurn(status?: SessionTurnEndStatus, meta?: {
|
|
1289
1295
|
error?: string;
|
|
1290
|
-
}):
|
|
1296
|
+
}): boolean;
|
|
1291
1297
|
sendCodexMessage(body: any): void;
|
|
1292
1298
|
private enqueueSessionProtocolEnvelope;
|
|
1293
1299
|
sendSessionProtocolMessage(envelope: SessionEnvelope, localId?: string): void;
|
package/dist/lib.d.mts
CHANGED
|
@@ -1285,9 +1285,15 @@ declare class ApiSessionClient extends EventEmitter {
|
|
|
1285
1285
|
* unique constraint swallow every envelope after the first. */
|
|
1286
1286
|
localIdFor?: (envelopeIndex: number) => string;
|
|
1287
1287
|
}): void;
|
|
1288
|
+
/**
|
|
1289
|
+
* Returns true when a `turn-end` envelope went out, false when no turn was
|
|
1290
|
+
* open to close (B-631: the web renders a failed turn-end's `error` as its
|
|
1291
|
+
* own line, so a launcher sends the matching session event only when this
|
|
1292
|
+
* says the turn-end did not carry it).
|
|
1293
|
+
*/
|
|
1288
1294
|
closeClaudeSessionTurn(status?: SessionTurnEndStatus, meta?: {
|
|
1289
1295
|
error?: string;
|
|
1290
|
-
}):
|
|
1296
|
+
}): boolean;
|
|
1291
1297
|
sendCodexMessage(body: any): void;
|
|
1292
1298
|
private enqueueSessionProtocolEnvelope;
|
|
1293
1299
|
sendSessionProtocolMessage(envelope: SessionEnvelope, localId?: string): void;
|