very-happy-cli 0.2.197 → 0.2.199

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 (206) hide show
  1. package/dist/{AcpBackend-B-CD1MrV.mjs → AcpBackend-Bo6bOamG.mjs} +3 -3
  2. package/dist/{AcpBackend-CqDg1GgF.cjs → AcpBackend-HhZ8nrIh.cjs} +3 -3
  3. package/dist/{AcpSessionManager-Cv1KTldV.cjs → AcpSessionManager--7nDgA9S.cjs} +2 -2
  4. package/dist/{AcpSessionManager-CgomFAjk.mjs → AcpSessionManager-C-pkJKO2.mjs} +2 -2
  5. package/dist/{BasePermissionHandler-D6-fZvtx.mjs → BasePermissionHandler-Ffp54Ntg.mjs} +1 -1
  6. package/dist/{BasePermissionHandler-BxUjjHiI.cjs → BasePermissionHandler-al7UXWRq.cjs} +1 -1
  7. package/dist/{account-CnN-iHFd.mjs → account-Bnk1yyGS.mjs} +11 -11
  8. package/dist/{account-Bexqa-vj.cjs → account-DCIz-iyL.cjs} +11 -11
  9. package/dist/{accountService-DL6xhVUa.cjs → accountService-B59oKwa4.cjs} +4 -4
  10. package/dist/{accountService-DQ21IlBs.mjs → accountService-WPnOpkvs.mjs} +4 -4
  11. package/dist/{acpSessionResume-DzFELzTU.mjs → acpSessionResume-BVroOlVN.mjs} +1 -1
  12. package/dist/{acpSessionResume-CfEw8L26.cjs → acpSessionResume-CfogEHtT.cjs} +1 -1
  13. package/dist/{agentHome-CmSA7hBC.mjs → agentHome-CHTzSiu4.mjs} +4 -4
  14. package/dist/{agentHome-CBYL4J4Q.cjs → agentHome-Y3bMEtCp.cjs} +4 -4
  15. package/dist/{api-CB3tLbbj.cjs → api-CgzfmyYS.cjs} +30 -28
  16. package/dist/{api-Do7MUIrP.mjs → api-DibgCucH.mjs} +14 -12
  17. package/dist/{apiMachine-CytFlPdl.mjs → apiMachine-BUaFSi27.mjs} +22 -20
  18. package/dist/{apiMachine-guUGAifI.cjs → apiMachine-DSI5mKlh.cjs} +34 -32
  19. package/dist/{attachmentContent-B8Lg7kgp.mjs → attachmentContent-D9wq3bok.mjs} +2 -2
  20. package/dist/{attachmentContent-errR84kh.cjs → attachmentContent-JWUS5uhH.cjs} +2 -2
  21. package/dist/{auth-ZKJNs8AK.cjs → auth-B6H2wHTy.cjs} +5 -5
  22. package/dist/{auth-BhM0lHLA.cjs → auth-BXav16o0.cjs} +8 -8
  23. package/dist/{auth-Dnu0Mocz.mjs → auth-BjWk9sHU.mjs} +5 -5
  24. package/dist/{auth-B-1T6w1U.mjs → auth-DFMJQDNF.mjs} +8 -8
  25. package/dist/{auto-eimPZ4gm.cjs → auto-CMO-VQYN.cjs} +17 -17
  26. package/dist/{auto-CFSmWudH.mjs → auto-DOhQ2OU5.mjs} +17 -17
  27. package/dist/{bootstrap-B7mwfud6.cjs → bootstrap-Brd_jnA2.cjs} +2 -2
  28. package/dist/{bootstrap-C2JyiPax.mjs → bootstrap-CY7Db_VV.mjs} +2 -2
  29. package/dist/{browser-B3VVAWcC.cjs → browser-BhncBLE4.cjs} +1 -1
  30. package/dist/{browser-Cnk2N81e.mjs → browser-BpwBEJDU.mjs} +1 -1
  31. package/dist/{claudeAccountEnv-CPO6CGNd.mjs → claudeAccountEnv-CYwfvK1u.mjs} +1 -1
  32. package/dist/{claudeAccountEnv-_O3x5AJ1.cjs → claudeAccountEnv-z_ecsJAP.cjs} +1 -1
  33. package/dist/{claudeLocal-CvZ5Sfq_.cjs → claudeLocal-Co_DyW-D.cjs} +5 -5
  34. package/dist/{claudeLocal-gDpGeteK.mjs → claudeLocal-coKrsYmR.mjs} +5 -5
  35. package/dist/{claudeLocalLauncher-e_DkguJW.mjs → claudeLocalLauncher-BFnLc0R-.mjs} +10 -10
  36. package/dist/{claudeLocalLauncher-CFSxFln_.cjs → claudeLocalLauncher-CNDrO3b6.cjs} +10 -10
  37. package/dist/{claudeSessionFork--_RtwhC2.cjs → claudeSessionFork-BuDN5SkN.cjs} +1 -1
  38. package/dist/{claudeSessionFork-BMMJmfxX.mjs → claudeSessionFork-dOOc9hpA.mjs} +1 -1
  39. package/dist/{client-BeEAF2yn.mjs → client-B5uvkdLn.mjs} +2 -2
  40. package/dist/{client-DH_mgm2T.cjs → client-BKyTA9Hf.cjs} +2 -2
  41. package/dist/{client-TZ1BY7kn.cjs → client-CBbUzTcm.cjs} +4 -4
  42. package/dist/{client-CkiWUkm6.mjs → client-DKPLBLvx.mjs} +2 -2
  43. package/dist/{client-DmO89_dS.cjs → client-KbhVRYjy.cjs} +2 -2
  44. package/dist/{client-Bav5WI8p.mjs → client-Ng-oAhlX.mjs} +4 -4
  45. package/dist/codex/happyMcpStdioBridge.cjs +16 -16
  46. package/dist/codex/happyMcpStdioBridge.mjs +16 -16
  47. package/dist/{codexAccount-CYhQir50.cjs → codexAccount-8Wv5enLR.cjs} +1 -1
  48. package/dist/{codexAccount-iZwmpYti.mjs → codexAccount-DeFAjaHW.mjs} +1 -1
  49. package/dist/{codexAppServerClient-C4FYS9D9.cjs → codexAppServerClient-6QmZ2Tn5.cjs} +3 -3
  50. package/dist/{codexAppServerClient-AcMiUjlK.mjs → codexAppServerClient-BAcU_XN8.mjs} +3 -3
  51. package/dist/{codexCommand-CuteJvKE.mjs → codexCommand-CCeaWZ-1.mjs} +54 -47
  52. package/dist/{codexCommand-BkF16_aL.cjs → codexCommand-hJYa82Af.cjs} +54 -47
  53. package/dist/{codexTermination-CjHWp1C_.mjs → codexTermination-BX0sCNFy.mjs} +1 -1
  54. package/dist/{codexTermination-DGgKsMxj.cjs → codexTermination-DKjQcC3e.cjs} +1 -1
  55. package/dist/{config-BklFo_Cs.cjs → config-171VOPLq.cjs} +3 -3
  56. package/dist/{config-CUvb7oaW.mjs → config-9iXYh_zS.mjs} +3 -3
  57. package/dist/{configuration-BL_fxboH.cjs → configuration-CAzuk0Xs.cjs} +1 -1
  58. package/dist/{configuration-BIh6P6kB.mjs → configuration-D9k5yIzV.mjs} +1 -1
  59. package/dist/{connect-KIJsx0iT.mjs → connect-BEhKtsEn.mjs} +13 -13
  60. package/dist/{connect-Bi7cRXtj.cjs → connect-MlXU2FE3.cjs} +13 -13
  61. package/dist/{context-BYcZIvKn.cjs → context-CI9LnDu1.cjs} +1 -1
  62. package/dist/{context-Ct__7RAS.mjs → context-WVEuAdf2.mjs} +1 -1
  63. package/dist/{controlClient-DMtkGpc3.cjs → controlClient-Bb188cU0.cjs} +3 -3
  64. package/dist/{controlClient-CPZkMKsH.mjs → controlClient-DhFAPGHz.mjs} +3 -3
  65. package/dist/{createSessionMetadata-DkkddlJa.mjs → createSessionMetadata-BIK0Xz31.mjs} +2 -2
  66. package/dist/{createSessionMetadata-BWr0XT-Y.cjs → createSessionMetadata-C2EQi_od.cjs} +2 -2
  67. package/dist/{daemonAccounts-CnAEaJE_.mjs → daemonAccounts-DD5YBwku.mjs} +3 -3
  68. package/dist/{daemonAccounts-CxMJw7x2.cjs → daemonAccounts-nLyHz8WB.cjs} +2 -2
  69. package/dist/{defaultPermissionMode-BCWCMONI.cjs → defaultPermissionMode-BA1fgIpW.cjs} +1 -1
  70. package/dist/{defaultPermissionMode-CpEJ0wlb.mjs → defaultPermissionMode-Dmw3lpdN.mjs} +1 -1
  71. package/dist/{deterministicJson-Dm3yDrwj.mjs → deterministicJson-BJ7LY5-S.mjs} +13 -13
  72. package/dist/{deterministicJson-BO6ZUUiV.cjs → deterministicJson-DCzFgRiT.cjs} +13 -13
  73. package/dist/{doctor-DHK-5Hxm.cjs → doctor-CH_pTY3Q.cjs} +7 -7
  74. package/dist/{doctor-TK49jR60.mjs → doctor-jAPeyoi6.mjs} +7 -7
  75. package/dist/{downloadTarget-C2XcfMXb.mjs → downloadTarget-BhMm1keb.mjs} +6 -6
  76. package/dist/{downloadTarget-QP5nnKsW.cjs → downloadTarget-CZS0BVu2.cjs} +6 -6
  77. package/dist/{ensureDaemonRunning-Bi-PF5LL.mjs → ensureDaemonRunning-BjbC8PuJ.mjs} +5 -5
  78. package/dist/{ensureDaemonRunning-pg-EYmG0.cjs → ensureDaemonRunning-CTKaWMED.cjs} +5 -5
  79. package/dist/{handleResumeCommand-B69L6W80.mjs → handleResumeCommand-DbFTdwoc.mjs} +5 -5
  80. package/dist/{handleResumeCommand-CMLpVjkl.cjs → handleResumeCommand-DsaEUiax.cjs} +5 -5
  81. package/dist/{index-BSSAKD4Q.mjs → index-BAjoMeJi.mjs} +4 -4
  82. package/dist/{index-CwwDV02T.mjs → index-BEKb2cxz.mjs} +43 -43
  83. package/dist/{index-C27JFCbe.mjs → index-BQvPYTNM.mjs} +258 -90
  84. package/dist/{index-D9Hidq-g.cjs → index-BnT8yvlF.cjs} +258 -89
  85. package/dist/{index-DgnbOqH_.cjs → index-DL6ONx6v.cjs} +3 -3
  86. package/dist/{index-P6modcWo.mjs → index-DcfbjaVL.mjs} +3 -3
  87. package/dist/{index-sXThJ-ic.cjs → index-DdJRSpLB.cjs} +42 -42
  88. package/dist/{index-BM14YD9K.mjs → index-DpQ9OLYi.mjs} +4 -4
  89. package/dist/{index-DC_XlLAD.cjs → index-DuoMPw0y.cjs} +4 -4
  90. package/dist/{index-XeWmi_Wt.cjs → index-qVJYCmRA.cjs} +4 -4
  91. package/dist/index.cjs +2 -2
  92. package/dist/index.mjs +2 -2
  93. package/dist/{install-Cyb1ZsOO.cjs → install-5nblS8vW.cjs} +3 -3
  94. package/dist/{install-B6vD9h4Z.mjs → install-CJcRTQVK.mjs} +3 -3
  95. package/dist/lib.cjs +12 -12
  96. package/dist/lib.mjs +12 -12
  97. package/dist/{localHappyAgentAuth-Dxl6itKW.cjs → localHappyAgentAuth-Bsk_VyUN.cjs} +1 -1
  98. package/dist/{localHappyAgentAuth-BupJnMMB.mjs → localHappyAgentAuth-CD896cy4.mjs} +1 -1
  99. package/dist/{logger-CtweAuKq.cjs → logger-LsJ3Cl5o.cjs} +2 -2
  100. package/dist/{logger-CahcyjlK.mjs → logger-n9NOzHhK.mjs} +2 -2
  101. package/dist/{machineMetadata-jOqz4fn8.mjs → machineMetadata-Bc7FwngX.mjs} +3 -3
  102. package/dist/{machineMetadata-thOCcaSv.cjs → machineMetadata-CUU2NSYl.cjs} +3 -3
  103. package/dist/{main-CTIbEEsd.cjs → main-CEu9zJ4x.cjs} +47 -47
  104. package/dist/{main-bCGlXj7y.mjs → main-CzItRviV.mjs} +47 -47
  105. package/dist/{mcp-BOS5msHd.cjs → mcp-CPW1yQdX.cjs} +18 -18
  106. package/dist/{mcp-dtmpWc-Y.mjs → mcp-yK3ynz_E.mjs} +18 -18
  107. package/dist/{mirrorProtocol-CFDn3zfT.cjs → mirrorProtocol-5bgkr1Or.cjs} +3 -3
  108. package/dist/{mirrorProtocol-OJPFNpbq.mjs → mirrorProtocol-CoXxepvL.mjs} +3 -3
  109. package/dist/{package-DUKnh8UF.mjs → package-CCF6FHr2.mjs} +7 -7
  110. package/dist/{package-DdYN77UN.cjs → package-D7V1BX2I.cjs} +7 -7
  111. package/dist/{panels-DZZTavkP.cjs → panels-9DdVhaxc.cjs} +5 -5
  112. package/dist/{panels-DQs5x77X.mjs → panels-CF5n641F.mjs} +5 -5
  113. package/dist/{peerTools-03MimWe-.cjs → peerTools-Dv6bgHkW.cjs} +5 -5
  114. package/dist/{peerTools-ByJiL-w1.mjs → peerTools-gR_3dwdA.mjs} +5 -5
  115. package/dist/{persistence-CPIj3Iha.mjs → persistence-B5U9rC15.mjs} +2 -2
  116. package/dist/{persistence-CWEaFv6R.cjs → persistence-Dl3sBrCF.cjs} +2 -2
  117. package/dist/{piRunnerArgs-DxbuKnFC.mjs → piRunnerArgs-DOV74xAt.mjs} +1 -1
  118. package/dist/{piRunnerArgs-Aqs-zKLm.cjs → piRunnerArgs-rygeUdRz.cjs} +1 -1
  119. package/dist/{piRuntime-BFMV2Hlg.cjs → piRuntime-BvxCy9qQ.cjs} +1 -1
  120. package/dist/{piRuntime-KJn9G3Ax.mjs → piRuntime-dtlRpOYa.mjs} +1 -1
  121. package/dist/{piTerminal-DhVFk2Hc.mjs → piTerminal-Bx6c5Jyd.mjs} +20 -20
  122. package/dist/{piTerminal-DFzQb38E.cjs → piTerminal-ClaMS-57.cjs} +20 -20
  123. package/dist/{pushNotifications-BhnrQa32.cjs → pushNotifications-IZaTtVDG.cjs} +3 -3
  124. package/dist/{pushNotifications-CD5-W90c.mjs → pushNotifications-pHkbUkqT.mjs} +3 -3
  125. package/dist/{query-BRvDJTUF.cjs → query-BVqnfxlX.cjs} +1 -1
  126. package/dist/{query-BRTHwQ1m.mjs → query-D_3rFFWe.mjs} +1 -1
  127. package/dist/{rateLimitWindows-_KfSDJdB.cjs → rateLimitWindows-C7xi99Eb.cjs} +1 -1
  128. package/dist/{rateLimitWindows-BAfkXSck.mjs → rateLimitWindows-DnLJ-gve.mjs} +1 -1
  129. package/dist/{lidState-DXy1ymL0.cjs → reconnectGate-CHI12y0Y.cjs} +27 -2
  130. package/dist/{lidState-nbXgabCS.mjs → reconnectGate-DPDXEkOX.mjs} +27 -3
  131. package/dist/{registerCommonHandlers-Anq6Ma1d.mjs → registerCommonHandlers-BrTglZnC.mjs} +2 -2
  132. package/dist/{registerCommonHandlers-CsMpXP1_.cjs → registerCommonHandlers-CUCw-rad.cjs} +2 -2
  133. package/dist/{registerKillSessionHandler-DvA-f_D4.mjs → registerKillSessionHandler-BJSVT1iq.mjs} +6 -6
  134. package/dist/{registerKillSessionHandler-DnES0UnY.cjs → registerKillSessionHandler-Bo697Mt0.cjs} +6 -6
  135. package/dist/{registerSideQuestionHandler-B6EgCzBZ.mjs → registerSideQuestionHandler-BFPCMrmC.mjs} +4 -4
  136. package/dist/{registerSideQuestionHandler-GIzcFczo.cjs → registerSideQuestionHandler-HNpsU_20.cjs} +4 -4
  137. package/dist/{remoteSessionClient-BsXgrMSP.cjs → remoteSessionClient-9NzkfL13.cjs} +5 -5
  138. package/dist/{remoteSessionClient-DYTwJSZR.mjs → remoteSessionClient-Blz-z9jM.mjs} +5 -5
  139. package/dist/{reportProgressTool-DzmnFItq.mjs → reportProgressTool-B2-RFomn.mjs} +3 -3
  140. package/dist/{reportProgressTool-DhTM7qvk.cjs → reportProgressTool-CW9rSnwQ.cjs} +3 -3
  141. package/dist/{run-D0nDSvGo.cjs → run-9aB7U4BF.cjs} +40 -40
  142. package/dist/{run-Cuz34V0P.mjs → run-BXyfDvCk.mjs} +40 -40
  143. package/dist/{runClaude-DHHDBtKG.cjs → runClaude-B4ohp5Dk.cjs} +25 -25
  144. package/dist/{runClaude-ySgHmPJg.mjs → runClaude-BKpWJdCX.mjs} +25 -25
  145. package/dist/{runClaudeDeps-k-QAN7Em.mjs → runClaudeDeps-B0x5BCqC.mjs} +46 -46
  146. package/dist/{runClaudeDeps-Cfeci4al.cjs → runClaudeDeps-gqSYeQkl.cjs} +40 -40
  147. package/dist/{runGemini-Dob7MFa2.cjs → runGemini-BMzDy7hY.cjs} +33 -33
  148. package/dist/{runGemini-BpiHwTGj.mjs → runGemini-BvV5k9b3.mjs} +33 -33
  149. package/dist/{runOpenClaw-B-BGCcbD.cjs → runOpenClaw-3Cx3C2ww.cjs} +18 -18
  150. package/dist/{runOpenClaw-B_7LblMr.mjs → runOpenClaw-UcIDMHm7.mjs} +18 -18
  151. package/dist/{sandbox-D4UmUYIM.mjs → sandbox-BC-KbWe7.mjs} +4 -4
  152. package/dist/{sandbox-D9xs3oeT.cjs → sandbox-QJdxjmxr.cjs} +4 -4
  153. package/dist/{selfCheck-B1ueapb2.cjs → selfCheck-Be_M5coh.cjs} +39 -39
  154. package/dist/selfCheck-NWjxjpSx.mjs +88 -0
  155. package/dist/{send-CgIeqwqq.cjs → send-DhWp8M8B.cjs} +8 -8
  156. package/dist/{send-BZoS0m6-.mjs → send-x789D5ci.mjs} +8 -8
  157. package/dist/{server-C5zdUyIu.mjs → server-D-aSnlWI.mjs} +4 -4
  158. package/dist/{server-XgEG5D8c.cjs → server-kPDtS-DX.cjs} +6 -6
  159. package/dist/{sessionLock-CbIB9WAp.cjs → sessionLock-CuPN9xfW.cjs} +3 -3
  160. package/dist/{sessionLock-C4zRSYwt.mjs → sessionLock-JWBEd8g_.mjs} +3 -3
  161. package/dist/{sessionOps-flaRRzdo.cjs → sessionOps-CYNOycqT.cjs} +4 -4
  162. package/dist/{sessionOps-fuLJNyOT.mjs → sessionOps-VS1baPz_.mjs} +4 -4
  163. package/dist/{sessionProvider-DlWrak_l.cjs → sessionProvider-DksA6icp.cjs} +10 -10
  164. package/dist/{sessionProvider-DPwRzcbT.mjs → sessionProvider-iRLKuR9V.mjs} +10 -10
  165. package/dist/{sessionScanner-I6fGycPd.cjs → sessionScanner--X2Pzlra.cjs} +3 -3
  166. package/dist/{sessionScanner-BX7ZBVzX.mjs → sessionScanner-CAxiFc_3.mjs} +3 -3
  167. package/dist/{sessions-Cr0jIQ9r.cjs → sessions-BrnP53eO.cjs} +10 -10
  168. package/dist/{sessions-Csz0_dnz.mjs → sessions-Dca1UgiF.mjs} +10 -10
  169. package/dist/{setupOfflineReconnection-BawiOCUA.cjs → setupOfflineReconnection-Dwg6nHnP.cjs} +2 -2
  170. package/dist/{setupOfflineReconnection-Pxsr7M_B.mjs → setupOfflineReconnection-nguxOn4s.mjs} +2 -2
  171. package/dist/{spawn-C3wiREei.mjs → spawn-BJMU9zbZ.mjs} +14 -14
  172. package/dist/{spawn-Bfw10V7R.cjs → spawn-DDyMxQ7Z.cjs} +14 -14
  173. package/dist/{spawnAgents-Cm23BW-D.cjs → spawnAgents-B8GT4JQX.cjs} +1 -1
  174. package/dist/{spawnAgents-N3jxdNJC.mjs → spawnAgents-SeUX5gIq.mjs} +1 -1
  175. package/dist/{spawnHappyCLI-D4_Ij_BB.cjs → spawnHappyCLI-Cvk2ZMYj.cjs} +1 -1
  176. package/dist/{spawnHappyCLI-C9dzdAh0.mjs → spawnHappyCLI-DnT_QEdn.mjs} +1 -1
  177. package/dist/{startFileWatcher-905w_JCn.cjs → startFileWatcher-DLfkP-IW.cjs} +1 -1
  178. package/dist/{startFileWatcher-FjvRihwq.mjs → startFileWatcher-Djf0SdmK.mjs} +1 -1
  179. package/dist/{startupSessionCreate-WY7c74aG.cjs → startupSessionCreate-CxwJb5m9.cjs} +3 -3
  180. package/dist/{startupSessionCreate-B-QHA-nQ.mjs → startupSessionCreate-f1g6pp6E.mjs} +3 -3
  181. package/dist/{store-aa3CVNwS.cjs → store-D41VdZcL.cjs} +1 -1
  182. package/dist/{store-BlPvTr_Q.mjs → store-DnaIrYLA.mjs} +1 -1
  183. package/dist/{streamRelay-C2Lb2z39.cjs → streamRelay-BT9ew0Mk.cjs} +1 -1
  184. package/dist/{streamRelay-DFZyAPD_.mjs → streamRelay-DEBIU6Ak.mjs} +1 -1
  185. package/dist/{sync-Dz_U1UHu.cjs → sync-B-B5mc8Z.cjs} +1 -1
  186. package/dist/{sync-CHU9HM9N.mjs → sync-Dfr1zgLx.mjs} +1 -1
  187. package/dist/{systemPrompt-PHD2Va2G.mjs → systemPrompt-DAQq-bKB.mjs} +2 -2
  188. package/dist/{systemPrompt-NTIxM2Ss.cjs → systemPrompt-pxNDR5u8.cjs} +2 -2
  189. package/dist/{teams-CgT1c65s.mjs → teams-BuXDbvzq.mjs} +7 -7
  190. package/dist/{teams-CqoSWbrQ.cjs → teams-CBMB5SvT.cjs} +7 -7
  191. package/dist/{template-B1AORlgU.cjs → template-CB4gXtUX.cjs} +1 -1
  192. package/dist/{template-CJ8uLlD8.mjs → template-DE9JMShn.mjs} +1 -1
  193. package/dist/{time-BTXLicT9.cjs → time-DTaj0RVK.cjs} +1 -1
  194. package/dist/{time-DZ7wPlsL.mjs → time-PqfO1O58.mjs} +1 -1
  195. package/dist/{titleGenerator-DxSLdXjL.cjs → titleGenerator-BP5gqicG.cjs} +3 -3
  196. package/dist/{titleGenerator-BOcHO0fW.mjs → titleGenerator-DVnEGxoB.mjs} +2 -2
  197. package/dist/{todo-CqD6H2Bt.cjs → todo-BXsQ5-iD.cjs} +6 -6
  198. package/dist/{todo-kBweG4H9.mjs → todo-DaJPxDVT.mjs} +6 -6
  199. package/dist/{tools-DuXYIUTD.mjs → tools-B4W8kWU8.mjs} +1 -1
  200. package/dist/{tools-C7SRJVwy.cjs → tools-G3_fMSjb.cjs} +1 -1
  201. package/dist/{uninstall-WJYYM27v.mjs → uninstall-ByWgUWHg.mjs} +3 -3
  202. package/dist/{uninstall-DHdOrwHT.cjs → uninstall-C0pua8G4.cjs} +3 -3
  203. package/dist/{wrapperAccount-RPtq8BwD.mjs → wrapperAccount-BDeMsgbw.mjs} +2 -2
  204. package/dist/{wrapperAccount-BubTurHU.cjs → wrapperAccount-CsxMfnCK.cjs} +2 -2
  205. package/package.json +7 -7
  206. package/dist/selfCheck-BrC9vuGH.mjs +0 -88
