squidclaw 3.0.24 → 3.0.26

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 (329) hide show
  1. package/dist/{accounts-BH9Qo1sQ.js → accounts-BK8I0Svb.js} +7 -7
  2. package/dist/{accounts-Cuwg9Tan.js → accounts-DeqNOvBo.js} +1 -1
  3. package/dist/{accounts-B1RxFghM.js → accounts-KzgPbLHP.js} +1 -1
  4. package/dist/{acp-cli-Ch55Vzud.js → acp-cli-BwG98FYT.js} +8 -8
  5. package/dist/{agent-scope-nEVgVklg.js → agent-scope-Cq4vDGrK.js} +17 -17
  6. package/dist/{agents-B-ig6ydU.js → agents-DXKtU4Il.js} +14 -14
  7. package/dist/{agents.config-w_Z6Fb4-.js → agents.config-BM-2SLCh.js} +2 -2
  8. package/dist/{api-key-rotation-JPmjv-c0.js → api-key-rotation-6i41mEc9.js} +1 -1
  9. package/dist/{audio-preflight-lT9iRnYi.js → audio-preflight-Bzo_zN4j.js} +4 -4
  10. package/dist/{audio-preflight-CZ--cSZh.js → audio-preflight-C-JCwUKe.js} +34 -34
  11. package/dist/{audio-transcription-runner-YiR1ym3a.js → audio-transcription-runner-Cp_lkLCv.js} +1 -1
  12. package/dist/{audio-transcription-runner-D-uxpkbd.js → audio-transcription-runner-DvQksGUE.js} +23 -23
  13. package/dist/{audit-JLT1FqTt.js → audit-DLTgNDFw.js} +29 -29
  14. package/dist/{auth-BlP9BwaD.js → auth-CuObxnC4.js} +1 -1
  15. package/dist/{auth-choice-Czu7271G.js → auth-choice-BVQQneHM.js} +13 -13
  16. package/dist/{auth-choice-ORZHjbsv.js → auth-choice-CXepQc7c.js} +11 -11
  17. package/dist/{auth-choice.apply-helpers-CdoXMtxm.js → auth-choice.apply-helpers-p1y_DmDT.js} +1 -1
  18. package/dist/{auth-profiles-9T4j6jMy.js → auth-profiles-CX4YYu7Z.js} +16 -16
  19. package/dist/{auth-token-BFc70pes.js → auth-token-Dlk7MMsC.js} +1 -1
  20. package/dist/{banner-CwNmI5G-.js → banner-DMfuBV69.js} +2 -2
  21. package/dist/{bonjour-discovery-eqJcK09r.js → bonjour-discovery-BHz2I6_W.js} +1 -1
  22. package/dist/{browser-cli-DCDPC5sg.js → browser-cli-Dvwk4zAD.js} +12 -12
  23. package/dist/build-info.json +3 -3
  24. package/dist/bundled/session-memory/handler.js +127 -12
  25. package/dist/{call-D7jOWSFr.js → call-BlWEBz99.js} +10 -10
  26. package/dist/{channel-account-context-DJ3rHgVO.js → channel-account-context-CQ6rCiGI.js} +5 -5
  27. package/dist/{channel-activity-wuB3-cfR.js → channel-activity-BZKeZQH-.js} +1 -1
  28. package/dist/{channel-options-BS7BSU_5.js → channel-options-CQ-gER0J.js} +3 -3
  29. package/dist/{channel-selection-CFWQq1nS.js → channel-selection-BqwS1Rlq.js} +1 -1
  30. package/dist/{channel-web-C1qYz-HK.js → channel-web-LLzBxZrT.js} +17 -17
  31. package/dist/{channels-cli-CVNqp5q7.js → channels-cli-D4xUEYYC.js} +93 -93
  32. package/dist/{channels-status-issues-Erzzhl2e.js → channels-status-issues-Dz1_R7Ah.js} +1 -1
  33. package/dist/{chrome-CuBHInKC.js → chrome-CZQnp4VH.js} +8 -8
  34. package/dist/{chrome-DiktJpMU.js → chrome-CoRiYsNu.js} +4 -4
  35. package/dist/{clawbot-cli-C3bt-FEP.js → clawbot-cli-2Zlim_pH.js} +11 -11
  36. package/dist/cli/daemon-cli.js +1 -1
  37. package/dist/{cli-Jyqv2jm8.js → cli-CAID9zkL.js} +73 -73
  38. package/dist/{client-COy24r9W.js → client-G9E5HGM2.js} +2 -2
  39. package/dist/{command-registry-DCojicSG.js → command-registry-AHS8_9da.js} +11 -11
  40. package/dist/{command-secret-targets-CZjP-Bm5.js → command-secret-targets-DAu5nw-j.js} +4 -4
  41. package/dist/{commands-DDHiW-As.js → commands-CnX9I_l4.js} +1 -1
  42. package/dist/{commands-registry--ITOJ-cM.js → commands-registry-_r_JONI4.js} +3 -3
  43. package/dist/{completion-cli-DCTv7Ejv.js → completion-cli-BR1r9_h4.js} +13 -13
  44. package/dist/{config-cli-CSPSSP_R.js → config-cli-D0A8Awoo.js} +7 -7
  45. package/dist/{config-guard-CFauJm79.js → config-guard-BHy2f0hU.js} +3 -3
  46. package/dist/{config-validation-Bt3LfFJ0.js → config-validation-BkvDORAk.js} +3 -3
  47. package/dist/{configure-DAol2gT6.js → configure-XmOqwwy9.js} +17 -17
  48. package/dist/{control-ui-assets-d6VtDSeo.js → control-ui-assets-BYEy341x.js} +1 -1
  49. package/dist/{cron-cli-yS1ww1k2.js → cron-cli-QwZcnjJc.js} +11 -11
  50. package/dist/{daemon-cli-B-yZvTqZ.js → daemon-cli-kJfDhzr8.js} +15 -15
  51. package/dist/{daemon-install-CbPLNiIP.js → daemon-install-Chxlu9Kv.js} +4 -4
  52. package/dist/{daemon-install-helpers-CZDVO_MU.js → daemon-install-helpers-CJtiW2RE.js} +11 -11
  53. package/dist/{deliver-6zfT7daI.js → deliver-B4WWPQvt.js} +1 -1
  54. package/dist/{deliver-D-IQEJ52.js → deliver-CL2RW5UB.js} +7 -7
  55. package/dist/deliver-runtime-C08pF1_3.js +61 -0
  56. package/dist/{deliver-runtime-MBexxUuG.js → deliver-runtime-CeE1X9si.js} +3 -3
  57. package/dist/deps-send-discord.runtime-r80y9aXF.js +36 -0
  58. package/dist/deps-send-imessage.runtime-BmocBgPM.js +35 -0
  59. package/dist/deps-send-signal.runtime-ByJt6qz-.js +34 -0
  60. package/dist/deps-send-slack.runtime-C3UUEG9J.js +32 -0
  61. package/dist/{deps-send-telegram.runtime-Irv0ky5l.js → deps-send-telegram.runtime-BHaZAs2h.js} +16 -16
  62. package/dist/{deps-send-whatsapp.runtime-CrxkfP31.js → deps-send-whatsapp.runtime-COv_qoD2.js} +7 -7
  63. package/dist/deps-send-whatsapp.runtime-__ogpmJj.js +119 -0
  64. package/dist/{devices-cli-CPgutgUT.js → devices-cli-DlQGTogF.js} +8 -8
  65. package/dist/{diagnostic-B4w80e4D.js → diagnostic-CLEtu0MC.js} +1 -1
  66. package/dist/{diagnostics-m7hHHbuE.js → diagnostics--O6mo6KH.js} +5 -5
  67. package/dist/{directory-cli-DqObADBL.js → directory-cli-K9qIwxYa.js} +7 -7
  68. package/dist/{dns-cli-CKbwsWBv.js → dns-cli-qtX-WNMF.js} +5 -5
  69. package/dist/{dock-W3cGg46W.js → dock-DJJAj46v.js} +4 -4
  70. package/dist/{docs-cli-BpZtes_j.js → docs-cli--gGxz79Z.js} +4 -4
  71. package/dist/{doctor-completion--7PR_Vqz.js → doctor-completion-CZoEdMS-.js} +2 -2
  72. package/dist/{doctor-config-flow-BDF7TR6O.js → doctor-config-flow-C-h3yV4z.js} +15 -15
  73. package/dist/{enable--Q7yLTZm.js → enable-C8FNY18p.js} +1 -1
  74. package/dist/entry.js +2 -2
  75. package/dist/{exec-approvals-allowlist-B9bcJkGP.js → exec-approvals-allowlist-CtSREgYh.js} +1 -1
  76. package/dist/{exec-approvals-cli-homtziYt.js → exec-approvals-cli-BmM4RpVn.js} +16 -16
  77. package/dist/{exec-safe-bin-runtime-policy-DECo77U6.js → exec-safe-bin-runtime-policy-CfQeDABF.js} +2 -2
  78. package/dist/extensionAPI.js +6 -6
  79. package/dist/{fetch-lq0SDLLE.js → fetch-CtoC2wgs.js} +3 -3
  80. package/dist/{fetch-guard-CbtWqa1E.js → fetch-guard-Dvzi3MjK.js} +1 -1
  81. package/dist/{plugin-sdk/fs-safe-Dqmpk-Fr.js → fs-safe-DPYj7h8A.js} +6 -6
  82. package/dist/{gateway-cli-B3oqskb4.js → gateway-cli-BJHBChfI.js} +153 -153
  83. package/dist/{gateway-rpc-BBBN9ZJk.js → gateway-rpc-D0AmaBzR.js} +1 -1
  84. package/dist/{health-CjXrJkCb.js → health-XFKFZ7ZJ.js} +11 -11
  85. package/dist/{hooks-cli--aKmd8c9.js → hooks-cli-CXsZK8H9.js} +81 -81
  86. package/dist/{hooks-status-BlgSVDvN.js → hooks-status-DMFBAUq8.js} +1 -1
  87. package/dist/{image-VgwN31FZ.js → image-DKkuLtZ4.js} +1 -1
  88. package/dist/{image-BcYt63Jx.js → image-DSWTfuxv.js} +5 -5
  89. package/dist/{image-ops-LFsSCTyI.js → image-ops-B2uuLIGD.js} +10 -10
  90. package/dist/{image-runtime-CwMuTYvd.js → image-runtime-BMavqm9n.js} +3 -3
  91. package/dist/image-runtime-cza2NTiZ.js +55 -0
  92. package/dist/{inspect-CzsXBsew.js → inspect-4c1uL0x5.js} +4 -4
  93. package/dist/{install-safe-path-DqI19VEv.js → install-safe-path-3muwy3fu.js} +25 -25
  94. package/dist/{installs-P-pYAJm1.js → installs-BiQDtPF0.js} +9 -9
  95. package/dist/{ipv4-B95173MB.js → ipv4-sHllwvAI.js} +1 -1
  96. package/dist/{ir-C7He5vmn.js → ir-BukzlgSp.js} +8 -8
  97. package/dist/{issue-format-CbTfB8Hy.js → issue-format-DCcINW-9.js} +1 -1
  98. package/dist/{json-files-rR19q30D.js → json-files-CuJjdF_0.js} +8 -8
  99. package/dist/{lifecycle-core-ChKClWdw.js → lifecycle-core-CqFEhwHn.js} +5 -5
  100. package/dist/{login-qr-CX0rs3A6.js → login-qr-B8P_EAd-.js} +6 -6
  101. package/dist/{login-CjzRATwO.js → login-zoeewfBu.js} +3 -3
  102. package/dist/{logs-cli-DvHsw1WZ.js → logs-cli-D30BUN6y.js} +9 -9
  103. package/dist/{manager-BVfTfggO.js → manager-5OzUkYLf.js} +14 -14
  104. package/dist/{manager-runtime-BXJJSlzC.js → manager-runtime-BxXpVt3x.js} +9 -9
  105. package/dist/{manifest-registry-1ACGW3OR.js → manifest-registry-7kwtbCH-.js} +1 -1
  106. package/dist/{memory-cli-u8eyO3Ec.js → memory-cli-Dj8tyFtt.js} +12 -12
  107. package/dist/{model-D7hZpWTB.js → model-B8p-EsdJ.js} +2 -2
  108. package/dist/{model-catalog-Drh9Rois.js → model-catalog-BWuvEv1x.js} +3 -3
  109. package/dist/{model-picker-DK_vvKCV.js → model-picker-CLhaaagi.js} +4 -4
  110. package/dist/{models-CFXLX9IF.js → models-5VXwJBU2.js} +17 -17
  111. package/dist/{models-cli-PHQyKESa.js → models-cli-Br56IHfy.js} +78 -78
  112. package/dist/{models-config-DAastTau.js → models-config-poV-4Xlx.js} +6 -6
  113. package/dist/{net-CIh5ellr.js → net-CCnbGop3.js} +2 -2
  114. package/dist/{node-cli-o9qcU9GJ.js → node-cli-C8hvYquX.js} +33 -33
  115. package/dist/{node-command-policy-BeTSnoyk.js → node-command-policy-B_D5ucTj.js} +1 -1
  116. package/dist/{node-service-OVe0_CIs.js → node-service-Z0JprJda.js} +1 -1
  117. package/dist/{nodes-cli-kGx_Qa3c.js → nodes-cli-IIc8fTKT.js} +16 -16
  118. package/dist/{nodes-screen-BrMJzhot.js → nodes-screen-DFFmbaXE.js} +7 -7
  119. package/dist/{npm-pack-install-Dn3FiWXB.js → npm-pack-install-B887us7R.js} +18 -18
  120. package/dist/{npm-resolution-ky_uAlXE.js → npm-resolution-CKtyq4FH.js} +4 -4
  121. package/dist/{onboard-channels-oJCC_sJX.js → onboard-channels-_kVo3Apf.js} +21 -21
  122. package/dist/{onboard-custom-CRpsaM3g.js → onboard-custom-CZtjqrY7.js} +4 -4
  123. package/dist/{onboard-helpers-DwEZeaoe.js → onboard-helpers-BP429__H.js} +10 -10
  124. package/dist/{onboard-hooks-DyxckB2C.js → onboard-hooks-CTbjgLDl.js} +4 -4
  125. package/dist/{onboard-D1Qy64JK.js → onboard-lFwpCpC3.js} +6 -6
  126. package/dist/{onboard-remote-ZgpWNq9Z.js → onboard-remote-BlZB0AE9.js} +4 -4
  127. package/dist/{onboard-skills-DEijVfCg.js → onboard-skills-BT2YOXeP.js} +4 -4
  128. package/dist/{onboarding-Mxqy4O1E.js → onboarding-EEd_g8Zg.js} +14 -14
  129. package/dist/{onboarding.finalize-DiOMx6A5.js → onboarding.finalize-Cs1ukjFN.js} +90 -90
  130. package/dist/{onboarding.gateway-config-9wkBCzzO.js → onboarding.gateway-config-C6N8r5Is.js} +18 -18
  131. package/dist/{onboarding.secret-input-DRnoQSlI.js → onboarding.secret-input-BTK1IG-J.js} +1 -1
  132. package/dist/{openai-model-default-DqE4bNtd.js → openai-model-default-COzeuAI4.js} +2 -2
  133. package/dist/{outbound-CwzUo-rx.js → outbound-B7m9Vcd2.js} +3 -3
  134. package/dist/{outbound-attachment-Bedqixj2.js → outbound-attachment-fdEhzyl9.js} +2 -2
  135. package/dist/{pairing-cli-CsYP0at7.js → pairing-cli-NhoRKes6.js} +8 -8
  136. package/dist/{pairing-labels-CX4CtqRa.js → pairing-labels-CnTvFrUT.js} +1 -1
  137. package/dist/{pairing-store-BC4mnG9S.js → pairing-store-D0eOXyby.js} +3 -3
  138. package/dist/{plugin-sdk/path-alias-guards-gBhrAn14.js → path-alias-guards-vfYYQFIg.js} +1 -1
  139. package/dist/{path-safety-D7CjFQvf.js → path-safety-C95DzArw.js} +1 -1
  140. package/dist/{paths-D6mnO6Ni.js → paths-DfuVHiHu.js} +9 -9
  141. package/dist/{pi-embedded-BN8fghaF.js → pi-embedded-BR5y0dLa.js} +24 -24
  142. package/dist/{pi-embedded-helpers-A9VYPVCH.js → pi-embedded-helpers-CEHpGDRs.js} +3 -3
  143. package/dist/{pi-embedded-helpers-DtCOZSv-.js → pi-embedded-helpers-qCAK_a65.js} +6 -6
  144. package/dist/{pi-model-discovery-Cr1q2cJt.js → pi-model-discovery-CKUePiDc.js} +1 -1
  145. package/dist/{pi-model-discovery-runtime-BHmdAKBK.js → pi-model-discovery-runtime-CNLKih0w.js} +5 -5
  146. package/dist/{pi-tools.before-tool-call.runtime-duKHqrMc.js → pi-tools.before-tool-call.runtime-Bba7rXQq.js} +5 -5
  147. package/dist/{pi-tools.policy-D3RA94WF.js → pi-tools.policy-BwWnFLLV.js} +5 -5
  148. package/dist/{plugin-auto-enable-a3TK3OPT.js → plugin-auto-enable-DJkHW_LG.js} +3 -3
  149. package/dist/{plugin-registry-CFqqDqQV.js → plugin-registry-D3PnPE1D.js} +3 -3
  150. package/dist/plugin-sdk/discord.js +6 -6
  151. package/dist/plugin-sdk/index.js +50 -50
  152. package/dist/plugin-sdk/mattermost.js +3 -3
  153. package/dist/plugin-sdk/signal.js +2 -2
  154. package/dist/{plugins-Bc7YM9X-.js → plugins-BDTkSIi7.js} +2 -2
  155. package/dist/{plugins-cli-vQi8tFye.js → plugins-cli-BA_2daJe.js} +83 -83
  156. package/dist/{ports-DMeUt80n.js → ports-0jLyYbvQ.js} +2 -2
  157. package/dist/{ports-BzfeaNjw.js → ports-Be82TlEg.js} +1 -1
  158. package/dist/{program-Nott_VTb.js → program-D_xdLzmM.js} +81 -81
  159. package/dist/{prompt-select-styled-7mnlZgrQ.js → prompt-select-styled-BsheNEnh.js} +40 -40
  160. package/dist/{provider-auth-helpers-_77rN3Zc.js → provider-auth-helpers-B5kD4Lt6.js} +5 -5
  161. package/dist/{proxy-env-BiKHVg2h.js → proxy-env-CQTuxZoS.js} +1 -1
  162. package/dist/{push-apns-Ce1zzNYB.js → push-apns-BbenjEX4.js} +5 -5
  163. package/dist/{pw-ai-CM87tQwG.js → pw-ai-Du22SYoO.js} +1 -1
  164. package/dist/{pw-ai-CAhTwexx.js → pw-ai-wo5t_KO_.js} +18 -18
  165. package/dist/{plugin-sdk/qmd-manager-6bozlfFg.js → qmd-manager-BkSWV1Q1.js} +17 -11
  166. package/dist/{qr-cli-DzjBpGix.js → qr-cli-DSMYIp-D.js} +2 -2
  167. package/dist/{query-expansion-C0HUJbRn.js → query-expansion-DI9INxTg.js} +12 -12
  168. package/dist/{redact-snapshot-C0McNGqh.js → redact-snapshot-B2YFI3cO.js} +1 -1
  169. package/dist/{register.agent-DtjNdvUh.js → register.agent-Dk_5V5oA.js} +94 -94
  170. package/dist/register.configure-C8OFfGln.js +165 -0
  171. package/dist/{register.maintenance-DERKsSgi.js → register.maintenance-CluQOq8b.js} +95 -95
  172. package/dist/{register.message-DkYxt6gZ.js → register.message-BCTXT5yK.js} +74 -74
  173. package/dist/{register.onboard-BtfW83M0.js → register.onboard-C64oXnvq.js} +18 -18
  174. package/dist/{register.setup-Ba9gMkRk.js → register.setup-Dl3nk2Ui.js} +21 -21
  175. package/dist/{register.status-health-sessions-BILdpWJV.js → register.status-health-sessions-BHtbPeCO.js} +88 -88
  176. package/dist/{register.subclis-Dfm_Zu31.js → register.subclis-CDMFyaKR.js} +31 -31
  177. package/dist/{rpc-mau2U4RG.js → rpc-DA9IhLVG.js} +1 -1
  178. package/dist/{run-main-BF7ybLIy.js → run-main-BcA22Ipv.js} +93 -93
  179. package/dist/{runtime-Bcmv4Epp.js → runtime-BnbzNRr6.js} +3 -3
  180. package/dist/{runtime-config-collectors-Bsjz4isf.js → runtime-config-collectors-CXJdhHRo.js} +1 -1
  181. package/dist/{runtime-whatsapp-login.runtime-COUEKxmy.js → runtime-whatsapp-login.runtime-DRoK8G8H.js} +7 -7
  182. package/dist/{runtime-whatsapp-outbound.runtime-BaWH6-ns.js → runtime-whatsapp-outbound.runtime-C9OiwkWh.js} +15 -15
  183. package/dist/{sandbox-ixDhkfHu.js → sandbox-C3TbYIHd.js} +18 -18
  184. package/dist/{sandbox-cli-DOxm7fjR.js → sandbox-cli-BwK2slfh.js} +25 -25
  185. package/dist/{secrets-cli-DvXznMUb.js → secrets-cli-Beu2lcrf.js} +11 -11
  186. package/dist/{security-cli-3WOXvJR-.js → security-cli-CcpKH_lC.js} +42 -42
  187. package/dist/{send-BuBTLRMz.js → send-CLI3CiQv.js} +6 -6
  188. package/dist/{send-Do2preUU.js → send-DEs83M9V.js} +11 -11
  189. package/dist/{send-BPgrWmUX.js → send-EVcbFVqn.js} +5 -5
  190. package/dist/{send-BVyLW1cn.js → send-RDqyJwZx.js} +8 -8
  191. package/dist/{send-BpkluEZ5.js → send-z-sMjqvX.js} +4 -4
  192. package/dist/{server-DMAPnkgM.js → server-Bm-IxvZZ.js} +20 -20
  193. package/dist/{server-context-Dd8UynDU.js → server-context-Dw_4lGoI.js} +12 -12
  194. package/dist/{server-lifecycle-BEZ2jsQ6.js → server-lifecycle-DYgHYif9.js} +2 -2
  195. package/dist/{server-middleware-B_LyQkOL.js → server-middleware-BVAEuQs7.js} +1 -1
  196. package/dist/{server-node-events-dr5CaM3M.js → server-node-events-Q0cT2ifj.js} +74 -74
  197. package/dist/{service-B5T42CWZ.js → service-DSqxS6_D.js} +15 -15
  198. package/dist/{session-eXSdl5mb.js → session-D0jodcgT.js} +1 -1
  199. package/dist/{session-utils-D12gSo5W.js → session-utils-XY6JwRhT.js} +6 -6
  200. package/dist/{sessions-DgnXAQCc.js → sessions-BWptzMw0.js} +15 -15
  201. package/dist/{sessions-C16G7L5c.js → sessions-CMqv9JEu.js} +4 -4
  202. package/dist/{shared-BYny1RCF.js → shared-BbVxcRzb.js} +3 -3
  203. package/dist/{shared-By6_qr_R.js → shared-D5DTxBPH.js} +1 -1
  204. package/dist/{skill-commands-BcigmiOW.js → skill-commands-fU-Mejn9.js} +5 -5
  205. package/dist/{skill-scanner--QKHR8U0.js → skill-scanner-CvS725eQ.js} +6 -6
  206. package/dist/{skills-EwyaIyKC.js → skills-C85azDXm.js} +3 -3
  207. package/dist/{skills-cli-CqEjN0Yj.js → skills-cli-ZXx6BNar.js} +5 -5
  208. package/dist/{skills-install-CXVKvhIE.js → skills-install-KD6dzNoZ.js} +6 -6
  209. package/dist/{skills-status-Bv8Xt7Lc.js → skills-status-DkO7rxE8.js} +1 -1
  210. package/dist/{slash-commands.runtime-Bi99B_EP.js → slash-commands.runtime-CPlXJtuM.js} +11 -11
  211. package/dist/slash-dispatch.runtime-BOMEVFk0.js +114 -0
  212. package/dist/{slash-dispatch.runtime-sXaUYn4v.js → slash-dispatch.runtime-BcecLKcJ.js} +6 -6
  213. package/dist/{slash-skill-commands.runtime-DOXmvOtU.js → slash-skill-commands.runtime-Cnfq_5LN.js} +15 -15
  214. package/dist/{squidclaw-root-JXyRbQLJ.js → squidclaw-root-BQfLymzj.js} +8 -8
  215. package/dist/{status-Dnl-Um1D.js → status-cU9cJReo.js} +27 -27
  216. package/dist/{status.update-BGIm6we4.js → status.update-CiLU9RPF.js} +2 -2
  217. package/dist/{store-BTkIx401.js → store-BEIcnlgx.js} +5 -5
  218. package/dist/{subagent-registry-CQA6P2FO.js → subagent-registry-CIgFD2oi.js} +149 -149
  219. package/dist/{subagent-registry-runtime-232sNNT6.js → subagent-registry-runtime-Cq9I6PwW.js} +6 -6
  220. package/dist/subagent-registry-runtime-DGTjU9Lb.js +114 -0
  221. package/dist/{system-cli-CJAQxYHv.js → system-cli-i1FWZDjn.js} +9 -9
  222. package/dist/{system-run-command-BaSqmSwR.js → system-run-command-COqCNIBg.js} +1 -1
  223. package/dist/{systemd-B86VePXs.js → systemd-Cj2cX_ZP.js} +9 -9
  224. package/dist/{systemd-hints-BmFWZu_j.js → systemd-hints-46PqJfaq.js} +6 -6
  225. package/dist/{systemd-linger-w7fvBU-1.js → systemd-linger-6Jd9K5p2.js} +1 -1
  226. package/dist/{tables-CGh4CW_h.js → tables-CIpKClDV.js} +1 -1
  227. package/dist/{tailnet-DJq7Mi1o.js → tailnet-CZANZjq6.js} +1 -1
  228. package/dist/{plugin-sdk/target-errors-jlLHihbX.js → target-errors-CRQlPF1u.js} +2 -2
  229. package/dist/{tool-images-D6mmxuWS.js → tool-images-CyzWvDUu.js} +1 -1
  230. package/dist/{tui-BbcmzKaA.js → tui-CC_AbfZr.js} +6 -6
  231. package/dist/{tui-cli-Dv3jSm3x.js → tui-cli-DiJ7zKUD.js} +32 -32
  232. package/dist/{update-BhRrb6BI.js → update-1JhjCqjy.js} +3 -3
  233. package/dist/{update-cli-Oe0fP8x9.js → update-cli-DM_dUip_.js} +104 -104
  234. package/dist/{update-runner-DdA6xBa9.js → update-runner-BBJZmfZ4.js} +16 -16
  235. package/dist/{web-Chw1dtKA.js → web-CWxO_flK.js} +6 -6
  236. package/dist/web-CZhZC1EA.js +118 -0
  237. package/dist/{webhooks-cli-CJLug1QH.js → webhooks-cli-CzDd8ikc.js} +6 -6
  238. package/dist/{whatsapp-actions-_ca5OtHq.js → whatsapp-actions-MR_bBjXO.js} +17 -17
  239. package/dist/{with-timeout-CFfRudNc.js → with-timeout-BZ_Teugb.js} +3 -3
  240. package/dist/{workspace-BbO-M3Jv.js → workspace-D5vNjk5G.js} +1 -1
  241. package/dist/{workspace-dirs-D8D-Ghcl.js → workspace-dirs-CjMIsQti.js} +1 -1
  242. package/dist/{wsl-CsGe5QCP.js → wsl-CvQfS6aU.js} +2 -2
  243. package/package.json +1 -1
  244. package/dist/deliver-runtime-zICm26tE.js +0 -61
  245. package/dist/deps-send-discord.runtime-C_9HZQko.js +0 -36
  246. package/dist/deps-send-imessage.runtime-BMhGsWds.js +0 -35
  247. package/dist/deps-send-signal.runtime-BGhjYiu6.js +0 -34
  248. package/dist/deps-send-slack.runtime-DjBCu-RX.js +0 -32
  249. package/dist/deps-send-whatsapp.runtime-CU257URT.js +0 -119
  250. package/dist/fs-safe-BPQ-per2.js +0 -352
  251. package/dist/image-runtime-Cxoxcx04.js +0 -55
  252. package/dist/path-alias-guards-DeOVetT7.js +0 -43
  253. package/dist/plugin-sdk/accounts-CUEuUR3C.js +0 -46
  254. package/dist/plugin-sdk/accounts-D0W2pELU.js +0 -288
  255. package/dist/plugin-sdk/accounts-ucj0odJq.js +0 -35
  256. package/dist/plugin-sdk/active-listener-BO7eBEG_.js +0 -50
  257. package/dist/plugin-sdk/api-key-rotation-C4C_mDsg.js +0 -181
  258. package/dist/plugin-sdk/audio-preflight-Cqdo0JKm.js +0 -69
  259. package/dist/plugin-sdk/audio-transcription-runner-DnEooIyE.js +0 -2176
  260. package/dist/plugin-sdk/audit-membership-runtime-B9b-zRwg.js +0 -58
  261. package/dist/plugin-sdk/channel-activity-BMWLw4o2.js +0 -94
  262. package/dist/plugin-sdk/channel-web-B8bj7MB9.js +0 -2256
  263. package/dist/plugin-sdk/chrome-CV-q0Lmc.js +0 -2415
  264. package/dist/plugin-sdk/commands-registry-e7YoqrbP.js +0 -1125
  265. package/dist/plugin-sdk/config-B2B64aX0.js +0 -17911
  266. package/dist/plugin-sdk/deliver-BkyBtcLR.js +0 -1694
  267. package/dist/plugin-sdk/deliver-runtime-O4lwAWMw.js +0 -32
  268. package/dist/plugin-sdk/deps-send-discord.runtime-BAeeBldY.js +0 -23
  269. package/dist/plugin-sdk/deps-send-imessage.runtime-EL-CfikZ.js +0 -22
  270. package/dist/plugin-sdk/deps-send-signal.runtime-BeemHeUu.js +0 -21
  271. package/dist/plugin-sdk/deps-send-slack.runtime-DTttkC0N.js +0 -19
  272. package/dist/plugin-sdk/deps-send-telegram.runtime-Dsf9Cnka.js +0 -24
  273. package/dist/plugin-sdk/deps-send-whatsapp.runtime-DvdFo6lj.js +0 -57
  274. package/dist/plugin-sdk/diagnostic-DPRVoKTk.js +0 -319
  275. package/dist/plugin-sdk/errors-B8oJXuCF.js +0 -54
  276. package/dist/plugin-sdk/fetch-guard-F0Fnqisy.js +0 -156
  277. package/dist/plugin-sdk/image-cBW8L8pp.js +0 -2310
  278. package/dist/plugin-sdk/image-ops-BP8ix1GC.js +0 -584
  279. package/dist/plugin-sdk/image-runtime-9xkgSlNz.js +0 -25
  280. package/dist/plugin-sdk/ir-DWEc6zOp.js +0 -1296
  281. package/dist/plugin-sdk/local-roots-BIPT8uAO.js +0 -186
  282. package/dist/plugin-sdk/logger-DDdrdbDu.js +0 -1163
  283. package/dist/plugin-sdk/login-BMTiGutN.js +0 -57
  284. package/dist/plugin-sdk/login-qr-BFxqYUkc.js +0 -320
  285. package/dist/plugin-sdk/manager-BD-aYaZ8.js +0 -3917
  286. package/dist/plugin-sdk/manager-runtime-C5bRwUlz.js +0 -15
  287. package/dist/plugin-sdk/outbound-Bm07xvO6.js +0 -212
  288. package/dist/plugin-sdk/outbound-attachment-DLsaxDsc.js +0 -19
  289. package/dist/plugin-sdk/paths-C6W4VHoa.js +0 -166
  290. package/dist/plugin-sdk/pi-embedded-helpers-BExwPvTh.js +0 -9627
  291. package/dist/plugin-sdk/pi-model-discovery-DdctvBeX.js +0 -134
  292. package/dist/plugin-sdk/pi-model-discovery-runtime-DrtpLJjk.js +0 -8
  293. package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-rgTz3FBl.js +0 -354
  294. package/dist/plugin-sdk/plugins-BN64HHZA.js +0 -864
  295. package/dist/plugin-sdk/proxy-fetch-ZPEvp58f.js +0 -38
  296. package/dist/plugin-sdk/pw-ai-DBm3RdBK.js +0 -1938
  297. package/dist/plugin-sdk/query-expansion-eeVz_aEm.js +0 -1011
  298. package/dist/plugin-sdk/redact-BoNEjbpF.js +0 -319
  299. package/dist/plugin-sdk/reply-Bp49JV3f.js +0 -98828
  300. package/dist/plugin-sdk/resolve-outbound-target-DXfjGlZQ.js +0 -40
  301. package/dist/plugin-sdk/run-with-concurrency-5DMu9szx.js +0 -1994
  302. package/dist/plugin-sdk/runtime-whatsapp-login.runtime-D2hkJBa-.js +0 -10
  303. package/dist/plugin-sdk/runtime-whatsapp-outbound.runtime-C06I4adi.js +0 -19
  304. package/dist/plugin-sdk/send-B9xnwtQ-.js +0 -540
  305. package/dist/plugin-sdk/send-BxySs-Cu.js +0 -2587
  306. package/dist/plugin-sdk/send-D9THKp_J.js +0 -414
  307. package/dist/plugin-sdk/send-DCuaaP2w.js +0 -503
  308. package/dist/plugin-sdk/send-Dm_-_xje.js +0 -3135
  309. package/dist/plugin-sdk/session-DDzIZHxt.js +0 -169
  310. package/dist/plugin-sdk/skill-commands-DRvqtuFC.js +0 -342
  311. package/dist/plugin-sdk/skills-BWwlfbVj.js +0 -1428
  312. package/dist/plugin-sdk/slash-commands.runtime-BzYsaTST.js +0 -13
  313. package/dist/plugin-sdk/slash-dispatch.runtime-Cty8EAD9.js +0 -52
  314. package/dist/plugin-sdk/slash-skill-commands.runtime-sg98L8BK.js +0 -16
  315. package/dist/plugin-sdk/ssrf-DOBwjFow.js +0 -202
  316. package/dist/plugin-sdk/store-BKDR_-Qk.js +0 -81
  317. package/dist/plugin-sdk/subagent-registry-runtime-Dz50ieim.js +0 -52
  318. package/dist/plugin-sdk/tables-GIj79us5.js +0 -55
  319. package/dist/plugin-sdk/thinking-BgdUnMZ2.js +0 -1206
  320. package/dist/plugin-sdk/tokens-CTIYTLWu.js +0 -52
  321. package/dist/plugin-sdk/tool-images-GSlvf6RP.js +0 -274
  322. package/dist/plugin-sdk/web-BK9mCTAc.js +0 -56
  323. package/dist/plugin-sdk/whatsapp-actions-DQpK_5Ds.js +0 -80
  324. package/dist/qmd-manager-BsL_hcOB.js +0 -1454
  325. package/dist/register.configure-BkwbM-hb.js +0 -165
  326. package/dist/slash-dispatch.runtime-reuPLnse.js +0 -114
  327. package/dist/subagent-registry-runtime-CqgIWcSl.js +0 -114
  328. package/dist/target-errors-C_rnMuJ2.js +0 -195
  329. package/dist/web-w04Gvwqi.js +0 -118
