very-happy-cli 0.2.181 → 0.2.183

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 (202) hide show
  1. package/dist/{AcpBackend-DZGCSuXF.mjs → AcpBackend-9c-Jeaxd.mjs} +3 -3
  2. package/dist/{AcpBackend-CgHb_ya5.cjs → AcpBackend-B-aMuEzO.cjs} +3 -3
  3. package/dist/{AcpSessionManager-CacC2EVn.cjs → AcpSessionManager-BxXe24AV.cjs} +10 -3
  4. package/dist/{AcpSessionManager-DwuPzWBh.mjs → AcpSessionManager-CS0FOSQk.mjs} +10 -3
  5. package/dist/{BasePermissionHandler-Uo-GUjbb.mjs → BasePermissionHandler-BJ1ID_Br.mjs} +1 -1
  6. package/dist/{BasePermissionHandler-DCP8ZEB4.cjs → BasePermissionHandler-BREjppjP.cjs} +1 -1
  7. package/dist/{acpSessionResume-9OLTD6kT.mjs → acpSessionResume-BKtI9Jq_.mjs} +1 -1
  8. package/dist/{acpSessionResume-BaVMD80f.cjs → acpSessionResume-mVoJ75vI.cjs} +1 -1
  9. package/dist/{agentHome-B1BsKeqD.mjs → agentHome-B8Ctr_Nu.mjs} +4 -4
  10. package/dist/{agentHome-BtUmGcPX.cjs → agentHome-rzjm56o4.cjs} +4 -4
  11. package/dist/{api-Dr3wXL_7.mjs → api-C29WLYkW.mjs} +79 -12
  12. package/dist/{api-COHFAkb_.cjs → api-xZiqVynF.cjs} +81 -11
  13. package/dist/{apiMachine-D8H7CXaz.cjs → apiMachine-B-FNBIYG.cjs} +19 -14
  14. package/dist/{apiMachine-CHEzPQdS.mjs → apiMachine-Dz6Yfk0m.mjs} +19 -14
  15. package/dist/{attachmentContent-mIhbtRKl.cjs → attachmentContent-COV4LF8k.cjs} +2 -2
  16. package/dist/{attachmentContent-1YwtKgWl.mjs → attachmentContent-DwY0uIg6.mjs} +2 -2
  17. package/dist/{auth-CgQP7d0q.cjs → auth-CYtk9_ga.cjs} +5 -5
  18. package/dist/{auth-Fg8fLadK.cjs → auth-D_qsnVr3.cjs} +8 -8
  19. package/dist/{auth-CbZkcMAb.mjs → auth-DvbSDalm.mjs} +8 -8
  20. package/dist/{auth-DZsthtSk.mjs → auth-xT70IYMx.mjs} +5 -5
  21. package/dist/{auto-BB7kqSh5.cjs → auto-DT_PfpCx.cjs} +32 -25
  22. package/dist/{auto-_T-Ud-z5.mjs → auto-IiPqvIsN.mjs} +32 -26
  23. package/dist/{bootstrap-CYtOtbi7.cjs → bootstrap-C50NkfPx.cjs} +2 -2
  24. package/dist/{bootstrap-B6EkZh4u.mjs → bootstrap-DS8Acdhm.mjs} +2 -2
  25. package/dist/{browser-C2qhUHSE.mjs → browser-1j9gdZoD.mjs} +1 -1
  26. package/dist/{browser-DjNNQQk2.cjs → browser-CxKZLd2T.cjs} +1 -1
  27. package/dist/{claudeLocal-O_w7-fBh.cjs → claudeLocal-CgNWpepB.cjs} +5 -5
  28. package/dist/{claudeLocal-BAFjWhZ8.mjs → claudeLocal-U1Fa9sJo.mjs} +5 -5
  29. package/dist/{claudeLocalLauncher-CWn30LZR.mjs → claudeLocalLauncher-BjCsfZUE.mjs} +10 -10
  30. package/dist/{claudeLocalLauncher-Df3zg1q0.cjs → claudeLocalLauncher-IyFm0D6a.cjs} +10 -10
  31. package/dist/{claudeSessionFork-2ZkSTOGn.mjs → claudeSessionFork-6-1vKISn.mjs} +1 -1
  32. package/dist/{claudeSessionFork-pwcKqB-e.cjs → claudeSessionFork-BUO1XdSm.cjs} +1 -1
  33. package/dist/{client-CUO3ItoB.cjs → client--vZueZYF.cjs} +14 -4
  34. package/dist/{client-BKyU66lg.mjs → client-5_zDNdOh.mjs} +2 -2
  35. package/dist/{client-CXOnzuOy.mjs → client-BgHvK7lo.mjs} +15 -7
  36. package/dist/{client-D_U2VjO3.cjs → client-DYGDBD0M.cjs} +15 -7
  37. package/dist/{client-DWs6k041.cjs → client-DcKJ0ul_.cjs} +2 -2
  38. package/dist/{client-DsQcxVUV.mjs → client-DfDyE322.mjs} +14 -4
  39. package/dist/codex/happyMcpStdioBridge.cjs +20 -19
  40. package/dist/codex/happyMcpStdioBridge.mjs +20 -19
  41. package/dist/{codexAppServerClient-BRX3JZ_5.cjs → codexAppServerClient-C3nrTfwY.cjs} +3 -3
  42. package/dist/{codexAppServerClient-C3JO3pwM.mjs → codexAppServerClient-DvBg4hGc.mjs} +3 -3
  43. package/dist/{codexCommand-BZIAAqKS.mjs → codexCommand-Bqp2--g_.mjs} +96 -61
  44. package/dist/{codexCommand-dKOc5iQl.cjs → codexCommand-DSiU6MNt.cjs} +96 -61
  45. package/dist/{codexTermination-BVR9HeVI.cjs → codexTermination-D9TRTglF.cjs} +1 -1
  46. package/dist/{codexTermination-ztFkwHrG.mjs → codexTermination-DsliWl_s.mjs} +1 -1
  47. package/dist/{config-cftYxLC7.cjs → config-CRhWiOwi.cjs} +3 -3
  48. package/dist/{config-NbHjx8ge.mjs → config-DeaqRn3o.mjs} +3 -3
  49. package/dist/{configuration-C8JgseHy.cjs → configuration-K3I6yOjZ.cjs} +1 -1
  50. package/dist/{configuration-BPrfb17M.mjs → configuration-elzht62L.mjs} +1 -1
  51. package/dist/{connect-Br8VMrK1.cjs → connect-B5UbfmO3.cjs} +13 -13
  52. package/dist/{connect-CLD1ai0k.mjs → connect-CT5cOlnC.mjs} +13 -13
  53. package/dist/{context-_YGq8xdH.mjs → context-CLj1_RYF.mjs} +1 -1
  54. package/dist/{context-D1lgQTJC.cjs → context-DNKNF8Yh.cjs} +1 -1
  55. package/dist/{controlClient-D68Zj7Q-.cjs → controlClient-ChqmxgbB.cjs} +3 -3
  56. package/dist/{controlClient-CkNpT5zS.mjs → controlClient-CuYQs2aZ.mjs} +3 -3
  57. package/dist/{createSessionMetadata-3WAj3_xl.mjs → createSessionMetadata-C1MbLQnh.mjs} +2 -2
  58. package/dist/{createSessionMetadata-DNIbKLHg.cjs → createSessionMetadata-QfiRx4Tf.cjs} +2 -2
  59. package/dist/daemonSupervisor-57JYYzMf.cjs +268 -0
  60. package/dist/daemonSupervisor-DfzrtNhM.mjs +245 -0
  61. package/dist/{defaultPermissionMode-BmvjP32v.cjs → defaultPermissionMode-DQmdZZIg.cjs} +2 -2
  62. package/dist/{defaultPermissionMode-DXMznl8v.mjs → defaultPermissionMode-U9LuUeQh.mjs} +2 -2
  63. package/dist/{deterministicJson-BS7D7URE.cjs → deterministicJson-BBRUcB8i.cjs} +569 -17
  64. package/dist/{deterministicJson-BcBIKKf1.mjs → deterministicJson-BixlyPWV.mjs} +572 -21
  65. package/dist/{doctor-Be7zC0AF.cjs → doctor-CKgHUV4W.cjs} +7 -7
  66. package/dist/{doctor-CoOaPq6w.mjs → doctor-Dban2oE2.mjs} +7 -7
  67. package/dist/{downloadTarget-LyOiucn_.cjs → downloadTarget-CmC11Y7E.cjs} +6 -6
  68. package/dist/{downloadTarget-CeaAXdJj.mjs → downloadTarget-VUTd9lEO.mjs} +6 -6
  69. package/dist/{ensureDaemonRunning-B8z37VKD.cjs → ensureDaemonRunning-L0fl0cLE.cjs} +5 -5
  70. package/dist/{ensureDaemonRunning--98j7-17.mjs → ensureDaemonRunning-khb8Nr1n.mjs} +5 -5
  71. package/dist/fsMkdir-0K3yENml.cjs +56 -0
  72. package/dist/fsMkdir-DumgLTzR.mjs +53 -0
  73. package/dist/{handleResumeCommand-gO8I4keP.mjs → handleResumeCommand-CLDGWpTJ.mjs} +5 -5
  74. package/dist/{handleResumeCommand-BFZlrFVH.cjs → handleResumeCommand-D9myBN2N.cjs} +5 -5
  75. package/dist/{index-WUj3954m.mjs → index-BMZx-699.mjs} +4 -4
  76. package/dist/{index-BRMq9gOe.cjs → index-BdJs0465.cjs} +3 -3
  77. package/dist/{index-CeRXrGnH.mjs → index-BptfFoXM.mjs} +283 -77
  78. package/dist/{index-jF2t3ACW.cjs → index-COSjJPIv.cjs} +4 -4
  79. package/dist/{index-hQ8LP1C2.mjs → index-CtwqBeH6.mjs} +3 -3
  80. package/dist/{index-B5PXbZjW.cjs → index-DgA79dVw.cjs} +41 -40
  81. package/dist/{index-Df2eHm3O.cjs → index-Fq-jxjsB.cjs} +294 -76
  82. package/dist/{index-CO0n9ue6.mjs → index-GkkbUZX-.mjs} +4 -4
  83. package/dist/{index-DneHoQXf.mjs → index-IRI8s8kz.mjs} +42 -41
  84. package/dist/{index-BkluinoS.cjs → index-y4JNyz9H.cjs} +4 -4
  85. package/dist/index.cjs +2 -2
  86. package/dist/index.mjs +2 -2
  87. package/dist/{install-D2NCbeJ-.cjs → install-BATFlr_l.cjs} +2 -2
  88. package/dist/{install-D0inLCv-.mjs → install-F3rP8tBU.mjs} +2 -2
  89. package/dist/{install-DkYFiVK4.mjs → install-JvCk2PJV.mjs} +3 -3
  90. package/dist/{install-FqkSUjPC.cjs → install-cn98bTCs.cjs} +3 -3
  91. package/dist/lib.cjs +12 -12
  92. package/dist/lib.d.cts +2 -1
  93. package/dist/lib.d.mts +2 -1
  94. package/dist/lib.mjs +12 -12
  95. package/dist/{lidState-x8cJ8J_9.cjs → lidState-Bcs5kRHi.cjs} +1 -1
  96. package/dist/{lidState-DghbfRbr.mjs → lidState-DXeYTsrm.mjs} +1 -1
  97. package/dist/{localHappyAgentAuth-IKmeRpuQ.mjs → localHappyAgentAuth-C1A4ChCR.mjs} +1 -1
  98. package/dist/{localHappyAgentAuth-DZ2kb9uq.cjs → localHappyAgentAuth-CypTSe42.cjs} +1 -1
  99. package/dist/{logger-DgBwUSgS.cjs → logger-Cgwz30rK.cjs} +2 -2
  100. package/dist/{logger-LFr8iPgl.mjs → logger-RMPh5aqe.mjs} +2 -2
  101. package/dist/{machineMetadata-DB03ez4K.cjs → machineMetadata-BSOGMNRi.cjs} +5 -3
  102. package/dist/{machineMetadata-BglCsfvf.mjs → machineMetadata-BTUtPRth.mjs} +5 -3
  103. package/dist/{main-YQ-Vkakw.cjs → main-4iiwYpCR.cjs} +61 -56
  104. package/dist/{main-_1LSzlLv.mjs → main-DNDL6t8z.mjs} +61 -56
  105. package/dist/{mcp-BIY80jSc.cjs → mcp-C7eEoGhz.cjs} +17 -15
  106. package/dist/{mcp-Csj-mT5Y.mjs → mcp-DXYDPOpJ.mjs} +17 -15
  107. package/dist/{mirrorProtocol-CAxOMBkb.mjs → mirrorProtocol-DQRy5PaT.mjs} +3 -3
  108. package/dist/{mirrorProtocol-BphKIAK9.cjs → mirrorProtocol-c5g5MgNc.cjs} +3 -3
  109. package/dist/{package-NoD8QOOM.cjs → package-3aPiSpZj.cjs} +7 -7
  110. package/dist/{package-DYGwlmXl.mjs → package-CTrz6U3C.mjs} +7 -7
  111. package/dist/{panels-B8zRm7_d.mjs → panels-B5sZ84vA.mjs} +5 -5
  112. package/dist/{panels-DYEc1NyQ.cjs → panels-BmsmKHbw.cjs} +5 -5
  113. package/dist/{peerTools-CK3JYu1k.mjs → peerTools-DIPOX033.mjs} +5 -5
  114. package/dist/{peerTools-CP-x-Peu.cjs → peerTools-Dxe7iCi_.cjs} +5 -5
  115. package/dist/{persistence-BY-D00wT.cjs → persistence-DZRMUZZS.cjs} +2 -2
  116. package/dist/{persistence-D2Djrf7t.mjs → persistence-zJo4r7YI.mjs} +2 -2
  117. package/dist/{piRunnerArgs-gxLYIZH4.cjs → piRunnerArgs-BSPiS6tZ.cjs} +1 -1
  118. package/dist/{piRunnerArgs-IZLoL7TG.mjs → piRunnerArgs-IVdoHUB6.mjs} +1 -1
  119. package/dist/{piRuntime-o5L8uX-W.cjs → piRuntime-BJzjlMcN.cjs} +2 -2
  120. package/dist/{piRuntime-D7Y4oHVL.mjs → piRuntime-BvHO3vgO.mjs} +2 -2
  121. package/dist/{piTerminal-C_-JDkLN.cjs → piTerminal-Cz4pW55d.cjs} +20 -18
  122. package/dist/{piTerminal-Kphx8Uhw.mjs → piTerminal-D7vBOpkE.mjs} +20 -18
  123. package/dist/{pushNotifications-DXGIhE-A.mjs → pushNotifications-C4R9-1hU.mjs} +5 -3
  124. package/dist/{pushNotifications-BXoOSq_G.cjs → pushNotifications-CgIrYml3.cjs} +5 -3
  125. package/dist/{query-CdCxzuaB.cjs → query-CZQG1PdU.cjs} +1 -1
  126. package/dist/{query-CcA6DVZK.mjs → query-DKPmDsHS.mjs} +1 -1
  127. package/dist/{rateLimitWindows-OpAmdOtC.cjs → rateLimitWindows-CPV0nLeq.cjs} +1 -1
  128. package/dist/{rateLimitWindows-ZtHZHe-l.mjs → rateLimitWindows-HlHATOQ0.mjs} +1 -1
  129. package/dist/{registerCommonHandlers-CRjBoJLK.cjs → registerCommonHandlers-D1pC83Op.cjs} +2 -2
  130. package/dist/{registerCommonHandlers-DF6bdDtd.mjs → registerCommonHandlers-a9lHojSV.mjs} +2 -2
  131. package/dist/{registerKillSessionHandler-DDCKL3wf.mjs → registerKillSessionHandler-Bp-fuH-w.mjs} +6 -6
  132. package/dist/{registerKillSessionHandler-7fOm6ooh.cjs → registerKillSessionHandler-nTi2vVJy.cjs} +6 -6
  133. package/dist/{remoteSessionClient-B2POSKFT.mjs → remoteSessionClient-Cwrddscy.mjs} +5 -5
  134. package/dist/{remoteSessionClient-CFCn42bs.cjs → remoteSessionClient-HQAKAvVd.cjs} +5 -5
  135. package/dist/{reportProgressTool-th4trcET.cjs → reportProgressTool-Be-8ADI4.cjs} +4 -4
  136. package/dist/{reportProgressTool-tPxEvh6x.mjs → reportProgressTool-CcZ32nrd.mjs} +4 -4
  137. package/dist/{resources-CH1iP6Cv.mjs → resources-CLdQfe3b.mjs} +1 -1
  138. package/dist/{resources-BPyN59Iv.cjs → resources-CqwHPhdK.cjs} +1 -1
  139. package/dist/{run-cKQBbVi4.mjs → run-BBU8GyxE.mjs} +63 -244
  140. package/dist/{run-C_FumCQk.cjs → run-CxRJk9qq.cjs} +73 -255
  141. package/dist/{runClaude-CYnM6krL.mjs → runClaude-DR6pEQwd.mjs} +23 -22
  142. package/dist/{runClaude-z_2YC_aa.cjs → runClaude-Dd5zJaUZ.cjs} +23 -22
  143. package/dist/{runClaudeDeps-duS06Pb4.mjs → runClaudeDeps-COgZaUZm.mjs} +50 -45
  144. package/dist/{runClaudeDeps-CLubzWnA.cjs → runClaudeDeps-CTtZ_1mC.cjs} +45 -40
  145. package/dist/{runGemini-C_Pc2EhH.mjs → runGemini-DVoVUfPp.mjs} +40 -37
  146. package/dist/{runGemini-vEoXV6qT.cjs → runGemini-DX72qB92.cjs} +40 -37
  147. package/dist/{runOpenClaw-Cxun1qLC.mjs → runOpenClaw-BHjzmzeC.mjs} +19 -18
  148. package/dist/{runOpenClaw-CXJCtMgB.cjs → runOpenClaw-BSg4hFVt.cjs} +19 -18
  149. package/dist/{sandbox-CsvPnTmz.mjs → sandbox-CWR9EqoN.mjs} +4 -4
  150. package/dist/{sandbox-CO46H2tK.cjs → sandbox-D1T_hmgZ.cjs} +4 -4
  151. package/dist/{selfCheck-DIr7Gc0i.cjs → selfCheck-CE7vlnNS.cjs} +36 -36
  152. package/dist/selfCheck-ZGgBtxFQ.mjs +85 -0
  153. package/dist/{send-DMoFg6F1.mjs → send-BDF0Zvxo.mjs} +8 -8
  154. package/dist/{send-X2mfVEyr.cjs → send-BxZqRCcG.cjs} +8 -8
  155. package/dist/{server-CkqQ0sRH.mjs → server-B4JtnDLF.mjs} +4 -4
  156. package/dist/{server-BwTEdbkr.cjs → server-DB7_70Mi.cjs} +6 -6
  157. package/dist/{sessionLock-CdIRJlHH.cjs → sessionLock-BXvFN6uw.cjs} +3 -3
  158. package/dist/{sessionLock-JIfwCqMk.mjs → sessionLock-CXOOX-VD.mjs} +3 -3
  159. package/dist/{sessionOps-DVA-00nR.cjs → sessionOps-BWlDlFYP.cjs} +4 -4
  160. package/dist/{sessionOps-DqlftXxe.mjs → sessionOps-ByVggB_q.mjs} +4 -4
  161. package/dist/{sessionScanner-BMwgGAhY.cjs → sessionScanner-DkxPB5VA.cjs} +3 -3
  162. package/dist/{sessionScanner-BI0Vo1xT.mjs → sessionScanner-r66RtF95.mjs} +3 -3
  163. package/dist/{sessions-DjgEcHaT.cjs → sessions-BiJTxFy9.cjs} +10 -10
  164. package/dist/{sessions-D6IimX7b.mjs → sessions-C1lLK_a9.mjs} +10 -10
  165. package/dist/{setupOfflineReconnection-DgJK_4m1.mjs → setupOfflineReconnection-Bl3DuakT.mjs} +2 -2
  166. package/dist/{setupOfflineReconnection-CjuCiKY3.cjs → setupOfflineReconnection-CecTiFZ-.cjs} +2 -2
  167. package/dist/{spawn-Dvzy-tzc.mjs → spawn-D-8MlEM6.mjs} +14 -14
  168. package/dist/{spawn-rhF28shY.cjs → spawn-D79mVa3h.cjs} +14 -14
  169. package/dist/{spawnAgents-CCnlq-FI.mjs → spawnAgents-DJHjq01u.mjs} +1 -1
  170. package/dist/{spawnAgents-iwuqrgR9.cjs → spawnAgents-Sfnf-4pN.cjs} +1 -1
  171. package/dist/{spawnHappyCLI-DnKmIsEt.cjs → spawnHappyCLI-CQwQs9G5.cjs} +1 -1
  172. package/dist/{spawnHappyCLI-Dq3LLXLb.mjs → spawnHappyCLI-v_bJwZ4Z.mjs} +1 -1
  173. package/dist/{specialCommands-Zwr2C6A2.cjs → specialCommands-CWMVfT5s.cjs} +3 -3
  174. package/dist/{specialCommands-CcyZ1hGA.mjs → specialCommands-yMnFvS-W.mjs} +3 -3
  175. package/dist/{startFileWatcher-4thXDK9d.mjs → startFileWatcher-BCDkT_tr.mjs} +1 -1
  176. package/dist/{startFileWatcher-K6hJSyiR.cjs → startFileWatcher-GW4_E7dV.cjs} +1 -1
  177. package/dist/{startupSessionCreate-BfByJ16A.mjs → startupSessionCreate-BcAGYo51.mjs} +1 -1
  178. package/dist/{startupSessionCreate-CKEbq0tL.cjs → startupSessionCreate-tBRa_ze8.cjs} +1 -1
  179. package/dist/{streamRelay-LcDvyEjK.mjs → streamRelay-BEDiy6_b.mjs} +1 -1
  180. package/dist/{streamRelay-Gy8Xfnon.cjs → streamRelay-BZ8drtof.cjs} +1 -1
  181. package/dist/{sync-DO-2PU45.mjs → sync--QUIOuf8.mjs} +1 -1
  182. package/dist/{sync-1hQ5KHpL.cjs → sync-BMDkyo75.cjs} +1 -1
  183. package/dist/{systemPrompt-Dj7pgkMK.cjs → systemPrompt-DoHSXrH0.cjs} +2 -2
  184. package/dist/{systemPrompt-BctLfMZs.mjs → systemPrompt-O0Kd6vbA.mjs} +2 -2
  185. package/dist/{teams-uQxUlyyz.cjs → teams-BkZop-sP.cjs} +13 -10
  186. package/dist/{teams-Bu8YeOoF.mjs → teams-CTF1gT48.mjs} +13 -10
  187. package/dist/{template-BaHAmH2K.cjs → template-CeC1dYe-.cjs} +32 -2
  188. package/dist/{template-CiOPa2rd.mjs → template-D1fm22em.mjs} +31 -3
  189. package/dist/{time-BcoJaG8E.mjs → time-B2KKdAym.mjs} +1 -1
  190. package/dist/{time-nqa9shu8.cjs → time-CdCotzKU.cjs} +1 -1
  191. package/dist/{titleGenerator-D5r06bhf.mjs → titleGenerator-BFDczskR.mjs} +1 -1
  192. package/dist/{titleGenerator-D09XyYYG.cjs → titleGenerator-DZH1XqAf.cjs} +2 -2
  193. package/dist/{todo-D1q8146q.mjs → todo-C2gyOUom.mjs} +6 -6
  194. package/dist/{todo-CCOnL7pT.cjs → todo-DnTFTHmV.cjs} +6 -6
  195. package/dist/{tools-DiCXnAC5.cjs → tools-C8rpwyIl.cjs} +1 -1
  196. package/dist/{tools-D2E--n1x.mjs → tools-DUjkqSQL.mjs} +1 -1
  197. package/dist/{uninstall-CtwXi1Rt.mjs → uninstall-B5Ew50mZ.mjs} +3 -3
  198. package/dist/{uninstall-BrNwwwSD.cjs → uninstall-CKMPWTMv.cjs} +3 -3
  199. package/package.json +7 -7
  200. package/dist/daemonSupervisor-B-SPSqhs.cjs +0 -13
  201. package/dist/daemonSupervisor-C6urv3_8.mjs +0 -10
  202. package/dist/selfCheck-NamtBHVB.mjs +0 -85
