very-happy-cli 0.2.189 → 0.2.190

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (199) hide show
  1. package/dist/{AcpBackend-fj16v_cf.mjs → AcpBackend-Dd1h-Rgt.mjs} +3 -3
  2. package/dist/{AcpBackend-DRPJ2g9G.cjs → AcpBackend-dkRv9QHm.cjs} +3 -3
  3. package/dist/{AcpSessionManager-DM-KKg6v.cjs → AcpSessionManager-AqWAqahm.cjs} +1 -1
  4. package/dist/{AcpSessionManager-BZPmUDL5.mjs → AcpSessionManager-QBZ-CIf7.mjs} +2 -2
  5. package/dist/{BasePermissionHandler-CVtH-snr.mjs → BasePermissionHandler-CLp1ge-4.mjs} +1 -1
  6. package/dist/{BasePermissionHandler-DjM16uJz.cjs → BasePermissionHandler-CpSugp7Z.cjs} +1 -1
  7. package/dist/{acpSessionResume-2BTMsB7_.cjs → acpSessionResume-CZao6QEd.cjs} +1 -1
  8. package/dist/{acpSessionResume-Dxl1LRAT.mjs → acpSessionResume-CcpDuIO5.mjs} +1 -1
  9. package/dist/{agentHome-CHctmMzZ.mjs → agentHome-BJGRA2Kx.mjs} +4 -4
  10. package/dist/{agentHome-W17n1gnH.cjs → agentHome-fIUqT-pn.cjs} +4 -4
  11. package/dist/{api-BDuuyys8.cjs → api-CXL6jp-p.cjs} +18 -9
  12. package/dist/{api-B0yN68XH.mjs → api-Dw8gFsQi.mjs} +19 -10
  13. package/dist/{apiMachine-mc9CsKuS.mjs → apiMachine-BBNEtjf7.mjs} +56 -15
  14. package/dist/{apiMachine-iddD-F19.cjs → apiMachine-C6UqHoPF.cjs} +55 -14
  15. package/dist/{attachmentContent-CcIdMfAx.mjs → attachmentContent-CC4yIrSm.mjs} +2 -2
  16. package/dist/{attachmentContent-Cc5b7TPr.cjs → attachmentContent-NmVfKp-B.cjs} +2 -2
  17. package/dist/{auth-DQKSpaEf.cjs → auth-Bb_SL2os.cjs} +5 -5
  18. package/dist/{auth-DNAgkUkB.mjs → auth-Bh6SUoGi.mjs} +8 -8
  19. package/dist/{auth-CyrVvWHF.mjs → auth-Bj0psrD2.mjs} +5 -5
  20. package/dist/{auth-B7tVmyfX.cjs → auth-DKa4MsAi.cjs} +8 -8
  21. package/dist/{auto-CetlumDo.cjs → auto-C9Qohh0P.cjs} +15 -15
  22. package/dist/{auto-BklCipw1.mjs → auto-DK7pbCnV.mjs} +18 -18
  23. package/dist/{bootstrap-DfXwkUQb.mjs → bootstrap-Ct9Nb4sv.mjs} +2 -2
  24. package/dist/{bootstrap-CDY-Vz8q.cjs → bootstrap-DBJB0y-H.cjs} +2 -2
  25. package/dist/{browser-vb0k1zfI.mjs → browser-BGxDRhHy.mjs} +1 -1
  26. package/dist/{browser-D1yzC0Tu.cjs → browser-CLJWcodR.cjs} +1 -1
  27. package/dist/{claudeLocal-2dJIiTIq.cjs → claudeLocal-B6YDYlnY.cjs} +4 -4
  28. package/dist/{claudeLocal-Bid_rC_v.mjs → claudeLocal-Ux31hZyC.mjs} +5 -5
  29. package/dist/{claudeLocalLauncher-5pzpETxd.mjs → claudeLocalLauncher-D06QijMw.mjs} +10 -10
  30. package/dist/{claudeLocalLauncher-Jm5oQX5Z.cjs → claudeLocalLauncher-DFvmF8rC.cjs} +9 -9
  31. package/dist/{claudeSessionFork-DzecSBO4.mjs → claudeSessionFork-D2GI7P59.mjs} +1 -1
  32. package/dist/{claudeSessionFork-DsbcuDEJ.cjs → claudeSessionFork-DTLZ2rek.cjs} +1 -1
  33. package/dist/{client-D0aYWt53.cjs → client-Bffkrs5p.cjs} +2 -2
  34. package/dist/{client-BNmFaRXZ.cjs → client-CARZ_lNS.cjs} +3 -3
  35. package/dist/{client-DIfxYk7B.cjs → client-CMKGrnmT.cjs} +2 -2
  36. package/dist/{client-B161HwAk.mjs → client-CnGNYidN.mjs} +2 -2
  37. package/dist/{client-C9Ecbtko.mjs → client-CtL0Vtww.mjs} +4 -4
  38. package/dist/{client-CvjjadIE.mjs → client-DZkBUoh9.mjs} +2 -2
  39. package/dist/codex/happyMcpStdioBridge.cjs +15 -15
  40. package/dist/codex/happyMcpStdioBridge.mjs +16 -16
  41. package/dist/{codexAppServerClient-BlVmpjR-.mjs → codexAppServerClient-CLc5nhLT.mjs} +13 -6
  42. package/dist/{codexAppServerClient-CO9f4Jr8.cjs → codexAppServerClient-CpT9F6EM.cjs} +13 -6
  43. package/dist/{codexCommand-BfoRP6E9.cjs → codexCommand-39kH99SJ.cjs} +72 -48
  44. package/dist/{codexCommand-CAMR4g5o.mjs → codexCommand-Dliq3EBv.mjs} +69 -45
  45. package/dist/{codexTermination-IrLZQzKC.cjs → codexTermination-ByW7tRjr.cjs} +1 -1
  46. package/dist/{codexTermination-BvGlN02_.mjs → codexTermination-ORIw0gpU.mjs} +1 -1
  47. package/dist/{codexThreadFork-DNekT4nQ.cjs → codexThreadFork-5kwoKjMu.cjs} +11 -17
  48. package/dist/{codexThreadFork-R76RU5H0.mjs → codexThreadFork-DobPd19R.mjs} +11 -17
  49. package/dist/{config-BGFqQGvh.cjs → config-CeIzCsfj.cjs} +3 -3
  50. package/dist/{config-CtMgGPvf.mjs → config-CxSsGO1Z.mjs} +3 -3
  51. package/dist/{configuration-1FabKklB.mjs → configuration-Dechcvd-.mjs} +1 -1
  52. package/dist/{configuration-C0ctLGW2.cjs → configuration-Dt5lKW3P.cjs} +1 -1
  53. package/dist/{connect-DSw-2f52.cjs → connect-NPDzIVC6.cjs} +12 -12
  54. package/dist/{connect-0lSugpjf.mjs → connect-UwQHvCpR.mjs} +13 -13
  55. package/dist/{context-D-hEk5pC.cjs → context-BdZssgF0.cjs} +1 -1
  56. package/dist/{context-BgxbXWKS.mjs → context-C9JbJoNe.mjs} +1 -1
  57. package/dist/{controlClient-F7hAEEy2.cjs → controlClient-BRk65BRO.cjs} +3 -3
  58. package/dist/{controlClient-DwNnNAUx.mjs → controlClient-D7NGfmtq.mjs} +3 -3
  59. package/dist/{createSessionMetadata-DezS33OM.cjs → createSessionMetadata-B_HZCDj_.cjs} +2 -2
  60. package/dist/{createSessionMetadata-CG6Klinp.mjs → createSessionMetadata-DyhFKAby.mjs} +2 -2
  61. package/dist/defaultPermissionMode-BnxJPVHT.mjs +4 -0
  62. package/dist/defaultPermissionMode-CxmTXUQR.cjs +7 -0
  63. package/dist/{deterministicJson-D0LU_XbO.cjs → deterministicJson-BEygolBQ.cjs} +12 -12
  64. package/dist/{deterministicJson-BMwgK21e.mjs → deterministicJson-DNmMVhFu.mjs} +13 -13
  65. package/dist/{doctor-wVNvRarN.cjs → doctor-B9lW1WlG.cjs} +7 -7
  66. package/dist/{doctor-D16hySse.mjs → doctor-BdBi7TFZ.mjs} +7 -7
  67. package/dist/{downloadTarget-C6tqaXGm.mjs → downloadTarget-CGojGjaN.mjs} +6 -6
  68. package/dist/{downloadTarget-aNcCxVRL.cjs → downloadTarget-DS0zT2AU.cjs} +6 -6
  69. package/dist/{ensureDaemonRunning-DZq8bvsp.mjs → ensureDaemonRunning-BOdbryDM.mjs} +5 -5
  70. package/dist/{ensureDaemonRunning-CIghxgDR.cjs → ensureDaemonRunning-Bibp6vhe.cjs} +5 -5
  71. package/dist/exitAfterFlush-AbKNZM0N.mjs +23 -0
  72. package/dist/exitAfterFlush-DIT_sIxR.cjs +25 -0
  73. package/dist/{handleResumeCommand-BNnD7EuD.mjs → handleResumeCommand-CgLzBYne.mjs} +5 -5
  74. package/dist/{handleResumeCommand-CMUTygsm.cjs → handleResumeCommand-DXOuWr4p.cjs} +5 -5
  75. package/dist/{agentAttachments-Dbw8iMCZ.cjs → heldInput-BOtqFO2r.cjs} +27 -0
  76. package/dist/heldInput-C69lA2dH.mjs +44 -0
  77. package/dist/{index-De02DNu5.cjs → index-Bs5FD8JF.cjs} +4 -4
  78. package/dist/{index-BuiG8hmg.mjs → index-CBHfkQNY.mjs} +133 -54
  79. package/dist/{index-4TpmBb2Q.cjs → index-CwRW11hT.cjs} +3 -3
  80. package/dist/{index-Df0bc_et.mjs → index-DUByZsKe.mjs} +4 -4
  81. package/dist/{index-B81qV_F_.cjs → index-DXSIi6j_.cjs} +4 -4
  82. package/dist/{index-BCQr-5Ei.mjs → index-Db0HIC-k.mjs} +4 -4
  83. package/dist/{index-WKyN-bNy.mjs → index-DmqsRnV7.mjs} +1 -1
  84. package/dist/{index-CnzsOD19.cjs → index-f8oDidjV.cjs} +131 -52
  85. package/dist/{index-CKd20r1W.mjs → index-rNTX33in.mjs} +3 -3
  86. package/dist/index.cjs +2 -2
  87. package/dist/index.mjs +2 -2
  88. package/dist/{install-DNbIEJUk.cjs → install-CXIL_FYx.cjs} +3 -3
  89. package/dist/{install-23ehAdTD.mjs → install-DfPrEWGG.mjs} +3 -3
  90. package/dist/lib.cjs +11 -11
  91. package/dist/lib.d.cts +53 -1
  92. package/dist/lib.d.mts +53 -1
  93. package/dist/lib.mjs +12 -12
  94. package/dist/{lidState-q5Its2Hm.mjs → lidState-D0DF20oG.mjs} +1 -1
  95. package/dist/{lidState-B4dHJCeS.cjs → lidState-q_XFYg33.cjs} +1 -1
  96. package/dist/{localHappyAgentAuth-C_G5u5lY.mjs → localHappyAgentAuth-BBhM4Qk1.mjs} +1 -1
  97. package/dist/{localHappyAgentAuth-CG2nPD_H.cjs → localHappyAgentAuth-CKNW-MXw.cjs} +1 -1
  98. package/dist/{logger-BP1SW7Cs.cjs → logger-BBRTTVsQ.cjs} +2 -2
  99. package/dist/{logger-DOKH3Zbh.mjs → logger-CL7pin9b.mjs} +2 -2
  100. package/dist/{machineMetadata-D-5qeIqd.mjs → machineMetadata-DP06qdBk.mjs} +3 -3
  101. package/dist/{machineMetadata-BKX3ov9g.cjs → machineMetadata-DnFNlrVK.cjs} +3 -3
  102. package/dist/{main-ndpVIaSG.cjs → main-DLOXykOR.cjs} +49 -48
  103. package/dist/{main-DODz8DQE.mjs → main-DO7nRvhf.mjs} +49 -48
  104. package/dist/{mcp-BBwbSODp.mjs → mcp-C-4sPTae.mjs} +15 -15
  105. package/dist/{mcp-Bc4U4exu.cjs → mcp-Du0MgR7e.cjs} +14 -14
  106. package/dist/{mirrorProtocol-CiA3hO2y.cjs → mirrorProtocol-GuWMxLkh.cjs} +2 -2
  107. package/dist/{mirrorProtocol-D2vTWteS.mjs → mirrorProtocol-dkq2ZENA.mjs} +3 -3
  108. package/dist/{package-DTcaIhjW.mjs → package-C6uiXULx.mjs} +7 -7
  109. package/dist/{package-CYDdLA6R.cjs → package-DrY090nZ.cjs} +7 -7
  110. package/dist/{panels-C2xZ8rqU.cjs → panels-4DRBKHZP.cjs} +5 -5
  111. package/dist/{panels-DCaLxlSL.mjs → panels-DXYdJA6n.mjs} +5 -5
  112. package/dist/{peerTools-B4315xjX.cjs → peerTools-5ZM4spcZ.cjs} +5 -5
  113. package/dist/{peerTools-BtrUnSwz.mjs → peerTools-dY1aJez4.mjs} +5 -5
  114. package/dist/{persistence-CrzC7yr_.cjs → persistence-Bl5S3TLB.cjs} +6 -2
  115. package/dist/{persistence-0INrP3aB.mjs → persistence-Dogj7JIp.mjs} +6 -3
  116. package/dist/{piRunnerArgs-BtzW_kfh.cjs → piRunnerArgs-C3jZ1M6b.cjs} +1 -1
  117. package/dist/{piRunnerArgs-DRuxMlX1.mjs → piRunnerArgs-D8nN_Iit.mjs} +1 -1
  118. package/dist/{piRuntime-DEbPE_kW.cjs → piRuntime-Bd9-eq6M.cjs} +1 -1
  119. package/dist/{piRuntime-BMAFpIBV.mjs → piRuntime-BoeMsAXK.mjs} +1 -1
  120. package/dist/{piTerminal-MtxDtBE2.cjs → piTerminal-C3j1ca3x.cjs} +16 -16
  121. package/dist/{piTerminal-DQXV8_we.mjs → piTerminal-GEPkIGD4.mjs} +17 -17
  122. package/dist/{pushNotifications-CalIS9sq.cjs → pushNotifications-CfspRcl-.cjs} +20 -2
  123. package/dist/{pushNotifications-Cq1s8YVK.mjs → pushNotifications-dUceOIni.mjs} +21 -3
  124. package/dist/{query-CE2XDhhw.cjs → query-DjsVgG3E.cjs} +1 -1
  125. package/dist/{query-BYiPBHPC.mjs → query-iYH-tm7L.mjs} +1 -1
  126. package/dist/{rateLimitReporter-BKmoOZQi.cjs → rateLimitReporter-DUu2KydZ.cjs} +3 -3
  127. package/dist/{rateLimitReporter-DR5LXuiQ.mjs → rateLimitReporter-jeVi-fym.mjs} +3 -3
  128. package/dist/{rateLimitWindows-Cs56YJCH.cjs → rateLimitWindows-Bx3ROBP5.cjs} +1 -1
  129. package/dist/{rateLimitWindows-5vIuNjko.mjs → rateLimitWindows-CEn0DXaX.mjs} +1 -1
  130. package/dist/{registerCommonHandlers-DZPozYxc.cjs → registerCommonHandlers-Beun-cQv.cjs} +2 -2
  131. package/dist/{registerCommonHandlers-DWkTysjD.mjs → registerCommonHandlers-DWZ7mfdt.mjs} +2 -2
  132. package/dist/{registerKillSessionHandler-DhCjrs44.cjs → registerKillSessionHandler-CA1FFr_F.cjs} +15 -5
  133. package/dist/{registerKillSessionHandler-CSCTRIbI.mjs → registerKillSessionHandler-CzgklwLG.mjs} +16 -6
  134. package/dist/{remoteSessionClient-Vfj_5g2-.mjs → remoteSessionClient-BiC2KDew.mjs} +5 -5
  135. package/dist/{remoteSessionClient-Dq8XTLQP.cjs → remoteSessionClient-DGFI__5Z.cjs} +5 -5
  136. package/dist/{reportProgressTool-B7zmX7NJ.mjs → reportProgressTool-CgPy6n_7.mjs} +3 -3
  137. package/dist/{reportProgressTool-DznxPKES.cjs → reportProgressTool-CvPGov1F.cjs} +2 -2
  138. package/dist/{run-DSfNcR62.mjs → run-B_gFgJVB.mjs} +392 -42
  139. package/dist/{run-Ca8BiNCp.cjs → run-rPqQwDi_.cjs} +389 -39
  140. package/dist/{runClaude-hoepv-0X.mjs → runClaude-CykqeXK7.mjs} +26 -23
  141. package/dist/{runClaude-ClQQcgoO.cjs → runClaude-DM8gm8iu.cjs} +27 -24
  142. package/dist/{runClaudeDeps-D_v8t2SK.mjs → runClaudeDeps-D2phXGut.mjs} +101 -44
  143. package/dist/{runClaudeDeps-ck5_GYlP.cjs → runClaudeDeps-DGAomimZ.cjs} +94 -37
  144. package/dist/{runGemini-Cj0XsMiM.cjs → runGemini-CXTeSOZp.cjs} +32 -32
  145. package/dist/{runGemini-CTr2-cYG.mjs → runGemini-CtWCVkj5.mjs} +33 -33
  146. package/dist/{runOpenClaw-CdDMntiV.mjs → runOpenClaw-BBdjlViJ.mjs} +18 -18
  147. package/dist/{runOpenClaw-BoN1e3lP.cjs → runOpenClaw-CH_9_RyZ.cjs} +17 -17
  148. package/dist/{sandbox-BY2h19gc.cjs → sandbox-Bb5IMun3.cjs} +4 -4
  149. package/dist/{sandbox-DcaWB-Ou.mjs → sandbox-DGmXZ6Zz.mjs} +4 -4
  150. package/dist/selfCheck-BfK945YQ.mjs +86 -0
  151. package/dist/{selfCheck-DFS_GUaQ.cjs → selfCheck-CccwNTTK.cjs} +37 -37
  152. package/dist/{send-UBTHHNvZ.mjs → send-B6rHg8GT.mjs} +8 -8
  153. package/dist/{send-BMsUYU6g.cjs → send-BpiXPkDo.cjs} +8 -8
  154. package/dist/{server-Dt3mCtfQ.mjs → server-BkdAyHhC.mjs} +4 -4
  155. package/dist/{server-YrHMHNz1.cjs → server-DHUzjApC.cjs} +6 -6
  156. package/dist/{sessionLock-DSqiP2lH.cjs → sessionLock-BFBReiKq.cjs} +134 -3
  157. package/dist/{sessionLock-tEFvFXLD.mjs → sessionLock-Ca_bIo50.mjs} +121 -4
  158. package/dist/{sessionOps-CljctDs5.mjs → sessionOps-CA2kpm66.mjs} +13 -5
  159. package/dist/{sessionOps-BzeOKIEF.cjs → sessionOps-DeWVqpe4.cjs} +13 -4
  160. package/dist/{sessionProvider-ORgzmkXy.cjs → sessionProvider-VFbtUmMR.cjs} +5 -5
  161. package/dist/{sessionProvider-BnUFSJXM.mjs → sessionProvider-g18IiK74.mjs} +5 -5
  162. package/dist/{sessionScanner-Cr6PJ3PT.cjs → sessionScanner-CGzsN8V6.cjs} +3 -3
  163. package/dist/{sessionScanner-DZUlkdF6.mjs → sessionScanner-DDDud5re.mjs} +3 -3
  164. package/dist/{sessions-15cag-su.mjs → sessions-B4d50sCI.mjs} +35 -26
  165. package/dist/{sessions-aIo_HjmY.cjs → sessions-CKJPWFgu.cjs} +36 -25
  166. package/dist/{setupOfflineReconnection-B7I8R2Ex.mjs → setupOfflineReconnection-CyPNgyCe.mjs} +2 -2
  167. package/dist/{setupOfflineReconnection-tV0Q1dgR.cjs → setupOfflineReconnection-DPXRo_zf.cjs} +2 -2
  168. package/dist/{spawn-VG-HjJiR.cjs → spawn-CgSJzzWS.cjs} +13 -13
  169. package/dist/{spawn-ByrQgruJ.mjs → spawn-CrYN_OOT.mjs} +15 -15
  170. package/dist/{spawnAgents-Bh1RPShN.mjs → spawnAgents-DWCDYCQ1.mjs} +1 -1
  171. package/dist/{spawnHappyCLI-CxiR2Qoy.cjs → spawnHappyCLI-CTy3p6V_.cjs} +1 -1
  172. package/dist/{spawnHappyCLI-CEsXwz5V.mjs → spawnHappyCLI-DjbkiSH1.mjs} +1 -1
  173. package/dist/{startFileWatcher-C-XCZ5t2.cjs → startFileWatcher-BQs0cJA-.cjs} +1 -1
  174. package/dist/{startFileWatcher-DkEeeAtL.mjs → startFileWatcher-Dedtu1vq.mjs} +1 -1
  175. package/dist/{defaultPermissionMode-e2bIIJG4.mjs → startupSessionCreate-BKFU4v_h.mjs} +25 -6
  176. package/dist/{defaultPermissionMode-5EvgRq38.cjs → startupSessionCreate-Dxy3X4DG.cjs} +25 -7
  177. package/dist/{streamRelay-CqBynIon.mjs → streamRelay-P9e7Sohm.mjs} +1 -1
  178. package/dist/{sync-CoChLEIg.cjs → sync-DtWB7RzA.cjs} +1 -1
  179. package/dist/{sync-BvDMkKAN.mjs → sync-eZkXnsW_.mjs} +1 -1
  180. package/dist/{systemPrompt-Dy_Rf-0Z.cjs → systemPrompt-2XOpZ1j6.cjs} +1 -1
  181. package/dist/{systemPrompt-CgDaPigN.mjs → systemPrompt-Bn6g6aCH.mjs} +2 -2
  182. package/dist/{teams-DPvfLAk8.cjs → teams-ecFay4Gn.cjs} +6 -6
  183. package/dist/{teams-BC4_e5hR.mjs → teams-nadkqrbW.mjs} +7 -7
  184. package/dist/{template-CEK8MEjo.mjs → template-BiTD-jI9.mjs} +1 -1
  185. package/dist/{time-CUK37wiV.mjs → time-CN3TuSVG.mjs} +1 -1
  186. package/dist/{time-XwEZxKGc.cjs → time-gPD_EmA-.cjs} +1 -1
  187. package/dist/{titleGenerator-DWRVdqMU.mjs → titleGenerator-DgzTQdn2.mjs} +1 -1
  188. package/dist/{titleGenerator-DVX0NZUn.cjs → titleGenerator-lT5ldPuN.cjs} +2 -2
  189. package/dist/{todo-CKGrSrRE.cjs → todo-B1VeMk5A.cjs} +5 -5
  190. package/dist/{todo-BNMGXneA.mjs → todo-BIxd7l2Q.mjs} +6 -6
  191. package/dist/{tools-CjMafO_D.cjs → tools-DvqbLsCF.cjs} +1 -1
  192. package/dist/{tools-CCIEAVbB.mjs → tools-zXJpxiG_.mjs} +1 -1
  193. package/dist/{uninstall-CJvJ7gjr.mjs → uninstall-9htK6mb7.mjs} +3 -3
  194. package/dist/{uninstall-BdFbTXnL.cjs → uninstall-CvIOpwB5.cjs} +3 -3
  195. package/package.json +7 -7
  196. package/dist/agentAttachments-M_B5qEF2.mjs +0 -18
  197. package/dist/selfCheck-BQ_H2Sns.mjs +0 -86
  198. package/dist/startupSessionCreate-CYc8mra-.cjs +0 -26
  199. package/dist/startupSessionCreate-npXe2TdN.mjs +0 -24
