squidclaw 3.3.2 → 3.3.3

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 (363) hide show
  1. package/dist/{accounts-KzgPbLHP.js → accounts-B1RxFghM.js} +1 -1
  2. package/dist/{accounts-BK8I0Svb.js → accounts-BH9Qo1sQ.js} +7 -7
  3. package/dist/{accounts-DeqNOvBo.js → accounts-Cuwg9Tan.js} +1 -1
  4. package/dist/{acp-cli-BDUN_3hr.js → acp-cli-BC9OAf3z.js} +8 -8
  5. package/dist/{agent-scope-DipdnGE4.js → agent-scope-CfsErfyG.js} +17 -17
  6. package/dist/{agents-Dp7Z49KS.js → agents-CCBxQ9aq.js} +14 -14
  7. package/dist/{agents.config-BiYGJTBo.js → agents.config-BLyNI6Wo.js} +2 -2
  8. package/dist/{api-key-rotation-ijs2sHFd.js → api-key-rotation-D8zY84vq.js} +1 -1
  9. package/dist/{audio-preflight-BdE85axf.js → audio-preflight-D2V9uUvO.js} +34 -34
  10. package/dist/{audio-transcription-runner-t9ywC3Mg.js → audio-transcription-runner-Caxzri8M.js} +23 -23
  11. package/dist/{audit-DLLdL6Gd.js → audit-C-YgUaul.js} +29 -29
  12. package/dist/{auth-CgVB2OQr.js → auth-BLnmRBQV.js} +1 -1
  13. package/dist/{auth-choice-DFMaBDZ1.js → auth-choice-BtLMBliK.js} +11 -11
  14. package/dist/{auth-choice-BJBbpLg9.js → auth-choice-gdt59E8k.js} +13 -13
  15. package/dist/{auth-choice.apply-helpers-C-L13mHO.js → auth-choice.apply-helpers-CjGIIfKh.js} +1 -1
  16. package/dist/{auth-profiles-BiJk4pUv.js → auth-profiles-ByQNLJzP.js} +16 -16
  17. package/dist/{auth-token-B3--XmAN.js → auth-token-Gu6sWtZS.js} +1 -1
  18. package/dist/{banner-BR76eqqR.js → banner-C9hwqM49.js} +2 -2
  19. package/dist/{bonjour-discovery-B_XMK5ai.js → bonjour-discovery-Bh8Ao0vC.js} +1 -1
  20. package/dist/{browser-cli-B45YlTHC.js → browser-cli-CGjcwRKx.js} +12 -12
  21. package/dist/build-info.json +3 -3
  22. package/dist/{call-G7vZ_wCI.js → call-BPIaCRGe.js} +10 -10
  23. package/dist/canvas-host/a2ui/a2ui.bundle.js +1 -1
  24. package/dist/{channel-account-context-CQ6rCiGI.js → channel-account-context-DJ3rHgVO.js} +5 -5
  25. package/dist/{channel-activity-CGBzdEGf.js → channel-activity-CNDuTc8D.js} +1 -1
  26. package/dist/{channel-options-CAVwZvHb.js → channel-options-D0gk9W37.js} +3 -3
  27. package/dist/{channel-selection-D_NFb2hE.js → channel-selection-DAoy4Z1P.js} +1 -1
  28. package/dist/{channel-web-CmwN58t5.js → channel-web-Duua4ZPa.js} +17 -17
  29. package/dist/{channels-cli-BvI7PrnS.js → channels-cli-D15lUa6m.js} +93 -93
  30. package/dist/{channels-status-issues-B87XQLLd.js → channels-status-issues-DPzsKH4n.js} +1 -1
  31. package/dist/{chrome-fM6BTTNA.js → chrome-Bs3-hdWP.js} +4 -4
  32. package/dist/{clawbot-cli-jwxDns9G.js → clawbot-cli-ClfRwHPU.js} +11 -11
  33. package/dist/cli/daemon-cli.js +1 -1
  34. package/dist/{cli-IgnHd9vV.js → cli-zfxNQ-Jj.js} +73 -73
  35. package/dist/{client-X5m1ssRl.js → client-DFgW99bv.js} +2 -2
  36. package/dist/{command-registry-DU59Zys9.js → command-registry-okNPqigX.js} +11 -11
  37. package/dist/{command-secret-targets-DElQTuoe.js → command-secret-targets-Blzote2A.js} +4 -4
  38. package/dist/{commands-Di_crduW.js → commands-Bn-GGRiA.js} +1 -1
  39. package/dist/{commands-registry-CvlKGwPE.js → commands-registry-DOyhmv7L.js} +3 -3
  40. package/dist/{completion-cli-B58zTxLB.js → completion-cli-C_kX-zqx.js} +13 -13
  41. package/dist/{completion-cli-BLY0f3DS.js → completion-cli-DMPoKYSD.js} +1 -1
  42. package/dist/{config-cli-BIaTdZ_7.js → config-cli-KQxg7BTe.js} +7 -7
  43. package/dist/{config-guard-CDl-VzWM.js → config-guard-CTKbpGkQ.js} +3 -3
  44. package/dist/{config-validation-BAFa1Cym.js → config-validation-xBuowa-r.js} +3 -3
  45. package/dist/{configure-BXLSTN8m.js → configure-B3Nlvr4W.js} +17 -17
  46. package/dist/control-ui/assets/{index-BqxuPQOl.js → index-Bb5MB8jH.js} +358 -358
  47. package/dist/control-ui/assets/index-Bb5MB8jH.js.map +1 -0
  48. package/dist/control-ui/index.html +1 -1
  49. package/dist/{control-ui-assets-BYEy341x.js → control-ui-assets-d6VtDSeo.js} +1 -1
  50. package/dist/{cron-cli-DeHX-jJX.js → cron-cli-i7RdrGzx.js} +11 -11
  51. package/dist/{daemon-cli-Cc8upFpL.js → daemon-cli-Ot9TBJ_l.js} +15 -15
  52. package/dist/daemon-cli.js +6 -6
  53. package/dist/{daemon-install-Chxlu9Kv.js → daemon-install-CbPLNiIP.js} +4 -4
  54. package/dist/{daemon-install-helpers-CJtiW2RE.js → daemon-install-helpers-CZDVO_MU.js} +11 -11
  55. package/dist/{deliver-CyR05tXq.js → deliver-DYffOszC.js} +7 -7
  56. package/dist/deliver-runtime-CCCnLu1l.js +61 -0
  57. package/dist/deps-send-discord.runtime-C1qYROSU.js +36 -0
  58. package/dist/deps-send-imessage.runtime-Dz14pqUt.js +35 -0
  59. package/dist/deps-send-signal.runtime-BxlxMy_x.js +34 -0
  60. package/dist/deps-send-slack.runtime-BoIAdT0Z.js +32 -0
  61. package/dist/{deps-send-telegram.runtime-aNU8_XlK.js → deps-send-telegram.runtime-C7I8qHRq.js} +16 -16
  62. package/dist/deps-send-whatsapp.runtime-NrQGDJy9.js +119 -0
  63. package/dist/{devices-cli-DVV5P4ZJ.js → devices-cli-CEW04UTp.js} +8 -8
  64. package/dist/{diagnostic-Du3b17ba.js → diagnostic-CT4BKCiT.js} +1 -1
  65. package/dist/{diagnostics--O6mo6KH.js → diagnostics-m7hHHbuE.js} +5 -5
  66. package/dist/{directory-cli-DaE3Quiv.js → directory-cli-4K5ehIEb.js} +7 -7
  67. package/dist/{dns-cli-waaEVY0o.js → dns-cli-Cwgde6km.js} +5 -5
  68. package/dist/{dock-gKJjfuaV.js → dock-0fXeq35m.js} +4 -4
  69. package/dist/{docs-cli--gGxz79Z.js → docs-cli-BpZtes_j.js} +4 -4
  70. package/dist/{doctor-completion-kjDYgxZk.js → doctor-completion-D6js0phx.js} +1 -1
  71. package/dist/{doctor-completion-DRCOGhwS.js → doctor-completion-Dzzgvaw-.js} +2 -2
  72. package/dist/{doctor-config-flow-BtioG6ZI.js → doctor-config-flow-CjyicsHv.js} +15 -15
  73. package/dist/{enable-Cbwq508X.js → enable-DMJvBRPK.js} +1 -1
  74. package/dist/entry.js +2 -2
  75. package/dist/{exec-approvals-allowlist-Bl6dLcC4.js → exec-approvals-allowlist--CDwsotI.js} +1 -1
  76. package/dist/{exec-approvals-cli-_eztu6zG.js → exec-approvals-cli-Bni7tZhv.js} +16 -16
  77. package/dist/{exec-safe-bin-runtime-policy-CYHAJAOy.js → exec-safe-bin-runtime-policy-BOmyNeKa.js} +2 -2
  78. package/dist/{fetch-BWLAZtR0.js → fetch-CODl9dwL.js} +3 -3
  79. package/dist/{fetch-guard-aHbB2ECM.js → fetch-guard-C9XQ9W19.js} +1 -1
  80. package/dist/{fs-safe-DPYj7h8A.js → fs-safe-BPQ-per2.js} +24 -24
  81. package/dist/{gateway-cli-DvWNtJxy.js → gateway-cli-C_bDC15s.js} +153 -153
  82. package/dist/{gateway-cli-lvhI_G2p.js → gateway-cli-DZSjLGTJ.js} +1 -1
  83. package/dist/{gateway-rpc-CyI4qv4e.js → gateway-rpc-mBKSbosL.js} +1 -1
  84. package/dist/{health-CxqVSgKj.js → health-L85P9rRI.js} +11 -11
  85. package/dist/{hooks-cli-C-8A82OA.js → hooks-cli-JUGj7_IF.js} +81 -81
  86. package/dist/{hooks-status-DMFBAUq8.js → hooks-status-BlgSVDvN.js} +1 -1
  87. package/dist/{image-Czt09HO2.js → image-C3rClBur.js} +5 -5
  88. package/dist/{image-ops-B2uuLIGD.js → image-ops-LFsSCTyI.js} +10 -10
  89. package/dist/image-runtime-BawEM2qj.js +55 -0
  90. package/dist/index.js +1 -1
  91. package/dist/{inspect-4c1uL0x5.js → inspect-CzsXBsew.js} +4 -4
  92. package/dist/{install-safe-path-3muwy3fu.js → install-safe-path-DqI19VEv.js} +25 -25
  93. package/dist/{installs-BiQDtPF0.js → installs-P-pYAJm1.js} +9 -9
  94. package/dist/{ipv4-B1l08IQ5.js → ipv4-Bx85fwxr.js} +1 -1
  95. package/dist/{ir-Cg5iUcsz.js → ir-CLdz27UA.js} +8 -8
  96. package/dist/{issue-format-NbalyyoF.js → issue-format-DzzpkEKh.js} +1 -1
  97. package/dist/{json-files-CuJjdF_0.js → json-files-rR19q30D.js} +8 -8
  98. package/dist/{lifecycle-core-BDDTVhGJ.js → lifecycle-core-DAOEq9od.js} +5 -5
  99. package/dist/{login-BtteffgM.js → login-B6agIh-B.js} +3 -3
  100. package/dist/{login-qr-CL3cPNm6.js → login-qr-eRvH4Sfc.js} +6 -6
  101. package/dist/{logs-cli-_68C9pAz.js → logs-cli-DjsOTLd0.js} +9 -9
  102. package/dist/{manager-D-epQZzu.js → manager-CFg5CNjB.js} +14 -14
  103. package/dist/{manager-runtime-dxiaLn0X.js → manager-runtime-BucyWusE.js} +9 -9
  104. package/dist/{manifest-registry-7kwtbCH-.js → manifest-registry-1ACGW3OR.js} +1 -1
  105. package/dist/{memory-cli-DdlNObR_.js → memory-cli-K8RTw22V.js} +12 -12
  106. package/dist/{model-CLOEFgm1.js → model-D3QKHUD9.js} +2 -2
  107. package/dist/{model-catalog-cPBfdmCZ.js → model-catalog-INp1o1zX.js} +3 -3
  108. package/dist/{model-picker-k5b4kcsx.js → model-picker-DNBHh9Px.js} +4 -4
  109. package/dist/{models-Bf5dNlFg.js → models-BpPghvyy.js} +17 -17
  110. package/dist/{models-cli-DHlY3RwP.js → models-cli-DotYKjDq.js} +78 -78
  111. package/dist/{models-config-C7GR26HJ.js → models-config-BNIPxtHv.js} +6 -6
  112. package/dist/{net-CggAM2eK.js → net-QB4dfP4-.js} +2 -2
  113. package/dist/{node-cli-CF6bOApq.js → node-cli-tuLexrKG.js} +33 -33
  114. package/dist/{node-command-policy--2bsadiu.js → node-command-policy-X4KnAuD8.js} +1 -1
  115. package/dist/{node-service-Z0JprJda.js → node-service-OVe0_CIs.js} +1 -1
  116. package/dist/{nodes-cli-DdF0Apr8.js → nodes-cli-BtHrRe7o.js} +16 -16
  117. package/dist/{nodes-screen-Cihyp_1V.js → nodes-screen-CKhKFccI.js} +7 -7
  118. package/dist/{npm-pack-install-B887us7R.js → npm-pack-install-Dn3FiWXB.js} +18 -18
  119. package/dist/{npm-resolution-2sjQlpdP.js → npm-resolution-BTi5J55i.js} +4 -4
  120. package/dist/{onboard-BwVAkxW0.js → onboard-CaDp4p48.js} +6 -6
  121. package/dist/{onboard-channels-Bw372mQX.js → onboard-channels-CUpUBnOj.js} +21 -21
  122. package/dist/{onboard-custom-XW3Q4ERz.js → onboard-custom-DIM8V39k.js} +4 -4
  123. package/dist/{onboard-helpers-DfWsh9P_.js → onboard-helpers-D10-c0nt.js} +10 -10
  124. package/dist/{onboard-hooks-7zSvhf8S.js → onboard-hooks-DW4qt57e.js} +4 -4
  125. package/dist/{onboard-BP7rTtCO.js → onboard-qnQqEy5h.js} +1 -1
  126. package/dist/{onboard-remote-qJCXQTPO.js → onboard-remote-PNWR1AHo.js} +4 -4
  127. package/dist/{onboard-skills-DFMLJn-8.js → onboard-skills-DRzcoNmr.js} +4 -4
  128. package/dist/{onboarding-D_ImwR9D.js → onboarding-D1z3JAaB.js} +14 -14
  129. package/dist/{onboarding-LbGi6oDz.js → onboarding-mo7rwJC-.js} +1 -1
  130. package/dist/{onboarding.finalize-ClTc_ghC.js → onboarding.finalize-CWzwBDG8.js} +153 -107
  131. package/dist/{onboarding.finalize-CWcaxeIO.js → onboarding.finalize-D8igsmtY.js} +66 -20
  132. package/dist/{onboarding.gateway-config-CeOavTRn.js → onboarding.gateway-config-BzzDFZhl.js} +18 -18
  133. package/dist/{onboarding.secret-input-h4sXfwga.js → onboarding.secret-input-ajPT5cjy.js} +1 -1
  134. package/dist/{openai-model-default-BIEWI0T4.js → openai-model-default-lBZZvWbf.js} +2 -2
  135. package/dist/{outbound-attachment-ELXt01nc.js → outbound-attachment-BRjY-xU5.js} +2 -2
  136. package/dist/{outbound-DrmXuI1w.js → outbound-yJzuZMJK.js} +3 -3
  137. package/dist/{pairing-cli-BPn6V6ca.js → pairing-cli-BHW9JIfG.js} +8 -8
  138. package/dist/{pairing-labels-ieaV5SBV.js → pairing-labels-DGiyVpfH.js} +1 -1
  139. package/dist/{pairing-store-BNRzMsGf.js → pairing-store-BWvzmAq8.js} +3 -3
  140. package/dist/{path-alias-guards-vfYYQFIg.js → path-alias-guards-DeOVetT7.js} +3 -3
  141. package/dist/{path-safety-C95DzArw.js → path-safety-D7CjFQvf.js} +1 -1
  142. package/dist/{paths-DfuVHiHu.js → paths-D6mnO6Ni.js} +9 -9
  143. package/dist/{pi-embedded-helpers-DQHj960w.js → pi-embedded-helpers-13zhzo1T.js} +6 -6
  144. package/dist/{pi-model-discovery-D4t0ZFCY.js → pi-model-discovery-Cj7zDFgN.js} +1 -1
  145. package/dist/{pi-model-discovery-runtime-SKeRi7Gx.js → pi-model-discovery-runtime-CylBYw6s.js} +5 -5
  146. package/dist/{pi-tools.before-tool-call.runtime-DjzR6iNJ.js → pi-tools.before-tool-call.runtime-CEWBYhqI.js} +5 -5
  147. package/dist/{pi-tools.policy-DgElG9m2.js → pi-tools.policy-Bhg8uG0h.js} +5 -5
  148. package/dist/{plugin-auto-enable-BLhZ9NWX.js → plugin-auto-enable-D_3GnV1a.js} +3 -3
  149. package/dist/{plugin-registry-BgKtjZBZ.js → plugin-registry-CY6rt9xp.js} +3 -3
  150. package/dist/plugin-sdk/{accounts-DxiB_4z4.js → accounts-B9RVtSwn.js} +2 -2
  151. package/dist/plugin-sdk/{accounts-BXFDqY90.js → accounts-Cnpikxly.js} +3 -3
  152. package/dist/plugin-sdk/{accounts-DU7Js54-.js → accounts-ZkT4ovw_.js} +2 -2
  153. package/dist/plugin-sdk/{active-listener-DRKcesNb.js → active-listener-CKD9GljM.js} +2 -2
  154. package/dist/plugin-sdk/{api-key-rotation-k1ZNheUH.js → api-key-rotation--boE2y8I.js} +2 -2
  155. package/dist/plugin-sdk/{audio-preflight-Be1sKsob.js → audio-preflight-DQZ2WSG4.js} +26 -26
  156. package/dist/plugin-sdk/{audio-transcription-runner-jhHyCc_7.js → audio-transcription-runner-C4aP5aYG.js} +11 -11
  157. package/dist/plugin-sdk/{audit-membership-runtime-B9b-zRwg.js → audit-membership-runtime-DPTwvWpd.js} +2 -2
  158. package/dist/plugin-sdk/{channel-activity-Bq1Y9RiB.js → channel-activity-DAX5uVAX.js} +3 -3
  159. package/dist/plugin-sdk/{channel-web-AsdjtnvN.js → channel-web-CgS5ek7s.js} +18 -18
  160. package/dist/plugin-sdk/{chrome-DOnBMnlx.js → chrome-BHzykCQ9.js} +6 -6
  161. package/dist/plugin-sdk/{commands-registry-D0py59pz.js → commands-registry-CRVdcP1W.js} +4 -4
  162. package/dist/plugin-sdk/compat.js +50 -50
  163. package/dist/plugin-sdk/{config-B16xKqSo.js → config-DMdJidZc.js} +7 -7
  164. package/dist/plugin-sdk/{deliver-BqXXtIuw.js → deliver-DMb_cOF7.js} +10 -10
  165. package/dist/plugin-sdk/deliver-runtime-D0qfBG05.js +32 -0
  166. package/dist/plugin-sdk/deps-send-discord.runtime-9igTHMx2.js +23 -0
  167. package/dist/plugin-sdk/deps-send-imessage.runtime-BFpdfthT.js +22 -0
  168. package/dist/plugin-sdk/deps-send-signal.runtime-BqB_Ilh-.js +21 -0
  169. package/dist/plugin-sdk/deps-send-slack.runtime-o7IR7Ynh.js +19 -0
  170. package/dist/plugin-sdk/deps-send-telegram.runtime-7Xdhax8B.js +24 -0
  171. package/dist/plugin-sdk/deps-send-whatsapp.runtime-D6gMTFom.js +57 -0
  172. package/dist/plugin-sdk/{diagnostic-DUbajFSl.js → diagnostic-BidLPPBm.js} +2 -2
  173. package/dist/plugin-sdk/discord.js +6 -6
  174. package/dist/plugin-sdk/{errors-B8oJXuCF.js → errors-s9jrwzSl.js} +1 -1
  175. package/dist/plugin-sdk/{fetch-guard-Cgyq6Jv9.js → fetch-guard-CEd4HUIR.js} +2 -2
  176. package/dist/plugin-sdk/{fs-safe-BW1ypSDS.js → fs-safe-CZ2NvCjz.js} +3 -3
  177. package/dist/plugin-sdk/{image-BPXnvxYL.js → image-BKaDODzM.js} +6 -6
  178. package/dist/plugin-sdk/{image-ops-BBY2fn9x.js → image-ops-D0YKZqPy.js} +2 -2
  179. package/dist/plugin-sdk/image-runtime-DxJgD-YS.js +25 -0
  180. package/dist/plugin-sdk/index.js +50 -50
  181. package/dist/plugin-sdk/{ir-BJsqyZfm.js → ir-D9fxXkgD.js} +7 -7
  182. package/dist/plugin-sdk/{local-roots-C1ETRlaC.js → local-roots-HL9eBLUg.js} +4 -4
  183. package/dist/plugin-sdk/{logger-DDdrdbDu.js → logger-D0ST0Irn.js} +2 -2
  184. package/dist/plugin-sdk/{login-DtS9DDnV.js → login-CUdm5Ct-.js} +4 -4
  185. package/dist/plugin-sdk/{login-qr-B9YeeJ37.js → login-qr-34QcLRte.js} +5 -5
  186. package/dist/plugin-sdk/{manager-Dn7j3n0d.js → manager-DZ9Hn0Fe.js} +8 -8
  187. package/dist/plugin-sdk/manager-runtime-DMEBebYo.js +15 -0
  188. package/dist/plugin-sdk/{outbound-B8ca8vE3.js → outbound-DTndjh8O.js} +5 -5
  189. package/dist/plugin-sdk/{outbound-attachment-BppFIMQa.js → outbound-attachment-BNMQOIcP.js} +2 -2
  190. package/dist/plugin-sdk/{path-alias-guards-BX-3FprC.js → path-alias-guards-DUn7Q6iW.js} +1 -1
  191. package/dist/plugin-sdk/{paths-CjFcHB_C.js → paths-6WIn8_si.js} +1 -1
  192. package/dist/plugin-sdk/{pi-embedded-helpers-BeYjP1MW.js → pi-embedded-helpers-BMA7JWLb.js} +16 -16
  193. package/dist/plugin-sdk/{pi-model-discovery-B_qCKuSW.js → pi-model-discovery-B6gpdlWb.js} +1 -1
  194. package/dist/plugin-sdk/pi-model-discovery-runtime-Q6toTOMZ.js +8 -0
  195. package/dist/plugin-sdk/{pi-tools.before-tool-call.runtime-cZdrrV27.js → pi-tools.before-tool-call.runtime-CP4hHLJk.js} +4 -4
  196. package/dist/plugin-sdk/{plugins-rivB8KaQ.js → plugins-CWIlxjXW.js} +4 -4
  197. package/dist/plugin-sdk/{proxy-fetch-ZPEvp58f.js → proxy-fetch-tPMv_1eB.js} +1 -1
  198. package/dist/plugin-sdk/{pw-ai-qaWZD0yx.js → pw-ai-BSMHQrVM.js} +9 -9
  199. package/dist/plugin-sdk/{qmd-manager-izn0N9V3.js → qmd-manager-DnMoZBC7.js} +7 -7
  200. package/dist/plugin-sdk/{query-expansion-C1Nx0XAb.js → query-expansion-BCOK4OTO.js} +4 -4
  201. package/dist/plugin-sdk/{redact-BoNEjbpF.js → redact-Bns9Du30.js} +1 -1
  202. package/dist/plugin-sdk/{reply-DNSpho0-.js → reply-C-WT0k-v.js} +73 -73
  203. package/dist/plugin-sdk/{resolve-outbound-target-YiPIGXVN.js → resolve-outbound-target-C6GLRc_O.js} +2 -2
  204. package/dist/plugin-sdk/{run-with-concurrency-vfuRiXdY.js → run-with-concurrency-Baa7LYZD.js} +1 -1
  205. package/dist/plugin-sdk/runtime-whatsapp-login.runtime-CUr_hlGk.js +10 -0
  206. package/dist/plugin-sdk/runtime-whatsapp-outbound.runtime-ByDLfLF3.js +19 -0
  207. package/dist/plugin-sdk/{send-Dh1f5xjE.js → send-7do64QqA.js} +13 -13
  208. package/dist/plugin-sdk/{send-C4KxEJe1.js → send-Bjh-MMdN.js} +7 -7
  209. package/dist/plugin-sdk/{send-DFrnRiWm.js → send-C9jI56cY.js} +8 -8
  210. package/dist/plugin-sdk/{send-D3XVKGvq.js → send-CTsZjmvQ.js} +5 -5
  211. package/dist/plugin-sdk/{send-BSD6Pkrk.js → send-DiuYhmpi.js} +6 -6
  212. package/dist/plugin-sdk/{session-D5c0BIEo.js → session-CiEv9qvh.js} +3 -3
  213. package/dist/plugin-sdk/signal.js +2 -2
  214. package/dist/plugin-sdk/{skill-commands-CnqkEfhS.js → skill-commands-Cuzs_Puw.js} +4 -4
  215. package/dist/plugin-sdk/{skills-DSbDUvmU.js → skills-RHzhTtJf.js} +6 -6
  216. package/dist/plugin-sdk/slash-commands.runtime-Dqev3QWp.js +13 -0
  217. package/dist/plugin-sdk/slash-dispatch.runtime-C_reWfLU.js +52 -0
  218. package/dist/plugin-sdk/slash-skill-commands.runtime-Cl5Y6y_v.js +16 -0
  219. package/dist/plugin-sdk/{ssrf-DvsjfpC2.js → ssrf-dGOzgEI_.js} +1 -1
  220. package/dist/plugin-sdk/{store-DG90hxe6.js → store-DQ2KuNGv.js} +2 -2
  221. package/dist/plugin-sdk/subagent-registry-runtime-Dhtf2h8u.js +52 -0
  222. package/dist/plugin-sdk/{tables-DNlQ8oQ3.js → tables-B3jPS9G8.js} +1 -1
  223. package/dist/plugin-sdk/{target-errors-BlVYPwVC.js → target-errors-vzf_mLjC.js} +2 -2
  224. package/dist/plugin-sdk/{thinking-DT2ZR60x.js → thinking-R15Mehif.js} +7 -7
  225. package/dist/plugin-sdk/{tokens-CTIYTLWu.js → tokens-C-B2SvJW.js} +1 -1
  226. package/dist/plugin-sdk/{tool-images-DroS1EaM.js → tool-images-9Hn0F1o_.js} +2 -2
  227. package/dist/plugin-sdk/web-C4irM2fl.js +56 -0
  228. package/dist/plugin-sdk/{whatsapp-actions-DR2aYq5f.js → whatsapp-actions-DZHLwaea.js} +17 -17
  229. package/dist/plugin-sdk/zalo.js +2 -2
  230. package/dist/{plugins-DuLOFZmO.js → plugins-DFPxMLnR.js} +2 -2
  231. package/dist/{plugins-cli-CKr9IyQL.js → plugins-cli-Bfq4OJMG.js} +83 -83
  232. package/dist/{ports-Be82TlEg.js → ports-BzfeaNjw.js} +1 -1
  233. package/dist/{ports-0jLyYbvQ.js → ports-DMeUt80n.js} +2 -2
  234. package/dist/{program-B5Vn_UD_.js → program-Crlu6-Fd.js} +81 -81
  235. package/dist/{program-context-Cc5-MG37.js → program-context-BUiGRFn1.js} +6 -6
  236. package/dist/{prompt-select-styled-BmJHQFIe.js → prompt-select-styled-BeIW1IXq.js} +1 -1
  237. package/dist/{prompt-select-styled-DTnRirU4.js → prompt-select-styled-DPnXlfvv.js} +40 -40
  238. package/dist/{provider-auth-helpers-DG7hKvxV.js → provider-auth-helpers-C_1HJDfj.js} +5 -5
  239. package/dist/{proxy-env-D16ubrT6.js → proxy-env-CNlcVWhf.js} +1 -1
  240. package/dist/{push-apns-BZeUZhYN.js → push-apns-C4uEslA7.js} +5 -5
  241. package/dist/{pw-ai-BrmQq6dp.js → pw-ai-Dg9fGMve.js} +18 -18
  242. package/dist/{qmd-manager-CToc7FPg.js → qmd-manager-D4nXiiAn.js} +20 -20
  243. package/dist/{qr-cli-23hgWtLn.js → qr-cli-CN6kEeE-.js} +2 -2
  244. package/dist/{query-expansion-DI9INxTg.js → query-expansion-C0HUJbRn.js} +12 -12
  245. package/dist/{redact-snapshot-B8W0RynI.js → redact-snapshot-CiS6G7vm.js} +1 -1
  246. package/dist/{register.agent-C9tZejQm.js → register.agent-BMr61y_S.js} +94 -94
  247. package/dist/register.configure-7_PUrx8F.js +165 -0
  248. package/dist/{register.maintenance-Di-_iCcy.js → register.maintenance-BETLfpr3.js} +4 -4
  249. package/dist/{register.maintenance-dpQRuXYm.js → register.maintenance-DWquSvC1.js} +95 -95
  250. package/dist/{register.message-DexwH4xh.js → register.message-CqqQmFqh.js} +74 -74
  251. package/dist/{register.onboard-CI1dr2mE.js → register.onboard-CJqPKqea.js} +18 -18
  252. package/dist/{register.onboard-D8V8BiRf.js → register.onboard-FYANtcb-.js} +2 -2
  253. package/dist/{register.setup-Dsl5n4Uf.js → register.setup-DzAgPerh.js} +21 -21
  254. package/dist/{register.setup-CuD_ucSh.js → register.setup-_38deeF2.js} +2 -2
  255. package/dist/{register.status-health-sessions-CmNMtNSk.js → register.status-health-sessions-CHCnEwLO.js} +88 -88
  256. package/dist/{register.subclis-C4twva8y.js → register.subclis-DX9OFUYu.js} +31 -31
  257. package/dist/{rpc-BquITS9w.js → rpc-DFxhwitx.js} +1 -1
  258. package/dist/{run-main-6tdntESl.js → run-main-BjSdMh29.js} +93 -93
  259. package/dist/{runtime-_Vk5eISV.js → runtime-By5SpbLU.js} +3 -3
  260. package/dist/{runtime-config-collectors-wQYiGNzB.js → runtime-config-collectors-B104qPur.js} +1 -1
  261. package/dist/{runtime-whatsapp-login.runtime-Cf3JhAPA.js → runtime-whatsapp-login.runtime-B4XQqxLZ.js} +7 -7
  262. package/dist/{runtime-whatsapp-outbound.runtime-bw4l8Cm5.js → runtime-whatsapp-outbound.runtime-CTfBy0k0.js} +15 -15
  263. package/dist/{sandbox-CbGxVENW.js → sandbox-DaQ1ruwH.js} +18 -18
  264. package/dist/{sandbox-cli-WvgvhVoi.js → sandbox-cli-BzmKYlDs.js} +25 -25
  265. package/dist/{secrets-cli-BJFHNFFa.js → secrets-cli-C2iidz4Q.js} +11 -11
  266. package/dist/{security-cli-BVezJLE_.js → security-cli-D3PfmNhS.js} +42 -42
  267. package/dist/{send-Bu3eP6CW.js → send-BWMSp9_W.js} +4 -4
  268. package/dist/{send-DynShEUL.js → send-BbUl6LvV.js} +11 -11
  269. package/dist/{send-D8WRsTcF.js → send-BcCUXoKV.js} +5 -5
  270. package/dist/{send-C2ol3xJd.js → send-BdZJcfei.js} +8 -8
  271. package/dist/{send-Cj7csKER.js → send-DHmaiFb3.js} +6 -6
  272. package/dist/{server-TkeA4LLX.js → server-BThRQKrb.js} +20 -20
  273. package/dist/{server-context-C56AfkmJ.js → server-context-D9dHt5TX.js} +12 -12
  274. package/dist/{server-lifecycle-CUR6g-z-.js → server-lifecycle-DwoqIphm.js} +2 -2
  275. package/dist/{server-middleware-Dxlv5GU2.js → server-middleware-i-VrGsvO.js} +1 -1
  276. package/dist/{server-node-events-EsqtDPMI.js → server-node-events-67QUoOob.js} +74 -74
  277. package/dist/{service-DSqxS6_D.js → service-B5T42CWZ.js} +15 -15
  278. package/dist/{session-D0jodcgT.js → session-eXSdl5mb.js} +1 -1
  279. package/dist/{session-utils-CZALjD6h.js → session-utils-PIpg5nvE.js} +6 -6
  280. package/dist/{sessions-gTKLgF0i.js → sessions-A97O0F1f.js} +15 -15
  281. package/dist/{sessions-BLTjLVQT.js → sessions-CDicf15r.js} +4 -4
  282. package/dist/{shared-D5DTxBPH.js → shared-By6_qr_R.js} +1 -1
  283. package/dist/{shared-4aGIUkwm.js → shared-CJet4A6J.js} +3 -3
  284. package/dist/{skill-commands-CigVnmMu.js → skill-commands-DBT6aOGs.js} +5 -5
  285. package/dist/{skill-scanner-CvS725eQ.js → skill-scanner--QKHR8U0.js} +6 -6
  286. package/dist/{skills-C85azDXm.js → skills-EwyaIyKC.js} +3 -3
  287. package/dist/{skills-cli-B2fk0u1F.js → skills-cli-CblUgygP.js} +5 -5
  288. package/dist/{skills-install-_Qv7iwIj.js → skills-install-Bg63KYLo.js} +6 -6
  289. package/dist/{skills-status-DkO7rxE8.js → skills-status-Bv8Xt7Lc.js} +1 -1
  290. package/dist/{slash-commands.runtime-CF70sEb6.js → slash-commands.runtime-BueY2Beh.js} +11 -11
  291. package/dist/slash-dispatch.runtime-B3gbmyOu.js +114 -0
  292. package/dist/{slash-skill-commands.runtime-6s4Ap-WA.js → slash-skill-commands.runtime-ByvvwWOf.js} +15 -15
  293. package/dist/{squidclaw-root-BQfLymzj.js → squidclaw-root-JXyRbQLJ.js} +8 -8
  294. package/dist/{status-yDvMiWJC.js → status-Doe6Z9h6.js} +27 -27
  295. package/dist/{status.update-CiLU9RPF.js → status.update-BGIm6we4.js} +2 -2
  296. package/dist/{store-BEIcnlgx.js → store-BTkIx401.js} +5 -5
  297. package/dist/{subagent-registry-BE1B0_sO.js → subagent-registry-o5rZt_4e.js} +149 -149
  298. package/dist/subagent-registry-runtime-C0GbHEOo.js +114 -0
  299. package/dist/{system-cli-DAKISNim.js → system-cli-BGFIr82s.js} +9 -9
  300. package/dist/{system-run-command-BOHXAwW8.js → system-run-command-BqoUyRkT.js} +1 -1
  301. package/dist/{systemd-Cj2cX_ZP.js → systemd-B86VePXs.js} +9 -9
  302. package/dist/{systemd-hints-46PqJfaq.js → systemd-hints-BmFWZu_j.js} +6 -6
  303. package/dist/{systemd-linger-6Jd9K5p2.js → systemd-linger-w7fvBU-1.js} +1 -1
  304. package/dist/{tables-DOgKzkCQ.js → tables-Cw6nUurn.js} +1 -1
  305. package/dist/{tailnet-BlV0IR7G.js → tailnet-QKMSnz19.js} +1 -1
  306. package/dist/{target-errors-CRQlPF1u.js → target-errors-C_rnMuJ2.js} +4 -4
  307. package/dist/{tool-images-CyzWvDUu.js → tool-images-D6mmxuWS.js} +1 -1
  308. package/dist/{tui-DN34soFB.js → tui-BxsFozJB.js} +6 -6
  309. package/dist/{tui-cli-CG0r8wIF.js → tui-cli-Bf1E1ENY.js} +32 -32
  310. package/dist/{update-1JhjCqjy.js → update-BhRrb6BI.js} +3 -3
  311. package/dist/{update-cli-XGRmAcuW.js → update-cli-Bh_QpVMZ.js} +4 -4
  312. package/dist/{update-cli-CKvgxhEz.js → update-cli-yUlN0mCs.js} +104 -104
  313. package/dist/{update-runner-EXHdNkfq.js → update-runner-DCLBBKeT.js} +16 -16
  314. package/dist/web-1FVB4fsI.js +118 -0
  315. package/dist/{webhooks-cli-CJpcVOhV.js → webhooks-cli-BCqXOihQ.js} +6 -6
  316. package/dist/{whatsapp-actions-BYzAF3jo.js → whatsapp-actions-I7z57XJA.js} +17 -17
  317. package/dist/{with-timeout-D8mIrgj5.js → with-timeout-CX0CGi5G.js} +3 -3
  318. package/dist/{workspace-D5vNjk5G.js → workspace-BbO-M3Jv.js} +1 -1
  319. package/dist/{workspace-dirs-CKrd0E4k.js → workspace-dirs-DJbX0g4E.js} +1 -1
  320. package/dist/{wsl-CvQfS6aU.js → wsl-CsGe5QCP.js} +2 -2
  321. package/extensions/acpx/node_modules/.bin/acpx +2 -2
  322. package/extensions/diagnostics-otel/node_modules/.bin/acorn +2 -2
  323. package/extensions/diffs/node_modules/.bin/playwright-core +2 -2
  324. package/extensions/googlechat/node_modules/.bin/squidclaw +2 -2
  325. package/extensions/matrix/node_modules/.bin/markdown-it +2 -2
  326. package/extensions/memory-core/node_modules/.bin/squidclaw +2 -2
  327. package/extensions/memory-lancedb/node_modules/.bin/arrow2csv +2 -2
  328. package/extensions/memory-lancedb/node_modules/.bin/openai +2 -2
  329. package/extensions/tlon/node_modules/.bin/tlon +2 -2
  330. package/package.json +1 -1
  331. package/dist/control-ui/assets/index-BqxuPQOl.js.map +0 -1
  332. package/dist/deliver-runtime-BY48Cyf6.js +0 -61
  333. package/dist/deps-send-discord.runtime-CiS_YGKd.js +0 -36
  334. package/dist/deps-send-imessage.runtime-h5CDiZZu.js +0 -35
  335. package/dist/deps-send-signal.runtime-C9s3Y1Zu.js +0 -34
  336. package/dist/deps-send-slack.runtime-Dqb-9qwc.js +0 -32
  337. package/dist/deps-send-whatsapp.runtime-0tUP9kuA.js +0 -119
  338. package/dist/image-runtime-C_sKgCPT.js +0 -55
  339. package/dist/plugin-sdk/deliver-runtime-D0xZkt8n.js +0 -32
  340. package/dist/plugin-sdk/deps-send-discord.runtime-BM6ppx2Q.js +0 -23
  341. package/dist/plugin-sdk/deps-send-imessage.runtime-3w5PhXGu.js +0 -22
  342. package/dist/plugin-sdk/deps-send-signal.runtime-yH9cQl3_.js +0 -21
  343. package/dist/plugin-sdk/deps-send-slack.runtime-Bh4gw-L5.js +0 -19
  344. package/dist/plugin-sdk/deps-send-telegram.runtime-C_CtsWgt.js +0 -24
  345. package/dist/plugin-sdk/deps-send-whatsapp.runtime-BF4vx9Ho.js +0 -57
  346. package/dist/plugin-sdk/image-runtime-S-TzaJpg.js +0 -25
  347. package/dist/plugin-sdk/manager-runtime-UK1-iA2B.js +0 -15
  348. package/dist/plugin-sdk/pi-model-discovery-runtime-CZNiNFlm.js +0 -8
  349. package/dist/plugin-sdk/runtime-whatsapp-login.runtime-BgwMJs4X.js +0 -10
  350. package/dist/plugin-sdk/runtime-whatsapp-outbound.runtime-Y7maoii7.js +0 -19
  351. package/dist/plugin-sdk/slash-commands.runtime-Dbtq7ppF.js +0 -13
  352. package/dist/plugin-sdk/slash-dispatch.runtime-BhAks953.js +0 -52
  353. package/dist/plugin-sdk/slash-skill-commands.runtime-QGNWVO9S.js +0 -16
  354. package/dist/plugin-sdk/subagent-registry-runtime-Db83OZ3_.js +0 -52
  355. package/dist/plugin-sdk/web-42d5VBZj.js +0 -56
  356. package/dist/register.configure-DJj2p4b3.js +0 -165
  357. package/dist/slash-dispatch.runtime-BpDcu-GU.js +0 -114
  358. package/dist/subagent-registry-runtime-DNx1w9Cr.js +0 -114
  359. package/dist/web-DfVBXj7E.js +0 -118
  360. package/docs/reference/templates/IDENTITY.md +0 -14
  361. package/docs/reference/templates/USER.md +0 -9
  362. package/extensions/nostr/node_modules/.bin/tsc +0 -21
  363. package/extensions/nostr/node_modules/.bin/tsserver +0 -21
