@symerian/symi 2.8.6 → 2.8.7

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 (251) hide show
  1. package/dist/{accounts-BRw8yhIW.js → accounts-D1r2dq1t.js} +21 -21
  2. package/dist/{accounts-3dCrO3oZ.js → accounts-dRUMQQrB.js} +1 -1
  3. package/dist/{accounts-BuZxOb3B.js → accounts-wSphH5gv.js} +1 -1
  4. package/dist/{active-listener-Br2FcRv7.js → active-listener-C3pfJhdC.js} +1 -1
  5. package/dist/{agent-scope-CpEJ0B88.js → agent-scope-D68_xfTL.js} +3 -3
  6. package/dist/{agents-DWuqUDaG.js → agents-CKqrLbBd.js} +4 -4
  7. package/dist/{agents.config-DWsjuONZ.js → agents.config-D17kikNs.js} +1 -1
  8. package/dist/{agents.config-B8euVOOW.js → agents.config-DnEa79_a.js} +1 -1
  9. package/dist/{audio-preflight-D0nJ1LEt.js → audio-preflight-DFLcuVNn.js} +29 -29
  10. package/dist/{audio-preflight-CKbpf-IL.js → audio-preflight-DJXj9QP9.js} +5 -5
  11. package/dist/{audio-preflight-BQaUmV6k.js → audio-preflight-DfALITTK.js} +5 -5
  12. package/dist/{audio-preflight-D_g9Duqw.js → audio-preflight-lr-WPpc9.js} +4 -4
  13. package/dist/{audit-DCOp_J5K.js → audit-DVUHZrf4.js} +2 -2
  14. package/dist/{audit-BIeVybsA.js → audit-DgAM_dWL.js} +2 -2
  15. package/dist/{auth-choice-kpk3L0TR.js → auth-choice-KEir_3i_.js} +1 -1
  16. package/dist/{auth-choice-hKVjPWaU.js → auth-choice-obR6mZqe.js} +1 -1
  17. package/dist/{auth-profiles-C2vj6htZ.js → auth-profiles-aJfgABnE.js} +17 -17
  18. package/dist/{banner-C1RFNTRm.js → banner-BEYICVDD.js} +1 -1
  19. package/dist/{bindings-BsHoBLIE.js → bindings-Bat2RnAR.js} +2 -2
  20. package/dist/build-info.json +3 -3
  21. package/dist/bundled/boot-md/handler.js +54 -54
  22. package/dist/bundled/bootstrap-extra-files/handler.js +5 -5
  23. package/dist/bundled/command-logger/handler.js +1 -1
  24. package/dist/bundled/session-memory/handler.js +54 -54
  25. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  26. package/dist/{channel-activity-D-kw83R0.js → channel-activity-Cm1OJRbv.js} +1 -1
  27. package/dist/{channel-options-Vjegw-bn.js → channel-options-D9g8Ji5_.js} +1 -1
  28. package/dist/{channel-options-Pit7RtN-.js → channel-options-H9pR0AWZ.js} +1 -1
  29. package/dist/{channel-web-BVm_UWyj.js → channel-web-B9-EHnds.js} +3 -3
  30. package/dist/{channels-cli-Bh07AMec.js → channels-cli-C_YU5GaO.js} +11 -11
  31. package/dist/{channels-cli-CXws5tG8.js → channels-cli-mCf_KwBC.js} +12 -12
  32. package/dist/{chrome-C08Z0XAa.js → chrome-B0yKTuIS.js} +21 -21
  33. package/dist/{chrome-BUT--ob3.js → chrome-B14NNyfm.js} +7 -7
  34. package/dist/{chunk-BHW8Yu5A.js → chunk-B9x_1qSr.js} +1 -1
  35. package/dist/{cli-D5qinxg-.js → cli-D8xchhQH.js} +8 -8
  36. package/dist/{cli-TABOKnEJ.js → cli-WAg9Zydm.js} +9 -9
  37. package/dist/{command-registry-DEe4juCf.js → command-registry-nSYGDoue.js} +9 -9
  38. package/dist/{commands-registry-CfoYlMQB.js → commands-registry-CeBC8Vy2.js} +4 -4
  39. package/dist/{completion-cli-W3fyiL94.js → completion-cli-BzV4_BVf.js} +1 -1
  40. package/dist/{completion-cli-D0j-46vF.js → completion-cli-CR5v_bKh.js} +2 -2
  41. package/dist/{config-BkZ9HOKT.js → config-Dp67YMkg.js} +12 -12
  42. package/dist/{config-cli-DLBtnr_W.js → config-cli-DFXYnUAB.js} +1 -1
  43. package/dist/{config-cli-CajteLy8.js → config-cli-wcQ2PQ2b.js} +1 -1
  44. package/dist/{config-guard-DjlYIjka.js → config-guard-CJ4iAPK5.js} +1 -1
  45. package/dist/{config-guard-BJE6xSY9.js → config-guard-DsOhmFl6.js} +2 -2
  46. package/dist/{configure-B79KjBCS.js → configure-CCux4ZEl.js} +3 -3
  47. package/dist/{configure-2PdZnKO6.js → configure-DSXgdzrp.js} +3 -3
  48. package/dist/control-ui/js/app.js +13 -60
  49. package/dist/control-ui/js/render.js +4 -72
  50. package/dist/{deliver-CiL9mQXH.js → deliver-BLt_liXS.js} +2 -2
  51. package/dist/{deliver-CLZGlRZt.js → deliver-DPWY9adX.js} +20 -20
  52. package/dist/{deliver-B36OzmeP.js → deliver-DrC7tG6s.js} +1 -1
  53. package/dist/{deliver-CXpvGXqJ.js → deliver-lG9ITE8w.js} +2 -2
  54. package/dist/{diagnostic-CQiU0O8b.js → diagnostic-DIKKFHpP.js} +1 -1
  55. package/dist/{doctor-completion-DOnUbTdS.js → doctor-completion-D-deyczv.js} +1 -1
  56. package/dist/{doctor-completion-mlj3aq0W.js → doctor-completion-jev9bFib.js} +1 -1
  57. package/dist/{doctor-config-flow-DFk-NaP5.js → doctor-config-flow-C81j0-sE.js} +1 -1
  58. package/dist/{doctor-config-flow-BRB_O0jG.js → doctor-config-flow-CN8seKLA.js} +1 -1
  59. package/dist/entry.js +1 -1
  60. package/dist/{env-BDXYbTKj.js → env-xmBFQPBP.js} +1 -1
  61. package/dist/extensionAPI.js +6 -6
  62. package/dist/{frontmatter-CTR5f_Ez.js → frontmatter-CV0YkjoY.js} +2 -2
  63. package/dist/{gateway-cli-D7jQypRh.js → gateway-cli-BJvattWu.js} +19 -19
  64. package/dist/{gateway-cli-nHVe7vxD.js → gateway-cli-_BIiMqiD.js} +18 -18
  65. package/dist/{gemini-auth-BefM10YB.js → gemini-auth-JP7SzVpY.js} +1 -1
  66. package/dist/{github-copilot-token-cCYzSU9h.js → github-copilot-token-B8B2pmph.js} +7 -7
  67. package/dist/{glass-ui-ws-BgVPCNjg.js → glass-ui-ws-BHVpfzRg.js} +16 -16
  68. package/dist/{glass-ui-ws-CMMnvVpl.js → glass-ui-ws-DRWpg6Qb.js} +15 -15
  69. package/dist/{health-DvkoG4Dw.js → health-7ZvWXkvm.js} +3 -3
  70. package/dist/{health-DKxSHkOQ.js → health-D1L94KKE.js} +3 -3
  71. package/dist/{hooks-cli-DV1GeJpO.js → hooks-cli-B-JbgOoq.js} +9 -9
  72. package/dist/{hooks-cli-DsWn_3um.js → hooks-cli-BjYy0UUP.js} +10 -10
  73. package/dist/{image-BHhzdmbq.js → image-CKeN0xJL.js} +1 -1
  74. package/dist/{image-BnO8X_hj.js → image-DCB54N2j.js} +4 -4
  75. package/dist/{image-CJ_QZqzR.js → image-DXco5IYt.js} +1 -1
  76. package/dist/{image-C2IvljWU.js → image-D_qN_IxA.js} +1 -1
  77. package/dist/{image-ops-C7CauEK8.js → image-ops-M5agStZn.js} +16 -16
  78. package/dist/index.js +14 -14
  79. package/dist/{ir-JAy_3A3B.js → ir-Z9axTYHx.js} +4 -4
  80. package/dist/llm-slug-generator.js +54 -54
  81. package/dist/{local-roots-Se92wAN5.js → local-roots-Bh5xx9IO.js} +5 -5
  82. package/dist/{login-CksRbu5D.js → login-Z-O7e3RD.js} +7 -7
  83. package/dist/{login-qr-COIr6FGZ.js → login-qr-Cqe-9-jf.js} +12 -12
  84. package/dist/{manager-DXyJKTj7.js → manager-ayAJucg2.js} +22 -22
  85. package/dist/{manifest-registry-CBCGTsIb.js → manifest-registry-QT5_77XA.js} +19 -19
  86. package/dist/{markdown-tables-Dnj2LQUc.js → markdown-tables-DuRhvVpP.js} +1 -1
  87. package/dist/{message-channel-OlFBYAw8.js → message-channel-DwDSKGn4.js} +1 -1
  88. package/dist/{models-BohMMqeG.js → models-PeKQE2ct.js} +2 -2
  89. package/dist/{models-cli-DabormMV.js → models-cli-ChoXOtnk.js} +9 -9
  90. package/dist/{models-cli-CJywE4w7.js → models-cli-lSGGkLeL.js} +11 -11
  91. package/dist/{onboard-ygIcreY9.js → onboard-9PT0Wv1A.js} +2 -2
  92. package/dist/{onboard-CyuUucGA.js → onboard-B8q4Vpz1.js} +2 -2
  93. package/dist/{onboard-channels-DU6do-N5.js → onboard-channels-CN0qvsHO.js} +1 -1
  94. package/dist/{onboard-channels-DaY1NwXd.js → onboard-channels-Cg4bD8ps.js} +1 -1
  95. package/dist/{onboarding-Bqz1NgoR.js → onboarding-BAn2oNRB.js} +4 -4
  96. package/dist/{onboarding-BfeyfvK_.js → onboarding-hJaI3u5t.js} +4 -4
  97. package/dist/{onboarding.finalize-CG0xwhEw.js → onboarding.finalize-BPZZr8Cm.js} +13 -13
  98. package/dist/{onboarding.finalize-DzTo4LEo.js → onboarding.finalize-BTrhVcW5.js} +15 -15
  99. package/dist/{onboarding.gateway-config-7LGxdDrq.js → onboarding.gateway-config-TM8ERKyn.js} +1 -1
  100. package/dist/{onboarding.gateway-config-DJJRuyZ_.js → onboarding.gateway-config-vGTQDqA6.js} +1 -1
  101. package/dist/{outbound-attachment-BzwVH4Pn.js → outbound-attachment-BOy-OY4-.js} +2 -2
  102. package/dist/{outbound-CX-uuDet.js → outbound-xWV2AYDD.js} +7 -7
  103. package/dist/paths-CYmyCDsE.js +212 -0
  104. package/dist/{paths-CbQV9WEg.js → paths-DEuVuViW.js} +1 -1
  105. package/dist/{pi-auth-json-RXOlh8ar.js → pi-auth-json-Q3FwtPeJ.js} +1 -1
  106. package/dist/{pi-embedded-BaNpG0Aq.js → pi-embedded-F3kbSP7M.js} +20 -16
  107. package/dist/{pi-embedded-helpers-DcN8GHTt.js → pi-embedded-helpers-CFTCaByg.js} +73 -73
  108. package/dist/{pi-embedded-helpers-BET359cH.js → pi-embedded-helpers-D8YgtMdl.js} +4 -4
  109. package/dist/{pi-embedded-helpers-jo_kKs-Z.js → pi-embedded-helpers-DSscUmkR.js} +1 -1
  110. package/dist/{pi-embedded-helpers-DiXXYmgo.js → pi-embedded-helpers-DpOccVre.js} +1 -1
  111. package/dist/{pi-tools.policy-p7LLu64F.js → pi-tools.policy-BpN-v9bT.js} +1 -1
  112. package/dist/{pi-tools.policy-CGVKAOoE.js → pi-tools.policy-DOVQ8dDx.js} +1 -1
  113. package/dist/{plugin-registry-DG2IOSY3.js → plugin-registry-BVoIgv-5.js} +1 -1
  114. package/dist/{plugin-registry-DTm-oyEP.js → plugin-registry-DFPTE_HO.js} +1 -1
  115. package/dist/plugin-sdk/{channel-web-D-ct3FR3.js → channel-web-BNGOwMat.js} +1 -1
  116. package/dist/plugin-sdk/index.js +2 -2
  117. package/dist/plugin-sdk/{reply-Gpdxnjey.js → reply-DcNZU8lj.js} +6 -2
  118. package/dist/plugin-sdk/{web-BFa_GJSK.js → web-CeR-wf-N.js} +2 -2
  119. package/dist/{plugins-BzmbgY7s.js → plugins-Bkr5ZdYs.js} +9 -9
  120. package/dist/{plugins-cli-BrHhfpbX.js → plugins-cli-BwM4f91E.js} +10 -10
  121. package/dist/{plugins-cli-BJpemLCS.js → plugins-cli-uoGDkhOc.js} +9 -9
  122. package/dist/{program-CYzFuO3w.js → program-DhBZLOgJ.js} +16 -16
  123. package/dist/{program-context-G2iHoB5D.js → program-context-BJEZcvA2.js} +20 -20
  124. package/dist/{prompt-select-styled-lVyrkSPI.js → prompt-select-styled-CJjLDUCj.js} +7 -7
  125. package/dist/{prompt-select-styled-P0KS75Rt.js → prompt-select-styled-CMBgFELR.js} +7 -7
  126. package/dist/{provider-auth-helpers-CoYjxsb2.js → provider-auth-helpers-DeWQHkRc.js} +1 -1
  127. package/dist/{provider-auth-helpers-Cygsm5_L.js → provider-auth-helpers-S2j3hcBK.js} +1 -1
  128. package/dist/{push-apns-CHM_4e6x.js → push-apns-CJ2CpgRB.js} +1 -1
  129. package/dist/{push-apns-BMfcGm-A.js → push-apns-YD8SuIy0.js} +1 -1
  130. package/dist/{pw-ai-B476LzSK.js → pw-ai-DHoYzirP.js} +11 -11
  131. package/dist/{pw-ai-DE8wmtet.js → pw-ai-DTmHAKPA.js} +1 -1
  132. package/dist/{qmd-manager-lBS9mT9w.js → qmd-manager-8-Z3Cdpt.js} +7 -7
  133. package/dist/{register.agent-BTmY2MoW.js → register.agent-B2u3ouKf.js} +14 -14
  134. package/dist/{register.agent-efba5ajU.js → register.agent-gMPMyFRj.js} +12 -12
  135. package/dist/{register.configure-DHSfWAqs.js → register.configure-C6mVcNay.js} +14 -14
  136. package/dist/{register.configure-EQOE0vHS.js → register.configure-DncWEkhU.js} +13 -13
  137. package/dist/{register.maintenance-CzcgKkH3.js → register.maintenance-Cz1IOILv.js} +15 -15
  138. package/dist/{register.maintenance-CsczzIEq.js → register.maintenance-D5oV0fjR.js} +17 -17
  139. package/dist/{register.message-Bc3A_dfj.js → register.message-B6hxm3rn.js} +9 -9
  140. package/dist/{register.message-u6gwfQPX.js → register.message-QejTHJGQ.js} +10 -10
  141. package/dist/{register.onboard-CtKNq5I_.js → register.onboard-CA06T3Jp.js} +12 -12
  142. package/dist/{register.onboard-yDsskHey.js → register.onboard-kJuHrfio.js} +11 -11
  143. package/dist/{register.setup-BPeB8JTw.js → register.setup-BD8QKVsT.js} +11 -11
  144. package/dist/{register.setup-BJqk3N2q.js → register.setup-C11edfdp.js} +12 -12
  145. package/dist/{register.status-health-sessions-CU6Uv3iO.js → register.status-health-sessions-257I77oA.js} +13 -13
  146. package/dist/{register.status-health-sessions-KzzMJ0H1.js → register.status-health-sessions-CrTiF0_d.js} +11 -11
  147. package/dist/{register.subclis-C_464foT.js → register.subclis-CnOalkYH.js} +12 -12
  148. package/dist/{registry-DYq1AYOv.js → registry-UkL38jvt.js} +17 -17
  149. package/dist/{replies-BWgZR_w5.js → replies-CWH084Xr.js} +3 -3
  150. package/dist/{reply-kWKTXRkY.js → reply-o0IEwJ_P.js} +18 -14
  151. package/dist/{reply-prefix-CvEIl6_d.js → reply-prefix-ZnX2V-k9.js} +1 -1
  152. package/dist/{resolve-route-DX7xcMsD.js → resolve-route-gl0ZOOKR.js} +4 -4
  153. package/dist/{retry-B-y5suGA.js → retry-D25Z8MVS.js} +1 -1
  154. package/dist/{run-main-I-kj1_yf.js → run-main-BuVFHsuQ.js} +25 -25
  155. package/dist/{runner-D5nFF9E6.js → runner-C-ygJOAu.js} +22 -22
  156. package/dist/{runner-BVgCl6yZ.js → runner-COpebDew.js} +1 -1
  157. package/dist/{runner-BopCEjwB.js → runner-CSdQSvE8.js} +1 -1
  158. package/dist/{runner-eBF6SlQ6.js → runner-C_BlQ2fG.js} +1 -1
  159. package/dist/{sandbox-ooxzsj2D.js → sandbox-BOVopTqv.js} +1 -1
  160. package/dist/{sandbox-Cl2r-bXv.js → sandbox-CDxHBl3I.js} +1 -1
  161. package/dist/{sandbox-cli-CZSrSTkk.js → sandbox-cli-0eu7BCa8.js} +2 -2
  162. package/dist/{sandbox-cli-BH45SMwC.js → sandbox-cli-BpfYaZBG.js} +2 -2
  163. package/dist/{security-cli-CEI0zQJs.js → security-cli-B5s73Le2.js} +4 -4
  164. package/dist/{security-cli-Bz-Sv5-H.js → security-cli-CzWHkrqD.js} +4 -4
  165. package/dist/{send-CCmxHtaA.js → send-BJhQtCyM.js} +6 -6
  166. package/dist/{send-xTfsDEE2.js → send-CF_nzDHe.js} +18 -18
  167. package/dist/{send-vqwluhp3.js → send-Cf47Nas6.js} +7 -7
  168. package/dist/{send-B7aHpAco.js → send-DERqzyba.js} +6 -6
  169. package/dist/{send-Yzy50T1h.js → send-DQoKXmre.js} +10 -10
  170. package/dist/{server-methods-DuXvSLX-.js → server-methods-D0laPfTZ.js} +10 -10
  171. package/dist/{server-methods-DQHU-PVR.js → server-methods-D1eF0-Yu.js} +11 -11
  172. package/dist/{server-node-events-CwAM91fd.js → server-node-events-D3iV_wDf.js} +9 -9
  173. package/dist/{server-node-events-ecaGjg5E.js → server-node-events-b7X9bVIS.js} +10 -10
  174. package/dist/{session-BTLA3Rm7.js → session-C1eFu8k4.js} +8 -8
  175. package/dist/{session-utils-Dwt6eGX6.js → session-utils-BPXkhuNM.js} +1 -1
  176. package/dist/{sessions-Do060W3W.js → sessions-BPD85pWA.js} +2 -3
  177. package/dist/{sessions-vYQs1OzE.js → sessions-BeYHj0gr.js} +2 -3
  178. package/dist/{sessions-DQxygr94.js → sessions-NTd36-CO.js} +2 -2
  179. package/dist/{skill-commands-D1hG6Ikz.js → skill-commands-CKXkvl80.js} +16 -16
  180. package/dist/{skills-CXxrn_e2.js → skills-DxmX9HVT.js} +24 -24
  181. package/dist/{sqlite-BHWvOATS.js → sqlite-JHY-uOmS.js} +16 -16
  182. package/dist/{status-v8DOdpX6.js → status-Cv3PcsRo.js} +4 -4
  183. package/dist/{status-DNVKHGLC.js → status-CwrFTb4t.js} +1 -1
  184. package/dist/{status-CW9LMA2M.js → status-K22ODH_m.js} +1 -1
  185. package/dist/{status-DsFAg-bK.js → status-eVKjxfUO.js} +5 -5
  186. package/dist/{store-01F_JM7O.js → store-Ea3zM6xK.js} +6 -6
  187. package/dist/{subagent-registry-C8UsZ8F0.js → subagent-registry-4XZvxwX0.js} +19 -15
  188. package/dist/{subsystem-BjyjJF-d.js → subsystem-DN75fnEF.js} +1 -1
  189. package/dist/{tables-BuM4FKR3.js → tables-Dkg9O8rv.js} +1 -1
  190. package/dist/{target-errors-BEugWC4F.js → target-errors-Pr77jao5.js} +2 -2
  191. package/dist/{thinking-BprCy23Z.js → thinking-C9-JAUzD.js} +5 -5
  192. package/dist/{tokens-W0JzCJJM.js → tokens-CCZl4YHT.js} +1 -1
  193. package/dist/{tool-images-SqqWIT22.js → tool-images-B1qVCntj.js} +2 -2
  194. package/dist/{tool-loop-detection-D5mBY7AC.js → tool-loop-detection-C33wf43N.js} +3 -3
  195. package/dist/{tui-B61kHmM2.js → tui-DfPeXwah.js} +2 -2
  196. package/dist/{tui-CiGfEtDa.js → tui-LZPdrFmK.js} +2 -2
  197. package/dist/{tui-cli-CwNXfDnk.js → tui-cli-Bm3TJgXf.js} +4 -4
  198. package/dist/{tui-cli-DHKMCeGp.js → tui-cli-DFXZ7r1F.js} +4 -4
  199. package/dist/{unified-runner-BojeuKIk.js → unified-runner-BL7URnpP.js} +235 -231
  200. package/dist/{update-cli-BwX8SW9m.js → update-cli-Bf-HR0_b.js} +17 -17
  201. package/dist/{update-cli-DQOw6sqy.js → update-cli-CjtzOlMZ.js} +15 -15
  202. package/dist/{update-runner-BhXkq5Gw.js → update-runner-CxuU59aU.js} +1 -1
  203. package/dist/{update-runner-C56OyqSE.js → update-runner-i95oVXRi.js} +1 -1
  204. package/dist/{web-Dxkxcp7P.js → web-B3QBvAid.js} +58 -58
  205. package/dist/{web-CGicnDRL.js → web-CTog1mw0.js} +9 -9
  206. package/dist/{web-f1xT-H2y.js → web-D6aUh_IC.js} +6 -6
  207. package/dist/{web-NSGlkQEO.js → web-D_WLAogr.js} +9 -9
  208. package/dist/{whatsapp-actions-CiXMwRR8.js → whatsapp-actions-pddprZ8J.js} +23 -23
  209. package/dist/{workspace-DscDraUb.js → workspace-DqJ5h-ZB.js} +27 -27
  210. package/extensions/bluebubbles/package.json +1 -1
  211. package/extensions/copilot-proxy/package.json +1 -1
  212. package/extensions/diagnostics-otel/package.json +1 -1
  213. package/extensions/discord/package.json +1 -1
  214. package/extensions/feishu/package.json +1 -1
  215. package/extensions/google-antigravity-auth/package.json +1 -1
  216. package/extensions/google-gemini-cli-auth/package.json +1 -1
  217. package/extensions/googlechat/package.json +1 -1
  218. package/extensions/imessage/package.json +1 -1
  219. package/extensions/irc/package.json +1 -1
  220. package/extensions/learning-loop/package.json +1 -1
  221. package/extensions/line/package.json +1 -1
  222. package/extensions/llm-task/package.json +1 -1
  223. package/extensions/matrix/CHANGELOG.md +6 -0
  224. package/extensions/matrix/package.json +1 -1
  225. package/extensions/mattermost/package.json +1 -1
  226. package/extensions/memory-core/package.json +1 -1
  227. package/extensions/memory-lancedb/package.json +1 -1
  228. package/extensions/minimax-portal-auth/package.json +1 -1
  229. package/extensions/msteams/CHANGELOG.md +6 -0
  230. package/extensions/msteams/package.json +1 -1
  231. package/extensions/nextcloud-talk/package.json +1 -1
  232. package/extensions/nostr/CHANGELOG.md +6 -0
  233. package/extensions/nostr/package.json +1 -1
  234. package/extensions/open-prose/package.json +1 -1
  235. package/extensions/outlook/index.ts +1 -1
  236. package/extensions/outlook/package.json +1 -1
  237. package/extensions/pipeline/package.json +1 -1
  238. package/extensions/signal/package.json +1 -1
  239. package/extensions/slack/package.json +1 -1
  240. package/extensions/telegram/package.json +1 -1
  241. package/extensions/tlon/package.json +1 -1
  242. package/extensions/twitch/CHANGELOG.md +6 -0
  243. package/extensions/twitch/package.json +1 -1
  244. package/extensions/voice-call/CHANGELOG.md +6 -0
  245. package/extensions/voice-call/package.json +1 -1
  246. package/extensions/whatsapp/package.json +1 -1
  247. package/extensions/zalo/CHANGELOG.md +6 -0
  248. package/extensions/zalo/package.json +1 -1
  249. package/extensions/zalouser/CHANGELOG.md +6 -0
  250. package/extensions/zalouser/package.json +1 -1
  251. package/package.json +1 -1