@@ -3,12 +3,12 @@ import { g as resolveStateDir, i as isNixMode, l as resolveGatewayLockDir, o as
3
3
  import { a as setConsoleSubsystemFilter, d as defaultRuntime, n as runtimeForLogger, o as setConsoleTimestampPrefix, t as createSubsystemLogger } from "./subsystem-Bw5n50gj.js";
4
4
  import "./boolean-DtWR5bt3.js";
5
5
  import { i as logAcceptedEnvOption, r as isTruthyEnvValue } from "./entry.js";
6
- import { At as AVATAR_MAX_BYTES, B as parseConfigJson5, Bn as buildTalkConfigResponse, Dn as applyMergePatch, Dr as resolveDefaultModelForAgent, Er as resolveConfiguredModelRef, Fi as DEFAULT_CONTEXT_TOKENS, G as writeConfigFile, H as readConfigFileSnapshotForWrite, Hn as resolveAgentMaxConcurrent, I as migrateLegacyConfig, Ii as DEFAULT_MODEL, K as validateConfigObjectWithPlugins, Li as DEFAULT_PROVIDER, Lt as looksLikeAvatarPath, Mt as isAvatarHttpUrl, Nr as resolveThinkingDefault, Nt as isAvatarImageDataUrl, On as applyLegacyMigrations, Or as resolveHooksGmailModel, R as createConfigIO, U as resolveConfigSnapshotHash, Un as resolveSubagentMaxConcurrent, V as readConfigFileSnapshot, dr as isPidAlive, fr as buildAllowedModelSet, gr as getModelRefStatus, ji as normalizeSecretInput, jr as resolveSubagentConfiguredModelSelection, kn as ensureControlUiAllowedOriginsForNonLoopbackBind, mt as parseByteSize, pt as parseDurationMs, q as SquidClawSchema, vr as isCliProvider, wr as resolveAllowedModelRef, xr as normalizeModelSelection, z as loadConfig } from "./auth-profiles-9T4j6jMy.js";
6
+ import { At as AVATAR_MAX_BYTES, B as parseConfigJson5, Bn as buildTalkConfigResponse, Dn as applyMergePatch, Dr as resolveDefaultModelForAgent, Er as resolveConfiguredModelRef, Fi as DEFAULT_CONTEXT_TOKENS, G as writeConfigFile, H as readConfigFileSnapshotForWrite, Hn as resolveAgentMaxConcurrent, I as migrateLegacyConfig, Ii as DEFAULT_MODEL, K as validateConfigObjectWithPlugins, Li as DEFAULT_PROVIDER, Lt as looksLikeAvatarPath, Mt as isAvatarHttpUrl, Nr as resolveThinkingDefault, Nt as isAvatarImageDataUrl, On as applyLegacyMigrations, Or as resolveHooksGmailModel, R as createConfigIO, U as resolveConfigSnapshotHash, Un as resolveSubagentMaxConcurrent, V as readConfigFileSnapshot, dr as isPidAlive, fr as buildAllowedModelSet, gr as getModelRefStatus, ji as normalizeSecretInput, jr as resolveSubagentConfiguredModelSelection, kn as ensureControlUiAllowedOriginsForNonLoopbackBind, mt as parseByteSize, pt as parseDurationMs, q as SquidClawSchema, vr as isCliProvider, wr as resolveAllowedModelRef, xr as normalizeModelSelection, z as loadConfig } from "./auth-profiles-CX4YYu7Z.js";
7
7
  import { t as formatCliCommand } from "./command-format-D8-lYArk.js";
8
- import { A as resolveDefaultAgentWorkspaceDir, C as DEFAULT_SOUL_FILENAME, E as ensureAgentWorkspace, O as isWorkspaceOnboardingCompleted, S as DEFAULT_MEMORY_FILENAME, T as DEFAULT_USER_FILENAME, a as resolveAgentDir, b as DEFAULT_IDENTITY_FILENAME, c as resolveAgentModelFallbacksOverride, d as resolveDefaultAgentId, g as DEFAULT_AGENTS_FILENAME, i as resolveAgentConfig, j as resolveWorkspaceTemplateDir, l as resolveAgentSkillsFilter, m as resolveSessionAgentId, n as listAgentEntries, r as listAgentIds, u as resolveAgentWorkspaceDir, v as DEFAULT_BOOTSTRAP_FILENAME, w as DEFAULT_TOOLS_FILENAME, x as DEFAULT_MEMORY_ALT_FILENAME, y as DEFAULT_HEARTBEAT_FILENAME } from "./agent-scope-nEVgVklg.js";
8
+ import { A as resolveDefaultAgentWorkspaceDir, C as DEFAULT_SOUL_FILENAME, E as ensureAgentWorkspace, O as isWorkspaceOnboardingCompleted, S as DEFAULT_MEMORY_FILENAME, T as DEFAULT_USER_FILENAME, a as resolveAgentDir, b as DEFAULT_IDENTITY_FILENAME, c as resolveAgentModelFallbacksOverride, d as resolveDefaultAgentId, g as DEFAULT_AGENTS_FILENAME, i as resolveAgentConfig, j as resolveWorkspaceTemplateDir, l as resolveAgentSkillsFilter, m as resolveSessionAgentId, n as listAgentEntries, r as listAgentIds, u as resolveAgentWorkspaceDir, v as DEFAULT_BOOTSTRAP_FILENAME, w as DEFAULT_TOOLS_FILENAME, x as DEFAULT_MEMORY_ALT_FILENAME, y as DEFAULT_HEARTBEAT_FILENAME } from "./agent-scope-Cq4vDGrK.js";
9
9
  import { C as isCronRunSessionKey, E as parseAgentSessionKey, T as isSubagentSessionKey, _ as normalizeAccountId$1, c as normalizeAgentId, g as DEFAULT_ACCOUNT_ID, h as toAgentStoreSessionKey, l as normalizeMainKey, m as toAgentRequestSessionKey, o as classifySessionKeyShape, r as buildAgentMainSessionKey, t as DEFAULT_AGENT_ID, u as resolveAgentIdFromSessionKey } from "./session-key-k6urs9r-.js";
10
10
  import { E as isPlainObject, S as sleep, T as truncateUtf16Safe, n as clamp, s as ensureDir, v as resolveUserPath, x as shortenHomePath } from "./utils-D6vohX1h.js";
11
- import { a as openBoundaryFileSync, f as isNotFoundPathError, g as matchesSkillFilter, i as openBoundaryFile, o as openVerifiedFileSync, s as sameFileIdentity, t as resolveSquidClawPackageRoot } from "./squidclaw-root-JXyRbQLJ.js";
11
+ import { a as openBoundaryFileSync, f as isNotFoundPathError, g as matchesSkillFilter, i as openBoundaryFile, o as openVerifiedFileSync, s as sameFileIdentity, t as resolveSquidClawPackageRoot } from "./squidclaw-root-BQfLymzj.js";
12
12
  import { i as logWarn, t as logDebug } from "./logger-DL3N22PJ.js";
13
13
  import { n as runExec, t as runCommandWithTimeout } from "./exec-TSiqsZw1.js";
14
14
  import { C as clearInternalHooks, E as triggerInternalHook, T as registerInternalHook, h as createEmptyPluginRegistry, t as CHANNEL_IDS, u as getActivePluginRegistry, w as createInternalHookEvent } from "./registry-BXcl3IkC.js";
@@ -16,105 +16,105 @@ import "./github-copilot-token-CxitgiZA.js";
16
16
  import "./host-env-security-lcjXF83D.js";
17
17
  import { n as resolveRuntimeServiceVersion, t as VERSION } from "./version-3so140Zi.js";
18
18
  import "./env-vars-mSSOl7Rv.js";
19
- import { u as isTestDefaultMemorySlotDisabled } from "./manifest-registry-1ACGW3OR.js";
20
- import "./dock-W3cGg46W.js";
21
- import "./model-D7hZpWTB.js";
22
- import "./pi-model-discovery-Cr1q2cJt.js";
23
- import { d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, m as isDiagnosticsEnabled } from "./diagnostic-B4w80e4D.js";
19
+ import { u as isTestDefaultMemorySlotDisabled } from "./manifest-registry-7kwtbCH-.js";
20
+ import "./dock-DJJAj46v.js";
21
+ import "./model-B8p-EsdJ.js";
22
+ import "./pi-model-discovery-CKUePiDc.js";
23
+ import { d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, m as isDiagnosticsEnabled } from "./diagnostic-CLEtu0MC.js";
24
24
  import { d as hasBinary } from "./frontmatter-CFoRh1fy.js";
25
- import { i as loadWorkspaceSkillEntries, r as buildWorkspaceSkillSnapshot } from "./skills-EwyaIyKC.js";
26
- import { n as assertNoPathAliasEscape } from "./path-alias-guards-DeOVetT7.js";
27
- import { t as buildWorkspaceSkillStatus } from "./skills-status-Bv8Xt7Lc.js";
25
+ import { i as loadWorkspaceSkillEntries, r as buildWorkspaceSkillSnapshot } from "./skills-C85azDXm.js";
26
+ import { n as assertNoPathAliasEscape } from "./path-alias-guards-vfYYQFIg.js";
27
+ import { t as buildWorkspaceSkillStatus } from "./skills-status-DkO7rxE8.js";
28
28
  import { _ as normalizeGatewayClientMode, f as GATEWAY_CLIENT_CAPS, g as hasGatewayClientCap, h as GATEWAY_CLIENT_NAMES, i as isGatewayMessageChannel, l as normalizeMessageChannel, m as GATEWAY_CLIENT_MODES, n as isDeliverableMessageChannel, p as GATEWAY_CLIENT_IDS, r as isGatewayCliClient, s as isWebchatClient, t as INTERNAL_MESSAGE_CHANNEL } from "./message-channel-DqvtYF2o.js";
29
- import { $ as resolveAgentMainSessionKey, A as readSessionPreviewItemsFromTranscript, B as cleanStaleLockFiles, C as normalizeSessionDeliveryFields, D as capArrayByJsonBytes, E as archiveSessionTranscripts, G as resolveSessionResetPolicy, I as stripInlineDirectiveTagsForDisplay, L as stripInlineDirectiveTagsFromMessageForDisplay, M as resolveSessionTranscriptCandidates, N as stripEnvelopeFromMessage, O as cleanupArchivedSessionTranscripts, P as stripEnvelopeFromMessages, Q as canonicalizeMainSessionAlias, R as jsonUtf8Bytes, T as archiveFileOnDisk, U as evaluateSessionFreshness, Y as mergeSessionEntry, Z as setSessionRuntimeModel, d as updateSessionStore, et as resolveExplicitAgentSessionKey, it as snapshotSessionOrigin, k as readSessionMessages, n as parseSessionThreadInfo, nt as resolveMainSessionKeyFromConfig, o as loadSessionStore, t as extractDeliveryInfo, tt as resolveMainSessionKey, x as mergeDeliveryContext, y as deliveryContextFromSession } from "./sessions-DgnXAQCc.js";
30
- import { m as buildChannelAccountBindings, n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin, w as normalizeWhatsAppTarget } from "./plugins-Bc7YM9X-.js";
31
- import { i as resolveWhatsAppAccount } from "./accounts-BH9Qo1sQ.js";
32
- import "./accounts-Cuwg9Tan.js";
29
+ import { $ as resolveAgentMainSessionKey, A as readSessionPreviewItemsFromTranscript, B as cleanStaleLockFiles, C as normalizeSessionDeliveryFields, D as capArrayByJsonBytes, E as archiveSessionTranscripts, G as resolveSessionResetPolicy, I as stripInlineDirectiveTagsForDisplay, L as stripInlineDirectiveTagsFromMessageForDisplay, M as resolveSessionTranscriptCandidates, N as stripEnvelopeFromMessage, O as cleanupArchivedSessionTranscripts, P as stripEnvelopeFromMessages, Q as canonicalizeMainSessionAlias, R as jsonUtf8Bytes, T as archiveFileOnDisk, U as evaluateSessionFreshness, Y as mergeSessionEntry, Z as setSessionRuntimeModel, d as updateSessionStore, et as resolveExplicitAgentSessionKey, it as snapshotSessionOrigin, k as readSessionMessages, n as parseSessionThreadInfo, nt as resolveMainSessionKeyFromConfig, o as loadSessionStore, t as extractDeliveryInfo, tt as resolveMainSessionKey, x as mergeDeliveryContext, y as deliveryContextFromSession } from "./sessions-BWptzMw0.js";
30
+ import { m as buildChannelAccountBindings, n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin, w as normalizeWhatsAppTarget } from "./plugins-BDTkSIi7.js";
31
+ import { i as resolveWhatsAppAccount } from "./accounts-BK8I0Svb.js";
32
+ import "./accounts-DeqNOvBo.js";
33
33
  import "./logging-CcxUDNcI.js";
34
- import "./accounts-B1RxFghM.js";
35
- import "./send-BpkluEZ5.js";
36
- import "./send-Do2preUU.js";
37
- import { $n as DEFAULT_INPUT_IMAGE_MAX_BYTES, $r as emitAgentEvent, $t as stripLegacyDeliveryFields, Ar as resolveTtsAutoMode, At as resetDirectoryCache, B as resolveAgentAvatar, Bt as writeRestartSentinel, Cn as setGatewaySigusr1RestartPolicy, Cr as resolveUserTimezone, D as handleSlackHttpRequest, Dn as normalizeGroupActivation, Dr as isTtsEnabled, Dt as resolveSessionDeliveryTarget, En as unbindThreadBindingsBySessionKey, Er as getTtsProvider, Et as resolveOutboundTarget, F as resolveAgentDeliveryPlan, Fn as resolveBootstrapWarningSignaturesSeen, Fr as setTtsProvider, Ft as formatDoctorNonInteractiveHint, Gr as waitForActiveTasks, Gt as normalizeOptionalAgentId, Hr as markGatewayDraining, Ht as normalizeCronJobCreate, I as resolveAgentOutboundTarget, In as formatZonedTimestamp, Ir as textToSpeech, It as formatRestartSentinelMessage, J as buildHistoryContextFromEntries, Jt as normalizePayloadToSystemText, Kr as CommandLane, Kt as normalizeOptionalSessionKey, L as createOutboundSendDeps, Lr as OPENAI_TTS_MODELS, Mr as resolveTtsPrefsPath, Mt as runWithModelFallback, N as agentCommandFromIngress, Nr as resolveTtsProviderOrder, O as readJsonBodyWithLimit, Or as isTtsProviderConfigured, Ot as resolveOutboundChannelPlugin, Pr as setTtsEnabled, Pt as consumeRestartSentinel, Qn as ACP_SESSION_IDENTITY_RENDERER_VERSION, Qr as clearAgentRunContext, Qt as hasLegacyDeliveryHints, R as createDefaultDeps, Rr as OPENAI_TTS_VOICES, Rt as summarizeRestartSentinel, Sn as scheduleGatewaySigusr1Restart, T as resolveAgentOutboundIdentity, Tn as triggerSquidClawRestart, Tr as clearBootstrapSnapshot, Un as enqueueSystemEvent, Ur as resetAllLanes, Ut as normalizeCronJobPatch, Vr as getTotalQueueSize, Vt as normalizeHttpWebhookUrl, W as createReplyPrefixOptions, Wn as isSystemEventContextChanged, Wr as setCommandLaneConcurrency, Wt as inferLegacyName, Xt as migrateLegacyCronPayload, Yt as normalizeRequiredName, Zr as stripHeartbeatToken, Zt as buildDeliveryFromLegacyPayload, _ as getPluginToolMeta, _n as consumeGatewaySigusr1RestartAuthorization, _r as getAcpSessionManager, _t as readLatestAssistantReply, an as isExternalHookSession, ar as normalizeMimeList, at as dispatchInboundMessage, b as loadSquidClawPlugins, bn as isGatewaySigusr1RestartExternallyAllowed, bt as ensureOutboundSessionEntry, c as runSubagentAnnounceFlow, cn as resolveSessionAuthProfileOverride, cr as resolveAgentTimeoutMs, d as abortEmbeddedPiRun, ei as getAgentRunContext, er as DEFAULT_INPUT_IMAGE_MIMES, f as getActiveEmbeddedRunCount, ft as resolveCronStyleNow, gn as buildOutboundSessionContext, gt as createSquidClawTools, h as buildDefaultToolPolicyPipelineSteps, hn as parseVerboseOverride, ht as runCliAgent, i as initSubagentRegistry, in as getHookType, ir as extractImageContentFromSource, jr as resolveTtsConfig, k as requestBodyErrorToText, kn as loadProviderUsageSummary, kr as resolveTtsApiKey, l as clearSessionQueues, lr as normalizeSendPolicy, m as applyToolPolicyPipeline, mn as applyVerboseOverride, mr as stopSubagentsForRequester, mt as setCliSessionId, ni as registerAgentRunContext, nn as buildSafeExternalPrompt, nr as DEFAULT_INPUT_TIMEOUT_MS, o as listDescendantRunsForRequester, on as applyBrowserProxyPaths, or as resolveInputFileLimits, ot as createReplyDispatcher, p as waitForEmbeddedPiRunEnd, pn as applyModelOverrideToSessionEntry, pr as isAbortRequestText, pt as getCliSessionId, qn as requestHeartbeatNow, qr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, qt as normalizeOptionalText, rn as detectSuspiciousPatterns, rr as extractFileContentFromSource, sn as persistBrowserProxyFiles, st as getTotalPendingReplies, t as countActiveDescendantRuns, ti as onAgentEvent, tr as DEFAULT_INPUT_MAX_REDIRECTS, u as runEmbeddedPiAgent, ur as resolveSendPolicy, ut as buildBareSessionResetPrompt, v as resolvePluginTools, vn as deferGatewayRestartUntilIdle, vr as resolveAgentSessionDirs, vt as resolveAnnounceTargetFromKey, wn as setPreRestartDeferralCheck, x as createPluginRuntime, xn as markGatewaySigusr1RestartHandled, xt as resolveOutboundSessionRoute, yn as emitGatewayRestart, yr as resolveAgentIdentity, z as createOutboundSendDeps$1, zr as getActiveTaskCount } from "./subagent-registry-CQA6P2FO.js";
34
+ import "./accounts-KzgPbLHP.js";
35
+ import "./send-z-sMjqvX.js";
36
+ import "./send-DEs83M9V.js";
37
+ import { $n as DEFAULT_INPUT_IMAGE_MAX_BYTES, $r as emitAgentEvent, $t as stripLegacyDeliveryFields, Ar as resolveTtsAutoMode, At as resetDirectoryCache, B as resolveAgentAvatar, Bt as writeRestartSentinel, Cn as setGatewaySigusr1RestartPolicy, Cr as resolveUserTimezone, D as handleSlackHttpRequest, Dn as normalizeGroupActivation, Dr as isTtsEnabled, Dt as resolveSessionDeliveryTarget, En as unbindThreadBindingsBySessionKey, Er as getTtsProvider, Et as resolveOutboundTarget, F as resolveAgentDeliveryPlan, Fn as resolveBootstrapWarningSignaturesSeen, Fr as setTtsProvider, Ft as formatDoctorNonInteractiveHint, Gr as waitForActiveTasks, Gt as normalizeOptionalAgentId, Hr as markGatewayDraining, Ht as normalizeCronJobCreate, I as resolveAgentOutboundTarget, In as formatZonedTimestamp, Ir as textToSpeech, It as formatRestartSentinelMessage, J as buildHistoryContextFromEntries, Jt as normalizePayloadToSystemText, Kr as CommandLane, Kt as normalizeOptionalSessionKey, L as createOutboundSendDeps, Lr as OPENAI_TTS_MODELS, Mr as resolveTtsPrefsPath, Mt as runWithModelFallback, N as agentCommandFromIngress, Nr as resolveTtsProviderOrder, O as readJsonBodyWithLimit, Or as isTtsProviderConfigured, Ot as resolveOutboundChannelPlugin, Pr as setTtsEnabled, Pt as consumeRestartSentinel, Qn as ACP_SESSION_IDENTITY_RENDERER_VERSION, Qr as clearAgentRunContext, Qt as hasLegacyDeliveryHints, R as createDefaultDeps, Rr as OPENAI_TTS_VOICES, Rt as summarizeRestartSentinel, Sn as scheduleGatewaySigusr1Restart, T as resolveAgentOutboundIdentity, Tn as triggerSquidClawRestart, Tr as clearBootstrapSnapshot, Un as enqueueSystemEvent, Ur as resetAllLanes, Ut as normalizeCronJobPatch, Vr as getTotalQueueSize, Vt as normalizeHttpWebhookUrl, W as createReplyPrefixOptions, Wn as isSystemEventContextChanged, Wr as setCommandLaneConcurrency, Wt as inferLegacyName, Xt as migrateLegacyCronPayload, Yt as normalizeRequiredName, Zr as stripHeartbeatToken, Zt as buildDeliveryFromLegacyPayload, _ as getPluginToolMeta, _n as consumeGatewaySigusr1RestartAuthorization, _r as getAcpSessionManager, _t as readLatestAssistantReply, an as isExternalHookSession, ar as normalizeMimeList, at as dispatchInboundMessage, b as loadSquidClawPlugins, bn as isGatewaySigusr1RestartExternallyAllowed, bt as ensureOutboundSessionEntry, c as runSubagentAnnounceFlow, cn as resolveSessionAuthProfileOverride, cr as resolveAgentTimeoutMs, d as abortEmbeddedPiRun, ei as getAgentRunContext, er as DEFAULT_INPUT_IMAGE_MIMES, f as getActiveEmbeddedRunCount, ft as resolveCronStyleNow, gn as buildOutboundSessionContext, gt as createSquidClawTools, h as buildDefaultToolPolicyPipelineSteps, hn as parseVerboseOverride, ht as runCliAgent, i as initSubagentRegistry, in as getHookType, ir as extractImageContentFromSource, jr as resolveTtsConfig, k as requestBodyErrorToText, kn as loadProviderUsageSummary, kr as resolveTtsApiKey, l as clearSessionQueues, lr as normalizeSendPolicy, m as applyToolPolicyPipeline, mn as applyVerboseOverride, mr as stopSubagentsForRequester, mt as setCliSessionId, ni as registerAgentRunContext, nn as buildSafeExternalPrompt, nr as DEFAULT_INPUT_TIMEOUT_MS, o as listDescendantRunsForRequester, on as applyBrowserProxyPaths, or as resolveInputFileLimits, ot as createReplyDispatcher, p as waitForEmbeddedPiRunEnd, pn as applyModelOverrideToSessionEntry, pr as isAbortRequestText, pt as getCliSessionId, qn as requestHeartbeatNow, qr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, qt as normalizeOptionalText, rn as detectSuspiciousPatterns, rr as extractFileContentFromSource, sn as persistBrowserProxyFiles, st as getTotalPendingReplies, t as countActiveDescendantRuns, ti as onAgentEvent, tr as DEFAULT_INPUT_MAX_REDIRECTS, u as runEmbeddedPiAgent, ur as resolveSendPolicy, ut as buildBareSessionResetPrompt, v as resolvePluginTools, vn as deferGatewayRestartUntilIdle, vr as resolveAgentSessionDirs, vt as resolveAnnounceTargetFromKey, wn as setPreRestartDeferralCheck, x as createPluginRuntime, xn as markGatewaySigusr1RestartHandled, xt as resolveOutboundSessionRoute, yn as emitGatewayRestart, yr as resolveAgentIdentity, z as createOutboundSendDeps$1, zr as getActiveTaskCount } from "./subagent-registry-CIgFD2oi.js";
38
38
  import { c as resolveStorePath, i as resolveSessionTranscriptPath, n as resolveSessionFilePath, r as resolveSessionFilePathOptions, s as resolveSessionTranscriptsDirForAgent } from "./paths-Dn_rzeZN.js";
39
39
  import { i as normalizeInputProvenance } from "./input-provenance-C8z9KgIz.js";
40
40
  import "./chat-envelope-thy05gXR.js";
41
- import { n as readJsonFile, r as writeJsonAtomic, t as createAsyncLock } from "./json-files-rR19q30D.js";
42
- import { $ as validateNodePairRejectParams, $t as roleScopesAllow, A as validateCronStatusParams, At as validateWizardStartParams, B as validateExecApprovalsGetParams, C as validateConfigSetParams, Ct as validateToolsCatalogParams, D as validateCronRemoveParams, Dt as validateWebLoginWaitParams, E as validateCronListParams, Et as validateWebLoginStartParams, F as validateDevicePairRemoveParams, G as validateModelsListParams, Gt as rejectDevicePairing, H as validateExecApprovalsNodeSetParams, Ht as ensureDeviceToken, I as validateDeviceTokenRevokeParams, It as parseSessionLabel, J as validateNodeInvokeParams, Jt as revokeDeviceToken, K as validateNodeDescribeParams, Kt as removePairedDevice, L as validateDeviceTokenRotateParams, Lt as buildDeviceAuthPayload, M as validateDevicePairApproveParams, Mt as PROTOCOL_VERSION, N as validateDevicePairListParams, Nt as ErrorCodes, O as validateCronRunParams, Ot as validateWizardCancelParams, P as validateDevicePairRejectParams, Pt as errorShape, Q as validateNodePairListParams, Qt as verifyDeviceToken, R as validateExecApprovalRequestParams, Rt as buildDeviceAuthPayloadV3, S as validateConfigSchemaParams, St as validateTalkModeParams, T as validateCronAddParams, Tt as validateWakeParams, U as validateExecApprovalsSetParams, Ut as getPairedDevice, V as validateExecApprovalsNodeGetParams, Vt as approveDevicePairing, W as validateLogsTailParams, Wt as listDevicePairing, X as validateNodeListParams, Xt as summarizeDeviceTokens, Y as validateNodeInvokeResultParams, Yt as rotateDeviceToken, Z as validateNodePairApproveParams, Zt as updatePairedDeviceMetadata, _ as validateChatInjectParams, _t as validateSkillsBinsParams, a as validateAgentWaitParams, at as validateRequestFrame, b as validateConfigGetParams, bt as validateSkillsUpdateParams, c as validateAgentsFilesGetParams, ct as validateSendParams, d as validateAgentsListParams, dt as validateSessionsListParams, et as validateNodePairRequestParams, f as validateAgentsUpdateParams, ft as validateSessionsPatchParams, g as validateChatHistoryParams, gt as validateSessionsUsageParams, h as validateChatAbortParams, ht as validateSessionsResolveParams, i as validateAgentParams, in as verifyDeviceSignature, it as validatePushTestParams, j as validateCronUpdateParams, jt as validateWizardStatusParams, k as validateCronRunsParams, kt as validateWizardNextParams, l as validateAgentsFilesListParams, lt as validateSessionsCompactParams, m as validateChannelsStatusParams, mt as validateSessionsResetParams, n as formatValidationErrors, nt as validateNodeRenameParams, o as validateAgentsCreateParams, ot as validateSecretsResolveParams, p as validateChannelsLogoutParams, pt as validateSessionsPreviewParams, q as validateNodeEventParams, qt as requestDevicePairing, r as validateAgentIdentityParams, rn as normalizeDevicePublicKeyBase64Url, rt as validatePollParams, s as validateAgentsDeleteParams, st as validateSecretsResolveResult, tn as deriveDeviceIdFromPublicKey, tt as validateNodePairVerifyParams, u as validateAgentsFilesSetParams, ut as validateSessionsDeleteParams, v as validateChatSendParams, vt as validateSkillsInstallParams, w as validateConnectParams, wt as validateUpdateRunParams, x as validateConfigPatchParams, xt as validateTalkConfigParams, y as validateConfigApplyParams, yt as validateSkillsStatusParams, z as validateExecApprovalResolveParams, zt as normalizeDeviceMetadataForAuth } from "./client-COy24r9W.js";
43
- import { c as ADMIN_SCOPE$3, d as isNodeRoleMethod, n as callGateway, p as loadGatewayTlsRuntime$1, u as authorizeOperatorScopesForMethod } from "./call-D7jOWSFr.js";
41
+ import { n as readJsonFile, r as writeJsonAtomic, t as createAsyncLock } from "./json-files-CuJjdF_0.js";
42
+ import { $ as validateNodePairRejectParams, $t as roleScopesAllow, A as validateCronStatusParams, At as validateWizardStartParams, B as validateExecApprovalsGetParams, C as validateConfigSetParams, Ct as validateToolsCatalogParams, D as validateCronRemoveParams, Dt as validateWebLoginWaitParams, E as validateCronListParams, Et as validateWebLoginStartParams, F as validateDevicePairRemoveParams, G as validateModelsListParams, Gt as rejectDevicePairing, H as validateExecApprovalsNodeSetParams, Ht as ensureDeviceToken, I as validateDeviceTokenRevokeParams, It as parseSessionLabel, J as validateNodeInvokeParams, Jt as revokeDeviceToken, K as validateNodeDescribeParams, Kt as removePairedDevice, L as validateDeviceTokenRotateParams, Lt as buildDeviceAuthPayload, M as validateDevicePairApproveParams, Mt as PROTOCOL_VERSION, N as validateDevicePairListParams, Nt as ErrorCodes, O as validateCronRunParams, Ot as validateWizardCancelParams, P as validateDevicePairRejectParams, Pt as errorShape, Q as validateNodePairListParams, Qt as verifyDeviceToken, R as validateExecApprovalRequestParams, Rt as buildDeviceAuthPayloadV3, S as validateConfigSchemaParams, St as validateTalkModeParams, T as validateCronAddParams, Tt as validateWakeParams, U as validateExecApprovalsSetParams, Ut as getPairedDevice, V as validateExecApprovalsNodeGetParams, Vt as approveDevicePairing, W as validateLogsTailParams, Wt as listDevicePairing, X as validateNodeListParams, Xt as summarizeDeviceTokens, Y as validateNodeInvokeResultParams, Yt as rotateDeviceToken, Z as validateNodePairApproveParams, Zt as updatePairedDeviceMetadata, _ as validateChatInjectParams, _t as validateSkillsBinsParams, a as validateAgentWaitParams, at as validateRequestFrame, b as validateConfigGetParams, bt as validateSkillsUpdateParams, c as validateAgentsFilesGetParams, ct as validateSendParams, d as validateAgentsListParams, dt as validateSessionsListParams, et as validateNodePairRequestParams, f as validateAgentsUpdateParams, ft as validateSessionsPatchParams, g as validateChatHistoryParams, gt as validateSessionsUsageParams, h as validateChatAbortParams, ht as validateSessionsResolveParams, i as validateAgentParams, in as verifyDeviceSignature, it as validatePushTestParams, j as validateCronUpdateParams, jt as validateWizardStatusParams, k as validateCronRunsParams, kt as validateWizardNextParams, l as validateAgentsFilesListParams, lt as validateSessionsCompactParams, m as validateChannelsStatusParams, mt as validateSessionsResetParams, n as formatValidationErrors, nt as validateNodeRenameParams, o as validateAgentsCreateParams, ot as validateSecretsResolveParams, p as validateChannelsLogoutParams, pt as validateSessionsPreviewParams, q as validateNodeEventParams, qt as requestDevicePairing, r as validateAgentIdentityParams, rn as normalizeDevicePublicKeyBase64Url, rt as validatePollParams, s as validateAgentsDeleteParams, st as validateSecretsResolveResult, tn as deriveDeviceIdFromPublicKey, tt as validateNodePairVerifyParams, u as validateAgentsFilesSetParams, ut as validateSessionsDeleteParams, v as validateChatSendParams, vt as validateSkillsInstallParams, w as validateConnectParams, wt as validateUpdateRunParams, x as validateConfigPatchParams, xt as validateTalkConfigParams, y as validateConfigApplyParams, yt as validateSkillsStatusParams, z as validateExecApprovalResolveParams, zt as normalizeDeviceMetadataForAuth } from "./client-G9E5HGM2.js";
43
+ import { c as ADMIN_SCOPE$3, d as isNodeRoleMethod, n as callGateway, p as loadGatewayTlsRuntime$1, u as authorizeOperatorScopesForMethod } from "./call-BlWEBz99.js";
44
44
  import "./pairing-token-B_ig96RO.js";
45
45
  import { t as safeEqualSecret } from "./secret-equal-Gla36CGi.js";
46
- import { a as isTrustedProxyAddress, c as pickPrimaryLanIPv4, d as resolveGatewayListenHosts, f as rawDataToString, l as resolveClientIp, n as isLoopbackAddress, o as isValidIPv4, r as isLoopbackHost, s as normalizeHostHeader, t as isLocalishHost, u as resolveGatewayBindHost } from "./net-CIh5ellr.js";
47
- import { n as pickPrimaryTailnetIPv4, r as pickPrimaryTailnetIPv6 } from "./tailnet-DJq7Mi1o.js";
46
+ import { a as isTrustedProxyAddress, c as pickPrimaryLanIPv4, d as resolveGatewayListenHosts, f as rawDataToString, l as resolveClientIp, n as isLoopbackAddress, o as isValidIPv4, r as isLoopbackHost, s as normalizeHostHeader, t as isLocalishHost, u as resolveGatewayBindHost } from "./net-CCnbGop3.js";
47
+ import { n as pickPrimaryTailnetIPv4, r as pickPrimaryTailnetIPv6 } from "./tailnet-CZANZjq6.js";
48
48
  import { i as isSilentReplyText, n as SILENT_REPLY_TOKEN } from "./tokens-DOVPgjwZ.js";
49
- import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext } from "./with-timeout-CFfRudNc.js";
50
- import { j as runGlobalGatewayStopSafely, k as getGlobalHookRunner, o as normalizeReplyPayloadsForDelivery, t as deliverOutboundPayloads } from "./deliver-D-IQEJ52.js";
51
- import { c as detectMime } from "./image-ops-LFsSCTyI.js";
52
- import { b as resolveCronStorePath, x as saveCronStore, y as loadCronStore } from "./send-BVyLW1cn.js";
53
- import "./pi-embedded-helpers-DtCOZSv-.js";
54
- import { C as resolveToolProfilePolicy, _ as collectExplicitAllowlist, y as mergeAlsoAllowPolicy } from "./sandbox-ixDhkfHu.js";
49
+ import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext } from "./with-timeout-BZ_Teugb.js";
50
+ import { j as runGlobalGatewayStopSafely, k as getGlobalHookRunner, o as normalizeReplyPayloadsForDelivery, t as deliverOutboundPayloads } from "./deliver-CL2RW5UB.js";
51
+ import { c as detectMime } from "./image-ops-B2uuLIGD.js";
52
+ import { b as resolveCronStorePath, x as saveCronStore, y as loadCronStore } from "./send-RDqyJwZx.js";
53
+ import "./pi-embedded-helpers-qCAK_a65.js";
54
+ import { C as resolveToolProfilePolicy, _ as collectExplicitAllowlist, y as mergeAlsoAllowPolicy } from "./sandbox-C3TbYIHd.js";
55
55
  import { i as listCoreToolSections, n as PROFILE_OPTIONS, o as resolveCoreToolProfiles } from "./tool-catalog-BRRysafL.js";
