very-happy-cli 0.2.189 → 0.2.191

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (203) hide show
  1. package/dist/{AcpBackend-fj16v_cf.mjs → AcpBackend-CCy_9AfR.mjs} +3 -3
  2. package/dist/{AcpBackend-DRPJ2g9G.cjs → AcpBackend-DgrIc1vH.cjs} +3 -3
  3. package/dist/{AcpSessionManager-BZPmUDL5.mjs → AcpSessionManager-CQnxx7gD.mjs} +2 -2
  4. package/dist/{AcpSessionManager-DM-KKg6v.cjs → AcpSessionManager-DVOzCD3P.cjs} +2 -2
  5. package/dist/{BasePermissionHandler-DjM16uJz.cjs → BasePermissionHandler-C9Ag7yvs.cjs} +1 -1
  6. package/dist/{BasePermissionHandler-CVtH-snr.mjs → BasePermissionHandler-DYLN6Ec9.mjs} +1 -1
  7. package/dist/{acpSessionResume-Dxl1LRAT.mjs → acpSessionResume-Bi7pA1n_.mjs} +1 -1
  8. package/dist/{acpSessionResume-2BTMsB7_.cjs → acpSessionResume-TvP_4Zq2.cjs} +1 -1
  9. package/dist/{agentHome-CHctmMzZ.mjs → agentHome-DGv105SR.mjs} +4 -4
  10. package/dist/{agentHome-W17n1gnH.cjs → agentHome-DNUKJWOY.cjs} +4 -4
  11. package/dist/{api-BDuuyys8.cjs → api-BBxZ7y2z.cjs} +19 -10
  12. package/dist/{api-B0yN68XH.mjs → api-jfeMRg5R.mjs} +19 -10
  13. package/dist/{apiMachine-mc9CsKuS.mjs → apiMachine-DRJ7y-BB.mjs} +56 -15
  14. package/dist/{apiMachine-iddD-F19.cjs → apiMachine-DqyjKBZG.cjs} +56 -15
  15. package/dist/{attachmentContent-Cc5b7TPr.cjs → attachmentContent-BO2njyza.cjs} +2 -2
  16. package/dist/{attachmentContent-CcIdMfAx.mjs → attachmentContent-Dm_RIs5L.mjs} +2 -2
  17. package/dist/{auth-DNAgkUkB.mjs → auth-BYDtjVNb.mjs} +8 -8
  18. package/dist/{auth-CyrVvWHF.mjs → auth-DC6rg8lJ.mjs} +5 -5
  19. package/dist/{auth-B7tVmyfX.cjs → auth-DLR3ksCF.cjs} +8 -8
  20. package/dist/{auth-DQKSpaEf.cjs → auth-DnxoVkkf.cjs} +5 -5
  21. package/dist/{auto-CetlumDo.cjs → auto-CwO0u8hB.cjs} +18 -18
  22. package/dist/{auto-BklCipw1.mjs → auto-D5Jhukq1.mjs} +18 -18
  23. package/dist/{bootstrap-DfXwkUQb.mjs → bootstrap-rLaL3kTa.mjs} +2 -2
  24. package/dist/{bootstrap-CDY-Vz8q.cjs → bootstrap-sly4qPPY.cjs} +2 -2
  25. package/dist/{browser-D1yzC0Tu.cjs → browser-BTgZ9d4i.cjs} +1 -1
  26. package/dist/{browser-vb0k1zfI.mjs → browser-CHpVgyni.mjs} +1 -1
  27. package/dist/{claudeLocal-2dJIiTIq.cjs → claudeLocal-1vuTFcL8.cjs} +5 -5
  28. package/dist/{claudeLocal-Bid_rC_v.mjs → claudeLocal-Bgb5GGsq.mjs} +5 -5
  29. package/dist/{claudeLocalLauncher-Jm5oQX5Z.cjs → claudeLocalLauncher-DOsL6HFY.cjs} +10 -10
  30. package/dist/{claudeLocalLauncher-5pzpETxd.mjs → claudeLocalLauncher-T7EfT68h.mjs} +10 -10
  31. package/dist/{claudeSessionFork-DzecSBO4.mjs → claudeSessionFork-CPvi6yDX.mjs} +1 -1
  32. package/dist/{claudeSessionFork-DsbcuDEJ.cjs → claudeSessionFork-Cko4SaVi.cjs} +1 -1
  33. package/dist/{client-CvjjadIE.mjs → client-BXD66ZF5.mjs} +2 -2
  34. package/dist/{client-C9Ecbtko.mjs → client-Bh1aUPh-.mjs} +4 -4
  35. package/dist/{client-B161HwAk.mjs → client-Bi20Ka0h.mjs} +2 -2
  36. package/dist/{client-D0aYWt53.cjs → client-BscskEBk.cjs} +2 -2
  37. package/dist/{client-BNmFaRXZ.cjs → client-C-OdTbrU.cjs} +4 -4
  38. package/dist/{client-DIfxYk7B.cjs → client-C5-C0t2a.cjs} +2 -2
  39. package/dist/codex/happyMcpStdioBridge.cjs +16 -16
  40. package/dist/codex/happyMcpStdioBridge.mjs +16 -16
  41. package/dist/{codexAppServerClient-CO9f4Jr8.cjs → codexAppServerClient-DKXeikEe.cjs} +13 -6
  42. package/dist/{codexAppServerClient-BlVmpjR-.mjs → codexAppServerClient-DXhAf6i-.mjs} +13 -6
  43. package/dist/{codexCommand-CAMR4g5o.mjs → codexCommand-CIaOiiOj.mjs} +137 -55
  44. package/dist/{codexCommand-BfoRP6E9.cjs → codexCommand-DvbbpYBS.cjs} +141 -59
  45. package/dist/{codexTermination-BvGlN02_.mjs → codexTermination-BcQdEDaw.mjs} +1 -1
  46. package/dist/{codexTermination-IrLZQzKC.cjs → codexTermination-BszWfyk5.cjs} +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-Di3Cf6js.cjs} +3 -3
  50. package/dist/{config-CtMgGPvf.mjs → config-OCEcVVK1.mjs} +3 -3
  51. package/dist/{configuration-C0ctLGW2.cjs → configuration-DfPBa-9d.cjs} +1 -1
  52. package/dist/{configuration-1FabKklB.mjs → configuration-ECqXu34R.mjs} +1 -1
  53. package/dist/{connect-DSw-2f52.cjs → connect-BPQRuOw5.cjs} +13 -13
  54. package/dist/{connect-0lSugpjf.mjs → connect-BTfAUhk8.mjs} +13 -13
  55. package/dist/{context-BgxbXWKS.mjs → context-CfgTFpCB.mjs} +1 -1
  56. package/dist/{context-D-hEk5pC.cjs → context-Co7hUaW-.cjs} +1 -1
  57. package/dist/{controlClient-F7hAEEy2.cjs → controlClient-C13_pSKG.cjs} +3 -3
  58. package/dist/{controlClient-DwNnNAUx.mjs → controlClient-ClI7A0qE.mjs} +3 -3
  59. package/dist/{createSessionMetadata-CG6Klinp.mjs → createSessionMetadata-B0eT_Kfj.mjs} +2 -2
  60. package/dist/{createSessionMetadata-DezS33OM.cjs → createSessionMetadata-Cf78KHtt.cjs} +2 -2
  61. package/dist/defaultPermissionMode-m6z2QVyP.mjs +43 -0
  62. package/dist/defaultPermissionMode-oqTupStc.cjs +49 -0
  63. package/dist/{deterministicJson-BMwgK21e.mjs → deterministicJson-BtSwbsok.mjs} +13 -13
  64. package/dist/{deterministicJson-D0LU_XbO.cjs → deterministicJson-CpFFgUL_.cjs} +13 -13
  65. package/dist/{doctor-wVNvRarN.cjs → doctor-BEU0_1Xv.cjs} +7 -7
  66. package/dist/{doctor-D16hySse.mjs → doctor-lsxmAK4o.mjs} +7 -7
  67. package/dist/{downloadTarget-C6tqaXGm.mjs → downloadTarget-BXqXhNF7.mjs} +6 -6
  68. package/dist/{downloadTarget-aNcCxVRL.cjs → downloadTarget-CikzJv1h.cjs} +6 -6
  69. package/dist/{ensureDaemonRunning-CIghxgDR.cjs → ensureDaemonRunning-BUuH-pbE.cjs} +5 -5
  70. package/dist/{ensureDaemonRunning-DZq8bvsp.mjs → ensureDaemonRunning-B_9WAlbU.mjs} +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-BK9XKH_l.mjs} +5 -5
  74. package/dist/{handleResumeCommand-CMUTygsm.cjs → handleResumeCommand-Dj7oi2KO.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-BCQr-5Ei.mjs → index-BdOJOZ6J.mjs} +4 -4
  78. package/dist/{index-CKd20r1W.mjs → index-BjZnpGWX.mjs} +3 -3
  79. package/dist/{index-WKyN-bNy.mjs → index-Bq8NKSCF.mjs} +65 -1
  80. package/dist/{index-BOe6dKnL.cjs → index-CLUHaPU8.cjs} +76 -0
  81. package/dist/{index-CnzsOD19.cjs → index-CauRYQKr.cjs} +133 -54
  82. package/dist/{index-4TpmBb2Q.cjs → index-CmZusg8Q.cjs} +3 -3
  83. package/dist/{index-BuiG8hmg.mjs → index-Cxso1rg4.mjs} +133 -54
  84. package/dist/{index-De02DNu5.cjs → index-D3c7CLot.cjs} +4 -4
  85. package/dist/{index-B81qV_F_.cjs → index-Dg2NAF_-.cjs} +4 -4
  86. package/dist/{index-Df0bc_et.mjs → index-DuK9XYbZ.mjs} +4 -4
  87. package/dist/index.cjs +2 -2
  88. package/dist/index.mjs +2 -2
  89. package/dist/{install-23ehAdTD.mjs → install-DTIveLOS.mjs} +3 -3
  90. package/dist/{install-DNbIEJUk.cjs → install-DXllkuy0.cjs} +3 -3
  91. package/dist/lib.cjs +12 -12
  92. package/dist/lib.d.cts +63 -1
  93. package/dist/lib.d.mts +63 -1
  94. package/dist/lib.mjs +12 -12
  95. package/dist/{lidState-B4dHJCeS.cjs → lidState-C9_DoF9i.cjs} +1 -1
  96. package/dist/{lidState-q5Its2Hm.mjs → lidState-CD81ryTy.mjs} +1 -1
  97. package/dist/{localHappyAgentAuth-CG2nPD_H.cjs → localHappyAgentAuth-CCjUvOfi.cjs} +1 -1
  98. package/dist/{localHappyAgentAuth-C_G5u5lY.mjs → localHappyAgentAuth-Cg-m1lwm.mjs} +1 -1
  99. package/dist/{logger-BP1SW7Cs.cjs → logger-Ct2zvaq0.cjs} +2 -2
  100. package/dist/{logger-DOKH3Zbh.mjs → logger-GcbI0eg2.mjs} +2 -2
  101. package/dist/{machineMetadata-D-5qeIqd.mjs → machineMetadata-CXRmFNOV.mjs} +3 -3
  102. package/dist/{machineMetadata-BKX3ov9g.cjs → machineMetadata-DDCVWb_x.cjs} +3 -3
  103. package/dist/{main-ndpVIaSG.cjs → main-BHC-WIcM.cjs} +49 -48
  104. package/dist/{main-DODz8DQE.mjs → main-omGr_ONk.mjs} +49 -48
  105. package/dist/{mcp-BBwbSODp.mjs → mcp-D5hxmRAq.mjs} +15 -15
  106. package/dist/{mcp-Bc4U4exu.cjs → mcp-xUzii0m8.cjs} +15 -15
  107. package/dist/{mirrorProtocol-CiA3hO2y.cjs → mirrorProtocol-Dfl8Ahyf.cjs} +3 -3
  108. package/dist/{mirrorProtocol-D2vTWteS.mjs → mirrorProtocol-Lcx20Oby.mjs} +3 -3
  109. package/dist/{package-CYDdLA6R.cjs → package-9n7wd2dT.cjs} +7 -7
  110. package/dist/{package-DTcaIhjW.mjs → package-BsUHyqWe.mjs} +7 -7
  111. package/dist/{panels-C2xZ8rqU.cjs → panels-BfknEmt7.cjs} +5 -5
  112. package/dist/{panels-DCaLxlSL.mjs → panels-CpEKWWbI.mjs} +5 -5
  113. package/dist/{peerTools-B4315xjX.cjs → peerTools-CElYh-5u.cjs} +5 -5
  114. package/dist/{peerTools-BtrUnSwz.mjs → peerTools-CwCe6tmJ.mjs} +5 -5
  115. package/dist/{persistence-CrzC7yr_.cjs → persistence-A2NeERZJ.cjs} +6 -2
  116. package/dist/{persistence-0INrP3aB.mjs → persistence-Cpw4yJs8.mjs} +6 -3
  117. package/dist/{piRunnerArgs-BtzW_kfh.cjs → piRunnerArgs-BnFU0K73.cjs} +1 -1
  118. package/dist/{piRunnerArgs-DRuxMlX1.mjs → piRunnerArgs-Bqmu16He.mjs} +1 -1
  119. package/dist/{piRuntime-BMAFpIBV.mjs → piRuntime-Cgn1b0OX.mjs} +1 -1
  120. package/dist/{piRuntime-DEbPE_kW.cjs → piRuntime-DpS9TAIs.cjs} +1 -1
  121. package/dist/{piTerminal-DQXV8_we.mjs → piTerminal-BGdps8f3.mjs} +17 -17
  122. package/dist/{piTerminal-MtxDtBE2.cjs → piTerminal-rmve-VlI.cjs} +17 -17
  123. package/dist/{pushNotifications-CalIS9sq.cjs → pushNotifications-23YSd-0l.cjs} +28 -3
  124. package/dist/{pushNotifications-Cq1s8YVK.mjs → pushNotifications-XAM8__Pg.mjs} +28 -3
  125. package/dist/{query-BYiPBHPC.mjs → query-SZcYnJoW.mjs} +1 -1
  126. package/dist/{query-CE2XDhhw.cjs → query-u2GX-I0C.cjs} +1 -1
  127. package/dist/{rateLimitReporter-DR5LXuiQ.mjs → rateLimitReporter-COUkf446.mjs} +3 -3
  128. package/dist/{rateLimitReporter-BKmoOZQi.cjs → rateLimitReporter-CaTzBe3x.cjs} +3 -3
  129. package/dist/{rateLimitWindows-Cs56YJCH.cjs → rateLimitWindows-B2Kx6L0S.cjs} +1 -1
  130. package/dist/{rateLimitWindows-5vIuNjko.mjs → rateLimitWindows-j_qQk0KY.mjs} +1 -1
  131. package/dist/{registerCommonHandlers-DZPozYxc.cjs → registerCommonHandlers-D1MiSfcB.cjs} +2 -2
  132. package/dist/{registerCommonHandlers-DWkTysjD.mjs → registerCommonHandlers-DRRfinzK.mjs} +2 -2
  133. package/dist/{registerKillSessionHandler-CSCTRIbI.mjs → registerKillSessionHandler-Cpug_r5C.mjs} +16 -6
  134. package/dist/{registerKillSessionHandler-DhCjrs44.cjs → registerKillSessionHandler-hvCsEn7b.cjs} +16 -6
  135. package/dist/{remoteSessionClient-Dq8XTLQP.cjs → remoteSessionClient-6ymeMVa4.cjs} +5 -5
  136. package/dist/{remoteSessionClient-Vfj_5g2-.mjs → remoteSessionClient-BdnJ_n8C.mjs} +5 -5
  137. package/dist/{reportProgressTool-B7zmX7NJ.mjs → reportProgressTool-XgQBzxoD.mjs} +3 -3
  138. package/dist/{reportProgressTool-DznxPKES.cjs → reportProgressTool-tzQLCLIw.cjs} +3 -3
  139. package/dist/{run-DSfNcR62.mjs → run-Bt0AklUU.mjs} +396 -43
  140. package/dist/{run-Ca8BiNCp.cjs → run-DYL_wuj7.cjs} +396 -43
  141. package/dist/{runClaude-hoepv-0X.mjs → runClaude-C3rii_S6.mjs} +47 -27
  142. package/dist/{runClaude-ClQQcgoO.cjs → runClaude-CBEpYO4S.cjs} +49 -29
  143. package/dist/{runClaudeDeps-ck5_GYlP.cjs → runClaudeDeps-CYuozSC6.cjs} +187 -61
  144. package/dist/{runClaudeDeps-D_v8t2SK.mjs → runClaudeDeps-DlVfMG4F.mjs} +192 -66
  145. package/dist/{runGemini-Cj0XsMiM.cjs → runGemini-CEI3b90u.cjs} +33 -33
  146. package/dist/{runGemini-CTr2-cYG.mjs → runGemini-DkYhRk9S.mjs} +33 -33
  147. package/dist/{runOpenClaw-BoN1e3lP.cjs → runOpenClaw-BgjD6E4d.cjs} +18 -18
  148. package/dist/{runOpenClaw-CdDMntiV.mjs → runOpenClaw-DpprWCoz.mjs} +18 -18
  149. package/dist/{sandbox-DcaWB-Ou.mjs → sandbox-DJ7A7lsy.mjs} +4 -4
  150. package/dist/{sandbox-BY2h19gc.cjs → sandbox-XCDUbH72.cjs} +4 -4
  151. package/dist/{selfCheck-DFS_GUaQ.cjs → selfCheck-BYUDB1Uq.cjs} +37 -37
  152. package/dist/selfCheck-C-rNljKV.mjs +86 -0
  153. package/dist/{send-UBTHHNvZ.mjs → send-Ba63huxv.mjs} +8 -8
  154. package/dist/{send-BMsUYU6g.cjs → send-CASDBCyJ.cjs} +8 -8
  155. package/dist/{server-YrHMHNz1.cjs → server-cZoV9XRt.cjs} +6 -6
  156. package/dist/{server-Dt3mCtfQ.mjs → server-w3W0toNd.mjs} +4 -4
  157. package/dist/{sessionLock-DSqiP2lH.cjs → sessionLock-BmLA2S8K.cjs} +134 -3
  158. package/dist/{sessionLock-tEFvFXLD.mjs → sessionLock-G2PMqvsh.mjs} +121 -4
  159. package/dist/{sessionOps-CljctDs5.mjs → sessionOps-DPw5k8vV.mjs} +15 -5
  160. package/dist/{sessionOps-BzeOKIEF.cjs → sessionOps-DXlTmS7J.cjs} +15 -4
  161. package/dist/{sessionProvider-BnUFSJXM.mjs → sessionProvider-DUn91LhJ.mjs} +5 -5
  162. package/dist/{sessionProvider-ORgzmkXy.cjs → sessionProvider-Dg691XQ4.cjs} +5 -5
  163. package/dist/{sessionScanner-Cr6PJ3PT.cjs → sessionScanner-AHjnicxi.cjs} +3 -3
  164. package/dist/{sessionScanner-DZUlkdF6.mjs → sessionScanner-BCXpdZJN.mjs} +3 -3
  165. package/dist/{sessions-aIo_HjmY.cjs → sessions-BiBXOBx0.cjs} +36 -25
  166. package/dist/{sessions-15cag-su.mjs → sessions-Clk8MR5Y.mjs} +35 -26
  167. package/dist/{setupOfflineReconnection-tV0Q1dgR.cjs → setupOfflineReconnection-BKLfOd-i.cjs} +2 -2
  168. package/dist/{setupOfflineReconnection-B7I8R2Ex.mjs → setupOfflineReconnection-DI-QZGYz.mjs} +2 -2
  169. package/dist/{spawn-ByrQgruJ.mjs → spawn-4tsp1uhh.mjs} +15 -15
  170. package/dist/{spawn-VG-HjJiR.cjs → spawn-D5omsx1Q.cjs} +15 -15
  171. package/dist/{spawnAgents-Bh1RPShN.mjs → spawnAgents-CjoU6ZOS.mjs} +8 -2
  172. package/dist/{spawnAgents-C1-4m7aN.cjs → spawnAgents-CtkkIFHd.cjs} +8 -2
  173. package/dist/{spawnHappyCLI-CxiR2Qoy.cjs → spawnHappyCLI-CF_gLi92.cjs} +1 -1
  174. package/dist/{spawnHappyCLI-CEsXwz5V.mjs → spawnHappyCLI-CIA9Sc_5.mjs} +1 -1
  175. package/dist/{startFileWatcher-C-XCZ5t2.cjs → startFileWatcher-9Stpxe7p.cjs} +1 -1
  176. package/dist/{startFileWatcher-DkEeeAtL.mjs → startFileWatcher-CDO6fb2m.mjs} +1 -1
  177. package/dist/{defaultPermissionMode-e2bIIJG4.mjs → startupSessionCreate-BtR4iYEC.mjs} +25 -6
  178. package/dist/{defaultPermissionMode-5EvgRq38.cjs → startupSessionCreate-CcF7rGGB.cjs} +25 -7
  179. package/dist/{streamRelay-D9a4cBEa.cjs → streamRelay-BhI6jqF-.cjs} +1 -1
  180. package/dist/{streamRelay-CqBynIon.mjs → streamRelay-DMwOMTKf.mjs} +1 -1
  181. package/dist/{sync-CoChLEIg.cjs → sync-Ba8N6xba.cjs} +1 -1
  182. package/dist/{sync-BvDMkKAN.mjs → sync-C0PRuTMj.mjs} +1 -1
  183. package/dist/{systemPrompt-CgDaPigN.mjs → systemPrompt-D0q8eyjy.mjs} +2 -2
  184. package/dist/{systemPrompt-Dy_Rf-0Z.cjs → systemPrompt-DV5IReD4.cjs} +2 -2
  185. package/dist/{teams-BC4_e5hR.mjs → teams-BO3_arwM.mjs} +7 -7
  186. package/dist/{teams-DPvfLAk8.cjs → teams-z3Gp-KlV.cjs} +7 -7
  187. package/dist/{template-17HATY_Y.cjs → template-B_5l6pkc.cjs} +1 -1
  188. package/dist/{template-CEK8MEjo.mjs → template-DLR_0hfj.mjs} +1 -1
  189. package/dist/{time-XwEZxKGc.cjs → time-Cy0a-7YX.cjs} +1 -1
  190. package/dist/{time-CUK37wiV.mjs → time-D0jvDRhn.mjs} +1 -1
  191. package/dist/{titleGenerator-DWRVdqMU.mjs → titleGenerator-AGQsXskb.mjs} +1 -1
  192. package/dist/{titleGenerator-DVX0NZUn.cjs → titleGenerator-RGHWP2YL.cjs} +2 -2
  193. package/dist/{todo-BNMGXneA.mjs → todo-BZ954vsz.mjs} +6 -6
  194. package/dist/{todo-CKGrSrRE.cjs → todo-CzIDPLFy.cjs} +6 -6
  195. package/dist/{tools-CjMafO_D.cjs → tools-B1x1j6tz.cjs} +1 -1
  196. package/dist/{tools-CCIEAVbB.mjs → tools-Bei5i03L.mjs} +1 -1
  197. package/dist/{uninstall-CJvJ7gjr.mjs → uninstall-B4T_e3Mr.mjs} +3 -3
  198. package/dist/{uninstall-BdFbTXnL.cjs → uninstall-C3cnIvz1.cjs} +3 -3
  199. package/package.json +7 -7
  200. package/dist/agentAttachments-M_B5qEF2.mjs +0 -18
  201. package/dist/selfCheck-BQ_H2Sns.mjs +0 -86
  202. package/dist/startupSessionCreate-CYc8mra-.cjs +0 -26
  203. package/dist/startupSessionCreate-npXe2TdN.mjs +0 -24
