very-happy-cli 0.2.186 → 0.2.188

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 (204) hide show
  1. package/dist/{AcpBackend-ConXUH67.mjs → AcpBackend-2loP7MpF.mjs} +3 -3
  2. package/dist/{AcpBackend-aVv-_nH_.cjs → AcpBackend-B8AYkp5n.cjs} +3 -3
  3. package/dist/{AcpSessionManager-BxD1AQ8L.mjs → AcpSessionManager-C17doAoR.mjs} +2 -2
  4. package/dist/{AcpSessionManager-aRdzf_6R.cjs → AcpSessionManager-CLqo9R9Y.cjs} +2 -2
  5. package/dist/{BasePermissionHandler-BsOLZCNB.cjs → BasePermissionHandler-C8UEcFz0.cjs} +1 -1
  6. package/dist/{BasePermissionHandler-Hj7Qregq.mjs → BasePermissionHandler-CrfyUmqO.mjs} +1 -1
  7. package/dist/{acpSessionResume-CKacrrHV.mjs → acpSessionResume-F705a1cF.mjs} +1 -1
  8. package/dist/{acpSessionResume-CpPNoxaW.cjs → acpSessionResume-OuYlLGxL.cjs} +1 -1
  9. package/dist/{agentHome-CawmLuWV.mjs → agentHome-Dc7LYF3d.mjs} +4 -4
  10. package/dist/{agentHome-VS7FrFQZ.cjs → agentHome-DsKHJ_Sf.cjs} +4 -4
  11. package/dist/{api-DjqQTT16.cjs → api-BOqjYd5r.cjs} +10 -10
  12. package/dist/{api-DUFy21Nf.mjs → api-DNKa7kVy.mjs} +10 -10
  13. package/dist/{apiMachine-D2BrVBYu.cjs → apiMachine--rcPpMmt.cjs} +14 -14
  14. package/dist/{apiMachine-B0sBCHNZ.mjs → apiMachine-Di1G9ECW.mjs} +14 -14
  15. package/dist/{attachmentContent-2kInPZrP.cjs → attachmentContent-BFRMLong.cjs} +2 -2
  16. package/dist/{attachmentContent-D01-pLOB.mjs → attachmentContent-C9S4ekAz.mjs} +2 -2
  17. package/dist/{auth-DP3eN2Fv.mjs → auth-BNhhk2Fr.mjs} +5 -5
  18. package/dist/{auth-B-CqTcVh.mjs → auth-Bzwo_vOM.mjs} +8 -8
  19. package/dist/{auth-CujfCIv-.cjs → auth-CQtfznF0.cjs} +8 -8
  20. package/dist/{auth-CImUXAjH.cjs → auth-CXmI92aj.cjs} +5 -5
  21. package/dist/{auto-D4KRQIBu.mjs → auto-DHYOLnXB.mjs} +19 -19
  22. package/dist/{auto-oWgZl7mM.cjs → auto-DXLdaX5O.cjs} +19 -19
  23. package/dist/{bootstrap-MFmMruyB.mjs → bootstrap-Di38SnpN.mjs} +2 -2
  24. package/dist/{bootstrap-B7YvJcVK.cjs → bootstrap-eJ1l7VYl.cjs} +2 -2
  25. package/dist/{browser-CfFbN1Us.mjs → browser-6Cg7G6bb.mjs} +1 -1
  26. package/dist/{browser-C19iD31j.cjs → browser-D3uBFRQu.cjs} +1 -1
  27. package/dist/{claudeLocal-C4A7-BmS.cjs → claudeLocal-BBaE4QF_.cjs} +9 -8
  28. package/dist/{claudeLocal-C6wNx9qH.mjs → claudeLocal-CqaEs-81.mjs} +7 -6
  29. package/dist/{claudeLocalLauncher-DdPfufcS.mjs → claudeLocalLauncher-BDUPxtsI.mjs} +11 -11
  30. package/dist/{claudeLocalLauncher-BfCKs7Le.cjs → claudeLocalLauncher-wPxKtH_P.cjs} +11 -11
  31. package/dist/{claudeSessionFork-B8NjdHYD.cjs → claudeSessionFork-CmY25Fl3.cjs} +1 -1
  32. package/dist/{claudeSessionFork-D8XT48Lf.mjs → claudeSessionFork-DzWFzj9m.mjs} +1 -1
  33. package/dist/{client-jAdkYZRf.cjs → client-C2HcMqRF.cjs} +14 -5
  34. package/dist/{client-DAnQqPmc.mjs → client-DWws_aQK.mjs} +2 -2
  35. package/dist/{client-BfGuTBMO.mjs → client-DcDE6Ifk.mjs} +2 -2
  36. package/dist/{client-CMIhQ32m.cjs → client-DmY03OZZ.cjs} +2 -2
  37. package/dist/{client-CTNxuHVc.cjs → client-agH03Irm.cjs} +2 -2
  38. package/dist/{client-CKM07bJH.mjs → client-qJ0y8fus.mjs} +14 -5
  39. package/dist/codex/happyMcpStdioBridge.cjs +18 -17
  40. package/dist/codex/happyMcpStdioBridge.mjs +18 -17
  41. package/dist/{codexAppServerClient-DhOC61k9.mjs → codexAppServerClient-DgE99i7X.mjs} +39 -5
  42. package/dist/{codexAppServerClient-Dv1Mh3MS.cjs → codexAppServerClient-DwzC8LR0.cjs} +39 -5
  43. package/dist/{codexCommand-CWrFt3Ne.cjs → codexCommand-1vFEA1KT.cjs} +118 -60
  44. package/dist/{codexCommand-D3_i93Rm.mjs → codexCommand-DUSVzbKh.mjs} +115 -57
  45. package/dist/{codexTermination-B08GgahL.mjs → codexTermination-Bybovr2z.mjs} +1 -1
  46. package/dist/{codexTermination-DErS0cGt.cjs → codexTermination-DuDPyBRR.cjs} +1 -1
  47. package/dist/{config-D3OBduhj.mjs → config-BrzZ0O-6.mjs} +3 -3
  48. package/dist/{config-D_aj3xgw.cjs → config-C4xOL5bH.cjs} +3 -3
  49. package/dist/{configuration-DbCHeEeP.mjs → configuration-BZHpFD7K.mjs} +1 -1
  50. package/dist/{configuration-CI0GWwaT.cjs → configuration-DyPW9mVa.cjs} +1 -1
  51. package/dist/{connect-BuwVpjkZ.mjs → connect-Cw_INlj8.mjs} +13 -13
  52. package/dist/{connect-839tEkPN.cjs → connect-DurKwMEo.cjs} +13 -13
  53. package/dist/{context-zhirgqSw.cjs → context-2xDvjkQp.cjs} +1 -1
  54. package/dist/{context-D2Y_qLs0.mjs → context-t7YV0aZc.mjs} +1 -1
  55. package/dist/{controlClient-Dv80mB_j.mjs → controlClient-Bw56NIrj.mjs} +4 -4
  56. package/dist/{controlClient-BIi1tzEo.cjs → controlClient-DvFaPsg6.cjs} +3 -3
  57. package/dist/{createSessionMetadata-Dqy_DfoF.mjs → createSessionMetadata-Dn5BkLfU.mjs} +2 -2
  58. package/dist/{createSessionMetadata-DT24NjY2.cjs → createSessionMetadata-Dpg6bV6f.cjs} +2 -2
  59. package/dist/{defaultPermissionMode-yR27mevc.mjs → defaultPermissionMode-DMTnlccv.mjs} +2 -2
  60. package/dist/{defaultPermissionMode-BYqJbPhc.cjs → defaultPermissionMode-Dlm0q1m0.cjs} +2 -2
  61. package/dist/{deterministicJson-COiJcmUR.mjs → deterministicJson-CsRckxVq.mjs} +14 -14
  62. package/dist/{deterministicJson-CoWlyn_X.cjs → deterministicJson-D0BrV1FD.cjs} +14 -14
  63. package/dist/{doctor-Ymj096qP.mjs → doctor-B4HQiW6j.mjs} +7 -7
  64. package/dist/{doctor-DI6aIOne.cjs → doctor-CYe4d9kU.cjs} +7 -7
  65. package/dist/{downloadTarget-BOXHrxbm.cjs → downloadTarget-CuhBVvuC.cjs} +6 -6
  66. package/dist/{downloadTarget-DRXCRDub.mjs → downloadTarget-tYMV_VHo.mjs} +6 -6
  67. package/dist/{ensureDaemonRunning-BqNjYnar.cjs → ensureDaemonRunning-Ce3BlWiR.cjs} +5 -5
  68. package/dist/{ensureDaemonRunning-DTrrXAdz.mjs → ensureDaemonRunning-DVtIG9z7.mjs} +5 -5
  69. package/dist/{handleResumeCommand-DW_MRgtz.mjs → handleResumeCommand-BU1uMNyv.mjs} +5 -5
  70. package/dist/{handleResumeCommand-BBKUGhCv.cjs → handleResumeCommand-CLxsmAW0.cjs} +5 -5
  71. package/dist/{index-Cyu_8WAd.mjs → index-B1OxWiNG.mjs} +3 -3
  72. package/dist/{index-BumVulwx.cjs → index-BOe6dKnL.cjs} +215 -18
  73. package/dist/{index-04pYyzsJ.mjs → index-CVHRt3SS.mjs} +4 -4
  74. package/dist/{index-WW17yjQO.mjs → index-ChX0eVXw.mjs} +92 -46
  75. package/dist/{index-CmlAXizv.mjs → index-DDz0Ftoy.mjs} +7 -7
  76. package/dist/{index-D9lJhXUk.cjs → index-DG1kGjkF.cjs} +93 -47
  77. package/dist/{index-W8wlfp57.cjs → index-DoXbGEAi.cjs} +3 -3
  78. package/dist/{index-Bq6VHNdk.cjs → index-KwuXqLwe.cjs} +4 -4
  79. package/dist/{index-B9f1vKcC.mjs → index-WKyN-bNy.mjs} +212 -17
  80. package/dist/{index-CY573fnz.cjs → index-wWJJAQRk.cjs} +7 -7
  81. package/dist/index.cjs +2 -2
  82. package/dist/index.mjs +2 -2
  83. package/dist/{install-F3rP8tBU.mjs → install-B8O1JpJH.mjs} +1 -1
  84. package/dist/{install-BATFlr_l.cjs → install-BOHlqewf.cjs} +1 -1
  85. package/dist/{install-C5XCDwgD.mjs → install-CMa_FOWu.mjs} +3 -3
  86. package/dist/{install-C1y_g7kj.cjs → install-cAYvHxXR.cjs} +3 -3
  87. package/dist/lib.cjs +12 -12
  88. package/dist/lib.d.cts +6 -0
  89. package/dist/lib.d.mts +6 -0
  90. package/dist/lib.mjs +12 -12
  91. package/dist/{lidState-CZ1ggYiB.mjs → lidState-D-lsD1FS.mjs} +1 -1
  92. package/dist/{lidState-BxHu6dus.cjs → lidState-d1vgQ3n7.cjs} +1 -1
  93. package/dist/{localHappyAgentAuth-BHklNDKQ.cjs → localHappyAgentAuth-DucSnCg3.cjs} +1 -1
  94. package/dist/{localHappyAgentAuth-OJk4xDwg.mjs → localHappyAgentAuth-wvDp-nGj.mjs} +1 -1
  95. package/dist/{logger-L0pLBOLK.cjs → logger-C3vZG6Q0.cjs} +2 -2
  96. package/dist/{logger-CpaeM90D.mjs → logger-RpzJ4d8V.mjs} +2 -2
  97. package/dist/{machineMetadata-YeHF4gSY.cjs → machineMetadata-CAvFq1Jg.cjs} +3 -3
  98. package/dist/{machineMetadata-ukaYmmlK.mjs → machineMetadata-CiQ2_1Mq.mjs} +3 -3
  99. package/dist/{main-VyiAJXfb.cjs → main-ChpYcFZi.cjs} +46 -46
  100. package/dist/{main-pkH_VRP-.mjs → main-IPhaImjm.mjs} +46 -46
  101. package/dist/{mcp-Y8Xsr2Xh.cjs → mcp-2xF232hL.cjs} +15 -15
  102. package/dist/{mcp-BwoAhEnN.mjs → mcp-CWnMvju6.mjs} +15 -15
  103. package/dist/{mirrorProtocol-Did0-1jn.cjs → mirrorProtocol-CVzPObON.cjs} +3 -3
  104. package/dist/{mirrorProtocol-DukUp2Bj.mjs → mirrorProtocol-Dr7fNq8V.mjs} +3 -3
  105. package/dist/{package-DagIeOhi.mjs → package-CwB8rFJt.mjs} +10 -10
  106. package/dist/{package-BuATIMpK.cjs → package-Gnf_935w.cjs} +10 -10
  107. package/dist/{panels-CZ_CRUbM.cjs → panels-DTlTsndU.cjs} +5 -5
  108. package/dist/{panels-C3dUoUbA.mjs → panels-L1mSkC-y.mjs} +5 -5
  109. package/dist/{peerTools-CUCqJ83-.mjs → peerTools-2_8Bw9PU.mjs} +5 -5
  110. package/dist/{peerTools-Cs3Ln6d0.cjs → peerTools-C1E5cQ86.cjs} +5 -5
  111. package/dist/{persistence-FgtDuVAP.mjs → persistence-Bn4qEbDg.mjs} +2 -2
  112. package/dist/{persistence-CIzOAWK6.cjs → persistence-CqtjFiD1.cjs} +2 -2
  113. package/dist/{piRunnerArgs-CJhXFPM9.cjs → piRunnerArgs-BI8yQRBZ.cjs} +1 -1
  114. package/dist/{piRunnerArgs-YbYkfixz.mjs → piRunnerArgs-DWBb63W9.mjs} +1 -1
  115. package/dist/{piRuntime-CEzoAYHe.cjs → piRuntime--mQ43MSM.cjs} +2 -2
  116. package/dist/{piRuntime-CShuw-1A.mjs → piRuntime-Do8oqbm3.mjs} +2 -2
  117. package/dist/{piTerminal-DVr2W6bI.cjs → piTerminal-BzcvLFsP.cjs} +18 -18
  118. package/dist/{piTerminal-BvvcgVoW.mjs → piTerminal-GC1KHTYQ.mjs} +18 -18
  119. package/dist/promptCacheTtl-B8PCzE6k.cjs +76 -0
  120. package/dist/promptCacheTtl-Ce0TVbrx.mjs +72 -0
  121. package/dist/{pushNotifications-2CyhYAte.mjs → pushNotifications-BThg4nVd.mjs} +3 -3
  122. package/dist/{pushNotifications-OtQY-Mfa.cjs → pushNotifications-Bb-QSqXw.cjs} +3 -3
  123. package/dist/{query-DimRl61I.cjs → query-Bz3pocKH.cjs} +5 -4
  124. package/dist/{query-B7DvMlYM.mjs → query-CkgIJ_Dy.mjs} +3 -2
  125. package/dist/{specialCommands-ByrcSYSh.cjs → rateLimitReporter-BkHyvLru.cjs} +3 -55
  126. package/dist/{specialCommands-B-DAeFrU.mjs → rateLimitReporter-Iw4k3Bbr.mjs} +4 -55
  127. package/dist/{rateLimitWindows-DwhrA5wy.cjs → rateLimitWindows-Bm_dcQGW.cjs} +1 -1
  128. package/dist/{rateLimitWindows-C0zbGT7K.mjs → rateLimitWindows-CQ4tIQnx.mjs} +1 -1
  129. package/dist/{registerCommonHandlers-De54jKz8.cjs → registerCommonHandlers-CIs6H2DV.cjs} +2 -2
  130. package/dist/{registerCommonHandlers-X9lnO2TF.mjs → registerCommonHandlers-CaWl9ll1.mjs} +2 -2
  131. package/dist/{remoteSessionClient-9j3N_bzV.cjs → remoteSessionClient-DgUMfPW4.cjs} +5 -5
  132. package/dist/{remoteSessionClient-BApor-c2.mjs → remoteSessionClient-uPj7omsw.mjs} +5 -5
  133. package/dist/{reportProgressTool-RR5VkbDf.cjs → reportProgressTool-CaJ8EwLq.cjs} +3 -3
  134. package/dist/{reportProgressTool-6mDoxKuq.mjs → reportProgressTool-DUEq3xAL.mjs} +3 -3
  135. package/dist/{resources-CqwHPhdK.cjs → resources-BZ_Be0qM.cjs} +1 -1
  136. package/dist/{resources-CLdQfe3b.mjs → resources-CLP_MpK4.mjs} +1 -1
  137. package/dist/{run-CmA3cPD_.mjs → run-DTUJBD6p.mjs} +37 -37
  138. package/dist/{run-B2ZorDI7.cjs → run-DyyGMqND.cjs} +37 -37
  139. package/dist/{runClaude-Dk73bQ0n.cjs → runClaude-8JDaPoGQ.cjs} +22 -22
  140. package/dist/{runClaude-bxwea9mX.mjs → runClaude-DTNvIz2J.mjs} +22 -22
  141. package/dist/{runClaudeDeps-dVfReVd4.cjs → runClaudeDeps-BeLo5zss.cjs} +84 -55
  142. package/dist/{runClaudeDeps-DoaYM017.mjs → runClaudeDeps-CgGkgg7e.mjs} +86 -56
  143. package/dist/{runGemini-BD-wQe5q.cjs → runGemini-BSOdU563.cjs} +55 -51
  144. package/dist/{runGemini-Dq2iv4UF.mjs → runGemini-eU8UOzfc.mjs} +53 -49
  145. package/dist/{runOpenClaw-BXLv_bvU.cjs → runOpenClaw-CYyFoGRZ.cjs} +30 -26
  146. package/dist/{runOpenClaw-C1NB1aLx.mjs → runOpenClaw-D8RZiA1e.mjs} +28 -24
  147. package/dist/{sandbox-9MIBf8kS.cjs → sandbox-C8zfNX-4.cjs} +4 -4
  148. package/dist/{sandbox-Dqs_T8Jw.mjs → sandbox-DlPahdhl.mjs} +4 -4
  149. package/dist/selfCheck-4bcdHPFQ.mjs +86 -0
  150. package/dist/{selfCheck-CkUezhrg.cjs → selfCheck-D28nvuPJ.cjs} +37 -37
  151. package/dist/{send-rdhpycNB.cjs → send-C58kX4qz.cjs} +8 -8
  152. package/dist/{send-4q066vij.mjs → send-DBpv-1eh.mjs} +8 -8
  153. package/dist/{server-DxTjt1mK.cjs → server-I_CETZzn.cjs} +6 -6
  154. package/dist/{server-DN6TvjhP.mjs → server-J5K6pOox.mjs} +4 -4
  155. package/dist/{sessionLock-DOsE5UUf.mjs → sessionLock-C7Wg1RVd.mjs} +3 -3
  156. package/dist/{sessionLock-h4162Jrf.cjs → sessionLock-DjE7O0LS.cjs} +3 -3
  157. package/dist/{sessionOps--9p2IzVA.mjs → sessionOps-CYjMT7Ad.mjs} +4 -4
  158. package/dist/{sessionOps-tmBKG5qg.cjs → sessionOps-DGMpl9NB.cjs} +4 -4
  159. package/dist/{sessionProvider-B9w7rFDR.cjs → sessionProvider-DVtxrOuM.cjs} +5 -5
  160. package/dist/{sessionProvider-C6MHJZ9Z.mjs → sessionProvider-TLiFn9kD.mjs} +5 -5
  161. package/dist/{sessionScanner-Bgvz8Uiy.cjs → sessionScanner-BZ1ZSn6I.cjs} +3 -3
  162. package/dist/{sessionScanner-B6hzp5R9.mjs → sessionScanner-CknV1IlN.mjs} +3 -3
  163. package/dist/{sessions-DJMVXKRz.cjs → sessions-CTkBKs5U.cjs} +10 -10
  164. package/dist/{sessions-iItaUQAF.mjs → sessions-DU4bxkap.mjs} +10 -10
  165. package/dist/{setupOfflineReconnection-DL4HUMDJ.cjs → setupOfflineReconnection-CQHNuP_0.cjs} +2 -2
  166. package/dist/{setupOfflineReconnection-DF78nz1N.mjs → setupOfflineReconnection-DaOXnGuH.mjs} +2 -2
  167. package/dist/{spawn-CL9A8dBJ.cjs → spawn-C0wZc03S.cjs} +67 -25
  168. package/dist/{spawn-CoYfACsc.mjs → spawn-DdnYTtQe.mjs} +67 -26
  169. package/dist/{spawnAgents-DsJSyLDl.cjs → spawnAgents-BjyU78Ue.cjs} +21 -9
  170. package/dist/{spawnAgents-f2q31uUV.mjs → spawnAgents-D-7wMw-a.mjs} +21 -10
  171. package/dist/{spawnHappyCLI-BWOub_Uf.cjs → spawnHappyCLI-BJUd974I.cjs} +1 -1
  172. package/dist/{spawnHappyCLI-BcSO1rF6.mjs → spawnHappyCLI-CnyyJk74.mjs} +1 -1
  173. package/dist/{registerKillSessionHandler-CAif4Uz4.cjs → specialCommands-BsvSoDhC.cjs} +91 -6
  174. package/dist/{registerKillSessionHandler-CrLsN5m3.mjs → specialCommands-DHU7TNeK.mjs} +88 -7
  175. package/dist/{startFileWatcher-DVia64Vg.mjs → startFileWatcher-CpO5Mwbr.mjs} +1 -1
  176. package/dist/{startFileWatcher-BZrpUz7_.cjs → startFileWatcher-DBboREco.cjs} +1 -1
  177. package/dist/{startupSessionCreate-CY4tPjlZ.mjs → startupSessionCreate-BgaVuvQp.mjs} +1 -1
  178. package/dist/{startupSessionCreate-63ABDnfJ.cjs → startupSessionCreate-C1u2dtz8.cjs} +1 -1
  179. package/dist/{streamRelay-B3FloUTT.mjs → streamRelay-CqBynIon.mjs} +1 -1
  180. package/dist/{streamRelay-Cn_uGG6m.cjs → streamRelay-D9a4cBEa.cjs} +1 -1
  181. package/dist/{sync-CKSmwxec.cjs → sync-6HFRJP1h.cjs} +1 -1
  182. package/dist/{sync-CZjyTC4v.mjs → sync-I8NYmycF.mjs} +1 -1
  183. package/dist/{systemPrompt-BPzhf5d5.cjs → systemPrompt-BDWj5QSL.cjs} +2 -2
  184. package/dist/{systemPrompt-BKUVX-fd.mjs → systemPrompt-C1RSY_60.mjs} +2 -2
  185. package/dist/{teams-B2-KPjRg.mjs → teams-GpLFbXXE.mjs} +9 -9
  186. package/dist/{teams-CHBszdmc.cjs → teams-eUD7ymif.cjs} +9 -9
  187. package/dist/{template-DPsqlHJQ.cjs → template-17HATY_Y.cjs} +1 -1
  188. package/dist/{template-DuKZw-Sz.mjs → template-CEK8MEjo.mjs} +1 -1
  189. package/dist/{time-DcICfW0N.cjs → time-BAJRbB6U.cjs} +1 -1
  190. package/dist/{time-BsNUVcKH.mjs → time-umG7yHkb.mjs} +1 -1
  191. package/dist/{titleGenerator-B4b4ah--.mjs → titleGenerator-dmFlxkRs.mjs} +1 -1
  192. package/dist/{titleGenerator-Bvk1mx7G.cjs → titleGenerator-iqb2jOF1.cjs} +2 -2
  193. package/dist/{todo-C7--CBge.mjs → todo-CT4AJ3sH.mjs} +6 -6
  194. package/dist/{todo-BN4hhun6.cjs → todo-DsR7WnQS.cjs} +6 -6
  195. package/dist/tools-30E66QL_.cjs +140 -0
  196. package/dist/tools-BOWazSD6.mjs +137 -0
  197. package/dist/{uninstall-_qDbgdxh.cjs → uninstall-BtTc9hHa.cjs} +3 -3
  198. package/dist/{uninstall-Bjwl9bqK.mjs → uninstall-DImXs6VZ.mjs} +3 -3
  199. package/package.json +10 -10
  200. package/dist/selfCheck-Dz_Sm7w8.mjs +0 -86
  201. package/dist/smallFastModel-BLNgMrwR.mjs +0 -18
  202. package/dist/smallFastModel-D_uxGMo3.cjs +0 -21
  203. package/dist/tools-BILbS8Hh.mjs +0 -60
  204. package/dist/tools-Bl5Q_6Nr.cjs +0 -63