56
- import "./chrome-DiktJpMU.js";
56
+ import "./chrome-CoRiYsNu.js";
57
57
  import { i as enableTailscaleServe, n as disableTailscaleServe, o as getTailnetHostname, r as enableTailscaleFunnel, t as disableTailscaleFunnel } from "./tailscale-DHGqQR08.js";
58
- import { a as resolveGatewayAuth, c as AUTH_RATE_LIMIT_SCOPE_SHARED_SECRET, i as isLocalDirectRequest, l as createAuthRateLimiter, n as authorizeHttpGatewayConnect, o as AUTH_RATE_LIMIT_SCOPE_DEVICE_TOKEN, r as authorizeWsControlUiGatewayConnect, s as AUTH_RATE_LIMIT_SCOPE_HOOK_AUTH, t as assertGatewayAuthConfigured, u as normalizeRateLimitClientIp } from "./auth-BlP9BwaD.js";
59
- import { l as ensureGatewayStartupAuth, u as mergeGatewayTailscaleConfig } from "./server-context-Dd8UynDU.js";
60
- import "./paths-D6mnO6Ni.js";
58
+ import { a as resolveGatewayAuth, c as AUTH_RATE_LIMIT_SCOPE_SHARED_SECRET, i as isLocalDirectRequest, l as createAuthRateLimiter, n as authorizeHttpGatewayConnect, o as AUTH_RATE_LIMIT_SCOPE_DEVICE_TOKEN, r as authorizeWsControlUiGatewayConnect, s as AUTH_RATE_LIMIT_SCOPE_HOOK_AUTH, t as assertGatewayAuthConfigured, u as normalizeRateLimitClientIp } from "./auth-CuObxnC4.js";
59
+ import { l as ensureGatewayStartupAuth, u as mergeGatewayTailscaleConfig } from "./server-context-Dw_4lGoI.js";
60
+ import "./paths-DfuVHiHu.js";
61
61
  import { a as testRegexWithBoundedInput, i as compileSafeRegex } from "./redact-DknVdX-O.js";