@@ -6,34 +6,34 @@ var node_child_process = require('node:child_process');
6
6
  var os = require('node:os');
7
7
  var node_fs = require('node:fs');
8
8
  var path = require('node:path');
9
- var api = require('./api-BDuuyys8.cjs');
10
- var AcpSessionManager = require('./AcpSessionManager-DM-KKg6v.cjs');
11
- var logger = require('./logger-BP1SW7Cs.cjs');
12
- var registerKillSessionHandler = require('./registerKillSessionHandler-DhCjrs44.cjs');
13
- var persistence = require('./persistence-CrzC7yr_.cjs');
14
- var machineMetadata = require('./machineMetadata-BKX3ov9g.cjs');
15
- var createSessionMetadata = require('./createSessionMetadata-DezS33OM.cjs');
16
- var setupOfflineReconnection = require('./setupOfflineReconnection-tV0Q1dgR.cjs');
17
- var controlClient = require('./controlClient-F7hAEEy2.cjs');
9
+ var api = require('./api-CXL6jp-p.cjs');
10
+ var AcpSessionManager = require('./AcpSessionManager-AqWAqahm.cjs');
11
+ var logger = require('./logger-BBRTTVsQ.cjs');
12
+ var registerKillSessionHandler = require('./registerKillSessionHandler-CA1FFr_F.cjs');
13
+ var persistence = require('./persistence-Bl5S3TLB.cjs');
14
+ var machineMetadata = require('./machineMetadata-DnFNlrVK.cjs');
15
+ var createSessionMetadata = require('./createSessionMetadata-B_HZCDj_.cjs');
16
+ var setupOfflineReconnection = require('./setupOfflineReconnection-DPXRo_zf.cjs');
17
+ var controlClient = require('./controlClient-BRk65BRO.cjs');
18
18
  var authRelay = require('./authRelay-Dy1qU9td.cjs');
