very-happy-cli 0.2.201 → 0.2.202

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 (192) hide show
  1. package/dist/{AcpBackend-CMFlng3C.cjs → AcpBackend-BRcPXur6.cjs} +3 -3
  2. package/dist/{AcpBackend-BNinFMHZ.mjs → AcpBackend-Z51picBa.mjs} +3 -3
  3. package/dist/{AcpSessionManager-Dg6gKavf.mjs → AcpSessionManager-BCGqL1Em.mjs} +1 -1
  4. package/dist/{AcpSessionManager-CPgoICjp.cjs → AcpSessionManager-BckOYH3I.cjs} +1 -1
  5. package/dist/{BasePermissionHandler-c-NaRa_E.cjs → BasePermissionHandler-BYIY3kxs.cjs} +1 -1
  6. package/dist/{BasePermissionHandler-DwcfWUjr.mjs → BasePermissionHandler-BhJjr-wB.mjs} +1 -1
  7. package/dist/{account-pzgzyIXW.mjs → account-B-HTHZKw.mjs} +5 -5
  8. package/dist/{account-D23SGj7p.cjs → account-B0Wu7rJR.cjs} +5 -5
  9. package/dist/{acpSessionResume-urFpnGsk.mjs → acpSessionResume-BKjQRT4V.mjs} +1 -1
  10. package/dist/{acpSessionResume-DklOhwir.cjs → acpSessionResume-C8Kd8eK6.cjs} +1 -1
  11. package/dist/{agentHome-DyrLqr8b.mjs → agentHome-BXiCouR4.mjs} +4 -4
  12. package/dist/{agentHome-BTwMaYw1.cjs → agentHome-DnxSf1ox.cjs} +4 -4
  13. package/dist/{api-KVVs-GkM.cjs → api-B-FB-s4z.cjs} +9 -9
  14. package/dist/{api-1CD4oRSW.mjs → api-Cu1OFHDM.mjs} +9 -9
  15. package/dist/{apiMachine-1sd5IVIB.cjs → apiMachine-DCWgI1l_.cjs} +23 -13
  16. package/dist/{apiMachine-BDVE6MOn.mjs → apiMachine-DYGPILVb.mjs} +23 -13
  17. package/dist/{attachmentContent-CeF54XeO.mjs → attachmentContent-Dq8P5ODq.mjs} +2 -2
  18. package/dist/{attachmentContent-f3BbOKqz.cjs → attachmentContent-dXwHB_3C.cjs} +2 -2
  19. package/dist/{auth-eielZ6Sc.cjs → auth-BVNBE4B1.cjs} +8 -8
  20. package/dist/{auth-WCd2S1zA.mjs → auth-CgdE-j7z.mjs} +5 -5
  21. package/dist/{auth-CV2H-smf.mjs → auth-D11uvx2P.mjs} +8 -8
  22. package/dist/{auth-CXCX-iJ-.cjs → auth-DpIHm7Lb.cjs} +5 -5
  23. package/dist/{auto-49cRCADN.cjs → auto-Ba2b-il4.cjs} +14 -14
  24. package/dist/{auto-BsCE_UHT.mjs → auto-WdjHKP9R.mjs} +14 -14
  25. package/dist/{bootstrap-D_1MskAl.mjs → bootstrap-BTYJf2w8.mjs} +2 -2
  26. package/dist/{bootstrap-N1PY4ypX.cjs → bootstrap-CsZO_jkL.cjs} +2 -2
  27. package/dist/{browser-B0SEB6r3.cjs → browser-DgufCq1K.cjs} +1 -1
  28. package/dist/{browser-DL3QIQLS.mjs → browser-Dx3UOVPP.mjs} +1 -1
  29. package/dist/{claudeLocal-Ix69XJ1t.cjs → claudeLocal-Q0FgzhTu.cjs} +4 -4
  30. package/dist/{claudeLocal-DRMWkdCC.mjs → claudeLocal-ylDKcvX0.mjs} +4 -4
  31. package/dist/{claudeLocalLauncher-D4tU6R5n.mjs → claudeLocalLauncher-CtybsaR8.mjs} +9 -9
  32. package/dist/{claudeLocalLauncher-rDojqNoa.cjs → claudeLocalLauncher-D2rZvuaW.cjs} +9 -9
  33. package/dist/{claudeSessionFork-C_X08LFh.cjs → claudeSessionFork-BrstQPE4.cjs} +1 -1
  34. package/dist/{claudeSessionFork-H0ZVQALg.mjs → claudeSessionFork-DRLxmv9j.mjs} +1 -1
  35. package/dist/{client-BoymtYLP.cjs → client-CNWx72ZT.cjs} +2 -2
  36. package/dist/{client-DGqnrSg4.cjs → client-Ch4Azlny.cjs} +3 -3
  37. package/dist/{client-CMUlpYcy.mjs → client-Cj7D61by.mjs} +2 -2
  38. package/dist/{client-4YWjreN3.mjs → client-D0oBXuEe.mjs} +2 -2
  39. package/dist/{client-CK-jvgM1.mjs → client-DJsXNJWO.mjs} +3 -3
  40. package/dist/{client-BgInTvr6.mjs → client-DfT_CRwl.mjs} +2 -2
  41. package/dist/{client-P1VkI76z.cjs → client-Dq7jaxb2.cjs} +2 -2
  42. package/dist/{client-DI8Rxsbw.cjs → client-xV99weGP.cjs} +2 -2
  43. package/dist/codex/happyMcpStdioBridge.cjs +17 -17
  44. package/dist/codex/happyMcpStdioBridge.mjs +17 -17
  45. package/dist/{codexAppServerClient-BnMR-DRn.cjs → codexAppServerClient-BwBPZonh.cjs} +3 -3
  46. package/dist/{codexAppServerClient-aDrsSyjS.mjs → codexAppServerClient-DtdCZ7_b.mjs} +3 -3
  47. package/dist/{codexCommand-C3oEEpOa.cjs → codexCommand-CsY9YFiG.cjs} +42 -42
  48. package/dist/{codexCommand-BCpJzf3q.mjs → codexCommand-D92AQCLU.mjs} +42 -42
  49. package/dist/{codexTermination-DXhw5Pzi.cjs → codexTermination-BbXG2oFT.cjs} +1 -1
  50. package/dist/{codexTermination-B5haG5wJ.mjs → codexTermination-rhIxjRMJ.mjs} +1 -1
  51. package/dist/{config-D9wjo4oa.mjs → config-BnN1yFyi.mjs} +3 -3
  52. package/dist/{config-CdGiZZKy.cjs → config-Zhkmfb3O.cjs} +3 -3
  53. package/dist/{configuration-DhEqAYzz.mjs → configuration-CQaLZMa-.mjs} +1 -1
  54. package/dist/{configuration-LWFmTxty.cjs → configuration-DZUnfWp2.cjs} +1 -1
  55. package/dist/{connect-BZLD0aVm.cjs → connect-BToTf3Gy.cjs} +12 -12
  56. package/dist/{connect-CY_EMXQs.mjs → connect-DY5QLfbI.mjs} +12 -12
  57. package/dist/{context-BbZ18lX0.cjs → context-BHydzPZw.cjs} +1 -1
  58. package/dist/{context-UzqWaA7f.mjs → context-ByTvtMXZ.mjs} +1 -1
  59. package/dist/{controlClient-TVMpETsR.cjs → controlClient-Bfwe0Xpt.cjs} +3 -3
  60. package/dist/{controlClient-PaIiDxM6.mjs → controlClient-Cqhd8ynk.mjs} +3 -3
  61. package/dist/{createSessionMetadata-hGZeo_nR.cjs → createSessionMetadata-D_qa01wq.cjs} +2 -2
  62. package/dist/{createSessionMetadata-BWb81WZg.mjs → createSessionMetadata-tmhDzhJZ.mjs} +2 -2
  63. package/dist/{deterministicJson-BpDDS7c9.cjs → deterministicJson-CbUdClvO.cjs} +13 -13
  64. package/dist/{deterministicJson-Cg3z7uUX.mjs → deterministicJson-DRL1Gs_c.mjs} +13 -13
  65. package/dist/{doctor-DOzji0f7.cjs → doctor-DHCmWcwR.cjs} +7 -7
  66. package/dist/{doctor-BanQ3jQg.mjs → doctor-Wu0yZ80l.mjs} +7 -7
  67. package/dist/{downloadTarget-BhIAhyEV.cjs → downloadTarget-BoJrjpEe.cjs} +6 -6
  68. package/dist/{downloadTarget-BCSXmPRE.mjs → downloadTarget-G72yKQcM.mjs} +6 -6
  69. package/dist/{ensureDaemonRunning-BZGBE838.mjs → ensureDaemonRunning-BKGybp3s.mjs} +5 -5
  70. package/dist/{ensureDaemonRunning-DMOCzvQP.cjs → ensureDaemonRunning-CnkyGd9x.cjs} +5 -5
  71. package/dist/{format-BxGkJUki.mjs → format-BSx-Nv2p.mjs} +1 -1
  72. package/dist/{format-CgiY6uup.cjs → format-DePME4uu.cjs} +1 -1
  73. package/dist/{handleResumeCommand-BRV-9h0o.mjs → handleResumeCommand-DrJdhjLD.mjs} +5 -5
  74. package/dist/{handleResumeCommand-ChnR-12l.cjs → handleResumeCommand-uKzhaOVC.cjs} +5 -5
  75. package/dist/{index-B7HlUXOX.cjs → index-BKXqaux4.cjs} +4 -4
  76. package/dist/{index-C_Y9426m.mjs → index-BcYJJV-f.mjs} +3 -3
  77. package/dist/{index-DuOthh8V.cjs → index-Bi7Lmykl.cjs} +39 -39
  78. package/dist/{index-Do1r62PF.mjs → index-C-eSUhXW.mjs} +4 -4
  79. package/dist/{index-DnEgpRo4.cjs → index-CoBaGAA4.cjs} +3 -3
  80. package/dist/{index-D5abHQNL.mjs → index-CowtCbZ_.mjs} +40 -40
  81. package/dist/{index-BuOzDU17.cjs → index-DDOCSeEj.cjs} +4 -4
  82. package/dist/{index-HJFzeG0B.mjs → index-fNsf-8K-.mjs} +4 -4
  83. package/dist/index.cjs +2 -2
  84. package/dist/index.mjs +2 -2
  85. package/dist/{install-BurTXawL.mjs → install-0TkucJrC.mjs} +3 -3
  86. package/dist/{install-CUAUG3u4.cjs → install-Ddc8TlWE.cjs} +3 -3
  87. package/dist/{issue-feEUrjV0.cjs → issue-CIfzJuaS.cjs} +7 -7
  88. package/dist/{issue-DpMsnOFm.mjs → issue-CML2xa46.mjs} +7 -7
  89. package/dist/lib.cjs +11 -11
  90. package/dist/lib.d.cts +3 -0
  91. package/dist/lib.d.mts +3 -0
  92. package/dist/lib.mjs +11 -11
  93. package/dist/{localHappyAgentAuth-kg2RFvOy.mjs → localHappyAgentAuth-BUX4E1ug.mjs} +1 -1
  94. package/dist/{localHappyAgentAuth-DxlQgaer.cjs → localHappyAgentAuth-WLqXQbc6.cjs} +1 -1
  95. package/dist/{logger-CFrzcRHD.mjs → logger-BEVIGYKL.mjs} +2 -2
  96. package/dist/{logger-Hyhy2boA.cjs → logger-Dhc0l3xH.cjs} +2 -2
  97. package/dist/{machineMetadata-DiStbYik.mjs → machineMetadata-BQdp_ihk.mjs} +3 -3
  98. package/dist/{machineMetadata-BLymhM03.cjs → machineMetadata-ixKckJ7k.cjs} +3 -3
  99. package/dist/{main-7G17Noc3.cjs → main-BNBYOcQb.cjs} +48 -48
  100. package/dist/{main-D1rk-68I.mjs → main-BzQSe4Zu.mjs} +48 -48
  101. package/dist/{mcp-C0DMPeTt.mjs → mcp-BueI4Bel.mjs} +14 -14
  102. package/dist/{mcp-DUeAS-D6.cjs → mcp-BwskAxOK.cjs} +14 -14
  103. package/dist/{mirrorProtocol-dRyartIG.mjs → mirrorProtocol-5aFYsCCe.mjs} +2 -2
  104. package/dist/{mirrorProtocol-YUoEuIYO.cjs → mirrorProtocol-DGMmhArw.cjs} +2 -2
  105. package/dist/{package-06cGlmeD.cjs → package-CAmlKYcH.cjs} +7 -7
  106. package/dist/{package-DxE8PttX.mjs → package-aOUtHYRZ.mjs} +7 -7
  107. package/dist/{panels-BUqmsRE0.mjs → panels-BeVMgmRW.mjs} +5 -5
  108. package/dist/{panels-D0GHfIJC.cjs → panels-By2IDfXv.cjs} +5 -5
  109. package/dist/{peerTools-BiFpxXdf.mjs → peerTools-BkRgJomj.mjs} +5 -5
  110. package/dist/{peerTools-CTCyRdg2.cjs → peerTools-dgllF1wT.cjs} +5 -5
  111. package/dist/{persistence-_W9tE-bW.cjs → persistence-05BAS4Ou.cjs} +12 -2
  112. package/dist/{persistence-CF7oV1oH.mjs → persistence-EuUaQKL7.mjs} +12 -3
  113. package/dist/{piRunnerArgs-Cfc-F-FJ.mjs → piRunnerArgs-CygWrAwY.mjs} +1 -1
  114. package/dist/{piRunnerArgs-T2cAiaGW.cjs → piRunnerArgs-DkjCRPYn.cjs} +1 -1
  115. package/dist/{piRuntime-CzYkZrYV.mjs → piRuntime-LRW_t6ME.mjs} +1 -1
  116. package/dist/{piRuntime-BzECTca4.cjs → piRuntime-zY2jIQod.cjs} +1 -1
  117. package/dist/{piTerminal-WF--dHaC.cjs → piTerminal-BfZshXGh.cjs} +16 -16
  118. package/dist/{piTerminal-0tOAYsFm.mjs → piTerminal-BhlPA1HR.mjs} +16 -16
  119. package/dist/{pushNotifications-CxX10K6n.mjs → pushNotifications-B7Ga8Zyf.mjs} +2 -2
  120. package/dist/{pushNotifications-DdzTbrA3.cjs → pushNotifications-DaVlLe7N.cjs} +2 -2
  121. package/dist/{query-Bkh7d52V.mjs → query-BQLtwpr9.mjs} +1 -1
  122. package/dist/{query-Cwx4pv91.cjs → query-CX0Of89i.cjs} +1 -1
  123. package/dist/{rateLimitWindows-DjJjgjt4.cjs → rateLimitWindows-CpSOlXBt.cjs} +1 -1
  124. package/dist/{rateLimitWindows-DdUMUEoy.mjs → rateLimitWindows-hv2zLYid.mjs} +1 -1
  125. package/dist/{reconnectGate-DeDhtQJW.cjs → reconnectGate-B_aJrehH.cjs} +1 -1
  126. package/dist/{reconnectGate-uTLj82tS.mjs → reconnectGate-DO_ZQmJE.mjs} +1 -1
  127. package/dist/{registerCommonHandlers-BYrmi-A4.mjs → registerCommonHandlers-BEpK4WD2.mjs} +2 -2
  128. package/dist/{registerCommonHandlers-BrEtSwNk.cjs → registerCommonHandlers-em2elV3l.cjs} +2 -2
  129. package/dist/{registerKillSessionHandler-Cuzq6ecP.mjs → registerKillSessionHandler-D-dDzI2n.mjs} +5 -5
  130. package/dist/{registerKillSessionHandler-Bp3g11wW.cjs → registerKillSessionHandler-D4ZQvsH2.cjs} +5 -5
  131. package/dist/{registerSideQuestionHandler-ChIbHl_g.cjs → registerSideQuestionHandler-BIOLUe2U.cjs} +4 -4
  132. package/dist/{registerSideQuestionHandler-BmEWWaZW.mjs → registerSideQuestionHandler-okUy9Q_-.mjs} +4 -4
  133. package/dist/{remoteSessionClient-DoxfnpnK.cjs → remoteSessionClient-BLWFXMBo.cjs} +5 -5
  134. package/dist/{remoteSessionClient-Dj2rV8Az.mjs → remoteSessionClient-CzjLyL9c.mjs} +5 -5
  135. package/dist/{reportProgressTool-qo0QIFNd.mjs → reportProgressTool-CNi0Vqqm.mjs} +4 -4
  136. package/dist/{reportProgressTool-DvZhaEiN.cjs → reportProgressTool-DcNBXBw8.cjs} +4 -4
  137. package/dist/{run-mHeOSOEt.mjs → run-D59Gb4SQ.mjs} +196 -45
  138. package/dist/{run-BqlWdDTL.cjs → run-bzlz4DI1.cjs} +196 -45
  139. package/dist/{runClaude-Z4BVFEdC.mjs → runClaude-DZtdmcXK.mjs} +20 -20
  140. package/dist/{runClaude-MjIrNrxT.cjs → runClaude-kVp1PKab.cjs} +20 -20
  141. package/dist/{runClaudeDeps-tPqwAl_m.cjs → runClaudeDeps-BHv9FkVz.cjs} +37 -37
  142. package/dist/{runClaudeDeps-8RXtu0Zc.mjs → runClaudeDeps-D83tR1KP.mjs} +43 -43
  143. package/dist/{runGemini-DG3jIxWv.mjs → runGemini-DLc_bL4E.mjs} +34 -34
  144. package/dist/{runGemini-uc-fViXY.cjs → runGemini-W-0t7skM.cjs} +34 -34
  145. package/dist/{runOpenClaw-DZtoCmSG.cjs → runOpenClaw-BsqbOw8R.cjs} +17 -17
  146. package/dist/{runOpenClaw-C4676Sdl.mjs → runOpenClaw-mm-hKxMC.mjs} +17 -17
  147. package/dist/{sandbox-r29ys6I4.mjs → sandbox-DXbKl-Os.mjs} +4 -4
  148. package/dist/{sandbox-DS7uZ71y.cjs → sandbox-DrWJss7J.cjs} +4 -4
  149. package/dist/selfCheck-B1XdrEbN.mjs +89 -0
  150. package/dist/{selfCheck-CSZ-wx1W.cjs → selfCheck-CVXucSXR.cjs} +39 -39
  151. package/dist/{send-BGApHm-z.mjs → send-Cdda78Iw.mjs} +8 -8
  152. package/dist/{send-CrmLy9lW.cjs → send-D7pRBaht.cjs} +8 -8
  153. package/dist/{server-CjwXsTKP.cjs → server-BI6defPs.cjs} +6 -6
  154. package/dist/{server-hutEAAn1.mjs → server-CNilQcJK.mjs} +4 -4
  155. package/dist/{sessionLock-unMOEniJ.cjs → sessionLock-Bjsy90aM.cjs} +3 -3
  156. package/dist/{sessionLock-Dj9_lShU.mjs → sessionLock-CVjlaRSL.mjs} +3 -3
  157. package/dist/{sessionOps-BmhqmPPd.mjs → sessionOps-CV5RUpwG.mjs} +4 -4
  158. package/dist/{sessionOps-SxZr9veq.cjs → sessionOps-CvmOHwGP.cjs} +4 -4
  159. package/dist/{sessionProvider-DLlqS4y6.cjs → sessionProvider-4sWr0Myr.cjs} +5 -5
  160. package/dist/{sessionProvider-CPlvR0nT.mjs → sessionProvider-BmO4ahnt.mjs} +5 -5
  161. package/dist/{sessionScanner-DvVZpLHG.mjs → sessionScanner-34Q0vTR3.mjs} +3 -3
  162. package/dist/{sessionScanner-B7nZ1i40.cjs → sessionScanner-DZBiEOyb.cjs} +3 -3
  163. package/dist/{sessions-BIYm43CM.mjs → sessions-Cl435KQT.mjs} +10 -10
  164. package/dist/{sessions-CQQW7u6X.cjs → sessions-DjAXZWTX.cjs} +10 -10
  165. package/dist/{setupOfflineReconnection-BELrtMGG.mjs → setupOfflineReconnection-BC5FJTkc.mjs} +2 -2
  166. package/dist/{setupOfflineReconnection-D7WJTAi_.cjs → setupOfflineReconnection-zebrb6U_.cjs} +2 -2
  167. package/dist/{spawn-CuWcPkkN.cjs → spawn-C8cJK9-m.cjs} +12 -12
  168. package/dist/{spawn-DnPu7h2o.mjs → spawn-DqWdgMt_.mjs} +12 -12
  169. package/dist/{spawnHappyCLI-D6OcgFDR.mjs → spawnHappyCLI-BckHSjR0.mjs} +1 -1
  170. package/dist/{spawnHappyCLI-CI7Ax4mF.cjs → spawnHappyCLI-CeWgULMt.cjs} +1 -1
  171. package/dist/{startFileWatcher-BiWGhlGW.mjs → startFileWatcher-BXiBlfVr.mjs} +1 -1
  172. package/dist/{startFileWatcher-DBW14aP2.cjs → startFileWatcher-CXZYt0y9.cjs} +1 -1
  173. package/dist/{startupSessionCreate-DFl54ozj.cjs → startupSessionCreate-CycB-kwu.cjs} +3 -3
  174. package/dist/{startupSessionCreate-DbBpGQo9.mjs → startupSessionCreate-D8hODW7I.mjs} +3 -3
  175. package/dist/{sync-CcBrziWp.mjs → sync-BfM5OKSS.mjs} +1 -1
  176. package/dist/{sync-C764ZzE6.cjs → sync-CyUWevwD.cjs} +1 -1
  177. package/dist/{systemPrompt-Xy3Dfj1l.cjs → systemPrompt-BUZQDf4k.cjs} +1 -1
  178. package/dist/{systemPrompt-9i7bQypR.mjs → systemPrompt-Tu_2ixE3.mjs} +1 -1
  179. package/dist/{teams-BAWOVbdF.mjs → teams-Cpdqvfe3.mjs} +6 -6
  180. package/dist/{teams-VlmzLDSs.cjs → teams-KjHee0Vg.cjs} +6 -6
  181. package/dist/{time-DJF2csbV.mjs → time-BQWf06hA.mjs} +1 -1
  182. package/dist/{time-CDBZWYDb.cjs → time-CbOTVtAt.cjs} +1 -1
  183. package/dist/{titleGenerator-BYP3fNFo.cjs → titleGenerator-CpiQkf_r.cjs} +2 -2
  184. package/dist/{titleGenerator-DR9evHBh.mjs → titleGenerator-DYnqd0oI.mjs} +1 -1
  185. package/dist/{todo-BkFvwx_z.cjs → todo-Cp6bRp62.cjs} +7 -7
  186. package/dist/{todo-DDDQdB-G.mjs → todo-DVrsXyKn.mjs} +7 -7
  187. package/dist/{tools-BjiRW_Rg.cjs → tools-BFQm7xny.cjs} +1 -1
  188. package/dist/{tools-CDktvjWL.mjs → tools-XGAJepvT.mjs} +1 -1
  189. package/dist/{uninstall-BcMGkwJ0.mjs → uninstall-C2LF0vtR.mjs} +3 -3
  190. package/dist/{uninstall-D5INt3TC.cjs → uninstall-Cyqq90JW.cjs} +3 -3
  191. package/package.json +7 -7
  192. package/dist/selfCheck-BmT9ihpR.mjs +0 -89