@@ -1,30 +1,31 @@
1
1
  'use strict';
2
2
 
3
3
  var chalk = require('chalk');
4
- var sessionOps = require('./sessionOps-BzeOKIEF.cjs');
4
+ var exitAfterFlush = require('./exitAfterFlush-DIT_sIxR.cjs');
5
+ var sessionOps = require('./sessionOps-DXlTmS7J.cjs');
5
6
  var ids = require('./ids-B6ZC0HGt.cjs');
6
- var peerTools = require('./peerTools-B4315xjX.cjs');
7
- var persistence = require('./persistence-CrzC7yr_.cjs');
7
+ var peerTools = require('./peerTools-CElYh-5u.cjs');
8
+ var persistence = require('./persistence-A2NeERZJ.cjs');
8
9
  var path = require('node:path');
9
- var remoteSessionClient = require('./remoteSessionClient-Dq8XTLQP.cjs');
10
+ var remoteSessionClient = require('./remoteSessionClient-6ymeMVa4.cjs');
10
11
  require('axios');
11
- require('./configuration-C0ctLGW2.cjs');
12
+ require('./configuration-DfPBa-9d.cjs');
12
13
  require('node:fs');
13
14
  require('node:os');
14
- require('./package-CYDdLA6R.cjs');
15
+ require('./package-9n7wd2dT.cjs');
15
16
  require('node:fs/promises');
