@symerian/symi 2.0.16 → 2.0.18
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/{acp-cli-CSX62tsS.js → acp-cli-Cp81ShIC.js} +3 -3
- package/dist/{acp-cli-CrfY9UHo.js → acp-cli-h36Zuriy.js} +3 -3
- package/dist/{agents-CP6mOf0j.js → agents-B2jtcp_Y.js} +8 -8
- package/dist/{agents.config-CFps8Krs.js → agents.config-ButbIjGA.js} +1 -1
- package/dist/{agents.config-Da5XukaM.js → agents.config-DTJxgmnd.js} +1 -1
- package/dist/{api-key-rotation-BukD0zzl.js → api-key-rotation-De1ivBc0.js} +1 -1
- package/dist/{audio-preflight-DRQD_nt1.js → audio-preflight-B_VLZd_F.js} +7 -7
- package/dist/{audio-preflight-CQ5_RYEe.js → audio-preflight-CSix46JB.js} +13 -13
- package/dist/{audio-preflight-DSeaWZZW.js → audio-preflight-DGpde3Ae.js} +13 -13
- package/dist/{audio-preflight-Cq4C-m27.js → audio-preflight-k4jOy8Bo.js} +7 -7
- package/dist/{audit-Do2bVss3.js → audit-BbhuQjTl.js} +7 -7
- package/dist/{audit-x_SzU263.js → audit-BmuBsZal.js} +7 -7
- package/dist/{auth-choice-CZ9ugRNS.js → auth-choice-BMHb00f1.js} +7 -7
- package/dist/{auth-choice-za414gQg.js → auth-choice-Du7VUK1p.js} +7 -7
- package/dist/{auth-profiles-BD22fK4p.js → auth-profiles-Cs3GPB03.js} +6 -2
- package/dist/{auth-token-CNnt7guc.js → auth-token-CbDExtp_.js} +1 -1
- package/dist/{auth-token-BrlnZiCq.js → auth-token-DdkoxDu3.js} +1 -1
- package/dist/{banner-DHgxDWv_.js → banner-BoFDxo1X.js} +1 -1
- package/dist/{browser-cli-BydQRa6Z.js → browser-cli-Bu0BnRct.js} +4 -4
- package/dist/{browser-cli-Bz2dcSy1.js → browser-cli-DEnpvEPP.js} +4 -4
- package/dist/build-info.json +3 -3
- package/dist/bundled/boot-md/handler.js +18 -18
- package/dist/bundled/session-memory/handler.js +18 -18
- package/dist/{call-BVw7l9v8.js → call-6AGLOo_A.js} +1 -1
- package/dist/{call-CJYWtIM9.js → call-TvMa4u8t.js} +1 -1
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{channel-options-D7RdZp1E.js → channel-options-BzQJoPFc.js} +1 -1
- package/dist/{channel-options-BCZol8_4.js → channel-options-D1K0w33c.js} +1 -1
- package/dist/{channel-web-Dki5eEiP.js → channel-web-NaWX5pUl.js} +8 -8
- package/dist/{channels-cli-CwliXNUk.js → channels-cli-BGX2AX0X.js} +38 -38
- package/dist/{channels-cli-CILkYyG3.js → channels-cli-KVy9GUcY.js} +39 -39
- package/dist/{chrome-BgIDB_SH.js → chrome-CaijV4gw.js} +1 -1
- package/dist/{chrome-D9OwvWm7.js → chrome-Cgiw9tI6.js} +1 -1
- package/dist/{chrome-h6BnL8Lp.js → chrome-DX-9I4dn.js} +1 -1
- package/dist/{chrome-LmEyZdbC.js → chrome-DrxNYzTD.js} +1 -1
- package/dist/cli/daemon-cli.js +1 -1
- package/dist/{cli-aAOs92a8.js → cli-DAaNQKv7.js} +33 -33
- package/dist/{cli-CLHi2LEP.js → cli-MBTHCM04.js} +34 -34
- package/dist/{command-registry-OHfvK1Oq.js → command-registry-DRHBO07P.js} +11 -11
- package/dist/{commands-registry-DyWjIe7d.js → commands-registry-B_V42ZiZ.js} +1 -1
- package/dist/{commands-registry-Copoizgv.js → commands-registry-DN93gKlx.js} +1 -1
- package/dist/{commands-registry-uo2OKqdL.js → commands-registry-nK_mZXUN.js} +1 -1
- package/dist/{commands-registry-C3C4Rv3O.js → commands-registry-tuRMQmX4.js} +1 -1
- package/dist/{completion-cli-DSHmAUFN.js → completion-cli-By9Hj91p.js} +1 -1
- package/dist/{completion-cli-D7iBY_Z-.js → completion-cli-E2HmAubG.js} +2 -2
- package/dist/{config-BjGo9GnL.js → config-BUHRlrbS.js} +5 -2
- package/dist/{config-amjzHiWZ.js → config-COvlkain.js} +5 -2
- package/dist/{config-DM0K7qC1.js → config-C_1uZzwy.js} +5 -2
- package/dist/{config-Dgn_cL29.js → config-DB5jMj3Z.js} +5 -2
- package/dist/{config-cli-CcbYdW1-.js → config-cli-DaV2gvHS.js} +3 -3
- package/dist/{config-cli-BlusBXAA.js → config-cli-gvLM_Jmx.js} +3 -3
- package/dist/{config-guard-BpQn1MKk.js → config-guard-CP12zw3r.js} +2 -2
- package/dist/{config-guard-Cnu2qssk.js → config-guard-DLAUq-eu.js} +5 -5
- package/dist/{config-validation-BHjDr-an.js → config-validation-BdUdtuuI.js} +1 -1
- package/dist/{config-validation-pVfqbrLy.js → config-validation-CJNWEllT.js} +1 -1
- package/dist/{configure-CJf-vDqN.js → configure-BPdAIpJb.js} +11 -11
- package/dist/{configure-rrxn5n5n.js → configure-DjRUXJNv.js} +11 -11
- package/dist/{control-service-DVFF3PrV.js → control-service-CwdjvhxE.js} +4 -4
- package/dist/{control-service-DMz_CcLi.js → control-service-D670V6cS.js} +4 -4
- package/dist/control-ui/js/app.js +79 -0
- package/dist/control-ui/js/render.js +39 -0
- package/dist/{cron-cli-CMb8Tfrd.js → cron-cli-BVdg2ZHh.js} +4 -4
- package/dist/{cron-cli-B9s3FO4y.js → cron-cli-CWybZWLu.js} +4 -4
- package/dist/{daemon-cli-DY782AjS.js → daemon-cli-A0V_cYcw.js} +6 -6
- package/dist/{daemon-cli-duUjaj82.js → daemon-cli-BSKnv95o.js} +6 -6
- package/dist/daemon-cli.js +4 -1
- package/dist/{daemon-runtime-B38pOixq.js → daemon-runtime-BgbGrT3P.js} +1 -1
- package/dist/{daemon-runtime-CjgoCPLb.js → daemon-runtime-DtGPdsmL.js} +1 -1
- package/dist/{deliver-DONp5mgd.js → deliver-CUJWonlP.js} +3 -3
- package/dist/{deliver-B3UoBZdC.js → deliver-DXVMhb3A.js} +2 -2
- package/dist/{deliver-2Y_F_0yh.js → deliver-sMuSzZX6.js} +3 -3
- package/dist/{deliver-CZF9f8aC.js → deliver-wRQauy5B.js} +2 -2
- package/dist/{devices-cli-Ch8p42OS.js → devices-cli-Bwg8gUuS.js} +3 -3
- package/dist/{devices-cli-Cahrr6Rd.js → devices-cli-DBDevKR4.js} +3 -3
- package/dist/{directory-cli-B0H80BMR.js → directory-cli-2W4B1Ct_.js} +2 -2
- package/dist/{directory-cli-DH9ww80p.js → directory-cli-B9wwg8xg.js} +2 -2
- package/dist/{dm-policy-shared-BovJdm5T.js → dm-policy-shared-CvHrO6D_.js} +1 -1
- package/dist/{dm-policy-shared-DckBYBwg.js → dm-policy-shared-flFO0wFg.js} +1 -1
- package/dist/{dns-cli-CVMQnrzw.js → dns-cli-Dc8SoCMN.js} +2 -2
- package/dist/{dns-cli-Lzt29-Zu.js → dns-cli-go7hrLbV.js} +2 -2
- package/dist/{doctor-completion-B6R-Um0m.js → doctor-completion-CJ6GgqdP.js} +1 -1
- package/dist/{doctor-completion-Db9Ka2VX.js → doctor-completion-cGUMfSWW.js} +1 -1
- package/dist/{doctor-config-flow-C_56SUPO.js → doctor-config-flow-CSyqq_3u.js} +3 -3
- package/dist/{doctor-config-flow-B150h841.js → doctor-config-flow-DpVhYkFY.js} +3 -3
- package/dist/entry.js +1 -1
- package/dist/{exec-approvals-cli-CSTHY6Vs.js → exec-approvals-cli-Bc7-sWEN.js} +5 -5
- package/dist/{exec-approvals-cli-lduNEUnu.js → exec-approvals-cli-NGv-JYZx.js} +5 -5
- package/dist/extensionAPI.js +18 -18
- package/dist/{gateway-cli-VZ3pwSh3.js → gateway-cli-BACTzHef.js} +52 -52
- package/dist/{gateway-cli-DVzEvDKA.js → gateway-cli-DIUZJz3l.js} +51 -51
- package/dist/{gateway-rpc-BTXPWO6j.js → gateway-rpc-CzQ2-09T.js} +1 -1
- package/dist/{gateway-rpc-Cx0HPjI7.js → gateway-rpc-DijKM-l5.js} +1 -1
- package/dist/{gemini-auth-7AWT6JXV.js → gemini-auth-2cinXFeY.js} +1 -1
- package/dist/{gemini-auth-BHSrr2_B.js → gemini-auth-DmWoaMTb.js} +1 -1
- package/dist/{gemini-auth-K6vg8B5c.js → gemini-auth-DtBB7-5F.js} +1 -1
- package/dist/{glass-ui-ws-CAm9wWND.js → glass-ui-ws-BBYLD-43.js} +43 -43
- package/dist/{glass-ui-ws-DmPVzO59.js → glass-ui-ws-DMW9fQLQ.js} +42 -42
- package/dist/{health-CnH3J7xA.js → health-BIgxejdY.js} +5 -5
- package/dist/{health-CYZdOaco.js → health-D9sE5ymK.js} +5 -5
- package/dist/{hooks-cli-CHMoGB4O.js → hooks-cli-DnvETK6m.js} +34 -34
- package/dist/{hooks-cli-C7tb9Ef0.js → hooks-cli-EthBM_qY.js} +35 -35
- package/dist/{image-RFofsrof.js → image-Bf_jHnTg.js} +3 -3
- package/dist/{image-B4LY9KFw.js → image-CEcLOmLW.js} +3 -3
- package/dist/{image-DrZEJQwQ.js → image-DCArHTqR.js} +3 -3
- package/dist/{image-DOnOTocl.js → image-Kl1J-62v.js} +3 -3
- package/dist/index.js +42 -42
- package/dist/{lifecycle-core-De5BcVI4.js → lifecycle-core-fFRFJvPD.js} +2 -2
- package/dist/{lifecycle-core-BYV6-zd8.js → lifecycle-core-pG9T1o7U.js} +2 -2
- package/dist/llm-slug-generator.js +18 -18
- package/dist/{login-BH17fJ5L.js → login-BwU6oNNU.js} +2 -2
- package/dist/{login-BG_7eJLu.js → login-CM1U-ARd.js} +2 -2
- package/dist/{login-CXSct1EH.js → login-CvotLxMc.js} +2 -2
- package/dist/{login-BZYFLDxo.js → login-J-hL4MZQ.js} +2 -2
- package/dist/{login-qr-BLmEvZVj.js → login-qr-CADWVR1b.js} +3 -3
- package/dist/{login-qr-zVpxocbF.js → login-qr-CW01jgLl.js} +3 -3
- package/dist/{login-qr-DoNfx43Q.js → login-qr-CiPw9ee6.js} +3 -3
- package/dist/{login-qr-9OQSnm5L.js → login-qr-_FriwsNr.js} +3 -3
- package/dist/{logs-cli-Cvhx1c0V.js → logs-cli-DPaTYFru.js} +4 -4
- package/dist/{logs-cli-DUzUCojZ.js → logs-cli-mM7GM-9Q.js} +4 -4
- package/dist/{manager-oiX42wby.js → manager-Cw42HtQ7.js} +136 -19
- package/dist/{manager-C_DoJrcP.js → manager-D0d-bOOe.js} +136 -19
- package/dist/{manager-B5EXdBQV.js → manager-D5ZbBYmN.js} +136 -19
- package/dist/{manager-CYHgFXd8.js → manager-DqkRhYYl.js} +136 -19
- package/dist/{memory-cli-D4J9SO7Z.js → memory-cli-C7w-I03k.js} +206 -3
- package/dist/{memory-cli-BhnOq4Ev.js → memory-cli-Pp2xuPKC.js} +206 -3
- package/dist/{model-CLebVu_U.js → model-ApXxvnzl.js} +1 -1
- package/dist/{model-DaukLY-k.js → model-DDV7HL-B.js} +1 -1
- package/dist/{model-auth-CeL58m55.js → model-auth-Db8I8QVL.js} +6 -2
- package/dist/{model-catalog-Dj5pIc1G.js → model-catalog-61-kKlKu.js} +4 -4
- package/dist/{model-catalog-CX8kAHv8.js → model-catalog-QboGjwLO.js} +4 -4
- package/dist/{model-picker-ay4NPk8S.js → model-picker-CSnZDydf.js} +3 -3
- package/dist/{model-picker-CDXdeNr-.js → model-picker-iDZTbvXk.js} +3 -3
- package/dist/{model-selection-Csawd2_i.js → model-selection-BBrZnKDw.js} +6 -2
- package/dist/{model-selection--4t4F87n.js → model-selection-DBPwoBvb.js} +6 -2
- package/dist/{models-wHzbWyGd.js → models-B_oSANn2.js} +14 -14
- package/dist/{models-cli-CTptBZ1_.js → models-cli-CzdeeUpE.js} +40 -40
- package/dist/{models-cli-xt0_lwNn.js → models-cli-u62LAXdh.js} +39 -39
- package/dist/{models-config-u4va9_AO.js → models-config-BTd2aHYU.js} +2 -2
- package/dist/{models-config-Cb41NmVa.js → models-config-CMJN_5Vh.js} +2 -2
- package/dist/{node-cli-BhCoxgBf.js → node-cli-BEvFRkYC.js} +10 -10
- package/dist/{node-cli-C8scjTTR.js → node-cli-BQyxhqF5.js} +10 -10
- package/dist/{nodes-cli-DvFB1bRc.js → nodes-cli-C2hHbQ47.js} +4 -4
- package/dist/{nodes-cli-BHnGJEDY.js → nodes-cli-FbzJ-7tA.js} +4 -4
- package/dist/{onboard-CLT8dKkn.js → onboard-CwNzqMn1.js} +10 -10
- package/dist/{onboard-CqrqIyTw.js → onboard-DcBV5QjY.js} +10 -10
- package/dist/{onboard-channels-B1qEMRuK.js → onboard-channels-C0wtv2Cp.js} +2 -2
- package/dist/{onboard-channels-Dq99OYWi.js → onboard-channels-C79jGR3_.js} +2 -2
- package/dist/{onboard-custom-BKR6vm2R.js → onboard-custom-CwTH9Yg-.js} +3 -3
- package/dist/{onboard-custom-BPHkLBMT.js → onboard-custom-adn6IG8i.js} +3 -3
- package/dist/{onboard-helpers-Dsr4zKCb.js → onboard-helpers-Bt2zwkKD.js} +2 -2
- package/dist/{onboard-helpers-CYxzQfe5.js → onboard-helpers-CKM-mWPH.js} +2 -2
- package/dist/{onboard-remote-d48SMpNw.js → onboard-remote-C-4NSq0W.js} +1 -1
- package/dist/{onboard-remote-3c_muVej.js → onboard-remote-P6H-x_vQ.js} +1 -1
- package/dist/{onboard-skills-2HJIpm3O.js → onboard-skills-C9ZAlUR6.js} +2 -2
- package/dist/{onboard-skills-b_chEkYH.js → onboard-skills-DlbXWPzM.js} +2 -2
- package/dist/{onboarding-yfMTHyHB.js → onboarding-C2vTobUO.js} +11 -11
- package/dist/{onboarding-Bs82247P.js → onboarding-CT_P8dE6.js} +11 -11
- package/dist/{onboarding.finalize-QC0g7ZLU.js → onboarding.finalize-BdeyH2Eh.js} +39 -39
- package/dist/{onboarding.finalize-DkZuXXiU.js → onboarding.finalize-DPQDvxEp.js} +41 -41
- package/dist/{onboarding.gateway-config-BkXJPv7f.js → onboarding.gateway-config-DKVcVoUF.js} +5 -5
- package/dist/{onboarding.gateway-config-stm3z82Y.js → onboarding.gateway-config-IqmHGk2A.js} +5 -5
- package/dist/{openai-model-default-DF334-MD.js → openai-model-default-BMY_YH9P.js} +2 -2
- package/dist/{openai-model-default-DJwRgrAC.js → openai-model-default-l66tU27B.js} +2 -2
- package/dist/{outbound-Cedd_yui.js → outbound-0ici4ICv.js} +1 -1
- package/dist/{outbound-BNMysnJ1.js → outbound-BEumB8qs.js} +1 -1
- package/dist/{outbound-Bv4FdtnF.js → outbound-CzuytbQ5.js} +1 -1
- package/dist/{outbound-DfOF58G2.js → outbound-DTZdWgeZ.js} +1 -1
- package/dist/{pairing-cli-7_4ayuXX.js → pairing-cli-CUu3LyX0.js} +4 -4
- package/dist/{pairing-cli-B7oA36Ke.js → pairing-cli-D_9vmECc.js} +4 -4
- package/dist/{pairing-labels-B-WwqJ-z.js → pairing-labels-Ca15tgVV.js} +1 -1
- package/dist/{pairing-labels-sIj1ZLt-.js → pairing-labels-D_XOc2nT.js} +1 -1
- package/dist/{pairing-store-CFwkjcA5.js → pairing-store-DdUVpKvp.js} +1 -1
- package/dist/{pairing-store-CicZMhK8.js → pairing-store-cjckhuQX.js} +1 -1
- package/dist/{pi-auth-json-BNhcohVK.js → pi-auth-json-BJB80_DY.js} +1 -1
- package/dist/{pi-auth-json-DV2ruNQM.js → pi-auth-json-BqB9Z6Gg.js} +1 -1
- package/dist/{pi-auth-json-B83DuyYZ.js → pi-auth-json-Bzpuls50.js} +2 -2
- package/dist/{pi-auth-json-CNgAAznq.js → pi-auth-json-etIDtHw9.js} +1 -1
- package/dist/{pi-embedded-DDe6lqPs.js → pi-embedded-DUUw7-tO.js} +448 -60
- package/dist/{pi-embedded-B3nbPN60.js → pi-embedded-DmUwEsG1.js} +448 -60
- package/dist/{pi-embedded-helpers-kB5lBgXk.js → pi-embedded-helpers-CLip13MP.js} +6 -6
- package/dist/{pi-embedded-helpers-CgxKWHj9.js → pi-embedded-helpers-D57pDra0.js} +1 -1
- package/dist/{pi-embedded-helpers--yFTAWwW.js → pi-embedded-helpers-D9Rvkx8A.js} +6 -6
- package/dist/{pi-embedded-helpers-ueCT6VlS.js → pi-embedded-helpers-f7cnM8BN.js} +1 -1
- package/dist/{pi-tools.policy-T6Z5F-_n.js → pi-tools.policy-BV1RWUnE.js} +2 -2
- package/dist/{pi-tools.policy-DPmdlOwE.js → pi-tools.policy-BegHNtNO.js} +2 -2
- package/dist/{plugin-auto-enable-D4BRdbII.js → plugin-auto-enable-B-WfJQ_3.js} +1 -1
- package/dist/{plugin-auto-enable-DdvlcMuw.js → plugin-auto-enable-CdctkFTt.js} +1 -1
- package/dist/{plugin-registry-DWJeC9bW.js → plugin-registry-C80itc6t.js} +2 -2
- package/dist/{plugin-registry-SCI1BVkI.js → plugin-registry-DrYURaBs.js} +2 -2
- package/dist/plugin-sdk/agents/memory-search.d.ts +2 -2
- package/dist/plugin-sdk/agents/synthetic-models.d.ts +1 -1
- package/dist/plugin-sdk/agents/system-prompt.d.ts +2 -1
- package/dist/plugin-sdk/{api-key-rotation-Qy7QGV8_.js → api-key-rotation-DNKq8sDG.js} +1 -1
- package/dist/plugin-sdk/{audio-preflight-CpYjfwrA.js → audio-preflight-D5K2YgFn.js} +7 -7
- package/dist/plugin-sdk/{channel-web-BUTyAx0r.js → channel-web-Bkv0U1ox.js} +7 -7
- package/dist/plugin-sdk/{chrome-BFy_lpld.js → chrome-DJ6LIeRu.js} +1 -1
- package/dist/plugin-sdk/{commands-registry-CvppXodz.js → commands-registry-un-LmdXo.js} +1 -1
- package/dist/plugin-sdk/config/types.agent-defaults.d.ts +2 -0
- package/dist/plugin-sdk/config/types.tools.d.ts +2 -2
- package/dist/plugin-sdk/config/zod-schema.agent-defaults.d.ts +3 -2
- package/dist/plugin-sdk/config/zod-schema.agent-runtime.d.ts +4 -4
- package/dist/plugin-sdk/config/zod-schema.agents.d.ts +5 -4
- package/dist/plugin-sdk/config/zod-schema.d.ts +5 -4
- package/dist/plugin-sdk/{config-Do1-fcaS.js → config-8u0WDlgj.js} +5 -2
- package/dist/plugin-sdk/{deliver-BwnrMlHO.js → deliver-Bip_mCNI.js} +2 -2
- package/dist/plugin-sdk/{image-k_W1USVr.js → image-DX2HTDUY.js} +3 -3
- package/dist/plugin-sdk/index.js +22 -22
- package/dist/plugin-sdk/{login-DPofXJE3.js → login-CKLot2mH.js} +2 -2
- package/dist/plugin-sdk/{login-qr-CNatqAUv.js → login-qr-DOVV9TXm.js} +3 -3
- package/dist/plugin-sdk/{manager-DnoXj4EG.js → manager-BItSTruD.js} +136 -19
- package/dist/plugin-sdk/memory/embeddings-ollama.d.ts +27 -0
- package/dist/plugin-sdk/memory/embeddings.d.ts +4 -1
- package/dist/plugin-sdk/memory/manager-sync-ops.d.ts +1 -1
- package/dist/plugin-sdk/memory/manager.d.ts +1 -1
- package/dist/plugin-sdk/{model-selection-D6J2MZsj.js → model-selection-aEd_4vFO.js} +6 -2
- package/dist/plugin-sdk/{outbound-w5v_6nFD.js → outbound-uamhXJrA.js} +1 -1
- package/dist/plugin-sdk/{pi-auth-json-BmWuNdJA.js → pi-auth-json-FyiScmI7.js} +1 -1
- package/dist/plugin-sdk/{pi-embedded-helpers-Cs2-_EpL.js → pi-embedded-helpers-JY-1kHdk.js} +6 -6
- package/dist/plugin-sdk/{pw-ai-BoitXk7j.js → pw-ai-BG29-fkq.js} +3 -3
- package/dist/plugin-sdk/{replies-BU-tUT8j.js → replies-B1pTxZOl.js} +1 -1
- package/dist/plugin-sdk/{reply-CjWIATx5.js → reply-B576Fhv8.js} +446 -58
- package/dist/plugin-sdk/{runner-Br1179I4.js → runner-BL2UhCUB.js} +5 -5
- package/dist/plugin-sdk/{send-Ts2lINh9.js → send-CARqECtw.js} +1 -1
- package/dist/plugin-sdk/{send-CE6VxWke.js → send-CJEdtrU7.js} +1 -1
- package/dist/plugin-sdk/{send-P8PiZ2Os.js → send-DnSED91h.js} +2 -2
- package/dist/plugin-sdk/{send-Dkyi5g1U.js → send-e3xSJ8To.js} +1 -1
- package/dist/plugin-sdk/{send-BaLZTKkj.js → send-oZqyXIiB.js} +1 -1
- package/dist/plugin-sdk/{session-Bwdr4g-M.js → session-CzQVSJF5.js} +1 -1
- package/dist/plugin-sdk/{skill-commands-NTPqO_az.js → skill-commands-Cwps3qpb.js} +1 -1
- package/dist/plugin-sdk/{web-C1q3B85D.js → web-mZ4uDhBl.js} +22 -22
- package/dist/plugin-sdk/{whatsapp-actions-Di-yCTCj.js → whatsapp-actions-1-Mp-KwB.js} +3 -3
- package/dist/{plugins-cli-D2GDnmKk.js → plugins-cli-Cv9eBXlW.js} +34 -34
- package/dist/{plugins-cli-QSrupxLG.js → plugins-cli-Dnq6iHh8.js} +35 -35
- package/dist/{program-context-CIOqtCr8.js → program-context-D_OS2K8H.js} +38 -38
- package/dist/{program-7hcHnpYu.js → program-iimCXTOX.js} +41 -41
- package/dist/{prompt-select-styled-DpVAhv1V.js → prompt-select-styled-B1V6teLm.js} +17 -17
- package/dist/{prompt-select-styled-DC-k-kBQ.js → prompt-select-styled-BHDOHzSI.js} +17 -17
- package/dist/{provider-auth-helpers-BGhm_DOe.js → provider-auth-helpers-nXDpwc0f.js} +4 -4
- package/dist/{provider-auth-helpers-DvwmlisW.js → provider-auth-helpers-ozVqcIrR.js} +4 -4
- package/dist/{push-apns-CiOx7dgB.js → push-apns-BZ7FEmsK.js} +1 -1
- package/dist/{push-apns-BZu5OVg5.js → push-apns-Dmo8BBk4.js} +1 -1
- package/dist/{pw-ai-CQzJmf8V.js → pw-ai-3nNWe272.js} +3 -3
- package/dist/{pw-ai-CAkn033M.js → pw-ai-BUH9Ew6q.js} +3 -3
- package/dist/{pw-ai-C_C5as1t.js → pw-ai-DQuj9c2U.js} +3 -3
- package/dist/{pw-ai-CdaTpZo1.js → pw-ai-DhirpjMU.js} +3 -3
- package/dist/{qr-cli-Diq_Rb3t.js → qr-cli-CGS8DyNl.js} +2 -2
- package/dist/{qr-cli-DlVBiDQm.js → qr-cli-CHnzhKoc.js} +2 -2
- package/dist/{register.agent-CDD5Z9Fj.js → register.agent-BOuUXJJS.js} +43 -43
- package/dist/{register.agent-Ds6PkEYl.js → register.agent-DYzV2wmB.js} +45 -45
- package/dist/{register.configure-COyj6XWC.js → register.configure-C4oljj3F.js} +47 -47
- package/dist/{register.configure-CBRYdCX2.js → register.configure-CHvDZtU1.js} +48 -48
- package/dist/{register.maintenance-DwHXDl_N.js → register.maintenance-DIylvylR.js} +44 -44
- package/dist/{register.maintenance-CyJQDrP0.js → register.maintenance-DhprP_dA.js} +46 -46
- package/dist/{register.message-BNe6-SJE.js → register.message-B9SgsGyt.js} +35 -35
- package/dist/{register.message-CvQ7LEYe.js → register.message-DF4_1evm.js} +34 -34
- package/dist/{register.onboard-BxxfWU46.js → register.onboard-CdwNCs_L.js} +42 -42
- package/dist/{register.onboard-CuRnx0wV.js → register.onboard-DOJyYmJS.js} +43 -43
- package/dist/{register.setup-qmcQQ6EM.js → register.setup-0Due7c9e.js} +43 -43
- package/dist/{register.setup-B4rO_Fld.js → register.setup-DxV_KIbP.js} +42 -42
- package/dist/{register.status-health-sessions-CQ0_UB_j.js → register.status-health-sessions-C584c9tm.js} +38 -38
- package/dist/{register.status-health-sessions-4OEVg4h6.js → register.status-health-sessions-D1tqd_k_.js} +40 -40
- package/dist/{register.subclis-68XcQ3ao.js → register.subclis-DuON_fJu.js} +28 -28
- package/dist/{replies-QloQerhz.js → replies-BXYTRk0Z.js} +1 -1
- package/dist/{replies-D9V19U2-.js → replies-Bhx469BX.js} +1 -1
- package/dist/{replies-CTKReSzx.js → replies-BnmCXHdE.js} +1 -1
- package/dist/{replies-DqdOBkTB.js → replies-UxER0fi1.js} +1 -1
- package/dist/{reply-DI3kOl7x.js → reply-BzqL_47o.js} +257 -70
- package/dist/{routes-qIyRWgzF.js → routes-DH3bW8wF.js} +3 -3
- package/dist/{routes-BYphcpth.js → routes-lbqRkIBb.js} +3 -3
- package/dist/{rpc-CvzWzHjS.js → rpc-BkvZNT-M.js} +1 -1
- package/dist/{rpc-DfC0wvv1.js → rpc-DYXJGfFr.js} +1 -1
- package/dist/{run-main-DiJI5-hU.js → run-main-CcFCZNx_.js} +53 -53
- package/dist/{runner-DOvsNiYz.js → runner-BHZy2rvh.js} +5 -5
- package/dist/{runner-BXN4KYDK.js → runner-CNY0hwm-.js} +5 -5
- package/dist/{runner-VHq3quQZ.js → runner-CplzHJ1b.js} +5 -5
- package/dist/{runner-uDZlTCm2.js → runner-Cu0qqBIE.js} +5 -5
- package/dist/{sandbox-rMmahr2s.js → sandbox-B0QOR7Cn.js} +5 -5
- package/dist/{sandbox-cli-C90jqh9l.js → sandbox-cli-CPkB96x-.js} +7 -7
- package/dist/{sandbox-cli-Duc05KL9.js → sandbox-cli-DAY7EbKl.js} +7 -7
- package/dist/{sandbox-CbuJolk2.js → sandbox-psIl5_gT.js} +5 -5
- package/dist/{security-cli-BTcKFy-k.js → security-cli-Bolpxy60.js} +12 -12
- package/dist/{security-cli-BPqLtK8x.js → security-cli-C2ZKf8ET.js} +12 -12
- package/dist/{send-BVZGeP2r.js → send-8dFVpIIg.js} +1 -1
- package/dist/{send-CHOArYFe.js → send-BPqK6C8h.js} +1 -1
- package/dist/{send-D0dzPf6g.js → send-BVRNZ9hM.js} +1 -1
- package/dist/{send-CzE5UKr-.js → send-BbscKwuU.js} +1 -1
- package/dist/{send-Do-0Kcmv.js → send-Bj2SQQVP.js} +1 -1
- package/dist/{send-BeASPkFg.js → send-Bj3PJmrF.js} +1 -1
- package/dist/{send-De_WCeGZ.js → send-Bv-112XA.js} +1 -1
- package/dist/{send-BH09HKsX.js → send-C8fjzstb.js} +1 -1
- package/dist/{send-mi3NHnwI.js → send-C8ohJBK5.js} +2 -2
- package/dist/{send-BsocounR.js → send-CIvsJpdo.js} +2 -2
- package/dist/{send-BVw7fCyL.js → send-CUhH6I6A.js} +1 -1
- package/dist/{send-3YM-aarb.js → send-CWrxWRjz.js} +1 -1
- package/dist/{send-CYfaZNZ4.js → send-Ci0uVV_k.js} +1 -1
- package/dist/{send-C7u4_H5t.js → send-Ci3UEBVK.js} +1 -1
- package/dist/{send-hNornLoH.js → send-CzxMGZc_.js} +2 -2
- package/dist/{send-DEWzWqfZ.js → send-DEcC_kQP.js} +1 -1
- package/dist/{send-D16XtYvC.js → send-DPKghOxz.js} +1 -1
- package/dist/{send-D3M6pMr5.js → send-DZbplWNh.js} +1 -1
- package/dist/{send-D_yJMeJa.js → send-DiBs_eJc.js} +2 -2
- package/dist/{send-B18gkuvz.js → send-FW1P3D82.js} +1 -1
- package/dist/{server-context-bMIwnOnH.js → server-context-AHh7m1PV.js} +5 -5
- package/dist/{server-context-DG2dIhAy.js → server-context-cw7ha2ct.js} +5 -5
- package/dist/{server-methods-DnTo3Oou.js → server-methods-BriHyeA7.js} +17 -17
- package/dist/{server-methods-B_JpD0c-.js → server-methods-CJ7xa1ot.js} +18 -18
- package/dist/{server-node-events-IlWB4f_P.js → server-node-events-CCId0gGy.js} +34 -34
- package/dist/{server-node-events-t5pGPXLD.js → server-node-events-_q8duhVi.js} +35 -35
- package/dist/{session-BeJq-MLE.js → session-B4Bibpie.js} +1 -1
- package/dist/{session-T0JXlYWe.js → session-D4FMCkcS.js} +1 -1
- package/dist/{session-BjcsCwgz.js → session-Dw3zM2St.js} +1 -1
- package/dist/{session-BkVBeAkg.js → session-lD2CnIWX.js} +1 -1
- package/dist/{session-utils-Cdv2Qaq2.js → session-utils-DySzoW4O.js} +4 -4
- package/dist/{sessions-CX93jXmG.js → sessions-BVbSbD60.js} +4 -4
- package/dist/{sessions-DJAxaVI7.js → sessions-CRTZnttk.js} +2 -2
- package/dist/{sessions-BEyCtqBB.js → sessions-L4e356Ra.js} +2 -2
- package/dist/{shared-CMw4odDH.js → shared-DZ9YCnZC.js} +2 -2
- package/dist/{shared-CLXhDldI.js → shared-oaw6SrnD.js} +2 -2
- package/dist/{skill-commands-CWySL97a.js → skill-commands-BlfEmZ8t.js} +1 -1
- package/dist/{skill-commands-B64uavY9.js → skill-commands-C2kxEz5h.js} +1 -1
- package/dist/{skill-commands-DrFCB9F9.js → skill-commands-CSBmZ_di.js} +1 -1
- package/dist/{skill-commands-DWcJOIzP.js → skill-commands-C_ZNSYNS.js} +1 -1
- package/dist/{skills-cli-DIx7YItN.js → skills-cli-D9gvgM58.js} +2 -2
- package/dist/{skills-cli-CQ7XQ4Kn.js → skills-cli-DBVcmBEp.js} +2 -2
- package/dist/{status-s1Tp-jVl.js → status-BUX2e6T-.js} +11 -11
- package/dist/{status-cWLYsK8x.js → status-C6UoBmkd.js} +2 -2
- package/dist/{status-BXQGCrxj.js → status-DJDE9f6i.js} +12 -12
- package/dist/{status-kOpLSgWJ.js → status-oObYVZk-.js} +2 -2
- package/dist/{status.update-DlaskfTr.js → status.update-CbAFtv61.js} +1 -1
- package/dist/{status.update-BXs3adtg.js → status.update-qDyKo2AJ.js} +1 -1
- package/dist/{subagent-registry-XHBZsH3Q.js → subagent-registry-BmP1Rhns.js} +258 -71
- package/dist/{system-cli-DPNDYRBr.js → system-cli-DpluDf4c.js} +4 -4
- package/dist/{system-cli-D10NhXw1.js → system-cli-gtr03ReO.js} +4 -4
- package/dist/{systemd-hints-Bm2H1erP.js → systemd-hints-Bmr_bzjF.js} +1 -1
- package/dist/{systemd-hints-BBPT8Use.js → systemd-hints-CnG98ooq.js} +1 -1
- package/dist/{tui-pvq_HI-q.js → tui-DnLFki4B.js} +16 -7
- package/dist/{tui-4d-MyU6O.js → tui-UMEqttti.js} +16 -7
- package/dist/{tui-cli-BsSKYVE3.js → tui-cli-ChVrbXQ7.js} +11 -11
- package/dist/{tui-cli-9uTZZ13F.js → tui-cli-DaL5S2ce.js} +11 -11
- package/dist/{update-cli-B3VC_mrH.js → update-cli-Bxb34ox7.js} +49 -49
- package/dist/{update-cli-_1YRH17q.js → update-cli-C-zL3WoC.js} +47 -47
- package/dist/{update-runner-Dsc1_XOK.js → update-runner-D9rjTCpa.js} +1 -1
- package/dist/{update-runner-DBbX4Iin.js → update-runner-rav9ZMjZ.js} +1 -1
- package/dist/{web-JIG-oxRW.js → web-4xYayj1G.js} +37 -37
- package/dist/{web-DjgeLZ5l.js → web-BS91XHKA.js} +21 -21
- package/dist/{web-DzjJ_iNt.js → web-DlKbVYgh.js} +37 -37
- package/dist/{web-CmZZsoMg.js → web-OmlhMCcZ.js} +21 -21
- package/dist/{webhooks-cli-B0Crq2Ec.js → webhooks-cli-BxXpx8Hu.js} +2 -2
- package/dist/{webhooks-cli-CLIdArAE.js → webhooks-cli-CvbEWtdd.js} +2 -2
- package/dist/{whatsapp-actions-Jfx4zcwv.js → whatsapp-actions-7xW0TEHg.js} +3 -3
- package/dist/{whatsapp-actions-B821AFp-.js → whatsapp-actions-B3zu-BhB.js} +3 -3
- package/dist/{whatsapp-actions-BL7tCNC_.js → whatsapp-actions-BWERIEcF.js} +3 -3
- package/dist/{whatsapp-actions-BIjGyW3T.js → whatsapp-actions-DAFOi466.js} +3 -3
- package/dist/{with-timeout-Cj_xUxo6.js → with-timeout-C6nbJrH1.js} +1 -1
- package/dist/{with-timeout-BeA4Jxcl.js → with-timeout-CNkLG3QR.js} +1 -1
- package/docs/reference/templates/SYMIPULSE.md +23 -1
- package/package.json +1 -1
|
@@ -4,28 +4,28 @@ import { c as resolveDefaultAgentId, r as resolveAgentDir, s as resolveAgentWork
|
|
|
4
4
|
import "./subsystem-Bs9YvKLa.js";
|
|
5
5
|
import "./workspace-wAaHI8-5.js";
|
|
6
6
|
import "./tokens-H1H1LiSQ.js";
|
|
7
|
-
import { t as runEmbeddedPiAgent } from "./pi-embedded-
|
|
7
|
+
import { t as runEmbeddedPiAgent } from "./pi-embedded-DUUw7-tO.js";
|
|
8
8
|
import "./plugins-DQYI3Fr-.js";
|
|
9
9
|
import "./accounts-tNElYrCH.js";
|
|
10
10
|
import "./boolean-B8-BqKGQ.js";
|
|
11
11
|
import "./command-format-BaxDnULz.js";
|
|
12
12
|
import "./bindings-B7Ke6LJi.js";
|
|
13
|
-
import "./send-
|
|
14
|
-
import "./send-
|
|
15
|
-
import "./deliver-
|
|
13
|
+
import "./send-BPqK6C8h.js";
|
|
14
|
+
import "./send-DZbplWNh.js";
|
|
15
|
+
import "./deliver-DXVMhb3A.js";
|
|
16
16
|
import "./diagnostic-CI0kRQkt.js";
|
|
17
17
|
import "./diagnostic-session-state-Bxo4UHOL.js";
|
|
18
18
|
import "./accounts-CWktKM8a.js";
|
|
19
|
-
import "./send-
|
|
19
|
+
import "./send-DiBs_eJc.js";
|
|
20
20
|
import "./image-ops-CvJzsyvE.js";
|
|
21
|
-
import "./model-auth-
|
|
21
|
+
import "./model-auth-Db8I8QVL.js";
|
|
22
22
|
import "./github-copilot-token-C_qUP7p5.js";
|
|
23
23
|
import "./pi-model-discovery-DaNAekda.js";
|
|
24
24
|
import "./message-channel-Dz5lr5b0.js";
|
|
25
|
-
import "./pi-embedded-helpers-
|
|
26
|
-
import "./config-
|
|
25
|
+
import "./pi-embedded-helpers-CLip13MP.js";
|
|
26
|
+
import "./config-C_1uZzwy.js";
|
|
27
27
|
import "./manifest-registry-D0IQ3WuX.js";
|
|
28
|
-
import "./chrome-
|
|
28
|
+
import "./chrome-DrxNYzTD.js";
|
|
29
29
|
import "./frontmatter-C_bv_0P8.js";
|
|
30
30
|
import "./skills-BFekKL7i.js";
|
|
31
31
|
import "./redact-jSxx6Ep2.js";
|
|
@@ -36,10 +36,10 @@ import "./thinking-CdlENGRW.js";
|
|
|
36
36
|
import "./accounts-qtxJ-6em.js";
|
|
37
37
|
import "./paths-DLyHUt31.js";
|
|
38
38
|
import "./tool-images-DXB7tqWi.js";
|
|
39
|
-
import "./image-
|
|
39
|
+
import "./image-Bf_jHnTg.js";
|
|
40
40
|
import "./reply-prefix-XlyuyChD.js";
|
|
41
|
-
import "./manager-
|
|
42
|
-
import "./gemini-auth-
|
|
41
|
+
import "./manager-D5ZbBYmN.js";
|
|
42
|
+
import "./gemini-auth-2cinXFeY.js";
|
|
43
43
|
import "./sqlite-DRbx2dhW.js";
|
|
44
44
|
import "./retry-Cly39XZB.js";
|
|
45
45
|
import "./target-errors-Be1SwYlW.js";
|
|
@@ -48,18 +48,18 @@ import "./markdown-tables-iMQQZu4Q.js";
|
|
|
48
48
|
import "./local-roots-DMwIh5cS.js";
|
|
49
49
|
import "./ir-DccrnjsE.js";
|
|
50
50
|
import "./render-CDCvpfhh.js";
|
|
51
|
-
import "./commands-registry-
|
|
52
|
-
import "./skill-commands-
|
|
53
|
-
import "./runner-
|
|
51
|
+
import "./commands-registry-tuRMQmX4.js";
|
|
52
|
+
import "./skill-commands-C2kxEz5h.js";
|
|
53
|
+
import "./runner-BHZy2rvh.js";
|
|
54
54
|
import "./fetch-Bso4i15F.js";
|
|
55
55
|
import "./channel-activity-CsM_hJ_s.js";
|
|
56
56
|
import "./tables-DuZspiBu.js";
|
|
57
|
-
import "./send-
|
|
57
|
+
import "./send-BbscKwuU.js";
|
|
58
58
|
import "./outbound-attachment-DjNDa3zn.js";
|
|
59
|
-
import "./send-
|
|
59
|
+
import "./send-Bj3PJmrF.js";
|
|
60
60
|
import "./resolve-route-CZ-1eqw0.js";
|
|
61
61
|
import "./proxy-CBJ1upuz.js";
|
|
62
|
-
import "./replies-
|
|
62
|
+
import "./replies-Bhx469BX.js";
|
|
63
63
|
import fs from "node:fs/promises";
|
|
64
64
|
import os from "node:os";
|
|
65
65
|
import path from "node:path";
|
|
@@ -2,9 +2,9 @@ import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
|
2
2
|
import { Ct as success, _ as defaultRuntime, gt as info, ht as danger } from "./entry.js";
|
|
3
3
|
import { t as formatCliCommand } from "./command-format-BtYOfWxC.js";
|
|
4
4
|
import { o as logInfo } from "./exec-CBKBIMpA.js";
|
|
5
|
-
import { i as loadConfig } from "./config-
|
|
5
|
+
import { i as loadConfig } from "./config-COvlkain.js";
|
|
6
6
|
import { n as resolveWhatsAppAccount, o as logoutWeb } from "./accounts-D9ITgITj.js";
|
|
7
|
-
import { i as waitForWaConnection, n as formatError, t as createWaSocket } from "./session-
|
|
7
|
+
import { i as waitForWaConnection, n as formatError, t as createWaSocket } from "./session-Dw3zM2St.js";
|
|
8
8
|
import { DisconnectReason } from "@whiskeysockets/baileys";
|
|
9
9
|
|
|
10
10
|
//#region src/web/login.ts
|
|
@@ -4,8 +4,8 @@ import { r as defaultRuntime } from "./subsystem-Bs9YvKLa.js";
|
|
|
4
4
|
import { x as logInfo } from "./workspace-wAaHI8-5.js";
|
|
5
5
|
import { a as logoutWeb, t as resolveWhatsAppAccount } from "./accounts-tNElYrCH.js";
|
|
6
6
|
import { t as formatCliCommand } from "./command-format-BaxDnULz.js";
|
|
7
|
-
import { n as loadConfig } from "./config-
|
|
8
|
-
import { i as waitForWaConnection, n as formatError, t as createWaSocket } from "./session-
|
|
7
|
+
import { n as loadConfig } from "./config-C_1uZzwy.js";
|
|
8
|
+
import { i as waitForWaConnection, n as formatError, t as createWaSocket } from "./session-D4FMCkcS.js";
|
|
9
9
|
import { DisconnectReason } from "@whiskeysockets/baileys";
|
|
10
10
|
|
|
11
11
|
//#region src/web/login.ts
|
|
@@ -3,9 +3,9 @@ import { I as success, O as danger, k as info } from "./utils-B-0b9bGM.js";
|
|
|
3
3
|
import { f as defaultRuntime } from "./subsystem-D9vIQve0.js";
|
|
4
4
|
import { o as logInfo } from "./exec-CWkblSrI.js";
|
|
5
5
|
import { t as formatCliCommand } from "./command-format-COaS-S7B.js";
|
|
6
|
-
import { i as loadConfig } from "./config-
|
|
6
|
+
import { i as loadConfig } from "./config-DB5jMj3Z.js";
|
|
7
7
|
import { n as resolveWhatsAppAccount, o as logoutWeb } from "./accounts-DDuIpcln.js";
|
|
8
|
-
import { i as waitForWaConnection, n as formatError, t as createWaSocket } from "./session-
|
|
8
|
+
import { i as waitForWaConnection, n as formatError, t as createWaSocket } from "./session-B4Bibpie.js";
|
|
9
9
|
import { DisconnectReason } from "@whiskeysockets/baileys";
|
|
10
10
|
|
|
11
11
|
//#region src/web/login.ts
|
|
@@ -4,8 +4,8 @@ import { A as logInfo } from "./agent-scope-Cbl5pNe1.js";
|
|
|
4
4
|
import { r as defaultRuntime } from "./subsystem-CZixfwU8.js";
|
|
5
5
|
import { r as formatCliCommand } from "./env-CQ_DQOwT.js";
|
|
6
6
|
import { a as logoutWeb, t as resolveWhatsAppAccount } from "./accounts-DDEyGwby.js";
|
|
7
|
-
import { n as loadConfig } from "./config-
|
|
8
|
-
import { i as waitForWaConnection, n as formatError, t as createWaSocket } from "./session-
|
|
7
|
+
import { n as loadConfig } from "./config-BUHRlrbS.js";
|
|
8
|
+
import { i as waitForWaConnection, n as formatError, t as createWaSocket } from "./session-lD2CnIWX.js";
|
|
9
9
|
import { DisconnectReason } from "@whiskeysockets/baileys";
|
|
10
10
|
|
|
11
11
|
//#region src/web/login.ts
|
|
@@ -2,13 +2,13 @@ import "./paths-CE7eVGHg.js";
|
|
|
2
2
|
import { U as danger, W as info, X as success } from "./registry-BhoUuugi.js";
|
|
3
3
|
import { A as logInfo } from "./agent-scope-Cbl5pNe1.js";
|
|
4
4
|
import { r as defaultRuntime } from "./subsystem-CZixfwU8.js";
|
|
5
|
-
import "./model-selection
|
|
5
|
+
import "./model-selection-DBPwoBvb.js";
|
|
6
6
|
import "./github-copilot-token-BbsJ0Qbo.js";
|
|
7
7
|
import "./env-CQ_DQOwT.js";
|
|
8
8
|
import { a as logoutWeb, l as readWebSelfId, p as webAuthExists, t as resolveWhatsAppAccount } from "./accounts-DDEyGwby.js";
|
|
9
|
-
import { n as loadConfig } from "./config-
|
|
9
|
+
import { n as loadConfig } from "./config-BUHRlrbS.js";
|
|
10
10
|
import "./manifest-registry-D-mTF1cj.js";
|
|
11
|
-
import { i as waitForWaConnection, n as formatError, r as getStatusCode, t as createWaSocket } from "./session-
|
|
11
|
+
import { i as waitForWaConnection, n as formatError, r as getStatusCode, t as createWaSocket } from "./session-lD2CnIWX.js";
|
|
12
12
|
import { randomUUID } from "node:crypto";
|
|
13
13
|
import { DisconnectReason } from "@whiskeysockets/baileys";
|
|
14
14
|
import QRCodeModule from "qrcode-terminal/vendor/QRCode/index.js";
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { Ct as success, _ as defaultRuntime, gt as info, ht as danger } from "./entry.js";
|
|
2
|
-
import "./auth-profiles-
|
|
2
|
+
import "./auth-profiles-Cs3GPB03.js";
|
|
3
3
|
import { o as logInfo } from "./exec-CBKBIMpA.js";
|
|
4
4
|
import "./agent-scope-D-jRCY0d.js";
|
|
5
5
|
import "./github-copilot-token-DuFIqfeC.js";
|
|
6
6
|
import "./manifest-registry-Czr39pxG.js";
|
|
7
|
-
import { i as loadConfig } from "./config-
|
|
7
|
+
import { i as loadConfig } from "./config-COvlkain.js";
|
|
8
8
|
import { m as webAuthExists, n as resolveWhatsAppAccount, o as logoutWeb, u as readWebSelfId } from "./accounts-D9ITgITj.js";
|
|
9
9
|
import "./logging-CFvkxgcX.js";
|
|
10
|
-
import { i as waitForWaConnection, n as formatError, r as getStatusCode, t as createWaSocket } from "./session-
|
|
10
|
+
import { i as waitForWaConnection, n as formatError, r as getStatusCode, t as createWaSocket } from "./session-Dw3zM2St.js";
|
|
11
11
|
import { randomUUID } from "node:crypto";
|
|
12
12
|
import { DisconnectReason } from "@whiskeysockets/baileys";
|
|
13
13
|
import QRCodeModule from "qrcode-terminal/vendor/QRCode/index.js";
|
|
@@ -4,15 +4,15 @@ import "./registry-Cja8eT7G.js";
|
|
|
4
4
|
import { f as defaultRuntime } from "./subsystem-D9vIQve0.js";
|
|
5
5
|
import { o as logInfo } from "./exec-CWkblSrI.js";
|
|
6
6
|
import "./agent-scope-CgUHAtCo.js";
|
|
7
|
-
import "./model-selection-
|
|
7
|
+
import "./model-selection-BBrZnKDw.js";
|
|
8
8
|
import "./github-copilot-token-DAu1a6BX.js";
|
|
9
9
|
import "./boolean-BsqeuxE6.js";
|
|
10
10
|
import "./env-DPCHYPeH.js";
|
|
11
|
-
import { i as loadConfig } from "./config-
|
|
11
|
+
import { i as loadConfig } from "./config-DB5jMj3Z.js";
|
|
12
12
|
import "./manifest-registry-C4BxOMWX.js";
|
|
13
13
|
import { m as webAuthExists, n as resolveWhatsAppAccount, o as logoutWeb, u as readWebSelfId } from "./accounts-DDuIpcln.js";
|
|
14
14
|
import "./logging-w5jq5901.js";
|
|
15
|
-
import { i as waitForWaConnection, n as formatError, r as getStatusCode, t as createWaSocket } from "./session-
|
|
15
|
+
import { i as waitForWaConnection, n as formatError, r as getStatusCode, t as createWaSocket } from "./session-B4Bibpie.js";
|
|
16
16
|
import { randomUUID } from "node:crypto";
|
|
17
17
|
import { DisconnectReason } from "@whiskeysockets/baileys";
|
|
18
18
|
import QRCodeModule from "qrcode-terminal/vendor/QRCode/index.js";
|
|
@@ -6,11 +6,11 @@ import { x as logInfo } from "./workspace-wAaHI8-5.js";
|
|
|
6
6
|
import { a as logoutWeb, l as readWebSelfId, p as webAuthExists, t as resolveWhatsAppAccount } from "./accounts-tNElYrCH.js";
|
|
7
7
|
import "./boolean-B8-BqKGQ.js";
|
|
8
8
|
import "./command-format-BaxDnULz.js";
|
|
9
|
-
import "./model-auth-
|
|
9
|
+
import "./model-auth-Db8I8QVL.js";
|
|
10
10
|
import "./github-copilot-token-C_qUP7p5.js";
|
|
11
|
-
import { n as loadConfig } from "./config-
|
|
11
|
+
import { n as loadConfig } from "./config-C_1uZzwy.js";
|
|
12
12
|
import "./manifest-registry-D0IQ3WuX.js";
|
|
13
|
-
import { i as waitForWaConnection, n as formatError, r as getStatusCode, t as createWaSocket } from "./session-
|
|
13
|
+
import { i as waitForWaConnection, n as formatError, r as getStatusCode, t as createWaSocket } from "./session-D4FMCkcS.js";
|
|
14
14
|
import { randomUUID } from "node:crypto";
|
|
15
15
|
import { DisconnectReason } from "@whiskeysockets/baileys";
|
|
16
16
|
import QRCodeModule from "qrcode-terminal/vendor/QRCode/index.js";
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import { Dt as theme, Et as isRich, Tt as colorize, p as formatLocalIsoWithOffset, y as clearActiveProgressLine } from "./entry.js";
|
|
2
|
-
import "./auth-profiles-
|
|
2
|
+
import "./auth-profiles-Cs3GPB03.js";
|
|
3
3
|
import { t as formatCliCommand } from "./command-format-BtYOfWxC.js";
|
|
4
4
|
import "./exec-CBKBIMpA.js";
|
|
5
5
|
import "./agent-scope-D-jRCY0d.js";
|
|
6
6
|
import "./github-copilot-token-DuFIqfeC.js";
|
|
7
7
|
import "./manifest-registry-Czr39pxG.js";
|
|
8
|
-
import "./config-
|
|
8
|
+
import "./config-COvlkain.js";
|
|
9
9
|
import "./client-DMBZpU6X.js";
|
|
10
|
-
import { t as buildGatewayConnectionDetails } from "./call-
|
|
10
|
+
import { t as buildGatewayConnectionDetails } from "./call-6AGLOo_A.js";
|
|
11
11
|
import "./message-channel-C9dERklz.js";
|
|
12
12
|
import "./pairing-token-Byh6drgn.js";
|
|
13
13
|
import { t as formatDocsLink } from "./links-DlWpl9Yv.js";
|
|
14
14
|
import "./progress-BAHiAaDW.js";
|
|
15
|
-
import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-
|
|
15
|
+
import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-CzQ2-09T.js";
|
|
16
16
|
import { t as parseLogLine } from "./parse-log-line-C6yJx969.js";
|
|
17
17
|
import { setTimeout } from "node:timers/promises";
|
|
18
18
|
|
|
@@ -4,20 +4,20 @@ import "./registry-Cja8eT7G.js";
|
|
|
4
4
|
import { c as formatLocalIsoWithOffset, m as clearActiveProgressLine } from "./subsystem-D9vIQve0.js";
|
|
5
5
|
import "./exec-CWkblSrI.js";
|
|
6
6
|
import "./agent-scope-CgUHAtCo.js";
|
|
7
|
-
import "./model-selection-
|
|
7
|
+
import "./model-selection-BBrZnKDw.js";
|
|
8
8
|
import "./github-copilot-token-DAu1a6BX.js";
|
|
9
9
|
import { t as formatCliCommand } from "./command-format-COaS-S7B.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-
|
|
13
|
+
import "./config-DB5jMj3Z.js";
|
|
14
14
|
import "./manifest-registry-C4BxOMWX.js";
|
|
15
15
|
import "./client-CQSyCS4M.js";
|
|
16
|
-
import { t as buildGatewayConnectionDetails } from "./call-
|
|
16
|
+
import { t as buildGatewayConnectionDetails } from "./call-TvMa4u8t.js";
|
|
17
17
|
import "./pairing-token-CX3NN_qj.js";
|
|
18
18
|
import { t as formatDocsLink } from "./links-3i1eUga4.js";
|
|
19
19
|
import "./progress-jIePzvGA.js";
|
|
20
|
-
import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-
|
|
20
|
+
import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-DijKM-l5.js";
|
|
21
21
|
import { t as parseLogLine } from "./parse-log-line-BHCUQaF3.js";
|
|
22
22
|
import { setTimeout } from "node:timers/promises";
|
|
23
23
|
|
|
@@ -3,12 +3,12 @@ import { s as resolveStateDir } from "./paths-CE7eVGHg.js";
|
|
|
3
3
|
import { C as clampNumber, P as resolveUserPath, S as clampInt, V as truncateUtf16Safe } from "./registry-BhoUuugi.js";
|
|
4
4
|
import { n as resolveAgentConfig, r as resolveAgentDir, s as resolveAgentWorkspaceDir } from "./agent-scope-Cbl5pNe1.js";
|
|
5
5
|
import { t as createSubsystemLogger } from "./subsystem-CZixfwU8.js";
|
|
6
|
-
import { T as resolveApiKeyForProvider, w as requireApiKey } from "./model-selection
|
|
6
|
+
import { T as resolveApiKeyForProvider, w as requireApiKey } from "./model-selection-DBPwoBvb.js";
|
|
7
7
|
import { t as isTruthyEnvValue } from "./env-CQ_DQOwT.js";
|
|
8
8
|
import { n as formatErrorMessage } from "./errors-CPfngF0S.js";
|
|
9
9
|
import { o as resolveSessionTranscriptsDirForAgent } from "./paths-DkMamAQ-.js";
|
|
10
10
|
import { n as onSessionTranscriptUpdate } from "./transcript-events-C8Tqw4td.js";
|
|
11
|
-
import { n as collectProviderApiKeysForExecution, r as executeWithApiKeyRotation, t as parseGeminiAuth } from "./gemini-auth-
|
|
11
|
+
import { n as collectProviderApiKeysForExecution, r as executeWithApiKeyRotation, t as parseGeminiAuth } from "./gemini-auth-DtBB7-5F.js";
|
|
12
12
|
import { _ as isFileMissingError, a as buildFileEntry, c as ensureDir, d as listMemoryFiles, f as normalizeExtraMemoryPaths, h as runWithConcurrency, i as sessionPathForFile, l as hashText, m as remapChunkLines, n as buildSessionEntry, o as chunkMarkdown, p as parseEmbedding, r as listSessionFilesForAgent, s as cosineSimilarity, t as requireNodeSqlite, u as isMemoryPath, v as statRegularFile } from "./sqlite-BNh23mUR.js";
|
|
13
13
|
import { n as retryAsync } from "./retry-QGp0jvVi.js";
|
|
14
14
|
import path from "node:path";
|
|
@@ -63,7 +63,7 @@ function mergeConfig(defaults, overrides, agentId) {
|
|
|
63
63
|
const provider = overrides?.provider ?? defaults?.provider ?? "auto";
|
|
64
64
|
const defaultRemote = defaults?.remote;
|
|
65
65
|
const overrideRemote = overrides?.remote;
|
|
66
|
-
const includeRemote = Boolean(overrideRemote?.baseUrl || overrideRemote?.apiKey || overrideRemote?.headers || defaultRemote?.baseUrl || defaultRemote?.apiKey || defaultRemote?.headers) || provider === "openai" || provider === "gemini" || provider === "voyage" || provider === "auto";
|
|
66
|
+
const includeRemote = Boolean(overrideRemote?.baseUrl || overrideRemote?.apiKey || overrideRemote?.headers || defaultRemote?.baseUrl || defaultRemote?.apiKey || defaultRemote?.headers) || provider === "openai" || provider === "gemini" || provider === "voyage" || provider === "ollama" || provider === "auto";
|
|
67
67
|
const batch = {
|
|
68
68
|
enabled: overrideRemote?.batch?.enabled ?? defaultRemote?.batch?.enabled ?? false,
|
|
69
69
|
wait: overrideRemote?.batch?.wait ?? defaultRemote?.batch?.wait ?? true,
|
|
@@ -330,6 +330,124 @@ async function resolveGeminiEmbeddingClient(options) {
|
|
|
330
330
|
};
|
|
331
331
|
}
|
|
332
332
|
|
|
333
|
+
//#endregion
|
|
334
|
+
//#region src/memory/embeddings-remote-fetch.ts
|
|
335
|
+
async function fetchRemoteEmbeddingVectors(params) {
|
|
336
|
+
const res = await fetch(params.url, {
|
|
337
|
+
method: "POST",
|
|
338
|
+
headers: params.headers,
|
|
339
|
+
body: JSON.stringify(params.body)
|
|
340
|
+
});
|
|
341
|
+
if (!res.ok) {
|
|
342
|
+
const text = await res.text();
|
|
343
|
+
throw new Error(`${params.errorPrefix}: ${res.status} ${text}`);
|
|
344
|
+
}
|
|
345
|
+
return ((await res.json()).data ?? []).map((entry) => entry.embedding ?? []);
|
|
346
|
+
}
|
|
347
|
+
|
|
348
|
+
//#endregion
|
|
349
|
+
//#region src/memory/embeddings-ollama.ts
|
|
350
|
+
/**
|
|
351
|
+
* Known embedding model name prefixes. Ollama's `/api/tags` does not expose
|
|
352
|
+
* model capabilities, so we rely on well-known naming patterns.
|
|
353
|
+
*/
|
|
354
|
+
const EMBEDDING_MODEL_PATTERNS = [
|
|
355
|
+
"nomic-embed",
|
|
356
|
+
"mxbai-embed",
|
|
357
|
+
"all-minilm",
|
|
358
|
+
"bge-",
|
|
359
|
+
"snowflake-arctic-embed",
|
|
360
|
+
"gte-",
|
|
361
|
+
"e5-",
|
|
362
|
+
"multilingual-e5",
|
|
363
|
+
"paraphrase-",
|
|
364
|
+
"jina-embeddings",
|
|
365
|
+
"stella-"
|
|
366
|
+
];
|
|
367
|
+
function isEmbeddingModel(name) {
|
|
368
|
+
const lower = name.toLowerCase();
|
|
369
|
+
return EMBEDDING_MODEL_PATTERNS.some((pattern) => lower.includes(pattern));
|
|
370
|
+
}
|
|
371
|
+
/**
|
|
372
|
+
* Resolve the Ollama API base URL from config or defaults.
|
|
373
|
+
* Strips any trailing `/v1` suffix since we need the native API base.
|
|
374
|
+
*/
|
|
375
|
+
function resolveOllamaBaseUrl(cfg) {
|
|
376
|
+
const configured = cfg?.models?.providers?.ollama?.baseUrl?.trim() ?? void 0;
|
|
377
|
+
if (configured) return configured.replace(/\/v1\/?$/, "").replace(/\/$/, "");
|
|
378
|
+
return "http://127.0.0.1:11434";
|
|
379
|
+
}
|
|
380
|
+
/**
|
|
381
|
+
* Probe an Ollama instance for available embedding models.
|
|
382
|
+
* Returns null if Ollama is unreachable or has no embedding models.
|
|
383
|
+
*/
|
|
384
|
+
async function probeOllamaEmbeddingModels(baseUrl) {
|
|
385
|
+
try {
|
|
386
|
+
const controller = new AbortController();
|
|
387
|
+
const timeout = setTimeout(() => controller.abort(), 5e3);
|
|
388
|
+
const res = await fetch(`${baseUrl}/api/tags`, { signal: controller.signal });
|
|
389
|
+
clearTimeout(timeout);
|
|
390
|
+
if (!res.ok) return null;
|
|
391
|
+
const models = ((await res.json()).models ?? []).map((m) => m.name ?? "").filter(Boolean).filter(isEmbeddingModel);
|
|
392
|
+
if (models.length === 0) return null;
|
|
393
|
+
return {
|
|
394
|
+
models,
|
|
395
|
+
baseUrl
|
|
396
|
+
};
|
|
397
|
+
} catch {
|
|
398
|
+
return null;
|
|
399
|
+
}
|
|
400
|
+
}
|
|
401
|
+
/**
|
|
402
|
+
* Create an embedding provider that uses Ollama's OpenAI-compatible
|
|
403
|
+
* `/v1/embeddings` endpoint. No auth header is required for local Ollama.
|
|
404
|
+
*/
|
|
405
|
+
async function createOllamaEmbeddingProvider(options) {
|
|
406
|
+
const cfg = options.config;
|
|
407
|
+
const remoteBaseUrl = options.remote?.baseUrl?.trim();
|
|
408
|
+
let ollamaBase;
|
|
409
|
+
if (remoteBaseUrl) ollamaBase = remoteBaseUrl.replace(/\/v1\/?$/, "").replace(/\/$/, "");
|
|
410
|
+
else ollamaBase = resolveOllamaBaseUrl(cfg);
|
|
411
|
+
let model = options.model?.trim();
|
|
412
|
+
if (!model) {
|
|
413
|
+
const probe = await probeOllamaEmbeddingModels(ollamaBase);
|
|
414
|
+
if (!probe || probe.models.length === 0) throw new Error(`No embedding models found on Ollama at ${ollamaBase}. Pull one with: ollama pull nomic-embed-text`);
|
|
415
|
+
model = probe.models[0];
|
|
416
|
+
}
|
|
417
|
+
const embeddingsUrl = `${ollamaBase}/v1/embeddings`;
|
|
418
|
+
const headers = { "Content-Type": "application/json" };
|
|
419
|
+
const apiKey = options.remote?.apiKey?.trim();
|
|
420
|
+
if (apiKey) headers["Authorization"] = `Bearer ${apiKey}`;
|
|
421
|
+
const client = {
|
|
422
|
+
baseUrl: ollamaBase,
|
|
423
|
+
model
|
|
424
|
+
};
|
|
425
|
+
const embed = async (input) => {
|
|
426
|
+
if (input.length === 0) return [];
|
|
427
|
+
return await fetchRemoteEmbeddingVectors({
|
|
428
|
+
url: embeddingsUrl,
|
|
429
|
+
headers,
|
|
430
|
+
body: {
|
|
431
|
+
model,
|
|
432
|
+
input
|
|
433
|
+
},
|
|
434
|
+
errorPrefix: "ollama embeddings failed"
|
|
435
|
+
});
|
|
436
|
+
};
|
|
437
|
+
return {
|
|
438
|
+
provider: {
|
|
439
|
+
id: "ollama",
|
|
440
|
+
model,
|
|
441
|
+
embedQuery: async (text) => {
|
|
442
|
+
const [vec] = await embed([text]);
|
|
443
|
+
return vec ?? [];
|
|
444
|
+
},
|
|
445
|
+
embedBatch: embed
|
|
446
|
+
},
|
|
447
|
+
client
|
|
448
|
+
};
|
|
449
|
+
}
|
|
450
|
+
|
|
333
451
|
//#endregion
|
|
334
452
|
//#region src/memory/embeddings-remote-client.ts
|
|
335
453
|
async function resolveRemoteEmbeddingBearerClient(params) {
|
|
@@ -354,21 +472,6 @@ async function resolveRemoteEmbeddingBearerClient(params) {
|
|
|
354
472
|
};
|
|
355
473
|
}
|
|
356
474
|
|
|
357
|
-
//#endregion
|
|
358
|
-
//#region src/memory/embeddings-remote-fetch.ts
|
|
359
|
-
async function fetchRemoteEmbeddingVectors(params) {
|
|
360
|
-
const res = await fetch(params.url, {
|
|
361
|
-
method: "POST",
|
|
362
|
-
headers: params.headers,
|
|
363
|
-
body: JSON.stringify(params.body)
|
|
364
|
-
});
|
|
365
|
-
if (!res.ok) {
|
|
366
|
-
const text = await res.text();
|
|
367
|
-
throw new Error(`${params.errorPrefix}: ${res.status} ${text}`);
|
|
368
|
-
}
|
|
369
|
-
return ((await res.json()).data ?? []).map((entry) => entry.embedding ?? []);
|
|
370
|
-
}
|
|
371
|
-
|
|
372
475
|
//#endregion
|
|
373
476
|
//#region src/memory/embeddings-openai.ts
|
|
374
477
|
const DEFAULT_OPENAI_EMBEDDING_MODEL = "text-embedding-3-small";
|
|
@@ -556,6 +659,13 @@ async function createEmbeddingProvider(options) {
|
|
|
556
659
|
const fallback = options.fallback;
|
|
557
660
|
const createProvider = async (id) => {
|
|
558
661
|
if (id === "local") return { provider: await createLocalEmbeddingProvider(options) };
|
|
662
|
+
if (id === "ollama") {
|
|
663
|
+
const { provider, client } = await createOllamaEmbeddingProvider(options);
|
|
664
|
+
return {
|
|
665
|
+
provider,
|
|
666
|
+
ollama: client
|
|
667
|
+
};
|
|
668
|
+
}
|
|
559
669
|
if (id === "gemini") {
|
|
560
670
|
const { provider, client } = await createGeminiEmbeddingProvider(options);
|
|
561
671
|
return {
|
|
@@ -588,6 +698,13 @@ async function createEmbeddingProvider(options) {
|
|
|
588
698
|
} catch (err) {
|
|
589
699
|
localError = formatLocalSetupError(err);
|
|
590
700
|
}
|
|
701
|
+
try {
|
|
702
|
+
const probe = await probeOllamaEmbeddingModels(resolveOllamaBaseUrl(options.config));
|
|
703
|
+
if (probe && probe.models.length > 0) return {
|
|
704
|
+
...await createProvider("ollama"),
|
|
705
|
+
requestedProvider
|
|
706
|
+
};
|
|
707
|
+
} catch {}
|
|
591
708
|
for (const provider of REMOTE_EMBEDDING_PROVIDER_IDS) try {
|
|
592
709
|
return {
|
|
593
710
|
...await createProvider(provider),
|
|
@@ -3742,4 +3859,4 @@ var MemoryIndexManager = class MemoryIndexManager extends MemoryManagerEmbedding
|
|
|
3742
3859
|
};
|
|
3743
3860
|
|
|
3744
3861
|
//#endregion
|
|
3745
|
-
export { resolveMemorySearchConfig as n, manager_exports as t };
|
|
3862
|
+
export { resolveMemorySearchConfig as i, probeOllamaEmbeddingModels as n, resolveOllamaBaseUrl as r, manager_exports as t };
|
|
@@ -3,12 +3,12 @@ import { g as resolveStateDir } from "./paths-Cqn-zk3M.js";
|
|
|
3
3
|
import { E as truncateUtf16Safe, a as clampNumber, i as clampInt, y as resolveUserPath } from "./utils-B-0b9bGM.js";
|
|
4
4
|
import { t as createSubsystemLogger } from "./subsystem-D9vIQve0.js";
|
|
5
5
|
import { c as resolveAgentWorkspaceDir, i as resolveAgentDir, r as resolveAgentConfig } from "./agent-scope-CgUHAtCo.js";
|
|
6
|
-
import { K as requireApiKey, q as resolveApiKeyForProvider } from "./model-selection-
|
|
6
|
+
import { K as requireApiKey, q as resolveApiKeyForProvider } from "./model-selection-BBrZnKDw.js";
|
|
7
7
|
import { t as isTruthyEnvValue } from "./env-DPCHYPeH.js";
|
|
8
8
|
import { n as formatErrorMessage } from "./errors-BF3TeRH2.js";
|
|
9
9
|
import { s as resolveSessionTranscriptsDirForAgent } from "./paths-CyhzMxFA.js";
|
|
10
10
|
import { n as onSessionTranscriptUpdate } from "./transcript-events-DdnTeoR1.js";
|
|
11
|
-
import { n as executeWithApiKeyRotation, r as parseGeminiAuth, t as collectProviderApiKeysForExecution } from "./api-key-rotation-
|
|
11
|
+
import { n as executeWithApiKeyRotation, r as parseGeminiAuth, t as collectProviderApiKeysForExecution } from "./api-key-rotation-De1ivBc0.js";
|
|
12
12
|
import { _ as statRegularFile, a as buildFileEntry, c as ensureDir, d as listMemoryFiles, f as normalizeExtraMemoryPaths, g as isFileMissingError, h as runWithConcurrency, i as sessionPathForFile, l as hashText, m as remapChunkLines, n as buildSessionEntry, o as chunkMarkdown, p as parseEmbedding, r as listSessionFilesForAgent, s as cosineSimilarity, t as requireNodeSqlite, u as isMemoryPath } from "./sqlite-Dx3J_aSE.js";
|
|
13
13
|
import { n as retryAsync } from "./retry-BoS4e4X_.js";
|
|
14
14
|
import fs from "node:fs";
|
|
@@ -63,7 +63,7 @@ function mergeConfig(defaults, overrides, agentId) {
|
|
|
63
63
|
const provider = overrides?.provider ?? defaults?.provider ?? "auto";
|
|
64
64
|
const defaultRemote = defaults?.remote;
|
|
65
65
|
const overrideRemote = overrides?.remote;
|
|
66
|
-
const includeRemote = Boolean(overrideRemote?.baseUrl || overrideRemote?.apiKey || overrideRemote?.headers || defaultRemote?.baseUrl || defaultRemote?.apiKey || defaultRemote?.headers) || provider === "openai" || provider === "gemini" || provider === "voyage" || provider === "auto";
|
|
66
|
+
const includeRemote = Boolean(overrideRemote?.baseUrl || overrideRemote?.apiKey || overrideRemote?.headers || defaultRemote?.baseUrl || defaultRemote?.apiKey || defaultRemote?.headers) || provider === "openai" || provider === "gemini" || provider === "voyage" || provider === "ollama" || provider === "auto";
|
|
67
67
|
const batch = {
|
|
68
68
|
enabled: overrideRemote?.batch?.enabled ?? defaultRemote?.batch?.enabled ?? false,
|
|
69
69
|
wait: overrideRemote?.batch?.wait ?? defaultRemote?.batch?.wait ?? true,
|
|
@@ -330,6 +330,124 @@ async function resolveGeminiEmbeddingClient(options) {
|
|
|
330
330
|
};
|
|
331
331
|
}
|
|
332
332
|
|
|
333
|
+
//#endregion
|
|
334
|
+
//#region src/memory/embeddings-remote-fetch.ts
|
|
335
|
+
async function fetchRemoteEmbeddingVectors(params) {
|
|
336
|
+
const res = await fetch(params.url, {
|
|
337
|
+
method: "POST",
|
|
338
|
+
headers: params.headers,
|
|
339
|
+
body: JSON.stringify(params.body)
|
|
340
|
+
});
|
|
341
|
+
if (!res.ok) {
|
|
342
|
+
const text = await res.text();
|
|
343
|
+
throw new Error(`${params.errorPrefix}: ${res.status} ${text}`);
|
|
344
|
+
}
|
|
345
|
+
return ((await res.json()).data ?? []).map((entry) => entry.embedding ?? []);
|
|
346
|
+
}
|
|
347
|
+
|
|
348
|
+
//#endregion
|
|
349
|
+
//#region src/memory/embeddings-ollama.ts
|
|
350
|
+
/**
|
|
351
|
+
* Known embedding model name prefixes. Ollama's `/api/tags` does not expose
|
|
352
|
+
* model capabilities, so we rely on well-known naming patterns.
|
|
353
|
+
*/
|
|
354
|
+
const EMBEDDING_MODEL_PATTERNS = [
|
|
355
|
+
"nomic-embed",
|
|
356
|
+
"mxbai-embed",
|
|
357
|
+
"all-minilm",
|
|
358
|
+
"bge-",
|
|
359
|
+
"snowflake-arctic-embed",
|
|
360
|
+
"gte-",
|
|
361
|
+
"e5-",
|
|
362
|
+
"multilingual-e5",
|
|
363
|
+
"paraphrase-",
|
|
364
|
+
"jina-embeddings",
|
|
365
|
+
"stella-"
|
|
366
|
+
];
|
|
367
|
+
function isEmbeddingModel(name) {
|
|
368
|
+
const lower = name.toLowerCase();
|
|
369
|
+
return EMBEDDING_MODEL_PATTERNS.some((pattern) => lower.includes(pattern));
|
|
370
|
+
}
|
|
371
|
+
/**
|
|
372
|
+
* Resolve the Ollama API base URL from config or defaults.
|
|
373
|
+
* Strips any trailing `/v1` suffix since we need the native API base.
|
|
374
|
+
*/
|
|
375
|
+
function resolveOllamaBaseUrl(cfg) {
|
|
376
|
+
const configured = cfg?.models?.providers?.ollama?.baseUrl?.trim() ?? void 0;
|
|
377
|
+
if (configured) return configured.replace(/\/v1\/?$/, "").replace(/\/$/, "");
|
|
378
|
+
return "http://127.0.0.1:11434";
|
|
379
|
+
}
|
|
380
|
+
/**
|
|
381
|
+
* Probe an Ollama instance for available embedding models.
|
|
382
|
+
* Returns null if Ollama is unreachable or has no embedding models.
|
|
383
|
+
*/
|
|
384
|
+
async function probeOllamaEmbeddingModels(baseUrl) {
|
|
385
|
+
try {
|
|
386
|
+
const controller = new AbortController();
|
|
387
|
+
const timeout = setTimeout(() => controller.abort(), 5e3);
|
|
388
|
+
const res = await fetch(`${baseUrl}/api/tags`, { signal: controller.signal });
|
|
389
|
+
clearTimeout(timeout);
|
|
390
|
+
if (!res.ok) return null;
|
|
391
|
+
const models = ((await res.json()).models ?? []).map((m) => m.name ?? "").filter(Boolean).filter(isEmbeddingModel);
|
|
392
|
+
if (models.length === 0) return null;
|
|
393
|
+
return {
|
|
394
|
+
models,
|
|
395
|
+
baseUrl
|
|
396
|
+
};
|
|
397
|
+
} catch {
|
|
398
|
+
return null;
|
|
399
|
+
}
|
|
400
|
+
}
|
|
401
|
+
/**
|
|
402
|
+
* Create an embedding provider that uses Ollama's OpenAI-compatible
|
|
403
|
+
* `/v1/embeddings` endpoint. No auth header is required for local Ollama.
|
|
404
|
+
*/
|
|
405
|
+
async function createOllamaEmbeddingProvider(options) {
|
|
406
|
+
const cfg = options.config;
|
|
407
|
+
const remoteBaseUrl = options.remote?.baseUrl?.trim();
|
|
408
|
+
let ollamaBase;
|
|
409
|
+
if (remoteBaseUrl) ollamaBase = remoteBaseUrl.replace(/\/v1\/?$/, "").replace(/\/$/, "");
|
|
410
|
+
else ollamaBase = resolveOllamaBaseUrl(cfg);
|
|
411
|
+
let model = options.model?.trim();
|
|
412
|
+
if (!model) {
|
|
413
|
+
const probe = await probeOllamaEmbeddingModels(ollamaBase);
|
|
414
|
+
if (!probe || probe.models.length === 0) throw new Error(`No embedding models found on Ollama at ${ollamaBase}. Pull one with: ollama pull nomic-embed-text`);
|
|
415
|
+
model = probe.models[0];
|
|
416
|
+
}
|
|
417
|
+
const embeddingsUrl = `${ollamaBase}/v1/embeddings`;
|
|
418
|
+
const headers = { "Content-Type": "application/json" };
|
|
419
|
+
const apiKey = options.remote?.apiKey?.trim();
|
|
420
|
+
if (apiKey) headers["Authorization"] = `Bearer ${apiKey}`;
|
|
421
|
+
const client = {
|
|
422
|
+
baseUrl: ollamaBase,
|
|
423
|
+
model
|
|
424
|
+
};
|
|
425
|
+
const embed = async (input) => {
|
|
426
|
+
if (input.length === 0) return [];
|
|
427
|
+
return await fetchRemoteEmbeddingVectors({
|
|
428
|
+
url: embeddingsUrl,
|
|
429
|
+
headers,
|
|
430
|
+
body: {
|
|
431
|
+
model,
|
|
432
|
+
input
|
|
433
|
+
},
|
|
434
|
+
errorPrefix: "ollama embeddings failed"
|
|
435
|
+
});
|
|
436
|
+
};
|
|
437
|
+
return {
|
|
438
|
+
provider: {
|
|
439
|
+
id: "ollama",
|
|
440
|
+
model,
|
|
441
|
+
embedQuery: async (text) => {
|
|
442
|
+
const [vec] = await embed([text]);
|
|
443
|
+
return vec ?? [];
|
|
444
|
+
},
|
|
445
|
+
embedBatch: embed
|
|
446
|
+
},
|
|
447
|
+
client
|
|
448
|
+
};
|
|
449
|
+
}
|
|
450
|
+
|
|
333
451
|
//#endregion
|
|
334
452
|
//#region src/memory/embeddings-remote-client.ts
|
|
335
453
|
async function resolveRemoteEmbeddingBearerClient(params) {
|
|
@@ -354,21 +472,6 @@ async function resolveRemoteEmbeddingBearerClient(params) {
|
|
|
354
472
|
};
|
|
355
473
|
}
|
|
356
474
|
|
|
357
|
-
//#endregion
|
|
358
|
-
//#region src/memory/embeddings-remote-fetch.ts
|
|
359
|
-
async function fetchRemoteEmbeddingVectors(params) {
|
|
360
|
-
const res = await fetch(params.url, {
|
|
361
|
-
method: "POST",
|
|
362
|
-
headers: params.headers,
|
|
363
|
-
body: JSON.stringify(params.body)
|
|
364
|
-
});
|
|
365
|
-
if (!res.ok) {
|
|
366
|
-
const text = await res.text();
|
|
367
|
-
throw new Error(`${params.errorPrefix}: ${res.status} ${text}`);
|
|
368
|
-
}
|
|
369
|
-
return ((await res.json()).data ?? []).map((entry) => entry.embedding ?? []);
|
|
370
|
-
}
|
|
371
|
-
|
|
372
475
|
//#endregion
|
|
373
476
|
//#region src/memory/embeddings-openai.ts
|
|
374
477
|
const DEFAULT_OPENAI_EMBEDDING_MODEL = "text-embedding-3-small";
|
|
@@ -556,6 +659,13 @@ async function createEmbeddingProvider(options) {
|
|
|
556
659
|
const fallback = options.fallback;
|
|
557
660
|
const createProvider = async (id) => {
|
|
558
661
|
if (id === "local") return { provider: await createLocalEmbeddingProvider(options) };
|
|
662
|
+
if (id === "ollama") {
|
|
663
|
+
const { provider, client } = await createOllamaEmbeddingProvider(options);
|
|
664
|
+
return {
|
|
665
|
+
provider,
|
|
666
|
+
ollama: client
|
|
667
|
+
};
|
|
668
|
+
}
|
|
559
669
|
if (id === "gemini") {
|
|
560
670
|
const { provider, client } = await createGeminiEmbeddingProvider(options);
|
|
561
671
|
return {
|
|
@@ -588,6 +698,13 @@ async function createEmbeddingProvider(options) {
|
|
|
588
698
|
} catch (err) {
|
|
589
699
|
localError = formatLocalSetupError(err);
|
|
590
700
|
}
|
|
701
|
+
try {
|
|
702
|
+
const probe = await probeOllamaEmbeddingModels(resolveOllamaBaseUrl(options.config));
|
|
703
|
+
if (probe && probe.models.length > 0) return {
|
|
704
|
+
...await createProvider("ollama"),
|
|
705
|
+
requestedProvider
|
|
706
|
+
};
|
|
707
|
+
} catch {}
|
|
591
708
|
for (const provider of REMOTE_EMBEDDING_PROVIDER_IDS) try {
|
|
592
709
|
return {
|
|
593
710
|
...await createProvider(provider),
|
|
@@ -3742,4 +3859,4 @@ var MemoryIndexManager = class MemoryIndexManager extends MemoryManagerEmbedding
|
|
|
3742
3859
|
};
|
|
3743
3860
|
|
|
3744
3861
|
//#endregion
|
|
3745
|
-
export { resolveMemorySearchConfig as n, manager_exports as t };
|
|
3862
|
+
export { resolveMemorySearchConfig as i, probeOllamaEmbeddingModels as n, resolveOllamaBaseUrl as r, manager_exports as t };
|