19
19
  var WebSocket = require('ws');
20
20
  var ed = require('@noble/ed25519');
21
21
  var sha2_js = require('@noble/hashes/sha2.js');
22
- var configuration = require('./configuration-C0ctLGW2.cjs');
22
+ var configuration = require('./configuration-Dt5lKW3P.cjs');
23
23
  var contentLogMetadata = require('./contentLogMetadata-ZSFk_NjQ.cjs');
24
24
  require('axios');
25
- require('./lidState-B4dHJCeS.cjs');
25
+ require('./lidState-q_XFYg33.cjs');
26
26
  require('os');
27
27
  require('child_process');
28
28
  require('node:events');
29
29
  require('socket.io-client');
30
- require('./pushNotifications-CalIS9sq.cjs');
30
+ require('./pushNotifications-CfspRcl-.cjs');
31
31
  require('zod');
32
32
  require('./index-BOe6dKnL.cjs');
33
33
  require('@paralleldrive/cuid2');
34
34
  require('./limits-C-a7gr04.cjs');
35
- require('./time-XwEZxKGc.cjs');
36
- require('./registerCommonHandlers-DZPozYxc.cjs');
35
+ require('./time-gPD_EmA-.cjs');
36
+ require('./registerCommonHandlers-Beun-cQv.cjs');
37
37
  require('util');
