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,24 +1,24 @@
1
1
  'use strict';
2
2
 
3
3
  var node_fs = require('node:fs');
4
- var spawnHappyCLI = require('./spawnHappyCLI-CYzlz9Sl.cjs');
4
+ var spawnHappyCLI = require('./spawnHappyCLI-C3XuIB2N.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-DfRs3WLd.cjs');
10
- var localHappyAgentAuth = require('./localHappyAgentAuth-B6xdH-Fr.cjs');
9
+ var configuration = require('./configuration-ClUt7pqs.cjs');
10
+ var localHappyAgentAuth = require('./localHappyAgentAuth-CjtNcaI0.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-BrAF4iuT.cjs');
16
+ require('./logger-D28MY1Bv.cjs');
17
17
  require('chalk');
18
18
  require('node:util');
19
19
  require('node:crypto');
20
20
  require('node:os');
21
- require('./package-CStJrLG3.cjs');
21
+ require('./package-BFSsS_dl.cjs');
22
22
  require('node:fs/promises');
23
23
 
24
24
  const ResumableMetadataSchema = z.z.object({
@@ -1,22 +1,22 @@
1
1
  import { existsSync } from 'node:fs';
2
- import { s as spawnHappyCLI } from './spawnHappyCLI-CUfe8n_m.mjs';
2
+ import { s as spawnHappyCLI } from './spawnHappyCLI-Cc9kKpcq.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-JBFF7432.mjs';
8
- import { g as getLocalHappyAgentCredentialPath, r as readLocalHappyAgentCredentials } from './localHappyAgentAuth-BiIyMoiG.mjs';
7
+ import { c as configuration } from './configuration-4pG95tsq.mjs';
8
+ import { g as getLocalHappyAgentCredentialPath, r as readLocalHappyAgentCredentials } from './localHappyAgentAuth-DeDQjw24.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-BHfBDOsy.mjs';
14
+ import './logger-BLMi8oJK.mjs';
15
15
  import 'chalk';
16
16
  import 'node:util';
17
17
  import 'node:crypto';
18
18
  import 'node:os';
19
- import './package-BGZo2vAj.mjs';
19
+ import './package-DbGqY8Ej.mjs';
20
20
  import 'node:fs/promises';
21
21
 
22
22
  const ResumableMetadataSchema = z.object({
@@ -1,14 +1,14 @@
1
- import { q as query } from './query-_sw0hG6A.mjs';
1
+ import { q as query } from './query-CrSvcV32.mjs';
2
2
  export { AbortError } from '@anthropic-ai/claude-agent-sdk';
3
3
  import './promptCacheTtl-Ce0TVbrx.mjs';
4
4
  import 'node:fs';
5
5
  import 'node:os';
6
6
  import 'node:path';
7
- import './logger-BHfBDOsy.mjs';
7
+ import './logger-BLMi8oJK.mjs';
8
8
  import 'chalk';
9
9
  import 'node:util';
10
- import './configuration-JBFF7432.mjs';
11
- import './package-BGZo2vAj.mjs';
10
+ import './configuration-4pG95tsq.mjs';
11
+ import './package-DbGqY8Ej.mjs';
12
12
  import 'node:fs/promises';
13
13
  import './processTreeSnapshot-fuwxC0fr.mjs';
14
14
  import 'node:child_process';
@@ -25,6 +25,7 @@ var z__namespace = /*#__PURE__*/_interopNamespaceDefault(z);
25
25
  const CODEX_STEER_CAPABILITY = "codex-steer-v1";
26
26
  const CODEX_COMPACT_CAPABILITY = "codex-compact-v1";
27
27
  const CODEX_BTW_CAPABILITY = "codex-btw-v1";
28
+ const CODEX_LIVE_PERMISSION_CAPABILITY = "codex-live-permission-v1";
28
29
  const PI_STEER_CAPABILITY = "pi-steer-v1";
29
30
  const sessionRoleSchema = z__namespace.enum(["user", "agent"]);
30
31
  const sessionTextEventSchema = z__namespace.object({
@@ -1252,9 +1253,13 @@ For add, retry with the same UUID and identical title/note after a timeout; do n
1252
1253
 
1253
1254
  For edit/status/delete, a conflict means the version changed. Read the task and compare the new state with the user's request before deciding what to do; never automatically overwrite with a freshly fetched version. A timeout may have committed: read to reconcile, then report the confirmed result. Do not claim a delete succeeded merely because a request was sent.
1254
1255
 
1256
+ ## Issues
1257
+
1258
+ On a server with Issues, My todos are issues without an assignee: the todo commands keep working on them (list shows open ones, \`--all\` adds completed; an ID may also be an issue key such as VH-12). Run \`very-happy issue --help\` for the full Issues interface (assign to an agent, comments). Without Issues the todo commands use the classic store; their output is the same.
1259
+
1255
1260
  Restricted team workers cannot use account-wide Todo credentials. Ask the user or supervising session to perform the account operation; do not clear scope variables or seek another credential to bypass that boundary.
1256
1261
  `;
1257
- const BUILTIN_TODO_DISCOVERY = "For the user\u2019s Very Happy My todos, run `very-happy todo skill` to read the official skill, then use its CLI commands. Do not confuse account todos with your execution plan; restricted team workers must not bypass their scope.";
1262
+ const BUILTIN_TODO_DISCOVERY = "For the user\u2019s Very Happy My todos (and Issues: `very-happy issue --help`), run `very-happy todo skill` to read the official skill, then use its CLI commands. Do not confuse account todos with your execution plan; restricted team workers must not bypass their scope.";
1258
1263
  z.z.object({
1259
1264
  source: z.z.literal("pi"),
1260
1265
  tokens: z.z.number().finite().nonnegative().nullable(),
@@ -1821,6 +1826,12 @@ function ownerBoardPostToRest(sessionId, input, anchor) {
1821
1826
  inferred: false
1822
1827
  };
1823
1828
  }
1829
+ const ISSUE_SESSION_CAPABILITY = "issue-v1";
1830
+ const ISSUES_DISABLED_ERROR = "issues_disabled";
1831
+ const ISSUE_WORKER_VERSION = 1;
1832
+ const ISSUE_KEY_PREFIX = "VH";
1833
+ const ISSUE_DISPATCH_LOCAL_ID_PREFIX = "issue-";
1834
+ const ISSUE_SENT_FROM = "issue";
1824
1835
  const ISSUE_LIMITS = {
1825
1836
  titleChars: 300,
1826
1837
  descriptionBytes: 32 * 1024,
@@ -1833,8 +1844,23 @@ const ISSUE_LIMITS = {
1833
1844
  const ISSUE_STATUSES = ["backlog", "todo", "in_progress", "in_review", "blocked", "done", "cancelled"];
1834
1845
  const ISSUE_PRIORITIES = ["urgent", "high", "medium", "low", "none"];
1835
1846
  const ISSUE_AGENT_STATUSES = ["in_progress", "in_review", "blocked"];
1847
+ const ISSUE_CLOSED_STATUSES = ["done", "cancelled"];
1836
1848
  const ISSUE_ASSIGNABLE_AGENTS = ["claude", "codex", "pi"];
1837
1849
  const ISSUE_ASSIGNEE_KINDS = ["none", "self", "agent", "team"];
1850
+ function isIssueClosed(status) {
1851
+ return ISSUE_CLOSED_STATUSES.includes(status);
1852
+ }
1853
+ const ISSUE_KEY_PATTERN = new RegExp(`^${ISSUE_KEY_PREFIX}-(\\d{1,9})$`, "i");
1854
+ const UUIDISH = /^[A-Za-z0-9_-]{8,128}$/;
1855
+ function parseIssueRef(input) {
1856
+ const value = input.trim();
1857
+ const key2 = ISSUE_KEY_PATTERN.exec(value) ?? /^#?(\d{1,9})$/.exec(value);
1858
+ if (key2) {
1859
+ const n = Number(key2[1]);
1860
+ return n > 0 ? { number: n } : null;
1861
+ }
1862
+ return UUIDISH.test(value) ? { id: value } : null;
1863
+ }
1838
1864
  const id = z.z.string().min(1).max(128);
1839
1865
  const requestId = z.z.string().min(1).max(128);
1840
1866
  const utf8Bytes = (value) => new TextEncoder().encode(value).length;
@@ -1988,6 +2014,27 @@ z.z.object({
1988
2014
  t: z.z.literal("issue-run"),
1989
2015
  run: z.z.object({ id: z.z.string(), issueId: z.z.string(), status: z.z.string() }).passthrough()
1990
2016
  });
2017
+ const ISSUE_ERROR_CODES = [
2018
+ "issues_disabled",
2019
+ "issue_not_found",
2020
+ "issue_version_conflict",
2021
+ "issue_count_quota_exceeded",
2022
+ "issue_status_forbidden",
2023
+ "issue_closed",
2024
+ "issue_comment_required",
2025
+ "issue_not_bound",
2026
+ "issue_run_not_current",
2027
+ "issue_assignee_unsupported",
2028
+ "issue_agent_unsupported",
2029
+ "issue_no_directory",
2030
+ "issue_machine_not_found",
2031
+ "issue_parent_cycle",
2032
+ "issue_project_not_found",
2033
+ "issue_comment_quota_exceeded",
2034
+ "issue_run_not_found",
2035
+ "issue_dispatch_claim_mismatch",
2036
+ "transaction_conflict"
2037
+ ];
1991
2038
  const SYNC_HELLO_MAX_REQUEST_SUBS = 64;
1992
2039
  const sessionIdSchema = z__namespace.string().min(1).max(128);
1993
2040
  const afterSeqSchema = z__namespace.number().int().min(0).nullable();
@@ -2118,9 +2165,21 @@ exports.BUILTIN_TODO_SKILL = BUILTIN_TODO_SKILL;
2118
2165
  exports.CLAUDE_CONFIG_MODEL_CAPABILITY = CLAUDE_CONFIG_MODEL_CAPABILITY;
2119
2166
  exports.CODEX_BTW_CAPABILITY = CODEX_BTW_CAPABILITY;
2120
2167
  exports.CODEX_COMPACT_CAPABILITY = CODEX_COMPACT_CAPABILITY;
2168
+ exports.CODEX_LIVE_PERMISSION_CAPABILITY = CODEX_LIVE_PERMISSION_CAPABILITY;
2121
2169
  exports.CODEX_STEER_CAPABILITY = CODEX_STEER_CAPABILITY;
2122
2170
  exports.EFFORT_INTENT_AUTO = EFFORT_INTENT_AUTO;
2123
2171
  exports.HARNESS_INSTALL_CAPABILITY_VERSION = HARNESS_INSTALL_CAPABILITY_VERSION;
2172
+ exports.ISSUES_DISABLED_ERROR = ISSUES_DISABLED_ERROR;
2173
+ exports.ISSUE_AGENT_STATUSES = ISSUE_AGENT_STATUSES;
2174
+ exports.ISSUE_ASSIGNABLE_AGENTS = ISSUE_ASSIGNABLE_AGENTS;
2175
+ exports.ISSUE_DISPATCH_LOCAL_ID_PREFIX = ISSUE_DISPATCH_LOCAL_ID_PREFIX;
2176
+ exports.ISSUE_ERROR_CODES = ISSUE_ERROR_CODES;
2177
+ exports.ISSUE_LIMITS = ISSUE_LIMITS;
2178
+ exports.ISSUE_PRIORITIES = ISSUE_PRIORITIES;
2179
+ exports.ISSUE_SENT_FROM = ISSUE_SENT_FROM;
2180
+ exports.ISSUE_SESSION_CAPABILITY = ISSUE_SESSION_CAPABILITY;
2181
+ exports.ISSUE_STATUSES = ISSUE_STATUSES;
2182
+ exports.ISSUE_WORKER_VERSION = ISSUE_WORKER_VERSION;
2124
2183
  exports.LATEST_MODEL_MODE = LATEST_MODEL_MODE;
2125
2184
  exports.MODEL_INTENT_CONFIG = MODEL_INTENT_CONFIG;
2126
2185
  exports.OwnerBoardListInputSchema = OwnerBoardListInputSchema;
@@ -2146,10 +2205,12 @@ exports.isAttentionBoardLocalId = isAttentionBoardLocalId;
2146
2205
  exports.isAutomationRunTerminal = isAutomationRunTerminal;
2147
2206
  exports.isHarnessInstallId = isHarnessInstallId;
2148
2207
  exports.isInsideTeamWorktree = isInsideTeamWorktree;
2208
+ exports.isIssueClosed = isIssueClosed;
2149
2209
  exports.isLatestModelMode = isLatestModelMode;
2150
2210
  exports.nextRunIntents = nextRunIntents;
2151
2211
  exports.normalizeAgentKey = normalizeAgentKey;
2152
2212
  exports.ownerBoardPostToRest = ownerBoardPostToRest;
2213
+ exports.parseIssueRef = parseIssueRef;
2153
2214
  exports.parseLatestModelTable = parseLatestModelTable;
2154
2215
  exports.readEffortIntent = readEffortIntent;
2155
2216
  exports.readModelIntent = readModelIntent;
@@ -1,95 +1,97 @@
1
1
  'use strict';
2
2
 
3
- var AcpBackend = require('./AcpBackend-DOuWeCAx.cjs');
4
- var logger = require('./logger-BrAF4iuT.cjs');
5
- var AcpSessionManager = require('./AcpSessionManager-DvsZWTXp.cjs');
6
- var index = require('./index-BknTkVnR.cjs');
7
- var deterministicJson = require('./deterministicJson-DIzyb1dQ.cjs');
3
+ var AcpBackend = require('./AcpBackend-CwSShYPI.cjs');
4
+ var logger = require('./logger-D28MY1Bv.cjs');
5
+ var AcpSessionManager = require('./AcpSessionManager-DqW99tOL.cjs');
6
+ var index = require('./index-BiutHOAO.cjs');
7
+ var deterministicJson = require('./deterministicJson-CQ8jkArF.cjs');
8
8
  var specialCommands = require('./specialCommands-J3JFOq0J.cjs');
9
9
  var heldInput = require('./heldInput-BOtqFO2r.cjs');
10
- var configuration = require('./configuration-DfRs3WLd.cjs');
11
- var attachmentContent = require('./attachmentContent-BfCEgPTP.cjs');
12
- var piRuntime = require('./piRuntime-d2h0Cska.cjs');
10
+ var configuration = require('./configuration-ClUt7pqs.cjs');
11
+ var attachmentContent = require('./attachmentContent-C2f1UEP9.cjs');
12
+ var piRuntime = require('./piRuntime-DiRayy91.cjs');
13
13
  var node_crypto = require('node:crypto');
14
14
  var path = require('node:path');
15
- var api = require('./api-te19Pzi3.cjs');
16
- var client = require('./client-D-HEr922.cjs');
17
- var registerKillSessionHandler = require('./registerKillSessionHandler-BDTgrstx.cjs');
18
- var persistence = require('./persistence-DGfEdbA5.cjs');
19
- var machineMetadata = require('./machineMetadata-D5PO2ylb.cjs');
20
- var createSessionMetadata = require('./createSessionMetadata-BwYysMTH.cjs');
21
- var setupOfflineReconnection = require('./setupOfflineReconnection-Uu3tqISz.cjs');
22
- var startupSessionCreate = require('./startupSessionCreate-s1ekIs2Z.cjs');
23
- var controlClient = require('./controlClient-B61crTpk.cjs');
15
+ var api = require('./api-BPWRzeNF.cjs');
16
+ var sessionMetadata = require('./sessionMetadata-DyTJ0Ki5.cjs');
17
+ var client = require('./client-BnoN4P4t.cjs');
18
+ var registerKillSessionHandler = require('./registerKillSessionHandler-DJJXtc_L.cjs');
19
+ var persistence = require('./persistence-TpVFA5-I.cjs');
20
+ var machineMetadata = require('./machineMetadata-BzjrIn_N.cjs');
21
+ var createSessionMetadata = require('./createSessionMetadata-msQTEvvn.cjs');
22
+ var setupOfflineReconnection = require('./setupOfflineReconnection-BZHRoKDx.cjs');
23
+ var controlClient = require('./controlClient-SYDFcIkk.cjs');
24
24
  var authRelay = require('./authRelay-Dy1qU9td.cjs');
25
- var sessionLock = require('./sessionLock-CJiayMcZ.cjs');
26
- var acpSessionResume = require('./acpSessionResume-CeQu84Ol.cjs');
25
+ var sessionLock = require('./sessionLock-DglhFHzB.cjs');
26
+ var acpSessionResume = require('./acpSessionResume-B_W8uTI6.cjs');
27
27
  var reconnectEnv = require('./reconnectEnv-B31lY4nR.cjs');
28
- var streamRelay = require('./streamRelay-BVrCYh2G.cjs');
28
+ var streamRelay = require('./streamRelay-Dyp4x44P.cjs');
29
29
  var projectPath = require('./projectPath-C3ioB4Bu.cjs');
30
- var BasePermissionHandler = require('./BasePermissionHandler-25RmI4dK.cjs');
31
- var titleGenerator = require('./titleGenerator-D2ehxbvK.cjs');
30
+ var BasePermissionHandler = require('./BasePermissionHandler-CgqjIUyG.cjs');
31
+ var titleGenerator = require('./titleGenerator-CSYqcorn.cjs');
32
32
  var editPaths = require('./editPaths-Bqp4OFPw.cjs');
33
33
  var node_fs = require('node:fs');
34
34
  var os = require('node:os');
35
35
  require('node:child_process');
36
36
  require('@agentclientprotocol/sdk');
37
- require('./time-Cv4hbCLT.cjs');
37
+ require('./time-D-v2Cd9e.cjs');
38
38
  require('./contentLogMetadata-ZSFk_NjQ.cjs');
39
39
  require('./processTree-CMHWlVse.cjs');
40
- require('./package-CStJrLG3.cjs');
40
+ require('./package-BFSsS_dl.cjs');
41
41
  require('chalk');
42
42
  require('node:util');
43
43
  require('@paralleldrive/cuid2');
44
44
  require('zod');
45
45
  require('./prompt-Bof2aQkI.cjs');
46
- require('./reportProgressTool-Cr25LWeW.cjs');
47
- require('./client-oqSAKwmy.cjs');
46
+ require('./client-1zIbVVX5.cjs');
47
+ require('./reportProgressTool-DtEpDqv3.cjs');
48
+ require('./client-D0_UOmC1.cjs');
48
49
  require('./precheckCompat-CWOi5c9L.cjs');
50
+ require('./format-P9_M_7ga.cjs');
49
51
  require('./agentGuidance-BtBx2xxE.cjs');
50
52
  require('./trimIdent-4gvk9Wk6.cjs');
51
53
  require('./pi-DlsrPCTa.cjs');
52
54
  require('./fileStore-7qhnbs6N.cjs');
53
55
  require('node:fs/promises');
54
- require('./client-v6rdLsBH.cjs');
55
- require('./context-C5WWlHOl.cjs');
56
- require('./sessionOps-Cw_JivR2.cjs');
56
+ require('./client-C8BTmcrh.cjs');
57
+ require('./context-wMsIGwBw.cjs');
58
+ require('./sessionOps-CIFvoFPA.cjs');
57
59
  require('axios');
58
60
  require('socket.io-client');
59
61
  require('./backgroundTaskActivity-CBvUdj39.cjs');
60
62
  require('./resources-BZ_Be0qM.cjs');
61
- require('./tools-rMr-wPIc.cjs');
62
- require('./peerTools-Drow2-P4.cjs');
63
+ require('./tools-CY2zrdd5.cjs');
64
+ require('./peerTools-Z8V2E0AF.cjs');
63
65
  require('./ids-B6ZC0HGt.cjs');
64
- require('./remoteSessionClient-DSC5Cj21.cjs');
66
+ require('./remoteSessionClient-DleOeQlN.cjs');
65
67
  require('@modelcontextprotocol/sdk/server/mcp.js');
66
68
  require('node:http');
67
69
  require('@modelcontextprotocol/sdk/server/streamableHttp.js');
68
70
  require('./limits-C-a7gr04.cjs');
69
- require('./downloadTarget-DGnCGrDZ.cjs');
71
+ require('./downloadTarget-DfoOSrYi.cjs');
70
72
  require('./terminals-dK3Lrjfp.cjs');
71
73
  require('./terminalTitleSuggest-DhvRFX3H.cjs');
72
74
  require('./tmuxSocket-Dg11Olx0.cjs');
73
- require('./bootstrap-GZDknvPy.cjs');
75
+ require('./bootstrap-DUKAKxrJ.cjs');
74
76
  require('./webPanels-FCgFKvVe.cjs');
75
- require('./pushNotifications-3YsyCEfY.cjs');
77
+ require('./pushNotifications-C1i2W1GQ.cjs');
76
78
  require('./previewPath-B0rBdhy1.cjs');
77
79
  require('crypto');
78
- require('./reconnectGate-BpePVLPu.cjs');
80
+ require('./reconnectGate-YQ5jXJfY.cjs');
79
81
  require('os');
80
82
  require('child_process');
81
83
  require('node:events');
82
- require('./registerCommonHandlers-6iKpECuR.cjs');
84
+ require('./registerCommonHandlers-D95IxqDN.cjs');
83
85
  require('util');
84
86
  require('fs/promises');
85
87
  require('path');
86
88
  require('cross-spawn');
87
- require('./sync-BO4DRSub.cjs');
89
+ require('./sync-BvxhuW9R.cjs');
88
90
  require('tweetnacl');
89
91
  require('./types-CRS-srZK.cjs');
90
92
  require('./detectCLI-BuYR_Qxe.cjs');
91
93
  require('fs');
92
- require('./localHappyAgentAuth-B6xdH-Fr.cjs');
94
+ require('./localHappyAgentAuth-CjtNcaI0.cjs');
93
95
  require('./fsMkdir-0K3yENml.cjs');
94
96
  require('./cliUpdate-DsKXPFYp.cjs');
95
97
  require('./processTermination-f17wxlMb.cjs');
@@ -97,9 +99,9 @@ require('./processTreeSnapshot-D5iNblp6.cjs');
97
99
  require('url');
98
100
  require('node:module');
99
101
  require('./oneShotPrompts-CL0dip9C.cjs');
100
- require('./wrapperAccount-EkmR4V-v.cjs');
101
- require('./claudeAccountEnv-DSaFKajJ.cjs');
102
- require('./store-QBBJB5Ox.cjs');
102
+ require('./wrapperAccount-ejUjAQaM.cjs');
103
+ require('./claudeAccountEnv-D33xXRE7.cjs');
104
+ require('./store-DOZAMV4W.cjs');
103
105
 
104
106
  function createAcpBackend(options) {
105
107
  const backendOptions = {
@@ -834,6 +836,7 @@ async function runAcp(opts) {
834
836
  const { state, metadata } = createSessionMetadata.createSessionMetadata({
835
837
  flavor: resolveSessionFlavor(opts.agentName),
836
838
  ...process.env.VH_TEAM_OPERATION_ID ? { teamOperationId: process.env.VH_TEAM_OPERATION_ID } : {},
839
+ ...sessionMetadata.issueSessionMetadata(),
837
840
  machineId: settings.machineId,
838
841
  startedBy: opts.startedBy,
839
842
  sandbox: settings.sandboxConfig,
@@ -841,6 +844,7 @@ async function runAcp(opts) {
841
844
  // daemon can restart it onto new code after an upgrade.
842
845
  capabilities: [index.PROMPT_QUEUE_CAPABILITY, index.PROJECT_SESSION_CAPABILITY, ...opts.agentName === "pi" && opts.startedBy === "daemon" ? [sessionLock.AUTO_RESTART_CAPABILITY] : []]
843
846
  });
847
+ metadata.capabilities = [...metadata.capabilities ?? [], index.ISSUE_SESSION_CAPABILITY];
844
848
  metadata.attachmentKinds = [];
845
849
  if (opts.agentName === "gemini") metadata.configuredModel = readGeminiConfiguredModel();
846
850
  const reconnect = acpSessionResume.readAcpReconnectEnv(reconnectEnv.takeReconnectEnv());
@@ -858,7 +862,7 @@ async function runAcp(opts) {
858
862
  agentStateVersion: reconnect.agentStateVersion
859
863
  };
860
864
  } else {
861
- response = await startupSessionCreate.createSessionForStartup(() => api$1.getOrCreateSession({ tag: sessionTag, metadata, state }), { startedBy: opts.startedBy, log: (m) => logger.logger.debug(m) });
865
+ response = await sessionMetadata.createSessionForStartup(() => api$1.getOrCreateSession({ tag: sessionTag, metadata, state }), { startedBy: opts.startedBy, log: (m) => logger.logger.debug(m) });
862
866
  }
863
867
  if (response) {
864
868
  logAcp("muted", `Happy Session ID: ${response.id}`);
@@ -1535,7 +1539,7 @@ async function runAcp(opts) {
1535
1539
  ...shouldExit ? { exiting: true } : {}
1536
1540
  };
1537
1541
  };
1538
- piProbe = new startupSessionCreate.HibernationProbe({
1542
+ piProbe = new sessionMetadata.HibernationProbe({
1539
1543
  checkMs: persistence.resolveCheckMs(),
1540
1544
  snapshot: piSnapshot,
1541
1545
  ask: (report) => controlClient.checkDaemonHibernation({ sessionId: session.sessionId, pid: process.pid, report }),
@@ -2,14 +2,14 @@
2
2
 
3
3
  var node_fs = require('node:fs');
4
4
  var os = require('node:os');
5
- var logger = require('./logger-BrAF4iuT.cjs');
6
- var persistence = require('./persistence-DGfEdbA5.cjs');
5
+ var logger = require('./logger-D28MY1Bv.cjs');
6
+ var persistence = require('./persistence-TpVFA5-I.cjs');
7
7
  var loginShellEnv = require('./loginShellEnv-BkuYtExZ.cjs');
8
8
  require('chalk');
9
9
  require('node:util');
10
- require('./configuration-DfRs3WLd.cjs');
10
+ require('./configuration-ClUt7pqs.cjs');
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('zod');
15
15
  require('./authRelay-Dy1qU9td.cjs');
@@ -1,16 +1,16 @@
1
1
  'use strict';
2
2
 
3
- var query = require('./query-Ba7UXc_y.cjs');
3
+ var query = require('./query-BkOpCpRo.cjs');
4
4
  var claudeAgentSdk = require('@anthropic-ai/claude-agent-sdk');
5
5
  require('./promptCacheTtl-B8PCzE6k.cjs');
6
6
  require('node:fs');
7
7
  require('node:os');
8
8
  require('node:path');
9
- require('./logger-BrAF4iuT.cjs');
9
+ require('./logger-D28MY1Bv.cjs');
10
10
  require('chalk');
11
11
  require('node:util');
12
- require('./configuration-DfRs3WLd.cjs');
13
- require('./package-CStJrLG3.cjs');
12
+ require('./configuration-ClUt7pqs.cjs');
13
+ require('./package-BFSsS_dl.cjs');
14
14
  require('node:fs/promises');
15
15
  require('./processTreeSnapshot-D5iNblp6.cjs');
16
16
  require('node:child_process');
@@ -1,94 +1,96 @@
1
- import { D as DefaultTransport, A as AcpBackend, i as isAgentExitError, a as acpNoticeMessage } from './AcpBackend-Bm3EodAb.mjs';
2
- export { b as DEFAULT_IDLE_TIMEOUT_MS, c as DEFAULT_TOOL_CALL_TIMEOUT_MS, e as extractErrorDetail, f as formatDuration, d as formatDurationMinutes, h as handleAgentMessageChunk, g as handleAgentThoughtChunk, j as handleLegacyMessageChunk, k as handlePlanUpdate, l as handleThinkingUpdate, m as handleToolCall, n as handleToolCallUpdate, p as parseArgsFromContent } from './AcpBackend-Bm3EodAb.mjs';
3
- import { l as logger } from './logger-BHfBDOsy.mjs';
4
- import { A as AcpSessionManager } from './AcpSessionManager-BiwuXpbx.mjs';
5
- import { P as PROMPT_QUEUE_CAPABILITY, a as PROJECT_SESSION_CAPABILITY, a2 as PI_STEER_CAPABILITY, w as BUILTIN_TODO_DISCOVERY } from './index-CxiisoO1.mjs';
6
- import { h as hashObject, s as startHappyServer, r as readPiModelsJson, a as resolvePiContextUsage, c as createProjectInjector } from './deterministicJson-DnTSkEgb.mjs';
1
+ import { D as DefaultTransport, A as AcpBackend, i as isAgentExitError, a as acpNoticeMessage } from './AcpBackend-Cnp6WNn8.mjs';
2
+ export { b as DEFAULT_IDLE_TIMEOUT_MS, c as DEFAULT_TOOL_CALL_TIMEOUT_MS, e as extractErrorDetail, f as formatDuration, d as formatDurationMinutes, h as handleAgentMessageChunk, g as handleAgentThoughtChunk, j as handleLegacyMessageChunk, k as handlePlanUpdate, l as handleThinkingUpdate, m as handleToolCall, n as handleToolCallUpdate, p as parseArgsFromContent } from './AcpBackend-Cnp6WNn8.mjs';
3
+ import { l as logger } from './logger-BLMi8oJK.mjs';
4
+ import { A as AcpSessionManager } from './AcpSessionManager-C4O3jhT_.mjs';
5
+ import { P as PROMPT_QUEUE_CAPABILITY, a as PROJECT_SESSION_CAPABILITY, I as ISSUE_SESSION_CAPABILITY, a4 as PI_STEER_CAPABILITY, J as BUILTIN_TODO_DISCOVERY } from './index-kwsivEs-.mjs';
6
+ import { h as hashObject, s as startHappyServer, r as readPiModelsJson, a as resolvePiContextUsage, c as createProjectInjector } from './deterministicJson-BRAeReBK.mjs';
7
7
  import { c as compactCommandText, C as COMPACT_UNSUPPORTED_NOTICE } from './specialCommands-MXUN0wfI.mjs';
8
8
  import { r as registerAgentAttachmentDownloads, H as HeldInput } from './heldInput-C69lA2dH.mjs';
9
- import { c as configuration } from './configuration-JBFF7432.mjs';
10
- import { a as stageClaudeAttachments, b as appendStagedAttachmentsToPrompt, C as CLAUDE_ATTACHMENT_KINDS } from './attachmentContent-Dl29U1v1.mjs';
11
- import { p as preparePiTeamsRuntime } from './piRuntime-_yRSPgnR.mjs';
9
+ import { c as configuration } from './configuration-4pG95tsq.mjs';
10
+ import { a as stageClaudeAttachments, b as appendStagedAttachmentsToPrompt, C as CLAUDE_ATTACHMENT_KINDS } from './attachmentContent-BKIq6EXR.mjs';
11
+ import { p as preparePiTeamsRuntime } from './piRuntime-B0QZykV7.mjs';
12
12
  import { randomUUID } from 'node:crypto';
13
13
  import { join } from 'node:path';
14
- import { c as connectionState, A as ApiClient } from './api-oceym3w6.mjs';
15
- import { s as sharedProjectsClient } from './client-BRuFIwki.mjs';
16
- import { M as MessageQueue2, r as registerKillSessionHandler } from './registerKillSessionHandler-D6wYbAIt.mjs';
17
- import { r as readSettings, a as resolveCheckMs } from './persistence-DvD-irLh.mjs';
18
- import { g as getInitialMachineMetadata } from './machineMetadata-Ekniv5o4.mjs';
19
- import { c as createSessionMetadata } from './createSessionMetadata-OMKj3e48.mjs';
20
- import { s as setupOfflineReconnection } from './setupOfflineReconnection-DzV1wB4y.mjs';
21
- import { c as createSessionForStartup, H as HibernationProbe } from './startupSessionCreate-CfBajt2k.mjs';
22
- import { n as notifyDaemonSessionStarted, c as checkDaemonHibernation, o as reportSessionEditToDaemon } from './controlClient-D5BYm3PU.mjs';
14
+ import { c as connectionState, A as ApiClient } from './api-DCUiAds-.mjs';
15
+ import { i as issueSessionMetadata, c as createSessionForStartup, H as HibernationProbe } from './sessionMetadata-V7Z7F-cj.mjs';
16
+ import { s as sharedProjectsClient } from './client-BXwIqRha.mjs';
17
+ import { M as MessageQueue2, r as registerKillSessionHandler } from './registerKillSessionHandler-DoE6xgH3.mjs';
18
+ import { r as readSettings, a as resolveCheckMs } from './persistence-DbOKjdUD.mjs';
19
+ import { g as getInitialMachineMetadata } from './machineMetadata-D8OWVD4l.mjs';
20
+ import { c as createSessionMetadata } from './createSessionMetadata-CQkxe_4T.mjs';
21
+ import { s as setupOfflineReconnection } from './setupOfflineReconnection-Ck-p0YPb.mjs';
22
+ import { n as notifyDaemonSessionStarted, c as checkDaemonHibernation, o as reportSessionEditToDaemon } from './controlClient-bqCKl9Nv.mjs';
23
23
  import { d as decodeBase64, e as encodeBase64 } from './authRelay-DhQhkBvX.mjs';
24
- import { A as AUTO_RESTART_CAPABILITY, c as claimSessionOrExit, a as applyServerSnapshot, w as withoutServerSnapshot, m as mergeReconnectMetadata, t as takeAutoRestartedEvent } from './sessionLock-DqFKSW8u.mjs';
25
- import { r as readAcpReconnectEnv, n as normalizeAcpPermissionMode, p as piRestartNotice, w as writeSessionModeFile, a as removeSessionModeFile } from './acpSessionResume-D6YgeofW.mjs';
24
+ import { A as AUTO_RESTART_CAPABILITY, c as claimSessionOrExit, a as applyServerSnapshot, w as withoutServerSnapshot, m as mergeReconnectMetadata, t as takeAutoRestartedEvent } from './sessionLock-CphKQyav.mjs';
25
+ import { r as readAcpReconnectEnv, n as normalizeAcpPermissionMode, p as piRestartNotice, w as writeSessionModeFile, a as removeSessionModeFile } from './acpSessionResume-De_sTG30.mjs';
26
26
  import { t as takeReconnectEnv } from './reconnectEnv-DeSvHl3q.mjs';
27
- import { S as StreamRelay } from './streamRelay-DymKR1Rk.mjs';
27
+ import { S as StreamRelay } from './streamRelay-7D7v0hvk.mjs';
28
28
  import { p as projectPath } from './projectPath-BTBIMB57.mjs';
29
- import { B as BasePermissionHandler } from './BasePermissionHandler-1QcavYFn.mjs';
30
- import { T as TitleGenerator } from './titleGenerator-B2BbmJuc.mjs';
29
+ import { B as BasePermissionHandler } from './BasePermissionHandler-8Msj0Z8j.mjs';
30
+ import { T as TitleGenerator } from './titleGenerator-BdeHi3IY.mjs';
31
31
  import { E as EditReportThrottle, e as extractAcpEditPaths } from './editPaths-BVfS_FFL.mjs';
32
32
  import { readFileSync } from 'node:fs';
33
33
  import { homedir } from 'node:os';
34
34
  import 'node:child_process';
35
35
  import '@agentclientprotocol/sdk';
36
- import './time-DZE0879N.mjs';
36
+ import './time-qd46L189.mjs';
37
37
  import './contentLogMetadata-BlWI0egu.mjs';
38
38
  import './processTree-CP5IvQ2Z.mjs';
39
- import './package-BGZo2vAj.mjs';
39
+ import './package-DbGqY8Ej.mjs';
40
40
  import 'chalk';
41
41
  import 'node:util';
42
42
  import '@paralleldrive/cuid2';
43
43
  import 'zod';
44
44
  import './prompt-QHuFx9j6.mjs';
45
- import './reportProgressTool-CFmDK8ag.mjs';
46
- import './client-CISkP897.mjs';
45
+ import './client-BgxQ9aej.mjs';
46
+ import './reportProgressTool-D4xKY9Ur.mjs';
47
+ import './client-Blpuk2Hr.mjs';
47
48
  import './precheckCompat-DeEbilbr.mjs';
49
+ import './format-CbliQN8V.mjs';
48
50
  import './agentGuidance-BDYt2Qy2.mjs';
49
51
  import './trimIdent-BAjmv_TG.mjs';
50
52
  import './pi-CqyoZMjI.mjs';
51
53
  import './fileStore-5qpetZS0.mjs';
52
54
  import 'node:fs/promises';
53
- import './client-E4kW5qjR.mjs';
54
- import './context-DLIjT5qU.mjs';
55
- import './sessionOps-D-SDNs-D.mjs';
55
+ import './client-C0qjAgZ_.mjs';
56
+ import './context-Cf05DtNM.mjs';
57
+ import './sessionOps-D-uFSTHk.mjs';
56
58
  import 'axios';
57
59
  import 'socket.io-client';
58
60
  import './backgroundTaskActivity-8PdPxrvy.mjs';
59
61
  import './resources-CLP_MpK4.mjs';
60
- import './tools-gIDXwAzk.mjs';
61
- import './peerTools-BO-H0wNj.mjs';
62
+ import './tools-DR7GWBBV.mjs';
63
+ import './peerTools-4GYKxr8J.mjs';
62
64
  import './ids-DU6sLx4C.mjs';
63
- import './remoteSessionClient-CFNM8UEh.mjs';
65
+ import './remoteSessionClient-BFd_D9ka.mjs';
64
66
  import '@modelcontextprotocol/sdk/server/mcp.js';
65
67
  import 'node:http';
66
68
  import '@modelcontextprotocol/sdk/server/streamableHttp.js';
67
69
  import './limits-DIo7rEBR.mjs';
68
- import './downloadTarget-BtsN_-LN.mjs';
70
+ import './downloadTarget-Diq-GBu4.mjs';
69
71
  import './terminals-Dc38XmZv.mjs';
70
72
  import './terminalTitleSuggest-CeKsX_V6.mjs';
71
73
  import './tmuxSocket-BmZyixRM.mjs';
72
- import './bootstrap-D8DYLUId.mjs';
74
+ import './bootstrap-BkLFgEGF.mjs';
73
75
  import './webPanels-B2_C2-3g.mjs';
74
- import './pushNotifications-D2UZnoTB.mjs';
76
+ import './pushNotifications-CrCTpDiN.mjs';
75
77
  import './previewPath-CXN4Vag0.mjs';
76
78
  import 'crypto';
77
- import './reconnectGate-CxLgZCBh.mjs';
79
+ import './reconnectGate-COxAZTv8.mjs';
78
80
  import 'os';
79
81
  import 'child_process';
80
82
  import 'node:events';
81
- import './registerCommonHandlers-ChdVwZW6.mjs';
83
+ import './registerCommonHandlers-Cfl_dEWs.mjs';
82
84
  import 'util';
83
85
  import 'fs/promises';
84
86
  import 'path';
85
87
  import 'cross-spawn';
86
- import './sync-BLGrIKN9.mjs';
88
+ import './sync-s1pUqWGm.mjs';
87
89
  import 'tweetnacl';
88
90
  import './types-CkqAACXx.mjs';
89
91
  import './detectCLI-CSGMlV51.mjs';
90
92
  import 'fs';
91
- import './localHappyAgentAuth-BiIyMoiG.mjs';
93
+ import './localHappyAgentAuth-DeDQjw24.mjs';
92
94
  import './fsMkdir-DumgLTzR.mjs';
93
95
  import './cliUpdate-Y34VGe9Y.mjs';
94
96
  import './processTermination-ChJG5SLW.mjs';
@@ -96,9 +98,9 @@ import './processTreeSnapshot-fuwxC0fr.mjs';
96
98
  import 'url';
97
99
  import 'node:module';
98
100
  import './oneShotPrompts-DT4p6RNd.mjs';
99
- import './wrapperAccount-Ce78kKMo.mjs';
100
- import './claudeAccountEnv-DmVbGhZb.mjs';
101
- import './store-DEhdblkI.mjs';
101
+ import './wrapperAccount-CpDsQL15.mjs';
102
+ import './claudeAccountEnv-CI8RlIB9.mjs';
103
+ import './store-CqNAE-0v.mjs';
102
104
 
103
105
  function createAcpBackend(options) {
104
106
  const backendOptions = {
@@ -833,6 +835,7 @@ async function runAcp(opts) {
833
835
  const { state, metadata } = createSessionMetadata({
834
836
  flavor: resolveSessionFlavor(opts.agentName),
835
837
  ...process.env.VH_TEAM_OPERATION_ID ? { teamOperationId: process.env.VH_TEAM_OPERATION_ID } : {},
838
+ ...issueSessionMetadata(),
836
839
  machineId: settings.machineId,
837
840
  startedBy: opts.startedBy,
838
841
  sandbox: settings.sandboxConfig,
@@ -840,6 +843,7 @@ async function runAcp(opts) {
840
843
  // daemon can restart it onto new code after an upgrade.
841
844
  capabilities: [PROMPT_QUEUE_CAPABILITY, PROJECT_SESSION_CAPABILITY, ...opts.agentName === "pi" && opts.startedBy === "daemon" ? [AUTO_RESTART_CAPABILITY] : []]
842
845
  });
846
+ metadata.capabilities = [...metadata.capabilities ?? [], ISSUE_SESSION_CAPABILITY];
843
847
  metadata.attachmentKinds = [];
844
848
  if (opts.agentName === "gemini") metadata.configuredModel = readGeminiConfiguredModel();
845
849
  const reconnect = readAcpReconnectEnv(takeReconnectEnv());
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var _package = require('./package-CStJrLG3.cjs');
3
+ var _package = require('./package-BFSsS_dl.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-U-A1DCi9.cjs'); });
62
+ const { selfCheckMain } = await Promise.resolve().then(function () { return require('./selfCheck-DFC8fzhF.cjs'); });
63
63
  process.exit(await selfCheckMain({ verbose: isSelfCheckRequest(args) }));
64
64
  }
65
- const { main } = await Promise.resolve().then(function () { return require('./main-C8lsRSYS.cjs'); });
65
+ const { main } = await Promise.resolve().then(function () { return require('./main-DoJIcSOh.cjs'); });
66
66
  await main();
67
67
  }
68
68
  void run(process.argv.slice(2));
@@ -1,4 +1,4 @@
1
- import { p as packageJson } from './package-BGZo2vAj.mjs';
1
+ import { p as packageJson } from './package-DbGqY8Ej.mjs';
2
2
  import module$1 from 'node:module';
3
3
  import { existsSync } from 'node:fs';
4
4
  import { readdir, rm } from 'node:fs/promises';
@@ -57,10 +57,10 @@ async function pruneStaleCompileCaches(happyHomeDir, cliVersion) {
57
57
  async function run(args) {
58
58
  enableCompileCacheIfPossible(packageJson.version);
59
59
  if (isStandaloneVersionRequest(args) || isSelfCheckRequest(args)) {
60
- const { selfCheckMain } = await import('./selfCheck-DCIqaiMu.mjs');
60
+ const { selfCheckMain } = await import('./selfCheck-B-hKig8I.mjs');
61
61
  process.exit(await selfCheckMain({ verbose: isSelfCheckRequest(args) }));
62
62
  }
63
- const { main } = await import('./main-HXdcnexS.mjs');
63
+ const { main } = await import('./main-c0fCuBON.mjs');
64
64
  await main();
65
65
  }
66
66
  void run(process.argv.slice(2));