62
62
  import { o as isErrno, r as formatErrorMessage } from "./errors-BnRmsfe-.js";
63
- import { i as openFileWithinRoot, l as writeFileWithinRoot, s as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-BPQ-per2.js";
64
- import { n as SsrFBlockedError } from "./proxy-env-BiKHVg2h.js";
65
- import "./store-BTkIx401.js";
66
- import { n as inspectPortUsage, o as formatPortDiagnostics, t as ensurePortAvailable } from "./ports-DMeUt80n.js";
63
+ import { i as openFileWithinRoot, l as writeFileWithinRoot, s as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-DPYj7h8A.js";
64
+ import { n as SsrFBlockedError } from "./proxy-env-CQTuxZoS.js";
65
+ import "./store-BEIcnlgx.js";
66
+ import { n as inspectPortUsage, o as formatPortDiagnostics, t as ensurePortAvailable } from "./ports-0jLyYbvQ.js";
67
67
  import { t as movePathToTrash } from "./trash-DUuU677G.js";
68
- import "./server-middleware-B_LyQkOL.js";
69
- import "./tool-images-D6mmxuWS.js";
68
+ import "./server-middleware-BVAEuQs7.js";
69
+ import "./tool-images-CyzWvDUu.js";
70
70
  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 } from "./thinking-CrcT589P.js";
71
- import "./models-config-DAastTau.js";
72
- import "./exec-approvals-allowlist-B9bcJkGP.js";
73
- import "./exec-safe-bin-runtime-policy-DECo77U6.js";
74
- import { n as loadModelCatalog } from "./model-catalog-Drh9Rois.js";
75
- import "./fetch-lq0SDLLE.js";
76
- import { g as registerUnhandledRejectionHandler } from "./audio-transcription-runner-D-uxpkbd.js";
77
- import { t as fetchWithSsrFGuard } from "./fetch-guard-CbtWqa1E.js";
78
- import { b as extractTextFromChatContent } from "./image-BcYt63Jx.js";
71
+ import "./models-config-poV-4Xlx.js";
72
+ import "./exec-approvals-allowlist-CtSREgYh.js";
73
+ import "./exec-safe-bin-runtime-policy-CfQeDABF.js";
74
+ import { n as loadModelCatalog } from "./model-catalog-BWuvEv1x.js";
75
+ import "./fetch-CtoC2wgs.js";
76
+ import { g as registerUnhandledRejectionHandler } from "./audio-transcription-runner-DvQksGUE.js";
77
+ import { t as fetchWithSsrFGuard } from "./fetch-guard-Dvzi3MjK.js";
78
+ import { b as extractTextFromChatContent } from "./image-DSWTfuxv.js";
79
79
  import "./tool-display-BisOZb2_.js";
80
- import "./api-key-rotation-JPmjv-c0.js";
80
+ import "./api-key-rotation-6i41mEc9.js";
81
81
  import "./proxy-fetch-DfeBVFag.js";
82
- import "./ir-C7He5vmn.js";
82
+ import "./ir-BukzlgSp.js";
83
83
  import "./render-CCLsW6Lz.js";
84
- import { a as ToolInputError } from "./target-errors-C_rnMuJ2.js";
85
- import { r as isRestartEnabled } from "./commands-DDHiW-As.js";
86
- import "./commands-registry--ITOJ-cM.js";
84
+ import { a as ToolInputError } from "./target-errors-CRQlPF1u.js";
85
+ import { r as isRestartEnabled } from "./commands-CnX9I_l4.js";
86
+ import "./commands-registry-_r_JONI4.js";
87
87
  import "./fetch-By9arPco.js";
88
- import { a as readChannelAllowFromStoreSync } from "./pairing-store-BC4mnG9S.js";
88
+ import { a as readChannelAllowFromStoreSync } from "./pairing-store-D0eOXyby.js";
89
89
  import { a as mergeExecApprovalsSocketDefaults, c as readExecApprovalsSnapshot, p as saveExecApprovals, r as ensureExecApprovals, s as normalizeExecApprovals, t as DEFAULT_EXEC_APPROVAL_TIMEOUT_MS } from "./exec-approvals-Db6myg-N.js";
90
- import { _ as matchSystemRunApprovalBinding, g as buildSystemRunApprovalBinding, h as resolveSystemRunApprovalRuntimeContext, m as resolveSystemRunApprovalRequestContext, v as missingSystemRunApprovalBinding, y as toSystemRunApprovalMismatchError } from "./nodes-screen-BrMJzhot.js";
91
- import { n as resolveSystemRunCommand } from "./system-run-command-BaSqmSwR.js";
92
- import { a as loadCombinedSessionStoreForGateway, c as resolveGatewaySessionStoreTarget, f as computeBackoff, i as listSessionsFromStore, l as resolveSessionModelRef, o as loadSessionEntry, p as sleepWithAbort, r as listAgentsForGateway, s as pruneLegacyStoreKeys, t as canonicalizeSpawnedByForAgent, u as lookupContextTokens } from "./session-utils-D12gSo5W.js";
90
+ import { _ as matchSystemRunApprovalBinding, g as buildSystemRunApprovalBinding, h as resolveSystemRunApprovalRuntimeContext, m as resolveSystemRunApprovalRequestContext, v as missingSystemRunApprovalBinding, y as toSystemRunApprovalMismatchError } from "./nodes-screen-DFFmbaXE.js";
91
+ import { n as resolveSystemRunCommand } from "./system-run-command-COqCNIBg.js";
92
+ import { a as loadCombinedSessionStoreForGateway, c as resolveGatewaySessionStoreTarget, f as computeBackoff, i as listSessionsFromStore, l as resolveSessionModelRef, o as loadSessionEntry, p as sleepWithAbort, r as listAgentsForGateway, s as pruneLegacyStoreKeys, t as canonicalizeSpawnedByForAgent, u as lookupContextTokens } from "./session-utils-XY6JwRhT.js";
93
93
  import { c as hasNonzeroUsage, i as loadSessionUsageTimeSeries, n as loadCostUsageSummary, r as loadSessionCostSummary, s as deriveSessionTotalTokens, t as discoverAllSessions } from "./session-cost-usage-BL2HPuc5.js";
94
94
  import { n as formatTokenCount, r as formatUsd } from "./usage-format-eNPY7j3q.js";
95
- import { _ as updatePairedNodeMetadata, a as getRemoteSkillEligibility, b as getSkillsSnapshotVersion, c as refreshRemoteBinsForConnectedNodes, d as setSkillsRemoteRegistry, f as approveNodePairing, g as requestNodePairing, h as renamePairedNode, l as refreshRemoteNodeBins, m as rejectNodePairing, o as primeRemoteSkillsCache, p as listNodePairing, s as recordRemoteNodeInfo, u as removeRemoteNodeInfo, v as verifyNodeToken, x as registerSkillsChangeListener } from "./skill-commands-BcigmiOW.js";
96
- import { t as listAgentWorkspaceDirs } from "./workspace-dirs-D8D-Ghcl.js";
97
- import { t as getChannelActivity } from "./channel-activity-wuB3-cfR.js";
95
+ import { _ as updatePairedNodeMetadata, a as getRemoteSkillEligibility, b as getSkillsSnapshotVersion, c as refreshRemoteBinsForConnectedNodes, d as setSkillsRemoteRegistry, f as approveNodePairing, g as requestNodePairing, h as renamePairedNode, l as refreshRemoteNodeBins, m as rejectNodePairing, o as primeRemoteSkillsCache, p as listNodePairing, s as recordRemoteNodeInfo, u as removeRemoteNodeInfo, v as verifyNodeToken, x as registerSkillsChangeListener } from "./skill-commands-fU-Mejn9.js";
96
+ import { t as listAgentWorkspaceDirs } from "./workspace-dirs-CjMIsQti.js";
97
+ import { t as getChannelActivity } from "./channel-activity-BZKeZQH-.js";
98
98
  import { n as normalizePollInput } from "./polls-C67dmFc-.js";
99
- import "./tables-CGh4CW_h.js";
100
- import "./server-lifecycle-BEZ2jsQ6.js";
99
+ import "./tables-CIpKClDV.js";
100
+ import "./server-lifecycle-DYgHYif9.js";
101
101
  import { i as parseAbsoluteTimeMs, n as resolveCronStaggerMs, r as resolveDefaultCronStaggerMs, t as normalizeCronStaggerMs } from "./stagger-C4U8O7GM.js";
102
- import { n as resolveMessageChannelSelection } from "./channel-selection-CFWQq1nS.js";
103
- import { i as buildChannelUiCatalog, t as applyPluginAutoEnable } from "./plugin-auto-enable-a3TK3OPT.js";
104
- import "./send-BPgrWmUX.js";
105
- import "./outbound-attachment-Bedqixj2.js";
102
+ import { n as resolveMessageChannelSelection } from "./channel-selection-BqwS1Rlq.js";
103
+ import { i as buildChannelUiCatalog, t as applyPluginAutoEnable } from "./plugin-auto-enable-DJkHW_LG.js";
104
+ import "./send-EVcbFVqn.js";
105
+ import "./outbound-attachment-fdEhzyl9.js";
106
106
  import "./delivery-queue-D-91NTFS.js";
107
- import "./send-BuBTLRMz.js";
108
- import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, r as resolveEffectiveToolPolicy } from "./pi-tools.policy-D3RA94WF.js";
107
+ import "./send-CLI3CiQv.js";
108
+ import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, r as resolveEffectiveToolPolicy } from "./pi-tools.policy-BwWnFLLV.js";
109
109
  import "./proxy-Dgwoliym.js";