38
38
  require('fs/promises');
39
39
  require('crypto');
@@ -41,17 +41,17 @@ require('path');
41
41
  require('cross-spawn');
42
42
  require('./projectPath-C3ioB4Bu.cjs');
43
43
  require('url');
44
- require('./sync-CoChLEIg.cjs');
44
+ require('./sync-DtWB7RzA.cjs');
45
45
  require('./backgroundTaskActivity-CBvUdj39.cjs');
46
46
  require('chalk');
47
47
  require('node:util');
48
48
  require('tweetnacl');
49
49
  require('./types-CRS-srZK.cjs');
50
50
  require('node:fs/promises');
51
- require('./package-CYDdLA6R.cjs');
51
+ require('./package-DrY090nZ.cjs');
52
52
  require('./detectCLI-BuYR_Qxe.cjs');
53
53
  require('fs');
54
- require('./localHappyAgentAuth-CG2nPD_H.cjs');
54
+ require('./localHappyAgentAuth-CKNW-MXw.cjs');
55
55
  require('./fsMkdir-0K3yENml.cjs');
56
56
 
57
57
  function _interopNamespaceDefault(e) {
@@ -4,16 +4,16 @@ var chalk = require('chalk');
4
4
  var inquirer = require('inquirer');
5
5
  var node_fs = require('node:fs');
6
6
  var os = require('node:os');
7
- var persistence = require('./persistence-CrzC7yr_.cjs');
7
+ var persistence = require('./persistence-Bl5S3TLB.cjs');
8
8
  require('node:fs/promises');
9
- require('./configuration-C0ctLGW2.cjs');
9
+ require('./configuration-Dt5lKW3P.cjs');
10
10
  require('node:path');
11
- require('./package-CYDdLA6R.cjs');
11
+ require('./package-DrY090nZ.cjs');
12
12
  require('zod');
13
13
  require('./authRelay-Dy1qU9td.cjs');
14
14
  require('node:crypto');
15
15
  require('tweetnacl');
16
- require('./logger-BP1SW7Cs.cjs');
16
+ require('./logger-BBRTTVsQ.cjs');
17
17
  require('node:util');
18
18
 
19
19
  const DEFAULT_WORKSPACE_ROOT = "~/Workspace";
@@ -2,16 +2,16 @@ import chalk from 'chalk';
2
2
  import inquirer from 'inquirer';
3
3
  import { existsSync } from 'node:fs';
4
4
  import { homedir } from 'node:os';
5
- import { S as SandboxConfigSchema, u as updateSettings, r as readSettings } from './persistence-0INrP3aB.mjs';
5
+ import { S as SandboxConfigSchema, u as updateSettings, r as readSettings } from './persistence-Dogj7JIp.mjs';
6
6
  import 'node:fs/promises';
7
- import './configuration-1FabKklB.mjs';
7
+ import './configuration-Dechcvd-.mjs';
8
8
  import 'node:path';
9
- import './package-DTcaIhjW.mjs';
9
+ import './package-C6uiXULx.mjs';
10
10
  import 'zod';
11
11
  import './authRelay-DhQhkBvX.mjs';
12
12
  import 'node:crypto';
13
13
  import 'tweetnacl';
14
- import './logger-DOKH3Zbh.mjs';
14
+ import './logger-CL7pin9b.mjs';
15
15
  import 'node:util';
16
16
 
17
17
  const DEFAULT_WORKSPACE_ROOT = "~/Workspace";
@@ -0,0 +1,86 @@
1
+ import { p as packageJson } from './package-C6uiXULx.mjs';
2
+
3
+ const LAZY_MODULES = [
4
+ // Entry
5
+ ["main", () => import('./main-DO7nRvhf.mjs')],
6
+ ["selfCheck", () => Promise.resolve().then(function () { return selfCheck; })],
7
+ // Subcommands (main.ts)
8
+ ["api/api", () => import('./api-Dw8gFsQi.mjs').then(function (n) { return n.e; })],
9
+ ["claude/claudeCliPath", () => import('./claudeCliPath-BqkaH2oR.mjs')],
10
+ ["claude/runClaude", () => import('./runClaude-CykqeXK7.mjs')],
11
+ ["commands/agentHome", () => import('./agentHome-BJGRA2Kx.mjs')],
12
+ ["commands/auth", () => import('./auth-Bh6SUoGi.mjs')],
13
+ ["commands/auto", () => import('./auto-DK7pbCnV.mjs')],
14
+ ["commands/codexCommand", () => import('./codexCommand-Dliq3EBv.mjs')],
15
+ ["commands/connect", () => import('./connect-UwQHvCpR.mjs')],
16
+ ["commands/installPiTools", () => import('./installPiTools-B_CdM5_2.mjs')],
17
+ ["commands/installTerminalHooks", () => import('./installTerminalHooks-By7gBMEF.mjs')],
18
+ ["commands/mcp", () => import('./mcp-C-4sPTae.mjs')],
19
+ ["commands/panels", () => import('./panels-DXYdJA6n.mjs')],
20
+ ["commands/piTerminal", () => import('./piTerminal-GEPkIGD4.mjs')],
21
+ ["commands/sandbox", () => import('./sandbox-DGmXZ6Zz.mjs')],
22
+ ["commands/send", () => import('./send-B6rHg8GT.mjs')],
23
+ ["commands/server", () => import('./server-BkdAyHhC.mjs')],
24
+ ["commands/sessions", () => import('./sessions-B4d50sCI.mjs')],
25
+ ["commands/sessionProvider", () => import('./sessionProvider-g18IiK74.mjs')],
26
+ ["commands/spawn", () => import('./spawn-CrYN_OOT.mjs')],
27
+ ["commands/teams", () => import('./teams-nadkqrbW.mjs')],
28
+ ["commands/todo", () => import('./todo-BIxd7l2Q.mjs')],
29
+ ["daemon/doctor", () => import('./doctor-BPkYWSuq.mjs')],
30
+ ["daemon/install", () => import('./install-DfPrEWGG.mjs')],
31
+ ["daemon/run", () => import('./run-B_gFgJVB.mjs')],
32
+ ["daemon/uninstall", () => import('./uninstall-9htK6mb7.mjs')],
33
+ ["resume/handleResumeCommand", () => import('./handleResumeCommand-CgLzBYne.mjs')],
34
+ ["ui/doctor", () => import('./doctor-BdBi7TFZ.mjs').then(function (n) { return n.d; })],
35
+ ["agent/acp", () => import('./index-CBHfkQNY.mjs')],
36
+ ["gemini/runGemini", () => import('./runGemini-CtWCVkj5.mjs')],
37
+ ["gemini/utils/config", () => import('./config-CxSsGO1Z.mjs')],
38
+ ["openclaw/runOpenClaw", () => import('./runOpenClaw-BBdjlViJ.mjs')],
39
+ ["persistence", () => import('./persistence-Dogj7JIp.mjs').then(function (n) { return n.G; })],
40
+ // Deferred halves of the runners and clients
41
+ ["api/apiMachine", () => import('./apiMachine-BBNEtjf7.mjs')],
42
+ ["claude/runClaudeDeps", () => import('./runClaudeDeps-D2phXGut.mjs')],
43
+ ["claude/claudeLocal", () => import('./claudeLocal-Ux31hZyC.mjs')],
44
+ ["claude/claudeLocalLauncher", () => import('./claudeLocalLauncher-D06QijMw.mjs')],
45
+ ["claude/sdk", () => import('./index-Db0HIC-k.mjs')],
46
+ ["assistant/bootstrap", () => import('./bootstrap-Ct9Nb4sv.mjs')],
47
+ ["agentHome", () => import('./index-DUByZsKe.mjs')],
48
+ ["ui/ink/RemoteModeDisplay", () => import('./RemoteModeDisplay-D-HewyXg.mjs')],
49
+ // External packages imported on demand
50
+ ["expo-server-sdk", () => import('expo-server-sdk')],
51
+ ["ink", () => import('ink')],
52
+ ["react", () => import('react')]
53
+ ];
54
+
55
+ async function runSelfCheck(modules = LAZY_MODULES) {
56
+ const failures = [];
57
+ for (const [name, load] of modules) {
58
+ try {
59
+ await load();
60
+ } catch (error) {
61
+ failures.push({ name, error: error instanceof Error ? error.message : String(error) });
62
+ }
63
+ }
64
+ return failures;
65
+ }
66
+ async function selfCheckMain(opts = {}) {
67
+ const started = Date.now();
68
+ const failures = await runSelfCheck();
69
+ if (failures.length > 0) {
70
+ for (const failure of failures) {
71
+ console.error(`very-happy: failed to load ${failure.name}: ${failure.error}`);
72
+ }
73
+ return 1;
74
+ }
75
+ if (opts.verbose) console.log(`self-check: ${LAZY_MODULES.length} modules loaded in ${Date.now() - started}ms`);
76
+ console.log(`very-happy version: ${packageJson.version}`);
77
+ return 0;
78
+ }
79
+
80
+ var selfCheck = /*#__PURE__*/Object.freeze({
81
+ __proto__: null,
82
+ runSelfCheck: runSelfCheck,
83
+ selfCheckMain: selfCheckMain
84
+ });
85
+
86
+ export { runSelfCheck, selfCheckMain };
@@ -1,52 +1,52 @@
1
1
  'use strict';
2
2
 
3
- var _package = require('./package-CYDdLA6R.cjs');
3
+ var _package = require('./package-DrY090nZ.cjs');
4
4
 
5
5
  const LAZY_MODULES = [
6
6
  // Entry
7
- ["main", () => Promise.resolve().then(function () { return require('./main-ndpVIaSG.cjs'); })],
7
+ ["main", () => Promise.resolve().then(function () { return require('./main-DLOXykOR.cjs'); })],
8
8
  ["selfCheck", () => Promise.resolve().then(function () { return selfCheck; })],
9
9
  // Subcommands (main.ts)
10
- ["api/api", () => Promise.resolve().then(function () { return require('./api-BDuuyys8.cjs'); }).then(function (n) { return n.api; })],
10
+ ["api/api", () => Promise.resolve().then(function () { return require('./api-CXL6jp-p.cjs'); }).then(function (n) { return n.api; })],
11
11
  ["claude/claudeCliPath", () => Promise.resolve().then(function () { return require('./claudeCliPath-GaP3UUz1.cjs'); })],
12
- ["claude/runClaude", () => Promise.resolve().then(function () { return require('./runClaude-ClQQcgoO.cjs'); })],
13
- ["commands/agentHome", () => Promise.resolve().then(function () { return require('./agentHome-W17n1gnH.cjs'); })],
14
- ["commands/auth", () => Promise.resolve().then(function () { return require('./auth-B7tVmyfX.cjs'); })],
15
- ["commands/auto", () => Promise.resolve().then(function () { return require('./auto-CetlumDo.cjs'); })],
16
- ["commands/codexCommand", () => Promise.resolve().then(function () { return require('./codexCommand-BfoRP6E9.cjs'); })],
17
- ["commands/connect", () => Promise.resolve().then(function () { return require('./connect-DSw-2f52.cjs'); })],
12
+ ["claude/runClaude", () => Promise.resolve().then(function () { return require('./runClaude-DM8gm8iu.cjs'); })],
13
+ ["commands/agentHome", () => Promise.resolve().then(function () { return require('./agentHome-fIUqT-pn.cjs'); })],
14
+ ["commands/auth", () => Promise.resolve().then(function () { return require('./auth-DKa4MsAi.cjs'); })],
15
+ ["commands/auto", () => Promise.resolve().then(function () { return require('./auto-C9Qohh0P.cjs'); })],
16
+ ["commands/codexCommand", () => Promise.resolve().then(function () { return require('./codexCommand-39kH99SJ.cjs'); })],
17
+ ["commands/connect", () => Promise.resolve().then(function () { return require('./connect-NPDzIVC6.cjs'); })],
18
18
  ["commands/installPiTools", () => Promise.resolve().then(function () { return require('./installPiTools-CL_axh_6.cjs'); })],
19
19
  ["commands/installTerminalHooks", () => Promise.resolve().then(function () { return require('./installTerminalHooks-BETLKAtd.cjs'); })],
20
- ["commands/mcp", () => Promise.resolve().then(function () { return require('./mcp-Bc4U4exu.cjs'); })],
21
- ["commands/panels", () => Promise.resolve().then(function () { return require('./panels-C2xZ8rqU.cjs'); })],
22
- ["commands/piTerminal", () => Promise.resolve().then(function () { return require('./piTerminal-MtxDtBE2.cjs'); })],
23
- ["commands/sandbox", () => Promise.resolve().then(function () { return require('./sandbox-BY2h19gc.cjs'); })],
24
- ["commands/send", () => Promise.resolve().then(function () { return require('./send-BMsUYU6g.cjs'); })],
25
- ["commands/server", () => Promise.resolve().then(function () { return require('./server-YrHMHNz1.cjs'); })],
26
- ["commands/sessions", () => Promise.resolve().then(function () { return require('./sessions-aIo_HjmY.cjs'); })],
27
- ["commands/sessionProvider", () => Promise.resolve().then(function () { return require('./sessionProvider-ORgzmkXy.cjs'); })],
28
- ["commands/spawn", () => Promise.resolve().then(function () { return require('./spawn-VG-HjJiR.cjs'); })],
29
- ["commands/teams", () => Promise.resolve().then(function () { return require('./teams-DPvfLAk8.cjs'); })],
30
- ["commands/todo", () => Promise.resolve().then(function () { return require('./todo-CKGrSrRE.cjs'); })],
20
+ ["commands/mcp", () => Promise.resolve().then(function () { return require('./mcp-Du0MgR7e.cjs'); })],
21
+ ["commands/panels", () => Promise.resolve().then(function () { return require('./panels-4DRBKHZP.cjs'); })],
22
+ ["commands/piTerminal", () => Promise.resolve().then(function () { return require('./piTerminal-C3j1ca3x.cjs'); })],
23
+ ["commands/sandbox", () => Promise.resolve().then(function () { return require('./sandbox-Bb5IMun3.cjs'); })],
24
+ ["commands/send", () => Promise.resolve().then(function () { return require('./send-BpiXPkDo.cjs'); })],
25
+ ["commands/server", () => Promise.resolve().then(function () { return require('./server-DHUzjApC.cjs'); })],
26
+ ["commands/sessions", () => Promise.resolve().then(function () { return require('./sessions-CKJPWFgu.cjs'); })],
27
+ ["commands/sessionProvider", () => Promise.resolve().then(function () { return require('./sessionProvider-VFbtUmMR.cjs'); })],
28
+ ["commands/spawn", () => Promise.resolve().then(function () { return require('./spawn-CgSJzzWS.cjs'); })],
29
+ ["commands/teams", () => Promise.resolve().then(function () { return require('./teams-ecFay4Gn.cjs'); })],
30
+ ["commands/todo", () => Promise.resolve().then(function () { return require('./todo-B1VeMk5A.cjs'); })],
31
31
  ["daemon/doctor", () => Promise.resolve().then(function () { return require('./doctor-u46qYYKX.cjs'); })],
32
- ["daemon/install", () => Promise.resolve().then(function () { return require('./install-DNbIEJUk.cjs'); })],
33
- ["daemon/run", () => Promise.resolve().then(function () { return require('./run-Ca8BiNCp.cjs'); })],
34
- ["daemon/uninstall", () => Promise.resolve().then(function () { return require('./uninstall-BdFbTXnL.cjs'); })],
35
- ["resume/handleResumeCommand", () => Promise.resolve().then(function () { return require('./handleResumeCommand-CMUTygsm.cjs'); })],
36
- ["ui/doctor", () => Promise.resolve().then(function () { return require('./doctor-wVNvRarN.cjs'); }).then(function (n) { return n.doctor; })],
37
- ["agent/acp", () => Promise.resolve().then(function () { return require('./index-CnzsOD19.cjs'); })],
38
- ["gemini/runGemini", () => Promise.resolve().then(function () { return require('./runGemini-Cj0XsMiM.cjs'); })],
39
- ["gemini/utils/config", () => Promise.resolve().then(function () { return require('./config-BGFqQGvh.cjs'); })],
40
- ["openclaw/runOpenClaw", () => Promise.resolve().then(function () { return require('./runOpenClaw-BoN1e3lP.cjs'); })],
41
- ["persistence", () => Promise.resolve().then(function () { return require('./persistence-CrzC7yr_.cjs'); }).then(function (n) { return n.persistence; })],
32
+ ["daemon/install", () => Promise.resolve().then(function () { return require('./install-CXIL_FYx.cjs'); })],
33
+ ["daemon/run", () => Promise.resolve().then(function () { return require('./run-rPqQwDi_.cjs'); })],
34
+ ["daemon/uninstall", () => Promise.resolve().then(function () { return require('./uninstall-CvIOpwB5.cjs'); })],
35
+ ["resume/handleResumeCommand", () => Promise.resolve().then(function () { return require('./handleResumeCommand-DXOuWr4p.cjs'); })],
36
+ ["ui/doctor", () => Promise.resolve().then(function () { return require('./doctor-B9lW1WlG.cjs'); }).then(function (n) { return n.doctor; })],
37
+ ["agent/acp", () => Promise.resolve().then(function () { return require('./index-f8oDidjV.cjs'); })],
38
+ ["gemini/runGemini", () => Promise.resolve().then(function () { return require('./runGemini-CXTeSOZp.cjs'); })],
39
+ ["gemini/utils/config", () => Promise.resolve().then(function () { return require('./config-CeIzCsfj.cjs'); })],
40
+ ["openclaw/runOpenClaw", () => Promise.resolve().then(function () { return require('./runOpenClaw-CH_9_RyZ.cjs'); })],
41
+ ["persistence", () => Promise.resolve().then(function () { return require('./persistence-Bl5S3TLB.cjs'); }).then(function (n) { return n.persistence; })],
42
42
  // Deferred halves of the runners and clients
43
- ["api/apiMachine", () => Promise.resolve().then(function () { return require('./apiMachine-iddD-F19.cjs'); })],
44
- ["claude/runClaudeDeps", () => Promise.resolve().then(function () { return require('./runClaudeDeps-ck5_GYlP.cjs'); })],
45
- ["claude/claudeLocal", () => Promise.resolve().then(function () { return require('./claudeLocal-2dJIiTIq.cjs'); })],
46
- ["claude/claudeLocalLauncher", () => Promise.resolve().then(function () { return require('./claudeLocalLauncher-Jm5oQX5Z.cjs'); })],
47
- ["claude/sdk", () => Promise.resolve().then(function () { return require('./index-B81qV_F_.cjs'); })],
48
- ["assistant/bootstrap", () => Promise.resolve().then(function () { return require('./bootstrap-CDY-Vz8q.cjs'); })],
49
- ["agentHome", () => Promise.resolve().then(function () { return require('./index-De02DNu5.cjs'); })],
43
+ ["api/apiMachine", () => Promise.resolve().then(function () { return require('./apiMachine-C6UqHoPF.cjs'); })],
44
+ ["claude/runClaudeDeps", () => Promise.resolve().then(function () { return require('./runClaudeDeps-DGAomimZ.cjs'); })],
45
+ ["claude/claudeLocal", () => Promise.resolve().then(function () { return require('./claudeLocal-B6YDYlnY.cjs'); })],
46
+ ["claude/claudeLocalLauncher", () => Promise.resolve().then(function () { return require('./claudeLocalLauncher-DFvmF8rC.cjs'); })],
47
+ ["claude/sdk", () => Promise.resolve().then(function () { return require('./index-DXSIi6j_.cjs'); })],
48
+ ["assistant/bootstrap", () => Promise.resolve().then(function () { return require('./bootstrap-DBJB0y-H.cjs'); })],
49
+ ["agentHome", () => Promise.resolve().then(function () { return require('./index-Bs5FD8JF.cjs'); })],
50
50
  ["ui/ink/RemoteModeDisplay", () => Promise.resolve().then(function () { return require('./RemoteModeDisplay-NC1gPHtj.cjs'); })],
51
51
  // External packages imported on demand
52
52
  ["expo-server-sdk", () => import('expo-server-sdk')],
@@ -1,22 +1,22 @@
1
1
  import chalk from 'chalk';
2
2
  import { readFileSync } from 'node:fs';
3
3
  import { resolve } from 'node:path';
4
- import { c as readPersistedSessions } from './persistence-0INrP3aB.mjs';
5
- import { s as sessionWebUrl } from './sessionOps-CljctDs5.mjs';
6
- import { d as deliverToSession, s as sendRemoteMessage } from './remoteSessionClient-Vfj_5g2-.mjs';
4
+ import { c as readPersistedSessions } from './persistence-Dogj7JIp.mjs';
5
+ import { s as sessionWebUrl } from './sessionOps-CA2kpm66.mjs';
6
+ import { d as deliverToSession, s as sendRemoteMessage } from './remoteSessionClient-BiC2KDew.mjs';
7
7
  import 'node:fs/promises';
8
- import './configuration-1FabKklB.mjs';
8
+ import './configuration-Dechcvd-.mjs';
9
9
  import 'node:os';
10
- import './package-DTcaIhjW.mjs';
10
+ import './package-C6uiXULx.mjs';
11
11
  import 'zod';
12
12
  import './authRelay-DhQhkBvX.mjs';
13
13
  import 'node:crypto';
14
14
  import 'tweetnacl';
15
- import './logger-DOKH3Zbh.mjs';
15
+ import './logger-CL7pin9b.mjs';
16
16
  import 'node:util';
17
17
  import 'axios';
18
- import './controlClient-DwNnNAUx.mjs';
19
- import './time-CUK37wiV.mjs';
18
+ import './controlClient-D7NGfmtq.mjs';
19
+ import './time-CN3TuSVG.mjs';
20
20
  import './specialCommands-MXUN0wfI.mjs';
21
21
  import 'socket.io-client';
22
22
  import './backgroundTaskActivity-8PdPxrvy.mjs';
@@ -3,22 +3,22 @@
3
3
  var chalk = require('chalk');
4
4
  var node_fs = require('node:fs');
5
5
  var path = require('node:path');
6
- var persistence = require('./persistence-CrzC7yr_.cjs');
7
- var sessionOps = require('./sessionOps-BzeOKIEF.cjs');
8
- var remoteSessionClient = require('./remoteSessionClient-Dq8XTLQP.cjs');
6
+ var persistence = require('./persistence-Bl5S3TLB.cjs');
7
+ var sessionOps = require('./sessionOps-DeWVqpe4.cjs');
8
+ var remoteSessionClient = require('./remoteSessionClient-DGFI__5Z.cjs');
9
9
  require('node:fs/promises');
10
- require('./configuration-C0ctLGW2.cjs');
10
+ require('./configuration-Dt5lKW3P.cjs');
11
11
  require('node:os');
12
- require('./package-CYDdLA6R.cjs');
12
+ require('./package-DrY090nZ.cjs');
13
13
  require('zod');
14
14
  require('./authRelay-Dy1qU9td.cjs');
15
15
  require('node:crypto');
16
16
  require('tweetnacl');
17
- require('./logger-BP1SW7Cs.cjs');
17
+ require('./logger-BBRTTVsQ.cjs');
18
18
  require('node:util');
19
19
  require('axios');
20
- require('./controlClient-F7hAEEy2.cjs');
21
- require('./time-XwEZxKGc.cjs');
20
+ require('./controlClient-BRk65BRO.cjs');
21
+ require('./time-gPD_EmA-.cjs');
22
22
  require('./specialCommands-J3JFOq0J.cjs');
23
23
  require('socket.io-client');
24
24
  require('./backgroundTaskActivity-CBvUdj39.cjs');
@@ -6,15 +6,15 @@ import { createRequire } from 'node:module';
6
6
  import { randomBytes } from 'node:crypto';
7
7
  import { spawn } from 'node:child_process';
8
8
  import { createInterface } from 'node:readline/promises';
9
- import { c as configuration } from './configuration-1FabKklB.mjs';
10
- import { u as updateSettings } from './persistence-0INrP3aB.mjs';
9
+ import { c as configuration } from './configuration-Dechcvd-.mjs';
10
+ import { u as updateSettings } from './persistence-Dogj7JIp.mjs';
11
11
  import 'node:os';
12
- import './package-DTcaIhjW.mjs';
12
+ import './package-C6uiXULx.mjs';
13
13
  import 'node:fs/promises';
14
14
  import 'zod';
15
15
  import './authRelay-DhQhkBvX.mjs';
16
16
  import 'tweetnacl';
17
- import './logger-DOKH3Zbh.mjs';
17
+ import './logger-CL7pin9b.mjs';
18
18
  import 'node:util';
19
19
 
20
20
  function resolveLocalSignupBootstrap(configuredMode, configuredInviteCodes, generatedInviteCode) {
@@ -8,15 +8,15 @@ var module$1 = require('node:module');
8
8
  var node_crypto = require('node:crypto');
9
9
  var node_child_process = require('node:child_process');
10
10
  var promises = require('node:readline/promises');
11
- var configuration = require('./configuration-C0ctLGW2.cjs');
12
- var persistence = require('./persistence-CrzC7yr_.cjs');
11
+ var configuration = require('./configuration-Dt5lKW3P.cjs');
12
+ var persistence = require('./persistence-Bl5S3TLB.cjs');
13
13
  require('node:os');
14
- require('./package-CYDdLA6R.cjs');
14
+ require('./package-DrY090nZ.cjs');
15
15
  require('node:fs/promises');
16
16
  require('zod');
17
17
  require('./authRelay-Dy1qU9td.cjs');
18
18
  require('tweetnacl');
19
- require('./logger-BP1SW7Cs.cjs');
19
+ require('./logger-BBRTTVsQ.cjs');
20
20
  require('node:util');
21
21
 
22
22
  var _documentCurrentScript = typeof document !== 'undefined' ? document.currentScript : null;
@@ -33,9 +33,9 @@ function resolveLocalSignupBootstrap(configuredMode, configuredInviteCodes, gene
33
33
  };
34
34
  }
35
35
 
36
- const __filename$1 = node_url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('server-YrHMHNz1.cjs', document.baseURI).href)));
36
+ const __filename$1 = node_url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('server-DHUzjApC.cjs', document.baseURI).href)));
37
37
  const __dirname$1 = path.dirname(__filename$1);