16
17
  require('./authRelay-Dy1qU9td.cjs');
17
18
  require('node:crypto');
18
19
  require('tweetnacl');
19
- require('./controlClient-F7hAEEy2.cjs');
20
- require('./logger-BP1SW7Cs.cjs');
20
+ require('./controlClient-C13_pSKG.cjs');
21
+ require('./logger-Ct2zvaq0.cjs');
21
22
  require('node:util');
22
- require('./time-XwEZxKGc.cjs');
23
+ require('./time-Cy0a-7YX.cjs');
23
24
  require('./specialCommands-J3JFOq0J.cjs');
24
25
  require('socket.io-client');
25
26
  require('./backgroundTaskActivity-CBvUdj39.cjs');
26
27
  require('zod');
27
- require('./client-DIfxYk7B.cjs');
28
+ require('./client-C5-C0t2a.cjs');
28
29
 
29
30
  const MACHINE_ID_RE = /^[a-zA-Z0-9_-]{1,128}$/;
30
31
  const ACTIONS = ["list", "read", "stop", "archive", "approve", "deny", "peers", "message"];
@@ -187,6 +188,9 @@ ${chalk.bold("Actions:")}
187
188
  async sub-agents / backgrounded commands still running after
188
189
  the turn ended \u2014 such a session is NOT idle (absent = the
189
190
  daemon or CLI is too old to report it).
