@visorcraft/idlehands 4.0.17 → 4.0.19

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 (411) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/{accounts-DsVN0UNw.js → accounts-3HS_UAhJ.js} +1 -1
  3. package/dist/{accounts-D-hQsUw-.js → accounts-DLTODa_Z.js} +1 -1
  4. package/dist/{accounts-D87a1Y_K.js → accounts-DgbTKQoW.js} +1 -1
  5. package/dist/{acp-cli-COix-boa.js → acp-cli-B3uwVAGD.js} +2 -2
  6. package/dist/{acp-cli-D52jj29o.js → acp-cli-BEpWQbqb.js} +7 -7
  7. package/dist/{agent-scope-Bn39ugK4.js → agent-scope-RA0zXRpu.js} +18 -18
  8. package/dist/{agent-via-gateway-BVY7w5-N.js → agent-via-gateway-B03q92bw.js} +3 -2
  9. package/dist/{agent-via-gateway-DSZK5iRF.js → agent-via-gateway-B2Z_k_od.js} +8 -7
  10. package/dist/{agent-via-gateway-BDWomN2t.js → agent-via-gateway-CUQG6kii.js} +5 -4
  11. package/dist/{agent-via-gateway-BlRwv6D6.js → agent-via-gateway-Cn3iNSod.js} +3 -2
  12. package/dist/{agents-BLa67Gdv.js → agents-DdTECKDf.js} +5 -5
  13. package/dist/{agents.config-CyEkgCQE.js → agents.config-CHtoYxr6.js} +2 -2
  14. package/dist/{agents.config-ADCeu0yD.js → agents.config-D2EbQiOx.js} +1 -1
  15. package/dist/{anton-CZ5moxh6.js → anton-D4vpCj_q.js} +47 -10
  16. package/dist/{anton-llLwn1lp.js → anton-DsmttQbC.js} +47 -10
  17. package/dist/{anton-D-0SP_5T.js → anton-hH1PyE2C.js} +47 -10
  18. package/dist/anton-x7f6kIFP.js +777 -0
  19. package/dist/{api-key-rotation-nXQVJErE.js → api-key-rotation-B-FTJm5p.js} +1 -1
  20. package/dist/{audio-preflight-CW8IH1lU.js → audio-preflight-BSlR2jEq.js} +4 -4
  21. package/dist/{audio-preflight-DzjXupNO.js → audio-preflight-Dl1TO10w.js} +31 -31
  22. package/dist/{audit-Bkd4fvVb.js → audit-C9PrbHng.js} +2 -2
  23. package/dist/{audit-D12wg2tV.js → audit-CKeZnjft.js} +22 -22
  24. package/dist/{auth-choice-BDndThZZ.js → auth-choice-D12Wsf7w.js} +12 -12
  25. package/dist/{auth-choice-CqbTnCYz.js → auth-choice-DRR52LJT.js} +10 -10
  26. package/dist/{auth-choice-01ELTnLA.js → auth-choice-DVoPuwEs.js} +2 -2
  27. package/dist/{auth-choice.apply-helpers-pTqMTYmi.js → auth-choice.apply-helpers-CGcniL1T.js} +1 -1
  28. package/dist/{auth-store-CMyrmmSF.js → auth-store-DDzIMy8_.js} +7 -7
  29. package/dist/{auth-token-fKt_cHOj.js → auth-token-BJq87X3o.js} +1 -1
  30. package/dist/{banner-Dv_eAAWw.js → banner-CFKoGAzN.js} +1 -1
  31. package/dist/{bindings-DZjkLUU_.js → bindings-B59Q7nsk.js} +1 -1
  32. package/dist/{browser-cli-Ddh5zEZN.js → browser-cli-Brb82I5e.js} +3 -3
  33. package/dist/{browser-cli-Da-0lyq2.js → browser-cli-Ci6DpTnS.js} +11 -11
  34. package/dist/build-info.json +3 -3
  35. package/dist/bundled/boot-md/handler.js +7 -7
  36. package/dist/bundled/session-memory/handler.js +7 -7
  37. package/dist/{call-DnTBT02D.js → call-BpWhjuOg.js} +9 -9
  38. package/dist/{call-DuNslqj2.js → call-C82rD2Wn.js} +1 -1
  39. package/dist/{channel-account-context-B4nJPU2N.js → channel-account-context-CDbY5AIr.js} +5 -5
  40. package/dist/{channel-options-BvOLgXCF.js → channel-options-B4oF7_V2.js} +3 -3
  41. package/dist/{channel-options-BilcK806.js → channel-options-BU0E7BdU.js} +1 -1
  42. package/dist/{channel-selection-3jUl-PyW.js → channel-selection-ZxRkxpuF.js} +1 -1
  43. package/dist/{channel-web-B1IazKKL.js → channel-web-0icuasR6.js} +22 -22
  44. package/dist/{channel-web-BptLTwvg.js → channel-web-BDytDCrG.js} +2 -2
  45. package/dist/{channels-cli-FssbSykQ.js → channels-cli-B2w32z11.js} +88 -88
  46. package/dist/{channels-cli-DejBZZ85.js → channels-cli-DWaQsKP8.js} +10 -10
  47. package/dist/{channels-status-issues-hgASw9UA.js → channels-status-issues-CDpWjdI3.js} +1 -1
  48. package/dist/{chrome-YguTEaLx.js → chrome-VBsQfIrt.js} +2 -2
  49. package/dist/{chrome-BcJB6PcM.js → chrome-_2tzVjVl.js} +9 -9
  50. package/dist/{clawbot-cli-C5cDal-5.js → clawbot-cli-uFgYrysW.js} +5 -5
  51. package/dist/cli/daemon-cli.js +1 -1
  52. package/dist/{cli-BrQZTuUX.js → cli-BVw2ja-q.js} +70 -70
  53. package/dist/{cli-j1A8WKSj.js → cli-Hplv9sD1.js} +5 -5
  54. package/dist/{client-DIckPnsi.js → client-DtnD-ee9.js} +2 -1
  55. package/dist/{client-Brv1GCwX.js → client-udFMSDes.js} +1 -0
  56. package/dist/{command-registry-DZZAmcbA.js → command-registry-CWDCVzZv.js} +11 -11
  57. package/dist/{commands-D3BU_t7G.js → commands-Dj5LalLo.js} +1 -1
  58. package/dist/{commands-registry-Cj4D_1tw.js → commands-registry-CURlRZQJ.js} +3 -3
  59. package/dist/{completion-cli-Cxvf8clb.js → completion-cli-CjERsZ27.js} +2 -2
  60. package/dist/{completion-cli-ktxbWAiG.js → completion-cli-f5M3WVf8.js} +12 -12
  61. package/dist/{config-cli-CogA71uD.js → config-cli-B2gc8CV1.js} +6 -6
  62. package/dist/{config-cli-Bq_MWzp9.js → config-cli-Bt7n6ZJS.js} +1 -1
  63. package/dist/{config-guard-DnAyuF6T.js → config-guard-BdsOumqh.js} +17 -17
  64. package/dist/{config-validation-DIomLMwH.js → config-validation-BvKX6fPw.js} +2 -2
  65. package/dist/{configure-CZUn--aN.js → configure-BXsptBk3.js} +16 -16
  66. package/dist/{configure-CPDGJFyt.js → configure-CKspMrI1.js} +6 -6
  67. package/dist/{control-ui-assets-CiaCDBvZ.js → control-ui-assets-C7ZpN9hN.js} +1 -1
  68. package/dist/{cron-cli-B8uqoogS.js → cron-cli-DQsnGQKs.js} +12 -12
  69. package/dist/{cron-cli-D4DXiD1C.js → cron-cli-DXZzPHDQ.js} +3 -3
  70. package/dist/{daemon-cli-yC6gq-yv.js → daemon-cli-DOG5Mivy.js} +2 -2
  71. package/dist/{daemon-cli-CMBNTpSS.js → daemon-cli-DUg-s4LG.js} +11 -11
  72. package/dist/daemon-cli.js +1 -0
  73. package/dist/{daemon-install-DeqQiAad.js → daemon-install-CYPo4M1M.js} +4 -4
  74. package/dist/{daemon-install-helpers-Bug_GYuy.js → daemon-install-helpers-BZY9-jNW.js} +9 -9
  75. package/dist/{deliver-yTpXc5sv.js → deliver--kttnrER.js} +7 -7
  76. package/dist/{deliver-BUiQ-9fE.js → deliver-CVTXl0Cv.js} +1 -1
  77. package/dist/{deps-B_5kPH1Q.js → deps-BAMUVAdU.js} +1 -1
  78. package/dist/{deps-PAzfFs3Q.js → deps-BbipxGPW.js} +1 -1
  79. package/dist/{deps-BUUwigzc.js → deps-CjWcQwlX.js} +1 -1
  80. package/dist/{deps-CH8f3TJK.js → deps-CwPrf7RC.js} +6 -6
  81. package/dist/{devices-cli-DVLF8Yvw.js → devices-cli-DKK65S9Z.js} +7 -7
  82. package/dist/{devices-cli-Ck6s9sQQ.js → devices-cli-aiEJxYcN.js} +2 -2
  83. package/dist/{diagnostics-CdUgLS0N.js → diagnostics-DmZbQ8Nc.js} +5 -5
  84. package/dist/{directory-cli-BAMS8f9U.js → directory-cli-Dz9iXeut.js} +9 -9
  85. package/dist/{dns-cli-BdxBk-k_.js → dns-cli-DD6hWsdc.js} +4 -4
  86. package/dist/{dock-CzF5XYGd.js → dock-Y96MzKuM.js} +4 -4
  87. package/dist/{docs-cli-SF7es4Zs.js → docs-cli-cHkrTB2e.js} +4 -4
  88. package/dist/{doctor-completion-iWmUY3B4.js → doctor-completion-C2-SDBd6.js} +2 -2
  89. package/dist/{doctor-completion-i04j1TGW.js → doctor-completion-DB151YdP.js} +1 -1
  90. package/dist/{doctor-config-flow-8qXzBx09.js → doctor-config-flow-Ck4oCjfl.js} +14 -14
  91. package/dist/{emergency-stop-tKLAiFAG.js → emergency-stop-BldYLJq7.js} +7 -7
  92. package/dist/{emergency-stop-DAmKucxm.js → emergency-stop-CDozqde9.js} +5 -5
  93. package/dist/{emergency-stop-CfKEsUr_.js → emergency-stop-DpNGtfb4.js} +70 -70
  94. package/dist/{emergency-stop-CzExWKhr.js → emergency-stop-Lj33jqJJ.js} +2 -2
  95. package/dist/{enable-DaA_orGN.js → enable-o_s6PBsC.js} +1 -1
  96. package/dist/entry.js +1 -1
  97. package/dist/{exec-approvals-allowlist-8AkOwwIr.js → exec-approvals-allowlist-Co2tJSEo.js} +1 -1
  98. package/dist/{exec-approvals-cli-CtoJW2K-.js → exec-approvals-cli-D6XUzs4j.js} +15 -15
  99. package/dist/{exec-approvals-cli-CNWOtvwX.js → exec-approvals-cli-DRoaRYPn.js} +4 -4
  100. package/dist/{exec-safe-bin-runtime-policy-DYXuBKqH.js → exec-safe-bin-runtime-policy-DaoU9-ni.js} +2 -2
  101. package/dist/extensionAPI.js +2 -2
  102. package/dist/{fs-safe-DNFrxDS-.js → fs-safe-_JQUGpZf.js} +15 -15
  103. package/dist/{gateway-cli-DSJcNJYR.js → gateway-cli-Ccd1ukWq.js} +17 -14
  104. package/dist/{gateway-cli-C8P5BVto.js → gateway-cli-lNUOd2_i.js} +151 -148
  105. package/dist/{gateway-rpc-CdfF0Zt5.js → gateway-rpc-5PTvwEfj.js} +1 -1
  106. package/dist/{gateway-rpc-6vnhO4v8.js → gateway-rpc-BBFG1T-M.js} +1 -1
  107. package/dist/{health-CNZK5D2k.js → health--GQAFTBr.js} +13 -13
  108. package/dist/{health-BN8WNyon.js → health-HEN6Wk9G.js} +2 -2
  109. package/dist/{hooks-cli-L32lBsp7.js → hooks-cli-DFrttZGb.js} +6 -6
  110. package/dist/{hooks-cli-t7tiLn8P.js → hooks-cli-Di8qrzIB.js} +84 -84
  111. package/dist/{hooks-status-CPIWc_bx.js → hooks-status-DNGo2G8Q.js} +1 -1
  112. package/dist/{idlehands-root-DFL2GrNW.js → idlehands-root-B8cUs-5M.js} +8 -8
  113. package/dist/{image-D8b_rlQC.js → image-COw__ACq.js} +1 -1
  114. package/dist/{image-C2JZiK-6.js → image-DSDEbSiO.js} +5 -5
  115. package/dist/{plugin-sdk/image-ops-BRYGGDwL.js → image-ops-BU-VdLZu.js} +2 -2
  116. package/dist/index.js +80 -80
  117. package/dist/{inspect-Dg16DMLn.js → inspect-ISQZuNM5.js} +4 -4
  118. package/dist/{install-safe-path-CNNMzJl9.js → install-safe-path-ChNR9pl6.js} +19 -19
  119. package/dist/{installs-ST3UaUVJ.js → installs-CNubze2L.js} +9 -9
  120. package/dist/{ir-DV0Hszc8.js → ir-VncGpwA1.js} +6 -6
  121. package/dist/{lifecycle-core-DOScNyOv.js → lifecycle-core-B6UoqYTJ.js} +5 -5
  122. package/dist/llm-slug-generator.js +7 -7
  123. package/dist/{local-roots-Cco87A2_.js → local-roots-q0xbefkf.js} +2 -2
  124. package/dist/{login-Dl_lsEHS.js → login-CfUhrgWT.js} +4 -4
  125. package/dist/{login-qr-B68cBRH0.js → login-qr-DBMsUxgL.js} +7 -7
  126. package/dist/{logs-cli-BluGGq03.js → logs-cli-4VQ9Iwiw.js} +8 -8
  127. package/dist/{logs-cli-BN5TN6bg.js → logs-cli-u0WmYxx7.js} +3 -3
  128. package/dist/{manager-BBeTPO2h.js → manager-BMAFgXyU.js} +13 -13
  129. package/dist/{manifest-registry-RfRn8HJx.js → manifest-registry-Bak1x76G.js} +1 -1
  130. package/dist/{markdown-tables-C5hTDqNm.js → markdown-tables-DZClqsNo.js} +1 -1
  131. package/dist/{memory-cli-4wfelGdK.js → memory-cli-CUGwnVIY.js} +12 -12
  132. package/dist/{model-Bd-05WpB.js → model-C-icShH2.js} +2 -2
  133. package/dist/{model-catalog-BCsDrrvq.js → model-catalog-D9no0CH2.js} +3 -3
  134. package/dist/{model-picker-D3U0wJCO.js → model-picker-BkXoTOiA.js} +4 -4
  135. package/dist/{model-selection-CSn9tUuH.js → model-selection-0dGxYGp8.js} +16 -16
  136. package/dist/{models-cli-ChStpcQY.js → models-cli-CMwszgSD.js} +79 -79
  137. package/dist/{models-cli-dd-wJvj0.js → models-cli-DVAyIZ63.js} +7 -7
  138. package/dist/{models-config-lQpqp472.js → models-config-C5A1wDWh.js} +6 -6
  139. package/dist/{models-mQeB9JXZ.js → models-tZYpgts_.js} +3 -3
  140. package/dist/{node-cli-DhD8-NHR.js → node-cli-BYzjxmUY.js} +32 -32
  141. package/dist/{node-cli-BiQaHamJ.js → node-cli-CgeiQGbv.js} +1 -1
  142. package/dist/{node-service-GpI0jzKr.js → node-service-C3vyxHLA.js} +1 -1
  143. package/dist/{nodes-cli-tVCIBdL1.js → nodes-cli-DaE0WsOH.js} +3 -3
  144. package/dist/{nodes-cli-DPzxQ0mY.js → nodes-cli-kNOtp0U0.js} +14 -14
  145. package/dist/{nodes-screen-CIAn0wXq.js → nodes-screen-CcpPaFxa.js} +4 -4
  146. package/dist/{npm-registry-spec-BfeHLbIQ.js → npm-registry-spec-BCbbfIhX.js} +16 -16
  147. package/dist/{npm-resolution-WKW4cIrd.js → npm-resolution-By6bZkA-.js} +1 -1
  148. package/dist/{npm-resolution-tT1BUac2.js → npm-resolution-DLSA4PTO.js} +3 -3
  149. package/dist/{onboard-D1wKkHHC.js → onboard-B6eOxpDM.js} +3 -3
  150. package/dist/{onboard-rze7pzoW.js → onboard-CbXlbAx2.js} +6 -6
  151. package/dist/{onboard-channels-CRHp5hA-.js → onboard-channels-BISq46-i.js} +20 -20
  152. package/dist/{onboard-channels-CG1R8Ozs.js → onboard-channels-JPltbNGL.js} +2 -2
  153. package/dist/{onboard-custom-D2sCP3_S.js → onboard-custom-DUbzMMu7.js} +4 -4
  154. package/dist/{onboard-helpers-Dp6wXNs7.js → onboard-helpers-DWivfzcc.js} +1 -1
  155. package/dist/{onboard-helpers-ByhJg2ST.js → onboard-helpers-mzy38DiC.js} +8 -8
  156. package/dist/{onboard-hooks-_1Jgimeu.js → onboard-hooks-D9teGxfH.js} +4 -4
  157. package/dist/{onboard-remote-1ZZd5lcX.js → onboard-remote-BMo2C9Ae.js} +1 -1
  158. package/dist/{onboard-remote-DuhWSiAO.js → onboard-remote-LCBHijVE.js} +1 -1
  159. package/dist/{onboard-skills-BD_AS1Iy.js → onboard-skills-BrqATIYg.js} +1 -1
  160. package/dist/{onboard-skills-vFwEasAg.js → onboard-skills-jFY9gaOu.js} +4 -4
  161. package/dist/{onboarding-BxvY_aEE.js → onboarding-Da3n7Rvs.js} +13 -13
  162. package/dist/{onboarding-BgHfZNln.js → onboarding-DikyMlYG.js} +7 -7
  163. package/dist/{onboarding.finalize-DnCFQEPR.js → onboarding.finalize-Bp2ufMd0.js} +82 -82
  164. package/dist/{onboarding.finalize-5_UCPMAw.js → onboarding.finalize-CwYx5n3Z.js} +11 -11
  165. package/dist/{onboarding.gateway-config-qVAY6x7I.js → onboarding.gateway-config-Btu2gzgr.js} +16 -16
  166. package/dist/{onboarding.gateway-config-Czn7jKsq.js → onboarding.gateway-config-w3C9Yj3B.js} +3 -3
  167. package/dist/{openai-model-default-OPCCNNS0.js → openai-model-default-7J6cw1rA.js} +2 -2
  168. package/dist/{outbound-CG19kl0w.js → outbound-DPTxwchq.js} +4 -4
  169. package/dist/{plugin-sdk/outbound-attachment-Bs7fNaqv.js → outbound-attachment-Bot3bRnK.js} +2 -2
  170. package/dist/{pairing-cli-QJYYDcIK.js → pairing-cli-jwx6hMsM.js} +10 -10
  171. package/dist/{pairing-labels-DuZ7ih-T.js → pairing-labels-ChQJzbS9.js} +1 -1
  172. package/dist/{pairing-store-qvpPoWL_.js → pairing-store-CPpEEQJO.js} +2 -2
  173. package/dist/{pairing-token-3hoCgQqp.js → pairing-token-lKXTMQ_M.js} +7 -7
  174. package/dist/{path-alias-guards-BCskHdfJ.js → path-alias-guards-FXBVVTLw.js} +3 -3
  175. package/dist/{path-safety-C1Y004P_.js → path-safety-DwibX65n.js} +1 -1
  176. package/dist/{paths-Bt0fZexW.js → paths-B-CLQ5RT.js} +9 -9
  177. package/dist/{pi-embedded-BcmA23Ak.js → pi-embedded-Bc4KWuTe.js} +13 -12
  178. package/dist/{pi-embedded-D_8x2ll-.js → pi-embedded-BeyOxL6U.js} +28 -27
  179. package/dist/{pi-embedded-helpers-BkzrQ5bZ.js → pi-embedded-helpers-BCsfqpDt.js} +6 -6
  180. package/dist/{pi-embedded-helpers-CghCLoPo.js → pi-embedded-helpers-CyTpDKo5.js} +4 -4
  181. package/dist/{pi-model-discovery-Bt79ifyi.js → pi-model-discovery-BIP3RjXl.js} +1 -1
  182. package/dist/{pi-tools.policy-B_ME3yF6.js → pi-tools.policy-DfITIKZj.js} +5 -5
  183. package/dist/{plugin-auto-enable-BMuSi4aV.js → plugin-auto-enable-7DUxMy6A.js} +3 -3
  184. package/dist/{plugin-registry-CncOKeD3.js → plugin-registry-BY85d-vE.js} +1 -1
  185. package/dist/{plugin-registry-C3IHwz9i.js → plugin-registry-DROWinG6.js} +3 -3
  186. package/dist/plugin-sdk/{accounts-Kt6ygPsC.js → accounts-BLYMokxV.js} +2 -2
  187. package/dist/plugin-sdk/{accounts-mjFAny5F.js → accounts-C5tHm1UI.js} +1 -1
  188. package/dist/plugin-sdk/{accounts-B9nfRzyn.js → accounts-CBVAw5_G.js} +1 -1
  189. package/dist/plugin-sdk/{agent-scope-CU41EMlR.js → agent-scope-jl80I5G9.js} +2 -2
  190. package/dist/plugin-sdk/{agent-via-gateway-CDKZ0Jk9.js → agent-via-gateway-CXtWg-qx.js} +56 -55
  191. package/dist/plugin-sdk/{anton-Bp5L7uaN.js → anton-CGYTy9vy.js} +50 -13
  192. package/dist/plugin-sdk/{api-key-rotation-CZhCWd61.js → api-key-rotation-D6nK54XH.js} +2 -2
  193. package/dist/plugin-sdk/{audio-preflight-CRgDehfO.js → audio-preflight-CKqqN8ty.js} +30 -30
  194. package/dist/plugin-sdk/{auth-store-DycBvVqL.js → auth-store-DaPWgQTx.js} +1 -1
  195. package/dist/plugin-sdk/{bindings-BDKKHGv-.js → bindings-xXgmJGxj.js} +2 -2
  196. package/dist/plugin-sdk/{channel-activity-TcS_VfJk.js → channel-activity-loOg1DRw.js} +3 -3
  197. package/dist/plugin-sdk/{channel-web-DcgShj6y.js → channel-web-EFRSObCG.js} +24 -24
  198. package/dist/plugin-sdk/{chrome-BCTizrZD.js → chrome-Cb9FgiCI.js} +6 -6
  199. package/dist/plugin-sdk/{chunk-DZr5xuqv.js → chunk-PW4MBmaN.js} +1 -1
  200. package/dist/plugin-sdk/commands/agent/types.d.ts +1 -0
  201. package/dist/plugin-sdk/commands/agent-via-gateway.d.ts +1 -0
  202. package/dist/plugin-sdk/{commands-registry-BqJLwZYh.js → commands-registry-B5m2EsHz.js} +5 -5
  203. package/dist/plugin-sdk/{config-BzPMtEKA.js → config-CEgzwk0J.js} +10 -10
  204. package/dist/plugin-sdk/{deliver-Cfc1UCre.js → deliver-BNfMF0Nb.js} +10 -10
  205. package/dist/plugin-sdk/{deps-B5eQTF_d.js → deps-qZxPlSgp.js} +6 -6
  206. package/dist/plugin-sdk/{diagnostic-B8VzcqLf.js → diagnostic-ByA6zvzu.js} +1 -1
  207. package/dist/plugin-sdk/{dock-CMURqoee.js → dock-DKQYtT6-.js} +6 -6
  208. package/dist/plugin-sdk/{emergency-stop-DQppo4RU.js → emergency-stop-CxcBz-aQ.js} +55 -55
  209. package/dist/plugin-sdk/{env-qurSiOO2.js → env-5XecRTLs.js} +1 -1
  210. package/dist/plugin-sdk/{errors-UqLewZJL.js → errors-CMcD8Lhh.js} +1 -1
  211. package/dist/plugin-sdk/{fetch-guard-C174s8ZV.js → fetch-guard-DwdUEdmT.js} +1 -1
  212. package/dist/plugin-sdk/{fs-safe-CCXTOK7j.js → fs-safe-qsx2_8-o.js} +2 -2
  213. package/dist/plugin-sdk/gateway/protocol/schema/agent.d.ts +1 -0
  214. package/dist/plugin-sdk/{image-DDuK8tyO.js → image-C_1tftC8.js} +6 -6
  215. package/dist/{image-ops-BkoEFRYH.js → plugin-sdk/image-ops-CXSUo-AM.js} +12 -12
  216. package/dist/plugin-sdk/index.js +60 -60
  217. package/dist/plugin-sdk/{ir-Bv0Zbp2E.js → ir-kdDGpPMq.js} +5 -5
  218. package/dist/plugin-sdk/{local-roots-bHCsSVt_.js → local-roots-DjB6DYeI.js} +4 -4
  219. package/dist/plugin-sdk/{login-CkQrnY2G.js → login-DIwO5D5Y.js} +6 -6
  220. package/dist/plugin-sdk/{login-qr-DAeHibH_.js → login-qr-CpCAJuvT.js} +8 -8
  221. package/dist/plugin-sdk/{manager-CTC1S_c9.js → manager-Dox9r7og.js} +10 -10
  222. package/dist/plugin-sdk/{markdown-tables-DfUQHRZY.js → markdown-tables-Drtwd4J5.js} +1 -1
  223. package/dist/plugin-sdk/{message-channel-DiMXmQeQ.js → message-channel-CQ0qkGHj.js} +1 -1
  224. package/dist/plugin-sdk/{outbound-B1twcfz5.js → outbound-Dx_q6JAI.js} +6 -6
  225. package/dist/{outbound-attachment-jYdMgCml.js → plugin-sdk/outbound-attachment-BisU5Vji.js} +2 -2
  226. package/dist/plugin-sdk/{path-alias-guards-yyy61qHh.js → path-alias-guards-C_uBEYb4.js} +1 -1
  227. package/dist/plugin-sdk/{pi-embedded-helpers-BAm9cWol.js → pi-embedded-helpers-B68z4sHq.js} +16 -16
  228. package/dist/plugin-sdk/{pi-model-discovery-Bt6JtUFr.js → pi-model-discovery-Dt6899be.js} +1 -1
  229. package/dist/plugin-sdk/{plugins-DRPlVBr_.js → plugins-NTjIvHYk.js} +5 -5
  230. package/dist/plugin-sdk/{pw-ai-CY0evCZ2.js → pw-ai-Dk2PTZzq.js} +10 -10
  231. package/dist/plugin-sdk/{qmd-manager-BckPBwZX.js → qmd-manager-juzrnopq.js} +5 -5
  232. package/dist/plugin-sdk/{query-expansion-CPqK-tTR.js → query-expansion-xBXvzdkL.js} +2 -2
  233. package/dist/plugin-sdk/{redact-Ub8sMBBC.js → redact-B6VQH3UQ.js} +1 -1
  234. package/dist/plugin-sdk/{replies-DwTNZJgi.js → replies-ZovJp-3F.js} +3 -3
  235. package/dist/plugin-sdk/{reply-BtQHoQT3.js → reply-nUO1aM3T.js} +97 -96
  236. package/dist/plugin-sdk/{reply-prefix-BqV0o7_7.js → reply-prefix--mxmTL7A.js} +1 -1
  237. package/dist/plugin-sdk/{resolve-outbound-target-DAdNGEqG.js → resolve-outbound-target-CnUtsDch.js} +2 -2
  238. package/dist/plugin-sdk/{resolve-route-C5mAwY-o.js → resolve-route-BZABUE4J.js} +3 -3
  239. package/dist/plugin-sdk/{retry-2OVzZJMZ.js → retry-Bh7jveNm.js} +1 -1
  240. package/dist/plugin-sdk/{runner-Ck0w3rcz.js → runner-CZz1tOIR.js} +10 -10
  241. package/dist/plugin-sdk/{send-BBD-m-nM.js → send-0EVlThEG.js} +10 -10
  242. package/dist/plugin-sdk/{send-CaPoBwby.js → send-B26cNPqY.js} +6 -6
  243. package/dist/plugin-sdk/{send-CPeuqOlq.js → send-BCjVQhp3.js} +13 -13
  244. package/dist/plugin-sdk/{send-SsqudCMv.js → send-CHUGIZs9.js} +7 -7
  245. package/dist/plugin-sdk/{send-A4Lv5nrg.js → send-Cb5NIN8s.js} +7 -7
  246. package/dist/plugin-sdk/{session-DpL4uk1J.js → session-DdJj6_DW.js} +3 -3
  247. package/dist/plugin-sdk/{sessions-CQ5iD4Uq.js → sessions-DNx9c2O2.js} +6 -6
  248. package/dist/plugin-sdk/{skill-commands-C_O9I71g.js → skill-commands-DorIK8kn.js} +5 -5
  249. package/dist/plugin-sdk/{skills-DmiIiX4l.js → skills-Dh_Cf2PA.js} +8 -8
  250. package/dist/plugin-sdk/{store-BI3rLJdW.js → store-CCCXwngh.js} +2 -2
  251. package/dist/plugin-sdk/{subsystem-lJo9gqAK.js → subsystem-DWPzKeZ0.js} +1 -1
  252. package/dist/plugin-sdk/{tables-C4X_nAUQ.js → tables-CF9W23Rd.js} +1 -1
  253. package/dist/plugin-sdk/{target-errors-CXh6e9ZE.js → target-errors-DaH0qYtL.js} +2 -2
  254. package/dist/plugin-sdk/{tokens-CU9S3S7t.js → tokens-Y97UKh4C.js} +1 -1
  255. package/dist/plugin-sdk/{tool-images-Cf9aWlVu.js → tool-images-BMRkn_yk.js} +2 -2
  256. package/dist/plugin-sdk/{tool-loop-detection-DuwkSqZL.js → tool-loop-detection-Cv8wyfAi.js} +2 -2
  257. package/dist/plugin-sdk/{utils-dP-FpIgu.js → utils-Dyj2wV4e.js} +2 -2
  258. package/dist/plugin-sdk/web-CEtAvhaI.js +71 -0
  259. package/dist/plugin-sdk/{whatsapp-actions-Bcknq6EZ.js → whatsapp-actions-B5g-Rywy.js} +23 -23
  260. package/dist/{plugins-B4hASNc2.js → plugins-D46VZh7u.js} +2 -2
  261. package/dist/{plugins-cli-CMYlin6k.js → plugins-cli-RFXGkaxP.js} +6 -6
  262. package/dist/{plugins-cli-BMptU-1l.js → plugins-cli-b_o3IL7x.js} +80 -80
  263. package/dist/{ports-B07M55Gr.js → ports-B2o0FSFD.js} +1 -1
  264. package/dist/{ports-DWJO5S52.js → ports-SQy1d-RL.js} +2 -2
  265. package/dist/{program-context-BxflGz_G.js → program-context-D6irLwPo.js} +43 -43
  266. package/dist/{program-DyMaBEqF.js → program-vH6RTUOw.js} +11 -11
  267. package/dist/{prompt-select-styled-CI3hobey.js → prompt-select-styled-CDoDFWo7.js} +37 -37
  268. package/dist/{prompt-select-styled-es3PJxfH.js → prompt-select-styled-DFVvU0TH.js} +6 -6
  269. package/dist/{provider-auth-helpers-CrGScfnN.js → provider-auth-helpers-BCc5UtUa.js} +1 -1
  270. package/dist/{provider-auth-helpers-DYxaYmlq.js → provider-auth-helpers-CNRz0SFC.js} +5 -5
  271. package/dist/{push-apns-BNxgGXQy.js → push-apns-CHmvuoMu.js} +1 -1
  272. package/dist/{push-apns-CjAXPy2N.js → push-apns-e2xmxGGE.js} +5 -5
  273. package/dist/{pw-ai-BGALvhDi.js → pw-ai-7i9eGnLh.js} +11 -11
  274. package/dist/{pw-ai-CfYaR1K2.js → pw-ai-CowTfhOG.js} +1 -1
  275. package/dist/{qmd-manager-CVcPfkhL.js → qmd-manager-B-qeywfQ.js} +19 -19
  276. package/dist/{qr-cli-D2Oh8f0U.js → qr-cli-CSt5ihwG.js} +1 -1
  277. package/dist/{query-expansion-i5I3yavb.js → query-expansion-Clts_AGz.js} +12 -12
  278. package/dist/{redact-snapshot-CtIVs92s.js → redact-snapshot-BBNDQZIe.js} +1 -1
  279. package/dist/{register.agent-B9f0mtlc.js → register.agent-Dx7ULz49.js} +12 -12
  280. package/dist/{register.agent-DrVFgVpf.js → register.agent-HWcFMr6h.js} +95 -95
  281. package/dist/{register.configure-DAlBU97I.js → register.configure-BctHAiWh.js} +13 -13
  282. package/dist/register.configure-k8gocsJw.js +168 -0
  283. package/dist/{register.maintenance-BThQUyMI.js → register.maintenance-BYiX9iOa.js} +12 -12
  284. package/dist/{register.maintenance-G_dZOyQA.js → register.maintenance-C6o2WuQx.js} +90 -90
  285. package/dist/{register.message-DKaxesxx.js → register.message-BLScF2fV.js} +6 -6
  286. package/dist/{register.message-BVTuvjQA.js → register.message-BewFLd-k.js} +71 -71
  287. package/dist/{register.onboard-CwtL9YYR.js → register.onboard-BVm-2XAx.js} +5 -5
  288. package/dist/{register.onboard-CnoQ56yq.js → register.onboard-a0kqiCTa.js} +18 -18
  289. package/dist/{register.orchestrator-anton-2LtPHPXM.js → register.orchestrator-anton-BYyjV8R-.js} +17 -16
  290. package/dist/{register.orchestrator-anton-Ce55Lxt0.js → register.orchestrator-anton-Tn_RaMLq.js} +5 -4
  291. package/dist/{register.setup-Dg5LmRxd.js → register.setup-BJ0WBUpt.js} +5 -5
  292. package/dist/{register.setup-_s2CQaBF.js → register.setup-BwPJaqpH.js} +21 -21
  293. package/dist/{register.status-health-sessions-iSQzPXD0.js → register.status-health-sessions-Clzt8hbv.js} +82 -82
  294. package/dist/{register.status-health-sessions-DX2OgAeG.js → register.status-health-sessions-wbopjGL-.js} +8 -8
  295. package/dist/{register.subclis-YeKuHCRg.js → register.subclis-CrcOefJY.js} +21 -21
  296. package/dist/{replies-Czp4hvpS.js → replies-hSFVxL4h.js} +1 -1
  297. package/dist/{reply-DKIv9jez.js → reply-D5gCiiGr.js} +154 -154
  298. package/dist/{reply-prefix-BMEdvSpA.js → reply-prefix-C3y4zpTl.js} +1 -1
  299. package/dist/{resolve-route-Ef_Yt2Dw.js → resolve-route-D_AbcmD6.js} +2 -2
  300. package/dist/{rpc-DDTp_J6f.js → rpc-Cf9OK5Yk.js} +1 -1
  301. package/dist/{rpc-CasD0keJ.js → rpc-DVTovtI3.js} +1 -1
  302. package/dist/{run-main-BwWO5erE.js → run-main-BCX3UZMR.js} +18 -18
  303. package/dist/{runner-PgRFPYUj.js → runner-BzNdfqDz.js} +1 -1
  304. package/dist/{runner-BFG54hnb.js → runner-DzszLzI4.js} +20 -20
  305. package/dist/{runtime-DEmy759r.js → runtime-XmXLaHNk.js} +2 -2
  306. package/dist/{sandbox-CfPbhDY_.js → sandbox-DcUw5h3p.js} +20 -20
  307. package/dist/{sandbox-cli-B4wLJr21.js → sandbox-cli-DGvJ7Eeq.js} +22 -22
  308. package/dist/{secrets-cli-Bx9bIigZ.js → secrets-cli-C4UBK_LV.js} +3 -3
  309. package/dist/{secrets-cli-CidAOBfl.js → secrets-cli-CR3h2TBy.js} +9 -9
  310. package/dist/{security-cli-Ch7AhbhS.js → security-cli-B9_LV2po.js} +39 -39
  311. package/dist/{security-cli-e1WjvhRm.js → security-cli-an5u-5Jb.js} +3 -3
  312. package/dist/{send-DDMaLJAQ.js → send--lzpNy4f.js} +7 -7
  313. package/dist/{send-BCPkAE2k.js → send-C4v0Leny.js} +6 -6
  314. package/dist/{send-CEavqqEz.js → send-DQiw_nGD.js} +6 -6
  315. package/dist/{send-BPwTl4-K.js → send-DuwdEkLw.js} +4 -4
  316. package/dist/{send-CVIXqubC.js → send-DwdHiC7_.js} +13 -13
  317. package/dist/{server-BpSbZAwg.js → server-D6MltJIF.js} +14 -14
  318. package/dist/{server-context-BxNSTpH6.js → server-context-DI0W_H7R.js} +10 -10
  319. package/dist/{server-lifecycle-CGKrGrhM.js → server-lifecycle-B5PlrlbG.js} +2 -2
  320. package/dist/{server-node-events-lbb8M18B.js → server-node-events-CbVkqOtV.js} +6 -6
  321. package/dist/{server-node-events-CZ5OkouD.js → server-node-events-DvStFPGi.js} +71 -71
  322. package/dist/{service-Bj2oSfpw.js → service-C8NMS3m_.js} +15 -15
  323. package/dist/{session-BKVySI8q.js → session-CdnrRhb4.js} +1 -1
  324. package/dist/{sessions-BqWocozB.js → sessions-BtPXimXQ.js} +14 -14
  325. package/dist/{shared-DnQ4iyXk.js → shared-CpDPo3hJ.js} +2 -2
  326. package/dist/{shared-Jzrx8DfN.js → shared-DpLSpJIl.js} +1 -1
  327. package/dist/{skill-commands-BwIRWSCI.js → skill-commands-BFzmZAfo.js} +5 -5
  328. package/dist/{skill-scanner-B4Ftsbd2.js → skill-scanner-D7mzXRXd.js} +5 -5
  329. package/dist/{skills-TIyQDZx7.js → skills-DlvDyK8L.js} +3 -3
  330. package/dist/{skills-cli-5lbXi4Lh.js → skills-cli-BhKGhjbO.js} +5 -5
  331. package/dist/{skills-install-D0JHP5uM.js → skills-install-tr6wRWZj.js} +4 -4
  332. package/dist/{skills-status-Q9skQExW.js → skills-status-qjQ8XP0h.js} +1 -1
  333. package/dist/{status-Bd9NYE1U.js → status-CWnPokQF.js} +24 -24
  334. package/dist/{status-BE1Y0CKS.js → status-ClMOrHdT.js} +5 -5
  335. package/dist/{status.update-C3uRz7W6.js → status.update-CTi6vuWj.js} +2 -2
  336. package/dist/{store-CLNuI8-G.js → store-kH9wHHbO.js} +5 -5
  337. package/dist/{subagent-registry-CTZmDdGV.js → subagent-registry-BH5O1rxK.js} +15 -15
  338. package/dist/{system-cli-CHiaS_zS.js → system-cli-Dd-gBN0t.js} +3 -3
  339. package/dist/{system-cli-DBp9Zmvt.js → system-cli-DyVZ5udc.js} +8 -8
  340. package/dist/{system-run-approval-context-xZVoE4nS.js → system-run-approval-context-CISBXlNw.js} +1 -1
  341. package/dist/{system-run-command-BIhrK3OI.js → system-run-command-qJdgzxLp.js} +1 -1
  342. package/dist/{systemd-DyrVLTI0.js → systemd-CaCR5CyM.js} +9 -9
  343. package/dist/{systemd-hints-BoKKzRI_.js → systemd-hints-DHu-HVFx.js} +6 -6
  344. package/dist/{systemd-linger-DrhGd61G.js → systemd-linger-B7XlUHk_.js} +1 -1
  345. package/dist/{tables-CZSD889r.js → tables-g9xkflht.js} +1 -1
  346. package/dist/{target-errors-BYuWhuLU.js → target-errors-bLIVFsbF.js} +4 -4
  347. package/dist/{tool-images-DZHrc4pq.js → tool-images-CHqepyF_.js} +1 -1
  348. package/dist/{tui-BPgLehyv.js → tui-2u2ZDhHV.js} +2 -2
  349. package/dist/{tui-DWGHGeZ3.js → tui-Bne3YNiw.js} +6 -6
  350. package/dist/{tui-cli-9z2Sm8Qg.js → tui-cli-BWnIeq57.js} +3 -3
  351. package/dist/{tui-cli-DKyA5pZ2.js → tui-cli-D0Z-rcUe.js} +30 -30
  352. package/dist/{update-la2AdLf3.js → update-D79ppbMQ.js} +3 -3
  353. package/dist/{update-cli-DvUx2El6.js → update-cli-BTNcddEX.js} +99 -99
  354. package/dist/{update-cli-D-4_OhRR.js → update-cli-CxZD0ekr.js} +13 -13
  355. package/dist/{update-runner-n2snlf-4.js → update-runner-CN7Dm9tg.js} +15 -15
  356. package/dist/{update-runner-BvaywdEe.js → update-runner-tu2Aiphu.js} +1 -1
  357. package/dist/{upgrade-command-28wRHZZ2.js → upgrade-command-909a7QUc.js} +3 -3
  358. package/dist/web-BV-BEZj6.js +123 -0
  359. package/dist/{web-Dbrx58hF.js → web-Csmkqx1W.js} +8 -8
  360. package/dist/{web-BjP-D0Iz.js → web-DiqHxfw7.js} +3 -3
  361. package/dist/{web-BedV4zGE.js → web-aRaB-CvF.js} +6 -6
  362. package/dist/{webhooks-cli-BnmVPYkU.js → webhooks-cli-2N03q0iY.js} +6 -6
  363. package/dist/{whatsapp-actions-D2mBFzmK.js → whatsapp-actions-Cms8wQM1.js} +18 -18
  364. package/dist/{with-timeout-BodPmGCY.js → with-timeout-DEdycYxq.js} +3 -3
  365. package/dist/{workspace-CDw87aZG.js → workspace-D3pARwoB.js} +1 -1
  366. package/dist/{workspace-dirs-D3bousoX.js → workspace-dirs-SsExQ3Bz.js} +1 -1
  367. package/dist/{wsl-CgXDjE09.js → wsl-BJW8nTyL.js} +2 -2
  368. package/extensions/acpx/package.json +1 -1
  369. package/extensions/bluebubbles/package.json +1 -1
  370. package/extensions/copilot-proxy/package.json +1 -1
  371. package/extensions/diagnostics-otel/package.json +1 -1
  372. package/extensions/discord/package.json +1 -1
  373. package/extensions/feishu/package.json +1 -1
  374. package/extensions/google-gemini-cli-auth/package.json +1 -1
  375. package/extensions/googlechat/package.json +1 -1
  376. package/extensions/hand/package.json +1 -1
  377. package/extensions/imessage/package.json +1 -1
  378. package/extensions/irc/package.json +1 -1
  379. package/extensions/line/package.json +1 -1
  380. package/extensions/llm-task/package.json +1 -1
  381. package/extensions/matrix/CHANGELOG.md +12 -0
  382. package/extensions/matrix/package.json +1 -1
  383. package/extensions/mattermost/package.json +1 -1
  384. package/extensions/memory-core/package.json +1 -1
  385. package/extensions/memory-lancedb/package.json +1 -1
  386. package/extensions/minimax-portal-auth/package.json +1 -1
  387. package/extensions/msteams/CHANGELOG.md +12 -0
  388. package/extensions/msteams/package.json +1 -1
  389. package/extensions/nextcloud-talk/package.json +1 -1
  390. package/extensions/nostr/CHANGELOG.md +12 -0
  391. package/extensions/nostr/package.json +1 -1
  392. package/extensions/open-prose/package.json +1 -1
  393. package/extensions/signal/package.json +1 -1
  394. package/extensions/slack/package.json +1 -1
  395. package/extensions/synology-chat/package.json +1 -1
  396. package/extensions/telegram/package.json +1 -1
  397. package/extensions/tlon/package.json +1 -1
  398. package/extensions/twitch/CHANGELOG.md +12 -0
  399. package/extensions/twitch/package.json +1 -1
  400. package/extensions/voice-call/CHANGELOG.md +12 -0
  401. package/extensions/voice-call/package.json +1 -1
  402. package/extensions/whatsapp/package.json +1 -1
  403. package/extensions/zalo/CHANGELOG.md +12 -0
  404. package/extensions/zalo/package.json +1 -1
  405. package/extensions/zalouser/CHANGELOG.md +12 -0
  406. package/extensions/zalouser/package.json +1 -1
  407. package/package.json +1 -1
  408. package/dist/anton-DYEYyPJ1.js +0 -740
  409. package/dist/plugin-sdk/web-Cg6vlkku.js +0 -71
  410. package/dist/register.configure-BxZRBEJ9.js +0 -168
  411. package/dist/web-CDFWB79W.js +0 -123