38
- const require_ = module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('server-YrHMHNz1.cjs', document.baseURI).href)));
38
+ const require_ = module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('server-DHUzjApC.cjs', document.baseURI).href)));
39
39
  const PRISMA_QUERY_ENGINE_FILES = {
40
40
  "arm64-darwin": "libquery_engine-darwin-arm64.dylib.node",
41
41
  "x64-darwin": "libquery_engine-darwin.dylib.node",
@@ -1,10 +1,11 @@
1
1
  'use strict';
2
2
 
3
- var persistence = require('./persistence-CrzC7yr_.cjs');
3
+ var persistence = require('./persistence-Bl5S3TLB.cjs');
4
+ var cliUpdate = require('./cliUpdate-DsKXPFYp.cjs');
4
5
  var node_fs = require('node:fs');
5
6
  var path = require('node:path');
6
- var configuration = require('./configuration-C0ctLGW2.cjs');
7
- var logger = require('./logger-BP1SW7Cs.cjs');
7
+ var configuration = require('./configuration-Dt5lKW3P.cjs');
8
+ var logger = require('./logger-BBRTTVsQ.cjs');
8
9
  var processTreeSnapshot = require('./processTreeSnapshot-mDbnuojn.cjs');
9
10
 
10
11
  const PROCESS_IDENTITY_FIELDS = [
@@ -83,6 +84,122 @@ function applyReconnectReplay(response) {
83
84
  return { response: { ...response, seq: cursor.seq }, replay: { source: "offline-exit", seq: cursor.seq } };
84
85
  }
85
86
 
87
+ const AUTO_RESTART_CAPABILITY = "auto-restart-v1";
88
+ const AUTO_RESTART_QUIET_MS = 10 * 60 * 1e3;
89
+ const AUTO_RESTART_RECHECK_CAP_MS = 10 * 60 * 1e3;
90
+ function resolveQuietMs(env = process.env) {
91
+ const raw = env.HAPPY_AUTO_RESTART_QUIET_MS;
92
+ if (raw !== void 0 && raw.trim() !== "") {
93
+ const value = Number(raw);
94
+ if (Number.isFinite(value) && value >= 0) return Math.round(value);
95
+ }
96
+ return AUTO_RESTART_QUIET_MS;
97
+ }
98
+ const AUTO_RESTART_MAX_CONCURRENT = 1;
99
+ const AUTO_RESTART_MIN_GAP_MS = 15e3;
100
+ const AUTO_RESTART_MAX_ATTEMPTS = 2;
101
+ const AUTO_RESTART_BACKOFF_MS = 10 * 60 * 1e3;
102
+ const AUTO_RESTART_MIN_CHECK_MS = 15e3;
103
+ const AUTO_RESTART_FLAVORS = ["claude", "codex", "acp"];
104
+ function wrapperStaleness(input) {
105
+ const wrapper = input.wrapperVersion?.trim();
106
+ if (wrapper) {
107
+ const cmp = cliUpdate.compareExactVersions(wrapper, input.daemonVersion);
108
+ if (cmp !== null && cmp < 0) return { kind: "cli", from: wrapper, target: input.daemonVersion };
109
+ }
110
+ const running = input.agentVersion?.trim();
111
+ const installed = input.installedAgentVersion?.trim();
112
+ if (running && installed) {
113
+ const cmp = cliUpdate.compareExactVersions(running, installed);
114
+ if (cmp !== null && cmp < 0) return { kind: "agent", from: running, target: installed };
115
+ }
116
+ return null;
117
+ }
118
+ function decideAutoRestart(input) {
119
+ const { report } = input;
120
+ if (!input.enabled) return { ok: false, reason: "disabled" };
121
+ if (!input.staleness) return { ok: false, reason: "not-stale" };
122
+ if (!input.trackedLive) return { ok: false, reason: "not-tracked" };
123
+ if (report.exiting) return { ok: false, reason: "exiting" };
124
+ if (!report.uiSession) return { ok: false, reason: "local-terminal" };
125
+ if (report.variant) return { ok: false, reason: "assistant" };
126
+ if (!AUTO_RESTART_FLAVORS.includes(report.flavor)) return { ok: false, reason: "unsupported-flavor" };
127
+ if (!input.resumable) return { ok: false, reason: "not-resumable" };
128
+ if (report.thinking || input.turnActive) return { ok: false, reason: "turn-active" };
129
+ if (report.pendingRequests > 0) return { ok: false, reason: "pending-request" };
130
+ if (report.queuedInputs > 0 || !report.waitingForInput) return { ok: false, reason: "queued-input" };
131
+ if (report.backgroundTasks > 0 || input.backgroundTasks > 0) return { ok: false, reason: "background-tasks" };
132
+ if ((report.scheduledWakeups ?? 0) > 0) return { ok: false, reason: "scheduled-wakeup" };
133
+ if (!(input.now - report.lastActivityAt >= (input.quietMs ?? AUTO_RESTART_QUIET_MS))) return { ok: false, reason: "recent-activity" };
134
+ if (input.automationRunning) return { ok: false, reason: "automation-running" };
135
+ const attempt = input.attempt && input.attempt.target === input.staleness.target ? input.attempt : null;
136
+ if (attempt && attempt.attempts >= AUTO_RESTART_MAX_ATTEMPTS) return { ok: false, reason: "gave-up" };
137
+ if (attempt && input.now < attempt.notBefore) return { ok: false, reason: "backoff" };
138
+ if (input.inFlight >= AUTO_RESTART_MAX_CONCURRENT) return { ok: false, reason: "machine-busy" };
139
+ if (input.lastStartedAt !== null && input.now - input.lastStartedAt < AUTO_RESTART_MIN_GAP_MS) return { ok: false, reason: "machine-busy" };
140
+ return { ok: true };
141
+ }
142
+ function autoRestartNextCheck(verdict, input, jitter = 0) {
143
+ if (verdict.ok) return null;
144
+ switch (verdict.reason) {
145
+ case "recent-activity":
146
+ return Math.max(AUTO_RESTART_MIN_CHECK_MS, input.report.lastActivityAt + (input.quietMs ?? AUTO_RESTART_QUIET_MS) - input.now);
147
+ case "machine-busy":
148
+ return AUTO_RESTART_MIN_GAP_MS + Math.round(Math.min(Math.max(jitter, 0), 0.999) * 2 * AUTO_RESTART_MIN_GAP_MS);
149
+ case "backoff":
150
+ return Math.max(AUTO_RESTART_MIN_CHECK_MS, (input.attempt?.notBefore ?? input.now) - input.now);
151
+ default:
152
+ return null;
153
+ }
154
+ }
155
+ function recordAttempt(previous, target, ok, now, error) {
156
+ if (ok) return null;
157
+ const attempts = (previous && previous.target === target ? previous.attempts : 0) + 1;
158
+ return { target, attempts, notBefore: now + AUTO_RESTART_BACKOFF_MS * attempts, ...error ? { lastError: error } : {} };
159
+ }
160
+ const MANUAL_REASONS = /* @__PURE__ */ new Set(["local-terminal", "assistant", "unsupported-flavor", "not-resumable"]);
161
+ function statusFromVerdict(verdict, previous, staleness, now, attempt) {
162
+ if (verdict.ok) return null;
163
+ if (verdict.reason === "disabled" || verdict.reason === "not-stale" || verdict.reason === "not-tracked") return null;
164
+ const since = previous && previous.target === staleness.target ? previous.since : now;
165
+ if (verdict.reason === "gave-up") {
166
+ return { state: "failed", reason: attempt?.lastError ?? "gave-up", since, target: staleness.target };
167
+ }
168
+ return {
169
+ state: MANUAL_REASONS.has(verdict.reason) ? "manual" : "waiting",
170
+ reason: verdict.reason,
171
+ since,
172
+ target: staleness.target
173
+ };
174
+ }
175
+ function wrapperReportsIdle(input) {
176
+ const caps = input.capabilities ?? [];
177
+ if (input.variant) return false;
178
+ if (caps.includes(AUTO_RESTART_CAPABILITY)) return true;
179
+ if (!caps.includes("agent-hibernation-v1")) return false;
180
+ if (input.flavor !== "claude" && input.flavor !== "codex") return false;
181
+ if (input.spawnedBy && input.spawnedBy.trim()) return false;
182
+ return !(input.tags ?? []).some((tag) => tag === "teams" || tag === "automation" || tag === "assistant");
183
+ }
184
+ const AUTO_UPDATED_EVENT_KIND = "session-auto-updated";
185
+ const AUTO_RESTARTED_ENV = "HAPPY_AUTO_RESTARTED";
186
+ function encodeAutoRestarted(kind, target) {
187
+ return `${kind}:${target}`;
188
+ }
189
+ function decodeAutoRestarted(raw) {
190
+ const match = /^(cli|agent):(\S{1,64})$/.exec(raw?.trim() ?? "");
191
+ return match ? { kind: match[1], target: match[2] } : null;
192
+ }
193
+ function autoUpdatedEventText(kind, version, agentName = "Codex") {
194
+ return kind === "agent" ? `Updated ${agentName} to ${version} (session restarted in place, history kept)` : `Updated to Very Happy ${version} (session restarted in place, history kept)`;
195
+ }
196
+ function takeAutoRestartedEvent(env, agentName) {
197
+ const decoded = decodeAutoRestarted(env[AUTO_RESTARTED_ENV]);
198
+ delete env[AUTO_RESTARTED_ENV];
199
+ if (!decoded) return null;
200
+ return { type: "message", kind: AUTO_UPDATED_EVENT_KIND, message: autoUpdatedEventText(decoded.kind, decoded.target, agentName) };
201
+ }
202
+
86
203
  const runtime = {
87
204
  signal: (pid, signal) => process.kill(pid, signal),
88
205
  isAlive: (pid) => {
@@ -235,13 +352,27 @@ async function claimSessionOrExit(happySessionId, options) {
235
352
  process.on("exit", () => releaseSessionLock(happySessionId));
236
353
  }
237
354
 
355
+ exports.AUTO_RESTARTED_ENV = AUTO_RESTARTED_ENV;
356
+ exports.AUTO_RESTART_CAPABILITY = AUTO_RESTART_CAPABILITY;
357
+ exports.AUTO_RESTART_MAX_ATTEMPTS = AUTO_RESTART_MAX_ATTEMPTS;
358
+ exports.AUTO_RESTART_MIN_GAP_MS = AUTO_RESTART_MIN_GAP_MS;
359
+ exports.AUTO_RESTART_RECHECK_CAP_MS = AUTO_RESTART_RECHECK_CAP_MS;
238
360
  exports.applyReconnectReplay = applyReconnectReplay;
239
361
  exports.applyServerSnapshot = applyServerSnapshot;
362
+ exports.autoRestartNextCheck = autoRestartNextCheck;
240
363
  exports.claimSessionOrExit = claimSessionOrExit;
364
+ exports.decideAutoRestart = decideAutoRestart;
365
+ exports.encodeAutoRestarted = encodeAutoRestarted;
241
366
  exports.exitCursorStamp = exitCursorStamp;
242
367
  exports.mergeReconnectMetadata = mergeReconnectMetadata;
243
368
  exports.processIdentityFields = processIdentityFields;
244
369
  exports.readSessionLock = readSessionLock;
370
+ exports.recordAttempt = recordAttempt;
371
+ exports.resolveQuietMs = resolveQuietMs;
372
+ exports.statusFromVerdict = statusFromVerdict;
373
+ exports.takeAutoRestartedEvent = takeAutoRestartedEvent;
245
374
  exports.terminateProcess = terminateProcess;
246
375
  exports.terminateProcessTree = terminateProcessTree;
247
376
  exports.withoutServerSnapshot = withoutServerSnapshot;
377
+ exports.wrapperReportsIdle = wrapperReportsIdle;
378
+ exports.wrapperStaleness = wrapperStaleness;