110
- import { f as isKnownSecretTargetId, n as GATEWAY_AUTH_SURFACE_PATHS, r as evaluateGatewayAuthSurfaceStates } from "./runtime-config-collectors-Bsjz4isf.js";
111
- import "./command-secret-targets-CZjP-Bm5.js";
112
- import { C as normalizeControlUiBasePath, S as buildControlUiAvatarUrl, c as handleReset, w as resolveAssistantAvatarUrl, x as CONTROL_UI_AVATAR_PREFIX } from "./onboard-helpers-DwEZeaoe.js";
110
+ import { f as isKnownSecretTargetId, n as GATEWAY_AUTH_SURFACE_PATHS, r as evaluateGatewayAuthSurfaceStates } from "./runtime-config-collectors-CXJdhHRo.js";
111
+ import "./command-secret-targets-DAu5nw-j.js";
112
+ import { C as normalizeControlUiBasePath, S as buildControlUiAvatarUrl, c as handleReset, w as resolveAssistantAvatarUrl, x as CONTROL_UI_AVATAR_PREFIX } from "./onboard-helpers-BP429__H.js";
113
113
  import "./prompt-style-D_i_ws0g.js";
114
- import "./pairing-labels-CX4CtqRa.js";
115
- import { i as resolveMemoryBackendConfig, r as getMemorySearchManager } from "./memory-cli-u8eyO3Ec.js";
116
- import { r as resolveMemorySearchConfig } from "./manager-BVfTfggO.js";
117
- import "./query-expansion-C0HUJbRn.js";
114
+ import "./pairing-labels-CnTvFrUT.js";
115
+ import { i as resolveMemoryBackendConfig, r as getMemorySearchManager } from "./memory-cli-Dj8tyFtt.js";
116
+ import { r as resolveMemorySearchConfig } from "./manager-5OzUkYLf.js";
117
+ import "./query-expansion-DI9INxTg.js";
118
118
  import { t as formatDocsLink } from "./links-Dye6HsRG.js";