@@ -11,8 +11,8 @@ import { t as createClackPrompter } from "./clack-prompter-DMuVyYP2.js";
11
11
  import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, r as isGatewayDaemonRuntime, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-BT1zC2PU.js";
12
12
  import { r as isSystemdUserServiceAvailable } from "./systemd-DT6SbCim.js";
13
13
  import { t as resolveGatewayService } from "./service-osK70kTZ.js";
14
- import { r as healthCommand } from "./health-DKxSHkOQ.js";
15
- import { t as runOnboardingWizard } from "./onboarding-Bqz1NgoR.js";
14
+ import { r as healthCommand } from "./health-D1L94KKE.js";
15
+ import { t as runOnboardingWizard } from "./onboarding-BAn2oNRB.js";
16
16
  import { $ as setHuggingfaceApiKey, A as applyXaiConfig, B as applyVercelAiGatewayConfig, E as applyTogetherConfig, I as applyLitellmConfig, M as applyXiaomiConfig, O as applyVeniceConfig, P as applyZaiConfig, Q as setGeminiApiKey, R as applyCloudflareAiGatewayConfig, S as applyQianfanConfig, X as setAnthropicApiKey, Z as setCloudflareAiGatewayConfig, _ as applyMoonshotConfigCn, a as applyMinimaxApiConfig, at as setOpenrouterApiKey, b as applyOpenrouterConfig, ct as setTogetherApiKey, d as applyAuthProfileConfig, dt as setXaiApiKey, et as setKimiCodingApiKey, f as applyHuggingfaceConfig, ft as setXiaomiApiKey, g as applyMoonshotConfig, it as setOpencodeZenApiKey, l as applyMinimaxConfig, lt as setVeniceApiKey, m as applyKimiCodeConfig, n as validateAnthropicSetupToken, nt as setMinimaxApiKey, o as applyMinimaxApiConfigCn, ot as setQianfanApiKey, pt as setZaiApiKey, r as applyOpencodeZenConfig, rt as setMoonshotApiKey, st as setSyntheticApiKey, t as buildTokenProfileId, tt as setLitellmApiKey, ut as setVercelAiGatewayApiKey, w as applySyntheticConfig } from "./auth-token-iC00Mmg8.js";