@@ -1,101 +1,101 @@
1
1
  'use strict';
2
2
 
3
- var logger = require('./logger-L0pLBOLK.cjs');
4
- var controlClient = require('./controlClient-BIi1tzEo.cjs');
3
+ var logger = require('./logger-C3vZG6Q0.cjs');
4
+ var controlClient = require('./controlClient-DvFaPsg6.cjs');
5
5
  var backgroundTaskActivity = require('./backgroundTaskActivity-CBvUdj39.cjs');
6
- var deterministicJson = require('./deterministicJson-CoWlyn_X.cjs');
7
- var client = require('./client-CTNxuHVc.cjs');
6
+ var deterministicJson = require('./deterministicJson-D0BrV1FD.cjs');
7
+ var client = require('./client-agH03Irm.cjs');
8
8
  var node_crypto = require('node:crypto');
9
+ var specialCommands = require('./specialCommands-BsvSoDhC.cjs');
9
10
  var sessionExitLifecycle = require('./sessionExitLifecycle-DFltxXU8.cjs');
10
- var query = require('./query-DimRl61I.cjs');
11
+ var query = require('./query-Bz3pocKH.cjs');
11
12
  var claudeAgentSdk = require('@anthropic-ai/claude-agent-sdk');
12
13
  var permissionMode = require('./permissionMode-CrV-XuMs.cjs');