119
119
  import { n as runCommandWithRuntime } from "./cli-utils-BKqG4ZT-.js";
120
120
  import { t as formatHelpExamples } from "./help-format-CpR5cEGe.js";
@@ -125,44 +125,44 @@ import { n as DEFAULT_GATEWAY_HTTP_TOOL_DENY } from "./dangerous-tools-Dpi4An5r.
125
125
  import { n as inheritOptionFromParent } from "./command-options-DVCpMofi.js";
126
126
  import { t as WizardCancelledError } from "./prompts-l_pUOv42.js";
127
127
  import { t as resolveChannelDefaultAccountId } from "./helpers-D7MilaX-.js";
128
- import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-w_Z6Fb4-.js";
129
- import { t as isWithinDir } from "./path-safety-D7CjFQvf.js";
130
- import "./install-safe-path-DqI19VEv.js";
131
- import "./skill-scanner--QKHR8U0.js";
132
- import { n as formatConfigIssueLines } from "./issue-format-CbTfB8Hy.js";
128
+ import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-BM-2SLCh.js";
129
+ import { t as isWithinDir } from "./path-safety-C95DzArw.js";
130
+ import "./install-safe-path-3muwy3fu.js";
131
+ import "./skill-scanner-CvS725eQ.js";
132
+ import { n as formatConfigIssueLines } from "./issue-format-DCcINW-9.js";
133
133
  import { t as buildChannelAccountSnapshot } from "./status-dOhj12u0.js";
134
- import "./channels-status-issues-Erzzhl2e.js";
135
- import { a as buildBaseHints, i as applySensitiveHints, n as redactConfigSnapshot, o as mapSensitivePaths, r as restoreRedactedValues, s as applyDerivedTags, t as redactConfigObject } from "./redact-snapshot-C0McNGqh.js";
136
- import "./daemon-install-helpers-CZDVO_MU.js";
134
+ import "./channels-status-issues-Dz1_R7Ah.js";
135
+ import { a as buildBaseHints, i as applySensitiveHints, n as redactConfigSnapshot, o as mapSensitivePaths, r as restoreRedactedValues, s as applyDerivedTags, t as redactConfigObject } from "./redact-snapshot-B2YFI3cO.js";
136
+ import "./daemon-install-helpers-CJtiW2RE.js";
137
137
  import "./runtime-guard-BPoq8vFM.js";
138
- import "./systemd-B86VePXs.js";
139
- import "./service-B5T42CWZ.js";
140
- import "./lifecycle-core-ChKClWdw.js";
141
- import "./systemd-hints-BmFWZu_j.js";
138
+ import "./systemd-Cj2cX_ZP.js";
139
+ import "./service-DSqxS6_D.js";
140
+ import "./lifecycle-core-CqFEhwHn.js";
141
+ import "./systemd-hints-46PqJfaq.js";
142
142
  import { t as parsePort$1 } from "./parse-port-CboE2EQm.js";
143
- import { n as addGatewayServiceCommands } from "./daemon-cli-B-yZvTqZ.js";
144
- import "./diagnostics-m7hHHbuE.js";
143
+ import { n as addGatewayServiceCommands } from "./daemon-cli-kJfDhzr8.js";
144
+ import "./diagnostics--O6mo6KH.js";
145
145
  import "./table-DbDCX_6t.js";
