@symerian/symi 2.7.7 → 2.7.9

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 (410) hide show
  1. package/dist/{acp-cli-DLsBwWlS.js → acp-cli-DwKj-AqM.js} +3 -3
  2. package/dist/{acp-cli-CeN5gs7J.js → acp-cli-lkOF8AeX.js} +3 -3
  3. package/dist/{agents-CCeOMXJF.js → agents-Qr0BDw_h.js} +7 -7
  4. package/dist/{agents.config-AdyGWyGd.js → agents.config-D0ih9tP3.js} +1 -1
  5. package/dist/{agents.config-B8-mSnnL.js → agents.config-DIjsIDbS.js} +1 -1
  6. package/dist/{audio-preflight-BUoEMkmr.js → audio-preflight-D0nJ1LEt.js} +7 -7
  7. package/dist/{audio-preflight-3Wa38hZz.js → audio-preflight-DJXj9QP9.js} +13 -13
  8. package/dist/{audio-preflight-Bsa1_iU3.js → audio-preflight-D_g9Duqw.js} +7 -7
  9. package/dist/{audio-preflight-C45lDI-t.js → audio-preflight-DfALITTK.js} +13 -13
  10. package/dist/{audit-DD5qcj2W.js → audit-DVUHZrf4.js} +7 -7
  11. package/dist/{audit-G3JpLuYZ.js → audit-DgAM_dWL.js} +7 -7
  12. package/dist/{auth-choice-B97lJuV1.js → auth-choice-DhI8MW-5.js} +4 -4
  13. package/dist/{auth-choice-BkF4yNXk.js → auth-choice-PdYn-qiM.js} +4 -4
  14. package/dist/{banner-kmyj39fQ.js → banner-BQhYK_Ag.js} +1 -1
  15. package/dist/{browser-cli-LlkXk8qz.js → browser-cli-CQKRSqbb.js} +4 -4
  16. package/dist/{browser-cli-DPAw_dFl.js → browser-cli-ClxJjz9C.js} +4 -4
  17. package/dist/build-info.json +3 -3
  18. package/dist/bundled/boot-md/handler.js +16 -16
  19. package/dist/bundled/session-memory/handler.js +16 -16
  20. package/dist/{call-ple9aZCT.js → call-BrRWr7Lj.js} +2 -1
  21. package/dist/{call-CtiVeyeQ.js → call-CVqBgwrx.js} +2 -1
  22. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  23. package/dist/{catalog-NQ4pj9RI.js → catalog-DX1l43Ru.js} +1 -1
  24. package/dist/{catalog-DLQFKucJ.js → catalog-buoA8ik4.js} +1 -1
  25. package/dist/{channel-options-7M72jx9S.js → channel-options-CFwo8sFR.js} +2 -2
  26. package/dist/{channel-options-CWyYAyJ8.js → channel-options-ZHpChVVk.js} +2 -2
  27. package/dist/{channel-web-DNYIZGo5.js → channel-web-UmRhDGhI.js} +7 -7
  28. package/dist/{channels-cli-BbbQhLVm.js → channels-cli-CRDgQtex.js} +34 -34
  29. package/dist/{channels-cli-CIApZn8b.js → channels-cli-rzQvsXSw.js} +35 -35
  30. package/dist/{chrome-CDPH3KAn.js → chrome-BJvuH-NZ.js} +1 -1
  31. package/dist/{chrome-Cs57nwfJ.js → chrome-BUT--ob3.js} +1 -1
  32. package/dist/{chrome-PSMCM7XH.js → chrome-C08Z0XAa.js} +1 -1
  33. package/dist/{chrome-CWdu8vA2.js → chrome-D2ohnA09.js} +1 -1
  34. package/dist/cli/daemon-cli.js +1 -1
  35. package/dist/{cli-BdYpv3II.js → cli-CC9jaj6w.js} +28 -28
  36. package/dist/{cli-Chwue7dC.js → cli-DN6fX0Xu.js} +29 -29
  37. package/dist/{command-registry-X9-mDiVG.js → command-registry-qqb2gJ4P.js} +11 -11
  38. package/dist/{completion-cli-CKRgTAVA.js → completion-cli-BX_yaiom.js} +1 -1
  39. package/dist/{completion-cli-C6CUvtmX.js → completion-cli-g-Vdnude.js} +2 -2
  40. package/dist/{config-1z3NlJzC.js → config-BAVNLbja.js} +1 -1
  41. package/dist/{config-CnQmFG2h.js → config-BkZ9HOKT.js} +1 -1
  42. package/dist/{config-XZ7orePK.js → config-DXt3pc08.js} +1 -1
  43. package/dist/{config-Cz_ObCzY.js → config-PXAJCHa5.js} +1 -1
  44. package/dist/{config-cli-CsqLGGPo.js → config-cli-CnFTSv-1.js} +3 -3
  45. package/dist/{config-cli-mWb-8dem.js → config-cli-CsCvDCZV.js} +3 -3
  46. package/dist/{config-guard-C7V44mcM.js → config-guard-CJ4iAPK5.js} +2 -2
  47. package/dist/{config-guard-NmACsPTr.js → config-guard-DsOhmFl6.js} +6 -6
  48. package/dist/{config-validation-Cp9cMMJA.js → config-validation-BvAfeukQ.js} +1 -1
  49. package/dist/{config-validation-DpNRQ6U4.js → config-validation-CY8IJG3b.js} +1 -1
  50. package/dist/{configure-C-0GLJbj.js → configure-BYd07Mo5.js} +10 -10
  51. package/dist/{configure-cN-Og45p.js → configure-CAuW3YmR.js} +10 -10
  52. package/dist/{control-service-CSbQSkSn.js → control-service-Ce4HMDRY.js} +4 -4
  53. package/dist/{control-service-Cqck1Zry.js → control-service-D0IdaeI8.js} +4 -4
  54. package/dist/control-ui/css/style.css +213 -6
  55. package/dist/control-ui/index.html +24 -2
  56. package/dist/control-ui/js/connections.js +193 -40
  57. package/dist/{cron-cli-CnWIltKL.js → cron-cli--z6DSGhk.js} +4 -4
  58. package/dist/{cron-cli-DLn4ynWB.js → cron-cli-DZJZ_EvY.js} +4 -4
  59. package/dist/{daemon-cli-DGXcyiDn.js → daemon-cli-B9yneKpO.js} +6 -6
  60. package/dist/{daemon-cli-BUO3va5K.js → daemon-cli-bwFAShzf.js} +6 -6
  61. package/dist/daemon-cli.js +3 -1
  62. package/dist/{daemon-runtime-BetFDUaM.js → daemon-runtime-BT1zC2PU.js} +1 -1
  63. package/dist/{daemon-runtime-CbbrW5g3.js → daemon-runtime-BV78EN62.js} +1 -1
  64. package/dist/{deliver-BLNOhQLM.js → deliver-B36OzmeP.js} +2 -2
  65. package/dist/{deliver-DFAium1x.js → deliver-BLt_liXS.js} +3 -3
  66. package/dist/{deliver-DGSxISab.js → deliver-CLZGlRZt.js} +2 -2
  67. package/dist/{deliver-Co2XquFO.js → deliver-lG9ITE8w.js} +3 -3
  68. package/dist/{devices-cli-BvMSzdXp.js → devices-cli-fVRpoa9z.js} +3 -3
  69. package/dist/{devices-cli-CCyr0lUw.js → devices-cli-oqibXYae.js} +3 -3
  70. package/dist/{directory-cli-JgFtCkve.js → directory-cli-CQ5O6Z5j.js} +2 -2
  71. package/dist/{directory-cli-CtA0O-ho.js → directory-cli-Ca5P3Bdg.js} +2 -2
  72. package/dist/{dns-cli-ClxFzTrN.js → dns-cli-7lxNoNVz.js} +2 -2
  73. package/dist/{dns-cli-XEIAfGBW.js → dns-cli-HQ5yjLoE.js} +2 -2
  74. package/dist/{docs-cli-BB4yLXGO.js → docs-cli-BOa4OKW4.js} +2 -2
  75. package/dist/{docs-cli-qE-blOLC.js → docs-cli-Dol0VaNr.js} +2 -2
  76. package/dist/{doctor-completion-9YerM5WQ.js → doctor-completion-Cqce5h2X.js} +1 -1
  77. package/dist/{doctor-completion-CctxaDOf.js → doctor-completion-Dqfl4aR1.js} +1 -1
  78. package/dist/{doctor-config-flow-C7EIHqIm.js → doctor-config-flow-C81j0-sE.js} +3 -3
  79. package/dist/{doctor-config-flow-COCO8sJB.js → doctor-config-flow-CN8seKLA.js} +3 -3
  80. package/dist/entry.js +1 -1
  81. package/dist/{exec-approvals-cli-SLQmCzAk.js → exec-approvals-cli-BpOqYXNL.js} +5 -5
  82. package/dist/{exec-approvals-cli-Be49SVlp.js → exec-approvals-cli-DjGZKQbZ.js} +5 -5
  83. package/dist/extensionAPI.js +16 -16
  84. package/dist/{gateway-cli-DFwW91fW.js → gateway-cli-BUqL_Yh6.js} +49 -48
  85. package/dist/{gateway-cli-EspQMxcD.js → gateway-cli-DA1fRZ5w.js} +50 -49
  86. package/dist/{gateway-rpc-D1Oid7kh.js → gateway-rpc-Bp0KNJtL.js} +1 -1
  87. package/dist/{gateway-rpc-BPldxGhH.js → gateway-rpc-XT8cFwtz.js} +1 -1
  88. package/dist/{glass-ui-ws-C9slRAdq.js → glass-ui-ws-BzBtCYP7.js} +39 -39
  89. package/dist/{glass-ui-ws-BCAruY1k.js → glass-ui-ws-Cm-WtdFI.js} +40 -40
  90. package/dist/{health-CUAawozd.js → health-Bx8UUqFA.js} +5 -5
  91. package/dist/{health-uSVTJefC.js → health-C7HtwYDj.js} +5 -5
  92. package/dist/{hooks-cli-NOol1x2D.js → hooks-cli-5G9JN39f.js} +29 -29
  93. package/dist/{hooks-cli-1hn9EEhc.js → hooks-cli-DtVT3wM_.js} +30 -30
  94. package/dist/{image-9tqGkUqf.js → image-BHhzdmbq.js} +2 -2
  95. package/dist/{image-Dopj30W7.js → image-BnO8X_hj.js} +2 -2
  96. package/dist/{image-DFxGwWA7.js → image-DXco5IYt.js} +2 -2
  97. package/dist/{image-Bd9ilPV9.js → image-D_qN_IxA.js} +2 -2
  98. package/dist/index.js +38 -38
  99. package/dist/{lifecycle-core-AeKXuI87.js → lifecycle-core-B9EgW7Tg.js} +2 -2
  100. package/dist/{lifecycle-core-Dpd8ty8k.js → lifecycle-core-JD8GNX_f.js} +2 -2
  101. package/dist/llm-slug-generator.js +16 -16
  102. package/dist/{login-CQTjtlgX.js → login-BgJLYdBR.js} +2 -2
  103. package/dist/{login-CPDAMiNc.js → login-CksRbu5D.js} +2 -2
  104. package/dist/{login-BKjGtdQb.js → login-DiorUpLk.js} +2 -2
  105. package/dist/{login-qr-BnV3nWaD.js → login-qr-B0SnFKfa.js} +3 -3
  106. package/dist/{login-qr-4Pmnupol.js → login-qr-BkwojQSe.js} +3 -3
  107. package/dist/{login-qr-Ca_QjL8s.js → login-qr-COIr6FGZ.js} +3 -3
  108. package/dist/{login-qr-BkqlPQja.js → login-qr-De_4jYaF.js} +3 -3
  109. package/dist/{login-KF21s52V.js → login-tgA4RM8O.js} +2 -2
  110. package/dist/{logs-cli-wAogU3fl.js → logs-cli-gU7p7zX0.js} +4 -4
  111. package/dist/{logs-cli-BLyCHsIE.js → logs-cli-tJPD_Dps.js} +4 -4
  112. package/dist/{manifest-registry-C4BxOMWX.js → manifest-registry-BDSRH8nU.js} +2 -1
  113. package/dist/{manifest-registry-yb7sAlu4.js → manifest-registry-CBCGTsIb.js} +2 -1
  114. package/dist/{manifest-registry-Czr39pxG.js → manifest-registry-D5bnO5uA.js} +2 -1
  115. package/dist/{manifest-registry-D-mTF1cj.js → manifest-registry-DWdYdchb.js} +2 -1
  116. package/dist/{memory-cli-MMLg1Ccf.js → memory-cli-AoMrHA5O.js} +1 -1
  117. package/dist/{memory-cli-CY3CHJS9.js → memory-cli-Bf2sefbp.js} +1 -1
  118. package/dist/{model-catalog-BkurhUo7.js → model-catalog-DKGSg6jF.js} +2 -2
  119. package/dist/{model-catalog-Bkny3qg9.js → model-catalog-Dex2EDUJ.js} +2 -2
  120. package/dist/{model-picker-CkXMb7R4.js → model-picker-D-n-rWyt.js} +2 -2
  121. package/dist/{model-picker-Bl_c2WTt.js → model-picker-RQfDGgfM.js} +2 -2
  122. package/dist/{models-CYqsDjad.js → models-DQthIpnz.js} +8 -8
  123. package/dist/{models-cli-CmU3OOJG.js → models-cli-D8zc0jSg.js} +32 -32
  124. package/dist/{models-cli-mOTgaVlj.js → models-cli-UaHeUaJq.js} +31 -31
  125. package/dist/{models-config-C7LKdahT.js → models-config-B91ShhoT.js} +1 -1
  126. package/dist/{models-config-CPAA0Wkr.js → models-config-J1x_DaPn.js} +1 -1
  127. package/dist/{node-cli-BJ1yRo3F.js → node-cli-jdFJpJym.js} +10 -10
  128. package/dist/{node-cli-dsjkpZpf.js → node-cli-jnHMAtfE.js} +10 -10
  129. package/dist/{nodes-cli-BxLO-rv5.js → nodes-cli-6vHqlpLI.js} +4 -4
  130. package/dist/{nodes-cli-D1Fz0Q2m.js → nodes-cli-DxHMNlWq.js} +4 -4
  131. package/dist/{onboard-Cf49_nCM.js → onboard-C1GtzpAc.js} +7 -7
  132. package/dist/{onboard-channels-CrQDcwVv.js → onboard-channels-CUUTFx1F.js} +3 -3
  133. package/dist/{onboard-channels-CIP2VRJ-.js → onboard-channels-HyGv2y5c.js} +3 -3
  134. package/dist/{onboard-custom-BVNvbjaX.js → onboard-custom-B1paBymW.js} +2 -2
  135. package/dist/{onboard-custom-MKL2uerp.js → onboard-custom-B3CBlZe5.js} +2 -2
  136. package/dist/{onboard-helpers-09M-gWu4.js → onboard-helpers-7H_XiJt-.js} +2 -2
  137. package/dist/{onboard-helpers-B1El5sBR.js → onboard-helpers-CPSKXD5k.js} +2 -2
  138. package/dist/{onboard-remote-DD3wt16B.js → onboard-remote-BlCdyTsP.js} +1 -1
  139. package/dist/{onboard-remote-C9Ftkn3-.js → onboard-remote-DFavRxQ6.js} +1 -1
  140. package/dist/{onboard-skills-kU_Yop1T.js → onboard-skills-CssuFDjw.js} +3 -3
  141. package/dist/{onboard-skills-dmWPtzui.js → onboard-skills-DVtfVPsB.js} +3 -3
  142. package/dist/{onboard-TK9M_DAs.js → onboard-sl1Xputw.js} +7 -7
  143. package/dist/{onboarding-BQUTtbxF.js → onboarding-B4qg0ZYp.js} +10 -10
  144. package/dist/{onboarding-CfG_bJab.js → onboarding-C89rTOOy.js} +10 -10
  145. package/dist/{onboarding.finalize-Dv8-c9UZ.js → onboarding.finalize-CGk4vov2.js} +36 -36
  146. package/dist/{onboarding.finalize-DycOefUd.js → onboarding.finalize-ClJ1HBVt.js} +34 -34
  147. package/dist/{onboarding.gateway-config-LqxG8IjE.js → onboarding.gateway-config-TM8ERKyn.js} +5 -5
  148. package/dist/{onboarding.gateway-config-dLlNI0HQ.js → onboarding.gateway-config-vGTQDqA6.js} +5 -5
  149. package/dist/{outbound-DHoZh3-b.js → outbound-CX-uuDet.js} +1 -1
  150. package/dist/{outbound-BdTCdEPw.js → outbound-Ct6vGE68.js} +1 -1
  151. package/dist/{outbound-neBb4qTL.js → outbound-D6GeeR8F.js} +1 -1
  152. package/dist/{outbound-BfHd69Dr.js → outbound-XakUc977.js} +1 -1
  153. package/dist/{pairing-cli-DOtEC7pl.js → pairing-cli-C8KSZlA7.js} +2 -2
  154. package/dist/{pairing-cli-CG57JnkE.js → pairing-cli-DmISXPhp.js} +2 -2
  155. package/dist/{pi-embedded-lpIsgmb9.js → pi-embedded-BaNpG0Aq.js} +60 -36
  156. package/dist/{pi-embedded-helpers-Bhi5wJBG.js → pi-embedded-helpers-BET359cH.js} +6 -6
  157. package/dist/{pi-embedded-helpers-DaWb-3Gv.js → pi-embedded-helpers-DSscUmkR.js} +1 -1
  158. package/dist/{pi-embedded-helpers-CU7jP5wD.js → pi-embedded-helpers-DcN8GHTt.js} +6 -6
  159. package/dist/{pi-embedded-helpers-BqeG6ogg.js → pi-embedded-helpers-DpOccVre.js} +1 -1
  160. package/dist/{pi-tools.policy-DN0wUEFa.js → pi-tools.policy-BpN-v9bT.js} +2 -2
  161. package/dist/{pi-tools.policy-jD4uEUBo.js → pi-tools.policy-DOVQ8dDx.js} +2 -2
  162. package/dist/{plugin-auto-enable-Dcki5Acl.js → plugin-auto-enable-BsGorrCZ.js} +1 -1
  163. package/dist/{plugin-auto-enable-hvfjAaew.js → plugin-auto-enable-BvmQklg-.js} +1 -1
  164. package/dist/{plugin-registry-BtHWHT4p.js → plugin-registry-7MeuYUTG.js} +2 -2
  165. package/dist/{plugin-registry-1jm5tMNl.js → plugin-registry-Dx8MaVaX.js} +2 -2
  166. package/dist/plugin-sdk/{accounts-BtaOa4z_.js → accounts-BToL3HlP.js} +1 -1
  167. package/dist/plugin-sdk/{accounts-Ddm33hQm.js → accounts-D9zGZU5t.js} +3 -3
  168. package/dist/plugin-sdk/{accounts-s-AdhXVR.js → accounts-Dtszw3Zn.js} +1 -1
  169. package/dist/plugin-sdk/{active-listener-BgwYQkdI.js → active-listener-BRYwA2Ic.js} +1 -1
  170. package/dist/plugin-sdk/{agent-scope-CYYpcO9W.js → agent-scope-C3gMMKCU.js} +2 -2
  171. package/dist/plugin-sdk/agents/pi-embedded-runner/email-capability-prompt.d.ts +11 -0
  172. package/dist/plugin-sdk/{api-key-rotation-DGJZ8SVa.js → api-key-rotation-CBsLb_4V.js} +1 -1
  173. package/dist/plugin-sdk/{audio-preflight-BG_wJSnx.js → audio-preflight-B-Laxbmb.js} +24 -24
  174. package/dist/plugin-sdk/{bindings-C7hRtgYW.js → bindings-BbwoUGPx.js} +2 -2
  175. package/dist/plugin-sdk/{channel-activity-DoC1xtDu.js → channel-activity-Ji7f0gqq.js} +1 -1
  176. package/dist/plugin-sdk/{channel-web-D8iVDOP9.js → channel-web-C6_r-2VI.js} +22 -22
  177. package/dist/plugin-sdk/{chrome-D5HOVhVd.js → chrome-D9kN9org.js} +3 -3
  178. package/dist/plugin-sdk/{chunk-Dw2XBYXv.js → chunk-jvk9axTQ.js} +1 -1
  179. package/dist/plugin-sdk/{command-format-GKSevep4.js → command-format-DSdvQ_M5.js} +1 -1
  180. package/dist/plugin-sdk/{commands-registry-Be2qTyJK.js → commands-registry-By2smfUF.js} +4 -4
  181. package/dist/plugin-sdk/{config-B0RNG4KH.js → config-BzupW6LN.js} +9 -9
  182. package/dist/plugin-sdk/{deliver-BgipoVt6.js → deliver-CNuL0O4P.js} +10 -10
  183. package/dist/plugin-sdk/{diagnostic-W5975qL9.js → diagnostic-EyuCSUXO.js} +1 -1
  184. package/dist/plugin-sdk/{image-F536ZrNo.js → image-BmU8yYnz.js} +4 -4
  185. package/dist/plugin-sdk/{image-ops-BlQR__MN.js → image-ops-Bnp6LXEx.js} +1 -1
  186. package/dist/plugin-sdk/index.js +54 -54
  187. package/dist/plugin-sdk/{ir-BJ6BHE5b.js → ir-Fb3qpcis.js} +4 -4
  188. package/dist/plugin-sdk/{local-roots-BHLNSI8U.js → local-roots-Ckk1QfzI.js} +3 -3
  189. package/dist/plugin-sdk/{login-zRvF566v.js → login-eqtXmx21.js} +7 -7
  190. package/dist/plugin-sdk/{login-qr-DnVmgDSL.js → login-qr-Cbt9KlK3.js} +9 -9
  191. package/dist/plugin-sdk/{manager-UQQc8UDq.js → manager-Dc9yVyTt.js} +8 -8
  192. package/dist/plugin-sdk/{manifest-registry-CPnHl_K3.js → manifest-registry-hy3Bn-r9.js} +3 -2
  193. package/dist/plugin-sdk/{markdown-tables-BoYFajMu.js → markdown-tables-Dfaqilz6.js} +1 -1
  194. package/dist/plugin-sdk/{message-channel-COTAJzHd.js → message-channel-BdI5Ra9S.js} +1 -1
  195. package/dist/plugin-sdk/{model-selection-Bbs4XGPG.js → model-selection-CtVwtb6y.js} +4 -4
  196. package/dist/plugin-sdk/{outbound-ComvEv1j.js → outbound-ZcDVYNoy.js} +7 -7
  197. package/dist/plugin-sdk/{outbound-attachment-CqhMcNuS.js → outbound-attachment-DJ3CI92h.js} +2 -2
  198. package/dist/plugin-sdk/{pi-auth-json-B_aZna6j.js → pi-auth-json-r2U9wDoc.js} +1 -1
  199. package/dist/plugin-sdk/{pi-embedded-helpers-C-iQL8fR.js → pi-embedded-helpers-BCNFLt_H.js} +17 -17
  200. package/dist/plugin-sdk/{plugins-BNByVCIH.js → plugins-BbAvhC25.js} +4 -4
  201. package/dist/plugin-sdk/{pw-ai-oafsM7Z6.js → pw-ai-B3jHOSti.js} +8 -8
  202. package/dist/plugin-sdk/{qmd-manager-BZvD_Hd3.js → qmd-manager-C6GM0Qik.js} +4 -4
  203. package/dist/plugin-sdk/{registry-D0xTnUWt.js → registry--_pGht6S.js} +2 -2
  204. package/dist/plugin-sdk/{replies-Df8hdWHU.js → replies-DkGqfiO4.js} +3 -3
  205. package/dist/plugin-sdk/{reply-BSU5u23A.js → reply-CIDYJYie.js} +105 -81
  206. package/dist/plugin-sdk/{reply-prefix-uxfMZW4p.js → reply-prefix-BHuV5t70.js} +1 -1
  207. package/dist/plugin-sdk/{resolve-outbound-target-BiyAyTWz.js → resolve-outbound-target-BkCUbYGV.js} +2 -2
  208. package/dist/plugin-sdk/{resolve-route-B3CCBumQ.js → resolve-route-D3JH_D2N.js} +3 -3
  209. package/dist/plugin-sdk/{retry-CwQ_iIj8.js → retry-ilSJqnz9.js} +1 -1
  210. package/dist/plugin-sdk/{runner-BlEQTSlO.js → runner-WzrwRCvL.js} +9 -9
  211. package/dist/plugin-sdk/{send-DjUL-5e8.js → send-7NqCWP0r.js} +7 -7
  212. package/dist/plugin-sdk/{send-NmhuhIk0.js → send-BGE1fXlm.js} +6 -6
  213. package/dist/plugin-sdk/{send-DSaRu7CO.js → send-BP5pSPaZ.js} +6 -6
  214. package/dist/plugin-sdk/{send-BGYE1Ojf.js → send-FFUmNt0K.js} +10 -10
  215. package/dist/plugin-sdk/{send-4CJD3HN9.js → send-ZhAe1nXO.js} +10 -10
  216. package/dist/plugin-sdk/{session-CrxOeAtT.js → session-8vfTL_H6.js} +4 -4
  217. package/dist/plugin-sdk/{skill-commands-DSDv-F1f.js → skill-commands-DF3ouLEu.js} +5 -5
  218. package/dist/plugin-sdk/{skills-_yTP47Cd.js → skills-C9DbB-Kp.js} +7 -7
  219. package/dist/plugin-sdk/{sqlite-CxAR5ttJ.js → sqlite-Cq_7Cg4E.js} +1 -1
  220. package/dist/plugin-sdk/{store-BdrNabcU.js → store-Do3t33-c.js} +2 -2
  221. package/dist/plugin-sdk/{subsystem-B2uDN3TV.js → subsystem-Coz2AgU8.js} +1 -1
  222. package/dist/plugin-sdk/{tables-DNwXwNFa.js → tables-DR0NmBeH.js} +1 -1
  223. package/dist/plugin-sdk/{target-errors-Paro1BjP.js → target-errors-B7YyMnIi.js} +2 -2
  224. package/dist/plugin-sdk/{thinking-CXqf7WTe.js → thinking-DCNUIAHY.js} +5 -5
  225. package/dist/plugin-sdk/{tokens-bC3UVmVH.js → tokens-CWMflosr.js} +1 -1
  226. package/dist/plugin-sdk/{tool-images-HJ2sfZDV.js → tool-images-D7Lno-TE.js} +2 -2
  227. package/dist/plugin-sdk/{tool-loop-detection-Dthxc7SC.js → tool-loop-detection-BAUvBvAO.js} +2 -2
  228. package/dist/plugin-sdk/web-CHKraWl6.js +66 -0
  229. package/dist/plugin-sdk/{whatsapp-actions-C_Yw2LhH.js → whatsapp-actions-0DfquiaD.js} +21 -21
  230. package/dist/{plugins-cli-uIEn-Rls.js → plugins-cli-bblxpPhT.js} +31 -31
  231. package/dist/{plugins-cli-DZAESODm.js → plugins-cli-oatWFlGr.js} +30 -30
  232. package/dist/{program-BDFBNGBK.js → program-B4MbPh6k.js} +37 -37
  233. package/dist/{program-context-CIIYbXwz.js → program-context-BfdA1JM9.js} +39 -39
  234. package/dist/{prompt-select-styled-Drqp3Q79.js → prompt-select-styled-DNhjvdZL.js} +15 -15
  235. package/dist/{prompt-select-styled-C5haNrfL.js → prompt-select-styled-bMJTZkj7.js} +15 -15
  236. package/dist/{provider-auth-helpers-rSnpzVFU.js → provider-auth-helpers-CezJXPrZ.js} +2 -2
  237. package/dist/{provider-auth-helpers-C90hxnuP.js → provider-auth-helpers-D9BOiQMP.js} +2 -2
  238. package/dist/{push-apns-DhAfcmF5.js → push-apns-CL2MBhWP.js} +1 -1
  239. package/dist/{push-apns-ze6w0evQ.js → push-apns-DUWtWoB-.js} +1 -1
  240. package/dist/{pw-ai-ePWNGOSp.js → pw-ai-B476LzSK.js} +3 -3
  241. package/dist/{pw-ai-seGb-ko0.js → pw-ai-DE8wmtet.js} +3 -3
  242. package/dist/{pw-ai-BeOKbmWW.js → pw-ai-Df3SCnGC.js} +3 -3
  243. package/dist/{pw-ai-P5lOraHd.js → pw-ai-VRkM0Qt0.js} +3 -3
  244. package/dist/{qr-cli-BIl334kM.js → qr-cli-Bgejiz98.js} +2 -2
  245. package/dist/{qr-cli-CGO65wLz.js → qr-cli-D_7jTOhP.js} +2 -2
  246. package/dist/{register.agent-Bpm5Fh13.js → register.agent-B-v1ixge.js} +39 -39
  247. package/dist/{register.agent-BirwyJVS.js → register.agent-Dms0oymW.js} +37 -37
  248. package/dist/{register.configure-BQet1kco.js → register.configure-CVct6y53.js} +44 -44
  249. package/dist/{register.configure-C5UDp3N5.js → register.configure-MY0P8ucP.js} +43 -43
  250. package/dist/{register.maintenance-DYkT5jnV.js → register.maintenance-Ciblsa6H.js} +40 -40
  251. package/dist/{register.maintenance-UfVK3mjx.js → register.maintenance-DpSSW9tp.js} +42 -42
  252. package/dist/{register.message-CKq6NCSm.js → register.message-Csn-WBH0.js} +30 -30
  253. package/dist/{register.message-C3SzLAgk.js → register.message-FsBEsQeD.js} +29 -29
  254. package/dist/{register.onboard-B9a9EHLC.js → register.onboard-BQ-ciW9l.js} +36 -36
  255. package/dist/{register.onboard-D9Cm7LZb.js → register.onboard-MIhaldvp.js} +35 -35
  256. package/dist/{register.setup-ybjh7_q_.js → register.setup-DCTamI7u.js} +35 -35
  257. package/dist/{register.setup-ycd7a2ur.js → register.setup-M0O0Tp-n.js} +36 -36
  258. package/dist/{register.status-health-sessions-2QNhX3pX.js → register.status-health-sessions-Drc5WQGq.js} +33 -33
  259. package/dist/{register.status-health-sessions-BryhDGnZ.js → register.status-health-sessions-DzKtjfA-.js} +35 -35
  260. package/dist/{register.subclis-Dxm9Un5O.js → register.subclis-Btg8-Nnf.js} +29 -29
  261. package/dist/{replies-DFjjnJ3D.js → replies-BVeiOxGr.js} +1 -1
  262. package/dist/{replies-B-xLfipR.js → replies-BWgZR_w5.js} +1 -1
  263. package/dist/{replies-j1a_GMFx.js → replies-CNJXJgMU.js} +1 -1
  264. package/dist/{replies-BQj0lY4W.js → replies-CsUBFXf6.js} +1 -1
  265. package/dist/{reply-WdyooxLc.js → reply-B0azB7WR.js} +70 -47
  266. package/dist/{routes-CRgMkkG0.js → routes-2b4mQUhe.js} +3 -3
  267. package/dist/{routes-K5Fj1g7Q.js → routes-C8PNEZ8b.js} +3 -3
  268. package/dist/{rpc-BWtktGFm.js → rpc-CHb_JvbM.js} +1 -1
  269. package/dist/{rpc-P3TWbEaf.js → rpc-Cog-Z1rx.js} +1 -1
  270. package/dist/{run-main-CijnQAcO.js → run-main-DfxDXt2d.js} +49 -49
  271. package/dist/{runner-ef6nFMvq.js → runner-BVgCl6yZ.js} +2 -2
  272. package/dist/{runner-DOVS95oz.js → runner-CSdQSvE8.js} +3 -3
  273. package/dist/{runner-B59C4Wdw.js → runner-C_BlQ2fG.js} +3 -3
  274. package/dist/{runner-B97ZHSOs.js → runner-D5nFF9E6.js} +2 -2
  275. package/dist/{sandbox-LreyCjoX.js → sandbox-BOVopTqv.js} +6 -6
  276. package/dist/{sandbox-DiPHRUDK.js → sandbox-CDxHBl3I.js} +6 -6
  277. package/dist/{sandbox-cli-Cb7iGM1l.js → sandbox-cli-0eu7BCa8.js} +8 -8
  278. package/dist/{sandbox-cli-B7p0Hp3r.js → sandbox-cli-BpfYaZBG.js} +8 -8
  279. package/dist/{security-cli-DqVGrNy5.js → security-cli-B5s73Le2.js} +11 -11
  280. package/dist/{security-cli-DALRwIjj.js → security-cli-CzWHkrqD.js} +11 -11
  281. package/dist/{send-DAbxpmwe.js → send-AbhXOS2H.js} +1 -1
  282. package/dist/{send-Dc09jNH2.js → send-B7aHpAco.js} +1 -1
  283. package/dist/{send-cpH_yqHj.js → send-B9_a63ZG.js} +1 -1
  284. package/dist/{send-B3j7hxxO.js → send-BKhluIbb.js} +1 -1
  285. package/dist/{send-brznOT92.js → send-BahPjsMR.js} +1 -1
  286. package/dist/{send-Co9egPXG.js → send-BcvVKfh2.js} +1 -1
  287. package/dist/{send-CkIwAjAB.js → send-BuJyyJe7.js} +1 -1
  288. package/dist/{send-BhKkBArw.js → send-C0K_2AUP.js} +1 -1
  289. package/dist/{send-CXuAFSJP.js → send-CBcCKe5w.js} +1 -1
  290. package/dist/{send-CuuFC05i.js → send-CCmxHtaA.js} +1 -1
  291. package/dist/{send-DlsuAlpS.js → send-CaUqpyyp.js} +1 -1
  292. package/dist/{send-EHiP2shE.js → send-D8AIYNR_.js} +1 -1
  293. package/dist/{send-Djb958bI.js → send-DFftzTHo.js} +1 -1
  294. package/dist/{send-BZZ4_x4c.js → send-Dmb0z8Yy.js} +1 -1
  295. package/dist/{send-C2rS0q26.js → send-DnsTDCll.js} +1 -1
  296. package/dist/{send-BMoIcGXM.js → send-H2g9Eaud.js} +1 -1
  297. package/dist/{send-CmP1lu-b.js → send-Yzy50T1h.js} +1 -1
  298. package/dist/{send-cM1DDAnI.js → send-pFcMiyew.js} +1 -1
  299. package/dist/{send-BlSnzj96.js → send-vqwluhp3.js} +1 -1
  300. package/dist/{send-Dkhr43v-.js → send-xTfsDEE2.js} +1 -1
  301. package/dist/{server-context-B4j3P5K6.js → server-context-BBaojT7U.js} +5 -5
  302. package/dist/{server-context-2Vn21Z8T.js → server-context-C2gfYdh8.js} +5 -5
  303. package/dist/{server-methods-Db4Zr1Uh.js → server-methods-BcBroG6v.js} +118 -20
  304. package/dist/{server-methods-DcQq8SQr.js → server-methods-OJbQNjOJ.js} +119 -21
  305. package/dist/{server-node-events-C_v8BnlG.js → server-node-events-AVxH5dXs.js} +29 -29
  306. package/dist/{server-node-events-CaL-a5Ml.js → server-node-events-Ba9K9DB9.js} +30 -30
  307. package/dist/{session-C33JrUuB.js → session-BGKShBIy.js} +1 -1
  308. package/dist/{session-DLof5lJz.js → session-BTLA3Rm7.js} +1 -1
  309. package/dist/{session-L_LqHxcV.js → session-BuAvI2u-.js} +1 -1
  310. package/dist/{session-BddH7QoH.js → session-tLyG4haq.js} +1 -1
  311. package/dist/{session-utils-Ch5rIQbz.js → session-utils-BPXkhuNM.js} +3 -3
  312. package/dist/{sessions-oOAi4H3s.js → sessions-BPD85pWA.js} +1 -1
  313. package/dist/{sessions-C8h-0oVK.js → sessions-BeYHj0gr.js} +1 -1
  314. package/dist/{sessions-RfQP0zIn.js → sessions-NTd36-CO.js} +3 -3
  315. package/dist/{shared-CF9jxSQs.js → shared-D8j919CK.js} +1 -1
  316. package/dist/{shared-DxlCJeK_.js → shared-DdGOSL9s.js} +1 -1
  317. package/dist/{skill-commands-CIkcmGzD.js → skill-commands-BMu-U3SX.js} +1 -1
  318. package/dist/{skill-commands-BVeV_mpq.js → skill-commands-BSJONVkt.js} +1 -1
  319. package/dist/{skill-commands-Cg_ajTBC.js → skill-commands-CkqZdod4.js} +1 -1
  320. package/dist/{skill-commands-eaynYuR6.js → skill-commands-D1hG6Ikz.js} +1 -1
  321. package/dist/{skills-6jdJQ5ZL.js → skills-BG8FpqDp.js} +1 -1
  322. package/dist/{skills-Bs0AW1g3.js → skills-CXxrn_e2.js} +1 -1
  323. package/dist/{skills-hAdgFdrv.js → skills-D_oCiaQn.js} +1 -1
  324. package/dist/{skills-BNpGMnp-.js → skills-XEbTRNYL.js} +1 -1
  325. package/dist/{skills-cli-o6AfvfLb.js → skills-cli-BIURlIkS.js} +6 -6
  326. package/dist/{skills-cli-Cf7sLA5e.js → skills-cli-DBDVQeo4.js} +6 -6
  327. package/dist/{skills-install-CWVdJkLn.js → skills-install-D8JjjETa.js} +1 -1
  328. package/dist/{skills-install-1ZdwGTnh.js → skills-install-Por3jP0P.js} +1 -1
  329. package/dist/{skills-status-C3ptXwnh.js → skills-status-CKmK1hOo.js} +1 -1
  330. package/dist/{skills-status-DKXJ-tbi.js → skills-status-DODCG6UU.js} +1 -1
  331. package/dist/{status-BSd4QQZY.js → status-CpWkGj5h.js} +2 -2
  332. package/dist/{status-BddhZm3Y.js → status-DNxAYvxM.js} +2 -2
  333. package/dist/{status-B17aJsTi.js → status-RlJA2XzQ.js} +11 -11
  334. package/dist/{status-DALZR6Rh.js → status-Ut-dfDT0.js} +12 -12
  335. package/dist/{status.update-DEn_vM2K.js → status.update-BGSQrlxW.js} +1 -1
  336. package/dist/{status.update-DFx1sm1w.js → status.update-C1I_7XIo.js} +1 -1
  337. package/dist/{subagent-registry-DLyi3sgU.js → subagent-registry-CsYeP8wc.js} +71 -48
  338. package/dist/{system-cli-DjQq8evF.js → system-cli-D3CVv1ab.js} +4 -4
  339. package/dist/{system-cli-BfQs2bCu.js → system-cli-rpyy5jcw.js} +4 -4
  340. package/dist/{systemd-hints-CitUdPEJ.js → systemd-hints-BWjICrbb.js} +1 -1
  341. package/dist/{systemd-hints-nyPn6fDv.js → systemd-hints-G9M4s_fF.js} +1 -1
  342. package/dist/{tui-D1JLyFne.js → tui-DfPeXwah.js} +4 -4
  343. package/dist/{tui-D1DDOQ5b.js → tui-LZPdrFmK.js} +4 -4
  344. package/dist/{tui-cli-9g2Fi07C.js → tui-cli-Bm3TJgXf.js} +11 -11
  345. package/dist/{tui-cli-D9jJkoxe.js → tui-cli-DFXZ7r1F.js} +11 -11
  346. package/dist/{unified-runner-Dxj9fcQO.js → unified-runner-BojeuKIk.js} +60 -36
  347. package/dist/{update-DEMKx4eC.js → update-BWwyHVQj.js} +1 -1
  348. package/dist/{update-Ya0e-JnM.js → update-DdQCEAVD.js} +1 -1
  349. package/dist/{update-cli-C0D0gizK.js → update-cli-Cb12PjyN.js} +44 -44
  350. package/dist/{update-cli-CqLTiVU8.js → update-cli-Cm4ftHhu.js} +46 -46
  351. package/dist/{update-runner-DnEVHl6G.js → update-runner-BE6kDMsw.js} +1 -1
  352. package/dist/{update-runner-DRxTynZP.js → update-runner-Cv6hDgKV.js} +1 -1
  353. package/dist/{web-1apyUJY6.js → web-BOv3xM7W.js} +32 -32
  354. package/dist/{web-BTM-eHmT.js → web-CYf5I3aU.js} +32 -32
  355. package/dist/{web-DRQN-o-U.js → web-Dxkxcp7P.js} +19 -19
  356. package/dist/{web-CpLsElI8.js → web-f1xT-H2y.js} +19 -19
  357. package/dist/{webhooks-cli-CVYW5w5y.js → webhooks-cli-UuxPLc9l.js} +3 -3
  358. package/dist/{webhooks-cli-Bgc_FCJP.js → webhooks-cli-YK0wXLCn.js} +3 -3
  359. package/dist/{whatsapp-actions-BWd0ZXyg.js → whatsapp-actions-3wS2mDjT.js} +3 -3
  360. package/dist/{whatsapp-actions-doS0R248.js → whatsapp-actions-CiXMwRR8.js} +3 -3
  361. package/dist/{whatsapp-actions-BA9n6KQd.js → whatsapp-actions-DyfuVva4.js} +3 -3
  362. package/dist/{whatsapp-actions-DqA8SCfH.js → whatsapp-actions-qetg6Gkh.js} +3 -3
  363. package/dist/{with-timeout-Cei98OCY.js → with-timeout-BIXdW2Bg.js} +1 -1
  364. package/dist/{with-timeout-DLKss9E3.js → with-timeout-emS7y-kf.js} +1 -1
  365. package/docs/connections/email.md +143 -0
  366. package/docs/connections/msteams.md +80 -0
  367. package/docs/connections/slack.md +91 -0
  368. package/extensions/bluebubbles/package.json +1 -1
  369. package/extensions/copilot-proxy/package.json +1 -1
  370. package/extensions/diagnostics-otel/package.json +1 -1
  371. package/extensions/discord/package.json +1 -1
  372. package/extensions/feishu/package.json +1 -1
  373. package/extensions/google-antigravity-auth/package.json +1 -1
  374. package/extensions/google-gemini-cli-auth/package.json +1 -1
  375. package/extensions/googlechat/package.json +1 -1
  376. package/extensions/imessage/package.json +1 -1
  377. package/extensions/irc/package.json +1 -1
  378. package/extensions/learning-loop/package.json +1 -1
  379. package/extensions/line/package.json +1 -1
  380. package/extensions/llm-task/package.json +1 -1
  381. package/extensions/matrix/CHANGELOG.md +12 -0
  382. package/extensions/matrix/package.json +1 -1
  383. package/extensions/mattermost/package.json +1 -1
  384. package/extensions/memory-core/package.json +1 -1
  385. package/extensions/memory-lancedb/package.json +1 -1
  386. package/extensions/minimax-portal-auth/package.json +1 -1
  387. package/extensions/msteams/CHANGELOG.md +12 -0
  388. package/extensions/msteams/package.json +1 -1
  389. package/extensions/nextcloud-talk/package.json +1 -1
  390. package/extensions/nostr/CHANGELOG.md +12 -0
  391. package/extensions/nostr/package.json +1 -1
  392. package/extensions/open-prose/package.json +1 -1
  393. package/extensions/outlook/package.json +1 -1
  394. package/extensions/pipeline/package.json +1 -1
  395. package/extensions/signal/package.json +1 -1
  396. package/extensions/slack/package.json +1 -1
  397. package/extensions/telegram/package.json +1 -1
  398. package/extensions/tlon/package.json +1 -1
  399. package/extensions/twitch/CHANGELOG.md +12 -0
  400. package/extensions/twitch/package.json +1 -1
  401. package/extensions/voice-call/CHANGELOG.md +12 -0
  402. package/extensions/voice-call/package.json +1 -1
  403. package/extensions/whatsapp/package.json +1 -1
  404. package/extensions/zalo/CHANGELOG.md +12 -0
  405. package/extensions/zalo/package.json +1 -1
  406. package/extensions/zalouser/CHANGELOG.md +12 -0
  407. package/extensions/zalouser/package.json +1 -1
  408. package/package.json +1 -1
  409. package/skills/connect-email/SKILL.md +141 -0
  410. package/dist/plugin-sdk/web-C9dYYAlm.js +0 -66
