@symerian/symi 2.0.16 → 2.0.17

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 (314) hide show
  1. package/dist/{acp-cli-CSX62tsS.js → acp-cli-DqQjT50N.js} +2 -2
  2. package/dist/{acp-cli-CrfY9UHo.js → acp-cli-SgZGC8og.js} +2 -2
  3. package/dist/{agents-CP6mOf0j.js → agents-C4_0TzXm.js} +7 -7
  4. package/dist/{agents.config-Da5XukaM.js → agents.config-Bneyaqn6.js} +1 -1
  5. package/dist/{agents.config-CFps8Krs.js → agents.config-D9Ufj9CE.js} +1 -1
  6. package/dist/{audio-preflight-DSeaWZZW.js → audio-preflight-5w1q1hWh.js} +11 -11
  7. package/dist/{audio-preflight-Cq4C-m27.js → audio-preflight-BiAp3Hvj.js} +5 -5
  8. package/dist/{audio-preflight-CQ5_RYEe.js → audio-preflight-Cpsd8C3J.js} +11 -11
  9. package/dist/{audio-preflight-DRQD_nt1.js → audio-preflight-mSUx5I34.js} +5 -5
  10. package/dist/{audit-Do2bVss3.js → audit-BCHYqYge.js} +5 -5
  11. package/dist/{audit-x_SzU263.js → audit-FH7mu_3g.js} +5 -5
  12. package/dist/{auth-choice-za414gQg.js → auth-choice-5u4JonD1.js} +4 -4
  13. package/dist/{auth-choice-CZ9ugRNS.js → auth-choice-B8qrETy7.js} +4 -4
  14. package/dist/{banner-DHgxDWv_.js → banner-CufnkY4K.js} +1 -1
  15. package/dist/{browser-cli-Bz2dcSy1.js → browser-cli-Cmyh_mQi.js} +3 -3
  16. package/dist/{browser-cli-BydQRa6Z.js → browser-cli-n1RQ8OQs.js} +3 -3
  17. package/dist/build-info.json +3 -3
  18. package/dist/bundled/boot-md/handler.js +14 -14
  19. package/dist/bundled/session-memory/handler.js +14 -14
  20. package/dist/{call-BVw7l9v8.js → call-BKOIc76f.js} +1 -1
  21. package/dist/{call-CJYWtIM9.js → call-C30ffTSt.js} +1 -1
  22. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  23. package/dist/{channel-options-D7RdZp1E.js → channel-options-BBDX9s3H.js} +1 -1
  24. package/dist/{channel-options-BCZol8_4.js → channel-options-CxOu5Gvn.js} +1 -1
  25. package/dist/{channel-web-Dki5eEiP.js → channel-web-DxSaM7GA.js} +7 -7
  26. package/dist/{channels-cli-CwliXNUk.js → channels-cli-CB6lWL72.js} +30 -30
  27. package/dist/{channels-cli-CILkYyG3.js → channels-cli-CvtvmTOx.js} +31 -31
  28. package/dist/{chrome-h6BnL8Lp.js → chrome-1cQdPKbv.js} +1 -1
  29. package/dist/{chrome-BgIDB_SH.js → chrome-CPwj5x24.js} +1 -1
  30. package/dist/{chrome-D9OwvWm7.js → chrome-CUsfMVUk.js} +1 -1
  31. package/dist/{chrome-LmEyZdbC.js → chrome-DPu6LSX4.js} +8 -8
  32. package/dist/cli/daemon-cli.js +1 -1
  33. package/dist/{cli-aAOs92a8.js → cli-CU_pJKCD.js} +26 -26
  34. package/dist/{cli-CLHi2LEP.js → cli-cDOiHmL7.js} +27 -27
  35. package/dist/{command-registry-OHfvK1Oq.js → command-registry-D1zcgjTn.js} +11 -11
  36. package/dist/{completion-cli-D7iBY_Z-.js → completion-cli-C8TsFimX.js} +2 -2
  37. package/dist/{completion-cli-DSHmAUFN.js → completion-cli-DWcx6gc6.js} +1 -1
  38. package/dist/{config-Dgn_cL29.js → config-BLe0R4JX.js} +3 -1
  39. package/dist/{config-BjGo9GnL.js → config-ClXqj_D1.js} +3 -1
  40. package/dist/{config-DM0K7qC1.js → config-CvuX_y8t.js} +3 -1
  41. package/dist/{config-amjzHiWZ.js → config-DehS9e5w.js} +3 -1
  42. package/dist/{config-cli-CcbYdW1-.js → config-cli-CEp26CMt.js} +2 -2
  43. package/dist/{config-cli-BlusBXAA.js → config-cli-DcjOWFbW.js} +2 -2
  44. package/dist/{config-guard-Cnu2qssk.js → config-guard-CGgFpviD.js} +3 -3
  45. package/dist/{config-guard-BpQn1MKk.js → config-guard-Ix_EcPkt.js} +2 -2
  46. package/dist/{config-validation-BHjDr-an.js → config-validation-BQnULegl.js} +1 -1
  47. package/dist/{config-validation-pVfqbrLy.js → config-validation-Ct_myZSl.js} +1 -1
  48. package/dist/{configure-rrxn5n5n.js → configure-B3aYKtwN.js} +10 -10
  49. package/dist/{configure-CJf-vDqN.js → configure-DbqI2Bgi.js} +10 -10
  50. package/dist/{control-service-DVFF3PrV.js → control-service-CZ8lXYgi.js} +4 -4
  51. package/dist/{control-service-DMz_CcLi.js → control-service-DI1Do6Nn.js} +4 -4
  52. package/dist/{cron-cli-B9s3FO4y.js → cron-cli-BH6kt3EZ.js} +3 -3
  53. package/dist/{cron-cli-CMb8Tfrd.js → cron-cli-NJy3v3Eb.js} +3 -3
  54. package/dist/{daemon-cli-duUjaj82.js → daemon-cli-BuOGkn7L.js} +6 -6
  55. package/dist/{daemon-cli-DY782AjS.js → daemon-cli-CweZn-1O.js} +6 -6
  56. package/dist/daemon-cli.js +3 -1
  57. package/dist/{daemon-runtime-B38pOixq.js → daemon-runtime-C1t_OfMD.js} +1 -1
  58. package/dist/{daemon-runtime-CjgoCPLb.js → daemon-runtime-D1K-9VEC.js} +1 -1
  59. package/dist/{deliver-B3UoBZdC.js → deliver-BorDF5OG.js} +2 -2
  60. package/dist/{deliver-DONp5mgd.js → deliver-CIc_l0o6.js} +3 -3
  61. package/dist/{deliver-CZF9f8aC.js → deliver-D8xILUUI.js} +2 -2
  62. package/dist/{deliver-2Y_F_0yh.js → deliver-DqqfC-g1.js} +3 -3
  63. package/dist/{devices-cli-Ch8p42OS.js → devices-cli-BE5ZzcA7.js} +2 -2
  64. package/dist/{devices-cli-Cahrr6Rd.js → devices-cli-BUdOf8m2.js} +2 -2
  65. package/dist/{directory-cli-DH9ww80p.js → directory-cli-BBdctcDF.js} +1 -1
  66. package/dist/{directory-cli-B0H80BMR.js → directory-cli-DQHIn9um.js} +1 -1
  67. package/dist/{dns-cli-Lzt29-Zu.js → dns-cli-6H_E37de.js} +1 -1
  68. package/dist/{dns-cli-CVMQnrzw.js → dns-cli-mCiUyfvk.js} +1 -1
  69. package/dist/{doctor-completion-Db9Ka2VX.js → doctor-completion-CAdewURI.js} +1 -1
  70. package/dist/{doctor-completion-B6R-Um0m.js → doctor-completion-CXUM27y3.js} +1 -1
  71. package/dist/{doctor-config-flow-B150h841.js → doctor-config-flow-BWD9G2UQ.js} +2 -2
  72. package/dist/{doctor-config-flow-C_56SUPO.js → doctor-config-flow-CthAM9my.js} +2 -2
  73. package/dist/entry.js +1 -1
  74. package/dist/{exec-approvals-cli-CSTHY6Vs.js → exec-approvals-cli-CYKHeoEA.js} +4 -4
  75. package/dist/{exec-approvals-cli-lduNEUnu.js → exec-approvals-cli-CjU3pZzx.js} +4 -4
  76. package/dist/extensionAPI.js +14 -14
  77. package/dist/{gateway-cli-VZ3pwSh3.js → gateway-cli-Bs96hk7L.js} +43 -43
  78. package/dist/{gateway-cli-DVzEvDKA.js → gateway-cli-n-kmAuP8.js} +42 -42
  79. package/dist/{gateway-rpc-Cx0HPjI7.js → gateway-rpc-0C2uJScX.js} +1 -1
  80. package/dist/{gateway-rpc-BTXPWO6j.js → gateway-rpc-CTqBFfgd.js} +1 -1
  81. package/dist/{glass-ui-ws-CAm9wWND.js → glass-ui-ws-DFYRIWTO.js} +35 -35
  82. package/dist/{glass-ui-ws-DmPVzO59.js → glass-ui-ws-mIHlWvBv.js} +34 -34
  83. package/dist/{health-CYZdOaco.js → health-CpbZDInE.js} +5 -5
  84. package/dist/{health-CnH3J7xA.js → health-gsbXEgFI.js} +5 -5
  85. package/dist/{hooks-cli-C7tb9Ef0.js → hooks-cli-SJWnM2SY.js} +28 -28
  86. package/dist/{hooks-cli-CHMoGB4O.js → hooks-cli-iVG6fkFc.js} +27 -27
  87. package/dist/{image-DrZEJQwQ.js → image-DIzd7Gw9.js} +2 -2
  88. package/dist/{image-B4LY9KFw.js → image-DWOvY8sR.js} +2 -2
  89. package/dist/{image-DOnOTocl.js → image-DrkD-6sg.js} +2 -2
  90. package/dist/{image-RFofsrof.js → image-GHA29jwQ.js} +2 -2
  91. package/dist/index.js +35 -35
  92. package/dist/{lifecycle-core-BYV6-zd8.js → lifecycle-core-CE8aXuLe.js} +2 -2
  93. package/dist/{lifecycle-core-De5BcVI4.js → lifecycle-core-CPLYFbS4.js} +2 -2
  94. package/dist/llm-slug-generator.js +14 -14
  95. package/dist/{login-CXSct1EH.js → login-BcCF4noU.js} +2 -2
  96. package/dist/{login-BH17fJ5L.js → login-C5eMLg1G.js} +2 -2
  97. package/dist/{login-BG_7eJLu.js → login-DNeGXcjV.js} +2 -2
  98. package/dist/{login-BZYFLDxo.js → login-_Ynqrjet.js} +2 -2
  99. package/dist/{login-qr-zVpxocbF.js → login-qr-CYEYc0Vo.js} +2 -2
  100. package/dist/{login-qr-9OQSnm5L.js → login-qr-CzD7_Pru.js} +2 -2
  101. package/dist/{login-qr-DoNfx43Q.js → login-qr-DjXNemMm.js} +2 -2
  102. package/dist/{login-qr-BLmEvZVj.js → login-qr-E4YwhoPt.js} +2 -2
  103. package/dist/{logs-cli-DUzUCojZ.js → logs-cli-BLp5AOM0.js} +3 -3
  104. package/dist/{logs-cli-Cvhx1c0V.js → logs-cli-CIQ4qmRW.js} +3 -3
  105. package/dist/{manager-B5EXdBQV.js → manager-BmHL5ETi.js} +134 -17
  106. package/dist/{manager-CYHgFXd8.js → manager-CPQ2pEj3.js} +134 -17
  107. package/dist/{manager-C_DoJrcP.js → manager-Oiy1uHsu.js} +134 -17
  108. package/dist/{manager-oiX42wby.js → manager-oQJvFR6J.js} +134 -17
  109. package/dist/{memory-cli-BhnOq4Ev.js → memory-cli-BUoM-v1-.js} +206 -3
  110. package/dist/{memory-cli-D4J9SO7Z.js → memory-cli-CGRSXKeF.js} +206 -3
  111. package/dist/{model-catalog-CX8kAHv8.js → model-catalog-DZbVIJnH.js} +3 -3
  112. package/dist/{model-catalog-Dj5pIc1G.js → model-catalog-sW2MkIv9.js} +2 -2
  113. package/dist/{model-picker-ay4NPk8S.js → model-picker-BJBeaNrK.js} +2 -2
  114. package/dist/{model-picker-CDXdeNr-.js → model-picker-DUl7Gvdh.js} +2 -2
  115. package/dist/{models-wHzbWyGd.js → models-LtuCAbk5.js} +8 -8
  116. package/dist/{models-cli-CTptBZ1_.js → models-cli-CB2zHB3Q.js} +30 -30
  117. package/dist/{models-cli-xt0_lwNn.js → models-cli-DEQCqsfo.js} +30 -30
  118. package/dist/{models-config-u4va9_AO.js → models-config-BH6-rmtt.js} +1 -1
  119. package/dist/{models-config-Cb41NmVa.js → models-config-DT09Fas0.js} +1 -1
  120. package/dist/{node-cli-C8scjTTR.js → node-cli-BnZT8tc-.js} +9 -9
  121. package/dist/{node-cli-BhCoxgBf.js → node-cli-znp1IPL2.js} +9 -9
  122. package/dist/{nodes-cli-BHnGJEDY.js → nodes-cli-C8L5ablK.js} +3 -3
  123. package/dist/{nodes-cli-DvFB1bRc.js → nodes-cli-D3bHqKX1.js} +3 -3
  124. package/dist/{onboard-CLT8dKkn.js → onboard-B725u5vG.js} +7 -7
  125. package/dist/{onboard-CqrqIyTw.js → onboard-Dz7lPFv1.js} +7 -7
  126. package/dist/{onboard-channels-B1qEMRuK.js → onboard-channels-DPb8R8S3.js} +1 -1
  127. package/dist/{onboard-channels-Dq99OYWi.js → onboard-channels-DjG2jZUq.js} +1 -1
  128. package/dist/{onboard-custom-BKR6vm2R.js → onboard-custom-CFqoXgjd.js} +2 -2
  129. package/dist/{onboard-custom-BPHkLBMT.js → onboard-custom-in5WChfX.js} +2 -2
  130. package/dist/{onboard-helpers-Dsr4zKCb.js → onboard-helpers-BmDQMRZ7.js} +2 -2
  131. package/dist/{onboard-helpers-CYxzQfe5.js → onboard-helpers-_sSsfEAa.js} +2 -2
  132. package/dist/{onboard-remote-3c_muVej.js → onboard-remote-BeAAhzmD.js} +1 -1
  133. package/dist/{onboard-remote-d48SMpNw.js → onboard-remote-CBEIs-Ew.js} +1 -1
  134. package/dist/{onboard-skills-b_chEkYH.js → onboard-skills-Bx_OM5v0.js} +1 -1
  135. package/dist/{onboard-skills-2HJIpm3O.js → onboard-skills-EVFmwR8Q.js} +1 -1
  136. package/dist/{onboarding-Bs82247P.js → onboarding-D-FQIiBn.js} +10 -10
  137. package/dist/{onboarding-yfMTHyHB.js → onboarding-qxWeXuGM.js} +10 -10
  138. package/dist/{onboarding.finalize-DkZuXXiU.js → onboarding.finalize-DJTQnGkJ.js} +34 -34
  139. package/dist/{onboarding.finalize-QC0g7ZLU.js → onboarding.finalize-D_gWQwW0.js} +32 -32
  140. package/dist/{onboarding.gateway-config-stm3z82Y.js → onboarding.gateway-config-Boplq1Mn.js} +4 -4
  141. package/dist/{onboarding.gateway-config-BkXJPv7f.js → onboarding.gateway-config-r7VeJWM7.js} +4 -4
  142. package/dist/{outbound-Bv4FdtnF.js → outbound-B_cf2WkB.js} +1 -1
  143. package/dist/{outbound-DfOF58G2.js → outbound-DPCAcHLQ.js} +1 -1
  144. package/dist/{outbound-BNMysnJ1.js → outbound-DRslTBga.js} +1 -1
  145. package/dist/{outbound-Cedd_yui.js → outbound-yaYfpPTu.js} +1 -1
  146. package/dist/{pairing-cli-B7oA36Ke.js → pairing-cli-DFgfVeeY.js} +1 -1
  147. package/dist/{pairing-cli-7_4ayuXX.js → pairing-cli-DOMZSDiT.js} +1 -1
  148. package/dist/{pi-auth-json-B83DuyYZ.js → pi-auth-json-Do26xypW.js} +1 -1
  149. package/dist/{pi-embedded-DDe6lqPs.js → pi-embedded-BINp4yHJ.js} +240 -39
  150. package/dist/{pi-embedded-B3nbPN60.js → pi-embedded-C6BUGEuF.js} +236 -35
  151. package/dist/{pi-embedded-helpers--yFTAWwW.js → pi-embedded-helpers-BDwdFGX-.js} +5 -5
  152. package/dist/{pi-embedded-helpers-CgxKWHj9.js → pi-embedded-helpers-Cs0TgOaH.js} +1 -1
  153. package/dist/{pi-embedded-helpers-kB5lBgXk.js → pi-embedded-helpers-Dfp-iKzJ.js} +5 -5
  154. package/dist/{pi-embedded-helpers-ueCT6VlS.js → pi-embedded-helpers-jynCNZsb.js} +1 -1
  155. package/dist/{pi-tools.policy-DPmdlOwE.js → pi-tools.policy-eb_uvOQV.js} +2 -2
  156. package/dist/{pi-tools.policy-T6Z5F-_n.js → pi-tools.policy-vws0LV7U.js} +2 -2
  157. package/dist/{plugin-registry-DWJeC9bW.js → plugin-registry-C61W5IWr.js} +2 -2
  158. package/dist/{plugin-registry-SCI1BVkI.js → plugin-registry-D1cKRWYQ.js} +2 -2
  159. package/dist/plugin-sdk/agents/memory-search.d.ts +2 -2
  160. package/dist/plugin-sdk/{audio-preflight-CpYjfwrA.js → audio-preflight-CdG1OBN2.js} +5 -5
  161. package/dist/plugin-sdk/{channel-web-BUTyAx0r.js → channel-web-DFVIpsZB.js} +7 -7
  162. package/dist/plugin-sdk/{chrome-BFy_lpld.js → chrome-XyjVFCkY.js} +1 -1
  163. package/dist/plugin-sdk/config/types.tools.d.ts +2 -2
  164. package/dist/plugin-sdk/config/zod-schema.agent-defaults.d.ts +2 -2
  165. package/dist/plugin-sdk/config/zod-schema.agent-runtime.d.ts +4 -4
  166. package/dist/plugin-sdk/config/zod-schema.agents.d.ts +4 -4
  167. package/dist/plugin-sdk/config/zod-schema.d.ts +4 -4
  168. package/dist/plugin-sdk/{config-Do1-fcaS.js → config-DG32gDDp.js} +3 -1
  169. package/dist/plugin-sdk/{deliver-BwnrMlHO.js → deliver-BdbnTrPD.js} +2 -2
  170. package/dist/plugin-sdk/{image-k_W1USVr.js → image-B4_TBNqR.js} +2 -2
  171. package/dist/plugin-sdk/index.js +18 -18
  172. package/dist/plugin-sdk/{login-DPofXJE3.js → login-Dey5tDpn.js} +2 -2
  173. package/dist/plugin-sdk/{login-qr-CNatqAUv.js → login-qr-Tx8z1frn.js} +2 -2
  174. package/dist/plugin-sdk/{manager-DnoXj4EG.js → manager-RdPsBbBU.js} +134 -17
  175. package/dist/plugin-sdk/memory/embeddings-ollama.d.ts +27 -0
  176. package/dist/plugin-sdk/memory/embeddings.d.ts +4 -1
  177. package/dist/plugin-sdk/memory/manager-sync-ops.d.ts +1 -1
  178. package/dist/plugin-sdk/memory/manager.d.ts +1 -1
  179. package/dist/plugin-sdk/{outbound-w5v_6nFD.js → outbound-BpzsDbEV.js} +1 -1
  180. package/dist/plugin-sdk/{pi-embedded-helpers-Cs2-_EpL.js → pi-embedded-helpers-OWtoPEg8.js} +5 -5
  181. package/dist/plugin-sdk/{pw-ai-BoitXk7j.js → pw-ai-OhVopvbb.js} +2 -2
  182. package/dist/plugin-sdk/{replies-BU-tUT8j.js → replies-DiFTMGgM.js} +1 -1
  183. package/dist/plugin-sdk/{reply-CjWIATx5.js → reply-v8ed4JLy.js} +234 -33
  184. package/dist/plugin-sdk/{runner-Br1179I4.js → runner-BUXsfUip.js} +2 -2
  185. package/dist/plugin-sdk/{send-Dkyi5g1U.js → send-BXvJJUV_.js} +1 -1
  186. package/dist/plugin-sdk/{send-BaLZTKkj.js → send-BbFwAS_k.js} +1 -1
  187. package/dist/plugin-sdk/{send-P8PiZ2Os.js → send-CGSsrvd1.js} +1 -1
  188. package/dist/plugin-sdk/{send-Ts2lINh9.js → send-DXcq1jzH.js} +1 -1
  189. package/dist/plugin-sdk/{send-CE6VxWke.js → send-Drdgnfr_.js} +1 -1
  190. package/dist/plugin-sdk/{session-Bwdr4g-M.js → session-CX5KhlOe.js} +1 -1
  191. package/dist/plugin-sdk/{web-C1q3B85D.js → web-DfIRv_Mx.js} +18 -18
  192. package/dist/plugin-sdk/{whatsapp-actions-Di-yCTCj.js → whatsapp-actions-Dh6Y2fu9.js} +2 -2
  193. package/dist/{plugins-cli-D2GDnmKk.js → plugins-cli-ClY_BPg9.js} +27 -27
  194. package/dist/{plugins-cli-QSrupxLG.js → plugins-cli-UmtKEuxj.js} +28 -28
  195. package/dist/{program-7hcHnpYu.js → program-CNsuYlJt.js} +34 -34
  196. package/dist/{program-context-CIOqtCr8.js → program-context-C2XeNCxI.js} +38 -38
  197. package/dist/{prompt-select-styled-DC-k-kBQ.js → prompt-select-styled-CgsYQqlJ.js} +15 -15
  198. package/dist/{prompt-select-styled-DpVAhv1V.js → prompt-select-styled-CiYSpQIf.js} +15 -15
  199. package/dist/{provider-auth-helpers-BGhm_DOe.js → provider-auth-helpers-CVAbJckC.js} +2 -2
  200. package/dist/{provider-auth-helpers-DvwmlisW.js → provider-auth-helpers-XIYHuUnj.js} +2 -2
  201. package/dist/{push-apns-CiOx7dgB.js → push-apns-6y-7OuAU.js} +1 -1
  202. package/dist/{push-apns-BZu5OVg5.js → push-apns-9q7Pl5I0.js} +1 -1
  203. package/dist/{pw-ai-CQzJmf8V.js → pw-ai-BdNmRxEw.js} +2 -2
  204. package/dist/{pw-ai-C_C5as1t.js → pw-ai-BfUWg8Eh.js} +2 -2
  205. package/dist/{pw-ai-CdaTpZo1.js → pw-ai-C9noP7iN.js} +2 -2
  206. package/dist/{pw-ai-CAkn033M.js → pw-ai-Dnh_iopr.js} +2 -2
  207. package/dist/{qr-cli-DlVBiDQm.js → qr-cli-BbRZOhwI.js} +1 -1
  208. package/dist/{qr-cli-Diq_Rb3t.js → qr-cli-Cac34dCs.js} +1 -1
  209. package/dist/{register.agent-Ds6PkEYl.js → register.agent-DmLJVv4N.js} +35 -35
  210. package/dist/{register.agent-CDD5Z9Fj.js → register.agent-Ys85zXmm.js} +33 -33
  211. package/dist/{register.configure-COyj6XWC.js → register.configure-BwmAY5TF.js} +37 -37
  212. package/dist/{register.configure-CBRYdCX2.js → register.configure-DYuK1UkU.js} +38 -38
  213. package/dist/{register.maintenance-DwHXDl_N.js → register.maintenance-625En1kE.js} +35 -35
  214. package/dist/{register.maintenance-CyJQDrP0.js → register.maintenance-BQa25CA8.js} +37 -37
  215. package/dist/{register.message-BNe6-SJE.js → register.message-CDpK3rbI.js} +28 -28
  216. package/dist/{register.message-CvQ7LEYe.js → register.message-DKeM6mQo.js} +27 -27
  217. package/dist/{register.onboard-BxxfWU46.js → register.onboard-CbvkWFq5.js} +33 -33
  218. package/dist/{register.onboard-CuRnx0wV.js → register.onboard-DtMjj81J.js} +34 -34
  219. package/dist/{register.setup-qmcQQ6EM.js → register.setup-BHhLns2f.js} +34 -34
  220. package/dist/{register.setup-B4rO_Fld.js → register.setup-DdX4Ahvt.js} +33 -33
  221. package/dist/{register.status-health-sessions-4OEVg4h6.js → register.status-health-sessions-CqMFel_o.js} +32 -32
  222. package/dist/{register.status-health-sessions-CQ0_UB_j.js → register.status-health-sessions-D1KvwnF9.js} +30 -30
  223. package/dist/{register.subclis-68XcQ3ao.js → register.subclis-su5EMHvC.js} +28 -28
  224. package/dist/{replies-CTKReSzx.js → replies-DqyX2Vln.js} +1 -1
  225. package/dist/{replies-D9V19U2-.js → replies-DtdP8R93.js} +1 -1
  226. package/dist/{replies-DqdOBkTB.js → replies-Dzc6eCFS.js} +1 -1
  227. package/dist/{replies-QloQerhz.js → replies-zeeuLUij.js} +1 -1
  228. package/dist/{reply-DI3kOl7x.js → reply-DyFibFiG.js} +42 -42
  229. package/dist/{routes-BYphcpth.js → routes-B7FWIw81.js} +3 -3
  230. package/dist/{routes-qIyRWgzF.js → routes-CEjKic_-.js} +3 -3
  231. package/dist/{rpc-DfC0wvv1.js → rpc-CR9IjVRa.js} +1 -1
  232. package/dist/{rpc-CvzWzHjS.js → rpc-CV10Y2YL.js} +1 -1
  233. package/dist/{run-main-DiJI5-hU.js → run-main-CRPU46XB.js} +45 -45
  234. package/dist/{runner-VHq3quQZ.js → runner-BkANJiWS.js} +3 -3
  235. package/dist/{runner-uDZlTCm2.js → runner-CTglx_CV.js} +2 -2
  236. package/dist/{runner-DOvsNiYz.js → runner-v0fS4J7T.js} +2 -2
  237. package/dist/{runner-BXN4KYDK.js → runner-w5reqY02.js} +3 -3
  238. package/dist/{sandbox-CbuJolk2.js → sandbox-BpIrSDhl.js} +5 -5
  239. package/dist/{sandbox-rMmahr2s.js → sandbox-DTzJlbvf.js} +5 -5
  240. package/dist/{sandbox-cli-C90jqh9l.js → sandbox-cli-B4VN_9mV.js} +6 -6
  241. package/dist/{sandbox-cli-Duc05KL9.js → sandbox-cli-R_ZOY_KC.js} +6 -6
  242. package/dist/{security-cli-BPqLtK8x.js → security-cli-BMB3kCFA.js} +9 -9
  243. package/dist/{security-cli-BTcKFy-k.js → security-cli-DmpyxTgQ.js} +9 -9
  244. package/dist/{send-BeASPkFg.js → send-1iB7Rdwp.js} +1 -1
  245. package/dist/{send-BVw7fCyL.js → send-BLT3lTZy.js} +1 -1
  246. package/dist/{send-3YM-aarb.js → send-BR3reUOE.js} +1 -1
  247. package/dist/{send-CYfaZNZ4.js → send-BXiiQprI.js} +1 -1
  248. package/dist/{send-De_WCeGZ.js → send-BbV4XqMl.js} +1 -1
  249. package/dist/{send-D3M6pMr5.js → send-Bt4UsVrd.js} +1 -1
  250. package/dist/{send-CzE5UKr-.js → send-Bx04WqH5.js} +1 -1
  251. package/dist/{send-BVZGeP2r.js → send-CC2vm0xU.js} +1 -1
  252. package/dist/{send-CHOArYFe.js → send-CEjpAJ8N.js} +1 -1
  253. package/dist/{send-hNornLoH.js → send-CQzO_Tg0.js} +1 -1
  254. package/dist/{send-BH09HKsX.js → send-CRWQglv9.js} +1 -1
  255. package/dist/{send-D0dzPf6g.js → send-CZ18Xq5n.js} +1 -1
  256. package/dist/{send-mi3NHnwI.js → send-CltKx_vS.js} +1 -1
  257. package/dist/{send-D_yJMeJa.js → send-DDrpEKUg.js} +1 -1
  258. package/dist/{send-D16XtYvC.js → send-DVLEgg9H.js} +1 -1
  259. package/dist/{send-Do-0Kcmv.js → send-Dm4UYQsf.js} +1 -1
  260. package/dist/{send-DEWzWqfZ.js → send-DyK4u4yH.js} +1 -1
  261. package/dist/{send-B18gkuvz.js → send-EQ1insgp.js} +1 -1
  262. package/dist/{send-C7u4_H5t.js → send-hJthT6M_.js} +1 -1
  263. package/dist/{send-BsocounR.js → send-tDTl6xgz.js} +1 -1
  264. package/dist/{server-context-DG2dIhAy.js → server-context-BcjcQhiM.js} +5 -5
  265. package/dist/{server-context-bMIwnOnH.js → server-context-DbcjnRHG.js} +5 -5
  266. package/dist/{server-methods-B_JpD0c-.js → server-methods-56m79WbR.js} +16 -16
  267. package/dist/{server-methods-DnTo3Oou.js → server-methods-U_lDP83A.js} +15 -15
  268. package/dist/{server-node-events-IlWB4f_P.js → server-node-events-DpGswbj8.js} +27 -27
  269. package/dist/{server-node-events-t5pGPXLD.js → server-node-events-Q9J_E8Ce.js} +28 -28
  270. package/dist/{session-BjcsCwgz.js → session-1Q4kg4xp.js} +1 -1
  271. package/dist/{session-BkVBeAkg.js → session-B4JR6zUJ.js} +1 -1
  272. package/dist/{session-BeJq-MLE.js → session-BvXsNdtA.js} +1 -1
  273. package/dist/{session-T0JXlYWe.js → session-C86mCuOs.js} +1 -1
  274. package/dist/{session-utils-Cdv2Qaq2.js → session-utils-CFvGKxdu.js} +3 -3
  275. package/dist/{sessions-DJAxaVI7.js → sessions-B3nP13Fw.js} +1 -1
  276. package/dist/{sessions-BEyCtqBB.js → sessions-BdeJp6uY.js} +1 -1
  277. package/dist/{sessions-CX93jXmG.js → sessions-m60NabL_.js} +3 -3
  278. package/dist/{shared-CMw4odDH.js → shared-mv9M8Mzc.js} +1 -1
  279. package/dist/{shared-CLXhDldI.js → shared-sOiAK5kN.js} +1 -1
  280. package/dist/{skills-cli-CQ7XQ4Kn.js → skills-cli-B7FG8Ft4.js} +1 -1
  281. package/dist/{skills-cli-DIx7YItN.js → skills-cli-DVTw-NM0.js} +1 -1
  282. package/dist/{status-kOpLSgWJ.js → status-BNmYNm1S.js} +2 -2
  283. package/dist/{status-s1Tp-jVl.js → status-D4KjZ3qi.js} +9 -9
  284. package/dist/{status-cWLYsK8x.js → status-DIYjr2wp.js} +2 -2
  285. package/dist/{status-BXQGCrxj.js → status-DbXRbJqY.js} +10 -10
  286. package/dist/{status.update-BXs3adtg.js → status.update-CbXOcYqG.js} +1 -1
  287. package/dist/{status.update-DlaskfTr.js → status.update-DKLvc9EH.js} +1 -1
  288. package/dist/{subagent-registry-XHBZsH3Q.js → subagent-registry-Ct3GvWVn.js} +43 -43
  289. package/dist/{system-cli-D10NhXw1.js → system-cli-9b3AzE_M.js} +3 -3
  290. package/dist/{system-cli-DPNDYRBr.js → system-cli-B_KTvR0v.js} +3 -3
  291. package/dist/{systemd-hints-BBPT8Use.js → systemd-hints-BE7qhp3n.js} +1 -1
  292. package/dist/{systemd-hints-Bm2H1erP.js → systemd-hints-D_u4AuIu.js} +1 -1
  293. package/dist/{tui-pvq_HI-q.js → tui-BViOdgFZ.js} +4 -4
  294. package/dist/{tui-cli-BsSKYVE3.js → tui-cli-B97jQaQp.js} +9 -9
  295. package/dist/{tui-cli-9uTZZ13F.js → tui-cli-DKQz32oa.js} +9 -9
  296. package/dist/{tui-4d-MyU6O.js → tui-oo_JjD-G.js} +4 -4
  297. package/dist/{update-cli-B3VC_mrH.js → update-cli-C9S00L1E.js} +40 -40
  298. package/dist/{update-cli-_1YRH17q.js → update-cli-Dhk0Yxsm.js} +38 -38
  299. package/dist/{update-runner-DBbX4Iin.js → update-runner-BnIIcsqA.js} +1 -1
  300. package/dist/{update-runner-Dsc1_XOK.js → update-runner-DBZOvTzN.js} +1 -1
  301. package/dist/{web-JIG-oxRW.js → web-5uLk4OEM.js} +30 -30
  302. package/dist/{web-DzjJ_iNt.js → web-8NQJ75ip.js} +30 -30
  303. package/dist/{web-CmZZsoMg.js → web-f7lkf_un.js} +17 -17
  304. package/dist/{web-DjgeLZ5l.js → web-mXHyxR_l.js} +17 -17
  305. package/dist/{webhooks-cli-B0Crq2Ec.js → webhooks-cli-BLi_usfE.js} +1 -1
  306. package/dist/{webhooks-cli-CLIdArAE.js → webhooks-cli-Dz9n2L0-.js} +1 -1
  307. package/dist/{whatsapp-actions-BIjGyW3T.js → whatsapp-actions-6S6PNs2p.js} +2 -2
  308. package/dist/{whatsapp-actions-BL7tCNC_.js → whatsapp-actions-B4YPuD2Q.js} +2 -2
  309. package/dist/{whatsapp-actions-B821AFp-.js → whatsapp-actions-ChtHuvdU.js} +2 -2
  310. package/dist/{whatsapp-actions-Jfx4zcwv.js → whatsapp-actions-M8kjDd9l.js} +2 -2
  311. package/dist/{with-timeout-Cj_xUxo6.js → with-timeout-2zPYOOzh.js} +1 -1
  312. package/dist/{with-timeout-BeA4Jxcl.js → with-timeout-gaHpaiis.js} +1 -1
  313. package/docs/reference/templates/SYMIPULSE.md +22 -1
  314. package/package.json +1 -1
