squidclaw 3.0.33 → 3.0.34

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 (280) hide show
  1. package/dist/{accounts-BFS_qklA.js → accounts-CB2Or0mr.js} +2 -2
  2. package/dist/{accounts-DfrJiFJJ.js → accounts-Cop2dSRo.js} +2 -2
  3. package/dist/{accounts-pMDX8iho.js → accounts-CqITV0Ga.js} +4 -4
  4. package/dist/{acp-cli-BeT7oXUu.js → acp-cli-Cgh0knV4.js} +2 -2
  5. package/dist/{active-listener-CH2vJ3EZ.js → active-listener-B6G6kmsb.js} +2 -2
  6. package/dist/{agents.config-Cav8LwTL.js → agents.config-DOZdl-eO.js} +1 -1
  7. package/dist/{api-key-rotation-DCBXT0v7.js → api-key-rotation-Da2qYrP7.js} +2 -2
  8. package/dist/{audio-preflight-WUW8KeL4.js → audio-preflight-CB33NBGY.js} +6 -6
  9. package/dist/{audio-preflight-Ckq8A2xS.js → audio-preflight-CXP7KNn_.js} +4 -4
  10. package/dist/{audio-preflight-B5XvcdFX.js → audio-preflight-yiMsGLW7.js} +30 -30
  11. package/dist/{audio-transcription-runner-Bd34S1mx.js → audio-transcription-runner-BOxTuqbS.js} +1 -1
  12. package/dist/{audio-transcription-runner-BkEXZq6_.js → audio-transcription-runner-CCZC5tJf.js} +1 -1
  13. package/dist/{audio-transcription-runner-DUC0ItDY.js → audio-transcription-runner-Mha07yP4.js} +12 -12
  14. package/dist/{audit-CL1tJbCc.js → audit-BhpEYysK.js} +6 -6
  15. package/dist/{audit-membership-runtime-czdecfjJ.js → audit-membership-runtime-By9-qSwl.js} +3 -3
  16. package/dist/{auth-choice-CbIT_f15.js → auth-choice-CW-WPa0J.js} +2 -2
  17. package/dist/{browser-cli-Bjw4bzsY.js → browser-cli-BsOTPzD6.js} +3 -3
  18. package/dist/build-info.json +3 -3
  19. package/dist/bundled/boot-md/handler.js +49 -49
  20. package/dist/bundled/bootstrap-extra-files/handler.js +5 -5
  21. package/dist/bundled/command-logger/handler.js +1 -1
  22. package/dist/bundled/session-memory/HOOK.md +2 -1
  23. package/dist/bundled/session-memory/handler.js +142 -55
  24. package/dist/{call-BZMmsZnA.js → call-CsRvPUMG.js} +1 -1
  25. package/dist/{channel-activity-7QMEKenc.js → channel-activity-Du1kh0t3.js} +3 -3
  26. package/dist/{channel-options-ByYVebwk.js → channel-options-DiLSWw11.js} +1 -1
  27. package/dist/{channel-web-DRCZstY9.js → channel-web-B9qThdZn.js} +3 -3
  28. package/dist/{channels-cli-fZ8vLR-3.js → channels-cli-DPzzCs8D.js} +21 -21
  29. package/dist/{chrome-B3h5980A.js → chrome-AmH-OPlL.js} +8 -8
  30. package/dist/{chrome-BTwG9Gvh.js → chrome-C2CliEWR.js} +15 -15
  31. package/dist/{chrome-uzcvgAW9.js → chrome-DLZaNSqV.js} +8 -8
  32. package/dist/{clawbot-cli-Aal6iAhy.js → clawbot-cli-Y6f5RzmX.js} +4 -4
  33. package/dist/{cli-DDzqaV2x.js → cli-Cegwo5rc.js} +16 -16
  34. package/dist/{client-gy8bx9Xy.js → client-DYXM5N_N.js} +4 -4
  35. package/dist/{command-secret-targets-QzzK0cvw.js → command-secret-targets-4lxt7RD_.js} +2 -2
  36. package/dist/{commands-registry-BIi1tG__.js → commands-registry-6jWzz0mk.js} +4 -4
  37. package/dist/{completion-cli-cvF7VIAg.js → completion-cli-BLY0f3DS.js} +1 -1
  38. package/dist/{config-cli-BeARZFf8.js → config-cli-B7X83S8T.js} +1 -1
  39. package/dist/{configure-D3v5-GDg.js → configure-Hiahxtwa.js} +6 -6
  40. package/dist/{cron-cli-DjN_8kik.js → cron-cli-DIoOoMCm.js} +3 -3
  41. package/dist/{daemon-cli-D-GtS9tA.js → daemon-cli-DyGOGB4b.js} +2 -2
  42. package/dist/{deliver-KuyvhwaK.js → deliver-Baa4v4N-.js} +1 -1
  43. package/dist/{deliver-e7dtX7aI.js → deliver-DGXG0w_w.js} +1 -1
  44. package/dist/{deliver-DZCNXFM8.js → deliver-Ddw3EsOV.js} +11 -11
  45. package/dist/deliver-runtime-CF9aNwHW.js +36 -0
  46. package/dist/{deliver-runtime-CJeRn4Mi.js → deliver-runtime-Cld2SPeU.js} +5 -5
  47. package/dist/{deliver-runtime-DPjMYovi.js → deliver-runtime-Do2EXjHh.js} +3 -3
  48. package/dist/deps-send-discord.runtime-BdlL7AnG.js +26 -0
  49. package/dist/deps-send-imessage.runtime-BQx5JSa_.js +25 -0
  50. package/dist/deps-send-signal.runtime-dgrmoRN9.js +24 -0
  51. package/dist/deps-send-slack.runtime-CCOjVEQr.js +22 -0
  52. package/dist/deps-send-telegram.runtime-BgwTF5zt.js +27 -0
  53. package/dist/deps-send-whatsapp.runtime-C_zE7G9V.js +60 -0
  54. package/dist/{deps-send-whatsapp.runtime-B155kzJI.js → deps-send-whatsapp.runtime-DhuS0SeA.js} +7 -7
  55. package/dist/{deps-send-whatsapp.runtime-cpKOCWZ7.js → deps-send-whatsapp.runtime-Di849gV3.js} +18 -18
  56. package/dist/{devices-cli-CxBvKU-k.js → devices-cli-DJ5t9Awn.js} +2 -2
  57. package/dist/{diagnostic-4Dbmo6KU.js → diagnostic-B74jJPqv.js} +2 -2
  58. package/dist/{doctor-completion-BIsKBzEq.js → doctor-completion-kjDYgxZk.js} +1 -1
  59. package/dist/{errors-Dih7OXdL.js → errors-CCLnP2Fs.js} +1 -1
  60. package/dist/{exec-approvals-cli-BWJVqTGx.js → exec-approvals-cli-qbq31pxo.js} +4 -4
  61. package/dist/extensionAPI.js +6 -6
  62. package/dist/{fetch-COEkF6YP.js → fetch-OMudX6HR.js} +4 -4
  63. package/dist/{fetch-guard-CcP28UT1.js → fetch-guard-DBZ7o2IA.js} +2 -2
  64. package/dist/{frontmatter-LLGh43CC.js → frontmatter-vSrur-r-.js} +3 -3
  65. package/dist/{fs-safe-NHJJ1b9f.js → fs-safe-Dy2_iDiY.js} +3 -3
  66. package/dist/{gateway-cli-D6hF-7r8.js → gateway-cli-lvhI_G2p.js} +28 -28
  67. package/dist/{gateway-rpc-CMY4PORW.js → gateway-rpc-DXJlCFNJ.js} +1 -1
  68. package/dist/{health-B6rkscPh.js → health-TD-34Yp-.js} +3 -3
  69. package/dist/{hooks-cli-CsLbZW55.js → hooks-cli-C6DWUB-U.js} +17 -17
  70. package/dist/{image-Dkl58_nM.js → image-Ccz6ndn7.js} +1 -1
  71. package/dist/{image-COAbpp2B.js → image-CdfqhHaX.js} +6 -6
  72. package/dist/{image-CBBib8Ld.js → image-DI75geX3.js} +1 -1
  73. package/dist/{image-ops-QLLBkxzG.js → image-ops-BQmWYj-1.js} +2 -2
  74. package/dist/image-runtime-BFxy3jl0.js +29 -0
  75. package/dist/{image-runtime-BinILRte.js → image-runtime-BWARi-r4.js} +3 -3
  76. package/dist/{image-runtime-2ePySomG.js → image-runtime-Obmeae9a.js} +5 -5
  77. package/dist/index.js +21 -21
  78. package/dist/{ir-RKRKj5a9.js → ir-DEPhOdwg.js} +8 -8
  79. package/dist/{legacy-names-CR_H5NWa.js → legacy-names-CDxprteD.js} +1 -1
  80. package/dist/llm-slug-generator.js +49 -49
  81. package/dist/{logger-D20iS3B-.js → logger-onBePS9K.js} +1 -1
  82. package/dist/{login-C1_lumKW.js → login-BPzRFY6S.js} +5 -5
  83. package/dist/{login-qr-D0Gij2UC.js → login-qr-BZbSxC-5.js} +8 -8
  84. package/dist/{logs-cli-Dv4wWIJZ.js → logs-cli-C4B9RucB.js} +3 -3
  85. package/dist/{manager-B_QaG_-L.js → manager-D3ROcs7_.js} +9 -9
  86. package/dist/manager-runtime-Dup90ARI.js +18 -0
  87. package/dist/{memory-cli-CgsaxpRr.js → memory-cli-C7wo32BJ.js} +1 -1
  88. package/dist/{model-selection-Bjj4oU16.js → model-selection-Bh4BR1_K.js} +10 -10
  89. package/dist/{models-cli-Cs6QUPHJ.js → models-cli-CGWYDv56.js} +17 -17
  90. package/dist/{node-cli-QeGnYeqt.js → node-cli-DhcjrGhX.js} +5 -5
  91. package/dist/{node-command-policy-CzqB-8ah.js → node-command-policy-CPjB6YQt.js} +1 -1
  92. package/dist/{nodes-cli-u94LkIig.js → nodes-cli-CmE8JKKq.js} +3 -3
  93. package/dist/{npm-resolution-DptUU3y3.js → npm-resolution-Bwt62vuA.js} +1 -1
  94. package/dist/{onboard-CJX_C5lq.js → onboard-BP7rTtCO.js} +3 -3
  95. package/dist/{onboard-channels-CA3x3tGg.js → onboard-channels-D2p7QNyT.js} +2 -2
  96. package/dist/{onboard-helpers-DZtoPn8i.js → onboard-helpers-JS-Lbczt.js} +1 -1
  97. package/dist/{onboard-remote-BvW9CIHn.js → onboard-remote-Bf-wwh2S.js} +1 -1
  98. package/dist/{onboard-skills-D19L2KkN.js → onboard-skills-CUip0jpN.js} +1 -1
  99. package/dist/{onboarding-CvKwUVhN.js → onboarding-LbGi6oDz.js} +7 -7
  100. package/dist/{onboarding.finalize-CxclFJxn.js → onboarding.finalize-CWcaxeIO.js} +21 -21
  101. package/dist/{onboarding.gateway-config-DvYcbETj.js → onboarding.gateway-config-BfJ7jZ3-.js} +4 -4
  102. package/dist/{outbound-ChkqJkiM.js → outbound-BApjXYwN.js} +6 -6
  103. package/dist/{outbound-attachment-CRXa01xP.js → outbound-attachment-1Yd0-JW2.js} +2 -2
  104. package/dist/{path-alias-guards-DgNuZPBA.js → path-alias-guards-B63g_1Gb.js} +1 -1
  105. package/dist/{paths-7EEBmI5a.js → paths-BJWEyNJy.js} +1 -1
  106. package/dist/{pi-embedded-BULXCFPg.js → pi-embedded-BPU69pec.js} +70 -70
  107. package/dist/{pi-embedded-CLTN3qXD.js → pi-embedded-Cajbf_ri.js} +131 -131
  108. package/dist/{pi-embedded-helpers-CuiXHzQ1.js → pi-embedded-helpers-DBZo6ghW.js} +1 -1
  109. package/dist/{pi-embedded-helpers-CQJfmPVp.js → pi-embedded-helpers-u_th5KKV.js} +3 -3
  110. package/dist/{pi-embedded-helpers-1Z1aUoto.js → pi-embedded-helpers-xpgo_nwz.js} +19 -19
  111. package/dist/{pi-model-discovery-DSuyTtRM.js → pi-model-discovery-BbCPyLm5.js} +1 -1
  112. package/dist/pi-model-discovery-runtime-BeF5ldX8.js +11 -0
  113. package/dist/{pi-tools.before-tool-call.runtime-BCq4EKHD.js → pi-tools.before-tool-call.runtime-s89v8h6G.js} +7 -7
  114. package/dist/{pi-tools.policy-FpqAOqvu.js → pi-tools.policy-BYTs7z53.js} +1 -1
  115. package/dist/{plugin-registry-Cpf1qgAz.js → plugin-registry-FXXByNP3.js} +1 -1
  116. package/dist/plugin-sdk/accounts-BXFDqY90.js +288 -0
  117. package/dist/plugin-sdk/accounts-DU7Js54-.js +46 -0
  118. package/dist/plugin-sdk/accounts-DxiB_4z4.js +35 -0
  119. package/dist/plugin-sdk/active-listener-DRKcesNb.js +50 -0
  120. package/dist/plugin-sdk/api-key-rotation-k1ZNheUH.js +181 -0
  121. package/dist/plugin-sdk/audio-preflight-Be1sKsob.js +69 -0
  122. package/dist/plugin-sdk/audio-transcription-runner-jhHyCc_7.js +2176 -0
  123. package/dist/plugin-sdk/audit-membership-runtime-B9b-zRwg.js +58 -0
  124. package/dist/plugin-sdk/channel-activity-Bq1Y9RiB.js +94 -0
  125. package/dist/plugin-sdk/channel-web-AsdjtnvN.js +2256 -0
  126. package/dist/plugin-sdk/chrome-DOnBMnlx.js +2415 -0
  127. package/dist/plugin-sdk/commands-registry-D0py59pz.js +1125 -0
  128. package/dist/plugin-sdk/config-B16xKqSo.js +17912 -0
  129. package/dist/plugin-sdk/deliver-BqXXtIuw.js +1694 -0
  130. package/dist/plugin-sdk/deliver-runtime-D0xZkt8n.js +32 -0
  131. package/dist/plugin-sdk/deps-send-discord.runtime-BM6ppx2Q.js +23 -0
  132. package/dist/plugin-sdk/deps-send-imessage.runtime-3w5PhXGu.js +22 -0
  133. package/dist/plugin-sdk/deps-send-signal.runtime-yH9cQl3_.js +21 -0
  134. package/dist/plugin-sdk/deps-send-slack.runtime-Bh4gw-L5.js +19 -0
  135. package/dist/plugin-sdk/deps-send-telegram.runtime-C_CtsWgt.js +24 -0
  136. package/dist/plugin-sdk/deps-send-whatsapp.runtime-BF4vx9Ho.js +57 -0
  137. package/dist/plugin-sdk/diagnostic-DUbajFSl.js +319 -0
  138. package/dist/plugin-sdk/errors-B8oJXuCF.js +54 -0
  139. package/dist/plugin-sdk/fetch-guard-Cgyq6Jv9.js +156 -0
  140. package/dist/plugin-sdk/fs-safe-BW1ypSDS.js +352 -0
  141. package/dist/plugin-sdk/image-BPXnvxYL.js +2310 -0
  142. package/dist/plugin-sdk/image-ops-BBY2fn9x.js +584 -0
  143. package/dist/plugin-sdk/image-runtime-S-TzaJpg.js +25 -0
  144. package/dist/plugin-sdk/index.js +50 -50
  145. package/dist/plugin-sdk/ir-BJsqyZfm.js +1296 -0
  146. package/dist/plugin-sdk/local-roots-C1ETRlaC.js +186 -0
  147. package/dist/plugin-sdk/logger-DDdrdbDu.js +1163 -0
  148. package/dist/plugin-sdk/login-DtS9DDnV.js +57 -0
  149. package/dist/plugin-sdk/login-qr-B9YeeJ37.js +320 -0
  150. package/dist/plugin-sdk/manager-Dn7j3n0d.js +3917 -0
  151. package/dist/plugin-sdk/manager-runtime-UK1-iA2B.js +15 -0
  152. package/dist/plugin-sdk/outbound-B8ca8vE3.js +212 -0
  153. package/dist/plugin-sdk/outbound-attachment-BppFIMQa.js +19 -0
  154. package/dist/plugin-sdk/path-alias-guards-BX-3FprC.js +43 -0
  155. package/dist/plugin-sdk/paths-CjFcHB_C.js +166 -0
  156. package/dist/plugin-sdk/pi-embedded-helpers-BeYjP1MW.js +9627 -0
  157. package/dist/plugin-sdk/pi-model-discovery-B_qCKuSW.js +134 -0
  158. package/dist/plugin-sdk/pi-model-discovery-runtime-CZNiNFlm.js +8 -0
  159. package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-cZdrrV27.js +354 -0
  160. package/dist/plugin-sdk/plugins-rivB8KaQ.js +864 -0
  161. package/dist/{proxy-fetch-ChIxNDe3.js → plugin-sdk/proxy-fetch-ZPEvp58f.js} +1 -1
  162. package/dist/plugin-sdk/pw-ai-qaWZD0yx.js +1938 -0
  163. package/dist/plugin-sdk/qmd-manager-izn0N9V3.js +1448 -0
  164. package/dist/plugin-sdk/query-expansion-C1Nx0XAb.js +1011 -0
  165. package/dist/{redact-BSwbgwaV.js → plugin-sdk/redact-BoNEjbpF.js} +1 -1
  166. package/dist/plugin-sdk/reply-DNSpho0-.js +98763 -0
  167. package/dist/plugin-sdk/resolve-outbound-target-YiPIGXVN.js +40 -0
  168. package/dist/plugin-sdk/run-with-concurrency-vfuRiXdY.js +2023 -0
  169. package/dist/plugin-sdk/runtime-whatsapp-login.runtime-BgwMJs4X.js +10 -0
  170. package/dist/plugin-sdk/runtime-whatsapp-outbound.runtime-Y7maoii7.js +19 -0
  171. package/dist/plugin-sdk/send-BSD6Pkrk.js +414 -0
  172. package/dist/plugin-sdk/send-C4KxEJe1.js +503 -0
  173. package/dist/plugin-sdk/send-D3XVKGvq.js +540 -0
  174. package/dist/plugin-sdk/send-DFrnRiWm.js +3135 -0
  175. package/dist/plugin-sdk/send-Dh1f5xjE.js +2587 -0
  176. package/dist/plugin-sdk/session-D5c0BIEo.js +169 -0
  177. package/dist/plugin-sdk/signal.js +2 -2
  178. package/dist/plugin-sdk/skill-commands-CnqkEfhS.js +342 -0
  179. package/dist/plugin-sdk/skills-DSbDUvmU.js +1428 -0
  180. package/dist/plugin-sdk/slack.js +2 -2
  181. package/dist/plugin-sdk/slash-commands.runtime-Dbtq7ppF.js +13 -0
  182. package/dist/plugin-sdk/slash-dispatch.runtime-BhAks953.js +52 -0
  183. package/dist/plugin-sdk/slash-skill-commands.runtime-QGNWVO9S.js +16 -0
  184. package/dist/plugin-sdk/ssrf-DvsjfpC2.js +202 -0
  185. package/dist/plugin-sdk/store-DG90hxe6.js +81 -0
  186. package/dist/plugin-sdk/subagent-registry-runtime-Db83OZ3_.js +52 -0
  187. package/dist/plugin-sdk/tables-DNlQ8oQ3.js +55 -0
  188. package/dist/{target-errors-BMTA5KVE.js → plugin-sdk/target-errors-BlVYPwVC.js} +2 -2
  189. package/dist/plugin-sdk/thinking-DT2ZR60x.js +1206 -0
  190. package/dist/{tokens-Cdk21tF_.js → plugin-sdk/tokens-CTIYTLWu.js} +1 -1
  191. package/dist/plugin-sdk/tool-images-DroS1EaM.js +274 -0
  192. package/dist/plugin-sdk/web-42d5VBZj.js +56 -0
  193. package/dist/plugin-sdk/whatsapp-actions-DR2aYq5f.js +80 -0
  194. package/dist/{plugins-D-K4oUXz.js → plugins-D8QbEQB8.js} +6 -6
  195. package/dist/{plugins-cli-DWmGTrQi.js → plugins-cli-BmfpsKs2.js} +17 -17
  196. package/dist/{program-context-CIEsO7ba.js → program-context-Cc5-MG37.js} +34 -34
  197. package/dist/{prompt-select-styled-4uvdkCmK.js → prompt-select-styled-BmJHQFIe.js} +10 -10
  198. package/dist/{provider-auth-helpers-Ds4co7pd.js → provider-auth-helpers-BrYxePGn.js} +1 -1
  199. package/dist/{proxy-env-D9oPe73i.js → proxy-env-DS2YEWWX.js} +1 -1
  200. package/dist/proxy-fetch-08-dhqxn.js +38 -0
  201. package/dist/{push-apns-wyGqUoCL.js → push-apns-BH6u2jeD.js} +1 -1
  202. package/dist/{pw-ai-DS32O9Ei.js → pw-ai-Bxj7Voze.js} +1 -1
  203. package/dist/{pw-ai-DXis1Gal.js → pw-ai-Do8UJz-Y.js} +1 -1
  204. package/dist/{pw-ai-4QFtj-s9.js → pw-ai-rD2G8OP-.js} +12 -12
  205. package/dist/{qmd-manager-CIcyVJmI.js → qmd-manager-B9vC7u4w.js} +9 -9
  206. package/dist/{qr-cli-DhqLEdBe.js → qr-cli-t7wb_tRQ.js} +1 -1
  207. package/dist/{query-expansion-BMExPdLO.js → query-expansion-o9Ib6_Rk.js} +4 -4
  208. package/dist/redact-rnJm_Z5E.js +319 -0
  209. package/dist/{register.agent-IRNp0fr-.js → register.agent-eYMqq7DM.js} +21 -21
  210. package/dist/{register.configure-D4ecAwAg.js → register.configure-5ZU_WG0B.js} +24 -24
  211. package/dist/{register.maintenance-YOZ3sMNS.js → register.maintenance-Di-_iCcy.js} +22 -22
  212. package/dist/{register.message-ozARKUco.js → register.message-BJEQ0tWj.js} +17 -17
  213. package/dist/{register.onboard-BtzGW6wy.js → register.onboard-D8V8BiRf.js} +5 -5
  214. package/dist/{register.setup-CaZETnfd.js → register.setup-CuD_ucSh.js} +5 -5
  215. package/dist/{register.status-health-sessions-qS3pe6Kw.js → register.status-health-sessions-CfcRluvS.js} +20 -20
  216. package/dist/{reply-d12k6JyN.js → reply-DM6COks_.js} +30 -30
  217. package/dist/{rpc-BnWL4MCX.js → rpc-BAWL8_DO.js} +1 -1
  218. package/dist/{run-with-concurrency-hJFK7PcO.js → run-with-concurrency-C3dKaL_j.js} +3 -3
  219. package/dist/runtime-whatsapp-login.runtime-BVm0A03Y.js +13 -0
  220. package/dist/runtime-whatsapp-outbound.runtime-d8oRCgsW.js +22 -0
  221. package/dist/{sandbox-cli-CO9AcpuP.js → sandbox-cli-B_c94l3B.js} +3 -3
  222. package/dist/{sandbox-4_YzlsBa.js → sandbox-dnsTApLp.js} +2 -2
  223. package/dist/{secrets-cli-CE_fukZS.js → secrets-cli-ES-9H2pj.js} +3 -3
  224. package/dist/{security-cli-D-jh37Iy.js → security-cli-B5H4tjcT.js} +8 -8
  225. package/dist/{send-DySBiOxg.js → send-6s7HVGcN.js} +7 -7
  226. package/dist/{send-BMtxl7vL.js → send-BdQyKIzE.js} +5 -5
  227. package/dist/{send-DJcNRhf_.js → send-CAzswJK6.js} +8 -8
  228. package/dist/{send-CNzGOCHa.js → send-DKB7vlw3.js} +6 -6
  229. package/dist/{send-pUHxPU20.js → send-Q5SBsGfY.js} +14 -14
  230. package/dist/{server-COF4C6UQ.js → server-DWce8-ko.js} +4 -4
  231. package/dist/{server-context-DWRUW3Oc.js → server-context-CYPsJeRg.js} +3 -3
  232. package/dist/{server-lifecycle-DSRW9YyS.js → server-lifecycle-CL57-qY-.js} +2 -2
  233. package/dist/{server-node-events-DcI3BKLU.js → server-node-events-CM2wrNgk.js} +17 -17
  234. package/dist/{session-DOFapRIv.js → session-D2CiV8TN.js} +4 -4
  235. package/dist/{skill-commands-yvTkQtnt.js → skill-commands-CgJiKg3Q.js} +5 -5
  236. package/dist/{skills-BjHeDO5V.js → skills-DNyMj13y.js} +7 -7
  237. package/dist/slash-commands.runtime-Cvnjq5gh.js +16 -0
  238. package/dist/{slash-dispatch.runtime-CnIrfAgj.js → slash-dispatch.runtime-9OkfqjfK.js} +16 -16
  239. package/dist/{slash-dispatch.runtime-DidWtkRY.js → slash-dispatch.runtime-UHClfKIh.js} +6 -6
  240. package/dist/slash-dispatch.runtime-YGQtou1U.js +56 -0
  241. package/dist/slash-skill-commands.runtime-BbZPUdhN.js +20 -0
  242. package/dist/{status-Cxc7ROTK.js → status-DLXPWgfm.js} +7 -7
  243. package/dist/{store-C3iBzr-_.js → store-Bdm7wypS.js} +2 -2
  244. package/dist/{subagent-registry-runtime-Dup_yrOH.js → subagent-registry-runtime-BYDycq2m.js} +6 -6
  245. package/dist/{subagent-registry-runtime-DqbU91-h.js → subagent-registry-runtime-CQR_M6WF.js} +16 -16
  246. package/dist/subagent-registry-runtime-DoZWJdY9.js +56 -0
  247. package/dist/{subsystem-CWsKV5VU.js → subsystem-BJ89YjCN.js} +2 -2
  248. package/dist/{system-cli-B0wBc7tJ.js → system-cli-CUOkjFj4.js} +3 -3
  249. package/dist/{tables-Bv8tJ0qC.js → tables-MEAoO_QC.js} +1 -1
  250. package/dist/target-errors-qetEoXTB.js +195 -0
  251. package/dist/{thinking-BB_GM390.js → thinking-CaLooOu4.js} +7 -7
  252. package/dist/tokens-9NF8L9Uh.js +52 -0
  253. package/dist/{tool-images-HRwkh81U.js → tool-images-CkmNQqHm.js} +2 -2
  254. package/dist/{tui-BNyyikcb.js → tui-ChZP3wJ7.js} +3 -3
  255. package/dist/{tui-cli-DsuDwgRG.js → tui-cli-nXP__ZM8.js} +7 -7
  256. package/dist/{update-cli-CqGNnerP.js → update-cli-XGRmAcuW.js} +23 -23
  257. package/dist/{update-runner-BGYtEI5Z.js → update-runner-7klqnWFq.js} +1 -1
  258. package/dist/{web-BQbhCFGN.js → web-6kCngkSg.js} +17 -17
  259. package/dist/{web-Cp2nm6U4.js → web-CGbFuIR9.js} +6 -6
  260. package/dist/{web-BbpOMti_.js → web-ajuJjPrA.js} +53 -53
  261. package/dist/{whatsapp-actions-CuLcPfQ9.js → whatsapp-actions-DuJpyhRe.js} +19 -19
  262. package/dist/{with-timeout-DINiEgLx.js → with-timeout-CtjR5hW9.js} +2 -2
  263. package/dist/{workspace-MO4aE903.js → workspace-CkozFUzc.js} +2 -2
  264. package/package.json +2 -2
  265. package/dist/deliver-runtime-BJoBkkm_.js +0 -36
  266. package/dist/deps-send-discord.runtime-Dlb1pOSn.js +0 -26
  267. package/dist/deps-send-imessage.runtime-DmVvqFTt.js +0 -25
  268. package/dist/deps-send-signal.runtime-DPX_GcJK.js +0 -24
  269. package/dist/deps-send-slack.runtime-s7wb1ssP.js +0 -22
  270. package/dist/deps-send-telegram.runtime-DcIT4v5p.js +0 -27
  271. package/dist/deps-send-whatsapp.runtime-DfAhniLS.js +0 -60
  272. package/dist/image-runtime-Dkwf1-U3.js +0 -29
  273. package/dist/manager-runtime-DPiPNTWB.js +0 -18
  274. package/dist/pi-model-discovery-runtime-CRif8A8F.js +0 -11
  275. package/dist/runtime-whatsapp-login.runtime-DTnmQLV1.js +0 -13
  276. package/dist/runtime-whatsapp-outbound.runtime-Da-07rzo.js +0 -22
  277. package/dist/slash-commands.runtime-FS9JZ9BW.js +0 -16
  278. package/dist/slash-dispatch.runtime-BZw5XlvY.js +0 -56
  279. package/dist/slash-skill-commands.runtime-BZIbPU6x.js +0 -20
  280. package/dist/subagent-registry-runtime-Blx4zbr0.js +0 -56