@@ -3,11 +3,11 @@
3
3
  var node_child_process = require('node:child_process');
4
4
  var sdk = require('@agentclientprotocol/sdk');
5
5
  var node_crypto = require('node:crypto');
6
- var logger = require('./logger-Hyhy2boA.cjs');
7
- var time = require('./time-CDBZWYDb.cjs');
6
+ var logger = require('./logger-Dhc0l3xH.cjs');
7
+ var time = require('./time-CbOTVtAt.cjs');
8
8
  var contentLogMetadata = require('./contentLogMetadata-ZSFk_NjQ.cjs');
9
9
  var processTree = require('./processTree-CMHWlVse.cjs');
10
- var _package = require('./package-06cGlmeD.cjs');
10
+ var _package = require('./package-CAmlKYcH.cjs');
11
11
 
12
12
  function acpImageBlocks(attachments, supportsImages) {
13
13
  return attachments.filter((file) => ["image/jpeg", "image/png", "image/gif", "image/webp"].includes(file.mimeType)).map((file) => {
@@ -1,11 +1,11 @@
1
1
  import { spawn } from 'node:child_process';
2
2
  import { ndJsonStream, ClientSideConnection } from '@agentclientprotocol/sdk';
3
3
  import { randomUUID } from 'node:crypto';
4
- import { l as logger } from './logger-CFrzcRHD.mjs';
5
- import { d as delay } from './time-DJF2csbV.mjs';
4
+ import { l as logger } from './logger-BEVIGYKL.mjs';
5
+ import { d as delay } from './time-BQWf06hA.mjs';
6
6
  import { c as contentLogMetadata, e as errorLogMetadata } from './contentLogMetadata-BlWI0egu.mjs';
7
7
  import { r as readableStderrTail, a as appendStderrRing, s as stopProcessGracefully, k as killProcessTree } from './processTree-CP5IvQ2Z.mjs';
8
- import { p as packageJson } from './package-DxE8PttX.mjs';
8
+ import { p as packageJson } from './package-aOUtHYRZ.mjs';
9
9
 
10
10
  function acpImageBlocks(attachments, supportsImages) {
11
11
  return attachments.filter((file) => ["image/jpeg", "image/png", "image/gif", "image/webp"].includes(file.mimeType)).map((file) => {
@@ -1,6 +1,6 @@
1
1
  import { createId } from '@paralleldrive/cuid2';
2
2
  import { s as streamKeyOf, t as createEnvelope } from './index-CiRMvS73.mjs';
3
- import { t as textResultPayload, b as toolResultPayload } from './api-1CD4oRSW.mjs';
3
+ import { t as textResultPayload, b as toolResultPayload } from './api-Cu1OFHDM.mjs';
4
4
 
5
5
  function turnOptions(turnId, time) {
6
6
  return turnId ? { turn: turnId, time } : { time };
@@ -2,7 +2,7 @@
2
2
 
3
3
  var cuid2 = require('@paralleldrive/cuid2');
4
4
  var index = require('./index-44o_qMvE.cjs');
5
- var api = require('./api-KVVs-GkM.cjs');
5
+ var api = require('./api-B-FB-s4z.cjs');
6
6
 
7
7
  function turnOptions(turnId, time) {
8
8
  return turnId ? { turn: turnId, time } : { time };
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var logger = require('./logger-Hyhy2boA.cjs');
3
+ var logger = require('./logger-Dhc0l3xH.cjs');
4
4
 
5
5
  class BasePermissionHandler {
6
6
  pendingRequests = /* @__PURE__ */ new Map();
@@ -1,4 +1,4 @@
1
- import { l as logger } from './logger-CFrzcRHD.mjs';
1
+ import { l as logger } from './logger-BEVIGYKL.mjs';
2
2
 
3
3
  class BasePermissionHandler {
4
4
  pendingRequests = /* @__PURE__ */ new Map();
@@ -1,16 +1,16 @@
1
1
  import chalk from 'chalk';
2
2
  import { createInterface } from 'node:readline/promises';
3
- import { c as configuration } from './configuration-DhEqAYzz.mjs';
4
- import { g as getDaemonAgentProfiles, r as restartDaemonSession, l as listDaemonSessions } from './controlClient-PaIiDxM6.mjs';
3
+ import { c as configuration } from './configuration-CQaLZMa-.mjs';
4
+ import { g as getDaemonAgentProfiles, r as restartDaemonSession, l as listDaemonSessions } from './controlClient-Cqhd8ynk.mjs';
5
5
  import { A as AccountService, b as bindResultMessages, a as AccountError, l as localRestartFailure } from './accountService-DEpIq6CF.mjs';
6
6
  import 'node:fs';
7
7
  import 'node:os';
8
8
  import 'node:path';
9
- import './package-DxE8PttX.mjs';
9
+ import './package-aOUtHYRZ.mjs';
10
10
  import 'node:fs/promises';
11
- import './logger-CFrzcRHD.mjs';
11
+ import './logger-BEVIGYKL.mjs';
12
12
  import 'node:util';
13
- import './persistence-CF7oV1oH.mjs';
13
+ import './persistence-EuUaQKL7.mjs';
14
14
  import 'zod';
15
15
  import './authRelay-DhQhkBvX.mjs';
16
16
  import 'node:crypto';
@@ -2,17 +2,17 @@
2
2
 
3
3
  var chalk = require('chalk');
4
4
  var promises = require('node:readline/promises');
5
- var configuration = require('./configuration-LWFmTxty.cjs');
6
- var controlClient = require('./controlClient-TVMpETsR.cjs');
5
+ var configuration = require('./configuration-DZUnfWp2.cjs');
6
+ var controlClient = require('./controlClient-Bfwe0Xpt.cjs');
7
7
  var accountService = require('./accountService-Cns8UYGI.cjs');
8
8
  require('node:fs');
9
9
  require('node:os');
10
10
  require('node:path');
11
- require('./package-06cGlmeD.cjs');
11
+ require('./package-CAmlKYcH.cjs');
12
12
  require('node:fs/promises');
13
- require('./logger-Hyhy2boA.cjs');
13
+ require('./logger-Dhc0l3xH.cjs');
14
14
  require('node:util');
15
- require('./persistence-_W9tE-bW.cjs');
15
+ require('./persistence-05BAS4Ou.cjs');
16
16
  require('zod');
17
17
  require('./authRelay-Dy1qU9td.cjs');
18
18
  require('node:crypto');
@@ -1,6 +1,6 @@
1
1
  import { mkdirSync, renameSync, existsSync, unlinkSync } from 'node:fs';
2
2
  import { join } from 'node:path';
3
- import { w as writePrivateFileSync, c as configuration } from './configuration-DhEqAYzz.mjs';
3
+ import { w as writePrivateFileSync, c as configuration } from './configuration-CQaLZMa-.mjs';
4
4
 
5
5
  const SESSION_MODE_DIR = "session-modes";
6
6
  const ACP_PERMISSION_MODES = ["default", "acceptEdits", "plan", "bypassPermissions"];
@@ -2,7 +2,7 @@
2
2
 
3
3
  var node_fs = require('node:fs');
4
4
  var path = require('node:path');
5
- var configuration = require('./configuration-LWFmTxty.cjs');
5
+ var configuration = require('./configuration-DZUnfWp2.cjs');
6
6
 
7
7
  const SESSION_MODE_DIR = "session-modes";
8
8
  const ACP_PERMISSION_MODES = ["default", "acceptEdits", "plan", "bypassPermissions"];
@@ -1,13 +1,13 @@
1
1
  import chalk from 'chalk';
2
2
  import { homedir } from 'node:os';
3
- import { r as readSettings, u as updateSettings } from './persistence-CF7oV1oH.mjs';
3
+ import { r as readSettings, u as updateSettings } from './persistence-EuUaQKL7.mjs';
4
4
  import 'node:fs';
5
- import './logger-CFrzcRHD.mjs';
5
+ import './logger-BEVIGYKL.mjs';
6
6
  import { d as describeAgentHome, p as probeLoginShellEnv, r as resolveAgentHomes, e as expandHomePath, A as AGENT_HOME_ENV_NAMES } from './loginShellEnv-Dw8M7tkI.mjs';
7
7
  import 'node:fs/promises';
8
- import './configuration-DhEqAYzz.mjs';
8
+ import './configuration-CQaLZMa-.mjs';
9
9
  import 'node:path';
10
- import './package-DxE8PttX.mjs';
10
+ import './package-aOUtHYRZ.mjs';
11
11
  import 'zod';
12
12
  import './authRelay-DhQhkBvX.mjs';
13
13
  import 'node:crypto';
@@ -2,14 +2,14 @@
2
2
 
3
3
  var chalk = require('chalk');
4
4
  var os = require('node:os');
5
- var persistence = require('./persistence-_W9tE-bW.cjs');
5
+ var persistence = require('./persistence-05BAS4Ou.cjs');
6
6
  require('node:fs');
7
- require('./logger-Hyhy2boA.cjs');
7
+ require('./logger-Dhc0l3xH.cjs');
8
8
  var loginShellEnv = require('./loginShellEnv-BkuYtExZ.cjs');
9
9
  require('node:fs/promises');
10
- require('./configuration-LWFmTxty.cjs');
10
+ require('./configuration-DZUnfWp2.cjs');
11
11
  require('node:path');
12
- require('./package-06cGlmeD.cjs');
12
+ require('./package-CAmlKYcH.cjs');
13
13
  require('zod');
14
14
  require('./authRelay-Dy1qU9td.cjs');
15
15
  require('node:crypto');
@@ -1,22 +1,22 @@
1
1
  'use strict';
2
2
 
3
3
  var axios = require('axios');
4
- var logger = require('./logger-Hyhy2boA.cjs');
5
- var pushNotifications = require('./pushNotifications-DdzTbrA3.cjs');
6
- var reconnectGate = require('./reconnectGate-DeDhtQJW.cjs');
4
+ var logger = require('./logger-Dhc0l3xH.cjs');
5
+ var pushNotifications = require('./pushNotifications-DaVlLe7N.cjs');
6
+ var reconnectGate = require('./reconnectGate-B_aJrehH.cjs');
7
7
  var node_events = require('node:events');
8
8
  var socket_ioClient = require('socket.io-client');
9
9
  var authRelay = require('./authRelay-Dy1qU9td.cjs');
10
10
  var limits = require('./limits-C-a7gr04.cjs');
11
- var time = require('./time-CDBZWYDb.cjs');
12
- var configuration = require('./configuration-LWFmTxty.cjs');
11
+ var time = require('./time-CbOTVtAt.cjs');
12
+ var configuration = require('./configuration-DZUnfWp2.cjs');
13
13
  var node_crypto = require('node:crypto');
14
14
  var index = require('./index-44o_qMvE.cjs');
15
- var registerCommonHandlers = require('./registerCommonHandlers-BrEtSwNk.cjs');
15
+ var registerCommonHandlers = require('./registerCommonHandlers-em2elV3l.cjs');
16
16
  var cuid2 = require('@paralleldrive/cuid2');
17
- var sync = require('./sync-C764ZzE6.cjs');
17
+ var sync = require('./sync-CyUWevwD.cjs');
18
18
  var backgroundTaskActivity = require('./backgroundTaskActivity-CBvUdj39.cjs');
19
- var controlClient = require('./controlClient-TVMpETsR.cjs');
19
+ var controlClient = require('./controlClient-Bfwe0Xpt.cjs');
20
20
  var chalk = require('chalk');
21
21
 
22
22
  async function hmac_sha512(key, data) {
@@ -3116,7 +3116,7 @@ class ApiClient {
3116
3116
  return new ApiSessionClient(this.credential.token, session, opts);
3117
3117
  }
3118
3118
  async machineSyncClient(machine) {
3119
- const { ApiMachineClient } = await Promise.resolve().then(function () { return require('./apiMachine-1sd5IVIB.cjs'); });
3119
+ const { ApiMachineClient } = await Promise.resolve().then(function () { return require('./apiMachine-DCWgI1l_.cjs'); });
3120
3120
  return new ApiMachineClient(this.credential.token, machine);
3121
3121
  }
3122
3122
  push() {
@@ -1,20 +1,20 @@
1
1
  import axios from 'axios';
2
- import { l as logger, a as redactLogValue } from './logger-CFrzcRHD.mjs';
3
- import { A as AsyncLock, S as SESSION_SUPERSEDED_ERROR, a as agentInstanceAuth, b as MAX_CHAT_ATTACHMENT_ENCRYPTED_BYTES, U as UserMessageSchema, F as FileEventMessageSchema, P as PushNotificationClient } from './pushNotifications-CxX10K6n.mjs';
4
- import { R as RpcHandlerManager, a as answerSocketRequest, c as connectGuarded, s as socketConnectGuard, d as describeSocketAckDrop, b as safeAck, i as isRateQuotaCode, p as pauseForRateQuota, e as shouldReconnect, f as createReconnectGate } from './reconnectGate-uTLj82tS.mjs';
2
+ import { l as logger, a as redactLogValue } from './logger-BEVIGYKL.mjs';
3
+ import { A as AsyncLock, S as SESSION_SUPERSEDED_ERROR, a as agentInstanceAuth, b as MAX_CHAT_ATTACHMENT_ENCRYPTED_BYTES, U as UserMessageSchema, F as FileEventMessageSchema, P as PushNotificationClient } from './pushNotifications-B7Ga8Zyf.mjs';
4
+ import { R as RpcHandlerManager, a as answerSocketRequest, c as connectGuarded, s as socketConnectGuard, d as describeSocketAckDrop, b as safeAck, i as isRateQuotaCode, p as pauseForRateQuota, e as shouldReconnect, f as createReconnectGate } from './reconnectGate-DO_ZQmJE.mjs';
5
5
  import { EventEmitter } from 'node:events';
6
6
  import { io } from 'socket.io-client';
7
7
  import { h as decrypt, d as decodeBase64, i as decryptBlob, e as encodeBase64, g as encrypt, l as libsodiumEncryptForPublicKey, j as libsodiumPublicKeyFromSecretKey, k as getRandomBytes } from './authRelay-DhQhkBvX.mjs';
8
8
  import { p as prepareClipboardText, d as prepareClipboardHistoryText } from './limits-DIo7rEBR.mjs';
9
- import { b as backoff, d as delay, e as exponentialBackoffDelay } from './time-DJF2csbV.mjs';
10
- import { c as configuration } from './configuration-DhEqAYzz.mjs';
9
+ import { b as backoff, d as delay, e as exponentialBackoffDelay } from './time-BQWf06hA.mjs';
10
+ import { c as configuration } from './configuration-CQaLZMa-.mjs';
11
11
  import { createHmac, randomUUID } from 'node:crypto';
12
12
  import { t as createEnvelope, s as streamKeyOf, af as ReleaseDrainNoticeSchema, ag as RelayAssignmentResponseSchema } from './index-CiRMvS73.mjs';
13
- import { r as registerCommonHandlers } from './registerCommonHandlers-BYrmi-A4.mjs';
13
+ import { r as registerCommonHandlers } from './registerCommonHandlers-BEpK4WD2.mjs';
14
14
  import { createId } from '@paralleldrive/cuid2';
15
- import { I as InvalidateSync } from './sync-CcBrziWp.mjs';
15
+ import { I as InvalidateSync } from './sync-BfM5OKSS.mjs';
16
16
  import { B as BackgroundTaskReporter } from './backgroundTaskActivity-8PdPxrvy.mjs';
17
- import { q as notifyDaemonTurnEvent, t as notifyDaemonBackgroundTasks } from './controlClient-PaIiDxM6.mjs';
17
+ import { q as notifyDaemonTurnEvent, t as notifyDaemonBackgroundTasks } from './controlClient-Cqhd8ynk.mjs';
18
18
  import chalk from 'chalk';
19
19
 
20
20
  async function hmac_sha512(key, data) {
@@ -3114,7 +3114,7 @@ class ApiClient {
3114
3114
  return new ApiSessionClient(this.credential.token, session, opts);
3115
3115
  }
3116
3116
  async machineSyncClient(machine) {
3117
- const { ApiMachineClient } = await import('./apiMachine-BDVE6MOn.mjs');
3117
+ const { ApiMachineClient } = await import('./apiMachine-DYGPILVb.mjs');
3118
3118
  return new ApiMachineClient(this.credential.token, machine);
3119
3119
  }
3120
3120
  push() {
@@ -2,46 +2,46 @@
2
2
 
3
3
  var socket_ioClient = require('socket.io-client');
4
4
  var webPanels = require('./webPanels-FCgFKvVe.cjs');
5
- var logger = require('./logger-Hyhy2boA.cjs');
6
- var reconnectGate = require('./reconnectGate-DeDhtQJW.cjs');
7
- var mirrorProtocol = require('./mirrorProtocol-YUoEuIYO.cjs');
8
- var configuration = require('./configuration-LWFmTxty.cjs');
5
+ var logger = require('./logger-Dhc0l3xH.cjs');
6
+ var reconnectGate = require('./reconnectGate-B_aJrehH.cjs');
7
+ var mirrorProtocol = require('./mirrorProtocol-DGMmhArw.cjs');
8
+ var configuration = require('./configuration-DZUnfWp2.cjs');
9
9
  var cliUpdate = require('./cliUpdate-DsKXPFYp.cjs');
10
- var registerCommonHandlers = require('./registerCommonHandlers-BrEtSwNk.cjs');
10
+ var registerCommonHandlers = require('./registerCommonHandlers-em2elV3l.cjs');
11
11
  var promises = require('node:fs/promises');
12
12
  var path = require('node:path');
13
13
  var os = require('node:os');
14
14
  var fsMkdir = require('./fsMkdir-0K3yENml.cjs');
15
15
  var node_child_process = require('node:child_process');
16
- var persistence = require('./persistence-_W9tE-bW.cjs');
16
+ var persistence = require('./persistence-05BAS4Ou.cjs');
17
17
  var fileStore = require('./fileStore-7qhnbs6N.cjs');
18
18
  var index = require('./index-44o_qMvE.cjs');
19
19
  var accountService = require('./accountService-Cns8UYGI.cjs');
20
20
  var authRelay = require('./authRelay-Dy1qU9td.cjs');
21
21
  var limits = require('./limits-C-a7gr04.cjs');
22
- var time = require('./time-CDBZWYDb.cjs');
22
+ var time = require('./time-CbOTVtAt.cjs');
23
23
  var pty = require('node-pty');
24
24
  var terminals = require('./terminals-dK3Lrjfp.cjs');
25
25
  var tmuxSocket = require('./tmuxSocket-Dg11Olx0.cjs');
26
- var index$1 = require('./index-BuOzDU17.cjs');
26
+ var index$1 = require('./index-DDOCSeEj.cjs');
27
27
  var node_crypto = require('node:crypto');
28
28
  var node_fs = require('node:fs');
29
29
  var axios = require('axios');
30
30
  var projectPath = require('./projectPath-C3ioB4Bu.cjs');
31
31
  var ids = require('./ids-B6ZC0HGt.cjs');
32
32
  var detectCLI = require('./detectCLI-BuYR_Qxe.cjs');
33
- var localHappyAgentAuth = require('./localHappyAgentAuth-DxlQgaer.cjs');
33
+ var localHappyAgentAuth = require('./localHappyAgentAuth-WLqXQbc6.cjs');
34
34
  var path$1 = require('./path-B7zW-WwE.cjs');
35
35
  var oneShotPrompts = require('./oneShotPrompts-CL0dip9C.cjs');
36
- var claudeSessionFork = require('./claudeSessionFork-C_X08LFh.cjs');
37
- var codexAppServerClient = require('./codexAppServerClient-BnMR-DRn.cjs');
36
+ var claudeSessionFork = require('./claudeSessionFork-BrstQPE4.cjs');
37
+ var codexAppServerClient = require('./codexAppServerClient-BwBPZonh.cjs');
38
38
  var codexThreadFork = require('./codexThreadFork-C6ZmcT2z.cjs');
39
- var rateLimitWindows = require('./rateLimitWindows-DjJjgjt4.cjs');
39
+ var rateLimitWindows = require('./rateLimitWindows-CpSOlXBt.cjs');
40
40
  require('chalk');
41
41
  require('node:util');
42
42
  require('os');
43
43
  require('child_process');
44
- require('./package-06cGlmeD.cjs');
44
+ require('./package-CAmlKYcH.cjs');
45
45
  require('util');
46
46
  require('fs/promises');
47
47
  require('crypto');
@@ -11601,6 +11601,11 @@ class ApiMachineClient {
11601
11601
  clearInterval(this.reconnectInterval);
11602
11602
  this.reconnectInterval = null;
11603
11603
  }
11604
+ try {
11605
+ this.controlConnectedHandler?.();
11606
+ } catch (error) {
11607
+ logger.logger.debug("[API MACHINE] connect handler failed", error);
11608
+ }
11604
11609
  const initialTerminals = this.webTerminal.buildTerminalList();
11605
11610
  this.webTerminal.primeListSignature(initialTerminals);
11606
11611
  this.updateDaemonState((state) => {
@@ -11695,6 +11700,11 @@ class ApiMachineClient {
11695
11700
  });
11696
11701
  }
11697
11702
  cliUpdatePolicyHandler = null;
11703
+ controlConnectedHandler = null;
11704
+ /** B-876: every time the control socket (re)connects, including a release handover's new socket. */
11705
+ setControlConnectedHandler(handler) {
11706
+ this.controlConnectedHandler = handler;
11707
+ }
11698
11708
  /** B-718: the daemon decides what a policy announcement means (update/policyAnnouncement.ts). */
11699
11709
  setCliUpdatePolicyHandler(handler) {
11700
11710
  this.cliUpdatePolicyHandler = handler;
@@ -1,45 +1,45 @@
1
1
  import { io } from 'socket.io-client';
2
2
  import { a as webPanelsSignature } from './webPanels-B2_C2-3g.mjs';
3
- import { l as logger } from './logger-CFrzcRHD.mjs';
4
- import { R as RpcHandlerManager, i as isRateQuotaCode, p as pauseForRateQuota, s as socketConnectGuard, c as connectGuarded, a as answerSocketRequest, e as shouldReconnect, f as createReconnectGate, d as describeSocketAckDrop } from './reconnectGate-uTLj82tS.mjs';
5
- import { i as isClaudeSessionId, s as stableVersion, a as sanitizeTagList, p as projectField, b as pickMirrorForTerminal, l as liveSnapshotChanged, c as sanitizeLiveSnapshot, d as serializeLiveSnapshot, r as registerWorktreeHandlers, e as configureWorktreeService, f as summarizeSpawnSessionForLog, g as parseMirrorSendParams } from './mirrorProtocol-dRyartIG.mjs';
6
- import { c as configuration } from './configuration-DhEqAYzz.mjs';
3
+ import { l as logger } from './logger-BEVIGYKL.mjs';
4
+ import { R as RpcHandlerManager, i as isRateQuotaCode, p as pauseForRateQuota, s as socketConnectGuard, c as connectGuarded, a as answerSocketRequest, e as shouldReconnect, f as createReconnectGate, d as describeSocketAckDrop } from './reconnectGate-DO_ZQmJE.mjs';
5
+ import { i as isClaudeSessionId, s as stableVersion, a as sanitizeTagList, p as projectField, b as pickMirrorForTerminal, l as liveSnapshotChanged, c as sanitizeLiveSnapshot, d as serializeLiveSnapshot, r as registerWorktreeHandlers, e as configureWorktreeService, f as summarizeSpawnSessionForLog, g as parseMirrorSendParams } from './mirrorProtocol-5aFYsCCe.mjs';
6
+ import { c as configuration } from './configuration-CQaLZMa-.mjs';
7
7
  import { w as withCurrentCliUpdateState } from './cliUpdate-Y34VGe9Y.mjs';
8
- import { r as registerCommonHandlers } from './registerCommonHandlers-BYrmi-A4.mjs';
8
+ import { r as registerCommonHandlers } from './registerCommonHandlers-BEpK4WD2.mjs';
9
9
  import { stat, readdir, lstat, open, readFile, rm, mkdir, chmod, writeFile, rename } from 'node:fs/promises';
10
10
  import { join, isAbsolute, resolve } from 'node:path';
11
11
  import os, { homedir } from 'node:os';
12
12
  import { f as fsMkdir } from './fsMkdir-DumgLTzR.mjs';
13
13
  import { spawn, execFile, spawnSync } from 'node:child_process';
14
- import { r as readSettings, c as readPersistedSessions, p as readTrackedClaudeSessionIds, q as readTrackedCodexThreadIds } from './persistence-CF7oV1oH.mjs';
14
+ import { r as readSettings, c as readPersistedSessions, p as readTrackedClaudeSessionIds, q as readTrackedCodexThreadIds } from './persistence-EuUaQKL7.mjs';
15
15
  import { M as ModelConfigError } from './fileStore-5qpetZS0.mjs';
16
16
  import { al as AGENT_PROFILE_RPC, am as RelayCandidatesResponseSchema, ag as RelayAssignmentResponseSchema, af as ReleaseDrainNoticeSchema } from './index-CiRMvS73.mjs';
17
17
  import { a as AccountError } from './accountService-DEpIq6CF.mjs';
18
18
  import { e as encodeBase64, g as encrypt, h as decrypt, d as decodeBase64 } from './authRelay-DhQhkBvX.mjs';
19
19
  import { p as prepareClipboardText, d as prepareClipboardHistoryText } from './limits-DIo7rEBR.mjs';
20
- import { b as backoff, d as delay } from './time-DJF2csbV.mjs';
20
+ import { b as backoff, d as delay } from './time-BQWf06hA.mjs';
21
21
  import * as pty from 'node-pty';
22
22
  import { a as attachStartupCommand, v as validateTerminalTags, d as deriveAutoTitle, T as TMUX_SESSION_ID_RE, i as isSafeTmuxSessionName, b as isVhSessionName, U as USER_SESSIONS_FORMAT, p as parseUserSessions, L as LIST_SESSIONS_FORMAT, c as parseSessionListLine, e as LIST_FIELD_SEP, s as sendToVhTerminal } from './terminals-Dc38XmZv.mjs';
23
23
  import { t as tmuxArgs, V as VH_TMUX_SOCKET_ENV, v as validateTerminalProjectId, a as scrubTmuxClientEnv } from './tmuxSocket-BmZyixRM.mjs';
24
- import { locateClaudeConversation, refreshAgentHomes } from './index-HJFzeG0B.mjs';
24
+ import { locateClaudeConversation, refreshAgentHomes } from './index-fNsf-8K-.mjs';
25
25
  import { randomBytes } from 'node:crypto';
26
26
  import { readdirSync, unlinkSync, existsSync, mkdirSync, writeFileSync, readFileSync, statSync, chmodSync, renameSync, rmSync, accessSync, constants } from 'node:fs';
27
27
  import axios from 'axios';
28
28
  import { p as projectPath } from './projectPath-BTBIMB57.mjs';
29
29
  import { a as isValidTerminalId } from './ids-DU6sLx4C.mjs';
30
30
  import { d as detectCLIAvailability } from './detectCLI-CSGMlV51.mjs';
31
- import { d as detectResumeSupport } from './localHappyAgentAuth-kg2RFvOy.mjs';
31
+ import { d as detectResumeSupport } from './localHappyAgentAuth-BUX4E1ug.mjs';
32
32
  import { g as getProjectPath, a as getClaudeProjectsRoot } from './path-D2wdaNSk.mjs';
33
33
  import { i as isVeryHappyOneShotPrompt } from './oneShotPrompts-DT4p6RNd.mjs';
34
- import { f as forkSession, F as ForkSourceMissingError, d as discardForkedSession, l as listClaudeRewindPoints, b as forkAndTruncateSession, c as ForkTruncateUuidNotFoundError, e as forkBeforeUserMessage, a as forkCompletedTurns } from './claudeSessionFork-H0ZVQALg.mjs';
35
- import { C as CodexAppServerClient } from './codexAppServerClient-aDrsSyjS.mjs';
34
+ import { f as forkSession, F as ForkSourceMissingError, d as discardForkedSession, l as listClaudeRewindPoints, b as forkAndTruncateSession, c as ForkTruncateUuidNotFoundError, e as forkBeforeUserMessage, a as forkCompletedTurns } from './claudeSessionFork-DRLxmv9j.mjs';
35
+ import { C as CodexAppServerClient } from './codexAppServerClient-DtdCZ7_b.mjs';
36
36
  import { f as forkCodexThread, C as CodexForkRewindPointNotFoundError, l as listCodexRewindPoints, b as forkCodexBeforeUserMessage, a as forkCodexCompletedTurns } from './codexThreadFork-CVzAqELg.mjs';
37
- import { p as planRateLimitWrite, m as mergeRateLimitReports } from './rateLimitWindows-DdUMUEoy.mjs';
37
+ import { p as planRateLimitWrite, m as mergeRateLimitReports } from './rateLimitWindows-hv2zLYid.mjs';
38
38
  import 'chalk';
39
39
  import 'node:util';
40
40
  import 'os';
41
41
  import 'child_process';
42
- import './package-DxE8PttX.mjs';
42
+ import './package-aOUtHYRZ.mjs';
43
43
  import 'util';
44
44
  import 'fs/promises';
45
45
  import 'crypto';
@@ -11580,6 +11580,11 @@ class ApiMachineClient {
11580
11580
  clearInterval(this.reconnectInterval);
11581
11581
  this.reconnectInterval = null;
11582
11582
  }
11583
+ try {
11584
+ this.controlConnectedHandler?.();
11585
+ } catch (error) {
11586
+ logger.debug("[API MACHINE] connect handler failed", error);
11587
+ }
11583
11588
  const initialTerminals = this.webTerminal.buildTerminalList();
11584
11589
  this.webTerminal.primeListSignature(initialTerminals);
11585
11590
  this.updateDaemonState((state) => {
@@ -11674,6 +11679,11 @@ class ApiMachineClient {
11674
11679
  });
11675
11680
  }
11676
11681
  cliUpdatePolicyHandler = null;
11682
+ controlConnectedHandler = null;
11683
+ /** B-876: every time the control socket (re)connects, including a release handover's new socket. */
11684
+ setControlConnectedHandler(handler) {
11685
+ this.controlConnectedHandler = handler;
11686
+ }
11677
11687
  /** B-718: the daemon decides what a policy announcement means (update/policyAnnouncement.ts). */
11678
11688
  setCliUpdatePolicyHandler(handler) {
11679
11689
  this.cliUpdatePolicyHandler = handler;
@@ -1,8 +1,8 @@
1
1
  import { randomUUID } from 'node:crypto';
2
2
  import { writeFile, rename, unlink } from 'node:fs/promises';
3
3
  import { join, basename } from 'node:path';
4
- import { M as MAX_CHAT_ATTACHMENT_SOURCE_BYTES } from './pushNotifications-CxX10K6n.mjs';
5
- import { e as ensurePrivateDirectory, h as hardenPrivateFile } from './configuration-DhEqAYzz.mjs';
4
+ import { M as MAX_CHAT_ATTACHMENT_SOURCE_BYTES } from './pushNotifications-B7Ga8Zyf.mjs';
5
+ import { e as ensurePrivateDirectory, h as hardenPrivateFile } from './configuration-CQaLZMa-.mjs';
6
6
 
7
7
  const CLAUDE_ATTACHMENT_KINDS = [
8
8
  "image/jpeg",
@@ -3,8 +3,8 @@
3
3
  var node_crypto = require('node:crypto');
4
4
  var promises = require('node:fs/promises');
5
5
  var path = require('node:path');
6
- var pushNotifications = require('./pushNotifications-DdzTbrA3.cjs');
7
- var configuration = require('./configuration-LWFmTxty.cjs');
6
+ var pushNotifications = require('./pushNotifications-DaVlLe7N.cjs');
7
+ var configuration = require('./configuration-DZUnfWp2.cjs');
8
8
 
9
9
  const CLAUDE_ATTACHMENT_KINDS = [
10
10
  "image/jpeg",
@@ -1,13 +1,13 @@
1
1
  'use strict';
2
2
 
3
3
  var chalk = require('chalk');
4
- var persistence = require('./persistence-_W9tE-bW.cjs');
5
- var auth = require('./auth-CXCX-iJ-.cjs');
6
- var configuration = require('./configuration-LWFmTxty.cjs');
4
+ var persistence = require('./persistence-05BAS4Ou.cjs');
5
+ var auth = require('./auth-DpIHm7Lb.cjs');
6
+ var configuration = require('./configuration-DZUnfWp2.cjs');
7
7
  var node_fs = require('node:fs');
8
8
  var node_readline = require('node:readline');
9
- var controlClient = require('./controlClient-TVMpETsR.cjs');
10
- var logger = require('./logger-Hyhy2boA.cjs');
9
+ var controlClient = require('./controlClient-Bfwe0Xpt.cjs');
10
+ var logger = require('./logger-Dhc0l3xH.cjs');
11
11
  var os = require('node:os');
12
12
  var authRelay = require('./authRelay-Dy1qU9td.cjs');
13
13
  require('node:fs/promises');
@@ -15,11 +15,11 @@ require('zod');
15
15
  require('node:crypto');
16
16
  require('tweetnacl');
17
17
  require('axios');
18
- require('./time-CDBZWYDb.cjs');
19
- require('./browser-B0SEB6r3.cjs');
18
+ require('./time-CbOTVtAt.cjs');
19
+ require('./browser-DgufCq1K.cjs');
20
20
  require('open');
21
21
  require('node:path');
22
- require('./package-06cGlmeD.cjs');
22
+ require('./package-CAmlKYcH.cjs');
23
23
  require('node:util');
24
24
 
25
25
  function localMachineIdentityStatus(machineId) {
@@ -1,12 +1,12 @@
1
1
  import { e as encodeBase64, c as credentialRelayProblem, f as encodeBase64Url, d as decodeBase64 } from './authRelay-DhQhkBvX.mjs';
2
- import { c as configuration } from './configuration-DhEqAYzz.mjs';
2
+ import { c as configuration } from './configuration-CQaLZMa-.mjs';
3
3
  import { randomUUID, randomBytes } from 'node:crypto';
4
4
  import tweetnacl from 'tweetnacl';
5
5
  import axios from 'axios';
6
- import { d as delay } from './time-DJF2csbV.mjs';
7
- import { g as readCredentials, m as readSettingsOutcome, u as updateSettings, w as writeCredentialsLegacy, n as writeCredentialsDataKey } from './persistence-CF7oV1oH.mjs';
8
- import { o as openBrowser } from './browser-DL3QIQLS.mjs';
9
- import { l as logger } from './logger-CFrzcRHD.mjs';
6
+ import { d as delay } from './time-BQWf06hA.mjs';
7
+ import { g as readCredentials, m as readSettingsOutcome, u as updateSettings, w as writeCredentialsLegacy, n as writeCredentialsDataKey } from './persistence-EuUaQKL7.mjs';
8
+ import { o as openBrowser } from './browser-Dx3UOVPP.mjs';
9
+ import { l as logger } from './logger-BEVIGYKL.mjs';
10
10
 
11
11
  function generateWebAuthUrl(publicKey) {
12
12
  const publicKeyBase64 = encodeBase64(publicKey, "base64url");
@@ -1,11 +1,11 @@
1
1
  import chalk from 'chalk';
2
- import { g as readCredentials, r as readSettings, h as clearCredentials, i as clearMachineId } from './persistence-CF7oV1oH.mjs';
3
- import { a as authAndSetupMachineIfNeeded } from './auth-WCd2S1zA.mjs';
4
- import { c as configuration } from './configuration-DhEqAYzz.mjs';
2
+ import { g as readCredentials, r as readSettings, h as clearCredentials, i as clearMachineId } from './persistence-EuUaQKL7.mjs';
3
+ import { a as authAndSetupMachineIfNeeded } from './auth-CgdE-j7z.mjs';
4
+ import { c as configuration } from './configuration-CQaLZMa-.mjs';
5
5
  import { existsSync, rmSync } from 'node:fs';
6
6
  import { createInterface } from 'node:readline';
7
- import { a as checkIfDaemonRunningAndCleanupStaleState, s as stopDaemon } from './controlClient-PaIiDxM6.mjs';
8
- import { l as logger } from './logger-CFrzcRHD.mjs';
7
+ import { a as checkIfDaemonRunningAndCleanupStaleState, s as stopDaemon } from './controlClient-Cqhd8ynk.mjs';
8
+ import { l as logger } from './logger-BEVIGYKL.mjs';
9
9
  import os from 'node:os';
10
10
  import { c as credentialRelayProblem } from './authRelay-DhQhkBvX.mjs';
11
11
  import 'node:fs/promises';
@@ -13,11 +13,11 @@ import 'zod';
13
13
  import 'node:crypto';
14
14
  import 'tweetnacl';
15
15
  import 'axios';
16
- import './time-DJF2csbV.mjs';
17
- import './browser-DL3QIQLS.mjs';
16
+ import './time-BQWf06hA.mjs';
17
+ import './browser-Dx3UOVPP.mjs';
18
18
  import 'open';
19
19
  import 'node:path';
20
- import './package-DxE8PttX.mjs';
20
+ import './package-aOUtHYRZ.mjs';
21
21
  import 'node:util';
22
22
 
23
23
  function localMachineIdentityStatus(machineId) {
@@ -1,14 +1,14 @@
1
1
  'use strict';
2
2
 
3
3
  var authRelay = require('./authRelay-Dy1qU9td.cjs');
4
- var configuration = require('./configuration-LWFmTxty.cjs');
4
+ var configuration = require('./configuration-DZUnfWp2.cjs');
5
5
  var node_crypto = require('node:crypto');
6
6
  var tweetnacl = require('tweetnacl');
7
7
  var axios = require('axios');
8
- var time = require('./time-CDBZWYDb.cjs');
9
- var persistence = require('./persistence-_W9tE-bW.cjs');
10
- var browser = require('./browser-B0SEB6r3.cjs');
11
- var logger = require('./logger-Hyhy2boA.cjs');
8
+ var time = require('./time-CbOTVtAt.cjs');
9
+ var persistence = require('./persistence-05BAS4Ou.cjs');
10
+ var browser = require('./browser-DgufCq1K.cjs');
11
+ var logger = require('./logger-Dhc0l3xH.cjs');
12
12
 
13
13
  function generateWebAuthUrl(publicKey) {
14
14
  const publicKeyBase64 = authRelay.encodeBase64(publicKey, "base64url");
@@ -5,45 +5,45 @@ var os = require('node:os');
5
5
  var node_fs = require('node:fs');
6
6
  var path = require('node:path');
7
7
  var index = require('./index-44o_qMvE.cjs');
8
- var configuration = require('./configuration-LWFmTxty.cjs');
9
- var client = require('./client-P1VkI76z.cjs');
8
+ var configuration = require('./configuration-DZUnfWp2.cjs');
9
+ var client = require('./client-Dq7jaxb2.cjs');
10
10
  var template = require('./template-3fV9bi0X.cjs');
11
11
  var install = require('./install-BOHlqewf.cjs');
12
12
  var precheckCompat = require('./precheckCompat-CWOi5c9L.cjs');
13
- var sessionOps = require('./sessionOps-SxZr9veq.cjs');
14
- var spawn = require('./spawn-CuWcPkkN.cjs');
13
+ var sessionOps = require('./sessionOps-CvmOHwGP.cjs');
14
+ var spawn = require('./spawn-C8cJK9-m.cjs');
15
15
  var spawnAgents = require('./spawnAgents-DvbEDCIq.cjs');
16
- var time = require('./time-CDBZWYDb.cjs');
16
+ var time = require('./time-CbOTVtAt.cjs');
17
17
  require('zod');
18
18
  require('@paralleldrive/cuid2');
19
- require('./package-06cGlmeD.cjs');
19
+ require('./package-CAmlKYcH.cjs');
20
20
  require('node:fs/promises');
21
- require('./persistence-_W9tE-bW.cjs');
21
+ require('./persistence-05BAS4Ou.cjs');
22
22
  require('./authRelay-Dy1qU9td.cjs');
23
23
  require('node:crypto');
24
24
  require('tweetnacl');
25
- require('./logger-Hyhy2boA.cjs');
25
+ require('./logger-Dhc0l3xH.cjs');
26
26
  require('node:util');
27
27
  require('./resources-BZ_Be0qM.cjs');
28
28
  require('axios');
29
- require('./controlClient-TVMpETsR.cjs');
29
+ require('./controlClient-Bfwe0Xpt.cjs');
30
30
  require('./specialCommands-J3JFOq0J.cjs');
31
31
  require('socket.io-client');
32
32
  require('./backgroundTaskActivity-CBvUdj39.cjs');
33
- require('./client-BoymtYLP.cjs');
33
+ require('./client-CNWx72ZT.cjs');
34
34
  require('./path-B7zW-WwE.cjs');
35
- require('./claudeSessionFork-C_X08LFh.cjs');
35
+ require('./claudeSessionFork-BrstQPE4.cjs');
36
36
  require('node:readline');
37
- require('./codexAppServerClient-BnMR-DRn.cjs');
37
+ require('./codexAppServerClient-BwBPZonh.cjs');
38
38
  require('node:child_process');
39
39
  require('cross-spawn');
40
40
  require('./contentLogMetadata-ZSFk_NjQ.cjs');
41
41
  require('./manager-HrEj442o.cjs');
42
42
  require('@anthropic-ai/sandbox-runtime');
43
- require('./rateLimitWindows-DjJjgjt4.cjs');
43
+ require('./rateLimitWindows-CpSOlXBt.cjs');
44
44
  require('./processTree-CMHWlVse.cjs');
45
45
  require('./codexThreadFork-C6ZmcT2z.cjs');
46
- require('./createSessionMetadata-hGZeo_nR.cjs');
46
+ require('./createSessionMetadata-D_qa01wq.cjs');
47
47
  require('./projectPath-C3ioB4Bu.cjs');
48
48
  require('path');
49
49
  require('url');