191
+ A forked session shows \`parent=<id>\` (\`parentSessionId\`,
192
+ plus \`forkedFromMessageId\` for a fork from a message, in
193
+ --json) in list, list --all and read.
190
194
  stop SIGTERM the session's process via the local daemon.
191
195
  archive Mark the session inactive server-side (it stays resumable).
192
196
  approve Answer a pending permission request \`requestId\` with approve \u2014
@@ -282,6 +286,7 @@ function formatAccountSummaryLine(summary) {
282
286
  if (summary.flavor) parts.push(`agent=${summary.flavor}`);
283
287
  if (summary.tags?.length) parts.push(`tags=${summary.tags.join(",")}`);
284
288
  if (summary.variant) parts.push(`variant=${summary.variant}`);
289
+ if (summary.parentSessionId) parts.push(`parent=${summary.parentSessionId}`);
285
290
  if (summary.machineId) parts.push(`machine=${summary.machineId}`);
286
291
  if (summary.cwd) parts.push(`cwd=${summary.cwd}`);
287
292
  if (summary.backgroundTasks && summary.backgroundTasks.count > 0) parts.push(formatBackgroundTasks(summary.backgroundTasks));
@@ -308,6 +313,7 @@ function formatSummaryLine(summary) {
308
313
  if (summary.flavor) parts.push(`agent=${summary.flavor}`);
309
314
  if (summary.tags?.length) parts.push(`tags=${summary.tags.join(",")}`);
310
315
  if (summary.variant) parts.push(`variant=${summary.variant}`);
316
+ if (summary.parentSessionId) parts.push(`parent=${summary.parentSessionId}`);
311
317
  if (summary.cwd) parts.push(`cwd=${summary.cwd}`);
312
318
  if (summary.pid !== void 0) parts.push(`pid=${summary.pid}`);
313
319
  if (summary.backgroundTasks && summary.backgroundTasks.count > 0) parts.push(formatBackgroundTasks(summary.backgroundTasks));
@@ -315,17 +321,20 @@ function formatSummaryLine(summary) {
315
321
  return parts.join(" ");
316
322
  }
317
323
  async function handleSessionsCommand(args) {
324
+ return exitAfterFlush.exitAfterFlush(await runSessionsCommand(args));
325
+ }
326
+ async function runSessionsCommand(args) {
318
327
  let options;
319
328
  try {
320
329
  options = parseSessionsArgs(args);
321
330
  } catch (error) {
322
331
  console.error(chalk.red("Error:"), error instanceof Error ? error.message : String(error));
323
332
  console.error(`Run ${chalk.cyan("very-happy sessions --help")} for usage.`);
324
- process.exit(1);
333
+ return 1;
325
334
  }
326
335
  if (options.action === "help") {
327
336
  console.log(SESSIONS_HELP);
328
- process.exit(0);
337
+ return 0;
329
338
  }
330
339
  try {
331
340
  if (options.action === "list" && options.all) {
@@ -356,7 +365,7 @@ async function handleSessionsCommand(args) {
356
365
  console.log(chalk.dim(`${foreign} session(s) belong to a machine that is not reachable right now${why}.`));
357
366
  }
358
367
  }
359
- process.exit(0);
368
+ return 0;
360
369
  }
361
370
  if (options.action === "list" && options.machine) {
362
371
  const listing = await remoteSessionClient.listRemoteSessions(options.machine, { tag: options.tag, limit: options.limit });
@@ -369,7 +378,7 @@ async function handleSessionsCommand(args) {
369
378
  console.log(chalk.dim(`machine ${listing.host} (${listing.machineId})`));
370
379
  for (const summary of sessions) console.log(formatSummaryLine(summary));
371
380
  }
372
- process.exit(0);
381
+ return 0;
373
382
  }
374
383
  if (options.action === "list") {
375
384
  const sessions = await sessionOps.listSessions({ tag: options.tag, recentLimit: options.limit });
@@ -380,7 +389,7 @@ async function handleSessionsCommand(args) {
380
389
  } else {
381
390
  for (const summary of sessions) console.log(formatSummaryLine(summary));
382
391
  }
383
- process.exit(0);
392
+ return 0;
384
393
  }
385
394
  if (options.action === "peers" || options.action === "message") {
386
395
  const cwd = options.cwd ? path.resolve(options.cwd) : process.cwd();
@@ -393,7 +402,7 @@ async function handleSessionsCommand(args) {
393
402
  else if (!listing.project) console.log(`Not in a project (${self.sessionId}).`);
394
403
  else if (listing.peers.length === 0) console.log(`No other sessions in project "${listing.project.name}".`);
395
404
  else for (const peer of listing.peers) console.log([peer.sessionId, `[${peer.state ?? "?"}]`, peer.title ? `title="${peer.title}"` : "", peer.agent ? `agent=${peer.agent}` : "", peer.machine ? `machine=${peer.machine}` : "", peer.doing ? `doing="${peer.doing}"` : "", peer.url].filter(Boolean).join(" "));
396
- process.exit(0);
405
+ return 0;
397
406
  }
398
407
  if (options.action === "peers") {
399
408
  const scope = options.scope === "project" ? void 0 : options.scope;
@@ -414,7 +423,7 @@ async function handleSessionsCommand(args) {
414
423
  for (const edit of peer.edits) console.log(chalk.dim(` ${edit.tool} ${edit.path} (${Math.round((Date.now() - edit.at) / 6e4)}m ago)`));
415
424
  }
416
425
  }
417
- process.exit(0);
426
+ return 0;
418
427
  }
419
428
  const target = options.sessionId;
420
429
  try {
@@ -425,7 +434,7 @@ ${result.url}`);
425
434
  else if (result.status === "offline-stored") console.log(`Message ${result.messageId} ${result.note ?? "stored"} (${target} is not running; same project)
426
435
  ${result.url}`);
