@visorcraft/idlehands 4.0.16 → 4.0.17

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 (390) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/dist/{accounts-DLTODa_Z.js → accounts-D-hQsUw-.js} +1 -1
  3. package/dist/{accounts-DgbTKQoW.js → accounts-D87a1Y_K.js} +1 -1
  4. package/dist/{accounts-3HS_UAhJ.js → accounts-DsVN0UNw.js} +1 -1
  5. package/dist/{acp-cli-B-7CXaeS.js → acp-cli-D52jj29o.js} +7 -7
  6. package/dist/{agent-scope-RA0zXRpu.js → agent-scope-Bn39ugK4.js} +18 -18
  7. package/dist/{agent-via-gateway-F1Zu0slF.js → agent-via-gateway-BDWomN2t.js} +4 -4
  8. package/dist/{agent-via-gateway-DIfwOe7Y.js → agent-via-gateway-BVY7w5-N.js} +1 -1
  9. package/dist/{agent-via-gateway-Ceb_VeXS.js → agent-via-gateway-BlRwv6D6.js} +7 -7
  10. package/dist/{agent-via-gateway-7SDhvcBa.js → agent-via-gateway-DSZK5iRF.js} +7 -7
  11. package/dist/{agents-idaLog48.js → agents-BLa67Gdv.js} +4 -4
  12. package/dist/{agents.config-DP_bqTwg.js → agents.config-ADCeu0yD.js} +1 -1
  13. package/dist/{agents.config-w0ZcfpyW.js → agents.config-CyEkgCQE.js} +2 -2
  14. package/dist/{anton-B7VZSQo-.js → anton-CZ5moxh6.js} +22 -4
  15. package/dist/{anton-BomwkDBv.js → anton-D-0SP_5T.js} +22 -4
  16. package/dist/{anton-Cs1JPzv4.js → anton-DYEYyPJ1.js} +40 -22
  17. package/dist/{anton-CzWIEEiT.js → anton-llLwn1lp.js} +22 -4
  18. package/dist/{api-key-rotation-B-FTJm5p.js → api-key-rotation-nXQVJErE.js} +1 -1
  19. package/dist/{audio-preflight-BSlR2jEq.js → audio-preflight-CW8IH1lU.js} +4 -4
  20. package/dist/{audio-preflight-Dl1TO10w.js → audio-preflight-DzjXupNO.js} +31 -31
  21. package/dist/{audio-preflight-CSSlgO89.js → audio-preflight-vD3mDc6w.js} +4 -4
  22. package/dist/{audit-BmaVRZSd.js → audit-D12wg2tV.js} +22 -22
  23. package/dist/{auth-choice-D-TtZtMR.js → auth-choice-01ELTnLA.js} +1 -1
  24. package/dist/{auth-choice-D12Wsf7w.js → auth-choice-BDndThZZ.js} +12 -12
  25. package/dist/{auth-choice-C49o8owq.js → auth-choice-CqbTnCYz.js} +10 -10
  26. package/dist/{auth-choice.apply-helpers-CGcniL1T.js → auth-choice.apply-helpers-pTqMTYmi.js} +1 -1
  27. package/dist/{auth-store-DDzIMy8_.js → auth-store-CMyrmmSF.js} +7 -7
  28. package/dist/{auth-token-BJq87X3o.js → auth-token-fKt_cHOj.js} +1 -1
  29. package/dist/{banner-DmFqQvFd.js → banner-Dv_eAAWw.js} +1 -1
  30. package/dist/{bindings-B59Q7nsk.js → bindings-DZjkLUU_.js} +1 -1
  31. package/dist/{browser-cli-Ny1nHwqv.js → browser-cli-Da-0lyq2.js} +11 -11
  32. package/dist/build-info.json +3 -3
  33. package/dist/bundled/boot-md/handler.js +7 -7
  34. package/dist/bundled/session-memory/handler.js +7 -7
  35. package/dist/{call-BRL23UCk.js → call-DnTBT02D.js} +9 -9
  36. package/dist/{channel-account-context-CDbY5AIr.js → channel-account-context-B4nJPU2N.js} +5 -5
  37. package/dist/{channel-options-CsEgIwgu.js → channel-options-BilcK806.js} +1 -1
  38. package/dist/{channel-options-1Dqo0zkg.js → channel-options-BvOLgXCF.js} +3 -3
  39. package/dist/{channel-selection-ZxRkxpuF.js → channel-selection-3jUl-PyW.js} +1 -1
  40. package/dist/{channel-web-BicbbO9_.js → channel-web-B1IazKKL.js} +22 -22
  41. package/dist/{channel-web-C7s5QLXL.js → channel-web-BptLTwvg.js} +2 -2
  42. package/dist/{channels-cli-CWb-B8BT.js → channels-cli-DejBZZ85.js} +7 -7
  43. package/dist/{channels-cli-REwO9h_a.js → channels-cli-FssbSykQ.js} +88 -88
  44. package/dist/{channels-status-issues-CDpWjdI3.js → channels-status-issues-hgASw9UA.js} +1 -1
  45. package/dist/{chrome-Do5potHV.js → chrome-BcJB6PcM.js} +9 -9
  46. package/dist/{chrome-_2tzVjVl.js → chrome-DEnkfZ9p.js} +9 -9
  47. package/dist/{chrome-VBsQfIrt.js → chrome-YguTEaLx.js} +2 -2
  48. package/dist/{clawbot-cli-uFgYrysW.js → clawbot-cli-C5cDal-5.js} +5 -5
  49. package/dist/cli/daemon-cli.js +1 -1
  50. package/dist/{cli-B9ARC6CF.js → cli-BrQZTuUX.js} +70 -70
  51. package/dist/{cli-B4rP4MXJ.js → cli-j1A8WKSj.js} +2 -2
  52. package/dist/{client-DxH9hwLn.js → client-DIckPnsi.js} +1 -1
  53. package/dist/{command-registry-0e5VHciB.js → command-registry-DZZAmcbA.js} +10 -10
  54. package/dist/{commands-Dj5LalLo.js → commands-D3BU_t7G.js} +1 -1
  55. package/dist/{commands-registry-CURlRZQJ.js → commands-registry-Cj4D_1tw.js} +3 -3
  56. package/dist/{completion-cli-BTtvgatl.js → completion-cli-Cxvf8clb.js} +2 -2
  57. package/dist/{completion-cli-C1StqVUs.js → completion-cli-ktxbWAiG.js} +12 -12
  58. package/dist/{config-cli-B-yirt2T.js → config-cli-Bq_MWzp9.js} +1 -1
  59. package/dist/{config-cli-C3As38Z_.js → config-cli-CogA71uD.js} +6 -6
  60. package/dist/{config-guard-BdsOumqh.js → config-guard-DnAyuF6T.js} +17 -17
  61. package/dist/{config-validation-BvKX6fPw.js → config-validation-DIomLMwH.js} +2 -2
  62. package/dist/{configure-BEd8nUOe.js → configure-CPDGJFyt.js} +3 -3
  63. package/dist/{configure-Cw6aeqBy.js → configure-CZUn--aN.js} +16 -16
  64. package/dist/{control-ui-assets-C7ZpN9hN.js → control-ui-assets-CiaCDBvZ.js} +1 -1
  65. package/dist/{cron-cli-Xml0Uww8.js → cron-cli-B8uqoogS.js} +12 -12
  66. package/dist/{daemon-cli-B1Ti51bt.js → daemon-cli-CMBNTpSS.js} +11 -11
  67. package/dist/{daemon-install-CYPo4M1M.js → daemon-install-DeqQiAad.js} +4 -4
  68. package/dist/{daemon-install-helpers-BZY9-jNW.js → daemon-install-helpers-Bug_GYuy.js} +9 -9
  69. package/dist/{deliver-whAbSPLk.js → deliver-5FLCa6tB.js} +1 -1
  70. package/dist/{deliver-CVTXl0Cv.js → deliver-BUiQ-9fE.js} +1 -1
  71. package/dist/{deliver--kttnrER.js → deliver-yTpXc5sv.js} +7 -7
  72. package/dist/{deps-Cn32rOjf.js → deps-BUUwigzc.js} +1 -1
  73. package/dist/{deps-CVb-kfIX.js → deps-B_5kPH1Q.js} +1 -1
  74. package/dist/{deps-CYAKIzhf.js → deps-CH8f3TJK.js} +6 -6
  75. package/dist/{deps-C28cWNmF.js → deps-PAzfFs3Q.js} +1 -1
  76. package/dist/{devices-cli-BNkO0Fey.js → devices-cli-DVLF8Yvw.js} +7 -7
  77. package/dist/{diagnostics-DmZbQ8Nc.js → diagnostics-CdUgLS0N.js} +5 -5
  78. package/dist/{directory-cli-Dz9iXeut.js → directory-cli-BAMS8f9U.js} +9 -9
  79. package/dist/{dns-cli-DD6hWsdc.js → dns-cli-BdxBk-k_.js} +4 -4
  80. package/dist/{dock-Y96MzKuM.js → dock-CzF5XYGd.js} +4 -4
  81. package/dist/{docs-cli-cHkrTB2e.js → docs-cli-SF7es4Zs.js} +4 -4
  82. package/dist/{doctor-completion-T5sq7t8L.js → doctor-completion-i04j1TGW.js} +1 -1
  83. package/dist/{doctor-completion-o6QBkVYG.js → doctor-completion-iWmUY3B4.js} +2 -2
  84. package/dist/{doctor-config-flow-Ck4oCjfl.js → doctor-config-flow-8qXzBx09.js} +14 -14
  85. package/dist/{emergency-stop-CMeSxuEg.js → emergency-stop-CfKEsUr_.js} +70 -70
  86. package/dist/{emergency-stop-h5_WOPZT.js → emergency-stop-CzExWKhr.js} +7 -7
  87. package/dist/{emergency-stop-D-dp9zCO.js → emergency-stop-DAmKucxm.js} +2 -2
  88. package/dist/{emergency-stop-w0AyIMs7.js → emergency-stop-tKLAiFAG.js} +7 -7
  89. package/dist/{enable-o_s6PBsC.js → enable-DaA_orGN.js} +1 -1
  90. package/dist/entry.js +1 -1
  91. package/dist/{exec-approvals-allowlist-Co2tJSEo.js → exec-approvals-allowlist-8AkOwwIr.js} +1 -1
  92. package/dist/{exec-approvals-cli-CyjTnYfk.js → exec-approvals-cli-CtoJW2K-.js} +15 -15
  93. package/dist/{exec-safe-bin-runtime-policy-DaoU9-ni.js → exec-safe-bin-runtime-policy-DYXuBKqH.js} +2 -2
  94. package/dist/extensionAPI.js +7 -7
  95. package/dist/{fs-safe-_JQUGpZf.js → fs-safe-DNFrxDS-.js} +15 -15
  96. package/dist/{gateway-cli-bZXsaQkU.js → gateway-cli-C8P5BVto.js} +148 -148
  97. package/dist/{gateway-cli-Dxoh3sSC.js → gateway-cli-DSJcNJYR.js} +9 -9
  98. package/dist/{gateway-rpc-Du-ZpDjh.js → gateway-rpc-6vnhO4v8.js} +1 -1
  99. package/dist/{health-dLZas7f8.js → health-BN8WNyon.js} +1 -1
  100. package/dist/{health-OvNY74XL.js → health-CNZK5D2k.js} +13 -13
  101. package/dist/{hooks-cli-DOH-i33b.js → hooks-cli-L32lBsp7.js} +3 -3
  102. package/dist/{hooks-cli-DZr1MB1B.js → hooks-cli-t7tiLn8P.js} +84 -84
  103. package/dist/{hooks-status-DNGo2G8Q.js → hooks-status-CPIWc_bx.js} +1 -1
  104. package/dist/{idlehands-root-B8cUs-5M.js → idlehands-root-DFL2GrNW.js} +8 -8
  105. package/dist/{image-DSDEbSiO.js → image-C2JZiK-6.js} +5 -5
  106. package/dist/{image-BAsQlUqT.js → image-C_aN5P6-.js} +1 -1
  107. package/dist/{image-COw__ACq.js → image-D8b_rlQC.js} +1 -1
  108. package/dist/{image-ops-BU-VdLZu.js → image-ops-BkoEFRYH.js} +10 -10
  109. package/dist/index.js +80 -80
  110. package/dist/{inspect-ISQZuNM5.js → inspect-Dg16DMLn.js} +4 -4
  111. package/dist/{install-safe-path-ChNR9pl6.js → install-safe-path-CNNMzJl9.js} +19 -19
  112. package/dist/{installs-CNubze2L.js → installs-ST3UaUVJ.js} +9 -9
  113. package/dist/{ir-VncGpwA1.js → ir-DV0Hszc8.js} +6 -6
  114. package/dist/{lifecycle-core-B6UoqYTJ.js → lifecycle-core-DOScNyOv.js} +5 -5
  115. package/dist/llm-slug-generator.js +7 -7
  116. package/dist/{local-roots-q0xbefkf.js → local-roots-Cco87A2_.js} +2 -2
  117. package/dist/{login-CfUhrgWT.js → login-Dl_lsEHS.js} +4 -4
  118. package/dist/{login-qr-DBMsUxgL.js → login-qr-B68cBRH0.js} +7 -7
  119. package/dist/{logs-cli-CH4mFhUt.js → logs-cli-BluGGq03.js} +8 -8
  120. package/dist/{manager-BMAFgXyU.js → manager-BBeTPO2h.js} +13 -13
  121. package/dist/{manifest-registry-Bak1x76G.js → manifest-registry-RfRn8HJx.js} +1 -1
  122. package/dist/{markdown-tables-DZClqsNo.js → markdown-tables-C5hTDqNm.js} +1 -1
  123. package/dist/{memory-cli-CUGwnVIY.js → memory-cli-4wfelGdK.js} +12 -12
  124. package/dist/{model-C-icShH2.js → model-Bd-05WpB.js} +2 -2
  125. package/dist/{model-catalog-D9no0CH2.js → model-catalog-BCsDrrvq.js} +3 -3
  126. package/dist/{model-picker-BkXoTOiA.js → model-picker-D3U0wJCO.js} +4 -4
  127. package/dist/{model-selection-0dGxYGp8.js → model-selection-CSn9tUuH.js} +16 -16
  128. package/dist/{models-cli-CKRL4j3x.js → models-cli-ChStpcQY.js} +79 -79
  129. package/dist/{models-cli-Dtzht0md.js → models-cli-dd-wJvj0.js} +4 -4
  130. package/dist/{models-config-C5A1wDWh.js → models-config-lQpqp472.js} +6 -6
  131. package/dist/{models-Dvyot3-o.js → models-mQeB9JXZ.js} +2 -2
  132. package/dist/{node-cli-Ch7K7WtL.js → node-cli-DhD8-NHR.js} +32 -32
  133. package/dist/{node-service-C3vyxHLA.js → node-service-GpI0jzKr.js} +1 -1
  134. package/dist/{nodes-cli-D_hUCPNt.js → nodes-cli-DPzxQ0mY.js} +14 -14
  135. package/dist/{nodes-screen-CcpPaFxa.js → nodes-screen-CIAn0wXq.js} +4 -4
  136. package/dist/{npm-registry-spec-BCbbfIhX.js → npm-registry-spec-BfeHLbIQ.js} +16 -16
  137. package/dist/{npm-resolution-iEXmU1Ol.js → npm-resolution-WKW4cIrd.js} +1 -1
  138. package/dist/{npm-resolution-BpruvRIr.js → npm-resolution-tT1BUac2.js} +3 -3
  139. package/dist/{onboard-Ck4SwhZB.js → onboard-D1wKkHHC.js} +2 -2
  140. package/dist/{onboard-channels-CM4puuWQ.js → onboard-channels-CG1R8Ozs.js} +1 -1
  141. package/dist/{onboard-channels-DzNjXM6f.js → onboard-channels-CRHp5hA-.js} +20 -20
  142. package/dist/{onboard-custom-DUbzMMu7.js → onboard-custom-D2sCP3_S.js} +4 -4
  143. package/dist/{onboard-helpers-BQmbMJxJ.js → onboard-helpers-ByhJg2ST.js} +8 -8
  144. package/dist/{onboard-hooks-D9teGxfH.js → onboard-hooks-_1Jgimeu.js} +4 -4
  145. package/dist/{onboard-remote-CIjhaP2W.js → onboard-remote-DuhWSiAO.js} +1 -1
  146. package/dist/{onboard-CS6IQorr.js → onboard-rze7pzoW.js} +6 -6
  147. package/dist/{onboard-skills-BsaUIuq6.js → onboard-skills-vFwEasAg.js} +4 -4
  148. package/dist/{onboarding-0Pop0Cex.js → onboarding-BgHfZNln.js} +3 -3
  149. package/dist/{onboarding-DMEJRAg4.js → onboarding-BxvY_aEE.js} +13 -13
  150. package/dist/{onboarding.finalize-BZW1kZw7.js → onboarding.finalize-5_UCPMAw.js} +7 -7
  151. package/dist/{onboarding.finalize-f2qChM_N.js → onboarding.finalize-DnCFQEPR.js} +82 -82
  152. package/dist/{onboarding.gateway-config-CEQMyj8l.js → onboarding.gateway-config-qVAY6x7I.js} +16 -16
  153. package/dist/{openai-model-default-7J6cw1rA.js → openai-model-default-OPCCNNS0.js} +2 -2
  154. package/dist/{outbound-DPTxwchq.js → outbound-CG19kl0w.js} +4 -4
  155. package/dist/{plugin-sdk/outbound-attachment-BisU5Vji.js → outbound-attachment-jYdMgCml.js} +2 -2
  156. package/dist/{pairing-cli-jwx6hMsM.js → pairing-cli-QJYYDcIK.js} +10 -10
  157. package/dist/{pairing-labels-ChQJzbS9.js → pairing-labels-DuZ7ih-T.js} +1 -1
  158. package/dist/{pairing-store-CPpEEQJO.js → pairing-store-qvpPoWL_.js} +2 -2
  159. package/dist/{pairing-token-lKXTMQ_M.js → pairing-token-3hoCgQqp.js} +7 -7
  160. package/dist/{path-alias-guards-FXBVVTLw.js → path-alias-guards-BCskHdfJ.js} +3 -3
  161. package/dist/{path-safety-DwibX65n.js → path-safety-C1Y004P_.js} +1 -1
  162. package/dist/{paths-B-CLQ5RT.js → paths-Bt0fZexW.js} +9 -9
  163. package/dist/{pi-embedded-BKTKQn_9.js → pi-embedded-BcmA23Ak.js} +26 -26
  164. package/dist/{pi-embedded-Oto02Ard.js → pi-embedded-D_8x2ll-.js} +26 -26
  165. package/dist/{pi-embedded-helpers-BCsfqpDt.js → pi-embedded-helpers-BkzrQ5bZ.js} +6 -6
  166. package/dist/{pi-embedded-helpers-Ct2rwp-P.js → pi-embedded-helpers-C2j0LfJC.js} +4 -4
  167. package/dist/{pi-embedded-helpers-CyTpDKo5.js → pi-embedded-helpers-CghCLoPo.js} +4 -4
  168. package/dist/{pi-model-discovery-BIP3RjXl.js → pi-model-discovery-Bt79ifyi.js} +1 -1
  169. package/dist/{pi-tools.policy-DfITIKZj.js → pi-tools.policy-B_ME3yF6.js} +5 -5
  170. package/dist/{plugin-auto-enable-7DUxMy6A.js → plugin-auto-enable-BMuSi4aV.js} +3 -3
  171. package/dist/{plugin-registry-PcN7mK-d.js → plugin-registry-C3IHwz9i.js} +3 -3
  172. package/dist/{plugin-registry-BfNJBiAr.js → plugin-registry-CncOKeD3.js} +1 -1
  173. package/dist/plugin-sdk/{accounts-CBVAw5_G.js → accounts-B9nfRzyn.js} +1 -1
  174. package/dist/plugin-sdk/{accounts-BLYMokxV.js → accounts-Kt6ygPsC.js} +2 -2
  175. package/dist/plugin-sdk/{accounts-C5tHm1UI.js → accounts-mjFAny5F.js} +1 -1
  176. package/dist/plugin-sdk/{agent-scope-jl80I5G9.js → agent-scope-CU41EMlR.js} +2 -2
  177. package/dist/plugin-sdk/{agent-via-gateway-l3LvRB7r.js → agent-via-gateway-CDKZ0Jk9.js} +55 -55
  178. package/dist/plugin-sdk/{anton-DJn2RPpW.js → anton-Bp5L7uaN.js} +25 -7
  179. package/dist/plugin-sdk/{api-key-rotation-D6nK54XH.js → api-key-rotation-CZhCWd61.js} +2 -2
  180. package/dist/plugin-sdk/{audio-preflight-CKqqN8ty.js → audio-preflight-CRgDehfO.js} +30 -30
  181. package/dist/plugin-sdk/{auth-store-DaPWgQTx.js → auth-store-DycBvVqL.js} +1 -1
  182. package/dist/plugin-sdk/{bindings-xXgmJGxj.js → bindings-BDKKHGv-.js} +2 -2
  183. package/dist/plugin-sdk/{channel-activity-loOg1DRw.js → channel-activity-TcS_VfJk.js} +3 -3
  184. package/dist/plugin-sdk/{channel-web-DvztgyXI.js → channel-web-DcgShj6y.js} +24 -24
  185. package/dist/plugin-sdk/{chrome-Cb9FgiCI.js → chrome-BCTizrZD.js} +6 -6
  186. package/dist/plugin-sdk/{chunk-PW4MBmaN.js → chunk-DZr5xuqv.js} +1 -1
  187. package/dist/plugin-sdk/{commands-registry-B5m2EsHz.js → commands-registry-BqJLwZYh.js} +5 -5
  188. package/dist/plugin-sdk/{config-CEgzwk0J.js → config-BzPMtEKA.js} +10 -10
  189. package/dist/plugin-sdk/{deliver-BNfMF0Nb.js → deliver-Cfc1UCre.js} +10 -10
  190. package/dist/plugin-sdk/{deps-B1DxdYuU.js → deps-B5eQTF_d.js} +6 -6
  191. package/dist/plugin-sdk/{diagnostic-ByA6zvzu.js → diagnostic-B8VzcqLf.js} +1 -1
  192. package/dist/plugin-sdk/{dock-DKQYtT6-.js → dock-CMURqoee.js} +6 -6
  193. package/dist/plugin-sdk/{emergency-stop-CVZuzTM7.js → emergency-stop-DQppo4RU.js} +55 -55
  194. package/dist/plugin-sdk/{env-5XecRTLs.js → env-qurSiOO2.js} +1 -1
  195. package/dist/plugin-sdk/{errors-CMcD8Lhh.js → errors-UqLewZJL.js} +1 -1
  196. package/dist/plugin-sdk/{fetch-guard-DwdUEdmT.js → fetch-guard-C174s8ZV.js} +1 -1
  197. package/dist/plugin-sdk/{fs-safe-qsx2_8-o.js → fs-safe-CCXTOK7j.js} +2 -2
  198. package/dist/plugin-sdk/{image-C_1tftC8.js → image-DDuK8tyO.js} +6 -6
  199. package/dist/plugin-sdk/{image-ops-CXSUo-AM.js → image-ops-BRYGGDwL.js} +1 -1
  200. package/dist/plugin-sdk/index.js +60 -60
  201. package/dist/plugin-sdk/{ir-kdDGpPMq.js → ir-Bv0Zbp2E.js} +5 -5
  202. package/dist/plugin-sdk/{local-roots-DjB6DYeI.js → local-roots-bHCsSVt_.js} +4 -4
  203. package/dist/plugin-sdk/{login-DIwO5D5Y.js → login-CkQrnY2G.js} +6 -6
  204. package/dist/plugin-sdk/{login-qr-CpCAJuvT.js → login-qr-DAeHibH_.js} +8 -8
  205. package/dist/plugin-sdk/{manager-Dox9r7og.js → manager-CTC1S_c9.js} +10 -10
  206. package/dist/plugin-sdk/{markdown-tables-Drtwd4J5.js → markdown-tables-DfUQHRZY.js} +1 -1
  207. package/dist/plugin-sdk/{message-channel-CQ0qkGHj.js → message-channel-DiMXmQeQ.js} +1 -1
  208. package/dist/plugin-sdk/{outbound-Dx_q6JAI.js → outbound-B1twcfz5.js} +6 -6
  209. package/dist/{outbound-attachment-Bot3bRnK.js → plugin-sdk/outbound-attachment-Bs7fNaqv.js} +2 -2
  210. package/dist/plugin-sdk/{path-alias-guards-C_uBEYb4.js → path-alias-guards-yyy61qHh.js} +1 -1
  211. package/dist/plugin-sdk/{pi-embedded-helpers-B68z4sHq.js → pi-embedded-helpers-BAm9cWol.js} +16 -16
  212. package/dist/plugin-sdk/{pi-model-discovery-Dt6899be.js → pi-model-discovery-Bt6JtUFr.js} +1 -1
  213. package/dist/plugin-sdk/{plugins-NTjIvHYk.js → plugins-DRPlVBr_.js} +5 -5
  214. package/dist/plugin-sdk/{pw-ai-Dk2PTZzq.js → pw-ai-CY0evCZ2.js} +10 -10
  215. package/dist/plugin-sdk/{qmd-manager-juzrnopq.js → qmd-manager-BckPBwZX.js} +5 -5
  216. package/dist/plugin-sdk/{query-expansion-xBXvzdkL.js → query-expansion-CPqK-tTR.js} +2 -2
  217. package/dist/plugin-sdk/{redact-B6VQH3UQ.js → redact-Ub8sMBBC.js} +1 -1
  218. package/dist/plugin-sdk/{replies-ZovJp-3F.js → replies-DwTNZJgi.js} +3 -3
  219. package/dist/plugin-sdk/{reply-BhGucE6k.js → reply-BtQHoQT3.js} +95 -95
  220. package/dist/plugin-sdk/{reply-prefix--mxmTL7A.js → reply-prefix-BqV0o7_7.js} +1 -1
  221. package/dist/plugin-sdk/{resolve-outbound-target-CnUtsDch.js → resolve-outbound-target-DAdNGEqG.js} +2 -2
  222. package/dist/plugin-sdk/{resolve-route-BZABUE4J.js → resolve-route-C5mAwY-o.js} +3 -3
  223. package/dist/plugin-sdk/{retry-Bh7jveNm.js → retry-2OVzZJMZ.js} +1 -1
  224. package/dist/plugin-sdk/{runner-CZz1tOIR.js → runner-Ck0w3rcz.js} +10 -10
  225. package/dist/plugin-sdk/{send-Cb5NIN8s.js → send-A4Lv5nrg.js} +7 -7
  226. package/dist/plugin-sdk/{send-0EVlThEG.js → send-BBD-m-nM.js} +10 -10
  227. package/dist/plugin-sdk/{send-BCjVQhp3.js → send-CPeuqOlq.js} +13 -13
  228. package/dist/plugin-sdk/{send-B26cNPqY.js → send-CaPoBwby.js} +6 -6
  229. package/dist/plugin-sdk/{send-CHUGIZs9.js → send-SsqudCMv.js} +7 -7
  230. package/dist/plugin-sdk/{session-DdJj6_DW.js → session-DpL4uk1J.js} +3 -3
  231. package/dist/plugin-sdk/{sessions-DNx9c2O2.js → sessions-CQ5iD4Uq.js} +6 -6
  232. package/dist/plugin-sdk/{skill-commands-DorIK8kn.js → skill-commands-C_O9I71g.js} +5 -5
  233. package/dist/plugin-sdk/{skills-Dh_Cf2PA.js → skills-DmiIiX4l.js} +8 -8
  234. package/dist/plugin-sdk/{store-CCCXwngh.js → store-BI3rLJdW.js} +2 -2
  235. package/dist/plugin-sdk/{subsystem-DWPzKeZ0.js → subsystem-lJo9gqAK.js} +1 -1
  236. package/dist/plugin-sdk/{tables-CF9W23Rd.js → tables-C4X_nAUQ.js} +1 -1
  237. package/dist/plugin-sdk/{target-errors-DaH0qYtL.js → target-errors-CXh6e9ZE.js} +2 -2
  238. package/dist/plugin-sdk/{tokens-Y97UKh4C.js → tokens-CU9S3S7t.js} +1 -1
  239. package/dist/plugin-sdk/{tool-images-BMRkn_yk.js → tool-images-Cf9aWlVu.js} +2 -2
  240. package/dist/plugin-sdk/{tool-loop-detection-Cv8wyfAi.js → tool-loop-detection-DuwkSqZL.js} +2 -2
  241. package/dist/plugin-sdk/{utils-Dyj2wV4e.js → utils-dP-FpIgu.js} +2 -2
  242. package/dist/plugin-sdk/web-Cg6vlkku.js +71 -0
  243. package/dist/plugin-sdk/{whatsapp-actions-B5g-Rywy.js → whatsapp-actions-Bcknq6EZ.js} +23 -23
  244. package/dist/{plugins-D46VZh7u.js → plugins-B4hASNc2.js} +2 -2
  245. package/dist/{plugins-cli-DOTZBHc7.js → plugins-cli-BMptU-1l.js} +80 -80
  246. package/dist/{plugins-cli-s1bEnfMn.js → plugins-cli-CMYlin6k.js} +3 -3
  247. package/dist/{ports-B2o0FSFD.js → ports-B07M55Gr.js} +1 -1
  248. package/dist/{ports-SQy1d-RL.js → ports-DWJO5S52.js} +2 -2
  249. package/dist/{program-Blak4A0H.js → program-DyMaBEqF.js} +8 -8
  250. package/dist/{program-context-DtHO30yM.js → program-context-BxflGz_G.js} +43 -43
  251. package/dist/{prompt-select-styled-D8vDTRY8.js → prompt-select-styled-CI3hobey.js} +37 -37
  252. package/dist/{prompt-select-styled-DuHE5c_O.js → prompt-select-styled-es3PJxfH.js} +4 -4
  253. package/dist/{provider-auth-helpers-CnqcE5__.js → provider-auth-helpers-CrGScfnN.js} +1 -1
  254. package/dist/{provider-auth-helpers-PdlgGx1Z.js → provider-auth-helpers-DYxaYmlq.js} +5 -5
  255. package/dist/{push-apns-DkGS3lmo.js → push-apns-BNxgGXQy.js} +1 -1
  256. package/dist/{push-apns-CNVtKEbW.js → push-apns-CjAXPy2N.js} +5 -5
  257. package/dist/{pw-ai-7i9eGnLh.js → pw-ai-BGALvhDi.js} +11 -11
  258. package/dist/{pw-ai-CowTfhOG.js → pw-ai-CfYaR1K2.js} +1 -1
  259. package/dist/{pw-ai-yrIWfcWX.js → pw-ai-DjmrIQle.js} +1 -1
  260. package/dist/{qmd-manager-B-qeywfQ.js → qmd-manager-CVcPfkhL.js} +19 -19
  261. package/dist/{qr-cli-CSt5ihwG.js → qr-cli-D2Oh8f0U.js} +1 -1
  262. package/dist/{query-expansion-Clts_AGz.js → query-expansion-i5I3yavb.js} +12 -12
  263. package/dist/{redact-snapshot-BBNDQZIe.js → redact-snapshot-CtIVs92s.js} +1 -1
  264. package/dist/{register.agent-BGs6wEo-.js → register.agent-B9f0mtlc.js} +9 -9
  265. package/dist/{register.agent-DliuXWG0.js → register.agent-DrVFgVpf.js} +95 -95
  266. package/dist/register.configure-BxZRBEJ9.js +168 -0
  267. package/dist/{register.configure-D9bNPRml.js → register.configure-DAlBU97I.js} +8 -8
  268. package/dist/{register.maintenance-B7ZM7NqF.js → register.maintenance-BThQUyMI.js} +9 -9
  269. package/dist/{register.maintenance-B-36Avrl.js → register.maintenance-G_dZOyQA.js} +90 -90
  270. package/dist/{register.message-Cm5P_dls.js → register.message-BVTuvjQA.js} +71 -71
  271. package/dist/{register.message-CmEzaYEw.js → register.message-DKaxesxx.js} +3 -3
  272. package/dist/{register.onboard-cB-UkXhL.js → register.onboard-CnoQ56yq.js} +18 -18
  273. package/dist/{register.onboard-ByUSn1hy.js → register.onboard-CwtL9YYR.js} +2 -2
  274. package/dist/{register.orchestrator-anton-D_mAceTk.js → register.orchestrator-anton-2LtPHPXM.js} +14 -14
  275. package/dist/{register.orchestrator-anton-CADua5Nr.js → register.orchestrator-anton-Ce55Lxt0.js} +2 -2
  276. package/dist/{register.setup-CA3WwC1V.js → register.setup-Dg5LmRxd.js} +2 -2
  277. package/dist/{register.setup-DOnWysTP.js → register.setup-_s2CQaBF.js} +21 -21
  278. package/dist/{register.status-health-sessions-DgR30NBl.js → register.status-health-sessions-DX2OgAeG.js} +4 -4
  279. package/dist/{register.status-health-sessions-Dsvbkrhh.js → register.status-health-sessions-iSQzPXD0.js} +82 -82
  280. package/dist/{register.subclis-CvN5J3oh.js → register.subclis-YeKuHCRg.js} +9 -9
  281. package/dist/{replies-hSFVxL4h.js → replies-Czp4hvpS.js} +1 -1
  282. package/dist/{reply-D6y5faqD.js → reply-DKIv9jez.js} +153 -153
  283. package/dist/{reply-prefix-C3y4zpTl.js → reply-prefix-BMEdvSpA.js} +1 -1
  284. package/dist/{resolve-route-D_AbcmD6.js → resolve-route-Ef_Yt2Dw.js} +2 -2
  285. package/dist/{rpc-CCimHATv.js → rpc-DDTp_J6f.js} +1 -1
  286. package/dist/{run-main-BBYeikWD.js → run-main-BwWO5erE.js} +15 -15
  287. package/dist/{runner-DzszLzI4.js → runner-BFG54hnb.js} +20 -20
  288. package/dist/{runner-Bv_BA3vd.js → runner-CZW_eyf2.js} +1 -1
  289. package/dist/{runner-BzNdfqDz.js → runner-PgRFPYUj.js} +1 -1
  290. package/dist/{runtime-XmXLaHNk.js → runtime-DEmy759r.js} +2 -2
  291. package/dist/{sandbox-DcUw5h3p.js → sandbox-CfPbhDY_.js} +20 -20
  292. package/dist/{sandbox-cli-DGvJ7Eeq.js → sandbox-cli-B4wLJr21.js} +22 -22
  293. package/dist/{secrets-cli-Bgp_H_bH.js → secrets-cli-CidAOBfl.js} +9 -9
  294. package/dist/{security-cli-MQ__Ca6v.js → security-cli-Ch7AhbhS.js} +39 -39
  295. package/dist/{send-C4v0Leny.js → send-BCPkAE2k.js} +6 -6
  296. package/dist/{send-DuwdEkLw.js → send-BPwTl4-K.js} +4 -4
  297. package/dist/{send-DQiw_nGD.js → send-CEavqqEz.js} +6 -6
  298. package/dist/{send-DwdHiC7_.js → send-CVIXqubC.js} +13 -13
  299. package/dist/{send--lzpNy4f.js → send-DDMaLJAQ.js} +7 -7
  300. package/dist/{server-D6MltJIF.js → server-BpSbZAwg.js} +14 -14
  301. package/dist/{server-context-DI0W_H7R.js → server-context-BxNSTpH6.js} +10 -10
  302. package/dist/{server-lifecycle-B5PlrlbG.js → server-lifecycle-CGKrGrhM.js} +2 -2
  303. package/dist/{server-node-events-CcAiA2an.js → server-node-events-CZ5OkouD.js} +71 -71
  304. package/dist/{server-node-events-DeBYOK05.js → server-node-events-lbb8M18B.js} +3 -3
  305. package/dist/{service-C8NMS3m_.js → service-Bj2oSfpw.js} +15 -15
  306. package/dist/{session-CdnrRhb4.js → session-BKVySI8q.js} +1 -1
  307. package/dist/{sessions-BtPXimXQ.js → sessions-BqWocozB.js} +14 -14
  308. package/dist/{shared-CpDPo3hJ.js → shared-DnQ4iyXk.js} +2 -2
  309. package/dist/{shared-DpLSpJIl.js → shared-Jzrx8DfN.js} +1 -1
  310. package/dist/{skill-commands-BFzmZAfo.js → skill-commands-BwIRWSCI.js} +5 -5
  311. package/dist/{skill-scanner-D7mzXRXd.js → skill-scanner-B4Ftsbd2.js} +5 -5
  312. package/dist/{skills-DlvDyK8L.js → skills-TIyQDZx7.js} +3 -3
  313. package/dist/{skills-cli-BhKGhjbO.js → skills-cli-5lbXi4Lh.js} +5 -5
  314. package/dist/{skills-install-tr6wRWZj.js → skills-install-D0JHP5uM.js} +4 -4
  315. package/dist/{skills-status-qjQ8XP0h.js → skills-status-Q9skQExW.js} +1 -1
  316. package/dist/{status-Dd0rJBTD.js → status-BE1Y0CKS.js} +2 -2
  317. package/dist/{status-BW8aF7xu.js → status-Bd9NYE1U.js} +24 -24
  318. package/dist/{status.update-CTi6vuWj.js → status.update-C3uRz7W6.js} +2 -2
  319. package/dist/{store-kH9wHHbO.js → store-CLNuI8-G.js} +5 -5
  320. package/dist/{subagent-registry-DeXWDNty.js → subagent-registry-CTZmDdGV.js} +11 -11
  321. package/dist/{system-cli-3T-OTIKv.js → system-cli-DBp9Zmvt.js} +8 -8
  322. package/dist/{system-run-approval-context-CISBXlNw.js → system-run-approval-context-xZVoE4nS.js} +1 -1
  323. package/dist/{system-run-command-qJdgzxLp.js → system-run-command-BIhrK3OI.js} +1 -1
  324. package/dist/{systemd-CaCR5CyM.js → systemd-DyrVLTI0.js} +9 -9
  325. package/dist/{systemd-hints-DHu-HVFx.js → systemd-hints-BoKKzRI_.js} +6 -6
  326. package/dist/{systemd-linger-B7XlUHk_.js → systemd-linger-DrhGd61G.js} +1 -1
  327. package/dist/{tables-g9xkflht.js → tables-CZSD889r.js} +1 -1
  328. package/dist/{target-errors-bLIVFsbF.js → target-errors-BYuWhuLU.js} +4 -4
  329. package/dist/{tool-images-CHqepyF_.js → tool-images-DZHrc4pq.js} +1 -1
  330. package/dist/{tui-lalhRHve.js → tui-DWGHGeZ3.js} +6 -6
  331. package/dist/{tui-cli-BVKWJ9X7.js → tui-cli-DKyA5pZ2.js} +30 -30
  332. package/dist/{update-cli-C97163Ne.js → update-cli-D-4_OhRR.js} +9 -9
  333. package/dist/{update-cli-DLWAR9u6.js → update-cli-DvUx2El6.js} +99 -99
  334. package/dist/{update-D79ppbMQ.js → update-la2AdLf3.js} +3 -3
  335. package/dist/{update-runner-BV9LWTCG.js → update-runner-BvaywdEe.js} +1 -1
  336. package/dist/{update-runner-Cft2lh5r.js → update-runner-n2snlf-4.js} +15 -15
  337. package/dist/{upgrade-command-909a7QUc.js → upgrade-command-28wRHZZ2.js} +3 -3
  338. package/dist/{web-Da_aB4Vm.js → web-BedV4zGE.js} +3 -3
  339. package/dist/{web-DGPTqAhk.js → web-BjP-D0Iz.js} +8 -8
  340. package/dist/web-CDFWB79W.js +123 -0
  341. package/dist/{web-BwZ1OGaX.js → web-Dbrx58hF.js} +8 -8
  342. package/dist/{webhooks-cli-2N03q0iY.js → webhooks-cli-BnmVPYkU.js} +6 -6
  343. package/dist/{whatsapp-actions-Cms8wQM1.js → whatsapp-actions-D2mBFzmK.js} +18 -18
  344. package/dist/{with-timeout-DEdycYxq.js → with-timeout-BodPmGCY.js} +3 -3
  345. package/dist/{workspace-D3pARwoB.js → workspace-CDw87aZG.js} +1 -1
  346. package/dist/{workspace-dirs-SsExQ3Bz.js → workspace-dirs-D3bousoX.js} +1 -1
  347. package/dist/{wsl-BJW8nTyL.js → wsl-CgXDjE09.js} +2 -2
  348. package/extensions/acpx/package.json +1 -1
  349. package/extensions/bluebubbles/package.json +1 -1
  350. package/extensions/copilot-proxy/package.json +1 -1
  351. package/extensions/diagnostics-otel/package.json +1 -1
  352. package/extensions/discord/package.json +1 -1
  353. package/extensions/feishu/package.json +1 -1
  354. package/extensions/google-gemini-cli-auth/package.json +1 -1
  355. package/extensions/googlechat/package.json +1 -1
  356. package/extensions/hand/package.json +1 -1
  357. package/extensions/imessage/package.json +1 -1
  358. package/extensions/irc/package.json +1 -1
  359. package/extensions/line/package.json +1 -1
  360. package/extensions/llm-task/package.json +1 -1
  361. package/extensions/matrix/CHANGELOG.md +6 -0
  362. package/extensions/matrix/package.json +1 -1
  363. package/extensions/mattermost/package.json +1 -1
  364. package/extensions/memory-core/package.json +1 -1
  365. package/extensions/memory-lancedb/package.json +1 -1
  366. package/extensions/minimax-portal-auth/package.json +1 -1
  367. package/extensions/msteams/CHANGELOG.md +6 -0
  368. package/extensions/msteams/package.json +1 -1
  369. package/extensions/nextcloud-talk/package.json +1 -1
  370. package/extensions/nostr/CHANGELOG.md +6 -0
  371. package/extensions/nostr/package.json +1 -1
  372. package/extensions/open-prose/package.json +1 -1
  373. package/extensions/signal/package.json +1 -1
  374. package/extensions/slack/package.json +1 -1
  375. package/extensions/synology-chat/package.json +1 -1
  376. package/extensions/telegram/package.json +1 -1
  377. package/extensions/tlon/package.json +1 -1
  378. package/extensions/twitch/CHANGELOG.md +6 -0
  379. package/extensions/twitch/package.json +1 -1
  380. package/extensions/voice-call/CHANGELOG.md +6 -0
  381. package/extensions/voice-call/package.json +1 -1
  382. package/extensions/whatsapp/package.json +1 -1
  383. package/extensions/zalo/CHANGELOG.md +6 -0
  384. package/extensions/zalo/package.json +1 -1
  385. package/extensions/zalouser/CHANGELOG.md +6 -0
  386. package/extensions/zalouser/package.json +1 -1
  387. package/package.json +1 -1
  388. package/dist/plugin-sdk/web-BzmXmmAo.js +0 -71
  389. package/dist/register.configure-DJsShg2l.js +0 -168
  390. package/dist/web-D8zB-Qkg.js +0 -123