@@ -1,60 +1,60 @@
1
- import { _ as toAgentModelListLike, a as resolveAgentDir, c as resolveAgentWorkspaceDir, d as resolveRunModelFallbacksOverride, f as resolveSessionAgentId, g as resolveAgentModelPrimaryValue, h as resolveAgentModelFallbackValues, i as resolveAgentConfig, l as resolveDefaultAgentId, n as hasConfiguredModelFallbacks, p as resolveSessionAgentIds, r as listAgentIds, s as resolveAgentSkillsFilter, t as runTasksWithConcurrency, u as resolveEffectiveModelFallbacks } from "./run-with-concurrency-hJFK7PcO.js";
1
+ import { _ as toAgentModelListLike, a as resolveAgentDir, c as resolveAgentWorkspaceDir, d as resolveRunModelFallbacksOverride, f as resolveSessionAgentId, g as resolveAgentModelPrimaryValue, h as resolveAgentModelFallbackValues, i as resolveAgentConfig, l as resolveDefaultAgentId, n as hasConfiguredModelFallbacks, p as resolveSessionAgentIds, r as listAgentIds, s as resolveAgentSkillsFilter, t as runTasksWithConcurrency, u as resolveEffectiveModelFallbacks } from "./run-with-concurrency-C3dKaL_j.js";
2
2
  import { a as resolveGatewayPort, c as resolveStateDir, d as resolveRequiredHomeDir, l as expandHomePrefix, n as STATE_DIR, r as resolveConfigPath } from "./paths-ZhiQAuKk.js";