13
- var systemPrompt = require('./systemPrompt-BPzhf5d5.cjs');
14
+ var systemPrompt = require('./systemPrompt-BDWj5QSL.cjs');
14
15
  var path$1 = require('node:path');
15
- var specialCommands = require('./specialCommands-ByrcSYSh.cjs');
16
16
  require('axios');
17
17
  require('node:events');
18
18
  require('socket.io-client');
19
- var pushNotifications = require('./pushNotifications-OtQY-Mfa.cjs');
19
+ var pushNotifications = require('./pushNotifications-Bb-QSqXw.cjs');
20
20
  require('tweetnacl');
21
- var configuration = require('./configuration-CI0GWwaT.cjs');
22
- require('./index-BumVulwx.cjs');
23
- require('./registerCommonHandlers-De54jKz8.cjs');
21
+ var configuration = require('./configuration-DyPW9mVa.cjs');
22
+ require('./index-BOe6dKnL.cjs');
23
+ require('./registerCommonHandlers-CIs6H2DV.cjs');
24
24
  require('os');
25
25
  require('child_process');
26
26
  require('@paralleldrive/cuid2');
27
- require('./persistence-CIzOAWK6.cjs');
27
+ require('./persistence-CqtjFiD1.cjs');
28
28
  var contentLogMetadata = require('./contentLogMetadata-ZSFk_NjQ.cjs');