427
436
  else console.error(chalk.yellow("Not delivered:"), result.error ?? `session is ${result.status}`, result.stored ? "(stored server-side, unread)" : "");
428
- process.exit(peerMessageExitCode(result));
437
+ return peerMessageExitCode(result);
429
438
  } catch (error) {
430
439
  if (options.json) console.log(JSON.stringify({ delivered: false, to: target, error: error instanceof Error ? error.message : String(error) }));
431
440
  throw error;
@@ -476,18 +485,18 @@ ${result.url}`);
476
485
  const turn = result.turn;
477
486
  console.log(chalk.dim(`--- latest turn: ${turn.ended ? `ended (${turn.status ?? "unknown"})` : "running"}${turn.error ? ` \u2014 ${turn.error}` : ""} ---`));
478
487
  }
479
- process.exit(timedOut ? 2 : 0);
488
+ return timedOut ? 2 : 0;
480
489
  }
481
490
  if (options.action === "stop") {
482
491
  const stopped = await sessionOps.stopSession(sessionId);
483
492
  if (!stopped) {
484
493
  if (options.json) console.log(JSON.stringify({ sessionId, stopped: false }));
485
494
  console.error(chalk.red("Error:"), `Session ${sessionId} is not among the daemon's running sessions.`);
486
- process.exit(1);
495
+ return 1;
487
496
  }
488
497
  if (options.json) console.log(JSON.stringify({ sessionId, stopped: true }));
489
498
  else console.log(`Stopped ${sessionId}`);
490
- process.exit(0);
499
+ return 0;
491
500
  }
492
501
  if (options.action === "approve" || options.action === "deny") {
493
502
  const requestId = options.requestId;
@@ -509,7 +518,7 @@ ${result.url}`);
509
518
  if (options.json) console.log(JSON.stringify(result));
510
519
  const hint = result.outcome.status === "rate-limited" ? ` \u2014 the request is still pending; re-run in ~${Math.ceil(result.outcome.retryAfterMs / 1e3)}s` : "";
511
520
  console.error(chalk.red("Error:"), `${options.action} of ${requestId} on ${sessionId} was not delivered (${result.outcome.status}): ${result.outcome.message}${hint}`);
512
- process.exit(1);
521
+ return 1;
513
522
  }
514
523
  if (options.json) {
515
524
  console.log(JSON.stringify(result));
@@ -517,19 +526,21 @@ ${result.url}`);
517
526
  const verb = options.action === "approve" ? "Approved" : "Denied";
518
527
  console.log(`${verb} ${requestId} on ${sessionId} (${result.payload.decision})${result.settled ? "" : " \u2014 wrapper acknowledged, but the request was still listed as pending when we stopped waiting"}`);
519
528
  }
520
- process.exit(0);
529
+ return 0;
521
530
  }
522
531
  await sessionOps.archiveSession(sessionId);
523
532
  if (options.json) console.log(JSON.stringify({ sessionId, archived: true }));
524
533
  else console.log(`Archived ${sessionId}`);
525
- process.exit(0);
534
+ return 0;
526
535
  } catch (error) {
527
536
  console.error(chalk.red("Error:"), error instanceof Error ? error.message : String(error));
528
- process.exit(1);
537
+ return 1;
529
538
  }
530
539
  }
531
540
 
532
541
  exports.SESSIONS_HELP = SESSIONS_HELP;
542
+ exports.formatAccountSummaryLine = formatAccountSummaryLine;
543
+ exports.formatSummaryLine = formatSummaryLine;
533
544
  exports.handleSessionsCommand = handleSessionsCommand;
534
545
  exports.parseSessionsArgs = parseSessionsArgs;
535
546
  exports.peerMessageExitCode = peerMessageExitCode;
@@ -1,28 +1,29 @@
1
1
  import chalk from 'chalk';
2
- import { D as DEFAULT_RECENT_LIMIT, M as MAX_READ_LIMIT, l as listAccountSessions, a as listSessions, w as waitForTurnEnd, T as TurnWaitTimeoutError, r as readSessionTranscript, b as stopSession, c as resolvePermissionRequest, d as archiveSession } from './sessionOps-CljctDs5.mjs';
2
+ import { e as exitAfterFlush } from './exitAfterFlush-AbKNZM0N.mjs';
3
+ import { D as DEFAULT_RECENT_LIMIT, M as MAX_READ_LIMIT, l as listAccountSessions, a as listSessions, w as waitForTurnEnd, T as TurnWaitTimeoutError, r as readSessionTranscript, b as stopSession, c as resolvePermissionRequest, d as archiveSession } from './sessionOps-DPw5k8vV.mjs';
3
4
  import { i as isValidSessionId } from './ids-DU6sLx4C.mjs';
4
- import { c as cliPeerSelf, e as executeSessionPeerTool, l as listPeerSessions, s as sendPeerMessage, P as PEER_SCOPES } from './peerTools-BtrUnSwz.mjs';
5
- import { c as readPersistedSessions } from './persistence-0INrP3aB.mjs';
5
+ import { P as PEER_SCOPES, c as cliPeerSelf, e as executeSessionPeerTool, l as listPeerSessions, s as sendPeerMessage } from './peerTools-CwCe6tmJ.mjs';
6
+ import { c as readPersistedSessions } from './persistence-Cpw4yJs8.mjs';
6
7
  import { resolve } from 'node:path';
7
- import { f as fillForeignAccountRows, l as listRemoteSessions, a as listRemotePeers, w as waitForRemoteTurnEnd, r as readRemoteTranscript } from './remoteSessionClient-Vfj_5g2-.mjs';
8
+ import { f as fillForeignAccountRows, l as listRemoteSessions, a as listRemotePeers, w as waitForRemoteTurnEnd, r as readRemoteTranscript } from './remoteSessionClient-BdnJ_n8C.mjs';
8
9
  import 'axios';
9
- import './configuration-1FabKklB.mjs';
10
+ import './configuration-ECqXu34R.mjs';
10
11
  import 'node:fs';
11
12
  import 'node:os';
12
- import './package-DTcaIhjW.mjs';
13
+ import './package-BsUHyqWe.mjs';
13
14
  import 'node:fs/promises';
14
15
  import './authRelay-DhQhkBvX.mjs';
15
16
  import 'node:crypto';
16
17
  import 'tweetnacl';
17
- import './controlClient-DwNnNAUx.mjs';
18
- import './logger-DOKH3Zbh.mjs';
18
+ import './controlClient-ClI7A0qE.mjs';
19
+ import './logger-GcbI0eg2.mjs';
19
20
  import 'node:util';
