very-happy-cli 0.2.179 → 0.2.181

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 (214) hide show
  1. package/dist/{AcpBackend-DFipFF7-.cjs → AcpBackend-CgHb_ya5.cjs} +3 -3
  2. package/dist/{AcpBackend-CHp3y7cb.mjs → AcpBackend-DZGCSuXF.mjs} +3 -3
  3. package/dist/{AcpSessionManager-0zpvRJXc.cjs → AcpSessionManager-CacC2EVn.cjs} +1 -1
  4. package/dist/{AcpSessionManager-d2-rKWWa.mjs → AcpSessionManager-DwuPzWBh.mjs} +1 -1
  5. package/dist/{BasePermissionHandler-CH3zuEkA.cjs → BasePermissionHandler-DCP8ZEB4.cjs} +1 -1
  6. package/dist/{BasePermissionHandler-DdZBYIR4.mjs → BasePermissionHandler-Uo-GUjbb.mjs} +1 -1
  7. package/dist/{acpSessionResume-DTGmAPLt.mjs → acpSessionResume-9OLTD6kT.mjs} +1 -1
  8. package/dist/{acpSessionResume-oiCBnAVA.cjs → acpSessionResume-BaVMD80f.cjs} +1 -1
  9. package/dist/{agentHome-CghLvL_1.mjs → agentHome-B1BsKeqD.mjs} +4 -4
  10. package/dist/{agentHome-BWcz8mz0.cjs → agentHome-BtUmGcPX.cjs} +4 -4
  11. package/dist/{api-Cmjfr8Z7.cjs → api-COHFAkb_.cjs} +20 -12
  12. package/dist/{api-CzwFpJQc.mjs → api-Dr3wXL_7.mjs} +21 -13
  13. package/dist/{apiMachine-DJkTEiqy.mjs → apiMachine-CHEzPQdS.mjs} +73 -32
  14. package/dist/{apiMachine-G6OogT08.cjs → apiMachine-D8H7CXaz.cjs} +75 -34
  15. package/dist/{attachmentContent-B2os4HbA.mjs → attachmentContent-1YwtKgWl.mjs} +2 -2
  16. package/dist/{attachmentContent-Bo0UAsSu.cjs → attachmentContent-mIhbtRKl.cjs} +2 -2
  17. package/dist/{auth-DMX0xPNK.mjs → auth-CbZkcMAb.mjs} +8 -8
  18. package/dist/{auth-D6bBUwZa.cjs → auth-CgQP7d0q.cjs} +5 -5
  19. package/dist/{auth-BS6PaOOG.mjs → auth-DZsthtSk.mjs} +5 -5
  20. package/dist/{auth-HEhRaNgL.cjs → auth-Fg8fLadK.cjs} +8 -8
  21. package/dist/{auto-C6I55iOh.cjs → auto-BB7kqSh5.cjs} +19 -19
  22. package/dist/{auto-Cl1SEDcD.mjs → auto-_T-Ud-z5.mjs} +19 -19
  23. package/dist/{backgroundTaskActivity-BVwJBl02.mjs → backgroundTaskActivity-8PdPxrvy.mjs} +1 -1
  24. package/dist/{bootstrap-iuyufnp3.mjs → bootstrap-B6EkZh4u.mjs} +2 -2
  25. package/dist/{bootstrap-exVucYav.cjs → bootstrap-CYtOtbi7.cjs} +2 -2
  26. package/dist/{browser-CSYum7xH.mjs → browser-C2qhUHSE.mjs} +1 -1
  27. package/dist/{browser-BohJK12g.cjs → browser-DjNNQQk2.cjs} +1 -1
  28. package/dist/{claudeCliPath-U4HHmV4r.cjs → claudeCliPath-GaP3UUz1.cjs} +1 -1
  29. package/dist/{claudeLocal-Dq_R3Ax_.mjs → claudeLocal-BAFjWhZ8.mjs} +6 -6
  30. package/dist/{claudeLocal-re4yjSTx.cjs → claudeLocal-O_w7-fBh.cjs} +8 -8
  31. package/dist/{claudeLocalLauncher-CN67lN7-.mjs → claudeLocalLauncher-CWn30LZR.mjs} +11 -11
  32. package/dist/{claudeLocalLauncher-B4hJHpCA.cjs → claudeLocalLauncher-Df3zg1q0.cjs} +13 -13
  33. package/dist/{claudeSessionFork-BihfD0Ik.mjs → claudeSessionFork-2ZkSTOGn.mjs} +1 -1
  34. package/dist/{claudeSessionFork-DiSMYerV.cjs → claudeSessionFork-pwcKqB-e.cjs} +1 -1
  35. package/dist/{client-BhoEBnuN.mjs → client-BKyU66lg.mjs} +2 -2
  36. package/dist/{client-BKcK1Bi-.cjs → client-CUO3ItoB.cjs} +34 -8
  37. package/dist/{client-wo9nbxuf.mjs → client-CXOnzuOy.mjs} +2 -2
  38. package/dist/{client-ZjOsn6nZ.cjs → client-DWs6k041.cjs} +2 -2
  39. package/dist/{client-CuVdN6PP.cjs → client-D_U2VjO3.cjs} +2 -2
  40. package/dist/{client-DuTDwWSQ.mjs → client-DsQcxVUV.mjs} +34 -9
  41. package/dist/codex/happyMcpStdioBridge.cjs +17 -17
  42. package/dist/codex/happyMcpStdioBridge.mjs +18 -18
  43. package/dist/{codexAppServerClient-Dt5zxrun.cjs → codexAppServerClient-BRX3JZ_5.cjs} +3 -3
  44. package/dist/{codexAppServerClient-BK3zra_1.mjs → codexAppServerClient-C3JO3pwM.mjs} +3 -3
  45. package/dist/{codexCommand-B6pY7CMh.mjs → codexCommand-BZIAAqKS.mjs} +59 -51
  46. package/dist/{codexCommand-CAZ1SLjg.cjs → codexCommand-dKOc5iQl.cjs} +85 -77
  47. package/dist/{codexTermination-DmGbHxcD.cjs → codexTermination-BVR9HeVI.cjs} +7 -2
  48. package/dist/{codexTermination-Cd1Eon_4.mjs → codexTermination-ztFkwHrG.mjs} +7 -2
  49. package/dist/{config-2oMG_fEI.mjs → config-NbHjx8ge.mjs} +3 -3
  50. package/dist/{config-B0uK6K7n.cjs → config-cftYxLC7.cjs} +26 -26
  51. package/dist/{configuration-WMi4idBB.mjs → configuration-BPrfb17M.mjs} +1 -1
  52. package/dist/{configuration-CMHZnp6G.cjs → configuration-C8JgseHy.cjs} +1 -1
  53. package/dist/{connect-uaglGrde.cjs → connect-Br8VMrK1.cjs} +27 -27
  54. package/dist/{connect-BLVHhHzA.mjs → connect-CLD1ai0k.mjs} +14 -14
  55. package/dist/{context-DXzU5bFM.cjs → context-D1lgQTJC.cjs} +1 -1
  56. package/dist/{context-DploEcoN.mjs → context-_YGq8xdH.mjs} +1 -1
  57. package/dist/{controlClient-BWUJrj3t.mjs → controlClient-CkNpT5zS.mjs} +4 -4
  58. package/dist/{controlClient-C-5qCt8W.cjs → controlClient-D68Zj7Q-.cjs} +3 -3
  59. package/dist/{createSessionMetadata-3uXrJgOW.mjs → createSessionMetadata-3WAj3_xl.mjs} +2 -2
  60. package/dist/{createSessionMetadata-BkIzHALd.cjs → createSessionMetadata-DNIbKLHg.cjs} +3 -3
  61. package/dist/{defaultPermissionMode-pS3vmiSg.cjs → defaultPermissionMode-BmvjP32v.cjs} +2 -2
  62. package/dist/{defaultPermissionMode-BzxLh20a.mjs → defaultPermissionMode-DXMznl8v.mjs} +2 -2
  63. package/dist/{detectCLI-DR9ZaN6B.cjs → detectCLI-BuYR_Qxe.cjs} +4 -4
  64. package/dist/{deterministicJson-B8z2GPi9.cjs → deterministicJson-BS7D7URE.cjs} +89 -24
  65. package/dist/{deterministicJson-D_whDMFd.mjs → deterministicJson-BcBIKKf1.mjs} +87 -24
  66. package/dist/{doctor-Br1Kcy2J.cjs → doctor-Be7zC0AF.cjs} +10 -9
  67. package/dist/{doctor-CmtSsR2-.mjs → doctor-CoOaPq6w.mjs} +8 -8
  68. package/dist/{doctorReadiness-BCZGcN0a.cjs → doctorReadiness-Dl6yRQCy.cjs} +1 -1
  69. package/dist/{downloadTarget-BoNwTIH_.mjs → downloadTarget-CeaAXdJj.mjs} +6 -6
  70. package/dist/{downloadTarget-BQJK_6oH.cjs → downloadTarget-LyOiucn_.cjs} +6 -6
  71. package/dist/{ensureDaemonRunning-Czo9IHJQ.mjs → ensureDaemonRunning--98j7-17.mjs} +5 -5
  72. package/dist/{ensureDaemonRunning-BRUmsq6J.cjs → ensureDaemonRunning-B8z37VKD.cjs} +6 -6
  73. package/dist/fileStore-5qpetZS0.mjs +146 -0
  74. package/dist/fileStore-7qhnbs6N.cjs +152 -0
  75. package/dist/{handleResumeCommand-tKD_Hpxc.cjs → handleResumeCommand-BFZlrFVH.cjs} +7 -7
  76. package/dist/{handleResumeCommand-C8thKjqf.mjs → handleResumeCommand-gO8I4keP.mjs} +6 -6
  77. package/dist/{index-DMqDMT1Q.cjs → index-B5PXbZjW.cjs} +80 -62
  78. package/dist/{index-D09T1m8Y.cjs → index-BRMq9gOe.cjs} +3 -3
  79. package/dist/{index-B0UjHlAe.cjs → index-BkluinoS.cjs} +4 -4
  80. package/dist/{index-CdQI0C9p.mjs → index-CO0n9ue6.mjs} +4 -4
  81. package/dist/{index-DPOa4NhL.mjs → index-CeRXrGnH.mjs} +41 -6
  82. package/dist/{index-C6O2vVjm.cjs → index-Df2eHm3O.cjs} +42 -6
  83. package/dist/{index-BTxHphpV.mjs → index-DneHoQXf.mjs} +80 -62
  84. package/dist/{index-BiyC7cZ3.mjs → index-WUj3954m.mjs} +4 -4
  85. package/dist/{index-D3bidoG8.mjs → index-hQ8LP1C2.mjs} +3 -3
  86. package/dist/{index-CUuc6iCn.cjs → index-jF2t3ACW.cjs} +4 -4
  87. package/dist/index.cjs +2 -2
  88. package/dist/index.mjs +2 -2
  89. package/dist/{install-BX3lv3NO.mjs → install-D0inLCv-.mjs} +1 -1
  90. package/dist/{install-BXvf2E3o.cjs → install-D2NCbeJ-.cjs} +1 -1
  91. package/dist/{install-hnve_9vq.mjs → install-DkYFiVK4.mjs} +3 -3
  92. package/dist/{install-CYRZxS87.cjs → install-FqkSUjPC.cjs} +7 -7
  93. package/dist/{installPiTools-BKnXjrVu.cjs → installPiTools-CL_axh_6.cjs} +1 -1
  94. package/dist/{installTerminalHooks-BQZbvxsZ.cjs → installTerminalHooks-BETLKAtd.cjs} +3 -3
  95. package/dist/lib.cjs +13 -13
  96. package/dist/lib.d.cts +216 -2
  97. package/dist/lib.d.mts +216 -2
  98. package/dist/lib.mjs +13 -13
  99. package/dist/{lidState-Bb8fgXg3.mjs → lidState-DghbfRbr.mjs} +1 -1
  100. package/dist/{lidState-Dv2wwFTj.cjs → lidState-x8cJ8J_9.cjs} +1 -1
  101. package/dist/{localHappyAgentAuth-DjYvkXvV.cjs → localHappyAgentAuth-DZ2kb9uq.cjs} +1 -1
  102. package/dist/{localHappyAgentAuth-NEU7fax7.mjs → localHappyAgentAuth-IKmeRpuQ.mjs} +1 -1
  103. package/dist/{logger-C1GWx3gi.cjs → logger-DgBwUSgS.cjs} +2 -2
  104. package/dist/{logger-BtVhHnD8.mjs → logger-LFr8iPgl.mjs} +2 -2
  105. package/dist/machineMetadata-BglCsfvf.mjs +75 -0
  106. package/dist/machineMetadata-DB03ez4K.cjs +87 -0
  107. package/dist/{main-CWhSsbtU.cjs → main-YQ-Vkakw.cjs} +99 -132
  108. package/dist/{main-B2LWV8DI.mjs → main-_1LSzlLv.mjs} +93 -126
  109. package/dist/{mcp-CARUsXHV.cjs → mcp-BIY80jSc.cjs} +15 -15
  110. package/dist/{mcp-ext92q3Y.mjs → mcp-Csj-mT5Y.mjs} +15 -15
  111. package/dist/{mirrorProtocol-DEy2g1CB.cjs → mirrorProtocol-BphKIAK9.cjs} +15 -6
  112. package/dist/{mirrorProtocol-BwYibqry.mjs → mirrorProtocol-CAxOMBkb.mjs} +15 -6
  113. package/dist/{package-BPPebGQF.mjs → package-DYGwlmXl.mjs} +9 -8
  114. package/dist/{package-SgqTYsjn.cjs → package-NoD8QOOM.cjs} +9 -8
  115. package/dist/{panels-BZ0_Tt7B.mjs → panels-B8zRm7_d.mjs} +5 -5
  116. package/dist/{panels-D1c7q2dD.cjs → panels-DYEc1NyQ.cjs} +5 -5
  117. package/dist/{peerTools-CWKzcQ7u.mjs → peerTools-CK3JYu1k.mjs} +5 -5
  118. package/dist/{peerTools-DRQETXaz.cjs → peerTools-CP-x-Peu.cjs} +5 -5
  119. package/dist/{persistence-BegE7NPa.cjs → persistence-BY-D00wT.cjs} +2 -2
  120. package/dist/{persistence-Cr-wutZ4.mjs → persistence-D2Djrf7t.mjs} +2 -2
  121. package/dist/pi-CqyoZMjI.mjs +380 -0
  122. package/dist/pi-DlsrPCTa.cjs +400 -0
  123. package/dist/{piRunnerArgs-DwvM_yWA.mjs → piRunnerArgs-IZLoL7TG.mjs} +1 -1
  124. package/dist/{piRunnerArgs-Cs-378Vz.cjs → piRunnerArgs-gxLYIZH4.cjs} +1 -1
  125. package/dist/{piRuntime-Bue5mnlc.mjs → piRuntime-D7Y4oHVL.mjs} +2 -2
  126. package/dist/{piRuntime-BG-1td_n.cjs → piRuntime-o5L8uX-W.cjs} +2 -2
  127. package/dist/{piTerminal-G4z-xVyy.cjs → piTerminal-C_-JDkLN.cjs} +18 -18
  128. package/dist/{piTerminal-B5x9X5yV.mjs → piTerminal-Kphx8Uhw.mjs} +18 -18
  129. package/dist/projectPath-C3ioB4Bu.cjs +13 -0
  130. package/dist/{prompt-lgF9IE82.cjs → prompt-Bof2aQkI.cjs} +7 -2
  131. package/dist/{prompt-BOouDaTM.mjs → prompt-QHuFx9j6.mjs} +7 -2
  132. package/dist/{pushNotifications-DaLQUyi0.cjs → pushNotifications-BXoOSq_G.cjs} +14 -4
  133. package/dist/{pushNotifications-BdFjDjQe.mjs → pushNotifications-DXGIhE-A.mjs} +14 -4
  134. package/dist/{query-DYP_W1wp.mjs → query-CcA6DVZK.mjs} +1 -1
  135. package/dist/{query-Ctfg-5gy.cjs → query-CdCxzuaB.cjs} +1 -1
  136. package/dist/{rateLimitWindows-Dj_8voBK.cjs → rateLimitWindows-OpAmdOtC.cjs} +1 -1
  137. package/dist/{rateLimitWindows-CuEqk_0g.mjs → rateLimitWindows-ZtHZHe-l.mjs} +1 -1
  138. package/dist/{registerCommonHandlers-Cj084Sg7.cjs → registerCommonHandlers-CRjBoJLK.cjs} +30 -30
  139. package/dist/{registerCommonHandlers-BAlP7SGc.mjs → registerCommonHandlers-DF6bdDtd.mjs} +2 -2
  140. package/dist/{registerKillSessionHandler-qMju0ZfF.cjs → registerKillSessionHandler-7fOm6ooh.cjs} +6 -6
  141. package/dist/{registerKillSessionHandler-PD0jWtQo.mjs → registerKillSessionHandler-DDCKL3wf.mjs} +6 -6
  142. package/dist/{remoteSessionClient-Bn2qu5C5.mjs → remoteSessionClient-B2POSKFT.mjs} +5 -5
  143. package/dist/{remoteSessionClient-B7i7MkYV.cjs → remoteSessionClient-CFCn42bs.cjs} +5 -5
  144. package/dist/{reportProgressTool-gHItlSzz.mjs → reportProgressTool-tPxEvh6x.mjs} +4 -4
  145. package/dist/{reportProgressTool-CM1JFAHg.cjs → reportProgressTool-th4trcET.cjs} +4 -4
  146. package/dist/{resources-CvIlkzpP.cjs → resources-BPyN59Iv.cjs} +23 -2
  147. package/dist/{resources-y9jfyO-_.mjs → resources-CH1iP6Cv.mjs} +22 -3
  148. package/dist/{run-CNXwIe0A.cjs → run-C_FumCQk.cjs} +2767 -183
  149. package/dist/{run-BM4TxiyN.mjs → run-cKQBbVi4.mjs} +2762 -178
  150. package/dist/{runClaude-C_3I8hvR.mjs → runClaude-CYnM6krL.mjs} +34 -28
  151. package/dist/{runClaude-CWhj2V4Q.cjs → runClaude-z_2YC_aa.cjs} +35 -29
  152. package/dist/{runClaudeDeps-B81cOKnH.cjs → runClaudeDeps-CLubzWnA.cjs} +59 -122
  153. package/dist/{runClaudeDeps-QGrOeDe2.mjs → runClaudeDeps-duS06Pb4.mjs} +52 -114
  154. package/dist/{runGemini-BEdWEZLR.mjs → runGemini-C_Pc2EhH.mjs} +39 -37
  155. package/dist/{runGemini-CgRLYbt5.cjs → runGemini-vEoXV6qT.cjs} +67 -65
  156. package/dist/{runOpenClaw-C1NVmzOL.cjs → runOpenClaw-CXJCtMgB.cjs} +20 -20
  157. package/dist/{runOpenClaw-DdQZAYj1.mjs → runOpenClaw-Cxun1qLC.mjs} +19 -19
  158. package/dist/{sandbox-nocIjliq.cjs → sandbox-CO46H2tK.cjs} +4 -4
  159. package/dist/{sandbox-DjQUdCMG.mjs → sandbox-CsvPnTmz.mjs} +4 -4
  160. package/dist/{selfCheck-DCt4Uzbq.cjs → selfCheck-DIr7Gc0i.cjs} +39 -39
  161. package/dist/selfCheck-NamtBHVB.mjs +85 -0
  162. package/dist/{send-Ct7X4pPU.mjs → send-DMoFg6F1.mjs} +9 -9
  163. package/dist/{send-Dydf_hwZ.cjs → send-X2mfVEyr.cjs} +8 -8
  164. package/dist/{server-CosABFbd.cjs → server-BwTEdbkr.cjs} +6 -6
  165. package/dist/{server-DTQGZMxh.mjs → server-CkqQ0sRH.mjs} +4 -4
  166. package/dist/sessionExitLifecycle-CzkLIgNZ.mjs +142 -0
  167. package/dist/sessionExitLifecycle-DFltxXU8.cjs +148 -0
  168. package/dist/{sessionLock-DokGab2R.cjs → sessionLock-CdIRJlHH.cjs} +25 -5
  169. package/dist/{sessionLock-WYIyaVO4.mjs → sessionLock-JIfwCqMk.mjs} +24 -5
  170. package/dist/{sessionOps-S-qPBLFf.cjs → sessionOps-DVA-00nR.cjs} +4 -4
  171. package/dist/{sessionOps-BIGgRube.mjs → sessionOps-DqlftXxe.mjs} +5 -5
  172. package/dist/{sessionScanner-o5hnMi5e.mjs → sessionScanner-BI0Vo1xT.mjs} +3 -3
  173. package/dist/{sessionScanner-CIMM2hvZ.cjs → sessionScanner-BMwgGAhY.cjs} +3 -3
  174. package/dist/{sessions-BJHEZpi2.mjs → sessions-D6IimX7b.mjs} +11 -11
  175. package/dist/{sessions-JchI1w3z.cjs → sessions-DjgEcHaT.cjs} +10 -10
  176. package/dist/{setupOfflineReconnection-CNiAt5ZP.cjs → setupOfflineReconnection-CjuCiKY3.cjs} +2 -2
  177. package/dist/{setupOfflineReconnection-DMiBO2y9.mjs → setupOfflineReconnection-DgJK_4m1.mjs} +2 -2
  178. package/dist/{spawn-DgvUNYEo.mjs → spawn-Dvzy-tzc.mjs} +15 -15
  179. package/dist/{spawn-6PD7nnoC.cjs → spawn-rhF28shY.cjs} +15 -15
  180. package/dist/{spawnAgents-P006Hqio.mjs → spawnAgents-CCnlq-FI.mjs} +1 -1
  181. package/dist/{spawnAgents-DsXgegHM.cjs → spawnAgents-iwuqrgR9.cjs} +1 -1
  182. package/dist/{spawnHappyCLI-Dywezwk6.cjs → spawnHappyCLI-DnKmIsEt.cjs} +2 -2
  183. package/dist/{spawnHappyCLI-CCOrEtf9.mjs → spawnHappyCLI-Dq3LLXLb.mjs} +1 -1
  184. package/dist/{specialCommands-DPcd9edP.mjs → specialCommands-CcyZ1hGA.mjs} +3 -3
  185. package/dist/{specialCommands-QxPpkGKf.cjs → specialCommands-Zwr2C6A2.cjs} +3 -3
  186. package/dist/{startFileWatcher-DghDOCO4.mjs → startFileWatcher-4thXDK9d.mjs} +1 -1
  187. package/dist/{startFileWatcher-RECH5qY8.cjs → startFileWatcher-K6hJSyiR.cjs} +1 -1
  188. package/dist/startupSessionCreate-BfByJ16A.mjs +24 -0
  189. package/dist/startupSessionCreate-CKEbq0tL.cjs +26 -0
  190. package/dist/{streamRelay-DlUWKUpo.cjs → streamRelay-Gy8Xfnon.cjs} +1 -1
  191. package/dist/{streamRelay-DMV_TXfS.mjs → streamRelay-LcDvyEjK.mjs} +1 -1
  192. package/dist/{sync-D23jbqVa.cjs → sync-1hQ5KHpL.cjs} +1 -1
  193. package/dist/{sync-CSe0Rf45.mjs → sync-DO-2PU45.mjs} +1 -1
  194. package/dist/{systemPrompt-CFNKnh65.mjs → systemPrompt-BctLfMZs.mjs} +3 -3
  195. package/dist/{systemPrompt-BOy4kU4P.cjs → systemPrompt-Dj7pgkMK.cjs} +3 -3
  196. package/dist/{teams-DyY669f0.mjs → teams-Bu8YeOoF.mjs} +8 -8
  197. package/dist/{teams-Ov2BDT-A.cjs → teams-uQxUlyyz.cjs} +8 -8
  198. package/dist/{time-65DcU6Jx.mjs → time-BcoJaG8E.mjs} +1 -1
  199. package/dist/{time-CrwIMHta.cjs → time-nqa9shu8.cjs} +1 -1
  200. package/dist/{titleGenerator-CS_rh2_J.cjs → titleGenerator-D09XyYYG.cjs} +3 -3
  201. package/dist/{titleGenerator-CiAMxf7s.mjs → titleGenerator-D5r06bhf.mjs} +1 -1
  202. package/dist/{todo-KY-okGii.cjs → todo-CCOnL7pT.cjs} +6 -6
  203. package/dist/{todo-BDONw0sK.mjs → todo-D1q8146q.mjs} +6 -6
  204. package/dist/{tools-D8-PnZEG.mjs → tools-D2E--n1x.mjs} +3 -3
  205. package/dist/{tools-_w52DZG6.cjs → tools-DiCXnAC5.cjs} +3 -3
  206. package/dist/{uninstall-8vnLN-IE.cjs → uninstall-BrNwwwSD.cjs} +6 -6
  207. package/dist/{uninstall-_fjGRP9b.mjs → uninstall-CtwXi1Rt.mjs} +3 -3
  208. package/package.json +9 -8
  209. package/dist/machineMetadata-CLHS9sv_.cjs +0 -42
  210. package/dist/machineMetadata-D-g--oU_.mjs +0 -39
  211. package/dist/messageBuffer-BWlGgR3A.mjs +0 -71
  212. package/dist/messageBuffer-fJMH6uY8.cjs +0 -73
  213. package/dist/projectPath-ChLhdOyt.cjs +0 -13
  214. package/dist/selfCheck-CjCF4C3v.mjs +0 -85