29
29
  require('chalk');
30
30
  var types = require('./types-CRS-srZK.cjs');
31
31
  var path = require('./path-B7zW-WwE.cjs');
32
32
  var fs = require('fs/promises');
33
- var time = require('./time-DcICfW0N.cjs');
33
+ var time = require('./time-BAJRbB6U.cjs');
34
34
  var node_fs = require('node:fs');
35
- var sessionScanner = require('./sessionScanner-Bgvz8Uiy.cjs');
35
+ var sessionScanner = require('./sessionScanner-BZ1ZSn6I.cjs');
36
36
  var node_child_process = require('node:child_process');
37
- var streamRelay = require('./streamRelay-Cn_uGG6m.cjs');
38
- var attachmentContent = require('./attachmentContent-2kInPZrP.cjs');
37
+ var streamRelay = require('./streamRelay-D9a4cBEa.cjs');
38
+ var attachmentContent = require('./attachmentContent-BFRMLong.cjs');
39
39
  var promises = require('node:fs/promises');
40
- var claudeSessionFork = require('./claudeSessionFork-B8NjdHYD.cjs');
41
- var registerKillSessionHandler = require('./registerKillSessionHandler-CAif4Uz4.cjs');
42
- var doctor = require('./doctor-DI6aIOne.cjs');
40
+ var claudeSessionFork = require('./claudeSessionFork-CmY25Fl3.cjs');
41
+ var rateLimitReporter = require('./rateLimitReporter-BkHyvLru.cjs');
42
+ var doctor = require('./doctor-CYe4d9kU.cjs');
43
43
  var node_http = require('node:http');
44
44
  var editPaths = require('./editPaths-Bqp4OFPw.cjs');
45
45
  var projectPath = require('./projectPath-C3ioB4Bu.cjs');
46
46
  var processTreeSnapshot = require('./processTreeSnapshot-mDbnuojn.cjs');
47
- var titleGenerator = require('./titleGenerator-Bvk1mx7G.cjs');
47
+ var titleGenerator = require('./titleGenerator-iqb2jOF1.cjs');
48
48
  var oneShotPrompts = require('./oneShotPrompts-CL0dip9C.cjs');
49
- var reportProgressTool = require('./reportProgressTool-RR5VkbDf.cjs');
49
+ var reportProgressTool = require('./reportProgressTool-CaJ8EwLq.cjs');
50
50
  require('node:util');
51
51
  require('./prompt-Bof2aQkI.cjs');
52
52
  require('node:os');
53
53
  require('zod');
54
54
  require('./pi-DlsrPCTa.cjs');
55
55
  require('./fileStore-7qhnbs6N.cjs');
56
- require('./client-jAdkYZRf.cjs');
57
- require('./context-zhirgqSw.cjs');
58
- require('./sessionOps-tmBKG5qg.cjs');
56
+ require('./client-C2HcMqRF.cjs');
57
+ require('./context-2xDvjkQp.cjs');
58
+ require('./sessionOps-DGMpl9NB.cjs');
59
59
  require('./authRelay-Dy1qU9td.cjs');
60
- require('./resources-CqwHPhdK.cjs');
61
- require('./tools-Bl5Q_6Nr.cjs');
62
- require('./peerTools-Cs3Ln6d0.cjs');
60
+ require('./resources-BZ_Be0qM.cjs');
61
+ require('./tools-30E66QL_.cjs');
62
+ require('./peerTools-C1E5cQ86.cjs');
63
63
  require('./ids-B6ZC0HGt.cjs');
64
- require('./remoteSessionClient-9j3N_bzV.cjs');
64
+ require('./remoteSessionClient-DgUMfPW4.cjs');
65
65
  require('@modelcontextprotocol/sdk/server/mcp.js');
66
66
  require('@modelcontextprotocol/sdk/server/streamableHttp.js');
67
67
  require('./limits-C-a7gr04.cjs');
68
- require('./downloadTarget-BOXHrxbm.cjs');
68
+ require('./downloadTarget-CuhBVvuC.cjs');
69
69
  require('./terminals-B_bfC9c2.cjs');
70
70
  require('./terminalTitleSuggest-DhvRFX3H.cjs');
71
71
  require('./tmuxSocket-D-Xt6Vn-.cjs');
72
- require('./bootstrap-B7YvJcVK.cjs');
73
- require('./package-BuATIMpK.cjs');
72
+ require('./bootstrap-eJ1l7VYl.cjs');
73
+ require('./package-Gnf_935w.cjs');
74
74
  require('./agentGuidance-BtBx2xxE.cjs');
75
75
  require('./trimIdent-4gvk9Wk6.cjs');
76
76
  require('./webPanels-FCgFKvVe.cjs');
77
77
  require('./previewPath-B0rBdhy1.cjs');
78
78
  require('crypto');
79
- require('./smallFastModel-D_uxGMo3.cjs');
80
- require('./rateLimitWindows-DwhrA5wy.cjs');
79
+ require('./promptCacheTtl-B8PCzE6k.cjs');
81
80
  require('util');
82
81
  require('path');
83
82
  require('cross-spawn');
84
- require('./sync-CKSmwxec.cjs');
83
+ require('./sync-6HFRJP1h.cjs');
85
84
  require('./transcriptCursor-DcXGLeSc.cjs');
86
- require('./startFileWatcher-BZrpUz7_.cjs');
85
+ require('./startFileWatcher-DBboREco.cjs');
87
86
  require('node:readline');
87
+ require('./rateLimitWindows-Bm_dcQGW.cjs');
88
88
  require('./doctor-u46qYYKX.cjs');
