very-happy-cli 0.2.189 → 0.2.191
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-fj16v_cf.mjs → AcpBackend-CCy_9AfR.mjs} +3 -3
- package/dist/{AcpBackend-DRPJ2g9G.cjs → AcpBackend-DgrIc1vH.cjs} +3 -3
- package/dist/{AcpSessionManager-BZPmUDL5.mjs → AcpSessionManager-CQnxx7gD.mjs} +2 -2
- package/dist/{AcpSessionManager-DM-KKg6v.cjs → AcpSessionManager-DVOzCD3P.cjs} +2 -2
- package/dist/{BasePermissionHandler-DjM16uJz.cjs → BasePermissionHandler-C9Ag7yvs.cjs} +1 -1
- package/dist/{BasePermissionHandler-CVtH-snr.mjs → BasePermissionHandler-DYLN6Ec9.mjs} +1 -1
- package/dist/{acpSessionResume-Dxl1LRAT.mjs → acpSessionResume-Bi7pA1n_.mjs} +1 -1
- package/dist/{acpSessionResume-2BTMsB7_.cjs → acpSessionResume-TvP_4Zq2.cjs} +1 -1
- package/dist/{agentHome-CHctmMzZ.mjs → agentHome-DGv105SR.mjs} +4 -4
- package/dist/{agentHome-W17n1gnH.cjs → agentHome-DNUKJWOY.cjs} +4 -4
- package/dist/{api-BDuuyys8.cjs → api-BBxZ7y2z.cjs} +19 -10
- package/dist/{api-B0yN68XH.mjs → api-jfeMRg5R.mjs} +19 -10
- package/dist/{apiMachine-mc9CsKuS.mjs → apiMachine-DRJ7y-BB.mjs} +56 -15
- package/dist/{apiMachine-iddD-F19.cjs → apiMachine-DqyjKBZG.cjs} +56 -15
- package/dist/{attachmentContent-Cc5b7TPr.cjs → attachmentContent-BO2njyza.cjs} +2 -2
- package/dist/{attachmentContent-CcIdMfAx.mjs → attachmentContent-Dm_RIs5L.mjs} +2 -2
- package/dist/{auth-DNAgkUkB.mjs → auth-BYDtjVNb.mjs} +8 -8
- package/dist/{auth-CyrVvWHF.mjs → auth-DC6rg8lJ.mjs} +5 -5
- package/dist/{auth-B7tVmyfX.cjs → auth-DLR3ksCF.cjs} +8 -8
- package/dist/{auth-DQKSpaEf.cjs → auth-DnxoVkkf.cjs} +5 -5
- package/dist/{auto-CetlumDo.cjs → auto-CwO0u8hB.cjs} +18 -18
- package/dist/{auto-BklCipw1.mjs → auto-D5Jhukq1.mjs} +18 -18
- package/dist/{bootstrap-DfXwkUQb.mjs → bootstrap-rLaL3kTa.mjs} +2 -2
- package/dist/{bootstrap-CDY-Vz8q.cjs → bootstrap-sly4qPPY.cjs} +2 -2
- package/dist/{browser-D1yzC0Tu.cjs → browser-BTgZ9d4i.cjs} +1 -1
- package/dist/{browser-vb0k1zfI.mjs → browser-CHpVgyni.mjs} +1 -1
- package/dist/{claudeLocal-2dJIiTIq.cjs → claudeLocal-1vuTFcL8.cjs} +5 -5
- package/dist/{claudeLocal-Bid_rC_v.mjs → claudeLocal-Bgb5GGsq.mjs} +5 -5
- package/dist/{claudeLocalLauncher-Jm5oQX5Z.cjs → claudeLocalLauncher-DOsL6HFY.cjs} +10 -10
- package/dist/{claudeLocalLauncher-5pzpETxd.mjs → claudeLocalLauncher-T7EfT68h.mjs} +10 -10
- package/dist/{claudeSessionFork-DzecSBO4.mjs → claudeSessionFork-CPvi6yDX.mjs} +1 -1
- package/dist/{claudeSessionFork-DsbcuDEJ.cjs → claudeSessionFork-Cko4SaVi.cjs} +1 -1
- package/dist/{client-CvjjadIE.mjs → client-BXD66ZF5.mjs} +2 -2
- package/dist/{client-C9Ecbtko.mjs → client-Bh1aUPh-.mjs} +4 -4
- package/dist/{client-B161HwAk.mjs → client-Bi20Ka0h.mjs} +2 -2
- package/dist/{client-D0aYWt53.cjs → client-BscskEBk.cjs} +2 -2
- package/dist/{client-BNmFaRXZ.cjs → client-C-OdTbrU.cjs} +4 -4
- package/dist/{client-DIfxYk7B.cjs → client-C5-C0t2a.cjs} +2 -2
- package/dist/codex/happyMcpStdioBridge.cjs +16 -16
- package/dist/codex/happyMcpStdioBridge.mjs +16 -16
- package/dist/{codexAppServerClient-CO9f4Jr8.cjs → codexAppServerClient-DKXeikEe.cjs} +13 -6
- package/dist/{codexAppServerClient-BlVmpjR-.mjs → codexAppServerClient-DXhAf6i-.mjs} +13 -6
- package/dist/{codexCommand-CAMR4g5o.mjs → codexCommand-CIaOiiOj.mjs} +137 -55
- package/dist/{codexCommand-BfoRP6E9.cjs → codexCommand-DvbbpYBS.cjs} +141 -59
- package/dist/{codexTermination-BvGlN02_.mjs → codexTermination-BcQdEDaw.mjs} +1 -1
- package/dist/{codexTermination-IrLZQzKC.cjs → codexTermination-BszWfyk5.cjs} +1 -1
- package/dist/{codexThreadFork-DNekT4nQ.cjs → codexThreadFork-5kwoKjMu.cjs} +11 -17
- package/dist/{codexThreadFork-R76RU5H0.mjs → codexThreadFork-DobPd19R.mjs} +11 -17
- package/dist/{config-BGFqQGvh.cjs → config-Di3Cf6js.cjs} +3 -3
- package/dist/{config-CtMgGPvf.mjs → config-OCEcVVK1.mjs} +3 -3
- package/dist/{configuration-C0ctLGW2.cjs → configuration-DfPBa-9d.cjs} +1 -1
- package/dist/{configuration-1FabKklB.mjs → configuration-ECqXu34R.mjs} +1 -1
- package/dist/{connect-DSw-2f52.cjs → connect-BPQRuOw5.cjs} +13 -13
- package/dist/{connect-0lSugpjf.mjs → connect-BTfAUhk8.mjs} +13 -13
- package/dist/{context-BgxbXWKS.mjs → context-CfgTFpCB.mjs} +1 -1
- package/dist/{context-D-hEk5pC.cjs → context-Co7hUaW-.cjs} +1 -1
- package/dist/{controlClient-F7hAEEy2.cjs → controlClient-C13_pSKG.cjs} +3 -3
- package/dist/{controlClient-DwNnNAUx.mjs → controlClient-ClI7A0qE.mjs} +3 -3
- package/dist/{createSessionMetadata-CG6Klinp.mjs → createSessionMetadata-B0eT_Kfj.mjs} +2 -2
- package/dist/{createSessionMetadata-DezS33OM.cjs → createSessionMetadata-Cf78KHtt.cjs} +2 -2
- package/dist/defaultPermissionMode-m6z2QVyP.mjs +43 -0
- package/dist/defaultPermissionMode-oqTupStc.cjs +49 -0
- package/dist/{deterministicJson-BMwgK21e.mjs → deterministicJson-BtSwbsok.mjs} +13 -13
- package/dist/{deterministicJson-D0LU_XbO.cjs → deterministicJson-CpFFgUL_.cjs} +13 -13
- package/dist/{doctor-wVNvRarN.cjs → doctor-BEU0_1Xv.cjs} +7 -7
- package/dist/{doctor-D16hySse.mjs → doctor-lsxmAK4o.mjs} +7 -7
- package/dist/{downloadTarget-C6tqaXGm.mjs → downloadTarget-BXqXhNF7.mjs} +6 -6
- package/dist/{downloadTarget-aNcCxVRL.cjs → downloadTarget-CikzJv1h.cjs} +6 -6
- package/dist/{ensureDaemonRunning-CIghxgDR.cjs → ensureDaemonRunning-BUuH-pbE.cjs} +5 -5
- package/dist/{ensureDaemonRunning-DZq8bvsp.mjs → ensureDaemonRunning-B_9WAlbU.mjs} +5 -5
- package/dist/exitAfterFlush-AbKNZM0N.mjs +23 -0
- package/dist/exitAfterFlush-DIT_sIxR.cjs +25 -0
- package/dist/{handleResumeCommand-BNnD7EuD.mjs → handleResumeCommand-BK9XKH_l.mjs} +5 -5
- package/dist/{handleResumeCommand-CMUTygsm.cjs → handleResumeCommand-Dj7oi2KO.cjs} +5 -5
- package/dist/{agentAttachments-Dbw8iMCZ.cjs → heldInput-BOtqFO2r.cjs} +27 -0
- package/dist/heldInput-C69lA2dH.mjs +44 -0
- package/dist/{index-BCQr-5Ei.mjs → index-BdOJOZ6J.mjs} +4 -4
- package/dist/{index-CKd20r1W.mjs → index-BjZnpGWX.mjs} +3 -3
- package/dist/{index-WKyN-bNy.mjs → index-Bq8NKSCF.mjs} +65 -1
- package/dist/{index-BOe6dKnL.cjs → index-CLUHaPU8.cjs} +76 -0
- package/dist/{index-CnzsOD19.cjs → index-CauRYQKr.cjs} +133 -54
- package/dist/{index-4TpmBb2Q.cjs → index-CmZusg8Q.cjs} +3 -3
- package/dist/{index-BuiG8hmg.mjs → index-Cxso1rg4.mjs} +133 -54
- package/dist/{index-De02DNu5.cjs → index-D3c7CLot.cjs} +4 -4
- package/dist/{index-B81qV_F_.cjs → index-Dg2NAF_-.cjs} +4 -4
- package/dist/{index-Df0bc_et.mjs → index-DuK9XYbZ.mjs} +4 -4
- package/dist/index.cjs +2 -2
- package/dist/index.mjs +2 -2
- package/dist/{install-23ehAdTD.mjs → install-DTIveLOS.mjs} +3 -3
- package/dist/{install-DNbIEJUk.cjs → install-DXllkuy0.cjs} +3 -3
- package/dist/lib.cjs +12 -12
- package/dist/lib.d.cts +63 -1
- package/dist/lib.d.mts +63 -1
- package/dist/lib.mjs +12 -12
- package/dist/{lidState-B4dHJCeS.cjs → lidState-C9_DoF9i.cjs} +1 -1
- package/dist/{lidState-q5Its2Hm.mjs → lidState-CD81ryTy.mjs} +1 -1
- package/dist/{localHappyAgentAuth-CG2nPD_H.cjs → localHappyAgentAuth-CCjUvOfi.cjs} +1 -1
- package/dist/{localHappyAgentAuth-C_G5u5lY.mjs → localHappyAgentAuth-Cg-m1lwm.mjs} +1 -1
- package/dist/{logger-BP1SW7Cs.cjs → logger-Ct2zvaq0.cjs} +2 -2
- package/dist/{logger-DOKH3Zbh.mjs → logger-GcbI0eg2.mjs} +2 -2
- package/dist/{machineMetadata-D-5qeIqd.mjs → machineMetadata-CXRmFNOV.mjs} +3 -3
- package/dist/{machineMetadata-BKX3ov9g.cjs → machineMetadata-DDCVWb_x.cjs} +3 -3
- package/dist/{main-ndpVIaSG.cjs → main-BHC-WIcM.cjs} +49 -48
- package/dist/{main-DODz8DQE.mjs → main-omGr_ONk.mjs} +49 -48
- package/dist/{mcp-BBwbSODp.mjs → mcp-D5hxmRAq.mjs} +15 -15
- package/dist/{mcp-Bc4U4exu.cjs → mcp-xUzii0m8.cjs} +15 -15
- package/dist/{mirrorProtocol-CiA3hO2y.cjs → mirrorProtocol-Dfl8Ahyf.cjs} +3 -3
- package/dist/{mirrorProtocol-D2vTWteS.mjs → mirrorProtocol-Lcx20Oby.mjs} +3 -3
- package/dist/{package-CYDdLA6R.cjs → package-9n7wd2dT.cjs} +7 -7
- package/dist/{package-DTcaIhjW.mjs → package-BsUHyqWe.mjs} +7 -7
- package/dist/{panels-C2xZ8rqU.cjs → panels-BfknEmt7.cjs} +5 -5
- package/dist/{panels-DCaLxlSL.mjs → panels-CpEKWWbI.mjs} +5 -5
- package/dist/{peerTools-B4315xjX.cjs → peerTools-CElYh-5u.cjs} +5 -5
- package/dist/{peerTools-BtrUnSwz.mjs → peerTools-CwCe6tmJ.mjs} +5 -5
- package/dist/{persistence-CrzC7yr_.cjs → persistence-A2NeERZJ.cjs} +6 -2
- package/dist/{persistence-0INrP3aB.mjs → persistence-Cpw4yJs8.mjs} +6 -3
- package/dist/{piRunnerArgs-BtzW_kfh.cjs → piRunnerArgs-BnFU0K73.cjs} +1 -1
- package/dist/{piRunnerArgs-DRuxMlX1.mjs → piRunnerArgs-Bqmu16He.mjs} +1 -1
- package/dist/{piRuntime-BMAFpIBV.mjs → piRuntime-Cgn1b0OX.mjs} +1 -1
- package/dist/{piRuntime-DEbPE_kW.cjs → piRuntime-DpS9TAIs.cjs} +1 -1
- package/dist/{piTerminal-DQXV8_we.mjs → piTerminal-BGdps8f3.mjs} +17 -17
- package/dist/{piTerminal-MtxDtBE2.cjs → piTerminal-rmve-VlI.cjs} +17 -17
- package/dist/{pushNotifications-CalIS9sq.cjs → pushNotifications-23YSd-0l.cjs} +28 -3
- package/dist/{pushNotifications-Cq1s8YVK.mjs → pushNotifications-XAM8__Pg.mjs} +28 -3
- package/dist/{query-BYiPBHPC.mjs → query-SZcYnJoW.mjs} +1 -1
- package/dist/{query-CE2XDhhw.cjs → query-u2GX-I0C.cjs} +1 -1
- package/dist/{rateLimitReporter-DR5LXuiQ.mjs → rateLimitReporter-COUkf446.mjs} +3 -3
- package/dist/{rateLimitReporter-BKmoOZQi.cjs → rateLimitReporter-CaTzBe3x.cjs} +3 -3
- package/dist/{rateLimitWindows-Cs56YJCH.cjs → rateLimitWindows-B2Kx6L0S.cjs} +1 -1
- package/dist/{rateLimitWindows-5vIuNjko.mjs → rateLimitWindows-j_qQk0KY.mjs} +1 -1
- package/dist/{registerCommonHandlers-DZPozYxc.cjs → registerCommonHandlers-D1MiSfcB.cjs} +2 -2
- package/dist/{registerCommonHandlers-DWkTysjD.mjs → registerCommonHandlers-DRRfinzK.mjs} +2 -2
- package/dist/{registerKillSessionHandler-CSCTRIbI.mjs → registerKillSessionHandler-Cpug_r5C.mjs} +16 -6
- package/dist/{registerKillSessionHandler-DhCjrs44.cjs → registerKillSessionHandler-hvCsEn7b.cjs} +16 -6
- package/dist/{remoteSessionClient-Dq8XTLQP.cjs → remoteSessionClient-6ymeMVa4.cjs} +5 -5
- package/dist/{remoteSessionClient-Vfj_5g2-.mjs → remoteSessionClient-BdnJ_n8C.mjs} +5 -5
- package/dist/{reportProgressTool-B7zmX7NJ.mjs → reportProgressTool-XgQBzxoD.mjs} +3 -3
- package/dist/{reportProgressTool-DznxPKES.cjs → reportProgressTool-tzQLCLIw.cjs} +3 -3
- package/dist/{run-DSfNcR62.mjs → run-Bt0AklUU.mjs} +396 -43
- package/dist/{run-Ca8BiNCp.cjs → run-DYL_wuj7.cjs} +396 -43
- package/dist/{runClaude-hoepv-0X.mjs → runClaude-C3rii_S6.mjs} +47 -27
- package/dist/{runClaude-ClQQcgoO.cjs → runClaude-CBEpYO4S.cjs} +49 -29
- package/dist/{runClaudeDeps-ck5_GYlP.cjs → runClaudeDeps-CYuozSC6.cjs} +187 -61
- package/dist/{runClaudeDeps-D_v8t2SK.mjs → runClaudeDeps-DlVfMG4F.mjs} +192 -66
- package/dist/{runGemini-Cj0XsMiM.cjs → runGemini-CEI3b90u.cjs} +33 -33
- package/dist/{runGemini-CTr2-cYG.mjs → runGemini-DkYhRk9S.mjs} +33 -33
- package/dist/{runOpenClaw-BoN1e3lP.cjs → runOpenClaw-BgjD6E4d.cjs} +18 -18
- package/dist/{runOpenClaw-CdDMntiV.mjs → runOpenClaw-DpprWCoz.mjs} +18 -18
- package/dist/{sandbox-DcaWB-Ou.mjs → sandbox-DJ7A7lsy.mjs} +4 -4
- package/dist/{sandbox-BY2h19gc.cjs → sandbox-XCDUbH72.cjs} +4 -4
- package/dist/{selfCheck-DFS_GUaQ.cjs → selfCheck-BYUDB1Uq.cjs} +37 -37
- package/dist/selfCheck-C-rNljKV.mjs +86 -0
- package/dist/{send-UBTHHNvZ.mjs → send-Ba63huxv.mjs} +8 -8
- package/dist/{send-BMsUYU6g.cjs → send-CASDBCyJ.cjs} +8 -8
- package/dist/{server-YrHMHNz1.cjs → server-cZoV9XRt.cjs} +6 -6
- package/dist/{server-Dt3mCtfQ.mjs → server-w3W0toNd.mjs} +4 -4
- package/dist/{sessionLock-DSqiP2lH.cjs → sessionLock-BmLA2S8K.cjs} +134 -3
- package/dist/{sessionLock-tEFvFXLD.mjs → sessionLock-G2PMqvsh.mjs} +121 -4
- package/dist/{sessionOps-CljctDs5.mjs → sessionOps-DPw5k8vV.mjs} +15 -5
- package/dist/{sessionOps-BzeOKIEF.cjs → sessionOps-DXlTmS7J.cjs} +15 -4
- package/dist/{sessionProvider-BnUFSJXM.mjs → sessionProvider-DUn91LhJ.mjs} +5 -5
- package/dist/{sessionProvider-ORgzmkXy.cjs → sessionProvider-Dg691XQ4.cjs} +5 -5
- package/dist/{sessionScanner-Cr6PJ3PT.cjs → sessionScanner-AHjnicxi.cjs} +3 -3
- package/dist/{sessionScanner-DZUlkdF6.mjs → sessionScanner-BCXpdZJN.mjs} +3 -3
- package/dist/{sessions-aIo_HjmY.cjs → sessions-BiBXOBx0.cjs} +36 -25
- package/dist/{sessions-15cag-su.mjs → sessions-Clk8MR5Y.mjs} +35 -26
- package/dist/{setupOfflineReconnection-tV0Q1dgR.cjs → setupOfflineReconnection-BKLfOd-i.cjs} +2 -2
- package/dist/{setupOfflineReconnection-B7I8R2Ex.mjs → setupOfflineReconnection-DI-QZGYz.mjs} +2 -2
- package/dist/{spawn-ByrQgruJ.mjs → spawn-4tsp1uhh.mjs} +15 -15
- package/dist/{spawn-VG-HjJiR.cjs → spawn-D5omsx1Q.cjs} +15 -15
- package/dist/{spawnAgents-Bh1RPShN.mjs → spawnAgents-CjoU6ZOS.mjs} +8 -2
- package/dist/{spawnAgents-C1-4m7aN.cjs → spawnAgents-CtkkIFHd.cjs} +8 -2
- package/dist/{spawnHappyCLI-CxiR2Qoy.cjs → spawnHappyCLI-CF_gLi92.cjs} +1 -1
- package/dist/{spawnHappyCLI-CEsXwz5V.mjs → spawnHappyCLI-CIA9Sc_5.mjs} +1 -1
- package/dist/{startFileWatcher-C-XCZ5t2.cjs → startFileWatcher-9Stpxe7p.cjs} +1 -1
- package/dist/{startFileWatcher-DkEeeAtL.mjs → startFileWatcher-CDO6fb2m.mjs} +1 -1
- package/dist/{defaultPermissionMode-e2bIIJG4.mjs → startupSessionCreate-BtR4iYEC.mjs} +25 -6
- package/dist/{defaultPermissionMode-5EvgRq38.cjs → startupSessionCreate-CcF7rGGB.cjs} +25 -7
- package/dist/{streamRelay-D9a4cBEa.cjs → streamRelay-BhI6jqF-.cjs} +1 -1
- package/dist/{streamRelay-CqBynIon.mjs → streamRelay-DMwOMTKf.mjs} +1 -1
- package/dist/{sync-CoChLEIg.cjs → sync-Ba8N6xba.cjs} +1 -1
- package/dist/{sync-BvDMkKAN.mjs → sync-C0PRuTMj.mjs} +1 -1
- package/dist/{systemPrompt-CgDaPigN.mjs → systemPrompt-D0q8eyjy.mjs} +2 -2
- package/dist/{systemPrompt-Dy_Rf-0Z.cjs → systemPrompt-DV5IReD4.cjs} +2 -2
- package/dist/{teams-BC4_e5hR.mjs → teams-BO3_arwM.mjs} +7 -7
- package/dist/{teams-DPvfLAk8.cjs → teams-z3Gp-KlV.cjs} +7 -7
- package/dist/{template-17HATY_Y.cjs → template-B_5l6pkc.cjs} +1 -1
- package/dist/{template-CEK8MEjo.mjs → template-DLR_0hfj.mjs} +1 -1
- package/dist/{time-XwEZxKGc.cjs → time-Cy0a-7YX.cjs} +1 -1
- package/dist/{time-CUK37wiV.mjs → time-D0jvDRhn.mjs} +1 -1
- package/dist/{titleGenerator-DWRVdqMU.mjs → titleGenerator-AGQsXskb.mjs} +1 -1
- package/dist/{titleGenerator-DVX0NZUn.cjs → titleGenerator-RGHWP2YL.cjs} +2 -2
- package/dist/{todo-BNMGXneA.mjs → todo-BZ954vsz.mjs} +6 -6
- package/dist/{todo-CKGrSrRE.cjs → todo-CzIDPLFy.cjs} +6 -6
- package/dist/{tools-CjMafO_D.cjs → tools-B1x1j6tz.cjs} +1 -1
- package/dist/{tools-CCIEAVbB.mjs → tools-Bei5i03L.mjs} +1 -1
- package/dist/{uninstall-CJvJ7gjr.mjs → uninstall-B4T_e3Mr.mjs} +3 -3
- package/dist/{uninstall-BdFbTXnL.cjs → uninstall-C3cnIvz1.cjs} +3 -3
- package/package.json +7 -7
- package/dist/agentAttachments-M_B5qEF2.mjs +0 -18
- package/dist/selfCheck-BQ_H2Sns.mjs +0 -86
- package/dist/startupSessionCreate-CYc8mra-.cjs +0 -26
- package/dist/startupSessionCreate-npXe2TdN.mjs +0 -24
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { spawn } from 'node:child_process';
|
|
2
2
|
import { ndJsonStream, ClientSideConnection } from '@agentclientprotocol/sdk';
|
|
3
3
|
import { randomUUID } from 'node:crypto';
|
|
4
|
-
import { l as logger } from './logger-
|
|
5
|
-
import { d as delay } from './time-
|
|
4
|
+
import { l as logger } from './logger-GcbI0eg2.mjs';
|
|
5
|
+
import { d as delay } from './time-D0jvDRhn.mjs';
|
|
6
6
|
import { c as contentLogMetadata, e as errorLogMetadata } from './contentLogMetadata-BlWI0egu.mjs';
|
|
7
7
|
import { r as readableStderrTail, a as appendStderrRing, s as stopProcessGracefully, k as killProcessTree } from './processTree-CP5IvQ2Z.mjs';
|
|
8
|
-
import { p as packageJson } from './package-
|
|
8
|
+
import { p as packageJson } from './package-BsUHyqWe.mjs';
|
|
9
9
|
|
|
10
10
|
function acpImageBlocks(attachments, supportsImages) {
|
|
11
11
|
return attachments.filter((file) => ["image/jpeg", "image/png", "image/gif", "image/webp"].includes(file.mimeType)).map((file) => {
|
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
var node_child_process = require('node:child_process');
|
|
4
4
|
var sdk = require('@agentclientprotocol/sdk');
|
|
5
5
|
var node_crypto = require('node:crypto');
|
|
6
|
-
var logger = require('./logger-
|
|
7
|
-
var time = require('./time-
|
|
6
|
+
var logger = require('./logger-Ct2zvaq0.cjs');
|
|
7
|
+
var time = require('./time-Cy0a-7YX.cjs');
|
|
8
8
|
var contentLogMetadata = require('./contentLogMetadata-ZSFk_NjQ.cjs');
|
|
9
9
|
var processTree = require('./processTree-CMHWlVse.cjs');
|
|
10
|
-
var _package = require('./package-
|
|
10
|
+
var _package = require('./package-9n7wd2dT.cjs');
|
|
11
11
|
|
|
12
12
|
function acpImageBlocks(attachments, supportsImages) {
|
|
13
13
|
return attachments.filter((file) => ["image/jpeg", "image/png", "image/gif", "image/webp"].includes(file.mimeType)).map((file) => {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createId } from '@paralleldrive/cuid2';
|
|
2
|
-
import { s as streamKeyOf,
|
|
3
|
-
import { t as textResultPayload, b as toolResultPayload } from './api-
|
|
2
|
+
import { s as streamKeyOf, j as createEnvelope } from './index-Bq8NKSCF.mjs';
|
|
3
|
+
import { t as textResultPayload, b as toolResultPayload } from './api-jfeMRg5R.mjs';
|
|
4
4
|
|
|
5
5
|
function turnOptions(turnId, time) {
|
|
6
6
|
return turnId ? { turn: turnId, time } : { time };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var cuid2 = require('@paralleldrive/cuid2');
|
|
4
|
-
var index = require('./index-
|
|
5
|
-
var api = require('./api-
|
|
4
|
+
var index = require('./index-CLUHaPU8.cjs');
|
|
5
|
+
var api = require('./api-BBxZ7y2z.cjs');
|
|
6
6
|
|
|
7
7
|
function turnOptions(turnId, time) {
|
|
8
8
|
return turnId ? { turn: turnId, time } : { time };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { mkdirSync, renameSync, existsSync, unlinkSync } from 'node:fs';
|
|
2
2
|
import { join } from 'node:path';
|
|
3
|
-
import { w as writePrivateFileSync, c as configuration } from './configuration-
|
|
3
|
+
import { w as writePrivateFileSync, c as configuration } from './configuration-ECqXu34R.mjs';
|
|
4
4
|
|
|
5
5
|
const SESSION_MODE_DIR = "session-modes";
|
|
6
6
|
const ACP_PERMISSION_MODES = ["default", "acceptEdits", "plan", "bypassPermissions"];
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var node_fs = require('node:fs');
|
|
4
4
|
var path = require('node:path');
|
|
5
|
-
var configuration = require('./configuration-
|
|
5
|
+
var configuration = require('./configuration-DfPBa-9d.cjs');
|
|
6
6
|
|
|
7
7
|
const SESSION_MODE_DIR = "session-modes";
|
|
8
8
|
const ACP_PERMISSION_MODES = ["default", "acceptEdits", "plan", "bypassPermissions"];
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
2
|
import { homedir } from 'node:os';
|
|
3
|
-
import { r as readSettings, u as updateSettings } from './persistence-
|
|
3
|
+
import { r as readSettings, u as updateSettings } from './persistence-Cpw4yJs8.mjs';
|
|
4
4
|
import 'node:fs';
|
|
5
|
-
import './logger-
|
|
5
|
+
import './logger-GcbI0eg2.mjs';
|
|
6
6
|
import { d as describeAgentHome, p as probeLoginShellEnv, r as resolveAgentHomes, e as expandHomePath, A as AGENT_HOME_ENV_NAMES } from './loginShellEnv-Dw8M7tkI.mjs';
|
|
7
7
|
import 'node:fs/promises';
|
|
8
|
-
import './configuration-
|
|
8
|
+
import './configuration-ECqXu34R.mjs';
|
|
9
9
|
import 'node:path';
|
|
10
|
-
import './package-
|
|
10
|
+
import './package-BsUHyqWe.mjs';
|
|
11
11
|
import 'zod';
|
|
12
12
|
import './authRelay-DhQhkBvX.mjs';
|
|
13
13
|
import 'node:crypto';
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
var chalk = require('chalk');
|
|
4
4
|
var os = require('node:os');
|
|
5
|
-
var persistence = require('./persistence-
|
|
5
|
+
var persistence = require('./persistence-A2NeERZJ.cjs');
|
|
6
6
|
require('node:fs');
|
|
7
|
-
require('./logger-
|
|
7
|
+
require('./logger-Ct2zvaq0.cjs');
|
|
8
8
|
var loginShellEnv = require('./loginShellEnv-BkuYtExZ.cjs');
|
|
9
9
|
require('node:fs/promises');
|
|
10
|
-
require('./configuration-
|
|
10
|
+
require('./configuration-DfPBa-9d.cjs');
|
|
11
11
|
require('node:path');
|
|
12
|
-
require('./package-
|
|
12
|
+
require('./package-9n7wd2dT.cjs');
|
|
13
13
|
require('zod');
|
|
14
14
|
require('./authRelay-Dy1qU9td.cjs');
|
|
15
15
|
require('node:crypto');
|
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var axios = require('axios');
|
|
4
|
-
var logger = require('./logger-
|
|
5
|
-
var lidState = require('./lidState-
|
|
4
|
+
var logger = require('./logger-Ct2zvaq0.cjs');
|
|
5
|
+
var lidState = require('./lidState-C9_DoF9i.cjs');
|
|
6
6
|
var node_events = require('node:events');
|
|
7
7
|
var socket_ioClient = require('socket.io-client');
|
|
8
|
-
var pushNotifications = require('./pushNotifications-
|
|
8
|
+
var pushNotifications = require('./pushNotifications-23YSd-0l.cjs');
|
|
9
9
|
var authRelay = require('./authRelay-Dy1qU9td.cjs');
|
|
10
10
|
var limits = require('./limits-C-a7gr04.cjs');
|
|
11
|
-
var time = require('./time-
|
|
12
|
-
var configuration = require('./configuration-
|
|
11
|
+
var time = require('./time-Cy0a-7YX.cjs');
|
|
12
|
+
var configuration = require('./configuration-DfPBa-9d.cjs');
|
|
13
13
|
var node_crypto = require('node:crypto');
|
|
14
|
-
var index = require('./index-
|
|
15
|
-
var registerCommonHandlers = require('./registerCommonHandlers-
|
|
14
|
+
var index = require('./index-CLUHaPU8.cjs');
|
|
15
|
+
var registerCommonHandlers = require('./registerCommonHandlers-D1MiSfcB.cjs');
|
|
16
16
|
var cuid2 = require('@paralleldrive/cuid2');
|
|
17
|
-
var sync = require('./sync-
|
|
17
|
+
var sync = require('./sync-Ba8N6xba.cjs');
|
|
18
18
|
var backgroundTaskActivity = require('./backgroundTaskActivity-CBvUdj39.cjs');
|
|
19
|
-
var controlClient = require('./controlClient-
|
|
19
|
+
var controlClient = require('./controlClient-C13_pSKG.cjs');
|
|
20
20
|
var chalk = require('chalk');
|
|
21
21
|
|
|
22
22
|
async function hmac_sha512(key, data) {
|
|
@@ -2531,6 +2531,7 @@ class ApiSessionClient extends node_events.EventEmitter {
|
|
|
2531
2531
|
}
|
|
2532
2532
|
async close() {
|
|
2533
2533
|
logger.logger.debug("[API] socket.close() called");
|
|
2534
|
+
this.closedByClient = true;
|
|
2534
2535
|
this.promptQueueDrain?.close();
|
|
2535
2536
|
this.sendSync.stop();
|
|
2536
2537
|
this.receiveSync.stop();
|
|
@@ -2542,7 +2543,15 @@ class ApiSessionClient extends node_events.EventEmitter {
|
|
|
2542
2543
|
this.relaySocket?.close();
|
|
2543
2544
|
this.relaySocket = null;
|
|
2544
2545
|
}
|
|
2546
|
+
/**
|
|
2547
|
+
* B-854: set by close(). The socket's own `disconnect` ("io client
|
|
2548
|
+
* disconnect") must not reconnect a client its owner closed: a runner that
|
|
2549
|
+
* ends without `process.exit` (ACP) stayed alive on that socket — still
|
|
2550
|
+
* "active" for the daemon and the web, with no loop to run anything.
|
|
2551
|
+
*/
|
|
2552
|
+
closedByClient = false;
|
|
2545
2553
|
startSmartReconnect() {
|
|
2554
|
+
if (this.closedByClient) return;
|
|
2546
2555
|
if (this.reconnectInterval) return;
|
|
2547
2556
|
this.reconnectInterval = setInterval(() => {
|
|
2548
2557
|
if (this.socket.connected) {
|
|
@@ -3066,7 +3075,7 @@ class ApiClient {
|
|
|
3066
3075
|
return new ApiSessionClient(this.credential.token, session, opts);
|
|
3067
3076
|
}
|
|
3068
3077
|
async machineSyncClient(machine) {
|
|
3069
|
-
const { ApiMachineClient } = await Promise.resolve().then(function () { return require('./apiMachine-
|
|
3078
|
+
const { ApiMachineClient } = await Promise.resolve().then(function () { return require('./apiMachine-DqyjKBZG.cjs'); });
|
|
3070
3079
|
return new ApiMachineClient(this.credential.token, machine);
|
|
3071
3080
|
}
|
|
3072
3081
|
push() {
|
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
import axios from 'axios';
|
|
2
|
-
import { l as logger, r as redactLogValue } from './logger-
|
|
3
|
-
import { R as RpcHandlerManager, a as answerSocketRequest, c as connectGuarded, s as socketConnectGuard, d as describeSocketAckDrop, b as safeAck, i as isRateQuotaCode, p as pauseForRateQuota, e as shouldReconnect } from './lidState-
|
|
2
|
+
import { l as logger, r as redactLogValue } from './logger-GcbI0eg2.mjs';
|
|
3
|
+
import { R as RpcHandlerManager, a as answerSocketRequest, c as connectGuarded, s as socketConnectGuard, d as describeSocketAckDrop, b as safeAck, i as isRateQuotaCode, p as pauseForRateQuota, e as shouldReconnect } from './lidState-CD81ryTy.mjs';
|
|
4
4
|
import { EventEmitter } from 'node:events';
|
|
5
5
|
import { io } from 'socket.io-client';
|
|
6
|
-
import { A as AsyncLock, a as MAX_CHAT_ATTACHMENT_ENCRYPTED_BYTES, U as UserMessageSchema, F as FileEventMessageSchema, P as PushNotificationClient } from './pushNotifications-
|
|
6
|
+
import { A as AsyncLock, a as MAX_CHAT_ATTACHMENT_ENCRYPTED_BYTES, U as UserMessageSchema, F as FileEventMessageSchema, P as PushNotificationClient } from './pushNotifications-XAM8__Pg.mjs';
|
|
7
7
|
import { h as decrypt, d as decodeBase64, i as decryptBlob, e as encodeBase64, g as encrypt, l as libsodiumEncryptForPublicKey, j as libsodiumPublicKeyFromSecretKey, k as getRandomBytes } from './authRelay-DhQhkBvX.mjs';
|
|
8
8
|
import { p as prepareClipboardText, d as prepareClipboardHistoryText } from './limits-DIo7rEBR.mjs';
|
|
9
|
-
import { b as backoff, d as delay, e as exponentialBackoffDelay } from './time-
|
|
10
|
-
import { c as configuration } from './configuration-
|
|
9
|
+
import { b as backoff, d as delay, e as exponentialBackoffDelay } from './time-D0jvDRhn.mjs';
|
|
10
|
+
import { c as configuration } from './configuration-ECqXu34R.mjs';
|
|
11
11
|
import { createHmac, randomUUID } from 'node:crypto';
|
|
12
|
-
import {
|
|
13
|
-
import { r as registerCommonHandlers } from './registerCommonHandlers-
|
|
12
|
+
import { j as createEnvelope, s as streamKeyOf, W as ReleaseDrainNoticeSchema, X as RelayAssignmentResponseSchema } from './index-Bq8NKSCF.mjs';
|
|
13
|
+
import { r as registerCommonHandlers } from './registerCommonHandlers-DRRfinzK.mjs';
|
|
14
14
|
import { createId } from '@paralleldrive/cuid2';
|
|
15
|
-
import { I as InvalidateSync } from './sync-
|
|
15
|
+
import { I as InvalidateSync } from './sync-C0PRuTMj.mjs';
|
|
16
16
|
import { B as BackgroundTaskReporter } from './backgroundTaskActivity-8PdPxrvy.mjs';
|
|
17
|
-
import { m as notifyDaemonTurnEvent, o as notifyDaemonBackgroundTasks } from './controlClient-
|
|
17
|
+
import { m as notifyDaemonTurnEvent, o as notifyDaemonBackgroundTasks } from './controlClient-ClI7A0qE.mjs';
|
|
18
18
|
import chalk from 'chalk';
|
|
19
19
|
|
|
20
20
|
async function hmac_sha512(key, data) {
|
|
@@ -2529,6 +2529,7 @@ class ApiSessionClient extends EventEmitter {
|
|
|
2529
2529
|
}
|
|
2530
2530
|
async close() {
|
|
2531
2531
|
logger.debug("[API] socket.close() called");
|
|
2532
|
+
this.closedByClient = true;
|
|
2532
2533
|
this.promptQueueDrain?.close();
|
|
2533
2534
|
this.sendSync.stop();
|
|
2534
2535
|
this.receiveSync.stop();
|
|
@@ -2540,7 +2541,15 @@ class ApiSessionClient extends EventEmitter {
|
|
|
2540
2541
|
this.relaySocket?.close();
|
|
2541
2542
|
this.relaySocket = null;
|
|
2542
2543
|
}
|
|
2544
|
+
/**
|
|
2545
|
+
* B-854: set by close(). The socket's own `disconnect` ("io client
|
|
2546
|
+
* disconnect") must not reconnect a client its owner closed: a runner that
|
|
2547
|
+
* ends without `process.exit` (ACP) stayed alive on that socket — still
|
|
2548
|
+
* "active" for the daemon and the web, with no loop to run anything.
|
|
2549
|
+
*/
|
|
2550
|
+
closedByClient = false;
|
|
2543
2551
|
startSmartReconnect() {
|
|
2552
|
+
if (this.closedByClient) return;
|
|
2544
2553
|
if (this.reconnectInterval) return;
|
|
2545
2554
|
this.reconnectInterval = setInterval(() => {
|
|
2546
2555
|
if (this.socket.connected) {
|
|
@@ -3064,7 +3073,7 @@ class ApiClient {
|
|
|
3064
3073
|
return new ApiSessionClient(this.credential.token, session, opts);
|
|
3065
3074
|
}
|
|
3066
3075
|
async machineSyncClient(machine) {
|
|
3067
|
-
const { ApiMachineClient } = await import('./apiMachine-
|
|
3076
|
+
const { ApiMachineClient } = await import('./apiMachine-DRJ7y-BB.mjs');
|
|
3068
3077
|
return new ApiMachineClient(this.credential.token, machine);
|
|
3069
3078
|
}
|
|
3070
3079
|
push() {
|
|
@@ -1,44 +1,44 @@
|
|
|
1
1
|
import { io } from 'socket.io-client';
|
|
2
2
|
import { a as webPanelsSignature } from './webPanels-B2_C2-3g.mjs';
|
|
3
|
-
import { l as logger } from './logger-
|
|
4
|
-
import { R as RpcHandlerManager, i as isRateQuotaCode, p as pauseForRateQuota, s as socketConnectGuard, c as connectGuarded, a as answerSocketRequest, e as shouldReconnect, d as describeSocketAckDrop } from './lidState-
|
|
5
|
-
import { i as isClaudeSessionId, s as stableVersion, a as sanitizeTagList, p as pickMirrorForTerminal, l as liveSnapshotChanged, b as sanitizeLiveSnapshot, c as serializeLiveSnapshot, r as registerWorktreeHandlers, d as configureWorktreeService, e as summarizeSpawnSessionForLog, f as parseMirrorSendParams } from './mirrorProtocol-
|
|
6
|
-
import { c as configuration } from './configuration-
|
|
3
|
+
import { l as logger } from './logger-GcbI0eg2.mjs';
|
|
4
|
+
import { R as RpcHandlerManager, i as isRateQuotaCode, p as pauseForRateQuota, s as socketConnectGuard, c as connectGuarded, a as answerSocketRequest, e as shouldReconnect, d as describeSocketAckDrop } from './lidState-CD81ryTy.mjs';
|
|
5
|
+
import { i as isClaudeSessionId, s as stableVersion, a as sanitizeTagList, p as pickMirrorForTerminal, l as liveSnapshotChanged, b as sanitizeLiveSnapshot, c as serializeLiveSnapshot, r as registerWorktreeHandlers, d as configureWorktreeService, e as summarizeSpawnSessionForLog, f as parseMirrorSendParams } from './mirrorProtocol-Lcx20Oby.mjs';
|
|
6
|
+
import { c as configuration } from './configuration-ECqXu34R.mjs';
|
|
7
7
|
import { w as withCurrentCliUpdateState } from './cliUpdate-Y34VGe9Y.mjs';
|
|
8
|
-
import { r as registerCommonHandlers } from './registerCommonHandlers-
|
|
8
|
+
import { r as registerCommonHandlers } from './registerCommonHandlers-DRRfinzK.mjs';
|
|
9
9
|
import { stat, readdir, lstat, open, readFile, rm, mkdir, chmod, writeFile, rename } from 'node:fs/promises';
|
|
10
10
|
import { join, isAbsolute, resolve } from 'node:path';
|
|
11
11
|
import os, { homedir } from 'node:os';
|
|
12
12
|
import { f as fsMkdir } from './fsMkdir-DumgLTzR.mjs';
|
|
13
13
|
import { spawn, execFile, spawnSync } from 'node:child_process';
|
|
14
|
-
import { r as readSettings, c as readPersistedSessions,
|
|
14
|
+
import { r as readSettings, c as readPersistedSessions, p as readTrackedClaudeSessionIds, q as readTrackedCodexThreadIds } from './persistence-Cpw4yJs8.mjs';
|
|
15
15
|
import { M as ModelConfigError } from './fileStore-5qpetZS0.mjs';
|
|
16
16
|
import { e as encodeBase64, g as encrypt, h as decrypt, d as decodeBase64 } from './authRelay-DhQhkBvX.mjs';
|
|
17
17
|
import { p as prepareClipboardText, d as prepareClipboardHistoryText } from './limits-DIo7rEBR.mjs';
|
|
18
|
-
import { b as backoff, d as delay } from './time-
|
|
18
|
+
import { b as backoff, d as delay } from './time-D0jvDRhn.mjs';
|
|
19
19
|
import * as pty from 'node-pty';
|
|
20
20
|
import { a as attachStartupCommand, v as validateTerminalTags, d as deriveAutoTitle, T as TMUX_SESSION_ID_RE, i as isSafeTmuxSessionName, b as isVhSessionName, U as USER_SESSIONS_FORMAT, p as parseUserSessions, L as LIST_SESSIONS_FORMAT, c as parseSessionListLine, e as LIST_FIELD_SEP, s as sendToVhTerminal } from './terminals-Dlg0x3nY.mjs';
|
|
21
21
|
import { t as tmuxArgs, V as VH_TMUX_SOCKET_ENV, a as scrubTmuxClientEnv } from './tmuxSocket-B8Yx20sT.mjs';
|
|
22
|
-
import { locateClaudeConversation, refreshAgentHomes } from './index-
|
|
22
|
+
import { locateClaudeConversation, refreshAgentHomes } from './index-DuK9XYbZ.mjs';
|
|
23
23
|
import { randomBytes } from 'node:crypto';
|
|
24
24
|
import { readdirSync, unlinkSync, existsSync, mkdirSync, writeFileSync, readFileSync, statSync, chmodSync, renameSync, rmSync, accessSync, constants } from 'node:fs';
|
|
25
25
|
import axios from 'axios';
|
|
26
26
|
import { p as projectPath } from './projectPath-BTBIMB57.mjs';
|
|
27
27
|
import { a as isValidTerminalId } from './ids-DU6sLx4C.mjs';
|
|
28
28
|
import { d as detectCLIAvailability } from './detectCLI-CSGMlV51.mjs';
|
|
29
|
-
import { d as detectResumeSupport } from './localHappyAgentAuth-
|
|
29
|
+
import { d as detectResumeSupport } from './localHappyAgentAuth-Cg-m1lwm.mjs';
|
|
30
30
|
import { g as getProjectPath, a as getClaudeProjectsRoot } from './path-D2wdaNSk.mjs';
|
|
31
31
|
import { i as isVeryHappyOneShotPrompt } from './oneShotPrompts-DT4p6RNd.mjs';
|
|
32
|
-
import { f as forkSession, F as ForkSourceMissingError, d as discardForkedSession, l as listClaudeRewindPoints, a as forkAndTruncateSession, b as ForkTruncateUuidNotFoundError, c as forkBeforeUserMessage } from './claudeSessionFork-
|
|
33
|
-
import { C as CodexAppServerClient } from './codexAppServerClient-
|
|
34
|
-
import {
|
|
35
|
-
import { f as forkCodexThread, C as CodexForkRewindPointNotFoundError, l as listCodexRewindPoints, a as forkCodexBeforeUserMessage } from './codexThreadFork-
|
|
36
|
-
import { p as planRateLimitWrite, m as mergeRateLimitReports } from './rateLimitWindows-
|
|
32
|
+
import { f as forkSession, F as ForkSourceMissingError, d as discardForkedSession, l as listClaudeRewindPoints, a as forkAndTruncateSession, b as ForkTruncateUuidNotFoundError, c as forkBeforeUserMessage } from './claudeSessionFork-CPvi6yDX.mjs';
|
|
33
|
+
import { C as CodexAppServerClient } from './codexAppServerClient-DXhAf6i-.mjs';
|
|
34
|
+
import { _ as RelayCandidatesResponseSchema, X as RelayAssignmentResponseSchema, W as ReleaseDrainNoticeSchema } from './index-Bq8NKSCF.mjs';
|
|
35
|
+
import { f as forkCodexThread, C as CodexForkRewindPointNotFoundError, l as listCodexRewindPoints, a as forkCodexBeforeUserMessage } from './codexThreadFork-DobPd19R.mjs';
|
|
36
|
+
import { p as planRateLimitWrite, m as mergeRateLimitReports } from './rateLimitWindows-j_qQk0KY.mjs';
|
|
37
37
|
import 'chalk';
|
|
38
38
|
import 'node:util';
|
|
39
39
|
import 'os';
|
|
40
40
|
import 'child_process';
|
|
41
|
-
import './package-
|
|
41
|
+
import './package-BsUHyqWe.mjs';
|
|
42
42
|
import 'util';
|
|
43
43
|
import 'fs/promises';
|
|
44
44
|
import 'crypto';
|
|
@@ -10490,6 +10490,8 @@ class ApiMachineClient {
|
|
|
10490
10490
|
claudeAuthState = null;
|
|
10491
10491
|
/** B-587: the machine's hibernation threshold, published as a capability. */
|
|
10492
10492
|
agentHibernationIdleMs = null;
|
|
10493
|
+
/** B-852: auto-restart setting + per-session status (null until the daemon installs it). */
|
|
10494
|
+
autoRestart = null;
|
|
10493
10495
|
/** B-510: last normalized `webPanels` (null = never set → field not written). */
|
|
10494
10496
|
webPanels = null;
|
|
10495
10497
|
webPanelsSignatureSent = null;
|
|
@@ -10710,6 +10712,43 @@ class ApiMachineClient {
|
|
|
10710
10712
|
this.cliUpdatePushChain = attempt.then(() => void 0);
|
|
10711
10713
|
return attempt;
|
|
10712
10714
|
}
|
|
10715
|
+
/**
|
|
10716
|
+
* B-852: the machine page's「会话自动更新」switch (`auto-restart-set`) and
|
|
10717
|
+
* the `daemonState.autoRestart` capability + per-session status. Call
|
|
10718
|
+
* before connect().
|
|
10719
|
+
*/
|
|
10720
|
+
setAutoRestartHandlers(initialEnabled, set) {
|
|
10721
|
+
this.autoRestart = { enabled: initialEnabled, sessions: this.autoRestart?.sessions ?? {} };
|
|
10722
|
+
this.rpcHandlerManager.registerHandler("auto-restart-set", async (params) => {
|
|
10723
|
+
if (typeof params?.enabled !== "boolean") return { error: "invalid-enabled" };
|
|
10724
|
+
const enabled = await set(params.enabled);
|
|
10725
|
+
this.autoRestart = { enabled, sessions: enabled ? this.autoRestart?.sessions ?? {} : {} };
|
|
10726
|
+
await this.publishAutoRestart();
|
|
10727
|
+
return { autoRestart: { enabled } };
|
|
10728
|
+
});
|
|
10729
|
+
}
|
|
10730
|
+
/** B-852: the scheduler's per-session status changed (already signature-deduped). */
|
|
10731
|
+
setAutoRestartSessions(sessions) {
|
|
10732
|
+
if (!this.autoRestart) return Promise.resolve();
|
|
10733
|
+
this.autoRestart = { ...this.autoRestart, sessions };
|
|
10734
|
+
return this.publishAutoRestart();
|
|
10735
|
+
}
|
|
10736
|
+
autoRestartState(now) {
|
|
10737
|
+
const state = this.autoRestart;
|
|
10738
|
+
return { enabled: state.enabled, rpcAvailable: true, detectedAt: now, sessions: state.sessions };
|
|
10739
|
+
}
|
|
10740
|
+
publishAutoRestart() {
|
|
10741
|
+
if (!this.autoRestart || !this.socket?.connected) return Promise.resolve();
|
|
10742
|
+
const attempt = this.cliUpdatePushChain.then(() => this.updateDaemonState((current) => ({
|
|
10743
|
+
...current ?? {},
|
|
10744
|
+
status: current?.status ?? "running",
|
|
10745
|
+
autoRestart: this.autoRestartState(Date.now())
|
|
10746
|
+
}))).catch((error) => {
|
|
10747
|
+
logger.debug("[API MACHINE] Failed to publish auto-restart:", error);
|
|
10748
|
+
});
|
|
10749
|
+
this.cliUpdatePushChain = attempt.then(() => void 0);
|
|
10750
|
+
return attempt;
|
|
10751
|
+
}
|
|
10713
10752
|
/** B-276 machine RPCs. Responses always carry `claudeAuth` so the web can refresh in place. */
|
|
10714
10753
|
setClaudeAuthHandlers(handlers) {
|
|
10715
10754
|
this.rpcHandlerManager.registerHandler("claude-auth-probe", async () => {
|
|
@@ -11436,6 +11475,8 @@ class ApiMachineClient {
|
|
|
11436
11475
|
...this.claudeAuthState ? { claudeAuth: this.claudeAuthState } : {},
|
|
11437
11476
|
// B-587 capability + setting (same restamp discipline).
|
|
11438
11477
|
...this.agentHibernationIdleMs !== null ? { agentHibernation: { idleMs: this.agentHibernationIdleMs, rpcAvailable: true, detectedAt: now } } : {},
|
|
11478
|
+
// B-852 capability + setting + status (same restamp discipline).
|
|
11479
|
+
...this.autoRestart ? { autoRestart: this.autoRestartState(now) } : {},
|
|
11439
11480
|
// B-510: re-ship the declared panels (also clears a stale list).
|
|
11440
11481
|
...Array.isArray(this.webPanels) ? { webPanels: { panels: this.webPanels, updatedAt: now } } : {}
|
|
11441
11482
|
};
|
|
@@ -2,45 +2,45 @@
|
|
|
2
2
|
|
|
3
3
|
var socket_ioClient = require('socket.io-client');
|
|
4
4
|
var webPanels = require('./webPanels-FCgFKvVe.cjs');
|
|
5
|
-
var logger = require('./logger-
|
|
6
|
-
var lidState = require('./lidState-
|
|
7
|
-
var mirrorProtocol = require('./mirrorProtocol-
|
|
8
|
-
var configuration = require('./configuration-
|
|
5
|
+
var logger = require('./logger-Ct2zvaq0.cjs');
|
|
6
|
+
var lidState = require('./lidState-C9_DoF9i.cjs');
|
|
7
|
+
var mirrorProtocol = require('./mirrorProtocol-Dfl8Ahyf.cjs');
|
|
8
|
+
var configuration = require('./configuration-DfPBa-9d.cjs');
|
|
9
9
|
var cliUpdate = require('./cliUpdate-DsKXPFYp.cjs');
|
|
10
|
-
var registerCommonHandlers = require('./registerCommonHandlers-
|
|
10
|
+
var registerCommonHandlers = require('./registerCommonHandlers-D1MiSfcB.cjs');
|
|
11
11
|
var promises = require('node:fs/promises');
|
|
12
12
|
var path = require('node:path');
|
|
13
13
|
var os = require('node:os');
|
|
14
14
|
var fsMkdir = require('./fsMkdir-0K3yENml.cjs');
|
|
15
15
|
var node_child_process = require('node:child_process');
|
|
16
|
-
var persistence = require('./persistence-
|
|
16
|
+
var persistence = require('./persistence-A2NeERZJ.cjs');
|
|
17
17
|
var fileStore = require('./fileStore-7qhnbs6N.cjs');
|
|
18
18
|
var authRelay = require('./authRelay-Dy1qU9td.cjs');
|
|
19
19
|
var limits = require('./limits-C-a7gr04.cjs');
|
|
20
|
-
var time = require('./time-
|
|
20
|
+
var time = require('./time-Cy0a-7YX.cjs');
|
|
21
21
|
var pty = require('node-pty');
|
|
22
22
|
var terminals = require('./terminals-B_bfC9c2.cjs');
|
|
23
23
|
var tmuxSocket = require('./tmuxSocket-D-Xt6Vn-.cjs');
|
|
24
|
-
var index = require('./index-
|
|
24
|
+
var index = require('./index-D3c7CLot.cjs');
|
|
25
25
|
var node_crypto = require('node:crypto');
|
|
26
26
|
var node_fs = require('node:fs');
|
|
27
27
|
var axios = require('axios');
|
|
28
28
|
var projectPath = require('./projectPath-C3ioB4Bu.cjs');
|
|
29
29
|
var ids = require('./ids-B6ZC0HGt.cjs');
|
|
30
30
|
var detectCLI = require('./detectCLI-BuYR_Qxe.cjs');
|
|
31
|
-
var localHappyAgentAuth = require('./localHappyAgentAuth-
|
|
31
|
+
var localHappyAgentAuth = require('./localHappyAgentAuth-CCjUvOfi.cjs');
|
|
32
32
|
var path$1 = require('./path-B7zW-WwE.cjs');
|
|
33
33
|
var oneShotPrompts = require('./oneShotPrompts-CL0dip9C.cjs');
|
|
34
|
-
var claudeSessionFork = require('./claudeSessionFork-
|
|
35
|
-
var codexAppServerClient = require('./codexAppServerClient-
|
|
36
|
-
var index$1 = require('./index-
|
|
37
|
-
var codexThreadFork = require('./codexThreadFork-
|
|
38
|
-
var rateLimitWindows = require('./rateLimitWindows-
|
|
34
|
+
var claudeSessionFork = require('./claudeSessionFork-Cko4SaVi.cjs');
|
|
35
|
+
var codexAppServerClient = require('./codexAppServerClient-DKXeikEe.cjs');
|
|
36
|
+
var index$1 = require('./index-CLUHaPU8.cjs');
|
|
37
|
+
var codexThreadFork = require('./codexThreadFork-5kwoKjMu.cjs');
|
|
38
|
+
var rateLimitWindows = require('./rateLimitWindows-B2Kx6L0S.cjs');
|
|
39
39
|
require('chalk');
|
|
40
40
|
require('node:util');
|
|
41
41
|
require('os');
|
|
42
42
|
require('child_process');
|
|
43
|
-
require('./package-
|
|
43
|
+
require('./package-9n7wd2dT.cjs');
|
|
44
44
|
require('util');
|
|
45
45
|
require('fs/promises');
|
|
46
46
|
require('crypto');
|
|
@@ -10511,6 +10511,8 @@ class ApiMachineClient {
|
|
|
10511
10511
|
claudeAuthState = null;
|
|
10512
10512
|
/** B-587: the machine's hibernation threshold, published as a capability. */
|
|
10513
10513
|
agentHibernationIdleMs = null;
|
|
10514
|
+
/** B-852: auto-restart setting + per-session status (null until the daemon installs it). */
|
|
10515
|
+
autoRestart = null;
|
|
10514
10516
|
/** B-510: last normalized `webPanels` (null = never set → field not written). */
|
|
10515
10517
|
webPanels = null;
|
|
10516
10518
|
webPanelsSignatureSent = null;
|
|
@@ -10731,6 +10733,43 @@ class ApiMachineClient {
|
|
|
10731
10733
|
this.cliUpdatePushChain = attempt.then(() => void 0);
|
|
10732
10734
|
return attempt;
|
|
10733
10735
|
}
|
|
10736
|
+
/**
|
|
10737
|
+
* B-852: the machine page's「会话自动更新」switch (`auto-restart-set`) and
|
|
10738
|
+
* the `daemonState.autoRestart` capability + per-session status. Call
|
|
10739
|
+
* before connect().
|
|
10740
|
+
*/
|
|
10741
|
+
setAutoRestartHandlers(initialEnabled, set) {
|
|
10742
|
+
this.autoRestart = { enabled: initialEnabled, sessions: this.autoRestart?.sessions ?? {} };
|
|
10743
|
+
this.rpcHandlerManager.registerHandler("auto-restart-set", async (params) => {
|
|
10744
|
+
if (typeof params?.enabled !== "boolean") return { error: "invalid-enabled" };
|
|
10745
|
+
const enabled = await set(params.enabled);
|
|
10746
|
+
this.autoRestart = { enabled, sessions: enabled ? this.autoRestart?.sessions ?? {} : {} };
|
|
10747
|
+
await this.publishAutoRestart();
|
|
10748
|
+
return { autoRestart: { enabled } };
|
|
10749
|
+
});
|
|
10750
|
+
}
|
|
10751
|
+
/** B-852: the scheduler's per-session status changed (already signature-deduped). */
|
|
10752
|
+
setAutoRestartSessions(sessions) {
|
|
10753
|
+
if (!this.autoRestart) return Promise.resolve();
|
|
10754
|
+
this.autoRestart = { ...this.autoRestart, sessions };
|
|
10755
|
+
return this.publishAutoRestart();
|
|
10756
|
+
}
|
|
10757
|
+
autoRestartState(now) {
|
|
10758
|
+
const state = this.autoRestart;
|
|
10759
|
+
return { enabled: state.enabled, rpcAvailable: true, detectedAt: now, sessions: state.sessions };
|
|
10760
|
+
}
|
|
10761
|
+
publishAutoRestart() {
|
|
10762
|
+
if (!this.autoRestart || !this.socket?.connected) return Promise.resolve();
|
|
10763
|
+
const attempt = this.cliUpdatePushChain.then(() => this.updateDaemonState((current) => ({
|
|
10764
|
+
...current ?? {},
|
|
10765
|
+
status: current?.status ?? "running",
|
|
10766
|
+
autoRestart: this.autoRestartState(Date.now())
|
|
10767
|
+
}))).catch((error) => {
|
|
10768
|
+
logger.logger.debug("[API MACHINE] Failed to publish auto-restart:", error);
|
|
10769
|
+
});
|
|
10770
|
+
this.cliUpdatePushChain = attempt.then(() => void 0);
|
|
10771
|
+
return attempt;
|
|
10772
|
+
}
|
|
10734
10773
|
/** B-276 machine RPCs. Responses always carry `claudeAuth` so the web can refresh in place. */
|
|
10735
10774
|
setClaudeAuthHandlers(handlers) {
|
|
10736
10775
|
this.rpcHandlerManager.registerHandler("claude-auth-probe", async () => {
|
|
@@ -11457,6 +11496,8 @@ class ApiMachineClient {
|
|
|
11457
11496
|
...this.claudeAuthState ? { claudeAuth: this.claudeAuthState } : {},
|
|
11458
11497
|
// B-587 capability + setting (same restamp discipline).
|
|
11459
11498
|
...this.agentHibernationIdleMs !== null ? { agentHibernation: { idleMs: this.agentHibernationIdleMs, rpcAvailable: true, detectedAt: now } } : {},
|
|
11499
|
+
// B-852 capability + setting + status (same restamp discipline).
|
|
11500
|
+
...this.autoRestart ? { autoRestart: this.autoRestartState(now) } : {},
|
|
11460
11501
|
// B-510: re-ship the declared panels (also clears a stale list).
|
|
11461
11502
|
...Array.isArray(this.webPanels) ? { webPanels: { panels: this.webPanels, updatedAt: now } } : {}
|
|
11462
11503
|
};
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
var node_crypto = require('node:crypto');
|
|
4
4
|
var promises = require('node:fs/promises');
|
|
5
5
|
var path = require('node:path');
|
|
6
|
-
var pushNotifications = require('./pushNotifications-
|
|
7
|
-
var configuration = require('./configuration-
|
|
6
|
+
var pushNotifications = require('./pushNotifications-23YSd-0l.cjs');
|
|
7
|
+
var configuration = require('./configuration-DfPBa-9d.cjs');
|
|
8
8
|
|
|
9
9
|
const CLAUDE_ATTACHMENT_KINDS = [
|
|
10
10
|
"image/jpeg",
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { randomUUID } from 'node:crypto';
|
|
2
2
|
import { writeFile, rename, unlink } from 'node:fs/promises';
|
|
3
3
|
import { join, basename } from 'node:path';
|
|
4
|
-
import { M as MAX_CHAT_ATTACHMENT_SOURCE_BYTES } from './pushNotifications-
|
|
5
|
-
import { e as ensurePrivateDirectory, h as hardenPrivateFile } from './configuration-
|
|
4
|
+
import { M as MAX_CHAT_ATTACHMENT_SOURCE_BYTES } from './pushNotifications-XAM8__Pg.mjs';
|
|
5
|
+
import { e as ensurePrivateDirectory, h as hardenPrivateFile } from './configuration-ECqXu34R.mjs';
|
|
6
6
|
|
|
7
7
|
const CLAUDE_ATTACHMENT_KINDS = [
|
|
8
8
|
"image/jpeg",
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
|
-
import { g as readCredentials, r as readSettings, h as clearCredentials, i as clearMachineId } from './persistence-
|
|
3
|
-
import { a as authAndSetupMachineIfNeeded } from './auth-
|
|
4
|
-
import { c as configuration } from './configuration-
|
|
2
|
+
import { g as readCredentials, r as readSettings, h as clearCredentials, i as clearMachineId } from './persistence-Cpw4yJs8.mjs';
|
|
3
|
+
import { a as authAndSetupMachineIfNeeded } from './auth-DC6rg8lJ.mjs';
|
|
4
|
+
import { c as configuration } from './configuration-ECqXu34R.mjs';
|
|
5
5
|
import { existsSync, rmSync } from 'node:fs';
|
|
6
6
|
import { createInterface } from 'node:readline';
|
|
7
|
-
import { b as checkIfDaemonRunningAndCleanupStaleState, s as stopDaemon } from './controlClient-
|
|
8
|
-
import { l as logger } from './logger-
|
|
7
|
+
import { b as checkIfDaemonRunningAndCleanupStaleState, s as stopDaemon } from './controlClient-ClI7A0qE.mjs';
|
|
8
|
+
import { l as logger } from './logger-GcbI0eg2.mjs';
|
|
9
9
|
import os from 'node:os';
|
|
10
10
|
import { c as credentialRelayProblem } from './authRelay-DhQhkBvX.mjs';
|
|
11
11
|
import 'node:fs/promises';
|
|
@@ -13,11 +13,11 @@ import 'zod';
|
|
|
13
13
|
import 'node:crypto';
|
|
14
14
|
import 'tweetnacl';
|
|
15
15
|
import 'axios';
|
|
16
|
-
import './time-
|
|
17
|
-
import './browser-
|
|
16
|
+
import './time-D0jvDRhn.mjs';
|
|
17
|
+
import './browser-CHpVgyni.mjs';
|
|
18
18
|
import 'open';
|
|
19
19
|
import 'node:path';
|
|
20
|
-
import './package-
|
|
20
|
+
import './package-BsUHyqWe.mjs';
|
|
21
21
|
import 'node:util';
|
|
22
22
|
|
|
23
23
|
function localMachineIdentityStatus(machineId) {
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { e as encodeBase64, c as credentialRelayProblem, f as encodeBase64Url, d as decodeBase64 } from './authRelay-DhQhkBvX.mjs';
|
|
2
|
-
import { c as configuration } from './configuration-
|
|
2
|
+
import { c as configuration } from './configuration-ECqXu34R.mjs';
|
|
3
3
|
import { randomUUID, randomBytes } from 'node:crypto';
|
|
4
4
|
import tweetnacl from 'tweetnacl';
|
|
5
5
|
import axios from 'axios';
|
|
6
|
-
import { d as delay } from './time-
|
|
7
|
-
import { g as readCredentials,
|
|
8
|
-
import { o as openBrowser } from './browser-
|
|
9
|
-
import { l as logger } from './logger-
|
|
6
|
+
import { d as delay } from './time-D0jvDRhn.mjs';
|
|
7
|
+
import { g as readCredentials, m as readSettingsOutcome, u as updateSettings, w as writeCredentialsLegacy, n as writeCredentialsDataKey } from './persistence-Cpw4yJs8.mjs';
|
|
8
|
+
import { o as openBrowser } from './browser-CHpVgyni.mjs';
|
|
9
|
+
import { l as logger } from './logger-GcbI0eg2.mjs';
|
|
10
10
|
|
|
11
11
|
function generateWebAuthUrl(publicKey) {
|
|
12
12
|
const publicKeyBase64 = encodeBase64(publicKey, "base64url");
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var chalk = require('chalk');
|
|
4
|
-
var persistence = require('./persistence-
|
|
5
|
-
var auth = require('./auth-
|
|
6
|
-
var configuration = require('./configuration-
|
|
4
|
+
var persistence = require('./persistence-A2NeERZJ.cjs');
|
|
5
|
+
var auth = require('./auth-DnxoVkkf.cjs');
|
|
6
|
+
var configuration = require('./configuration-DfPBa-9d.cjs');
|
|
7
7
|
var node_fs = require('node:fs');
|
|
8
8
|
var node_readline = require('node:readline');
|
|
9
|
-
var controlClient = require('./controlClient-
|
|
10
|
-
var logger = require('./logger-
|
|
9
|
+
var controlClient = require('./controlClient-C13_pSKG.cjs');
|
|
10
|
+
var logger = require('./logger-Ct2zvaq0.cjs');
|
|
11
11
|
var os = require('node:os');
|
|
12
12
|
var authRelay = require('./authRelay-Dy1qU9td.cjs');
|
|
13
13
|
require('node:fs/promises');
|
|
@@ -15,11 +15,11 @@ require('zod');
|
|
|
15
15
|
require('node:crypto');
|
|
16
16
|
require('tweetnacl');
|
|
17
17
|
require('axios');
|
|
18
|
-
require('./time-
|
|
19
|
-
require('./browser-
|
|
18
|
+
require('./time-Cy0a-7YX.cjs');
|
|
19
|
+
require('./browser-BTgZ9d4i.cjs');
|
|
20
20
|
require('open');
|
|
21
21
|
require('node:path');
|
|
22
|
-
require('./package-
|
|
22
|
+
require('./package-9n7wd2dT.cjs');
|
|
23
23
|
require('node:util');
|
|
24
24
|
|
|
25
25
|
function localMachineIdentityStatus(machineId) {
|