@@ -1,38 +1,38 @@
1
1
  import { u as resolveGatewayPort } from "./paths-Cqn-zk3M.js";
2
2
  import { B as theme, k as info, z as isRich } from "./utils-B-0b9bGM.js";
3
- import { B as summarizeRestartSentinel, Jt as sha256HexPrefix, _t as formatUsageReportLines, a as buildChannelSummary, gt as loadProviderUsageSummary, h as listAgentsForGateway, m as classifySessionKey, o as buildChannelAccountSnapshot, pr as lookupContextTokens, s as formatChannelAllowFrom, wr as peekSystemEvents, x as resolveSessionModelRef, z as readRestartSentinel } from "./reply-WdyooxLc.js";
3
+ import { B as summarizeRestartSentinel, Jt as sha256HexPrefix, _t as formatUsageReportLines, a as buildChannelSummary, gt as loadProviderUsageSummary, h as listAgentsForGateway, m as classifySessionKey, o as buildChannelAccountSnapshot, pr as lookupContextTokens, s as formatChannelAllowFrom, wr as peekSystemEvents, x as resolveSessionModelRef, z as readRestartSentinel } from "./reply-B0azB7WR.js";
4
4
  import { S as parseAgentSessionKey } from "./session-key-DCt45XZa.js";
5
5
  import { t as resolveSymiPackageRoot } from "./symi-root-CrGJbkzf.js";