89
89
  require('ps-list');
90
90
  require('./doctorReadiness-Dl6yRQCy.cjs');
91
91
  require('./detectCLI-BuYR_Qxe.cjs');
92
92
  require('fs');
93
93
  require('./cliUpdate-DsKXPFYp.cjs');
94
- require('./piRunnerArgs-CJhXFPM9.cjs');
95
- require('./acpSessionResume-CpPNoxaW.cjs');
94
+ require('./piRunnerArgs-BI8yQRBZ.cjs');
95
+ require('./acpSessionResume-OuYlLGxL.cjs');
96
96
  require('url');
97
97
  require('node:module');
98
- require('./client-CMIhQ32m.cjs');
98
+ require('./client-DmY03OZZ.cjs');
99
99
  require('./precheckCompat-CWOi5c9L.cjs');
100
100
 
101
101
  const SCHEDULE_WAKEUP_GRACE_MS = 6e4;
@@ -651,6 +651,14 @@ function createRuntimeControls(isThinking) {
651
651
  return { setQuery, observe, request, stopRunningTasks };
652
652
  }
653
653
 
654
+ async function finalizeRemotePrompt(prompt, deps) {
655
+ const command = specialCommands.parseSpecialCommand(prompt).type;
656
+ if (command === "compact" || command === "clear") return prompt;
657
+ deps.board?.onTurnStart(deps.sourceIds);
658
+ const text = deps.board ? await deps.board.decorate(prompt) : prompt;
659
+ return deps.project.decorate(text);
660
+ }
661
+
654
662
  const CLAUDE_COMMAND_LIFECYCLE_STATES = ["queued", "started", "completed", "cancelled", "discarded", "refused"];