@@ -1,19 +1,19 @@
1
1
  'use strict';
2
2
 
3
3
  var chalk = require('chalk');
4
- var configuration = require('./configuration-C8JgseHy.cjs');
5
- var persistence = require('./persistence-BY-D00wT.cjs');
6
- var controlClient = require('./controlClient-D68Zj7Q-.cjs');
4
+ var configuration = require('./configuration-K3I6yOjZ.cjs');
5
+ var persistence = require('./persistence-DZRMUZZS.cjs');
6
+ var controlClient = require('./controlClient-ChqmxgbB.cjs');
7
7
  var doctor$1 = require('./doctor-u46qYYKX.cjs');
8
8
  var node_fs = require('node:fs');
9
9
  var path = require('node:path');
10
10
  var projectPath = require('./projectPath-C3ioB4Bu.cjs');
11
- var _package = require('./package-NoD8QOOM.cjs');
11
+ var _package = require('./package-3aPiSpZj.cjs');
12
12
  var doctorReadiness = require('./doctorReadiness-Dl6yRQCy.cjs');
13
13
  var authRelay = require('./authRelay-Dy1qU9td.cjs');
14
14
  var cliUpdate = require('./cliUpdate-DsKXPFYp.cjs');
15
15
  var node_child_process = require('node:child_process');