6
6
  import { n as runExec } from "./exec-CWkblSrI.js";
7
7
  import { c as resolveAgentWorkspaceDir } from "./agent-scope-CgUHAtCo.js";
8
8
  import { Gt as DEFAULT_MODEL, Kt as DEFAULT_PROVIDER, Wt as DEFAULT_CONTEXT_TOKENS, p as resolveConfiguredModelRef } from "./model-selection-C-eIBa0H.js";
9
9
  import { t as formatCliCommand } from "./command-format-COaS-S7B.js";
10
- import { H as VERSION, i as loadConfig, o as readConfigFileSnapshot } from "./config-Cz_ObCzY.js";
10
+ import { H as VERSION, i as loadConfig, o as readConfigFileSnapshot } from "./config-PXAJCHa5.js";
11
11
  import { o as getTailnetHostname, s as readTailscaleStatusJson } from "./tailscale-D5dKabOc.js";
12
12
  import { a as inspectPortUsage, s as formatPortDiagnostics } from "./ports-BOmtxoTv.js";
13
- import { H as resolveMainSessionKey, R as resolveFreshSessionTotalTokens, o as loadSessionStore } from "./sessions-C8h-0oVK.js";
13
+ import { H as resolveMainSessionKey, R as resolveFreshSessionTotalTokens, o as loadSessionStore } from "./sessions-BeYHj0gr.js";
14
14
  import { n as listChannelPlugins } from "./plugins-DKDeQZF0.js";