655
663
  function readClaudeCommandLifecycle(frame) {
656
664
  const m = frame;
@@ -910,6 +918,18 @@ async function awaitFileExist(file, timeout = 1e4) {
910
918
  return false;
911
919
  }
912
920
 
921
+ function readCompactStatus(message) {
922
+ if (!message || typeof message !== "object") return null;
923
+ const frame = message;
924
+ if (frame.type !== "system" || frame.subtype !== "status" || typeof frame.compact_result !== "string") return null;
925
+ return typeof frame.compact_error === "string" && frame.compact_error.trim() ? { result: frame.compact_result, error: frame.compact_error.trim() } : { result: frame.compact_result };
926
+ }
927
+ function compactOutcomeEvent(result, status) {
928
+ if (result.subtype !== "success") return `Compaction failed: ${result.errors?.join("\n") || result.subtype}`;
929
+ if (status && status.result !== "success") return `Compaction failed: ${status.error ?? status.result}`;
930
+ return "Compaction completed";
931
+ }
932
+
913
933
  const SDK_TIMING_FIELDS = ["ttft_ms", "time_to_request_ms", "time_to_request_from_spawn_ms"];
914
934
  function delta(from, to) {
915
935
  if (typeof from !== "number" || typeof to !== "number" || to < from) return "-";
@@ -1445,10 +1465,12 @@ async function claudeRemote(opts) {
1445
1465
  if (opts.onSessionReset) {
1446
1466
  opts.onSessionReset();
1447
1467
  }
1468
+ opts.onStartArgsUsed?.();
1448
1469
  opts.onReady();
1449
1470
  return;
1450
1471
  }
1451
1472
  let isCompactCommand = false;
1473
+ let compactStatus = null;
1452
1474
  if (specialCommand.type === "compact") {
1453
1475
  logger.logger.debug("[claudeRemote] /compact command detected - will process as normal but with compaction behavior");
1454
1476
  isCompactCommand = true;
@@ -1499,6 +1521,7 @@ async function claudeRemote(opts) {
1499
1521
  }
1500
1522
  warm = null;
1501
1523
  w.lease.adopt();
1524
+ opts.onStartArgsUsed?.();
1502
1525
  adopted = { response: w.response, messages: w.messages, models: hs.models };
1503
1526
  logger.logger.debug(formatPrewarmLine("adopted", {
1504
1527
  warmForMs: adoptStart - w.startedAt,
@@ -1533,6 +1556,7 @@ async function claudeRemote(opts) {
1533
1556
  messages = new PushableAsyncIterable();
1534
1557
  messages.push(initialUserMessage);
1535
1558
  timingMarks.spawnAt = Date.now();
1559
+ opts.onStartArgsUsed?.();
1536
1560
  response = query.query({
1537
1561
  prompt: messages,
1538
1562
  options: buildSdkOptions(initial.mode, { settingsPath: opts.hookSettingsPath, abort: opts.signal })
@@ -1707,6 +1731,7 @@ async function claudeRemote(opts) {
1707
1731
  opts.onStreamFrame({ type: "system", subtype: "status", status: status.status });
1708
1732
  }
1709
1733
  }
1734
+ if (isCompactCommand) compactStatus = readCompactStatus(message) ?? compactStatus;
1710
1735
  const outboundMessage = isCompactCommand && message.type === "assistant" ? { ...message, isCompactSummary: true } : message;
1711
1736
  opts.onMessage(outboundMessage);
1712
1737
  const lifecycle = readClaudeCommandLifecycle(message);
@@ -1774,12 +1799,11 @@ async function claudeRemote(opts) {
1774
1799
  logger.logger.warn(`[claudeRemote] ${denials.length} tool call(s) auto-denied by Claude Code policy: ${denials.map((d) => d.tool_name ?? "?").join(", ")}`);
1775
1800
  }
1776
1801
  if (isCompactCommand) {
1777
- const compactSucceeded = message.subtype === "success";
1778
- logger.logger.debug(`[claudeRemote] Compaction ${compactSucceeded ? "completed" : "failed"}`);
1779
- if (opts.onCompletionEvent) {
1780
- opts.onCompletionEvent(message.subtype === "success" ? "Compaction completed" : `Compaction failed: ${message.errors?.join("\n") || message.subtype}`);
1781
- }
1802
+ const outcome = compactOutcomeEvent(message, compactStatus);
1803
+ logger.logger.debug(`[claudeRemote] ${outcome}`);
1804
+ opts.onCompletionEvent?.(outcome);
1782
1805
  isCompactCommand = false;
1806
+ compactStatus = null;
1783
1807
  }
1784
1808
  if (endsTurn) opts.onReady(message);
1785
1809
  if (recycleIfPoisoned(message)) continue;
@@ -3907,7 +3931,7 @@ async function claudeRemoteLauncher(session, onPermissionModeChange, onEffective
3907
3931
  let notifiedQuestionToolCalls = /* @__PURE__ */ new Set();
3908
3932
  function onMessage(message) {
3909
3933
  if (message.type === "rate_limit_event") {
3910
- specialCommands.wrapperRateLimitReporter().observeClaude(message.rate_limit_info);
3934
+ rateLimitReporter.wrapperRateLimitReporter().observeClaude(message.rate_limit_info);
3911
3935
  }
3912
3936
  runtimeControls.observe(message);
3913
3937
  backgroundTasks.observe(message);
@@ -4083,6 +4107,7 @@ async function claudeRemoteLauncher(session, onPermissionModeChange, onEffective
4083
4107
  const attachmentDirectory = attachmentContent.chatAttachmentDirectory(configuration.configuration.happyHomeDir, session.client.sessionId);
4084
4108
  await configuration.ensurePrivateDirectory(attachmentDirectory);
4085
4109
  launchPrewarm = session.takeClaudePrewarm();
4110
+ let startArgsUsed = false;
4086
4111
  const remoteResult = await claudeRemote({
4087
4112
  prewarm: launchPrewarm ?? void 0,
4088
4113
  sessionId: session.sessionId,
@@ -4101,10 +4126,11 @@ async function claudeRemoteLauncher(session, onPermissionModeChange, onEffective
4101
4126
  nextMessage: async () => {
4102
4127
  let batchSourceIds;
4103
4128
  const finalize = async (prompt) => {
4104
- const board = deterministicJson.leadBoardFor(session.client);
4105
- board?.onTurnStart(batchSourceIds);
4106
- const text = board ? await board.decorate(prompt) : prompt;
4107
- const out = await session.projectInjector.decorate(text);
4129
+ const out = await finalizeRemotePrompt(prompt, {
4130
+ board: deterministicJson.leadBoardFor(session.client),
4131
+ project: session.projectInjector,
4132
+ sourceIds: batchSourceIds
4133
+ });
4108
4134
  onPromptFinalized?.(out);
4109
4135
  return out;
4110
4136
  };
@@ -4279,9 +4305,12 @@ async function claudeRemoteLauncher(session, onPermissionModeChange, onEffective
4279
4305
  }
4280
4306
  });
4281
4307
  },
4282
- signal: abortController.signal
4308
+ signal: abortController.signal,
4309
+ onStartArgsUsed: () => {
4310
+ startArgsUsed = true;
4311
+ }
4283
4312
  });
4284
- session.consumeOneTimeFlags();
4313
+ if (startArgsUsed) session.consumeOneTimeFlags();
4285
4314
  if (!exitReason && abortController.signal.aborted && !silentRelaunch) {
4286
4315
  session.client.closeClaudeSessionTurn("cancelled");
4287
4316
  session.client.sendSessionEvent({ type: "message", message: "Aborted by user" });
@@ -4386,7 +4415,7 @@ async function loop(opts) {
4386
4415
  logger.logger.debug(`[loop] Iteration with mode: ${mode}`);
4387
4416
  switch (mode) {
4388
4417
  case "local": {
4389
- const { claudeLocalLauncher } = await Promise.resolve().then(function () { return require('./claudeLocalLauncher-BfCKs7Le.cjs'); });
4418
+ const { claudeLocalLauncher } = await Promise.resolve().then(function () { return require('./claudeLocalLauncher-wPxKtH_P.cjs'); });
4390
4419
  const result = await claudeLocalLauncher(session);
4391
4420
  switch (result.type) {
4392
4421
  case "switch":
@@ -4727,7 +4756,7 @@ function registerSideQuestionHandler(rpc, deps) {
4727
4756
  const retainMs = deps.retainMs ?? SIDE_QUESTION_RETAIN_MS;
4728
4757
  const maxRunMs = deps.maxRunMs ?? SIDE_QUESTION_MAX_RUN_MS;
4729
4758
  const fork = deps.run ?? (async (input) => {
4730
- const { query } = await Promise.resolve().then(function () { return require('./index-CY573fnz.cjs'); });
4759
+ const { query } = await Promise.resolve().then(function () { return require('./index-wWJJAQRk.cjs'); });
4731
4760
  return runSideQuestion(query, input);
4732
4761
  });
4733
4762
  const run = async (input, live) => {
@@ -5154,17 +5183,17 @@ function resolveMessageMode(current, meta, ctx) {
5154
5183
 
5155
5184
  exports.reportSessionEditToDaemon = controlClient.reportSessionEditToDaemon;
5156
5185
  exports.startHappyServer = deterministicJson.startHappyServer;
5186
+ exports.MessageQueue2 = specialCommands.MessageQueue2;
5187
+ exports.parseSpecialCommand = specialCommands.parseSpecialCommand;
5188
+ exports.registerKillSessionHandler = specialCommands.registerKillSessionHandler;
5157
5189
  exports.SessionExitGate = sessionExitLifecycle.SessionExitGate;
5158
5190
  exports.exitIntentFromArchiveFlag = sessionExitLifecycle.exitIntentFromArchiveFlag;
5159
5191
  exports.settleSessionOnExit = sessionExitLifecycle.settleSessionOnExit;
5160
5192
  exports.claudeCheckSession = systemPrompt.claudeCheckSession;
5161
- exports.parseSpecialCommand = specialCommands.parseSpecialCommand;
5162
5193
  exports.contentLogMetadata = contentLogMetadata.contentLogMetadata;
5163
5194
  exports.RawJSONLinesSchema = types.RawJSONLinesSchema;
5164
5195
  exports.getProjectPath = path.getProjectPath;
5165
5196
  exports.createSessionScanner = sessionScanner.createSessionScanner;
5166
- exports.MessageQueue2 = registerKillSessionHandler.MessageQueue2;
5167
- exports.registerKillSessionHandler = registerKillSessionHandler.registerKillSessionHandler;
5168
5197
  exports.getEnvironmentInfo = doctor.getEnvironmentInfo;
5169
5198
  exports.EditReportThrottle = editPaths.EditReportThrottle;
5170
5199
  exports.extractClaudeEditPaths = editPaths.extractClaudeEditPaths;
@@ -1,105 +1,106 @@
1
- import { l as logger } from './logger-CpaeM90D.mjs';
2
- import { q as notifyDaemonSessionEvent, t as notifyDaemonClaudeAuthFailed } from './controlClient-Dv80mB_j.mjs';
3
- export { k as reportSessionEditToDaemon } from './controlClient-Dv80mB_j.mjs';
1
+ import { l as logger } from './logger-RpzJ4d8V.mjs';
2
+ import { q as notifyDaemonSessionEvent, t as notifyDaemonClaudeAuthFailed } from './controlClient-Bw56NIrj.mjs';
3
+ export { k as reportSessionEditToDaemon } from './controlClient-Bw56NIrj.mjs';
4
4
  import { s as sameBackgroundTasks, c as createBackgroundTaskTracker } from './backgroundTaskActivity-8PdPxrvy.mjs';
5
- import { c as createProjectInjector, h as hashObject, l as leadBoardFor } from './deterministicJson-COiJcmUR.mjs';
6
- export { s as startHappyServer } from './deterministicJson-COiJcmUR.mjs';
7
- import { s as sharedProjectsClient } from './client-DAnQqPmc.mjs';
5
+ import { c as createProjectInjector, h as hashObject, l as leadBoardFor } from './deterministicJson-CsRckxVq.mjs';
6
+ export { s as startHappyServer } from './deterministicJson-CsRckxVq.mjs';
7
+ import { s as sharedProjectsClient } from './client-DWws_aQK.mjs';
8
8
  import { randomInt, randomUUID, createHash } from 'node:crypto';
9
+ import { p as parseSpecialCommand } from './specialCommands-DHU7TNeK.mjs';
10
+ export { M as MessageQueue2, r as registerKillSessionHandler } from './specialCommands-DHU7TNeK.mjs';
9
11
  import { M as MessageBuffer } from './sessionExitLifecycle-CzkLIgNZ.mjs';
10
12
  export { S as SessionExitGate, e as exitIntentFromArchiveFlag, s as settleSessionOnExit } from './sessionExitLifecycle-CzkLIgNZ.mjs';
11
- import { q as query } from './query-B7DvMlYM.mjs';
13
+ import { q as query } from './query-CkgIJ_Dy.mjs';
12
14
  import { AbortError } from '@anthropic-ai/claude-agent-sdk';
13
15
  import { m as mapToClaudeMode, p as parseClaudePermissionMode, c as resolveRemoteClaudePermissionMode } from './permissionMode-CH4FoZfU.mjs';
14
- import { c as claudeCheckSession, s as systemPrompt } from './systemPrompt-BKUVX-fd.mjs';
16
+ import { c as claudeCheckSession, s as systemPrompt } from './systemPrompt-C1RSY_60.mjs';
15
17
  import { join, resolve, dirname } from 'node:path';
16
- import { p as parseSpecialCommand, w as wrapperRateLimitReporter } from './specialCommands-B-DAeFrU.mjs';
17
18
  import 'axios';
18
19
  import 'node:events';
19
20
  import 'socket.io-client';
20
- import { A as AsyncLock } from './pushNotifications-2CyhYAte.mjs';
21
+ import { A as AsyncLock } from './pushNotifications-BThg4nVd.mjs';
21
22
  import 'tweetnacl';
22
- import { c as configuration, e as ensurePrivateDirectory } from './configuration-DbCHeEeP.mjs';
23
- import './index-B9f1vKcC.mjs';
24
- import './registerCommonHandlers-X9lnO2TF.mjs';
23
+ import { c as configuration, e as ensurePrivateDirectory } from './configuration-BZHpFD7K.mjs';
24
+ import './index-WKyN-bNy.mjs';
25
+ import './registerCommonHandlers-CaWl9ll1.mjs';
25
26
  import 'os';
26
27
  import 'child_process';
27
28
  import '@paralleldrive/cuid2';
28
- import './persistence-FgtDuVAP.mjs';
29
+ import './persistence-Bn4qEbDg.mjs';
29
30
  import { c as contentLogMetadata } from './contentLogMetadata-BlWI0egu.mjs';
30
31
  import 'chalk';
31
32
  import { R as RawJSONLinesSchema } from './types-CkqAACXx.mjs';
32
33
  import { g as getProjectPath } from './path-D2wdaNSk.mjs';
33
34
  import { access } from 'fs/promises';
34
- import { d as delay } from './time-BsNUVcKH.mjs';
35
+ import { d as delay } from './time-umG7yHkb.mjs';
35
36
  import { mkdirSync, writeFileSync, readFileSync, unlinkSync, renameSync, statSync, existsSync } from 'node:fs';
36
- import { F as Future, d as describeClaudeProcessExit } from './sessionScanner-B6hzp5R9.mjs';
37
- export { c as createSessionScanner } from './sessionScanner-B6hzp5R9.mjs';
37
+ import { F as Future, d as describeClaudeProcessExit } from './sessionScanner-CknV1IlN.mjs';
38
+ export { c as createSessionScanner } from './sessionScanner-CknV1IlN.mjs';
38
39
  import { execSync } from 'node:child_process';
39
- import { S as StreamRelay } from './streamRelay-B3FloUTT.mjs';
40
- import { C as CLAUDE_ATTACHMENT_KINDS, c as chatAttachmentDirectory, a as stageClaudeAttachments, b as appendStagedAttachmentsToPrompt } from './attachmentContent-D01-pLOB.mjs';
40
+ import { S as StreamRelay } from './streamRelay-CqBynIon.mjs';
41
+ import { C as CLAUDE_ATTACHMENT_KINDS, c as chatAttachmentDirectory, a as stageClaudeAttachments, b as appendStagedAttachmentsToPrompt } from './attachmentContent-C9S4ekAz.mjs';
41
42
  import { writeFile, rename, unlink, readFile } from 'node:fs/promises';
42
- import { F as ForkSourceMissingError } from './claudeSessionFork-D8XT48Lf.mjs';
43
- export { M as MessageQueue2, r as registerKillSessionHandler } from './registerKillSessionHandler-CrLsN5m3.mjs';
44
- export { g as getEnvironmentInfo } from './doctor-Ymj096qP.mjs';
43
+ import { F as ForkSourceMissingError } from './claudeSessionFork-DzWFzj9m.mjs';
44
+ import { w as wrapperRateLimitReporter } from './rateLimitReporter-Iw4k3Bbr.mjs';
45
+ export { g as getEnvironmentInfo } from './doctor-B4HQiW6j.mjs';
45
46
  import { createServer } from 'node:http';
46
47
  export { E as EditReportThrottle, b as extractClaudeEditPaths } from './editPaths-BVfS_FFL.mjs';
47
48
  import { p as projectPath } from './projectPath-BTBIMB57.mjs';
48
49
  export { s as snapshotTree, t as terminateSurvivors } from './processTreeSnapshot-CuLJDNC-.mjs';
49
- import { r as resolveClaudeBinary, a as runClaudeOneShot } from './titleGenerator-B4b4ah--.mjs';
50
- export { T as TitleGenerator } from './titleGenerator-B4b4ah--.mjs';
50
+ import { r as resolveClaudeBinary, a as runClaudeOneShot } from './titleGenerator-dmFlxkRs.mjs';
51
+ export { T as TitleGenerator } from './titleGenerator-dmFlxkRs.mjs';
51
52
  import { B as BOARD_ANALYZER_PROMPT_PREFIX } from './oneShotPrompts-DT4p6RNd.mjs';
52
- import { i as isSelfReportFresh } from './reportProgressTool-6mDoxKuq.mjs';
53
- export { c as createSelfReportState } from './reportProgressTool-6mDoxKuq.mjs';
53
+ import { i as isSelfReportFresh } from './reportProgressTool-DUEq3xAL.mjs';
54
+ export { c as createSelfReportState } from './reportProgressTool-DUEq3xAL.mjs';
54
55
  import 'node:util';
55
56
  import './prompt-QHuFx9j6.mjs';
56
57
  import 'node:os';
57
58
  import 'zod';
58
59
  import './pi-CqyoZMjI.mjs';
59
60
  import './fileStore-5qpetZS0.mjs';
60
- import './client-CKM07bJH.mjs';
61
- import './context-D2Y_qLs0.mjs';
62
- import './sessionOps--9p2IzVA.mjs';
61
+ import './client-qJ0y8fus.mjs';
62
+ import './context-t7YV0aZc.mjs';
63
+ import './sessionOps-CYjMT7Ad.mjs';
63
64
  import './authRelay-DhQhkBvX.mjs';
64
- import './resources-CLdQfe3b.mjs';
65
- import './tools-BILbS8Hh.mjs';
66
- import './peerTools-CUCqJ83-.mjs';
65
+ import './resources-CLP_MpK4.mjs';
66
+ import './tools-BOWazSD6.mjs';
67
+ import './peerTools-2_8Bw9PU.mjs';
67
68
  import './ids-DU6sLx4C.mjs';
68
- import './remoteSessionClient-BApor-c2.mjs';
69
+ import './remoteSessionClient-uPj7omsw.mjs';
69
70
  import '@modelcontextprotocol/sdk/server/mcp.js';
70
71
  import '@modelcontextprotocol/sdk/server/streamableHttp.js';
71
72
  import './limits-DIo7rEBR.mjs';
72
- import './downloadTarget-DRXCRDub.mjs';
73
+ import './downloadTarget-tYMV_VHo.mjs';
73
74
  import './terminals-Dlg0x3nY.mjs';
74
75
  import './terminalTitleSuggest-CeKsX_V6.mjs';
75
76
  import './tmuxSocket-B8Yx20sT.mjs';
76
- import './bootstrap-MFmMruyB.mjs';
77
- import './package-DagIeOhi.mjs';
77
+ import './bootstrap-Di38SnpN.mjs';
78
+ import './package-CwB8rFJt.mjs';
78
79
  import './agentGuidance-BDYt2Qy2.mjs';
79
80
  import './trimIdent-BAjmv_TG.mjs';
80
81
  import './webPanels-B2_C2-3g.mjs';
81
82
  import './previewPath-CXN4Vag0.mjs';
82
83
  import 'crypto';
83
- import './smallFastModel-BLNgMrwR.mjs';
84
- import './rateLimitWindows-C0zbGT7K.mjs';
84
+ import './promptCacheTtl-Ce0TVbrx.mjs';
85
85
  import 'util';
86
86
  import 'path';
87
87
  import 'cross-spawn';
88
- import './sync-CZjyTC4v.mjs';
88
+ import './sync-I8NYmycF.mjs';
89
89
  import './transcriptCursor-B7T_gkQ0.mjs';
90
- import './startFileWatcher-DVia64Vg.mjs';
90
+ import './startFileWatcher-CpO5Mwbr.mjs';
91
91
  import 'node:readline';
92
+ import './rateLimitWindows-CQ4tIQnx.mjs';
92
93
  import './doctor-BPkYWSuq.mjs';
93
94
  import 'ps-list';
94
95
  import './doctorReadiness-C208SMN9.mjs';
95
96
  import './detectCLI-CSGMlV51.mjs';
96
97
  import 'fs';
97
98
  import './cliUpdate-Y34VGe9Y.mjs';
98
- import './piRunnerArgs-YbYkfixz.mjs';
99
- import './acpSessionResume-CKacrrHV.mjs';
99
+ import './piRunnerArgs-DWBb63W9.mjs';
100
+ import './acpSessionResume-F705a1cF.mjs';
100
101
  import 'url';
101
102
  import 'node:module';
102
- import './client-BfGuTBMO.mjs';
103
+ import './client-DcDE6Ifk.mjs';
103
104
  import './precheckCompat-DeEbilbr.mjs';
104
105
 
105
106
  const SCHEDULE_WAKEUP_GRACE_MS = 6e4;
@@ -655,6 +656,14 @@ function createRuntimeControls(isThinking) {
655
656
  return { setQuery, observe, request, stopRunningTasks };
656
657
  }
657
658
 
659
+ async function finalizeRemotePrompt(prompt, deps) {
660
+ const command = parseSpecialCommand(prompt).type;
661
+ if (command === "compact" || command === "clear") return prompt;
662
+ deps.board?.onTurnStart(deps.sourceIds);
663
+ const text = deps.board ? await deps.board.decorate(prompt) : prompt;
664
+ return deps.project.decorate(text);
665
+ }
666
+
658
667
  const CLAUDE_COMMAND_LIFECYCLE_STATES = ["queued", "started", "completed", "cancelled", "discarded", "refused"];
659
668
  function readClaudeCommandLifecycle(frame) {
660
669
  const m = frame;
@@ -914,6 +923,18 @@ async function awaitFileExist(file, timeout = 1e4) {
914
923
  return false;
915
924
  }
916
925
 
926
+ function readCompactStatus(message) {
927
+ if (!message || typeof message !== "object") return null;
928
+ const frame = message;
929
+ if (frame.type !== "system" || frame.subtype !== "status" || typeof frame.compact_result !== "string") return null;
930
+ return typeof frame.compact_error === "string" && frame.compact_error.trim() ? { result: frame.compact_result, error: frame.compact_error.trim() } : { result: frame.compact_result };
931
+ }
932
+ function compactOutcomeEvent(result, status) {
933
+ if (result.subtype !== "success") return `Compaction failed: ${result.errors?.join("\n") || result.subtype}`;
934
+ if (status && status.result !== "success") return `Compaction failed: ${status.error ?? status.result}`;
935
+ return "Compaction completed";
936
+ }
937
+
917
938
  const SDK_TIMING_FIELDS = ["ttft_ms", "time_to_request_ms", "time_to_request_from_spawn_ms"];
918
939
  function delta(from, to) {
919
940
  if (typeof from !== "number" || typeof to !== "number" || to < from) return "-";
@@ -1449,10 +1470,12 @@ async function claudeRemote(opts) {
1449
1470
  if (opts.onSessionReset) {
1450
1471
  opts.onSessionReset();
1451
1472
  }
1473
+ opts.onStartArgsUsed?.();
1452
1474
  opts.onReady();
1453
1475
  return;
1454
1476
  }
1455
1477
  let isCompactCommand = false;
1478
+ let compactStatus = null;
1456
1479
  if (specialCommand.type === "compact") {
1457
1480
  logger.debug("[claudeRemote] /compact command detected - will process as normal but with compaction behavior");
1458
1481
  isCompactCommand = true;
@@ -1503,6 +1526,7 @@ async function claudeRemote(opts) {
1503
1526
  }
1504
1527
  warm = null;
1505
1528
  w.lease.adopt();
1529
+ opts.onStartArgsUsed?.();
1506
1530
  adopted = { response: w.response, messages: w.messages, models: hs.models };
1507
1531
  logger.debug(formatPrewarmLine("adopted", {
1508
1532
  warmForMs: adoptStart - w.startedAt,
@@ -1537,6 +1561,7 @@ async function claudeRemote(opts) {
1537
1561
  messages = new PushableAsyncIterable();
1538
1562
  messages.push(initialUserMessage);
1539
1563
  timingMarks.spawnAt = Date.now();
1564
+ opts.onStartArgsUsed?.();
1540
1565
  response = query({
1541
1566
  prompt: messages,
1542
1567
  options: buildSdkOptions(initial.mode, { settingsPath: opts.hookSettingsPath, abort: opts.signal })
@@ -1711,6 +1736,7 @@ async function claudeRemote(opts) {
1711
1736
  opts.onStreamFrame({ type: "system", subtype: "status", status: status.status });
1712
1737
  }
1713
1738
  }
1739
+ if (isCompactCommand) compactStatus = readCompactStatus(message) ?? compactStatus;
1714
1740
  const outboundMessage = isCompactCommand && message.type === "assistant" ? { ...message, isCompactSummary: true } : message;
1715
1741
  opts.onMessage(outboundMessage);
1716
1742
  const lifecycle = readClaudeCommandLifecycle(message);
@@ -1778,12 +1804,11 @@ async function claudeRemote(opts) {
1778
1804
  logger.warn(`[claudeRemote] ${denials.length} tool call(s) auto-denied by Claude Code policy: ${denials.map((d) => d.tool_name ?? "?").join(", ")}`);
1779
1805
  }
1780
1806
  if (isCompactCommand) {
1781
- const compactSucceeded = message.subtype === "success";
1782
- logger.debug(`[claudeRemote] Compaction ${compactSucceeded ? "completed" : "failed"}`);
1783
- if (opts.onCompletionEvent) {
1784
- opts.onCompletionEvent(message.subtype === "success" ? "Compaction completed" : `Compaction failed: ${message.errors?.join("\n") || message.subtype}`);
1785
- }
1807
+ const outcome = compactOutcomeEvent(message, compactStatus);
1808
+ logger.debug(`[claudeRemote] ${outcome}`);
1809
+ opts.onCompletionEvent?.(outcome);
1786
1810
  isCompactCommand = false;
1811
+ compactStatus = null;
1787
1812
  }
1788
1813
  if (endsTurn) opts.onReady(message);
1789
1814
  if (recycleIfPoisoned(message)) continue;
@@ -4087,6 +4112,7 @@ async function claudeRemoteLauncher(session, onPermissionModeChange, onEffective
4087
4112
  const attachmentDirectory = chatAttachmentDirectory(configuration.happyHomeDir, session.client.sessionId);
4088
4113
  await ensurePrivateDirectory(attachmentDirectory);
4089
4114
  launchPrewarm = session.takeClaudePrewarm();
4115
+ let startArgsUsed = false;
4090
4116
  const remoteResult = await claudeRemote({
4091
4117
  prewarm: launchPrewarm ?? void 0,
4092
4118
  sessionId: session.sessionId,
@@ -4105,10 +4131,11 @@ async function claudeRemoteLauncher(session, onPermissionModeChange, onEffective
4105
4131
  nextMessage: async () => {
4106
4132
  let batchSourceIds;
4107
4133
  const finalize = async (prompt) => {
4108
- const board = leadBoardFor(session.client);
4109
- board?.onTurnStart(batchSourceIds);
4110
- const text = board ? await board.decorate(prompt) : prompt;
4111
- const out = await session.projectInjector.decorate(text);
4134
+ const out = await finalizeRemotePrompt(prompt, {
4135
+ board: leadBoardFor(session.client),
4136
+ project: session.projectInjector,
4137
+ sourceIds: batchSourceIds
4138
+ });
4112
4139
  onPromptFinalized?.(out);
4113
4140
  return out;
4114
4141
  };
@@ -4283,9 +4310,12 @@ async function claudeRemoteLauncher(session, onPermissionModeChange, onEffective
4283
4310
  }
4284
4311
  });
4285
4312
  },
4286
- signal: abortController.signal
4313
+ signal: abortController.signal,
4314
+ onStartArgsUsed: () => {
4315
+ startArgsUsed = true;
4316
+ }
4287
4317
  });
4288
- session.consumeOneTimeFlags();
4318
+ if (startArgsUsed) session.consumeOneTimeFlags();
4289
4319
  if (!exitReason && abortController.signal.aborted && !silentRelaunch) {
4290
4320
  session.client.closeClaudeSessionTurn("cancelled");
4291
4321
  session.client.sendSessionEvent({ type: "message", message: "Aborted by user" });
@@ -4390,7 +4420,7 @@ async function loop(opts) {
4390
4420
  logger.debug(`[loop] Iteration with mode: ${mode}`);
4391
4421
  switch (mode) {
4392
4422
  case "local": {
4393
- const { claudeLocalLauncher } = await import('./claudeLocalLauncher-DdPfufcS.mjs');
4423
+ const { claudeLocalLauncher } = await import('./claudeLocalLauncher-BDUPxtsI.mjs');
4394
4424
  const result = await claudeLocalLauncher(session);
4395
4425
  switch (result.type) {
4396
4426
  case "switch":
@@ -4731,7 +4761,7 @@ function registerSideQuestionHandler(rpc, deps) {
4731
4761
  const retainMs = deps.retainMs ?? SIDE_QUESTION_RETAIN_MS;
4732
4762
  const maxRunMs = deps.maxRunMs ?? SIDE_QUESTION_MAX_RUN_MS;
4733
4763
  const fork = deps.run ?? (async (input) => {
4734
- const { query } = await import('./index-CmlAXizv.mjs');
4764
+ const { query } = await import('./index-DDz0Ftoy.mjs');
4735
4765
  return runSideQuestion(query, input);
4736
4766
  });
4737
4767
  const run = async (input, live) => {