@@ -3,111 +3,111 @@ import { g as resolveStateDir, r as STATE_DIR, u as resolveGatewayPort, y as res
3
3
  import { d as defaultRuntime, t as createSubsystemLogger, u as createNonExitingRuntime } from "./subsystem-Bw5n50gj.js";
4
4
  import { t as parseBooleanValue$1 } from "./boolean-DtWR5bt3.js";
5
5
  import { r as isTruthyEnvValue } from "./entry.js";
6
- import { Ar as resolveReasoningDefault, At as AVATAR_MAX_BYTES, Dn as applyMergePatch, Dr as resolveDefaultModelForAgent, Er as resolveConfiguredModelRef, Fi as DEFAULT_CONTEXT_TOKENS, Fn as resolveSlackNativeStreaming, Ft as isSupportedLocalAvatarExtension, G as writeConfigFile, Gn as resolveOwnerDisplaySetting, Gt as getConfigValueAtPath, Hn as resolveAgentMaxConcurrent, Ht as resetConfigOverrides, Ii as DEFAULT_MODEL, In as resolveSlackStreamingMode, J as TELEGRAM_COMMAND_NAME_PATTERN, Jn as listProfilesForProvider, Jt as unsetConfigValueAtPath, K as validateConfigObjectWithPlugins, Kt as parseConfigPath, Li as DEFAULT_PROVIDER, Mr as resolveSubagentSpawnModelSelection, Mt as isAvatarHttpUrl, Nn as mapStreamingModeToSlackLegacyDraftStreamMode, Nr as resolveThinkingDefault, Pi as splitTrailingAuthProfile, Pn as resolveDiscordPreviewStreamMode, Pt as isPathWithinRoot, Q as isInboundPathAllowed, Ri as resolveAuthProfileDisplayLabel, Sr as normalizeProviderId, U as resolveConfigSnapshotHash, Ut as setConfigOverride, V as readConfigFileSnapshot, Vn as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, Vt as getConfigOverrides, Wt as unsetConfigOverride, X as resolveTelegramCustomCommands, Xr as resolveRetryConfig, Y as normalizeTelegramCommandName, Yn as markAuthProfileGood, Zr as retryAsync, _i as resolveModelAuthMode, a as getSoonestCooldownExpiry, ai as OLLAMA_NATIVE_BASE_URL, bi as resolveShellEnvFallbackTimeoutMs, br as normalizeModelRef$2, c as markAuthProfileUsed, ci as buildAssistantMessageWithZeroUsage, cr as withFileLock, d as resolveApiKeyForProfile, di as getApiKeyForModel, er as ensureAuthProfileStore, et as resolveIMessageAttachmentRoots, f as evaluateStoredCredentialEligibility, fi as getCustomProviderApiKey, fr as buildAllowedModelSet, gi as resolveEnvApiKey, hr as findNormalizedProviderValue, i as clearExpiredCooldowns, ji as normalizeSecretInput, jt as isAvatarDataUrl, kr as resolveModelRefFromString, li as buildStreamErrorAssistantMessage, mi as resolveApiKeyForProvider, mr as buildModelAliasIndex, nn as buildEnforcedShellCommand, nt as normalizeScpRemoteHost, o as isProfileInCooldown, oi as createOllamaStreamFn, or as resolveAuthStorePathForDisplay, p as resolveTokenExpiryState, pi as requireApiKey, pr as buildConfiguredAllowlistKeys, pt as parseDurationMs, qn as dedupeProfileIds, qt as setConfigValueAtPath, r as resolveAuthProfileOrder, rt as parseNonNegativeByteSize, s as markAuthProfileFailure, si as buildAssistantMessage, sr as resolveSquidClawAgentDir, tt as resolveIMessageRemoteAttachmentRoots, u as resolveProfilesUnavailableReason, ui as buildUsageWithNoCost, vr as isCliProvider, yi as getShellPathFromLoginShell, yr as modelKey, z as loadConfig, zt as validateJsonSchemaValue } from "./auth-profiles-BiJk4pUv.js";
6
+ import { Ar as resolveReasoningDefault, At as AVATAR_MAX_BYTES, Dn as applyMergePatch, Dr as resolveDefaultModelForAgent, Er as resolveConfiguredModelRef, Fi as DEFAULT_CONTEXT_TOKENS, Fn as resolveSlackNativeStreaming, Ft as isSupportedLocalAvatarExtension, G as writeConfigFile, Gn as resolveOwnerDisplaySetting, Gt as getConfigValueAtPath, Hn as resolveAgentMaxConcurrent, Ht as resetConfigOverrides, Ii as DEFAULT_MODEL, In as resolveSlackStreamingMode, J as TELEGRAM_COMMAND_NAME_PATTERN, Jn as listProfilesForProvider, Jt as unsetConfigValueAtPath, K as validateConfigObjectWithPlugins, Kt as parseConfigPath, Li as DEFAULT_PROVIDER, Mr as resolveSubagentSpawnModelSelection, Mt as isAvatarHttpUrl, Nn as mapStreamingModeToSlackLegacyDraftStreamMode, Nr as resolveThinkingDefault, Pi as splitTrailingAuthProfile, Pn as resolveDiscordPreviewStreamMode, Pt as isPathWithinRoot, Q as isInboundPathAllowed, Ri as resolveAuthProfileDisplayLabel, Sr as normalizeProviderId, U as resolveConfigSnapshotHash, Ut as setConfigOverride, V as readConfigFileSnapshot, Vn as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, Vt as getConfigOverrides, Wt as unsetConfigOverride, X as resolveTelegramCustomCommands, Xr as resolveRetryConfig, Y as normalizeTelegramCommandName, Yn as markAuthProfileGood, Zr as retryAsync, _i as resolveModelAuthMode, a as getSoonestCooldownExpiry, ai as OLLAMA_NATIVE_BASE_URL, bi as resolveShellEnvFallbackTimeoutMs, br as normalizeModelRef$2, c as markAuthProfileUsed, ci as buildAssistantMessageWithZeroUsage, cr as withFileLock, d as resolveApiKeyForProfile, di as getApiKeyForModel, er as ensureAuthProfileStore, et as resolveIMessageAttachmentRoots, f as evaluateStoredCredentialEligibility, fi as getCustomProviderApiKey, fr as buildAllowedModelSet, gi as resolveEnvApiKey, hr as findNormalizedProviderValue, i as clearExpiredCooldowns, ji as normalizeSecretInput, jt as isAvatarDataUrl, kr as resolveModelRefFromString, li as buildStreamErrorAssistantMessage, mi as resolveApiKeyForProvider, mr as buildModelAliasIndex, nn as buildEnforcedShellCommand, nt as normalizeScpRemoteHost, o as isProfileInCooldown, oi as createOllamaStreamFn, or as resolveAuthStorePathForDisplay, p as resolveTokenExpiryState, pi as requireApiKey, pr as buildConfiguredAllowlistKeys, pt as parseDurationMs, qn as dedupeProfileIds, qt as setConfigValueAtPath, r as resolveAuthProfileOrder, rt as parseNonNegativeByteSize, s as markAuthProfileFailure, si as buildAssistantMessage, sr as resolveSquidClawAgentDir, tt as resolveIMessageRemoteAttachmentRoots, u as resolveProfilesUnavailableReason, ui as buildUsageWithNoCost, vr as isCliProvider, yi as getShellPathFromLoginShell, yr as modelKey, z as loadConfig, zt as validateJsonSchemaValue } from "./auth-profiles-ByQNLJzP.js";
7
7
  import { t as formatCliCommand } from "./command-format-D8-lYArk.js";
8
- import { D as filterBootstrapFilesForSession, E as ensureAgentWorkspace, M as resolveAgentModelFallbackValues, N as resolveAgentModelPrimaryValue, P as toAgentModelListLike, _ as DEFAULT_AGENT_WORKSPACE_DIR, a as resolveAgentDir, b as DEFAULT_IDENTITY_FILENAME, d as resolveDefaultAgentId, f as resolveEffectiveModelFallbacks, h as resolveSessionAgentIds, i as resolveAgentConfig, k as loadWorkspaceBootstrapFiles, l as resolveAgentSkillsFilter, m as resolveSessionAgentId, p as resolveRunModelFallbacksOverride, r as listAgentIds, t as hasConfiguredModelFallbacks, u as resolveAgentWorkspaceDir, v as DEFAULT_BOOTSTRAP_FILENAME } from "./agent-scope-DipdnGE4.js";
8
+ import { D as filterBootstrapFilesForSession, E as ensureAgentWorkspace, M as resolveAgentModelFallbackValues, N as resolveAgentModelPrimaryValue, P as toAgentModelListLike, _ as DEFAULT_AGENT_WORKSPACE_DIR, a as resolveAgentDir, b as DEFAULT_IDENTITY_FILENAME, d as resolveDefaultAgentId, f as resolveEffectiveModelFallbacks, h as resolveSessionAgentIds, i as resolveAgentConfig, k as loadWorkspaceBootstrapFiles, l as resolveAgentSkillsFilter, m as resolveSessionAgentId, p as resolveRunModelFallbacksOverride, r as listAgentIds, t as hasConfiguredModelFallbacks, u as resolveAgentWorkspaceDir, v as DEFAULT_BOOTSTRAP_FILENAME } from "./agent-scope-CfsErfyG.js";
9
9
  import { D as resolveThreadParentSessionKey, E as parseAgentSessionKey, S as isAcpSessionKey, T as isSubagentSessionKey, _ as normalizeAccountId$2, b as deriveSessionChatType, c as normalizeAgentId, d as resolveThreadSessionKeys, f as sanitizeAgentId, g as DEFAULT_ACCOUNT_ID, i as buildAgentPeerSessionKey, l as normalizeMainKey, n as DEFAULT_MAIN_KEY, o as classifySessionKeyShape, p as scopedHeartbeatWakeOptions, r as buildAgentMainSessionKey, s as isValidAgentId, t as DEFAULT_AGENT_ID, u as resolveAgentIdFromSessionKey, v as normalizeOptionalAccountId, w as isCronSessionKey, x as getSubagentDepth, y as isBlockedObjectKey } from "./session-key-k6urs9r-.js";
10
10
  import { C as sliceUtf16Safe, E as isPlainObject, S as sleep$1, T as truncateUtf16Safe, b as shortenHomeInString, c as escapeRegExp, p as normalizeE164, r as clampInt, t as CONFIG_DIR, u as isRecord$1, v as resolveUserPath, x as shortenHomePath } from "./utils-D6vohX1h.js";
11
- import { a as openBoundaryFileSync, h as normalizeWindowsPathForComparison, i as openBoundaryFile, t as resolveSquidClawPackageRoot } from "./squidclaw-root-BQfLymzj.js";
11
+ import { a as openBoundaryFileSync, h as normalizeWindowsPathForComparison, i as openBoundaryFile, t as resolveSquidClawPackageRoot } from "./squidclaw-root-JXyRbQLJ.js";
12
12
  import { i as logWarn, n as logError, r as logInfo, t as logDebug } from "./logger-DL3N22PJ.js";
13
13
  import { n as runExec, r as spawnWithFallback, t as runCommandWithTimeout } from "./exec-TSiqsZw1.js";
14
14
  import { E as triggerInternalHook, M as normalizeResolvedSecretInputString, S as matchPluginCommand, _ as normalizePluginHttpPath, b as getPluginCommandSpecs, c as normalizeChannelId$1, d as getActivePluginRegistryKey, g as createPluginRegistry, k as coerceSecretRef, m as setActivePluginRegistry, n as CHAT_CHANNEL_ORDER, p as requireActivePluginRegistry, s as normalizeAnyChannelId, u as getActivePluginRegistry, v as clearPluginCommands, w as createInternalHookEvent, x as listPluginCommands, y as executePluginCommand } from "./registry-BXcl3IkC.js";
15
15
  import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-CxitgiZA.js";
16
16
  import { n as isDangerousHostEnvVarName } from "./host-env-security-lcjXF83D.js";
17
17
  import { t as VERSION } from "./version-3so140Zi.js";
18
- import { a as safeStatSync, d as normalizePluginsConfig, f as resolveEffectiveEnableState, i as isPathInside, l as applyTestPluginDefaults, n as loadPluginManifestRegistry, p as resolveMemorySlotDecision, r as discoverSquidClawPlugins } from "./manifest-registry-7kwtbCH-.js";
19
- import { a as resolveChannelGroupRequireMention, c as normalizeHyphenSlug, i as resolveChannelGroupPolicy, l as normalizeStringEntries, n as listChannelDocks, r as normalizeSignalMessagingTarget, s as normalizeAtHashSlug, t as getChannelDock, u as normalizeStringEntriesLower } from "./dock-gKJjfuaV.js";
18
+ import { a as safeStatSync, d as normalizePluginsConfig, f as resolveEffectiveEnableState, i as isPathInside, l as applyTestPluginDefaults, n as loadPluginManifestRegistry, p as resolveMemorySlotDecision, r as discoverSquidClawPlugins } from "./manifest-registry-1ACGW3OR.js";
19
+ import { a as resolveChannelGroupRequireMention, c as normalizeHyphenSlug, i as resolveChannelGroupPolicy, l as normalizeStringEntries, n as listChannelDocks, r as normalizeSignalMessagingTarget, s as normalizeAtHashSlug, t as getChannelDock, u as normalizeStringEntriesLower } from "./dock-0fXeq35m.js";
20
20
  import { t as runTasksWithConcurrency } from "./run-with-concurrency-kzSMVKJz.js";
21
21
  import { n as recordCommandPoll, r as resetCommandPollCount } from "./command-poll-backoff-BAST85mP.js";
22
- import { i as buildModelAliasLines, n as resolveModel } from "./model-CLOEFgm1.js";
23
- import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-D4t0ZFCY.js";
24
- import { a as logMessageQueued, c as logWebhookError, d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, h as getDiagnosticSessionState, i as logMessageProcessed, l as logWebhookProcessed, m as isDiagnosticsEnabled, n as logLaneDequeue, o as logSessionStateChange, p as emitDiagnosticEvent, r as logLaneEnqueue, t as diag, u as logWebhookReceived } from "./diagnostic-Du3b17ba.js";
25
- import { a as resolveSkillsPromptForRun, d as resolveSandboxInputPath, h as applySkillEnvOverridesFromSnapshot, i as loadWorkspaceSkillEntries, l as assertMediaNotDataUrl, m as applySkillEnvOverrides, p as resolveSandboxedMediaSource, r as buildWorkspaceSkillSnapshot, u as assertSandboxPath } from "./skills-C85azDXm.js";
26
- import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-vfYYQFIg.js";
22
+ import { i as buildModelAliasLines, n as resolveModel } from "./model-D3QKHUD9.js";
23
+ import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-Cj7zDFgN.js";
24
+ import { a as logMessageQueued, c as logWebhookError, d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, h as getDiagnosticSessionState, i as logMessageProcessed, l as logWebhookProcessed, m as isDiagnosticsEnabled, n as logLaneDequeue, o as logSessionStateChange, p as emitDiagnosticEvent, r as logLaneEnqueue, t as diag, u as logWebhookReceived } from "./diagnostic-CT4BKCiT.js";
25
+ import { a as resolveSkillsPromptForRun, d as resolveSandboxInputPath, h as applySkillEnvOverridesFromSnapshot, i as loadWorkspaceSkillEntries, l as assertMediaNotDataUrl, m as applySkillEnvOverrides, p as resolveSandboxedMediaSource, r as buildWorkspaceSkillSnapshot, u as assertSandboxPath } from "./skills-EwyaIyKC.js";
26
+ import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-DeOVetT7.js";
27
27
  import { a as isInternalMessageChannel, c as listDeliverableMessageChannels, d as resolveMessageChannel, h as GATEWAY_CLIENT_NAMES, i as isGatewayMessageChannel, l as normalizeMessageChannel, m as GATEWAY_CLIENT_MODES, n as isDeliverableMessageChannel, o as isMarkdownCapableMessageChannel, p as GATEWAY_CLIENT_IDS, t as INTERNAL_MESSAGE_CHANNEL, u as resolveGatewayMessageChannel } from "./message-channel-DqvtYF2o.js";
28
- import { C as normalizeSessionDeliveryFields, D as capArrayByJsonBytes, E as archiveSessionTranscripts, F as parseInlineDirectives$1, G as resolveSessionResetPolicy, H as resolveSessionKey, J as DEFAULT_RESET_TRIGGERS, K as resolveSessionResetType, R as jsonUtf8Bytes, S as normalizeDeliveryContext, U as evaluateSessionFreshness, V as resolveSessionLockMaxHoldFromTimeout, W as resolveChannelResetConfig, X as resolveFreshSessionTotalTokens, Y as mergeSessionEntry, Z as setSessionRuntimeModel, _ as isCacheEnabled, a as resolveAndPersistSessionFile, at as resolveConversationLabel, b as deliveryContextKey, c as recordSessionMetaFromInbound, d as updateSessionStore, et as resolveExplicitAgentSessionKey, f as updateSessionStoreEntry, lt as resolveGroupSessionKey, n as parseSessionThreadInfo, o as loadSessionStore, q as resolveThreadFlag, r as appendAssistantMessageToSessionTranscript, rt as deriveSessionMetaPatch, s as readSessionUpdatedAt, t as extractDeliveryInfo, tt as resolveMainSessionKey, u as updateLastRoute, v as resolveCacheTtlMs$1, w as normalizeAccountId$3, x as mergeDeliveryContext, y as deliveryContextFromSession, z as acquireSessionWriteLock } from "./sessions-gTKLgF0i.js";
29
- import { A as normalizeDiscordToken, C as isWhatsAppGroupJid, D as listEnabledDiscordAccounts, S as resolveSlackBotToken, T as createDiscordActionGate, a as createTelegramActionGate, b as resolveSlackReplyToMode, h as listBindings, j as normalizeChatType, k as resolveDiscordAccount, l as resolveTelegramAccount, m as buildChannelAccountBindings, n as listChannelPlugins, o as listEnabledTelegramAccounts, r as normalizeChannelId$2, s as listTelegramAccountIds, t as getChannelPlugin, u as resolveTelegramToken, w as normalizeWhatsAppTarget, x as resolveSlackAppToken, y as resolveSlackAccount } from "./plugins-DuLOFZmO.js";
30
- import { _ as webAuthExists, c as logWebSelfId, i as resolveWhatsAppAccount, l as logoutWeb, p as readWebSelfId, s as getWebAuthAgeMs, y as resolveAccountEntry } from "./accounts-BK8I0Svb.js";
31
- import { r as resolveIMessageAccount } from "./accounts-DeqNOvBo.js";
32
- import { i as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-KzgPbLHP.js";
33
- import { a as resolveSlackWebClientOptions, c as buildSlackBlocksFallbackText, i as createSlackWebClient, l as parseSlackTarget, n as markdownToSlackMrkdwnChunks, o as parseSlackBlocksInput, r as normalizeSlackOutboundText, s as validateSlackBlocksArray, t as sendMessageSlack, u as resolveSlackChannelId } from "./send-Bu3eP6CW.js";
34
- import { $ as stripUndefinedFields, A as unpinMessageDiscord, At as resolveChannelEntryMatchWithFallback, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveDiscordSystemLocation, D as pinMessageDiscord, Dt as applyChannelMatchMeta, E as listThreadsDiscord, Et as fetchDiscord, F as fetchMemberInfoDiscord, G as uploadStickerDiscord, H as timeoutMemberDiscord, I as fetchRoleInfoDiscord, J as editChannelDiscord, K as createChannelDiscord, L as fetchVoiceStatusDiscord, M as banMemberDiscord, N as createScheduledEventDiscord, O as readMessagesDiscord, Ot as buildChannelKeyCandidates, P as fetchChannelInfoDiscord, Q as sendDiscordText, R as kickMemberDiscord, S as deleteMessageDiscord, St as formatDiscordUserTag, T as listPinsDiscord, Tt as DiscordApiError, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendStickerDiscord, _t as resolveDiscordOwnerAllowFrom, a as sendDiscordComponentMessage, at as parseDiscordTarget, b as formatMention, bt as shouldEmitDiscordReactionNotification, c as parseDiscordComponentCustomId, ct as listDiscordDirectoryPeersLive, d as parseDiscordModalCustomIdForCarbon, dt as normalizeDiscordSlug, et as fetchChannelPermissionsDiscord, f as readDiscordComponentSpec, ft as resolveDiscordAllowListMatch, g as sendPollDiscord, gt as resolveDiscordOwnerAccess, h as sendMessageDiscord, ht as resolveDiscordMemberAccessState, i as removeReactionDiscord, it as createDiscordRestClient, j as addRoleDiscord, k as searchMessagesDiscord, kt as normalizeChannelSlug, l as parseDiscordComponentCustomIdForCarbon, lt as isDiscordGroupAllowedByPolicy, m as resolveDiscordModalEntry, mt as resolveDiscordGuildEntry, n as reactMessageDiscord, nt as chunkDiscordTextWithMode, o as createDiscordFormModal, ot as resolveDiscordChannelId, p as resolveDiscordComponentEntry, pt as resolveDiscordChannelConfigWithFallback, q as deleteChannelDiscord, r as removeOwnReactionsDiscord, rt as createDiscordClient, s as formatDiscordComponentEventText, st as listDiscordDirectoryGroupsLive, t as fetchReactionsDiscord, tt as hasAnyGuildPermissionDiscord, u as parseDiscordModalCustomId, ut as normalizeDiscordAllowList, v as sendVoiceMessageDiscord, vt as resolveDiscordShouldRequireMention, w as fetchMessageDiscord, wt as resolveTimestampMs, x as createThreadDiscord, xt as formatDiscordReactionEmoji, y as sendWebhookMessageDiscord, yt as resolveGroupDmAllow, z as listGuildChannelsDiscord } from "./send-DynShEUL.js";
28
+ import { C as normalizeSessionDeliveryFields, D as capArrayByJsonBytes, E as archiveSessionTranscripts, F as parseInlineDirectives$1, G as resolveSessionResetPolicy, H as resolveSessionKey, J as DEFAULT_RESET_TRIGGERS, K as resolveSessionResetType, R as jsonUtf8Bytes, S as normalizeDeliveryContext, U as evaluateSessionFreshness, V as resolveSessionLockMaxHoldFromTimeout, W as resolveChannelResetConfig, X as resolveFreshSessionTotalTokens, Y as mergeSessionEntry, Z as setSessionRuntimeModel, _ as isCacheEnabled, a as resolveAndPersistSessionFile, at as resolveConversationLabel, b as deliveryContextKey, c as recordSessionMetaFromInbound, d as updateSessionStore, et as resolveExplicitAgentSessionKey, f as updateSessionStoreEntry, lt as resolveGroupSessionKey, n as parseSessionThreadInfo, o as loadSessionStore, q as resolveThreadFlag, r as appendAssistantMessageToSessionTranscript, rt as deriveSessionMetaPatch, s as readSessionUpdatedAt, t as extractDeliveryInfo, tt as resolveMainSessionKey, u as updateLastRoute, v as resolveCacheTtlMs$1, w as normalizeAccountId$3, x as mergeDeliveryContext, y as deliveryContextFromSession, z as acquireSessionWriteLock } from "./sessions-A97O0F1f.js";
29
+ import { A as normalizeDiscordToken, C as isWhatsAppGroupJid, D as listEnabledDiscordAccounts, S as resolveSlackBotToken, T as createDiscordActionGate, a as createTelegramActionGate, b as resolveSlackReplyToMode, h as listBindings, j as normalizeChatType, k as resolveDiscordAccount, l as resolveTelegramAccount, m as buildChannelAccountBindings, n as listChannelPlugins, o as listEnabledTelegramAccounts, r as normalizeChannelId$2, s as listTelegramAccountIds, t as getChannelPlugin, u as resolveTelegramToken, w as normalizeWhatsAppTarget, x as resolveSlackAppToken, y as resolveSlackAccount } from "./plugins-DFPxMLnR.js";
30
+ import { _ as webAuthExists, c as logWebSelfId, i as resolveWhatsAppAccount, l as logoutWeb, p as readWebSelfId, s as getWebAuthAgeMs, y as resolveAccountEntry } from "./accounts-BH9Qo1sQ.js";
31
+ import { r as resolveIMessageAccount } from "./accounts-Cuwg9Tan.js";
32
+ import { i as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-B1RxFghM.js";
33
+ import { a as resolveSlackWebClientOptions, c as buildSlackBlocksFallbackText, i as createSlackWebClient, l as parseSlackTarget, n as markdownToSlackMrkdwnChunks, o as parseSlackBlocksInput, r as normalizeSlackOutboundText, s as validateSlackBlocksArray, t as sendMessageSlack, u as resolveSlackChannelId } from "./send-BWMSp9_W.js";
34
+ import { $ as stripUndefinedFields, A as unpinMessageDiscord, At as resolveChannelEntryMatchWithFallback, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveDiscordSystemLocation, D as pinMessageDiscord, Dt as applyChannelMatchMeta, E as listThreadsDiscord, Et as fetchDiscord, F as fetchMemberInfoDiscord, G as uploadStickerDiscord, H as timeoutMemberDiscord, I as fetchRoleInfoDiscord, J as editChannelDiscord, K as createChannelDiscord, L as fetchVoiceStatusDiscord, M as banMemberDiscord, N as createScheduledEventDiscord, O as readMessagesDiscord, Ot as buildChannelKeyCandidates, P as fetchChannelInfoDiscord, Q as sendDiscordText, R as kickMemberDiscord, S as deleteMessageDiscord, St as formatDiscordUserTag, T as listPinsDiscord, Tt as DiscordApiError, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendStickerDiscord, _t as resolveDiscordOwnerAllowFrom, a as sendDiscordComponentMessage, at as parseDiscordTarget, b as formatMention, bt as shouldEmitDiscordReactionNotification, c as parseDiscordComponentCustomId, ct as listDiscordDirectoryPeersLive, d as parseDiscordModalCustomIdForCarbon, dt as normalizeDiscordSlug, et as fetchChannelPermissionsDiscord, f as readDiscordComponentSpec, ft as resolveDiscordAllowListMatch, g as sendPollDiscord, gt as resolveDiscordOwnerAccess, h as sendMessageDiscord, ht as resolveDiscordMemberAccessState, i as removeReactionDiscord, it as createDiscordRestClient, j as addRoleDiscord, k as searchMessagesDiscord, kt as normalizeChannelSlug, l as parseDiscordComponentCustomIdForCarbon, lt as isDiscordGroupAllowedByPolicy, m as resolveDiscordModalEntry, mt as resolveDiscordGuildEntry, n as reactMessageDiscord, nt as chunkDiscordTextWithMode, o as createDiscordFormModal, ot as resolveDiscordChannelId, p as resolveDiscordComponentEntry, pt as resolveDiscordChannelConfigWithFallback, q as deleteChannelDiscord, r as removeOwnReactionsDiscord, rt as createDiscordClient, s as formatDiscordComponentEventText, st as listDiscordDirectoryGroupsLive, t as fetchReactionsDiscord, tt as hasAnyGuildPermissionDiscord, u as parseDiscordModalCustomId, ut as normalizeDiscordAllowList, v as sendVoiceMessageDiscord, vt as resolveDiscordShouldRequireMention, w as fetchMessageDiscord, wt as resolveTimestampMs, x as createThreadDiscord, xt as formatDiscordReactionEmoji, y as sendWebhookMessageDiscord, yt as resolveGroupDmAllow, z as listGuildChannelsDiscord } from "./send-BbUl6LvV.js";
35
35
  import { c as resolveStorePath, i as resolveSessionTranscriptPath, n as resolveSessionFilePath, r as resolveSessionFilePathOptions, t as resolveDefaultSessionStorePath } from "./paths-Dn_rzeZN.js";
36
36
  import { i as normalizeInputProvenance, n as applyInputProvenanceToUserMessage, r as hasInterSessionUserProvenance } from "./input-provenance-C8z9KgIz.js";
37
- import { r as writeJsonAtomic } from "./json-files-CuJjdF_0.js";
37
+ import { r as writeJsonAtomic } from "./json-files-rR19q30D.js";
38
38
  import { n as onSessionTranscriptUpdate, t as emitSessionTranscriptUpdate } from "./transcript-events-DgzPL8Hc.js";
39
- import { Ft as SESSION_LABEL_MAX_LENGTH, t as GatewayClient } from "./client-X5m1ssRl.js";
40
- import { a as randomIdempotencyKey, f as resolveLeastPrivilegeOperatorScopesForMethod, n as callGateway, r as callGatewayLeastPrivilege, t as buildGatewayConnectionDetails } from "./call-G7vZ_wCI.js";
41
- import { r as isLoopbackHost } from "./net-CggAM2eK.js";
39
+ import { Ft as SESSION_LABEL_MAX_LENGTH, t as GatewayClient } from "./client-DFgW99bv.js";
40
+ import { a as randomIdempotencyKey, f as resolveLeastPrivilegeOperatorScopesForMethod, n as callGateway, r as callGatewayLeastPrivilege, t as buildGatewayConnectionDetails } from "./call-BPIaCRGe.js";
41
+ import { r as isLoopbackHost } from "./net-QB4dfP4-.js";
42
42
  import { r as trimToUndefined, t as resolveGatewayCredentialsFromConfig } from "./credentials-CyQeGziJ.js";
43
43
  import { a as stripSilentToken, i as isSilentReplyText, n as SILENT_REPLY_TOKEN, r as isSilentReplyPrefixText, t as HEARTBEAT_TOKEN } from "./tokens-DOVPgjwZ.js";
44
- import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext, t as withTimeout$4 } from "./with-timeout-D8mIrgj5.js";
44
+ import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext, t as withTimeout$4 } from "./with-timeout-CX0CGi5G.js";
45
45
  import { n as generateSecureUuid, t as generateSecureToken } from "./secure-random-_dzDDlFo.js";
46
- import { A as initializeGlobalHookRunner, C as toInternalMessagePreprocessedContext, D as toPluginMessageReceivedEvent, E as toPluginMessageContext, O as fireAndForgetHook, S as deriveInboundMessageHookContext, T as toInternalMessageTranscribedContext, _ as createReplyToModeFilterForChannel, a as normalizeOutboundPayloadsForJson, b as normalizeChannelTargetInput, c as parseReplyDirectives, d as applyReplyThreading, f as filterMessagingToolDuplicates, g as shouldSuppressReasoningPayload, h as shouldSuppressMessagingToolReplies, i as normalizeOutboundPayloads, k as getGlobalHookRunner, l as splitMediaFromOutput, m as isRenderablePayload, o as normalizeReplyPayloadsForDelivery, p as filterMessagingToolMediaDuplicates, r as formatOutboundPayloadLog, s as throwIfAborted, t as deliverOutboundPayloads, u as applyReplyTagsToPayload, v as resolveReplyToMode, w as toInternalMessageReceivedContext, x as normalizeTargetForProvider, y as buildTargetResolverSignature } from "./deliver-CyR05tXq.js";
46
+ import { A as initializeGlobalHookRunner, C as toInternalMessagePreprocessedContext, D as toPluginMessageReceivedEvent, E as toPluginMessageContext, O as fireAndForgetHook, S as deriveInboundMessageHookContext, T as toInternalMessageTranscribedContext, _ as createReplyToModeFilterForChannel, a as normalizeOutboundPayloadsForJson, b as normalizeChannelTargetInput, c as parseReplyDirectives, d as applyReplyThreading, f as filterMessagingToolDuplicates, g as shouldSuppressReasoningPayload, h as shouldSuppressMessagingToolReplies, i as normalizeOutboundPayloads, k as getGlobalHookRunner, l as splitMediaFromOutput, m as isRenderablePayload, o as normalizeReplyPayloadsForDelivery, p as filterMessagingToolMediaDuplicates, r as formatOutboundPayloadLog, s as throwIfAborted, t as deliverOutboundPayloads, u as applyReplyTagsToPayload, v as resolveReplyToMode, w as toInternalMessageReceivedContext, x as normalizeTargetForProvider, y as buildTargetResolverSignature } from "./deliver-DYffOszC.js";
47
47
  import { i as resolveTelegramTargetChatType, r as parseTelegramTarget } from "./targets-Bz6Ajr4f.js";
48
- import { c as detectMime, d as imageMimeFromFormat, f as isAudioFileName, g as MAX_IMAGE_BYTES, i as getImageMetadata, l as extensionForMime, m as kindFromMime, p as isGifMedia, s as resizeToJpeg, v as mediaKindFromMime } from "./image-ops-B2uuLIGD.js";
49
- import { A as describeReplyTarget, B as resolveTelegramStreamMode, C as buildSenderLabel, D as buildTelegramParentPeer, E as buildTelegramGroupPeerId, F as resolveTelegramDirectPeerId, G as resolveSenderAllowMatch$1, H as isSenderAllowed$1, I as resolveTelegramForumThreadId, J as isVoiceCompatibleAudio, K as formatLocationText, L as resolveTelegramGroupAllowFromContext, M as extractTelegramLocation, N as hasBotMention, O as buildTelegramThreadParams, P as normalizeForwardedContext, R as resolveTelegramMediaPlaceholder, S as buildGroupLabel, T as buildTelegramGroupFrom, U as normalizeAllowFrom$2, V as resolveTelegramThreadSpec, W as normalizeDmAllowFromWithStore$1, _ as splitTelegramCaption, a as reactMessageTelegram, b as resolveCronStorePath, c as sendStickerTelegram, d as isRecoverableTelegramNetworkError, f as markdownToTelegramChunks, g as resolveTelegramFetch, h as wrapFileReferencesInHtml, i as editMessageTelegram, j as expandTextLinks, k as buildTypingThreadParams, l as resolveTelegramVoiceSend, m as renderTelegramHtmlText, n as createForumTopicTelegram, o as sendMessageTelegram, p as markdownToTelegramHtml, q as toLocationContext, r as deleteMessageTelegram, s as sendPollTelegram, t as buildInlineKeyboard, u as wasSentByBot, v as withTelegramApiErrorLogging, w as buildSenderName, y as loadCronStore, z as resolveTelegramReplyId } from "./send-C2ol3xJd.js";
50
- import { A as isTransientHttpError, B as resolveBootstrapTotalMaxChars, C as isCompactionFailureError, D as isLikelyContextOverflowError, E as isFailoverErrorMessage, F as isTimeoutErrorMessage, I as buildBootstrapContextFiles, L as ensureSessionHeader, M as parseImageSizeError, N as sanitizeUserFacingText, O as isRateLimitAssistantError, P as isAuthPermanentErrorMessage, R as resolveBootstrapMaxChars, S as isCloudCodeAssistFormatError, T as isFailoverAssistantError, V as sanitizeGoogleTurnOrdering, _ as formatBillingErrorMessage, a as isMessagingToolDuplicateNormalized, b as isAuthAssistantError, c as extractToolCallsFromAssistant, d as downgradeOpenAIFunctionCallReasoningPairs, f as downgradeOpenAIReasoningBlocks, g as formatAssistantErrorText, h as classifyFailoverReason, j as parseImageDimensionError, k as isRawApiErrorPayload, l as extractToolResultId, m as BILLING_ERROR_USER_MESSAGE, n as validateGeminiTurns, o as normalizeTextForComparison, p as isGoogleModelApi, r as pickFallbackThinkingLevel, s as sanitizeSessionMessagesImages, t as validateAnthropicTurns, u as sanitizeToolCallIdsForCloudCodeAssist, v as formatRawAssistantErrorForUi, w as isContextOverflowError, x as isBillingAssistantError, y as getApiErrorPayloadFingerprint, z as resolveBootstrapPromptTruncationWarningMode } from "./pi-embedded-helpers-DQHj960w.js";
51
- import { C as resolveToolProfilePolicy, S as normalizeToolName, T as matchesAnyGlobPattern, _ as collectExplicitAllowlist, a as ensureSandboxWorkspaceForSession, b as stripPluginOnlyAllowlist, c as resolveSandboxRuntimeStatus, d as getBridgeAuthForPort, f as resolveSandboxConfigForAgent, g as buildPluginToolGroups, h as applyOwnerOnlyToolPolicy, o as resolveSandboxContext, v as expandPolicyWithPluginGroups, w as compileGlobPatterns, y as mergeAlsoAllowPolicy } from "./sandbox-CbGxVENW.js";
52
- import { j as DEFAULT_AI_SNAPSHOT_MAX_CHARS } from "./chrome-fM6BTTNA.js";
53
- import { c as resolveBrowserControlAuth, i as resolveBrowserConfig } from "./server-context-C56AfkmJ.js";
54
- import { i as resolveExistingPathsWithinRoot, r as DEFAULT_UPLOAD_DIR } from "./paths-DfuVHiHu.js";
48
+ import { c as detectMime, d as imageMimeFromFormat, f as isAudioFileName, g as MAX_IMAGE_BYTES, i as getImageMetadata, l as extensionForMime, m as kindFromMime, p as isGifMedia, s as resizeToJpeg, v as mediaKindFromMime } from "./image-ops-LFsSCTyI.js";
49
+ import { A as describeReplyTarget, B as resolveTelegramStreamMode, C as buildSenderLabel, D as buildTelegramParentPeer, E as buildTelegramGroupPeerId, F as resolveTelegramDirectPeerId, G as resolveSenderAllowMatch$1, H as isSenderAllowed$1, I as resolveTelegramForumThreadId, J as isVoiceCompatibleAudio, K as formatLocationText, L as resolveTelegramGroupAllowFromContext, M as extractTelegramLocation, N as hasBotMention, O as buildTelegramThreadParams, P as normalizeForwardedContext, R as resolveTelegramMediaPlaceholder, S as buildGroupLabel, T as buildTelegramGroupFrom, U as normalizeAllowFrom$2, V as resolveTelegramThreadSpec, W as normalizeDmAllowFromWithStore$1, _ as splitTelegramCaption, a as reactMessageTelegram, b as resolveCronStorePath, c as sendStickerTelegram, d as isRecoverableTelegramNetworkError, f as markdownToTelegramChunks, g as resolveTelegramFetch, h as wrapFileReferencesInHtml, i as editMessageTelegram, j as expandTextLinks, k as buildTypingThreadParams, l as resolveTelegramVoiceSend, m as renderTelegramHtmlText, n as createForumTopicTelegram, o as sendMessageTelegram, p as markdownToTelegramHtml, q as toLocationContext, r as deleteMessageTelegram, s as sendPollTelegram, t as buildInlineKeyboard, u as wasSentByBot, v as withTelegramApiErrorLogging, w as buildSenderName, y as loadCronStore, z as resolveTelegramReplyId } from "./send-BdZJcfei.js";
50
+ import { A as isTransientHttpError, B as resolveBootstrapTotalMaxChars, C as isCompactionFailureError, D as isLikelyContextOverflowError, E as isFailoverErrorMessage, F as isTimeoutErrorMessage, I as buildBootstrapContextFiles, L as ensureSessionHeader, M as parseImageSizeError, N as sanitizeUserFacingText, O as isRateLimitAssistantError, P as isAuthPermanentErrorMessage, R as resolveBootstrapMaxChars, S as isCloudCodeAssistFormatError, T as isFailoverAssistantError, V as sanitizeGoogleTurnOrdering, _ as formatBillingErrorMessage, a as isMessagingToolDuplicateNormalized, b as isAuthAssistantError, c as extractToolCallsFromAssistant, d as downgradeOpenAIFunctionCallReasoningPairs, f as downgradeOpenAIReasoningBlocks, g as formatAssistantErrorText, h as classifyFailoverReason, j as parseImageDimensionError, k as isRawApiErrorPayload, l as extractToolResultId, m as BILLING_ERROR_USER_MESSAGE, n as validateGeminiTurns, o as normalizeTextForComparison, p as isGoogleModelApi, r as pickFallbackThinkingLevel, s as sanitizeSessionMessagesImages, t as validateAnthropicTurns, u as sanitizeToolCallIdsForCloudCodeAssist, v as formatRawAssistantErrorForUi, w as isContextOverflowError, x as isBillingAssistantError, y as getApiErrorPayloadFingerprint, z as resolveBootstrapPromptTruncationWarningMode } from "./pi-embedded-helpers-13zhzo1T.js";
51
+ import { C as resolveToolProfilePolicy, S as normalizeToolName, T as matchesAnyGlobPattern, _ as collectExplicitAllowlist, a as ensureSandboxWorkspaceForSession, b as stripPluginOnlyAllowlist, c as resolveSandboxRuntimeStatus, d as getBridgeAuthForPort, f as resolveSandboxConfigForAgent, g as buildPluginToolGroups, h as applyOwnerOnlyToolPolicy, o as resolveSandboxContext, v as expandPolicyWithPluginGroups, w as compileGlobPatterns, y as mergeAlsoAllowPolicy } from "./sandbox-DaQ1ruwH.js";
52
+ import { j as DEFAULT_AI_SNAPSHOT_MAX_CHARS } from "./chrome-Bs3-hdWP.js";
53
+ import { c as resolveBrowserControlAuth, i as resolveBrowserConfig } from "./server-context-D9dHt5TX.js";
54
+ import { i as resolveExistingPathsWithinRoot, r as DEFAULT_UPLOAD_DIR } from "./paths-D6mnO6Ni.js";
55
55
  import { a as testRegexWithBoundedInput, i as compileSafeRegex, n as redactSensitiveText } from "./redact-DknVdX-O.js";
56
56
  import { i as formatUncaughtError, r as formatErrorMessage, s as readErrorName } from "./errors-BnRmsfe-.js";
57
- import { i as openFileWithinRoot, l as writeFileWithinRoot, n as copyFileWithinRoot, o as readFileWithinRoot, r as createRootScopedReadFile, t as SafeOpenError } from "./fs-safe-DPYj7h8A.js";
58
- import { a as isBlockedHostnameOrIp, c as normalizeHostname, n as SsrFBlockedError } from "./proxy-env-D16ubrT6.js";
59
- import { i as saveMediaBuffer, r as getMediaDir, t as MEDIA_MAX_BYTES } from "./store-BEIcnlgx.js";
60
- import { i as resolveLsofCommandSync } from "./ports-0jLyYbvQ.js";
61
- import { a as canonicalizeBase64, i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, o as estimateBase64DecodedBytes, r as sanitizeToolResultImages } from "./tool-images-CyzWvDUu.js";
57
+ import { i as openFileWithinRoot, l as writeFileWithinRoot, n as copyFileWithinRoot, o as readFileWithinRoot, r as createRootScopedReadFile, t as SafeOpenError } from "./fs-safe-BPQ-per2.js";
58
+ import { a as isBlockedHostnameOrIp, c as normalizeHostname, n as SsrFBlockedError } from "./proxy-env-CNlcVWhf.js";
59
+ import { i as saveMediaBuffer, r as getMediaDir, t as MEDIA_MAX_BYTES } from "./store-BTkIx401.js";
60
+ import { i as resolveLsofCommandSync } from "./ports-DMeUt80n.js";
61
+ import { a as canonicalizeBase64, i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, o as estimateBase64DecodedBytes, r as sanitizeToolResultImages } from "./tool-images-D6mmxuWS.js";
62
62
  import { a as normalizeElevatedLevel, c as normalizeUsageDisplay, d as supportsXHighThinking, l as normalizeVerboseLevel, n as formatXHighModelHint, o as normalizeReasoningLevel, s as normalizeThinkLevel, t as formatThinkingLevels, u as resolveResponseUsageMode } from "./thinking-CrcT589P.js";
63
- import { t as ensureSquidClawModelsJson } from "./models-config-C7GR26HJ.js";
64
- import { n as evaluateShellAllowlist, r as resolveAllowAlwaysPatterns } from "./exec-approvals-allowlist-Bl6dLcC4.js";
65
- import { n as resolveExecSafeBinRuntimePolicy, r as resolveMergedSafeBinProfileFixtures } from "./exec-safe-bin-runtime-policy-CYHAJAOy.js";
66
- import { n as loadModelCatalog, r as modelSupportsVision, t as findModelInCatalog } from "./model-catalog-cPBfdmCZ.js";
67
- import { a as getDefaultMediaLocalRoots, i as getAgentScopedMediaLocalRoots, n as fetchRemoteMedia, r as readResponseWithLimit, t as MediaFetchError } from "./fetch-BWLAZtR0.js";
68
- import { a as resolveAutoImageModel, c as applyTemplate, d as normalizeMediaUnderstandingChatType, f as resolveMediaUnderstandingScope, g as registerUnhandledRejectionHandler, i as normalizeMediaAttachments, l as resolveConcurrency, m as buildRandomTempFilePath, n as buildProviderRegistry, o as resolveMediaAttachmentLocalRoots, p as CLI_OUTPUT_MAX_BUFFER, r as createMediaAttachmentCache, s as runCapability, t as runAudioTranscription, u as resolveTimeoutMs$1, v as resolveAttachmentKind } from "./audio-transcription-runner-t9ywC3Mg.js";
63
+ import { t as ensureSquidClawModelsJson } from "./models-config-BNIPxtHv.js";
64
+ import { n as evaluateShellAllowlist, r as resolveAllowAlwaysPatterns } from "./exec-approvals-allowlist--CDwsotI.js";
65
+ import { n as resolveExecSafeBinRuntimePolicy, r as resolveMergedSafeBinProfileFixtures } from "./exec-safe-bin-runtime-policy-BOmyNeKa.js";
66
+ import { n as loadModelCatalog, r as modelSupportsVision, t as findModelInCatalog } from "./model-catalog-INp1o1zX.js";
67
+ import { a as getDefaultMediaLocalRoots, i as getAgentScopedMediaLocalRoots, n as fetchRemoteMedia, r as readResponseWithLimit, t as MediaFetchError } from "./fetch-CODl9dwL.js";
68
+ import { a as resolveAutoImageModel, c as applyTemplate, d as normalizeMediaUnderstandingChatType, f as resolveMediaUnderstandingScope, g as registerUnhandledRejectionHandler, i as normalizeMediaAttachments, l as resolveConcurrency, m as buildRandomTempFilePath, n as buildProviderRegistry, o as resolveMediaAttachmentLocalRoots, p as CLI_OUTPUT_MAX_BUFFER, r as createMediaAttachmentCache, s as runCapability, t as runAudioTranscription, u as resolveTimeoutMs$1, v as resolveAttachmentKind } from "./audio-transcription-runner-Caxzri8M.js";
69
69
  import { n as fetchWithTimeout, t as bindAbortRelay } from "./fetch-timeout-Mawkd1Br.js";
70
- import { n as withStrictGuardedFetchMode, r as withTrustedEnvProxyGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-aHbB2ECM.js";
71
- import { _ as stripReasoningTagsFromText, a as resolveProviderVisionModelFromConfig, b as extractTextFromChatContent, c as extractThinkingFromTaggedStream, d as inferToolMetaFromArgs, f as isAssistantMessage, g as stripThinkingTagsFromText, h as stripMinimaxToolCallXml, i as decodeDataUrl, l as extractThinkingFromTaggedText, m as stripDowngradedToolCallText, n as coerceImageAssistantText, o as extractAssistantText$1, p as promoteThinkingTagsToBlocks, r as coerceImageModelConfig, s as extractAssistantThinking, u as formatReasoningMessage, v as findCodeRegions, x as minimaxUnderstandImage, y as isInsideCode } from "./image-Czt09HO2.js";
70
+ import { n as withStrictGuardedFetchMode, r as withTrustedEnvProxyGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-C9XQ9W19.js";
71
+ import { _ as stripReasoningTagsFromText, a as resolveProviderVisionModelFromConfig, b as extractTextFromChatContent, c as extractThinkingFromTaggedStream, d as inferToolMetaFromArgs, f as isAssistantMessage, g as stripThinkingTagsFromText, h as stripMinimaxToolCallXml, i as decodeDataUrl, l as extractThinkingFromTaggedText, m as stripDowngradedToolCallText, n as coerceImageAssistantText, o as extractAssistantText$1, p as promoteThinkingTagsToBlocks, r as coerceImageModelConfig, s as extractAssistantThinking, u as formatReasoningMessage, v as findCodeRegions, x as minimaxUnderstandImage, y as isInsideCode } from "./image-C3rClBur.js";
72
72
  import { n as formatToolSummary, r as resolveToolDisplay } from "./tool-display-BisOZb2_.js";
73
73
  import { t as makeProxyFetch } from "./proxy-fetch-DfeBVFag.js";
74
- import { _ as isSafeFenceBreak, a as loadWebMedia, c as chunkByNewline, d as chunkMarkdownTextWithMode, f as chunkText, g as findFenceSpanAt, h as resolveTextChunkLimit, i as getDefaultLocalRoots, m as resolveChunkMode, o as loadWebMediaRaw, p as chunkTextWithMode, s as resolveMarkdownTableMode, u as chunkMarkdownText, v as parseFenceSpans } from "./ir-Cg5iUcsz.js";
75
- import { a as ToolInputError, c as imageResultFromFile, d as readNumberParam, f as readReactionParams, h as readStringParam, l as jsonResult, m as readStringOrNumberParam, n as missingTargetError, o as createActionGate, p as readStringArrayParam, r as unknownTargetError, s as imageResult, t as ambiguousTargetError, u as parseAvailableTags } from "./target-errors-CRQlPF1u.js";
76
- import { a as resolveNativeSkillsEnabled, i as resolveNativeCommandsEnabled, n as isNativeCommandsExplicitlyDisabled, r as isRestartEnabled, t as isCommandFlagEnabled } from "./commands-Di_crduW.js";
77
- import { a as listChatCommandsForConfig, c as maybeResolveTextAlias, d as resolveCommandArgChoices, f as resolveCommandArgMenu, i as listChatCommands, l as normalizeCommandBody, m as shouldHandleTextCommands, n as findCommandByNativeName, o as listNativeCommandSpecs, p as serializeCommandArgs, r as isCommandEnabled, s as listNativeCommandSpecsForConfig, t as buildCommandTextFromArgs, u as parseCommandArgs } from "./commands-registry-CvlKGwPE.js";
74
+ import { _ as isSafeFenceBreak, a as loadWebMedia, c as chunkByNewline, d as chunkMarkdownTextWithMode, f as chunkText, g as findFenceSpanAt, h as resolveTextChunkLimit, i as getDefaultLocalRoots, m as resolveChunkMode, o as loadWebMediaRaw, p as chunkTextWithMode, s as resolveMarkdownTableMode, u as chunkMarkdownText, v as parseFenceSpans } from "./ir-CLdz27UA.js";
75
+ import { a as ToolInputError, c as imageResultFromFile, d as readNumberParam, f as readReactionParams, h as readStringParam, l as jsonResult, m as readStringOrNumberParam, n as missingTargetError, o as createActionGate, p as readStringArrayParam, r as unknownTargetError, s as imageResult, t as ambiguousTargetError, u as parseAvailableTags } from "./target-errors-C_rnMuJ2.js";
76
+ import { a as resolveNativeSkillsEnabled, i as resolveNativeCommandsEnabled, n as isNativeCommandsExplicitlyDisabled, r as isRestartEnabled, t as isCommandFlagEnabled } from "./commands-Bn-GGRiA.js";
77
+ import { a as listChatCommandsForConfig, c as maybeResolveTextAlias, d as resolveCommandArgChoices, f as resolveCommandArgMenu, i as listChatCommands, l as normalizeCommandBody, m as shouldHandleTextCommands, n as findCommandByNativeName, o as listNativeCommandSpecs, p as serializeCommandArgs, r as isCommandEnabled, s as listNativeCommandSpecsForConfig, t as buildCommandTextFromArgs, u as parseCommandArgs } from "./commands-registry-DOyhmv7L.js";
78
78
  import { n as wrapFetchWithAbortSignal, t as resolveFetch } from "./fetch-By9arPco.js";
79
79
  import { n as formatTimeAgo } from "./format-relative-Czf5fUjn.js";
80
- import { c as readJsonFileWithFallback, d as listPairingChannels, i as readChannelAllowFromStore, l as writeJsonFileAtomically, o as removeChannelAllowFromStoreEntry, s as upsertChannelPairingRequest, t as addChannelAllowFromStoreEntry } from "./pairing-store-BNRzMsGf.js";
80
+ import { c as readJsonFileWithFallback, d as listPairingChannels, i as readChannelAllowFromStore, l as writeJsonFileAtomically, o as removeChannelAllowFromStoreEntry, s as upsertChannelPairingRequest, t as addChannelAllowFromStoreEntry } from "./pairing-store-BWvzmAq8.js";
81
81
  import { d as resolveExecApprovals, f as resolveExecApprovalsFromFile, i as maxAsk, l as recordAllowlistUse, n as addAllowlistEntry, o as minSecurity, u as requiresExecApproval } from "./exec-approvals-Db6myg-N.js";
82
- import { C as mergePathPrepend, S as findPathKey, a as canvasSnapshotTempPath, b as buildNodeShellCommand, c as parseCameraClipPayload, d as writeCameraClipPayloadToFile, f as writeCameraPayloadToFile, i as parseEnvPairs, l as parseCameraSnapPayload, n as screenRecordTempPath, o as parseCanvasSnapshotPayload, p as parsePreparedSystemRunPayload, r as writeScreenRecordToFile, s as cameraTempPath, t as parseScreenRecordPayload, u as writeBase64ToFile, w as normalizePathPrepend, x as applyPathPrepend } from "./nodes-screen-Cihyp_1V.js";
82
+ import { C as mergePathPrepend, S as findPathKey, a as canvasSnapshotTempPath, b as buildNodeShellCommand, c as parseCameraClipPayload, d as writeCameraClipPayloadToFile, f as writeCameraPayloadToFile, i as parseEnvPairs, l as parseCameraSnapPayload, n as screenRecordTempPath, o as parseCanvasSnapshotPayload, p as parsePreparedSystemRunPayload, r as writeScreenRecordToFile, s as cameraTempPath, t as parseScreenRecordPayload, u as writeBase64ToFile, w as normalizePathPrepend, x as applyPathPrepend } from "./nodes-screen-CKhKFccI.js";
83
83
  import { t as killProcessTree$1 } from "./kill-tree-0NV2m8EI.js";
84
- import { t as formatExecCommand } from "./system-run-command-BOHXAwW8.js";
84
+ import { t as formatExecCommand } from "./system-run-command-BqoUyRkT.js";
85
85
  import { i as parsePairingList, n as resolveNodeIdFromNodeList, r as parseNodeList, t as resolveNodeFromNodeList } from "./node-resolve-DO_ibeH6.js";
86
86
  import { i as formatDurationSeconds, r as formatDurationPrecise, t as formatDurationCompact$1 } from "./format-duration-CZ0b60YO.js";
87
- import { a as loadCombinedSessionStoreForGateway, d as resolveContextTokensForModel, f as computeBackoff, p as sleepWithAbort, u as lookupContextTokens } from "./session-utils-CZALjD6h.js";
87
+ import { a as loadCombinedSessionStoreForGateway, d as resolveContextTokensForModel, f as computeBackoff, p as sleepWithAbort, u as lookupContextTokens } from "./session-utils-PIpg5nvE.js";
88
88
  import { c as hasNonzeroUsage, l as makeZeroUsageSnapshot, n as loadCostUsageSummary, o as derivePromptTokens, r as loadSessionCostSummary, s as deriveSessionTotalTokens, u as normalizeUsage } from "./session-cost-usage-BL2HPuc5.js";
89
89
  import { i as resolveModelCostConfig, n as formatTokenCount$2, r as formatUsd, t as estimateUsageCost } from "./usage-format-eNPY7j3q.js";
90
- import { a as getRemoteSkillEligibility, b as getSkillsSnapshotVersion, i as resolveSkillCommandInvocation, n as listSkillCommandsForAgents, r as listSkillCommandsForWorkspace, t as listReservedChatSlashCommandNames, y as ensureSkillsWatcher } from "./skill-commands-CigVnmMu.js";
91
- import { n as recordChannelActivity, r as createDiscordRetryRunner, t as getChannelActivity } from "./channel-activity-CGBzdEGf.js";
90
+ import { a as getRemoteSkillEligibility, b as getSkillsSnapshotVersion, i as resolveSkillCommandInvocation, n as listSkillCommandsForAgents, r as listSkillCommandsForWorkspace, t as listReservedChatSlashCommandNames, y as ensureSkillsWatcher } from "./skill-commands-DBT6aOGs.js";
91
+ import { n as recordChannelActivity, r as createDiscordRetryRunner, t as getChannelActivity } from "./channel-activity-CNDuTc8D.js";
92
92
  import { t as buildOutboundMediaLoadOptions } from "./load-options-PN66jbnR.js";
93
93
  import { n as normalizePollInput } from "./polls-C67dmFc-.js";
94
- import { t as convertMarkdownTables } from "./tables-DOgKzkCQ.js";
94
+ import { t as convertMarkdownTables } from "./tables-Cw6nUurn.js";
95
95
  import { f as resolveGatewaySystemdServiceName, l as resolveGatewayLaunchAgentLabel } from "./constants-vBANYkEo.js";
96
96
  import { i as parseAbsoluteTimeMs, r as resolveDefaultCronStaggerMs, t as normalizeCronStaggerMs } from "./stagger-C4U8O7GM.js";
97
- import { n as resolveMessageChannelSelection, t as listConfiguredMessageChannels } from "./channel-selection-D_NFb2hE.js";
98
- import { t as applyPluginAutoEnable } from "./plugin-auto-enable-BLhZ9NWX.js";
99
- import { a as signalCheck, i as resolveSignalRpcContext, n as sendReadReceiptSignal, o as signalRpcRequest, r as sendTypingSignal, s as streamSignalEvents, t as sendMessageSignal } from "./send-D8WRsTcF.js";
100
- import { a as isAllowedIMessageSender, i as formatIMessageChatTarget, n as createIMessageRpcClient, o as normalizeIMessageHandle, r as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, s as parseIMessageTarget, t as sendMessageIMessage } from "./send-Cj7csKER.js";
97
+ import { n as resolveMessageChannelSelection, t as listConfiguredMessageChannels } from "./channel-selection-DAoy4Z1P.js";
98
+ import { t as applyPluginAutoEnable } from "./plugin-auto-enable-D_3GnV1a.js";
99
+ import { a as signalCheck, i as resolveSignalRpcContext, n as sendReadReceiptSignal, o as signalRpcRequest, r as sendTypingSignal, s as streamSignalEvents, t as sendMessageSignal } from "./send-BcCUXoKV.js";
100
+ import { a as isAllowedIMessageSender, i as formatIMessageChatTarget, n as createIMessageRpcClient, o as normalizeIMessageHandle, r as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, s as parseIMessageTarget, t as sendMessageIMessage } from "./send-DHmaiFb3.js";
101
101
  import { n as isSenderIdAllowed, r as mergeDmAllowFromSources, t as firstDefined$1 } from "./allow-from-DzfdGdp7.js";
102
102
  import { t as parseTimeoutMs } from "./parse-timeout-DUdeaMqF.js";
103
103
  import { i as redactIdentifier, t as getActiveWebListener } from "./active-listener-tA6LTRr3.js";
104
- import { a as resolveSubagentToolPolicy, c as readStoreAllowFromForDmPolicy, d as resolveDmGroupAccessWithLists, f as resolvePinnedMainDmOwnerFromAllowlist, i as resolveGroupToolPolicy, m as resolveControlCommandGate, n as isToolAllowedByPolicies, p as resolveCommandAuthorizedFromAuthorizers, r as resolveEffectiveToolPolicy, s as DM_GROUP_ACCESS_REASON, t as filterToolsByPolicy } from "./pi-tools.policy-DgElG9m2.js";
104
+ import { a as resolveSubagentToolPolicy, c as readStoreAllowFromForDmPolicy, d as resolveDmGroupAccessWithLists, f as resolvePinnedMainDmOwnerFromAllowlist, i as resolveGroupToolPolicy, m as resolveControlCommandGate, n as isToolAllowedByPolicies, p as resolveCommandAuthorizedFromAuthorizers, r as resolveEffectiveToolPolicy, s as DM_GROUP_ACCESS_REASON, t as filterToolsByPolicy } from "./pi-tools.policy-Bhg8uG0h.js";
105
105
  import { n as isDangerousNameMatchingEnabled } from "./dangerous-name-matching-CXdnb6je.js";
106
- import { s as resolveCommandSecretRefsViaGateway, t as getAgentRuntimeCommandSecretTargetIds } from "./command-secret-targets-DElQTuoe.js";
107
- import { r as detectBinary } from "./onboard-helpers-DfWsh9P_.js";
108
- import { t as resolvePairingIdLabel } from "./pairing-labels-ieaV5SBV.js";
109
- import { i as resolveMemoryBackendConfig, n as registerMemoryCli, r as getMemorySearchManager } from "./memory-cli-DdlNObR_.js";
110
- import { r as resolveMemorySearchConfig } from "./manager-D-epQZzu.js";
106
+ import { s as resolveCommandSecretRefsViaGateway, t as getAgentRuntimeCommandSecretTargetIds } from "./command-secret-targets-Blzote2A.js";
107
+ import { r as detectBinary } from "./onboard-helpers-D10-c0nt.js";
108
+ import { t as resolvePairingIdLabel } from "./pairing-labels-DGiyVpfH.js";
109
+ import { i as resolveMemoryBackendConfig, n as registerMemoryCli, r as getMemorySearchManager } from "./memory-cli-K8RTw22V.js";
110
+ import { r as resolveMemorySearchConfig } from "./manager-CFg5CNjB.js";
111
111
  import { i as resolveContextWindowInfo, n as CONTEXT_WINDOW_WARN_BELOW_TOKENS, r as evaluateContextWindowGuard, t as CONTEXT_WINDOW_HARD_MIN_TOKENS } from "./context-window-guard-EeoVR--t.js";
112
112
  import { createRequire } from "node:module";
113
113
  import { execFileSync, spawn, spawnSync } from "node:child_process";
@@ -117,7 +117,7 @@ import path, { isAbsolute } from "node:path";
117
117
  import fs, { existsSync, mkdirSync, mkdtempSync, promises, readFileSync, renameSync, rmSync, statSync, unlinkSync, writeFileSync } from "node:fs";
118
118
  import JSON5 from "json5";
119
119
  import { inspect } from "node:util";
120
- import fs$1, { appendFile, mkdir } from "node:fs/promises";
120
+ import fsPromises, { appendFile, mkdir } from "node:fs/promises";
121
121
  import { complete, completeSimple, createAssistantMessageEventStream, streamSimple } from "@mariozechner/pi-ai";
122
122
  import crypto, { createHash, createHmac, randomBytes, randomUUID } from "node:crypto";
123
123
  import { CURRENT_SESSION_VERSION, DefaultResourceLoader, SessionManager, SettingsManager, codingTools, createAgentSession, createEditTool, createReadTool, createWriteTool, estimateTokens, generateSummary, readTool } from "@mariozechner/pi-coding-agent";
@@ -5153,7 +5153,7 @@ async function resolveAgentSessionDirs(stateDir) {
5153
5153
  const agentsDir = path.join(stateDir, "agents");
5154
5154
  let entries = [];
5155
5155
  try {
5156
- entries = await fs$1.readdir(agentsDir, { withFileTypes: true });
5156
+ entries = await fsPromises.readdir(agentsDir, { withFileTypes: true });
5157
5157
  } catch (err) {
5158
5158
  if (err.code === "ENOENT") return [];
5159
5159
  throw err;
@@ -8286,7 +8286,7 @@ async function runWithConcurrency(tasks, limit) {
8286
8286
  //#region src/media-understanding/echo-transcript.ts
8287
8287
  let deliverRuntimePromise$2 = null;
8288
8288
  function loadDeliverRuntime$2() {
8289
- deliverRuntimePromise$2 ??= import("./deliver-runtime-BY48Cyf6.js");
8289
+ deliverRuntimePromise$2 ??= import("./deliver-runtime-CCCnLu1l.js");
8290
8290
  return deliverRuntimePromise$2;
8291
8291
  }
8292
8292
  const DEFAULT_ECHO_TRANSCRIPT_FORMAT = "📝 \"{transcript}\"";
@@ -13122,7 +13122,7 @@ async function resolveSandboxWorkdir(params) {
13122
13122
  cwd: process.cwd(),
13123
13123
  root: params.sandbox.workspaceDir
13124
13124
  });
13125
- if (!(await fs$1.stat(resolved.resolved)).isDirectory()) throw new Error("workdir is not a directory");
13125
+ if (!(await fsPromises.stat(resolved.resolved)).isDirectory()) throw new Error("workdir is not a directory");
13126
13126
  const relative = resolved.relative ? resolved.relative.split(path.sep).join(path.posix.sep) : "";
13127
13127
  const containerWorkdir = relative ? path.posix.join(params.sandbox.containerWorkdir, relative) : params.sandbox.containerWorkdir;
13128
13128
  return {
@@ -14366,13 +14366,13 @@ async function validateScriptFileForShellBleed(params) {
14366
14366
  cwd: params.workdir,
14367
14367
  root: params.workdir
14368
14368
  });
14369
- stat = await fs$1.stat(absPath);
14369
+ stat = await fsPromises.stat(absPath);
14370
14370
  } catch {
14371
14371
  return;
14372
14372
  }
14373
14373
  if (!stat.isFile()) return;
14374
14374
  if (stat.size > 512 * 1024) return;
14375
- const content = await fs$1.readFile(absPath, "utf-8");
14375
+ const content = await fsPromises.readFile(absPath, "utf-8");
14376
14376
  const first = /\$[A-Z_][A-Z0-9_]{1,}/g.exec(content);
14377
14377
  if (first) {
14378
14378
  const idx = first.index;
@@ -23883,7 +23883,7 @@ function normalizeReplyPayload(payload, opts = {}) {
23883
23883
  */
23884
23884
  let deliverRuntimePromise$1 = null;
23885
23885
  function loadDeliverRuntime$1() {
23886
- deliverRuntimePromise$1 ??= import("./deliver-runtime-BY48Cyf6.js");
23886
+ deliverRuntimePromise$1 ??= import("./deliver-runtime-CCCnLu1l.js");
23887
23887
  return deliverRuntimePromise$1;
23888
23888
  }
23889
23889
  /**
@@ -24007,7 +24007,7 @@ async function emitResetCommandHooks(params) {
24007
24007
  try {
24008
24008
  const messages = [];
24009
24009
  if (sessionFile) {
24010
- const content = await fs$1.readFile(sessionFile, "utf-8");
24010
+ const content = await fsPromises.readFile(sessionFile, "utf-8");
24011
24011
  for (const line of content.split("\n")) {
24012
24012
  if (!line.trim()) continue;
24013
24013
  try {
@@ -24837,7 +24837,7 @@ async function createModelSelectionState(params) {
24837
24837
  }
24838
24838
  }
24839
24839
  if (sessionEntry && sessionStore && sessionKey && sessionEntry.authProfileOverride) {
24840
- const { ensureAuthProfileStore } = await import("./auth-profiles-BiJk4pUv.js").then((n) => n.t);
24840
+ const { ensureAuthProfileStore } = await import("./auth-profiles-ByQNLJzP.js").then((n) => n.t);
24841
24841
  const profile = ensureAuthProfileStore(void 0, { allowKeychainPrompt: false }).profiles[sessionEntry.authProfileOverride];
24842
24842
  const providerKey = normalizeProviderId(provider);
24843
24843
  if (!profile || normalizeProviderId(profile.provider) !== providerKey) await clearSessionAuthProfileOverride({
@@ -28433,7 +28433,7 @@ async function readJsonlFromPath(jsonlPath) {
28433
28433
  if (shouldLogVerbose()) logVerbose(`Blocked canvas jsonlPath outside allowed roots: ${resolved}`);
28434
28434
  throw new Error("jsonlPath outside allowed roots");
28435
28435
  }
28436
- const canonical = await fs$1.realpath(resolved).catch(() => resolved);
28436
+ const canonical = await fsPromises.realpath(resolved).catch(() => resolved);
28437
28437
  if (!isInboundPathAllowed({
28438
28438
  filePath: canonical,
28439
28439
  roots
@@ -28441,7 +28441,7 @@ async function readJsonlFromPath(jsonlPath) {
28441
28441
  if (shouldLogVerbose()) logVerbose(`Blocked canvas jsonlPath outside allowed roots: ${canonical}`);
28442
28442
  throw new Error("jsonlPath outside allowed roots");
28443
28443
  }
28444
- return await fs$1.readFile(canonical, "utf8");
28444
+ return await fsPromises.readFile(canonical, "utf8");
28445
28445
  }
28446
28446
  const CanvasToolSchema = Type.Object({
28447
28447
  action: stringEnum(CANVAS_ACTIONS),
@@ -29256,27 +29256,27 @@ function resolveRestartSentinelPath(env = process.env) {
29256
29256
  }
29257
29257
  async function writeRestartSentinel(payload, env = process.env) {
29258
29258
  const filePath = resolveRestartSentinelPath(env);
29259
- await fs$1.mkdir(path.dirname(filePath), { recursive: true });
29259
+ await fsPromises.mkdir(path.dirname(filePath), { recursive: true });
29260
29260
  const data = {
29261
29261
  version: 1,
29262
29262
  payload
29263
29263
  };
29264
- await fs$1.writeFile(filePath, `${JSON.stringify(data, null, 2)}\n`, "utf-8");
29264
+ await fsPromises.writeFile(filePath, `${JSON.stringify(data, null, 2)}\n`, "utf-8");
29265
29265
  return filePath;
29266
29266
  }
29267
29267
  async function readRestartSentinel(env = process.env) {
29268
29268
  const filePath = resolveRestartSentinelPath(env);
29269
29269
  try {
29270
- const raw = await fs$1.readFile(filePath, "utf-8");
29270
+ const raw = await fsPromises.readFile(filePath, "utf-8");
29271
29271
  let parsed;
29272
29272
  try {
29273
29273
  parsed = JSON.parse(raw);
29274
29274
  } catch {
29275
- await fs$1.unlink(filePath).catch(() => {});
29275
+ await fsPromises.unlink(filePath).catch(() => {});
29276
29276
  return null;
29277
29277
  }
29278
29278
  if (!parsed || parsed.version !== 1 || !parsed.payload) {
29279
- await fs$1.unlink(filePath).catch(() => {});
29279
+ await fsPromises.unlink(filePath).catch(() => {});
29280
29280
  return null;
29281
29281
  }
29282
29282
  return parsed;
@@ -29288,7 +29288,7 @@ async function consumeRestartSentinel(env = process.env) {
29288
29288
  const filePath = resolveRestartSentinelPath(env);
29289
29289
  const parsed = await readRestartSentinel(env);
29290
29290
  if (!parsed) return null;
29291
- await fs$1.unlink(filePath).catch(() => {});
29291
+ await fsPromises.unlink(filePath).catch(() => {});
29292
29292
  return parsed;
29293
29293
  }
29294
29294
  function formatRestartSentinelMessage(payload) {
@@ -40392,18 +40392,18 @@ function appendImagePathsToPrompt(prompt, paths) {
40392
40392
  return `${trimmed}${trimmed ? "\n\n" : ""}${paths.join("\n")}`;
40393
40393
  }
40394
40394
  async function writeCliImages(images) {
40395
- const tempDir = await fs$1.mkdtemp(path.join(os.tmpdir(), "squidclaw-cli-images-"));
40395
+ const tempDir = await fsPromises.mkdtemp(path.join(os.tmpdir(), "squidclaw-cli-images-"));
40396
40396
  const paths = [];
40397
40397
  for (let i = 0; i < images.length; i += 1) {
40398
40398
  const image = images[i];
40399
40399
  const ext = resolveImageExtension(image.mimeType);
40400
40400
  const filePath = path.join(tempDir, `image-${i + 1}.${ext}`);
40401
40401
  const buffer = Buffer.from(image.data, "base64");
40402
- await fs$1.writeFile(filePath, buffer, { mode: 384 });
40402
+ await fsPromises.writeFile(filePath, buffer, { mode: 384 });
40403
40403
  paths.push(filePath);
40404
40404
  }
40405
40405
  const cleanup = async () => {
40406
- await fs$1.rm(tempDir, {
40406
+ await fsPromises.rm(tempDir, {
40407
40407
  recursive: true,
40408
40408
  force: true
40409
40409
  });
@@ -44375,7 +44375,7 @@ const warnedContexts = /* @__PURE__ */ new Map();
44375
44375
  const log$9 = createSubsystemLogger("session-maintenance-warning");
44376
44376
  let deliverRuntimePromise = null;
44377
44377
  function loadDeliverRuntime() {
44378
- deliverRuntimePromise ??= import("./deliver-runtime-BY48Cyf6.js");
44378
+ deliverRuntimePromise ??= import("./deliver-runtime-CCCnLu1l.js");
44379
44379
  return deliverRuntimePromise;
44380
44380
  }
44381
44381
  function shouldSendWarning() {
@@ -44956,7 +44956,7 @@ async function stageSandboxMedia(params) {
44956
44956
  const remoteMediaCacheDir = ctx.MediaRemoteHost ? path.join(CONFIG_DIR, "media", "remote-cache", sessionKey) : null;
44957
44957
  const effectiveWorkspaceDir = sandbox?.workspaceDir ?? remoteMediaCacheDir;
44958
44958
  if (!effectiveWorkspaceDir) return;
44959
- await fs$1.mkdir(effectiveWorkspaceDir, { recursive: true });
44959
+ await fsPromises.mkdir(effectiveWorkspaceDir, { recursive: true });
44960
44960
  const remoteAttachmentRoots = resolveIMessageRemoteAttachmentRoots({
44961
44961
  cfg,
44962
44962
  accountId: ctx.AccountId
@@ -45015,8 +45015,8 @@ async function stageLocalFileIntoRoot(params) {
45015
45015
  }
45016
45016
  async function stageRemoteFileIntoRoot(params) {
45017
45017
  const tmpRoot = resolvePreferredSquidClawTmpDir();
45018
- await fs$1.mkdir(tmpRoot, { recursive: true });
45019
- const tmpDir = await fs$1.mkdtemp(path.join(tmpRoot, "stage-sandbox-media-"));
45018
+ await fsPromises.mkdir(tmpRoot, { recursive: true });
45019
+ const tmpDir = await fsPromises.mkdtemp(path.join(tmpRoot, "stage-sandbox-media-"));
45020
45020
  const tmpPath = path.join(tmpDir, "download");
45021
45021
  try {
45022
45022
  await scpFile(params.remoteHost, params.remotePath, tmpPath);
@@ -45027,7 +45027,7 @@ async function stageRemoteFileIntoRoot(params) {
45027
45027
  maxBytes: params.maxBytes
45028
45028
  });
45029
45029
  } finally {
45030
- await fs$1.rm(tmpDir, {
45030
+ await fsPromises.rm(tmpDir, {
45031
45031
  recursive: true,
45032
45032
  force: true
45033
45033
  }).catch(() => {});
@@ -49335,7 +49335,7 @@ const VISION_PROVIDERS = [
49335
49335
  ];
49336
49336
  let imageRuntimePromise = null;
49337
49337
  function loadImageRuntime() {
49338
- imageRuntimePromise ??= import("./image-runtime-C_sKgCPT.js");
49338
+ imageRuntimePromise ??= import("./image-runtime-BawEM2qj.js");
49339
49339
  return imageRuntimePromise;
49340
49340
  }
49341
49341
  /**
@@ -49401,7 +49401,7 @@ async function describeStickerImage(params) {
49401
49401
  const { provider, model } = resolved;
49402
49402
  logVerbose(`telegram: describing sticker with ${provider}/${model}`);
49403
49403
  try {
49404
- const buffer = await fs$1.readFile(imagePath);
49404
+ const buffer = await fsPromises.readFile(imagePath);
49405
49405
  const { describeImageWithModel } = await loadImageRuntime();
49406
49406
  return (await describeImageWithModel({
49407
49407
  buffer,
@@ -51231,7 +51231,7 @@ async function resolveDiscordPreflightAudioMentionContext(params) {
51231
51231
  hasTypedText
51232
51232
  };
51233
51233
  try {
51234
- const { transcribeFirstAudio } = await import("./audio-preflight-BdE85axf.js");
51234
+ const { transcribeFirstAudio } = await import("./audio-preflight-D2V9uUvO.js");
51235
51235
  if (params.abortSignal?.aborted) return {
51236
51236
  hasAudioAttachment,
51237
51237
  hasTypedText
@@ -56187,27 +56187,27 @@ let slackSenderRuntimePromise = null;
56187
56187
  let signalSenderRuntimePromise = null;
56188
56188
  let imessageSenderRuntimePromise = null;
56189
56189
  function loadWhatsAppSenderRuntime() {
56190
- whatsappSenderRuntimePromise ??= import("./deps-send-whatsapp.runtime-0tUP9kuA.js");
56190
+ whatsappSenderRuntimePromise ??= import("./deps-send-whatsapp.runtime-NrQGDJy9.js");
56191
56191
  return whatsappSenderRuntimePromise;
56192
56192
  }
56193
56193
  function loadTelegramSenderRuntime() {
56194
- telegramSenderRuntimePromise ??= import("./deps-send-telegram.runtime-aNU8_XlK.js");
56194
+ telegramSenderRuntimePromise ??= import("./deps-send-telegram.runtime-C7I8qHRq.js");
56195
56195
  return telegramSenderRuntimePromise;
56196
56196
  }
56197
56197
  function loadDiscordSenderRuntime() {
56198
- discordSenderRuntimePromise ??= import("./deps-send-discord.runtime-CiS_YGKd.js");
56198
+ discordSenderRuntimePromise ??= import("./deps-send-discord.runtime-C1qYROSU.js");
56199
56199
  return discordSenderRuntimePromise;
56200
56200
  }
56201
56201
  function loadSlackSenderRuntime() {
56202
- slackSenderRuntimePromise ??= import("./deps-send-slack.runtime-Dqb-9qwc.js");
56202
+ slackSenderRuntimePromise ??= import("./deps-send-slack.runtime-BoIAdT0Z.js");
56203
56203
  return slackSenderRuntimePromise;
56204
56204
  }
56205
56205
  function loadSignalSenderRuntime() {
56206
- signalSenderRuntimePromise ??= import("./deps-send-signal.runtime-C9s3Y1Zu.js");
56206
+ signalSenderRuntimePromise ??= import("./deps-send-signal.runtime-BxlxMy_x.js");
56207
56207
  return signalSenderRuntimePromise;
56208
56208
  }
56209
56209
  function loadIMessageSenderRuntime() {
56210
- imessageSenderRuntimePromise ??= import("./deps-send-imessage.runtime-h5CDiZZu.js");
56210
+ imessageSenderRuntimePromise ??= import("./deps-send-imessage.runtime-Dz14pqUt.js");
56211
56211
  return imessageSenderRuntimePromise;
56212
56212
  }
56213
56213
  function createDefaultDeps() {
@@ -57380,10 +57380,10 @@ function estimateDurationSeconds(pcm) {
57380
57380
  return pcm.length / (bytesPerSample * SAMPLE_RATE);
57381
57381
  }
57382
57382
  async function writeWavFile(pcm) {
57383
- const tempDir = await fs$1.mkdtemp(path.join(resolvePreferredSquidClawTmpDir(), "discord-voice-"));
57383
+ const tempDir = await fsPromises.mkdtemp(path.join(resolvePreferredSquidClawTmpDir(), "discord-voice-"));
57384
57384
  const filePath = path.join(tempDir, `segment-${randomUUID()}.wav`);
57385
57385
  const wav = buildWavBuffer(pcm);
57386
- await fs$1.writeFile(filePath, wav);
57386
+ await fsPromises.writeFile(filePath, wav);
57387
57387
  scheduleTempCleanup(tempDir);
57388
57388
  return {
57389
57389
  path: filePath,
@@ -57392,7 +57392,7 @@ async function writeWavFile(pcm) {
57392
57392
  }
57393
57393
  function scheduleTempCleanup(tempDir, delayMs = 1800 * 1e3) {
57394
57394
  setTimeout(() => {
57395
- fs$1.rm(tempDir, {
57395
+ fsPromises.rm(tempDir, {
57396
57396
  recursive: true,
57397
57397
  force: true
57398
57398
  }).catch((err) => {
@@ -62035,7 +62035,7 @@ function normalizeAllowList$1(list) {
62035
62035
  async function detectRemoteHostFromCliPath(cliPath) {
62036
62036
  try {
62037
62037
  const expanded = cliPath.startsWith("~") ? cliPath.replace(/^~/, process.env.HOME ?? "") : cliPath;
62038
- const content = await fs$1.readFile(expanded, "utf8");
62038
+ const content = await fsPromises.readFile(expanded, "utf8");
62039
62039
  const userHostMatch = content.match(/\bssh\b[^\n]*?\s+([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+)/);
62040
62040
  if (userHostMatch) return userHostMatch[1];
62041
62041
  return content.match(/\bssh\b[^\n]*?\s+([a-zA-Z][a-zA-Z0-9._-]*)\s+\S*\bimsg\b/)?.[1];
@@ -69023,15 +69023,15 @@ let slashCommandsRuntimePromise = null;
69023
69023
  let slashDispatchRuntimePromise = null;
69024
69024
  let slashSkillCommandsRuntimePromise = null;
69025
69025
  function loadSlashCommandsRuntime() {
69026
- slashCommandsRuntimePromise ??= import("./slash-commands.runtime-CF70sEb6.js");
69026
+ slashCommandsRuntimePromise ??= import("./slash-commands.runtime-BueY2Beh.js");
69027
69027
  return slashCommandsRuntimePromise;
69028
69028
  }
69029
69029
  function loadSlashDispatchRuntime() {
69030
- slashDispatchRuntimePromise ??= import("./slash-dispatch.runtime-BpDcu-GU.js");
69030
+ slashDispatchRuntimePromise ??= import("./slash-dispatch.runtime-B3gbmyOu.js");
69031
69031
  return slashDispatchRuntimePromise;
69032
69032
  }
69033
69033
  function loadSlashSkillCommandsRuntime() {
69034
- slashSkillCommandsRuntimePromise ??= import("./slash-skill-commands.runtime-6s4Ap-WA.js");
69034
+ slashSkillCommandsRuntimePromise ??= import("./slash-skill-commands.runtime-ByvvwWOf.js");
69035
69035
  return slashSkillCommandsRuntimePromise;
69036
69036
  }
69037
69037
  const slackExternalArgMenuStore = createSlackExternalArgMenuStore();
@@ -72396,7 +72396,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, replyMedia =
72396
72396
  const disableAudioPreflight = firstDefined$1(topicConfig?.disableAudioPreflight, groupConfig?.disableAudioPreflight) === true;
72397
72397
  let preflightTranscript;
72398
72398
  if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0 && !disableAudioPreflight) try {
72399
- const { transcribeFirstAudio } = await import("./audio-preflight-BdE85axf.js");
72399
+ const { transcribeFirstAudio } = await import("./audio-preflight-D2V9uUvO.js");
72400
72400
  preflightTranscript = await transcribeFirstAudio({
72401
72401
  ctx: {
72402
72402
  MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
@@ -73893,7 +73893,7 @@ function resolveCommandHashPath(accountId, botIdentity) {
73893
73893
  }
73894
73894
  async function readCachedCommandHash(accountId, botIdentity) {
73895
73895
  try {
73896
- return (await fs$1.readFile(resolveCommandHashPath(accountId, botIdentity), "utf-8")).trim();
73896
+ return (await fsPromises.readFile(resolveCommandHashPath(accountId, botIdentity), "utf-8")).trim();
73897
73897
  } catch {
73898
73898
  return null;
73899
73899
  }
@@ -73901,8 +73901,8 @@ async function readCachedCommandHash(accountId, botIdentity) {
73901
73901
  async function writeCachedCommandHash(accountId, botIdentity, hash) {
73902
73902
  const filePath = resolveCommandHashPath(accountId, botIdentity);
73903
73903
  try {
73904
- await fs$1.mkdir(path.dirname(filePath), { recursive: true });
73905
- await fs$1.writeFile(filePath, hash, "utf-8");
73904
+ await fsPromises.mkdir(path.dirname(filePath), { recursive: true });
73905
+ await fsPromises.writeFile(filePath, hash, "utf-8");
73906
73906
  } catch {}
73907
73907
  }
73908
73908
  function syncTelegramMenuCommands(params) {
@@ -74746,7 +74746,7 @@ function safeParseState(raw) {
74746
74746
  async function readTelegramUpdateOffset(params) {
74747
74747
  const filePath = resolveTelegramUpdateOffsetPath(params.accountId, params.env);
74748
74748
  try {
74749
- const parsed = safeParseState(await fs$1.readFile(filePath, "utf-8"));
74749
+ const parsed = safeParseState(await fsPromises.readFile(filePath, "utf-8"));
74750
74750
  const expectedBotId = extractBotIdFromToken(params.botToken);
74751
74751
  if (expectedBotId && parsed?.botId && parsed.botId !== expectedBotId) return null;
74752
74752
  if (expectedBotId && parsed?.botId === null) return null;
@@ -74770,7 +74770,7 @@ async function writeTelegramUpdateOffset(params) {
74770
74770
  async function deleteTelegramUpdateOffset(params) {
74771
74771
  const filePath = resolveTelegramUpdateOffsetPath(params.accountId, params.env);
74772
74772
  try {
74773
- await fs$1.unlink(filePath);
74773
+ await fsPromises.unlink(filePath);
74774
74774
  } catch (err) {
74775
74775
  if (err.code === "ENOENT") return;
74776
74776
  throw err;
@@ -75244,7 +75244,7 @@ function createWhatsAppLoginTool() {
75244
75244
  force: Type.Optional(Type.Boolean())
75245
75245
  }),
75246
75246
  execute: async (_toolCallId, args) => {
75247
- const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-CL3cPNm6.js");
75247
+ const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-eRvH4Sfc.js");
75248
75248
  if ((args?.action ?? "start") === "wait") {
75249
75249
  const result = await waitForWebLogin({ timeoutMs: typeof args.timeoutMs === "number" ? args.timeoutMs : void 0 });
75250
75250
  return {
@@ -75319,23 +75319,23 @@ let webOutboundPromise = null;
75319
75319
  let webLoginPromise = null;
75320
75320
  let whatsappActionsPromise = null;
75321
75321
  function loadWebOutbound() {
75322
- webOutboundPromise ??= import("./runtime-whatsapp-outbound.runtime-bw4l8Cm5.js");
75322
+ webOutboundPromise ??= import("./runtime-whatsapp-outbound.runtime-CTfBy0k0.js");
75323
75323
  return webOutboundPromise;
75324
75324
  }
75325
75325
  function loadWebLogin() {
75326
- webLoginPromise ??= import("./runtime-whatsapp-login.runtime-Cf3JhAPA.js");
75326
+ webLoginPromise ??= import("./runtime-whatsapp-login.runtime-B4XQqxLZ.js");
75327
75327
  return webLoginPromise;
75328
75328
  }
75329
75329
  function loadWebLoginQr() {
75330
- webLoginQrPromise ??= import("./login-qr-CL3cPNm6.js");
75330
+ webLoginQrPromise ??= import("./login-qr-eRvH4Sfc.js");
75331
75331
  return webLoginQrPromise;
75332
75332
  }
75333
75333
  function loadWebChannel() {
75334
- webChannelPromise ??= import("./web-DfVBXj7E.js");
75334
+ webChannelPromise ??= import("./web-1FVB4fsI.js");
75335
75335
  return webChannelPromise;
75336
75336
  }
75337
75337
  function loadWhatsAppActions() {
75338
- whatsappActionsPromise ??= import("./whatsapp-actions-BYzAF3jo.js");
75338
+ whatsappActionsPromise ??= import("./whatsapp-actions-I7z57XJA.js");
75339
75339
  return whatsappActionsPromise;
75340
75340
  }
75341
75341
  function createRuntimeWhatsApp() {
@@ -76647,7 +76647,7 @@ function resolvePluginTools(params) {
76647
76647
  //#endregion
76648
76648
  //#region src/agents/apply-patch-update.ts
76649
76649
  async function defaultReadFile(filePath) {
76650
- return fs$1.readFile(filePath, "utf8");
76650
+ return fsPromises.readFile(filePath, "utf8");
76651
76651
  }
76652
76652
  async function applyUpdateHunk(filePath, chunks, options) {
76653
76653
  const originalLines = (await (options?.readFile ?? defaultReadFile)(filePath).catch((err) => {
@@ -76968,7 +76968,7 @@ function resolvePatchFileOps(options) {
76968
76968
  const workspaceOnly = options.workspaceOnly !== false;
76969
76969
  return {
76970
76970
  readFile: async (filePath) => {
76971
- if (!workspaceOnly) return await fs$1.readFile(filePath, "utf8");
76971
+ if (!workspaceOnly) return await fsPromises.readFile(filePath, "utf8");
76972
76972
  const opened = await openBoundaryFile({
76973
76973
  absolutePath: filePath,
76974
76974
  rootPath: options.cwd,
@@ -76983,7 +76983,7 @@ function resolvePatchFileOps(options) {
76983
76983
  },
76984
76984
  writeFile: async (filePath, content) => {
76985
76985
  if (!workspaceOnly) {
76986
- await fs$1.writeFile(filePath, content, "utf8");
76986
+ await fsPromises.writeFile(filePath, content, "utf8");
76987
76987
  return;
76988
76988
  }
76989
76989
  const relative = toRelativeSandboxPath(options.cwd, filePath);
@@ -76994,8 +76994,8 @@ function resolvePatchFileOps(options) {
76994
76994
  encoding: "utf8"
76995
76995
  });
76996
76996
  },
76997
- remove: (filePath) => fs$1.rm(filePath),
76998
- mkdirp: (dir) => fs$1.mkdir(dir, { recursive: true }).then(() => {})
76997
+ remove: (filePath) => fsPromises.rm(filePath),
76998
+ mkdirp: (dir) => fsPromises.mkdir(dir, { recursive: true }).then(() => {})
76999
76999
  };
77000
77000
  }
77001
77001
  async function ensureDir(filePath, ops) {
@@ -77257,7 +77257,7 @@ const LOOP_WARNING_BUCKET_SIZE = 10;
77257
77257
  const MAX_LOOP_WARNING_KEYS = 256;
77258
77258
  let beforeToolCallRuntimePromise = null;
77259
77259
  function loadBeforeToolCallRuntime() {
77260
- beforeToolCallRuntimePromise ??= import("./pi-tools.before-tool-call.runtime-DjzR6iNJ.js");
77260
+ beforeToolCallRuntimePromise ??= import("./pi-tools.before-tool-call.runtime-CEWBYhqI.js");
77261
77261
  return beforeToolCallRuntimePromise;
77262
77262
  }
77263
77263
  function buildAdjustedParamsKey(params) {
@@ -77495,7 +77495,7 @@ function wrapHostEditToolWithPostWriteRecovery(base, root) {
77495
77495
  if (!pathParam || !newText) throw err;
77496
77496
  try {
77497
77497
  const absolutePath = resolveHostEditPath(root, pathParam);
77498
- const content = await fs$1.readFile(absolutePath, "utf-8");
77498
+ const content = await fsPromises.readFile(absolutePath, "utf-8");
77499
77499
  const hasNew = content.includes(newText);
77500
77500
  const stillHasOld = oldText !== void 0 && oldText.length > 0 && content.includes(oldText);
77501
77501
  if (hasNew && !stillHasOld) return {
@@ -77977,14 +77977,14 @@ function createSandboxEditOperations(params) {
77977
77977
  }
77978
77978
  async function writeHostFile(absolutePath, content) {
77979
77979
  const resolved = path.resolve(absolutePath);
77980
- await fs$1.mkdir(path.dirname(resolved), { recursive: true });
77981
- await fs$1.writeFile(resolved, content, "utf-8");
77980
+ await fsPromises.mkdir(path.dirname(resolved), { recursive: true });
77981
+ await fsPromises.writeFile(resolved, content, "utf-8");
77982
77982
  }
77983
77983
  function createHostWriteOperations(root, options) {
77984
77984
  if (!(options?.workspaceOnly ?? false)) return {
77985
77985
  mkdir: async (dir) => {
77986
77986
  const resolved = path.resolve(dir);
77987
- await fs$1.mkdir(resolved, { recursive: true });
77987
+ await fsPromises.mkdir(resolved, { recursive: true });
77988
77988
  },
77989
77989
  writeFile: writeHostFile
77990
77990
  };
@@ -77997,7 +77997,7 @@ function createHostWriteOperations(root, options) {
77997
77997
  cwd: root,
77998
77998
  root
77999
77999
  });
78000
- await fs$1.mkdir(resolved, { recursive: true });
78000
+ await fsPromises.mkdir(resolved, { recursive: true });
78001
78001
  },
78002
78002
  writeFile: async (absolutePath, content) => {
78003
78003
  await writeFileWithinRoot({
@@ -78013,12 +78013,12 @@ function createHostEditOperations(root, options) {
78013
78013
  if (!(options?.workspaceOnly ?? false)) return {
78014
78014
  readFile: async (absolutePath) => {
78015
78015
  const resolved = path.resolve(absolutePath);
78016
- return await fs$1.readFile(resolved);
78016
+ return await fsPromises.readFile(resolved);
78017
78017
  },
78018
78018
  writeFile: writeHostFile,
78019
78019
  access: async (absolutePath) => {
78020
78020
  const resolved = path.resolve(absolutePath);
78021
- await fs$1.access(resolved);
78021
+ await fsPromises.access(resolved);
78022
78022
  }
78023
78023
  };
78024
78024
  return {
@@ -78856,7 +78856,7 @@ async function repairSessionFileIfNeeded(params) {
78856
78856
  };
78857
78857
  let content;
78858
78858
  try {
78859
- content = await fs$1.readFile(sessionFile, "utf-8");
78859
+ content = await fsPromises.readFile(sessionFile, "utf-8");
78860
78860
  } catch (err) {
78861
78861
  if (err?.code === "ENOENT") return {
78862
78862
  repaired: false,
@@ -78904,15 +78904,15 @@ async function repairSessionFileIfNeeded(params) {
78904
78904
  const backupPath = `${sessionFile}.bak-${process.pid}-${Date.now()}`;
78905
78905
  const tmpPath = `${sessionFile}.repair-${process.pid}-${Date.now()}.tmp`;
78906
78906
  try {
78907
- const stat = await fs$1.stat(sessionFile).catch(() => null);
78908
- await fs$1.writeFile(backupPath, content, "utf-8");
78909
- if (stat) await fs$1.chmod(backupPath, stat.mode);
78910
- await fs$1.writeFile(tmpPath, cleaned, "utf-8");
78911
- if (stat) await fs$1.chmod(tmpPath, stat.mode);
78912
- await fs$1.rename(tmpPath, sessionFile);
78907
+ const stat = await fsPromises.stat(sessionFile).catch(() => null);
78908
+ await fsPromises.writeFile(backupPath, content, "utf-8");
78909
+ if (stat) await fsPromises.chmod(backupPath, stat.mode);
78910
+ await fsPromises.writeFile(tmpPath, cleaned, "utf-8");
78911
+ if (stat) await fsPromises.chmod(tmpPath, stat.mode);
78912
+ await fsPromises.rename(tmpPath, sessionFile);
78913
78913
  } catch (err) {
78914
78914
  try {
78915
- await fs$1.unlink(tmpPath);
78915
+ await fsPromises.unlink(tmpPath);
78916
78916
  } catch (cleanupErr) {
78917
78917
  params.warn?.(`session file repair cleanup failed: ${cleanupErr instanceof Error ? cleanupErr.message : "unknown error"} (${path.basename(tmpPath)})`);
78918
78918
  }
@@ -80684,7 +80684,7 @@ async function prewarmSessionFile(sessionFile) {
80684
80684
  if (!isSessionManagerCacheEnabled()) return;
80685
80685
  if (isSessionManagerCached(sessionFile)) return;
80686
80686
  try {
80687
- const handle = await fs$1.open(sessionFile, "r");
80687
+ const handle = await fsPromises.open(sessionFile, "r");
80688
80688
  try {
80689
80689
  const buffer = Buffer$1.alloc(4096);
80690
80690
  await handle.read(buffer, 0, buffer.length, 0);
@@ -81051,7 +81051,7 @@ async function compactEmbeddedPiSessionDirect(params) {
81051
81051
  } catch (err) {
81052
81052
  return fail(describeUnknownError(err));
81053
81053
  }
81054
- await fs$1.mkdir(resolvedWorkspace, { recursive: true });
81054
+ await fsPromises.mkdir(resolvedWorkspace, { recursive: true });
81055
81055
  const sandboxSessionKey = params.sessionKey?.trim() || params.sessionId;
81056
81056
  const sandbox = await resolveSandboxContext({
81057
81057
  config: params.config,
@@ -81059,7 +81059,7 @@ async function compactEmbeddedPiSessionDirect(params) {
81059
81059
  workspaceDir: resolvedWorkspace
81060
81060
  });
81061
81061
  const effectiveWorkspace = sandbox?.enabled ? sandbox.workspaceAccess === "rw" ? resolvedWorkspace : sandbox.workspaceDir : resolvedWorkspace;
81062
- await fs$1.mkdir(effectiveWorkspace, { recursive: true });
81062
+ await fsPromises.mkdir(effectiveWorkspace, { recursive: true });
81063
81063
  await ensureSessionHeader({
81064
81064
  sessionFile: params.sessionFile,
81065
81065
  sessionId: params.sessionId,
@@ -81944,12 +81944,12 @@ function getQueuedFileWriter(writers, filePath) {
81944
81944
  const existing = writers.get(filePath);
81945
81945
  if (existing) return existing;
81946
81946
  const dir = path.dirname(filePath);
81947
- const ready = fs$1.mkdir(dir, { recursive: true }).catch(() => void 0);
81947
+ const ready = fsPromises.mkdir(dir, { recursive: true }).catch(() => void 0);
81948
81948
  let queue = Promise.resolve();
81949
81949
  const writer = {
81950
81950
  filePath,
81951
81951
  write: (line) => {
81952
- queue = queue.then(() => ready).then(() => fs$1.appendFile(filePath, line, "utf8")).catch(() => void 0);
81952
+ queue = queue.then(() => ready).then(() => fsPromises.appendFile(filePath, line, "utf8")).catch(() => void 0);
81953
81953
  }
81954
81954
  };
81955
81955
  writers.set(filePath, writer);
@@ -84867,7 +84867,7 @@ async function prepareSessionManagerForRun(params) {
84867
84867
  return;
84868
84868
  }
84869
84869
  if (params.hadSessionFile && header && !hasAssistant) {
84870
- await fs$1.writeFile(params.sessionFile, "", "utf-8");
84870
+ await fsPromises.writeFile(params.sessionFile, "", "utf-8");
84871
84871
  sm.fileEntries = [header];
84872
84872
  sm.byId?.clear?.();
84873
84873
  sm.labelsById?.clear?.();
@@ -85585,7 +85585,7 @@ async function runEmbeddedAttempt(params) {
85585
85585
  const prevCwd = process.cwd();
85586
85586
  const runAbortController = new AbortController();
85587
85587
  log$3.debug(`embedded run start: runId=${params.runId} sessionId=${params.sessionId} provider=${params.provider} model=${params.modelId} thinking=${params.thinkLevel} messageChannel=${params.messageChannel ?? params.messageProvider ?? "unknown"}`);
85588
- await fs$1.mkdir(resolvedWorkspace, { recursive: true });
85588
+ await fsPromises.mkdir(resolvedWorkspace, { recursive: true });
85589
85589
  const sandboxSessionKey = params.sessionKey?.trim() || params.sessionId;
85590
85590
  const sandbox = await resolveSandboxContext({
85591
85591
  config: params.config,
@@ -85593,7 +85593,7 @@ async function runEmbeddedAttempt(params) {
85593
85593
  workspaceDir: resolvedWorkspace
85594
85594
  });
85595
85595
  const effectiveWorkspace = sandbox?.enabled ? sandbox.workspaceAccess === "rw" ? resolvedWorkspace : sandbox.workspaceDir : resolvedWorkspace;
85596
- await fs$1.mkdir(effectiveWorkspace, { recursive: true });
85596
+ await fsPromises.mkdir(effectiveWorkspace, { recursive: true });
85597
85597
  let restoreSkillEnv;
85598
85598
  process.chdir(effectiveWorkspace);
85599
85599
  try {
@@ -85863,7 +85863,7 @@ async function runEmbeddedAttempt(params) {
85863
85863
  sessionFile: params.sessionFile,
85864
85864
  warn: (message) => log$3.warn(message)
85865
85865
  });
85866
- const hadSessionFile = await fs$1.stat(params.sessionFile).then(() => true).catch(() => false);
85866
+ const hadSessionFile = await fsPromises.stat(params.sessionFile).then(() => true).catch(() => false);
85867
85867
  const transcriptPolicy = resolveTranscriptPolicy({
85868
85868
  modelApi: params.model?.api,
85869
85869
  provider: params.provider,
@@ -86992,7 +86992,7 @@ async function runEmbeddedPiAgent(params) {
86992
86992
  const copilotAuthRetry = authRetryPending;
86993
86993
  authRetryPending = false;
86994
86994
  attemptedThinking.add(thinkLevel);
86995
- await fs$1.mkdir(resolvedWorkspace, { recursive: true });
86995
+ await fsPromises.mkdir(resolvedWorkspace, { recursive: true });
86996
86996
  const prompt = provider === "anthropic" ? scrubAnthropicRefusalMagic(params.prompt) : params.prompt;
86997
86997
  const attempt = await runEmbeddedAttempt({
86998
86998
  sessionId: params.sessionId,
@@ -87798,7 +87798,7 @@ const DEFAULT_SUBAGENT_ANNOUNCE_TIMEOUT_MS = 6e4;
87798
87798
  const MAX_TIMER_SAFE_TIMEOUT_MS = 2147e6;
87799
87799
  let subagentRegistryRuntimePromise = null;
87800
87800
  function loadSubagentRegistryRuntime() {
87801
- subagentRegistryRuntimePromise ??= import("./subagent-registry-runtime-DNx1w9Cr.js");
87801
+ subagentRegistryRuntimePromise ??= import("./subagent-registry-runtime-C0GbHEOo.js");
87802
87802
  return subagentRegistryRuntimePromise;
87803
87803
  }
87804
87804
  const DIRECT_ANNOUNCE_TRANSIENT_RETRY_DELAYS_MS = FAST_TEST_MODE ? [