@@ -1,5 +1,5 @@
1
1
  import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-Qpj4ExtQ.js";
2
- import { n as callGateway } from "./call-DuNslqj2.js";
2
+ import { n as callGateway } from "./call-C82rD2Wn.js";
3
3
  import { n as withProgress } from "./progress-B76RkFx7.js";
4
4
 
5
5
  //#region src/cli/gateway-rpc.ts
@@ -1,5 +1,5 @@
1
1
  import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-DVauVtrg.js";
2
- import { n as callGateway } from "./call-DnTBT02D.js";
2
+ import { n as callGateway } from "./call-BpWhjuOg.js";
3
3
  import { n as withProgress } from "./progress-BQLz1r3L.js";
4
4
 
5
5
  //#region src/cli/gateway-rpc.ts
@@ -1,26 +1,26 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { B as theme, k as info, l as escapeRegExp, z as isRich } from "./utils-CXzXXV2o.js";
3
- import { Bn as buildOutboundSessionContext, Dr as requestHeartbeatNow, Ft as resolveHeartbeatDeliveryTarget, It as resolveHeartbeatSenderContext, Or as setHeartbeatWakeHandler, Tr as peekSystemEventEntries, _r as DEFAULT_HEARTBEAT_EVERY, br as stripHeartbeatToken, gr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, hr as CommandLane, kr as resolveHeartbeatReasonKind, lr as getQueueSize, qn as resolveUserTimezone, r as appendCronStyleCurrentTimeLine, t as getReplyFromConfig, vr as isHeartbeatContentEffectivelyEmpty, yr as resolveHeartbeatPrompt$1 } from "./reply-DKIv9jez.js";
4
- import { d as resolveDefaultAgentId, i as resolveAgentConfig, u as resolveAgentWorkspaceDir, y as DEFAULT_HEARTBEAT_FILENAME } from "./agent-scope-Bn39ugK4.js";
3
+ import { Bn as buildOutboundSessionContext, Dr as requestHeartbeatNow, Ft as resolveHeartbeatDeliveryTarget, It as resolveHeartbeatSenderContext, Or as setHeartbeatWakeHandler, Tr as peekSystemEventEntries, _r as DEFAULT_HEARTBEAT_EVERY, br as stripHeartbeatToken, gr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, hr as CommandLane, kr as resolveHeartbeatReasonKind, lr as getQueueSize, qn as resolveUserTimezone, r as appendCronStyleCurrentTimeLine, t as getReplyFromConfig, vr as isHeartbeatContentEffectivelyEmpty, yr as resolveHeartbeatPrompt$1 } from "./reply-D5gCiiGr.js";
4
+ import { d as resolveDefaultAgentId, i as resolveAgentConfig, u as resolveAgentWorkspaceDir, y as DEFAULT_HEARTBEAT_FILENAME } from "./agent-scope-RA0zXRpu.js";
5
5
  import { t as createSubsystemLogger } from "./subsystem-CGZX2PBV.js";
