very-happy-cli 0.2.198 → 0.2.200

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (214) hide show
  1. package/dist/{AcpBackend-Bm3EodAb.mjs → AcpBackend-Cnp6WNn8.mjs} +3 -3
  2. package/dist/{AcpBackend-DOuWeCAx.cjs → AcpBackend-CwSShYPI.cjs} +3 -3
  3. package/dist/{AcpSessionManager-BiwuXpbx.mjs → AcpSessionManager-C4O3jhT_.mjs} +2 -2
  4. package/dist/{AcpSessionManager-DvsZWTXp.cjs → AcpSessionManager-DqW99tOL.cjs} +2 -2
  5. package/dist/{BasePermissionHandler-1QcavYFn.mjs → BasePermissionHandler-8Msj0Z8j.mjs} +1 -1
  6. package/dist/{BasePermissionHandler-25RmI4dK.cjs → BasePermissionHandler-CgqjIUyG.cjs} +1 -1
  7. package/dist/{account-DA4mbX3-.mjs → account-BIxPuBEs.mjs} +11 -11
  8. package/dist/{account-ChUtFYld.cjs → account-DcNh2_SN.cjs} +11 -11
  9. package/dist/{accountService-BWUjgHl0.cjs → accountService-BDJo14mY.cjs} +4 -4
  10. package/dist/{accountService-D7NZrnQd.mjs → accountService-ELazcp3V.mjs} +4 -4
  11. package/dist/{acpSessionResume-CeQu84Ol.cjs → acpSessionResume-B_W8uTI6.cjs} +1 -1
  12. package/dist/{acpSessionResume-D6YgeofW.mjs → acpSessionResume-De_sTG30.mjs} +1 -1
  13. package/dist/{agentHome-DM6mC64c.mjs → agentHome-C-900jC1.mjs} +4 -4
  14. package/dist/{agentHome-DevJCRG9.cjs → agentHome-C-usjJwB.cjs} +4 -4
  15. package/dist/{api-te19Pzi3.cjs → api-BPWRzeNF.cjs} +16 -10
  16. package/dist/{api-oceym3w6.mjs → api-DCUiAds-.mjs} +16 -10
  17. package/dist/{apiMachine-DCHsqtFQ.mjs → apiMachine-CJl4m3V3.mjs} +18 -18
  18. package/dist/{apiMachine-BjhCXg6C.cjs → apiMachine-DjhbA1rL.cjs} +18 -18
  19. package/dist/{attachmentContent-Dl29U1v1.mjs → attachmentContent-BKIq6EXR.mjs} +2 -2
  20. package/dist/{attachmentContent-BfCEgPTP.cjs → attachmentContent-C2f1UEP9.cjs} +2 -2
  21. package/dist/{auth-BIkCWkRV.mjs → auth-8jKFCZOX.mjs} +5 -5
  22. package/dist/{auth-SshU0tNW.cjs → auth-h6oU63Ni.cjs} +8 -8
  23. package/dist/{auth-SH0o7ue7.cjs → auth-oAnLi4Tl.cjs} +5 -5
  24. package/dist/{auth-BJ8Tej9L.mjs → auth-uLRHXOGY.mjs} +8 -8
  25. package/dist/{auto-Bdr4sSJk.mjs → auto-A5arQ-bI.mjs} +17 -17
  26. package/dist/{auto-t1B1Yzb3.cjs → auto-Bpa5iA1A.cjs} +17 -17
  27. package/dist/{bootstrap-D8DYLUId.mjs → bootstrap-BkLFgEGF.mjs} +2 -2
  28. package/dist/{bootstrap-GZDknvPy.cjs → bootstrap-DUKAKxrJ.cjs} +2 -2
  29. package/dist/{browser-C-H3QYV2.mjs → browser-BAlw0rns.mjs} +1 -1
  30. package/dist/{browser-DwCi-9Ya.cjs → browser-Ds-N-Dup.cjs} +1 -1
  31. package/dist/{claudeAccountEnv-DmVbGhZb.mjs → claudeAccountEnv-CI8RlIB9.mjs} +1 -1
  32. package/dist/{claudeAccountEnv-DSaFKajJ.cjs → claudeAccountEnv-D33xXRE7.cjs} +1 -1
  33. package/dist/{claudeLocal-Ck1jTve1.cjs → claudeLocal-BbsOT-EF.cjs} +5 -5
  34. package/dist/{claudeLocal-BiM2x9DJ.mjs → claudeLocal-X48n0RhP.mjs} +5 -5
  35. package/dist/{claudeLocalLauncher-DzvM0jBo.mjs → claudeLocalLauncher-D18gRtxz.mjs} +10 -10
  36. package/dist/{claudeLocalLauncher-Jsupvl4V.cjs → claudeLocalLauncher-D1jS3iK4.cjs} +10 -10
  37. package/dist/{claudeSessionFork-CDTbQmYi.cjs → claudeSessionFork-Bkxn40Y8.cjs} +1 -1
  38. package/dist/{claudeSessionFork-D-BhXkRa.mjs → claudeSessionFork-n1vMiFcP.mjs} +1 -1
  39. package/dist/client-1zIbVVX5.cjs +120 -0
  40. package/dist/{client-BRuFIwki.mjs → client-BXwIqRha.mjs} +2 -2
  41. package/dist/client-BgxQ9aej.mjs +114 -0
  42. package/dist/{client-CISkP897.mjs → client-Blpuk2Hr.mjs} +2 -2
  43. package/dist/{client-D-HEr922.cjs → client-BnoN4P4t.cjs} +2 -2
  44. package/dist/{client-E4kW5qjR.mjs → client-C0qjAgZ_.mjs} +4 -4
  45. package/dist/{client-v6rdLsBH.cjs → client-C8BTmcrh.cjs} +4 -4
  46. package/dist/{client-oqSAKwmy.cjs → client-D0_UOmC1.cjs} +2 -2
  47. package/dist/codex/happyMcpStdioBridge.cjs +25 -16
  48. package/dist/codex/happyMcpStdioBridge.mjs +25 -16
  49. package/dist/{codexAccount-CnbDfCOM.mjs → codexAccount-BAezf1fY.mjs} +1 -1
  50. package/dist/{codexAccount-CQ4W1Ax8.cjs → codexAccount-DfeCHUOU.cjs} +1 -1
  51. package/dist/{codexAppServerClient-BLasFGTm.mjs → codexAppServerClient-By4ntTIr.mjs} +3 -3
  52. package/dist/{codexAppServerClient--K-ILfqM.cjs → codexAppServerClient-xBeqblCj.cjs} +3 -3
  53. package/dist/{codexCommand-Wv1WVNtM.mjs → codexCommand-C7BVsmPu.mjs} +58 -47
  54. package/dist/{codexCommand-M1uNblJx.cjs → codexCommand-CgzJe-Ti.cjs} +62 -51
  55. package/dist/{codexTermination-DigTBSJE.mjs → codexTermination-BS0sLBKS.mjs} +1 -1
  56. package/dist/{codexTermination-BumRIUqm.cjs → codexTermination-DVrdQx3Q.cjs} +1 -1
  57. package/dist/{config-Czs0Tucv.cjs → config-4R0rnthZ.cjs} +3 -3
  58. package/dist/{config-Br2fCFwB.mjs → config-D3jidXDu.mjs} +3 -3
  59. package/dist/{configuration-JBFF7432.mjs → configuration-4pG95tsq.mjs} +1 -1
  60. package/dist/{configuration-DfRs3WLd.cjs → configuration-ClUt7pqs.cjs} +1 -1
  61. package/dist/{connect-Cr--b0yl.cjs → connect-Da2NQJ3K.cjs} +13 -13
  62. package/dist/{connect-CbCqv-MV.mjs → connect-Do5qcqmg.mjs} +13 -13
  63. package/dist/{context-DLIjT5qU.mjs → context-Cf05DtNM.mjs} +1 -1
  64. package/dist/{context-C5WWlHOl.cjs → context-wMsIGwBw.cjs} +1 -1
  65. package/dist/{controlClient-B61crTpk.cjs → controlClient-SYDFcIkk.cjs} +3 -3
  66. package/dist/{controlClient-D5BYm3PU.mjs → controlClient-bqCKl9Nv.mjs} +3 -3
  67. package/dist/{createSessionMetadata-OMKj3e48.mjs → createSessionMetadata-CQkxe_4T.mjs} +3 -2
  68. package/dist/{createSessionMetadata-BwYysMTH.cjs → createSessionMetadata-msQTEvvn.cjs} +3 -2
  69. package/dist/{daemonAccounts-asWvoPKG.mjs → daemonAccounts-B8xnkprW.mjs} +3 -3
  70. package/dist/{daemonAccounts-CqAnPXDJ.cjs → daemonAccounts-Ch_rSTSX.cjs} +2 -2
  71. package/dist/{defaultPermissionMode-BItpIZML.cjs → defaultPermissionMode-BETWd5Lf.cjs} +1 -1
  72. package/dist/{defaultPermissionMode-4KYZA4WF.mjs → defaultPermissionMode-Cl3OvdHp.mjs} +1 -1
  73. package/dist/{deterministicJson-DnTSkEgb.mjs → deterministicJson-BRAeReBK.mjs} +67 -17
  74. package/dist/{deterministicJson-DIzyb1dQ.cjs → deterministicJson-CQ8jkArF.cjs} +72 -22
  75. package/dist/{doctor-Dn1G6QhF.cjs → doctor-C9D-t20z.cjs} +7 -7
  76. package/dist/{doctor-jrvm-tl3.mjs → doctor-Dy7z3qvy.mjs} +7 -7
  77. package/dist/{downloadTarget-DGnCGrDZ.cjs → downloadTarget-DfoOSrYi.cjs} +6 -6
  78. package/dist/{downloadTarget-BtsN_-LN.mjs → downloadTarget-Diq-GBu4.mjs} +6 -6
  79. package/dist/{ensureDaemonRunning-DsvcjXb4.cjs → ensureDaemonRunning-Df76EtKd.cjs} +5 -5
  80. package/dist/{ensureDaemonRunning-DCmXUwNi.mjs → ensureDaemonRunning-LqrgqVG3.mjs} +5 -5
  81. package/dist/format-CbliQN8V.mjs +70 -0
  82. package/dist/format-P9_M_7ga.cjs +74 -0
  83. package/dist/{handleResumeCommand-hzho-lp7.cjs → handleResumeCommand-CjCtwrrm.cjs} +5 -5
  84. package/dist/{handleResumeCommand-CFupxyHT.mjs → handleResumeCommand-Dz4Aw_aZ.mjs} +5 -5
  85. package/dist/{index-BMFLwBCd.mjs → index-BNBXrqRE.mjs} +4 -4
  86. package/dist/{index-BknTkVnR.cjs → index-BiutHOAO.cjs} +62 -1
  87. package/dist/{index-CRI-_-YH.cjs → index-ByBOdEvG.cjs} +48 -44
  88. package/dist/{index-DCfEzudP.cjs → index-CbzettaI.cjs} +4 -4
  89. package/dist/{index-5TDKOvkU.cjs → index-CdOnhx2X.cjs} +4 -4
  90. package/dist/{index-CHk8F9OY.mjs → index-CjMA70-R.mjs} +47 -43
  91. package/dist/{index-EGwuuFdL.cjs → index-DUwOmhnq.cjs} +3 -3
  92. package/dist/{index-CZpFhEmE.mjs → index-Sdvy1Lsf.mjs} +3 -3
  93. package/dist/{index-CofTgtQ3.mjs → index-XP-qcJQ3.mjs} +4 -4
  94. package/dist/{index-CxiisoO1.mjs → index-kwsivEs-.mjs} +49 -2
  95. package/dist/index.cjs +2 -2
  96. package/dist/index.mjs +2 -2
  97. package/dist/{install-CB5eTmzm.cjs → install-C4dKrmxR.cjs} +3 -3
  98. package/dist/{install-CeDqNGxI.mjs → install-DMXd8Z4c.mjs} +3 -3
  99. package/dist/issue-BijeNKIT.cjs +237 -0
  100. package/dist/issue-COytLvGE.mjs +229 -0
  101. package/dist/lib.cjs +12 -12
  102. package/dist/lib.d.cts +6 -0
  103. package/dist/lib.d.mts +6 -0
  104. package/dist/lib.mjs +12 -12
  105. package/dist/{localHappyAgentAuth-B6xdH-Fr.cjs → localHappyAgentAuth-CjtNcaI0.cjs} +1 -1
  106. package/dist/{localHappyAgentAuth-BiIyMoiG.mjs → localHappyAgentAuth-DeDQjw24.mjs} +1 -1
  107. package/dist/{logger-BHfBDOsy.mjs → logger-BLMi8oJK.mjs} +2 -2
  108. package/dist/{logger-BrAF4iuT.cjs → logger-D28MY1Bv.cjs} +2 -2
  109. package/dist/{machineMetadata-D5PO2ylb.cjs → machineMetadata-BzjrIn_N.cjs} +3 -3
  110. package/dist/{machineMetadata-Ekniv5o4.mjs → machineMetadata-D8OWVD4l.mjs} +3 -3
  111. package/dist/{main-C8lsRSYS.cjs → main-DoJIcSOh.cjs} +57 -47
  112. package/dist/{main-HXdcnexS.mjs → main-c0fCuBON.mjs} +57 -47
  113. package/dist/{mcp-D9sglL02.cjs → mcp-CEtvR6tG.cjs} +18 -18
  114. package/dist/{mcp-C2YD6mq4.mjs → mcp-DKkBFGUa.mjs} +18 -18
  115. package/dist/{mirrorProtocol-CNF1eHsm.cjs → mirrorProtocol-CCl9dtzh.cjs} +3 -3
  116. package/dist/{mirrorProtocol-BLhArCS9.mjs → mirrorProtocol-DFQLXDBI.mjs} +3 -3
  117. package/dist/{package-CStJrLG3.cjs → package-BFSsS_dl.cjs} +7 -7
  118. package/dist/{package-BGZo2vAj.mjs → package-DbGqY8Ej.mjs} +7 -7
  119. package/dist/{panels-GVnnEsow.mjs → panels-2yIO9FxQ.mjs} +5 -5
  120. package/dist/{panels-D4_yGw4n.cjs → panels-BqLXIQif.cjs} +5 -5
  121. package/dist/{peerTools-BO-H0wNj.mjs → peerTools-4GYKxr8J.mjs} +5 -5
  122. package/dist/{peerTools-Drow2-P4.cjs → peerTools-Z8V2E0AF.cjs} +5 -5
  123. package/dist/{persistence-DvD-irLh.mjs → persistence-DbOKjdUD.mjs} +3 -3
  124. package/dist/{persistence-DGfEdbA5.cjs → persistence-TpVFA5-I.cjs} +2 -2
  125. package/dist/{piRunnerArgs-DwcAwwzm.mjs → piRunnerArgs-Bdj0sjAT.mjs} +1 -1
  126. package/dist/{piRunnerArgs-C1dLsoXF.cjs → piRunnerArgs-DOEJJymf.cjs} +1 -1
  127. package/dist/{piRuntime-_yRSPgnR.mjs → piRuntime-B0QZykV7.mjs} +1 -1
  128. package/dist/{piRuntime-d2h0Cska.cjs → piRuntime-DiRayy91.cjs} +1 -1
  129. package/dist/{piTerminal-WN0AMv9u.mjs → piTerminal-DGF4X7C-.mjs} +20 -20
  130. package/dist/{piTerminal-CVB4fa5R.cjs → piTerminal-DciFqPEi.cjs} +20 -20
  131. package/dist/{pushNotifications-3YsyCEfY.cjs → pushNotifications-C1i2W1GQ.cjs} +3 -3
  132. package/dist/{pushNotifications-D2UZnoTB.mjs → pushNotifications-CrCTpDiN.mjs} +3 -3
  133. package/dist/{query-Ba7UXc_y.cjs → query-BkOpCpRo.cjs} +1 -1
  134. package/dist/{query-_sw0hG6A.mjs → query-CrSvcV32.mjs} +1 -1
  135. package/dist/{rateLimitWindows-DiiGHS9r.cjs → rateLimitWindows-BREA7OZj.cjs} +1 -1
  136. package/dist/{rateLimitWindows-DzXv6p_W.mjs → rateLimitWindows-DZVrafmm.mjs} +1 -1
  137. package/dist/{reconnectGate-CxLgZCBh.mjs → reconnectGate-COxAZTv8.mjs} +1 -1
  138. package/dist/{reconnectGate-BpePVLPu.cjs → reconnectGate-YQ5jXJfY.cjs} +1 -1
  139. package/dist/{registerCommonHandlers-ChdVwZW6.mjs → registerCommonHandlers-Cfl_dEWs.mjs} +2 -2
  140. package/dist/{registerCommonHandlers-6iKpECuR.cjs → registerCommonHandlers-D95IxqDN.cjs} +2 -2
  141. package/dist/{registerKillSessionHandler-BDTgrstx.cjs → registerKillSessionHandler-DJJXtc_L.cjs} +6 -6
  142. package/dist/{registerKillSessionHandler-D6wYbAIt.mjs → registerKillSessionHandler-DoE6xgH3.mjs} +6 -6
  143. package/dist/{registerSideQuestionHandler-U4LGga_Z.cjs → registerSideQuestionHandler-DsRz-aD9.cjs} +4 -4
  144. package/dist/{registerSideQuestionHandler-C3K_qKwA.mjs → registerSideQuestionHandler-Dv00rqcy.mjs} +4 -4
  145. package/dist/{remoteSessionClient-CFNM8UEh.mjs → remoteSessionClient-BFd_D9ka.mjs} +5 -5
  146. package/dist/{remoteSessionClient-DSC5Cj21.cjs → remoteSessionClient-DleOeQlN.cjs} +5 -5
  147. package/dist/{reportProgressTool-CFmDK8ag.mjs → reportProgressTool-D4xKY9Ur.mjs} +111 -4
  148. package/dist/{reportProgressTool-Cr25LWeW.cjs → reportProgressTool-DtEpDqv3.cjs} +113 -3
  149. package/dist/{run-Be0yicft.cjs → run-CVAIFpsp.cjs} +391 -42
  150. package/dist/{run-D0D73Dam.mjs → run-iDEMW4js.mjs} +391 -42
  151. package/dist/{runClaude-1NP467UM.mjs → runClaude-DvHdLJaV.mjs} +27 -25
  152. package/dist/{runClaude-BOxvKK4H.cjs → runClaude-gucCQBma.cjs} +30 -28
  153. package/dist/{runClaudeDeps-CkRlQx2Y.cjs → runClaudeDeps-CQ8vvqUQ.cjs} +42 -40
  154. package/dist/{runClaudeDeps-BPzLoWyT.mjs → runClaudeDeps-DkFWFwVc.mjs} +48 -46
  155. package/dist/{runGemini-j2n5ZlOL.mjs → runGemini-B2lXQDru.mjs} +35 -33
  156. package/dist/{runGemini-BowXJRXb.cjs → runGemini-C0vqJYtS.cjs} +35 -33
  157. package/dist/{runOpenClaw-DLsnZnFM.cjs → runOpenClaw-DNV7GX73.cjs} +18 -18
  158. package/dist/{runOpenClaw-6zrT8dPO.mjs → runOpenClaw-Ddb6sOkY.mjs} +18 -18
  159. package/dist/{sandbox-BFbT6HDl.mjs → sandbox-Cw0cPDDh.mjs} +4 -4
  160. package/dist/{sandbox-DLijcRKk.cjs → sandbox-FA0RlaZg.cjs} +4 -4
  161. package/dist/selfCheck-B-hKig8I.mjs +89 -0
  162. package/dist/{selfCheck-U-A1DCi9.cjs → selfCheck-DFC8fzhF.cjs} +40 -39
  163. package/dist/{send-CGxo_QUR.cjs → send-BFd-5b_Q.cjs} +8 -8
  164. package/dist/{send-CQGKb3Kb.mjs → send-CwgqPftE.mjs} +8 -8
  165. package/dist/{server-DR5bQzTq.mjs → server-C_4Fk45r.mjs} +4 -4
  166. package/dist/{server-CWbcDBjV.cjs → server-DwOdMGAP.cjs} +6 -6
  167. package/dist/{sessionLock-DqFKSW8u.mjs → sessionLock-CphKQyav.mjs} +3 -3
  168. package/dist/{sessionLock-CJiayMcZ.cjs → sessionLock-DglhFHzB.cjs} +3 -3
  169. package/dist/{startupSessionCreate-s1ekIs2Z.cjs → sessionMetadata-DyTJ0Ki5.cjs} +14 -3
  170. package/dist/{startupSessionCreate-CfBajt2k.mjs → sessionMetadata-V7Z7F-cj.mjs} +14 -4
  171. package/dist/{sessionOps-Cw_JivR2.cjs → sessionOps-CIFvoFPA.cjs} +4 -4
  172. package/dist/{sessionOps-D-SDNs-D.mjs → sessionOps-D-uFSTHk.mjs} +4 -4
  173. package/dist/{sessionProvider-JEAWxBF6.cjs → sessionProvider-B0daO-Ln.cjs} +10 -10
  174. package/dist/{sessionProvider-Cb-LtbFQ.mjs → sessionProvider-D8y7K8bK.mjs} +10 -10
  175. package/dist/{sessionScanner-zJrc_Oe0.cjs → sessionScanner-CWflbWoH.cjs} +3 -3
  176. package/dist/{sessionScanner-C2M697xz.mjs → sessionScanner-DQAOP6pU.mjs} +3 -3
  177. package/dist/{sessions-CIxnjpCM.mjs → sessions-CaO_-AI7.mjs} +10 -10
  178. package/dist/{sessions-D2yLkE5R.cjs → sessions-CzpI76qj.cjs} +10 -10
  179. package/dist/{setupOfflineReconnection-Uu3tqISz.cjs → setupOfflineReconnection-BZHRoKDx.cjs} +2 -2
  180. package/dist/{setupOfflineReconnection-DzV1wB4y.mjs → setupOfflineReconnection-Ck-p0YPb.mjs} +2 -2
  181. package/dist/{spawn-CeeM-Piz.mjs → spawn-BEJxfj60.mjs} +14 -14
  182. package/dist/{spawn-DD1Sv8Ri.cjs → spawn-DyjOa4nf.cjs} +14 -14
  183. package/dist/{spawnAgents-CrHgpAzU.cjs → spawnAgents-IiuqX0S5.cjs} +1 -1
  184. package/dist/{spawnAgents-DEBfpoPZ.mjs → spawnAgents-XObVj6zN.mjs} +1 -1
  185. package/dist/{spawnHappyCLI-CYzlz9Sl.cjs → spawnHappyCLI-C3XuIB2N.cjs} +1 -1
  186. package/dist/{spawnHappyCLI-CUfe8n_m.mjs → spawnHappyCLI-Cc9kKpcq.mjs} +1 -1
  187. package/dist/{startFileWatcher-C0u3J6Bj.cjs → startFileWatcher-CeDJl9mN.cjs} +1 -1
  188. package/dist/{startFileWatcher-JdO3v65I.mjs → startFileWatcher-t3K1y9kY.mjs} +1 -1
  189. package/dist/{store-DEhdblkI.mjs → store-CqNAE-0v.mjs} +1 -1
  190. package/dist/{store-QBBJB5Ox.cjs → store-DOZAMV4W.cjs} +1 -1
  191. package/dist/{streamRelay-DymKR1Rk.mjs → streamRelay-7D7v0hvk.mjs} +1 -1
  192. package/dist/{streamRelay-BVrCYh2G.cjs → streamRelay-Dyp4x44P.cjs} +1 -1
  193. package/dist/{sync-BO4DRSub.cjs → sync-BvxhuW9R.cjs} +1 -1
  194. package/dist/{sync-BLGrIKN9.mjs → sync-s1pUqWGm.mjs} +1 -1
  195. package/dist/{systemPrompt-DTUJZOn6.cjs → systemPrompt-CCdSrtn3.cjs} +2 -2
  196. package/dist/{systemPrompt-YylizkJs.mjs → systemPrompt-CLYTbBhV.mjs} +2 -2
  197. package/dist/{teams-zkGFcwsG.mjs → teams-BVp5F_xN.mjs} +7 -7
  198. package/dist/{teams-DnLPBPKx.cjs → teams-D2q1DQWz.cjs} +7 -7
  199. package/dist/{template-uSKZ53Sv.cjs → template-M1YGFYUT.cjs} +1 -1
  200. package/dist/{template-BGlDAjbM.mjs → template-oBrR0saD.mjs} +1 -1
  201. package/dist/{time-Cv4hbCLT.cjs → time-D-v2Cd9e.cjs} +1 -1
  202. package/dist/{time-DZE0879N.mjs → time-qd46L189.mjs} +1 -1
  203. package/dist/{titleGenerator-B2BbmJuc.mjs → titleGenerator-BdeHi3IY.mjs} +2 -2
  204. package/dist/{titleGenerator-D2ehxbvK.cjs → titleGenerator-CSYqcorn.cjs} +3 -3
  205. package/dist/{todo-DUpW9d8p.mjs → todo-DiEhLgUZ.mjs} +95 -12
  206. package/dist/{todo-9kn_9N-H.cjs → todo-Dq_YuJvj.cjs} +101 -18
  207. package/dist/{tools-rMr-wPIc.cjs → tools-CY2zrdd5.cjs} +1 -1
  208. package/dist/{tools-gIDXwAzk.mjs → tools-DR7GWBBV.mjs} +1 -1
  209. package/dist/{uninstall-CHx5TOHi.cjs → uninstall-BHhHjbzE.cjs} +3 -3
  210. package/dist/{uninstall-CBlRzvNa.mjs → uninstall-BvwDZVU9.mjs} +3 -3
  211. package/dist/{wrapperAccount-Ce78kKMo.mjs → wrapperAccount-CpDsQL15.mjs} +2 -2
  212. package/dist/{wrapperAccount-EkmR4V-v.cjs → wrapperAccount-ejUjAQaM.cjs} +2 -2
  213. package/package.json +7 -7
  214. package/dist/selfCheck-DCIqaiMu.mjs +0 -88