3
- import { C as normalizeLogLevel, E as consumeRootOptionToken, T as FLAG_TERMINATOR, _ as isRich, a as clearActiveProgressLine, c as danger, f as setVerbose, g as colorize, h as warn, i as defaultRuntime, o as registerActiveProgressLine, p as shouldLogVerbose, r as createNonExitingRuntime, s as unregisterActiveProgressLine, t as createSubsystemLogger, u as logVerbose, v as theme, w as resolvePreferredSquidClawTmpDir, y as getChildLogger } from "./subsystem-CWsKV5VU.js";
4
- import { $ as parseAgentSessionKey, A as normalizeWindowsPathForComparison, B as resolveAgentIdFromSessionKey, G as normalizeAccountId$2, H as sanitizeAgentId, I as classifySessionKeyShape, J as deriveSessionChatType, K as normalizeOptionalAccountId, L as isValidAgentId, M as DEFAULT_MAIN_KEY, N as buildAgentMainSessionKey, P as buildAgentPeerSessionKey, Q as isSubagentSessionKey, R as normalizeAgentId, U as scopedHeartbeatWakeOptions, V as resolveThreadSessionKeys, W as DEFAULT_ACCOUNT_ID, X as isAcpSessionKey, Y as getSubagentDepth, Z as isCronSessionKey, _ as runExec, a as DEFAULT_IDENTITY_FILENAME, b as openBoundaryFile, et as resolveThreadParentSessionKey, f as loadWorkspaceBootstrapFiles, g as runCommandWithTimeout, j as DEFAULT_AGENT_ID, l as ensureAgentWorkspace, m as resolveSquidClawPackageRoot, n as DEFAULT_AGENT_WORKSPACE_DIR, q as isBlockedObjectKey, r as DEFAULT_BOOTSTRAP_FILENAME, u as filterBootstrapFilesForSession, v as spawnWithFallback, x as openBoundaryFileSync, z as normalizeMainKey } from "./workspace-MO4aE903.js";
5
- import { C as sleep$1, D as isPlainObject, E as truncateUtf16Safe, S as shortenHomePath, a as CONFIG_DIR, d as formatTerminalLink, f as isRecord$1, h as normalizeE164, i as logWarn, l as ensureDir$3, n as logError, r as logInfo, s as clampInt, t as logDebug, u as escapeRegExp, w as sliceUtf16Safe, x as shortenHomeInString, y as resolveUserPath } from "./logger-D20iS3B-.js";
6
- import { $ as resolveConfigSnapshotHash, $n as dedupeProfileIds, $t as createPluginRegistry, A as getCustomProviderApiKey, An as unwrapKnownDispatchWrapperInvocation, At as isPathWithinRoot, B as markAuthProfileFailure, Bn as resolveSlackNativeStreaming, Bt as resolveMemorySlotDecision, C as OLLAMA_NATIVE_BASE_URL, Cn as DEFAULT_SAFE_BINS, D as buildStreamErrorAssistantMessage, Dn as extractShellWrapperInlineCommand, Dt as AVATAR_MAX_BYTES, E as buildAssistantMessageWithZeroUsage, En as resolveCommandResolutionFromArgv, Fn as resolveSafeBinProfiles, Ft as isPathInside, G as describeUnknownError$1, Gn as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, Gt as normalizeAnyChannelId, H as resolveProfilesUnavailableReason, Ht as CHAT_CHANNEL_ORDER, I as resolveAuthProfileOrder, In as applyMergePatch, It as safeStatSync, J as parseDotPath, Jn as getShellPathFromLoginShell, Jt as getActivePluginRegistry, K as isNonEmptyString, Kn as resolveAgentMaxConcurrent, Kt as normalizeChannelId$1, L as clearExpiredCooldowns, Ln as isSafeExecutableValue, Lt as applyTestPluginDefaults, M as resolveApiKeyForProvider, Mn as splitShellArgs, Mt as validateJsonSchemaValue, N as resolveEnvApiKey, Nn as SAFE_BIN_PROFILES, Nt as loadPluginManifestRegistry, O as buildUsageWithNoCost, On as isDispatchWrapperExecutable, Ot as isAvatarDataUrl, P as resolveModelAuthMode, Pn as normalizeSafeBinProfileFixtures, Pt as discoverSquidClawPlugins, Qn as resolveOwnerDisplaySetting, Qt as setActivePluginRegistry, R as getSoonestCooldownExpiry, Rn as mapStreamingModeToSlackLegacyDraftStreamMode, Rt as normalizePluginsConfig, S as retryAsync, Sn as splitCommandChain, T as buildAssistantMessage, Tn as resolveAllowlistCandidatePath, U as resolveApiKeyForProfile, Ut as getChatChannelMeta, V as markAuthProfileUsed, Vn as resolveSlackStreamingMode, W as resolveSecretRefValues, Wt as listChatChannels, X as loadConfig, Xn as isDangerousHostEnvVarName, Yn as resolveShellEnvFallbackTimeoutMs, Yt as getActivePluginRegistryKey, Z as readConfigFileSnapshot, Zn as isTruthyEnvValue, Zt as requireActivePluginRegistry, _n as normalizeTrustedSafeBinDirs, _r as resolveSecretInputRef, a as isCliProvider, an as matchPluginCommand, ar as withFileLock, bn as buildEnforcedShellCommand, br as DEFAULT_MODEL, c as normalizeProviderId, cn as setConfigOverride, ct as resolveIMessageAttachmentRoots, d as resolveDefaultModelForAgent, dn as parseConfigPath, dr as resolveAuthProfileDisplayLabel, dt as parseNonNegativeByteSize, en as normalizePluginHttpPath, er as listProfilesForProvider, et as writeConfigFile, f as resolveModelRefFromString, fn as setConfigValueAtPath, ft as secretRefKey, gn as listWritableExplicitTrustedSafeBinDirs, gr as normalizeResolvedSecretInputString, h as resolveThinkingDefault, hn as isTrustedSafeBinPath, hr as hasConfiguredSecretInput, i as findNormalizedProviderValue, in as listPluginCommands, ir as resolveSquidClawAgentDir, it as resolveTelegramCustomCommands, j as requireApiKey, jn as unwrapKnownShellMultiplexerInvocation, jt as isSupportedLocalAvatarExtension, k as getApiKeyForModel, kn as isShellWrapperExecutable, kt as isAvatarHttpUrl, ln as unsetConfigOverride, lr as formatCliCommand, lt as resolveIMessageRemoteAttachmentRoots, m as resolveSubagentSpawnModelSelection, mn as getTrustedSafeBinDirs, mr as coerceSecretRef, mt as parseDurationMs, n as buildConfiguredAllowlistKeys, nn as executePluginCommand, nr as ensureAuthProfileStore, nt as TELEGRAM_COMMAND_NAME_PATTERN, o as modelKey, on as getConfigOverrides, ot as isInboundPathAllowed, p as resolveReasoningDefault, pn as unsetConfigValueAtPath, pr as normalizeSecretInput, q as isRecord$2, qn as VERSION, qt as normalizeChatChannelId, r as buildModelAliasIndex, rn as getPluginCommandSpecs, rr as resolveAuthStorePathForDisplay, rt as normalizeTelegramCommandName, s as normalizeModelRef$2, sn as resetConfigOverrides, t as buildAllowedModelSet, tn as clearPluginCommands, tr as markAuthProfileGood, tt as validateConfigObjectWithPlugins, u as resolveConfiguredModelRef, un as getConfigValueAtPath, ur as resolveCliName, ut as normalizeScpRemoteHost, vn as validateSafeBinArgv, vr as splitTrailingAuthProfile, w as createOllamaStreamFn, wn as matchAllowlist, x as resolveRetryConfig, xn as isWindowsPlatform, xr as DEFAULT_PROVIDER, yn as analyzeShellCommand, yr as DEFAULT_CONTEXT_TOKENS, z as isProfileInCooldown, zn as resolveDiscordPreviewStreamMode, zt as resolveEffectiveEnableState } from "./model-selection-Bjj4oU16.js";
3
+ import { C as normalizeLogLevel, E as consumeRootOptionToken, T as FLAG_TERMINATOR, _ as isRich, a as clearActiveProgressLine, c as danger, f as setVerbose, g as colorize, h as warn, i as defaultRuntime, o as registerActiveProgressLine, p as shouldLogVerbose, r as createNonExitingRuntime, s as unregisterActiveProgressLine, t as createSubsystemLogger, u as logVerbose, v as theme, w as resolvePreferredSquidClawTmpDir, y as getChildLogger } from "./subsystem-BJ89YjCN.js";
4
+ import { $ as parseAgentSessionKey, A as normalizeWindowsPathForComparison, B as resolveAgentIdFromSessionKey, G as normalizeAccountId$2, H as sanitizeAgentId, I as classifySessionKeyShape, J as deriveSessionChatType, K as normalizeOptionalAccountId, L as isValidAgentId, M as DEFAULT_MAIN_KEY, N as buildAgentMainSessionKey, P as buildAgentPeerSessionKey, Q as isSubagentSessionKey, R as normalizeAgentId, U as scopedHeartbeatWakeOptions, V as resolveThreadSessionKeys, W as DEFAULT_ACCOUNT_ID, X as isAcpSessionKey, Y as getSubagentDepth, Z as isCronSessionKey, _ as runExec, a as DEFAULT_IDENTITY_FILENAME, b as openBoundaryFile, et as resolveThreadParentSessionKey, f as loadWorkspaceBootstrapFiles, g as runCommandWithTimeout, j as DEFAULT_AGENT_ID, l as ensureAgentWorkspace, m as resolveSquidClawPackageRoot, n as DEFAULT_AGENT_WORKSPACE_DIR, q as isBlockedObjectKey, r as DEFAULT_BOOTSTRAP_FILENAME, u as filterBootstrapFilesForSession, v as spawnWithFallback, x as openBoundaryFileSync, z as normalizeMainKey } from "./workspace-CkozFUzc.js";
5
+ import { C as sleep$1, D as isPlainObject, E as truncateUtf16Safe, S as shortenHomePath, a as CONFIG_DIR, d as formatTerminalLink, f as isRecord$1, h as normalizeE164, i as logWarn, l as ensureDir$3, n as logError, r as logInfo, s as clampInt, t as logDebug, u as escapeRegExp, w as sliceUtf16Safe, x as shortenHomeInString, y as resolveUserPath } from "./logger-onBePS9K.js";
6
+ import { $ as resolveConfigSnapshotHash, $n as dedupeProfileIds, $t as createPluginRegistry, A as getCustomProviderApiKey, An as unwrapKnownDispatchWrapperInvocation, At as isPathWithinRoot, B as markAuthProfileFailure, Bn as resolveSlackNativeStreaming, Bt as resolveMemorySlotDecision, C as OLLAMA_NATIVE_BASE_URL, Cn as DEFAULT_SAFE_BINS, D as buildStreamErrorAssistantMessage, Dn as extractShellWrapperInlineCommand, Dt as AVATAR_MAX_BYTES, E as buildAssistantMessageWithZeroUsage, En as resolveCommandResolutionFromArgv, Fn as resolveSafeBinProfiles, Ft as isPathInside, G as describeUnknownError$1, Gn as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, Gt as normalizeAnyChannelId, H as resolveProfilesUnavailableReason, Ht as CHAT_CHANNEL_ORDER, I as resolveAuthProfileOrder, In as applyMergePatch, It as safeStatSync, J as parseDotPath, Jn as getShellPathFromLoginShell, Jt as getActivePluginRegistry, K as isNonEmptyString, Kn as resolveAgentMaxConcurrent, Kt as normalizeChannelId$1, L as clearExpiredCooldowns, Ln as isSafeExecutableValue, Lt as applyTestPluginDefaults, M as resolveApiKeyForProvider, Mn as splitShellArgs, Mt as validateJsonSchemaValue, N as resolveEnvApiKey, Nn as SAFE_BIN_PROFILES, Nt as loadPluginManifestRegistry, O as buildUsageWithNoCost, On as isDispatchWrapperExecutable, Ot as isAvatarDataUrl, P as resolveModelAuthMode, Pn as normalizeSafeBinProfileFixtures, Pt as discoverSquidClawPlugins, Qn as resolveOwnerDisplaySetting, Qt as setActivePluginRegistry, R as getSoonestCooldownExpiry, Rn as mapStreamingModeToSlackLegacyDraftStreamMode, Rt as normalizePluginsConfig, S as retryAsync, Sn as splitCommandChain, T as buildAssistantMessage, Tn as resolveAllowlistCandidatePath, U as resolveApiKeyForProfile, Ut as getChatChannelMeta, V as markAuthProfileUsed, Vn as resolveSlackStreamingMode, W as resolveSecretRefValues, Wt as listChatChannels, X as loadConfig, Xn as isDangerousHostEnvVarName, Yn as resolveShellEnvFallbackTimeoutMs, Yt as getActivePluginRegistryKey, Z as readConfigFileSnapshot, Zn as isTruthyEnvValue, Zt as requireActivePluginRegistry, _n as normalizeTrustedSafeBinDirs, _r as resolveSecretInputRef, a as isCliProvider, an as matchPluginCommand, ar as withFileLock, bn as buildEnforcedShellCommand, br as DEFAULT_MODEL, c as normalizeProviderId, cn as setConfigOverride, ct as resolveIMessageAttachmentRoots, d as resolveDefaultModelForAgent, dn as parseConfigPath, dr as resolveAuthProfileDisplayLabel, dt as parseNonNegativeByteSize, en as normalizePluginHttpPath, er as listProfilesForProvider, et as writeConfigFile, f as resolveModelRefFromString, fn as setConfigValueAtPath, ft as secretRefKey, gn as listWritableExplicitTrustedSafeBinDirs, gr as normalizeResolvedSecretInputString, h as resolveThinkingDefault, hn as isTrustedSafeBinPath, hr as hasConfiguredSecretInput, i as findNormalizedProviderValue, in as listPluginCommands, ir as resolveSquidClawAgentDir, it as resolveTelegramCustomCommands, j as requireApiKey, jn as unwrapKnownShellMultiplexerInvocation, jt as isSupportedLocalAvatarExtension, k as getApiKeyForModel, kn as isShellWrapperExecutable, kt as isAvatarHttpUrl, ln as unsetConfigOverride, lr as formatCliCommand, lt as resolveIMessageRemoteAttachmentRoots, m as resolveSubagentSpawnModelSelection, mn as getTrustedSafeBinDirs, mr as coerceSecretRef, mt as parseDurationMs, n as buildConfiguredAllowlistKeys, nn as executePluginCommand, nr as ensureAuthProfileStore, nt as TELEGRAM_COMMAND_NAME_PATTERN, o as modelKey, on as getConfigOverrides, ot as isInboundPathAllowed, p as resolveReasoningDefault, pn as unsetConfigValueAtPath, pr as normalizeSecretInput, q as isRecord$2, qn as VERSION, qt as normalizeChatChannelId, r as buildModelAliasIndex, rn as getPluginCommandSpecs, rr as resolveAuthStorePathForDisplay, rt as normalizeTelegramCommandName, s as normalizeModelRef$2, sn as resetConfigOverrides, t as buildAllowedModelSet, tn as clearPluginCommands, tr as markAuthProfileGood, tt as validateConfigObjectWithPlugins, u as resolveConfiguredModelRef, un as getConfigValueAtPath, ur as resolveCliName, ut as normalizeScpRemoteHost, vn as validateSafeBinArgv, vr as splitTrailingAuthProfile, w as createOllamaStreamFn, wn as matchAllowlist, x as resolveRetryConfig, xn as isWindowsPlatform, xr as DEFAULT_PROVIDER, yn as analyzeShellCommand, yr as DEFAULT_CONTEXT_TOKENS, z as isProfileInCooldown, zn as resolveDiscordPreviewStreamMode, zt as resolveEffectiveEnableState } from "./model-selection-Bh4BR1_K.js";
7
7
  import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-B8Wx9FgQ.js";