@@ -1,22 +1,22 @@
1
1
  'use strict';
2
2
 
3
3
  var chalk = require('chalk');
4
- var logger = require('./logger-C1GWx3gi.cjs');
5
- var persistence = require('./persistence-BegE7NPa.cjs');
6
- var auth = require('./auth-D6bBUwZa.cjs');
7
- var _package = require('./package-SgqTYsjn.cjs');
4
+ var logger = require('./logger-DgBwUSgS.cjs');
5
+ var persistence = require('./persistence-BY-D00wT.cjs');
6
+ var auth = require('./auth-CgQP7d0q.cjs');
7
+ var _package = require('./package-NoD8QOOM.cjs');
8
8
  var z = require('zod');
9
- var controlClient = require('./controlClient-C-5qCt8W.cjs');
9
+ var controlClient = require('./controlClient-D68Zj7Q-.cjs');
10
10
  var daemonSupervisor = require('./daemonSupervisor-B-SPSqhs.cjs');
11
- var spawnHappyCLI = require('./spawnHappyCLI-Dywezwk6.cjs');
11
+ var spawnHappyCLI = require('./spawnHappyCLI-DnKmIsEt.cjs');
12
12
  var node_child_process = require('node:child_process');
13
- var ensureDaemonRunning = require('./ensureDaemonRunning-BRUmsq6J.cjs');
13
+ var ensureDaemonRunning = require('./ensureDaemonRunning-B8z37VKD.cjs');
14
14
  var startupPlan = require('./startupPlan-BLMbfQIH.cjs');