@@ -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({
@@ -636,7 +637,7 @@ function agentProfileUnavailableReason(error) {
636
637
  return m ? m[1] : null;
637
638
  }
638
639
  const TeamPermissionModeSchema = z.z.enum(["default", "bypassPermissions"]);
639
- const id$3 = z.z.string().min(1).max(128);
640
+ const id$4 = z.z.string().min(1).max(128);
640
641
  const text$1 = z.z.string().min(1).max(32e3);
641
642
  const TeamAssistantSchema = z.z.enum(["claude", "codex", "pi-acp"]);
642
643
  const TeamModelSchema = z.z.string().trim().min(1).max(256);
@@ -648,50 +649,50 @@ const TeamActionSchema = z.z.discriminatedUnion("type", [
648
649
  z.z.object({ type: z.z.literal("set-defaults"), defaults: TeamDefaultsSchema }),
649
650
  z.z.object({ type: z.z.literal("set-permission-mode"), permissionMode: TeamPermissionModeSchema }),
650
651
  /** B-850d: a member's account for its next spawn (absent = follow the team default). An old server answers invalid action. */
651
- z.z.object({ type: z.z.literal("set-bot-account"), botId: id$3, agentProfile: AgentProfileChoiceSchema.optional() }),
652
- z.z.object({ type: z.z.literal("schedule-create"), name: id$3, botId: id$3, body: text$1, runAt: z.z.number().int().positive().max(864e13), intervalMs: z.z.number().int().min(6e4).max(366 * 864e5).optional() }),
653
- z.z.object({ type: z.z.literal("schedule-pause"), scheduleId: id$3, version: z.z.number().int().positive() }),
654
- z.z.object({ type: z.z.literal("schedule-resume"), scheduleId: id$3, version: z.z.number().int().positive() }),
655
- z.z.object({ type: z.z.literal("schedule-cancel"), scheduleId: id$3, version: z.z.number().int().positive() }),
656
- z.z.object({ type: z.z.literal("reconcile-operation"), operationId: id$3, claimId: id$3, note: z.z.string().trim().min(1).max(4e3) }),
652
+ z.z.object({ type: z.z.literal("set-bot-account"), botId: id$4, agentProfile: AgentProfileChoiceSchema.optional() }),
653
+ z.z.object({ type: z.z.literal("schedule-create"), name: id$4, botId: id$4, body: text$1, runAt: z.z.number().int().positive().max(864e13), intervalMs: z.z.number().int().min(6e4).max(366 * 864e5).optional() }),
654
+ z.z.object({ type: z.z.literal("schedule-pause"), scheduleId: id$4, version: z.z.number().int().positive() }),
655
+ z.z.object({ type: z.z.literal("schedule-resume"), scheduleId: id$4, version: z.z.number().int().positive() }),
656
+ z.z.object({ type: z.z.literal("schedule-cancel"), scheduleId: id$4, version: z.z.number().int().positive() }),
657
+ z.z.object({ type: z.z.literal("reconcile-operation"), operationId: id$4, claimId: id$4, note: z.z.string().trim().min(1).max(4e3) }),
657
658
  // B-689: owner asks the execution computer to run a failed/uncertain operation again.
658
- z.z.object({ type: z.z.literal("retry-operation"), operationId: id$3, claimId: id$3 }),
659
+ z.z.object({ type: z.z.literal("retry-operation"), operationId: id$4, claimId: id$4 }),
659
660
  /** B-730: `transfer` = the owner confirmed moving a session that is bound in another live team (Web adopt); without it the server answers `session_in_other_team`. An old server strips it. */
660
- z.z.object({ type: z.z.literal("join"), name: id$3, sessionId: id$3, botId: id$3.optional(), transfer: z.z.literal(true).optional() }),
661
- z.z.object({ type: z.z.literal("delegate"), goal: text$1, acceptance: z.z.array(text$1).min(1).max(32), parentTaskId: id$3.optional(), assigneeBotId: id$3.optional(), botName: id$3.optional(), directory: z.z.string().min(1).max(4096).optional(), assistant: TeamAssistantSchema.optional(), model: TeamModelSchema.optional(), agentProfile: AgentProfileChoiceSchema.optional() }),
662
- z.z.object({ type: z.z.literal("message"), taskId: id$3, body: text$1, recipientBotId: id$3.optional() }),
663
- z.z.object({ type: z.z.literal("submit"), taskId: id$3, attemptId: id$3, goalVersion: z.z.number().int().positive(), result: text$1 }),
664
- z.z.object({ type: z.z.literal("accept"), taskId: id$3, attemptId: id$3, goalVersion: z.z.number().int().positive() }),
665
- z.z.object({ type: z.z.literal("return"), taskId: id$3, attemptId: id$3, goalVersion: z.z.number().int().positive(), reason: text$1 }),
666
- z.z.object({ type: z.z.literal("cancel"), taskId: id$3, attemptId: id$3, goalVersion: z.z.number().int().positive(), reason: text$1 }),
667
- z.z.object({ type: z.z.literal("handoff"), taskId: id$3, attemptId: id$3, goalVersion: z.z.number().int().positive(), assigneeBotId: id$3 }),
668
- z.z.object({ type: z.z.literal("claim-operation"), operationId: id$3, machineId: id$3, teamLaunchVersion: z.z.literal(1).optional() }),
669
- z.z.object({ type: z.z.literal("complete-operation"), operationId: id$3, machineId: id$3, claimId: id$3, sessionId: id$3.optional(), workingDirectory: z.z.string().min(1).max(4096).optional() }),
661
+ z.z.object({ type: z.z.literal("join"), name: id$4, sessionId: id$4, botId: id$4.optional(), transfer: z.z.literal(true).optional() }),
662
+ z.z.object({ type: z.z.literal("delegate"), goal: text$1, acceptance: z.z.array(text$1).min(1).max(32), parentTaskId: id$4.optional(), assigneeBotId: id$4.optional(), botName: id$4.optional(), directory: z.z.string().min(1).max(4096).optional(), assistant: TeamAssistantSchema.optional(), model: TeamModelSchema.optional(), agentProfile: AgentProfileChoiceSchema.optional() }),
663
+ z.z.object({ type: z.z.literal("message"), taskId: id$4, body: text$1, recipientBotId: id$4.optional() }),
664
+ z.z.object({ type: z.z.literal("submit"), taskId: id$4, attemptId: id$4, goalVersion: z.z.number().int().positive(), result: text$1 }),
665
+ z.z.object({ type: z.z.literal("accept"), taskId: id$4, attemptId: id$4, goalVersion: z.z.number().int().positive() }),
666
+ z.z.object({ type: z.z.literal("return"), taskId: id$4, attemptId: id$4, goalVersion: z.z.number().int().positive(), reason: text$1 }),
667
+ z.z.object({ type: z.z.literal("cancel"), taskId: id$4, attemptId: id$4, goalVersion: z.z.number().int().positive(), reason: text$1 }),
668
+ z.z.object({ type: z.z.literal("handoff"), taskId: id$4, attemptId: id$4, goalVersion: z.z.number().int().positive(), assigneeBotId: id$4 }),
669
+ z.z.object({ type: z.z.literal("claim-operation"), operationId: id$4, machineId: id$4, teamLaunchVersion: z.z.literal(1).optional() }),
670
+ z.z.object({ type: z.z.literal("complete-operation"), operationId: id$4, machineId: id$4, claimId: id$4, sessionId: id$4.optional(), workingDirectory: z.z.string().min(1).max(4096).optional() }),
670
671
  z.z.object({
671
672
  type: z.z.literal("fail-operation"),
672
- operationId: id$3,
673
- machineId: id$3,
674
- claimId: id$3,
673
+ operationId: id$4,
674
+ machineId: id$4,
675
+ claimId: id$4,
675
676
  error: text$1,
676
677
  unknown: z.z.boolean().optional(),
677
678
  /** B-775: a failed cleanup whose wrapper was already stopped (only resources retained). */
678
679
  sessionStopped: z.z.boolean().optional()
679
680
  }),
680
- z.z.object({ type: z.z.literal("session-event"), sessionId: id$3, event: z.z.enum(["idle", "blocked", "exited"]) }),
681
- z.z.object({ type: z.z.literal("message-delivered"), messageId: id$3, recipientBotId: id$3, generation: z.z.number().int().positive(), sessionId: id$3 })
681
+ z.z.object({ type: z.z.literal("session-event"), sessionId: id$4, event: z.z.enum(["idle", "blocked", "exited"]) }),
682
+ z.z.object({ type: z.z.literal("message-delivered"), messageId: id$4, recipientBotId: id$4, generation: z.z.number().int().positive(), sessionId: id$4 })
682
683
  ]);
683
- z.z.object({ requestId: id$3, action: TeamActionSchema });
684
+ z.z.object({ requestId: id$4, action: TeamActionSchema });
684
685
  const TeamProjectChoiceSchema = z.z.object({
685
- projectId: id$3.optional(),
686
- inheritFromSessionId: id$3.optional(),
686
+ projectId: id$4.optional(),
687
+ inheritFromSessionId: id$4.optional(),
687
688
  create: z.z.boolean().optional(),
688
689
  directory: z.z.string().min(1).max(4096).optional()
689
690
  });
690
- z.z.object({ name: id$3, machineId: id$3, requestId: id$3.optional(), launch: TeamLaunchSchema.optional(), project: TeamProjectChoiceSchema.optional(), sessionId: id$3.optional(), transfer: z.z.literal(true).optional() });
691
+ z.z.object({ name: id$4, machineId: id$4, requestId: id$4.optional(), launch: TeamLaunchSchema.optional(), project: TeamProjectChoiceSchema.optional(), sessionId: id$4.optional(), transfer: z.z.literal(true).optional() });
691
692
  z.z.object({
692
- projectId: id$3.nullable().optional(),
693
+ projectId: id$4.nullable().optional(),
693
694
  create: z.z.boolean().optional(),
694
- requestId: id$3.optional()
695
+ requestId: id$4.optional()
695
696
  }).refine((v) => v.projectId !== void 0 !== (v.create === true), "exactly one of projectId / create");
696
697
  const TEAM_WORKTREE = /\/teams\/worktrees\/([^/]+)(?:\/|$)/;
697
698
  function teamWorktreeId(path) {
@@ -708,7 +709,7 @@ function rebaseTeamWorktreePath(path, repository) {
708
709
  const rest = normalized.slice(match.index + match[0].length).replace(/\/+$/, "");
709
710
  return rest ? `${repository.replace(/\/+$/, "")}/${rest}` : repository;
710
711
  }
711
- const id$2 = z.z.string().min(1).max(128);
712
+ const id$3 = z.z.string().min(1).max(128);
712
713
  const text = z.z.string().min(1).max(32e3);
713
714
  const AUTOMATION_NAME_PATTERN = /^[a-z0-9][a-z0-9-_.]{0,63}$/;
714
715
  const AutomationNameSchema = z.z.string().regex(AUTOMATION_NAME_PATTERN, "automation name must match [a-z0-9][a-z0-9-_.]{0,63}");
@@ -750,7 +751,7 @@ const AutomationActionSchema = z.z.discriminatedUnion("kind", [
750
751
  /** B-850d: the account the run uses (absent = project default > machine default; null = machine login). An older daemon ignores it. */
751
752
  agentProfile: AgentProfileChoiceSchema.optional()
752
753
  }),
753
- z.z.object({ kind: z.z.literal("send"), sessionId: id$2, prompt: text }),
754
+ z.z.object({ kind: z.z.literal("send"), sessionId: id$3, prompt: text }),
754
755
  z.z.object({
755
756
  kind: z.z.literal("script"),
756
757
  command: z.z.array(z.z.string().min(1).max(4096)).min(1).max(256),
@@ -776,7 +777,7 @@ const maxRuntimeMs = z.z.number().int().min(6e4).max(7 * 864e5);
776
777
  z.z.object({
777
778
  name: AutomationNameSchema,
778
779
  description: z.z.string().max(4e3).nullable().optional(),
779
- machineId: id$2,
780
+ machineId: id$3,
780
781
  trigger: AutomationTriggerSchema,
781
782
  action: AutomationActionSchema,
782
783
  concurrency: AutomationConcurrencySchema.optional(),
@@ -785,13 +786,13 @@ z.z.object({
785
786
  /** B-548. Older servers strip it silently — clients must check the response echoes `precheck`. */
786
787
  precheck: AutomationPrecheckSchema.nullable().optional(),
787
788
  /** B-644: sessions this automation spawns join this project (quiet variant). Older servers strip it — check the echo. */
788
- projectId: id$2.nullable().optional()
789
+ projectId: id$3.nullable().optional()
789
790
  });
790
791
  z.z.object({
791
792
  version: z.z.number().int().positive(),
792
793
  name: AutomationNameSchema.optional(),
793
794
  description: z.z.string().max(4e3).nullable().optional(),
794
- machineId: id$2.optional(),
795
+ machineId: id$3.optional(),
795
796
  trigger: AutomationTriggerSchema.optional(),
796
797
  action: AutomationActionSchema.optional(),
797
798
  concurrency: AutomationConcurrencySchema.optional(),
@@ -799,22 +800,22 @@ z.z.object({
799
800
  /** B-548: omitted keeps the current precheck, `null` removes it. Changing `action` alone keeps it too. */
800
801
  precheck: AutomationPrecheckSchema.nullable().optional(),
801
802
  /** B-644: omitted keeps the current project, `null` detaches. */
802
- projectId: id$2.nullable().optional()
803
+ projectId: id$3.nullable().optional()
803
804
  });
804
805
  const payload = z.z.string().max(AUTOMATION_PAYLOAD_MAX_BYTES).refine((v) => new TextEncoder().encode(v).length <= AUTOMATION_PAYLOAD_MAX_BYTES, "payload exceeds 64KB");
805
806
  z.z.object({ payload: payload.optional(), dedupeKey: z.z.string().min(1).max(256).optional() });
806
807
  z.z.object({ payload: payload.optional() });
807
808
  z.z.object({
808
- machineId: id$2,
809
+ machineId: id$3,
809
810
  limit: z.z.number().int().min(1).max(AUTOMATION_CLAIM_MAX_RUNS).optional(),
810
811
  leaseMs: z.z.number().int().min(5e3).max(36e5).optional(),
811
812
  /** B-548: what this daemon can execute (e.g. `precheck`). Older daemons send nothing; older servers strip it. */
812
813
  capabilities: z.z.array(z.z.string().min(1).max(64)).max(32).optional()
813
814
  });
814
815
  z.z.object({
815
- claimId: id$2.optional(),
816
+ claimId: id$3.optional(),
816
817
  status: z.z.enum(["running", "done", "failed", "skipped"]).optional(),
817
- sessionId: id$2.nullable().optional(),
818
+ sessionId: id$3.nullable().optional(),
818
819
  stickyKey: z.z.string().min(1).max(512).optional(),
819
820
  summary: z.z.string().max(AUTOMATION_SUMMARY_MAX_CHARS).nullable().optional(),
820
821
  error: z.z.string().max(AUTOMATION_SUMMARY_MAX_CHARS).nullable().optional(),
@@ -824,16 +825,16 @@ z.z.object({
824
825
  leaseMs: z.z.number().int().min(5e3).max(36e5).optional()
825
826
  });
826
827
  z.z.object({ by: z.z.string().min(1).max(64).optional() });
827
- z.z.object({ key: z.z.string().min(1).max(512), sessionId: id$2 });
828
+ z.z.object({ key: z.z.string().min(1).max(512), sessionId: id$3 });
828
829
  z.z.object({ key: z.z.string().min(1).max(512) });
829
830
  z.z.object({
830
- automationId: id$2.optional(),
831
+ automationId: id$3.optional(),
831
832
  name: AutomationNameSchema.optional(),
832
833
  status: z.z.string().min(1).max(64).optional(),
833
834
  attention: z.z.enum(["1", "true", "0", "false"]).optional(),
834
835
  limit: z.z.coerce.number().int().min(1).max(200).optional()
835
836
  });
836
- z.z.object({ machineId: id$2.optional() });
837
+ z.z.object({ machineId: id$3.optional() });
837
838
  const PROJECT_SESSION_CAPABILITY = "project-v1";
838
839
  const PROJECT_LIMITS = {
839
840
  nameChars: 120,
@@ -845,11 +846,11 @@ const PROJECT_LIMITS = {
845
846
  messageBytes: 64 * 1024,
846
847
  presenceBatch: 200,
847
848
  memberBatch: 200};
848
- const id$1 = z.z.string().min(1).max(128);
849
- const utf8Bytes = (value) => new TextEncoder().encode(value).length;
850
- const boundedText = (maxBytes) => z.z.string().max(maxBytes).refine((v) => utf8Bytes(v) <= maxBytes, `exceeds ${maxBytes} bytes`);
849
+ const id$2 = z.z.string().min(1).max(128);
850
+ const utf8Bytes$1 = (value) => new TextEncoder().encode(value).length;
851
+ const boundedText$1 = (maxBytes) => z.z.string().max(maxBytes).refine((v) => utf8Bytes$1(v) <= maxBytes, `exceeds ${maxBytes} bytes`);
851
852
  const ProjectFolderSchema = z.z.object({
852
- machineId: id$1,
853
+ machineId: id$2,
853
854
  path: z.z.string().min(1).max(4096),
854
855
  primary: z.z.boolean().optional()
855
856
  });
@@ -863,17 +864,17 @@ const ProjectDefaultsSchema = z.z.object({
863
864
  });
864
865
  const PROJECT_LOG_KINDS = ["decision", "finding", "handoff"];
865
866
  const ProjectLogKindSchema = z.z.enum(PROJECT_LOG_KINDS);
866
- const ProjectMemberViaInputSchema = z.z.enum(["explicit", "lineage", "suggested-accepted", "automation"]);
867
+ const ProjectMemberViaInputSchema = z.z.enum(["explicit", "lineage", "suggested-accepted", "automation", "issue"]);
867
868
  z.z.object({
868
869
  name: z.z.string().trim().min(1).max(PROJECT_LIMITS.nameChars),
869
870
  goal: z.z.string().max(PROJECT_LIMITS.goalChars).nullable().optional(),
870
- instructions: boundedText(PROJECT_LIMITS.instructionsBytes).optional(),
871
+ instructions: boundedText$1(PROJECT_LIMITS.instructionsBytes).optional(),
871
872
  folders: z.z.array(ProjectFolderSchema).max(PROJECT_LIMITS.folders).optional(),
872
873
  defaults: ProjectDefaultsSchema.optional(),
873
874
  /** Idempotency: the same requestId returns the project it created. */
874
- requestId: id$1.optional(),
875
+ requestId: id$2.optional(),
875
876
  /** Optional initial members (e.g. "设为项目" moves a folder's sessions in one step). */
876
- sessionIds: z.z.array(id$1).max(PROJECT_LIMITS.memberBatch).optional()
877
+ sessionIds: z.z.array(id$2).max(PROJECT_LIMITS.memberBatch).optional()
877
878
  });
878
879
  z.z.object({
879
880
  name: z.z.string().trim().min(1).max(PROJECT_LIMITS.nameChars).optional(),
@@ -883,31 +884,31 @@ z.z.object({
883
884
  archived: z.z.boolean().optional()
884
885
  });
885
886
  z.z.object({
886
- instructions: boundedText(PROJECT_LIMITS.instructionsBytes),
887
+ instructions: boundedText$1(PROJECT_LIMITS.instructionsBytes),
887
888
  ifVersion: z.z.number().int().min(0),
888
889
  /** One-line summary shown in the next-turn digest ("instructions now v8 — …"). */
889
890
  summary: z.z.string().max(200).optional()
890
891
  });
891
892
  z.z.object({
892
- sessionIds: z.z.array(id$1).min(1).max(PROJECT_LIMITS.memberBatch),
893
+ sessionIds: z.z.array(id$2).min(1).max(PROJECT_LIMITS.memberBatch),
893
894
  via: ProjectMemberViaInputSchema.optional()
894
895
  });
895
896
  z.z.object({
896
897
  kind: ProjectLogKindSchema,
897
898
  title: z.z.string().trim().min(1).max(PROJECT_LIMITS.logTitleChars),
898
- body: boundedText(PROJECT_LIMITS.logBodyBytes).optional(),
899
+ body: boundedText$1(PROJECT_LIMITS.logBodyBytes).optional(),
899
900
  /** Entry id (or `#seq`) this entry replaces. */
900
901
  supersedes: z.z.string().min(1).max(128).optional(),
901
902
  /** Stamped by the wrapper (the agent cannot fill it). Absent = written by the user. */
902
- authorSessionId: id$1.optional()
903
+ authorSessionId: id$2.optional()
903
904
  });
904
905
  z.z.object({
905
906
  /** When set, only entries this session authored may be revoked. Absent = the owner. */
906
- bySessionId: id$1.optional()
907
+ bySessionId: id$2.optional()
907
908
  });
908
- z.z.object({ teamId: id$1 });
909
+ z.z.object({ teamId: id$2 });
909
910
  const ProjectPresenceEntrySchema = z.z.object({
910
- sessionId: id$1,
911
+ sessionId: id$2,
911
912
  title: z.z.string().max(200).nullable().optional(),
912
913
  agent: z.z.string().max(64).nullable().optional(),
913
914
  machine: z.z.string().max(200).nullable().optional(),
@@ -919,19 +920,19 @@ const ProjectPresenceEntrySchema = z.z.object({
919
920
  capabilities: z.z.array(z.z.string().max(64)).max(32).optional()
920
921
  });
921
922
  z.z.object({
922
- machineId: id$1,
923
+ machineId: id$2,
923
924
  sessions: z.z.array(ProjectPresenceEntrySchema).max(PROJECT_LIMITS.presenceBatch),
924
925
  /** Sessions of this machine that stopped; their presence rows are marked `offline`. */
925
- gone: z.z.array(id$1).max(PROJECT_LIMITS.presenceBatch).optional()
926
+ gone: z.z.array(id$2).max(PROJECT_LIMITS.presenceBatch).optional()
926
927
  });
927
928
  z.z.object({
928
- fromSessionId: id$1,
929
- toSessionId: id$1,
930
- body: boundedText(PROJECT_LIMITS.messageBytes).pipe(z.z.string().min(1))
929
+ fromSessionId: id$2,
930
+ toSessionId: id$2,
931
+ body: boundedText$1(PROJECT_LIMITS.messageBytes).pipe(z.z.string().min(1))
931
932
  });
932
933
  z.z.object({
933
- sessionId: id$1,
934
- messageIds: z.z.array(id$1).min(1).max(100)
934
+ sessionId: id$2,
935
+ messageIds: z.z.array(id$2).min(1).max(100)
935
936
  });
936
937
  z.z.object({
937
938
  full: z.z.enum(["0", "1", "true", "false"]).optional(),
@@ -1454,17 +1455,17 @@ function resolveLatestModel(table, agent, ctx) {
1454
1455
  const tier = getLatestModelTier(table, agent);
1455
1456
  if (!tier) return { model: null, newest: null, label: null, limited: false, configured: null };
1456
1457
  const catalogIds = catalogTierIds(tier, ctx.catalog);
1457
- const labels = /* @__PURE__ */ new Map();
1458
+ const labels2 = /* @__PURE__ */ new Map();
1458
1459
  const known = [];
1459
1460
  const runnable = [];
1460
1461
  for (const entry of tier.models) {
1461
1462
  if (!tierVersion(tier, entry.model)) continue;
1462
- labels.set(entry.model, entry.label ?? entry.model);
1463
+ labels2.set(entry.model, entry.label ?? entry.model);
1463
1464
  known.push(entry.model);
1464
1465
  if (entryRunnable(entry, ctx, catalogIds)) runnable.push(entry.model);
1465
1466
  }
1466
- for (const [id2, label] of catalogIds) {
1467
- if (!labels.has(id2)) labels.set(id2, label);
1467
+ for (const [id2, label2] of catalogIds) {
1468
+ if (!labels2.has(id2)) labels2.set(id2, label2);
1468
1469
  known.push(id2);
1469
1470
  runnable.push(id2);
1470
1471
  }
@@ -1488,7 +1489,7 @@ function resolveLatestModel(table, agent, ctx) {
1488
1489
  return {
1489
1490
  model,
1490
1491
  newest,
1491
- label: model ? labels.get(model) ?? model : null,
1492
+ label: model ? labels2.get(model) ?? model : null,
1492
1493
  limited: newest !== null && !sameVersion,
1493
1494
  configured: null
1494
1495
  };
@@ -1650,7 +1651,7 @@ const ATTENTION_LIMITS = {
1650
1651
  /** Open `needsOwner` items per session before the playbook asks the lead to merge or drop stale ones (§5.1 rule 6). */
1651
1652
  openPerSessionSoftCap: 5
1652
1653
  };
1653
- const ATTENTION_SOURCES = ["lead", "agent", "owner", "automation", "team"];
1654
+ const ATTENTION_SOURCES = ["lead", "agent", "owner", "automation", "team", "issue"];
1654
1655
  const ATTENTION_KINDS = ["decision", "todo", "blocked", "report", "answer", "question", "request", "pin"];
1655
1656
  const OWNER_BOARD_POST_KINDS = ["decision", "todo", "report", "answer"];
1656
1657
  const OWNER_BOARD_RESOLVE_OUTCOMES = ["done", "answered", "dropped", "superseded"];
@@ -1658,11 +1659,11 @@ const ATTENTION_BOARD_LOCAL_ID_PREFIX = "board-";
1658
1659
  function isAttentionBoardLocalId(localId) {
1659
1660
  return typeof localId === "string" && localId.startsWith(ATTENTION_BOARD_LOCAL_ID_PREFIX);
1660
1661
  }
1661
- const id = z.z.string().min(1).max(128);
1662
- const title = z.z.string().trim().min(1).max(ATTENTION_LIMITS.titleChars);
1662
+ const id$1 = z.z.string().min(1).max(128);
1663
+ const title$1 = z.z.string().trim().min(1).max(ATTENTION_LIMITS.titleChars);
1663
1664
  const bodyMd = z.z.string().max(ATTENTION_LIMITS.bodyBytes * 4).refine((v) => new TextEncoder().encode(v).length <= ATTENTION_LIMITS.bodyBytes, "body exceeds 8KB");
1664
1665
  const note = z.z.string().max(ATTENTION_LIMITS.noteChars);
1665
- const requestId = z.z.string().min(1).max(128);
1666
+ const requestId$1 = z.z.string().min(1).max(128);
1666
1667
  const key = z.z.string().min(1).max(ATTENTION_LIMITS.keyChars);
1667
1668
  const AttentionOptionSchema = z.z.object({
1668
1669
  id: z.z.string().trim().min(1).max(ATTENTION_LIMITS.optionIdChars),
@@ -1671,7 +1672,7 @@ const AttentionOptionSchema = z.z.object({
1671
1672
  recommended: z.z.boolean().optional()
1672
1673
  });
1673
1674
  const options = z.z.array(AttentionOptionSchema).min(ATTENTION_LIMITS.options.min).max(ATTENTION_LIMITS.options.max).refine((o) => new Set(o.map((x) => x.id)).size === o.length, "option ids must be unique");
1674
- const ATTENTION_LINK_TYPES = ["task", "pr", "commit", "url", "panel"];
1675
+ const ATTENTION_LINK_TYPES = ["task", "pr", "commit", "url", "panel", "issue"];
1675
1676
  const AttentionLinkSchema = z.z.object({
1676
1677
  type: z.z.enum(ATTENTION_LINK_TYPES),
1677
1678
  ref: z.z.string().trim().min(1).max(ATTENTION_LIMITS.linkRefChars),
@@ -1722,17 +1723,17 @@ z.z.object({
1722
1723
  item: AttentionItemSchema
1723
1724
  });
1724
1725
  z.z.object({
1725
- sessionId: id,
1726
+ sessionId: id$1,
1726
1727
  source: z.z.enum(ATTENTION_SOURCES),
1727
1728
  kind: z.z.enum(ATTENTION_KINDS),
1728
- title,
1729
+ title: title$1,
1729
1730
  bodyMd: bodyMd.optional(),
1730
1731
  options: options.optional(),
1731
1732
  links: links.optional(),
1732
1733
  anchor: AttentionAnchorSchema.optional(),
1733
- replyToId: id.optional(),
1734
+ replyToId: id$1.optional(),
1734
1735
  key: key.optional(),
1735
- requestId: requestId.optional(),
1736
+ requestId: requestId$1.optional(),
1736
1737
  /**
1737
1738
  * D5 draft: only the CLI's auto-detect path sets it (`owner_board_post` does
1738
1739
  * not expose it). A repost of the key with `false` confirms the draft (and
@@ -1741,7 +1742,7 @@ z.z.object({
1741
1742
  inferred: z.z.boolean().default(false)
1742
1743
  }).refine((p) => p.kind !== "decision" || p.options !== void 0, { message: "decision needs 2-4 options", path: ["options"] });
1743
1744
  z.z.object({
1744
- title: title.optional(),
1745
+ title: title$1.optional(),
1745
1746
  bodyMd: bodyMd.nullable().optional(),
1746
1747
  appendMd: bodyMd.optional(),
1747
1748
  options: options.nullable().optional(),
@@ -1750,14 +1751,14 @@ z.z.object({
1750
1751
  kind: z.z.literal("request").optional(),
1751
1752
  state: z.z.enum(["open", "in_progress", "answered"]).optional(),
1752
1753
  firstReply: AttentionAnchorSchema.optional(),
1753
- requestId: requestId.optional()
1754
+ requestId: requestId$1.optional()
1754
1755
  }).refine((p) => !(p.bodyMd !== void 0 && p.appendMd !== void 0), "use bodyMd or appendMd, not both");
1755
1756
  z.z.object({
1756
1757
  outcome: z.z.enum(OWNER_BOARD_RESOLVE_OUTCOMES),
1757
1758
  note: note.optional(),
1758
1759
  /** Defaults to `lead`. */
1759
1760
  by: z.z.enum(["lead", "auto-first-reply"]).optional(),
1760
- requestId: requestId.optional()
1761
+ requestId: requestId$1.optional()
1761
1762
  });
1762
1763
  z.z.discriminatedUnion("action", [
1763
1764
  z.z.object({ action: z.z.literal("choose"), choice: z.z.string().trim().min(1).max(ATTENTION_LIMITS.optionIdChars), note: note.optional() }),
@@ -1765,7 +1766,7 @@ z.z.discriminatedUnion("action", [
1765
1766
  z.z.object({ action: z.z.literal("reopen"), note: note.optional() })
1766
1767
  ]);
1767
1768
  z.z.object({
1768
- sessionId: id.optional(),
1769
+ sessionId: id$1.optional(),
1769
1770
  /** `open` (default) = open + in_progress; `active` adds the latest `answered`; `all` = everything. */
1770
1771
  state: z.z.enum(["open", "active", "all"]).optional(),
1771
1772
  needsOwner: z.z.enum(["1", "true", "0", "false"]).optional(),
@@ -1775,30 +1776,30 @@ z.z.object({
1775
1776
  });
1776
1777
  const OwnerBoardPostInputSchema = z.z.object({
1777
1778
  kind: z.z.enum(OWNER_BOARD_POST_KINDS),
1778
- title,
1779
+ title: title$1,
1779
1780
  body_md: bodyMd.optional(),
1780
1781
  options: options.optional(),
1781
1782
  links: links.optional(),
1782
- reply_to: id.optional(),
1783
+ reply_to: id$1.optional(),
1783
1784
  key: key.optional(),
1784
1785
  anchor: z.z.union([z.z.literal("this_turn"), z.z.object({ localId: z.z.string().min(1).max(256) })]).optional(),
1785
- request_id: requestId
1786
+ request_id: requestId$1
1786
1787
  }).refine((p) => p.kind !== "decision" || p.options !== void 0, { message: "decision needs 2-4 options", path: ["options"] });
1787
1788
  const OwnerBoardUpdateInputSchema = z.z.object({
1788
- id,
1789
- title: title.optional(),
1789
+ id: id$1,
1790
+ title: title$1.optional(),
1790
1791
  body_md: bodyMd.optional(),
1791
1792
  append_md: bodyMd.optional(),
1792
1793
  options: options.optional(),
1793
1794
  links: links.optional(),
1794
1795
  state: z.z.enum(["open", "in_progress"]).optional(),
1795
- request_id: requestId
1796
+ request_id: requestId$1
1796
1797
  }).refine((p) => !(p.body_md !== void 0 && p.append_md !== void 0), "use body_md or append_md, not both");
1797
1798
  const OwnerBoardResolveInputSchema = z.z.object({
1798
- id,
1799
+ id: id$1,
1799
1800
  outcome: z.z.enum(OWNER_BOARD_RESOLVE_OUTCOMES),
1800
1801
  note: note.optional(),
1801
- request_id: requestId
1802
+ request_id: requestId$1
1802
1803
  });
1803
1804
  const OwnerBoardListInputSchema = z.z.object({
1804
1805
  state: z.z.enum(["open", "all"]).optional(),
@@ -1821,6 +1822,173 @@ function ownerBoardPostToRest(sessionId, input, anchor) {
1821
1822
  inferred: false
1822
1823
  };
1823
1824
  }
1825
+ const ISSUE_LIMITS = {
1826
+ titleChars: 300,
1827
+ descriptionBytes: 32 * 1024,
1828
+ commentBytes: 16 * 1024,
1829
+ labels: 16,
1830
+ labelChars: 40,
1831
+ /** Distinct agents one comment may @ (each becomes a delivery or a run). */
1832
+ mentionsPerComment: 3,
1833
+ listMax: 500};
1834
+ const ISSUE_STATUSES = ["backlog", "todo", "in_progress", "in_review", "blocked", "done", "cancelled"];
1835
+ const ISSUE_PRIORITIES = ["urgent", "high", "medium", "low", "none"];
1836
+ const ISSUE_AGENT_STATUSES = ["in_progress", "in_review", "blocked"];
1837
+ const ISSUE_ASSIGNABLE_AGENTS = ["claude", "codex", "pi"];
1838
+ const ISSUE_ASSIGNEE_KINDS = ["none", "self", "agent", "team"];
1839
+ const id = z.z.string().min(1).max(128);
1840
+ const requestId = z.z.string().min(1).max(128);
1841
+ const utf8Bytes = (value) => new TextEncoder().encode(value).length;
1842
+ const boundedText = (maxBytes) => z.z.string().max(maxBytes).refine((v) => utf8Bytes(v) <= maxBytes, `exceeds ${maxBytes} bytes`);
1843
+ const title = z.z.string().trim().min(1).max(ISSUE_LIMITS.titleChars);
1844
+ const description = boundedText(ISSUE_LIMITS.descriptionBytes);
1845
+ const commentBody = boundedText(ISSUE_LIMITS.commentBytes).pipe(z.z.string().trim().min(1));
1846
+ const label = z.z.string().trim().min(1).max(ISSUE_LIMITS.labelChars);
1847
+ const labels = z.z.array(label).max(ISSUE_LIMITS.labels);
1848
+ const epochMs = z.z.number().int().min(0).max(864e13);
1849
+ const IssueAgentAssigneeSchema = z.z.object({
1850
+ kind: z.z.literal("agent"),
1851
+ machineId: id,
1852
+ agent: z.z.enum(ISSUE_ASSIGNABLE_AGENTS),
1853
+ agentProfile: AgentProfileChoiceSchema.optional(),
1854
+ model: z.z.string().trim().min(1).max(256).nullable().optional(),
1855
+ permissionMode: z.z.string().trim().min(1).max(64).nullable().optional(),
1856
+ directory: z.z.string().min(1).max(4096).optional(),
1857
+ /** Reserved: run each issue in its own worktree (team-style). Phase 1 servers store it; the daemon ignores it until spec §3.6 lands. */
1858
+ worktree: z.z.boolean().optional()
1859
+ });
1860
+ const IssueAssigneeSchema = z.z.discriminatedUnion("kind", [
1861
+ z.z.object({ kind: z.z.literal("none") }),
1862
+ z.z.object({ kind: z.z.literal("self") }),
1863
+ IssueAgentAssigneeSchema,
1864
+ /** Phase 3; accepted by the schema so the contract is stable, refused by a phase-1 server. */
1865
+ z.z.object({ kind: z.z.literal("team"), teamId: id })
1866
+ ]);
1867
+ const IssueMentionSchema = z.z.discriminatedUnion("kind", [
1868
+ z.z.object({ kind: z.z.literal("agent"), agent: z.z.enum(ISSUE_ASSIGNABLE_AGENTS), machineId: id.optional() }),
1869
+ /** Written by the server from an agent's `issue_comment({ mention_owner: true })`; a client may not send it. */
1870
+ z.z.object({ kind: z.z.literal("owner") })
1871
+ ]);
1872
+ const humanMentions = z.z.array(IssueMentionSchema).max(ISSUE_LIMITS.mentionsPerComment).refine((list) => list.every((m) => m.kind === "agent"), "only agent mentions may be sent");
1873
+ z.z.object({
1874
+ title,
1875
+ description: description.optional(),
1876
+ /** Default: `todo` when assigned to an agent, otherwise `backlog`. */
1877
+ status: z.z.enum(ISSUE_STATUSES).optional(),
1878
+ priority: z.z.enum(ISSUE_PRIORITIES).optional(),
1879
+ assignee: IssueAssigneeSchema.optional(),
1880
+ projectId: id.nullable().optional(),
1881
+ labels: labels.optional(),
1882
+ dueAt: epochMs.nullable().optional(),
1883
+ parentId: id.nullable().optional(),
1884
+ /** Idempotency: the same requestId returns the issue it created. */
1885
+ requestId: requestId.optional()
1886
+ });
1887
+ z.z.object({
1888
+ title: title.optional(),
1889
+ description: description.optional(),
1890
+ status: z.z.enum(ISSUE_STATUSES).optional(),
1891
+ priority: z.z.enum(ISSUE_PRIORITIES).optional(),
1892
+ assignee: IssueAssigneeSchema.optional(),
1893
+ projectId: id.nullable().optional(),
1894
+ labels: labels.optional(),
1895
+ dueAt: epochMs.nullable().optional(),
1896
+ parentId: id.nullable().optional(),
1897
+ /** Fractional board order within a status column. */
1898
+ sortOrder: z.z.number().finite().optional(),
1899
+ ifVersion: z.z.number().int().min(1).optional()
1900
+ });
1901
+ z.z.object({
1902
+ body: commentBody,
1903
+ mentions: humanMentions.optional(),
1904
+ /** A session this comment quotes / refers to (shown as a chip). */
1905
+ refSessionId: id.optional(),
1906
+ requestId: requestId.optional()
1907
+ });
1908
+ z.z.object({
1909
+ assignee: IssueAgentAssigneeSchema.optional(),
1910
+ /** Also make it the issue's assignee (換 agent). */
1911
+ reassign: z.z.boolean().optional(),
1912
+ requestId: requestId.optional()
1913
+ });
1914
+ z.z.object({ archiveSession: z.z.boolean().optional() });
1915
+ z.z.object({});
1916
+ z.z.object({
1917
+ status: z.z.string().max(200).optional(),
1918
+ projectId: id.optional(),
1919
+ assigneeKind: z.z.enum(ISSUE_ASSIGNEE_KINDS).optional(),
1920
+ label: label.optional(),
1921
+ priority: z.z.string().max(100).optional(),
1922
+ q: z.z.string().max(200).optional(),
1923
+ updatedSince: z.z.coerce.number().int().min(0).optional(),
1924
+ includeDeleted: z.z.enum(["0", "1", "true", "false"]).optional(),
1925
+ limit: z.z.coerce.number().int().min(1).max(ISSUE_LIMITS.listMax).optional(),
1926
+ cursor: z.z.string().max(256).optional()
1927
+ });
1928
+ z.z.object({
1929
+ sessionId: id,
1930
+ status: z.z.enum(ISSUE_AGENT_STATUSES).optional(),
1931
+ comment: commentBody.optional(),
1932
+ requestId: requestId.optional()
1933
+ }).refine((v) => v.status !== void 0 || v.comment !== void 0, "status or comment required");
1934
+ z.z.object({
1935
+ sessionId: id,
1936
+ body: commentBody,
1937
+ mentionOwner: z.z.boolean().optional(),
1938
+ requestId: requestId.optional()
1939
+ });
1940
+ z.z.object({
1941
+ machineId: id,
1942
+ workerVersion: z.z.coerce.number().int().min(1)
1943
+ });
1944
+ z.z.object({ machineId: id });
1945
+ z.z.object({
1946
+ machineId: id,
1947
+ claimId: id,
1948
+ /** `spawn`: the new session. `message`: the session it was delivered to. */
1949
+ sessionId: id
1950
+ });
1951
+ z.z.object({
1952
+ machineId: id,
1953
+ claimId: id,
1954
+ error: z.z.string().min(1).max(4e3),
1955
+ /** True when the outcome is unknown (e.g. timeout after the spawn RPC); the server keeps the run `claimed` for owner retry instead of failing it. */
1956
+ unknown: z.z.boolean().optional()
1957
+ });
1958
+ z.z.object({
1959
+ machineId: id,
1960
+ sessionId: id,
1961
+ event: z.z.enum(["running", "idle", "exited", "crashed"])
1962
+ });
1963
+ z.z.object({
1964
+ /** `VH-12` / id; absent = the issue this session is bound to. */
1965
+ issue: z.z.string().min(1).max(128).optional()
1966
+ });
1967
+ z.z.object({
1968
+ status: z.z.enum(ISSUE_AGENT_STATUSES).optional(),
1969
+ comment: z.z.string().min(1).max(ISSUE_LIMITS.commentBytes).optional()
1970
+ }).refine((v) => v.status !== void 0 || v.comment !== void 0, "status or comment required");
1971
+ z.z.object({
1972
+ body: z.z.string().min(1).max(ISSUE_LIMITS.commentBytes),
1973
+ mention_owner: z.z.boolean().optional()
1974
+ });
1975
+ z.z.object({
1976
+ status: z.z.array(z.z.enum(ISSUE_STATUSES)).max(ISSUE_STATUSES.length).optional(),
1977
+ project: z.z.enum(["current", "any"]).optional(),
1978
+ limit: z.z.number().int().min(1).max(50).optional()
1979
+ });
1980
+ z.z.object({
1981
+ t: z.z.literal("issue"),
1982
+ issue: z.z.object({ id: z.z.string(), version: z.z.number() }).passthrough()
1983
+ });
1984
+ z.z.object({
1985
+ t: z.z.literal("issue-comment"),
1986
+ comment: z.z.object({ id: z.z.string(), issueId: z.z.string() }).passthrough()
1987
+ });
1988
+ z.z.object({
1989
+ t: z.z.literal("issue-run"),
1990
+ run: z.z.object({ id: z.z.string(), issueId: z.z.string(), status: z.z.string() }).passthrough()
1991
+ });
1824
1992
  const SYNC_HELLO_MAX_REQUEST_SUBS = 64;
1825
1993
  const sessionIdSchema = z__namespace.string().min(1).max(128);
1826
1994
  const afterSeqSchema = z__namespace.number().int().min(0).nullable();
@@ -1951,6 +2119,7 @@ exports.BUILTIN_TODO_SKILL = BUILTIN_TODO_SKILL;
1951
2119
  exports.CLAUDE_CONFIG_MODEL_CAPABILITY = CLAUDE_CONFIG_MODEL_CAPABILITY;
1952
2120
  exports.CODEX_BTW_CAPABILITY = CODEX_BTW_CAPABILITY;
1953
2121
  exports.CODEX_COMPACT_CAPABILITY = CODEX_COMPACT_CAPABILITY;
2122
+ exports.CODEX_LIVE_PERMISSION_CAPABILITY = CODEX_LIVE_PERMISSION_CAPABILITY;
1954
2123
  exports.CODEX_STEER_CAPABILITY = CODEX_STEER_CAPABILITY;
1955
2124
  exports.EFFORT_INTENT_AUTO = EFFORT_INTENT_AUTO;
1956
2125
  exports.HARNESS_INSTALL_CAPABILITY_VERSION = HARNESS_INSTALL_CAPABILITY_VERSION;
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var _package = require('./package-DdYN77UN.cjs');
3
+ var _package = require('./package-D7V1BX2I.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-B1ueapb2.cjs'); });
62
+ const { selfCheckMain } = await Promise.resolve().then(function () { return require('./selfCheck-Be_M5coh.cjs'); });
63
63
  process.exit(await selfCheckMain({ verbose: isSelfCheckRequest(args) }));
64
64
  }
65
- const { main } = await Promise.resolve().then(function () { return require('./main-CTIbEEsd.cjs'); });
65
+ const { main } = await Promise.resolve().then(function () { return require('./main-CEu9zJ4x.cjs'); });
66
66
  await main();
67
67
  }
68
68
  void run(process.argv.slice(2));