@@ -1,14 +1,14 @@
1
1
  'use strict';
2
2
 
3
3
  var authRelay = require('./authRelay-Dy1qU9td.cjs');
4
- var configuration = require('./configuration-DfRs3WLd.cjs');
4
+ var configuration = require('./configuration-ClUt7pqs.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-Cv4hbCLT.cjs');
9
- var persistence = require('./persistence-DGfEdbA5.cjs');
10
- var browser = require('./browser-DwCi-9Ya.cjs');
11
- var logger = require('./logger-BrAF4iuT.cjs');
8
+ var time = require('./time-D-v2Cd9e.cjs');
9
+ var persistence = require('./persistence-TpVFA5-I.cjs');
10
+ var browser = require('./browser-Ds-N-Dup.cjs');
11
+ var logger = require('./logger-D28MY1Bv.cjs');
12
12
 
13
13
  function generateWebAuthUrl(publicKey) {
14
14
  const publicKeyBase64 = authRelay.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-DvD-irLh.mjs';
3
- import { a as authAndSetupMachineIfNeeded } from './auth-BIkCWkRV.mjs';
4
- import { c as configuration } from './configuration-JBFF7432.mjs';
2
+ import { g as readCredentials, r as readSettings, h as clearCredentials, i as clearMachineId } from './persistence-DbOKjdUD.mjs';
3
+ import { a as authAndSetupMachineIfNeeded } from './auth-8jKFCZOX.mjs';
4
+ import { c as configuration } from './configuration-4pG95tsq.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-D5BYm3PU.mjs';
8
- import { l as logger } from './logger-BHfBDOsy.mjs';
7
+ import { a as checkIfDaemonRunningAndCleanupStaleState, s as stopDaemon } from './controlClient-bqCKl9Nv.mjs';
8
+ import { l as logger } from './logger-BLMi8oJK.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-DZE0879N.mjs';
17
- import './browser-C-H3QYV2.mjs';
16
+ import './time-qd46L189.mjs';
17
+ import './browser-BAlw0rns.mjs';
18
18
  import 'open';
19
19
  import 'node:path';
20
- import './package-BGZo2vAj.mjs';
20
+ import './package-DbGqY8Ej.mjs';
21
21
  import 'node:util';
22
22
 
23
23
  function localMachineIdentityStatus(machineId) {
@@ -2,46 +2,46 @@ import chalk from 'chalk';
2
2
  import { homedir } from 'node:os';
3
3
  import { readFileSync } from 'node:fs';
4
4
  import { resolve } from 'node:path';
5
- import { c as AUTOMATION_NAME_PATTERN, i as isAutomationRunTerminal, d as AUTOMATION_PRECHECK_MAX_TIMEOUT_MS, e as AutomationPrecheckSchema } from './index-CxiisoO1.mjs';
6
- import { c as configuration } from './configuration-JBFF7432.mjs';
7
- import { a as authenticatedAutomationsClient, b as automationRunIdFromEnv, i as isAutomationsUnavailable, A as AUTOMATIONS_UNAVAILABLE_MESSAGE } from './client-CISkP897.mjs';
8
- import { p as parseDuration, c as clipAutomationReport, A as AUTOMATION_REPORT_TEXT_LIMITS, t as triggerFromFlags, d as describeTrigger, a as describeAction } from './template-BGlDAjbM.mjs';
5
+ import { c as AUTOMATION_NAME_PATTERN, i as isAutomationRunTerminal, d as AUTOMATION_PRECHECK_MAX_TIMEOUT_MS, e as AutomationPrecheckSchema } from './index-kwsivEs-.mjs';
6
+ import { c as configuration } from './configuration-4pG95tsq.mjs';
7
+ import { a as authenticatedAutomationsClient, b as automationRunIdFromEnv, i as isAutomationsUnavailable, A as AUTOMATIONS_UNAVAILABLE_MESSAGE } from './client-Blpuk2Hr.mjs';
8
+ import { p as parseDuration, c as clipAutomationReport, A as AUTOMATION_REPORT_TEXT_LIMITS, t as triggerFromFlags, d as describeTrigger, a as describeAction } from './template-oBrR0saD.mjs';
9
9
  import { A as AUTOMATION_SKILL, i as installAutomationSkill } from './install-B8O1JpJH.mjs';
10
10
  import { u as updateAutomationChecked, c as createAutomationChecked } from './precheckCompat-DeEbilbr.mjs';
11
- import { s as sessionWebUrl } from './sessionOps-D-SDNs-D.mjs';
12
- import { parseEnvAssignment } from './spawn-CeeM-Piz.mjs';
13
- import { S as SPAWN_AGENTS, s as sanitizeSpawnPermissionMode, A as ALLOWED_SPAWN_PERMISSION_MODES } from './spawnAgents-DEBfpoPZ.mjs';
14
- import { d as delay } from './time-DZE0879N.mjs';
11
+ import { s as sessionWebUrl } from './sessionOps-D-uFSTHk.mjs';
12
+ import { parseEnvAssignment } from './spawn-BEJxfj60.mjs';
13
+ import { S as SPAWN_AGENTS, s as sanitizeSpawnPermissionMode, A as ALLOWED_SPAWN_PERMISSION_MODES } from './spawnAgents-XObVj6zN.mjs';
14
+ import { d as delay } from './time-qd46L189.mjs';
15
15
  import 'zod';
16
16
  import '@paralleldrive/cuid2';
17
- import './package-BGZo2vAj.mjs';
17
+ import './package-DbGqY8Ej.mjs';
18
18
  import 'node:fs/promises';
19
- import './persistence-DvD-irLh.mjs';
19
+ import './persistence-DbOKjdUD.mjs';
20
20
  import './authRelay-DhQhkBvX.mjs';
21
21
  import 'node:crypto';
22
22
  import 'tweetnacl';
23
- import './logger-BHfBDOsy.mjs';
23
+ import './logger-BLMi8oJK.mjs';
24
24
  import 'node:util';
25
25
  import './resources-CLP_MpK4.mjs';
26
26
  import 'axios';
27
- import './controlClient-D5BYm3PU.mjs';
27
+ import './controlClient-bqCKl9Nv.mjs';
28
28
  import './specialCommands-MXUN0wfI.mjs';
29
29
  import 'socket.io-client';
30
30
  import './backgroundTaskActivity-8PdPxrvy.mjs';
31
- import './client-BRuFIwki.mjs';
31
+ import './client-BXwIqRha.mjs';
32
32
  import './path-D2wdaNSk.mjs';
33
- import './claudeSessionFork-D-BhXkRa.mjs';
33
+ import './claudeSessionFork-n1vMiFcP.mjs';
34
34
  import 'node:readline';
35
- import './codexAppServerClient-BLasFGTm.mjs';
35
+ import './codexAppServerClient-By4ntTIr.mjs';
36
36
  import 'node:child_process';
37
37
  import 'cross-spawn';
38
38
  import './contentLogMetadata-BlWI0egu.mjs';
39
39
  import './manager-BEsI4qt3.mjs';
40
40
  import '@anthropic-ai/sandbox-runtime';
41
- import './rateLimitWindows-DzXv6p_W.mjs';
41
+ import './rateLimitWindows-DZVrafmm.mjs';
42
42
  import './processTree-CP5IvQ2Z.mjs';
43
43
  import './codexThreadFork-CVzAqELg.mjs';
44
- import './createSessionMetadata-OMKj3e48.mjs';
44
+ import './createSessionMetadata-CQkxe_4T.mjs';
45
45
  import './projectPath-BTBIMB57.mjs';
46
46
  import 'path';
47
47
  import 'url';
@@ -4,46 +4,46 @@ var chalk = require('chalk');
4
4
  var os = require('node:os');
5
5
  var node_fs = require('node:fs');
6
6
  var path = require('node:path');
7
- var index = require('./index-BknTkVnR.cjs');
8
- var configuration = require('./configuration-DfRs3WLd.cjs');
9
- var client = require('./client-oqSAKwmy.cjs');
10
- var template = require('./template-uSKZ53Sv.cjs');
7
+ var index = require('./index-BiutHOAO.cjs');
8
+ var configuration = require('./configuration-ClUt7pqs.cjs');
9
+ var client = require('./client-D0_UOmC1.cjs');
10
+ var template = require('./template-M1YGFYUT.cjs');
11
11
  var install = require('./install-BOHlqewf.cjs');
12
12
  var precheckCompat = require('./precheckCompat-CWOi5c9L.cjs');
13
- var sessionOps = require('./sessionOps-Cw_JivR2.cjs');
14
- var spawn = require('./spawn-DD1Sv8Ri.cjs');
15
- var spawnAgents = require('./spawnAgents-CrHgpAzU.cjs');
16
- var time = require('./time-Cv4hbCLT.cjs');
13
+ var sessionOps = require('./sessionOps-CIFvoFPA.cjs');
14
+ var spawn = require('./spawn-DyjOa4nf.cjs');
15
+ var spawnAgents = require('./spawnAgents-IiuqX0S5.cjs');
16
+ var time = require('./time-D-v2Cd9e.cjs');
17
17
  require('zod');
18
18
  require('@paralleldrive/cuid2');
19
- require('./package-CStJrLG3.cjs');
19
+ require('./package-BFSsS_dl.cjs');
20
20
  require('node:fs/promises');
21
- require('./persistence-DGfEdbA5.cjs');
21
+ require('./persistence-TpVFA5-I.cjs');
22
22
  require('./authRelay-Dy1qU9td.cjs');
23
23
  require('node:crypto');
24
24
  require('tweetnacl');
25
- require('./logger-BrAF4iuT.cjs');
25
+ require('./logger-D28MY1Bv.cjs');
26
26
  require('node:util');
27
27
  require('./resources-BZ_Be0qM.cjs');
28
28
  require('axios');
29
- require('./controlClient-B61crTpk.cjs');
29
+ require('./controlClient-SYDFcIkk.cjs');
30
30
  require('./specialCommands-J3JFOq0J.cjs');
31
31
  require('socket.io-client');
32
32
  require('./backgroundTaskActivity-CBvUdj39.cjs');
33
- require('./client-D-HEr922.cjs');
33
+ require('./client-BnoN4P4t.cjs');
34
34
  require('./path-B7zW-WwE.cjs');
35
- require('./claudeSessionFork-CDTbQmYi.cjs');
35
+ require('./claudeSessionFork-Bkxn40Y8.cjs');
36
36
  require('node:readline');
37
- require('./codexAppServerClient--K-ILfqM.cjs');
37
+ require('./codexAppServerClient-xBeqblCj.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-DiiGHS9r.cjs');
43
+ require('./rateLimitWindows-BREA7OZj.cjs');
44
44
  require('./processTree-CMHWlVse.cjs');
45
45
  require('./codexThreadFork-C6ZmcT2z.cjs');
46
- require('./createSessionMetadata-BwYysMTH.cjs');
46
+ require('./createSessionMetadata-msQTEvvn.cjs');
47
47
  require('./projectPath-C3ioB4Bu.cjs');
48
48
  require('path');
49
49
  require('url');
@@ -1,9 +1,9 @@
1
1
  import { existsSync } from 'node:fs';
2
2
  import { mkdir, writeFile } from 'node:fs/promises';
3
3
  import { join } from 'node:path';
4
- import { c as configuration } from './configuration-JBFF7432.mjs';
4
+ import { c as configuration } from './configuration-4pG95tsq.mjs';
5
5
  import 'node:os';
6
- import './package-BGZo2vAj.mjs';
6
+ import './package-DbGqY8Ej.mjs';
7
7
 
8
8
  const ASSISTANT_CLAUDE_MD = `# very-happy \u8C03\u5EA6\u4E2D\u5FC3\uFF08\u8BED\u97F3\u52A9\u624B\uFF09
9
9
 
@@ -3,9 +3,9 @@
3
3
  var node_fs = require('node:fs');
4
4
  var promises = require('node:fs/promises');
5
5
  var path = require('node:path');
6
- var configuration = require('./configuration-DfRs3WLd.cjs');
6
+ var configuration = require('./configuration-ClUt7pqs.cjs');
7
7
  require('node:os');
8
- require('./package-CStJrLG3.cjs');
8
+ require('./package-BFSsS_dl.cjs');
9
9
 
10
10
  const ASSISTANT_CLAUDE_MD = `# very-happy \u8C03\u5EA6\u4E2D\u5FC3\uFF08\u8BED\u97F3\u52A9\u624B\uFF09
11
11
 
@@ -1,5 +1,5 @@
1
1
  import open from 'open';
2
- import { l as logger } from './logger-BHfBDOsy.mjs';
2
+ import { l as logger } from './logger-BLMi8oJK.mjs';
3
3
 
4
4
  async function openBrowser(url) {
5
5
  try {
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var open = require('open');
4
- var logger = require('./logger-BrAF4iuT.cjs');
4
+ var logger = require('./logger-D28MY1Bv.cjs');
5
5
 
6
6
  async function openBrowser(url) {
7
7
  try {
@@ -1,4 +1,4 @@
1
- import { b as accountSecretPath, e as expandHome } from './store-DEhdblkI.mjs';
1
+ import { b as accountSecretPath, e as expandHome } from './store-CqNAE-0v.mjs';
2
2
 
3
3
  const ACCOUNT_STRIPPED_ENV_KEYS = [
4
4
  "ANTHROPIC_API_KEY",
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var store = require('./store-QBBJB5Ox.cjs');
3
+ var store = require('./store-DOZAMV4W.cjs');
4
4
 
5
5
  const ACCOUNT_STRIPPED_ENV_KEYS = [
6
6
  "ANTHROPIC_API_KEY",
@@ -4,21 +4,21 @@ var spawn = require('cross-spawn');
4
4
  var node_readline = require('node:readline');
5
5
  var node_fs = require('node:fs');
6
6
  var node_crypto = require('node:crypto');
7
- var logger = require('./logger-BrAF4iuT.cjs');
7
+ var logger = require('./logger-D28MY1Bv.cjs');
8
8
  var promptCacheTtl = require('./promptCacheTtl-B8PCzE6k.cjs');
9
9
  var path$1 = require('node:path');
10
10
  var path = require('./path-B7zW-WwE.cjs');
11
- var systemPrompt = require('./systemPrompt-DTUJZOn6.cjs');
11
+ var systemPrompt = require('./systemPrompt-CCdSrtn3.cjs');
12
12
  var manager = require('./manager-HrEj442o.cjs');
13
13
  var contentLogMetadata = require('./contentLogMetadata-ZSFk_NjQ.cjs');
14
14
  var claudeCliPath = require('./claudeCliPath-GaP3UUz1.cjs');
15
15
  require('chalk');
16
16
  require('node:util');
17
- require('./configuration-DfRs3WLd.cjs');
17
+ require('./configuration-ClUt7pqs.cjs');
18
18
  require('node:os');
19
- require('./package-CStJrLG3.cjs');
19
+ require('./package-BFSsS_dl.cjs');
20
20
  require('node:fs/promises');
21
- require('./index-BknTkVnR.cjs');
21
+ require('./index-BiutHOAO.cjs');
22
22
  require('zod');
23
23
  require('@paralleldrive/cuid2');
24
24
  require('./trimIdent-4gvk9Wk6.cjs');
@@ -2,21 +2,21 @@ import { spawn } from 'cross-spawn';
2
2
  import { createInterface } from 'node:readline';
3
3
  import { readdirSync, statSync, mkdirSync, existsSync } from 'node:fs';
4
4
  import { randomUUID } from 'node:crypto';
5
- import { l as logger } from './logger-BHfBDOsy.mjs';
5
+ import { l as logger } from './logger-BLMi8oJK.mjs';
6
6
  import { p as pinSmallFastModel, a as applyPromptCacheTtlDefault, e as ensureLocalProxyBypass } from './promptCacheTtl-Ce0TVbrx.mjs';
7
7
  import { join } from 'node:path';
8
8
  import { g as getProjectPath } from './path-D2wdaNSk.mjs';
9
- import { c as claudeCheckSession, s as systemPrompt } from './systemPrompt-YylizkJs.mjs';
9
+ import { c as claudeCheckSession, s as systemPrompt } from './systemPrompt-CLYTbBhV.mjs';
10
10
  import { i as initializeSandbox, a as wrapCommand } from './manager-BEsI4qt3.mjs';
11
11
  import { c as contentLogMetadata } from './contentLogMetadata-BlWI0egu.mjs';
12
12
  import { claudeCliPath } from './claudeCliPath-BqkaH2oR.mjs';
13
13
  import 'chalk';
14
14
  import 'node:util';
15
- import './configuration-JBFF7432.mjs';
15
+ import './configuration-4pG95tsq.mjs';
16
16
  import 'node:os';
17
- import './package-BGZo2vAj.mjs';
17
+ import './package-DbGqY8Ej.mjs';
18
18
  import 'node:fs/promises';
19
- import './index-CxiisoO1.mjs';
19
+ import './index-kwsivEs-.mjs';
20
20
  import 'zod';
21
21
  import '@paralleldrive/cuid2';
22
22
  import './trimIdent-BAjmv_TG.mjs';
@@ -1,21 +1,21 @@
1
- import { l as logger } from './logger-BHfBDOsy.mjs';
2
- import { claudeLocal, ExitCodeError } from './claudeLocal-BiM2x9DJ.mjs';
3
- import { c as createSessionScanner, F as Future, d as describeClaudeProcessExit } from './sessionScanner-C2M697xz.mjs';
1
+ import { l as logger } from './logger-BLMi8oJK.mjs';
2
+ import { claudeLocal, ExitCodeError } from './claudeLocal-X48n0RhP.mjs';
3
+ import { c as createSessionScanner, F as Future, d as describeClaudeProcessExit } from './sessionScanner-DQAOP6pU.mjs';
4
4
  import 'chalk';
5
5
  import 'node:util';
6
- import './configuration-JBFF7432.mjs';
6
+ import './configuration-4pG95tsq.mjs';
7
7
  import 'node:fs';
8
8
  import 'node:os';
9
9
  import 'node:path';
10
- import './package-BGZo2vAj.mjs';
10
+ import './package-DbGqY8Ej.mjs';
11
11
  import 'node:fs/promises';
12
12
  import 'cross-spawn';
13
13
  import 'node:readline';
14
14
  import 'node:crypto';
15
15
  import './promptCacheTtl-Ce0TVbrx.mjs';
16
16
  import './path-D2wdaNSk.mjs';
17
- import './systemPrompt-YylizkJs.mjs';
18
- import './index-CxiisoO1.mjs';
17
+ import './systemPrompt-CLYTbBhV.mjs';
18
+ import './index-kwsivEs-.mjs';
19
19
  import 'zod';
20
20
  import '@paralleldrive/cuid2';
21
21
  import './trimIdent-BAjmv_TG.mjs';
@@ -28,11 +28,11 @@ import './claudeCliPath-BqkaH2oR.mjs';
28
28
  import './projectPath-BTBIMB57.mjs';
29
29
  import 'path';
30
30
  import 'url';
31
- import './sync-BLGrIKN9.mjs';
32
- import './time-DZE0879N.mjs';
31
+ import './sync-s1pUqWGm.mjs';
32
+ import './time-qd46L189.mjs';
33
33
  import './types-CkqAACXx.mjs';
34
34
  import './transcriptCursor-B7T_gkQ0.mjs';
35
- import './startFileWatcher-JdO3v65I.mjs';
35
+ import './startFileWatcher-t3K1y9kY.mjs';
36
36
  import 'fs/promises';
37
37
 
38
38
  async function claudeLocalLauncher(session) {
@@ -1,23 +1,23 @@
1
1
  'use strict';
2
2
 
3
- var logger = require('./logger-BrAF4iuT.cjs');
4
- var claudeLocal = require('./claudeLocal-Ck1jTve1.cjs');
5
- var sessionScanner = require('./sessionScanner-zJrc_Oe0.cjs');
3
+ var logger = require('./logger-D28MY1Bv.cjs');
4
+ var claudeLocal = require('./claudeLocal-BbsOT-EF.cjs');
5
+ var sessionScanner = require('./sessionScanner-CWflbWoH.cjs');
6
6
  require('chalk');
7
7
  require('node:util');
8
- require('./configuration-DfRs3WLd.cjs');
8
+ require('./configuration-ClUt7pqs.cjs');
9
9
  require('node:fs');
10
10
  require('node:os');
11
11
  require('node:path');
12
- require('./package-CStJrLG3.cjs');
12
+ require('./package-BFSsS_dl.cjs');
13
13
  require('node:fs/promises');
14
14
  require('cross-spawn');
15
15
  require('node:readline');
16
16
  require('node:crypto');
17
17
  require('./promptCacheTtl-B8PCzE6k.cjs');
18
18
  require('./path-B7zW-WwE.cjs');
19
- require('./systemPrompt-DTUJZOn6.cjs');
20
- require('./index-BknTkVnR.cjs');
19
+ require('./systemPrompt-CCdSrtn3.cjs');
20
+ require('./index-BiutHOAO.cjs');
21
21
  require('zod');
22
22
  require('@paralleldrive/cuid2');
23
23
  require('./trimIdent-4gvk9Wk6.cjs');
@@ -30,11 +30,11 @@ require('./claudeCliPath-GaP3UUz1.cjs');
30
30
  require('./projectPath-C3ioB4Bu.cjs');
31
31
  require('path');
32
32
  require('url');
33
- require('./sync-BO4DRSub.cjs');
34
- require('./time-Cv4hbCLT.cjs');
33
+ require('./sync-BvxhuW9R.cjs');
34
+ require('./time-D-v2Cd9e.cjs');
35
35
  require('./types-CRS-srZK.cjs');
36
36
  require('./transcriptCursor-DcXGLeSc.cjs');
37
- require('./startFileWatcher-C0u3J6Bj.cjs');
37
+ require('./startFileWatcher-CeDJl9mN.cjs');
38
38
  require('fs/promises');
39
39
 
40
40
  async function claudeLocalLauncher(session) {
@@ -5,7 +5,7 @@ var promises = require('node:fs/promises');
5
5
  var node_fs = require('node:fs');
6
6
  var path = require('node:path');
7
7
  var node_readline = require('node:readline');
8
- var logger = require('./logger-BrAF4iuT.cjs');
8
+ var logger = require('./logger-D28MY1Bv.cjs');
9
9
 
10
10
  class ForkTruncateUuidNotFoundError extends Error {
11
11
  constructor(cutAfterUuid, sourcePath) {
@@ -3,7 +3,7 @@ import { unlink, readFile, rename, writeFile } from 'node:fs/promises';
3
3
  import { createReadStream, createWriteStream } from 'node:fs';
4
4
  import { join } from 'node:path';
5
5
  import { createInterface } from 'node:readline';
6
- import { l as logger } from './logger-BHfBDOsy.mjs';
6
+ import { l as logger } from './logger-BLMi8oJK.mjs';
7
7
 
8
8
  class ForkTruncateUuidNotFoundError extends Error {
9
9
  constructor(cutAfterUuid, sourcePath) {
@@ -0,0 +1,120 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-BiutHOAO.cjs');
4
+ var configuration = require('./configuration-ClUt7pqs.cjs');
5
+ var persistence = require('./persistence-TpVFA5-I.cjs');
6
+
7
+ const ISSUES_UNSUPPORTED_BACKOFF_MS = 10 * 6e4;
8
+ class IssuesUnsupportedError extends Error {
9
+ constructor() {
10
+ super("This Very Happy server does not support Issues (or they are turned off).");
11
+ }
12
+ }
13
+ class IssueRequestError extends Error {
14
+ constructor(status, code, details) {
15
+ super(code ? `Issue request failed: ${code}` : `Issue request failed (HTTP ${status})`);
16
+ this.status = status;
17
+ this.code = code;
18
+ this.details = details;
19
+ }
20
+ }
21
+ const ISSUE_TRANSACTION_CONFLICT = "transaction_conflict";
22
+ const ISSUE_CONFLICT_MAX_RETRIES = 5;
23
+ function issueConflictBackoffMs(attempt, random = Math.random) {
24
+ const base = 200 * 2 ** attempt;
25
+ return base + Math.floor(random() * base / 2);
26
+ }
27
+ const KNOWN_CODES = new Set(index.ISSUE_ERROR_CODES.filter((code) => code !== index.ISSUES_DISABLED_ERROR));
28
+ const EXTRA_OBJECT_CODES = /* @__PURE__ */ new Set(["issue_dispatch_not_found", "issue_comment_not_found", "session_not_found"]);
29
+ function isIssueObjectError(code) {
30
+ return typeof code === "string" && (KNOWN_CODES.has(code) || EXTRA_OBJECT_CODES.has(code));
31
+ }
32
+ function createIssuesClient(deps = {}) {
33
+ const now = deps.now ?? Date.now;
34
+ const doFetch = deps.fetch ?? fetch;
35
+ const token = deps.token ?? (async () => (await persistence.readCredentialsForConfiguredRelay())?.token ?? null);
36
+ const sleep = deps.sleep ?? ((ms) => new Promise((resolve) => setTimeout(resolve, ms)));
37
+ const random = deps.random ?? Math.random;
38
+ let disabledUntil = 0;
39
+ async function request(path, method, body, timeoutMs = 1e4) {
40
+ for (let attempt = 0; ; attempt++) {
41
+ try {
42
+ return await requestOnce(path, method, body, timeoutMs);
43
+ } catch (error) {
44
+ const retryable = error instanceof IssueRequestError && error.status === 409 && error.code === ISSUE_TRANSACTION_CONFLICT;
45
+ if (!retryable || attempt >= ISSUE_CONFLICT_MAX_RETRIES) throw error;
46
+ await sleep(issueConflictBackoffMs(attempt, random));
47
+ }
48
+ }
49
+ }
50
+ async function requestOnce(path, method, body, timeoutMs) {
51
+ if (now() < disabledUntil) throw new IssuesUnsupportedError();
52
+ const bearer = await token();
53
+ if (!bearer) throw new IssueRequestError(401, "not_signed_in", {});
54
+ const response = await doFetch(`${deps.serverUrl ?? configuration.configuration.serverUrl}${path}`, {
55
+ method,
56
+ redirect: "error",
57
+ headers: { authorization: `Bearer ${bearer}`, ...body === void 0 ? {} : { "content-type": "application/json" } },
58
+ body: body === void 0 ? void 0 : JSON.stringify(body),
59
+ signal: AbortSignal.timeout(timeoutMs)
60
+ });
61
+ let json = null;
62
+ try {
63
+ json = await response.json();
64
+ } catch {
65
+ }
66
+ if (response.status === 404 && !isIssueObjectError(json?.error)) {
67
+ disabledUntil = now() + ISSUES_UNSUPPORTED_BACKOFF_MS;
68
+ throw new IssuesUnsupportedError();
69
+ }
70
+ if (!response.ok) {
71
+ const { error, ...details } = json && typeof json === "object" ? json : {};
72
+ throw new IssueRequestError(response.status, typeof error === "string" ? error : null, details);
73
+ }
74
+ return json;
75
+ }
76
+ const enc = (id) => encodeURIComponent(id);
77
+ const query = (params) => {
78
+ const q = new URLSearchParams();
79
+ for (const [k, v] of Object.entries(params)) if (v !== void 0 && v !== "") q.set(k, String(v));
80
+ const s = q.toString();
81
+ return s ? `?${s}` : "";
82
+ };
83
+ return {
84
+ isDisabled: () => now() < disabledUntil,
85
+ // ── human / CLI ──
86
+ list: (params = {}) => request(`/v1/issues${query({ ...params, includeDeleted: params.includeDeleted ? "1" : void 0 })}`, "GET"),
87
+ get: (ref) => request(`/v1/issues/${enc(ref)}`, "GET"),
88
+ create: (input) => request("/v1/issues", "POST", input),
89
+ update: (id, input) => request(`/v1/issues/${enc(id)}`, "PATCH", input),
90
+ remove: (id) => request(`/v1/issues/${enc(id)}`, "DELETE"),
91
+ comment: (id, input) => request(`/v1/issues/${enc(id)}/comments`, "POST", input),
92
+ importLegacyTodos: () => request("/v1/issues/import-legacy-todos", "POST", {}),
93
+ // ── wrapper (agent; the wrapper stamps its own sessionId) ──
94
+ session: (sessionId, since, timeoutMs) => request(`/v1/issues/session/${enc(sessionId)}${since !== void 0 ? `?since=${Math.max(0, Math.floor(since))}` : ""}`, "GET", void 0, timeoutMs),
95
+ agentUpdate: (input) => request("/v1/issues/agent/update", "POST", input),
96
+ agentComment: (input) => request("/v1/issues/agent/comment", "POST", input),
97
+ // ── daemon issue worker ──
98
+ poll: (machineId) => request(`/v1/issues/dispatch${query({ machineId, workerVersion: index.ISSUE_WORKER_VERSION })}`, "GET"),
99
+ claim: (dispatchId, machineId) => request(`/v1/issues/dispatch/${enc(dispatchId)}/claim`, "POST", { machineId }),
100
+ complete: (dispatchId, input) => request(`/v1/issues/dispatch/${enc(dispatchId)}/complete`, "POST", input),
101
+ fail: (dispatchId, input) => request(`/v1/issues/dispatch/${enc(dispatchId)}/fail`, "POST", input),
102
+ sessionEvent: (runId, input) => request(`/v1/issues/runs/${enc(runId)}/session-event`, "POST", input)
103
+ };
104
+ }
105
+ let shared = null;
106
+ function sharedIssuesClient() {
107
+ return shared ??= createIssuesClient();
108
+ }
109
+ const imported = /* @__PURE__ */ new WeakSet();
110
+ async function importLegacyTodosOnce(client) {
111
+ if (imported.has(client)) return;
112
+ imported.add(client);
113
+ await client.importLegacyTodos().catch(() => void 0);
114
+ }
115
+
116
+ exports.IssueRequestError = IssueRequestError;
117
+ exports.IssuesUnsupportedError = IssuesUnsupportedError;
118
+ exports.createIssuesClient = createIssuesClient;
119
+ exports.importLegacyTodosOnce = importLegacyTodosOnce;
120
+ exports.sharedIssuesClient = sharedIssuesClient;
@@ -1,5 +1,5 @@
1
- import { c as configuration } from './configuration-JBFF7432.mjs';
2
- import { b as readCredentialsForConfiguredRelay } from './persistence-DvD-irLh.mjs';
1
+ import { c as configuration } from './configuration-4pG95tsq.mjs';
2
+ import { b as readCredentialsForConfiguredRelay } from './persistence-DbOKjdUD.mjs';
3
3
 
4
4
  const UNSUPPORTED_BACKOFF_MS = 10 * 6e4;
5
5
  class ProjectsUnsupportedError extends Error {