20
- import './time-CUK37wiV.mjs';
21
+ import './time-D0jvDRhn.mjs';
21
22
  import './specialCommands-MXUN0wfI.mjs';
22
23
  import 'socket.io-client';
23
24
  import './backgroundTaskActivity-8PdPxrvy.mjs';
24
25
  import 'zod';
25
- import './client-B161HwAk.mjs';
26
+ import './client-Bi20Ka0h.mjs';
26
27
 
27
28
  const MACHINE_ID_RE = /^[a-zA-Z0-9_-]{1,128}$/;
28
29
  const ACTIONS = ["list", "read", "stop", "archive", "approve", "deny", "peers", "message"];
@@ -185,6 +186,9 @@ ${chalk.bold("Actions:")}
185
186
  async sub-agents / backgrounded commands still running after
186
187
  the turn ended \u2014 such a session is NOT idle (absent = the
187
188
  daemon or CLI is too old to report it).
189
+ A forked session shows \`parent=<id>\` (\`parentSessionId\`,
190
+ plus \`forkedFromMessageId\` for a fork from a message, in
191
+ --json) in list, list --all and read.
188
192
  stop SIGTERM the session's process via the local daemon.
189
193
  archive Mark the session inactive server-side (it stays resumable).
190
194
  approve Answer a pending permission request \`requestId\` with approve \u2014
@@ -280,6 +284,7 @@ function formatAccountSummaryLine(summary) {
280
284
  if (summary.flavor) parts.push(`agent=${summary.flavor}`);
281
285
  if (summary.tags?.length) parts.push(`tags=${summary.tags.join(",")}`);
282
286
  if (summary.variant) parts.push(`variant=${summary.variant}`);
287
+ if (summary.parentSessionId) parts.push(`parent=${summary.parentSessionId}`);
283
288
  if (summary.machineId) parts.push(`machine=${summary.machineId}`);
284
289
  if (summary.cwd) parts.push(`cwd=${summary.cwd}`);
285
290
  if (summary.backgroundTasks && summary.backgroundTasks.count > 0) parts.push(formatBackgroundTasks(summary.backgroundTasks));
@@ -306,6 +311,7 @@ function formatSummaryLine(summary) {
306
311
  if (summary.flavor) parts.push(`agent=${summary.flavor}`);
307
312
  if (summary.tags?.length) parts.push(`tags=${summary.tags.join(",")}`);
308
313
  if (summary.variant) parts.push(`variant=${summary.variant}`);
314
+ if (summary.parentSessionId) parts.push(`parent=${summary.parentSessionId}`);
309
315
  if (summary.cwd) parts.push(`cwd=${summary.cwd}`);
310
316
  if (summary.pid !== void 0) parts.push(`pid=${summary.pid}`);
311
317
  if (summary.backgroundTasks && summary.backgroundTasks.count > 0) parts.push(formatBackgroundTasks(summary.backgroundTasks));
@@ -313,17 +319,20 @@ function formatSummaryLine(summary) {
313
319
  return parts.join(" ");
314
320
  }
315
321
  async function handleSessionsCommand(args) {
322
+ return exitAfterFlush(await runSessionsCommand(args));
323
+ }
324
+ async function runSessionsCommand(args) {
316
325
  let options;
317
326
  try {
318
327
  options = parseSessionsArgs(args);
319
328
  } catch (error) {
320
329
  console.error(chalk.red("Error:"), error instanceof Error ? error.message : String(error));
321
330
  console.error(`Run ${chalk.cyan("very-happy sessions --help")} for usage.`);
322
- process.exit(1);
331
+ return 1;
323
332
  }
324
333
  if (options.action === "help") {
325
334
  console.log(SESSIONS_HELP);
326
- process.exit(0);
335
+ return 0;
327
336
  }
328
337
  try {
329
338
  if (options.action === "list" && options.all) {
@@ -354,7 +363,7 @@ async function handleSessionsCommand(args) {
354
363
  console.log(chalk.dim(`${foreign} session(s) belong to a machine that is not reachable right now${why}.`));
355
364
  }
356
365
  }
357
- process.exit(0);
366
+ return 0;
358
367
  }
359
368
  if (options.action === "list" && options.machine) {
360
369
  const listing = await listRemoteSessions(options.machine, { tag: options.tag, limit: options.limit });
@@ -367,7 +376,7 @@ async function handleSessionsCommand(args) {
367
376
  console.log(chalk.dim(`machine ${listing.host} (${listing.machineId})`));
368
377
  for (const summary of sessions) console.log(formatSummaryLine(summary));
369
378
  }
370
- process.exit(0);
379
+ return 0;
371
380
  }
372
381
  if (options.action === "list") {
373
382
  const sessions = await listSessions({ tag: options.tag, recentLimit: options.limit });
@@ -378,7 +387,7 @@ async function handleSessionsCommand(args) {
378
387
  } else {
379
388
  for (const summary of sessions) console.log(formatSummaryLine(summary));
380
389
  }
381
- process.exit(0);
390
+ return 0;
382
391
  }
383
392
  if (options.action === "peers" || options.action === "message") {
384
393
  const cwd = options.cwd ? resolve(options.cwd) : process.cwd();
@@ -391,7 +400,7 @@ async function handleSessionsCommand(args) {
391
400
  else if (!listing.project) console.log(`Not in a project (${self.sessionId}).`);
392
401
  else if (listing.peers.length === 0) console.log(`No other sessions in project "${listing.project.name}".`);
393
402
  else for (const peer of listing.peers) console.log([peer.sessionId, `[${peer.state ?? "?"}]`, peer.title ? `title="${peer.title}"` : "", peer.agent ? `agent=${peer.agent}` : "", peer.machine ? `machine=${peer.machine}` : "", peer.doing ? `doing="${peer.doing}"` : "", peer.url].filter(Boolean).join(" "));
394
- process.exit(0);
403
+ return 0;
395
404
  }
396
405
  if (options.action === "peers") {
397
406
  const scope = options.scope === "project" ? void 0 : options.scope;
@@ -412,7 +421,7 @@ async function handleSessionsCommand(args) {
412
421
  for (const edit of peer.edits) console.log(chalk.dim(` ${edit.tool} ${edit.path} (${Math.round((Date.now() - edit.at) / 6e4)}m ago)`));
413
422
  }
414
423
  }
415
- process.exit(0);
424
+ return 0;
416
425
  }
417
426
  const target = options.sessionId;
418
427
  try {
@@ -423,7 +432,7 @@ ${result.url}`);
423
432
  else if (result.status === "offline-stored") console.log(`Message ${result.messageId} ${result.note ?? "stored"} (${target} is not running; same project)
424
433
  ${result.url}`);
425
434
  else console.error(chalk.yellow("Not delivered:"), result.error ?? `session is ${result.status}`, result.stored ? "(stored server-side, unread)" : "");
426
- process.exit(peerMessageExitCode(result));
435
+ return peerMessageExitCode(result);
427
436
  } catch (error) {
428
437
  if (options.json) console.log(JSON.stringify({ delivered: false, to: target, error: error instanceof Error ? error.message : String(error) }));
429
438
  throw error;
@@ -474,18 +483,18 @@ ${result.url}`);
474
483
  const turn = result.turn;
475
484
  console.log(chalk.dim(`--- latest turn: ${turn.ended ? `ended (${turn.status ?? "unknown"})` : "running"}${turn.error ? ` \u2014 ${turn.error}` : ""} ---`));
476
485
  }
477
- process.exit(timedOut ? 2 : 0);
486
+ return timedOut ? 2 : 0;
478
487
  }
479
488
  if (options.action === "stop") {
480
489
  const stopped = await stopSession(sessionId);
481
490
  if (!stopped) {
482
491
  if (options.json) console.log(JSON.stringify({ sessionId, stopped: false }));
483
492
  console.error(chalk.red("Error:"), `Session ${sessionId} is not among the daemon's running sessions.`);
484
- process.exit(1);
493
+ return 1;
485
494
  }