146
146
  import { n as resolveWideAreaDiscoveryDomain, r as writeWideAreaGatewayZone } from "./widearea-dns-BCMIEFUS.js";
147
- import { i as toOptionString, n as extractGatewayMiskeys, r as maybeExplainGatewayServiceStop, t as describeUnknownError } from "./shared-By6_qr_R.js";
148
- import { a as probeGateway, n as collectEnabledInsecureOrDangerousFlags } from "./audit-JLT1FqTt.js";
149
- import { t as discoverGatewayBeacons } from "./bonjour-discovery-eqJcK09r.js";
150
- import { i as pickGatewaySelfPresence, r as getStatusSummary } from "./status-Dnl-Um1D.js";
151
- import { a as styleHealthChannelLine, c as setHeartbeatsEnabled, l as startHeartbeatRunner, n as getHealthSnapshot, s as runHeartbeatOnce, t as formatHealthChannelLines, u as isCronSystemEvent } from "./health-CjXrJkCb.js";
152
- import { a as resolveControlUiRootSync, i as resolveControlUiRootOverrideSync, t as ensureControlUiAssetsBuilt } from "./control-ui-assets-d6VtDSeo.js";
153
- import { h as normalizeUpdateChannel, l as DEFAULT_PACKAGE_CHANNEL, n as checkUpdateStatus, o as resolveNpmChannelTag, r as compareSemverStrings } from "./channel-account-context-DJ3rHgVO.js";
154
- import { a as resolveCommandSecretsFromActiveRuntimeSnapshot, i as prepareSecretsRuntimeSnapshot, n as clearSecretsRuntimeSnapshot, r as getActiveSecretsRuntimeSnapshot, t as activateSecretsRuntimeSnapshot } from "./runtime-Bcmv4Epp.js";
155
- import "./onboarding.secret-input-DRnoQSlI.js";
156
- import { t as runOnboardingWizard } from "./onboarding-Mxqy4O1E.js";
157
- import { a as sendApnsAlert, c as parseMessageWithAttachments, d as shouldLogWs, f as summarizeAgentEventForWsLog, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, p as setGatewayWsLogStyle, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration, u as logWs } from "./push-apns-Ce1zzNYB.js";
147
+ import { i as toOptionString, n as extractGatewayMiskeys, r as maybeExplainGatewayServiceStop, t as describeUnknownError } from "./shared-D5DTxBPH.js";
148
+ import { a as probeGateway, n as collectEnabledInsecureOrDangerousFlags } from "./audit-DLTgNDFw.js";
149
+ import { t as discoverGatewayBeacons } from "./bonjour-discovery-BHz2I6_W.js";
150
+ import { i as pickGatewaySelfPresence, r as getStatusSummary } from "./status-cU9cJReo.js";
151
+ import { a as styleHealthChannelLine, c as setHeartbeatsEnabled, l as startHeartbeatRunner, n as getHealthSnapshot, s as runHeartbeatOnce, t as formatHealthChannelLines, u as isCronSystemEvent } from "./health-XFKFZ7ZJ.js";
152
+ import { a as resolveControlUiRootSync, i as resolveControlUiRootOverrideSync, t as ensureControlUiAssetsBuilt } from "./control-ui-assets-BYEy341x.js";
153
+ import { h as normalizeUpdateChannel, l as DEFAULT_PACKAGE_CHANNEL, n as checkUpdateStatus, o as resolveNpmChannelTag, r as compareSemverStrings } from "./channel-account-context-CQ6rCiGI.js";
154
+ import { a as resolveCommandSecretsFromActiveRuntimeSnapshot, i as prepareSecretsRuntimeSnapshot, n as clearSecretsRuntimeSnapshot, r as getActiveSecretsRuntimeSnapshot, t as activateSecretsRuntimeSnapshot } from "./runtime-BnbzNRr6.js";
155
+ import "./onboarding.secret-input-BTK1IG-J.js";
156
+ import { t as runOnboardingWizard } from "./onboarding-EEd_g8Zg.js";
157
+ import { a as sendApnsAlert, c as parseMessageWithAttachments, d as shouldLogWs, f as summarizeAgentEventForWsLog, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, p as setGatewayWsLogStyle, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration, u as logWs } from "./push-apns-BbenjEX4.js";
158
158
  import { T as resolveGmailHookRuntimeConfig, _ as buildGogWatchServeArgs, i as ensureTailscaleEndpoint, v as buildGogWatchStartArgs } from "./gmail-setup-utils-BDpWdYq5.js";
159
- import { n as isNodeCommandAllowed, r as resolveNodeCommandAllowlist } from "./node-command-policy-BeTSnoyk.js";
160
- import "./node-service-OVe0_CIs.js";
161
- import "./status.update-BGIm6we4.js";
162
- import { t as installSkill } from "./skills-install-CXVKvhIE.js";
163
- import { t as runGatewayUpdate } from "./update-runner-DdA6xBa9.js";
164
- import { i as shouldIncludeHook, r as resolveHookConfig, t as loadWorkspaceHookEntries } from "./workspace-BbO-M3Jv.js";
165
- import { n as forceFreePortAndWait, r as waitForPortBindable } from "./ports-BzfeaNjw.js";
159
+ import { n as isNodeCommandAllowed, r as resolveNodeCommandAllowlist } from "./node-command-policy-B_D5ucTj.js";
160
+ import "./node-service-Z0JprJda.js";
161
+ import "./status.update-CiLU9RPF.js";
162
+ import { t as installSkill } from "./skills-install-KD6dzNoZ.js";
163
+ import { t as runGatewayUpdate } from "./update-runner-BBJZmfZ4.js";
164
+ import { i as shouldIncludeHook, r as resolveHookConfig, t as loadWorkspaceHookEntries } from "./workspace-D5vNjk5G.js";
165
+ import { n as forceFreePortAndWait, r as waitForPortBindable } from "./ports-Be82TlEg.js";
166
166
  import { spawn, spawnSync } from "node:child_process";
167
167
  import { fileURLToPath, pathToFileURL } from "node:url";
168
168
  import os from "node:os";
@@ -171,7 +171,7 @@ import * as fsSync from "node:fs";
171
171
  import fs from "node:fs";
172
172
  import chalk from "chalk";
173
173
  import { isDeepStrictEqual } from "node:util";
174
- import fsPromises from "node:fs/promises";
174
+ import fs$1 from "node:fs/promises";
175
175
  import crypto, { createHash, randomBytes, randomUUID } from "node:crypto";
176
176
  import { z } from "zod";
177
177
  import { CURRENT_SESSION_VERSION, SessionManager } from "@mariozechner/pi-coding-agent";
@@ -1241,7 +1241,7 @@ function resolveCheckIntervalMs(cfg) {
1241
1241
  }
