@symerian/symi 2.8.13 → 2.8.14
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.
- package/dist/{accounts-BuZxOb3B.js → accounts-Bsg6r6H7.js} +1 -1
- package/dist/{accounts-BRw8yhIW.js → accounts-BsgY6sda.js} +21 -21
- package/dist/{accounts-3dCrO3oZ.js → accounts-wWWkC0JH.js} +1 -1
- package/dist/{active-listener-BVZOh2T1.js → active-listener-AVNn5_U9.js} +1 -1
- package/dist/{agent-scope-CpEJ0B88.js → agent-scope-Cpm7a9ss.js} +3 -3
- package/dist/{agents-CgCg4syn.js → agents-DlAvDWxz.js} +4 -4
- package/dist/{agents.config-BnPC7uct.js → agents.config-BKKMbeeE.js} +1 -1
- package/dist/{agents.config-DqWxpgkX.js → agents.config-Dd-11klq.js} +1 -1
- package/dist/{audio-preflight-NdNUAZ0y.js → audio-preflight-C6vpFnOG.js} +4 -4
- package/dist/{audio-preflight-Cb-T0r6e.js → audio-preflight-rrz8KyHd.js} +29 -29
- package/dist/{audit-Bi9Je9FZ.js → audit-BhCJV2l6.js} +1 -1
- package/dist/{audit-Oa5dsn5p.js → audit-CB97BqHJ.js} +1 -1
- package/dist/{auth-choice-BKwypsnS.js → auth-choice-C6woT6k2.js} +1 -1
- package/dist/{auth-choice-BIlBt2d0.js → auth-choice-CRQRPwQt.js} +1 -1
- package/dist/{auth-profiles-C2vj6htZ.js → auth-profiles-BzB_Exeq.js} +17 -17
- package/dist/{banner-CX5CuLWQ.js → banner-DrNha2_N.js} +1 -1
- package/dist/{bindings-BsHoBLIE.js → bindings-xcRox9xM.js} +2 -2
- package/dist/build-info.json +3 -3
- package/dist/bundled/boot-md/handler.js +54 -54
- package/dist/bundled/bootstrap-extra-files/handler.js +5 -5
- package/dist/bundled/command-logger/handler.js +1 -1
- package/dist/bundled/session-memory/handler.js +54 -54
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{channel-activity-D8QD7GoV.js → channel-activity-CzHaIUAp.js} +1 -1
- package/dist/{channel-options-mUKQVJQl.js → channel-options-D8q9En4T.js} +1 -1
- package/dist/{channel-options-7y9EuPLO.js → channel-options-DYy2sCfN.js} +1 -1
- package/dist/{channel-web-Dldh4zVI.js → channel-web-CRBU4eZk.js} +1 -1
- package/dist/{channels-cli-Dz9vV1KL.js → channels-cli-BUk43hHR.js} +7 -7
- package/dist/{channels-cli-Q6Q8LokG.js → channels-cli-Dk3kUw9A.js} +7 -7
- package/dist/{chrome-ROtrXlNs.js → chrome-B14NNyfm.js} +5 -5
- package/dist/{chrome-BUT--ob3.js → chrome-DwXnykXR.js} +23 -23
- package/dist/{chunk-BRe1o4Af.js → chunk-BcxcL1U3.js} +1 -1
- package/dist/{cli-DMsLCQbO.js → cli-5gWsnsB7.js} +4 -4
- package/dist/{cli-D4WYEtu4.js → cli-DjZzJy3t.js} +4 -4
- package/dist/{command-registry-cEqGIx4b.js → command-registry-LjFltTU9.js} +10 -10
- package/dist/{commands-registry-DxbSTLNQ.js → commands-registry-ByGkL6hs.js} +4 -4
- package/dist/{completion-cli-Bw0jbNaG.js → completion-cli-BVTGy8th.js} +1 -1
- package/dist/{completion-cli-C5GCKfKT.js → completion-cli-Cf6fYZWL.js} +2 -2
- package/dist/{config-BkZ9HOKT.js → config-C4WnAd-c.js} +17 -17
- package/dist/{config-cli-DP0hP7WR.js → config-cli-C7DIbGxx.js} +1 -1
- package/dist/{config-cli-DgHooQ4_.js → config-cli-EgWrCemi.js} +1 -1
- package/dist/{configure-OUiXvgMg.js → configure-B67uIawm.js} +3 -3
- package/dist/{configure-BQUkaPdS.js → configure-Bk-snuxh.js} +3 -3
- package/dist/{consolidate-07QMweFF.js → consolidate-DRtVvG2U.js} +4 -4
- package/dist/{deliver-B_Q_nWJV.js → deliver-D0bWiRCg.js} +1 -1
- package/dist/{deliver-B0OUq6RP.js → deliver-SLYAWE19.js} +20 -20
- package/dist/{diagnostic-BUcR3Meg.js → diagnostic-DTkZsRNM.js} +1 -1
- package/dist/{doctor-completion-DlKvncR9.js → doctor-completion-By066O3p.js} +1 -1
- package/dist/{doctor-completion-BSMAyCq_.js → doctor-completion-lE_33xaY.js} +1 -1
- package/dist/entry.js +1 -1
- package/dist/{env-BDXYbTKj.js → env-CB65jmJQ.js} +1 -1
- package/dist/extensionAPI.js +7 -7
- package/dist/{frontmatter-CTR5f_Ez.js → frontmatter-CT1M0pRK.js} +4 -4
- package/dist/{gateway-cli-BlRNLVfU.js → gateway-cli-C6uT2x34.js} +13 -13
- package/dist/{gateway-cli-NI7W2QxR.js → gateway-cli-DqEgqVKC.js} +13 -13
- package/dist/{gemini-auth-BefM10YB.js → gemini-auth-D80BsXr2.js} +1 -1
- package/dist/{github-copilot-token-cCYzSU9h.js → github-copilot-token-B8B2pmph.js} +7 -7
- package/dist/{glass-ui-ws-BBkFBsKB.js → glass-ui-ws-77TY57IO.js} +11 -11
- package/dist/{glass-ui-ws-DxrESDzy.js → glass-ui-ws-CLAUHeZR.js} +11 -11
- package/dist/{health-fOu0S75U.js → health-2jkjZxY8.js} +1 -1
- package/dist/{health-D4vU-wV-.js → health-CvMHgR-L.js} +1 -1
- package/dist/{hooks-cli-BdgnXYmw.js → hooks-cli-CRZySOiz.js} +5 -5
- package/dist/{hooks-cli-DdSggQYs.js → hooks-cli-DSaezFsD.js} +5 -5
- package/dist/{image-BuVL0jHI.js → image-BHF_fnIp.js} +4 -4
- package/dist/{image-tzIqIuKx.js → image-MNvheU8U.js} +1 -1
- package/dist/{plugin-sdk/image-ops-BlQR__MN.js → image-ops-CY7v6vvp.js} +17 -17
- package/dist/index.js +9 -9
- package/dist/{internal-DjnxpF_K.js → internal-FNqguZSK.js} +11 -11
- package/dist/{ir-7tMVY7D_.js → ir-D6MiJpAy.js} +4 -4
- package/dist/llm-slug-generator.js +54 -54
- package/dist/{local-roots-ClipCZ9s.js → local-roots-tcdaIEhh.js} +5 -5
- package/dist/{login-D4rZWBXe.js → login-D4ZkmSrY.js} +7 -7
- package/dist/{login-qr-DdAVHOEC.js → login-qr-C9ftIq3n.js} +12 -12
- package/dist/{manager-DRrGn88w.js → manager-BtWtmpxN.js} +1 -1
- package/dist/{manager-syNf_ZrI.js → manager-DDELj5o9.js} +1 -1
- package/dist/{manager-TOeH0D8K.js → manager-DrmlegR2.js} +1 -1
- package/dist/{manager-_RGWWymD.js → manager-DxCmjSfP.js} +24 -24
- package/dist/{manifest-registry-CBCGTsIb.js → manifest-registry-BvGv6lp9.js} +19 -19
- package/dist/{markdown-tables-x2Xe2UXh.js → markdown-tables-CE-qSMGB.js} +1 -1
- package/dist/{memory-cli-0jm-n36m.js → memory-cli-ENCASZJk.js} +3 -3
- package/dist/{memory-cli-BSOOwpt1.js → memory-cli-Qgbcxvuf.js} +3 -3
- package/dist/{plugin-sdk/message-channel-COTAJzHd.js → message-channel-lwVT8QjK.js} +1 -1
- package/dist/{models-sGeWQOmg.js → models-COhUz7M9.js} +2 -2
- package/dist/{models-cli-CtkoEyh3.js → models-cli-CCxYcF4R.js} +5 -5
- package/dist/{models-cli-DV-J1cm0.js → models-cli-CYvXBvmZ.js} +6 -6
- package/dist/{onboard-FeTHeA1y.js → onboard-CQNUYBIp.js} +2 -2
- package/dist/{onboard-channels-DpZkjldS.js → onboard-channels-9erx07qe.js} +1 -1
- package/dist/{onboard-channels-D8bDJYPc.js → onboard-channels-CWw8G-6n.js} +1 -1
- package/dist/{onboard-CWBYuaCm.js → onboard-fVpLVnwg.js} +2 -2
- package/dist/{onboarding-BsPnnH5g.js → onboarding-CtEiH9WG.js} +3 -3
- package/dist/{onboarding-c2qhwP0x.js → onboarding-D-OIkDwZ.js} +3 -3
- package/dist/{onboarding.finalize-7St3fmk2.js → onboarding.finalize-BY3HNjX4.js} +9 -9
- package/dist/{onboarding.finalize-id9EHg1P.js → onboarding.finalize-DTbpLV-T.js} +8 -8
- package/dist/{outbound-Zmd7UyQH.js → outbound-C6Gm22UF.js} +7 -7
- package/dist/{outbound-attachment-DeCnZT-8.js → outbound-attachment-BWyKV1Gy.js} +2 -2
- package/dist/paths-CYmyCDsE.js +212 -0
- package/dist/{paths-CbQV9WEg.js → paths-DEuVuViW.js} +1 -1
- package/dist/{pi-auth-json-RXOlh8ar.js → pi-auth-json-Bv1NzJdR.js} +1 -1
- package/dist/{pi-embedded-DCBB1_SC.js → pi-embedded-CdOdQw2i.js} +278 -23
- package/dist/{pi-embedded-helpers-D1_Sab0M.js → pi-embedded-helpers-DwQ9wJeT.js} +73 -73
- package/dist/{pi-embedded-helpers-DjSdA5BG.js → pi-embedded-helpers-TcYQOZAY.js} +4 -4
- package/dist/{pi-tools.policy-BZrM6a-w.js → pi-tools.policy-Bx5zp45n.js} +2 -0
- package/dist/{pi-tools.policy-QIVWAVVI.js → pi-tools.policy-o0ytjRqu.js} +2 -0
- package/dist/{plugin-registry-BJSfTT8c.js → plugin-registry-BrJ0-qlu.js} +1 -1
- package/dist/{plugin-registry-Cy1kfzAy.js → plugin-registry-Cuc8ORuR.js} +1 -1
- package/dist/plugin-sdk/{accounts-BtaOa4z_.js → accounts-BToL3HlP.js} +1 -1
- package/dist/plugin-sdk/{accounts-Ddm33hQm.js → accounts-D9zGZU5t.js} +3 -3
- package/dist/plugin-sdk/{accounts-s-AdhXVR.js → accounts-Dtszw3Zn.js} +1 -1
- package/dist/plugin-sdk/{active-listener-DYjn3fML.js → active-listener-CJuvR4C2.js} +1 -1
- package/dist/plugin-sdk/{agent-scope-CYYpcO9W.js → agent-scope-C3gMMKCU.js} +2 -2
- package/dist/plugin-sdk/agents/pi-embedded-runner/long-task-prompt.d.ts +7 -0
- package/dist/plugin-sdk/agents/tools/task-tool.d.ts +7 -0
- package/dist/plugin-sdk/{api-key-rotation-DGJZ8SVa.js → api-key-rotation-CBsLb_4V.js} +1 -1
- package/dist/plugin-sdk/{audio-preflight-CiVw8470.js → audio-preflight-DucGa8w7.js} +24 -24
- package/dist/plugin-sdk/{bindings-C7hRtgYW.js → bindings-BbwoUGPx.js} +2 -2
- package/dist/plugin-sdk/{channel-activity-DoC1xtDu.js → channel-activity-Ji7f0gqq.js} +1 -1
- package/dist/plugin-sdk/{channel-web-BSDjZSwm.js → channel-web-t8UOP6Zu.js} +22 -22
- package/dist/plugin-sdk/{chrome-CEqfiEs0.js → chrome-D9kN9org.js} +3 -3
- package/dist/plugin-sdk/{chunk-Dw2XBYXv.js → chunk-jvk9axTQ.js} +1 -1
- package/dist/plugin-sdk/{command-format-GKSevep4.js → command-format-DSdvQ_M5.js} +1 -1
- package/dist/plugin-sdk/{commands-registry-BhW_oGNt.js → commands-registry-BuYpmEx-.js} +4 -4
- package/dist/plugin-sdk/{config-Ckum15iC.js → config-BzupW6LN.js} +9 -9
- package/dist/plugin-sdk/{consolidate-COuTEt4Z.js → consolidate-CafShdsH.js} +2 -2
- package/dist/plugin-sdk/{deliver-B8Y2t-RH.js → deliver-CKgFosI5.js} +10 -10
- package/dist/plugin-sdk/{diagnostic-BR07buTm.js → diagnostic-_oc91gNi.js} +1 -1
- package/dist/plugin-sdk/{image-CCmNHDV0.js → image-DFyINnvE.js} +4 -4
- package/dist/{image-ops-C7CauEK8.js → plugin-sdk/image-ops-Bnp6LXEx.js} +2 -2
- package/dist/plugin-sdk/index.js +54 -54
- package/dist/plugin-sdk/{ir-BJ6BHE5b.js → ir-Fb3qpcis.js} +4 -4
- package/dist/plugin-sdk/{local-roots-BHLNSI8U.js → local-roots-Ckk1QfzI.js} +3 -3
- package/dist/plugin-sdk/{login-g_rQAcuM.js → login-K1YB_7-t.js} +7 -7
- package/dist/plugin-sdk/{login-qr-BOUmLSY3.js → login-qr-lMl_OqDj.js} +9 -9
- package/dist/plugin-sdk/{manager-B9GigLWj.js → manager-BPm5oefC.js} +9 -9
- package/dist/plugin-sdk/{manifest-registry-BRx4JDK0.js → manifest-registry-hy3Bn-r9.js} +1 -1
- package/dist/plugin-sdk/{markdown-tables-BoYFajMu.js → markdown-tables-Dfaqilz6.js} +1 -1
- package/dist/{message-channel-OlFBYAw8.js → plugin-sdk/message-channel-BdI5Ra9S.js} +1 -1
- package/dist/plugin-sdk/{model-selection-Bbs4XGPG.js → model-selection-CtVwtb6y.js} +4 -4
- package/dist/plugin-sdk/{outbound-BVhSNFy0.js → outbound-DW3cqlQW.js} +7 -7
- package/dist/plugin-sdk/{outbound-attachment-B56R1Wi4.js → outbound-attachment-D7ME_Kib.js} +2 -2
- package/dist/plugin-sdk/{pi-auth-json-CB2bV0Jd.js → pi-auth-json-DiyK6bgV.js} +1 -1
- package/dist/plugin-sdk/{pi-embedded-helpers-dd3G9Hfi.js → pi-embedded-helpers-BL7ZRhGv.js} +17 -17
- package/dist/plugin-sdk/{plugins-BNByVCIH.js → plugins-BbAvhC25.js} +4 -4
- package/dist/plugin-sdk/{pw-ai-BXeOYCz_.js → pw-ai-B3T0mTHr.js} +8 -8
- package/dist/plugin-sdk/{qmd-manager-wIr8qz2n.js → qmd-manager-BlUikj9s.js} +4 -4
- package/dist/plugin-sdk/{registry-D0xTnUWt.js → registry--_pGht6S.js} +2 -2
- package/dist/plugin-sdk/{replies-CQ4szNhV.js → replies-BR2TPTVW.js} +3 -3
- package/dist/plugin-sdk/{reply-DD8z_dUW.js → reply-BKAHTugL.js} +337 -82
- package/dist/plugin-sdk/{reply-prefix-uxfMZW4p.js → reply-prefix-BHuV5t70.js} +1 -1
- package/dist/plugin-sdk/{resolve-outbound-target-BiyAyTWz.js → resolve-outbound-target-BkCUbYGV.js} +2 -2
- package/dist/plugin-sdk/{resolve-route-CWfcnhza.js → resolve-route-CHQ7BTlU.js} +3 -3
- package/dist/plugin-sdk/{retry-CwQ_iIj8.js → retry-ilSJqnz9.js} +1 -1
- package/dist/plugin-sdk/{runner-BuxCHv_O.js → runner-BhifC1J_.js} +9 -9
- package/dist/plugin-sdk/{send-fNRDT21N.js → send-BP5pSPaZ.js} +6 -6
- package/dist/plugin-sdk/{send-BtO-7fHs.js → send-CGhw9mO3.js} +6 -6
- package/dist/plugin-sdk/{send-CKXzQuXo.js → send-DLO_yV5_.js} +10 -10
- package/dist/plugin-sdk/{send-Djq5IPRa.js → send-ZhAe1nXO.js} +10 -10
- package/dist/plugin-sdk/{send-XSuwT1PC.js → send-jsofmTfJ.js} +7 -7
- package/dist/plugin-sdk/{session-ARbcLHE9.js → session-BfyK_04G.js} +4 -4
- package/dist/plugin-sdk/{skill-commands-yzJVuTIW.js → skill-commands-DEfqC_kJ.js} +5 -5
- package/dist/plugin-sdk/{skills-BfsaS1F9.js → skills-C9DbB-Kp.js} +7 -7
- package/dist/plugin-sdk/{sqlite-A3wGzttn.js → sqlite-CmVrFEYD.js} +1 -1
- package/dist/plugin-sdk/{store-BdrNabcU.js → store-Do3t33-c.js} +2 -2
- package/dist/plugin-sdk/{subsystem-B2uDN3TV.js → subsystem-Coz2AgU8.js} +1 -1
- package/dist/plugin-sdk/{synthesis-Dv5GwSky.js → synthesis-CVF7Fwhd.js} +49 -49
- package/dist/plugin-sdk/{tables-DNwXwNFa.js → tables-DR0NmBeH.js} +1 -1
- package/dist/{target-errors-DeJTztcq.js → plugin-sdk/target-errors-B7YyMnIi.js} +2 -2
- package/dist/plugin-sdk/{thinking-CXqf7WTe.js → thinking-DCNUIAHY.js} +5 -5
- package/dist/{tokens-W0JzCJJM.js → plugin-sdk/tokens-CWMflosr.js} +1 -1
- package/dist/plugin-sdk/{tool-images-HJ2sfZDV.js → tool-images-D7Lno-TE.js} +2 -2
- package/dist/plugin-sdk/{tool-loop-detection-gmtzSlNZ.js → tool-loop-detection-DseOlBug.js} +2 -2
- package/dist/plugin-sdk/web-D0DsmFvw.js +66 -0
- package/dist/plugin-sdk/{whatsapp-actions-B_1l8JMU.js → whatsapp-actions-eTefsWhW.js} +21 -21
- package/dist/{plugins-cli-6UYkZBH0.js → plugins-cli-BDalhI46.js} +5 -5
- package/dist/{plugins-cli-DPetEhfv.js → plugins-cli-DFmriy-c.js} +5 -5
- package/dist/{plugins-BzmbgY7s.js → plugins-v8k1XVOy.js} +9 -9
- package/dist/{program-CVy9LVoS.js → program-DKh41c2a.js} +10 -10
- package/dist/{program-context-CBI6gIf-.js → program-context-Cq7pqOrw.js} +19 -19
- package/dist/{prompt-select-styled-BlXl_Qf7.js → prompt-select-styled-BFCAZLwK.js} +6 -6
- package/dist/{prompt-select-styled-Bv675D48.js → prompt-select-styled-DvvSE_ni.js} +6 -6
- package/dist/{provider-auth-helpers-RUQD5XAm.js → provider-auth-helpers-B-LkDxxi.js} +1 -1
- package/dist/{provider-auth-helpers-BB1lhCy5.js → provider-auth-helpers-DXppgV1l.js} +1 -1
- package/dist/{push-apns-Cr-a1KBt.js → push-apns-DCA47WA5.js} +1 -1
- package/dist/{push-apns-rPetW5cI.js → push-apns-DvudhEAb.js} +1 -1
- package/dist/{pw-ai-CQtaPvM8.js → pw-ai-40Jf9QIb.js} +1 -1
- package/dist/{pw-ai-DWkC5eGA.js → pw-ai-XGqnSWju.js} +11 -11
- package/dist/{qmd-manager-BXkbA8Y9.js → qmd-manager-CbRJhonG.js} +8 -8
- package/dist/{register.agent-DKDwNHQi.js → register.agent-_BV5KyFb.js} +9 -9
- package/dist/{register.agent-j6OlKEU-.js → register.agent-aFj_SMi3.js} +8 -8
- package/dist/{register.configure-CopgSygi.js → register.configure-CvOoD5gE.js} +9 -9
- package/dist/{register.configure-BgIXIq9d.js → register.configure-Dx0Uhmlz.js} +9 -9
- package/dist/{register.maintenance-DjaGkVtr.js → register.maintenance-BuZpoSik.js} +10 -10
- package/dist/{register.maintenance-BKsCM6NG.js → register.maintenance-CMeJR7DG.js} +11 -11
- package/dist/{register.message-C3oHvmdl.js → register.message-qysZPg3G.js} +5 -5
- package/dist/{register.message-bxhUcSyj.js → register.message-xxGePuRC.js} +5 -5
- package/dist/{register.onboard-DijWH8Vd.js → register.onboard-1MP2I0q4.js} +7 -7
- package/dist/{register.onboard-D0DHcb20.js → register.onboard-D4Aow7Gc.js} +7 -7
- package/dist/{register.setup-XlCTnTm_.js → register.setup-BT74aXzA.js} +7 -7
- package/dist/{register.setup-CrFzd94c.js → register.setup-DzliKkWh.js} +7 -7
- package/dist/{register.status-health-sessions-VwvDWUxZ.js → register.status-health-sessions-B3K2gZ72.js} +7 -7
- package/dist/{register.status-health-sessions-AWCg_uLf.js → register.status-health-sessions-D7VYZlrU.js} +7 -7
- package/dist/{register.subclis-Bw8k5Z5C.js → register.subclis-BCy0IDRv.js} +10 -10
- package/dist/{registry-DYq1AYOv.js → registry-X6fUE0K7.js} +19 -19
- package/dist/{replies-CUWXgyx2.js → replies-86F3PldM.js} +3 -3
- package/dist/{reply-D7_t00Jt.js → reply-Dg1ZU3DZ.js} +262 -9
- package/dist/{reply-prefix-CvEIl6_d.js → reply-prefix-CI_IdwqH.js} +1 -1
- package/dist/{resolve-route-Jy5dFY67.js → resolve-route-BgSuN9c6.js} +4 -4
- package/dist/{retry-B-y5suGA.js → retry-4oEAHckB.js} +1 -1
- package/dist/{run-main-7BEaNeDG.js → run-main-OS2aFAJ2.js} +18 -18
- package/dist/{runner-ecX1WzDt.js → runner-B5oNTtgf.js} +22 -22
- package/dist/{runner-Dpjulwnm.js → runner-DFuAePEr.js} +1 -1
- package/dist/{security-cli-BpnzAB5_.js → security-cli-BadXDWTh.js} +2 -2
- package/dist/{security-cli-D9WEiEjD.js → security-cli-D5y28-RH.js} +2 -2
- package/dist/{send-DFtnbzqy.js → send-ASDB3AzC.js} +7 -7
- package/dist/{send-Bb4it0te.js → send-BTfqlrYd.js} +18 -18
- package/dist/{send-C0QjmPaf.js → send-CSydU49L.js} +10 -10
- package/dist/{send-Cpk3Ti6-.js → send-Du-IfSne.js} +6 -6
- package/dist/{send-BKo1T3HF.js → send-cCTQjuOZ.js} +6 -6
- package/dist/{server-methods-CTeJHJSZ.js → server-methods-BszFAkbJ.js} +8 -8
- package/dist/{server-methods-FQ-PqiVC.js → server-methods-D_iKJ-sj.js} +8 -8
- package/dist/{server-node-events-BqvcHbuK.js → server-node-events-CENHuAVz.js} +5 -5
- package/dist/{server-node-events-Z7epDloV.js → server-node-events-uBu3XOjd.js} +5 -5
- package/dist/{session-BTeY6Gn2.js → session-D8qLj_xN.js} +8 -8
- package/dist/{skill-commands-DG2lcozb.js → skill-commands-BcOduw6G.js} +16 -16
- package/dist/{skills-CXxrn_e2.js → skills-BrYDT4Jr.js} +24 -24
- package/dist/{sqlite-BN_hIcmu.js → sqlite-P-gMg7fi.js} +3 -3
- package/dist/{status-CKROJwI2.js → status-BvbJavmh.js} +1 -1
- package/dist/{status-DLFbpd9v.js → status-CA0mUJld.js} +4 -4
- package/dist/{status-DMigoL7q.js → status-CBnCPUMG.js} +4 -4
- package/dist/{status-x7WCSVhG.js → status-DJAeKN4G.js} +1 -1
- package/dist/{store-01F_JM7O.js → store-Ceagbc4L.js} +6 -6
- package/dist/{subagent-registry-BvP8AGdE.js → subagent-registry-C1OyZl-M.js} +262 -9
- package/dist/{subsystem-BjyjJF-d.js → subsystem-CzXhCdeY.js} +1 -1
- package/dist/{synthesis-DgQz6kPf.js → synthesis-DNTyB7JY.js} +7 -7
- package/dist/{synthesis-E4flT91F.js → synthesis-DuqSkHEr.js} +54 -54
- package/dist/{synthesis-DDId6n26.js → synthesis-brHrnNF2.js} +4 -4
- package/dist/{synthesis-By7KPUAm.js → synthesis-z5B41p_r.js} +4 -4
- package/dist/{tables-DoG-pFrf.js → tables-qbCoZrYA.js} +1 -1
- package/dist/{plugin-sdk/target-errors-Paro1BjP.js → target-errors-uNitqCCT.js} +2 -2
- package/dist/{thinking-BprCy23Z.js → thinking-BV7SCNJP.js} +5 -5
- package/dist/{plugin-sdk/tokens-bC3UVmVH.js → tokens-Bl5R3wPD.js} +1 -1
- package/dist/{tool-images-SqqWIT22.js → tool-images-JxNglLSr.js} +2 -2
- package/dist/{tool-loop-detection-Dj9h1ogr.js → tool-loop-detection-dfE771kg.js} +3 -3
- package/dist/{unified-runner-DaSb-TsZ.js → unified-runner-Czg3pdBc.js} +488 -233
- package/dist/{update-cli-D0relAZw.js → update-cli-0lyGyl31.js} +11 -11
- package/dist/{update-cli-C5H6DkNM.js → update-cli-CIzkVfmj.js} +10 -10
- package/dist/{update-runner-D99V_zHX.js → update-runner-D7-LDziQ.js} +1 -1
- package/dist/{update-runner-B_yVOk8Z.js → update-runner-aYPcKYAN.js} +1 -1
- package/dist/{web-BBz1kF_9.js → web-B90A99YU.js} +58 -58
- package/dist/{web-Bdebat5l.js → web-BJ5dUZso.js} +5 -5
- package/dist/{web-BQh2S6oq.js → web-CN7wnU7w.js} +4 -4
- package/dist/{web-CiYoJfrl.js → web-Wk1ay1eQ.js} +7 -7
- package/dist/{whatsapp-actions-DmVpLXmh.js → whatsapp-actions-llk0IUn2.js} +23 -23
- package/dist/{workspace-DscDraUb.js → workspace-CywO4ayZ.js} +27 -27
- package/extensions/bluebubbles/package.json +1 -1
- package/extensions/copilot-proxy/package.json +1 -1
- package/extensions/diagnostics-otel/package.json +1 -1
- package/extensions/discord/package.json +1 -1
- package/extensions/feishu/package.json +1 -1
- package/extensions/google-antigravity-auth/package.json +1 -1
- package/extensions/google-gemini-cli-auth/package.json +1 -1
- package/extensions/googlechat/package.json +1 -1
- package/extensions/imessage/package.json +1 -1
- package/extensions/irc/package.json +1 -1
- package/extensions/learning-loop/package.json +1 -1
- package/extensions/line/package.json +1 -1
- package/extensions/llm-task/package.json +1 -1
- package/extensions/matrix/CHANGELOG.md +6 -0
- package/extensions/matrix/package.json +1 -1
- package/extensions/mattermost/package.json +1 -1
- package/extensions/memory-core/package.json +1 -1
- package/extensions/memory-lancedb/package.json +1 -1
- package/extensions/minimax-portal-auth/package.json +1 -1
- package/extensions/msteams/CHANGELOG.md +6 -0
- package/extensions/msteams/package.json +1 -1
- package/extensions/nextcloud-talk/package.json +1 -1
- package/extensions/nostr/CHANGELOG.md +6 -0
- package/extensions/nostr/package.json +1 -1
- package/extensions/open-prose/package.json +1 -1
- package/extensions/outlook/package.json +1 -1
- package/extensions/pipeline/package.json +1 -1
- package/extensions/signal/package.json +1 -1
- package/extensions/slack/package.json +1 -1
- package/extensions/telegram/package.json +1 -1
- package/extensions/tlon/package.json +1 -1
- package/extensions/twitch/CHANGELOG.md +6 -0
- package/extensions/twitch/package.json +1 -1
- package/extensions/voice-call/CHANGELOG.md +6 -0
- package/extensions/voice-call/package.json +1 -1
- package/extensions/whatsapp/package.json +1 -1
- package/extensions/zalo/CHANGELOG.md +6 -0
- package/extensions/zalo/package.json +1 -1
- package/extensions/zalouser/CHANGELOG.md +6 -0
- package/extensions/zalouser/package.json +1 -1
- package/package.json +1 -1
- package/dist/plugin-sdk/web-CmKqZEsX.js +0 -66
|
@@ -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-PeQmwVpp.js").then((n) => n.t);
|
|
227
227
|
const { promptCustomApiConfig } = await import("./onboard-custom-Dk9cL3Uu.js").then((n) => n.r);
|
|
228
|
-
const { applyAuthChoice, resolvePreferredProviderForAuthChoice, warnIfModelConfigLooksOff } = await import("./auth-choice-
|
|
228
|
+
const { applyAuthChoice, resolvePreferredProviderForAuthChoice, warnIfModelConfigLooksOff } = await import("./auth-choice-CRQRPwQt.js").then((n) => n.t);
|
|
229
229
|
const { applyPrimaryModel, promptDefaultModel } = await import("./model-picker-BNWV-jU4.js").then((n) => n.i);
|
|
230
230
|
const authStore = ensureAuthProfileStore(void 0, { allowKeychainPrompt: false });
|
|
231
231
|
const authChoiceFromPrompt = opts.authChoice === void 0;
|
|
@@ -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-
|
|
281
|
+
const { setupChannels } = await import("./onboard-channels-9erx07qe.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-
|
|
307
|
+
const { finalizeOnboardingWizard } = await import("./onboarding.finalize-DTbpLV-T.js");
|
|
308
308
|
const { launchedTui } = await finalizeOnboardingWizard({
|
|
309
309
|
flow,
|
|
310
310
|
opts,
|
|
@@ -15,7 +15,7 @@ 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-
|
|
18
|
+
import "./subagent-registry-C1OyZl-M.js";
|
|
19
19
|
import "./sessions-BPD85pWA.js";
|
|
20
20
|
import "./tokens-Csntmwwn.js";
|
|
21
21
|
import "./plugins-CwSlLxM8.js";
|
|
@@ -53,8 +53,8 @@ import "./tool-images-CVLISeRT.js";
|
|
|
53
53
|
import "./thinking-8sKPnzpp.js";
|
|
54
54
|
import "./models-config-J1x_DaPn.js";
|
|
55
55
|
import "./reply-prefix-BUN71nd5.js";
|
|
56
|
-
import "./memory-cli-
|
|
57
|
-
import "./manager-
|
|
56
|
+
import "./memory-cli-Qgbcxvuf.js";
|
|
57
|
+
import "./manager-DDELj5o9.js";
|
|
58
58
|
import "./gemini-auth-DEakvf-D.js";
|
|
59
59
|
import "./retry-C4Q_VPOo.js";
|
|
60
60
|
import "./sqlite-BP8tiuca.js";
|
|
@@ -98,20 +98,20 @@ import "./replies-Sxbew659.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-CF0Cp3OB.js";
|
|
99
99
|
import "./prompt-style-BxVdnrLq.js";
|
|
100
100
|
import "./pairing-labels-BHx_CdbP.js";
|
|
101
|
-
import "./pi-tools.policy-
|
|
101
|
+
import "./pi-tools.policy-o0ytjRqu.js";
|
|
102
102
|
import "./note-DewoEWtc.js";
|
|
103
|
-
import "./register.subclis-
|
|
104
|
-
import "./command-registry-
|
|
103
|
+
import "./register.subclis-BCy0IDRv.js";
|
|
104
|
+
import "./command-registry-LjFltTU9.js";
|
|
105
105
|
import "./program-context-DeZ44oQ9.js";
|
|
106
|
-
import { r as installCompletion } from "./completion-cli-
|
|
106
|
+
import { r as installCompletion } from "./completion-cli-Cf6fYZWL.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-D_elkkFW.js";
|
|
108
108
|
import "./runtime-guard-BofkqBu7.js";
|
|
109
109
|
import { r as isSystemdUserServiceAvailable } from "./systemd-CJ5L2ee4.js";
|
|
110
110
|
import { t as resolveGatewayService } from "./service-RxN7lQKN.js";
|
|
111
|
-
import { r as healthCommand } from "./health-
|
|
111
|
+
import { r as healthCommand } from "./health-2jkjZxY8.js";
|
|
112
112
|
import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-Clf7H-Sm.js";
|
|
113
113
|
import { t as formatHealthCheckFailure } from "./health-format-DkjSgkDx.js";
|
|
114
|
-
import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-
|
|
114
|
+
import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-By066O3p.js";
|
|
115
115
|
import { t as runTui } from "./tui-BiBFm_RY.js";
|
|
116
116
|
import os from "node:os";
|
|
117
117
|
import path from "node:path";
|
|
@@ -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-
|
|
4
|
+
import "./reply-Dg1ZU3DZ.js";
|
|
5
5
|
import "./registry-Cja8eT7G.js";
|
|
6
6
|
import { p as restoreTerminalState } from "./subsystem-D9vIQve0.js";
|
|
7
7
|
import "./exec-CWkblSrI.js";
|
|
@@ -61,8 +61,8 @@ import "./diagnostic-session-state-CUslJyKP.js";
|
|
|
61
61
|
import "./send-DpMnSIi5.js";
|
|
62
62
|
import "./model-ECsJuJew.js";
|
|
63
63
|
import "./reply-prefix-CE2YmmsD.js";
|
|
64
|
-
import "./memory-cli-
|
|
65
|
-
import "./manager-
|
|
64
|
+
import "./memory-cli-ENCASZJk.js";
|
|
65
|
+
import "./manager-DrmlegR2.js";
|
|
66
66
|
import "./retry-BoS4e4X_.js";
|
|
67
67
|
import "./sqlite-D55gRQbH.js";
|
|
68
68
|
import "./target-errors-C9e6dMU_.js";
|
|
@@ -99,21 +99,21 @@ import "./prompt-style-Y2J72w6p.js";
|
|
|
99
99
|
import "./pairing-labels-CTL1gXZb.js";
|
|
100
100
|
import "./exec-approvals-DEigTi7M.js";
|
|
101
101
|
import "./nodes-screen-BZS89z6C.js";
|
|
102
|
-
import "./pi-tools.policy-
|
|
102
|
+
import "./pi-tools.policy-Bx5zp45n.js";
|
|
103
103
|
import "./control-service-C0pRqIFv.js";
|
|
104
104
|
import "./stagger-CZ1Rrj7O.js";
|
|
105
105
|
import "./channel-selection-9fIQGtZy.js";
|
|
106
106
|
import "./runtime-guard-BKFbNplo.js";
|
|
107
|
-
import "./program-context-
|
|
107
|
+
import "./program-context-Cq7pqOrw.js";
|
|
108
108
|
import "./note-ByDX0v9V.js";
|
|
109
|
-
import { r as installCompletion } from "./completion-cli-
|
|
109
|
+
import { r as installCompletion } from "./completion-cli-BVTGy8th.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-Cp7obV7Q.js";
|
|
111
111
|
import { r as isSystemdUserServiceAvailable } from "./systemd-Xs16roN5.js";
|
|
112
112
|
import { t as resolveGatewayService } from "./service-DzLem5vL.js";
|
|
113
|
-
import { r as healthCommand } from "./health-
|
|
113
|
+
import { r as healthCommand } from "./health-CvMHgR-L.js";
|
|
114
114
|
import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-BrP31IQR.js";
|
|
115
115
|
import { t as formatHealthCheckFailure } from "./health-format-Ct4VWeSk.js";
|
|
116
|
-
import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-
|
|
116
|
+
import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-lE_33xaY.js";
|
|
117
117
|
import { t as runTui } from "./tui-CvHbwJ3G.js";
|
|
118
118
|
import os from "node:os";
|
|
119
119
|
import path from "node:path";
|
|
@@ -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-
|
|
3
|
-
import { t as createSubsystemLogger } from "./subsystem-
|
|
4
|
-
import { n as loadConfig } from "./config-
|
|
5
|
-
import { n as resolveMarkdownTableMode } from "./markdown-tables-
|
|
6
|
-
import { a as loadWebMedia } from "./ir-
|
|
2
|
+
import { D as escapeRegExp, H as toWhatsappJid, rt as getChildLogger } from "./registry-X6fUE0K7.js";
|
|
3
|
+
import { t as createSubsystemLogger } from "./subsystem-CzXhCdeY.js";
|
|
4
|
+
import { n as loadConfig } from "./config-C4WnAd-c.js";
|
|
5
|
+
import { n as resolveMarkdownTableMode } from "./markdown-tables-CE-qSMGB.js";
|
|
6
|
+
import { a as loadWebMedia } from "./ir-D6MiJpAy.js";
|
|
7
7
|
import { n as normalizePollInput } from "./polls-Kt7OzYCK.js";
|
|
8
|
-
import { t as convertMarkdownTables } from "./tables-
|
|
9
|
-
import { n as requireActiveWebListener } from "./active-listener-
|
|
8
|
+
import { t as convertMarkdownTables } from "./tables-qbCoZrYA.js";
|
|
9
|
+
import { n as requireActiveWebListener } from "./active-listener-AVNn5_U9.js";
|
|
10
10
|
import { randomUUID } from "node:crypto";
|
|
11
11
|
|
|
12
12
|
//#region src/markdown/whatsapp.ts
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { r as saveMediaBuffer } from "./store-
|
|
2
|
-
import { a as loadWebMedia } from "./ir-
|
|
1
|
+
import { r as saveMediaBuffer } from "./store-Ceagbc4L.js";
|
|
2
|
+
import { a as loadWebMedia } from "./ir-D6MiJpAy.js";
|
|
3
3
|
|
|
4
4
|
//#region src/media/outbound-attachment.ts
|
|
5
5
|
async function resolveOutboundAttachmentFromUrl(mediaUrl, maxBytes, options) {
|
|
@@ -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-
|
|
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-
|
|
2
|
+
import { C as normalizeProviderId, U as normalizeOptionalSecretInput, d as ensureAuthProfileStore } from "./auth-profiles-BzB_Exeq.js";
|
|
3
3
|
import path from "node:path";
|
|
4
4
|
import fs from "node:fs/promises";
|
|
5
5
|
|