@@ -2,7 +2,7 @@ import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { t as CONFIG_DIR } from "./utils-CXzXXV2o.js";
3
3
  import path from "node:path";
4
4
  import { promisify } from "node:util";
5
- import fs from "node:fs/promises";
5
+ import fsPromises from "node:fs/promises";
6
6
  import { execFile } from "node:child_process";
7
7
 
8
8
  //#region src/commands/anton.ts
@@ -16,18 +16,18 @@ const ANTON_STATE_PATH = path.join(CONFIG_DIR, "anton.state.json");
16
16
  const ANTON_LOCK_PATH = path.join(CONFIG_DIR, "anton.lock");
17
17
  const execFile$1 = promisify(execFile);
18
18
  async function ensureStateDir() {
19
- await fs.mkdir(CONFIG_DIR, { recursive: true });
19
+ await fsPromises.mkdir(CONFIG_DIR, { recursive: true });
20
20
  }
21
21
  async function readState() {
22
22
  try {
23
- return JSON.parse(await fs.readFile(ANTON_STATE_PATH, "utf8"));
23
+ return JSON.parse(await fsPromises.readFile(ANTON_STATE_PATH, "utf8"));
24
24
  } catch {
25
25
  return { running: false };
26
26
  }
27
27
  }
28
28
  async function writeState(state) {
29
29
  await ensureStateDir();
30
- await fs.writeFile(ANTON_STATE_PATH, `${JSON.stringify({
30
+ await fsPromises.writeFile(ANTON_STATE_PATH, `${JSON.stringify({
31
31
  ...state,
32
32
  updatedAt: (/* @__PURE__ */ new Date()).toISOString()
33
33
  }, null, 2)}\n`, "utf8");
@@ -35,7 +35,7 @@ async function writeState(state) {
35
35
  async function acquireLock(force = false) {
36
36
  await ensureStateDir();
37
37
  try {
38
- await fs.writeFile(ANTON_LOCK_PATH, JSON.stringify({
38
+ await fsPromises.writeFile(ANTON_LOCK_PATH, JSON.stringify({
39
39
  pid: process.pid,
40
40
  startedAt: (/* @__PURE__ */ new Date()).toISOString()
41
41
  }), {
@@ -44,8 +44,8 @@ async function acquireLock(force = false) {
44
44
  });
45
45
  } catch {
46
46
  if (!force) throw new Error("Anton is already running (lock held)");
47
- await fs.rm(ANTON_LOCK_PATH, { force: true });
48
- await fs.writeFile(ANTON_LOCK_PATH, JSON.stringify({
47
+ await fsPromises.rm(ANTON_LOCK_PATH, { force: true });
48
+ await fsPromises.writeFile(ANTON_LOCK_PATH, JSON.stringify({
49
49
  pid: process.pid,
50
50
  startedAt: (/* @__PURE__ */ new Date()).toISOString(),
51
51
  force: true
@@ -56,7 +56,7 @@ async function acquireLock(force = false) {
56
56
  }
57
57
  }
58
58
  async function releaseLock() {
59
- await fs.rm(ANTON_LOCK_PATH, { force: true });
59
+ await fsPromises.rm(ANTON_LOCK_PATH, { force: true });
60
60
  }
61
61
  async function shouldStop() {
62
62
  const s = await readState();
@@ -218,14 +218,14 @@ async function antonStop(runtime) {
218
218
  /** Load Anton config from the IdleHands config file. */
219
219
  async function loadAntonConfig() {
220
220
  try {
221
- const { loadConfig } = await import("./model-selection-0dGxYGp8.js").then((n) => n.Mt);
221
+ const { loadConfig } = await import("./model-selection-CSn9tUuH.js").then((n) => n.Mt);
222
222
  return loadConfig().anton ?? {};
223
223
  } catch {
224
224
  return {};
225
225
  }
226
226
  }
227
227
  async function runAgentTask(args) {
228
- const { agentCliCommand } = await import("./agent-via-gateway-F1Zu0slF.js").then((n) => n.n);
228
+ const { agentCliCommand } = await import("./agent-via-gateway-BDWomN2t.js").then((n) => n.n);
229
229
  const extraSystemPrompt = args.workspaceDir ? `Your working directory is: ${args.workspaceDir}\nAll file paths are relative to this directory. Use this as your cwd for all operations.` : void 0;
230
230
  const result = await agentCliCommand({
231
231
  message: args.message,
@@ -243,12 +243,30 @@ function makePlanFilePath(planDir, taskIndex) {
243
243
  return path.join(planDir, `task-${taskIndex}-${Date.now()}.md`);
244
244
  }
245
245
  async function ensurePlanDir(planDir) {
246
- await fs.mkdir(planDir, { recursive: true });
246
+ await fsPromises.mkdir(planDir, { recursive: true });
247
+ }
248
+ function looksLikeStatusJsonOnly(text) {
249
+ const trimmed = text.trim();
250
+ if (!trimmed.startsWith("{") || !trimmed.endsWith("}")) return false;
251
+ try {
252
+ const parsed = JSON.parse(trimmed);
253
+ const keys = Object.keys(parsed).toSorted();
254
+ return keys.length <= 3 && keys.includes("status") && keys.includes("filename");
255
+ } catch {
256
+ return false;
257
+ }
258
+ }
259
+ function isUsefulPlanText(text) {
260
+ const trimmed = text.trim();
261
+ if (trimmed.length < 120) return false;
262
+ if (looksLikeStatusJsonOnly(trimmed)) return false;
263
+ return /^#\s+/m.test(trimmed) || /\b(Implementation approach|What needs to change|Files to modify|How to verify)\b/i.test(trimmed);
247
264
  }
248
265
  async function isPlanFileValid(filePath) {
249
266
  try {
250
- const stat = await fs.stat(filePath);
251
- return stat.isFile() && stat.size > 10;
267
+ const stat = await fsPromises.stat(filePath);
268
+ if (!stat.isFile() || stat.size < 20) return false;
269
+ return isUsefulPlanText(await fsPromises.readFile(filePath, "utf8"));
252
270
  } catch {
253
271
  return false;
254
272
  }
@@ -290,7 +308,7 @@ function extractJsonObject(text) {
290
308
  }
291
309
  function extractPlanMarkdownFromText(text) {
292
310
  const candidate = text.match(/```(?:markdown|md)?\s*([\s\S]*?)```/i)?.[1]?.trim() ?? text.trim();
293
- if (candidate.length < 60) return;
311
+ if (!isUsefulPlanText(candidate)) return;
294
312
  return candidate;
295
313
  }
296
314
  function normalizeDiscoveryFilename(filename, expectedPlanFile) {
@@ -314,8 +332,8 @@ Task: ${task}`;
314
332
  }
315
333
  async function tryPersistPlanFallback(params) {
316
334
  const planText = (((typeof params.parsed?.planMarkdown === "string" ? params.parsed.planMarkdown : void 0) ?? (typeof params.parsed?.plan === "string" ? params.parsed.plan : void 0))?.trim() || extractPlanMarkdownFromText(params.rawText) || "").trim();
317
- if (planText.length < 60) return false;
318
- await fs.writeFile(params.planFile, `${planText}\n`, "utf8");
335
+ if (!isUsefulPlanText(planText)) return false;
336
+ await fsPromises.writeFile(params.planFile, `${planText}\n`, "utf8");
319
337
  return await isPlanFileValid(params.planFile);
320
338
  }
321
339
  async function runDiscoveryPhase(args) {
@@ -506,7 +524,7 @@ async function runReviewPhase(args) {
506
524
  }
507
525
  async function runAnton(args) {
508
526
  const filePath = path.resolve(args.taskFile);
509
- const pending = parsePendingTasks(await fs.readFile(filePath, "utf8"));
527
+ const pending = parsePendingTasks(await fsPromises.readFile(filePath, "utf8"));
510
528
  const notify = args.onProgress ?? (async () => {});
511
529
  if (args.dryRun) {
512
530
  args.runtime.log(`Dry run: ${pending.length} pending task(s)`);
@@ -532,7 +550,7 @@ async function runAnton(args) {
532
550
  const reviewTimeout = antonCfg.reviewTimeoutSec ?? taskTimeout;
533
551
  const preflightMaxRetries = antonCfg.preflightMaxRetries ?? 2;
534
552
  const planDir = antonCfg.planDir ? path.resolve(antonCfg.planDir) : path.resolve(path.dirname(filePath), ".agents", "tasks");
535
- const { loadConfig } = await import("./model-selection-0dGxYGp8.js").then((n) => n.Mt);
553
+ const { loadConfig } = await import("./model-selection-CSn9tUuH.js").then((n) => n.Mt);
536
554
  const cfg = loadConfig();
537
555
  const defaultTimeout = String(Number.isFinite(args.timeoutSec) && (args.timeoutSec ?? 0) > 0 ? args.timeoutSec : cfg.agents?.defaults?.timeoutSeconds ?? taskTimeout);
538
556
  await acquireLock(Boolean(args.force));
@@ -611,8 +629,8 @@ async function runAnton(args) {
611
629
  total: pending.length,
612
630
  task: task.text
613
631
  });
614
- const updated = markTaskDone(await fs.readFile(filePath, "utf8"), task.line);
615
- await fs.writeFile(filePath, updated, "utf8");
632
+ const updated = markTaskDone(await fsPromises.readFile(filePath, "utf8"), task.line);
633
+ await fsPromises.writeFile(filePath, updated, "utf8");
616
634
  completed += 1;
617
635
  await notify({
618
636
  phase: "task_complete",
@@ -670,8 +688,8 @@ async function runAnton(args) {
670
688
  });
671
689
  const changedAfter = await getGitChangedFileCount(gitCwd);
672
690
  if (mode === "preflight" && changedBefore !== null && changedAfter !== null && changedAfter <= changedBefore) throw new Error("Implementation made no repository changes; refusing to mark task complete");
673
- const updated = markTaskDone(await fs.readFile(filePath, "utf8"), task.line);
674
- await fs.writeFile(filePath, updated, "utf8");
691
+ const updated = markTaskDone(await fsPromises.readFile(filePath, "utf8"), task.line);
692
+ await fsPromises.writeFile(filePath, updated, "utf8");
675
693
  completed += 1;
676
694
  await notify({
677
695
  phase: "task_complete",
@@ -219,7 +219,7 @@ async function loadAntonConfig() {
219
219
  }
220
220
  }
221
221
  async function runAgentTask(args) {
222
- const { agentCliCommand } = await import("./agent-via-gateway-7SDhvcBa.js");
222
+ const { agentCliCommand } = await import("./agent-via-gateway-DSZK5iRF.js");
223
223
  const extraSystemPrompt = args.workspaceDir ? `Your working directory is: ${args.workspaceDir}\nAll file paths are relative to this directory. Use this as your cwd for all operations.` : void 0;
224
224
  const result = await agentCliCommand({
225
225
  message: args.message,
@@ -239,10 +239,28 @@ function makePlanFilePath(planDir, taskIndex) {
239
239
  async function ensurePlanDir(planDir) {
240
240
  await fs.mkdir(planDir, { recursive: true });
241
241
  }
242
+ function looksLikeStatusJsonOnly(text) {
243
+ const trimmed = text.trim();
244
+ if (!trimmed.startsWith("{") || !trimmed.endsWith("}")) return false;
245
+ try {
246
+ const parsed = JSON.parse(trimmed);
247
+ const keys = Object.keys(parsed).toSorted();
248
+ return keys.length <= 3 && keys.includes("status") && keys.includes("filename");
249
+ } catch {
250
+ return false;
251
+ }
252
+ }
253
+ function isUsefulPlanText(text) {
254
+ const trimmed = text.trim();
255
+ if (trimmed.length < 120) return false;
256
+ if (looksLikeStatusJsonOnly(trimmed)) return false;
257
+ return /^#\s+/m.test(trimmed) || /\b(Implementation approach|What needs to change|Files to modify|How to verify)\b/i.test(trimmed);
258
+ }
242
259
  async function isPlanFileValid(filePath) {
243
260
  try {
244
261
  const stat = await fs.stat(filePath);
245
- return stat.isFile() && stat.size > 10;
262
+ if (!stat.isFile() || stat.size < 20) return false;
263
+ return isUsefulPlanText(await fs.readFile(filePath, "utf8"));
246
264
  } catch {
247
265
  return false;
248
266
  }
@@ -284,7 +302,7 @@ function extractJsonObject(text) {
284
302
  }
285
303
  function extractPlanMarkdownFromText(text) {
286
304
  const candidate = text.match(/```(?:markdown|md)?\s*([\s\S]*?)```/i)?.[1]?.trim() ?? text.trim();
287
- if (candidate.length < 60) return;
305
+ if (!isUsefulPlanText(candidate)) return;
288
306
  return candidate;
289
307
  }
290
308
  function normalizeDiscoveryFilename(filename, expectedPlanFile) {
@@ -308,7 +326,7 @@ Task: ${task}`;
308
326
  }
309
327
  async function tryPersistPlanFallback(params) {
310
328
  const planText = (((typeof params.parsed?.planMarkdown === "string" ? params.parsed.planMarkdown : void 0) ?? (typeof params.parsed?.plan === "string" ? params.parsed.plan : void 0))?.trim() || extractPlanMarkdownFromText(params.rawText) || "").trim();
311
- if (planText.length < 60) return false;
329
+ if (!isUsefulPlanText(planText)) return false;
312
330
  await fs.writeFile(params.planFile, `${planText}\n`, "utf8");
313
331
  return await isPlanFileValid(params.planFile);
314
332
  }
@@ -1,4 +1,4 @@
1
- import { u as normalizeProviderId } from "./model-selection-0dGxYGp8.js";
1
+ import { u as normalizeProviderId } from "./model-selection-CSn9tUuH.js";
2
2
  import { n as formatErrorMessage } from "./errors-DZDuPc3M.js";
3
3
 
4
4
  //#region src/infra/gemini-auth.ts
@@ -17,8 +17,8 @@ import "./accounts-BDVs8LTu.js";
17
17
  import "./image-ops-D1KtygWz.js";
18
18
  import "./pi-model-discovery-Bb__OY-j.js";
19
19
  import "./message-channel-C8QtrwEU.js";
20
- import "./pi-embedded-helpers-CyTpDKo5.js";
21
- import "./chrome-_2tzVjVl.js";
20
+ import "./pi-embedded-helpers-CghCLoPo.js";
21
+ import "./chrome-BcJB6PcM.js";
22
22
  import "./ssrf-CZeHDwVZ.js";
23
23
  import "./frontmatter-BOudmHMS.js";
24
24
  import "./skills-CnAPWfca.js";
@@ -32,11 +32,11 @@ import "./accounts-CIvVRRHb.js";
32
32
  import "./paths-D_qUel1T.js";
33
33
  import "./tool-images-CcGZpzmq.js";
34
34
  import "./thinking-z4_linel.js";
35
- import "./image-COw__ACq.js";
35
+ import "./image-D8b_rlQC.js";
36
36
  import "./gemini-auth-CIyaa44H.js";
37
37
  import "./fetch-guard-iuQsIjqN.js";
38
38
  import "./local-roots-KN4Hp1yZ.js";
39
- import { a as resolveMediaAttachmentLocalRoots, n as createMediaAttachmentCache, o as runCapability, r as normalizeMediaAttachments, t as buildProviderRegistry, u as isAudioAttachment } from "./runner-BzNdfqDz.js";
39
+ import { a as resolveMediaAttachmentLocalRoots, n as createMediaAttachmentCache, o as runCapability, r as normalizeMediaAttachments, t as buildProviderRegistry, u as isAudioAttachment } from "./runner-PgRFPYUj.js";
40
40
 
41
41
  //#region src/media-understanding/audio-preflight.ts
42
42
  /**
@@ -1,63 +1,63 @@
1
1
  import "./paths-Cn44w-EB.js";
2
2
  import { F as shouldLogVerbose, M as logVerbose } from "./utils-CXzXXV2o.js";
3
3
  import "./thinking-EAliFiVK.js";
4
- import "./agent-scope-RA0zXRpu.js";
4
+ import "./agent-scope-Bn39ugK4.js";
5
5
  import "./subsystem-CGZX2PBV.js";
6
6
  import "./runtime-44j_X4Y6.js";
7
- import "./idlehands-root-B8cUs-5M.js";
7
+ import "./idlehands-root-DFL2GrNW.js";
8
8
  import "./exec-CKHMT0tZ.js";
9
- import "./model-selection-0dGxYGp8.js";
9
+ import "./model-selection-CSn9tUuH.js";
10
10
  import "./github-copilot-token-D7lpquOO.js";
11
11
  import "./boolean-BsqeuxE6.js";
12
12
  import "./env-Bx-F45X5.js";
13
13
  import "./host-env-security-DkAVVuaw.js";
14
14
  import "./env-vars-sTMVGyld.js";
15
- import "./manifest-registry-Bak1x76G.js";
16
- import "./dock-Y96MzKuM.js";
15
+ import "./manifest-registry-RfRn8HJx.js";
16
+ import "./dock-CzF5XYGd.js";
17
17
  import "./message-channel-DVauVtrg.js";
18
- import { a as resolveMediaAttachmentLocalRoots, n as createMediaAttachmentCache, o as runCapability, r as normalizeMediaAttachments, s as isAudioAttachment, t as buildProviderRegistry } from "./runner-DzszLzI4.js";
19
- import "./image-DSDEbSiO.js";
20
- import "./models-config-C5A1wDWh.js";
21
- import "./pi-model-discovery-BIP3RjXl.js";
22
- import "./pi-embedded-helpers-BCsfqpDt.js";
23
- import "./sandbox-DcUw5h3p.js";
18
+ import { a as resolveMediaAttachmentLocalRoots, n as createMediaAttachmentCache, o as runCapability, r as normalizeMediaAttachments, s as isAudioAttachment, t as buildProviderRegistry } from "./runner-BFG54hnb.js";
19
+ import "./image-C2JZiK-6.js";
20
+ import "./models-config-lQpqp472.js";
21
+ import "./pi-model-discovery-Bt79ifyi.js";
22
+ import "./pi-embedded-helpers-BkzrQ5bZ.js";
23
+ import "./sandbox-CfPbhDY_.js";
24
24
  import "./tool-catalog-4_Wxc542.js";
25
- import "./chrome-VBsQfIrt.js";
25
+ import "./chrome-YguTEaLx.js";
26
26
  import "./tailscale-B5Irc_Bi.js";
27
27
  import "./ip-DJ5wsTQn.js";
28
28
  import "./tailnet-C9lH_YnG.js";
29
29
  import "./ws-XBTtYpJc.js";
30
30
  import "./auth-heRVBxh2.js";
31
- import "./server-context-DI0W_H7R.js";
31
+ import "./server-context-BxNSTpH6.js";
32
32
  import "./frontmatter-D-sQ_Hqk.js";
33
- import "./skills-DlvDyK8L.js";
34
- import "./path-alias-guards-FXBVVTLw.js";
35
- import "./paths-B-CLQ5RT.js";
33
+ import "./skills-TIyQDZx7.js";
34
+ import "./path-alias-guards-BCskHdfJ.js";
35
+ import "./paths-Bt0fZexW.js";
36
36
  import "./redact-B_4KNlXs.js";
37
37
  import "./errors-DZDuPc3M.js";
38
- import "./fs-safe-_JQUGpZf.js";
38
+ import "./fs-safe-DNFrxDS-.js";
39
39
  import "./ssrf-Dw9zzKSM.js";
40
- import "./image-ops-BU-VdLZu.js";
41
- import "./store-kH9wHHbO.js";
42
- import "./ports-SQy1d-RL.js";
40
+ import "./image-ops-BkoEFRYH.js";
41
+ import "./store-CLNuI8-G.js";
42
+ import "./ports-DWJO5S52.js";
43
43
  import "./trash-CUFiyQN5.js";
44
44
  import "./server-middleware-BC21xYvr.js";
45
- import "./sessions-BtPXimXQ.js";
46
- import "./plugins-D46VZh7u.js";
47
- import "./accounts-DLTODa_Z.js";
48
- import "./accounts-3HS_UAhJ.js";
49
- import "./accounts-DgbTKQoW.js";
50
- import "./bindings-B59Q7nsk.js";
45
+ import "./sessions-BqWocozB.js";
46
+ import "./plugins-B4hASNc2.js";
47
+ import "./accounts-D-hQsUw-.js";
48
+ import "./accounts-DsVN0UNw.js";
49
+ import "./accounts-D87a1Y_K.js";
50
+ import "./bindings-DZjkLUU_.js";
51
51
  import "./logging-q4KyMmY-.js";
52
- import "./auth-store-DDzIMy8_.js";
52
+ import "./auth-store-CMyrmmSF.js";
53
53
  import "./paths-DRz46q00.js";
54
54
  import "./chat-envelope-Bebo3vwl.js";
55
- import "./tool-images-CHqepyF_.js";
55
+ import "./tool-images-DZHrc4pq.js";
56
56
  import "./tool-display-Dac7lHGW.js";
57
57
  import "./fetch-guard-yUZu1Vzc.js";
58
- import "./api-key-rotation-B-FTJm5p.js";
59
- import "./local-roots-q0xbefkf.js";
60
- import "./model-catalog-D9no0CH2.js";
58
+ import "./api-key-rotation-nXQVJErE.js";
59
+ import "./local-roots-Cco87A2_.js";
60
+ import "./model-catalog-BCsDrrvq.js";
61
61
 
62
62
  //#region src/media-understanding/audio-preflight.ts
63
63
  /**
@@ -15,8 +15,8 @@ import "./accounts-BRVjft5i.js";
15
15
  import "./image-ops-BDG-MYYV.js";
16
16
  import "./pi-model-discovery-Dic-M5qw.js";
17
17
  import "./message-channel-DqqfOIdx.js";
18
- import "./pi-embedded-helpers-Ct2rwp-P.js";
19
- import "./chrome-Do5potHV.js";
18
+ import "./pi-embedded-helpers-C2j0LfJC.js";
19
+ import "./chrome-DEnkfZ9p.js";
20
20
  import "./ssrf-DappnhDp.js";
21
21
  import "./skills-nQcWk6Z6.js";
22
22
  import "./path-alias-guards-CGbCFqW8.js";
@@ -29,11 +29,11 @@ import "./accounts-CBoBCTgA.js";
29
29
  import "./paths-vOrMwCEQ.js";
30
30
  import "./tool-images-CpZSs-zE.js";
31
31
  import "./thinking-BFsWfunr.js";
32
- import "./image-BAsQlUqT.js";
32
+ import "./image-C_aN5P6-.js";
33
33
  import "./gemini-auth-m2hi6OmF.js";
34
34
  import "./fetch-guard-BdCPmLBP.js";
35
35
  import "./local-roots-BnWzOrXv.js";
36
- import { a as resolveMediaAttachmentLocalRoots, n as createMediaAttachmentCache, o as runCapability, r as normalizeMediaAttachments, t as buildProviderRegistry, u as isAudioAttachment } from "./runner-Bv_BA3vd.js";
36
+ import { a as resolveMediaAttachmentLocalRoots, n as createMediaAttachmentCache, o as runCapability, r as normalizeMediaAttachments, t as buildProviderRegistry, u as isAudioAttachment } from "./runner-CZW_eyf2.js";
37
37
 
38
38
  //#region src/media-understanding/audio-preflight.ts
39
39
  /**
@@ -1,38 +1,38 @@
1
1
  import { g as resolveStateDir, m as resolveOAuthDir, o as resolveConfigPath } from "./paths-Cn44w-EB.js";
2
- import { M as resolveAgentModelFallbackValues, N as resolveAgentModelPrimaryValue, d as resolveDefaultAgentId } from "./agent-scope-RA0zXRpu.js";
2
+ import { M as resolveAgentModelFallbackValues, N as resolveAgentModelPrimaryValue, d as resolveDefaultAgentId } from "./agent-scope-Bn39ugK4.js";
3
3
  import { s as normalizeAgentId } from "./session-key-Cuihcz_O.js";
4
- import { Dt as formatPermissionRemediation, Et as formatPermissionDetail, Ft as createConfigIO, Ot as inspectPathPermissions, jn as normalizeTrustedSafeBinDirs, kt as safeStat, lr as INCLUDE_KEY, on as isDangerousNetworkMode, sn as normalizeNetworkMode, ur as MAX_INCLUDE_DEPTH } from "./model-selection-0dGxYGp8.js";
4
+ import { Dt as formatPermissionRemediation, Et as formatPermissionDetail, Ft as createConfigIO, Ot as inspectPathPermissions, jn as normalizeTrustedSafeBinDirs, kt as safeStat, lr as INCLUDE_KEY, on as isDangerousNetworkMode, sn as normalizeNetworkMode, ur as MAX_INCLUDE_DEPTH } from "./model-selection-CSn9tUuH.js";
5
5
  import { t as formatCliCommand } from "./command-format-DInZLuZ8.js";
6
6
  import { n as isPathInside, t as extensionUsesSkippedScannerPath } from "./scan-paths-DE00o1Lk.js";
7
- import { u as normalizePluginsConfig } from "./manifest-registry-Bak1x76G.js";
7
+ import { u as normalizePluginsConfig } from "./manifest-registry-RfRn8HJx.js";
8
8
  import { n as MANIFEST_KEY } from "./legacy-names-DB161qHh.js";
9
- import { l as normalizeStringEntries } from "./dock-Y96MzKuM.js";
9
+ import { l as normalizeStringEntries } from "./dock-CzF5XYGd.js";
10
10
  import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-DVauVtrg.js";
11
- import { C as resolveToolProfilePolicy, f as resolveSandboxConfigForAgent, k as SANDBOX_BROWSER_SECURITY_HASH_EPOCH, l as execDockerRaw, m as resolveSandboxToolPolicyForAgent, u as getBlockedBindReason } from "./sandbox-DcUw5h3p.js";
11
+ import { C as resolveToolProfilePolicy, f as resolveSandboxConfigForAgent, k as SANDBOX_BROWSER_SECURITY_HASH_EPOCH, l as execDockerRaw, m as resolveSandboxToolPolicyForAgent, u as getBlockedBindReason } from "./sandbox-CfPbhDY_.js";
12
12
  import { a as resolveGatewayAuth } from "./auth-heRVBxh2.js";
13
13
  import { t as resolveGatewayCredentialsFromConfig } from "./credentials-DcJ9zJDt.js";
14
- import { a as resolveProfile, i as resolveBrowserConfig, s as resolveBrowserControlAuth } from "./server-context-DI0W_H7R.js";
15
- import { i as loadWorkspaceSkillEntries } from "./skills-DlvDyK8L.js";
14
+ import { a as resolveProfile, i as resolveBrowserConfig, s as resolveBrowserControlAuth } from "./server-context-BxNSTpH6.js";
15
+ import { i as loadWorkspaceSkillEntries } from "./skills-TIyQDZx7.js";
16
16
  import { n as formatErrorMessage } from "./errors-DZDuPc3M.js";
17
- import { n as listChannelPlugins } from "./plugins-D46VZh7u.js";
18
- import { a as resolveNativeSkillsEnabled, i as resolveNativeCommandsEnabled } from "./commands-Dj5LalLo.js";
19
- import { t as GatewayClient } from "./client-DxH9hwLn.js";
20
- import { c as READ_SCOPE, t as buildGatewayConnectionDetails } from "./call-BRL23UCk.js";
21
- import { i as readChannelAllowFromStore } from "./pairing-store-CPpEEQJO.js";
22
- import { r as resolveMergedSafeBinProfileFixtures, t as listInterpreterLikeSafeBins } from "./exec-safe-bin-runtime-policy-DaoU9-ni.js";
23
- import { l as resolveDmAllowState, n as isToolAllowedByPolicies, o as pickSandboxToolPolicy } from "./pi-tools.policy-DfITIKZj.js";
17
+ import { n as listChannelPlugins } from "./plugins-B4hASNc2.js";
18
+ import { a as resolveNativeSkillsEnabled, i as resolveNativeCommandsEnabled } from "./commands-D3BU_t7G.js";
19
+ import { t as GatewayClient } from "./client-DIckPnsi.js";
20
+ import { c as READ_SCOPE, t as buildGatewayConnectionDetails } from "./call-DnTBT02D.js";
21
+ import { i as readChannelAllowFromStore } from "./pairing-store-qvpPoWL_.js";
22
+ import { r as resolveMergedSafeBinProfileFixtures, t as listInterpreterLikeSafeBins } from "./exec-safe-bin-runtime-policy-DYXuBKqH.js";
23
+ import { l as resolveDmAllowState, n as isToolAllowedByPolicies, o as pickSandboxToolPolicy } from "./pi-tools.policy-B_ME3yF6.js";
24
24
  import { n as isDangerousNameMatchingEnabled } from "./dangerous-name-matching-c9SZFcEG.js";
25
- import { t as listAgentWorkspaceDirs } from "./workspace-dirs-SsExQ3Bz.js";
25
+ import { t as listAgentWorkspaceDirs } from "./workspace-dirs-D3bousoX.js";
26
26
  import { n as DEFAULT_GATEWAY_HTTP_TOOL_DENY } from "./dangerous-tools-ulSRJzn7.js";
27
27
  import { t as resolveChannelDefaultAccountId } from "./helpers-C6eW1WGZ.js";
28
- import { t as scanDirectoryWithSummary } from "./skill-scanner-D7mzXRXd.js";
28
+ import { t as scanDirectoryWithSummary } from "./skill-scanner-B4Ftsbd2.js";
29
29
  import { i as NODE_SYSTEM_RUN_COMMANDS, r as NODE_SYSTEM_NOTIFY_COMMAND, t as NODE_BROWSER_PROXY_COMMAND } from "./node-commands-DAlC0lvG.js";
30
30
  import { c as normalizeTelegramAllowFromEntry, s as isNumericTelegramUserId, t as isDiscordMutableAllowEntry } from "./mutable-allowlist-detectors-DWMFyfKa.js";
31
31
  import { t as inferParamBFromIdOrName } from "./model-param-b-DnD62yWY.js";
32
32
  import path from "node:path";
33
33
  import JSON5 from "json5";
34
- import * as fs$1 from "node:fs/promises";
35
- import fs from "node:fs/promises";
34
+ import * as fs from "node:fs/promises";
35
+ import fsPromises from "node:fs/promises";
36
36
  import { randomUUID } from "node:crypto";
37
37
  import { isIP } from "node:net";
38
38
 
@@ -1443,7 +1443,7 @@ async function collectIncludePathsRecursive(params) {
1443
1443
  if (visited.has(resolved)) continue;
1444
1444
  visited.add(resolved);
1445
1445
  result.push(resolved);
1446
- const rawText = await fs$1.readFile(resolved, "utf-8").catch(() => null);
1446
+ const rawText = await fs.readFile(resolved, "utf-8").catch(() => null);
1447
1447
  if (!rawText) continue;
1448
1448
  const nestedParsed = (() => {
1449
1449
  try {
@@ -1476,7 +1476,7 @@ function expandTilde(p, env) {
1476
1476
  }
1477
1477
  async function readPluginManifestExtensions(pluginPath) {
1478
1478
  const manifestPath = path.join(pluginPath, "package.json");
1479
- const raw = await fs.readFile(manifestPath, "utf-8").catch(() => "");
1479
+ const raw = await fsPromises.readFile(manifestPath, "utf-8").catch(() => "");
1480
1480
  if (!raw.trim()) return [];
1481
1481
  const extensions = JSON.parse(raw)?.[MANIFEST_KEY]?.extensions;
1482
1482
  if (!Array.isArray(extensions)) return [];
@@ -1498,7 +1498,7 @@ async function listInstalledPluginDirs(params) {
1498
1498
  };
1499
1499
  return {
1500
1500
  extensionsDir,
1501
- pluginDirs: (await fs.readdir(extensionsDir, { withFileTypes: true }).catch((err) => {
1501
+ pluginDirs: (await fsPromises.readdir(extensionsDir, { withFileTypes: true }).catch((err) => {
1502
1502
  params.onReadError?.(err);
1503
1503
  return [];
1504
1504
  })).filter((entry) => entry.isDirectory()).map((entry) => entry.name).filter(Boolean)
@@ -1561,7 +1561,7 @@ function isPinnedRegistrySpec(spec) {
1561
1561
  }
1562
1562
  async function readInstalledPackageVersion(dir) {
1563
1563
  try {
1564
- const raw = await fs.readFile(path.join(dir, "package.json"), "utf-8");
1564
+ const raw = await fsPromises.readFile(path.join(dir, "package.json"), "utf-8");
1565
1565
  const parsed = JSON.parse(raw);
1566
1566
  return typeof parsed.version === "string" ? parsed.version : void 0;
1567
1567
  } catch {
@@ -6,7 +6,7 @@ import { n as loadModelCatalog } from "./model-catalog-DYWymzg_.js";
6
6
  import { f as openUrl } from "./onboard-helpers-Dp6wXNs7.js";
7
7
  import { t as enablePluginInConfig } from "./enable-CMXupNXl.js";
8
8
  import { $ as ZAI_DEFAULT_MODEL_REF, A as applyTogetherConfig, B as applyLitellmConfig, C as applyMoonshotProviderConfigCn, Ct as writeOAuthCredentials, D as applyQianfanProviderConfig, Dt as QIANFAN_DEFAULT_MODEL_REF, E as applyQianfanConfig, Et as MOONSHOT_DEFAULT_MODEL_REF, F as applyXaiProviderConfig, G as applyVercelAiGatewayProviderConfig, H as applyCloudflareAiGatewayConfig, I as applyXiaomiConfig, J as LITELLM_DEFAULT_MODEL_REF, K as applyAgentDefaultModelPrimary, L as applyXiaomiProviderConfig, M as applyVeniceConfig, N as applyVeniceProviderConfig, O as applySyntheticConfig, Ot as XAI_DEFAULT_MODEL_REF, P as applyXaiConfig, Q as XIAOMI_DEFAULT_MODEL_REF, R as applyZaiConfig, S as applyMoonshotProviderConfig, St as setZaiApiKey, T as applyOpenrouterProviderConfig, Tt as MISTRAL_DEFAULT_MODEL_REF, U as applyCloudflareAiGatewayProviderConfig, V as applyLitellmProviderConfig, W as applyVercelAiGatewayConfig, X as TOGETHER_DEFAULT_MODEL_REF, Y as OPENROUTER_DEFAULT_MODEL_REF, Z as VERCEL_AI_GATEWAY_DEFAULT_MODEL_REF, _ as applyKimiCodeProviderConfig, _t as setVeniceApiKey, a as applyMinimaxApiConfig, at as setKilocodeApiKey, b as applyMoonshotConfig, bt as setXaiApiKey, c as applyMinimaxApiProviderConfigCn, ct as setMinimaxApiKey, d as applyAuthProfileConfig, dt as setOpenaiApiKey, et as setAnthropicApiKey, ft as setOpencodeZenApiKey, g as applyKimiCodeConfig, gt as setTogetherApiKey, h as applyKilocodeProviderConfig, ht as setSyntheticApiKey, i as applyOpencodeZenProviderConfig, it as setHuggingfaceApiKey, j as applyTogetherProviderConfig, k as applySyntheticProviderConfig, l as applyMinimaxConfig, lt as setMistralApiKey, m as applyKilocodeConfig, mt as setQianfanApiKey, n as validateAnthropicSetupToken, nt as setCloudflareAiGatewayConfig, o as applyMinimaxApiConfigCn, ot as setKimiCodingApiKey, p as applyHuggingfaceProviderConfig, pt as setOpenrouterApiKey, q as HUGGINGFACE_DEFAULT_MODEL_REF, r as applyOpencodeZenConfig, rt as setGeminiApiKey, s as applyMinimaxApiProviderConfig, st as setLitellmApiKey, t as buildTokenProfileId, tt as setByteplusApiKey, u as applyMinimaxProviderConfig, ut as setMoonshotApiKey, v as applyMistralConfig, vt as setVercelAiGatewayApiKey, w as applyOpenrouterConfig, wt as KIMI_CODING_MODEL_REF, x as applyMoonshotConfigCn, xt as setXiaomiApiKey, y as applyMistralProviderConfig, yt as setVolcengineApiKey, z as applyZaiProviderConfig } from "./auth-token-BQ_ECwH7.js";
9
- import { a as createVpsAwareOAuthHandlers, c as githubCopilotLoginCommand, i as resolveProviderMatch, n as mergeConfigPatch, o as isRemoteEnvironment, r as pickAuthMethod, s as resolvePluginProviders, t as applyDefaultModel } from "./provider-auth-helpers-CnqcE5__.js";
9
+ import { a as createVpsAwareOAuthHandlers, c as githubCopilotLoginCommand, i as resolveProviderMatch, n as mergeConfigPatch, o as isRemoteEnvironment, r as pickAuthMethod, s as resolvePluginProviders, t as applyDefaultModel } from "./provider-auth-helpers-CrGScfnN.js";
10
10
  import { a as ensureApiKeyFromOptionEnvOrPrompt, c as applyDefaultModelChoice, d as validateApiKeyInput, l as ensureModelAllowlistEntry, n as createAuthChoiceDefaultModelApplier, o as normalizeSecretInputModeInput, r as createAuthChoiceModelStateBridge, s as normalizeTokenProviderInput, t as createAuthChoiceAgentModelNoter, u as normalizeApiKeyInput } from "./auth-choice.apply-helpers-Bj-Y-Sar.js";
11
11
  import { a as GOOGLE_GEMINI_DEFAULT_MODEL, i as detectZaiEndpoint, n as applyOpenAIConfig, o as applyGoogleGeminiModelDefault, r as applyOpenAIProviderConfig, t as OPENAI_DEFAULT_MODEL } from "./openai-model-default-DTIibBxa.js";
12
12
  import { c as OPENAI_CODEX_DEFAULT_MODEL, l as applyOpenAICodexModelDefault, r as applyPrimaryModel, s as promptAndConfigureVllm } from "./model-picker-D_yngXMe.js";
@@ -1,25 +1,25 @@
1
1
  import "./paths-Cn44w-EB.js";
2
2
  import "./utils-CXzXXV2o.js";
3
- import "./agent-scope-RA0zXRpu.js";
3
+ import "./agent-scope-Bn39ugK4.js";
4
4
  import "./subsystem-CGZX2PBV.js";
5
5
  import "./runtime-44j_X4Y6.js";
6
- import "./idlehands-root-B8cUs-5M.js";
6
+ import "./idlehands-root-DFL2GrNW.js";
7
7
  import "./exec-CKHMT0tZ.js";
8
- import { Er as upsertAuthProfile, Ur as normalizeOptionalSecretInput, Wr as normalizeSecretInput, X as resolveEnvApiKey, cn as parseDurationMs, kr as ensureAuthProfileStore, mt as resolveApiKeyForProfile, rn as resolveDefaultSecretProviderAlias, st as resolveAuthProfileOrder, u as normalizeProviderId } from "./model-selection-0dGxYGp8.js";
8
+ import { Er as upsertAuthProfile, Ur as normalizeOptionalSecretInput, Wr as normalizeSecretInput, X as resolveEnvApiKey, cn as parseDurationMs, kr as ensureAuthProfileStore, mt as resolveApiKeyForProfile, rn as resolveDefaultSecretProviderAlias, st as resolveAuthProfileOrder, u as normalizeProviderId } from "./model-selection-CSn9tUuH.js";
9
9
  import "./github-copilot-token-D7lpquOO.js";
10
10
  import "./boolean-BsqeuxE6.js";
11
11
  import "./env-Bx-F45X5.js";
12
12
  import "./host-env-security-DkAVVuaw.js";
13
13
  import "./env-vars-sTMVGyld.js";
14
- import "./manifest-registry-Bak1x76G.js";
15
- import "./models-config-C5A1wDWh.js";
16
- import "./model-catalog-D9no0CH2.js";
17
- import "./shared-CpDPo3hJ.js";
18
- import { A as applyTogetherConfig, B as applyLitellmConfig, E as applyQianfanConfig, H as applyCloudflareAiGatewayConfig, I as applyXiaomiConfig, M as applyVeniceConfig, O as applySyntheticConfig, P as applyXaiConfig, R as applyZaiConfig, St as setZaiApiKey, W as applyVercelAiGatewayConfig, _t as setVeniceApiKey, a as applyMinimaxApiConfig, at as setKilocodeApiKey, b as applyMoonshotConfig, bt as setXaiApiKey, ct as setMinimaxApiKey, d as applyAuthProfileConfig, dt as setOpenaiApiKey, et as setAnthropicApiKey, f as applyHuggingfaceConfig, ft as setOpencodeZenApiKey, g as applyKimiCodeConfig, gt as setTogetherApiKey, ht as setSyntheticApiKey, it as setHuggingfaceApiKey, l as applyMinimaxConfig, lt as setMistralApiKey, m as applyKilocodeConfig, mt as setQianfanApiKey, n as validateAnthropicSetupToken, nt as setCloudflareAiGatewayConfig, o as applyMinimaxApiConfigCn, ot as setKimiCodingApiKey, pt as setOpenrouterApiKey, r as applyOpencodeZenConfig, rt as setGeminiApiKey, st as setLitellmApiKey, t as buildTokenProfileId, tt as setByteplusApiKey, ut as setMoonshotApiKey, v as applyMistralConfig, vt as setVercelAiGatewayApiKey, w as applyOpenrouterConfig, x as applyMoonshotConfigCn, xt as setXiaomiApiKey, yt as setVolcengineApiKey } from "./auth-token-BJq87X3o.js";
19
- import { o as normalizeSecretInputModeInput } from "./auth-choice.apply-helpers-CGcniL1T.js";
20
- import { i as detectZaiEndpoint, n as applyOpenAIConfig, o as applyGoogleGeminiModelDefault } from "./openai-model-default-7J6cw1rA.js";
21
- import { r as applyPrimaryModel } from "./model-picker-BkXoTOiA.js";
22
- import { i as parseNonInteractiveCustomApiFlags, n as applyCustomApiConfig, o as resolveCustomProviderId, t as CustomApiError } from "./onboard-custom-DUbzMMu7.js";
14
+ import "./manifest-registry-RfRn8HJx.js";
15
+ import "./models-config-lQpqp472.js";
16
+ import "./model-catalog-BCsDrrvq.js";
17
+ import "./shared-DnQ4iyXk.js";
18
+ import { A as applyTogetherConfig, B as applyLitellmConfig, E as applyQianfanConfig, H as applyCloudflareAiGatewayConfig, I as applyXiaomiConfig, M as applyVeniceConfig, O as applySyntheticConfig, P as applyXaiConfig, R as applyZaiConfig, St as setZaiApiKey, W as applyVercelAiGatewayConfig, _t as setVeniceApiKey, a as applyMinimaxApiConfig, at as setKilocodeApiKey, b as applyMoonshotConfig, bt as setXaiApiKey, ct as setMinimaxApiKey, d as applyAuthProfileConfig, dt as setOpenaiApiKey, et as setAnthropicApiKey, f as applyHuggingfaceConfig, ft as setOpencodeZenApiKey, g as applyKimiCodeConfig, gt as setTogetherApiKey, ht as setSyntheticApiKey, it as setHuggingfaceApiKey, l as applyMinimaxConfig, lt as setMistralApiKey, m as applyKilocodeConfig, mt as setQianfanApiKey, n as validateAnthropicSetupToken, nt as setCloudflareAiGatewayConfig, o as applyMinimaxApiConfigCn, ot as setKimiCodingApiKey, pt as setOpenrouterApiKey, r as applyOpencodeZenConfig, rt as setGeminiApiKey, st as setLitellmApiKey, t as buildTokenProfileId, tt as setByteplusApiKey, ut as setMoonshotApiKey, v as applyMistralConfig, vt as setVercelAiGatewayApiKey, w as applyOpenrouterConfig, x as applyMoonshotConfigCn, xt as setXiaomiApiKey, yt as setVolcengineApiKey } from "./auth-token-fKt_cHOj.js";
19
+ import { o as normalizeSecretInputModeInput } from "./auth-choice.apply-helpers-pTqMTYmi.js";
20
+ import { i as detectZaiEndpoint, n as applyOpenAIConfig, o as applyGoogleGeminiModelDefault } from "./openai-model-default-OPCCNNS0.js";
21
+ import { r as applyPrimaryModel } from "./model-picker-D3U0wJCO.js";
22
+ import { i as parseNonInteractiveCustomApiFlags, n as applyCustomApiConfig, o as resolveCustomProviderId, t as CustomApiError } from "./onboard-custom-D2sCP3_S.js";
23
23
 
24
24
  //#region src/commands/onboard-non-interactive/api-keys.ts
25
25
  function parseEnvVarNameFromSourceLabel(source) {
@@ -1,15 +1,15 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { A as resolveDefaultAgentWorkspaceDir, P as toAgentModelListLike, a as resolveAgentDir, d as resolveDefaultAgentId, u as resolveAgentWorkspaceDir } from "./agent-scope-RA0zXRpu.js";
3
- import { Cr as listProfilesForProvider, Er as upsertAuthProfile, Ir as resolveIdleHandsAgentDir, Kr as KILOCODE_DEFAULT_MODEL_REF, P as VENICE_DEFAULT_MODEL_REF, V as SYNTHETIC_DEFAULT_MODEL_REF, X as resolveEnvApiKey, _t as generateChutesPkce, gt as exchangeChutesCodeForTokens, h as resolveDefaultModelForAgent, ht as CHUTES_AUTHORIZE_ENDPOINT, kr as ensureAuthProfileStore, nt as isHuggingfacePolicyLocked, q as getCustomProviderApiKey, rt as CLOUDFLARE_AI_GATEWAY_DEFAULT_MODEL_REF, st as resolveAuthProfileOrder, tt as discoverHuggingfaceModels, vt as parseOAuthCallbackInput } from "./model-selection-0dGxYGp8.js";
2
+ import { A as resolveDefaultAgentWorkspaceDir, P as toAgentModelListLike, a as resolveAgentDir, d as resolveDefaultAgentId, u as resolveAgentWorkspaceDir } from "./agent-scope-Bn39ugK4.js";
3
+ import { Cr as listProfilesForProvider, Er as upsertAuthProfile, Ir as resolveIdleHandsAgentDir, Kr as KILOCODE_DEFAULT_MODEL_REF, P as VENICE_DEFAULT_MODEL_REF, V as SYNTHETIC_DEFAULT_MODEL_REF, X as resolveEnvApiKey, _t as generateChutesPkce, gt as exchangeChutesCodeForTokens, h as resolveDefaultModelForAgent, ht as CHUTES_AUTHORIZE_ENDPOINT, kr as ensureAuthProfileStore, nt as isHuggingfacePolicyLocked, q as getCustomProviderApiKey, rt as CLOUDFLARE_AI_GATEWAY_DEFAULT_MODEL_REF, st as resolveAuthProfileOrder, tt as discoverHuggingfaceModels, vt as parseOAuthCallbackInput } from "./model-selection-CSn9tUuH.js";
4
4
  import { i as isLoopbackHost } from "./ws-XBTtYpJc.js";
5
- import { n as loadModelCatalog } from "./model-catalog-D9no0CH2.js";
6
- import { f as openUrl } from "./onboard-helpers-BQmbMJxJ.js";
7
- import { t as enablePluginInConfig } from "./enable-o_s6PBsC.js";
8
- import { $ as ZAI_DEFAULT_MODEL_REF, A as applyTogetherConfig, B as applyLitellmConfig, C as applyMoonshotProviderConfigCn, Ct as writeOAuthCredentials, D as applyQianfanProviderConfig, Dt as QIANFAN_DEFAULT_MODEL_REF, E as applyQianfanConfig, Et as MOONSHOT_DEFAULT_MODEL_REF, F as applyXaiProviderConfig, G as applyVercelAiGatewayProviderConfig, H as applyCloudflareAiGatewayConfig, I as applyXiaomiConfig, J as LITELLM_DEFAULT_MODEL_REF, K as applyAgentDefaultModelPrimary, L as applyXiaomiProviderConfig, M as applyVeniceConfig, N as applyVeniceProviderConfig, O as applySyntheticConfig, Ot as XAI_DEFAULT_MODEL_REF, P as applyXaiConfig, Q as XIAOMI_DEFAULT_MODEL_REF, R as applyZaiConfig, S as applyMoonshotProviderConfig, St as setZaiApiKey, T as applyOpenrouterProviderConfig, Tt as MISTRAL_DEFAULT_MODEL_REF, U as applyCloudflareAiGatewayProviderConfig, V as applyLitellmProviderConfig, W as applyVercelAiGatewayConfig, X as TOGETHER_DEFAULT_MODEL_REF, Y as OPENROUTER_DEFAULT_MODEL_REF, Z as VERCEL_AI_GATEWAY_DEFAULT_MODEL_REF, _ as applyKimiCodeProviderConfig, _t as setVeniceApiKey, a as applyMinimaxApiConfig, at as setKilocodeApiKey, b as applyMoonshotConfig, bt as setXaiApiKey, c as applyMinimaxApiProviderConfigCn, ct as setMinimaxApiKey, d as applyAuthProfileConfig, dt as setOpenaiApiKey, et as setAnthropicApiKey, ft as setOpencodeZenApiKey, g as applyKimiCodeConfig, gt as setTogetherApiKey, h as applyKilocodeProviderConfig, ht as setSyntheticApiKey, i as applyOpencodeZenProviderConfig, it as setHuggingfaceApiKey, j as applyTogetherProviderConfig, k as applySyntheticProviderConfig, l as applyMinimaxConfig, lt as setMistralApiKey, m as applyKilocodeConfig, mt as setQianfanApiKey, n as validateAnthropicSetupToken, nt as setCloudflareAiGatewayConfig, o as applyMinimaxApiConfigCn, ot as setKimiCodingApiKey, p as applyHuggingfaceProviderConfig, pt as setOpenrouterApiKey, q as HUGGINGFACE_DEFAULT_MODEL_REF, r as applyOpencodeZenConfig, rt as setGeminiApiKey, s as applyMinimaxApiProviderConfig, st as setLitellmApiKey, t as buildTokenProfileId, tt as setByteplusApiKey, u as applyMinimaxProviderConfig, ut as setMoonshotApiKey, v as applyMistralConfig, vt as setVercelAiGatewayApiKey, w as applyOpenrouterConfig, wt as KIMI_CODING_MODEL_REF, x as applyMoonshotConfigCn, xt as setXiaomiApiKey, y as applyMistralProviderConfig, yt as setVolcengineApiKey, z as applyZaiProviderConfig } from "./auth-token-BJq87X3o.js";
9
- import { a as createVpsAwareOAuthHandlers, c as githubCopilotLoginCommand, i as resolveProviderMatch, n as mergeConfigPatch, o as isRemoteEnvironment, r as pickAuthMethod, s as resolvePluginProviders, t as applyDefaultModel } from "./provider-auth-helpers-PdlgGx1Z.js";
10
- import { a as ensureApiKeyFromOptionEnvOrPrompt, c as applyDefaultModelChoice, d as validateApiKeyInput, l as ensureModelAllowlistEntry, n as createAuthChoiceDefaultModelApplier, o as normalizeSecretInputModeInput, r as createAuthChoiceModelStateBridge, s as normalizeTokenProviderInput, t as createAuthChoiceAgentModelNoter, u as normalizeApiKeyInput } from "./auth-choice.apply-helpers-CGcniL1T.js";
11
- import { a as GOOGLE_GEMINI_DEFAULT_MODEL, i as detectZaiEndpoint, n as applyOpenAIConfig, o as applyGoogleGeminiModelDefault, r as applyOpenAIProviderConfig, t as OPENAI_DEFAULT_MODEL } from "./openai-model-default-7J6cw1rA.js";
12
- import { c as OPENAI_CODEX_DEFAULT_MODEL, l as applyOpenAICodexModelDefault, r as applyPrimaryModel, s as promptAndConfigureVllm } from "./model-picker-BkXoTOiA.js";
5
+ import { n as loadModelCatalog } from "./model-catalog-BCsDrrvq.js";
6
+ import { f as openUrl } from "./onboard-helpers-ByhJg2ST.js";
7
+ import { t as enablePluginInConfig } from "./enable-DaA_orGN.js";
8
+ import { $ as ZAI_DEFAULT_MODEL_REF, A as applyTogetherConfig, B as applyLitellmConfig, C as applyMoonshotProviderConfigCn, Ct as writeOAuthCredentials, D as applyQianfanProviderConfig, Dt as QIANFAN_DEFAULT_MODEL_REF, E as applyQianfanConfig, Et as MOONSHOT_DEFAULT_MODEL_REF, F as applyXaiProviderConfig, G as applyVercelAiGatewayProviderConfig, H as applyCloudflareAiGatewayConfig, I as applyXiaomiConfig, J as LITELLM_DEFAULT_MODEL_REF, K as applyAgentDefaultModelPrimary, L as applyXiaomiProviderConfig, M as applyVeniceConfig, N as applyVeniceProviderConfig, O as applySyntheticConfig, Ot as XAI_DEFAULT_MODEL_REF, P as applyXaiConfig, Q as XIAOMI_DEFAULT_MODEL_REF, R as applyZaiConfig, S as applyMoonshotProviderConfig, St as setZaiApiKey, T as applyOpenrouterProviderConfig, Tt as MISTRAL_DEFAULT_MODEL_REF, U as applyCloudflareAiGatewayProviderConfig, V as applyLitellmProviderConfig, W as applyVercelAiGatewayConfig, X as TOGETHER_DEFAULT_MODEL_REF, Y as OPENROUTER_DEFAULT_MODEL_REF, Z as VERCEL_AI_GATEWAY_DEFAULT_MODEL_REF, _ as applyKimiCodeProviderConfig, _t as setVeniceApiKey, a as applyMinimaxApiConfig, at as setKilocodeApiKey, b as applyMoonshotConfig, bt as setXaiApiKey, c as applyMinimaxApiProviderConfigCn, ct as setMinimaxApiKey, d as applyAuthProfileConfig, dt as setOpenaiApiKey, et as setAnthropicApiKey, ft as setOpencodeZenApiKey, g as applyKimiCodeConfig, gt as setTogetherApiKey, h as applyKilocodeProviderConfig, ht as setSyntheticApiKey, i as applyOpencodeZenProviderConfig, it as setHuggingfaceApiKey, j as applyTogetherProviderConfig, k as applySyntheticProviderConfig, l as applyMinimaxConfig, lt as setMistralApiKey, m as applyKilocodeConfig, mt as setQianfanApiKey, n as validateAnthropicSetupToken, nt as setCloudflareAiGatewayConfig, o as applyMinimaxApiConfigCn, ot as setKimiCodingApiKey, p as applyHuggingfaceProviderConfig, pt as setOpenrouterApiKey, q as HUGGINGFACE_DEFAULT_MODEL_REF, r as applyOpencodeZenConfig, rt as setGeminiApiKey, s as applyMinimaxApiProviderConfig, st as setLitellmApiKey, t as buildTokenProfileId, tt as setByteplusApiKey, u as applyMinimaxProviderConfig, ut as setMoonshotApiKey, v as applyMistralConfig, vt as setVercelAiGatewayApiKey, w as applyOpenrouterConfig, wt as KIMI_CODING_MODEL_REF, x as applyMoonshotConfigCn, xt as setXiaomiApiKey, y as applyMistralProviderConfig, yt as setVolcengineApiKey, z as applyZaiProviderConfig } from "./auth-token-fKt_cHOj.js";
9
+ import { a as createVpsAwareOAuthHandlers, c as githubCopilotLoginCommand, i as resolveProviderMatch, n as mergeConfigPatch, o as isRemoteEnvironment, r as pickAuthMethod, s as resolvePluginProviders, t as applyDefaultModel } from "./provider-auth-helpers-DYxaYmlq.js";
10
+ import { a as ensureApiKeyFromOptionEnvOrPrompt, c as applyDefaultModelChoice, d as validateApiKeyInput, l as ensureModelAllowlistEntry, n as createAuthChoiceDefaultModelApplier, o as normalizeSecretInputModeInput, r as createAuthChoiceModelStateBridge, s as normalizeTokenProviderInput, t as createAuthChoiceAgentModelNoter, u as normalizeApiKeyInput } from "./auth-choice.apply-helpers-pTqMTYmi.js";
11
+ import { a as GOOGLE_GEMINI_DEFAULT_MODEL, i as detectZaiEndpoint, n as applyOpenAIConfig, o as applyGoogleGeminiModelDefault, r as applyOpenAIProviderConfig, t as OPENAI_DEFAULT_MODEL } from "./openai-model-default-OPCCNNS0.js";
12
+ import { c as OPENAI_CODEX_DEFAULT_MODEL, l as applyOpenAICodexModelDefault, r as applyPrimaryModel, s as promptAndConfigureVllm } from "./model-picker-D3U0wJCO.js";
13
13
  import { randomBytes } from "node:crypto";
14
14
  import { loginOpenAICodex } from "@mariozechner/pi-ai";
15
15
  import { createServer } from "node:http";
@@ -1,4 +1,4 @@
1
- import { $r as DEFAULT_PROVIDER, Tt as encodeJsonPointerToken, X as resolveEnvApiKey, nn as isValidFileSecretRefId, p as resolveAllowlistModelKey, rn as resolveDefaultSecretProviderAlias, yt as resolveSecretRefString } from "./model-selection-0dGxYGp8.js";
1
+ import { $r as DEFAULT_PROVIDER, Tt as encodeJsonPointerToken, X as resolveEnvApiKey, nn as isValidFileSecretRefId, p as resolveAllowlistModelKey, rn as resolveDefaultSecretProviderAlias, yt as resolveSecretRefString } from "./model-selection-CSn9tUuH.js";
2
2
  import { t as PROVIDER_ENV_VARS } from "./provider-env-vars-lF9nr_3F.js";
3
3
 
4
4
  //#region src/commands/auth-choice.api-key.ts