6
6
  import { n as defaultRuntime } from "./runtime-44j_X4Y6.js";
7
7
  import { l as resolveAgentIdFromSessionKey, p as toAgentStoreSessionKey, s as normalizeAgentId } from "./session-key-Cuihcz_O.js";
8
- import { It as loadConfig, cn as parseDurationMs } from "./model-selection-CSn9tUuH.js";
8
+ import { It as loadConfig, cn as parseDurationMs } from "./model-selection-0dGxYGp8.js";
9
9
  import { t as isTruthyEnvValue } from "./env-Bx-F45X5.js";
10
10
  import { i as hasErrnoCode, n as formatErrorMessage } from "./errors-DZDuPc3M.js";
11
- import { Q as resolveAgentMainSessionKey, Z as canonicalizeMainSessionAlias, c as loadSessionStore, g as updateSessionStore, p as saveSessionStore } from "./sessions-BqWocozB.js";
12
- import { n as listChannelPlugins, t as getChannelPlugin } from "./plugins-B4hASNc2.js";
13
- import { a as resolvePreferredAccountId, t as buildChannelAccountBindings } from "./bindings-DZjkLUU_.js";
11
+ import { Q as resolveAgentMainSessionKey, Z as canonicalizeMainSessionAlias, c as loadSessionStore, g as updateSessionStore, p as saveSessionStore } from "./sessions-BtPXimXQ.js";
12
+ import { n as listChannelPlugins, t as getChannelPlugin } from "./plugins-D46VZh7u.js";
13
+ import { a as resolvePreferredAccountId, t as buildChannelAccountBindings } from "./bindings-B59Q7nsk.js";
14
14
  import { i as resolveSessionFilePath, u as resolveStorePath } from "./paths-DRz46q00.js";