@@ -11,22 +11,22 @@ import { a as logoutWeb, i as logWebSelfId, l as readWebSelfId, p as webAuthExis
11
11
  import { t as normalizeChatType } from "./chat-type-C_KiWNAH.js";
12
12
  import { t as parseBooleanValue$1 } from "./boolean-B8-BqKGQ.js";
13
13
  import { n as resolveCliName, r as isTruthyEnvValue, t as formatCliCommand } from "./command-format-BaxDnULz.js";
14
- import { a as resolveSlackWebClientOptions, c as buildSlackBlocksFallbackText, i as createSlackWebClient, l as parseSlackTarget, o as parseSlackBlocksInput, s as validateSlackBlocksArray, t as sendMessageSlack, u as resolveSlackChannelId } from "./send-CHOArYFe.js";
15
- import { $ as fetchChannelPermissionsDiscord, A as unpinMessageDiscord, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveTimestampMs, D as pinMessageDiscord, Dt as normalizeChannelSlug, E as listThreadsDiscord, Et as buildChannelKeyCandidates, 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 resolveChannelEntryMatchWithFallback, P as fetchChannelInfoDiscord, Q as stripUndefinedFields, R as kickMemberDiscord, S as deleteMessageDiscord, St as resolveDiscordSystemLocation, T as listPinsDiscord, Tt as applyChannelMatchMeta, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendPollDiscord, _t as resolveDiscordShouldRequireMention, a as removeReactionDiscord, at as resolveDiscordChannelId, b as sendWebhookMessageDiscord, bt as formatDiscordReactionEmoji, c as formatDiscordComponentEventText, ct as allowListMatches$1, d as parseDiscordModalCustomId, dt as normalizeDiscordSlug, et as hasAnyGuildPermissionDiscord, f as parseDiscordModalCustomIdForCarbon, ft as resolveDiscordAllowListMatch, g as sendMessageDiscord, gt as resolveDiscordOwnerAllowFrom, h as resolveDiscordModalEntry, ht as resolveDiscordMemberAccessState, i as removeOwnReactionsDiscord, it as parseDiscordTarget, j as addRoleDiscord, k as searchMessagesDiscord, l as parseDiscordComponentCustomId, lt as isDiscordGroupAllowedByPolicy, m as resolveDiscordComponentEntry, mt as resolveDiscordGuildEntry, n as fetchReactionsDiscord, nt as createDiscordClient, o as sendDiscordComponentMessage, ot as listDiscordDirectoryGroupsLive, p as readDiscordComponentSpec, pt as resolveDiscordChannelConfigWithFallback, q as deleteChannelDiscord, r as reactMessageDiscord, rt as createDiscordRestClient, s as createDiscordFormModal, st as listDiscordDirectoryPeersLive, tt as chunkDiscordTextWithMode, u as parseDiscordComponentCustomIdForCarbon, ut as normalizeDiscordAllowList, v as sendStickerDiscord, vt as resolveGroupDmAllow, w as fetchMessageDiscord, wt as fetchDiscord, x as createThreadDiscord, xt as formatDiscordUserTag, y as sendVoiceMessageDiscord, yt as shouldEmitDiscordReactionNotification, z as listGuildChannelsDiscord } from "./send-D3M6pMr5.js";
16
- import { C as getGlobalHookRunner, S as parseInlineDirectives$1, _ as normalizeTargetForProvider, a as normalizeOutboundPayloadsForJson, b as MEDIA_TOKEN_RE, c as applyReplyThreading, d as isRenderablePayload, f as shouldSuppressMessagingToolReplies, g as normalizeChannelTargetInput, h as buildTargetResolverSignature, i as normalizeOutboundPayloads, l as filterMessagingToolDuplicates, m as resolveReplyToMode, o as normalizeReplyPayloadsForDelivery, p as createReplyToModeFilterForChannel, r as formatOutboundPayloadLog, s as applyReplyTagsToPayload, t as deliverOutboundPayloads, u as filterMessagingToolMediaDuplicates, v as throwIfAborted, w as initializeGlobalHookRunner, x as splitMediaFromOutput, y as parseReplyDirectives } from "./deliver-B3UoBZdC.js";
14
+ import { a as resolveSlackWebClientOptions, c as buildSlackBlocksFallbackText, i as createSlackWebClient, l as parseSlackTarget, o as parseSlackBlocksInput, s as validateSlackBlocksArray, t as sendMessageSlack, u as resolveSlackChannelId } from "./send-CEjpAJ8N.js";
15
+ import { $ as fetchChannelPermissionsDiscord, A as unpinMessageDiscord, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveTimestampMs, D as pinMessageDiscord, Dt as normalizeChannelSlug, E as listThreadsDiscord, Et as buildChannelKeyCandidates, 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 resolveChannelEntryMatchWithFallback, P as fetchChannelInfoDiscord, Q as stripUndefinedFields, R as kickMemberDiscord, S as deleteMessageDiscord, St as resolveDiscordSystemLocation, T as listPinsDiscord, Tt as applyChannelMatchMeta, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendPollDiscord, _t as resolveDiscordShouldRequireMention, a as removeReactionDiscord, at as resolveDiscordChannelId, b as sendWebhookMessageDiscord, bt as formatDiscordReactionEmoji, c as formatDiscordComponentEventText, ct as allowListMatches$1, d as parseDiscordModalCustomId, dt as normalizeDiscordSlug, et as hasAnyGuildPermissionDiscord, f as parseDiscordModalCustomIdForCarbon, ft as resolveDiscordAllowListMatch, g as sendMessageDiscord, gt as resolveDiscordOwnerAllowFrom, h as resolveDiscordModalEntry, ht as resolveDiscordMemberAccessState, i as removeOwnReactionsDiscord, it as parseDiscordTarget, j as addRoleDiscord, k as searchMessagesDiscord, l as parseDiscordComponentCustomId, lt as isDiscordGroupAllowedByPolicy, m as resolveDiscordComponentEntry, mt as resolveDiscordGuildEntry, n as fetchReactionsDiscord, nt as createDiscordClient, o as sendDiscordComponentMessage, ot as listDiscordDirectoryGroupsLive, p as readDiscordComponentSpec, pt as resolveDiscordChannelConfigWithFallback, q as deleteChannelDiscord, r as reactMessageDiscord, rt as createDiscordRestClient, s as createDiscordFormModal, st as listDiscordDirectoryPeersLive, tt as chunkDiscordTextWithMode, u as parseDiscordComponentCustomIdForCarbon, ut as normalizeDiscordAllowList, v as sendStickerDiscord, vt as resolveGroupDmAllow, w as fetchMessageDiscord, wt as fetchDiscord, x as createThreadDiscord, xt as formatDiscordUserTag, y as sendVoiceMessageDiscord, yt as shouldEmitDiscordReactionNotification, z as listGuildChannelsDiscord } from "./send-Bt4UsVrd.js";
16
+ import { C as getGlobalHookRunner, S as parseInlineDirectives$1, _ as normalizeTargetForProvider, a as normalizeOutboundPayloadsForJson, b as MEDIA_TOKEN_RE, c as applyReplyThreading, d as isRenderablePayload, f as shouldSuppressMessagingToolReplies, g as normalizeChannelTargetInput, h as buildTargetResolverSignature, i as normalizeOutboundPayloads, l as filterMessagingToolDuplicates, m as resolveReplyToMode, o as normalizeReplyPayloadsForDelivery, p as createReplyToModeFilterForChannel, r as formatOutboundPayloadLog, s as applyReplyTagsToPayload, t as deliverOutboundPayloads, u as filterMessagingToolMediaDuplicates, v as throwIfAborted, w as initializeGlobalHookRunner, x as splitMediaFromOutput, y as parseReplyDirectives } from "./deliver-BorDF5OG.js";
17
17
  import { a as logMessageProcessed, c as logWebhookError, d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, i as logLaneEnqueue, l as logWebhookProcessed, m as isDiagnosticsEnabled, o as logMessageQueued, p as emitDiagnosticEvent, r as logLaneDequeue, s as logSessionStateChange, t as diag, u as logWebhookReceived } from "./diagnostic-CI0kRQkt.js";
18
18
  import { r as getDiagnosticSessionState } from "./diagnostic-session-state-Bxo4UHOL.js";
19
19
  import { n as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-CWktKM8a.js";
20
- import { $ as isVoiceCompatibleAudio, A as extractTelegramLocation, B as normalizeAllowFromWithStore$1, C as buildTelegramGroupFrom, D as buildTypingThreadParams, E as buildTelegramThreadParams, F as resolveTelegramMediaPlaceholder, G as formatLocationText, H as firstDefined$1, I as resolveTelegramReplyId, J as readChannelAllowFromStore, K as toLocationContext, L as resolveTelegramStreamMode, M as normalizeForwardedContext, N as resolveTelegramForumThreadId, O as describeReplyTarget, P as resolveTelegramGroupAllowFromContext, Q as listPairingChannels, R as resolveTelegramThreadSpec, S as buildSenderName, T as buildTelegramParentPeer, U as isSenderIdAllowed, V as resolveSenderAllowMatch, W as mergeAllowFromSources, X as upsertChannelPairingRequest, Y as removeChannelAllowFromStoreEntry, Z as getPairingAdapter, _ as resolveTelegramFetch, a as reactMessageTelegram, b as buildGroupLabel, c as sendStickerTelegram, d as wasSentByBot, et as parseTelegramTarget, f as isRecoverableTelegramNetworkError, g as wrapFileReferencesInHtml, h as renderTelegramHtmlText, i as editMessageTelegram, j as hasBotMention, k as expandTextLinks, m as markdownToTelegramHtml, n as createForumTopicTelegram, o as sendMessageTelegram, p as markdownToTelegramChunks, q as addChannelAllowFromStoreEntry, r as deleteMessageTelegram, s as sendPollTelegram, t as buildInlineKeyboard, tt as resolveTelegramTargetChatType, u as resolveTelegramVoiceSend, v as splitTelegramCaption, w as buildTelegramGroupPeerId, x as buildSenderLabel, y as withTelegramApiErrorLogging, z as isSenderAllowed$1 } from "./send-D_yJMeJa.js";
20
+ import { $ as isVoiceCompatibleAudio, A as extractTelegramLocation, B as normalizeAllowFromWithStore$1, C as buildTelegramGroupFrom, D as buildTypingThreadParams, E as buildTelegramThreadParams, F as resolveTelegramMediaPlaceholder, G as formatLocationText, H as firstDefined$1, I as resolveTelegramReplyId, J as readChannelAllowFromStore, K as toLocationContext, L as resolveTelegramStreamMode, M as normalizeForwardedContext, N as resolveTelegramForumThreadId, O as describeReplyTarget, P as resolveTelegramGroupAllowFromContext, Q as listPairingChannels, R as resolveTelegramThreadSpec, S as buildSenderName, T as buildTelegramParentPeer, U as isSenderIdAllowed, V as resolveSenderAllowMatch, W as mergeAllowFromSources, X as upsertChannelPairingRequest, Y as removeChannelAllowFromStoreEntry, Z as getPairingAdapter, _ as resolveTelegramFetch, a as reactMessageTelegram, b as buildGroupLabel, c as sendStickerTelegram, d as wasSentByBot, et as parseTelegramTarget, f as isRecoverableTelegramNetworkError, g as wrapFileReferencesInHtml, h as renderTelegramHtmlText, i as editMessageTelegram, j as hasBotMention, k as expandTextLinks, m as markdownToTelegramHtml, n as createForumTopicTelegram, o as sendMessageTelegram, p as markdownToTelegramChunks, q as addChannelAllowFromStoreEntry, r as deleteMessageTelegram, s as sendPollTelegram, t as buildInlineKeyboard, tt as resolveTelegramTargetChatType, u as resolveTelegramVoiceSend, v as splitTelegramCaption, w as buildTelegramGroupPeerId, x as buildSenderLabel, y as withTelegramApiErrorLogging, z as isSenderAllowed$1 } from "./send-DDrpEKUg.js";
21
21
  import { d as detectMime, f as extensionForMime, g as isGifMedia, h as isAudioFileName, i as getImageMetadata, m as imageMimeFromFormat, s as resizeToJpeg, x as mediaKindFromMime, y as MAX_IMAGE_BYTES } from "./image-ops-CvJzsyvE.js";
22
22
  import { A as normalizeProviderId, C as buildAllowedModelSet, D as isCliProvider, E as findNormalizedProviderValue, F as resolveSubagentSpawnModelSelection, G as DEFAULT_MODEL, H as OLLAMA_NATIVE_BASE_URL, I as resolveThinkingDefault, J as normalizeSecretInput, K as DEFAULT_PROVIDER, M as resolveConfiguredModelRef, N as resolveDefaultModelForAgent, O as modelKey, P as resolveModelRefFromString, T as buildModelAliasIndex, U as createOllamaStreamFn, W as DEFAULT_CONTEXT_TOKENS, Y as getShellPathFromLoginShell, Z as resolveShellEnvFallbackTimeoutMs, _ as ensureAuthProfileStore, a as resolveEnvApiKey, b as withFileLock, c as resolveAuthProfileOrder, d as markAuthProfileFailure, f as markAuthProfileUsed, g as markAuthProfileGood, h as listProfilesForProvider, i as resolveApiKeyForProvider, k as normalizeModelRef$2, l as getSoonestCooldownExpiry, m as dedupeProfileIds, n as getCustomProviderApiKey, o as resolveModelAuthMode, p as resolveApiKeyForProfile, q as resolveAuthProfileDisplayLabel, r as requireApiKey, t as getApiKeyForModel, u as isProfileInCooldown, v as resolveAuthStorePathForDisplay, w as buildConfiguredAllowlistKeys, y as resolveSymiAgentDir } from "./model-auth-CeL58m55.js";
23
23
  import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-C_qUP7p5.js";
24
24
  import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-DaNAekda.js";
25
25
  import { a as isMarkdownCapableMessageChannel, c as resolveGatewayMessageChannel, d as GATEWAY_CLIENT_MODES, f as GATEWAY_CLIENT_NAMES, i as isInternalMessageChannel, l as resolveMessageChannel, n as isDeliverableMessageChannel, o as listDeliverableMessageChannels, r as isGatewayMessageChannel, s as normalizeMessageChannel, t as INTERNAL_MESSAGE_CHANNEL, u as GATEWAY_CLIENT_IDS } from "./message-channel-Dz5lr5b0.js";
26
- import { $ as normalizeDeliveryContext, A as isTransientHttpError, At as DEFAULT_UPLOAD_DIR, Bt as expandToolGroups, C as isContextOverflowError, Ct as resolveGroupSessionKey, D as isRateLimitAssistantError, Dt as registerBrowserRoutes, E as isLikelyContextOverflowError, Et as createBrowserRouteContext, F as resolveSandboxContext, Ft as resolveSandboxConfigForAgent, G as updateLastRoute, Gt as compileGlobPatterns, H as loadSessionStore, Ht as normalizeToolName, I as resolveSandboxRuntimeStatus, It as applyOwnerOnlyToolPolicy, J as isCacheEnabled, Jt as ensureSessionHeader, K as updateSessionStore, Kt as matchesAnyGlobPattern, L as extractDeliveryInfo, Lt as buildPluginToolGroups, M as parseImageSizeError, Mt as getBridgeAuthForPort, N as sanitizeUserFacingText, Nt as ensureBrowserControlAuth, O as isRawApiErrorPayload, Ot as resolveBrowserConfig, P as ensureSandboxWorkspaceForSession, Pt as resolveBrowserControlAuth, Q as mergeDeliveryContext, R as parseSessionThreadInfo, Rt as collectExplicitAllowlist, S as isCompactionFailureError, St as deriveSessionMetaPatch, T as isFailoverErrorMessage, Tt as resolveSessionLockMaxHoldFromTimeout, U as readSessionUpdatedAt, Ut as resolveToolProfilePolicy, V as resolveAndPersistSessionFile, Vt as mergeAlsoAllowPolicy, W as recordSessionMetaFromInbound, Wt as stripPluginOnlyAllowlist, X as deliveryContextFromSession, Xt as resolveBootstrapTotalMaxChars, Y as resolveCacheTtlMs$1, Yt as resolveBootstrapMaxChars, Z as deliveryContextKey, Zt as sanitizeGoogleTurnOrdering, _ as formatRawAssistantErrorForUi, _t as resolveFreshSessionTotalTokens, a as isMessagingToolDuplicateNormalized, at as extractToolCallNames, b as isBillingAssistantError, bt as resolveExplicitAgentSessionKey, c as extractToolCallsFromAssistant, ct as hasInterSessionUserProvenance, d as isAntigravityClaude, dt as evaluateSessionFreshness, et as normalizeSessionDeliveryFields, f as isGoogleModelApi, ft as resolveChannelResetConfig, g as formatBillingErrorMessage, gt as DEFAULT_RESET_TRIGGERS, h as formatAssistantErrorText, ht as resolveThreadFlag, it as countToolResults, j as parseImageDimensionError, jt as resolveExistingPathsWithinRoot, k as isTimeoutErrorMessage, kt as resolveProfile, l as extractToolResultId, lt as normalizeInputProvenance, m as classifyFailoverReason, mt as resolveSessionResetType, n as validateGeminiTurns, nt as archiveSessionTranscripts, o as normalizeTextForComparison, ot as INPUT_PROVENANCE_KIND_VALUES, p as BILLING_ERROR_USER_MESSAGE, pt as resolveSessionResetPolicy, q as updateSessionStoreEntry, qt as buildBootstrapContextFiles, r as pickFallbackThinkingLevel, rt as capArrayByJsonBytes, s as sanitizeSessionMessagesImages, st as applyInputProvenanceToUserMessage, t as validateAnthropicTurns, tt as normalizeAccountId$3, u as downgradeOpenAIReasoningBlocks, ut as resolveSessionKey, v as getApiErrorPayloadFingerprint, vt as canonicalizeMainSessionAlias, w as isFailoverAssistantError, wt as acquireSessionWriteLock, x as isCloudCodeAssistFormatError, xt as resolveMainSessionKey, y as isAuthAssistantError, z as appendAssistantMessageToSessionTranscript, zt as expandPolicyWithPluginGroups } from "./pi-embedded-helpers-kB5lBgXk.js";
27
- import { A as VERSION, C as getConfigValueAtPath, D as isSafeExecutableValue, E as unsetConfigValueAtPath, O as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, S as unsetConfigOverride, T as setConfigValueAtPath, _ as parseDurationMs, a as writeConfigFile, b as resetConfigOverrides, c as TELEGRAM_COMMAND_NAME_PATTERN, f as isInboundPathAllowed, g as normalizeScpRemoteHost, h as resolveIMessageRemoteAttachmentRoots, i as resolveConfigSnapshotHash, k as resolveAgentMaxConcurrent, l as normalizeTelegramCommandName, m as resolveIMessageAttachmentRoots, n as loadConfig, o as validateConfigObjectWithPlugins, r as readConfigFileSnapshot, u as resolveTelegramCustomCommands, v as validateJsonSchemaValue, w as parseConfigPath, x as setConfigOverride, y as getConfigOverrides } from "./config-DM0K7qC1.js";
26
+ import { $ as normalizeDeliveryContext, A as isTransientHttpError, At as DEFAULT_UPLOAD_DIR, Bt as expandToolGroups, C as isContextOverflowError, Ct as resolveGroupSessionKey, D as isRateLimitAssistantError, Dt as registerBrowserRoutes, E as isLikelyContextOverflowError, Et as createBrowserRouteContext, F as resolveSandboxContext, Ft as resolveSandboxConfigForAgent, G as updateLastRoute, Gt as compileGlobPatterns, H as loadSessionStore, Ht as normalizeToolName, I as resolveSandboxRuntimeStatus, It as applyOwnerOnlyToolPolicy, J as isCacheEnabled, Jt as ensureSessionHeader, K as updateSessionStore, Kt as matchesAnyGlobPattern, L as extractDeliveryInfo, Lt as buildPluginToolGroups, M as parseImageSizeError, Mt as getBridgeAuthForPort, N as sanitizeUserFacingText, Nt as ensureBrowserControlAuth, O as isRawApiErrorPayload, Ot as resolveBrowserConfig, P as ensureSandboxWorkspaceForSession, Pt as resolveBrowserControlAuth, Q as mergeDeliveryContext, R as parseSessionThreadInfo, Rt as collectExplicitAllowlist, S as isCompactionFailureError, St as deriveSessionMetaPatch, T as isFailoverErrorMessage, Tt as resolveSessionLockMaxHoldFromTimeout, U as readSessionUpdatedAt, Ut as resolveToolProfilePolicy, V as resolveAndPersistSessionFile, Vt as mergeAlsoAllowPolicy, W as recordSessionMetaFromInbound, Wt as stripPluginOnlyAllowlist, X as deliveryContextFromSession, Xt as resolveBootstrapTotalMaxChars, Y as resolveCacheTtlMs$1, Yt as resolveBootstrapMaxChars, Z as deliveryContextKey, Zt as sanitizeGoogleTurnOrdering, _ as formatRawAssistantErrorForUi, _t as resolveFreshSessionTotalTokens, a as isMessagingToolDuplicateNormalized, at as extractToolCallNames, b as isBillingAssistantError, bt as resolveExplicitAgentSessionKey, c as extractToolCallsFromAssistant, ct as hasInterSessionUserProvenance, d as isAntigravityClaude, dt as evaluateSessionFreshness, et as normalizeSessionDeliveryFields, f as isGoogleModelApi, ft as resolveChannelResetConfig, g as formatBillingErrorMessage, gt as DEFAULT_RESET_TRIGGERS, h as formatAssistantErrorText, ht as resolveThreadFlag, it as countToolResults, j as parseImageDimensionError, jt as resolveExistingPathsWithinRoot, k as isTimeoutErrorMessage, kt as resolveProfile, l as extractToolResultId, lt as normalizeInputProvenance, m as classifyFailoverReason, mt as resolveSessionResetType, n as validateGeminiTurns, nt as archiveSessionTranscripts, o as normalizeTextForComparison, ot as INPUT_PROVENANCE_KIND_VALUES, p as BILLING_ERROR_USER_MESSAGE, pt as resolveSessionResetPolicy, q as updateSessionStoreEntry, qt as buildBootstrapContextFiles, r as pickFallbackThinkingLevel, rt as capArrayByJsonBytes, s as sanitizeSessionMessagesImages, st as applyInputProvenanceToUserMessage, t as validateAnthropicTurns, tt as normalizeAccountId$3, u as downgradeOpenAIReasoningBlocks, ut as resolveSessionKey, v as getApiErrorPayloadFingerprint, vt as canonicalizeMainSessionAlias, w as isFailoverAssistantError, wt as acquireSessionWriteLock, x as isCloudCodeAssistFormatError, xt as resolveMainSessionKey, y as isAuthAssistantError, z as appendAssistantMessageToSessionTranscript, zt as expandPolicyWithPluginGroups } from "./pi-embedded-helpers-Dfp-iKzJ.js";
27
+ import { A as VERSION, C as getConfigValueAtPath, D as isSafeExecutableValue, E as unsetConfigValueAtPath, O as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, S as unsetConfigOverride, T as setConfigValueAtPath, _ as parseDurationMs, a as writeConfigFile, b as resetConfigOverrides, c as TELEGRAM_COMMAND_NAME_PATTERN, f as isInboundPathAllowed, g as normalizeScpRemoteHost, h as resolveIMessageRemoteAttachmentRoots, i as resolveConfigSnapshotHash, k as resolveAgentMaxConcurrent, l as normalizeTelegramCommandName, m as resolveIMessageAttachmentRoots, n as loadConfig, o as validateConfigObjectWithPlugins, r as readConfigFileSnapshot, u as resolveTelegramCustomCommands, v as validateJsonSchemaValue, w as parseConfigPath, x as setConfigOverride, y as getConfigOverrides } from "./config-CvuX_y8t.js";
28
28
  import { a as applyTestPluginDefaults, c as resolveMemorySlotDecision, d as isDangerousHostEnvVarName, i as safeStatSync, n as discoverSymiPlugins, o as normalizePluginsConfig, r as isPathInside, s as resolveEnableState, t as loadPluginManifestRegistry, u as isPathInsideWithRealpath } from "./manifest-registry-D0IQ3WuX.js";
29
- import { C as rawDataToString, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, T as isSecureWebSocketUrl, x as ensureChromeExtensionRelayServer } from "./chrome-LmEyZdbC.js";
29
+ import { C as rawDataToString, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, T as isSecureWebSocketUrl, x as ensureChromeExtensionRelayServer } from "./chrome-DPu6LSX4.js";
30
30
  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-BFekKL7i.js";
31
31
  import { n as formatErrorMessage, r as formatUncaughtError } from "./errors-BoQgnc8X.js";
32
32
  import { i as isBlockedHostnameOrIp, o as normalizeHostname, t as SsrFBlockedError } from "./ssrf-BTMDZjHT.js";
@@ -37,9 +37,9 @@ import { t as resolveIMessageAccount } from "./accounts-qtxJ-6em.js";
37
37
  import { i as resolveSessionTranscriptPath, n as resolveSessionFilePath, o as resolveSessionTranscriptsDirForAgent, r as resolveSessionFilePathOptions, s as resolveStorePath, t as resolveDefaultSessionStorePath } from "./paths-DLyHUt31.js";
38
38
  import { t as emitSessionTranscriptUpdate } from "./transcript-events-DDYvbmRV.js";
39
39
  import { i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, r as sanitizeToolResultImages } from "./tool-images-DXB7tqWi.js";
40
- import { S as ensureSymiModelsJson, _ as stripMinimaxToolCallXml, a as decodeDataUrl, b as stripReasoningTagsFromText, c as extractAssistantText$1, d as extractThinkingFromTaggedText, f as formatReasoningMessage, g as stripDowngradedToolCallText, h as promoteThinkingTagsToBlocks, i as coerceImageModelConfig, l as extractAssistantThinking, m as isAssistantMessage, o as resolveProviderVisionModelFromConfig, p as inferToolMetaFromArgs, r as coerceImageAssistantText, s as minimaxUnderstandImage, u as extractThinkingFromTaggedStream, v as stripThinkingTagsFromText, x as extractTextFromChatContent, y as resolveToolDisplay } from "./image-RFofsrof.js";
40
+ import { S as ensureSymiModelsJson, _ as stripMinimaxToolCallXml, a as decodeDataUrl, b as stripReasoningTagsFromText, c as extractAssistantText$1, d as extractThinkingFromTaggedText, f as formatReasoningMessage, g as stripDowngradedToolCallText, h as promoteThinkingTagsToBlocks, i as coerceImageModelConfig, l as extractAssistantThinking, m as isAssistantMessage, o as resolveProviderVisionModelFromConfig, p as inferToolMetaFromArgs, r as coerceImageAssistantText, s as minimaxUnderstandImage, u as extractThinkingFromTaggedStream, v as stripThinkingTagsFromText, x as extractTextFromChatContent, y as resolveToolDisplay } from "./image-GHA29jwQ.js";
41
41
  import { a as resolveAgentIdentity, i as resolveAckReaction, o as resolveEffectiveMessagesConfig, r as resolveResponsePrefixTemplate, s as resolveHumanDelayConfig, t as createReplyPrefixOptions } from "./reply-prefix-XlyuyChD.js";
42
- import { n as resolveMemorySearchConfig } from "./manager-B5EXdBQV.js";
42
+ import { i as resolveMemorySearchConfig, n as probeOllamaEmbeddingModels, r as resolveOllamaBaseUrl } from "./manager-BmHL5ETi.js";
43
43
  import { d as listMemoryFiles, f as normalizeExtraMemoryPaths, g as runTasksWithConcurrency } from "./sqlite-DRbx2dhW.js";
44
44
  import { n as retryAsync } from "./retry-Cly39XZB.js";
45
45
  import { a as createActionGate, c as jsonResult, d as readReactionParams, f as readStringArrayParam, l as parseAvailableTags, m as readStringParam, n as missingTargetError, o as imageResult, p as readStringOrNumberParam, r as unknownTargetError, s as imageResultFromFile, t as ambiguousTargetError, u as readNumberParam } from "./target-errors-Be1SwYlW.js";
@@ -51,17 +51,17 @@ import { a as loadWebMedia, i as getDefaultLocalRoots } from "./ir-DccrnjsE.js";
51
51
  import { _ as resolveNativeCommandsEnabled, a as listChatCommandsForConfig, c as normalizeCommandBody, d as resolveCommandArgMenu, f as serializeCommandArgs, g as isRestartEnabled, h as isNativeCommandsExplicitlyDisabled, i as listChatCommands, l as parseCommandArgs, m as isCommandFlagEnabled, o as listNativeCommandSpecs, p as shouldHandleTextCommands, r as findCommandByNativeName, s as listNativeCommandSpecsForConfig, t as buildCommandTextFromArgs, u as resolveCommandArgChoices, v as resolveNativeSkillsEnabled } from "./commands-registry-C3C4Rv3O.js";
52
52
  import { c as getSkillsSnapshotVersion, d as createAsyncLock, f as readJsonFile, i as resolveSkillCommandInvocation, l as pruneExpiredPending, n as listSkillCommandsForAgents, o as getRemoteSkillEligibility, p as writeJsonAtomic, r as listSkillCommandsForWorkspace, s as ensureSkillsWatcher, t as listReservedChatSlashCommandNames, u as resolvePairingPaths } from "./skill-commands-B64uavY9.js";
53
53
  import { r as normalizeInboundTextNewlines, t as finalizeInboundContext } from "./inbound-context-BlHX0H3E.js";
54
- import { _ as resolveMediaUnderstandingScope, a as resolveMediaAttachmentLocalRoots, c as loadModelCatalog, d as resolveAttachmentKind, f as buildRandomTempFilePath, g as normalizeMediaUnderstandingChatType, h as resolveTimeoutMs$1, i as resolveAutoImageModel, l as modelSupportsVision, m as resolveConcurrency, n as createMediaAttachmentCache, o as runCapability, p as registerUnhandledRejectionHandler, r as normalizeMediaAttachments, s as findModelInCatalog, t as buildProviderRegistry, v as CLI_OUTPUT_MAX_BUFFER, y as applyTemplate } from "./runner-DOvsNiYz.js";
54
+ import { _ as resolveMediaUnderstandingScope, a as resolveMediaAttachmentLocalRoots, c as loadModelCatalog, d as resolveAttachmentKind, f as buildRandomTempFilePath, g as normalizeMediaUnderstandingChatType, h as resolveTimeoutMs$1, i as resolveAutoImageModel, l as modelSupportsVision, m as resolveConcurrency, n as createMediaAttachmentCache, o as runCapability, p as registerUnhandledRejectionHandler, r as normalizeMediaAttachments, s as findModelInCatalog, t as buildProviderRegistry, v as CLI_OUTPUT_MAX_BUFFER, y as applyTemplate } from "./runner-v0fS4J7T.js";
55
55
  import { n as wrapFetchWithAbortSignal, t as resolveFetch } from "./fetch-Bso4i15F.js";
56
56
  import { n as recordCommandPoll, r as resetCommandPollCount } from "./command-poll-backoff-Bup9wS1y.js";
57
57
  import { n as recordChannelActivity, r as createDiscordRetryRunner, t as getChannelActivity } from "./channel-activity-CsM_hJ_s.js";
58
58
  import { n as normalizePollInput } from "./polls-CCuCaqgv.js";
59
59
  import { t as convertMarkdownTables } from "./tables-DuZspiBu.js";
60
- import { a as resolveSignalRpcContext, c as streamSignalEvents, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-CzE5UKr-.js";
61
- import { a as formatIMessageChatTarget, c as parseIMessageTarget, i as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, o as isAllowedIMessageSender, r as createIMessageRpcClient, s as normalizeIMessageHandle, t as sendMessageIMessage } from "./send-BeASPkFg.js";
60
+ import { a as resolveSignalRpcContext, c as streamSignalEvents, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-Bx04WqH5.js";
61
+ import { a as formatIMessageChatTarget, c as parseIMessageTarget, i as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, o as isAllowedIMessageSender, r as createIMessageRpcClient, s as normalizeIMessageHandle, t as sendMessageIMessage } from "./send-1iB7Rdwp.js";
62
62
  import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-CZ-1eqw0.js";
63
63
  import { t as makeProxyFetch } from "./proxy-CBJ1upuz.js";
64
- import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-D9V19U2-.js";
64
+ import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-DtdP8R93.js";
65
65
  import { t as getActiveWebListener } from "./active-listener-C9r8ZB9m.js";
66
66
  import { createRequire } from "node:module";
67
67
  import * as fs$2 from "node:fs/promises";
@@ -81,7 +81,7 @@ import { EdgeTTS } from "node-edge-tts";
81
81
  import AjvPkg from "ajv";
82
82
  import { createServer } from "node:http";
83
83
  import { ProxyAgent, fetch as fetch$1 } from "undici";
84
- import WebSocket, { WebSocket as WebSocket$1 } from "ws";
84
+ import WebSocket$1, { WebSocket } from "ws";
85
85
  import { Buffer as Buffer$1 } from "node:buffer";
86
86
  import { createJiti } from "jiti";
87
87
  import { Type } from "@sinclair/typebox";
@@ -3474,7 +3474,7 @@ async function getMemorySearchManager(params) {
3474
3474
  const wrapper = new FallbackMemoryManager({
3475
3475
  primary,
3476
3476
  fallbackFactory: async () => {
3477
- const { MemoryIndexManager } = await import("./manager-B5EXdBQV.js").then((n) => n.t);
3477
+ const { MemoryIndexManager } = await import("./manager-BmHL5ETi.js").then((n) => n.t);
3478
3478
  return await MemoryIndexManager.get(params);
3479
3479
  }
3480
3480
  }, () => QMD_MANAGER_CACHE.delete(cacheKey));
@@ -3487,7 +3487,7 @@ async function getMemorySearchManager(params) {
3487
3487
  }
3488
3488
  }
3489
3489
  try {
3490
- const { MemoryIndexManager } = await import("./manager-B5EXdBQV.js").then((n) => n.t);
3490
+ const { MemoryIndexManager } = await import("./manager-BmHL5ETi.js").then((n) => n.t);
3491
3491
  return { manager: await MemoryIndexManager.get(params) };
3492
3492
  } catch (err) {
3493
3493
  return {
@@ -5716,7 +5716,7 @@ var GatewayClient = class {
5716
5716
  if (fingerprint !== expected) return /* @__PURE__ */ new Error("gateway tls fingerprint mismatch");
5717
5717
  });
5718
5718
  }
5719
- this.ws = new WebSocket$1(url, wsOptions);
5719
+ this.ws = new WebSocket(url, wsOptions);
5720
5720
  this.ws.on("open", () => {
5721
5721
  if (url.startsWith("wss://") && this.opts.tlsFingerprint) {
5722
5722
  const tlsError = this.validateTlsFingerprint();
@@ -5935,7 +5935,7 @@ var GatewayClient = class {
5935
5935
  return null;
5936
5936
  }
5937
5937
  async request(method, params, opts) {
5938
- if (!this.ws || this.ws.readyState !== WebSocket$1.OPEN) throw new Error("gateway not connected");
5938
+ if (!this.ws || this.ws.readyState !== WebSocket.OPEN) throw new Error("gateway not connected");
5939
5939
  const id = randomUUID();
5940
5940
  const frame = {
5941
5941
  type: "req",
@@ -7201,7 +7201,7 @@ async function routeReply(params) {
7201
7201
  const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
7202
7202
  const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
7203
7203
  try {
7204
- const { deliverOutboundPayloads } = await import("./deliver-B3UoBZdC.js").then((n) => n.n);
7204
+ const { deliverOutboundPayloads } = await import("./deliver-BorDF5OG.js").then((n) => n.n);
7205
7205
  return {
7206
7206
  ok: true,
7207
7207
  messageId: (await deliverOutboundPayloads({
@@ -14225,7 +14225,7 @@ function ensureNestedObject(root, path) {
14225
14225
  }
14226
14226
  return current;
14227
14227
  }
14228
- function setNestedValue(root, path, value) {
14228
+ function setNestedValue$1(root, path, value) {
14229
14229
  if (path.length === 0) return;
14230
14230
  if (path.length === 1) {
14231
14231
  root[path[0]] = value;
@@ -14559,7 +14559,7 @@ const handleAllowlistCommand = async (params, allowTextCommands) => {
14559
14559
  }
14560
14560
  if (configChanged) {
14561
14561
  if (next.length === 0) deleteNestedValue(target, allowlistPath);
14562
- else setNestedValue(target, allowlistPath, next);
14562
+ else setNestedValue$1(target, allowlistPath, next);
14563
14563
  if (scope === "dm" && (channelId === "slack" || channelId === "discord")) deleteNestedValue(target, ["dm", "allowFrom"]);
14564
14564
  }
14565
14565
  if (configChanged) {
@@ -41574,7 +41574,7 @@ async function deliverSessionMaintenanceWarning(params) {
41574
41574
  return;
41575
41575
  }
41576
41576
  try {
41577
- const { deliverOutboundPayloads } = await import("./deliver-B3UoBZdC.js").then((n) => n.n);
41577
+ const { deliverOutboundPayloads } = await import("./deliver-BorDF5OG.js").then((n) => n.n);
41578
41578
  await deliverOutboundPayloads({
41579
41579
  cfg: params.cfg,
41580
41580
  channel,
@@ -45017,7 +45017,7 @@ async function describeStickerImage(params) {
45017
45017
  logVerbose(`telegram: describing sticker with ${provider}/${model}`);
45018
45018
  try {
45019
45019
  const buffer = await fs.readFile(imagePath);
45020
- const { describeImageWithModel } = await import("./image-RFofsrof.js").then((n) => n.n);
45020
+ const { describeImageWithModel } = await import("./image-GHA29jwQ.js").then((n) => n.n);
45021
45021
  return (await describeImageWithModel({
45022
45022
  buffer,
45023
45023
  fileName: "sticker.webp",
@@ -45440,7 +45440,7 @@ function createWhatsAppLoginTool() {
45440
45440
  force: Type.Optional(Type.Boolean())
45441
45441
  }),
45442
45442
  execute: async (_toolCallId, args) => {
45443
- const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-9OQSnm5L.js");
45443
+ const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-CzD7_Pru.js");
45444
45444
  if ((args?.action ?? "start") === "wait") {
45445
45445
  const result = await waitForWebLogin({ timeoutMs: typeof args.timeoutMs === "number" ? args.timeoutMs : void 0 });
45446
45446
  return {
@@ -46166,6 +46166,207 @@ function registerMemoryCli(program) {
46166
46166
  }
46167
46167
  });
46168
46168
  });
46169
+ memory.command("setup").description("Auto-detect and configure the best embedding provider").option("--agent <id>", "Agent id (default: default agent)").option("--dry-run", "Show what would be configured without writing", false).option("--verbose", "Verbose logging", false).action(async (opts) => {
46170
+ setVerbose(Boolean(opts.verbose));
46171
+ await runMemorySetup(opts);
46172
+ });
46173
+ }
46174
+ async function detectEmbeddingProviders(cfg) {
46175
+ const detected = [];
46176
+ const ollamaProbe = await probeOllamaEmbeddingModels(resolveOllamaBaseUrl(cfg));
46177
+ if (ollamaProbe && ollamaProbe.models.length > 0) detected.push({
46178
+ id: "ollama",
46179
+ model: ollamaProbe.models[0],
46180
+ baseUrl: ollamaProbe.baseUrl,
46181
+ reason: `Ollama at ${ollamaProbe.baseUrl} — ${ollamaProbe.models[0]}`
46182
+ });
46183
+ for (const remote of [
46184
+ {
46185
+ id: "openai",
46186
+ envKey: "OPENAI_API_KEY",
46187
+ defaultModel: "text-embedding-3-small"
46188
+ },
46189
+ {
46190
+ id: "gemini",
46191
+ envKey: "GEMINI_API_KEY",
46192
+ defaultModel: "gemini-embedding-001"
46193
+ },
46194
+ {
46195
+ id: "voyage",
46196
+ envKey: "VOYAGE_API_KEY",
46197
+ defaultModel: "voyage-4-large"
46198
+ }
46199
+ ]) {
46200
+ const envValue = process.env[remote.envKey]?.trim();
46201
+ let hasKey = Boolean(envValue);
46202
+ if (!hasKey) try {
46203
+ const resolved = await resolveApiKeyForProvider({
46204
+ provider: remote.id,
46205
+ cfg
46206
+ });
46207
+ hasKey = Boolean(resolved?.apiKey);
46208
+ } catch {}
46209
+ if (hasKey) detected.push({
46210
+ id: remote.id,
46211
+ model: remote.defaultModel,
46212
+ reason: `${remote.id} — API key found`
46213
+ });
46214
+ }
46215
+ return detected;
46216
+ }
46217
+ function setNestedValue(obj, path, value) {
46218
+ let current = obj;
46219
+ for (let i = 0; i < path.length - 1; i++) {
46220
+ const key = path[i];
46221
+ if (current[key] === void 0 || typeof current[key] !== "object" || current[key] === null) current[key] = {};
46222
+ current = current[key];
46223
+ }
46224
+ current[path[path.length - 1]] = value;
46225
+ }
46226
+ async function runMemorySetup(opts) {
46227
+ const rich = isRich();
46228
+ const heading = (text) => colorize(rich, theme.heading, text);
46229
+ const success = (text) => colorize(rich, theme.success, text);
46230
+ const warn = (text) => colorize(rich, theme.warn, text);
46231
+ const info = (text) => colorize(rich, theme.info, text);
46232
+ const muted = (text) => colorize(rich, theme.muted, text);
46233
+ const cfg = loadConfig();
46234
+ const agentId = resolveAgent(cfg, opts.agent);
46235
+ defaultRuntime.log(heading("Detecting embedding providers..."));
46236
+ defaultRuntime.log("");
46237
+ const detected = await detectEmbeddingProviders(cfg);
46238
+ const ollamaBase = resolveOllamaBaseUrl(cfg);
46239
+ const ollamaFound = detected.some((d) => d.id === "ollama");
46240
+ const openaiFound = detected.some((d) => d.id === "openai");
46241
+ const geminiFound = detected.some((d) => d.id === "gemini");
46242
+ const voyageFound = detected.some((d) => d.id === "voyage");
46243
+ if (ollamaFound) defaultRuntime.log(` ${success("✓")} ${detected.find((d) => d.id === "ollama").reason}`);
46244
+ else defaultRuntime.log(` ${warn("✗")} Ollama — not reachable at ${ollamaBase} or no embedding models`);
46245
+ if (openaiFound) defaultRuntime.log(` ${success("✓")} ${detected.find((d) => d.id === "openai").reason}`);
46246
+ else defaultRuntime.log(` ${warn("✗")} OpenAI — no API key`);
46247
+ if (geminiFound) defaultRuntime.log(` ${success("✓")} ${detected.find((d) => d.id === "gemini").reason}`);
46248
+ else defaultRuntime.log(` ${warn("✗")} Gemini — no API key`);
46249
+ if (voyageFound) defaultRuntime.log(` ${success("✓")} ${detected.find((d) => d.id === "voyage").reason}`);
46250
+ else defaultRuntime.log(` ${warn("✗")} Voyage — no API key`);
46251
+ defaultRuntime.log("");
46252
+ if (detected.length === 0) {
46253
+ defaultRuntime.error("No embedding providers detected.");
46254
+ defaultRuntime.error("");
46255
+ defaultRuntime.error("To fix, do one of:");
46256
+ defaultRuntime.error(" - Install Ollama and pull an embedding model: ollama pull nomic-embed-text");
46257
+ defaultRuntime.error(" - Set OPENAI_API_KEY environment variable");
46258
+ defaultRuntime.error(" - Set GEMINI_API_KEY or VOYAGE_API_KEY environment variable");
46259
+ process.exitCode = 1;
46260
+ return;
46261
+ }
46262
+ const best = detected[0];
46263
+ defaultRuntime.log(`${heading("Configuring:")} ${info(best.id)} (${best.model})`);
46264
+ if (opts.dryRun) {
46265
+ defaultRuntime.log(muted(" (dry run — no changes written)"));
46266
+ const configProvider = best.id === "ollama" ? "openai" : best.id;
46267
+ defaultRuntime.log(` provider = ${info(configProvider)}${best.id === "ollama" ? muted(" (via Ollama)") : ""}`);
46268
+ defaultRuntime.log(` model = ${info(best.model)}`);
46269
+ if (best.baseUrl) {
46270
+ const configUrl = best.id === "ollama" ? `${best.baseUrl}/v1` : best.baseUrl;
46271
+ defaultRuntime.log(` remote.baseUrl = ${info(configUrl)}`);
46272
+ }
46273
+ return;
46274
+ }
46275
+ const snapshot = await readConfigFileSnapshot();
46276
+ const next = structuredClone(snapshot.resolved);
46277
+ const memPath = [
46278
+ "agents",
46279
+ "defaults",
46280
+ "memorySearch"
46281
+ ];
46282
+ setNestedValue(next, [...memPath, "enabled"], true);
46283
+ setNestedValue(next, [...memPath, "sources"], ["memory", "sessions"]);
46284
+ if (best.id === "ollama" && best.baseUrl) {
46285
+ setNestedValue(next, [...memPath, "provider"], "openai");
46286
+ setNestedValue(next, [...memPath, "model"], best.model);
46287
+ setNestedValue(next, [
46288
+ ...memPath,
46289
+ "remote",
46290
+ "baseUrl"
46291
+ ], `${best.baseUrl}/v1`);
46292
+ setNestedValue(next, [
46293
+ ...memPath,
46294
+ "remote",
46295
+ "apiKey"
46296
+ ], "ollama-local");
46297
+ } else {
46298
+ setNestedValue(next, [...memPath, "provider"], best.id);
46299
+ setNestedValue(next, [...memPath, "model"], best.model);
46300
+ if (best.baseUrl) setNestedValue(next, [
46301
+ ...memPath,
46302
+ "remote",
46303
+ "baseUrl"
46304
+ ], best.baseUrl);
46305
+ }
46306
+ await writeConfigFile(next);
46307
+ defaultRuntime.log(` ${success("✓")} Updated symi.json`);
46308
+ defaultRuntime.log("");
46309
+ defaultRuntime.log(heading("Indexing memory files..."));
46310
+ const freshCfg = loadConfig();
46311
+ let indexOk = false;
46312
+ await withMemoryManagerForAgent({
46313
+ cfg: freshCfg,
46314
+ agentId,
46315
+ run: async (manager) => {
46316
+ const syncFn = manager.sync ? manager.sync.bind(manager) : void 0;
46317
+ if (!syncFn) {
46318
+ defaultRuntime.log(warn(" Memory backend does not support indexing."));
46319
+ return;
46320
+ }
46321
+ try {
46322
+ await withProgressTotals({
46323
+ label: "Indexing memory…",
46324
+ total: 0
46325
+ }, async (update, progress) => {
46326
+ await syncFn({
46327
+ reason: "cli",
46328
+ force: true,
46329
+ progress: (syncUpdate) => {
46330
+ update({
46331
+ completed: syncUpdate.completed,
46332
+ total: syncUpdate.total,
46333
+ label: syncUpdate.label
46334
+ });
46335
+ if (syncUpdate.label) progress.setLabel(syncUpdate.label);
46336
+ }
46337
+ });
46338
+ });
46339
+ const status = manager.status();
46340
+ defaultRuntime.log(` ${success("✓")} ${status.files ?? 0} files → ${status.chunks ?? 0} chunks` + (status.vector?.dims ? ` (${status.vector.dims}-dim vectors)` : ""));
46341
+ indexOk = true;
46342
+ } catch (err) {
46343
+ defaultRuntime.error(` ${warn("✗")} Index failed: ${formatErrorMessage(err)}`);
46344
+ }
46345
+ }
46346
+ });
46347
+ if (!indexOk) {
46348
+ process.exitCode = 1;
46349
+ return;
46350
+ }
46351
+ defaultRuntime.log("");
46352
+ defaultRuntime.log(heading("Verifying search..."));
46353
+ await withMemoryManagerForAgent({
46354
+ cfg: freshCfg,
46355
+ agentId,
46356
+ run: async (manager) => {
46357
+ try {
46358
+ const results = await manager.search("test memory verification", { maxResults: 3 });
46359
+ defaultRuntime.log(` ${success("✓")} Test query returned ${results.length} results` + (results.length > 0 ? ` (score ${results[results.length - 1].score.toFixed(2)}–${results[0].score.toFixed(2)})` : ""));
46360
+ } catch (err) {
46361
+ defaultRuntime.log(` ${warn("✗")} Search verification failed: ${formatErrorMessage(err)}`);
46362
+ process.exitCode = 1;
46363
+ return;
46364
+ }
46365
+ }
46366
+ });
46367
+ defaultRuntime.log("");
46368
+ defaultRuntime.log(success("Memory system is fully operational."));
46369
+ defaultRuntime.log(muted("Restart the gateway to apply: systemctl --user restart symi-gateway"));
46169
46370
  }
46170
46371
 
46171
46372
  //#endregion
@@ -47478,7 +47679,7 @@ async function preflightDiscordMessage(params) {
47478
47679
  let preflightTranscript;
47479
47680
  const hasAudioAttachment = message.attachments?.some((att) => att.contentType?.startsWith("audio/"));
47480
47681
  if (!isDirectMessage && shouldRequireMention && hasAudioAttachment && !baseText && mentionRegexes.length > 0) try {
47481
- const { transcribeFirstAudio } = await import("./audio-preflight-DRQD_nt1.js");
47682
+ const { transcribeFirstAudio } = await import("./audio-preflight-mSUx5I34.js");
47482
47683
  const audioPaths = message.attachments?.filter((att) => att.contentType?.startsWith("audio/")).map((att) => att.url) ?? [];
47483
47684
  if (audioPaths.length > 0) preflightTranscript = await transcribeFirstAudio({
47484
47685
  ctx: {
@@ -51484,27 +51685,27 @@ function isVoiceChannelType(type) {
51484
51685
  function createDefaultDeps() {
51485
51686
  return {
51486
51687
  sendMessageWhatsApp: async (...args) => {
51487
- const { sendMessageWhatsApp } = await import("./web-CmZZsoMg.js");
51688
+ const { sendMessageWhatsApp } = await import("./web-f7lkf_un.js");
51488
51689
  return await sendMessageWhatsApp(...args);
51489
51690
  },
51490
51691
  sendMessageTelegram: async (...args) => {
51491
- const { sendMessageTelegram } = await import("./send-D_yJMeJa.js").then((n) => n.l);
51692
+ const { sendMessageTelegram } = await import("./send-DDrpEKUg.js").then((n) => n.l);
51492
51693
  return await sendMessageTelegram(...args);
51493
51694
  },
51494
51695
  sendMessageDiscord: async (...args) => {
51495
- const { sendMessageDiscord } = await import("./send-D3M6pMr5.js").then((n) => n.t);
51696
+ const { sendMessageDiscord } = await import("./send-Bt4UsVrd.js").then((n) => n.t);
51496
51697
  return await sendMessageDiscord(...args);
51497
51698
  },
51498
51699
  sendMessageSlack: async (...args) => {
51499
- const { sendMessageSlack } = await import("./send-CHOArYFe.js").then((n) => n.n);
51700
+ const { sendMessageSlack } = await import("./send-CEjpAJ8N.js").then((n) => n.n);
51500
51701
  return await sendMessageSlack(...args);
51501
51702
  },
51502
51703
  sendMessageSignal: async (...args) => {
51503
- const { sendMessageSignal } = await import("./send-CzE5UKr-.js").then((n) => n.i);
51704
+ const { sendMessageSignal } = await import("./send-Bx04WqH5.js").then((n) => n.i);
51504
51705
  return await sendMessageSignal(...args);
51505
51706
  },
51506
51707
  sendMessageIMessage: async (...args) => {
51507
- const { sendMessageIMessage } = await import("./send-BeASPkFg.js").then((n) => n.n);
51708
+ const { sendMessageIMessage } = await import("./send-1iB7Rdwp.js").then((n) => n.n);
51508
51709
  return await sendMessageIMessage(...args);
51509
51710
  }
51510
51711
  };
@@ -54388,7 +54589,7 @@ function createDiscordGatewayPlugin(params) {
54388
54589
  super(options);
54389
54590
  }
54390
54591
  createWebSocket(url) {
54391
- return new WebSocket(url, { agent });
54592
+ return new WebSocket$1(url, { agent });
54392
54593
  }
54393
54594
  }
54394
54595
  return new ProxyGatewayPlugin();
@@ -62333,7 +62534,7 @@ async function registerSlackMonitorSlashCommands(params) {
62333
62534
  });
62334
62535
  const deliverSlashPayloads = async (replies) => {
62335
62536
  const [{ deliverSlackSlashReplies }, { resolveChunkMode }, { resolveMarkdownTableMode }] = await Promise.all([
62336
- import("./replies-D9V19U2-.js").then((n) => n.r),
62537
+ import("./replies-DtdP8R93.js").then((n) => n.r),
62337
62538
  import("./chunk-BW5f05BR.js").then((n) => n.s),
62338
62539
  import("./markdown-tables-iMQQZu4Q.js").then((n) => n.t)
62339
62540
  ]);
@@ -64606,7 +64807,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, storeAllowFro
64606
64807
  const hasAudio = allMedia.some((media) => media.contentType?.startsWith("audio/"));
64607
64808
  let preflightTranscript;
64608
64809
  if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0) try {
64609
- const { transcribeFirstAudio } = await import("./audio-preflight-DRQD_nt1.js");
64810
+ const { transcribeFirstAudio } = await import("./audio-preflight-mSUx5I34.js");
64610
64811
  preflightTranscript = await transcribeFirstAudio({
64611
64812
  ctx: {
64612
64813
  MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
@@ -66751,23 +66952,23 @@ let webLoginQrPromise = null;
66751
66952
  let webChannelPromise = null;
66752
66953
  let whatsappActionsPromise = null;
66753
66954
  function loadWebOutbound() {
66754
- webOutboundPromise ??= import("./outbound-Cedd_yui.js").then((n) => n.t);
66955
+ webOutboundPromise ??= import("./outbound-yaYfpPTu.js").then((n) => n.t);
66755
66956
  return webOutboundPromise;
66756
66957
  }
66757
66958
  function loadWebLogin() {
66758
- webLoginPromise ??= import("./login-BG_7eJLu.js").then((n) => n.n);
66959
+ webLoginPromise ??= import("./login-DNeGXcjV.js").then((n) => n.n);
66759
66960
  return webLoginPromise;
66760
66961
  }
66761
66962
  function loadWebLoginQr() {
66762
- webLoginQrPromise ??= import("./login-qr-9OQSnm5L.js");
66963
+ webLoginQrPromise ??= import("./login-qr-CzD7_Pru.js");
66763
66964
  return webLoginQrPromise;
66764
66965
  }
66765
66966
  function loadWebChannel() {
66766
- webChannelPromise ??= import("./web-CmZZsoMg.js");
66967
+ webChannelPromise ??= import("./web-f7lkf_un.js");
66767
66968
  return webChannelPromise;
66768
66969
  }
66769
66970
  function loadWhatsAppActions() {
66770
- whatsappActionsPromise ??= import("./whatsapp-actions-BL7tCNC_.js");
66971
+ whatsappActionsPromise ??= import("./whatsapp-actions-B4YPuD2Q.js");
66771
66972
  return whatsappActionsPromise;
66772
66973
  }
66773
66974
  function createPluginRuntime() {