15
15
  import { c as resolveStorePath } from "./paths-CyhzMxFA.js";
16
- import { r as getMemorySearchManager } from "./memory-cli-MMLg1Ccf.js";
17
- import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-CtiVeyeQ.js";
16
+ import { r as getMemorySearchManager } from "./memory-cli-AoMrHA5O.js";
17
+ import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-CVqBgwrx.js";
18
18
  import { n as formatTimeAgo } from "./format-relative-BXoxEQVN.js";
19
19
  import { n as withProgress } from "./progress-jIePzvGA.js";
20
20
  import { r as formatDurationPrecise } from "./format-duration-D0B0Uo-I.js";
21
- import { o as getRemoteSkillEligibility } from "./skill-commands-CIkcmGzD.js";
22
- import { C as normalizeControlUiBasePath, g as resolveControlUiLinks } from "./onboard-helpers-B1El5sBR.js";
23
- import { t as buildWorkspaceSkillStatus } from "./skills-status-C3ptXwnh.js";
21
+ import { o as getRemoteSkillEligibility } from "./skill-commands-BMu-U3SX.js";
22
+ import { C as normalizeControlUiBasePath, g as resolveControlUiLinks } from "./onboard-helpers-CPSKXD5k.js";
23
+ import { t as buildWorkspaceSkillStatus } from "./skills-status-CKmK1hOo.js";
24
24
  import { t as resolveChannelDefaultAccountId } from "./helpers-DnjQ73f_.js";
25
25
  import { t as collectChannelStatusIssues } from "./channels-status-issues-CJ0Vb_9z.js";
26
26
  import { s as resolveGatewayLogPaths, t as resolveGatewayService } from "./service-osK70kTZ.js";
27
27
  import { t as formatRuntimeStatusWithDetails } from "./runtime-status-D6c3G7my.js";
28
28
  import { t as readLastGatewayErrorLine } from "./diagnostics-BRwihzJG.js";
29
29
  import { t as renderTable } from "./table-BKlH0YlA.js";
30
- import { a as resolveGatewayProbeAuth$1, c as probeGateway, t as runSecurityAudit } from "./audit-DD5qcj2W.js";
31
- import { a as resolveHeartbeatSummaryForAgent, t as formatHealthChannelLines } from "./health-CUAawozd.js";
30
+ import { a as resolveGatewayProbeAuth$1, c as probeGateway, t as runSecurityAudit } from "./audit-DVUHZrf4.js";
31
+ import { a as resolveHeartbeatSummaryForAgent, t as formatHealthChannelLines } from "./health-Bx8UUqFA.js";
32
32
  import { g as resolveUpdateChannelDisplay, i as formatGitInstallLabel, m as normalizeUpdateChannel, t as checkUpdateStatus } from "./update-check-7EzEjSzb.js";
33
33
  import { t as resolveNodeService } from "./node-service-CD47Qpf1.js";
34
34
  import { n as redactSecrets, t as formatGatewayAuthUsed } from "./format-B0yJsjEo.js";
35
- import { i as resolveUpdateAvailability, n as formatUpdateOneLiner, r as getUpdateCheckResult, t as formatUpdateAvailableHint } from "./status.update-DFx1sm1w.js";
35
+ import { i as resolveUpdateAvailability, n as formatUpdateOneLiner, r as getUpdateCheckResult, t as formatUpdateAvailableHint } from "./status.update-C1I_7XIo.js";
36
36
  import fs from "node:fs";
37
37
  import os from "node:os";
38
38
  import path from "node:path";
@@ -6,34 +6,34 @@ import { S as parseAgentSessionKey } from "./session-key-DjZ7Z1hW.js";
6
6
  import { t as resolveSymiPackageRoot } from "./symi-root-BNuQ4lAT.js";
7
7
  import { n as runExec } from "./exec-CBKBIMpA.js";
8
8
  import { c as resolveAgentWorkspaceDir } from "./agent-scope-D-jRCY0d.js";
9
- import { t as buildWorkspaceSkillStatus } from "./skills-status-DKXJ-tbi.js";
10
- import { H as VERSION, i as loadConfig, o as readConfigFileSnapshot } from "./config-XZ7orePK.js";
11
- import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-ple9aZCT.js";
12
- import { En as peekSystemEvents, St as summarizeRestartSentinel, cn as buildChannelAccountSnapshot, in as formatUsageReportLines, ln as formatChannelAllowFrom, nt as sha256HexPrefix, rn as loadProviderUsageSummary, sn as buildChannelSummary, xt as readRestartSentinel } from "./subagent-registry-DLyi3sgU.js";
13
- import { F as resolveMainSessionKey, j as resolveFreshSessionTotalTokens, o as loadSessionStore } from "./sessions-oOAi4H3s.js";
9
+ import { t as buildWorkspaceSkillStatus } from "./skills-status-DODCG6UU.js";
10
+ import { H as VERSION, i as loadConfig, o as readConfigFileSnapshot } from "./config-DXt3pc08.js";
11
+ import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-BrRWr7Lj.js";
12
+ import { En as peekSystemEvents, St as summarizeRestartSentinel, cn as buildChannelAccountSnapshot, in as formatUsageReportLines, ln as formatChannelAllowFrom, nt as sha256HexPrefix, rn as loadProviderUsageSummary, sn as buildChannelSummary, xt as readRestartSentinel } from "./subagent-registry-CsYeP8wc.js";
13
+ import { F as resolveMainSessionKey, j as resolveFreshSessionTotalTokens, o as loadSessionStore } from "./sessions-BPD85pWA.js";
14
14
  import { n as listChannelPlugins } from "./plugins-CwSlLxM8.js";
15
15
  import { o as getTailnetHostname, s as readTailscaleStatusJson } from "./tailscale-CbbvYNVw.js";
16
16
  import { i as formatPortDiagnostics, n as inspectPortUsage } from "./ports-2xFXbwLq.js";
17
17
  import { c as resolveStorePath } from "./paths-DNdWAq7b.js";
18
- import { r as getMemorySearchManager } from "./memory-cli-CY3CHJS9.js";
18
+ import { r as getMemorySearchManager } from "./memory-cli-Bf2sefbp.js";
19
19
  import { n as formatTimeAgo } from "./format-relative-DX-rh76l.js";