15
15
  import { t as HEARTBEAT_TOKEN } from "./tokens-Dg-QZ_pN.js";
16
- import { t as deliverOutboundPayloads } from "./deliver-yTpXc5sv.js";
17
- import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-DnTBT02D.js";
18
- import { o as resolveEffectiveMessagesConfig } from "./reply-prefix-BMEdvSpA.js";
16
+ import { t as deliverOutboundPayloads } from "./deliver--kttnrER.js";
17
+ import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-BpWhjuOg.js";
18
+ import { o as resolveEffectiveMessagesConfig } from "./reply-prefix-C3y4zpTl.js";
19
19
  import { n as withProgress } from "./progress-BQLz1r3L.js";
20
20
  import { a as resolveIndicatorType, n as emitHeartbeatEvent, o as resolveHeartbeatReplyPayload, t as resolveHeartbeatVisibility } from "./heartbeat-visibility-CVWq9u04.js";
21
21
  import { t as resolveChannelDefaultAccountId } from "./helpers-C6eW1WGZ.js";
22
22
  import path from "node:path";
23
- import fsPromises from "node:fs/promises";
23
+ import fs from "node:fs/promises";
24
24
 
25
25
  //#region src/infra/heartbeat-active-hours.ts
26
26
  const ACTIVE_HOURS_TIME_PATTERN = /^(?:([01]\d|2[0-3]):([0-5]\d)|24:00)$/;