15
- var index = require('./index-D09T1m8Y.cjs');
16
- var configuration = require('./configuration-CMHZnp6G.cjs');
17
- var doctorReadiness = require('./doctorReadiness-BCZGcN0a.cjs');
18
- var piRunnerArgs = require('./piRunnerArgs-Cs-378Vz.cjs');
19
- var detectCLI = require('./detectCLI-DR9ZaN6B.cjs');
15
+ var index = require('./index-BRMq9gOe.cjs');
16
+ var configuration = require('./configuration-C8JgseHy.cjs');
17
+ var doctorReadiness = require('./doctorReadiness-Dl6yRQCy.cjs');
18
+ var piRunnerArgs = require('./piRunnerArgs-gxLYIZH4.cjs');
19
+ var detectCLI = require('./detectCLI-BuYR_Qxe.cjs');
20
20
  require('node:util');
21
21
  require('node:fs');
22
22
  require('node:path');
@@ -25,16 +25,16 @@ require('./authRelay-Dy1qU9td.cjs');
25
25
  require('node:crypto');
26
26
  require('tweetnacl');
27
27
  require('axios');
28
- require('./time-CrwIMHta.cjs');
29
- require('./browser-BohJK12g.cjs');
28
+ require('./time-nqa9shu8.cjs');
29
+ require('./browser-DjNNQQk2.cjs');
30
30
  require('open');