1242
1242
  async function readState(statePath) {
1243
1243
  try {
1244
- const raw = await fsPromises.readFile(statePath, "utf-8");
1244
+ const raw = await fs$1.readFile(statePath, "utf-8");
1245
1245
  const parsed = JSON.parse(raw);
1246
1246
  return parsed && typeof parsed === "object" ? parsed : {};
1247
1247
  } catch {
@@ -1322,7 +1322,7 @@ async function runAutoUpdateCommand(params) {
1322
1322
  path.join(params.root, "dist", "index.mjs")
1323
1323
  ];
1324
1324
  for (const candidate of candidates) try {
1325
- await fsPromises.access(candidate);
1325
+ await fs$1.access(candidate);
1326
1326
  argv.push(execPath, candidate, ...baseArgs);
1327
1327
  break;
1328
1328
  } catch {}
@@ -4453,20 +4453,20 @@ async function drainPendingWrite(filePath) {
4453
4453
  if (pending) await pending.catch(() => void 0);
4454
4454
  }
4455
4455
  async function pruneIfNeeded(filePath, opts) {
4456
- const stat = await fsPromises.stat(filePath).catch(() => null);
4456
+ const stat = await fs$1.stat(filePath).catch(() => null);
4457
4457
  if (!stat || stat.size <= opts.maxBytes) return;
4458
- const lines = (await fsPromises.readFile(filePath, "utf-8").catch(() => "")).split("\n").map((l) => l.trim()).filter(Boolean);
4458
+ const lines = (await fs$1.readFile(filePath, "utf-8").catch(() => "")).split("\n").map((l) => l.trim()).filter(Boolean);
4459
4459
  const kept = lines.slice(Math.max(0, lines.length - opts.keepLines));
4460
4460
  const { randomBytes } = await import("node:crypto");
4461
4461
  const tmp = `${filePath}.${process.pid}.${randomBytes(8).toString("hex")}.tmp`;
4462
- await fsPromises.writeFile(tmp, `${kept.join("\n")}\n`, "utf-8");
4463
- await fsPromises.rename(tmp, filePath);
4462
+ await fs$1.writeFile(tmp, `${kept.join("\n")}\n`, "utf-8");
4463
+ await fs$1.rename(tmp, filePath);
4464
4464
  }
4465
4465
  async function appendCronRunLog(filePath, entry, opts) {
4466
4466
  const resolved = path.resolve(filePath);
4467
4467
  const next = (writesByPath.get(resolved) ?? Promise.resolve()).catch(() => void 0).then(async () => {
4468
- await fsPromises.mkdir(path.dirname(resolved), { recursive: true });
4469
- await fsPromises.appendFile(resolved, `${JSON.stringify(entry)}\n`, "utf-8");
4468
+ await fs$1.mkdir(path.dirname(resolved), { recursive: true });
4469
+ await fs$1.appendFile(resolved, `${JSON.stringify(entry)}\n`, "utf-8");
4470
4470
  await pruneIfNeeded(resolved, {
4471
4471
  maxBytes: opts?.maxBytes ?? DEFAULT_CRON_RUN_LOG_MAX_BYTES,
4472
4472
  keepLines: opts?.keepLines ?? DEFAULT_CRON_RUN_LOG_KEEP_LINES
@@ -4560,7 +4560,7 @@ function filterRunLogEntries(entries, opts) {
4560
4560
  async function readCronRunLogEntriesPage(filePath, opts) {
4561
4561
  await drainPendingWrite(filePath);
4562
4562
  const limit = Math.max(1, Math.min(200, Math.floor(opts?.limit ?? 50)));
4563
- const raw = await fsPromises.readFile(path.resolve(filePath), "utf-8").catch(() => "");
4563
+ const raw = await fs$1.readFile(path.resolve(filePath), "utf-8").catch(() => "");
4564
4564
  const statuses = normalizeRunStatuses(opts);
4565
4565
  const deliveryStatuses = normalizeDeliveryStatuses(opts);
4566
4566
  const query = opts?.query?.trim().toLowerCase() ?? "";
@@ -4596,7 +4596,7 @@ async function readCronRunLogEntriesPageAll(opts) {
4596
4596
  const query = opts.query?.trim().toLowerCase() ?? "";
4597
4597
  const sortDir = opts.sortDir === "asc" ? "asc" : "desc";
4598
4598
  const runsDir = path.resolve(path.dirname(path.resolve(opts.storePath)), "runs");
4599
- const jsonlFiles = (await fsPromises.readdir(runsDir, { withFileTypes: true }).catch(() => [])).filter((entry) => entry.isFile() && entry.name.endsWith(".jsonl")).map((entry) => path.join(runsDir, entry.name));
4599
+ const jsonlFiles = (await fs$1.readdir(runsDir, { withFileTypes: true }).catch(() => [])).filter((entry) => entry.isFile() && entry.name.endsWith(".jsonl")).map((entry) => path.join(runsDir, entry.name));
4600
4600
  if (jsonlFiles.length === 0) return {
4601
4601
  entries: [],
4602
4602
  total: 0,
@@ -4607,7 +4607,7 @@ async function readCronRunLogEntriesPageAll(opts) {
4607
4607
  };
4608
4608
  await Promise.all(jsonlFiles.map((f) => drainPendingWrite(f)));
4609
4609
  const filtered = filterRunLogEntries((await Promise.all(jsonlFiles.map(async (filePath) => {
4610
- return parseAllRunLogEntries(await fsPromises.readFile(filePath, "utf-8").catch(() => ""));
4610
+ return parseAllRunLogEntries(await fs$1.readFile(filePath, "utf-8").catch(() => ""));
4611
4611
  }))).flat(), {
4612
4612
  statuses,
4613
4613
  deliveryStatuses,
@@ -10015,7 +10015,7 @@ function resolveWorkspaceFilePathResultOrThrow(params) {
10015
10015
  }
10016
10016
  async function resolveWorkspaceRealPath(workspaceDir) {
10017
10017
  try {
10018
- return await fsPromises.realpath(workspaceDir);
10018
+ return await fs$1.realpath(workspaceDir);
10019
10019
  } catch {
10020
10020
  return path.resolve(workspaceDir);
10021
10021
  }
@@ -10044,7 +10044,7 @@ async function resolveAgentWorkspaceFilePath(params) {
10044
10044
  };
10045
10045
  let candidateLstat;
10046
10046
  try {
10047
- candidateLstat = await fsPromises.lstat(candidatePath);
10047
+ candidateLstat = await fs$1.lstat(candidatePath);
10048
10048
  } catch (err) {
10049
10049
  return resolveWorkspaceFilePathResultOrThrow({
10050
10050
  error: err,
@@ -10055,7 +10055,7 @@ async function resolveAgentWorkspaceFilePath(params) {
10055
10055
  if (candidateLstat.isSymbolicLink()) {
10056
10056
  let targetReal;
10057
10057
  try {
10058
- targetReal = await fsPromises.realpath(candidatePath);
10058
+ targetReal = await fs$1.realpath(candidatePath);
10059
10059
  } catch (err) {
10060
10060
  return resolveWorkspaceFilePathResultOrThrow({
10061
10061
  error: err,
@@ -10065,7 +10065,7 @@ async function resolveAgentWorkspaceFilePath(params) {
10065
10065
  }
10066
10066
  let targetStat;
10067
10067
  try {
10068
- targetStat = await fsPromises.stat(targetReal);
10068
+ targetStat = await fs$1.stat(targetReal);
10069
10069
  } catch (err) {
10070
10070
  return resolveWorkspaceFilePathResultOrThrow({
10071
10071
  error: err,
@@ -10103,13 +10103,13 @@ async function resolveAgentWorkspaceFilePath(params) {
10103
10103
  return {
10104
10104
  kind: "ready",
10105
10105
  requestPath,
10106
- ioPath: await fsPromises.realpath(candidatePath).catch(() => candidatePath),
10106
+ ioPath: await fs$1.realpath(candidatePath).catch(() => candidatePath),
10107
10107
  workspaceReal
10108
10108
  };
10109
10109
  }
10110
10110
  async function statFileSafely(filePath) {
10111
10111
  try {
10112
- const [stat, lstat] = await Promise.all([fsPromises.stat(filePath), fsPromises.lstat(filePath)]);
10112
+ const [stat, lstat] = await Promise.all([fs$1.stat(filePath), fs$1.lstat(filePath)]);
10113
10113
  if (lstat.isSymbolicLink() || !stat.isFile()) return null;
10114
10114
  if (stat.nlink > 1) return null;
10115
10115
  if (!sameFileIdentity(stat, lstat)) return null;
@@ -10203,7 +10203,7 @@ function respondAgentNotFound(respond, agentId) {
10203
10203
  async function moveToTrashBestEffort(pathname) {
10204
10204
  if (!pathname) return;
10205
10205
  try {
10206
- await fsPromises.access(pathname);
10206
+ await fs$1.access(pathname);
10207
10207
  } catch {
10208
10208
  return;
10209
10209
  }
@@ -10279,7 +10279,7 @@ const agentsHandlers = {
10279
10279
  dir: workspaceDir,
10280
10280
  ensureBootstrapFiles: !Boolean(nextConfig.agents?.defaults?.skipBootstrap)
10281
10281
  });
10282
- await fsPromises.mkdir(resolveSessionTranscriptsDirForAgent(agentId), { recursive: true });
10282
+ await fs$1.mkdir(resolveSessionTranscriptsDirForAgent(agentId), { recursive: true });
10283
10283
  await writeConfigFile(nextConfig);
10284
10284
  const safeName = sanitizeIdentityLine(rawName);
10285
10285
  const emoji = resolveOptionalStringParam(params.emoji);
@@ -10292,7 +10292,7 @@ const agentsHandlers = {
10292
10292
  ...avatar ? [`- Avatar: ${sanitizeIdentityLine(avatar)}`] : [],
10293
10293
  ""
10294
10294
  ];
10295
- await fsPromises.appendFile(identityPath, lines.join("\n"), "utf-8");
10295
+ await fs$1.appendFile(identityPath, lines.join("\n"), "utf-8");
10296
10296
  respond(true, {
10297
10297
  ok: true,
10298
10298
  agentId,
@@ -10327,9 +10327,9 @@ const agentsHandlers = {
10327
10327
  });
10328
10328
  if (avatar) {
10329
10329
  const workspace = workspaceDir ?? resolveAgentWorkspaceDir(nextConfig, agentId);
10330
- await fsPromises.mkdir(workspace, { recursive: true });
10330
+ await fs$1.mkdir(workspace, { recursive: true });
10331
10331
  const identityPath = path.join(workspace, DEFAULT_IDENTITY_FILENAME);
10332
- await fsPromises.appendFile(identityPath, `\n- Avatar: ${sanitizeIdentityLine(avatar)}\n`, "utf-8");
10332
+ await fs$1.appendFile(identityPath, `\n- Avatar: ${sanitizeIdentityLine(avatar)}\n`, "utf-8");
10333
10333
  }
10334
10334
  respond(true, {
10335
10335
  ok: true,
@@ -10453,7 +10453,7 @@ const agentsHandlers = {
10453
10453
  const resolved = resolveAgentWorkspaceFileOrRespondError(params, respond);
10454
10454
  if (!resolved) return;
10455
10455
  const { agentId, workspaceDir, name } = resolved;
10456
- await fsPromises.mkdir(workspaceDir, { recursive: true });
10456
+ await fs$1.mkdir(workspaceDir, { recursive: true });
10457
10457
  const filePath = path.join(workspaceDir, name);
10458
10458
  const resolvedPath = await resolveWorkspaceFilePathOrRespond({
10459
10459
  respond,
@@ -12784,14 +12784,14 @@ function isRollingLogFile(file) {
12784
12784
  return ROLLING_LOG_RE.test(path.basename(file));
12785
12785
  }
12786
12786
  async function resolveLogFile(file) {
12787
- if (await fsPromises.stat(file).catch(() => null)) return file;
12787
+ if (await fs$1.stat(file).catch(() => null)) return file;
12788
12788
  if (!isRollingLogFile(file)) return file;
12789
12789
  const dir = path.dirname(file);
12790
- const entries = await fsPromises.readdir(dir, { withFileTypes: true }).catch(() => null);
12790
+ const entries = await fs$1.readdir(dir, { withFileTypes: true }).catch(() => null);
12791
12791
  if (!entries) return file;
12792
12792
  return (await Promise.all(entries.filter((entry) => entry.isFile() && ROLLING_LOG_RE.test(entry.name)).map(async (entry) => {
12793
12793
  const fullPath = path.join(dir, entry.name);
12794
- const fileStat = await fsPromises.stat(fullPath).catch(() => null);
12794
+ const fileStat = await fs$1.stat(fullPath).catch(() => null);
12795
12795
  return fileStat ? {
12796
12796
  path: fullPath,
12797
12797
  mtimeMs: fileStat.mtimeMs
@@ -12799,7 +12799,7 @@ async function resolveLogFile(file) {
12799
12799
  }))).filter((entry) => Boolean(entry)).toSorted((a, b) => b.mtimeMs - a.mtimeMs)[0]?.path ?? file;
12800
12800
  }
12801
12801
  async function readLogSlice(params) {
12802
- const stat = await fsPromises.stat(params.file).catch(() => null);
12802
+ const stat = await fs$1.stat(params.file).catch(() => null);
12803
12803
  if (!stat) return {
12804
12804
  cursor: 0,
12805
12805
  size: 0,
@@ -12837,7 +12837,7 @@ async function readLogSlice(params) {
12837
12837
  truncated,
12838
12838
  reset
12839
12839
  };
12840
- const handle = await fsPromises.open(params.file, "r");
12840
+ const handle = await fs$1.open(params.file, "r");
12841
12841
  try {
12842
12842
  let prefix = "";
12843
12843
  if (start > 0) {
@@ -13819,7 +13819,7 @@ const nodeHandlers = {
13819
13819
  const p = params;
13820
13820
  const payloadJSON = typeof p.payloadJSON === "string" ? p.payloadJSON : p.payload !== void 0 ? JSON.stringify(p.payload) : null;
13821
13821
  await respondUnavailableOnThrow(respond, async () => {
13822
- const { handleNodeEvent } = await import("./server-node-events-dr5CaM3M.js");
13822
+ const { handleNodeEvent } = await import("./server-node-events-Q0cT2ifj.js");
13823
13823
  const nodeId = client?.connect?.device?.id ?? client?.connect?.client?.id ?? "node";
13824
13824
  await handleNodeEvent({
13825
13825
  deps: context.deps,
@@ -16850,7 +16850,7 @@ function normalizeAgentPayload(payload) {
16850
16850
  async function startBrowserControlServerIfEnabled() {
16851
16851
  if (isTruthyEnvValue(process.env.SQUIDCLAW_SKIP_BROWSER_CONTROL_SERVER)) return null;
16852
16852
  const override = process.env.SQUIDCLAW_BROWSER_CONTROL_MODULE?.trim();
16853
- const mod = override ? await import(override) : await import("./server-DMAPnkgM.js");
16853
+ const mod = override ? await import(override) : await import("./server-Bm-IxvZZ.js");
16854
16854
  const start = typeof mod.startBrowserControlServiceFromConfig === "function" ? mod.startBrowserControlServiceFromConfig : mod.startBrowserControlServerFromConfig;
16855
16855
  const stop = typeof mod.stopBrowserControlService === "function" ? mod.stopBrowserControlService : mod.stopBrowserControlServer;
16856
16856
  if (!start) return null;
@@ -17078,7 +17078,7 @@ async function resolveFileWithinRoot(rootReal, urlPath) {
17078
17078
  if (normalized.endsWith("/")) return await tryOpen(path.posix.join(rel, "index.html"));
17079
17079
  const candidate = path.join(rootReal, rel);
17080
17080
  try {
17081
- const st = await fsPromises.lstat(candidate);
17081
+ const st = await fs$1.lstat(candidate);
17082
17082
  if (st.isSymbolicLink()) return null;
17083
17083
  if (st.isDirectory()) return await tryOpen(path.posix.join(rel, "index.html"));
17084
17084
  } catch {}
@@ -17115,8 +17115,8 @@ async function resolveA2uiRoot() {
17115
17115
  for (const dir of candidates) try {
17116
17116
  const indexPath = path.join(dir, "index.html");
17117
17117
  const bundlePath = path.join(dir, "a2ui.bundle.js");
17118
- await fsPromises.stat(indexPath);
17119
- await fsPromises.stat(bundlePath);
17118
+ await fs$1.stat(indexPath);
17119
+ await fs$1.stat(bundlePath);
17120
17120
  return dir;
17121
17121
  } catch {}
17122
17122
  return null;
@@ -17125,7 +17125,7 @@ async function resolveA2uiRootReal() {
17125
17125
  if (cachedA2uiRootReal !== void 0 && (cachedA2uiRootReal !== null || Date.now() - cachedA2uiResolvedAtMs < A2UI_ROOT_RETRY_NULL_AFTER_MS)) return cachedA2uiRootReal;
17126
17126
  if (!resolvingA2uiRoot) resolvingA2uiRoot = (async () => {
17127
17127
  const root = await resolveA2uiRoot();
17128
- cachedA2uiRootReal = root ? await fsPromises.realpath(root) : null;
17128
+ cachedA2uiRootReal = root ? await fs$1.realpath(root) : null;
17129
17129
  cachedA2uiResolvedAtMs = Date.now();
17130
17130
  resolvingA2uiRoot = null;
17131
17131
  return cachedA2uiRootReal;
@@ -17346,13 +17346,13 @@ function normalizeBasePath(rawPath) {
17346
17346
  }
17347
17347
  async function prepareCanvasRoot(rootDir) {
17348
17348
  await ensureDir(rootDir);
17349
- const rootReal = await fsPromises.realpath(rootDir);
17349
+ const rootReal = await fs$1.realpath(rootDir);
17350
17350
  try {
17351
17351
  const indexPath = path.join(rootReal, "index.html");
17352
- await fsPromises.stat(indexPath);
17352
+ await fs$1.stat(indexPath);
17353
17353
  } catch {
17354
17354
  try {
17355
- await fsPromises.writeFile(path.join(rootReal, "index.html"), defaultIndexHTML(), "utf8");
17355
+ await fs$1.writeFile(path.join(rootReal, "index.html"), defaultIndexHTML(), "utf8");
17356
17356
  } catch {}
17357
17357
  }
17358
17358
  return rootReal;
@@ -20398,7 +20398,7 @@ async function resolveGatewayOwnerStatus(pid, payload, platform, port) {
20398
20398
  }
20399
20399
  async function readLockPayload(lockPath) {
20400
20400
  try {
20401
- const raw = await fsPromises.readFile(lockPath, "utf8");
20401
+ const raw = await fs$1.readFile(lockPath, "utf8");
20402
20402
  const parsed = JSON.parse(raw);
20403
20403
  if (typeof parsed.pid !== "number") return null;
20404
20404
  if (typeof parsed.createdAt !== "string") return null;
@@ -20433,11 +20433,11 @@ async function acquireGatewayLock(opts = {}) {
20433
20433
  const platform = opts.platform ?? process.platform;
20434
20434
  const port = opts.port;
20435
20435
  const { lockPath, configPath } = resolveGatewayLockPath(env);
20436
- await fsPromises.mkdir(path.dirname(lockPath), { recursive: true });
20436
+ await fs$1.mkdir(path.dirname(lockPath), { recursive: true });
20437
20437
  const startedAt = Date.now();
20438
20438
  let lastPayload = null;
20439
20439
  while (Date.now() - startedAt < timeoutMs) try {
20440
- const handle = await fsPromises.open(lockPath, "wx");
20440
+ const handle = await fs$1.open(lockPath, "wx");
20441
20441
  const startTime = platform === "linux" ? readLinuxStartTime(process.pid) : null;
20442
20442
  const payload = {
20443
20443
  pid: process.pid,
@@ -20451,7 +20451,7 @@ async function acquireGatewayLock(opts = {}) {
20451
20451
  configPath,
20452
20452
  release: async () => {
20453
20453
  await handle.close().catch(() => void 0);
20454
- await fsPromises.rm(lockPath, { force: true });
20454
+ await fs$1.rm(lockPath, { force: true });
20455
20455
  }
20456
20456
  };
20457
20457
  } catch (err) {
@@ -20460,7 +20460,7 @@ async function acquireGatewayLock(opts = {}) {
20460
20460
  const ownerPid = lastPayload?.pid;
20461
20461
  const ownerStatus = ownerPid ? await resolveGatewayOwnerStatus(ownerPid, lastPayload, platform, port) : "unknown";
20462
20462
  if (ownerStatus === "dead" && ownerPid) {
20463
- await fsPromises.rm(lockPath, { force: true });
20463
+ await fs$1.rm(lockPath, { force: true });
20464
20464
  continue;
20465
20465
  }
20466
20466
  if (ownerStatus !== "alive") {
@@ -20470,13 +20470,13 @@ async function acquireGatewayLock(opts = {}) {
20470
20470
  stale = Number.isFinite(createdAt) ? Date.now() - createdAt > staleMs : false;
20471
20471
  }
20472
20472
  if (!stale) try {
20473
- const st = await fsPromises.stat(lockPath);
20473
+ const st = await fs$1.stat(lockPath);
20474
20474
  stale = Date.now() - st.mtimeMs > staleMs;
20475
20475
  } catch {
20476
20476
  stale = false;
20477
20477
  }
20478
20478
  if (stale) {
20479
- await fsPromises.rm(lockPath, { force: true });
20479
+ await fs$1.rm(lockPath, { force: true });
20480
20480
  continue;
20481
20481
  }
20482
20482
  }
@@ -22828,7 +22828,7 @@ async function startGatewayServer(port = 18789, opts = {}) {
22828
22828
  if (!minimalTestGateway) cron.start().catch((err) => logCron.error(`failed to start: ${String(err)}`));
22829
22829
  if (!minimalTestGateway) (async () => {
22830
22830
  const { recoverPendingDeliveries } = await import("./delivery-queue-D-91NTFS.js").then((n) => n.n);
22831
- const { deliverOutboundPayloads } = await import("./deliver-D-IQEJ52.js").then((n) => n.n);
22831
+ const { deliverOutboundPayloads } = await import("./deliver-CL2RW5UB.js").then((n) => n.n);
22832
22832
  await recoverPendingDeliveries({
22833
22833
  deliver: deliverOutboundPayloads,
22834
22834
  log: log.child("delivery-recovery"),