8
- import { c as parseBooleanValue$1, n as MANIFEST_KEY, r as createInternalHookEvent, s as triggerInternalHook } from "./legacy-names-CR_H5NWa.js";
9
- import { _ as normalizeAtHashSlug, a as normalizeReasoningLevel, b as normalizeStringEntriesLower, c as normalizeVerboseLevel, d as getChannelDock, f as listChannelDocks, g as resolveChannelGroupToolsPolicy, h as resolveChannelGroupRequireMention, i as normalizeElevatedLevel, l as resolveResponseUsageMode, m as resolveChannelGroupPolicy, n as formatXHighModelHint, o as normalizeThinkLevel, p as normalizeSignalMessagingTarget, s as normalizeUsageDisplay, t as formatThinkingLevels, u as supportsXHighThinking, v as normalizeHyphenSlug, y as normalizeStringEntries } from "./thinking-BB_GM390.js";
10
- import { a as stripSilentToken, i as isSilentReplyText, n as SILENT_REPLY_TOKEN, r as isSilentReplyPrefixText, t as HEARTBEAT_TOKEN } from "./tokens-Cdk21tF_.js";
11
- import { _ as normalizeChatType, a as normalizeWhatsAppTarget, b as resolveDiscordAccount, c as listTelegramAccountIds, d as buildChannelAccountBindings, f as listBindings, g as resolveSlackBotToken, h as resolveSlackAppToken, i as isWhatsAppGroupJid, l as resolveTelegramAccount, m as resolveSlackReplyToMode, n as listChannelPlugins, o as createTelegramActionGate, p as resolveSlackAccount, r as normalizeChannelId$2, s as listEnabledTelegramAccounts, t as getChannelPlugin, u as resolveTelegramToken, v as createDiscordActionGate, x as normalizeDiscordToken, y as listEnabledDiscordAccounts } from "./plugins-D-K4oUXz.js";
12
- import { a as logWebSelfId, h as resolveAccountEntry, i as getWebAuthAgeMs, m as webAuthExists, n as resolveWhatsAppAccount, o as logoutWeb, t as hasAnyWhatsAppAuth, u as readWebSelfId } from "./accounts-pMDX8iho.js";
13
- import { a as resolveSlackWebClientOptions, c as buildSlackBlocksFallbackText, i as createSlackWebClient, l as parseSlackTarget, n as markdownToSlackMrkdwnChunks, o as parseSlackBlocksInput, r as normalizeSlackOutboundText, s as validateSlackBlocksArray, t as sendMessageSlack, u as resolveSlackChannelId } from "./send-CNzGOCHa.js";
14
- import { $ as stripUndefinedFields, A as unpinMessageDiscord, At as resolveChannelEntryMatchWithFallback, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveDiscordSystemLocation, D as pinMessageDiscord, Dt as applyChannelMatchMeta, E as listThreadsDiscord, Et as fetchDiscord, F as fetchMemberInfoDiscord, G as uploadStickerDiscord, H as timeoutMemberDiscord, I as fetchRoleInfoDiscord, J as editChannelDiscord, K as createChannelDiscord, L as fetchVoiceStatusDiscord, M as banMemberDiscord, N as createScheduledEventDiscord, O as readMessagesDiscord, Ot as buildChannelKeyCandidates, P as fetchChannelInfoDiscord, Q as sendDiscordText, R as kickMemberDiscord, S as deleteMessageDiscord, St as formatDiscordUserTag, T as listPinsDiscord, Tt as DiscordApiError, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendStickerDiscord, _t as resolveDiscordOwnerAllowFrom, a as sendDiscordComponentMessage, at as parseDiscordTarget, b as formatMention, bt as shouldEmitDiscordReactionNotification, c as parseDiscordComponentCustomId, ct as listDiscordDirectoryPeersLive, d as parseDiscordModalCustomIdForCarbon, dt as normalizeDiscordSlug, et as fetchChannelPermissionsDiscord, f as readDiscordComponentSpec, ft as resolveDiscordAllowListMatch, g as sendPollDiscord, gt as resolveDiscordOwnerAccess, h as sendMessageDiscord, ht as resolveDiscordMemberAccessState, i as removeReactionDiscord, it as createDiscordRestClient, j as addRoleDiscord, k as searchMessagesDiscord, kt as normalizeChannelSlug, l as parseDiscordComponentCustomIdForCarbon, lt as isDiscordGroupAllowedByPolicy, m as resolveDiscordModalEntry, mt as resolveDiscordGuildEntry, n as reactMessageDiscord, nt as chunkDiscordTextWithMode, o as createDiscordFormModal, ot as resolveDiscordChannelId, p as resolveDiscordComponentEntry, pt as resolveDiscordChannelConfigWithFallback, q as deleteChannelDiscord, r as removeOwnReactionsDiscord, rt as createDiscordClient, s as formatDiscordComponentEventText, st as listDiscordDirectoryGroupsLive, t as fetchReactionsDiscord, tt as hasAnyGuildPermissionDiscord, u as parseDiscordModalCustomId, ut as normalizeDiscordAllowList, v as sendVoiceMessageDiscord, vt as resolveDiscordShouldRequireMention, w as fetchMessageDiscord, wt as resolveTimestampMs, x as createThreadDiscord, xt as formatDiscordReactionEmoji, y as sendWebhookMessageDiscord, yt as resolveGroupDmAllow, z as listGuildChannelsDiscord } from "./send-DJcNRhf_.js";
8
+ import { c as parseBooleanValue$1, n as MANIFEST_KEY, r as createInternalHookEvent, s as triggerInternalHook } from "./legacy-names-CDxprteD.js";
9
+ import { _ as normalizeAtHashSlug, a as normalizeReasoningLevel, b as normalizeStringEntriesLower, c as normalizeVerboseLevel, d as getChannelDock, f as listChannelDocks, g as resolveChannelGroupToolsPolicy, h as resolveChannelGroupRequireMention, i as normalizeElevatedLevel, l as resolveResponseUsageMode, m as resolveChannelGroupPolicy, n as formatXHighModelHint, o as normalizeThinkLevel, p as normalizeSignalMessagingTarget, s as normalizeUsageDisplay, t as formatThinkingLevels, u as supportsXHighThinking, v as normalizeHyphenSlug, y as normalizeStringEntries } from "./thinking-CaLooOu4.js";
10
+ import { a as stripSilentToken, i as isSilentReplyText, n as SILENT_REPLY_TOKEN, r as isSilentReplyPrefixText, t as HEARTBEAT_TOKEN } from "./tokens-9NF8L9Uh.js";
11
+ import { _ as normalizeChatType, a as normalizeWhatsAppTarget, b as resolveDiscordAccount, c as listTelegramAccountIds, d as buildChannelAccountBindings, f as listBindings, g as resolveSlackBotToken, h as resolveSlackAppToken, i as isWhatsAppGroupJid, l as resolveTelegramAccount, m as resolveSlackReplyToMode, n as listChannelPlugins, o as createTelegramActionGate, p as resolveSlackAccount, r as normalizeChannelId$2, s as listEnabledTelegramAccounts, t as getChannelPlugin, u as resolveTelegramToken, v as createDiscordActionGate, x as normalizeDiscordToken, y as listEnabledDiscordAccounts } from "./plugins-D8QbEQB8.js";
12
+ import { a as logWebSelfId, h as resolveAccountEntry, i as getWebAuthAgeMs, m as webAuthExists, n as resolveWhatsAppAccount, o as logoutWeb, t as hasAnyWhatsAppAuth, u as readWebSelfId } from "./accounts-CqITV0Ga.js";
13
+ import { a as resolveSlackWebClientOptions, c as buildSlackBlocksFallbackText, i as createSlackWebClient, l as parseSlackTarget, n as markdownToSlackMrkdwnChunks, o as parseSlackBlocksInput, r as normalizeSlackOutboundText, s as validateSlackBlocksArray, t as sendMessageSlack, u as resolveSlackChannelId } from "./send-DKB7vlw3.js";
14
+ import { $ as stripUndefinedFields, A as unpinMessageDiscord, At as resolveChannelEntryMatchWithFallback, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveDiscordSystemLocation, D as pinMessageDiscord, Dt as applyChannelMatchMeta, E as listThreadsDiscord, Et as fetchDiscord, F as fetchMemberInfoDiscord, G as uploadStickerDiscord, H as timeoutMemberDiscord, I as fetchRoleInfoDiscord, J as editChannelDiscord, K as createChannelDiscord, L as fetchVoiceStatusDiscord, M as banMemberDiscord, N as createScheduledEventDiscord, O as readMessagesDiscord, Ot as buildChannelKeyCandidates, P as fetchChannelInfoDiscord, Q as sendDiscordText, R as kickMemberDiscord, S as deleteMessageDiscord, St as formatDiscordUserTag, T as listPinsDiscord, Tt as DiscordApiError, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendStickerDiscord, _t as resolveDiscordOwnerAllowFrom, a as sendDiscordComponentMessage, at as parseDiscordTarget, b as formatMention, bt as shouldEmitDiscordReactionNotification, c as parseDiscordComponentCustomId, ct as listDiscordDirectoryPeersLive, d as parseDiscordModalCustomIdForCarbon, dt as normalizeDiscordSlug, et as fetchChannelPermissionsDiscord, f as readDiscordComponentSpec, ft as resolveDiscordAllowListMatch, g as sendPollDiscord, gt as resolveDiscordOwnerAccess, h as sendMessageDiscord, ht as resolveDiscordMemberAccessState, i as removeReactionDiscord, it as createDiscordRestClient, j as addRoleDiscord, k as searchMessagesDiscord, kt as normalizeChannelSlug, l as parseDiscordComponentCustomIdForCarbon, lt as isDiscordGroupAllowedByPolicy, m as resolveDiscordModalEntry, mt as resolveDiscordGuildEntry, n as reactMessageDiscord, nt as chunkDiscordTextWithMode, o as createDiscordFormModal, ot as resolveDiscordChannelId, p as resolveDiscordComponentEntry, pt as resolveDiscordChannelConfigWithFallback, q as deleteChannelDiscord, r as removeOwnReactionsDiscord, rt as createDiscordClient, s as formatDiscordComponentEventText, st as listDiscordDirectoryGroupsLive, t as fetchReactionsDiscord, tt as hasAnyGuildPermissionDiscord, u as parseDiscordModalCustomId, ut as normalizeDiscordAllowList, v as sendVoiceMessageDiscord, vt as resolveDiscordShouldRequireMention, w as fetchMessageDiscord, wt as resolveTimestampMs, x as createThreadDiscord, xt as formatDiscordReactionEmoji, y as sendWebhookMessageDiscord, yt as resolveGroupDmAllow, z as listGuildChannelsDiscord } from "./send-CAzswJK6.js";
15
15
  import { n as generateSecureUuid, t as generateSecureToken } from "./secure-random-CXrBi7Jq.js";
