squidclaw 3.0.20 → 3.0.22

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 (240) hide show
  1. package/dist/{accounts-s5e9zidf.js → accounts-C7pGQPcS.js} +2 -2
  2. package/dist/{accounts-Bkb-J8V6.js → accounts-DjhBQg_8.js} +2 -2
  3. package/dist/{accounts-B6F_XCgS.js → accounts-DwGoZKGm.js} +17 -17
  4. package/dist/{active-listener-6-Svu8Dx.js → active-listener-DPc_PGsA.js} +2 -2
  5. package/dist/{agents-BOS_wASV.js → agents-DXKtU4Il.js} +4 -4
  6. package/dist/{agents.config-ChUZBohP.js → agents.config-BM-2SLCh.js} +1 -1
  7. package/dist/{agents.config-Dfsl4jNF.js → agents.config-eMSUW-iw.js} +1 -1
  8. package/dist/{api-key-rotation-TRwuCWbu.js → api-key-rotation-DVyYtQxC.js} +2 -2
  9. package/dist/{audio-preflight-DZ1LNMJp.js → audio-preflight-xfe9w6_6.js} +32 -32
  10. package/dist/{audio-transcription-runner-B3u2x_ja.js → audio-transcription-runner-CqKnvAJf.js} +12 -12
  11. package/dist/{audit-membership-runtime-w23FnNAN.js → audit-membership-runtime-DyLj-uhz.js} +4 -4
  12. package/dist/{auth-choice-B_pvWO2S.js → auth-choice-CXepQc7c.js} +1 -1
  13. package/dist/{auth-choice-kUm2JAky.js → auth-choice-D2JrMJn-.js} +1 -1
  14. package/dist/{banner-4LItBqCV.js → banner-DMfuBV69.js} +1 -1
  15. package/dist/build-info.json +3 -3
  16. package/dist/bundled/boot-md/handler.js +51 -51
  17. package/dist/bundled/bootstrap-extra-files/handler.js +6 -6
  18. package/dist/bundled/command-logger/handler.js +2 -2
  19. package/dist/bundled/session-memory/handler.js +687 -51
  20. package/dist/canvas-host/a2ui/a2ui.bundle.js +1 -17815
  21. package/dist/{channel-activity-CxJbx4sD.js → channel-activity-CPpt4XaL.js} +3 -3
  22. package/dist/{channel-options-DA-4IR6h.js → channel-options-CQ-gER0J.js} +1 -1
  23. package/dist/{channel-options-DQeQl3Rk.js → channel-options-SijIkAlT.js} +1 -1
  24. package/dist/{channel-web--dAjVoio.js → channel-web-7t1a2N13.js} +1 -1
  25. package/dist/{channel-web-DJ21CAFF.js → channel-web-LLzBxZrT.js} +1 -1
  26. package/dist/{channels-cli-QvrLGt6C.js → channels-cli-D4xUEYYC.js} +6 -6
  27. package/dist/{channels-cli-DviJtKuS.js → channels-cli-DYaFNMme.js} +6 -6
  28. package/dist/{chrome-Dxm25ptH.js → chrome-x5E5XzEB.js} +18 -18
  29. package/dist/{cli-aCubMdJg.js → cli-CAID9zkL.js} +1 -1
  30. package/dist/{cli-q7seQ2Xx.js → cli-Dlc9IFWZ.js} +1 -1
  31. package/dist/{command-registry-C_YMaVul.js → command-registry-AHS8_9da.js} +9 -9
  32. package/dist/{commands-registry-B44COZFz.js → commands-registry-BJjv8_oR.js} +4 -4
  33. package/dist/{completion-cli-CyKEJDPO.js → completion-cli-B8xjpHDs.js} +1 -1
  34. package/dist/{completion-cli-w4XQjhDI.js → completion-cli-BR1r9_h4.js} +2 -2
  35. package/dist/{config-cli-BhQXEuBv.js → config-cli-D0A8Awoo.js} +1 -1
  36. package/dist/{config-cli-BfhjWCvB.js → config-cli-D4Rxoozg.js} +1 -1
  37. package/dist/{configure-Dsg_0ymU.js → configure-DOiI8_8c.js} +3 -3
  38. package/dist/{configure-0xkYrQ0e.js → configure-XmOqwwy9.js} +3 -3
  39. package/dist/control-ui/assets/{index-cM5P_3w7.js → index-BqxuPQOl.js} +2 -2
  40. package/dist/control-ui/assets/{index-cM5P_3w7.js.map → index-BqxuPQOl.js.map} +1 -1
  41. package/dist/control-ui/index.html +1 -1
  42. package/dist/{deliver-BcnsjbAB.js → deliver-h7T-Od1d.js} +21 -21
  43. package/dist/deliver-runtime-BKO22_He.js +36 -0
  44. package/dist/deps-send-discord.runtime-GIuvX7Xw.js +26 -0
  45. package/dist/deps-send-imessage.runtime-B3TC7G80.js +25 -0
  46. package/dist/deps-send-signal.runtime-CuVJyw7n.js +24 -0
  47. package/dist/deps-send-slack.runtime-cbfFoLZ4.js +22 -0
  48. package/dist/deps-send-telegram.runtime-CRyP-xDQ.js +27 -0
  49. package/dist/{deps-send-whatsapp.runtime-BNAJe11S.js → deps-send-whatsapp.runtime-CETLGt-t.js} +3 -3
  50. package/dist/{deps-send-whatsapp.runtime-qBpqM2k9.js → deps-send-whatsapp.runtime-CrxkfP31.js} +2 -2
  51. package/dist/deps-send-whatsapp.runtime-DIdFPzJE.js +60 -0
  52. package/dist/{deps-send-whatsapp.runtime-BGDIgEzh.js → deps-send-whatsapp.runtime-__ogpmJj.js} +3 -3
  53. package/dist/{diagnostic-C2lklhkn.js → diagnostic-CnVwZNbm.js} +2 -2
  54. package/dist/{doctor-completion-BlkbgU5h.js → doctor-completion-CZoEdMS-.js} +1 -1
  55. package/dist/{doctor-completion-BCQdm02b.js → doctor-completion-DhLEFUhN.js} +1 -1
  56. package/dist/entry.js +2 -2
  57. package/dist/{errors-DfgAh2Ml.js → errors-kkRuS2Cs.js} +1 -1
  58. package/dist/extensionAPI.js +1 -1
  59. package/dist/{fetch-b8tSR7_e.js → fetch-DP-JjB6Z.js} +5 -5
  60. package/dist/{fetch-guard-D16tjNsZ.js → fetch-guard-BDy975wP.js} +2 -2
  61. package/dist/{frontmatter-CjKtFduT.js → frontmatter-Cq1TcIQ2.js} +3 -3
  62. package/dist/{fs-safe-CwHbZdFH.js → fs-safe-BoB4X3GD.js} +4 -4
  63. package/dist/{gateway-cli-tFwyE4a3.js → gateway-cli-BJHBChfI.js} +8 -8
  64. package/dist/{gateway-cli-uWj08vdf.js → gateway-cli-BpHskeDd.js} +8 -8
  65. package/dist/{github-copilot-token-Cw3tAXM9.js → github-copilot-token-B5cPlwaz.js} +7 -7
  66. package/dist/{health-BwC4Qe5W.js → health-TmpUGSqu.js} +1 -1
  67. package/dist/{health-DS3reqch.js → health-XFKFZ7ZJ.js} +1 -1
  68. package/dist/{hooks-cli-oei5kRQM.js → hooks-cli-CXsZK8H9.js} +2 -2
  69. package/dist/{hooks-cli-tp5LchRL.js → hooks-cli-DsDV-Pxz.js} +2 -2
  70. package/dist/{image-C-8Kd2Mh.js → image-Cepp_eYU.js} +6 -6
  71. package/dist/{image-ops-BoN1E_WZ.js → image-ops-Dg8iraUV.js} +2 -2
  72. package/dist/image-runtime-BTfDy-um.js +29 -0
  73. package/dist/index.js +6 -6
  74. package/dist/{ir-Dut0zXyS.js → ir-CKK03mBV.js} +8 -8
  75. package/dist/{legacy-names-B0wgIP0Q.js → legacy-names-aGJJuzM_.js} +1 -1
  76. package/dist/llm-slug-generator.js +51 -51
  77. package/dist/{logger-oGKcCLZ5.js → logger-CnTSBL7T.js} +7 -7
  78. package/dist/{login-DJ357UQV.js → login-CeKDrz6_.js} +5 -5
  79. package/dist/{login-qr-C0fDBnpM.js → login-qr-KbOpR0GQ.js} +10 -10
  80. package/dist/{manager-BPGhs30n.js → manager-DINhLnMi.js} +13 -13
  81. package/dist/manager-runtime-D6ckUNSs.js +18 -0
  82. package/dist/{model-selection-CHnojCCK.js → model-selection-DuNLFQPR.js} +43 -43
  83. package/dist/{models-D9X4EUlY.js → models-5VXwJBU2.js} +2 -2
  84. package/dist/{models-cli-LGp-Tok9.js → models-cli-Br56IHfy.js} +3 -3
  85. package/dist/{models-cli-C1PLBYF7.js → models-cli-CrR1RN3j.js} +2 -2
  86. package/dist/{npm-resolution-BUvQm-e-.js → npm-resolution-CKtyq4FH.js} +1 -1
  87. package/dist/{npm-resolution-Dtkh26DG.js → npm-resolution-CPk7dS7F.js} +1 -1
  88. package/dist/{onboard-DDD6GX8E.js → onboard-DUnBamC0.js} +2 -2
  89. package/dist/{onboard-channels-9My16AOy.js → onboard-channels-D45grihx.js} +1 -1
  90. package/dist/{onboard-channels-Bm_NXV3z.js → onboard-channels-_kVo3Apf.js} +1 -1
  91. package/dist/{onboard-B0padonr.js → onboard-lFwpCpC3.js} +2 -2
  92. package/dist/{onboarding-dES4q9RV.js → onboarding-CyCSQ__q.js} +3 -3
  93. package/dist/{onboarding-o-id7p0-.js → onboarding-EEd_g8Zg.js} +3 -3
  94. package/dist/{onboarding.finalize-dpgNgUt5.js → onboarding.finalize-CbMq7C4K.js} +5 -5
  95. package/dist/{onboarding.finalize-BFtOLT7n.js → onboarding.finalize-Cs1ukjFN.js} +6 -6
  96. package/dist/{outbound-qTioiTJg.js → outbound-C9svt6RH.js} +6 -6
  97. package/dist/{outbound-attachment-rlW7G5df.js → outbound-attachment-DwupUxYF.js} +2 -2
  98. package/dist/{path-alias-guards-Cpsiv2KL.js → path-alias-guards-DORgbZ1w.js} +1 -1
  99. package/dist/{paths-CSdAWKDO.js → paths-DA5srn0U.js} +5 -5
  100. package/dist/{paths-CXClY8zC.js → paths-DSd911Oe.js} +4 -4
  101. package/dist/{pi-embedded-BpHQIzjg.js → pi-embedded-BN8fghaF.js} +137 -4
  102. package/dist/{pi-embedded-B_4NAHxA.js → pi-embedded-BjRmfjDB.js} +291 -158
  103. package/dist/{pi-embedded-helpers-DQ7IaeOi.js → pi-embedded-helpers-BvJVQtA3.js} +52 -52
  104. package/dist/{pi-model-discovery-o-WX5w2t.js → pi-model-discovery-V-InbjOM.js} +7 -7
  105. package/dist/pi-model-discovery-runtime--t6tAlar.js +11 -0
  106. package/dist/{pi-tools.before-tool-call.runtime-B_LUttg1.js → pi-tools.before-tool-call.runtime-Bpk4qTgV.js} +9 -9
  107. package/dist/{plugin-registry-CCeUDvxY.js → plugin-registry-CXm125Uz.js} +1 -1
  108. package/dist/{plugin-registry-CCkpP8-I.js → plugin-registry-D3PnPE1D.js} +1 -1
  109. package/dist/plugin-sdk/agents/agent-tier.d.ts +33 -0
  110. package/dist/plugin-sdk/{channel-web-BtNgAS1G.js → channel-web-CqiSEc52.js} +1 -1
  111. package/dist/plugin-sdk/{channel-web-BQE2gJ5U.js → channel-web-Sj8reff_.js} +1 -1
  112. package/dist/plugin-sdk/compat.js +2 -2
  113. package/dist/plugin-sdk/{deps-send-whatsapp.runtime-DPZSTh1j.js → deps-send-whatsapp.runtime-BpMl725h.js} +3 -3
  114. package/dist/plugin-sdk/{deps-send-whatsapp.runtime-V0Jfat5S.js → deps-send-whatsapp.runtime-DvxhnHR_.js} +3 -3
  115. package/dist/plugin-sdk/index.js +2 -2
  116. package/dist/plugin-sdk/mattermost.js +3 -3
  117. package/dist/plugin-sdk/nextcloud-talk.js +2 -2
  118. package/dist/plugin-sdk/{reply-DJYA4ZNu.js → reply-BczXGzC_.js} +137 -4
  119. package/dist/plugin-sdk/{reply-DeKKmUDh.js → reply-C_eN3l25.js} +137 -4
  120. package/dist/plugin-sdk/signal.js +2 -2
  121. package/dist/plugin-sdk/{slash-dispatch.runtime-E6j8gkO2.js → slash-dispatch.runtime-BpWhUY9B.js} +1 -1
  122. package/dist/plugin-sdk/{slash-dispatch.runtime-k8xSVYOI.js → slash-dispatch.runtime-DOo1IzuY.js} +1 -1
  123. package/dist/plugin-sdk/{subagent-registry-runtime-D6cTAG2k.js → subagent-registry-runtime-DLvup9ph.js} +1 -1
  124. package/dist/plugin-sdk/{subagent-registry-runtime-Cca50Qld.js → subagent-registry-runtime-TEkOfcqG.js} +1 -1
  125. package/dist/plugin-sdk/{web-DkbCMgLG.js → web-C2Sj2WW0.js} +2 -2
  126. package/dist/plugin-sdk/{web-Be4JS3z8.js → web-CmLgZUIO.js} +2 -2
  127. package/dist/plugin-sdk/whatsapp.js +2 -2
  128. package/dist/{plugins-AqsVZZk3.js → plugins-DvejjZnJ.js} +11 -11
  129. package/dist/{plugins-cli-DFpHU_xo.js → plugins-cli-BA_2daJe.js} +2 -2
  130. package/dist/{plugins-cli-CZCadI9y.js → plugins-cli-C0WKWrZo.js} +2 -2
  131. package/dist/{program-B4_o5EDH.js → program-D_xdLzmM.js} +7 -7
  132. package/dist/{program-context-CkfdLtpp.js → program-context-DfmCIQ91.js} +17 -17
  133. package/dist/{prompt-select-styled-C1DFrYuk.js → prompt-select-styled-ApPSadr5.js} +4 -4
  134. package/dist/{prompt-select-styled-CZJJ2rPA.js → prompt-select-styled-BsheNEnh.js} +4 -4
  135. package/dist/{provider-auth-helpers-BlYwNWkq.js → provider-auth-helpers-B5kD4Lt6.js} +1 -1
  136. package/dist/{provider-auth-helpers-C5taJG0R.js → provider-auth-helpers-DpOFkV28.js} +1 -1
  137. package/dist/{proxy-env-DXXfs2WL.js → proxy-env-D-fike7s.js} +1 -1
  138. package/dist/{proxy-fetch-C2v-Utgg.js → proxy-fetch-lH6RsRTE.js} +1 -1
  139. package/dist/{push-apns-Dkjfalec.js → push-apns-BbenjEX4.js} +1 -1
  140. package/dist/{push-apns-Bhk1_5ut.js → push-apns-Ci2sdIKf.js} +1 -1
  141. package/dist/{pw-ai-GOBxzChI.js → pw-ai-DOeiV3Pj.js} +14 -14
  142. package/dist/{qmd-manager-CO-shcLU.js → qmd-manager-BN0siR2Z.js} +10 -10
  143. package/dist/{query-expansion-DlQOkf-g.js → query-expansion-Dzxt6kXo.js} +6 -6
  144. package/dist/{redact-NmPEVjIo.js → redact-DvzicBMu.js} +1 -1
  145. package/dist/{register.agent-s2PqcoIS.js → register.agent-CY6R-7fn.js} +6 -6
  146. package/dist/{register.agent-DOp4lbyc.js → register.agent-Dk_5V5oA.js} +7 -7
  147. package/dist/{register.configure-DABoMBBf.js → register.configure-C8OFfGln.js} +7 -7
  148. package/dist/{register.configure-BGfourxZ.js → register.configure-DT1RLeTR.js} +7 -7
  149. package/dist/{register.maintenance-Bdr3bSAF.js → register.maintenance-CluQOq8b.js} +8 -8
  150. package/dist/{register.maintenance-DmP8sVxb.js → register.maintenance-YHXmOQzf.js} +7 -7
  151. package/dist/{register.message-DF0InVCv.js → register.message-BCTXT5yK.js} +2 -2
  152. package/dist/{register.message-gz8DaAc1.js → register.message-BuoFjRqA.js} +2 -2
  153. package/dist/{register.onboard-Do14cwDQ.js → register.onboard-BJaRMtxU.js} +2 -2
  154. package/dist/{register.onboard-auVLfmF3.js → register.onboard-C64oXnvq.js} +2 -2
  155. package/dist/{register.setup-ZyGJlYOD.js → register.setup-Dl3nk2Ui.js} +2 -2
  156. package/dist/{register.setup-B3aVuPyo.js → register.setup-Drc55K_w.js} +2 -2
  157. package/dist/{register.status-health-sessions-C-1HE5oP.js → register.status-health-sessions-BHtbPeCO.js} +3 -3
  158. package/dist/{register.status-health-sessions-vFpvdVS1.js → register.status-health-sessions-xgC_gtEM.js} +3 -3
  159. package/dist/{register.subclis-BYiAuTiK.js → register.subclis-CDMFyaKR.js} +9 -9
  160. package/dist/{reply-BaVB3YlN.js → reply-DwjHsBuj.js} +137 -4
  161. package/dist/{run-main-DW-JR8hB.js → run-main-BcA22Ipv.js} +14 -14
  162. package/dist/{run-with-concurrency-FczpX8ng.js → run-with-concurrency-BFR3ReeF.js} +4 -4
  163. package/dist/runtime-whatsapp-login.runtime-DxV9iv6l.js +13 -0
  164. package/dist/runtime-whatsapp-outbound.runtime-DQqIlwhS.js +22 -0
  165. package/dist/{send-Bx9CqcZr.js → send-4nRsZJXH.js} +7 -7
  166. package/dist/{send-D5D0ZGht.js → send-BGlcHjUD.js} +26 -26
  167. package/dist/{send-DtHQ7_6Z.js → send-BTUU1jWM.js} +8 -8
  168. package/dist/{send-B9H0BkfO.js → send-DdBbRpTP.js} +6 -6
  169. package/dist/{send-B5QEmMJ4.js → send-dTQd-IyJ.js} +5 -5
  170. package/dist/{server-node-events-rumcq7j0.js → server-node-events-Q0cT2ifj.js} +2 -2
  171. package/dist/{server-node-events-D-EmiDyc.js → server-node-events-YN5eJeHa.js} +2 -2
  172. package/dist/{session-DLTCuoUD.js → session-CnCwDJke.js} +8 -8
  173. package/dist/{skill-commands-BwTLQRR8.js → skill-commands-Cz45_nme.js} +9 -9
  174. package/dist/{skills-B9N2bqKU.js → skills-CdCS1HeL.js} +22 -22
  175. package/dist/slash-commands.runtime-CZz6v6b3.js +16 -0
  176. package/dist/{slash-dispatch.runtime-sVHNrSL1.js → slash-dispatch.runtime-BOMEVFk0.js} +1 -1
  177. package/dist/slash-dispatch.runtime-CYsywpzU.js +56 -0
  178. package/dist/{slash-dispatch.runtime-DPRwMKXk.js → slash-dispatch.runtime-DB1QsBRc.js} +1 -1
  179. package/dist/{slash-dispatch.runtime-BeltKAMm.js → slash-dispatch.runtime-sXaUYn4v.js} +1 -1
  180. package/dist/slash-skill-commands.runtime-Bawt7j0r.js +20 -0
  181. package/dist/{status-BeSD1NDD.js → status-Bh5x6DsW.js} +2 -2
  182. package/dist/{status-DGF_ROMC.js → status-cU9cJReo.js} +2 -2
  183. package/dist/{store-CvQ41zCV.js → store-D9z0dn7D.js} +2 -2
  184. package/dist/{subagent-registry-CgUBOyi3.js → subagent-registry-CIgFD2oi.js} +137 -4
  185. package/dist/{subagent-registry-runtime-Bxc5DYZt.js → subagent-registry-runtime-232sNNT6.js} +1 -1
  186. package/dist/{subagent-registry-runtime-BYpjZwjA.js → subagent-registry-runtime-D7ubAnDZ.js} +1 -1
  187. package/dist/{subagent-registry-runtime-Cx5vPpG8.js → subagent-registry-runtime-DGTjU9Lb.js} +1 -1
  188. package/dist/subagent-registry-runtime-DS-c6Duv.js +56 -0
  189. package/dist/{subsystem-BaLYRf7D.js → subsystem-6v7sWnAD.js} +14 -14
  190. package/dist/{tables-BRYYxYs7.js → tables-BTFiZyRU.js} +1 -1
  191. package/dist/{target-errors-D0ZJUbbf.js → target-errors-DgNRx3Nr.js} +2 -2
  192. package/dist/{thinking-B-A99X3F.js → thinking-B75CXkTT.js} +7 -7
  193. package/dist/{tokens-D2XhLqIz.js → tokens-DfbMVF9y.js} +1 -1
  194. package/dist/{tool-images-Zn6jVmkX.js → tool-images-Dp5OiXeA.js} +2 -2
  195. package/dist/{update-cli-Duy8S3Bj.js → update-cli-CktBOXZF.js} +7 -7
  196. package/dist/{update-cli-BSIF-OEa.js → update-cli-DM_dUip_.js} +8 -8
  197. package/dist/{update-runner-CMpruPN8.js → update-runner-BBJZmfZ4.js} +1 -1
  198. package/dist/{update-runner-D_nDdx7d.js → update-runner-BYGPkHXG.js} +1 -1
  199. package/dist/{web-C-5RPkV9.js → web-CZhZC1EA.js} +2 -2
  200. package/dist/{web-CKY0tK0k.js → web-Chw1dtKA.js} +1 -1
  201. package/dist/{web-Bnr4YuWJ.js → web-DWRZAXj9.js} +2 -2
  202. package/dist/{web-C0xcHURK.js → web-sFV1riEV.js} +55 -55
  203. package/dist/{whatsapp-actions-Cuy0qeQK.js → whatsapp-actions-CzqsuSGx.js} +21 -21
  204. package/dist/{workspace-TqfVSQuO.js → workspace-kVMIaBrV.js} +20 -20
  205. package/docs/reference/templates/IDENTITY.md +8 -23
  206. package/extensions/acpx/node_modules/.bin/acpx +2 -2
  207. package/extensions/diagnostics-otel/node_modules/.bin/acorn +2 -2
  208. package/extensions/diffs/node_modules/.bin/playwright-core +2 -2
  209. package/extensions/googlechat/node_modules/.bin/squidclaw +2 -2
  210. package/extensions/matrix/node_modules/.bin/markdown-it +2 -2
  211. package/extensions/memory-core/node_modules/.bin/squidclaw +2 -2
  212. package/extensions/memory-lancedb/node_modules/.bin/arrow2csv +2 -2
  213. package/extensions/memory-lancedb/node_modules/.bin/openai +2 -2
  214. package/extensions/nostr/node_modules/.bin/tsc +2 -2
  215. package/extensions/nostr/node_modules/.bin/tsserver +2 -2
  216. package/extensions/tlon/node_modules/.bin/tlon +2 -2
  217. package/package.json +1 -1
  218. package/dist/canvas-host/a2ui/.bundle.hash +0 -1
  219. package/dist/deliver-runtime-_mBfV_4S.js +0 -36
  220. package/dist/deps-send-discord.runtime-CUTAK2hy.js +0 -26
  221. package/dist/deps-send-imessage.runtime-CQOiEIuA.js +0 -25
  222. package/dist/deps-send-signal.runtime-wN7MkzLw.js +0 -24
  223. package/dist/deps-send-slack.runtime-HEEwW4uU.js +0 -22
  224. package/dist/deps-send-telegram.runtime-DHlcnjQO.js +0 -27
  225. package/dist/deps-send-whatsapp.runtime-B7GC68Cu.js +0 -60
  226. package/dist/export-html/vendor/highlight.min.js +0 -1213
  227. package/dist/export-html/vendor/marked.min.js +0 -6
  228. package/dist/image-runtime-D11wBIC8.js +0 -29
  229. package/dist/manager-runtime-BB9lcoFR.js +0 -18
  230. package/dist/pi-model-discovery-runtime-DBkQoIJw.js +0 -11
  231. package/dist/runtime-whatsapp-login.runtime-DumUjKRz.js +0 -13
  232. package/dist/runtime-whatsapp-outbound.runtime-Cgu2MfqR.js +0 -22
  233. package/dist/slash-commands.runtime-CjBXruwG.js +0 -16
  234. package/dist/slash-dispatch.runtime-C7rHRQFg.js +0 -56
  235. package/dist/slash-skill-commands.runtime-DYK20Lxf.js +0 -20
  236. package/dist/subagent-registry-runtime-Bm5UEB8c.js +0 -56
  237. package/docs/reference/templates/USER.md +0 -23
  238. package/docs/zh-CN/reference/templates/IDENTITY.md +0 -36
  239. package/docs/zh-CN/reference/templates/USER.md +0 -30
  240. package/skills/sherpa-onnx-tts/bin/sherpa-onnx-tts +0 -178