16
- var piRunnerArgs = require('./piRunnerArgs-gxLYIZH4.cjs');
16
+ var piRunnerArgs = require('./piRunnerArgs-BSPiS6tZ.cjs');
17
17
 
18
18
  function shareSafeProcessLine(process2) {
19
19
  return `PID ${process2.pid}: command arguments hidden for privacy`;
@@ -313,8 +313,8 @@ ${typeLabels[type] || type}:`));
313
313
  }
314
314
  console.log(chalk.gray(" An external claude command is only needed for native terminal/mirror use."));
315
315
  try {
316
- const { resolveAgentHomesForCli } = await Promise.resolve().then(function () { return require('./agentHome-BtUmGcPX.cjs'); });
317
- const { describeAgentHome } = await Promise.resolve().then(function () { return require('./index-BkluinoS.cjs'); });
316
+ const { resolveAgentHomesForCli } = await Promise.resolve().then(function () { return require('./agentHome-rzjm56o4.cjs'); });
317
+ const { describeAgentHome } = await Promise.resolve().then(function () { return require('./index-y4JNyz9H.cjs'); });
318
318
  const homes = await resolveAgentHomesForCli();
319
319
  console.log(chalk.green(`\u2713 Claude config dir: ${describeAgentHome(homes.claudeConfigDir)}`));
320
320
  console.log(chalk.green(`\u2713 Codex home: ${describeAgentHome(homes.codexHome)}`));
@@ -1,17 +1,17 @@
1
1
  import chalk from 'chalk';
2
- import { c as configuration } from './configuration-BPrfb17M.mjs';
3
- import { r as readSettings, g as readCredentials, d as readDaemonState } from './persistence-D2Djrf7t.mjs';
4
- import { a as checkIfDaemonRunningAndCleanupStaleState } from './controlClient-CkNpT5zS.mjs';
2
+ import { c as configuration } from './configuration-elzht62L.mjs';
3
+ import { r as readSettings, g as readCredentials, d as readDaemonState } from './persistence-zJo4r7YI.mjs';
4
+ import { a as checkIfDaemonRunningAndCleanupStaleState } from './controlClient-CuYQs2aZ.mjs';
5
5
  import { findAllHappyProcesses } from './doctor-BPkYWSuq.mjs';
6
6
  import { statSync, realpathSync, existsSync, readdirSync } from 'node:fs';
7
7
  import { isAbsolute, resolve, dirname, basename, delimiter, join } from 'node:path';
8
8
  import { p as projectPath } from './projectPath-BTBIMB57.mjs';
9
- import { p as packageJson } from './package-DYGwlmXl.mjs';
9
+ import { p as packageJson } from './package-CTrz6U3C.mjs';
10
10
  import { s as shareableSettingsSummary, c as collectRuntimeReadiness, S as SUPPORTED_NODE_LABEL, r as resolveClaudeCredentialReadiness, a as toolProbeLabel, b as daemonReadiness, d as daemonEndpointsMatch } from './doctorReadiness-C208SMN9.mjs';
11
11
  import { c as credentialRelayProblem } from './authRelay-DhQhkBvX.mjs';
12
12
  import { d as deriveLocalCliUpdateSummary } from './cliUpdate-Y34VGe9Y.mjs';
13
13
  import { spawnSync } from 'node:child_process';
14
- import { c as piInstallCommand } from './piRunnerArgs-IZLoL7TG.mjs';
14
+ import { c as piInstallCommand } from './piRunnerArgs-IVdoHUB6.mjs';
15
15
 
16
16
  function shareSafeProcessLine(process2) {
17
17
  return `PID ${process2.pid}: command arguments hidden for privacy`;
@@ -311,8 +311,8 @@ ${typeLabels[type] || type}:`));
311
311
  }