20
- import { l as resolveSessionModelRef, n as classifySessionKey, r as listAgentsForGateway, u as lookupContextTokens } from "./session-utils-Ch5rIQbz.js";
21
- import { o as getRemoteSkillEligibility } from "./skill-commands-BVeV_mpq.js";
20
+ import { l as resolveSessionModelRef, n as classifySessionKey, r as listAgentsForGateway, u as lookupContextTokens } from "./session-utils-BPXkhuNM.js";
21
+ import { o as getRemoteSkillEligibility } from "./skill-commands-BSJONVkt.js";
22
22
  import { r as formatDurationPrecise } from "./format-duration-BOC0O2XQ.js";
23
23
  import { n as withProgress } from "./progress-BAHiAaDW.js";
24
- import { C as normalizeControlUiBasePath, g as resolveControlUiLinks } from "./onboard-helpers-09M-gWu4.js";
24
+ import { C as normalizeControlUiBasePath, g as resolveControlUiLinks } from "./onboard-helpers-7H_XiJt-.js";
25
25
  import { t as resolveChannelDefaultAccountId } from "./helpers-cLP5YLeQ.js";
26
26
  import { t as collectChannelStatusIssues } from "./channels-status-issues-c7qZbYG5.js";
27
27
  import { s as resolveGatewayLogPaths, t as resolveGatewayService } from "./service-Cm9j9WzQ.js";
28
28
  import { t as formatRuntimeStatusWithDetails } from "./runtime-status-hFVEC3wO.js";
29
29
  import { t as readLastGatewayErrorLine } from "./diagnostics-CS1ov_hH.js";
30
30
  import { t as renderTable } from "./table-D01d2GuY.js";
31
- import { a as resolveGatewayProbeAuth$1, c as probeGateway, t as runSecurityAudit } from "./audit-G3JpLuYZ.js";
32
- import { o as resolveHeartbeatSummaryForAgent, t as formatHealthChannelLines } from "./health-uSVTJefC.js";
31
+ import { a as resolveGatewayProbeAuth$1, c as probeGateway, t as runSecurityAudit } from "./audit-DgAM_dWL.js";
32
+ import { o as resolveHeartbeatSummaryForAgent, t as formatHealthChannelLines } from "./health-C7HtwYDj.js";
33
33
  import { g as resolveUpdateChannelDisplay, i as formatGitInstallLabel, m as normalizeUpdateChannel, t as checkUpdateStatus } from "./update-check-ZdimP1aU.js";
34
34
  import { t as resolveNodeService } from "./node-service-fcZExd22.js";
35
35
  import { n as redactSecrets, t as formatGatewayAuthUsed } from "./format-DVLB9DNB.js";
36
- import { i as resolveUpdateAvailability, n as formatUpdateOneLiner, r as getUpdateCheckResult, t as formatUpdateAvailableHint } from "./status.update-DEn_vM2K.js";
36
+ import { i as resolveUpdateAvailability, n as formatUpdateOneLiner, r as getUpdateCheckResult, t as formatUpdateAvailableHint } from "./status.update-BGSQrlxW.js";
37
37
  import { spawnSync } from "node:child_process";
38
38
  import os from "node:os";
39
39
  import path from "node:path";
@@ -1,6 +1,6 @@
1
1
  import { t as formatCliCommand } from "./command-format-BtYOfWxC.js";
2
2
  import { t as resolveSymiPackageRoot } from "./symi-root-BNuQ4lAT.js";
3
- import { H as VERSION } from "./config-XZ7orePK.js";
3
+ import { H as VERSION } from "./config-DXt3pc08.js";
4
4
  import { n as compareSemverStrings, t as checkUpdateStatus } from "./update-check-ZdimP1aU.js";
5
5
 
6
6
  //#region src/commands/status.update.ts
@@ -1,6 +1,6 @@
1
1
  import { t as resolveSymiPackageRoot } from "./symi-root-CrGJbkzf.js";
2
2
  import { t as formatCliCommand } from "./command-format-COaS-S7B.js";
3
- import { H as VERSION } from "./config-Cz_ObCzY.js";
3
+ import { H as VERSION } from "./config-PXAJCHa5.js";
4
4
  import { n as compareSemverStrings, t as checkUpdateStatus } from "./update-check-7EzEjSzb.js";
5
5
 
6
6
  //#region src/commands/status.update.ts
@@ -12,31 +12,31 @@ import { t as ensurePiAuthJsonFromAuthProfiles } from "./pi-auth-json-CnvkCEt-.j
12
12
  import { a as buildModelAliasLines, n as resolveModel } from "./model-yI45t1OQ.js";
13
13
  import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-Do3xMEtM.js";
14
14
  import { r as isPathInsideWithRealpath } from "./scan-paths-ppKrtZ9U.js";
15
- import { a as resolveSkillsPromptForRun, d as resolveSandboxInputPath, h as applySkillEnvOverridesFromSnapshot, i as loadWorkspaceSkillEntries, l as assertMediaNotDataUrl, m as applySkillEnvOverrides, p as resolveSandboxedMediaSource, r as buildWorkspaceSkillSnapshot, u as assertSandboxPath } from "./skills-hAdgFdrv.js";
16
- import { a as safeStatSync, c as applyTestPluginDefaults, d as resolveEnableState, f as resolveMemorySlotDecision, h as isDangerousHostEnvVarName, i as isPathInside, n as loadPluginManifestRegistry, r as discoverSymiPlugins, u as normalizePluginsConfig } from "./manifest-registry-Czr39pxG.js";
17
- import { A as parseConfigPath, B as resolveAgentMaxConcurrent, C as parseDurationMs, D as setConfigOverride, E as resetConfigOverrides, H as VERSION, M as unsetConfigValueAtPath, O as unsetConfigOverride, T as getConfigOverrides, _ as isInboundPathAllowed, b as resolveIMessageRemoteAttachmentRoots, c as resolveConfigSnapshotHash, h as resolveTelegramCustomCommands, i as loadConfig, j as setConfigValueAtPath, k as getConfigValueAtPath, l as writeConfigFile, m as normalizeTelegramCommandName, o as readConfigFileSnapshot, p as TELEGRAM_COMMAND_NAME_PATTERN, u as validateConfigObjectWithPlugins, w as validateJsonSchemaValue, x as normalizeScpRemoteHost, y as resolveIMessageAttachmentRoots, z as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH } from "./config-XZ7orePK.js";
15
+ import { a as resolveSkillsPromptForRun, d as resolveSandboxInputPath, h as applySkillEnvOverridesFromSnapshot, i as loadWorkspaceSkillEntries, l as assertMediaNotDataUrl, m as applySkillEnvOverrides, p as resolveSandboxedMediaSource, r as buildWorkspaceSkillSnapshot, u as assertSandboxPath } from "./skills-D_oCiaQn.js";
16
+ import { a as safeStatSync, c as applyTestPluginDefaults, d as resolveEnableState, f as resolveMemorySlotDecision, h as isDangerousHostEnvVarName, i as isPathInside, n as loadPluginManifestRegistry, r as discoverSymiPlugins, u as normalizePluginsConfig } from "./manifest-registry-D5bnO5uA.js";
17
+ import { A as parseConfigPath, B as resolveAgentMaxConcurrent, C as parseDurationMs, D as setConfigOverride, E as resetConfigOverrides, H as VERSION, M as unsetConfigValueAtPath, O as unsetConfigOverride, T as getConfigOverrides, _ as isInboundPathAllowed, b as resolveIMessageRemoteAttachmentRoots, c as resolveConfigSnapshotHash, h as resolveTelegramCustomCommands, i as loadConfig, j as setConfigValueAtPath, k as getConfigValueAtPath, l as writeConfigFile, m as normalizeTelegramCommandName, o as readConfigFileSnapshot, p as TELEGRAM_COMMAND_NAME_PATTERN, u as validateConfigObjectWithPlugins, w as validateJsonSchemaValue, x as normalizeScpRemoteHost, y as resolveIMessageAttachmentRoots, z as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH } from "./config-DXt3pc08.js";
18
18
  import { It as SESSION_LABEL_MAX_LENGTH, t as GatewayClient } from "./client-qUlxXXVJ.js";
19
- import { a as randomIdempotencyKey, d as resolveLeastPrivilegeOperatorScopesForMethod, n as callGateway, r as callGatewayLeastPrivilege, t as buildGatewayConnectionDetails } from "./call-ple9aZCT.js";
19
+ import { a as randomIdempotencyKey, d as resolveLeastPrivilegeOperatorScopesForMethod, n as callGateway, r as callGatewayLeastPrivilege, t as buildGatewayConnectionDetails } from "./call-BrRWr7Lj.js";
20
20
  import { a as isInternalMessageChannel, c as listDeliverableMessageChannels, d as resolveMessageChannel, h as GATEWAY_CLIENT_NAMES, i as isGatewayMessageChannel, l as normalizeMessageChannel, m as GATEWAY_CLIENT_MODES, n as isDeliverableMessageChannel, o as isMarkdownCapableMessageChannel, p as GATEWAY_CLIENT_IDS, t as INTERNAL_MESSAGE_CHANNEL, u as resolveGatewayMessageChannel } from "./message-channel-C9dERklz.js";
21
21
  import { i as normalizeInputProvenance, n as applyInputProvenanceToUserMessage, r as hasInterSessionUserProvenance } from "./input-provenance-D0lNkCf6.js";
22
- import { A as DEFAULT_RESET_TRIGGERS, B as resolveGroupSessionKey, D as resolveSessionResetPolicy, E as resolveChannelResetConfig, F as resolveMainSessionKey, G as deliveryContextKey, J as normalizeSessionDeliveryFields, K as mergeDeliveryContext, L as deriveSessionMetaPatch, O as resolveSessionResetType, P as resolveExplicitAgentSessionKey, T as evaluateSessionFreshness, U as resolveSessionLockMaxHoldFromTimeout, V as acquireSessionWriteLock, W as deliveryContextFromSession, Y as normalizeAccountId$3, _ as capArrayByJsonBytes, a as resolveAndPersistSessionFile, c as recordSessionMetaFromInbound, d as updateSessionStore, f as updateSessionStoreEntry, g as archiveSessionTranscripts, j as resolveFreshSessionTotalTokens, k as resolveThreadFlag, m as resolveCacheTtlMs$1, n as parseSessionThreadInfo, o as loadSessionStore, p as isCacheEnabled, q as normalizeDeliveryContext, r as appendAssistantMessageToSessionTranscript, s as readSessionUpdatedAt, t as extractDeliveryInfo, u as updateLastRoute, w as resolveSessionKey } from "./sessions-oOAi4H3s.js";
22
+ import { A as DEFAULT_RESET_TRIGGERS, B as resolveGroupSessionKey, D as resolveSessionResetPolicy, E as resolveChannelResetConfig, F as resolveMainSessionKey, G as deliveryContextKey, J as normalizeSessionDeliveryFields, K as mergeDeliveryContext, L as deriveSessionMetaPatch, O as resolveSessionResetType, P as resolveExplicitAgentSessionKey, T as evaluateSessionFreshness, U as resolveSessionLockMaxHoldFromTimeout, V as acquireSessionWriteLock, W as deliveryContextFromSession, Y as normalizeAccountId$3, _ as capArrayByJsonBytes, a as resolveAndPersistSessionFile, c as recordSessionMetaFromInbound, d as updateSessionStore, f as updateSessionStoreEntry, g as archiveSessionTranscripts, j as resolveFreshSessionTotalTokens, k as resolveThreadFlag, m as resolveCacheTtlMs$1, n as parseSessionThreadInfo, o as loadSessionStore, p as isCacheEnabled, q as normalizeDeliveryContext, r as appendAssistantMessageToSessionTranscript, s as readSessionUpdatedAt, t as extractDeliveryInfo, u as updateLastRoute, w as resolveSessionKey } from "./sessions-BPD85pWA.js";
23
23
  import { a as isSilentReplyText, i as isSilentReplyPrefixText, n as SILENT_REPLY_TOKEN, r as SYMIPULSE_TOKEN, t as HEARTBEAT_TOKEN } from "./tokens-Csntmwwn.js";
24
24
  import { _ as listEnabledDiscordAccounts, a as isWhatsAppGroupJid, c as listEnabledTelegramAccounts, d as resolveTelegramToken, f as resolveSlackAccount, g as createDiscordActionGate, h as resolveSlackBotToken, l as listTelegramAccountIds, m as resolveSlackAppToken, n as listChannelPlugins, o as normalizeWhatsAppTarget, r as normalizeChannelId$1, s as createTelegramActionGate, t as getChannelPlugin, u as resolveTelegramAccount, v as resolveDiscordAccount, y as normalizeDiscordToken } from "./plugins-CwSlLxM8.js";
25
25
  import { a as logWebSelfId, i as getWebAuthAgeMs, m as webAuthExists, n as resolveWhatsAppAccount, o as logoutWeb, u as readWebSelfId } from "./accounts-D9ITgITj.js";
26
26
  import { t as normalizeChatType } from "./chat-type-CeFzWU-6.js";
27
- 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-Co9egPXG.js";
28
- 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-C2rS0q26.js";
29
- import { n as createBrowserRouteDispatcher, r as getMachineDisplayName, t as withTimeout$4 } from "./with-timeout-Cei98OCY.js";
30
- 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-DFAium1x.js";
27
+ 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-BcvVKfh2.js";
28
+ 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-DnsTDCll.js";
29
+ import { n as createBrowserRouteDispatcher, r as getMachineDisplayName, t as withTimeout$4 } from "./with-timeout-BIXdW2Bg.js";
30
+ 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-BLt_liXS.js";
31
31
  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-Ci8Xsc_Y.js";