486
495
  if (options.json) console.log(JSON.stringify({ sessionId, stopped: true }));
487
496
  else console.log(`Stopped ${sessionId}`);
488
- process.exit(0);
497
+ return 0;
489
498
  }
490
499
  if (options.action === "approve" || options.action === "deny") {
491
500
  const requestId = options.requestId;
@@ -507,7 +516,7 @@ ${result.url}`);
507
516
  if (options.json) console.log(JSON.stringify(result));
508
517
  const hint = result.outcome.status === "rate-limited" ? ` \u2014 the request is still pending; re-run in ~${Math.ceil(result.outcome.retryAfterMs / 1e3)}s` : "";
509
518
  console.error(chalk.red("Error:"), `${options.action} of ${requestId} on ${sessionId} was not delivered (${result.outcome.status}): ${result.outcome.message}${hint}`);
510
- process.exit(1);
519
+ return 1;
511
520
  }
512
521
  if (options.json) {
513
522
  console.log(JSON.stringify(result));
@@ -515,16 +524,16 @@ ${result.url}`);
515
524
  const verb = options.action === "approve" ? "Approved" : "Denied";
516
525
  console.log(`${verb} ${requestId} on ${sessionId} (${result.payload.decision})${result.settled ? "" : " \u2014 wrapper acknowledged, but the request was still listed as pending when we stopped waiting"}`);
517
526
  }
518
- process.exit(0);
527
+ return 0;
519
528
  }
520
529
  await archiveSession(sessionId);
521
530
  if (options.json) console.log(JSON.stringify({ sessionId, archived: true }));
522
531
  else console.log(`Archived ${sessionId}`);
523
- process.exit(0);
532
+ return 0;
524
533
  } catch (error) {
525
534
  console.error(chalk.red("Error:"), error instanceof Error ? error.message : String(error));
526
- process.exit(1);
535
+ return 1;
527
536
  }
528
537
  }
529
538
 
530
- export { SESSIONS_HELP, handleSessionsCommand, parseSessionsArgs, peerMessageExitCode, permissionFailureRecord };
539
+ export { SESSIONS_HELP, formatAccountSummaryLine, formatSummaryLine, handleSessionsCommand, parseSessionsArgs, peerMessageExitCode, permissionFailureRecord };
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var configuration = require('./configuration-C0ctLGW2.cjs');
4
- var api = require('./api-BDuuyys8.cjs');
3
+ var configuration = require('./configuration-DfPBa-9d.cjs');
4
+ var api = require('./api-BBxZ7y2z.cjs');
5
5
 