312
312
  console.log(chalk.gray(" An external claude command is only needed for native terminal/mirror use."));
313
313
  try {
314
- const { resolveAgentHomesForCli } = await import('./agentHome-B1BsKeqD.mjs');
315
- const { describeAgentHome } = await import('./index-CO0n9ue6.mjs');
314
+ const { resolveAgentHomesForCli } = await import('./agentHome-B8Ctr_Nu.mjs');
315
+ const { describeAgentHome } = await import('./index-GkkbUZX-.mjs');
316
316
  const homes = await resolveAgentHomesForCli();
317
317
  console.log(chalk.green(`\u2713 Claude config dir: ${describeAgentHome(homes.claudeConfigDir)}`));
318
318
  console.log(chalk.green(`\u2713 Codex home: ${describeAgentHome(homes.codexHome)}`));
@@ -3,14 +3,14 @@
3
3
  var promises = require('node:fs/promises');
4
4
  var os = require('node:os');
5
5
  var z = require('zod');
6
- var logger = require('./logger-DgBwUSgS.cjs');
7
- var persistence = require('./persistence-BY-D00wT.cjs');
8
- var controlClient = require('./controlClient-D68Zj7Q-.cjs');
9
- var sessionOps = require('./sessionOps-DVA-00nR.cjs');
10
- var remoteSessionClient = require('./remoteSessionClient-CFCn42bs.cjs');
6
+ var logger = require('./logger-Cgwz30rK.cjs');
7
+ var persistence = require('./persistence-DZRMUZZS.cjs');
8
+ var controlClient = require('./controlClient-ChqmxgbB.cjs');
9
+ var sessionOps = require('./sessionOps-BWlDlFYP.cjs');
10
+ var remoteSessionClient = require('./remoteSessionClient-HQAKAvVd.cjs');
11
11
  var ids = require('./ids-B6ZC0HGt.cjs');
12
12
  var terminals = require('./terminals-B_bfC9c2.cjs');
13
- var bootstrap = require('./bootstrap-CYtOtbi7.cjs');
13
+ var bootstrap = require('./bootstrap-C50NkfPx.cjs');
14
14
  var path = require('node:path');
15
15
 
16
16
  const PERSONAL_MEMORY_SOFT_LIMIT_CHARS = 2e3;
@@ -1,14 +1,14 @@
1
1
  import { readFile, writeFile, appendFile, stat } from 'node:fs/promises';
2
2
  import os from 'node:os';
3
3
  import { z } from 'zod';
4
- import { l as logger } from './logger-LFr8iPgl.mjs';
5
- import { c as readPersistedSessions } from './persistence-D2Djrf7t.mjs';
6
- import { e as spawnDaemonSession } from './controlClient-CkNpT5zS.mjs';
7
- import { a as listSessions, r as readSessionTranscript, s as sessionWebUrl, g as waitForSessionKey, e as sendUserMessage, b as stopSession, d as archiveSession } from './sessionOps-DqlftXxe.mjs';
8
- import { r as readRemoteTranscript, s as sendRemoteMessage, d as deliverToSession, R as RemoteSessionOpsError } from './remoteSessionClient-B2POSKFT.mjs';
4
+ import { l as logger } from './logger-RMPh5aqe.mjs';
5
+ import { c as readPersistedSessions } from './persistence-zJo4r7YI.mjs';
6
+ import { e as spawnDaemonSession } from './controlClient-CuYQs2aZ.mjs';
7
+ import { a as listSessions, r as readSessionTranscript, s as sessionWebUrl, g as waitForSessionKey, e as sendUserMessage, b as stopSession, d as archiveSession } from './sessionOps-ByVggB_q.mjs';
8
+ import { r as readRemoteTranscript, s as sendRemoteMessage, d as deliverToSession, R as RemoteSessionOpsError } from './remoteSessionClient-Cwrddscy.mjs';
9
9
  import { i as isValidSessionId, a as isValidTerminalId } from './ids-DU6sLx4C.mjs';
10
10
  import { l as listVhTerminals, r as readVhTerminal, s as sendToVhTerminal } from './terminals-Dlg0x3nY.mjs';
11
- import { bootstrapAssistantHome, assistantPersonalMemoryPath } from './bootstrap-B6EkZh4u.mjs';
11
+ import { bootstrapAssistantHome, assistantPersonalMemoryPath } from './bootstrap-DS8Acdhm.mjs';
12
12
  import { join, isAbsolute, normalize } from 'node:path';
13
13
 
14
14
  const PERSONAL_MEMORY_SOFT_LIMIT_CHARS = 2e3;
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
- var logger = require('./logger-DgBwUSgS.cjs');
4
- var controlClient = require('./controlClient-D68Zj7Q-.cjs');
5
- var spawnHappyCLI = require('./spawnHappyCLI-DnKmIsEt.cjs');
6
- var persistence = require('./persistence-BY-D00wT.cjs');
7
- var configuration = require('./configuration-C8JgseHy.cjs');
3
+ var logger = require('./logger-Cgwz30rK.cjs');
4
+ var controlClient = require('./controlClient-ChqmxgbB.cjs');
5
+ var spawnHappyCLI = require('./spawnHappyCLI-CQwQs9G5.cjs');
6
+ var persistence = require('./persistence-DZRMUZZS.cjs');
7
+ var configuration = require('./configuration-K3I6yOjZ.cjs');
8
8
  var doctorReadiness = require('./doctorReadiness-Dl6yRQCy.cjs');
9
9
 
10
10
  function extractNoSandboxFlag(args) {
@@ -1,8 +1,8 @@
1
- import { l as logger } from './logger-LFr8iPgl.mjs';
2
- import { i as isDaemonRunningCurrentlyInstalledHappyVersion, a as checkIfDaemonRunningAndCleanupStaleState, s as stopDaemon } from './controlClient-CkNpT5zS.mjs';
3
- import { s as spawnHappyCLI } from './spawnHappyCLI-Dq3LLXLb.mjs';
4
- import { d as readDaemonState } from './persistence-D2Djrf7t.mjs';
5
- import { c as configuration } from './configuration-BPrfb17M.mjs';
1
+ import { l as logger } from './logger-RMPh5aqe.mjs';
2
+ import { i as isDaemonRunningCurrentlyInstalledHappyVersion, a as checkIfDaemonRunningAndCleanupStaleState, s as stopDaemon } from './controlClient-CuYQs2aZ.mjs';
3
+ import { s as spawnHappyCLI } from './spawnHappyCLI-v_bJwZ4Z.mjs';
4
+ import { d as readDaemonState } from './persistence-zJo4r7YI.mjs';
5
+ import { c as configuration } from './configuration-elzht62L.mjs';
6
6
  import { d as daemonEndpointsMatch } from './doctorReadiness-C208SMN9.mjs';
7
7
 
8
8
  function extractNoSandboxFlag(args) {
@@ -0,0 +1,56 @@
1
+ 'use strict';
2
+
3
+ var node_child_process = require('node:child_process');
4
+ var node_util = require('node:util');
5
+ var promises = require('node:fs/promises');
6
+ var path = require('node:path');
7
+ var os = require('node:os');
8
+
9
+ const FS_MKDIR_CAPABILITY_VERSION = 1;
10
+ const within = (root, path$1) => {
11
+ const rel = path.relative(root, path$1);
12
+ return rel !== "" && !rel.startsWith("..") && !path.isAbsolute(rel);
13
+ };
14
+ function mkdirTarget(input, homeDir) {
15
+ if (typeof input !== "string" || !input.trim() || input.includes("\0")) throw new Error("invalid-path");
16
+ const raw = input.trim();
17
+ if (raw.split(/[\\/]+/).includes("..")) throw new Error("invalid-path");
18
+ const path$1 = raw === "~" ? homeDir : raw.startsWith("~/") ? path.join(homeDir, raw.slice(2)) : raw;
19
+ if (!path.isAbsolute(path$1)) throw new Error("invalid-path");
20
+ const normalized = path.join(path$1, ".").replace(new RegExp(`\\${path.sep}+$`), "") || path.sep;
21
+ if (!within(homeDir, normalized)) throw new Error("outside-home");
22
+ return normalized;
23
+ }
24
+ async function closestExisting(path$1) {
25
+ for (let current = path$1; ; current = path.dirname(current)) {
26
+ try {
27
+ await promises.stat(current);
28
+ return current;
29
+ } catch (error) {
30
+ if (error.code !== "ENOENT" || path.dirname(current) === current) throw error;
31
+ }
32
+ }
33
+ }
34
+ async function fsMkdir(input, options = {}, homeDir = os.homedir(), gitInit = (directory) => node_util.promisify(node_child_process.execFile)("git", ["init", "-q", directory], { timeout: 2e4 })) {
35
+ const path = mkdirTarget(input, homeDir);
36
+ const realHome = await promises.realpath(homeDir).catch(() => homeDir);
37
+ try {
38
+ const anchor = await closestExisting(path);
39
+ if (anchor === path) throw new Error("exists");
40
+ const realAnchor = await promises.realpath(anchor);
41
+ if (realAnchor !== realHome && !within(realHome, realAnchor)) throw new Error("outside-home");
42
+ if (!(await promises.stat(anchor)).isDirectory()) throw new Error("not-a-directory");
43
+ await promises.mkdir(path, { recursive: true });
44
+ } catch (error) {
45
+ const code = error?.code;
46
+ if (code === "EACCES" || code === "EPERM" || code === "EROFS") throw new Error("permission-denied");
47
+ if (code === "EEXIST") throw new Error("exists");
48
+ if (code === "ENOTDIR") throw new Error("not-a-directory");
49
+ throw error instanceof Error ? error : new Error("fs-failed");
50
+ }
51
+ const git = options.gitInit === true ? await gitInit(path).then(() => true, () => false) : false;
52
+ return { path, created: true, git };
53
+ }
54
+
55
+ exports.FS_MKDIR_CAPABILITY_VERSION = FS_MKDIR_CAPABILITY_VERSION;
56
+ exports.fsMkdir = fsMkdir;
@@ -0,0 +1,53 @@
1
+ import { execFile } from 'node:child_process';
2
+ import { promisify } from 'node:util';
3
+ import { realpath, stat, mkdir } from 'node:fs/promises';
4
+ import { join, isAbsolute, sep, dirname, relative } from 'node:path';
5
+ import { homedir } from 'node:os';
6
+
7
+ const FS_MKDIR_CAPABILITY_VERSION = 1;
8
+ const within = (root, path) => {
9
+ const rel = relative(root, path);
10
+ return rel !== "" && !rel.startsWith("..") && !isAbsolute(rel);
11
+ };
12
+ function mkdirTarget(input, homeDir) {
13
+ if (typeof input !== "string" || !input.trim() || input.includes("\0")) throw new Error("invalid-path");
14
+ const raw = input.trim();
15
+ if (raw.split(/[\\/]+/).includes("..")) throw new Error("invalid-path");
16
+ const path = raw === "~" ? homeDir : raw.startsWith("~/") ? join(homeDir, raw.slice(2)) : raw;
17
+ if (!isAbsolute(path)) throw new Error("invalid-path");
18
+ const normalized = join(path, ".").replace(new RegExp(`\\${sep}+$`), "") || sep;
19
+ if (!within(homeDir, normalized)) throw new Error("outside-home");
20
+ return normalized;
21
+ }
22
+ async function closestExisting(path) {
23
+ for (let current = path; ; current = dirname(current)) {
24
+ try {
25
+ await stat(current);
26
+ return current;
27
+ } catch (error) {
28
+ if (error.code !== "ENOENT" || dirname(current) === current) throw error;
29
+ }
30
+ }
31
+ }
32
+ async function fsMkdir(input, options = {}, homeDir = homedir(), gitInit = (directory) => promisify(execFile)("git", ["init", "-q", directory], { timeout: 2e4 })) {
33
+ const path = mkdirTarget(input, homeDir);
34
+ const realHome = await realpath(homeDir).catch(() => homeDir);
35
+ try {
36
+ const anchor = await closestExisting(path);
37
+ if (anchor === path) throw new Error("exists");
38
+ const realAnchor = await realpath(anchor);
39
+ if (realAnchor !== realHome && !within(realHome, realAnchor)) throw new Error("outside-home");
40
+ if (!(await stat(anchor)).isDirectory()) throw new Error("not-a-directory");
41
+ await mkdir(path, { recursive: true });
42
+ } catch (error) {
43
+ const code = error?.code;
44
+ if (code === "EACCES" || code === "EPERM" || code === "EROFS") throw new Error("permission-denied");
45
+ if (code === "EEXIST") throw new Error("exists");
46
+ if (code === "ENOTDIR") throw new Error("not-a-directory");
47
+ throw error instanceof Error ? error : new Error("fs-failed");
48
+ }
49
+ const git = options.gitInit === true ? await gitInit(path).then(() => true, () => false) : false;
50
+ return { path, created: true, git };
51
+ }
52
+
53
+ export { FS_MKDIR_CAPABILITY_VERSION as F, fsMkdir as f };
@@ -1,22 +1,22 @@
1
1
  import { existsSync } from 'node:fs';
2
- import { s as spawnHappyCLI } from './spawnHappyCLI-Dq3LLXLb.mjs';
2
+ import { s as spawnHappyCLI } from './spawnHappyCLI-v_bJwZ4Z.mjs';
3
3
  import axios, { AxiosError } from 'axios';
4
4
  import tweetnacl from 'tweetnacl';
5
5
  import { z } from 'zod';
6
6
  import { d as decodeBase64, a as decryptWithDataKey, b as decryptLegacy } from './authRelay-DhQhkBvX.mjs';
7
- import { c as configuration } from './configuration-BPrfb17M.mjs';
8
- import { g as getLocalHappyAgentCredentialPath, r as readLocalHappyAgentCredentials } from './localHappyAgentAuth-IKmeRpuQ.mjs';
7
+ import { c as configuration } from './configuration-elzht62L.mjs';
8
+ import { g as getLocalHappyAgentCredentialPath, r as readLocalHappyAgentCredentials } from './localHappyAgentAuth-C1A4ChCR.mjs';
9
9
  import 'cross-spawn';
10
10
  import 'node:path';
11
11
  import './projectPath-BTBIMB57.mjs';
12
12
  import 'path';
13
13
  import 'url';
14
- import './logger-LFr8iPgl.mjs';
14
+ import './logger-RMPh5aqe.mjs';
15
15
  import 'chalk';
16
16
  import 'node:util';
17
17
  import 'node:crypto';
18
18
  import 'node:os';
19
- import './package-DYGwlmXl.mjs';
19
+ import './package-CTrz6U3C.mjs';
20
20
  import 'node:fs/promises';
21
21
 
22
22
  const ResumableMetadataSchema = z.object({
@@ -1,24 +1,24 @@
1
1
  'use strict';
2
2
 
3
3
  var node_fs = require('node:fs');
4
- var spawnHappyCLI = require('./spawnHappyCLI-DnKmIsEt.cjs');
4
+ var spawnHappyCLI = require('./spawnHappyCLI-CQwQs9G5.cjs');
5
5
  var axios = require('axios');
6
6
  var tweetnacl = require('tweetnacl');
7
7
  var z = require('zod');
8
8
  var authRelay = require('./authRelay-Dy1qU9td.cjs');
9
- var configuration = require('./configuration-C8JgseHy.cjs');
10
- var localHappyAgentAuth = require('./localHappyAgentAuth-DZ2kb9uq.cjs');
9
+ var configuration = require('./configuration-K3I6yOjZ.cjs');
10
+ var localHappyAgentAuth = require('./localHappyAgentAuth-CypTSe42.cjs');
11
11
  require('cross-spawn');
12
12
  require('node:path');
13
13
  require('./projectPath-C3ioB4Bu.cjs');
14
14
  require('path');
15
15
  require('url');
16
- require('./logger-DgBwUSgS.cjs');
16
+ require('./logger-Cgwz30rK.cjs');
17
17
  require('chalk');
18
18
  require('node:util');
19
19
  require('node:crypto');
20
20
  require('node:os');
21
- require('./package-NoD8QOOM.cjs');
21
+ require('./package-3aPiSpZj.cjs');
22
22
  require('node:fs/promises');
23
23
 
24
24
  const ResumableMetadataSchema = z.z.object({
@@ -1,14 +1,14 @@
1
- import { q as query } from './query-CcA6DVZK.mjs';
1
+ import { q as query } from './query-DKPmDsHS.mjs';
2
2
  export { AbortError } from '@anthropic-ai/claude-agent-sdk';
3
3
  import './smallFastModel-BLNgMrwR.mjs';
4
- import './logger-LFr8iPgl.mjs';
4
+ import './logger-RMPh5aqe.mjs';
5
5
  import 'chalk';
6
6
  import 'node:util';
7
- import './configuration-BPrfb17M.mjs';
7
+ import './configuration-elzht62L.mjs';
8
8
  import 'node:fs';
9
9
  import 'node:os';
10
10
  import 'node:path';
11
- import './package-DYGwlmXl.mjs';
11
+ import './package-CTrz6U3C.mjs';
12
12
  import 'node:fs/promises';
13
13
  import './processTreeSnapshot-CuLJDNC-.mjs';
14
14
  import 'node:child_process';
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var _package = require('./package-NoD8QOOM.cjs');
3
+ var _package = require('./package-3aPiSpZj.cjs');
4
4
  var module$1 = require('node:module');
5
5
  var node_fs = require('node:fs');
6
6
  var promises = require('node:fs/promises');
@@ -59,10 +59,10 @@ async function pruneStaleCompileCaches(happyHomeDir, cliVersion) {
59
59
  async function run(args) {
60
60
  enableCompileCacheIfPossible(_package.packageJson.version);
61
61
  if (isStandaloneVersionRequest(args) || isSelfCheckRequest(args)) {
62
- const { selfCheckMain } = await Promise.resolve().then(function () { return require('./selfCheck-DIr7Gc0i.cjs'); });
62
+ const { selfCheckMain } = await Promise.resolve().then(function () { return require('./selfCheck-CE7vlnNS.cjs'); });
63
63
  process.exit(await selfCheckMain({ verbose: isSelfCheckRequest(args) }));
64
64
  }
65
- const { main } = await Promise.resolve().then(function () { return require('./main-YQ-Vkakw.cjs'); });
65
+ const { main } = await Promise.resolve().then(function () { return require('./main-4iiwYpCR.cjs'); });
66
66
  await main();
67
67
  }
68
68
  void run(process.argv.slice(2));