17
17
  import { n as logConfigUpdated } from "./logging-KpicI3yD.js";
18
18
  import { n as isDeprecatedAuthChoice, r as normalizeLegacyOnboardAuthChoice } from "./auth-choice-legacy-aJ8D6F_s.js";
@@ -1,5 +1,5 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { dt as createPluginLoaderLogger, ft as loadSymiPlugins } from "./reply-kWKTXRkY.js";
2
+ import { dt as createPluginLoaderLogger, ft as loadSymiPlugins } from "./reply-o0IEwJ_P.js";
3
3
  import { h as normalizeAccountId, m as DEFAULT_ACCOUNT_ID } from "./session-key-DCt45XZa.js";
4
4
  import { a as formatChannelSelectionLine, i as formatChannelPrimerLine, s as listChatChannels } from "./registry-Cja8eT7G.js";
5
5
  import { t as createSubsystemLogger } from "./subsystem-D9vIQve0.js";
@@ -3,7 +3,7 @@ import { E as formatChannelSelectionLine, O as listChatChannels, T as formatChan
3
3
  import { t as formatCliCommand } from "./command-format-BtYOfWxC.js";
4
4
  import { h as normalizeAccountId, m as DEFAULT_ACCOUNT_ID } from "./session-key-DjZ7Z1hW.js";
5
5
  import { c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-D-jRCY0d.js";
6
- import { m as loadSymiPlugins, p as createPluginLoaderLogger } from "./subagent-registry-C8UsZ8F0.js";
6
+ import { m as loadSymiPlugins, p as createPluginLoaderLogger } from "./subagent-registry-4XZvxwX0.js";
7
7
  import { n as listChannelPlugins, t as getChannelPlugin } from "./plugins-CwSlLxM8.js";
8
8
  import { t as formatDocsLink } from "./links-DlWpl9Yv.js";
9
9
  import { r as listChannelPluginCatalogEntries } from "./catalog-buoA8ik4.js";
@@ -225,7 +225,7 @@ async function runOnboardingWizard(opts, runtime = defaultRuntime, prompter) {
225
225
  const { ensureAuthProfileStore } = await import("./model-selection-C-eIBa0H.js").then((n) => n.dt);
226
226
  const { promptAuthChoiceGrouped } = await import("./auth-choice-prompt-Cn6U3t8O.js").then((n) => n.t);
227
227
  const { promptCustomApiConfig } = await import("./onboard-custom-B3CBlZe5.js").then((n) => n.r);
228
- const { applyAuthChoice, resolvePreferredProviderForAuthChoice, warnIfModelConfigLooksOff } = await import("./auth-choice-kpk3L0TR.js").then((n) => n.t);
228
+ const { applyAuthChoice, resolvePreferredProviderForAuthChoice, warnIfModelConfigLooksOff } = await import("./auth-choice-KEir_3i_.js").then((n) => n.t);
229
229
  const { applyPrimaryModel, promptDefaultModel } = await import("./model-picker-D-n-rWyt.js").then((n) => n.i);
230
230
  const authStore = ensureAuthProfileStore(void 0, { allowKeychainPrompt: false });
231
231
  const authChoiceFromPrompt = opts.authChoice === void 0;
@@ -263,7 +263,7 @@ async function runOnboardingWizard(opts, runtime = defaultRuntime, prompter) {
263
263
  if (modelSelection.model) nextConfig = applyPrimaryModel(nextConfig, modelSelection.model);
264
264
  }
265
265
  await warnIfModelConfigLooksOff(nextConfig, prompter);
266
- const { configureGatewayForOnboarding } = await import("./onboarding.gateway-config-7LGxdDrq.js");
266
+ const { configureGatewayForOnboarding } = await import("./onboarding.gateway-config-TM8ERKyn.js");
267
267
  const gateway = await configureGatewayForOnboarding({
268
268
  flow,
269
269
  baseConfig,
@@ -278,7 +278,7 @@ async function runOnboardingWizard(opts, runtime = defaultRuntime, prompter) {
278
278
  if (opts.skipChannels ?? opts.skipProviders) await prompter.note("Skipping channel setup.", "Channels");
279
279
  else {
280
280
  const { listChannelPlugins } = await import("./plugins-DKDeQZF0.js").then((n) => n.i);
281
- const { setupChannels } = await import("./onboard-channels-DU6do-N5.js").then((n) => n.n);
281
+ const { setupChannels } = await import("./onboard-channels-CN0qvsHO.js").then((n) => n.n);
282
282
  const quickstartAllowFromChannels = flow === "quickstart" ? listChannelPlugins().filter((plugin) => plugin.meta.quickstartAllowFrom).map((plugin) => plugin.id) : [];
283
283
  nextConfig = await setupChannels(nextConfig, runtime, prompter, {
284
284
  allowSignalInstall: true,
@@ -304,7 +304,7 @@ async function runOnboardingWizard(opts, runtime = defaultRuntime, prompter) {
304
304
  mode
305
305
  });
306
306
  await writeConfigFile(nextConfig);
307
- const { finalizeOnboardingWizard } = await import("./onboarding.finalize-CG0xwhEw.js");
307
+ const { finalizeOnboardingWizard } = await import("./onboarding.finalize-BPZZr8Cm.js");
308
308
  const { launchedTui } = await finalizeOnboardingWizard({
309
309
  flow,
310
310
  opts,
@@ -223,7 +223,7 @@ async function runOnboardingWizard(opts, runtime = defaultRuntime, prompter) {
223
223
  const { ensureAuthProfileStore } = await import("./auth-profiles-BBniPGeS.js").then((n) => n.t);
224
224
  const { promptAuthChoiceGrouped } = await import("./auth-choice-prompt-DVcYPG2v.js").then((n) => n.t);
225
225
  const { promptCustomApiConfig } = await import("./onboard-custom-B1paBymW.js").then((n) => n.r);
226
- const { applyAuthChoice, resolvePreferredProviderForAuthChoice, warnIfModelConfigLooksOff } = await import("./auth-choice-hKVjPWaU.js").then((n) => n.t);
226
+ const { applyAuthChoice, resolvePreferredProviderForAuthChoice, warnIfModelConfigLooksOff } = await import("./auth-choice-obR6mZqe.js").then((n) => n.t);
227
227
  const { applyPrimaryModel, promptDefaultModel } = await import("./model-picker-RQfDGgfM.js").then((n) => n.i);
228
228
  const authStore = ensureAuthProfileStore(void 0, { allowKeychainPrompt: false });
229
229
  const authChoiceFromPrompt = opts.authChoice === void 0;
@@ -261,7 +261,7 @@ async function runOnboardingWizard(opts, runtime = defaultRuntime, prompter) {
261
261
  if (modelSelection.model) nextConfig = applyPrimaryModel(nextConfig, modelSelection.model);
262
262
  }
263
263
  await warnIfModelConfigLooksOff(nextConfig, prompter);
264
- const { configureGatewayForOnboarding } = await import("./onboarding.gateway-config-DJJRuyZ_.js");
264
+ const { configureGatewayForOnboarding } = await import("./onboarding.gateway-config-vGTQDqA6.js");
265
265
  const gateway = await configureGatewayForOnboarding({
266
266
  flow,
267
267
  baseConfig,
@@ -276,7 +276,7 @@ async function runOnboardingWizard(opts, runtime = defaultRuntime, prompter) {
276
276
  if (opts.skipChannels ?? opts.skipProviders) await prompter.note("Skipping channel setup.", "Channels");
277
277
  else {
278
278
  const { listChannelPlugins } = await import("./plugins-CwSlLxM8.js").then((n) => n.i);
279
- const { setupChannels } = await import("./onboard-channels-DaY1NwXd.js").then((n) => n.n);
279
+ const { setupChannels } = await import("./onboard-channels-Cg4bD8ps.js").then((n) => n.n);
280
280
  const quickstartAllowFromChannels = flow === "quickstart" ? listChannelPlugins().filter((plugin) => plugin.meta.quickstartAllowFrom).map((plugin) => plugin.id) : [];
281
281
  nextConfig = await setupChannels(nextConfig, runtime, prompter, {
282
282
  allowSignalInstall: true,
@@ -302,7 +302,7 @@ async function runOnboardingWizard(opts, runtime = defaultRuntime, prompter) {
302
302
  mode
303
303
  });
304
304
  await writeConfigFile(nextConfig);
305
- const { finalizeOnboardingWizard } = await import("./onboarding.finalize-DzTo4LEo.js");
305
+ const { finalizeOnboardingWizard } = await import("./onboarding.finalize-BTrhVcW5.js");
306
306
  const { launchedTui } = await finalizeOnboardingWizard({
307
307
  flow,
308
308
  opts,
@@ -1,7 +1,7 @@
1
1
  import "./paths-Cqn-zk3M.js";
2
2
  import { h as pathExists, y as resolveUserPath } from "./utils-B-0b9bGM.js";
3
3
  import "./thinking-EAliFiVK.js";
4
- import "./reply-kWKTXRkY.js";
4
+ import "./reply-o0IEwJ_P.js";
5
5
  import "./registry-Cja8eT7G.js";
6
6
  import { p as restoreTerminalState } from "./subsystem-D9vIQve0.js";
7
7
  import "./exec-CWkblSrI.js";
@@ -15,12 +15,12 @@ import "./message-channel-aT-I_DTX.js";
15
15
  import "./send-BKhluIbb.js";
16
16
  import "./config-PXAJCHa5.js";
17
17
  import "./manifest-registry-BDSRH8nU.js";
18
- import "./runner-eBF6SlQ6.js";
19
- import "./image-C2IvljWU.js";
18
+ import "./runner-C_BlQ2fG.js";
19
+ import "./image-D_qN_IxA.js";
20
20
  import "./models-config-B91ShhoT.js";
21
21
  import "./pi-model-discovery-4uUnLc3n.js";
22
- import "./pi-embedded-helpers-DiXXYmgo.js";
23
- import "./sandbox-ooxzsj2D.js";
22
+ import "./pi-embedded-helpers-DpOccVre.js";
23
+ import "./sandbox-BOVopTqv.js";
24
24
  import "./chrome-BJvuH-NZ.js";
25
25
  import "./tailscale-D5dKabOc.js";
26
26
  import "./auth-B741uFtk.js";
@@ -37,7 +37,7 @@ import "./image-ops-1OJMSAUX.js";
37
37
  import "./store-r1DJSDq-.js";
38
38
  import "./ports-BOmtxoTv.js";
39
39
  import "./trash-DcMh1i4B.js";
40
- import "./sessions-vYQs1OzE.js";
40
+ import "./sessions-BeYHj0gr.js";
41
41
  import "./dock-BhS32F6E.js";
42
42
  import "./plugins-DKDeQZF0.js";
43
43
  import "./accounts-DDuIpcln.js";
@@ -56,7 +56,7 @@ import "./sqlite-Dx3J_aSE.js";
56
56
  import "./model-catalog-Dex2EDUJ.js";
57
57
  import "./tokens-BuceUQDl.js";
58
58
  import "./with-timeout-emS7y-kf.js";
59
- import "./deliver-CXpvGXqJ.js";
59
+ import "./deliver-lG9ITE8w.js";
60
60
  import "./diagnostic-CH0skkp6.js";
61
61
  import "./diagnostic-session-state-CUslJyKP.js";
62
62
  import "./send-DFftzTHo.js";
@@ -99,22 +99,22 @@ import "./prompt-style-CnkMpSXt.js";
99
99
  import "./pairing-labels-BScqzHEx.js";
100
100
  import "./exec-approvals-DXM2pQYL.js";
101
101
  import "./nodes-screen-8Bq7DiSa.js";
102
- import "./pi-tools.policy-p7LLu64F.js";
102
+ import "./pi-tools.policy-BpN-v9bT.js";
103
103
  import "./control-service-D0IdaeI8.js";
104
104
  import "./stagger-CvFURHzt.js";
105
105
  import "./channel-selection-V2xDgw16.js";
106
106
  import "./runtime-guard-Dik20CVM.js";
107
- import "./program-context-G2iHoB5D.js";
107
+ import "./program-context-BJEZcvA2.js";
108
108
  import "./note-DQ9BvHF2.js";
109
- import { r as installCompletion } from "./completion-cli-W3fyiL94.js";
109
+ import { r as installCompletion } from "./completion-cli-BzV4_BVf.js";
110
110
  import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-BT1zC2PU.js";
111
111
  import { r as isSystemdUserServiceAvailable } from "./systemd-DT6SbCim.js";
112
112
  import { t as resolveGatewayService } from "./service-osK70kTZ.js";
113
- import { r as healthCommand } from "./health-DKxSHkOQ.js";
113
+ import { r as healthCommand } from "./health-D1L94KKE.js";
114
114
  import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-B7moDVHX.js";
115
115
  import { t as formatHealthCheckFailure } from "./health-format-DRCaak6L.js";
116
- import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-mlj3aq0W.js";
117
- import { t as runTui } from "./tui-B61kHmM2.js";
116
+ import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-jev9bFib.js";
117
+ import { t as runTui } from "./tui-DfPeXwah.js";
118
118
  import os from "node:os";
119
119
  import path from "node:path";
120
120
  import fs from "node:fs/promises";
@@ -15,8 +15,8 @@ import "./client-qUlxXXVJ.js";
15
15
  import "./call-BrRWr7Lj.js";
16
16
  import "./message-channel-C9dERklz.js";
17
17
  import "./pairing-token-Byh6drgn.js";
18
- import "./subagent-registry-C8UsZ8F0.js";
19
- import "./sessions-Do060W3W.js";
18
+ import "./subagent-registry-4XZvxwX0.js";
19
+ import "./sessions-BPD85pWA.js";
20
20
  import "./tokens-Csntmwwn.js";
21
21
  import "./plugins-CwSlLxM8.js";
22
22
  import "./accounts-D9ITgITj.js";
@@ -25,14 +25,14 @@ import "./logging-CFvkxgcX.js";
25
25
  import "./send-BcvVKfh2.js";
26
26
  import "./send-DnsTDCll.js";
27
27
  import "./with-timeout-BIXdW2Bg.js";
28
- import "./deliver-CiL9mQXH.js";
28
+ import "./deliver-BLt_liXS.js";
29
29
  import "./diagnostic-Ci8Xsc_Y.js";
30
30
  import "./diagnostic-session-state-CIjIGxEE.js";
31
31
  import "./accounts-D1eLj5t8.js";
32
32
  import "./send-CaUqpyyp.js";
33
33
  import "./image-ops-CUkaZz2F.js";
34
- import "./pi-embedded-helpers-jo_kKs-Z.js";
35
- import "./sandbox-Cl2r-bXv.js";
34
+ import "./pi-embedded-helpers-DSscUmkR.js";
35
+ import "./sandbox-CDxHBl3I.js";
36
36
  import "./chrome-D2ohnA09.js";
37
37
  import "./tailscale-CbbvYNVw.js";
38
38
  import "./auth-BfDMhFAj.js";
@@ -67,11 +67,11 @@ import "./ir-D-flMHhr.js";
67
67
  import "./render-e7fENCYH.js";
68
68
  import "./commands-CkrIpKCc.js";
69
69
  import "./commands-registry-CccyRhnX.js";
70
- import "./image-CJ_QZqzR.js";
70
+ import "./image-DXco5IYt.js";
71
71
  import "./tool-display-CXwOC-qw.js";
72
- import "./runner-BopCEjwB.js";
72
+ import "./runner-CSdQSvE8.js";
73
73
  import "./model-catalog-DKGSg6jF.js";
74
- import "./session-utils-Dwt6eGX6.js";
74
+ import "./session-utils-BPXkhuNM.js";
75
75
  import "./skill-commands-BSJONVkt.js";
76
76
  import "./workspace-dirs-CPNL2Acu.js";
77
77
  import "./pairing-store-NgA78L2g.js";
@@ -98,21 +98,21 @@ import "./replies-CsUBFXf6.js";
98
98
  import { b as waitForGatewayReachable, f as openUrl, g as resolveControlUiLinks, i as detectBrowserOpenSupport, m as probeGatewayReachable, o as formatControlUiSshHint } from "./onboard-helpers-7H_XiJt-.js";
99
99
  import "./prompt-style-DwCXob2h.js";
100
100
  import "./pairing-labels-DwceB1dG.js";
101
- import "./pi-tools.policy-CGVKAOoE.js";
101
+ import "./pi-tools.policy-DOVQ8dDx.js";
102
102
  import "./note-DDecZomM.js";
103
- import "./register.subclis-C_464foT.js";
104
- import "./command-registry-DEe4juCf.js";
103
+ import "./register.subclis-CnOalkYH.js";
104
+ import "./command-registry-nSYGDoue.js";
105
105
  import "./program-context-CqzR_m-7.js";
106
- import { r as installCompletion } from "./completion-cli-D0j-46vF.js";
106
+ import { r as installCompletion } from "./completion-cli-CR5v_bKh.js";
107
107
  import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-BV78EN62.js";
108
108
  import "./runtime-guard-D7waq_Ho.js";
109
109
  import { r as isSystemdUserServiceAvailable } from "./systemd-DlMdyFDY.js";
110
110
  import { t as resolveGatewayService } from "./service-Cm9j9WzQ.js";
111
- import { r as healthCommand } from "./health-DvkoG4Dw.js";
111
+ import { r as healthCommand } from "./health-7ZvWXkvm.js";
112
112
  import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-BseSWee1.js";
113
113
  import { t as formatHealthCheckFailure } from "./health-format-CzgUHmmX.js";
114
- import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-DOnUbTdS.js";
115
- import { t as runTui } from "./tui-CiGfEtDa.js";
114
+ import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-D-deyczv.js";
115
+ import { t as runTui } from "./tui-LZPdrFmK.js";
116
116
  import os from "node:os";
117
117
  import path from "node:path";
118
118
  import fs from "node:fs/promises";
@@ -12,7 +12,7 @@ import "./message-channel-aT-I_DTX.js";
12
12
  import "./config-PXAJCHa5.js";
13
13
  import "./manifest-registry-BDSRH8nU.js";
14
14
  import { a as findTailscaleBinary } from "./tailscale-D5dKabOc.js";
15
- import "./sessions-vYQs1OzE.js";
15
+ import "./sessions-BeYHj0gr.js";
16
16
  import "./dock-BhS32F6E.js";
17
17
  import "./plugins-DKDeQZF0.js";
18
18
  import "./accounts-DDuIpcln.js";
@@ -8,7 +8,7 @@ import "./client-qUlxXXVJ.js";
8
8
  import "./call-BrRWr7Lj.js";
9
9
  import "./message-channel-C9dERklz.js";
10
10
  import "./pairing-token-Byh6drgn.js";
11
- import "./sessions-Do060W3W.js";
11
+ import "./sessions-BPD85pWA.js";
12
12
  import "./plugins-CwSlLxM8.js";
13
13
  import "./accounts-D9ITgITj.js";
14
14
  import "./bindings-DlWb_Kaq.js";
@@ -1,5 +1,5 @@
1
- import { r as saveMediaBuffer } from "./store-01F_JM7O.js";
2
- import { a as loadWebMedia } from "./ir-JAy_3A3B.js";
1
+ import { r as saveMediaBuffer } from "./store-Ea3zM6xK.js";
2
+ import { a as loadWebMedia } from "./ir-Z9axTYHx.js";
3
3
 
4
4
  //#region src/media/outbound-attachment.ts
5
5
  async function resolveOutboundAttachmentFromUrl(mediaUrl, maxBytes, options) {
@@ -1,12 +1,12 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { D as escapeRegExp, H as toWhatsappJid, rt as getChildLogger } from "./registry-DYq1AYOv.js";
3
- import { t as createSubsystemLogger } from "./subsystem-BjyjJF-d.js";
4
- import { n as loadConfig } from "./config-BkZ9HOKT.js";
5
- import { n as resolveMarkdownTableMode } from "./markdown-tables-Dnj2LQUc.js";
6
- import { a as loadWebMedia } from "./ir-JAy_3A3B.js";
2
+ import { D as escapeRegExp, H as toWhatsappJid, rt as getChildLogger } from "./registry-UkL38jvt.js";
3
+ import { t as createSubsystemLogger } from "./subsystem-DN75fnEF.js";
4
+ import { n as loadConfig } from "./config-Dp67YMkg.js";
5
+ import { n as resolveMarkdownTableMode } from "./markdown-tables-DuRhvVpP.js";
6
+ import { a as loadWebMedia } from "./ir-Z9axTYHx.js";
7
7
  import { n as normalizePollInput } from "./polls-BKbIUHj7.js";
8
- import { t as convertMarkdownTables } from "./tables-BuM4FKR3.js";
9
- import { n as requireActiveWebListener } from "./active-listener-Br2FcRv7.js";
8
+ import { t as convertMarkdownTables } from "./tables-Dkg9O8rv.js";
9
+ import { n as requireActiveWebListener } from "./active-listener-C3pfJhdC.js";
10
10
  import { randomUUID } from "node:crypto";
11
11
 
12
12
  //#region src/markdown/whatsapp.ts
@@ -0,0 +1,212 @@
1
+ import path from "node:path";
2
+ import fsSync from "node:fs";
3
+ import os from "node:os";
4
+
5
+ //#region src/infra/home-dir.ts
6
+ function normalize(value) {
7
+ const trimmed = value?.trim();
8
+ return trimmed ? trimmed : void 0;
9
+ }
10
+ function resolveEffectiveHomeDir(env = process.env, homedir = os.homedir) {
11
+ const raw = resolveRawHomeDir(env, homedir);
12
+ return raw ? path.resolve(raw) : void 0;
13
+ }
14
+ function resolveRawHomeDir(env, homedir) {
15
+ const explicitHome = normalize(env.SYMI_HOME);
16
+ if (explicitHome) {
17
+ if (explicitHome === "~" || explicitHome.startsWith("~/") || explicitHome.startsWith("~\\")) {
18
+ const fallbackHome = normalize(env.HOME) ?? normalize(env.USERPROFILE) ?? normalizeSafe(homedir);
19
+ if (fallbackHome) return explicitHome.replace(/^~(?=$|[\\/])/, fallbackHome);
20
+ return;
21
+ }
22
+ return explicitHome;
23
+ }
24
+ const envHome = normalize(env.HOME);
25
+ if (envHome) return envHome;
26
+ const userProfile = normalize(env.USERPROFILE);
27
+ if (userProfile) return userProfile;
28
+ return normalizeSafe(homedir);
29
+ }
30
+ function normalizeSafe(homedir) {
31
+ try {
32
+ return normalize(homedir());
33
+ } catch {
34
+ return;
35
+ }
36
+ }
37
+ function resolveRequiredHomeDir(env = process.env, homedir = os.homedir) {
38
+ return resolveEffectiveHomeDir(env, homedir) ?? path.resolve(process.cwd());
39
+ }
40
+ function expandHomePrefix(input, opts) {
41
+ if (!input.startsWith("~")) return input;
42
+ const home = normalize(opts?.home) ?? resolveEffectiveHomeDir(opts?.env ?? process.env, opts?.homedir ?? os.homedir);
43
+ if (!home) return input;
44
+ return input.replace(/^~(?=$|[\\/])/, home);
45
+ }
46
+
47
+ //#endregion
48
+ //#region src/config/paths.ts
49
+ /**
50
+ * Nix mode detection: When SYMI_NIX_MODE=1, the gateway is running under Nix.
51
+ * In this mode:
52
+ * - No auto-install flows should be attempted
53
+ * - Missing dependencies should produce actionable Nix-specific error messages
54
+ * - Config is managed externally (read-only from Nix perspective)
55
+ */
56
+ function resolveIsNixMode(env = process.env) {
57
+ return env.SYMI_NIX_MODE === "1";
58
+ }
59
+ const isNixMode = resolveIsNixMode();
60
+ const LEGACY_STATE_DIRNAMES = [];
61
+ const NEW_STATE_DIRNAME = ".symi";
62
+ const CONFIG_FILENAME = "symi.json";
63
+ const LEGACY_CONFIG_FILENAMES = [];
64
+ function resolveDefaultHomeDir() {
65
+ return resolveRequiredHomeDir(process.env, os.homedir);
66
+ }
67
+ /** Build a homedir thunk that respects SYMI_HOME for the given env. */
68
+ function envHomedir(env) {
69
+ return () => resolveRequiredHomeDir(env, os.homedir);
70
+ }
71
+ function legacyStateDirs(homedir = resolveDefaultHomeDir) {
72
+ return LEGACY_STATE_DIRNAMES.map((dir) => path.join(homedir(), dir));
73
+ }
74
+ function newStateDir(homedir = resolveDefaultHomeDir) {
75
+ return path.join(homedir(), NEW_STATE_DIRNAME);
76
+ }
77
+ /**
78
+ * State directory for mutable data (sessions, logs, caches).
79
+ * Can be overridden via SYMI_STATE_DIR.
80
+ * Default: ~/.symi
81
+ */
82
+ function resolveStateDir(env = process.env, homedir = envHomedir(env)) {
83
+ const effectiveHomedir = () => resolveRequiredHomeDir(env, homedir);
84
+ const override = env.SYMI_STATE_DIR?.trim();
85
+ if (override) return resolveUserPath(override, env, effectiveHomedir);
86
+ const newDir = newStateDir(effectiveHomedir);
87
+ const legacyDirs = legacyStateDirs(effectiveHomedir);
88
+ if (fsSync.existsSync(newDir)) return newDir;
89
+ const existingLegacy = legacyDirs.find((dir) => {
90
+ try {
91
+ return fsSync.existsSync(dir);
92
+ } catch {
93
+ return false;
94
+ }
95
+ });
96
+ if (existingLegacy) return existingLegacy;
97
+ return newDir;
98
+ }
99
+ function resolveUserPath(input, env = process.env, homedir = envHomedir(env)) {
100
+ const trimmed = input.trim();
101
+ if (!trimmed) return trimmed;
102
+ if (trimmed.startsWith("~")) {
103
+ const expanded = expandHomePrefix(trimmed, {
104
+ home: resolveRequiredHomeDir(env, homedir),
105
+ env,
106
+ homedir
107
+ });
108
+ return path.resolve(expanded);
109
+ }
110
+ return path.resolve(trimmed);
111
+ }
112
+ const STATE_DIR = resolveStateDir();
113
+ /**
114
+ * Config file path (JSON5).
115
+ * Can be overridden via SYMI_CONFIG_PATH.
116
+ * Default: ~/.symi/symi.json (or $SYMI_STATE_DIR/symi.json)
117
+ */
118
+ function resolveCanonicalConfigPath(env = process.env, stateDir = resolveStateDir(env, envHomedir(env))) {
119
+ const override = env.SYMI_CONFIG_PATH?.trim();
120
+ if (override) return resolveUserPath(override, env, envHomedir(env));
121
+ return path.join(stateDir, CONFIG_FILENAME);
122
+ }
123
+ /**
124
+ * Resolve the active config path by preferring existing config candidates
125
+ * before falling back to the canonical path.
126
+ */
127
+ function resolveConfigPathCandidate(env = process.env, homedir = envHomedir(env)) {
128
+ const existing = resolveDefaultConfigCandidates(env, homedir).find((candidate) => {
129
+ try {
130
+ return fsSync.existsSync(candidate);
131
+ } catch {
132
+ return false;
133
+ }
134
+ });
135
+ if (existing) return existing;
136
+ return resolveCanonicalConfigPath(env, resolveStateDir(env, homedir));
137
+ }
138
+ /**
139
+ * Active config path (prefers existing config files).
140
+ */
141
+ function resolveConfigPath(env = process.env, stateDir = resolveStateDir(env, envHomedir(env)), homedir = envHomedir(env)) {
142
+ const override = env.SYMI_CONFIG_PATH?.trim();
143
+ if (override) return resolveUserPath(override, env, homedir);
144
+ const stateOverride = env.SYMI_STATE_DIR?.trim();
145
+ const existing = [path.join(stateDir, CONFIG_FILENAME), ...LEGACY_CONFIG_FILENAMES.map((name) => path.join(stateDir, name))].find((candidate) => {
146
+ try {
147
+ return fsSync.existsSync(candidate);
148
+ } catch {
149
+ return false;
150
+ }
151
+ });
152
+ if (existing) return existing;
153
+ if (stateOverride) return path.join(stateDir, CONFIG_FILENAME);
154
+ const defaultStateDir = resolveStateDir(env, homedir);
155
+ if (path.resolve(stateDir) === path.resolve(defaultStateDir)) return resolveConfigPathCandidate(env, homedir);
156
+ return path.join(stateDir, CONFIG_FILENAME);
157
+ }
158
+ const CONFIG_PATH = resolveConfigPathCandidate();
159
+ /**
160
+ * Resolve default config path candidates across default locations.
161
+ * Order: explicit config path → state-dir-derived paths → new default.
162
+ */
163
+ function resolveDefaultConfigCandidates(env = process.env, homedir = envHomedir(env)) {
164
+ const effectiveHomedir = () => resolveRequiredHomeDir(env, homedir);
165
+ const explicit = env.SYMI_CONFIG_PATH?.trim();
166
+ if (explicit) return [resolveUserPath(explicit, env, effectiveHomedir)];
167
+ const candidates = [];
168
+ const symiStateDir = env.SYMI_STATE_DIR?.trim();
169
+ if (symiStateDir) {
170
+ const resolved = resolveUserPath(symiStateDir, env, effectiveHomedir);
171
+ candidates.push(path.join(resolved, CONFIG_FILENAME));
172
+ candidates.push(...LEGACY_CONFIG_FILENAMES.map((name) => path.join(resolved, name)));
173
+ }
174
+ const defaultDirs = [newStateDir(effectiveHomedir), ...legacyStateDirs(effectiveHomedir)];
175
+ for (const dir of defaultDirs) {
176
+ candidates.push(path.join(dir, CONFIG_FILENAME));
177
+ candidates.push(...LEGACY_CONFIG_FILENAMES.map((name) => path.join(dir, name)));
178
+ }
179
+ return candidates;
180
+ }
181
+ const DEFAULT_GATEWAY_PORT = 18789;
182
+ const OAUTH_FILENAME = "oauth.json";
183
+ /**
184
+ * OAuth credentials storage directory.
185
+ *
186
+ * Precedence:
187
+ * - `SYMI_OAUTH_DIR` (explicit override)
188
+ * - `$*_STATE_DIR/credentials` (canonical server/default)
189
+ */
190
+ function resolveOAuthDir(env = process.env, stateDir = resolveStateDir(env, envHomedir(env))) {
191
+ const override = env.SYMI_OAUTH_DIR?.trim();
192
+ if (override) return resolveUserPath(override, env, envHomedir(env));
193
+ return path.join(stateDir, "credentials");
194
+ }
195
+ function resolveOAuthPath(env = process.env, stateDir = resolveStateDir(env, envHomedir(env))) {
196
+ return path.join(resolveOAuthDir(env, stateDir), OAUTH_FILENAME);
197
+ }
198
+ function resolveGatewayPort(cfg, env = process.env) {
199
+ const envRaw = env.SYMI_GATEWAY_PORT?.trim();
200
+ if (envRaw) {
201
+ const parsed = Number.parseInt(envRaw, 10);
202
+ if (Number.isFinite(parsed) && parsed > 0) return parsed;
203
+ }
204
+ const configPort = cfg?.gateway?.port;
205
+ if (typeof configPort === "number" && Number.isFinite(configPort)) {
206
+ if (configPort > 0) return configPort;
207
+ }
208
+ return DEFAULT_GATEWAY_PORT;
209
+ }
210
+
211
+ //#endregion
212
+ export { resolveOAuthDir as a, expandHomePrefix as c, resolveGatewayPort as i, resolveEffectiveHomeDir as l, resolveConfigPath as n, resolveOAuthPath as o, resolveDefaultConfigCandidates as r, resolveStateDir as s, STATE_DIR as t, resolveRequiredHomeDir as u };
@@ -1,4 +1,4 @@
1
- import { c as expandHomePrefix, s as resolveStateDir, u as resolveRequiredHomeDir } from "./paths-CE7eVGHg.js";
1
+ import { c as expandHomePrefix, s as resolveStateDir, u as resolveRequiredHomeDir } from "./paths-CYmyCDsE.js";
2
2
  import { s as normalizeAgentId, t as DEFAULT_AGENT_ID } from "./session-key-BCzIW1Y2.js";
3
3
  import path from "node:path";
4
4
  import os from "node:os";
@@ -1,5 +1,5 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { C as normalizeProviderId, U as normalizeOptionalSecretInput, d as ensureAuthProfileStore } from "./auth-profiles-C2vj6htZ.js";
2
+ import { C as normalizeProviderId, U as normalizeOptionalSecretInput, d as ensureAuthProfileStore } from "./auth-profiles-aJfgABnE.js";
3
3
  import path from "node:path";
4
4
  import fs from "node:fs/promises";
5
5