6
6
  function createOfflineSessionStub(sessionTag) {
7
7
  return {
@@ -1,5 +1,5 @@
1
- import { c as configuration } from './configuration-1FabKklB.mjs';
2
- import { s as startOfflineReconnection } from './api-B0yN68XH.mjs';
1
+ import { c as configuration } from './configuration-ECqXu34R.mjs';
2
+ import { s as startOfflineReconnection } from './api-jfeMRg5R.mjs';
3
3
 
4
4
  function createOfflineSessionStub(sessionTag) {
5
5
  return {
@@ -1,19 +1,19 @@
1
- import { r as resolveSpawnPermissionMode, c as chooseProject, j as joinProject, a as resolveFirstMessageMeta, w as waitsForModelCatalog, s as sanitizeSpawnPermissionMode, A as ALLOWED_SPAWN_PERMISSION_MODES, S as SPAWN_AGENTS } from './spawnAgents-Bh1RPShN.mjs';
2
- import { s as sharedProjectsClient } from './client-B161HwAk.mjs';
1
+ import { r as resolveSpawnPermissionMode, c as chooseProject, j as joinProject, a as resolveFirstMessageMeta, w as waitsForModelCatalog, s as sanitizeSpawnPermissionMode, A as ALLOWED_SPAWN_PERMISSION_MODES, S as SPAWN_AGENTS } from './spawnAgents-CjoU6ZOS.mjs';
2
+ import { s as sharedProjectsClient } from './client-Bi20Ka0h.mjs';
3
3
  import chalk from 'chalk';
4
4
  import { readFileSync, statSync } from 'node:fs';
5
5
  import { resolve } from 'node:path';
6
- import { b as checkIfDaemonRunningAndCleanupStaleState, g as spawnDaemonSession, f as stopDaemonSession } from './controlClient-DwNnNAUx.mjs';
7
- import { c as readPersistedSessions } from './persistence-0INrP3aB.mjs';
8
- import { p as parseLatestModelTable } from './index-WKyN-bNy.mjs';
9
- import { c as configuration } from './configuration-1FabKklB.mjs';
6
+ import { b as checkIfDaemonRunningAndCleanupStaleState, g as spawnDaemonSession, f as stopDaemonSession } from './controlClient-ClI7A0qE.mjs';
7
+ import { c as readPersistedSessions } from './persistence-Cpw4yJs8.mjs';
8
+ import { q as parseLatestModelTable } from './index-Bq8NKSCF.mjs';
9
+ import { c as configuration } from './configuration-ECqXu34R.mjs';
10
10
  import { g as getProjectPath } from './path-D2wdaNSk.mjs';
11
- import { f as forkSession, F as ForkSourceMissingError } from './claudeSessionFork-DzecSBO4.mjs';
12
- import { C as CodexAppServerClient } from './codexAppServerClient-BlVmpjR-.mjs';
13
- import { f as forkCodexThread } from './codexThreadFork-R76RU5H0.mjs';
14
- import { e as sendUserMessage, f as readSessionMetadata, g as waitForSessionKey, s as sessionWebUrl } from './sessionOps-CljctDs5.mjs';
15
- import { i as isValidSpawnOrigin } from './createSessionMetadata-CG6Klinp.mjs';
16
- import { l as logger } from './logger-DOKH3Zbh.mjs';
11
+ import { f as forkSession, F as ForkSourceMissingError } from './claudeSessionFork-CPvi6yDX.mjs';
12
+ import { C as CodexAppServerClient } from './codexAppServerClient-DXhAf6i-.mjs';
13
+ import { f as forkCodexThread } from './codexThreadFork-DobPd19R.mjs';
14
+ import { e as sendUserMessage, f as readSessionMetadata, g as waitForSessionKey, s as sessionWebUrl } from './sessionOps-DPw5k8vV.mjs';
15
+ import { i as isValidSpawnOrigin } from './createSessionMetadata-B0eT_Kfj.mjs';
16
+ import { l as logger } from './logger-GcbI0eg2.mjs';
17
17
  import { w as waitForForkBackfill } from './forkBackfill-DYIjlN1Z.mjs';
18
18
  import 'node:fs/promises';
19
19
  import 'zod';
@@ -22,17 +22,17 @@ import 'node:crypto';
22
22
  import 'tweetnacl';
23
23
  import '@paralleldrive/cuid2';
24
24
  import 'node:os';
25
- import './package-DTcaIhjW.mjs';
25
+ import './package-BsUHyqWe.mjs';
26
26
  import 'node:readline';
27
27
  import 'node:child_process';
28
28
  import 'cross-spawn';
29
29
  import './contentLogMetadata-BlWI0egu.mjs';
30
30
  import './manager-BEsI4qt3.mjs';
31
31
  import '@anthropic-ai/sandbox-runtime';
32
- import './rateLimitWindows-5vIuNjko.mjs';
32
+ import './rateLimitWindows-j_qQk0KY.mjs';
33
33
  import './processTree-CP5IvQ2Z.mjs';
34
34
  import 'axios';
35
- import './time-CUK37wiV.mjs';
35
+ import './time-D0jvDRhn.mjs';
36
36
  import './specialCommands-MXUN0wfI.mjs';
37
37
  import 'socket.io-client';
38
38
  import './backgroundTaskActivity-8PdPxrvy.mjs';
@@ -1,21 +1,21 @@
1
1
  'use strict';
2
2
 
3
- var spawnAgents = require('./spawnAgents-C1-4m7aN.cjs');
4
- var client = require('./client-DIfxYk7B.cjs');
3
+ var spawnAgents = require('./spawnAgents-CtkkIFHd.cjs');
4
+ var client = require('./client-C5-C0t2a.cjs');
5
5
  var chalk = require('chalk');
6
6
  var node_fs = require('node:fs');
7
7
  var path$1 = require('node:path');
8
- var controlClient = require('./controlClient-F7hAEEy2.cjs');
9
- var persistence = require('./persistence-CrzC7yr_.cjs');
10
- var index = require('./index-BOe6dKnL.cjs');
11
- var configuration = require('./configuration-C0ctLGW2.cjs');
8
+ var controlClient = require('./controlClient-C13_pSKG.cjs');
9
+ var persistence = require('./persistence-A2NeERZJ.cjs');
10
+ var index = require('./index-CLUHaPU8.cjs');
11
+ var configuration = require('./configuration-DfPBa-9d.cjs');
12
12
  var path = require('./path-B7zW-WwE.cjs');
13
- var claudeSessionFork = require('./claudeSessionFork-DsbcuDEJ.cjs');
14
- var codexAppServerClient = require('./codexAppServerClient-CO9f4Jr8.cjs');
15
- var codexThreadFork = require('./codexThreadFork-DNekT4nQ.cjs');
16
- var sessionOps = require('./sessionOps-BzeOKIEF.cjs');
17
- var createSessionMetadata = require('./createSessionMetadata-DezS33OM.cjs');
18
- var logger = require('./logger-BP1SW7Cs.cjs');
13
+ var claudeSessionFork = require('./claudeSessionFork-Cko4SaVi.cjs');
14
+ var codexAppServerClient = require('./codexAppServerClient-DKXeikEe.cjs');
15
+ var codexThreadFork = require('./codexThreadFork-5kwoKjMu.cjs');
16
+ var sessionOps = require('./sessionOps-DXlTmS7J.cjs');
17
+ var createSessionMetadata = require('./createSessionMetadata-Cf78KHtt.cjs');
18
+ var logger = require('./logger-Ct2zvaq0.cjs');
19
19
  var forkBackfill = require('./forkBackfill-8eLDeS73.cjs');
20
20
  require('node:fs/promises');
21
21
  require('zod');
@@ -24,17 +24,17 @@ require('node:crypto');
24
24
  require('tweetnacl');
25
25
  require('@paralleldrive/cuid2');
26
26
  require('node:os');
27
- require('./package-CYDdLA6R.cjs');
27
+ require('./package-9n7wd2dT.cjs');
28
28
  require('node:readline');
29
29
  require('node:child_process');
30
30
  require('cross-spawn');
31
31
  require('./contentLogMetadata-ZSFk_NjQ.cjs');
32
32
  require('./manager-HrEj442o.cjs');
33
33
  require('@anthropic-ai/sandbox-runtime');
34
- require('./rateLimitWindows-Cs56YJCH.cjs');
34
+ require('./rateLimitWindows-B2Kx6L0S.cjs');
35
35
  require('./processTree-CMHWlVse.cjs');
36
36
  require('axios');
37
- require('./time-XwEZxKGc.cjs');
37
+ require('./time-Cy0a-7YX.cjs');
38
38
  require('./specialCommands-J3JFOq0J.cjs');
39
39
  require('socket.io-client');
40
40
  require('./backgroundTaskActivity-CBvUdj39.cjs');
@@ -1,4 +1,4 @@
1
- import { k as getAgentCodeDefaults, l as isLatestModelMode, m as resolveLatestModel, n as normalizeAgentKey } from './index-WKyN-bNy.mjs';
1
+ import { u as getAgentCodeDefaults, v as isLatestModelMode, w as resolveLatestModel, L as LATEST_MODEL_MODE, E as EFFORT_INTENT_AUTO, x as normalizeAgentKey } from './index-Bq8NKSCF.mjs';
2
2
 
3
3
  function chooseProject(opts) {
4
4
  if (opts.project) return { kind: "explicit", projectId: opts.project };
@@ -56,12 +56,18 @@ function resolveFirstMessageMeta(input) {
56
56
  }).model;
57
57
  if (resolved) meta.model = resolved;
58
58
  else if (key === "claude" || input.explicitModel !== void 0) meta.model = null;
59
+ meta.modelIntent = LATEST_MODEL_MODE;
59
60
  } else if (input.explicitModel !== void 0) {
60
61
  meta.model = input.explicitModel === "default" ? null : input.explicitModel;
62
+ meta.modelIntent = input.explicitModel;
61
63
  } else if (key === "claude") {
62
64
  meta.model = wanted === "default" ? null : wanted;
65
+ meta.modelIntent = wanted;
66
+ }
67
+ if (key === "claude") {
68
+ meta.effort = null;
69
+ meta.effortIntent = EFFORT_INTENT_AUTO;
63
70
  }
64
- if (key === "claude") meta.effort = null;
65
71
  return meta;
66
72
  }
67
73
  function waitsForModelCatalog(agent, explicitModel) {
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-BOe6dKnL.cjs');
3
+ var index = require('./index-CLUHaPU8.cjs');
4
4
 
5
5
  function chooseProject(opts) {
6
6
  if (opts.project) return { kind: "explicit", projectId: opts.project };
@@ -58,12 +58,18 @@ function resolveFirstMessageMeta(input) {
58
58
  }).model;
59
59
  if (resolved) meta.model = resolved;
60
60
  else if (key === "claude" || input.explicitModel !== void 0) meta.model = null;
61
+ meta.modelIntent = index.LATEST_MODEL_MODE;
61
62
  } else if (input.explicitModel !== void 0) {
62
63
  meta.model = input.explicitModel === "default" ? null : input.explicitModel;
64
+ meta.modelIntent = input.explicitModel;
63
65
  } else if (key === "claude") {
64
66
  meta.model = wanted === "default" ? null : wanted;
67
+ meta.modelIntent = wanted;
68
+ }
69
+ if (key === "claude") {
70
+ meta.effort = null;
71
+ meta.effortIntent = index.EFFORT_INTENT_AUTO;
65
72
  }
66
- if (key === "claude") meta.effort = null;
67
73
  return meta;
68
74
  }
69
75
  function waitsForModelCatalog(agent, explicitModel) {
@@ -3,7 +3,7 @@
3
3
  var spawn = require('cross-spawn');
4
4
  var path = require('node:path');
5
5
  var projectPath = require('./projectPath-C3ioB4Bu.cjs');
6
- var logger = require('./logger-BP1SW7Cs.cjs');
6
+ var logger = require('./logger-Ct2zvaq0.cjs');
7
7
  var node_fs = require('node:fs');
8
8
 
9
9
  let cachedRuntime = null;
@@ -1,7 +1,7 @@
1
1
  import { spawn } from 'cross-spawn';
2
2
  import { join } from 'node:path';
3
3
  import { p as projectPath } from './projectPath-BTBIMB57.mjs';
4
- import { l as logger } from './logger-DOKH3Zbh.mjs';
4
+ import { l as logger } from './logger-GcbI0eg2.mjs';
5
5
  import { existsSync } from 'node:fs';
6
6
 
7
7
  let cachedRuntime = null;
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var logger = require('./logger-BP1SW7Cs.cjs');
3
+ var logger = require('./logger-Ct2zvaq0.cjs');
4
4
  var fs = require('fs/promises');
5
5
 
6
6
  function startFileWatcher(file, onFileChange, options = {}) {
@@ -1,4 +1,4 @@
1
- import { l as logger } from './logger-DOKH3Zbh.mjs';
1
+ import { l as logger } from './logger-GcbI0eg2.mjs';
2
2
  import { watch } from 'fs/promises';
3
3
 
4
4
  function startFileWatcher(file, onFileChange, options = {}) {