32
32
  import { r as getDiagnosticSessionState } from "./diagnostic-session-state-CIjIGxEE.js";
33
33
  import { n as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-D1eLj5t8.js";
34
- import { 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 parseTelegramTarget, K as toLocationContext, L as resolveTelegramStreamMode, M as normalizeForwardedContext, N as resolveTelegramForumThreadId, O as describeReplyTarget, P as resolveTelegramGroupAllowFromContext, R as resolveTelegramThreadSpec, S as buildSenderName, T as buildTelegramParentPeer, U as isSenderIdAllowed, V as resolveSenderAllowMatch, W as mergeAllowFromSources, Y as resolveTelegramTargetChatType, _ as resolveTelegramFetch, a as reactMessageTelegram, b as buildGroupLabel, c as sendStickerTelegram, d as wasSentByBot, 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 isVoiceCompatibleAudio, r as deleteMessageTelegram, s as sendPollTelegram, t as buildInlineKeyboard, u as resolveTelegramVoiceSend, v as splitTelegramCaption, w as buildTelegramGroupPeerId, x as buildSenderLabel, y as withTelegramApiErrorLogging, z as isSenderAllowed$1 } from "./send-DlsuAlpS.js";
34
+ import { 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 parseTelegramTarget, K as toLocationContext, L as resolveTelegramStreamMode, M as normalizeForwardedContext, N as resolveTelegramForumThreadId, O as describeReplyTarget, P as resolveTelegramGroupAllowFromContext, R as resolveTelegramThreadSpec, S as buildSenderName, T as buildTelegramParentPeer, U as isSenderIdAllowed, V as resolveSenderAllowMatch, W as mergeAllowFromSources, Y as resolveTelegramTargetChatType, _ as resolveTelegramFetch, a as reactMessageTelegram, b as buildGroupLabel, c as sendStickerTelegram, d as wasSentByBot, 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 isVoiceCompatibleAudio, r as deleteMessageTelegram, s as sendPollTelegram, t as buildInlineKeyboard, u as resolveTelegramVoiceSend, v as splitTelegramCaption, w as buildTelegramGroupPeerId, x as buildSenderLabel, y as withTelegramApiErrorLogging, z as isSenderAllowed$1 } from "./send-CaUqpyyp.js";
35
35
  import { c as detectMime, d as imageMimeFromFormat, f as isAudioFileName, g as MAX_IMAGE_BYTES, i as getImageMetadata, l as extensionForMime, p as isGifMedia, s as resizeToJpeg, v as mediaKindFromMime } from "./image-ops-CUkaZz2F.js";
36
- import { A as isTransientHttpError, C as isContextOverflowError, D as isRateLimitAssistantError, E as isLikelyContextOverflowError, F as ensureSessionHeader, I as resolveBootstrapMaxChars, L as resolveBootstrapTotalMaxChars, M as parseImageSizeError, N as sanitizeUserFacingText, O as isRawApiErrorPayload, P as buildBootstrapContextFiles, R as sanitizeGoogleTurnOrdering, S as isCompactionFailureError, T as isFailoverErrorMessage, _ as formatRawAssistantErrorForUi, a as isMessagingToolDuplicateNormalized, b as isBillingAssistantError, c as extractToolCallsFromAssistant, d as isAntigravityClaude, f as isGoogleModelApi, g as formatBillingErrorMessage, h as formatAssistantErrorText, j as parseImageDimensionError, k as isTimeoutErrorMessage, l as extractToolResultId, m as classifyFailoverReason, n as validateGeminiTurns, o as normalizeTextForComparison, p as BILLING_ERROR_USER_MESSAGE, r as pickFallbackThinkingLevel, s as sanitizeSessionMessagesImages, t as validateAnthropicTurns, u as downgradeOpenAIReasoningBlocks, v as getApiErrorPayloadFingerprint, w as isFailoverAssistantError, x as isCloudCodeAssistFormatError, y as isAuthAssistantError } from "./pi-embedded-helpers-DaWb-3Gv.js";
37
- import { C as stripPluginOnlyAllowlist, S as resolveToolProfilePolicy, T as matchesAnyGlobPattern, _ as collectExplicitAllowlist, a as ensureSandboxWorkspaceForSession, b as mergeAlsoAllowPolicy, c as resolveSandboxRuntimeStatus, d as getBridgeAuthForPort, f as resolveSandboxConfigForAgent, g as buildPluginToolGroups, h as applyOwnerOnlyToolPolicy, o as resolveSandboxContext, v as expandPolicyWithPluginGroups, w as compileGlobPatterns, x as normalizeToolName } from "./sandbox-DiPHRUDK.js";
38
- import { T as DEFAULT_AI_SNAPSHOT_MAX_CHARS } from "./chrome-CWdu8vA2.js";
39
- import { i as resolveBrowserConfig, m as resolveBrowserControlAuth } from "./server-context-B4j3P5K6.js";
36
+ import { A as isTransientHttpError, C as isContextOverflowError, D as isRateLimitAssistantError, E as isLikelyContextOverflowError, F as ensureSessionHeader, I as resolveBootstrapMaxChars, L as resolveBootstrapTotalMaxChars, M as parseImageSizeError, N as sanitizeUserFacingText, O as isRawApiErrorPayload, P as buildBootstrapContextFiles, R as sanitizeGoogleTurnOrdering, S as isCompactionFailureError, T as isFailoverErrorMessage, _ as formatRawAssistantErrorForUi, a as isMessagingToolDuplicateNormalized, b as isBillingAssistantError, c as extractToolCallsFromAssistant, d as isAntigravityClaude, f as isGoogleModelApi, g as formatBillingErrorMessage, h as formatAssistantErrorText, j as parseImageDimensionError, k as isTimeoutErrorMessage, l as extractToolResultId, m as classifyFailoverReason, n as validateGeminiTurns, o as normalizeTextForComparison, p as BILLING_ERROR_USER_MESSAGE, r as pickFallbackThinkingLevel, s as sanitizeSessionMessagesImages, t as validateAnthropicTurns, u as downgradeOpenAIReasoningBlocks, v as getApiErrorPayloadFingerprint, w as isFailoverAssistantError, x as isCloudCodeAssistFormatError, y as isAuthAssistantError } from "./pi-embedded-helpers-DSscUmkR.js";
37
+ import { C as stripPluginOnlyAllowlist, S as resolveToolProfilePolicy, T as matchesAnyGlobPattern, _ as collectExplicitAllowlist, a as ensureSandboxWorkspaceForSession, b as mergeAlsoAllowPolicy, c as resolveSandboxRuntimeStatus, d as getBridgeAuthForPort, f as resolveSandboxConfigForAgent, g as buildPluginToolGroups, h as applyOwnerOnlyToolPolicy, o as resolveSandboxContext, v as expandPolicyWithPluginGroups, w as compileGlobPatterns, x as normalizeToolName } from "./sandbox-CDxHBl3I.js";
38
+ import { T as DEFAULT_AI_SNAPSHOT_MAX_CHARS } from "./chrome-D2ohnA09.js";
39
+ import { i as resolveBrowserConfig, m as resolveBrowserControlAuth } from "./server-context-BBaojT7U.js";
40
40
  import { n as formatErrorMessage, r as formatUncaughtError } from "./errors-Ba_ROWsq.js";
41
41
  import { i as resolveExistingPathsWithinRoot, r as DEFAULT_UPLOAD_DIR } from "./paths-OWKu4tXF.js";
42
42
  import { i as isBlockedHostnameOrIp, o as normalizeHostname, t as SsrFBlockedError } from "./ssrf-Ixuyn7h8.js";
@@ -48,9 +48,9 @@ import { c as resolveStorePath, i as resolveSessionTranscriptPath, n as resolveS
48
48
  import { t as emitSessionTranscriptUpdate } from "./transcript-events-D5O01TlD.js";
49
49
  import { i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, r as sanitizeToolResultImages } from "./tool-images-CVLISeRT.js";
50
50
  import { a as normalizeElevatedLevel, c as normalizeUsageDisplay, d as supportsXHighThinking, l as normalizeVerboseLevel, n as formatXHighModelHint, o as normalizeReasoningLevel, s as normalizeThinkLevel, t as formatThinkingLevels, u as resolveResponseUsageMode } from "./thinking-8sKPnzpp.js";
51
- import { t as ensureSymiModelsJson } from "./models-config-CPAA0Wkr.js";
51
+ import { t as ensureSymiModelsJson } from "./models-config-J1x_DaPn.js";
52
52
  import { a as resolveAgentIdentity, i as resolveAckReaction, o as resolveEffectiveMessagesConfig, r as resolveResponsePrefixTemplate, s as resolveHumanDelayConfig, t as createReplyPrefixOptions } from "./reply-prefix-BUN71nd5.js";
53
- import { i as resolveMemoryBackendConfig, n as registerMemoryCli, r as getMemorySearchManager } from "./memory-cli-CY3CHJS9.js";
53
+ import { i as resolveMemoryBackendConfig, n as registerMemoryCli, r as getMemorySearchManager } from "./memory-cli-Bf2sefbp.js";
54
54
  import { i as resolveMemorySearchConfig } from "./manager-MZfhMvm3.js";
55
55
  import { g as runTasksWithConcurrency } from "./sqlite-CQGamAhm.js";
56
56
  import { n as retryAsync } from "./retry-C4Q_VPOo.js";
@@ -63,14 +63,14 @@ import { a as readResponseWithLimit, i as fetchRemoteMedia, n as getDefaultMedia
63
63
  import { a as loadWebMedia, i as getDefaultLocalRoots } from "./ir-D-flMHhr.js";
64
64
  import { a as resolveNativeSkillsEnabled, i as resolveNativeCommandsEnabled, n as isNativeCommandsExplicitlyDisabled, r as isRestartEnabled, t as isCommandFlagEnabled } from "./commands-CkrIpKCc.js";
65
65
  import { a as listChatCommandsForConfig, c as normalizeCommandBody, d as resolveCommandArgMenu, f as serializeCommandArgs, i as listChatCommands, l as parseCommandArgs, o as listNativeCommandSpecs, p as shouldHandleTextCommands, r as findCommandByNativeName, s as listNativeCommandSpecsForConfig, t as buildCommandTextFromArgs, u as resolveCommandArgChoices } from "./commands-registry-CccyRhnX.js";
66
- import { _ as stripMinimaxToolCallXml, a as decodeDataUrl, b as extractTextFromChatContent, 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, y as stripReasoningTagsFromText } from "./image-DFxGwWA7.js";
66
+ import { _ as stripMinimaxToolCallXml, a as decodeDataUrl, b as extractTextFromChatContent, 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, y as stripReasoningTagsFromText } from "./image-DXco5IYt.js";
67
67
  import { n as resolveToolDisplay } from "./tool-display-CXwOC-qw.js";
68
68
  import { n as formatTimeAgo } from "./format-relative-DX-rh76l.js";
69
69
  import { r as normalizeInboundTextNewlines, t as finalizeInboundContext } from "./inbound-context-72dOKfLG.js";
70
- import { _ as applyTemplate, a as resolveMediaAttachmentLocalRoots, c as resolveAttachmentKind, d as registerUnhandledRejectionHandler, f as resolveConcurrency, g as CLI_OUTPUT_MAX_BUFFER, h as resolveMediaUnderstandingScope, i as resolveAutoImageModel, l as buildRandomTempFilePath, m as normalizeMediaUnderstandingChatType, n as createMediaAttachmentCache, o as runCapability, p as resolveTimeoutMs, r as normalizeMediaAttachments, t as buildProviderRegistry } from "./runner-DOVS95oz.js";
71
- import { n as loadModelCatalog, r as modelSupportsVision, t as findModelInCatalog } from "./model-catalog-BkurhUo7.js";
72
- import { a as loadCombinedSessionStoreForGateway, u as lookupContextTokens } from "./session-utils-Ch5rIQbz.js";
73
- import { b as ensureSkillsWatcher, i as resolveSkillCommandInvocation, n as listSkillCommandsForAgents, o as getRemoteSkillEligibility, r as listSkillCommandsForWorkspace, t as listReservedChatSlashCommandNames, x as getSkillsSnapshotVersion } from "./skill-commands-BVeV_mpq.js";
70
+ import { _ as applyTemplate, a as resolveMediaAttachmentLocalRoots, c as resolveAttachmentKind, d as registerUnhandledRejectionHandler, f as resolveConcurrency, g as CLI_OUTPUT_MAX_BUFFER, h as resolveMediaUnderstandingScope, i as resolveAutoImageModel, l as buildRandomTempFilePath, m as normalizeMediaUnderstandingChatType, n as createMediaAttachmentCache, o as runCapability, p as resolveTimeoutMs, r as normalizeMediaAttachments, t as buildProviderRegistry } from "./runner-CSdQSvE8.js";
71
+ import { n as loadModelCatalog, r as modelSupportsVision, t as findModelInCatalog } from "./model-catalog-DKGSg6jF.js";
72
+ import { a as loadCombinedSessionStoreForGateway, u as lookupContextTokens } from "./session-utils-BPXkhuNM.js";
73
+ import { b as ensureSkillsWatcher, i as resolveSkillCommandInvocation, n as listSkillCommandsForAgents, o as getRemoteSkillEligibility, r as listSkillCommandsForWorkspace, t as listReservedChatSlashCommandNames, x as getSkillsSnapshotVersion } from "./skill-commands-BSJONVkt.js";
74
74
  import { i as readChannelAllowFromStore, l as listPairingChannels, o as removeChannelAllowFromStoreEntry, s as upsertChannelPairingRequest, t as addChannelAllowFromStoreEntry } from "./pairing-store-NgA78L2g.js";
75
75
  import { n as wrapFetchWithAbortSignal, t as resolveFetch } from "./fetch-BhFkwlZW.js";
76
76
  import { _ as getTrustedSafeBinDirs, b as buildSafeShellCommand, d as resolveExecApprovals, f as resolveExecApprovalsFromFile, g as resolveSafeBins, h as evaluateShellAllowlist, i as maxAsk, l as recordAllowlistUse, n as addAllowlistEntry, o as minSecurity, u as requiresExecApproval, y as buildSafeBinsShellCommand } from "./exec-approvals-BhFq_Iv9.js";
@@ -83,19 +83,19 @@ import { n as recordChannelActivity, r as createDiscordRetryRunner, t as getChan
83
83
  import { n as normalizePollInput } from "./polls-DXeUmcgz.js";
84
84
  import { t as convertMarkdownTables } from "./tables-CXWwq-Md.js";
85
85
  import { c as resolveGatewayLaunchAgentLabel, d as resolveGatewaySystemdServiceName } from "./constants-CPeVoSXJ.js";
86
- import { n as createBrowserControlContext, r as startBrowserControlServiceFromConfig } from "./control-service-CSbQSkSn.js";
86
+ import { n as createBrowserControlContext, r as startBrowserControlServiceFromConfig } from "./control-service-Ce4HMDRY.js";
87
87
  import { i as parseAbsoluteTimeMs, r as resolveDefaultCronStaggerMs, t as normalizeCronStaggerMs } from "./stagger-CQar2eKe.js";
88
88
  import { n as resolveMessageChannelSelection, t as listConfiguredMessageChannels } from "./channel-selection-BzfEFyPn.js";
89
- import { a as resolveSignalRpcContext, c as streamSignalEvents, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-brznOT92.js";
90
- 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-BZZ4_x4c.js";
89
+ import { a as resolveSignalRpcContext, c as streamSignalEvents, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-BahPjsMR.js";
90
+ 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-Dmb0z8Yy.js";
91
91
  import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-CjnIuTqX.js";
92
92
  import { t as parseTimeoutMs } from "./parse-timeout-zNJBr1fY.js";
93
93
  import { t as makeProxyFetch } from "./proxy-DL3MD6-P.js";
94
- import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-BQj0lY4W.js";
95
- import { r as detectBinary } from "./onboard-helpers-09M-gWu4.js";
94
+ import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-CsUBFXf6.js";
95
+ import { r as detectBinary } from "./onboard-helpers-7H_XiJt-.js";
96
96
  import { t as resolvePairingIdLabel } from "./pairing-labels-DwceB1dG.js";
97
97
  import { t as getActiveWebListener } from "./active-listener-De1JhR4W.js";
98
- import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, n as isToolAllowedByPolicies, r as resolveEffectiveToolPolicy, t as filterToolsByPolicy } from "./pi-tools.policy-jD4uEUBo.js";
98
+ import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, n as isToolAllowedByPolicies, r as resolveEffectiveToolPolicy, t as filterToolsByPolicy } from "./pi-tools.policy-DOVQ8dDx.js";
99
99
  import { createRequire } from "node:module";
100
100
  import { execFileSync, spawn, spawnSync } from "node:child_process";
101
101
  import os, { homedir } from "node:os";
@@ -20374,7 +20374,7 @@ async function routeReply(params) {
20374
20374
  const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
20375
20375
  const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
20376
20376
  try {
20377
- const { deliverOutboundPayloads } = await import("./deliver-DFAium1x.js").then((n) => n.n);
20377
+ const { deliverOutboundPayloads } = await import("./deliver-BLt_liXS.js").then((n) => n.n);
20378
20378
  return {
20379
20379
  ok: true,
20380
20380
  messageId: (await deliverOutboundPayloads({
@@ -37148,6 +37148,27 @@ function appendCacheTtlTimestamp(sessionManager, data) {
37148
37148
  } catch {}
37149
37149
  }
37150
37150
 
37151
+ //#endregion
37152
+ //#region src/agents/pi-embedded-runner/email-capability-prompt.ts
37153
+ /**
37154
+ * Always-on system-prompt block that advertises Symi's email capabilities and
37155
+ * points the model at the `connect-email` skill. Fixes the failure mode where
37156
+ * the model denied email support because no profile's `promptAdditions`
37157
+ * mentioned it — see the sandbox2 interaction that motivated this.
37158
+ *
37159
+ * Sibling of `buildLongTaskPromptSuffix`; spliced at the same site in
37160
+ * `run/attempt.ts` so every profile (Claude, Gemma, Qwen, Nemotron, Ollama)
37161
+ * sees it.
37162
+ */
37163
+ function buildEmailCapabilityPromptSuffix() {
37164
+ return "\n\n" + [
37165
+ "EMAIL CAPABILITIES:",
37166
+ "- Symi supports Outlook 365 (bundled `outlook` plugin; users connect by sending `/outlook login` in chat, which starts a Microsoft device-code flow) and Gmail (via `hooks.gmail` Pub/Sub integration).",
37167
+ "- When the user wants to connect, set up, configure, or troubleshoot email, read the `connect-email` skill FIRST. It has the precheck (detect existing connection), the Gmail-or-Outlook branch, the Outlook walkthrough, and the full Gmail Pub/Sub setup.",
37168
+ "- Do NOT guess email setup steps. Do NOT claim email is unsupported."
37169
+ ].join("\n");
37170
+ }
37171
+
37151
37172
  //#endregion
37152
37173
  //#region src/agents/pi-extensions/session-manager-runtime-registry.ts
37153
37174
  function createSessionManagerRuntimeRegistry() {
@@ -39976,11 +39997,13 @@ async function runEmbeddedAttempt(params) {
39976
39997
  const modelProfile = resolveModelProfile(profileModelKey, params.config?.models?.profiles);
39977
39998
  log$5.debug(`[profile] resolved: modelId=${profileModelKey} → profile=${modelProfile.label} validateToolArgs=${modelProfile.filters?.validateToolArgs ?? false}`);
39978
39999
  const profilePromptSuffix = modelProfile.promptAdditions.length > 0 ? "\n\n" + modelProfile.promptAdditions.join("\n") : "";
39979
- const systemPromptText = createSystemPromptOverride(appendPrompt + await buildLongTaskPromptSuffix({
40000
+ const longTaskSuffix = await buildLongTaskPromptSuffix({
39980
40001
  argv1: process.argv[1],
39981
40002
  cwd: process.cwd(),
39982
40003
  moduleUrl: import.meta.url
39983
- }) + profilePromptSuffix)();
40004
+ });
40005
+ const emailCapabilitySuffix = buildEmailCapabilityPromptSuffix();
40006
+ const systemPromptText = createSystemPromptOverride(appendPrompt + longTaskSuffix + emailCapabilitySuffix + profilePromptSuffix)();
39984
40007
  const sessionLock = await acquireSessionWriteLock({
39985
40008
  sessionFile: params.sessionFile,
39986
40009
  maxHoldMs: resolveSessionLockMaxHoldFromTimeout({ timeoutMs: params.timeoutMs })
@@ -44375,7 +44398,7 @@ async function deliverSessionMaintenanceWarning(params) {
44375
44398
  return;
44376
44399
  }
44377
44400
  try {
44378
- const { deliverOutboundPayloads } = await import("./deliver-DFAium1x.js").then((n) => n.n);
44401
+ const { deliverOutboundPayloads } = await import("./deliver-BLt_liXS.js").then((n) => n.n);
44379
44402
  await deliverOutboundPayloads({
44380
44403
  cfg: params.cfg,
44381
44404
  channel,
@@ -47829,7 +47852,7 @@ async function describeStickerImage(params) {
47829
47852
  logVerbose(`telegram: describing sticker with ${provider}/${model}`);
47830
47853
  try {
47831
47854
  const buffer = await fs$1.readFile(imagePath);
47832
- const { describeImageWithModel } = await import("./image-DFxGwWA7.js").then((n) => n.n);
47855
+ const { describeImageWithModel } = await import("./image-DXco5IYt.js").then((n) => n.n);
47833
47856
  return (await describeImageWithModel({
47834
47857
  buffer,
47835
47858
  fileName: "sticker.webp",
@@ -48252,7 +48275,7 @@ function createWhatsAppLoginTool() {
48252
48275
  force: Type.Optional(Type.Boolean())
48253
48276
  }),
48254
48277
  execute: async (_toolCallId, args) => {
48255
- const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-BkqlPQja.js");
48278
+ const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-De_4jYaF.js");
48256
48279
  if ((args?.action ?? "start") === "wait") {
48257
48280
  const result = await waitForWebLogin({ timeoutMs: typeof args.timeoutMs === "number" ? args.timeoutMs : void 0 });
48258
48281
  return {
@@ -49628,7 +49651,7 @@ async function preflightDiscordMessage(params) {
49628
49651
  let preflightTranscript;
49629
49652
  const hasAudioAttachment = message.attachments?.some((att) => att.contentType?.startsWith("audio/"));
49630
49653
  if (!isDirectMessage && shouldRequireMention && hasAudioAttachment && !baseText && mentionRegexes.length > 0) try {
49631
- const { transcribeFirstAudio } = await import("./audio-preflight-C45lDI-t.js");
49654
+ const { transcribeFirstAudio } = await import("./audio-preflight-DfALITTK.js");
49632
49655
  const audioPaths = message.attachments?.filter((att) => att.contentType?.startsWith("audio/")).map((att) => att.url) ?? [];
49633
49656
  if (audioPaths.length > 0) preflightTranscript = await transcribeFirstAudio({
49634
49657
  ctx: {
@@ -53411,27 +53434,27 @@ function isVoiceChannelType(type) {
53411
53434
  function createDefaultDeps() {
53412
53435
  return {
53413
53436
  sendMessageWhatsApp: async (...args) => {
53414
- const { sendMessageWhatsApp } = await import("./web-BTM-eHmT.js");
53437
+ const { sendMessageWhatsApp } = await import("./web-CYf5I3aU.js");
53415
53438
  return await sendMessageWhatsApp(...args);
53416
53439
  },
53417
53440
  sendMessageTelegram: async (...args) => {
53418
- const { sendMessageTelegram } = await import("./send-DlsuAlpS.js").then((n) => n.l);
53441
+ const { sendMessageTelegram } = await import("./send-CaUqpyyp.js").then((n) => n.l);
53419
53442
  return await sendMessageTelegram(...args);
53420
53443
  },
53421
53444
  sendMessageDiscord: async (...args) => {
53422
- const { sendMessageDiscord } = await import("./send-C2rS0q26.js").then((n) => n.t);
53445
+ const { sendMessageDiscord } = await import("./send-DnsTDCll.js").then((n) => n.t);
53423
53446
  return await sendMessageDiscord(...args);
53424
53447
  },
53425
53448
  sendMessageSlack: async (...args) => {
53426
- const { sendMessageSlack } = await import("./send-Co9egPXG.js").then((n) => n.n);
53449
+ const { sendMessageSlack } = await import("./send-BcvVKfh2.js").then((n) => n.n);
53427
53450
  return await sendMessageSlack(...args);
53428
53451
  },
53429
53452
  sendMessageSignal: async (...args) => {
53430
- const { sendMessageSignal } = await import("./send-brznOT92.js").then((n) => n.i);
53453
+ const { sendMessageSignal } = await import("./send-BahPjsMR.js").then((n) => n.i);
53431
53454
  return await sendMessageSignal(...args);
53432
53455
  },
53433
53456
  sendMessageIMessage: async (...args) => {
53434
- const { sendMessageIMessage } = await import("./send-BZZ4_x4c.js").then((n) => n.n);
53457
+ const { sendMessageIMessage } = await import("./send-Dmb0z8Yy.js").then((n) => n.n);
53435
53458
  return await sendMessageIMessage(...args);
53436
53459
  }
53437
53460
  };
@@ -64286,7 +64309,7 @@ async function registerSlackMonitorSlashCommands(params) {
64286
64309
  });
64287
64310
  const deliverSlashPayloads = async (replies) => {
64288
64311
  const [{ deliverSlackSlashReplies }, { resolveChunkMode }, { resolveMarkdownTableMode }] = await Promise.all([
64289
- import("./replies-BQj0lY4W.js").then((n) => n.r),
64312
+ import("./replies-CsUBFXf6.js").then((n) => n.r),
64290
64313
  import("./chunk-CQyUJNtc.js").then((n) => n.s),
64291
64314
  import("./markdown-tables-D82z_Ahc.js").then((n) => n.t)
64292
64315
  ]);
@@ -64341,7 +64364,7 @@ async function registerSlackMonitorSlashCommands(params) {
64341
64364
  let nativeCommands = [];
64342
64365
  if (nativeEnabled) {
64343
64366
  reg = await getCommandsRegistry();
64344
- const skillCommands = nativeSkillsEnabled ? (await import("./skill-commands-BVeV_mpq.js").then((n) => n.a)).listSkillCommandsForAgents({ cfg }) : [];
64367
+ const skillCommands = nativeSkillsEnabled ? (await import("./skill-commands-BSJONVkt.js").then((n) => n.a)).listSkillCommandsForAgents({ cfg }) : [];
64345
64368
  nativeCommands = reg.listNativeCommandSpecsForConfig(cfg, {
64346
64369
  skillCommands,
64347
64370
  provider: "slack"
@@ -66559,7 +66582,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, storeAllowFro
66559
66582
  const hasAudio = allMedia.some((media) => media.contentType?.startsWith("audio/"));
66560
66583
  let preflightTranscript;
66561
66584
  if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0) try {
66562
- const { transcribeFirstAudio } = await import("./audio-preflight-C45lDI-t.js");
66585
+ const { transcribeFirstAudio } = await import("./audio-preflight-DfALITTK.js");
66563
66586
  preflightTranscript = await transcribeFirstAudio({
66564
66587
  ctx: {
66565
66588
  MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
@@ -68713,23 +68736,23 @@ let webLoginQrPromise = null;
68713
68736
  let webChannelPromise = null;
68714
68737
  let whatsappActionsPromise = null;
68715
68738
  function loadWebOutbound() {
68716
- webOutboundPromise ??= import("./outbound-neBb4qTL.js").then((n) => n.t);
68739
+ webOutboundPromise ??= import("./outbound-D6GeeR8F.js").then((n) => n.t);
68717
68740
  return webOutboundPromise;
68718
68741
  }
68719
68742
  function loadWebLogin() {
68720
- webLoginPromise ??= import("./login-CQTjtlgX.js").then((n) => n.n);
68743
+ webLoginPromise ??= import("./login-BgJLYdBR.js").then((n) => n.n);
68721
68744
  return webLoginPromise;
68722
68745
  }
68723
68746
  function loadWebLoginQr() {
68724
- webLoginQrPromise ??= import("./login-qr-BkqlPQja.js");
68747
+ webLoginQrPromise ??= import("./login-qr-De_4jYaF.js");
68725
68748
  return webLoginQrPromise;
68726
68749
  }
68727
68750
  function loadWebChannel() {
68728
- webChannelPromise ??= import("./web-BTM-eHmT.js");
68751
+ webChannelPromise ??= import("./web-CYf5I3aU.js");
68729
68752
  return webChannelPromise;
68730
68753
  }
68731
68754
  function loadWhatsAppActions() {
68732
- whatsappActionsPromise ??= import("./whatsapp-actions-BWd0ZXyg.js");
68755
+ whatsappActionsPromise ??= import("./whatsapp-actions-3wS2mDjT.js");
68733
68756
  return whatsappActionsPromise;
68734
68757
  }
68735
68758
  function createPluginRuntime() {
@@ -9,14 +9,14 @@ import "./github-copilot-token-DAu1a6BX.js";
9
9
  import "./boolean-BsqeuxE6.js";
10
10
  import "./env-DPCHYPeH.js";
11
11
  import "./message-channel-aT-I_DTX.js";
12
- import "./config-Cz_ObCzY.js";
13
- import "./manifest-registry-C4BxOMWX.js";
12
+ import "./config-PXAJCHa5.js";
13
+ import "./manifest-registry-BDSRH8nU.js";
14
14
  import "./client-B8xmq-Pw.js";
15
- import "./call-CtiVeyeQ.js";
15
+ import "./call-CVqBgwrx.js";
16
16
  import "./pairing-token-CX3NN_qj.js";
17
17
  import { t as formatDocsLink } from "./links-3i1eUga4.js";
18
18
  import "./progress-jIePzvGA.js";
19
- import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-D1Oid7kh.js";
19
+ import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-Bp0KNJtL.js";
20
20
 
21
21
  //#region src/cli/system-cli.ts
22
22
  const normalizeWakeMode = (raw) => {
@@ -3,15 +3,15 @@ import "./auth-profiles-BBniPGeS.js";
3
3
  import "./exec-CBKBIMpA.js";
4
4
  import "./agent-scope-D-jRCY0d.js";
5
5
  import "./github-copilot-token-DuFIqfeC.js";
6
- import "./manifest-registry-Czr39pxG.js";
7
- import "./config-XZ7orePK.js";
6
+ import "./manifest-registry-D5bnO5uA.js";
7
+ import "./config-DXt3pc08.js";
8
8
  import "./client-qUlxXXVJ.js";
9
- import "./call-ple9aZCT.js";
9
+ import "./call-BrRWr7Lj.js";
10
10
  import "./message-channel-C9dERklz.js";
11
11
  import "./pairing-token-Byh6drgn.js";
12
12
  import { t as formatDocsLink } from "./links-DlWpl9Yv.js";
13
13
  import "./progress-BAHiAaDW.js";
14
- import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-BPldxGhH.js";
14
+ import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-XT8cFwtz.js";
15
15
 
16
16
  //#region src/cli/system-cli.ts
17
17
  const normalizeWakeMode = (raw) => {
@@ -1,5 +1,5 @@
1
1
  import { t as formatCliCommand } from "./command-format-BtYOfWxC.js";
2
- import { d as isVersionManagedNodePath, h as resolveSystemNodePath, l as getMinimalServicePathPartsFromEnv, u as isSystemNodePath } from "./daemon-runtime-CbbrW5g3.js";
2
+ import { d as isVersionManagedNodePath, h as resolveSystemNodePath, l as getMinimalServicePathPartsFromEnv, u as isSystemNodePath } from "./daemon-runtime-BV78EN62.js";
3
3
  import { o as resolveSystemdUserUnitPath } from "./systemd-DlMdyFDY.js";
4
4
  import { c as resolveLaunchAgentPlistPath } from "./service-Cm9j9WzQ.js";
5
5
  import { t as formatRuntimeStatusWithDetails } from "./runtime-status-hFVEC3wO.js";
@@ -1,5 +1,5 @@
1
1
  import { t as formatCliCommand } from "./command-format-COaS-S7B.js";
2
- import { d as isVersionManagedNodePath, h as resolveSystemNodePath, l as getMinimalServicePathPartsFromEnv, u as isSystemNodePath } from "./daemon-runtime-BetFDUaM.js";
2
+ import { d as isVersionManagedNodePath, h as resolveSystemNodePath, l as getMinimalServicePathPartsFromEnv, u as isSystemNodePath } from "./daemon-runtime-BT1zC2PU.js";
3
3
  import { o as resolveSystemdUserUnitPath } from "./systemd-DT6SbCim.js";
4
4
  import { c as resolveLaunchAgentPlistPath } from "./service-osK70kTZ.js";
5
5
  import { t as formatRuntimeStatusWithDetails } from "./runtime-status-D6c3G7my.js";
@@ -3,13 +3,13 @@ import { S as parseAgentSessionKey, c as normalizeMainKey, r as buildAgentMainSe
3
3
  import { l as stripAnsi, u as visibleWidth } from "./subsystem-D9vIQve0.js";
4
4
  import { l as resolveDefaultAgentId } from "./agent-scope-CgUHAtCo.js";
5
5
  import { f as GATEWAY_CLIENT_CAPS, h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-aT-I_DTX.js";
6
- import { H as VERSION, i as loadConfig } from "./config-Cz_ObCzY.js";
7
- import { _ as formatRawAssistantErrorForUi } from "./pi-embedded-helpers-BqeG6ogg.js";
8
- import { k as stripLeadingInboundMetadata } from "./sessions-C8h-0oVK.js";
6
+ import { H as VERSION, i as loadConfig } from "./config-PXAJCHa5.js";
7
+ import { _ as formatRawAssistantErrorForUi } from "./pi-embedded-helpers-DpOccVre.js";
8
+ import { k as stripLeadingInboundMetadata } from "./sessions-BeYHj0gr.js";
9
9
  import { n as resolveToolDisplay, t as formatToolDetail } from "./tool-display-D8N3rsYt.js";
10
10
  import { a as listChatCommandsForConfig, i as listChatCommands } from "./commands-registry-B6cf3Cmq.js";
11
11
  import { Nt as PROTOCOL_VERSION, t as GatewayClient } from "./client-B8xmq-Pw.js";
12
- import { i as ensureExplicitGatewayAuth, o as resolveExplicitGatewayAuth, t as buildGatewayConnectionDetails } from "./call-CtiVeyeQ.js";
12
+ import { i as ensureExplicitGatewayAuth, o as resolveExplicitGatewayAuth, t as buildGatewayConnectionDetails } from "./call-CVqBgwrx.js";
13
13
  import { n as formatTimeAgo, t as formatRelativeTimestamp } from "./format-relative-BXoxEQVN.js";
14
14
  import { n as formatTokenCount } from "./usage-format-BgUx3Bm4.js";
15
15
  import chalk from "chalk";
@@ -1,12 +1,12 @@
1
1
  import { h as visibleWidth, m as stripAnsi } from "./entry.js";
2
2
  import { S as parseAgentSessionKey, c as normalizeMainKey, r as buildAgentMainSessionKey, s as normalizeAgentId } from "./session-key-DjZ7Z1hW.js";
3
3
  import { l as resolveDefaultAgentId } from "./agent-scope-D-jRCY0d.js";
4
- import { H as VERSION, i as loadConfig } from "./config-XZ7orePK.js";
4
+ import { H as VERSION, i as loadConfig } from "./config-DXt3pc08.js";
5
5
  import { Nt as PROTOCOL_VERSION, t as GatewayClient } from "./client-qUlxXXVJ.js";
6
- import { i as ensureExplicitGatewayAuth, o as resolveExplicitGatewayAuth, t as buildGatewayConnectionDetails } from "./call-ple9aZCT.js";
6
+ import { i as ensureExplicitGatewayAuth, o as resolveExplicitGatewayAuth, t as buildGatewayConnectionDetails } from "./call-BrRWr7Lj.js";
7
7
  import { f as GATEWAY_CLIENT_CAPS, h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-C9dERklz.js";
8
- import { C as stripLeadingInboundMetadata } from "./sessions-oOAi4H3s.js";
9
- import { _ as formatRawAssistantErrorForUi } from "./pi-embedded-helpers-DaWb-3Gv.js";
8
+ import { C as stripLeadingInboundMetadata } from "./sessions-BPD85pWA.js";
9
+ import { _ as formatRawAssistantErrorForUi } from "./pi-embedded-helpers-DSscUmkR.js";
10
10
  import { c as normalizeUsageDisplay, r as listThinkingLevelLabels, t as formatThinkingLevels, u as resolveResponseUsageMode } from "./thinking-8sKPnzpp.js";
11
11
  import { a as listChatCommandsForConfig, i as listChatCommands } from "./commands-registry-CccyRhnX.js";
12
12
  import { n as resolveToolDisplay, t as formatToolDetail } from "./tool-display-CXwOC-qw.js";
@@ -10,17 +10,17 @@ import "./github-copilot-token-DAu1a6BX.js";
10
10
  import "./boolean-BsqeuxE6.js";
11
11
  import "./env-DPCHYPeH.js";
12
12
  import "./message-channel-aT-I_DTX.js";
13
- import "./config-Cz_ObCzY.js";
14
- import "./manifest-registry-C4BxOMWX.js";
15
- import "./pi-embedded-helpers-BqeG6ogg.js";
16
- import "./sandbox-LreyCjoX.js";
17
- import "./chrome-CDPH3KAn.js";
13
+ import "./config-PXAJCHa5.js";
14
+ import "./manifest-registry-BDSRH8nU.js";
15
+ import "./pi-embedded-helpers-DpOccVre.js";
16
+ import "./sandbox-BOVopTqv.js";
17
+ import "./chrome-BJvuH-NZ.js";
18
18
  import "./tailscale-D5dKabOc.js";
19
19
  import "./auth-B741uFtk.js";
20
- import "./server-context-2Vn21Z8T.js";
20
+ import "./server-context-C2gfYdh8.js";
21
21
  import "./frontmatter-DWQhtOo7.js";
22
- import "./skills-6jdJQ5ZL.js";
23
- import "./routes-CRgMkkG0.js";
22
+ import "./skills-BG8FpqDp.js";
23
+ import "./routes-2b4mQUhe.js";
24
24
  import "./redact-f-Q-hFt_.js";
25
25
  import "./errors-BF3TeRH2.js";
26
26
  import "./fs-safe-CUjO1ca2.js";
@@ -30,7 +30,7 @@ import "./image-ops-1OJMSAUX.js";
30
30
  import "./store-r1DJSDq-.js";
31
31
  import "./ports-BOmtxoTv.js";
32
32
  import "./trash-DcMh1i4B.js";
33
- import "./sessions-C8h-0oVK.js";
33
+ import "./sessions-BeYHj0gr.js";
34
34
  import "./dock-BhS32F6E.js";
35
35
  import "./plugins-DKDeQZF0.js";
36
36
  import "./accounts-DDuIpcln.js";
@@ -44,11 +44,11 @@ import "./tool-display-D8N3rsYt.js";
44
44
  import "./commands-BNLCWX6e.js";
45
45
  import "./commands-registry-B6cf3Cmq.js";
46
46
  import "./client-B8xmq-Pw.js";
47
- import "./call-CtiVeyeQ.js";
47
+ import "./call-CVqBgwrx.js";
48
48
  import "./pairing-token-CX3NN_qj.js";
49
49
  import { t as formatDocsLink } from "./links-3i1eUga4.js";
50
50
  import { t as parseTimeoutMs } from "./parse-timeout-2S5vp0-9.js";
51
- import { t as runTui } from "./tui-D1JLyFne.js";
51
+ import { t as runTui } from "./tui-DfPeXwah.js";
52
52
 
53
53
  //#region src/cli/tui-cli.ts
54
54
  function registerTuiCli(program) {