@@ -23547,7 +23547,7 @@ const DEFAULT_SUBAGENT_ANNOUNCE_TIMEOUT_MS = 6e4;
23547
23547
  const MAX_TIMER_SAFE_TIMEOUT_MS = 2147e6;
23548
23548
  let subagentRegistryRuntimePromise = null;
23549
23549
  function loadSubagentRegistryRuntime() {
23550
- subagentRegistryRuntimePromise ??= import("./subagent-registry-runtime-D6cTAG2k.js");
23550
+ subagentRegistryRuntimePromise ??= import("./subagent-registry-runtime-DLvup9ph.js");
23551
23551
  return subagentRegistryRuntimePromise;
23552
23552
  }
23553
23553
  const DIRECT_ANNOUNCE_TRANSIENT_RETRY_DELAYS_MS = FAST_TEST_MODE ? [
@@ -37634,6 +37634,112 @@ function resolveContextTokensForModel(params) {
37634
37634
  return lookupContextTokens(params.model) ?? params.fallbackContextTokens;
37635
37635
  }
37636
37636
 
37637
+ //#endregion
37638
+ //#region src/agents/agent-tier.ts
37639
+ const PAID_PROVIDERS = ["anthropic", "openai"];
37640
+ function isPaidProvider(modelRef) {
37641
+ const trimmed = modelRef.trim().toLowerCase();
37642
+ for (const provider of PAID_PROVIDERS) if (trimmed.startsWith(provider + "/") || trimmed.startsWith(provider + ":")) return {
37643
+ isPaid: true,
37644
+ provider
37645
+ };
37646
+ return {
37647
+ isPaid: false,
37648
+ provider: ""
37649
+ };
37650
+ }
37651
+ /**
37652
+ * Check if the primary provider's last interaction was a failure
37653
+ * with no successful use after it.
37654
+ */
37655
+ function isPrimaryLastKnownBroken(store, profileIds, now) {
37656
+ for (const id of profileIds) {
37657
+ const stats = store.usageStats?.[id];
37658
+ if (!stats) continue;
37659
+ if (typeof stats.disabledUntil === "number" && stats.disabledUntil > now) return true;
37660
+ if (typeof stats.cooldownUntil === "number" && stats.cooldownUntil > now && (stats.errorCount ?? 0) > 0) return true;
37661
+ const lastFailure = stats.lastFailureAt ?? 0;
37662
+ const lastSuccess = stats.lastUsed ?? 0;
37663
+ if (lastFailure > 0 && lastFailure > lastSuccess) return true;
37664
+ }
37665
+ return false;
37666
+ }
37667
+ /**
37668
+ * Resolve the fallback flag file path.
37669
+ */
37670
+ function resolveFallbackFlagPath() {
37671
+ const dir = process.env.SQUIDCLAW_DIR || path.join(process.env.HOME || "/root", ".squidclaw");
37672
+ return path.join(dir, "fallback-active.json");
37673
+ }
37674
+ /**
37675
+ * Read the fallback flag file. Returns null if not present or invalid.
37676
+ */
37677
+ function readFallbackFlag() {
37678
+ try {
37679
+ const flagPath = resolveFallbackFlagPath();
37680
+ if (!fs.existsSync(flagPath)) return null;
37681
+ const data = JSON.parse(fs.readFileSync(flagPath, "utf8"));
37682
+ if (data && data.active) return data;
37683
+ return null;
37684
+ } catch {
37685
+ return null;
37686
+ }
37687
+ }
37688
+ /**
37689
+ * Write the fallback flag file when primary model fails.
37690
+ */
37691
+ function writeFallbackFlag(data) {
37692
+ try {
37693
+ const flagPath = resolveFallbackFlagPath();
37694
+ fs.writeFileSync(flagPath, JSON.stringify({
37695
+ active: true,
37696
+ ...data,
37697
+ since: Date.now()
37698
+ }));
37699
+ } catch {}
37700
+ }
37701
+ /**
37702
+ * Clear the fallback flag file when primary model recovers.
37703
+ */
37704
+ function clearFallbackFlag() {
37705
+ try {
37706
+ const flagPath = resolveFallbackFlagPath();
37707
+ if (fs.existsSync(flagPath)) fs.unlinkSync(flagPath);
37708
+ } catch {}
37709
+ }
37710
+ /**
37711
+ * Resolve the current agent tier.
37712
+ *
37713
+ * - "super": Paid provider configured and last known working.
37714
+ * - "degraded": Paid provider configured but last attempt failed (no success since).
37715
+ * - "base": Local/free model only.
37716
+ */
37717
+ function resolveAgentTier(params) {
37718
+ const primary = resolveAgentModelPrimaryValue(params.cfg?.agents?.defaults?.model);
37719
+ if (!primary) return "base";
37720
+ const { isPaid, provider } = isPaidProvider(primary);
37721
+ if (!isPaid) return "base";
37722
+ if (!resolveEnvApiKey(provider)) return "base";
37723
+ try {
37724
+ const authStore = ensureAuthProfileStore(params.agentDir ?? resolveSquidClawAgentDir(), { allowKeychainPrompt: false });
37725
+ const profileIds = resolveAuthProfileOrder({
37726
+ cfg: params.cfg,
37727
+ store: authStore,
37728
+ provider
37729
+ });
37730
+ if (profileIds.length > 0 && isPrimaryLastKnownBroken(authStore, profileIds, Date.now())) return "degraded";
37731
+ } catch {}
37732
+ if (readFallbackFlag()) return "degraded";
37733
+ return "super";
37734
+ }
37735
+ function formatAgentTierLabel(tier) {
37736
+ switch (tier) {
37737
+ case "super": return "🟢 Super Agent";
37738
+ case "degraded": return "🟠 Basic Agent (degraded)";
37739
+ case "base": return "🟡 Basic Agent";
37740
+ }
37741
+ }
37742
+
37637
37743
  //#endregion
37638
37744
  //#region src/sessions/model-overrides.ts
37639
37745
  function applyModelOverrideToSessionEntry(params) {
@@ -37707,6 +37813,7 @@ function applyModelOverrideToSessionEntry(params) {
37707
37813
  }
37708
37814
  if (updated) {
37709
37815
  delete entry.fallbackNoticeSelectedModel;
37816
+ clearFallbackFlag();
37710
37817
  delete entry.fallbackNoticeActiveModel;
37711
37818
  delete entry.fallbackNoticeReason;
37712
37819
  entry.updatedAt = Date.now();
@@ -45481,7 +45588,7 @@ let slackSenderRuntimePromise = null;
45481
45588
  let signalSenderRuntimePromise = null;
45482
45589
  let imessageSenderRuntimePromise = null;
45483
45590
  function loadWhatsAppSenderRuntime() {
45484
- whatsappSenderRuntimePromise ??= import("./deps-send-whatsapp.runtime-V0Jfat5S.js");
45591
+ whatsappSenderRuntimePromise ??= import("./deps-send-whatsapp.runtime-DvxhnHR_.js");
45485
45592
  return whatsappSenderRuntimePromise;
45486
45593
  }
45487
45594
  function loadTelegramSenderRuntime() {
@@ -57644,7 +57751,7 @@ function loadSlashCommandsRuntime() {
57644
57751
  return slashCommandsRuntimePromise;
57645
57752
  }
57646
57753
  function loadSlashDispatchRuntime() {
57647
- slashDispatchRuntimePromise ??= import("./slash-dispatch.runtime-k8xSVYOI.js");
57754
+ slashDispatchRuntimePromise ??= import("./slash-dispatch.runtime-DOo1IzuY.js");
57648
57755
  return slashDispatchRuntimePromise;
57649
57756
  }
57650
57757
  function loadSlashSkillCommandsRuntime() {
@@ -59184,6 +59291,22 @@ function buildStatusMessage(args) {
59184
59291
  activeModelRef: activeModelLabel,
59185
59292
  state: entry
59186
59293
  });
59294
+ if (!fallbackState.active) {
59295
+ const flag = readFallbackFlag();
59296
+ if (flag) {
59297
+ fallbackState = {
59298
+ active: true,
59299
+ reason: flag.reason || "primary unavailable"
59300
+ };
59301
+ if (flag.activeModel) {
59302
+ const parts = flag.activeModel.split("/");
59303
+ if (parts.length === 2) {
59304
+ activeProvider = parts[0];
59305
+ activeModel = parts[1];
59306
+ }
59307
+ }
59308
+ }
59309
+ }
59187
59310
  const effectiveCostAuthMode = fallbackState.active ? activeAuthMode : selectedAuthMode ?? activeAuthMode;
59188
59311
  const showCost = effectiveCostAuthMode === "api-key" || effectiveCostAuthMode === "mixed";
59189
59312
  const costConfig = showCost ? resolveModelCostConfig({
@@ -59240,6 +59363,11 @@ function buildStatusMessage(args) {
59240
59363
  const voiceLine = formatVoiceModeLine(args.config, args.sessionEntry);
59241
59364
  return [
59242
59365
  versionLine,
59366
+ args.config ? formatAgentTierLabel((() => {
59367
+ const t = resolveAgentTier({ cfg: args.config });
59368
+ if (t === "super" && fallbackState.active) return "degraded";
59369
+ return t;
59370
+ })()) : null,
59243
59371
  args.timeLine,
59244
59372
  modelLine,
59245
59373
  fallbackLine,
@@ -66257,7 +66385,7 @@ function loadWebLoginQr() {
66257
66385
  return webLoginQrPromise;
66258
66386
  }
66259
66387
  function loadWebChannel() {
66260
- webChannelPromise ??= import("./web-DkbCMgLG.js");
66388
+ webChannelPromise ??= import("./web-C2Sj2WW0.js");
66261
66389
  return webChannelPromise;
66262
66390
  }
66263
66391
  function loadWhatsAppActions() {
@@ -96679,6 +96807,11 @@ async function runReplyAgent(params) {
96679
96807
  fallbackStateEntry.fallbackNoticeSelectedModel = fallbackTransition.nextState.selectedModel;
96680
96808
  fallbackStateEntry.fallbackNoticeActiveModel = fallbackTransition.nextState.activeModel;
96681
96809
  fallbackStateEntry.fallbackNoticeReason = fallbackTransition.nextState.reason;
96810
+ writeFallbackFlag({
96811
+ selectedModel: fallbackTransition.nextState.selectedModel,
96812
+ activeModel: fallbackTransition.nextState.activeModel,
96813
+ reason: fallbackTransition.nextState.reason
96814
+ });
96682
96815
  fallbackStateEntry.updatedAt = Date.now();
96683
96816
  activeSessionEntry = fallbackStateEntry;
96684
96817
  }
@@ -20124,7 +20124,7 @@ const DEFAULT_SUBAGENT_ANNOUNCE_TIMEOUT_MS = 6e4;
20124
20124
  const MAX_TIMER_SAFE_TIMEOUT_MS = 2147e6;
20125
20125
  let subagentRegistryRuntimePromise = null;
20126
20126
  function loadSubagentRegistryRuntime() {
20127
- subagentRegistryRuntimePromise ??= import("./subagent-registry-runtime-Cca50Qld.js");
20127
+ subagentRegistryRuntimePromise ??= import("./subagent-registry-runtime-TEkOfcqG.js");
20128
20128
  return subagentRegistryRuntimePromise;
20129
20129
  }
20130
20130
  const DIRECT_ANNOUNCE_TRANSIENT_RETRY_DELAYS_MS = FAST_TEST_MODE ? [
@@ -36418,6 +36418,112 @@ function resolveContextTokensForModel(params) {
36418
36418
  return lookupContextTokens(params.model) ?? params.fallbackContextTokens;
36419
36419
  }
36420
36420
 
36421
+ //#endregion
36422
+ //#region src/agents/agent-tier.ts
36423
+ const PAID_PROVIDERS = ["anthropic", "openai"];
36424
+ function isPaidProvider(modelRef) {
36425
+ const trimmed = modelRef.trim().toLowerCase();
36426
+ for (const provider of PAID_PROVIDERS) if (trimmed.startsWith(provider + "/") || trimmed.startsWith(provider + ":")) return {
36427
+ isPaid: true,
36428
+ provider
36429
+ };
36430
+ return {
36431
+ isPaid: false,
36432
+ provider: ""
36433
+ };
36434
+ }
36435
+ /**
36436
+ * Check if the primary provider's last interaction was a failure
36437
+ * with no successful use after it.
36438
+ */
36439
+ function isPrimaryLastKnownBroken(store, profileIds, now) {
36440
+ for (const id of profileIds) {
36441
+ const stats = store.usageStats?.[id];
36442
+ if (!stats) continue;
36443
+ if (typeof stats.disabledUntil === "number" && stats.disabledUntil > now) return true;
36444
+ if (typeof stats.cooldownUntil === "number" && stats.cooldownUntil > now && (stats.errorCount ?? 0) > 0) return true;
36445
+ const lastFailure = stats.lastFailureAt ?? 0;
36446
+ const lastSuccess = stats.lastUsed ?? 0;
36447
+ if (lastFailure > 0 && lastFailure > lastSuccess) return true;
36448
+ }
36449
+ return false;
36450
+ }
36451
+ /**
36452
+ * Resolve the fallback flag file path.
36453
+ */
36454
+ function resolveFallbackFlagPath() {
36455
+ const dir = process.env.SQUIDCLAW_DIR || path.join(process.env.HOME || "/root", ".squidclaw");
36456
+ return path.join(dir, "fallback-active.json");
36457
+ }
36458
+ /**
36459
+ * Read the fallback flag file. Returns null if not present or invalid.
36460
+ */
36461
+ function readFallbackFlag() {
36462
+ try {
36463
+ const flagPath = resolveFallbackFlagPath();
36464
+ if (!fs.existsSync(flagPath)) return null;
36465
+ const data = JSON.parse(fs.readFileSync(flagPath, "utf8"));
36466
+ if (data && data.active) return data;
36467
+ return null;
36468
+ } catch {
36469
+ return null;
36470
+ }
36471
+ }
36472
+ /**
36473
+ * Write the fallback flag file when primary model fails.
36474
+ */
36475
+ function writeFallbackFlag(data) {
36476
+ try {
36477
+ const flagPath = resolveFallbackFlagPath();
36478
+ fs.writeFileSync(flagPath, JSON.stringify({
36479
+ active: true,
36480
+ ...data,
36481
+ since: Date.now()
36482
+ }));
36483
+ } catch {}
36484
+ }
36485
+ /**
36486
+ * Clear the fallback flag file when primary model recovers.
36487
+ */
36488
+ function clearFallbackFlag() {
36489
+ try {
36490
+ const flagPath = resolveFallbackFlagPath();
36491
+ if (fs.existsSync(flagPath)) fs.unlinkSync(flagPath);
36492
+ } catch {}
36493
+ }
36494
+ /**
36495
+ * Resolve the current agent tier.
36496
+ *
36497
+ * - "super": Paid provider configured and last known working.
36498
+ * - "degraded": Paid provider configured but last attempt failed (no success since).
36499
+ * - "base": Local/free model only.
36500
+ */
36501
+ function resolveAgentTier(params) {
36502
+ const primary = resolveAgentModelPrimaryValue(params.cfg?.agents?.defaults?.model);
36503
+ if (!primary) return "base";
36504
+ const { isPaid, provider } = isPaidProvider(primary);
36505
+ if (!isPaid) return "base";
36506
+ if (!resolveEnvApiKey(provider)) return "base";
36507
+ try {
36508
+ const authStore = ensureAuthProfileStore(params.agentDir ?? resolveSquidClawAgentDir(), { allowKeychainPrompt: false });
36509
+ const profileIds = resolveAuthProfileOrder({
36510
+ cfg: params.cfg,
36511
+ store: authStore,
36512
+ provider
36513
+ });
36514
+ if (profileIds.length > 0 && isPrimaryLastKnownBroken(authStore, profileIds, Date.now())) return "degraded";
36515
+ } catch {}
36516
+ if (readFallbackFlag()) return "degraded";
36517
+ return "super";
36518
+ }
36519
+ function formatAgentTierLabel(tier) {
36520
+ switch (tier) {
36521
+ case "super": return "🟢 Super Agent";
36522
+ case "degraded": return "🟠 Basic Agent (degraded)";
36523
+ case "base": return "🟡 Basic Agent";
36524
+ }
36525
+ }
36526
+
36421
36527
  //#endregion
36422
36528
  //#region src/sessions/model-overrides.ts
36423
36529
  function applyModelOverrideToSessionEntry(params) {
@@ -36491,6 +36597,7 @@ function applyModelOverrideToSessionEntry(params) {
36491
36597
  }
36492
36598
  if (updated) {
36493
36599
  delete entry.fallbackNoticeSelectedModel;
36600
+ clearFallbackFlag();
36494
36601
  delete entry.fallbackNoticeActiveModel;
36495
36602
  delete entry.fallbackNoticeReason;
36496
36603
  entry.updatedAt = Date.now();
@@ -44265,7 +44372,7 @@ let slackSenderRuntimePromise = null;
44265
44372
  let signalSenderRuntimePromise = null;
44266
44373
  let imessageSenderRuntimePromise = null;
44267
44374
  function loadWhatsAppSenderRuntime() {
44268
- whatsappSenderRuntimePromise ??= import("./deps-send-whatsapp.runtime-DPZSTh1j.js");
44375
+ whatsappSenderRuntimePromise ??= import("./deps-send-whatsapp.runtime-BpMl725h.js");
44269
44376
  return whatsappSenderRuntimePromise;
44270
44377
  }
44271
44378
  function loadTelegramSenderRuntime() {
@@ -57203,7 +57310,7 @@ function loadSlashCommandsRuntime() {
57203
57310
  return slashCommandsRuntimePromise;
57204
57311
  }
57205
57312
  function loadSlashDispatchRuntime() {
57206
- slashDispatchRuntimePromise ??= import("./slash-dispatch.runtime-E6j8gkO2.js");
57313
+ slashDispatchRuntimePromise ??= import("./slash-dispatch.runtime-BpWhUY9B.js");
57207
57314
  return slashDispatchRuntimePromise;
57208
57315
  }
57209
57316
  function loadSlashSkillCommandsRuntime() {
@@ -58743,6 +58850,22 @@ function buildStatusMessage(args) {
58743
58850
  activeModelRef: activeModelLabel,
58744
58851
  state: entry
58745
58852
  });
58853
+ if (!fallbackState.active) {
58854
+ const flag = readFallbackFlag();
58855
+ if (flag) {
58856
+ fallbackState = {
58857
+ active: true,
58858
+ reason: flag.reason || "primary unavailable"
58859
+ };
58860
+ if (flag.activeModel) {
58861
+ const parts = flag.activeModel.split("/");
58862
+ if (parts.length === 2) {
58863
+ activeProvider = parts[0];
58864
+ activeModel = parts[1];
58865
+ }
58866
+ }
58867
+ }
58868
+ }
58746
58869
  const effectiveCostAuthMode = fallbackState.active ? activeAuthMode : selectedAuthMode ?? activeAuthMode;
58747
58870
  const showCost = effectiveCostAuthMode === "api-key" || effectiveCostAuthMode === "mixed";
58748
58871
  const costConfig = showCost ? resolveModelCostConfig({
@@ -58799,6 +58922,11 @@ function buildStatusMessage(args) {
58799
58922
  const voiceLine = formatVoiceModeLine(args.config, args.sessionEntry);
58800
58923
  return [
58801
58924
  versionLine,
58925
+ args.config ? formatAgentTierLabel((() => {
58926
+ const t = resolveAgentTier({ cfg: args.config });
58927
+ if (t === "super" && fallbackState.active) return "degraded";
58928
+ return t;
58929
+ })()) : null,
58802
58930
  args.timeLine,
58803
58931
  modelLine,
58804
58932
  fallbackLine,
@@ -65816,7 +65944,7 @@ function loadWebLoginQr() {
65816
65944
  return webLoginQrPromise;
65817
65945
  }
65818
65946
  function loadWebChannel() {
65819
- webChannelPromise ??= import("./web-Be4JS3z8.js");
65947
+ webChannelPromise ??= import("./web-CmLgZUIO.js");
65820
65948
  return webChannelPromise;
65821
65949
  }
65822
65950
  function loadWhatsAppActions() {
@@ -96363,6 +96491,11 @@ async function runReplyAgent(params) {
96363
96491
  fallbackStateEntry.fallbackNoticeSelectedModel = fallbackTransition.nextState.selectedModel;
96364
96492
  fallbackStateEntry.fallbackNoticeActiveModel = fallbackTransition.nextState.activeModel;
96365
96493
  fallbackStateEntry.fallbackNoticeReason = fallbackTransition.nextState.reason;
96494
+ writeFallbackFlag({
96495
+ selectedModel: fallbackTransition.nextState.selectedModel,
96496
+ activeModel: fallbackTransition.nextState.activeModel,
96497
+ reason: fallbackTransition.nextState.reason
96498
+ });
96366
96499
  fallbackStateEntry.updatedAt = Date.now();
96367
96500
  activeSessionEntry = fallbackStateEntry;
96368
96501
  }
@@ -4,7 +4,7 @@ import chalk, { Chalk } from "chalk";
4
4
  import fs, { constants, createWriteStream } from "node:fs";
5
5
  import { Logger } from "tslog";
6
6
  import os from "node:os";
7
- import JSON5 from "json5";
7
+ import json5 from "json5";
8
8
  import { promisify } from "node:util";
9
9
  import fs$1 from "node:fs/promises";
10
10
  import "@clack/prompts";
@@ -766,7 +766,7 @@ function readLoggingConfig() {
766
766
  try {
767
767
  if (!fs.existsSync(configPath)) return;
768
768
  const raw = fs.readFileSync(configPath, "utf-8");
769
- const logging = JSON5.parse(raw)?.logging;
769
+ const logging = json5.parse(raw)?.logging;
770
770
  if (!logging || typeof logging !== "object" || Array.isArray(logging)) return;
771
771
  return logging;
772
772
  } catch {
@@ -8,7 +8,7 @@ import "./thinking-DRNOh5Xx.js";
8
8
  import "./accounts-0kF5cxkn.js";
9
9
  import "./send-BNePC8CO.js";
10
10
  import "./common-J8vIST9Q.js";
11
- import { H as finalizeInboundContext, O as resolveAgentRoute, S as dispatchReplyWithDispatcher, o as deliverSlackSlashReplies, r as recordInboundSessionMetaSafe, u as createReplyPrefixOptions } from "./reply-DeKKmUDh.js";
11
+ import { H as finalizeInboundContext, O as resolveAgentRoute, S as dispatchReplyWithDispatcher, o as deliverSlackSlashReplies, r as recordInboundSessionMetaSafe, u as createReplyPrefixOptions } from "./reply-C_eN3l25.js";
12
12
  import "./image-ops-G8KoEfY8.js";
13
13
  import { rn as resolveConversationLabel } from "./pi-embedded-helpers-BioULNev.js";
14
14
  import "./accounts-u0-JAHzj.js";
@@ -1,6 +1,6 @@
1
1
  import "./run-with-concurrency-BvgevDAl.js";
2
2
  import "./accounts-Ba9Wgzzz.js";
3
- import { N as finalizeInboundContext, X as createReplyPrefixOptions, a as deliverSlackSlashReplies, m as dispatchReplyWithDispatcher, n as recordInboundSessionMetaSafe, v as resolveAgentRoute } from "./reply-DJYA4ZNu.js";
3
+ import { N as finalizeInboundContext, X as createReplyPrefixOptions, a as deliverSlackSlashReplies, m as dispatchReplyWithDispatcher, n as recordInboundSessionMetaSafe, v as resolveAgentRoute } from "./reply-BczXGzC_.js";
4
4
  import "./paths-8xF5kDne.js";
5
5
  import "./github-copilot-token-Dy-0-Kh3.js";
6
6
  import "./config-k8lexny8.js";
@@ -1,6 +1,6 @@
1
1
  import "./run-with-concurrency-BvgevDAl.js";
2
2
  import "./accounts-Ba9Wgzzz.js";
3
- import { C as countPendingDescendantRunsExcludingRun, S as countPendingDescendantRuns, T as resolveRequesterForChildSession, w as isSubagentSessionRunActive, x as countActiveDescendantRuns } from "./reply-DJYA4ZNu.js";
3
+ import { C as countPendingDescendantRunsExcludingRun, S as countPendingDescendantRuns, T as resolveRequesterForChildSession, w as isSubagentSessionRunActive, x as countActiveDescendantRuns } from "./reply-BczXGzC_.js";
4
4
  import "./paths-8xF5kDne.js";
5
5
  import "./github-copilot-token-Dy-0-Kh3.js";
6
6
  import "./config-k8lexny8.js";
@@ -8,7 +8,7 @@ import "./thinking-DRNOh5Xx.js";
8
8
  import "./accounts-0kF5cxkn.js";
9
9
  import "./send-BNePC8CO.js";
10
10
  import "./common-J8vIST9Q.js";
11
- import { F as resolveRequesterForChildSession, M as countPendingDescendantRuns, N as countPendingDescendantRunsExcludingRun, P as isSubagentSessionRunActive, j as countActiveDescendantRuns } from "./reply-DeKKmUDh.js";
11
+ import { F as resolveRequesterForChildSession, M as countPendingDescendantRuns, N as countPendingDescendantRunsExcludingRun, P as isSubagentSessionRunActive, j as countActiveDescendantRuns } from "./reply-C_eN3l25.js";
12
12
  import "./image-ops-G8KoEfY8.js";
13
13
  import "./pi-embedded-helpers-BioULNev.js";
14
14
  import "./accounts-u0-JAHzj.js";
@@ -1,6 +1,6 @@
1
1
  import "./run-with-concurrency-BvgevDAl.js";
2
2
  import { _ as webAuthExists, c as logWebSelfId, d as pickWebChannel, o as WA_WEB_AUTH_DIR } from "./accounts-Ba9Wgzzz.js";
3
- import "./reply-DJYA4ZNu.js";
3
+ import "./reply-BczXGzC_.js";
4
4
  import "./paths-8xF5kDne.js";
5
5
  import "./github-copilot-token-Dy-0-Kh3.js";
6
6
  import "./config-k8lexny8.js";
@@ -39,7 +39,7 @@ import "./deliver-BXcGPR-z.js";
39
39
  import "./diagnostic-BODCjkFr.js";
40
40
  import "./store-mpQn5APQ.js";
41
41
  import "./commands-registry-_yYiP-uB.js";
42
- import { n as monitorWebInbox, t as monitorWebChannel } from "./channel-web-BtNgAS1G.js";
42
+ import { n as monitorWebInbox, t as monitorWebChannel } from "./channel-web-CqiSEc52.js";
43
43
  import "./image-CU8oj8pT.js";
44
44
  import "./api-key-rotation-T3PKdBeS.js";
45
45
  import "./proxy-fetch-tPMv_1eB.js";
@@ -8,7 +8,7 @@ import "./thinking-DRNOh5Xx.js";
8
8
  import "./accounts-0kF5cxkn.js";
9
9
  import "./send-BNePC8CO.js";
10
10
  import "./common-J8vIST9Q.js";
11
- import "./reply-DeKKmUDh.js";
11
+ import "./reply-C_eN3l25.js";
12
12
  import "./image-ops-G8KoEfY8.js";
13
13
  import "./pi-embedded-helpers-BioULNev.js";
14
14
  import "./accounts-u0-JAHzj.js";
@@ -16,7 +16,7 @@ import "./send-BCVXt-3e.js";
16
16
  import "./github-copilot-token-C0y6vp3r.js";
17
17
  import "./paths-B7_75Pdr.js";
18
18
  import "./send-DhGDAZnT.js";
19
- import { n as monitorWebInbox, t as monitorWebChannel } from "./channel-web-BQE2gJ5U.js";
19
+ import { n as monitorWebInbox, t as monitorWebChannel } from "./channel-web-Sj8reff_.js";
20
20
  import "./tokens-CLE20fRI.js";
21
21
  import "./audio-transcription-runner-Ced47O1H.js";
22
22
  import "./image-4ay2cw7G.js";
@@ -9,7 +9,7 @@ import "./accounts-0kF5cxkn.js";
9
9
  import "./send-BNePC8CO.js";
10
10
  import { f as readStringParam, r as createActionGate } from "./common-J8vIST9Q.js";
11
11
  import { t as resolveWhatsAppOutboundTarget } from "./resolve-outbound-target-DL1adXpk.js";
12
- import { U as resolveAllowlistProviderRuntimeGroupPolicy, W as resolveDefaultGroupPolicy, n as formatDocsLink } from "./reply-DeKKmUDh.js";
12
+ import { U as resolveAllowlistProviderRuntimeGroupPolicy, W as resolveDefaultGroupPolicy, n as formatDocsLink } from "./reply-C_eN3l25.js";
13
13
  import "./image-ops-G8KoEfY8.js";
14
14
  import "./pi-embedded-helpers-BioULNev.js";
15
15
  import "./accounts-u0-JAHzj.js";
@@ -17,7 +17,7 @@ import "./send-BCVXt-3e.js";
17
17
  import "./github-copilot-token-C0y6vp3r.js";
18
18
  import "./paths-B7_75Pdr.js";
19
19
  import "./send-DhGDAZnT.js";
20
- import { r as resolveWhatsAppHeartbeatRecipients } from "./channel-web-BQE2gJ5U.js";
20
+ import { r as resolveWhatsAppHeartbeatRecipients } from "./channel-web-Sj8reff_.js";
21
21
  import "./tokens-CLE20fRI.js";
22
22
  import "./audio-transcription-runner-Ced47O1H.js";
23
23
  import "./image-4ay2cw7G.js";
@@ -1,10 +1,10 @@
1
- import { l as resolveDefaultAgentId } from "./run-with-concurrency-FczpX8ng.js";
2
- import { t as createSubsystemLogger } from "./subsystem-BaLYRf7D.js";
3
- import { G as normalizeAccountId, K as normalizeOptionalAccountId, R as normalizeAgentId, W as DEFAULT_ACCOUNT_ID } from "./workspace-TqfVSQuO.js";
4
- import { h as normalizeE164 } from "./logger-oGKcCLZ5.js";
5
- import { Gt as normalizeAnyChannelId, Ht as CHAT_CHANNEL_ORDER, Xt as getActivePluginRegistryVersion, Zn as isTruthyEnvValue, Zt as requireActivePluginRegistry, gr as normalizeResolvedSecretInputString, qt as normalizeChatChannelId } from "./model-selection-CHnojCCK.js";
6
- import { g as createAccountListHelpers, h as resolveAccountEntry } from "./accounts-B6F_XCgS.js";
7
- import fs from "node:fs";
1
+ import { l as resolveDefaultAgentId } from "./run-with-concurrency-BFR3ReeF.js";
2
+ import { t as createSubsystemLogger } from "./subsystem-6v7sWnAD.js";
3
+ import { G as normalizeAccountId, K as normalizeOptionalAccountId, R as normalizeAgentId, W as DEFAULT_ACCOUNT_ID } from "./workspace-kVMIaBrV.js";
4
+ import { h as normalizeE164 } from "./logger-CnTSBL7T.js";
5
+ import { Gt as normalizeAnyChannelId, Ht as CHAT_CHANNEL_ORDER, Xt as getActivePluginRegistryVersion, Zn as isTruthyEnvValue, Zt as requireActivePluginRegistry, gr as normalizeResolvedSecretInputString, qt as normalizeChatChannelId } from "./model-selection-DuNLFQPR.js";
6
+ import { g as createAccountListHelpers, h as resolveAccountEntry } from "./accounts-DwGoZKGm.js";
7
+ import syncFs from "node:fs";
8
8
  import util from "node:util";
9
9
 
10
10
  //#region src/channels/plugins/account-action-gate.ts
@@ -317,7 +317,7 @@ function resolveTelegramToken(cfg, opts = {}) {
317
317
  const accountCfg = resolveAccountCfg(accountId !== DEFAULT_ACCOUNT_ID ? accountId : DEFAULT_ACCOUNT_ID);
318
318
  const accountTokenFile = accountCfg?.tokenFile?.trim();
319
319
  if (accountTokenFile) {
320
- if (!fs.existsSync(accountTokenFile)) {
320
+ if (!syncFs.existsSync(accountTokenFile)) {
321
321
  opts.logMissingFile?.(`channels.telegram.accounts.${accountId}.tokenFile not found: ${accountTokenFile}`);
322
322
  return {
323
323
  token: "",
@@ -325,7 +325,7 @@ function resolveTelegramToken(cfg, opts = {}) {
325
325
  };
326
326
  }
327
327
  try {
328
- const token = fs.readFileSync(accountTokenFile, "utf-8").trim();
328
+ const token = syncFs.readFileSync(accountTokenFile, "utf-8").trim();
329
329
  if (token) return {
330
330
  token,
331
331
  source: "tokenFile"
@@ -353,7 +353,7 @@ function resolveTelegramToken(cfg, opts = {}) {
353
353
  const allowEnv = accountId === DEFAULT_ACCOUNT_ID;
354
354
  const tokenFile = telegramCfg?.tokenFile?.trim();
355
355
  if (tokenFile) {
356
- if (!fs.existsSync(tokenFile)) {
356
+ if (!syncFs.existsSync(tokenFile)) {
357
357
  opts.logMissingFile?.(`channels.telegram.tokenFile not found: ${tokenFile}`);
358
358
  return {
359
359
  token: "",
@@ -361,7 +361,7 @@ function resolveTelegramToken(cfg, opts = {}) {
361
361
  };
362
362
  }
363
363
  try {
364
- const token = fs.readFileSync(tokenFile, "utf-8").trim();
364
+ const token = syncFs.readFileSync(tokenFile, "utf-8").trim();
365
365
  if (token) return {
366
366
  token,
367
367
  source: "tokenFile"
@@ -30,7 +30,7 @@ import "./logging-CcxUDNcI.js";
30
30
  import "./accounts-KzgPbLHP.js";
31
31
  import "./send-z-sMjqvX.js";
32
32
  import "./send-DEs83M9V.js";
33
- import "./subagent-registry-CgUBOyi3.js";
33
+ import "./subagent-registry-CIgFD2oi.js";
34
34
  import "./paths-Dn_rzeZN.js";
35
35
  import "./chat-envelope-thy05gXR.js";
36
36
  import "./client-G9E5HGM2.js";
@@ -116,7 +116,7 @@ import "./npm-pack-install-B887us7R.js";
116
116
  import "./skill-scanner-CvS725eQ.js";
117
117
  import { a as installPluginFromPath, i as installPluginFromNpmSpec, n as recordPluginInstall, o as resolvePluginInstallDir, r as PLUGIN_INSTALL_ERROR_CODE } from "./installs-BiQDtPF0.js";
118
118
  import { t as renderTable } from "./table-DbDCX_6t.js";
119
- import { i as buildPluginStatusReport, n as resolvePinnedNpmInstallRecordForCli, r as looksLikeLocalInstallSpec } from "./npm-resolution-BUvQm-e-.js";
119
+ import { i as buildPluginStatusReport, n as resolvePinnedNpmInstallRecordForCli, r as looksLikeLocalInstallSpec } from "./npm-resolution-CKtyq4FH.js";
120
120
  import { n as updateNpmInstalledPlugins, r as findBundledPluginSource } from "./update-1JhjCqjy.js";
121
121
  import os from "node:os";
122
122
  import path from "node:path";
@@ -2,7 +2,7 @@ import { g as resolveStateDir } from "./paths-mdt1HFK2.js";
2
2
  import { p as theme } from "./globals-xfUIfxbE.js";
3
3
  import { S as shortenHomePath, g as resolveConfigDir, x as shortenHomeInString, y as resolveUserPath } from "./utils-DMGXr25O.js";
4
4
  import "./thinking-44rmAw5o.js";
5
- import "./reply-BaVB3YlN.js";
5
+ import "./reply-DwjHsBuj.js";
6
6
  import "./agent-scope-C1XMay0T.js";
7
7
  import { d as defaultRuntime } from "./subsystem-DC87CPVS.js";
8
8
  import "./squidclaw-root-CnE19yKj.js";
@@ -115,7 +115,7 @@ import "./npm-pack-install-s-mP9K0z.js";
115
115
  import "./skill-scanner-rdr9cQew.js";
116
116
  import { a as installPluginFromPath, i as installPluginFromNpmSpec, n as recordPluginInstall, o as resolvePluginInstallDir, r as PLUGIN_INSTALL_ERROR_CODE } from "./installs-CyjlehlR.js";
117
117
  import { t as renderTable } from "./table-BPiDGg8F.js";
118
- import { i as buildPluginStatusReport, n as resolvePinnedNpmInstallRecordForCli, r as looksLikeLocalInstallSpec } from "./npm-resolution-Dtkh26DG.js";
118
+ import { i as buildPluginStatusReport, n as resolvePinnedNpmInstallRecordForCli, r as looksLikeLocalInstallSpec } from "./npm-resolution-CPk7dS7F.js";
119
119
  import { n as updateNpmInstalledPlugins, r as findBundledPluginSource } from "./update-blK9j2ag.js";
120
120
  import fs from "node:fs";
121
121
  import os from "node:os";
@@ -32,7 +32,7 @@ import "./logging-CcxUDNcI.js";
32
32
  import "./accounts-KzgPbLHP.js";
33
33
  import "./send-z-sMjqvX.js";
34
34
  import "./send-DEs83M9V.js";
35
- import "./subagent-registry-CgUBOyi3.js";
35
+ import "./subagent-registry-CIgFD2oi.js";
36
36
  import "./paths-Dn_rzeZN.js";
37
37
  import "./chat-envelope-thy05gXR.js";
38
38
  import "./client-G9E5HGM2.js";
@@ -112,13 +112,13 @@ import { t as formatDocsLink } from "./links-Dye6HsRG.js";
112
112
  import "./cli-utils-BKqG4ZT-.js";
113
113
  import "./help-format-CpR5cEGe.js";
114
114
  import "./progress-DuhDspl6.js";
115
- import "./plugin-registry-CCkpP8-I.js";
116
- import { n as resolveCliChannelOptions } from "./channel-options-DA-4IR6h.js";
117
- import { t as getSubCliCommandsWithSubcommands } from "./register.subclis-BYiAuTiK.js";
118
- import { a as registerProgramCommands, r as getCoreCliCommandsWithSubcommands } from "./command-registry-C_YMaVul.js";
115
+ import "./plugin-registry-D3PnPE1D.js";
116
+ import { n as resolveCliChannelOptions } from "./channel-options-CQ-gER0J.js";
117
+ import { t as getSubCliCommandsWithSubcommands } from "./register.subclis-CDMFyaKR.js";
118
+ import { a as registerProgramCommands, r as getCoreCliCommandsWithSubcommands } from "./command-registry-AHS8_9da.js";
119
119
  import { r as setProgramContext } from "./program-context-DKVuITe2.js";
120
120
  import { t as forceFreePort } from "./ports-Be82TlEg.js";
121
- import { n as formatCliBannerLine, r as hasEmittedCliBanner, t as emitCliBanner } from "./banner-4LItBqCV.js";
121
+ import { n as formatCliBannerLine, r as hasEmittedCliBanner, t as emitCliBanner } from "./banner-DMfuBV69.js";
122
122
  import { Command, InvalidArgumentError } from "commander";
123
123
 
124
124
  //#region src/cli/program/context.ts
@@ -251,7 +251,7 @@ function loadConfigGuardModule() {
251
251
  return configGuardModulePromise;
252
252
  }
253
253
  function loadPluginRegistryModule() {
254
- pluginRegistryModulePromise ??= import("./plugin-registry-CCkpP8-I.js").then((n) => n.n);
254
+ pluginRegistryModulePromise ??= import("./plugin-registry-D3PnPE1D.js").then((n) => n.n);
255
255
  return pluginRegistryModulePromise;
256
256
  }
257
257
  function getRootCommand(command) {