@@ -314,7 +314,7 @@ async function pruneHeartbeatTranscript(params) {
314
314
  const { transcriptPath, preHeartbeatSize } = params;
315
315
  if (!transcriptPath || typeof preHeartbeatSize !== "number" || preHeartbeatSize < 0) return;
316
316
  try {
317
- if ((await fsPromises.stat(transcriptPath)).size > preHeartbeatSize) await fsPromises.truncate(transcriptPath, preHeartbeatSize);
317
+ if ((await fs.stat(transcriptPath)).size > preHeartbeatSize) await fs.truncate(transcriptPath, preHeartbeatSize);
318
318
  } catch {}
319
319
  }
320
320
  /**
@@ -332,7 +332,7 @@ async function captureTranscriptState(params) {
332
332
  });
333
333
  return {
334
334
  transcriptPath,
335
- preHeartbeatSize: (await fsPromises.stat(transcriptPath)).size
335
+ preHeartbeatSize: (await fs.stat(transcriptPath)).size
336
336
  };
337
337
  } catch {
338
338
  return {};
@@ -389,7 +389,7 @@ async function resolveHeartbeatPreflight(params) {
389
389
  const workspaceDir = resolveAgentWorkspaceDir(params.cfg, params.agentId);
390
390
  const heartbeatFilePath = path.join(workspaceDir, DEFAULT_HEARTBEAT_FILENAME);
391
391
  try {
392
- if (isHeartbeatContentEffectivelyEmpty(await fsPromises.readFile(heartbeatFilePath, "utf-8"))) return {
392
+ if (isHeartbeatContentEffectivelyEmpty(await fs.readFile(heartbeatFilePath, "utf-8"))) return {
393
393
  ...basePreflight,
394
394
  skipReason: "empty-heartbeat-file"
395
395
  };
@@ -7,9 +7,9 @@ import { l as resolveAgentIdFromSessionKey, p as toAgentStoreSessionKey, s as no
7
7
  import { $ as canonicalizeMainSessionAlias, c as loadSessionStore, et as resolveAgentMainSessionKey, g as updateSessionStore, p as saveSessionStore } from "./sessions-BoqJKVEs.js";
8
8
  import { n as listChannelPlugins, t as getChannelPlugin } from "./plugins-CCrfZ49T.js";
9
9
  import { a as resolvePreferredAccountId, t as buildChannelAccountBindings } from "./bindings-Ch_2VM9i.js";
10
- import { An as requestHeartbeatNow, Dr as isHeartbeatContentEffectivelyEmpty, Er as DEFAULT_HEARTBEAT_EVERY, Mn as resolveHeartbeatReasonKind, On as peekSystemEventEntries, Or as resolveHeartbeatPrompt$1, Tr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, bn as buildOutboundSessionContext, et as getReplyFromConfig, jn as setHeartbeatWakeHandler, kr as stripHeartbeatToken, mt as resolveHeartbeatSenderContext, nr as resolveUserTimezone, nt as appendCronStyleCurrentTimeLine, pt as resolveHeartbeatDeliveryTarget, vr as getQueueSize, wr as CommandLane } from "./subagent-registry-CTZmDdGV.js";
10
+ import { An as requestHeartbeatNow, Dr as isHeartbeatContentEffectivelyEmpty, Er as DEFAULT_HEARTBEAT_EVERY, Mn as resolveHeartbeatReasonKind, On as peekSystemEventEntries, Or as resolveHeartbeatPrompt$1, Tr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, bn as buildOutboundSessionContext, et as getReplyFromConfig, jn as setHeartbeatWakeHandler, kr as stripHeartbeatToken, mt as resolveHeartbeatSenderContext, nr as resolveUserTimezone, nt as appendCronStyleCurrentTimeLine, pt as resolveHeartbeatDeliveryTarget, vr as getQueueSize, wr as CommandLane } from "./subagent-registry-BH5O1rxK.js";
11
11
  import { i as resolveSessionFilePath, u as resolveStorePath } from "./paths-CC17i2eK.js";
12
- import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-DuNslqj2.js";
12
+ import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-C82rD2Wn.js";
13
13
  import { t as HEARTBEAT_TOKEN } from "./tokens-DMP8C42Q.js";
14
14
  import { t as deliverOutboundPayloads } from "./deliver-UdfAQA1U.js";
15
15
  import { i as hasErrnoCode, n as formatErrorMessage } from "./errors-p-ipELrD.js";
@@ -28,11 +28,11 @@ import "./logging-Bgrm4o7g.js";
28
28
  import "./auth-store-D9BmR4S6.js";
29
29
  import "./send-m4lQkQcY.js";
30
30
  import "./send-CCiDIuX4.js";
31
- import "./subagent-registry-CTZmDdGV.js";
31
+ import "./subagent-registry-BH5O1rxK.js";
32
32
  import "./paths-CC17i2eK.js";
33
33
  import "./chat-envelope-Dedaetiq.js";
34
- import "./client-Brv1GCwX.js";
35
- import "./call-DuNslqj2.js";
34
+ import "./client-udFMSDes.js";
35
+ import "./call-C82rD2Wn.js";
36
36
  import "./pairing-token-CnnKAS6M.js";
37
37
  import "./net-CE_62H5R.js";
38
38
  import "./ip-Y1214nEL.js";
@@ -111,8 +111,8 @@ import "./cli-utils-BfsDuRZS.js";
111
111
  import "./help-format-CldHB7lS.js";
112
112
  import "./progress-B76RkFx7.js";
113
113
  import "./replies-DSfpze17.js";
114
- import "./deps-BUUwigzc.js";
115
- import "./onboard-helpers-Dp6wXNs7.js";
114
+ import "./deps-CjWcQwlX.js";
115
+ import "./onboard-helpers-DWivfzcc.js";
116
116
  import "./prompt-style-XmK49QYK.js";
117
117
  import "./pairing-labels-D7xcHkxi.js";
118
118
  import { c as resolveArchiveKind, i as unscopedPackageName, o as fileExists, s as readJsonFile, t as resolveSafeInstallDir } from "./install-safe-path-C7y57-yb.js";
@@ -120,7 +120,7 @@ import { a as resolveInstallModeOptions, c as withExtractedArchiveRoot, i as ins
120
120
  import { t as renderTable } from "./table-aJzHv5Oe.js";
121
121
  import { a as parseFrontmatter, t as loadWorkspaceHookEntries } from "./workspace-Dj1dL0rI.js";
122
122
  import { t as buildWorkspaceHookStatus } from "./hooks-status-DdEXLhj3.js";
123
- import { n as resolvePinnedNpmInstallRecordForCli, r as buildPluginStatusReport, t as buildNpmInstallRecordFields } from "./npm-resolution-WKW4cIrd.js";
123
+ import { n as resolvePinnedNpmInstallRecordForCli, r as buildPluginStatusReport, t as buildNpmInstallRecordFields } from "./npm-resolution-By6bZkA-.js";
124
124
  import path from "node:path";
125
125
  import fs from "node:fs";
126
126
  import fs$1 from "node:fs/promises";
@@ -1,13 +1,13 @@
1
1
  import "./paths-Cn44w-EB.js";
2
2
  import { B as theme, S as shortenHomePath, t as CONFIG_DIR, y as resolveUserPath } from "./utils-CXzXXV2o.js";
3
3
  import "./thinking-EAliFiVK.js";
4
- import "./reply-DKIv9jez.js";
5
- import { d as resolveDefaultAgentId, u as resolveAgentWorkspaceDir } from "./agent-scope-Bn39ugK4.js";
4
+ import "./reply-D5gCiiGr.js";
5
+ import { d as resolveDefaultAgentId, u as resolveAgentWorkspaceDir } from "./agent-scope-RA0zXRpu.js";
6
6
  import "./subsystem-CGZX2PBV.js";
7
7
  import { n as defaultRuntime } from "./runtime-44j_X4Y6.js";
8
- import "./idlehands-root-DFL2GrNW.js";
8
+ import "./idlehands-root-B8cUs-5M.js";
9
9
  import "./exec-CKHMT0tZ.js";
10
- import { Ht as writeConfigFile, It as loadConfig } from "./model-selection-CSn9tUuH.js";
10
+ import { Ht as writeConfigFile, It as loadConfig } from "./model-selection-0dGxYGp8.js";
11
11
  import "./github-copilot-token-D7lpquOO.js";
12
12
  import { t as formatCliCommand } from "./command-format-DInZLuZ8.js";
13
13
  import "./boolean-BsqeuxE6.js";
@@ -15,118 +15,118 @@ import "./env-Bx-F45X5.js";
15
15
  import "./host-env-security-DkAVVuaw.js";
16
16
  import "./env-vars-sTMVGyld.js";
17
17
  import { n as isPathInside, r as isPathInsideWithRealpath } from "./scan-paths-DE00o1Lk.js";
18
- import "./manifest-registry-RfRn8HJx.js";
18
+ import "./manifest-registry-Bak1x76G.js";
19
19
  import { n as MANIFEST_KEY } from "./legacy-names-DB161qHh.js";
20
- import "./dock-CzF5XYGd.js";
20
+ import "./dock-Y96MzKuM.js";
21
21
  import "./message-channel-DVauVtrg.js";
22
- import "./send-CVIXqubC.js";
23
- import "./runner-BFG54hnb.js";
24
- import "./image-C2JZiK-6.js";
25
- import "./models-config-lQpqp472.js";
26
- import "./pi-model-discovery-Bt79ifyi.js";
27
- import "./pi-embedded-helpers-BkzrQ5bZ.js";
28
- import "./sandbox-CfPbhDY_.js";
22
+ import "./send-DwdHiC7_.js";
23
+ import "./runner-DzszLzI4.js";
24
+ import "./image-DSDEbSiO.js";
25
+ import "./models-config-C5A1wDWh.js";
26
+ import "./pi-model-discovery-BIP3RjXl.js";
27
+ import "./pi-embedded-helpers-BCsfqpDt.js";
28
+ import "./sandbox-DcUw5h3p.js";
29
29
  import "./tool-catalog-4_Wxc542.js";
30
- import "./chrome-YguTEaLx.js";
30
+ import "./chrome-VBsQfIrt.js";
31
31
  import { u as promptYesNo } from "./tailscale-B5Irc_Bi.js";
32
32
  import "./ip-DJ5wsTQn.js";
33
33
  import "./tailnet-C9lH_YnG.js";
34
34
  import "./ws-XBTtYpJc.js";
35
35
  import "./auth-heRVBxh2.js";
36
- import "./server-context-BxNSTpH6.js";
36
+ import "./server-context-DI0W_H7R.js";
37
37
  import "./frontmatter-D-sQ_Hqk.js";
38
- import "./skills-TIyQDZx7.js";
39
- import "./path-alias-guards-BCskHdfJ.js";
40
- import "./paths-Bt0fZexW.js";
38
+ import "./skills-DlvDyK8L.js";
39
+ import "./path-alias-guards-FXBVVTLw.js";
40
+ import "./paths-B-CLQ5RT.js";
41
41
  import "./redact-B_4KNlXs.js";
42
42
  import "./errors-DZDuPc3M.js";
43
- import "./fs-safe-DNFrxDS-.js";
43
+ import "./fs-safe-_JQUGpZf.js";
44
44
  import "./ssrf-Dw9zzKSM.js";
45
- import "./image-ops-BkoEFRYH.js";
46
- import "./store-CLNuI8-G.js";
47
- import "./ports-DWJO5S52.js";
45
+ import "./image-ops-BU-VdLZu.js";
46
+ import "./store-kH9wHHbO.js";
47
+ import "./ports-SQy1d-RL.js";
48
48
  import "./trash-CUFiyQN5.js";
49
49
  import "./server-middleware-BC21xYvr.js";
50
- import "./sessions-BqWocozB.js";
51
- import "./plugins-B4hASNc2.js";
52
- import "./accounts-D-hQsUw-.js";
53
- import "./accounts-DsVN0UNw.js";
54
- import "./accounts-D87a1Y_K.js";
55
- import "./bindings-DZjkLUU_.js";
50
+ import "./sessions-BtPXimXQ.js";
51
+ import "./plugins-D46VZh7u.js";
52
+ import "./accounts-DLTODa_Z.js";
53
+ import "./accounts-3HS_UAhJ.js";
54
+ import "./accounts-DgbTKQoW.js";
55
+ import "./bindings-B59Q7nsk.js";
56
56
  import "./logging-q4KyMmY-.js";
57
- import "./auth-store-CMyrmmSF.js";
58
- import "./send-BPwTl4-K.js";
57
+ import "./auth-store-DDzIMy8_.js";
58
+ import "./send-DuwdEkLw.js";
59
59
  import "./paths-DRz46q00.js";
60
60
  import "./chat-envelope-Bebo3vwl.js";
61
- import "./tool-images-DZHrc4pq.js";
61
+ import "./tool-images-CHqepyF_.js";
62
62
  import "./tool-display-Dac7lHGW.js";
63
63
  import "./fetch-guard-yUZu1Vzc.js";
64
- import "./api-key-rotation-nXQVJErE.js";
65
- import "./local-roots-Cco87A2_.js";
66
- import "./model-catalog-BCsDrrvq.js";
64
+ import "./api-key-rotation-B-FTJm5p.js";
65
+ import "./local-roots-q0xbefkf.js";
66
+ import "./model-catalog-D9no0CH2.js";
67
67
  import "./tokens-Dg-QZ_pN.js";
68
- import "./deliver-yTpXc5sv.js";
69
- import "./commands-D3BU_t7G.js";
70
- import "./commands-registry-Cj4D_1tw.js";
71
- import "./client-DIckPnsi.js";
72
- import "./call-DnTBT02D.js";
73
- import "./pairing-token-3hoCgQqp.js";
68
+ import "./deliver--kttnrER.js";
69
+ import "./commands-Dj5LalLo.js";
70
+ import "./commands-registry-CURlRZQJ.js";
71
+ import "./client-DtnD-ee9.js";
72
+ import "./call-BpWhjuOg.js";
73
+ import "./pairing-token-lKXTMQ_M.js";
74
74
  import "./fetch-CYe1ekSh.js";
75
75
  import "./retry-Db05aSB8.js";
76
- import "./pairing-store-qvpPoWL_.js";
76
+ import "./pairing-store-CPpEEQJO.js";
77
77
  import "./exec-approvals-C2s2dPha.js";
78
- import "./exec-approvals-allowlist-8AkOwwIr.js";
79
- import "./exec-safe-bin-runtime-policy-DYXuBKqH.js";
80
- import "./nodes-screen-CIAn0wXq.js";
81
- import "./target-errors-BYuWhuLU.js";
78
+ import "./exec-approvals-allowlist-Co2tJSEo.js";
79
+ import "./exec-safe-bin-runtime-policy-DaoU9-ni.js";
80
+ import "./nodes-screen-CcpPaFxa.js";
81
+ import "./target-errors-bLIVFsbF.js";
82
82
  import "./diagnostic-session-state-CJHdRyOy.js";
83
- import "./with-timeout-BodPmGCY.js";
83
+ import "./with-timeout-DEdycYxq.js";
84
84
  import "./diagnostic-ByHpt6q8.js";
85
- import "./send-DDMaLJAQ.js";
86
- import "./model-Bd-05WpB.js";
87
- import "./reply-prefix-BMEdvSpA.js";
88
- import "./memory-cli-4wfelGdK.js";
89
- import "./manager-BBeTPO2h.js";
90
- import "./query-expansion-i5I3yavb.js";
85
+ import "./send--lzpNy4f.js";
86
+ import "./model-C-icShH2.js";
87
+ import "./reply-prefix-C3y4zpTl.js";
88
+ import "./memory-cli-CUGwnVIY.js";
89
+ import "./manager-BMAFgXyU.js";
90
+ import "./query-expansion-Clts_AGz.js";
91
91
  import "./chunk-ClMFHJu-.js";
92
- import "./markdown-tables-C5hTDqNm.js";
93
- import "./ir-DV0Hszc8.js";
92
+ import "./markdown-tables-DZClqsNo.js";
93
+ import "./ir-VncGpwA1.js";
94
94
  import "./render-DC4qnRqG.js";
95
- import "./pi-tools.policy-B_ME3yF6.js";
95
+ import "./pi-tools.policy-DfITIKZj.js";
96
96
  import "./channel-activity-DaCsrdWK.js";
97
- import "./tables-CZSD889r.js";
98
- import "./send-BCPkAE2k.js";
97
+ import "./tables-g9xkflht.js";
98
+ import "./send-C4v0Leny.js";
99
99
  import "./proxy-yk1Oqe9p.js";
100
100
  import { t as formatDocsLink } from "./links-15764jZB.js";
101
101
  import "./cli-utils-CH2y4E2f.js";
102
102
  import "./help-format-CMAqOikG.js";
103
103
  import "./progress-BQLz1r3L.js";
104
- import "./resolve-route-Ef_Yt2Dw.js";
105
- import "./replies-Czp4hvpS.js";
106
- import "./skill-commands-BwIRWSCI.js";
107
- import "./workspace-dirs-D3bousoX.js";
108
- import "./deps-CH8f3TJK.js";
109
- import "./plugin-auto-enable-BMuSi4aV.js";
110
- import "./channel-selection-3jUl-PyW.js";
111
- import "./outbound-attachment-jYdMgCml.js";
104
+ import "./resolve-route-D_AbcmD6.js";
105
+ import "./replies-hSFVxL4h.js";
106
+ import "./skill-commands-BFzmZAfo.js";
107
+ import "./workspace-dirs-SsExQ3Bz.js";
108
+ import "./deps-CwPrf7RC.js";
109
+ import "./plugin-auto-enable-7DUxMy6A.js";
110
+ import "./channel-selection-ZxRkxpuF.js";
111
+ import "./outbound-attachment-Bot3bRnK.js";
112
112
  import "./delivery-queue-BvDRo8CK.js";
113
113
  import "./session-cost-usage-DS1rjzML.js";
114
- import "./send-CEavqqEz.js";
115
- import "./onboard-helpers-ByhJg2ST.js";
114
+ import "./send-DQiw_nGD.js";
115
+ import "./onboard-helpers-mzy38DiC.js";
116
116
  import "./prompt-style-kmKiCZnm.js";
117
- import "./pairing-labels-DuZ7ih-T.js";
118
- import "./server-lifecycle-CGKrGrhM.js";
117
+ import "./pairing-labels-ChQJzbS9.js";
118
+ import "./server-lifecycle-B5PlrlbG.js";
119
119
  import "./stagger-rQoQSWkz.js";
120
- import "./system-run-command-BIhrK3OI.js";
121
- import { c as resolveArchiveKind, i as unscopedPackageName, o as fileExists, s as readJsonFile, t as resolveSafeInstallDir } from "./install-safe-path-CNNMzJl9.js";
122
- import { a as resolveInstallModeOptions, c as withExtractedArchiveRoot, i as installPackageDir, l as resolveArchiveSourcePath, n as finalizeNpmSpecArchiveInstall, o as resolveTimedInstallModeOptions, r as installFromNpmSpecArchiveWithInstaller, s as resolveExistingInstallPath, t as validateRegistryNpmSpec } from "./npm-registry-spec-BfeHLbIQ.js";
120
+ import "./system-run-command-qJdgzxLp.js";
121
+ import { c as resolveArchiveKind, i as unscopedPackageName, o as fileExists, s as readJsonFile, t as resolveSafeInstallDir } from "./install-safe-path-ChNR9pl6.js";
122
+ import { a as resolveInstallModeOptions, c as withExtractedArchiveRoot, i as installPackageDir, l as resolveArchiveSourcePath, n as finalizeNpmSpecArchiveInstall, o as resolveTimedInstallModeOptions, r as installFromNpmSpecArchiveWithInstaller, s as resolveExistingInstallPath, t as validateRegistryNpmSpec } from "./npm-registry-spec-BCbbfIhX.js";
123
123
  import { t as renderTable } from "./table-B9AmL3M1.js";
124
- import { a as parseFrontmatter, t as loadWorkspaceHookEntries } from "./workspace-CDw87aZG.js";
125
- import { t as buildWorkspaceHookStatus } from "./hooks-status-CPIWc_bx.js";
126
- import { n as resolvePinnedNpmInstallRecordForCli, r as buildPluginStatusReport, t as buildNpmInstallRecordFields } from "./npm-resolution-tT1BUac2.js";
124
+ import { a as parseFrontmatter, t as loadWorkspaceHookEntries } from "./workspace-D3pARwoB.js";
125
+ import { t as buildWorkspaceHookStatus } from "./hooks-status-DNGo2G8Q.js";
126
+ import { n as resolvePinnedNpmInstallRecordForCli, r as buildPluginStatusReport, t as buildNpmInstallRecordFields } from "./npm-resolution-DLSA4PTO.js";
127
127
  import fs from "node:fs";
128
128
  import path from "node:path";
129
- import fsPromises from "node:fs/promises";
129
+ import fs$1 from "node:fs/promises";
130
130
 
131
131
  //#region src/hooks/install.ts
132
132
  const defaultLogger = {};
@@ -157,7 +157,7 @@ async function ensureIdleHandsHooks(manifest) {
157
157
  }
158
158
  async function resolveInstallTargetDir(id, hooksDir) {
159
159
  const baseHooksDir = hooksDir ? resolveUserPath(hooksDir) : path.join(CONFIG_DIR, "hooks");
160
- await fsPromises.mkdir(baseHooksDir, { recursive: true });
160
+ await fs$1.mkdir(baseHooksDir, { recursive: true });
161
161
  const targetDirResult = resolveSafeInstallDir({
162
162
  baseDir: baseHooksDir,
163
163
  id,
@@ -175,7 +175,7 @@ async function resolveInstallTargetDir(id, hooksDir) {
175
175
  async function resolveHookNameFromDir(hookDir) {
176
176
  const hookMdPath = path.join(hookDir, "HOOK.md");
177
177
  if (!await fileExists(hookMdPath)) throw new Error(`HOOK.md missing in ${hookDir}`);
178
- return parseFrontmatter(await fsPromises.readFile(hookMdPath, "utf-8")).name || path.basename(hookDir);
178
+ return parseFrontmatter(await fs$1.readFile(hookMdPath, "utf-8")).name || path.basename(hookDir);
179
179
  }
180
180
  async function validateHookDir(hookDir) {
181
181
  if (!await fileExists(path.join(hookDir, "HOOK.md"))) throw new Error(`HOOK.md missing in ${hookDir}`);
@@ -308,24 +308,24 @@ async function installHookFromDir(params) {
308
308
  let backupDir = null;
309
309
  if (mode === "update" && await fileExists(targetDir)) {
310
310
  backupDir = `${targetDir}.backup-${Date.now()}`;
311
- await fsPromises.rename(targetDir, backupDir);
311
+ await fs$1.rename(targetDir, backupDir);
312
312
  }
313
313
  try {
314
- await fsPromises.cp(params.hookDir, targetDir, { recursive: true });
314
+ await fs$1.cp(params.hookDir, targetDir, { recursive: true });
315
315
  } catch (err) {
316
316
  if (backupDir) {
317
- await fsPromises.rm(targetDir, {
317
+ await fs$1.rm(targetDir, {
318
318
  recursive: true,
319
319
  force: true
320
320
  }).catch(() => void 0);
321
- await fsPromises.rename(backupDir, targetDir).catch(() => void 0);
321
+ await fs$1.rename(backupDir, targetDir).catch(() => void 0);
322
322
  }
323
323
  return {
324
324
  ok: false,
325
325
  error: `failed to copy hook: ${String(err)}`
326
326
  };
327
327
  }
328
- if (backupDir) await fsPromises.rm(backupDir, {
328
+ if (backupDir) await fs$1.rm(backupDir, {
329
329
  recursive: true,
330
330
  force: true
331
331
  }).catch(() => void 0);
@@ -555,7 +555,7 @@ function logIntegrityDriftWarning(hookId, drift) {
555
555
  }
556
556
  async function readInstalledPackageVersion(dir) {
557
557
  try {
558
- const raw = await fsPromises.readFile(path.join(dir, "package.json"), "utf-8");
558
+ const raw = await fs$1.readFile(path.join(dir, "package.json"), "utf-8");
559
559
  const parsed = JSON.parse(raw);
560
560
  return typeof parsed.version === "string" ? parsed.version : void 0;
561
561
  } catch {
@@ -1,7 +1,7 @@
1
1
  import { t as CONFIG_DIR } from "./utils-CXzXXV2o.js";
2
2
  import { d as hasBinary } from "./frontmatter-D-sQ_Hqk.js";
3
3
  import { t as evaluateEntryRequirementsForCurrentPlatform } from "./entry-status-BKwPdF1n.js";
4
- import { n as isConfigPathTruthy, r as resolveHookConfig, t as loadWorkspaceHookEntries } from "./workspace-CDw87aZG.js";
4
+ import { n as isConfigPathTruthy, r as resolveHookConfig, t as loadWorkspaceHookEntries } from "./workspace-D3pARwoB.js";
5
5
  import path from "node:path";
6
6
 
7
7
  //#region src/hooks/hooks-status.ts
@@ -2,7 +2,7 @@ import { fileURLToPath } from "node:url";
2
2
  import fs from "node:fs";
3
3
  import os from "node:os";
4
4
  import path from "node:path";
5
- import fsPromises from "node:fs/promises";
5
+ import fs$1 from "node:fs/promises";
6
6
 
7
7
  //#region src/agents/skills/filter.ts
8
8
  function normalizeSkillFilter(skillFilter) {
@@ -166,7 +166,7 @@ async function resolveBoundaryPathLexicalAsync(params) {
166
166
  lexicalCursor = path.join(lexicalCursor, segment);
167
167
  let stat;
168
168
  try {
169
- stat = await fsPromises.lstat(lexicalCursor);
169
+ stat = await fs$1.lstat(lexicalCursor);
170
170
  } catch (error) {
171
171
  if (isNotFoundPathError(error)) {
172
172
  const missingSuffix = segments.slice(idx);
@@ -333,7 +333,7 @@ async function resolvePathViaExistingAncestor(targetPath) {
333
333
  }
334
334
  if (!await pathExists(cursor)) return normalized;
335
335
  try {
336
- const resolvedAncestor = path.resolve(await fsPromises.realpath(cursor));
336
+ const resolvedAncestor = path.resolve(await fs$1.realpath(cursor));
337
337
  if (missingSuffix.length === 0) return resolvedAncestor;
338
338
  return path.resolve(resolvedAncestor, ...missingSuffix);
339
339
  } catch {
@@ -363,7 +363,7 @@ async function getPathKind(absolutePath, preserveFinalSymlink) {
363
363
  try {
364
364
  return {
365
365
  exists: true,
366
- kind: toResolvedKind(preserveFinalSymlink ? await fsPromises.lstat(absolutePath) : await fsPromises.stat(absolutePath))
366
+ kind: toResolvedKind(preserveFinalSymlink ? await fs$1.lstat(absolutePath) : await fs$1.stat(absolutePath))
367
367
  };
368
368
  } catch (error) {
369
369
  if (isNotFoundPathError(error)) return {
@@ -419,7 +419,7 @@ function isFilesystemRoot(candidate) {
419
419
  }
420
420
  async function pathExists(targetPath) {
421
421
  try {
422
- await fsPromises.lstat(targetPath);
422
+ await fs$1.lstat(targetPath);
423
423
  return true;
424
424
  } catch (error) {
425
425
  if (isNotFoundPathError(error)) return false;
@@ -428,10 +428,10 @@ async function pathExists(targetPath) {
428
428
  }
429
429
  async function resolveSymlinkHopPath(symlinkPath) {
430
430
  try {
431
- return path.resolve(await fsPromises.realpath(symlinkPath));
431
+ return path.resolve(await fs$1.realpath(symlinkPath));
432
432
  } catch (error) {
433
433
  if (!isNotFoundPathError(error)) throw error;
434
- const linkTarget = await fsPromises.readlink(symlinkPath);
434
+ const linkTarget = await fs$1.readlink(symlinkPath);
435
435
  return resolvePathViaExistingAncestor(path.resolve(path.dirname(symlinkPath), linkTarget));
436
436
  }
437
437
  }
@@ -600,7 +600,7 @@ async function openBoundaryFile(params) {
600
600
  const CORE_PACKAGE_NAMES = new Set(["idlehands", "@visorcraft/idlehands"]);
601
601
  async function readPackageName(dir) {
602
602
  try {
603
- const raw = await fsPromises.readFile(path.join(dir, "package.json"), "utf-8");
603
+ const raw = await fs$1.readFile(path.join(dir, "package.json"), "utf-8");
604
604
  const parsed = JSON.parse(raw);
605
605
  return typeof parsed.name === "string" ? parsed.name : null;
606
606
  } catch {
@@ -3,7 +3,7 @@ import { h as resolveAgentModelPrimaryValue, m as resolveAgentModelFallbackValue
3
3
  import { _ as shortenHomeInString, c as isRecord } from "./utils-CTFLl_ji.js";
4
4
  import { R as loadConfig, S as getApiKeyForModel, _ as normalizeProviders, dn as resolveIdleHandsAgentDir, gn as normalizeSecretInput, v as resolveImplicitCopilotProvider, w as requireApiKey, y as resolveImplicitProviders } from "./model-selection-1MMYqY6M.js";
5
5
  import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-Bb__OY-j.js";
6
- import { P as sanitizeUserFacingText } from "./pi-embedded-helpers-CghCLoPo.js";
6
+ import { P as sanitizeUserFacingText } from "./pi-embedded-helpers-CyTpDKo5.js";
7
7
  import { n as redactToolDetail } from "./redact-Bvpf-ATQ.js";
8
8
  import fs from "node:fs/promises";
9
9
  import path from "node:path";
@@ -1,10 +1,10 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { d as isRecord } from "./utils-CXzXXV2o.js";
3
- import { M as resolveAgentModelFallbackValues, N as resolveAgentModelPrimaryValue } from "./agent-scope-Bn39ugK4.js";
4
- import { J as requireApiKey, K as getApiKeyForModel, Wr as normalizeSecretInput } from "./model-selection-CSn9tUuH.js";
5
- import { t as ensureIdleHandsModelsJson } from "./models-config-lQpqp472.js";
6
- import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-Bt79ifyi.js";
7
- import { P as sanitizeUserFacingText } from "./pi-embedded-helpers-BkzrQ5bZ.js";
3
+ import { M as resolveAgentModelFallbackValues, N as resolveAgentModelPrimaryValue } from "./agent-scope-RA0zXRpu.js";
4
+ import { J as requireApiKey, K as getApiKeyForModel, Wr as normalizeSecretInput } from "./model-selection-0dGxYGp8.js";
5
+ import { t as ensureIdleHandsModelsJson } from "./models-config-C5A1wDWh.js";
6
+ import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-BIP3RjXl.js";
7
+ import { P as sanitizeUserFacingText } from "./pi-embedded-helpers-BCsfqpDt.js";
8
8
  import { n as resolveToolDisplay, t as formatToolDetail } from "./tool-display-Dac7lHGW.js";
9
9
  import { complete } from "@mariozechner/pi-ai";
10
10
 
@@ -1,6 +1,6 @@
1
- import { D as runExec } from "./agent-scope-CU41EMlR.js";
2
- import path from "node:path";
1
+ import { n as runExec } from "./exec-CKHMT0tZ.js";
3
2
  import os from "node:os";
3
+ import path from "node:path";
4
4
  import fs from "node:fs/promises";
5
5
  import { fileTypeFromBuffer } from "file-type";
6
6