31
31
  require('cross-spawn');
32
- require('./projectPath-ChLhdOyt.cjs');
32
+ require('./projectPath-C3ioB4Bu.cjs');
33
33
  require('path');
34
34
  require('url');
35
35
  require('node:module');
36
36
  require('node:os');
37
- require('./acpSessionResume-oiCBnAVA.cjs');
37
+ require('./acpSessionResume-BaVMD80f.cjs');
38
38
  require('child_process');
39
39
  require('os');
40
40
  require('fs');
@@ -44,6 +44,24 @@ const CLAUDE_OPTIONS_HELP = `Very Happy forwards most Claude options.
44
44
  Use Claude flags with very-happy as you would with claude. The --settings flag
45
45
  is reserved for Very Happy's session hooks and is ignored with a warning.`;
46
46
 
47
+ let recorded = false;
48
+ function recordExitReason(code, reason) {
49
+ recorded = true;
50
+ logger.logger.debug(`[EXIT] Exiting with code ${code}: ${oneLine(reason)}`);
51
+ }
52
+ function installExitReasonFallback() {
53
+ process.on("exit", (code) => {
54
+ if (code !== 0 && !recorded) logger.logger.debug(`[EXIT] Exiting with code ${code}: no reason was recorded`);
55
+ });
56
+ }
57
+ function errorReason(error) {
58
+ return error instanceof Error ? error.message : String(error ?? "Unknown error");
59
+ }
60
+ function oneLine(value) {
61
+ const line = value.replace(/\s+/g, " ").trim();
62
+ return line.length > 500 ? `${line.slice(0, 499)}\u2026` : line;
63
+ }
64
+
47
65
  async function main() {
48
66
  const args = process.argv.slice(2);
49
67
  if (index.isStandaloneVersionRequest(args)) {
@@ -53,6 +71,7 @@ async function main() {
53
71
  if (!args.includes("--version")) {
54
72
  logger.logger.debug("Starting happy CLI with args: ", process.argv);
55
73
  }
74
+ installExitReasonFallback();
56
75
  const subcommand = args[0];
57
76
  if (!args.includes("--version")) ;
58
77
  if (subcommand === "doctor") {
@@ -76,50 +95,34 @@ Conversation history is preserved on the server, but in-flight tool calls are in
76
95
  }
77
96
  process.exit(0);
78
97
  }
79
- await (await Promise.resolve().then(function () { return require('./doctor-Br1Kcy2J.cjs'); }).then(function (n) { return n.doctor; })).runDoctorCommand();
98
+ await (await Promise.resolve().then(function () { return require('./doctor-Be7zC0AF.cjs'); }).then(function (n) { return n.doctor; })).runDoctorCommand();
80
99
  return;
81
100
  } else if (subcommand === "auth") {
82
101
  try {
83
- await (await Promise.resolve().then(function () { return require('./auth-HEhRaNgL.cjs'); })).handleAuthCommand(args.slice(1));
102
+ await (await Promise.resolve().then(function () { return require('./auth-Fg8fLadK.cjs'); })).handleAuthCommand(args.slice(1));
84
103
  } catch (error) {
85
- console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
86
- if (process.env.DEBUG) {
87
- console.error(error);
88
- }
89
- process.exit(1);
104
+ failCommand(error);
90
105
  }
91
106
  return;
92
107
  } else if (subcommand === "connect") {
93
108
  try {
94
- await (await Promise.resolve().then(function () { return require('./connect-uaglGrde.cjs'); })).handleConnectCommand(args.slice(1));
109
+ await (await Promise.resolve().then(function () { return require('./connect-Br8VMrK1.cjs'); })).handleConnectCommand(args.slice(1));
95
110
  } catch (error) {
96
- console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
97
- if (process.env.DEBUG) {
98
- console.error(error);
99
- }
100
- process.exit(1);
111
+ failCommand(error);
101
112
  }
102
113
  return;
103
114
  } else if (subcommand === "sandbox") {
104
115
  try {
105
- await (await Promise.resolve().then(function () { return require('./sandbox-nocIjliq.cjs'); })).handleSandboxCommand(args.slice(1));
116
+ await (await Promise.resolve().then(function () { return require('./sandbox-CO46H2tK.cjs'); })).handleSandboxCommand(args.slice(1));
106
117
  } catch (error) {
107
- console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
108
- if (process.env.DEBUG) {
109
- console.error(error);
110
- }
111
- process.exit(1);
118
+ failCommand(error);
112
119
  }
113
120
  return;
114
121
  } else if (subcommand === "server") {
115
122
  try {
116
- await (await Promise.resolve().then(function () { return require('./server-CosABFbd.cjs'); })).handleServerCommand(args.slice(1));
123
+ await (await Promise.resolve().then(function () { return require('./server-BwTEdbkr.cjs'); })).handleServerCommand(args.slice(1));
117
124
  } catch (error) {
118
- console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
119
- if (process.env.DEBUG) {
120
- console.error(error);
121
- }
122
- process.exit(1);
125
+ failCommand(error);
123
126
  }
124
127
  return;
125
128
  } else if (subcommand === "bye") {
@@ -127,7 +130,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
127
130
  process.exit(0);
128
131
  } else if (subcommand === "install-pi-tools") {
129
132
  try {
130
- const { handleInstallPiTools } = await Promise.resolve().then(function () { return require('./installPiTools-BKnXjrVu.cjs'); });
133
+ const { handleInstallPiTools } = await Promise.resolve().then(function () { return require('./installPiTools-CL_axh_6.cjs'); });
131
134
  await handleInstallPiTools(args.slice(1));
132
135
  } catch (error) {
133
136
  console.error(error instanceof Error ? error.message : "Pi tools installation failed");
@@ -136,7 +139,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
136
139
  return;
137
140
  } else if (subcommand === "install-terminal-hooks") {
138
141
  try {
139
- const { installTerminalHooks, parseTerminalHooksArgs, TERMINAL_HOOKS_HELP } = await Promise.resolve().then(function () { return require('./installTerminalHooks-BQZbvxsZ.cjs'); });
142
+ const { installTerminalHooks, parseTerminalHooksArgs, TERMINAL_HOOKS_HELP } = await Promise.resolve().then(function () { return require('./installTerminalHooks-BETLKAtd.cjs'); });
140
143
  const command = parseTerminalHooksArgs(args.slice(1));
141
144
  if (command.action === "help") {
142
145
  console.log(TERMINAL_HOOKS_HELP);
@@ -145,15 +148,11 @@ Conversation history is preserved on the server, but in-flight tool calls are in
145
148
  await installTerminalHooks({ remove: command.action === "remove" });
146
149
  process.exit(0);
147
150
  } catch (error) {
148
- console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
149
- if (process.env.DEBUG) {
150
- console.error(error);
151
- }
152
- process.exit(1);
151
+ failCommand(error);
153
152
  }
154
153
  } else if (subcommand === "agent-home") {
155
154
  try {
156
- const { parseAgentHomeArgs, runAgentHomeCommand } = await Promise.resolve().then(function () { return require('./agentHome-BWcz8mz0.cjs'); });
155
+ const { parseAgentHomeArgs, runAgentHomeCommand } = await Promise.resolve().then(function () { return require('./agentHome-BtUmGcPX.cjs'); });
157
156
  await runAgentHomeCommand(parseAgentHomeArgs(args.slice(1)));
158
157
  process.exit(0);
159
158
  } catch (error) {
@@ -162,60 +161,40 @@ Conversation history is preserved on the server, but in-flight tool calls are in
162
161
  }
163
162
  } else if (subcommand === "spawn") {
164
163
  try {
165
- const { handleSpawnCommand } = await Promise.resolve().then(function () { return require('./spawn-6PD7nnoC.cjs'); });
164
+ const { handleSpawnCommand } = await Promise.resolve().then(function () { return require('./spawn-rhF28shY.cjs'); });
166
165
  await handleSpawnCommand(args.slice(1));
167
166
  } catch (error) {
168
- console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
169
- if (process.env.DEBUG) {
170
- console.error(error);
171
- }
172
- process.exit(1);
167
+ failCommand(error);
173
168
  }
174
169
  return;
175
170
  } else if (subcommand === "sessions") {
176
171
  try {
177
- const { handleSessionsCommand } = await Promise.resolve().then(function () { return require('./sessions-JchI1w3z.cjs'); });
172
+ const { handleSessionsCommand } = await Promise.resolve().then(function () { return require('./sessions-DjgEcHaT.cjs'); });
178
173
  await handleSessionsCommand(args.slice(1));
179
174
  } catch (error) {
180
- console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
181
- if (process.env.DEBUG) {
182
- console.error(error);
183
- }
184
- process.exit(1);
175
+ failCommand(error);
185
176
  }
186
177
  return;
187
178
  } else if (subcommand === "send") {
188
179
  try {
189
- const { handleSendCommand } = await Promise.resolve().then(function () { return require('./send-Dydf_hwZ.cjs'); });
180
+ const { handleSendCommand } = await Promise.resolve().then(function () { return require('./send-X2mfVEyr.cjs'); });
190
181
  await handleSendCommand(args.slice(1));
191
182
  } catch (error) {
192
- console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
193
- if (process.env.DEBUG) {
194
- console.error(error);
195
- }
196
- process.exit(1);
183
+ failCommand(error);
197
184
  }
198
185
  return;
199
186
  } else if (subcommand === "resume") {
200
187
  try {
201
- await (await Promise.resolve().then(function () { return require('./handleResumeCommand-tKD_Hpxc.cjs'); })).handleResumeCommand(args.slice(1));
188
+ await (await Promise.resolve().then(function () { return require('./handleResumeCommand-BFZlrFVH.cjs'); })).handleResumeCommand(args.slice(1));
202
189
  } catch (error) {
203
- console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
204
- if (process.env.DEBUG) {
205
- console.error(error);
206
- }
207
- process.exit(1);
190
+ failCommand(error);
208
191
  }
209
192
  return;
210
193
  } else if (subcommand === "codex") {
211
194
  try {
212
- await (await Promise.resolve().then(function () { return require('./codexCommand-CAZ1SLjg.cjs'); })).handleCodexCommand(args.slice(1));
195
+ await (await Promise.resolve().then(function () { return require('./codexCommand-dKOc5iQl.cjs'); })).handleCodexCommand(args.slice(1));
213
196
  } catch (error) {
214
- console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
215
- if (process.env.DEBUG) {
216
- console.error(error);
217
- }
218
- process.exit(1);
197
+ failCommand(error);
219
198
  }
220
199
  return;
221
200
  } else if (subcommand === "gemini") {
@@ -292,9 +271,9 @@ Conversation history is preserved on the server, but in-flight tool calls are in
292
271
  if (geminiSubcommand === "project" && args[2] === "set" && args[3]) {
293
272
  const projectId = args[3];
294
273
  try {
295
- const { saveGoogleCloudProjectToConfig } = await Promise.resolve().then(function () { return require('./config-B0uK6K7n.cjs'); });
296
- const { readCredentialsForConfiguredRelay: readCredentialsForConfiguredRelay2 } = await Promise.resolve().then(function () { return require('./persistence-BegE7NPa.cjs'); }).then(function (n) { return n.persistence; });
297
- const { ApiClient } = await Promise.resolve().then(function () { return require('./api-Cmjfr8Z7.cjs'); }).then(function (n) { return n.api; });
274
+ const { saveGoogleCloudProjectToConfig } = await Promise.resolve().then(function () { return require('./config-cftYxLC7.cjs'); });
275
+ const { readCredentialsForConfiguredRelay: readCredentialsForConfiguredRelay2 } = await Promise.resolve().then(function () { return require('./persistence-BY-D00wT.cjs'); }).then(function (n) { return n.persistence; });
276
+ const { ApiClient } = await Promise.resolve().then(function () { return require('./api-COHFAkb_.cjs'); }).then(function (n) { return n.api; });
298
277
  let userEmail = void 0;
299
278
  try {
300
279
  const credentials = await readCredentialsForConfiguredRelay2();
@@ -325,7 +304,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
325
304
  }
326
305
  if (geminiSubcommand === "project" && args[2] === "get") {
327
306
  try {
328
- const { readGeminiLocalConfig } = await Promise.resolve().then(function () { return require('./config-B0uK6K7n.cjs'); });
307
+ const { readGeminiLocalConfig } = await Promise.resolve().then(function () { return require('./config-cftYxLC7.cjs'); });
329
308
  const config = readGeminiLocalConfig();
330
309
  if (config.googleCloudProject) {
331
310
  console.log(`Current Google Cloud Project: ${config.googleCloudProject}`);
@@ -365,7 +344,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
365
344
  process.exit(0);
366
345
  }
367
346
  try {
368
- const { runGemini } = await Promise.resolve().then(function () { return require('./runGemini-CgRLYbt5.cjs'); });
347
+ const { runGemini } = await Promise.resolve().then(function () { return require('./runGemini-vEoXV6qT.cjs'); });
369
348
  let startedBy = void 0;
370
349
  for (let i = 1; i < args.length; i++) {
371
350
  if (args[i] === "--started-by") {
@@ -378,17 +357,13 @@ Conversation history is preserved on the server, but in-flight tool calls are in
378
357
  await ensureDaemonRunning.ensureDaemonRunning();
379
358
  await runGemini({ credentials, startedBy });
380
359
  } catch (error) {
381
- console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
382
- if (process.env.DEBUG) {
383
- console.error(error);
384
- }
385
- process.exit(1);
360
+ failCommand(error);
386
361
  }
387
362
  return;
388
363
  } else if (subcommand === "pi") {
389
364
  if (args[1] === "--terminal") {
390
365
  try {
391
- const { runPiTerminal } = await Promise.resolve().then(function () { return require('./piTerminal-G4z-xVyy.cjs'); });
366
+ const { runPiTerminal } = await Promise.resolve().then(function () { return require('./piTerminal-C_-JDkLN.cjs'); });
392
367
  process.exitCode = await runPiTerminal(args.slice(2));
393
368
  } catch (error) {
394
369
  console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
@@ -413,7 +388,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
413
388
  process.exit(1);
414
389
  }
415
390
  }
416
- const { runAcp, resolveAcpAgentConfig } = await Promise.resolve().then(function () { return require('./index-DMqDMT1Q.cjs'); });
391
+ const { runAcp, resolveAcpAgentConfig } = await Promise.resolve().then(function () { return require('./index-B5PXbZjW.cjs'); });
417
392
  const resolved = resolveAcpAgentConfig(["pi", ...parsed.passthrough]);
418
393
  const { credentials } = await auth.authAndSetupMachineIfNeeded();
419
394
  await ensureDaemonRunning.ensureDaemonRunning();
@@ -429,8 +404,12 @@ Conversation history is preserved on the server, but in-flight tool calls are in
429
404
  onBackendError: printHint,
430
405
  resumeAgentSessionId: parsed.resume
431
406
  });
432
- if (hintPrinted) process.exit(1);
407
+ if (hintPrinted) {
408
+ recordExitReason(1, "pi adapter prerequisites are missing");
409
+ process.exit(1);
410
+ }
433
411
  } catch (error) {
412
+ recordExitReason(1, errorReason(error));
434
413
  console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
435
414
  printHint(error instanceof Error ? error.message : void 0);
436
415
  if (process.env.DEBUG) {
@@ -441,7 +420,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
441
420
  return;
442
421
  } else if (subcommand === "acp") {
443
422
  try {
444
- const { runAcp, resolveAcpAgentConfig } = await Promise.resolve().then(function () { return require('./index-DMqDMT1Q.cjs'); });
423
+ const { runAcp, resolveAcpAgentConfig } = await Promise.resolve().then(function () { return require('./index-B5PXbZjW.cjs'); });
445
424
  let startedBy = void 0;
446
425
  let verbose = false;
447
426
  const acpArgs = [];
@@ -472,16 +451,12 @@ Conversation history is preserved on the server, but in-flight tool calls are in
472
451
  args: resolved.args
473
452
  });
474
453
  } catch (error) {
475
- console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
476
- if (process.env.DEBUG) {
477
- console.error(error);
478
- }
479
- process.exit(1);
454
+ failCommand(error);
480
455
  }
481
456
  return;
482
457
  } else if (subcommand === "openclaw") {
483
458
  try {
484
- const { runOpenClaw } = await Promise.resolve().then(function () { return require('./runOpenClaw-C1NVmzOL.cjs'); });
459
+ const { runOpenClaw } = await Promise.resolve().then(function () { return require('./runOpenClaw-CXJCtMgB.cjs'); });
485
460
  let startedBy = void 0;
486
461
  let verbose = false;
487
462
  let gatewayUrl;
@@ -511,28 +486,20 @@ Conversation history is preserved on the server, but in-flight tool calls are in
511
486
  gatewayPassword
512
487
  });
513
488
  } catch (error) {
514
- console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
515
- if (process.env.DEBUG) {
516
- console.error(error);
517
- }
518
- process.exit(1);
489
+ failCommand(error);
519
490
  }
520
491
  return;
521
492
  } else if (subcommand === "logout") {
522
493
  console.log(chalk.yellow('Note: "very-happy logout" is deprecated. Use "very-happy auth logout" instead.\n'));
523
494
  try {
524
- await (await Promise.resolve().then(function () { return require('./auth-HEhRaNgL.cjs'); })).handleAuthCommand(["logout"]);
495
+ await (await Promise.resolve().then(function () { return require('./auth-Fg8fLadK.cjs'); })).handleAuthCommand(["logout"]);
525
496
  } catch (error) {
526
- console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
527
- if (process.env.DEBUG) {
528
- console.error(error);
529
- }
530
- process.exit(1);
497
+ failCommand(error);
531
498
  }
532
499
  return;
533
500
  } else if (subcommand === "todo") {
534
501
  try {
535
- const { handleTodoCommand } = await Promise.resolve().then(function () { return require('./todo-KY-okGii.cjs'); });
502
+ const { handleTodoCommand } = await Promise.resolve().then(function () { return require('./todo-CCOnL7pT.cjs'); });
536
503
  await handleTodoCommand(args.slice(1));
537
504
  } catch (error) {
538
505
  console.error(JSON.stringify({ error: error instanceof Error ? error.message : "Todo command failed" }));
@@ -541,7 +508,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
541
508
  return;
542
509
  } else if (subcommand === "teams") {
543
510
  try {
544
- const { handleTeamsCommand } = await Promise.resolve().then(function () { return require('./teams-Ov2BDT-A.cjs'); });
511
+ const { handleTeamsCommand } = await Promise.resolve().then(function () { return require('./teams-uQxUlyyz.cjs'); });
545
512
  await handleTeamsCommand(args.slice(1));
546
513
  } catch (error) {
547
514
  console.error(error instanceof Error ? error.message : "Teams command failed");
@@ -550,7 +517,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
550
517
  return;
551
518
  } else if (subcommand === "auto") {
552
519
  try {
553
- const { handleAutoCommand } = await Promise.resolve().then(function () { return require('./auto-C6I55iOh.cjs'); });
520
+ const { handleAutoCommand } = await Promise.resolve().then(function () { return require('./auto-BB7kqSh5.cjs'); });
554
521
  await handleAutoCommand(args.slice(1));
555
522
  } catch (error) {
556
523
  console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Automation command failed");
@@ -562,7 +529,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
562
529
  return;
563
530
  } else if (subcommand === "mcp" && (args.length === 1 || args.length === 2 && args[1] === "--terminal-tools")) {
564
531
  try {
565
- const { handleMcpCommand } = await Promise.resolve().then(function () { return require('./mcp-CARUsXHV.cjs'); });
532
+ const { handleMcpCommand } = await Promise.resolve().then(function () { return require('./mcp-BIY80jSc.cjs'); });
566
533
  await handleMcpCommand(args[1] === "--terminal-tools");
567
534
  } catch (error) {
568
535
  process.stderr.write(`[very-happy mcp] Fatal: ${error instanceof Error ? error.message : String(error)}
@@ -572,7 +539,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
572
539
  return;
573
540
  } else if (subcommand === "panels" || subcommand === "attention") {
574
541
  try {
575
- const { handlePanelsCommand, handleAttentionCommand } = await Promise.resolve().then(function () { return require('./panels-D1c7q2dD.cjs'); });
542
+ const { handlePanelsCommand, handleAttentionCommand } = await Promise.resolve().then(function () { return require('./panels-DYEc1NyQ.cjs'); });
576
543
  if (subcommand === "panels") await handlePanelsCommand(args.slice(1));
577
544
  else await handleAttentionCommand(args.slice(1));
578
545
  } catch (error) {
@@ -584,11 +551,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
584
551
  try {
585
552
  await handleNotifyCommand(args.slice(1));
586
553
  } catch (error) {
587
- console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
588
- if (process.env.DEBUG) {
589
- console.error(error);
590
- }
591
- process.exit(1);
554
+ failCommand(error);
592
555
  }
593
556
  return;
594
557
  } else if (subcommand === "daemon") {
@@ -664,13 +627,13 @@ Conversation history is preserved on the server, but in-flight tool calls are in
664
627
  }
665
628
  process.exit(0);
666
629
  } else if (daemonSubcommand === "start-sync") {
667
- await (await Promise.resolve().then(function () { return require('./run-CNXwIe0A.cjs'); })).startDaemon();
630
+ await (await Promise.resolve().then(function () { return require('./run-C_FumCQk.cjs'); })).startDaemon();
668
631
  process.exit(0);
669
632
  } else if (daemonSubcommand === "stop") {
670
633
  await controlClient.stopDaemon();
671
634
  process.exit(0);
672
635
  } else if (daemonSubcommand === "status") {
673
- await (await Promise.resolve().then(function () { return require('./doctor-Br1Kcy2J.cjs'); }).then(function (n) { return n.doctor; })).runDoctorDaemon();
636
+ await (await Promise.resolve().then(function () { return require('./doctor-Be7zC0AF.cjs'); }).then(function (n) { return n.doctor; })).runDoctorDaemon();
674
637
  process.exit(0);
675
638
  } else if (daemonSubcommand === "logs") {
676
639
  const latest = await logger.getLatestDaemonLog();
@@ -682,14 +645,14 @@ Conversation history is preserved on the server, but in-flight tool calls are in
682
645
  process.exit(0);
683
646
  } else if (daemonSubcommand === "install") {
684
647
  try {
685
- await (await Promise.resolve().then(function () { return require('./install-CYRZxS87.cjs'); })).install();
648
+ await (await Promise.resolve().then(function () { return require('./install-FqkSUjPC.cjs'); })).install();
686
649
  } catch (error) {
687
650
  console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
688
651
  process.exit(1);
689
652
  }
690
653
  } else if (daemonSubcommand === "uninstall") {
691
654
  try {
692
- await (await Promise.resolve().then(function () { return require('./uninstall-8vnLN-IE.cjs'); })).uninstall();
655
+ await (await Promise.resolve().then(function () { return require('./uninstall-BrNwwwSD.cjs'); })).uninstall();
693
656
  } catch (error) {
694
657
  console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
695
658
  process.exit(1);
@@ -860,7 +823,7 @@ ${chalk.gray("\u2500".repeat(60))}
860
823
  ${chalk.bold.cyan("Claude Code Options (from `claude --help`):")}
861
824
  `);
862
825
  try {
863
- const { claudeCliPath } = await Promise.resolve().then(function () { return require('./claudeCliPath-U4HHmV4r.cjs'); });
826
+ const { claudeCliPath } = await Promise.resolve().then(function () { return require('./claudeCliPath-GaP3UUz1.cjs'); });
864
827
  const claudeHelp = node_child_process.execFileSync(claudeCliPath, ["--help"], { encoding: "utf8", windowsHide: true });
865
828
  console.log(claudeHelp);
866
829
  } catch (e) {
@@ -878,14 +841,10 @@ ${chalk.bold.cyan("Claude Code Options (from `claude --help`):")}
878
841
  await ensureDaemonRunning.ensureDaemonRunning();
879
842
  }
880
843
  try {
881
- const { runClaude } = await Promise.resolve().then(function () { return require('./runClaude-CWhj2V4Q.cjs'); });
844
+ const { runClaude } = await Promise.resolve().then(function () { return require('./runClaude-z_2YC_aa.cjs'); });
882
845
  await runClaude(credentials, options);
883
846
  } catch (error) {
884
- console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
885
- if (process.env.DEBUG) {
886
- console.error(error);
887
- }
888
- process.exit(1);
847
+ failCommand(error);
889
848
  }
890
849
  }
891
850
  }
@@ -937,7 +896,7 @@ ${chalk.bold("Examples:")}
937
896
  }
938
897
  console.log(chalk.blue("\u{1F4F1} Sending push notification..."));
939
898
  try {
940
- const { ApiClient } = await Promise.resolve().then(function () { return require('./api-Cmjfr8Z7.cjs'); }).then(function (n) { return n.api; });
899
+ const { ApiClient } = await Promise.resolve().then(function () { return require('./api-COHFAkb_.cjs'); }).then(function (n) { return n.api; });
941
900
  const api = await ApiClient.create(credentials);
942
901
  const notificationTitle = title || "Happy";
943
902
  api.push().sendToAllDevices(
@@ -958,5 +917,13 @@ ${chalk.bold("Examples:")}
958
917
  throw error;
959
918
  }
960
919
  }
920
+ function failCommand(error) {
921
+ recordExitReason(1, errorReason(error));
922
+ console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
923
+ if (process.env.DEBUG) {
924
+ console.error(error);
925
+ }
926
+ process.exit(1);
927
+ }
961
928
 
962
929
  exports.main = main;