16
- import { C as createReplyToModeFilterForChannel, D as normalizeTargetForProvider, E as normalizeChannelTargetInput, O as getGlobalHookRunner, S as shouldSuppressReasoningPayload, T as buildTargetResolverSignature, _ as applyReplyThreading, a as normalizeReplyPayloadsForDelivery, b as isRenderablePayload, c as splitMediaFromOutput, d as toInternalMessageReceivedContext, f as toInternalMessageTranscribedContext, g as applyReplyTagsToPayload, h as fireAndForgetHook, i as normalizeOutboundPayloadsForJson, k as initializeGlobalHookRunner, l as deriveInboundMessageHookContext, m as toPluginMessageReceivedEvent, n as formatOutboundPayloadLog, o as throwIfAborted, p as toPluginMessageContext, r as normalizeOutboundPayloads, s as parseReplyDirectives, t as deliverOutboundPayloads, u as toInternalMessagePreprocessedContext, v as filterMessagingToolDuplicates, w as resolveReplyToMode, x as shouldSuppressMessagingToolReplies, y as filterMessagingToolMediaDuplicates } from "./deliver-DZCNXFM8.js";
17
- import { a as logMessageQueued, c as logWebhookError, d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, h as isDiagnosticsEnabled, i as logMessageProcessed, l as logWebhookProcessed, m as emitDiagnosticEvent, n as logLaneDequeue, o as logSessionStateChange, p as getDiagnosticSessionState, r as logLaneEnqueue, t as diag, u as logWebhookReceived } from "./diagnostic-4Dbmo6KU.js";
18
- import { n as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-DfrJiFJJ.js";
16
+ import { C as createReplyToModeFilterForChannel, D as normalizeTargetForProvider, E as normalizeChannelTargetInput, O as getGlobalHookRunner, S as shouldSuppressReasoningPayload, T as buildTargetResolverSignature, _ as applyReplyThreading, a as normalizeReplyPayloadsForDelivery, b as isRenderablePayload, c as splitMediaFromOutput, d as toInternalMessageReceivedContext, f as toInternalMessageTranscribedContext, g as applyReplyTagsToPayload, h as fireAndForgetHook, i as normalizeOutboundPayloadsForJson, k as initializeGlobalHookRunner, l as deriveInboundMessageHookContext, m as toPluginMessageReceivedEvent, n as formatOutboundPayloadLog, o as throwIfAborted, p as toPluginMessageContext, r as normalizeOutboundPayloads, s as parseReplyDirectives, t as deliverOutboundPayloads, u as toInternalMessagePreprocessedContext, v as filterMessagingToolDuplicates, w as resolveReplyToMode, x as shouldSuppressMessagingToolReplies, y as filterMessagingToolMediaDuplicates } from "./deliver-Ddw3EsOV.js";
17
+ import { a as logMessageQueued, c as logWebhookError, d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, h as isDiagnosticsEnabled, i as logMessageProcessed, l as logWebhookProcessed, m as emitDiagnosticEvent, n as logLaneDequeue, o as logSessionStateChange, p as getDiagnosticSessionState, r as logLaneEnqueue, t as diag, u as logWebhookReceived } from "./diagnostic-B74jJPqv.js";
18
+ import { n as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-Cop2dSRo.js";
19
19
  import { i as resolveTelegramTargetChatType, r as parseTelegramTarget } from "./targets-BiE9e9-P.js";
20
- import { A as mediaKindFromMime, C as imageMimeFromFormat, E as kindFromMime, O as MAX_IMAGE_BYTES, T as isGifMedia, _ as GATEWAY_CLIENT_IDS, b as detectMime, c as INTERNAL_MESSAGE_CHANNEL, d as isInternalMessageChannel, f as isMarkdownCapableMessageChannel, g as resolveMessageChannel, h as resolveGatewayMessageChannel, i as getImageMetadata, l as isDeliverableMessageChannel, m as normalizeMessageChannel, p as listDeliverableMessageChannels, s as resizeToJpeg, u as isGatewayMessageChannel, v as GATEWAY_CLIENT_MODES, w as isAudioFileName, x as extensionForMime, y as GATEWAY_CLIENT_NAMES } from "./image-ops-QLLBkxzG.js";
21
- import { $ as removeChannelAllowFromStoreEntry, A as expandTextLinks, B as resolveTelegramThreadSpec, C as buildSenderName, D as buildTelegramThreadParams, E as buildTelegramParentPeer, F as resolveTelegramForumThreadId, G as firstDefined$1, H as normalizeAllowFrom$2, I as resolveTelegramGroupAllowFromContext, J as resolveGroupAllowFromSources, K as isSenderIdAllowed, L as resolveTelegramMediaPlaceholder, M as hasBotMention, N as normalizeForwardedContext, O as buildTypingThreadParams, P as resolveTelegramDirectPeerId, Q as readChannelAllowFromStore, R as resolveTelegramReplyId, S as buildSenderLabel, T as buildTelegramGroupPeerId, U as normalizeDmAllowFromWithStore$1, V as isSenderAllowed$1, W as resolveSenderAllowMatch$1, X as toLocationContext, Y as formatLocationText, Z as addChannelAllowFromStoreEntry, _ as splitTelegramCaption, a as reactMessageTelegram, at as isVoiceCompatibleAudio, b as resolveCronStorePath, c as sendStickerTelegram, d as isRecoverableTelegramNetworkError, et as upsertChannelPairingRequest, f as markdownToTelegramChunks, g as resolveTelegramFetch, h as wrapFileReferencesInHtml, i as editMessageTelegram, it as listPairingChannels, j as extractTelegramLocation, k as describeReplyTarget, l as resolveTelegramVoiceSend, m as renderTelegramHtmlText, n as createForumTopicTelegram, nt as writeJsonFileAtomically, o as sendMessageTelegram, p as markdownToTelegramHtml, q as mergeDmAllowFromSources, r as deleteMessageTelegram, rt as getPairingAdapter, s as sendPollTelegram, t as buildInlineKeyboard, tt as readJsonFileWithFallback, u as wasSentByBot, v as withTelegramApiErrorLogging, w as buildTelegramGroupFrom, x as buildGroupLabel, y as loadCronStore, z as resolveTelegramStreamMode } from "./send-pUHxPU20.js";
22
- import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-DSuyTtRM.js";
23
- import { $ as deliveryContextKey, $t as matchesAnyGlobPattern, A as isTransientHttpError, At as resolveGroupSessionKey, B as parseSessionThreadInfo, Bt as resolveGatewayCredentialsFromConfig, C as isCompactionFailureError, Ct as setSessionRuntimeModel, D as isLikelyContextOverflowError, Dt as resolveMainSessionKey, E as isFailoverErrorMessage, Et as resolveExplicitAgentSessionKey, F as isTimeoutErrorMessage, Ft as resolveBrowserConfig, G as readSessionUpdatedAt, Gt as collectExplicitAllowlist, Ht as resolveSandboxConfigForAgent, I as ensureSandboxWorkspaceForSession, It as resolveProfile, J as updateSessionStore, Jt as stripPluginOnlyAllowlist, K as recordSessionMetaFromInbound, Kt as expandPolicyWithPluginGroups, L as resolveSandboxContext, Lt as getBridgeAuthForPort, M as parseImageSizeError, Mt as resolveSessionLockMaxHoldFromTimeout, N as sanitizeUserFacingText, Nt as createBrowserRouteContext, O as isRateLimitAssistantError, Ot as deriveSessionMetaPatch, P as isAuthPermanentErrorMessage, Pt as registerBrowserRoutes, Q as deliveryContextFromSession, Qt as compileGlobPatterns, R as resolveSandboxRuntimeStatus, Rt as ensureBrowserControlAuth, S as isCloudCodeAssistFormatError, St as resolveFreshSessionTotalTokens, T as isFailoverAssistantError, U as resolveAndPersistSessionFile, Ut as applyOwnerOnlyToolPolicy, V as appendAssistantMessageToSessionTranscript, Vt as trimToUndefined$1, W as loadSessionStore, Wt as buildPluginToolGroups, X as isCacheEnabled, Xt as normalizeToolName, Y as updateSessionStoreEntry, Yt as expandToolGroups, Z as resolveCacheTtlMs$1, Zt as resolveToolProfilePolicy, _ as formatBillingErrorMessage, _t as resolveSessionResetPolicy, a as isMessagingToolDuplicateNormalized, an as sanitizeGoogleTurnOrdering, at as capArrayByJsonBytes, b as isAuthAssistantError, bt as DEFAULT_RESET_TRIGGERS, c as extractToolCallsFromAssistant, ct as parseInlineDirectives$1, d as downgradeOpenAIFunctionCallReasoningPairs, dt as hasInterSessionUserProvenance, en as buildBootstrapContextFiles, et as mergeDeliveryContext, f as downgradeOpenAIReasoningBlocks, ft as normalizeInputProvenance, g as formatAssistantErrorText, gt as resolveChannelResetConfig, h as classifyFailoverReason, ht as evaluateSessionFreshness, in as resolveBootstrapTotalMaxChars, it as archiveSessionTranscripts, j as parseImageDimensionError, jt as acquireSessionWriteLock, k as isRawApiErrorPayload, kt as resolveConversationLabel, l as extractToolResultId, lt as INPUT_PROVENANCE_KIND_VALUES, m as BILLING_ERROR_USER_MESSAGE, mt as resolveSessionKey, n as validateGeminiTurns, nn as resolveBootstrapMaxChars, nt as normalizeSessionDeliveryFields, o as normalizeTextForComparison, ot as countToolResults, p as isGoogleModelApi, pt as jsonUtf8Bytes, q as updateLastRoute, qt as mergeAlsoAllowPolicy, r as pickFallbackThinkingLevel, rn as resolveBootstrapPromptTruncationWarningMode, rt as normalizeAccountId$3, s as sanitizeSessionMessagesImages, st as extractToolCallNames, t as validateAnthropicTurns, tn as ensureSessionHeader, tt as normalizeDeliveryContext, u as sanitizeToolCallIdsForCloudCodeAssist, ut as applyInputProvenanceToUserMessage, v as formatRawAssistantErrorForUi, vt as resolveSessionResetType, w as isContextOverflowError, wt as canonicalizeMainSessionAlias, x as isBillingAssistantError, xt as mergeSessionEntry, y as getApiErrorPayloadFingerprint, yt as resolveThreadFlag, z as extractDeliveryInfo, zt as resolveBrowserControlAuth } from "./pi-embedded-helpers-1Z1aUoto.js";
24
- import { A as rawDataToString, B as isSecureWebSocketUrl, C as ensureChromeExtensionRelayServer, N as DEFAULT_UPLOAD_DIR, P as resolveExistingPathsWithinRoot, U as DEFAULT_AI_SNAPSHOT_MAX_CHARS, s as resolveLsofCommandSync, z as isLoopbackHost } from "./chrome-BTwG9Gvh.js";
25
- import { c as assertSandboxPath, d as resolveSandboxedMediaSource, f as applySkillEnvOverrides, i as resolveSkillsPromptForRun, l as resolveSandboxInputPath, n as buildWorkspaceSkillSnapshot, p as applySkillEnvOverridesFromSnapshot, r as loadWorkspaceSkillEntries, s as assertMediaNotDataUrl } from "./skills-BjHeDO5V.js";
26
- import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-DgNuZPBA.js";
27
- import { i as testRegexWithBoundedInput, r as compileSafeRegex, t as redactSensitiveText } from "./redact-BSwbgwaV.js";
28
- import { i as formatUncaughtError, o as readErrorName, r as formatErrorMessage } from "./errors-Dih7OXdL.js";
29
- import { a as readFileWithinRoot, c as writeFileWithinRoot, i as openFileWithinRoot, n as copyFileWithinRoot, r as createRootScopedReadFile, t as SafeOpenError } from "./fs-safe-NHJJ1b9f.js";
30
- import { a as isBlockedHostnameOrIp, c as normalizeHostname, n as SsrFBlockedError } from "./proxy-env-D9oPe73i.js";
31
- import { i as saveMediaBuffer, r as getMediaDir, t as MEDIA_MAX_BYTES } from "./store-C3iBzr-_.js";
20
+ import { A as mediaKindFromMime, C as imageMimeFromFormat, E as kindFromMime, O as MAX_IMAGE_BYTES, T as isGifMedia, _ as GATEWAY_CLIENT_IDS, b as detectMime, c as INTERNAL_MESSAGE_CHANNEL, d as isInternalMessageChannel, f as isMarkdownCapableMessageChannel, g as resolveMessageChannel, h as resolveGatewayMessageChannel, i as getImageMetadata, l as isDeliverableMessageChannel, m as normalizeMessageChannel, p as listDeliverableMessageChannels, s as resizeToJpeg, u as isGatewayMessageChannel, v as GATEWAY_CLIENT_MODES, w as isAudioFileName, x as extensionForMime, y as GATEWAY_CLIENT_NAMES } from "./image-ops-BQmWYj-1.js";
21
+ import { $ as removeChannelAllowFromStoreEntry, A as expandTextLinks, B as resolveTelegramThreadSpec, C as buildSenderName, D as buildTelegramThreadParams, E as buildTelegramParentPeer, F as resolveTelegramForumThreadId, G as firstDefined$1, H as normalizeAllowFrom$2, I as resolveTelegramGroupAllowFromContext, J as resolveGroupAllowFromSources, K as isSenderIdAllowed, L as resolveTelegramMediaPlaceholder, M as hasBotMention, N as normalizeForwardedContext, O as buildTypingThreadParams, P as resolveTelegramDirectPeerId, Q as readChannelAllowFromStore, R as resolveTelegramReplyId, S as buildSenderLabel, T as buildTelegramGroupPeerId, U as normalizeDmAllowFromWithStore$1, V as isSenderAllowed$1, W as resolveSenderAllowMatch$1, X as toLocationContext, Y as formatLocationText, Z as addChannelAllowFromStoreEntry, _ as splitTelegramCaption, a as reactMessageTelegram, at as isVoiceCompatibleAudio, b as resolveCronStorePath, c as sendStickerTelegram, d as isRecoverableTelegramNetworkError, et as upsertChannelPairingRequest, f as markdownToTelegramChunks, g as resolveTelegramFetch, h as wrapFileReferencesInHtml, i as editMessageTelegram, it as listPairingChannels, j as extractTelegramLocation, k as describeReplyTarget, l as resolveTelegramVoiceSend, m as renderTelegramHtmlText, n as createForumTopicTelegram, nt as writeJsonFileAtomically, o as sendMessageTelegram, p as markdownToTelegramHtml, q as mergeDmAllowFromSources, r as deleteMessageTelegram, rt as getPairingAdapter, s as sendPollTelegram, t as buildInlineKeyboard, tt as readJsonFileWithFallback, u as wasSentByBot, v as withTelegramApiErrorLogging, w as buildTelegramGroupFrom, x as buildGroupLabel, y as loadCronStore, z as resolveTelegramStreamMode } from "./send-Q5SBsGfY.js";
22
+ import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-BbCPyLm5.js";
23
+ import { $ as deliveryContextKey, $t as matchesAnyGlobPattern, A as isTransientHttpError, At as resolveGroupSessionKey, B as parseSessionThreadInfo, Bt as resolveGatewayCredentialsFromConfig, C as isCompactionFailureError, Ct as setSessionRuntimeModel, D as isLikelyContextOverflowError, Dt as resolveMainSessionKey, E as isFailoverErrorMessage, Et as resolveExplicitAgentSessionKey, F as isTimeoutErrorMessage, Ft as resolveBrowserConfig, G as readSessionUpdatedAt, Gt as collectExplicitAllowlist, Ht as resolveSandboxConfigForAgent, I as ensureSandboxWorkspaceForSession, It as resolveProfile, J as updateSessionStore, Jt as stripPluginOnlyAllowlist, K as recordSessionMetaFromInbound, Kt as expandPolicyWithPluginGroups, L as resolveSandboxContext, Lt as getBridgeAuthForPort, M as parseImageSizeError, Mt as resolveSessionLockMaxHoldFromTimeout, N as sanitizeUserFacingText, Nt as createBrowserRouteContext, O as isRateLimitAssistantError, Ot as deriveSessionMetaPatch, P as isAuthPermanentErrorMessage, Pt as registerBrowserRoutes, Q as deliveryContextFromSession, Qt as compileGlobPatterns, R as resolveSandboxRuntimeStatus, Rt as ensureBrowserControlAuth, S as isCloudCodeAssistFormatError, St as resolveFreshSessionTotalTokens, T as isFailoverAssistantError, U as resolveAndPersistSessionFile, Ut as applyOwnerOnlyToolPolicy, V as appendAssistantMessageToSessionTranscript, Vt as trimToUndefined$1, W as loadSessionStore, Wt as buildPluginToolGroups, X as isCacheEnabled, Xt as normalizeToolName, Y as updateSessionStoreEntry, Yt as expandToolGroups, Z as resolveCacheTtlMs$1, Zt as resolveToolProfilePolicy, _ as formatBillingErrorMessage, _t as resolveSessionResetPolicy, a as isMessagingToolDuplicateNormalized, an as sanitizeGoogleTurnOrdering, at as capArrayByJsonBytes, b as isAuthAssistantError, bt as DEFAULT_RESET_TRIGGERS, c as extractToolCallsFromAssistant, ct as parseInlineDirectives$1, d as downgradeOpenAIFunctionCallReasoningPairs, dt as hasInterSessionUserProvenance, en as buildBootstrapContextFiles, et as mergeDeliveryContext, f as downgradeOpenAIReasoningBlocks, ft as normalizeInputProvenance, g as formatAssistantErrorText, gt as resolveChannelResetConfig, h as classifyFailoverReason, ht as evaluateSessionFreshness, in as resolveBootstrapTotalMaxChars, it as archiveSessionTranscripts, j as parseImageDimensionError, jt as acquireSessionWriteLock, k as isRawApiErrorPayload, kt as resolveConversationLabel, l as extractToolResultId, lt as INPUT_PROVENANCE_KIND_VALUES, m as BILLING_ERROR_USER_MESSAGE, mt as resolveSessionKey, n as validateGeminiTurns, nn as resolveBootstrapMaxChars, nt as normalizeSessionDeliveryFields, o as normalizeTextForComparison, ot as countToolResults, p as isGoogleModelApi, pt as jsonUtf8Bytes, q as updateLastRoute, qt as mergeAlsoAllowPolicy, r as pickFallbackThinkingLevel, rn as resolveBootstrapPromptTruncationWarningMode, rt as normalizeAccountId$3, s as sanitizeSessionMessagesImages, st as extractToolCallNames, t as validateAnthropicTurns, tn as ensureSessionHeader, tt as normalizeDeliveryContext, u as sanitizeToolCallIdsForCloudCodeAssist, ut as applyInputProvenanceToUserMessage, v as formatRawAssistantErrorForUi, vt as resolveSessionResetType, w as isContextOverflowError, wt as canonicalizeMainSessionAlias, x as isBillingAssistantError, xt as mergeSessionEntry, y as getApiErrorPayloadFingerprint, yt as resolveThreadFlag, z as extractDeliveryInfo, zt as resolveBrowserControlAuth } from "./pi-embedded-helpers-xpgo_nwz.js";
24
+ import { A as rawDataToString, B as isSecureWebSocketUrl, C as ensureChromeExtensionRelayServer, N as DEFAULT_UPLOAD_DIR, P as resolveExistingPathsWithinRoot, U as DEFAULT_AI_SNAPSHOT_MAX_CHARS, s as resolveLsofCommandSync, z as isLoopbackHost } from "./chrome-C2CliEWR.js";
25
+ import { c as assertSandboxPath, d as resolveSandboxedMediaSource, f as applySkillEnvOverrides, i as resolveSkillsPromptForRun, l as resolveSandboxInputPath, n as buildWorkspaceSkillSnapshot, p as applySkillEnvOverridesFromSnapshot, r as loadWorkspaceSkillEntries, s as assertMediaNotDataUrl } from "./skills-DNyMj13y.js";
26
+ import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-B63g_1Gb.js";
27
+ import { i as testRegexWithBoundedInput, r as compileSafeRegex, t as redactSensitiveText } from "./redact-rnJm_Z5E.js";
28
+ import { i as formatUncaughtError, o as readErrorName, r as formatErrorMessage } from "./errors-CCLnP2Fs.js";
29
+ import { a as readFileWithinRoot, c as writeFileWithinRoot, i as openFileWithinRoot, n as copyFileWithinRoot, r as createRootScopedReadFile, t as SafeOpenError } from "./fs-safe-Dy2_iDiY.js";
30
+ import { a as isBlockedHostnameOrIp, c as normalizeHostname, n as SsrFBlockedError } from "./proxy-env-DS2YEWWX.js";
31
+ import { i as saveMediaBuffer, r as getMediaDir, t as MEDIA_MAX_BYTES } from "./store-Bdm7wypS.js";
32
32
  import { n as readJsonFile, r as writeJsonAtomic, t as createAsyncLock } from "./json-files-D7-rxoSr.js";
33
- import { t as resolveIMessageAccount } from "./accounts-BFS_qklA.js";
34
- import { i as resolveSessionTranscriptPath, n as resolveSessionFilePath, o as resolveSessionTranscriptsDirForAgent, r as resolveSessionFilePathOptions, s as resolveStorePath, t as resolveDefaultSessionStorePath } from "./paths-7EEBmI5a.js";
33
+ import { t as resolveIMessageAccount } from "./accounts-CB2Or0mr.js";
34
+ import { i as resolveSessionTranscriptPath, n as resolveSessionFilePath, o as resolveSessionTranscriptsDirForAgent, r as resolveSessionFilePathOptions, s as resolveStorePath, t as resolveDefaultSessionStorePath } from "./paths-BJWEyNJy.js";
35
35
  import { n as onSessionTranscriptUpdate, t as emitSessionTranscriptUpdate } from "./transcript-events-uYL2gEou.js";
36
- import { a as canonicalizeBase64, i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, o as estimateBase64DecodedBytes, r as sanitizeToolResultImages } from "./tool-images-HRwkh81U.js";
37
- import { C as minimaxUnderstandImage, S as extractTextFromChatContent, _ as formatToolSummary, a as resolveProviderVisionModelFromConfig, b as findCodeRegions, c as extractThinkingFromTaggedStream, d as inferToolMetaFromArgs, f as isAssistantMessage, g as stripThinkingTagsFromText, h as stripMinimaxToolCallXml, i as decodeDataUrl, l as extractThinkingFromTaggedText, m as stripDowngradedToolCallText, n as coerceImageAssistantText, o as extractAssistantText$1, p as promoteThinkingTagsToBlocks, r as coerceImageModelConfig, s as extractAssistantThinking, u as formatReasoningMessage, v as resolveToolDisplay, w as ensureSquidClawModelsJson, x as isInsideCode, y as stripReasoningTagsFromText } from "./image-COAbpp2B.js";
38
- import { _ as resolveAttachmentKind, a as resolveAutoImageModel, b as modelSupportsVision, c as applyTemplate, d as normalizeMediaUnderstandingChatType, f as resolveMediaUnderstandingScope, h as registerUnhandledRejectionHandler, i as normalizeMediaAttachments, l as resolveConcurrency, m as buildRandomTempFilePath, n as buildProviderRegistry, o as resolveMediaAttachmentLocalRoots, p as CLI_OUTPUT_MAX_BUFFER, r as createMediaAttachmentCache, s as runCapability, t as runAudioTranscription, u as resolveTimeoutMs$2, v as findModelInCatalog, y as loadModelCatalog } from "./audio-transcription-runner-DUC0ItDY.js";
39
- import { a as getDefaultMediaLocalRoots, i as getAgentScopedMediaLocalRoots, n as fetchRemoteMedia, r as readResponseWithLimit, t as MediaFetchError } from "./fetch-COEkF6YP.js";
36
+ import { a as canonicalizeBase64, i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, o as estimateBase64DecodedBytes, r as sanitizeToolResultImages } from "./tool-images-CkmNQqHm.js";
37
+ import { C as minimaxUnderstandImage, S as extractTextFromChatContent, _ as formatToolSummary, a as resolveProviderVisionModelFromConfig, b as findCodeRegions, c as extractThinkingFromTaggedStream, d as inferToolMetaFromArgs, f as isAssistantMessage, g as stripThinkingTagsFromText, h as stripMinimaxToolCallXml, i as decodeDataUrl, l as extractThinkingFromTaggedText, m as stripDowngradedToolCallText, n as coerceImageAssistantText, o as extractAssistantText$1, p as promoteThinkingTagsToBlocks, r as coerceImageModelConfig, s as extractAssistantThinking, u as formatReasoningMessage, v as resolveToolDisplay, w as ensureSquidClawModelsJson, x as isInsideCode, y as stripReasoningTagsFromText } from "./image-CdfqhHaX.js";
38
+ import { _ as resolveAttachmentKind, a as resolveAutoImageModel, b as modelSupportsVision, c as applyTemplate, d as normalizeMediaUnderstandingChatType, f as resolveMediaUnderstandingScope, h as registerUnhandledRejectionHandler, i as normalizeMediaAttachments, l as resolveConcurrency, m as buildRandomTempFilePath, n as buildProviderRegistry, o as resolveMediaAttachmentLocalRoots, p as CLI_OUTPUT_MAX_BUFFER, r as createMediaAttachmentCache, s as runCapability, t as runAudioTranscription, u as resolveTimeoutMs$2, v as findModelInCatalog, y as loadModelCatalog } from "./audio-transcription-runner-Mha07yP4.js";
39
+ import { a as getDefaultMediaLocalRoots, i as getAgentScopedMediaLocalRoots, n as fetchRemoteMedia, r as readResponseWithLimit, t as MediaFetchError } from "./fetch-OMudX6HR.js";
40
40
  import { n as fetchWithTimeout, t as bindAbortRelay } from "./fetch-timeout-Wgx3OXYj.js";
41
- import { n as withStrictGuardedFetchMode, r as withTrustedEnvProxyGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-CcP28UT1.js";
42
- import { t as makeProxyFetch } from "./proxy-fetch-ChIxNDe3.js";
43
- import { _ as isSafeFenceBreak, a as loadWebMedia, c as chunkByNewline, d as chunkMarkdownTextWithMode, f as chunkText, g as findFenceSpanAt, h as resolveTextChunkLimit, i as getDefaultLocalRoots, m as resolveChunkMode, o as loadWebMediaRaw, p as chunkTextWithMode, s as resolveMarkdownTableMode, u as chunkMarkdownText, v as parseFenceSpans } from "./ir-RKRKj5a9.js";
44
- import { a as ToolInputError, c as imageResultFromFile, d as readNumberParam, f as readReactionParams, h as readStringParam, l as jsonResult, m as readStringOrNumberParam, n as missingTargetError, o as createActionGate, p as readStringArrayParam, r as unknownTargetError, s as imageResult, t as ambiguousTargetError, u as parseAvailableTags } from "./target-errors-BMTA5KVE.js";
45
- import { _ as isRestartEnabled, a as listChatCommandsForConfig, c as maybeResolveTextAlias, d as resolveCommandArgChoices, f as resolveCommandArgMenu, g as isNativeCommandsExplicitlyDisabled, h as isCommandFlagEnabled, i as listChatCommands, l as normalizeCommandBody, m as shouldHandleTextCommands, n as findCommandByNativeName, o as listNativeCommandSpecs, p as serializeCommandArgs, r as isCommandEnabled, s as listNativeCommandSpecsForConfig, t as buildCommandTextFromArgs, u as parseCommandArgs, v as resolveNativeCommandsEnabled, y as resolveNativeSkillsEnabled } from "./commands-registry-BIi1tG__.js";
46
- import { a as getRemoteSkillEligibility, c as pruneExpiredPending, i as resolveSkillCommandInvocation, l as resolvePairingPaths, n as listSkillCommandsForAgents, o as ensureSkillsWatcher, r as listSkillCommandsForWorkspace, s as getSkillsSnapshotVersion, t as listReservedChatSlashCommandNames } from "./skill-commands-yvTkQtnt.js";
41
+ import { n as withStrictGuardedFetchMode, r as withTrustedEnvProxyGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-DBZ7o2IA.js";
42
+ import { t as makeProxyFetch } from "./proxy-fetch-08-dhqxn.js";
43
+ import { _ as isSafeFenceBreak, a as loadWebMedia, c as chunkByNewline, d as chunkMarkdownTextWithMode, f as chunkText, g as findFenceSpanAt, h as resolveTextChunkLimit, i as getDefaultLocalRoots, m as resolveChunkMode, o as loadWebMediaRaw, p as chunkTextWithMode, s as resolveMarkdownTableMode, u as chunkMarkdownText, v as parseFenceSpans } from "./ir-DEPhOdwg.js";
44
+ import { a as ToolInputError, c as imageResultFromFile, d as readNumberParam, f as readReactionParams, h as readStringParam, l as jsonResult, m as readStringOrNumberParam, n as missingTargetError, o as createActionGate, p as readStringArrayParam, r as unknownTargetError, s as imageResult, t as ambiguousTargetError, u as parseAvailableTags } from "./target-errors-qetEoXTB.js";
45
+ import { _ as isRestartEnabled, a as listChatCommandsForConfig, c as maybeResolveTextAlias, d as resolveCommandArgChoices, f as resolveCommandArgMenu, g as isNativeCommandsExplicitlyDisabled, h as isCommandFlagEnabled, i as listChatCommands, l as normalizeCommandBody, m as shouldHandleTextCommands, n as findCommandByNativeName, o as listNativeCommandSpecs, p as serializeCommandArgs, r as isCommandEnabled, s as listNativeCommandSpecsForConfig, t as buildCommandTextFromArgs, u as parseCommandArgs, v as resolveNativeCommandsEnabled, y as resolveNativeSkillsEnabled } from "./commands-registry-6jWzz0mk.js";
46
+ import { a as getRemoteSkillEligibility, c as pruneExpiredPending, i as resolveSkillCommandInvocation, l as resolvePairingPaths, n as listSkillCommandsForAgents, o as ensureSkillsWatcher, r as listSkillCommandsForWorkspace, s as getSkillsSnapshotVersion, t as listReservedChatSlashCommandNames } from "./skill-commands-CgJiKg3Q.js";
47
47
  import { n as wrapFetchWithAbortSignal, t as resolveFetch } from "./fetch-tZXOZ9FV.js";
48
48
  import { n as recordCommandPoll, r as resetCommandPollCount } from "./command-poll-backoff-CmCpeg5n.js";
49
- import { n as recordChannelActivity, r as createDiscordRetryRunner, t as getChannelActivity } from "./channel-activity-7QMEKenc.js";
49
+ import { n as recordChannelActivity, r as createDiscordRetryRunner, t as getChannelActivity } from "./channel-activity-Du1kh0t3.js";
50
50
  import { t as buildOutboundMediaLoadOptions } from "./load-options-BFUunM8u.js";
51
51
  import { n as normalizePollInput } from "./polls-CYTwXmA1.js";
52
- import { t as convertMarkdownTables } from "./tables-Bv8tJ0qC.js";
53
- import { a as signalCheck, i as resolveSignalRpcContext, n as sendReadReceiptSignal, o as signalRpcRequest, r as sendTypingSignal, s as streamSignalEvents, t as sendMessageSignal } from "./send-BMtxl7vL.js";
54
- import { a as isAllowedIMessageSender, i as formatIMessageChatTarget, n as createIMessageRpcClient, o as normalizeIMessageHandle, r as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, s as parseIMessageTarget, t as sendMessageIMessage } from "./send-DySBiOxg.js";
55
- import { i as redactIdentifier, t as getActiveWebListener } from "./active-listener-CH2vJ3EZ.js";
56
- import { n as resolveMemorySearchConfig } from "./manager-B_QaG_-L.js";
57
- import { f as listMemoryFiles, p as normalizeExtraMemoryPaths } from "./query-expansion-BMExPdLO.js";
52
+ import { t as convertMarkdownTables } from "./tables-MEAoO_QC.js";
53
+ import { a as signalCheck, i as resolveSignalRpcContext, n as sendReadReceiptSignal, o as signalRpcRequest, r as sendTypingSignal, s as streamSignalEvents, t as sendMessageSignal } from "./send-BdQyKIzE.js";
54
+ import { a as isAllowedIMessageSender, i as formatIMessageChatTarget, n as createIMessageRpcClient, o as normalizeIMessageHandle, r as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, s as parseIMessageTarget, t as sendMessageIMessage } from "./send-6s7HVGcN.js";
55
+ import { i as redactIdentifier, t as getActiveWebListener } from "./active-listener-B6G6kmsb.js";
56
+ import { n as resolveMemorySearchConfig } from "./manager-D3ROcs7_.js";
57
+ import { f as listMemoryFiles, p as normalizeExtraMemoryPaths } from "./query-expansion-o9Ib6_Rk.js";
58
58
  import { createRequire } from "node:module";
59
59
  import * as fs$1 from "node:fs/promises";
60
60
  import fs, { appendFile, mkdir } from "node:fs/promises";
@@ -62,7 +62,7 @@ import os, { homedir } from "node:os";
62
62
  import * as path$1 from "node:path";
63
63
  import path, { isAbsolute } from "node:path";
64
64
  import fssync, { existsSync, mkdirSync, mkdtempSync, promises, readFileSync, renameSync, rmSync, statSync, unlinkSync, writeFileSync } from "node:fs";
65
- import JSON5 from "json5";
65
+ import json5 from "json5";
66
66
  import { inspect, isDeepStrictEqual, promisify } from "node:util";
67
67
  import { execFile, execFileSync, spawn, spawnSync } from "node:child_process";
68
68
  import { fileURLToPath } from "node:url";
@@ -72,7 +72,7 @@ import { CURRENT_SESSION_VERSION, DefaultResourceLoader, SessionManager, Setting
72
72
  import { EdgeTTS } from "node-edge-tts";
73
73
  import { createServer } from "node:http";
74
74
  import { ProxyAgent, fetch as fetch$1 } from "undici";
75
- import WebSocket, { WebSocket as WebSocket$1 } from "ws";
75
+ import WebSocket$1, { WebSocket } from "ws";
76
76
  import { Buffer as Buffer$1 } from "node:buffer";
77
77
  import { createJiti } from "jiti";
78
78
  import AjvPkg from "ajv";
@@ -8233,7 +8233,7 @@ var GatewayClient = class {
8233
8233
  if (fingerprint !== expected) return /* @__PURE__ */ new Error("gateway tls fingerprint mismatch");
8234
8234
  });
8235
8235
  }
8236
- this.ws = new WebSocket$1(url, wsOptions);
8236
+ this.ws = new WebSocket(url, wsOptions);
8237
8237
  this.ws.on("open", () => {
8238
8238
  if (url.startsWith("wss://") && this.opts.tlsFingerprint) {
8239
8239
  const tlsError = this.validateTlsFingerprint();
@@ -8429,7 +8429,7 @@ var GatewayClient = class {
8429
8429
  const connectChallengeTimeoutMs = typeof rawConnectDelayMs === "number" && Number.isFinite(rawConnectDelayMs) ? Math.max(250, Math.min(1e4, rawConnectDelayMs)) : 2e3;
8430
8430
  if (this.connectTimer) clearTimeout(this.connectTimer);
8431
8431
  this.connectTimer = setTimeout(() => {
8432
- if (this.connectSent || this.ws?.readyState !== WebSocket$1.OPEN) return;
8432
+ if (this.connectSent || this.ws?.readyState !== WebSocket.OPEN) return;
8433
8433
  this.opts.onConnectError?.(/* @__PURE__ */ new Error("gateway connect challenge timeout"));
8434
8434
  this.ws?.close(1008, "connect challenge timeout");
8435
8435
  }, connectChallengeTimeoutMs);
@@ -8471,7 +8471,7 @@ var GatewayClient = class {
8471
8471
  return null;
8472
8472
  }
8473
8473
  async request(method, params, opts) {
8474
- if (!this.ws || this.ws.readyState !== WebSocket$1.OPEN) throw new Error("gateway not connected");
8474
+ if (!this.ws || this.ws.readyState !== WebSocket.OPEN) throw new Error("gateway not connected");
8475
8475
  const id = randomUUID();
8476
8476
  const frame = {
8477
8477
  type: "req",
@@ -9893,7 +9893,7 @@ function normalizeReplyPayload(payload, opts = {}) {
9893
9893
  */
9894
9894
  let deliverRuntimePromise$2 = null;
9895
9895
  function loadDeliverRuntime$2() {
9896
- deliverRuntimePromise$2 ??= import("./deliver-runtime-BJoBkkm_.js");
9896
+ deliverRuntimePromise$2 ??= import("./deliver-runtime-CF9aNwHW.js");
9897
9897
  return deliverRuntimePromise$2;
9898
9898
  }
9899
9899
  /**
@@ -10582,7 +10582,7 @@ function normalizeSessionKey(value) {
10582
10582
  function readSessionStore(storePath) {
10583
10583
  try {
10584
10584
  const raw = fssync.readFileSync(storePath, "utf-8");
10585
- const parsed = JSON5.parse(raw);
10585
+ const parsed = json5.parse(raw);
10586
10586
  if (parsed && typeof parsed === "object" && !Array.isArray(parsed)) return parsed;
10587
10587
  } catch {}
10588
10588
  return {};
@@ -11181,7 +11181,7 @@ const DEFAULT_SUBAGENT_ANNOUNCE_TIMEOUT_MS = 6e4;
11181
11181
  const MAX_TIMER_SAFE_TIMEOUT_MS = 2147e6;
11182
11182
  let subagentRegistryRuntimePromise = null;
11183
11183
  function loadSubagentRegistryRuntime() {
11184
- subagentRegistryRuntimePromise ??= import("./subagent-registry-runtime-Blx4zbr0.js");
11184
+ subagentRegistryRuntimePromise ??= import("./subagent-registry-runtime-DoZWJdY9.js");
11185
11185
  return subagentRegistryRuntimePromise;
11186
11186
  }
11187
11187
  const DIRECT_ANNOUNCE_TRANSIENT_RETRY_DELAYS_MS = FAST_TEST_MODE ? [
@@ -14535,7 +14535,7 @@ async function runWithConcurrency(tasks, limit) {
14535
14535
  //#region src/media-understanding/echo-transcript.ts
14536
14536
  let deliverRuntimePromise$1 = null;
14537
14537
  function loadDeliverRuntime$1() {
14538
- deliverRuntimePromise$1 ??= import("./deliver-runtime-BJoBkkm_.js");
14538
+ deliverRuntimePromise$1 ??= import("./deliver-runtime-CF9aNwHW.js");
14539
14539
  return deliverRuntimePromise$1;
14540
14540
  }
14541
14541
  const DEFAULT_ECHO_TRANSCRIPT_FORMAT = "📝 \"{transcript}\"";
@@ -22194,6 +22194,52 @@ const handleBashCommand = async (params, allowTextCommands) => {
22194
22194
  };
22195
22195
  };
22196
22196
 
22197
+ //#endregion
22198
+ //#region src/agents/agent-tier.ts
22199
+ /**
22200
+ * Resolve the fallback flag file path.
22201
+ */
22202
+ function resolveFallbackFlagPath() {
22203
+ const dir = process.env.SQUIDCLAW_DIR || path.join(process.env.HOME || "/root", ".squidclaw");
22204
+ return path.join(dir, "fallback-active.json");
22205
+ }
22206
+ /**
22207
+ * Read the fallback flag file. Returns null if not present or invalid.
22208
+ */
22209
+ function readFallbackFlag() {
22210
+ try {
22211
+ const flagPath = resolveFallbackFlagPath();
22212
+ if (!fssync.existsSync(flagPath)) return null;
22213
+ const data = JSON.parse(fssync.readFileSync(flagPath, "utf8"));
22214
+ if (data && data.active) return data;
22215
+ return null;
22216
+ } catch {
22217
+ return null;
22218
+ }
22219
+ }
22220
+ /**
22221
+ * Write the fallback flag file when primary model fails.
22222
+ */
22223
+ function writeFallbackFlag(data) {
22224
+ try {
22225
+ const flagPath = resolveFallbackFlagPath();
22226
+ fssync.writeFileSync(flagPath, JSON.stringify({
22227
+ active: true,
22228
+ ...data,
22229
+ since: Date.now()
22230
+ }));
22231
+ } catch {}
22232
+ }
22233
+ /**
22234
+ * Clear the fallback flag file when primary model recovers.
22235
+ */
22236
+ function clearFallbackFlag() {
22237
+ try {
22238
+ const flagPath = resolveFallbackFlagPath();
22239
+ if (fssync.existsSync(flagPath)) fssync.unlinkSync(flagPath);
22240
+ } catch {}
22241
+ }
22242
+
22197
22243
  //#endregion
22198
22244
  //#region src/infra/backoff.ts
22199
22245
  function computeBackoff(policy, attempt) {
@@ -22298,7 +22344,7 @@ function ensureContextWindowCacheLoaded() {
22298
22344
  await ensureSquidClawModelsJson(cfg);
22299
22345
  } catch {}
22300
22346
  try {
22301
- const { discoverAuthStorage, discoverModels } = await import("./pi-model-discovery-DSuyTtRM.js").then((n) => n.r);
22347
+ const { discoverAuthStorage, discoverModels } = await import("./pi-model-discovery-BbCPyLm5.js").then((n) => n.r);
22302
22348
  const agentDir = resolveSquidClawAgentDir();
22303
22349
  const modelRegistry = discoverModels(discoverAuthStorage(agentDir), agentDir);
22304
22350
  applyDiscoveredContextWindows({
@@ -22364,52 +22410,6 @@ function resolveContextTokensForModel(params) {
22364
22410
  return lookupContextTokens(params.model) ?? params.fallbackContextTokens;
22365
22411
  }
22366
22412
 
22367
- //#endregion
22368
- //#region src/agents/agent-tier.ts
22369
- /**
22370
- * Resolve the fallback flag file path.
22371
- */
22372
- function resolveFallbackFlagPath() {
22373
- const dir = process.env.SQUIDCLAW_DIR || path.join(process.env.HOME || "/root", ".squidclaw");
22374
- return path.join(dir, "fallback-active.json");
22375
- }
22376
- /**
22377
- * Read the fallback flag file. Returns null if not present or invalid.
22378
- */
22379
- function readFallbackFlag() {
22380
- try {
22381
- const flagPath = resolveFallbackFlagPath();
22382
- if (!fssync.existsSync(flagPath)) return null;
22383
- const data = JSON.parse(fssync.readFileSync(flagPath, "utf8"));
22384
- if (data && data.active) return data;
22385
- return null;
22386
- } catch {
22387
- return null;
22388
- }
22389
- }
22390
- /**
22391
- * Write the fallback flag file when primary model fails.
22392
- */
22393
- function writeFallbackFlag(data) {
22394
- try {
22395
- const flagPath = resolveFallbackFlagPath();
22396
- fssync.writeFileSync(flagPath, JSON.stringify({
22397
- active: true,
22398
- ...data,
22399
- since: Date.now()
22400
- }));
22401
- } catch {}
22402
- }
22403
- /**
22404
- * Clear the fallback flag file when primary model recovers.
22405
- */
22406
- function clearFallbackFlag() {
22407
- try {
22408
- const flagPath = resolveFallbackFlagPath();
22409
- if (fssync.existsSync(flagPath)) fssync.unlinkSync(flagPath);
22410
- } catch {}
22411
- }
22412
-
22413
22413
  //#endregion
22414
22414
  //#region src/agents/usage.ts
22415
22415
  function makeZeroUsageSnapshot() {
@@ -31334,7 +31334,7 @@ async function createModelSelectionState(params) {
31334
31334
  }
31335
31335
  }
31336
31336
  if (sessionEntry && sessionStore && sessionKey && sessionEntry.authProfileOverride) {
31337
- const { ensureAuthProfileStore } = await import("./model-selection-Bjj4oU16.js").then((n) => n.F);
31337
+ const { ensureAuthProfileStore } = await import("./model-selection-Bh4BR1_K.js").then((n) => n.F);
31338
31338
  const profile = ensureAuthProfileStore(void 0, { allowKeychainPrompt: false }).profiles[sessionEntry.authProfileOverride];
31339
31339
  const providerKey = normalizeProviderId(provider);
31340
31340
  if (!profile || normalizeProviderId(profile.provider) !== providerKey) await clearSessionAuthProfileOverride({
@@ -51470,7 +51470,7 @@ const warnedContexts = /* @__PURE__ */ new Map();
51470
51470
  const log$10 = createSubsystemLogger("session-maintenance-warning");
51471
51471
  let deliverRuntimePromise = null;
51472
51472
  function loadDeliverRuntime() {
51473
- deliverRuntimePromise ??= import("./deliver-runtime-BJoBkkm_.js");
51473
+ deliverRuntimePromise ??= import("./deliver-runtime-CF9aNwHW.js");
51474
51474
  return deliverRuntimePromise;
51475
51475
  }
51476
51476
  function shouldSendWarning() {
@@ -56447,7 +56447,7 @@ const VISION_PROVIDERS = [
56447
56447
  ];
56448
56448
  let imageRuntimePromise = null;
56449
56449
  function loadImageRuntime() {
56450
- imageRuntimePromise ??= import("./image-runtime-Dkwf1-U3.js");
56450
+ imageRuntimePromise ??= import("./image-runtime-BFxy3jl0.js");
56451
56451
  return imageRuntimePromise;
56452
56452
  }
56453
56453
  /**
@@ -58508,7 +58508,7 @@ async function resolveDiscordPreflightAudioMentionContext(params) {
58508
58508
  hasTypedText
58509
58509
  };
58510
58510
  try {
58511
- const { transcribeFirstAudio } = await import("./audio-preflight-B5XvcdFX.js");
58511
+ const { transcribeFirstAudio } = await import("./audio-preflight-yiMsGLW7.js");
58512
58512
  if (params.abortSignal?.aborted) return {
58513
58513
  hasAudioAttachment,
58514
58514
  hasTypedText
@@ -65902,27 +65902,27 @@ let slackSenderRuntimePromise = null;
65902
65902
  let signalSenderRuntimePromise = null;
65903
65903
  let imessageSenderRuntimePromise = null;
65904
65904
  function loadWhatsAppSenderRuntime() {
65905
- whatsappSenderRuntimePromise ??= import("./deps-send-whatsapp.runtime-DfAhniLS.js");
65905
+ whatsappSenderRuntimePromise ??= import("./deps-send-whatsapp.runtime-C_zE7G9V.js");
65906
65906
  return whatsappSenderRuntimePromise;
65907
65907
  }
65908
65908
  function loadTelegramSenderRuntime() {
65909
- telegramSenderRuntimePromise ??= import("./deps-send-telegram.runtime-DcIT4v5p.js");
65909
+ telegramSenderRuntimePromise ??= import("./deps-send-telegram.runtime-BgwTF5zt.js");
65910
65910
  return telegramSenderRuntimePromise;
65911
65911
  }
65912
65912
  function loadDiscordSenderRuntime() {
65913
- discordSenderRuntimePromise ??= import("./deps-send-discord.runtime-Dlb1pOSn.js");
65913
+ discordSenderRuntimePromise ??= import("./deps-send-discord.runtime-BdlL7AnG.js");
65914
65914
  return discordSenderRuntimePromise;
65915
65915
  }
65916
65916
  function loadSlackSenderRuntime() {
65917
- slackSenderRuntimePromise ??= import("./deps-send-slack.runtime-s7wb1ssP.js");
65917
+ slackSenderRuntimePromise ??= import("./deps-send-slack.runtime-CCOjVEQr.js");
65918
65918
  return slackSenderRuntimePromise;
65919
65919
  }
65920
65920
  function loadSignalSenderRuntime() {
65921
- signalSenderRuntimePromise ??= import("./deps-send-signal.runtime-DPX_GcJK.js");
65921
+ signalSenderRuntimePromise ??= import("./deps-send-signal.runtime-dgrmoRN9.js");
65922
65922
  return signalSenderRuntimePromise;
65923
65923
  }
65924
65924
  function loadIMessageSenderRuntime() {
65925
- imessageSenderRuntimePromise ??= import("./deps-send-imessage.runtime-DmVvqFTt.js");
65925
+ imessageSenderRuntimePromise ??= import("./deps-send-imessage.runtime-BQx5JSa_.js");
65926
65926
  return imessageSenderRuntimePromise;
65927
65927
  }
65928
65928
  function createDefaultDeps() {
@@ -69612,7 +69612,7 @@ function createDiscordGatewayPlugin(params) {
69612
69612
  return super.registerClient(client);
69613
69613
  }
69614
69614
  createWebSocket(url) {
69615
- return new WebSocket(url, { agent: wsAgent });
69615
+ return new WebSocket$1(url, { agent: wsAgent });
69616
69616
  }
69617
69617
  }
69618
69618
  return new ProxyGatewayPlugin();
@@ -78759,15 +78759,15 @@ let slashCommandsRuntimePromise = null;
78759
78759
  let slashDispatchRuntimePromise = null;
78760
78760
  let slashSkillCommandsRuntimePromise = null;
78761
78761
  function loadSlashCommandsRuntime() {
78762
- slashCommandsRuntimePromise ??= import("./slash-commands.runtime-FS9JZ9BW.js");
78762
+ slashCommandsRuntimePromise ??= import("./slash-commands.runtime-Cvnjq5gh.js");
78763
78763
  return slashCommandsRuntimePromise;
78764
78764
  }
78765
78765
  function loadSlashDispatchRuntime() {
78766
- slashDispatchRuntimePromise ??= import("./slash-dispatch.runtime-BZw5XlvY.js");
78766
+ slashDispatchRuntimePromise ??= import("./slash-dispatch.runtime-YGQtou1U.js");
78767
78767
  return slashDispatchRuntimePromise;
78768
78768
  }
78769
78769
  function loadSlashSkillCommandsRuntime() {
78770
- slashSkillCommandsRuntimePromise ??= import("./slash-skill-commands.runtime-BZIbPU6x.js");
78770
+ slashSkillCommandsRuntimePromise ??= import("./slash-skill-commands.runtime-BbZPUdhN.js");
78771
78771
  return slashSkillCommandsRuntimePromise;
78772
78772
  }
78773
78773
  const slackExternalArgMenuStore = createSlackExternalArgMenuStore();
@@ -79757,7 +79757,7 @@ function collectTelegramUnmentionedGroupIds(groups) {
79757
79757
  }
79758
79758
  let auditMembershipRuntimePromise = null;
79759
79759
  function loadAuditMembershipRuntime() {
79760
- auditMembershipRuntimePromise ??= import("./audit-membership-runtime-czdecfjJ.js");
79760
+ auditMembershipRuntimePromise ??= import("./audit-membership-runtime-By9-qSwl.js");
79761
79761
  return auditMembershipRuntimePromise;
79762
79762
  }
79763
79763
  async function auditTelegramGroupMembership(params) {
@@ -82132,7 +82132,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, replyMedia =
82132
82132
  const disableAudioPreflight = firstDefined$1(topicConfig?.disableAudioPreflight, groupConfig?.disableAudioPreflight) === true;
82133
82133
  let preflightTranscript;
82134
82134
  if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0 && !disableAudioPreflight) try {
82135
- const { transcribeFirstAudio } = await import("./audio-preflight-B5XvcdFX.js");
82135
+ const { transcribeFirstAudio } = await import("./audio-preflight-yiMsGLW7.js");
82136
82136
  preflightTranscript = await transcribeFirstAudio({
82137
82137
  ctx: {
82138
82138
  MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
@@ -84971,7 +84971,7 @@ function createWhatsAppLoginTool() {
84971
84971
  force: Type.Optional(Type.Boolean())
84972
84972
  }),
84973
84973
  execute: async (_toolCallId, args) => {
84974
- const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-D0Gij2UC.js");
84974
+ const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-BZbSxC-5.js");
84975
84975
  if ((args?.action ?? "start") === "wait") {
84976
84976
  const result = await waitForWebLogin({ timeoutMs: typeof args.timeoutMs === "number" ? args.timeoutMs : void 0 });
84977
84977
  return {
@@ -85046,23 +85046,23 @@ let webOutboundPromise = null;
85046
85046
  let webLoginPromise = null;
85047
85047
  let whatsappActionsPromise = null;
85048
85048
  function loadWebOutbound() {
85049
- webOutboundPromise ??= import("./runtime-whatsapp-outbound.runtime-Da-07rzo.js");
85049
+ webOutboundPromise ??= import("./runtime-whatsapp-outbound.runtime-d8oRCgsW.js");
85050
85050
  return webOutboundPromise;
85051
85051
  }
85052
85052
  function loadWebLogin() {
85053
- webLoginPromise ??= import("./runtime-whatsapp-login.runtime-DTnmQLV1.js");
85053
+ webLoginPromise ??= import("./runtime-whatsapp-login.runtime-BVm0A03Y.js");
85054
85054
  return webLoginPromise;
85055
85055
  }
85056
85056
  function loadWebLoginQr() {
85057
- webLoginQrPromise ??= import("./login-qr-D0Gij2UC.js");
85057
+ webLoginQrPromise ??= import("./login-qr-BZbSxC-5.js");
85058
85058
  return webLoginQrPromise;
85059
85059
  }
85060
85060
  function loadWebChannel() {
85061
- webChannelPromise ??= import("./web-BbpOMti_.js");
85061
+ webChannelPromise ??= import("./web-ajuJjPrA.js");
85062
85062
  return webChannelPromise;
85063
85063
  }
85064
85064
  function loadWhatsAppActions() {
85065
- whatsappActionsPromise ??= import("./whatsapp-actions-CuLcPfQ9.js");
85065
+ whatsappActionsPromise ??= import("./whatsapp-actions-DuJpyhRe.js");
85066
85066
  return whatsappActionsPromise;
85067
85067
  }
85068
85068
  function createRuntimeWhatsApp() {
@@ -85503,7 +85503,7 @@ const log$6 = createSubsystemLogger("memory");
85503
85503
  const QMD_MANAGER_CACHE = /* @__PURE__ */ new Map();
85504
85504
  let managerRuntimePromise = null;
85505
85505
  function loadManagerRuntime() {
85506
- managerRuntimePromise ??= import("./manager-runtime-DPiPNTWB.js");
85506
+ managerRuntimePromise ??= import("./manager-runtime-Dup90ARI.js");
85507
85507
  return managerRuntimePromise;
85508
85508
  }
85509
85509
  async function getMemorySearchManager(params) {
@@ -85517,7 +85517,7 @@ async function getMemorySearchManager(params) {
85517
85517
  if (cached) return { manager: cached };
85518
85518
  }
85519
85519
  try {
85520
- const { QmdMemoryManager } = await import("./qmd-manager-CIcyVJmI.js");
85520
+ const { QmdMemoryManager } = await import("./qmd-manager-B9vC7u4w.js");
85521
85521
  const primary = await QmdMemoryManager.create({
85522
85522
  cfg: params.cfg,
85523
85523
  agentId: params.agentId,
@@ -88043,7 +88043,7 @@ const LOOP_WARNING_BUCKET_SIZE = 10;
88043
88043
  const MAX_LOOP_WARNING_KEYS = 256;
88044
88044
  let beforeToolCallRuntimePromise = null;
88045
88045
  function loadBeforeToolCallRuntime() {
88046
- beforeToolCallRuntimePromise ??= import("./pi-tools.before-tool-call.runtime-BCq4EKHD.js");
88046
+ beforeToolCallRuntimePromise ??= import("./pi-tools.before-tool-call.runtime-s89v8h6G.js");
88047
88047
  return beforeToolCallRuntimePromise;
88048
88048
  }
88049
88049
  function buildAdjustedParamsKey(params) {
@@ -93321,7 +93321,7 @@ var OpenAIWebSocketManager = class extends EventEmitter {
93321
93321
  * Throws if the connection is not open.
93322
93322
  */
93323
93323
  send(event) {
93324
- if (!this.ws || this.ws.readyState !== WebSocket.OPEN) throw new Error(`OpenAIWebSocketManager: cannot send — connection is not open (readyState=${this.ws?.readyState ?? "no socket"})`);
93324
+ if (!this.ws || this.ws.readyState !== WebSocket$1.OPEN) throw new Error(`OpenAIWebSocketManager: cannot send — connection is not open (readyState=${this.ws?.readyState ?? "no socket"})`);
93325
93325
  this.ws.send(JSON.stringify(event));
93326
93326
  }
93327
93327
  /**
@@ -93338,7 +93338,7 @@ var OpenAIWebSocketManager = class extends EventEmitter {
93338
93338
  * Returns true if the WebSocket is currently open and ready to send.
93339
93339
  */
93340
93340
  isConnected() {
93341
- return this.ws !== null && this.ws.readyState === WebSocket.OPEN;
93341
+ return this.ws !== null && this.ws.readyState === WebSocket$1.OPEN;
93342
93342
  }
93343
93343
  /**
93344
93344
  * Permanently closes the WebSocket connection and disables auto-reconnect.
@@ -93348,7 +93348,7 @@ var OpenAIWebSocketManager = class extends EventEmitter {
93348
93348
  this._cancelRetryTimer();
93349
93349
  if (this.ws) {
93350
93350
  this.ws.removeAllListeners();
93351
- if (this.ws.readyState === WebSocket.OPEN || this.ws.readyState === WebSocket.CONNECTING) this.ws.close(1e3, "Client closed");
93351
+ if (this.ws.readyState === WebSocket$1.OPEN || this.ws.readyState === WebSocket$1.CONNECTING) this.ws.close(1e3, "Client closed");
93352
93352
  this.ws = null;
93353
93353
  }
93354
93354
  }
@@ -93358,7 +93358,7 @@ var OpenAIWebSocketManager = class extends EventEmitter {
93358
93358
  reject(/* @__PURE__ */ new Error("OpenAIWebSocketManager: apiKey is required before connecting."));
93359
93359
  return;
93360
93360
  }
93361
- const socket = new WebSocket(this.wsUrl, { headers: {
93361
+ const socket = new WebSocket$1(this.wsUrl, { headers: {
93362
93362
  Authorization: `Bearer ${this.apiKey}`,
93363
93363
  "OpenAI-Beta": "responses-websocket=v1"
93364
93364
  } });
@@ -1,7 +1,7 @@
1
1
  import { E as truncateUtf16Safe } from "./utils-DMGXr25O.js";
2
2
  import { s as normalizeThinkLevel } from "./thinking-44rmAw5o.js";
3
3
  import { t as createSubsystemLogger } from "./subsystem-DC87CPVS.js";
4
- import { s as formatSandboxToolPolicyBlockedMessage } from "./sandbox-4_YzlsBa.js";
4
+ import { s as formatSandboxToolPolicyBlockedMessage } from "./sandbox-dnsTApLp.js";
5
5
  import { t as sanitizeContentBlocksImages } from "./tool-images-FhSCiY-o.js";
6
6
  import path from "node:path";
7
7
  import fs from "node:fs/promises";