@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
|
@@ -1,73 +1,73 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
2
2
|
import { _ as isCronSessionKey, b as resolveThreadParentSessionKey, c as normalizeMainKey, d as sanitizeAgentId, f as DEFAULT_ACCOUNT_ID, g as isAcpSessionKey, h as getSubagentDepth, l as resolveAgentIdFromSessionKey, o as classifySessionKeyShape, p as normalizeAccountId$2, r as buildAgentMainSessionKey, s as normalizeAgentId, t as DEFAULT_AGENT_ID, u as resolveThreadSessionKeys, v as isSubagentSessionKey, y as parseAgentSessionKey } from "./session-key-C_0eELjb.js";
|
|
3
|
-
import { c as logoutWeb, f as readWebSelfId, g as webAuthExists, o as getWebAuthAgeMs, r as resolveWhatsAppAccount, s as logWebSelfId } from "./accounts-
|
|
3
|
+
import { c as logoutWeb, f as readWebSelfId, g as webAuthExists, o as getWebAuthAgeMs, r as resolveWhatsAppAccount, s as logWebSelfId } from "./accounts-D9zGZU5t.js";
|
|
4
4
|
import { c as expandHomePrefix, i as resolveGatewayPort, n as resolveConfigPath, s as resolveStateDir, t as STATE_DIR, u as resolveRequiredHomeDir } from "./paths-DR2yt_mP.js";
|
|
5
5
|
import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-D9X2phUj.js";
|
|
6
|
-
import { A as resolveSlackBotToken, C as resolveTelegramToken, D as resolveSlackAccount, F as resolveDiscordAccount, I as normalizeDiscordToken, N as listEnabledDiscordAccounts, S as resolveTelegramAccount, _ as normalizeWhatsAppTarget, b as listTelegramAccountIds, g as isWhatsAppGroupJid, h as resolveSlackChannelId, j as createDiscordActionGate, k as resolveSlackAppToken, m as parseSlackTarget, n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin, v as createTelegramActionGate, y as listEnabledTelegramAccounts } from "./plugins-
|
|
6
|
+
import { A as resolveSlackBotToken, C as resolveTelegramToken, D as resolveSlackAccount, F as resolveDiscordAccount, I as normalizeDiscordToken, N as listEnabledDiscordAccounts, S as resolveTelegramAccount, _ as normalizeWhatsAppTarget, b as listTelegramAccountIds, g as isWhatsAppGroupJid, h as resolveSlackChannelId, j as createDiscordActionGate, k as resolveSlackAppToken, m as parseSlackTarget, n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin, v as createTelegramActionGate, y as listEnabledTelegramAccounts } from "./plugins-BbAvhC25.js";
|
|
7
7
|
import { n as fetchWithTimeout, t as bindAbortRelay } from "./fetch-timeout-ChYuW7LE.js";
|
|
8
8
|
import { n as wrapFetchWithAbortSignal, t as resolveFetch } from "./fetch-CUNoPTKm.js";
|
|
9
|
-
import { $ as isRich, A as normalizeE164, D as isRecord$1, E as formatTerminalLink, H as isPlainObject, I as shortenHomeInString, J as setVerbose, K as logVerbose, L as shortenHomePath, P as resolveUserPath, Q as colorize, R as sleep$1, S as clampInt, T as escapeRegExp, U as danger, V as truncateUtf16Safe, Y as shouldLogVerbose, Z as warn, _ as matchPluginCommand, a as normalizeAnyChannelId, b as CONFIG_DIR, ct as normalizeLogLevel, d as createPluginRegistry, et as theme, f as normalizePluginHttpPath, g as listPluginCommands, h as getPluginCommandSpecs, l as requireActivePluginRegistry, m as executePluginCommand, n as CHAT_CHANNEL_ORDER, o as normalizeChannelId$1, p as clearPluginCommands, r as DEFAULT_CHAT_CHANNEL, tt as getChildLogger, u as setActivePluginRegistry, ut as resolvePreferredSymiTmpDir, v as createInternalHookEvent, w as ensureDir$3, y as triggerInternalHook, z as sliceUtf16Safe } from "./registry
|
|
10
|
-
import { n as retryAsync } from "./retry-
|
|
11
|
-
import { $ as fetchChannelPermissionsDiscord, A as unpinMessageDiscord, At as fetchDiscord, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveTimestampMs, D as pinMessageDiscord, E as listThreadsDiscord, Et as normalizeChannelSlug, F as fetchMemberInfoDiscord, G as uploadStickerDiscord, H as timeoutMemberDiscord, I as fetchRoleInfoDiscord, J as editChannelDiscord, K as createChannelDiscord, L as fetchVoiceStatusDiscord, M as banMemberDiscord, N as createScheduledEventDiscord, O as readMessagesDiscord, Ot as resolveChannelEntryMatchWithFallback, P as fetchChannelInfoDiscord, Q as stripUndefinedFields, R as kickMemberDiscord, S as deleteMessageDiscord, St as resolveDiscordSystemLocation, T as listPinsDiscord, Tt as buildChannelKeyCandidates, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendPollDiscord, _t as resolveDiscordShouldRequireMention, a as removeReactionDiscord, at as resolveDiscordChannelId, b as sendWebhookMessageDiscord, bt as formatDiscordReactionEmoji, c as formatDiscordComponentEventText, ct as allowListMatches$1, d as parseDiscordModalCustomId, dt as normalizeDiscordSlug, et as hasAnyGuildPermissionDiscord, f as parseDiscordModalCustomIdForCarbon, ft as resolveDiscordAllowListMatch, g as sendMessageDiscord, gt as resolveDiscordOwnerAllowFrom, h as resolveDiscordModalEntry, ht as resolveDiscordMemberAccessState, i as removeOwnReactionsDiscord, it as parseDiscordTarget, j as addRoleDiscord, k as searchMessagesDiscord, l as parseDiscordComponentCustomId, lt as isDiscordGroupAllowedByPolicy, m as resolveDiscordComponentEntry, mt as resolveDiscordGuildEntry, n as fetchReactionsDiscord, nt as createDiscordClient, o as sendDiscordComponentMessage, ot as listDiscordDirectoryGroupsLive, p as readDiscordComponentSpec, pt as resolveDiscordChannelConfigWithFallback, q as deleteChannelDiscord, r as reactMessageDiscord, rt as createDiscordRestClient, s as createDiscordFormModal, st as listDiscordDirectoryPeersLive, tt as chunkDiscordTextWithMode, u as parseDiscordComponentCustomIdForCarbon, ut as normalizeDiscordAllowList, v as sendStickerDiscord, vt as resolveGroupDmAllow, w as fetchMessageDiscord, wt as applyChannelMatchMeta, x as createThreadDiscord, xt as formatDiscordUserTag, y as sendVoiceMessageDiscord, yt as shouldEmitDiscordReactionNotification, z as listGuildChannelsDiscord } from "./send-
|
|
12
|
-
import { B as getConfigOverrides, C as resolveIMessageRemoteAttachmentRoots, G as parseConfigPath, H as setConfigOverride, J as isSafeExecutableValue, K as setConfigValueAtPath, R as parseDurationMs, S as resolveIMessageAttachmentRoots, U as unsetConfigOverride, V as resetConfigOverrides, W as getConfigValueAtPath, X as resolveAgentMaxConcurrent, Y as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, Z as VERSION, _ as normalizeTelegramCommandName, a as writeConfigFile, b as isInboundPathAllowed, g as TELEGRAM_COMMAND_NAME_PATTERN, i as resolveConfigSnapshotHash, n as loadConfig, o as validateConfigObjectWithPlugins, q as unsetConfigValueAtPath, r as readConfigFileSnapshot, v as resolveTelegramCustomCommands, w as normalizeScpRemoteHost, z as validateJsonSchemaValue } from "./config-
|
|
13
|
-
import { a as clearActiveProgressLine, i as defaultRuntime, o as registerActiveProgressLine, r as createNonExitingRuntime, s as unregisterActiveProgressLine, t as createSubsystemLogger } from "./subsystem-
|
|
14
|
-
import { i as parseBooleanValue$1, n as resolveCliName, r as isTruthyEnvValue, t as formatCliCommand } from "./command-format-
|
|
15
|
-
import { $ as resolveShellEnvFallbackTimeoutMs, A as getSoonestCooldownExpiry, B as resolveSymiAgentDir, C as getCustomProviderApiKey, D as resolveModelAuthMode, E as resolveEnvApiKey, F as dedupeProfileIds, H as withFileLock, I as listProfilesForProvider, J as DEFAULT_CONTEXT_TOKENS, K as normalizeSecretInput, L as markAuthProfileGood, M as markAuthProfileFailure, N as markAuthProfileUsed, P as resolveApiKeyForProfile, R as ensureAuthProfileStore, S as getApiKeyForModel, T as resolveApiKeyForProvider, X as DEFAULT_PROVIDER, Y as DEFAULT_MODEL, Z as getShellPathFromLoginShell, a as isCliProvider, b as OLLAMA_NATIVE_BASE_URL, c as normalizeProviderId, d as resolveDefaultModelForAgent, f as resolveModelRefFromString, i as findNormalizedProviderValue, j as isProfileInCooldown, k as resolveAuthProfileOrder, m as resolveThinkingDefault, n as buildConfiguredAllowlistKeys, o as modelKey, p as resolveSubagentSpawnModelSelection, q as resolveAuthProfileDisplayLabel, r as buildModelAliasIndex, s as normalizeModelRef$2, t as buildAllowedModelSet, u as resolveConfiguredModelRef, w as requireApiKey, x as createOllamaStreamFn, z as resolveAuthStorePathForDisplay } from "./model-selection-
|
|
16
|
-
import { A as logInfo, C as resolveSymiPackageRoot, D as spawnWithFallback, E as runExec, O as logDebug, S as loadWorkspaceBootstrapFiles, T as runCommandWithTimeout, a as resolveAgentModelPrimary, b as ensureAgentWorkspace, c as resolveDefaultAgentId, d as resolveSessionAgentIds, h as DEFAULT_IDENTITY_FILENAME, i as resolveAgentModelFallbacksOverride, j as logWarn, k as logError, l as resolveEffectiveModelFallbacks, m as DEFAULT_BOOTSTRAP_FILENAME, n as resolveAgentConfig, o as resolveAgentSkillsFilter, p as DEFAULT_AGENT_WORKSPACE_DIR, r as resolveAgentDir, s as resolveAgentWorkspaceDir, t as listAgentIds, u as resolveSessionAgentId, x as filterBootstrapFilesForSession } from "./agent-scope-
|
|
17
|
-
import { c as normalizePluginsConfig, f as isPathInsideWithRealpath, i as safeStatSync, l as resolveEnableState, n as discoverSymiPlugins, p as isDangerousHostEnvVarName, r as isPathInside, s as applyTestPluginDefaults, t as loadPluginManifestRegistry, u as resolveMemorySlotDecision } from "./manifest-registry-
|
|
9
|
+
import { $ as isRich, A as normalizeE164, D as isRecord$1, E as formatTerminalLink, H as isPlainObject, I as shortenHomeInString, J as setVerbose, K as logVerbose, L as shortenHomePath, P as resolveUserPath, Q as colorize, R as sleep$1, S as clampInt, T as escapeRegExp, U as danger, V as truncateUtf16Safe, Y as shouldLogVerbose, Z as warn, _ as matchPluginCommand, a as normalizeAnyChannelId, b as CONFIG_DIR, ct as normalizeLogLevel, d as createPluginRegistry, et as theme, f as normalizePluginHttpPath, g as listPluginCommands, h as getPluginCommandSpecs, l as requireActivePluginRegistry, m as executePluginCommand, n as CHAT_CHANNEL_ORDER, o as normalizeChannelId$1, p as clearPluginCommands, r as DEFAULT_CHAT_CHANNEL, tt as getChildLogger, u as setActivePluginRegistry, ut as resolvePreferredSymiTmpDir, v as createInternalHookEvent, w as ensureDir$3, y as triggerInternalHook, z as sliceUtf16Safe } from "./registry--_pGht6S.js";
|
|
10
|
+
import { n as retryAsync } from "./retry-ilSJqnz9.js";
|
|
11
|
+
import { $ as fetchChannelPermissionsDiscord, A as unpinMessageDiscord, At as fetchDiscord, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveTimestampMs, D as pinMessageDiscord, E as listThreadsDiscord, Et as normalizeChannelSlug, F as fetchMemberInfoDiscord, G as uploadStickerDiscord, H as timeoutMemberDiscord, I as fetchRoleInfoDiscord, J as editChannelDiscord, K as createChannelDiscord, L as fetchVoiceStatusDiscord, M as banMemberDiscord, N as createScheduledEventDiscord, O as readMessagesDiscord, Ot as resolveChannelEntryMatchWithFallback, P as fetchChannelInfoDiscord, Q as stripUndefinedFields, R as kickMemberDiscord, S as deleteMessageDiscord, St as resolveDiscordSystemLocation, T as listPinsDiscord, Tt as buildChannelKeyCandidates, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendPollDiscord, _t as resolveDiscordShouldRequireMention, a as removeReactionDiscord, at as resolveDiscordChannelId, b as sendWebhookMessageDiscord, bt as formatDiscordReactionEmoji, c as formatDiscordComponentEventText, ct as allowListMatches$1, d as parseDiscordModalCustomId, dt as normalizeDiscordSlug, et as hasAnyGuildPermissionDiscord, f as parseDiscordModalCustomIdForCarbon, ft as resolveDiscordAllowListMatch, g as sendMessageDiscord, gt as resolveDiscordOwnerAllowFrom, h as resolveDiscordModalEntry, ht as resolveDiscordMemberAccessState, i as removeOwnReactionsDiscord, it as parseDiscordTarget, j as addRoleDiscord, k as searchMessagesDiscord, l as parseDiscordComponentCustomId, lt as isDiscordGroupAllowedByPolicy, m as resolveDiscordComponentEntry, mt as resolveDiscordGuildEntry, n as fetchReactionsDiscord, nt as createDiscordClient, o as sendDiscordComponentMessage, ot as listDiscordDirectoryGroupsLive, p as readDiscordComponentSpec, pt as resolveDiscordChannelConfigWithFallback, q as deleteChannelDiscord, r as reactMessageDiscord, rt as createDiscordRestClient, s as createDiscordFormModal, st as listDiscordDirectoryPeersLive, tt as chunkDiscordTextWithMode, u as parseDiscordComponentCustomIdForCarbon, ut as normalizeDiscordAllowList, v as sendStickerDiscord, vt as resolveGroupDmAllow, w as fetchMessageDiscord, wt as applyChannelMatchMeta, x as createThreadDiscord, xt as formatDiscordUserTag, y as sendVoiceMessageDiscord, yt as shouldEmitDiscordReactionNotification, z as listGuildChannelsDiscord } from "./send-ZhAe1nXO.js";
|
|
12
|
+
import { B as getConfigOverrides, C as resolveIMessageRemoteAttachmentRoots, G as parseConfigPath, H as setConfigOverride, J as isSafeExecutableValue, K as setConfigValueAtPath, R as parseDurationMs, S as resolveIMessageAttachmentRoots, U as unsetConfigOverride, V as resetConfigOverrides, W as getConfigValueAtPath, X as resolveAgentMaxConcurrent, Y as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, Z as VERSION, _ as normalizeTelegramCommandName, a as writeConfigFile, b as isInboundPathAllowed, g as TELEGRAM_COMMAND_NAME_PATTERN, i as resolveConfigSnapshotHash, n as loadConfig, o as validateConfigObjectWithPlugins, q as unsetConfigValueAtPath, r as readConfigFileSnapshot, v as resolveTelegramCustomCommands, w as normalizeScpRemoteHost, z as validateJsonSchemaValue } from "./config-BzupW6LN.js";
|
|
13
|
+
import { a as clearActiveProgressLine, i as defaultRuntime, o as registerActiveProgressLine, r as createNonExitingRuntime, s as unregisterActiveProgressLine, t as createSubsystemLogger } from "./subsystem-Coz2AgU8.js";
|
|
14
|
+
import { i as parseBooleanValue$1, n as resolveCliName, r as isTruthyEnvValue, t as formatCliCommand } from "./command-format-DSdvQ_M5.js";
|
|
15
|
+
import { $ as resolveShellEnvFallbackTimeoutMs, A as getSoonestCooldownExpiry, B as resolveSymiAgentDir, C as getCustomProviderApiKey, D as resolveModelAuthMode, E as resolveEnvApiKey, F as dedupeProfileIds, H as withFileLock, I as listProfilesForProvider, J as DEFAULT_CONTEXT_TOKENS, K as normalizeSecretInput, L as markAuthProfileGood, M as markAuthProfileFailure, N as markAuthProfileUsed, P as resolveApiKeyForProfile, R as ensureAuthProfileStore, S as getApiKeyForModel, T as resolveApiKeyForProvider, X as DEFAULT_PROVIDER, Y as DEFAULT_MODEL, Z as getShellPathFromLoginShell, a as isCliProvider, b as OLLAMA_NATIVE_BASE_URL, c as normalizeProviderId, d as resolveDefaultModelForAgent, f as resolveModelRefFromString, i as findNormalizedProviderValue, j as isProfileInCooldown, k as resolveAuthProfileOrder, m as resolveThinkingDefault, n as buildConfiguredAllowlistKeys, o as modelKey, p as resolveSubagentSpawnModelSelection, q as resolveAuthProfileDisplayLabel, r as buildModelAliasIndex, s as normalizeModelRef$2, t as buildAllowedModelSet, u as resolveConfiguredModelRef, w as requireApiKey, x as createOllamaStreamFn, z as resolveAuthStorePathForDisplay } from "./model-selection-CtVwtb6y.js";
|
|
16
|
+
import { A as logInfo, C as resolveSymiPackageRoot, D as spawnWithFallback, E as runExec, O as logDebug, S as loadWorkspaceBootstrapFiles, T as runCommandWithTimeout, a as resolveAgentModelPrimary, b as ensureAgentWorkspace, c as resolveDefaultAgentId, d as resolveSessionAgentIds, h as DEFAULT_IDENTITY_FILENAME, i as resolveAgentModelFallbacksOverride, j as logWarn, k as logError, l as resolveEffectiveModelFallbacks, m as DEFAULT_BOOTSTRAP_FILENAME, n as resolveAgentConfig, o as resolveAgentSkillsFilter, p as DEFAULT_AGENT_WORKSPACE_DIR, r as resolveAgentDir, s as resolveAgentWorkspaceDir, t as listAgentIds, u as resolveSessionAgentId, x as filterBootstrapFilesForSession } from "./agent-scope-C3gMMKCU.js";
|
|
17
|
+
import { c as normalizePluginsConfig, f as isPathInsideWithRealpath, i as safeStatSync, l as resolveEnableState, n as discoverSymiPlugins, p as isDangerousHostEnvVarName, r as isPathInside, s as applyTestPluginDefaults, t as loadPluginManifestRegistry, u as resolveMemorySlotDecision } from "./manifest-registry-hy3Bn-r9.js";
|
|
18
18
|
import { n as formatErrorMessage, r as formatUncaughtError } from "./errors-Bv8oZiTO.js";
|
|
19
|
-
import { n as recordChannelActivity, r as createDiscordRetryRunner, t as getChannelActivity } from "./channel-activity-
|
|
19
|
+
import { n as recordChannelActivity, r as createDiscordRetryRunner, t as getChannelActivity } from "./channel-activity-Ji7f0gqq.js";
|
|
20
20
|
import { n as normalizePollInput } from "./polls-3WJMd-G-.js";
|
|
21
|
-
import { c as detectMime, d as imageMimeFromFormat, f as isAudioFileName, g as MAX_IMAGE_BYTES, i as getImageMetadata, l as extensionForMime, p as isGifMedia, s as resizeToJpeg, v as mediaKindFromMime } from "./image-ops-
|
|
21
|
+
import { c as detectMime, d as imageMimeFromFormat, f as isAudioFileName, g as MAX_IMAGE_BYTES, i as getImageMetadata, l as extensionForMime, p as isGifMedia, s as resizeToJpeg, v as mediaKindFromMime } from "./image-ops-Bnp6LXEx.js";
|
|
22
22
|
import { a as isBlockedHostnameOrIp, c as normalizeHostname, t as SsrFBlockedError } from "./ssrf-DKZ8eBrk.js";
|
|
23
|
-
import { a as readResponseWithLimit, i as fetchRemoteMedia, n as getDefaultMediaLocalRoots, o as fetchWithSsrFGuard, t as getAgentScopedMediaLocalRoots } from "./local-roots-
|
|
24
|
-
import { a as loadWebMedia, i as getDefaultLocalRoots } from "./ir-
|
|
25
|
-
import { a as chunkText, c as resolveChunkMode, d as findFenceSpanAt, f as isSafeFenceBreak, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, o as chunkTextWithMode, p as parseFenceSpans, r as chunkMarkdownText, t as chunkByNewline } from "./chunk-
|
|
26
|
-
import { a as isMarkdownCapableMessageChannel, c as resolveGatewayMessageChannel, d as GATEWAY_CLIENT_MODES, f as GATEWAY_CLIENT_NAMES, i as isInternalMessageChannel, l as resolveMessageChannel, n as isDeliverableMessageChannel, o as listDeliverableMessageChannels, r as isGatewayMessageChannel, s as normalizeMessageChannel, t as INTERNAL_MESSAGE_CHANNEL, u as GATEWAY_CLIENT_IDS } from "./message-channel-
|
|
23
|
+
import { a as readResponseWithLimit, i as fetchRemoteMedia, n as getDefaultMediaLocalRoots, o as fetchWithSsrFGuard, t as getAgentScopedMediaLocalRoots } from "./local-roots-Ckk1QfzI.js";
|
|
24
|
+
import { a as loadWebMedia, i as getDefaultLocalRoots } from "./ir-Fb3qpcis.js";
|
|
25
|
+
import { a as chunkText, c as resolveChunkMode, d as findFenceSpanAt, f as isSafeFenceBreak, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, o as chunkTextWithMode, p as parseFenceSpans, r as chunkMarkdownText, t as chunkByNewline } from "./chunk-jvk9axTQ.js";
|
|
26
|
+
import { a as isMarkdownCapableMessageChannel, c as resolveGatewayMessageChannel, d as GATEWAY_CLIENT_MODES, f as GATEWAY_CLIENT_NAMES, i as isInternalMessageChannel, l as resolveMessageChannel, n as isDeliverableMessageChannel, o as listDeliverableMessageChannels, r as isGatewayMessageChannel, s as normalizeMessageChannel, t as INTERNAL_MESSAGE_CHANNEL, u as GATEWAY_CLIENT_IDS } from "./message-channel-BdI5Ra9S.js";
|
|
27
27
|
import { t as normalizeChatType } from "./chat-type-CEMQNtWX.js";
|
|
28
|
-
import { n as resolveMarkdownTableMode } from "./markdown-tables-
|
|
29
|
-
import { t as convertMarkdownTables } from "./tables-
|
|
30
|
-
import { a as formatIMessageChatTarget, c as parseIMessageTarget, i as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, o as isAllowedIMessageSender, r as createIMessageRpcClient, s as normalizeIMessageHandle, t as sendMessageIMessage } from "./send-
|
|
31
|
-
import { i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, r as sanitizeToolResultImages } from "./tool-images-
|
|
32
|
-
import { a as createActionGate, c as jsonResult, d as readReactionParams, f as readStringArrayParam, l as parseAvailableTags, m as readStringParam, n as missingTargetError, o as imageResult, p as readStringOrNumberParam, r as unknownTargetError, s as imageResultFromFile, t as ambiguousTargetError, u as readNumberParam } from "./target-errors-
|
|
33
|
-
import { a as createSlackWebClient, c as validateSlackBlocksArray, i as buildSlackBlocksFallbackText, o as resolveSlackWebClientOptions, s as parseSlackBlocksInput, t as sendMessageSlack } from "./send-
|
|
34
|
-
import { $ as parseTelegramTarget, A as hasBotMention, B as resolveSenderAllowMatch, C as buildTelegramGroupPeerId, D as describeReplyTarget, E as buildTypingThreadParams, F as resolveTelegramReplyId, G as readChannelAllowFromStore, H as isSenderIdAllowed, I as resolveTelegramStreamMode, J as upsertChannelPairingRequest, L as resolveTelegramThreadSpec, M as resolveTelegramForumThreadId, N as resolveTelegramGroupAllowFromContext, O as expandTextLinks, P as resolveTelegramMediaPlaceholder, Q as isVoiceCompatibleAudio, R as isSenderAllowed$1, S as buildTelegramGroupFrom, T as buildTelegramThreadParams, U as mergeAllowFromSources, V as firstDefined$1, W as addChannelAllowFromStoreEntry, X as listPairingChannels, Y as getPairingAdapter, Z as withTelegramApiErrorLogging, _ as resolveTelegramFetch, a as reactMessageTelegram, b as buildSenderLabel, c as sendStickerTelegram, d as wasSentByBot, et as resolveTelegramTargetChatType, f as isRecoverableTelegramNetworkError, g as wrapFileReferencesInHtml, h as renderTelegramHtmlText, i as editMessageTelegram, j as normalizeForwardedContext, k as extractTelegramLocation, m as markdownToTelegramHtml, n as createForumTopicTelegram, nt as toLocationContext, o as sendMessageTelegram, p as markdownToTelegramChunks, q as removeChannelAllowFromStoreEntry, r as deleteMessageTelegram, s as sendPollTelegram, t as buildInlineKeyboard, tt as formatLocationText, u as resolveTelegramVoiceSend, v as splitTelegramCaption, w as buildTelegramParentPeer, x as buildSenderName, y as buildGroupLabel, z as normalizeAllowFromWithStore$1 } from "./send-
|
|
35
|
-
import { _ as CLI_OUTPUT_MAX_BUFFER, a as resolveMediaAttachmentLocalRoots, c as loadModelCatalog, d as resolveAttachmentKind, f as registerUnhandledRejectionHandler, g as resolveMediaUnderstandingScope, h as normalizeMediaUnderstandingChatType, i as resolveAutoImageModel, l as modelSupportsVision, m as resolveTimeoutMs$1, n as createMediaAttachmentCache, o as runCapability, p as resolveConcurrency, r as normalizeMediaAttachments, s as findModelInCatalog, t as buildProviderRegistry, v as applyTemplate, y as buildRandomTempFilePath } from "./runner-
|
|
36
|
-
import { a as resolveAckReaction, c as resolveHumanDelayConfig, i as resolveResponsePrefixTemplate, n as createReplyPrefixOptions, o as resolveAgentIdentity, s as resolveEffectiveMessagesConfig } from "./reply-prefix-
|
|
37
|
-
import { a as isSilentReplyText, i as isSilentReplyPrefixText, n as SILENT_REPLY_TOKEN, r as SYMIPULSE_TOKEN, t as HEARTBEAT_TOKEN } from "./tokens-
|
|
38
|
-
import { c as getSkillsSnapshotVersion, d as resolvePairingPaths, f as createAsyncLock, i as resolveSkillCommandInvocation, l as generatePairingToken, m as writeJsonAtomic, n as listSkillCommandsForAgents, o as getRemoteSkillEligibility, p as readJsonFile, r as listSkillCommandsForWorkspace, s as ensureSkillsWatcher, t as listReservedChatSlashCommandNames, u as pruneExpiredPending } from "./skill-commands-
|
|
39
|
-
import { c as assertSandboxPath, d as resolveSandboxedMediaSource, f as applySkillEnvOverrides, i as resolveSkillsPromptForRun, l as resolveSandboxInputPath, n as buildWorkspaceSkillSnapshot, p as applySkillEnvOverridesFromSnapshot, r as loadWorkspaceSkillEntries, s as assertMediaNotDataUrl } from "./skills-
|
|
40
|
-
import { M as isSecureWebSocketUrl, N as rawDataToString, T as DEFAULT_AI_SNAPSHOT_MAX_CHARS, x as ensureChromeExtensionRelayServer } from "./chrome-
|
|
41
|
-
import { A as normalizeHyphenSlug, F as resolveChannelGroupRequireMention, I as resolveChannelGroupToolsPolicy, M as normalizeStringEntriesLower, P as resolveChannelGroupPolicy, a as normalizeReasoningLevel, c as normalizeVerboseLevel, d as getChannelDock, f as listChannelDocks, i as normalizeElevatedLevel, j as normalizeStringEntries, k as normalizeAtHashSlug, l as resolveResponseUsageMode, m as normalizeSignalMessagingTarget, n as formatXHighModelHint, o as normalizeThinkLevel, s as normalizeUsageDisplay, t as formatThinkingLevels, u as supportsXHighThinking } from "./thinking-
|
|
42
|
-
import { r as resolveIMessageAccount } from "./accounts-
|
|
43
|
-
import { i as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-
|
|
44
|
-
import { C as getGlobalHookRunner, S as parseInlineDirectives$1, _ as normalizeChannelTargetInput, a as normalizeOutboundPayloadsForJson, b as MEDIA_TOKEN_RE, c as applyReplyThreading, d as isRenderablePayload, f as shouldSuppressMessagingToolReplies, g as buildTargetResolverSignature, h as throwIfAborted, i as normalizeOutboundPayloads, l as filterMessagingToolDuplicates, m as resolveReplyToMode, o as normalizeReplyPayloadsForDelivery, p as createReplyToModeFilterForChannel, r as formatOutboundPayloadLog, s as applyReplyTagsToPayload, t as deliverOutboundPayloads, u as filterMessagingToolMediaDuplicates, v as normalizeTargetForProvider, w as initializeGlobalHookRunner, x as splitMediaFromOutput, y as parseReplyDirectives } from "./deliver-
|
|
45
|
-
import { $ as normalizeToolName, A as isTransientHttpError, At as countToolResults, B as resolveProfile, Bt as resolveChannelResetConfig, C as isContextOverflowError, Ct as deliveryContextKey, D as isRateLimitAssistantError, Dt as normalizeAccountId$3, E as isLikelyContextOverflowError, Et as normalizeSessionDeliveryFields, F as resolveSandboxContext, Ft as normalizeInputProvenance, G as resolveBrowserControlAuth, Gt as resolveFreshSessionTotalTokens, H as resolveExistingPathsWithinRoot, Ht as resolveSessionResetType, I as resolveSandboxRuntimeStatus, It as acquireSessionWriteLock, J as buildPluginToolGroups, Jt as resolveMainSessionKey, K as resolveSandboxConfigForAgent, Kt as canonicalizeMainSessionAlias, L as createBrowserRouteContext, Lt as resolveSessionLockMaxHoldFromTimeout, M as parseImageSizeError, Mt as INPUT_PROVENANCE_KIND_VALUES, N as sanitizeUserFacingText, Nt as applyInputProvenanceToUserMessage, O as isRawApiErrorPayload, Ot as archiveSessionTranscripts, P as ensureSandboxWorkspaceForSession, Pt as hasInterSessionUserProvenance, Q as mergeAlsoAllowPolicy, R as registerBrowserRoutes, Rt as resolveSessionKey, S as isCompactionFailureError, St as deliveryContextFromSession, T as isFailoverErrorMessage, Tt as normalizeDeliveryContext, U as getBridgeAuthForPort, Ut as resolveThreadFlag, V as DEFAULT_UPLOAD_DIR, Vt as resolveSessionResetPolicy, W as ensureBrowserControlAuth, Wt as DEFAULT_RESET_TRIGGERS, X as expandPolicyWithPluginGroups, Xt as resolveGroupSessionKey, Y as collectExplicitAllowlist, Yt as deriveSessionMetaPatch, Z as expandToolGroups, _ as formatRawAssistantErrorForUi, _t as updateLastRoute, a as isMessagingToolDuplicateNormalized, at as ensureSessionHeader, b as isBillingAssistantError, bt as isCacheEnabled, c as extractToolCallsFromAssistant, ct as sanitizeGoogleTurnOrdering, d as isAntigravityClaude, dt as appendAssistantMessageToSessionTranscript, et as resolveToolProfilePolicy, f as isGoogleModelApi, g as formatBillingErrorMessage, gt as recordSessionMetaFromInbound, h as formatAssistantErrorText, ht as readSessionUpdatedAt, it as buildBootstrapContextFiles, j as parseImageDimensionError, jt as extractToolCallNames, k as isTimeoutErrorMessage, kt as capArrayByJsonBytes, l as extractToolResultId, lt as extractDeliveryInfo, m as classifyFailoverReason, mt as loadSessionStore, n as validateGeminiTurns, nt as compileGlobPatterns, o as normalizeTextForComparison, ot as resolveBootstrapMaxChars, p as BILLING_ERROR_USER_MESSAGE, pt as resolveAndPersistSessionFile, q as applyOwnerOnlyToolPolicy, qt as resolveExplicitAgentSessionKey, r as pickFallbackThinkingLevel, rt as matchesAnyGlobPattern, s as sanitizeSessionMessagesImages, st as resolveBootstrapTotalMaxChars, t as validateAnthropicTurns, tt as stripPluginOnlyAllowlist, u as downgradeOpenAIReasoningBlocks, ut as parseSessionThreadInfo, v as getApiErrorPayloadFingerprint, vt as updateSessionStore, w as isFailoverAssistantError, wt as mergeDeliveryContext, x as isCloudCodeAssistFormatError, xt as resolveCacheTtlMs$1, y as isAuthAssistantError, yt as updateSessionStoreEntry, z as resolveBrowserConfig, zt as evaluateSessionFreshness } from "./pi-embedded-helpers-
|
|
28
|
+
import { n as resolveMarkdownTableMode } from "./markdown-tables-Dfaqilz6.js";
|
|
29
|
+
import { t as convertMarkdownTables } from "./tables-DR0NmBeH.js";
|
|
30
|
+
import { a as formatIMessageChatTarget, c as parseIMessageTarget, i as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, o as isAllowedIMessageSender, r as createIMessageRpcClient, s as normalizeIMessageHandle, t as sendMessageIMessage } from "./send-jsofmTfJ.js";
|
|
31
|
+
import { i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, r as sanitizeToolResultImages } from "./tool-images-D7Lno-TE.js";
|
|
32
|
+
import { a as createActionGate, c as jsonResult, d as readReactionParams, f as readStringArrayParam, l as parseAvailableTags, m as readStringParam, n as missingTargetError, o as imageResult, p as readStringOrNumberParam, r as unknownTargetError, s as imageResultFromFile, t as ambiguousTargetError, u as readNumberParam } from "./target-errors-B7YyMnIi.js";
|
|
33
|
+
import { a as createSlackWebClient, c as validateSlackBlocksArray, i as buildSlackBlocksFallbackText, o as resolveSlackWebClientOptions, s as parseSlackBlocksInput, t as sendMessageSlack } from "./send-BP5pSPaZ.js";
|
|
34
|
+
import { $ as parseTelegramTarget, A as hasBotMention, B as resolveSenderAllowMatch, C as buildTelegramGroupPeerId, D as describeReplyTarget, E as buildTypingThreadParams, F as resolveTelegramReplyId, G as readChannelAllowFromStore, H as isSenderIdAllowed, I as resolveTelegramStreamMode, J as upsertChannelPairingRequest, L as resolveTelegramThreadSpec, M as resolveTelegramForumThreadId, N as resolveTelegramGroupAllowFromContext, O as expandTextLinks, P as resolveTelegramMediaPlaceholder, Q as isVoiceCompatibleAudio, R as isSenderAllowed$1, S as buildTelegramGroupFrom, T as buildTelegramThreadParams, U as mergeAllowFromSources, V as firstDefined$1, W as addChannelAllowFromStoreEntry, X as listPairingChannels, Y as getPairingAdapter, Z as withTelegramApiErrorLogging, _ as resolveTelegramFetch, a as reactMessageTelegram, b as buildSenderLabel, c as sendStickerTelegram, d as wasSentByBot, et as resolveTelegramTargetChatType, f as isRecoverableTelegramNetworkError, g as wrapFileReferencesInHtml, h as renderTelegramHtmlText, i as editMessageTelegram, j as normalizeForwardedContext, k as extractTelegramLocation, m as markdownToTelegramHtml, n as createForumTopicTelegram, nt as toLocationContext, o as sendMessageTelegram, p as markdownToTelegramChunks, q as removeChannelAllowFromStoreEntry, r as deleteMessageTelegram, s as sendPollTelegram, t as buildInlineKeyboard, tt as formatLocationText, u as resolveTelegramVoiceSend, v as splitTelegramCaption, w as buildTelegramParentPeer, x as buildSenderName, y as buildGroupLabel, z as normalizeAllowFromWithStore$1 } from "./send-DLO_yV5_.js";
|
|
35
|
+
import { _ as CLI_OUTPUT_MAX_BUFFER, a as resolveMediaAttachmentLocalRoots, c as loadModelCatalog, d as resolveAttachmentKind, f as registerUnhandledRejectionHandler, g as resolveMediaUnderstandingScope, h as normalizeMediaUnderstandingChatType, i as resolveAutoImageModel, l as modelSupportsVision, m as resolveTimeoutMs$1, n as createMediaAttachmentCache, o as runCapability, p as resolveConcurrency, r as normalizeMediaAttachments, s as findModelInCatalog, t as buildProviderRegistry, v as applyTemplate, y as buildRandomTempFilePath } from "./runner-BhifC1J_.js";
|
|
36
|
+
import { a as resolveAckReaction, c as resolveHumanDelayConfig, i as resolveResponsePrefixTemplate, n as createReplyPrefixOptions, o as resolveAgentIdentity, s as resolveEffectiveMessagesConfig } from "./reply-prefix-BHuV5t70.js";
|
|
37
|
+
import { a as isSilentReplyText, i as isSilentReplyPrefixText, n as SILENT_REPLY_TOKEN, r as SYMIPULSE_TOKEN, t as HEARTBEAT_TOKEN } from "./tokens-CWMflosr.js";
|
|
38
|
+
import { c as getSkillsSnapshotVersion, d as resolvePairingPaths, f as createAsyncLock, i as resolveSkillCommandInvocation, l as generatePairingToken, m as writeJsonAtomic, n as listSkillCommandsForAgents, o as getRemoteSkillEligibility, p as readJsonFile, r as listSkillCommandsForWorkspace, s as ensureSkillsWatcher, t as listReservedChatSlashCommandNames, u as pruneExpiredPending } from "./skill-commands-DEfqC_kJ.js";
|
|
39
|
+
import { c as assertSandboxPath, d as resolveSandboxedMediaSource, f as applySkillEnvOverrides, i as resolveSkillsPromptForRun, l as resolveSandboxInputPath, n as buildWorkspaceSkillSnapshot, p as applySkillEnvOverridesFromSnapshot, r as loadWorkspaceSkillEntries, s as assertMediaNotDataUrl } from "./skills-C9DbB-Kp.js";
|
|
40
|
+
import { M as isSecureWebSocketUrl, N as rawDataToString, T as DEFAULT_AI_SNAPSHOT_MAX_CHARS, x as ensureChromeExtensionRelayServer } from "./chrome-D9kN9org.js";
|
|
41
|
+
import { A as normalizeHyphenSlug, F as resolveChannelGroupRequireMention, I as resolveChannelGroupToolsPolicy, M as normalizeStringEntriesLower, P as resolveChannelGroupPolicy, a as normalizeReasoningLevel, c as normalizeVerboseLevel, d as getChannelDock, f as listChannelDocks, i as normalizeElevatedLevel, j as normalizeStringEntries, k as normalizeAtHashSlug, l as resolveResponseUsageMode, m as normalizeSignalMessagingTarget, n as formatXHighModelHint, o as normalizeThinkLevel, s as normalizeUsageDisplay, t as formatThinkingLevels, u as supportsXHighThinking } from "./thinking-DCNUIAHY.js";
|
|
42
|
+
import { r as resolveIMessageAccount } from "./accounts-Dtszw3Zn.js";
|
|
43
|
+
import { i as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-BToL3HlP.js";
|
|
44
|
+
import { C as getGlobalHookRunner, S as parseInlineDirectives$1, _ as normalizeChannelTargetInput, a as normalizeOutboundPayloadsForJson, b as MEDIA_TOKEN_RE, c as applyReplyThreading, d as isRenderablePayload, f as shouldSuppressMessagingToolReplies, g as buildTargetResolverSignature, h as throwIfAborted, i as normalizeOutboundPayloads, l as filterMessagingToolDuplicates, m as resolveReplyToMode, o as normalizeReplyPayloadsForDelivery, p as createReplyToModeFilterForChannel, r as formatOutboundPayloadLog, s as applyReplyTagsToPayload, t as deliverOutboundPayloads, u as filterMessagingToolMediaDuplicates, v as normalizeTargetForProvider, w as initializeGlobalHookRunner, x as splitMediaFromOutput, y as parseReplyDirectives } from "./deliver-CKgFosI5.js";
|
|
45
|
+
import { $ as normalizeToolName, A as isTransientHttpError, At as countToolResults, B as resolveProfile, Bt as resolveChannelResetConfig, C as isContextOverflowError, Ct as deliveryContextKey, D as isRateLimitAssistantError, Dt as normalizeAccountId$3, E as isLikelyContextOverflowError, Et as normalizeSessionDeliveryFields, F as resolveSandboxContext, Ft as normalizeInputProvenance, G as resolveBrowserControlAuth, Gt as resolveFreshSessionTotalTokens, H as resolveExistingPathsWithinRoot, Ht as resolveSessionResetType, I as resolveSandboxRuntimeStatus, It as acquireSessionWriteLock, J as buildPluginToolGroups, Jt as resolveMainSessionKey, K as resolveSandboxConfigForAgent, Kt as canonicalizeMainSessionAlias, L as createBrowserRouteContext, Lt as resolveSessionLockMaxHoldFromTimeout, M as parseImageSizeError, Mt as INPUT_PROVENANCE_KIND_VALUES, N as sanitizeUserFacingText, Nt as applyInputProvenanceToUserMessage, O as isRawApiErrorPayload, Ot as archiveSessionTranscripts, P as ensureSandboxWorkspaceForSession, Pt as hasInterSessionUserProvenance, Q as mergeAlsoAllowPolicy, R as registerBrowserRoutes, Rt as resolveSessionKey, S as isCompactionFailureError, St as deliveryContextFromSession, T as isFailoverErrorMessage, Tt as normalizeDeliveryContext, U as getBridgeAuthForPort, Ut as resolveThreadFlag, V as DEFAULT_UPLOAD_DIR, Vt as resolveSessionResetPolicy, W as ensureBrowserControlAuth, Wt as DEFAULT_RESET_TRIGGERS, X as expandPolicyWithPluginGroups, Xt as resolveGroupSessionKey, Y as collectExplicitAllowlist, Yt as deriveSessionMetaPatch, Z as expandToolGroups, _ as formatRawAssistantErrorForUi, _t as updateLastRoute, a as isMessagingToolDuplicateNormalized, at as ensureSessionHeader, b as isBillingAssistantError, bt as isCacheEnabled, c as extractToolCallsFromAssistant, ct as sanitizeGoogleTurnOrdering, d as isAntigravityClaude, dt as appendAssistantMessageToSessionTranscript, et as resolveToolProfilePolicy, f as isGoogleModelApi, g as formatBillingErrorMessage, gt as recordSessionMetaFromInbound, h as formatAssistantErrorText, ht as readSessionUpdatedAt, it as buildBootstrapContextFiles, j as parseImageDimensionError, jt as extractToolCallNames, k as isTimeoutErrorMessage, kt as capArrayByJsonBytes, l as extractToolResultId, lt as extractDeliveryInfo, m as classifyFailoverReason, mt as loadSessionStore, n as validateGeminiTurns, nt as compileGlobPatterns, o as normalizeTextForComparison, ot as resolveBootstrapMaxChars, p as BILLING_ERROR_USER_MESSAGE, pt as resolveAndPersistSessionFile, q as applyOwnerOnlyToolPolicy, qt as resolveExplicitAgentSessionKey, r as pickFallbackThinkingLevel, rt as matchesAnyGlobPattern, s as sanitizeSessionMessagesImages, st as resolveBootstrapTotalMaxChars, t as validateAnthropicTurns, tt as stripPluginOnlyAllowlist, u as downgradeOpenAIReasoningBlocks, ut as parseSessionThreadInfo, v as getApiErrorPayloadFingerprint, vt as updateSessionStore, w as isFailoverAssistantError, wt as mergeDeliveryContext, x as isCloudCodeAssistFormatError, xt as resolveCacheTtlMs$1, y as isAuthAssistantError, yt as updateSessionStoreEntry, z as resolveBrowserConfig, zt as evaluateSessionFreshness } from "./pi-embedded-helpers-BL7ZRhGv.js";
|
|
46
46
|
import { n as resolveConversationLabel } from "./conversation-label-yNSj43Jt.js";
|
|
47
47
|
import { i as resolveSessionTranscriptPath, n as resolveSessionFilePath, o as resolveSessionTranscriptsDirForAgent, r as resolveSessionFilePathOptions, s as resolveStorePath, t as resolveDefaultSessionStorePath } from "./paths-A0xdf3yk.js";
|
|
48
48
|
import { t as emitSessionTranscriptUpdate } from "./transcript-events-x1D4Vniz.js";
|
|
49
|
-
import { a as logMessageProcessed, c as logWebhookError, d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, i as logLaneEnqueue, l as logWebhookProcessed, m as isDiagnosticsEnabled, o as logMessageQueued, p as emitDiagnosticEvent, r as logLaneDequeue, s as logSessionStateChange, t as diag, u as logWebhookReceived } from "./diagnostic-
|
|
50
|
-
import { i as saveMediaBuffer, r as getMediaDir } from "./store-
|
|
49
|
+
import { a as logMessageProcessed, c as logWebhookError, d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, i as logLaneEnqueue, l as logWebhookProcessed, m as isDiagnosticsEnabled, o as logMessageQueued, p as emitDiagnosticEvent, r as logLaneDequeue, s as logSessionStateChange, t as diag, u as logWebhookReceived } from "./diagnostic-_oc91gNi.js";
|
|
50
|
+
import { i as saveMediaBuffer, r as getMediaDir } from "./store-Do3t33-c.js";
|
|
51
51
|
import { r as normalizeInboundTextNewlines, t as finalizeInboundContext } from "./inbound-context-D5EzMeL_.js";
|
|
52
|
-
import { S as minimaxUnderstandImage, _ as stripThinkingTagsFromText, a as decodeDataUrl, b as extractTextFromChatContent, c as extractAssistantThinking, d as formatReasoningMessage, f as inferToolMetaFromArgs, g as stripMinimaxToolCallXml, h as stripDowngradedToolCallText, i as coerceImageModelConfig, l as extractThinkingFromTaggedStream, m as promoteThinkingTagsToBlocks, o as resolveProviderVisionModelFromConfig, p as isAssistantMessage, r as coerceImageAssistantText, s as extractAssistantText$1, u as extractThinkingFromTaggedText, v as resolveToolDisplay, x as ensureSymiModelsJson, y as stripReasoningTagsFromText } from "./image-
|
|
52
|
+
import { S as minimaxUnderstandImage, _ as stripThinkingTagsFromText, a as decodeDataUrl, b as extractTextFromChatContent, c as extractAssistantThinking, d as formatReasoningMessage, f as inferToolMetaFromArgs, g as stripMinimaxToolCallXml, h as stripDowngradedToolCallText, i as coerceImageModelConfig, l as extractThinkingFromTaggedStream, m as promoteThinkingTagsToBlocks, o as resolveProviderVisionModelFromConfig, p as isAssistantMessage, r as coerceImageAssistantText, s as extractAssistantText$1, u as extractThinkingFromTaggedText, v as resolveToolDisplay, x as ensureSymiModelsJson, y as stripReasoningTagsFromText } from "./image-DFyINnvE.js";
|
|
53
53
|
import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-LbcEa65a.js";
|
|
54
54
|
import { c as normalizeExtraMemoryPaths, m as runTasksWithConcurrency, s as listMemoryFiles } from "./internal-Qi-tyvHh.js";
|
|
55
55
|
import { r as getDiagnosticSessionState } from "./diagnostic-session-state-Wd5tNeQG.js";
|
|
56
|
-
import { a as resolveMemorySearchConfig, i as resolveOllamaBaseUrl, r as probeOllamaEmbeddingModels, t as MemoryIndexManager } from "./manager-
|
|
57
|
-
import { _ as resolveNativeCommandsEnabled, a as listChatCommandsForConfig, c as normalizeCommandBody, d as resolveCommandArgMenu, f as serializeCommandArgs, g as isRestartEnabled, h as isNativeCommandsExplicitlyDisabled, i as listChatCommands, l as parseCommandArgs, m as isCommandFlagEnabled, o as listNativeCommandSpecs, p as shouldHandleTextCommands, r as findCommandByNativeName, s as listNativeCommandSpecsForConfig, t as buildCommandTextFromArgs, u as resolveCommandArgChoices, v as resolveNativeSkillsEnabled } from "./commands-registry-
|
|
58
|
-
import { c as signalRpcRequest, l as streamSignalEvents, n as sendReadReceiptSignal, o as resolveSignalRpcContext, r as sendTypingSignal, s as signalCheck, t as sendMessageSignal } from "./send-
|
|
56
|
+
import { a as resolveMemorySearchConfig, i as resolveOllamaBaseUrl, r as probeOllamaEmbeddingModels, t as MemoryIndexManager } from "./manager-BPm5oefC.js";
|
|
57
|
+
import { _ as resolveNativeCommandsEnabled, a as listChatCommandsForConfig, c as normalizeCommandBody, d as resolveCommandArgMenu, f as serializeCommandArgs, g as isRestartEnabled, h as isNativeCommandsExplicitlyDisabled, i as listChatCommands, l as parseCommandArgs, m as isCommandFlagEnabled, o as listNativeCommandSpecs, p as shouldHandleTextCommands, r as findCommandByNativeName, s as listNativeCommandSpecsForConfig, t as buildCommandTextFromArgs, u as resolveCommandArgChoices, v as resolveNativeSkillsEnabled } from "./commands-registry-BuYpmEx-.js";
|
|
58
|
+
import { c as signalRpcRequest, l as streamSignalEvents, n as sendReadReceiptSignal, o as resolveSignalRpcContext, r as sendTypingSignal, s as signalCheck, t as sendMessageSignal } from "./send-CGhw9mO3.js";
|
|
59
59
|
import { t as makeProxyFetch } from "./proxy-D27OUbrW.js";
|
|
60
|
-
import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-
|
|
61
|
-
import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-
|
|
62
|
-
import { t as ensurePiAuthJsonFromAuthProfiles } from "./pi-auth-json-
|
|
63
|
-
import { t as getActiveWebListener } from "./active-listener-
|
|
60
|
+
import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-CHQ7BTlU.js";
|
|
61
|
+
import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-BR2TPTVW.js";
|
|
62
|
+
import { t as ensurePiAuthJsonFromAuthProfiles } from "./pi-auth-json-DiyK6bgV.js";
|
|
63
|
+
import { t as getActiveWebListener } from "./active-listener-CJuvR4C2.js";
|
|
64
64
|
import { n as recordCommandPoll, r as resetCommandPollCount } from "./command-poll-backoff-CP722fTK.js";
|
|
65
65
|
import { createRequire } from "node:module";
|
|
66
66
|
import fs, { existsSync, mkdirSync, mkdtempSync, readFileSync, renameSync, rmSync, statSync, unlinkSync, writeFileSync } from "node:fs";
|
|
67
67
|
import * as path$1 from "node:path";
|
|
68
68
|
import path from "node:path";
|
|
69
69
|
import os, { homedir } from "node:os";
|
|
70
|
-
import
|
|
70
|
+
import json5 from "json5";
|
|
71
71
|
import { ApplicationCommandOptionType, ButtonStyle, ChannelType, PermissionFlagsBits, Routes, StickerFormatType } from "discord-api-types/v10";
|
|
72
72
|
import { Button, ChannelSelectMenu, ChannelType as ChannelType$1, Client, Command, CommandWithSubcommands, Container, MentionableSelectMenu, MessageCreateListener, MessageReactionAddListener, MessageReactionRemoveListener, MessageType, Modal, PresenceUpdateListener, ReadyListener, RoleSelectMenu, Row, Separator, StringSelectMenu, TextDisplay, UserSelectMenu, serializePayload } from "@buape/carbon";
|
|
73
73
|
import crypto, { X509Certificate, createHash, createHmac, randomBytes, randomUUID } from "node:crypto";
|
|
@@ -7811,7 +7811,7 @@ async function createModelSelectionState(params) {
|
|
|
7811
7811
|
}
|
|
7812
7812
|
}
|
|
7813
7813
|
if (sessionEntry && sessionStore && sessionKey && sessionEntry.authProfileOverride) {
|
|
7814
|
-
const { ensureAuthProfileStore } = await import("./model-selection-
|
|
7814
|
+
const { ensureAuthProfileStore } = await import("./model-selection-CtVwtb6y.js").then((n) => n.O);
|
|
7815
7815
|
const profile = ensureAuthProfileStore(void 0, { allowKeychainPrompt: false }).profiles[sessionEntry.authProfileOverride];
|
|
7816
7816
|
const providerKey = normalizeProviderId(provider);
|
|
7817
7817
|
if (!profile || normalizeProviderId(profile.provider) !== providerKey) await clearSessionAuthProfileOverride({
|
|
@@ -11563,7 +11563,7 @@ async function getMemorySearchManager(params) {
|
|
|
11563
11563
|
if (cached) return { manager: cached };
|
|
11564
11564
|
}
|
|
11565
11565
|
try {
|
|
11566
|
-
const { QmdMemoryManager } = await import("./qmd-manager-
|
|
11566
|
+
const { QmdMemoryManager } = await import("./qmd-manager-BlUikj9s.js");
|
|
11567
11567
|
const primary = await QmdMemoryManager.create({
|
|
11568
11568
|
cfg: params.cfg,
|
|
11569
11569
|
agentId: params.agentId,
|
|
@@ -11575,7 +11575,7 @@ async function getMemorySearchManager(params) {
|
|
|
11575
11575
|
const wrapper = new FallbackMemoryManager({
|
|
11576
11576
|
primary,
|
|
11577
11577
|
fallbackFactory: async () => {
|
|
11578
|
-
const { MemoryIndexManager } = await import("./manager-
|
|
11578
|
+
const { MemoryIndexManager } = await import("./manager-BPm5oefC.js").then((n) => n.n);
|
|
11579
11579
|
return await MemoryIndexManager.get(params);
|
|
11580
11580
|
}
|
|
11581
11581
|
}, () => QMD_MANAGER_CACHE.delete(cacheKey));
|
|
@@ -11588,7 +11588,7 @@ async function getMemorySearchManager(params) {
|
|
|
11588
11588
|
}
|
|
11589
11589
|
}
|
|
11590
11590
|
try {
|
|
11591
|
-
const { MemoryIndexManager } = await import("./manager-
|
|
11591
|
+
const { MemoryIndexManager } = await import("./manager-BPm5oefC.js").then((n) => n.n);
|
|
11592
11592
|
return { manager: await MemoryIndexManager.get(params) };
|
|
11593
11593
|
} catch (err) {
|
|
11594
11594
|
return {
|
|
@@ -12733,7 +12733,7 @@ function normalizeSessionKey(value) {
|
|
|
12733
12733
|
function readSessionStore(storePath) {
|
|
12734
12734
|
try {
|
|
12735
12735
|
const raw = fs.readFileSync(storePath, "utf-8");
|
|
12736
|
-
const parsed =
|
|
12736
|
+
const parsed = json5.parse(raw);
|
|
12737
12737
|
if (parsed && typeof parsed === "object" && !Array.isArray(parsed)) return parsed;
|
|
12738
12738
|
} catch {}
|
|
12739
12739
|
return {};
|
|
@@ -15590,7 +15590,7 @@ async function routeReply(params) {
|
|
|
15590
15590
|
const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
|
|
15591
15591
|
const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
|
|
15592
15592
|
try {
|
|
15593
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
15593
|
+
const { deliverOutboundPayloads } = await import("./deliver-CKgFosI5.js").then((n) => n.n);
|
|
15594
15594
|
return {
|
|
15595
15595
|
ok: true,
|
|
15596
15596
|
messageId: (await deliverOutboundPayloads({
|
|
@@ -18064,7 +18064,7 @@ async function describeStickerImage(params) {
|
|
|
18064
18064
|
logVerbose(`telegram: describing sticker with ${provider}/${model}`);
|
|
18065
18065
|
try {
|
|
18066
18066
|
const buffer = await fs$1.readFile(imagePath);
|
|
18067
|
-
const { describeImageWithModel } = await import("./image-
|
|
18067
|
+
const { describeImageWithModel } = await import("./image-DFyINnvE.js").then((n) => n.n);
|
|
18068
18068
|
return (await describeImageWithModel({
|
|
18069
18069
|
buffer,
|
|
18070
18070
|
fileName: "sticker.webp",
|
|
@@ -18475,7 +18475,7 @@ function createWhatsAppLoginTool() {
|
|
|
18475
18475
|
force: Type.Optional(Type.Boolean())
|
|
18476
18476
|
}),
|
|
18477
18477
|
execute: async (_toolCallId, args) => {
|
|
18478
|
-
const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-
|
|
18478
|
+
const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-lMl_OqDj.js");
|
|
18479
18479
|
if ((args?.action ?? "start") === "wait") {
|
|
18480
18480
|
const result = await waitForWebLogin({ timeoutMs: typeof args.timeoutMs === "number" ? args.timeoutMs : void 0 });
|
|
18481
18481
|
return {
|
|
@@ -20630,7 +20630,7 @@ async function preflightDiscordMessage(params) {
|
|
|
20630
20630
|
let preflightTranscript;
|
|
20631
20631
|
const hasAudioAttachment = message.attachments?.some((att) => att.contentType?.startsWith("audio/"));
|
|
20632
20632
|
if (!isDirectMessage && shouldRequireMention && hasAudioAttachment && !baseText && mentionRegexes.length > 0) try {
|
|
20633
|
-
const { transcribeFirstAudio } = await import("./audio-preflight-
|
|
20633
|
+
const { transcribeFirstAudio } = await import("./audio-preflight-DucGa8w7.js");
|
|
20634
20634
|
const audioPaths = message.attachments?.filter((att) => att.contentType?.startsWith("audio/")).map((att) => att.url) ?? [];
|
|
20635
20635
|
if (audioPaths.length > 0) preflightTranscript = await transcribeFirstAudio({
|
|
20636
20636
|
ctx: {
|
|
@@ -30271,7 +30271,7 @@ async function recordLoopOutcome(args) {
|
|
|
30271
30271
|
if (!args.ctx?.sessionKey) return;
|
|
30272
30272
|
try {
|
|
30273
30273
|
const { getDiagnosticSessionState } = await import("./diagnostic-session-state-Wd5tNeQG.js").then((n) => n.n);
|
|
30274
|
-
const { recordToolCallOutcome } = await import("./tool-loop-detection-
|
|
30274
|
+
const { recordToolCallOutcome } = await import("./tool-loop-detection-DseOlBug.js");
|
|
30275
30275
|
recordToolCallOutcome(getDiagnosticSessionState({
|
|
30276
30276
|
sessionKey: args.ctx.sessionKey,
|
|
30277
30277
|
sessionId: args.ctx?.agentId
|
|
@@ -30292,8 +30292,8 @@ async function runBeforeToolCallHook(args) {
|
|
|
30292
30292
|
const params = args.params;
|
|
30293
30293
|
if (args.ctx?.sessionKey) {
|
|
30294
30294
|
const { getDiagnosticSessionState } = await import("./diagnostic-session-state-Wd5tNeQG.js").then((n) => n.n);
|
|
30295
|
-
const { logToolLoopAction } = await import("./diagnostic-
|
|
30296
|
-
const { detectToolCallLoop, recordToolCall } = await import("./tool-loop-detection-
|
|
30295
|
+
const { logToolLoopAction } = await import("./diagnostic-_oc91gNi.js").then((n) => n.n);
|
|
30296
|
+
const { detectToolCallLoop, recordToolCall } = await import("./tool-loop-detection-DseOlBug.js");
|
|
30297
30297
|
const sessionState = getDiagnosticSessionState({
|
|
30298
30298
|
sessionKey: args.ctx.sessionKey,
|
|
30299
30299
|
sessionId: args.ctx?.agentId
|
|
@@ -33902,6 +33902,7 @@ async function resolveDetachScriptPath(params) {
|
|
|
33902
33902
|
return cachedScriptPath;
|
|
33903
33903
|
}
|
|
33904
33904
|
async function buildLongTaskPromptSuffix(params) {
|
|
33905
|
+
if (params.cronEnabled === false) return "";
|
|
33905
33906
|
const scriptPath = await resolveDetachScriptPath(params);
|
|
33906
33907
|
if (!scriptPath) return "";
|
|
33907
33908
|
return "\n\n" + [
|
|
@@ -33921,7 +33922,8 @@ async function buildLongTaskPromptSuffix(params) {
|
|
|
33921
33922
|
" • If status begins with `running`: tail -n 20 <log>, post a one-sentence progress line.",
|
|
33922
33923
|
" • If status begins with `complete`: post a final summary with rc and tail, then call cron action=remove on this job id.",
|
|
33923
33924
|
" • If status begins with `aborted`: post a failure summary with signal and tail, then call cron action=remove.",
|
|
33924
|
-
" • Never leave stale monitors running after the task finishes."
|
|
33925
|
+
" • Never leave stale monitors running after the task finishes.",
|
|
33926
|
+
"- Inspecting and killing tasks: use `task_list` to enumerate detached tasks in the workspace (returns id/pid/alive/status/started for each), and `task_cancel` with `taskId` (and optional `signal`, default SIGTERM) to terminate a running task. Prefer these over raw `kill`/`ps` exec calls — they share the detach script's task-id allow-list and report alreadyDead cleanly."
|
|
33925
33927
|
].join("\n");
|
|
33926
33928
|
}
|
|
33927
33929
|
|
|
@@ -34991,7 +34993,8 @@ async function runEmbeddedAttempt(params) {
|
|
|
34991
34993
|
const longTaskSuffix = await buildLongTaskPromptSuffix({
|
|
34992
34994
|
argv1: process.argv[1],
|
|
34993
34995
|
cwd: process.cwd(),
|
|
34994
|
-
moduleUrl: import.meta.url
|
|
34996
|
+
moduleUrl: import.meta.url,
|
|
34997
|
+
cronEnabled: process.env.SYMI_SKIP_CRON !== "1" && params.config?.cron?.enabled !== false
|
|
34995
34998
|
});
|
|
34996
34999
|
const emailCapabilitySuffix = buildEmailCapabilityPromptSuffix();
|
|
34997
35000
|
const systemPromptText = createSystemPromptOverride(appendPrompt + longTaskSuffix + emailCapabilitySuffix + profilePromptSuffix)();
|
|
@@ -36835,27 +36838,27 @@ async function runAgentTurn(params) {
|
|
|
36835
36838
|
function createDefaultDeps() {
|
|
36836
36839
|
return {
|
|
36837
36840
|
sendMessageWhatsApp: async (...args) => {
|
|
36838
|
-
const { sendMessageWhatsApp } = await import("./web-
|
|
36841
|
+
const { sendMessageWhatsApp } = await import("./web-D0DsmFvw.js");
|
|
36839
36842
|
return await sendMessageWhatsApp(...args);
|
|
36840
36843
|
},
|
|
36841
36844
|
sendMessageTelegram: async (...args) => {
|
|
36842
|
-
const { sendMessageTelegram } = await import("./send-
|
|
36845
|
+
const { sendMessageTelegram } = await import("./send-DLO_yV5_.js").then((n) => n.l);
|
|
36843
36846
|
return await sendMessageTelegram(...args);
|
|
36844
36847
|
},
|
|
36845
36848
|
sendMessageDiscord: async (...args) => {
|
|
36846
|
-
const { sendMessageDiscord } = await import("./send-
|
|
36849
|
+
const { sendMessageDiscord } = await import("./send-ZhAe1nXO.js").then((n) => n.t);
|
|
36847
36850
|
return await sendMessageDiscord(...args);
|
|
36848
36851
|
},
|
|
36849
36852
|
sendMessageSlack: async (...args) => {
|
|
36850
|
-
const { sendMessageSlack } = await import("./send-
|
|
36853
|
+
const { sendMessageSlack } = await import("./send-BP5pSPaZ.js").then((n) => n.n);
|
|
36851
36854
|
return await sendMessageSlack(...args);
|
|
36852
36855
|
},
|
|
36853
36856
|
sendMessageSignal: async (...args) => {
|
|
36854
|
-
const { sendMessageSignal } = await import("./send-
|
|
36857
|
+
const { sendMessageSignal } = await import("./send-CGhw9mO3.js").then((n) => n.i);
|
|
36855
36858
|
return await sendMessageSignal(...args);
|
|
36856
36859
|
},
|
|
36857
36860
|
sendMessageIMessage: async (...args) => {
|
|
36858
|
-
const { sendMessageIMessage } = await import("./send-
|
|
36861
|
+
const { sendMessageIMessage } = await import("./send-jsofmTfJ.js").then((n) => n.n);
|
|
36859
36862
|
return await sendMessageIMessage(...args);
|
|
36860
36863
|
}
|
|
36861
36864
|
};
|
|
@@ -47007,7 +47010,7 @@ function readSlackExternalArgMenuToken(raw) {
|
|
|
47007
47010
|
}
|
|
47008
47011
|
let commandsRegistry;
|
|
47009
47012
|
async function getCommandsRegistry() {
|
|
47010
|
-
if (!commandsRegistry) commandsRegistry = await import("./commands-registry-
|
|
47013
|
+
if (!commandsRegistry) commandsRegistry = await import("./commands-registry-BuYpmEx-.js").then((n) => n.n);
|
|
47011
47014
|
return commandsRegistry;
|
|
47012
47015
|
}
|
|
47013
47016
|
function encodeSlackCommandArgValue(parts) {
|
|
@@ -47349,11 +47352,11 @@ async function registerSlackMonitorSlashCommands(params) {
|
|
|
47349
47352
|
const channelName = channelInfo?.name;
|
|
47350
47353
|
const roomLabel = channelName ? `#${channelName}` : `#${command.channel_id}`;
|
|
47351
47354
|
const [{ resolveAgentRoute }, { finalizeInboundContext }, { dispatchReplyWithDispatcher }] = await Promise.all([
|
|
47352
|
-
import("./resolve-route-
|
|
47355
|
+
import("./resolve-route-CHQ7BTlU.js").then((n) => n.r),
|
|
47353
47356
|
import("./inbound-context-D5EzMeL_.js").then((n) => n.n),
|
|
47354
47357
|
Promise.resolve().then(() => provider_dispatcher_exports)
|
|
47355
47358
|
]);
|
|
47356
|
-
const [{ resolveConversationLabel }, { createReplyPrefixOptions }] = await Promise.all([import("./conversation-label-yNSj43Jt.js").then((n) => n.t), import("./reply-prefix-
|
|
47359
|
+
const [{ resolveConversationLabel }, { createReplyPrefixOptions }] = await Promise.all([import("./conversation-label-yNSj43Jt.js").then((n) => n.t), import("./reply-prefix-BHuV5t70.js").then((n) => n.r)]);
|
|
47357
47360
|
const route = resolveAgentRoute({
|
|
47358
47361
|
cfg,
|
|
47359
47362
|
channel: "slack",
|
|
@@ -47410,9 +47413,9 @@ async function registerSlackMonitorSlashCommands(params) {
|
|
|
47410
47413
|
});
|
|
47411
47414
|
const deliverSlashPayloads = async (replies) => {
|
|
47412
47415
|
const [{ deliverSlackSlashReplies }, { resolveChunkMode }, { resolveMarkdownTableMode }] = await Promise.all([
|
|
47413
|
-
import("./replies-
|
|
47414
|
-
import("./chunk-
|
|
47415
|
-
import("./markdown-tables-
|
|
47416
|
+
import("./replies-BR2TPTVW.js").then((n) => n.r),
|
|
47417
|
+
import("./chunk-jvk9axTQ.js").then((n) => n.s),
|
|
47418
|
+
import("./markdown-tables-Dfaqilz6.js").then((n) => n.t)
|
|
47416
47419
|
]);
|
|
47417
47420
|
await deliverSlackSlashReplies({
|
|
47418
47421
|
replies,
|
|
@@ -47465,7 +47468,7 @@ async function registerSlackMonitorSlashCommands(params) {
|
|
|
47465
47468
|
let nativeCommands = [];
|
|
47466
47469
|
if (nativeEnabled) {
|
|
47467
47470
|
reg = await getCommandsRegistry();
|
|
47468
|
-
const skillCommands = nativeSkillsEnabled ? (await import("./skill-commands-
|
|
47471
|
+
const skillCommands = nativeSkillsEnabled ? (await import("./skill-commands-DEfqC_kJ.js").then((n) => n.a)).listSkillCommandsForAgents({ cfg }) : [];
|
|
47469
47472
|
nativeCommands = reg.listNativeCommandSpecsForConfig(cfg, {
|
|
47470
47473
|
skillCommands,
|
|
47471
47474
|
provider: "slack"
|
|
@@ -52116,7 +52119,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, storeAllowFro
|
|
|
52116
52119
|
const hasAudio = allMedia.some((media) => media.contentType?.startsWith("audio/"));
|
|
52117
52120
|
let preflightTranscript;
|
|
52118
52121
|
if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0) try {
|
|
52119
|
-
const { transcribeFirstAudio } = await import("./audio-preflight-
|
|
52122
|
+
const { transcribeFirstAudio } = await import("./audio-preflight-DucGa8w7.js");
|
|
52120
52123
|
preflightTranscript = await transcribeFirstAudio({
|
|
52121
52124
|
ctx: {
|
|
52122
52125
|
MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
|
|
@@ -54261,23 +54264,23 @@ let webLoginQrPromise = null;
|
|
|
54261
54264
|
let webChannelPromise = null;
|
|
54262
54265
|
let whatsappActionsPromise = null;
|
|
54263
54266
|
function loadWebOutbound() {
|
|
54264
|
-
webOutboundPromise ??= import("./outbound-
|
|
54267
|
+
webOutboundPromise ??= import("./outbound-DW3cqlQW.js").then((n) => n.t);
|
|
54265
54268
|
return webOutboundPromise;
|
|
54266
54269
|
}
|
|
54267
54270
|
function loadWebLogin() {
|
|
54268
|
-
webLoginPromise ??= import("./login-
|
|
54271
|
+
webLoginPromise ??= import("./login-K1YB_7-t.js").then((n) => n.n);
|
|
54269
54272
|
return webLoginPromise;
|
|
54270
54273
|
}
|
|
54271
54274
|
function loadWebLoginQr() {
|
|
54272
|
-
webLoginQrPromise ??= import("./login-qr-
|
|
54275
|
+
webLoginQrPromise ??= import("./login-qr-lMl_OqDj.js");
|
|
54273
54276
|
return webLoginQrPromise;
|
|
54274
54277
|
}
|
|
54275
54278
|
function loadWebChannel() {
|
|
54276
|
-
webChannelPromise ??= import("./web-
|
|
54279
|
+
webChannelPromise ??= import("./web-D0DsmFvw.js");
|
|
54277
54280
|
return webChannelPromise;
|
|
54278
54281
|
}
|
|
54279
54282
|
function loadWhatsAppActions() {
|
|
54280
|
-
whatsappActionsPromise ??= import("./whatsapp-actions-
|
|
54283
|
+
whatsappActionsPromise ??= import("./whatsapp-actions-eTefsWhW.js");
|
|
54281
54284
|
return whatsappActionsPromise;
|
|
54282
54285
|
}
|
|
54283
54286
|
function createPluginRuntime() {
|
|
@@ -57540,7 +57543,7 @@ async function resolveSandboxWorkdir(params) {
|
|
|
57540
57543
|
};
|
|
57541
57544
|
}
|
|
57542
57545
|
}
|
|
57543
|
-
function resolveWorkdir(workdir, warnings) {
|
|
57546
|
+
function resolveWorkdir$1(workdir, warnings) {
|
|
57544
57547
|
const fallback = safeCwd() ?? homedir();
|
|
57545
57548
|
try {
|
|
57546
57549
|
if (statSync(workdir).isDirectory()) return workdir;
|
|
@@ -58682,7 +58685,7 @@ function createExecTool(defaults) {
|
|
|
58682
58685
|
});
|
|
58683
58686
|
workdir = resolved.hostWorkdir;
|
|
58684
58687
|
containerWorkdir = resolved.containerWorkdir;
|
|
58685
|
-
} else workdir = resolveWorkdir(rawWorkdir, warnings);
|
|
58688
|
+
} else workdir = resolveWorkdir$1(rawWorkdir, warnings);
|
|
58686
58689
|
const baseEnv = coerceEnv(process.env);
|
|
58687
58690
|
if (host !== "sandbox" && params.env) validateHostEnv(params.env);
|
|
58688
58691
|
const mergedEnv = params.env ? {
|
|
@@ -59596,6 +59599,8 @@ const SUBAGENT_TOOL_DENY_ALWAYS = [
|
|
|
59596
59599
|
"whatsapp_login",
|
|
59597
59600
|
"session_status",
|
|
59598
59601
|
"cron",
|
|
59602
|
+
"task_list",
|
|
59603
|
+
"task_cancel",
|
|
59599
59604
|
"memory_search",
|
|
59600
59605
|
"memory_get",
|
|
59601
59606
|
"memory_pin",
|
|
@@ -68665,6 +68670,254 @@ function createSubagentsTool(opts) {
|
|
|
68665
68670
|
};
|
|
68666
68671
|
}
|
|
68667
68672
|
|
|
68673
|
+
//#endregion
|
|
68674
|
+
//#region src/agents/tools/task-tool.ts
|
|
68675
|
+
/**
|
|
68676
|
+
* Long-task management tools (task_list, task_cancel).
|
|
68677
|
+
*
|
|
68678
|
+
* Companions to the detach-task pattern in skills/long-task. The detach
|
|
68679
|
+
* script writes task-<id>.{pid,cmd,started,log,status} state files into
|
|
68680
|
+
* the agent's workspace; these tools read and act on those files so the
|
|
68681
|
+
* agent can answer "what's running?" and kill a task without needing
|
|
68682
|
+
* shell access.
|
|
68683
|
+
*
|
|
68684
|
+
* task-id allow-list mirrors detach-task.sh: 1–60 chars from
|
|
68685
|
+
* [a-zA-Z0-9._-], must not start with '.' or '-'. Diverging would let the
|
|
68686
|
+
* agent kill processes it never spawned via path traversal.
|
|
68687
|
+
*/
|
|
68688
|
+
const TASK_FILE_PREFIX = "task-";
|
|
68689
|
+
const TASK_ID_RE = /^[a-zA-Z0-9_][a-zA-Z0-9._-]{0,59}$/;
|
|
68690
|
+
const TASK_FILE_SUFFIXES = [
|
|
68691
|
+
".pid",
|
|
68692
|
+
".status",
|
|
68693
|
+
".started",
|
|
68694
|
+
".cmd",
|
|
68695
|
+
".log"
|
|
68696
|
+
];
|
|
68697
|
+
const ALLOWED_SIGNALS = new Set([
|
|
68698
|
+
"SIGTERM",
|
|
68699
|
+
"SIGINT",
|
|
68700
|
+
"SIGHUP",
|
|
68701
|
+
"SIGQUIT",
|
|
68702
|
+
"SIGKILL",
|
|
68703
|
+
"SIGUSR1",
|
|
68704
|
+
"SIGUSR2"
|
|
68705
|
+
]);
|
|
68706
|
+
const TaskListSchema = Type.Object({ workdir: Type.Optional(Type.String()) });
|
|
68707
|
+
const TaskCancelSchema = Type.Object({
|
|
68708
|
+
taskId: Type.String(),
|
|
68709
|
+
workdir: Type.Optional(Type.String()),
|
|
68710
|
+
signal: Type.Optional(Type.String())
|
|
68711
|
+
});
|
|
68712
|
+
function normaliseSignal(input) {
|
|
68713
|
+
if (!input) return "SIGTERM";
|
|
68714
|
+
const upper = input.trim().toUpperCase();
|
|
68715
|
+
const candidate = upper.startsWith("SIG") ? upper : `SIG${upper}`;
|
|
68716
|
+
if (ALLOWED_SIGNALS.has(candidate)) return candidate;
|
|
68717
|
+
throw new Error(`Unsupported signal: ${input}. Allowed: TERM, INT, HUP, QUIT, KILL, USR1, USR2.`);
|
|
68718
|
+
}
|
|
68719
|
+
function isPidAlive(pid) {
|
|
68720
|
+
try {
|
|
68721
|
+
process.kill(pid, 0);
|
|
68722
|
+
return true;
|
|
68723
|
+
} catch (err) {
|
|
68724
|
+
if (err.code === "EPERM") return true;
|
|
68725
|
+
return false;
|
|
68726
|
+
}
|
|
68727
|
+
}
|
|
68728
|
+
async function safeRead(filePath) {
|
|
68729
|
+
try {
|
|
68730
|
+
return (await fs.promises.readFile(filePath, "utf8")).trim();
|
|
68731
|
+
} catch {
|
|
68732
|
+
return null;
|
|
68733
|
+
}
|
|
68734
|
+
}
|
|
68735
|
+
function resolveWorkdir(deps, override) {
|
|
68736
|
+
const raw = override?.trim();
|
|
68737
|
+
if (!raw) return deps.workspaceDir;
|
|
68738
|
+
if (!path.isAbsolute(raw)) throw new Error(`workdir must be an absolute path (got: ${raw})`);
|
|
68739
|
+
return raw;
|
|
68740
|
+
}
|
|
68741
|
+
async function readTaskInfo(workdir, id) {
|
|
68742
|
+
const pidPath = path.join(workdir, `${TASK_FILE_PREFIX}${id}.pid`);
|
|
68743
|
+
const [pidText, status, started, cmd] = await Promise.all([
|
|
68744
|
+
safeRead(pidPath),
|
|
68745
|
+
safeRead(path.join(workdir, `${TASK_FILE_PREFIX}${id}.status`)),
|
|
68746
|
+
safeRead(path.join(workdir, `${TASK_FILE_PREFIX}${id}.started`)),
|
|
68747
|
+
safeRead(path.join(workdir, `${TASK_FILE_PREFIX}${id}.cmd`))
|
|
68748
|
+
]);
|
|
68749
|
+
let pid = null;
|
|
68750
|
+
if (pidText) {
|
|
68751
|
+
const parsed = Number.parseInt(pidText, 10);
|
|
68752
|
+
if (Number.isFinite(parsed) && parsed > 0) pid = parsed;
|
|
68753
|
+
}
|
|
68754
|
+
return {
|
|
68755
|
+
id,
|
|
68756
|
+
pid,
|
|
68757
|
+
alive: pid !== null && isPidAlive(pid),
|
|
68758
|
+
status: status ?? "missing",
|
|
68759
|
+
started,
|
|
68760
|
+
cmd,
|
|
68761
|
+
pidPath,
|
|
68762
|
+
statusPath: path.join(workdir, `${TASK_FILE_PREFIX}${id}.status`),
|
|
68763
|
+
logPath: path.join(workdir, `${TASK_FILE_PREFIX}${id}.log`)
|
|
68764
|
+
};
|
|
68765
|
+
}
|
|
68766
|
+
function createTaskListTool(deps) {
|
|
68767
|
+
return {
|
|
68768
|
+
label: "Task List",
|
|
68769
|
+
name: "task_list",
|
|
68770
|
+
description: `List long-running detached tasks in the agent's workspace.
|
|
68771
|
+
|
|
68772
|
+
Globs task-<id>.{pid,status,started,cmd,log} files, reads their state, and
|
|
68773
|
+
checks each PID's liveness. Use this to find the task-id of a running
|
|
68774
|
+
detach-task before calling task_cancel, or to answer "what's running right
|
|
68775
|
+
now?" without re-asking the user.
|
|
68776
|
+
|
|
68777
|
+
Returns: { workdir, tasks: [{ id, pid, alive, status, started, cmd, pidPath, statusPath, logPath }] }.
|
|
68778
|
+
Tasks whose .pid file is missing are still listed (alive=false, pid=null) so
|
|
68779
|
+
the agent can spot orphan state files.`,
|
|
68780
|
+
parameters: TaskListSchema,
|
|
68781
|
+
execute: async (_toolCallId, args) => {
|
|
68782
|
+
const override = readStringParam(args, "workdir");
|
|
68783
|
+
let workdir;
|
|
68784
|
+
try {
|
|
68785
|
+
workdir = resolveWorkdir(deps, override);
|
|
68786
|
+
} catch (err) {
|
|
68787
|
+
return jsonResult({
|
|
68788
|
+
workdir: override ?? deps.workspaceDir,
|
|
68789
|
+
tasks: [],
|
|
68790
|
+
error: err instanceof Error ? err.message : String(err)
|
|
68791
|
+
});
|
|
68792
|
+
}
|
|
68793
|
+
let entries;
|
|
68794
|
+
try {
|
|
68795
|
+
entries = await fs.promises.readdir(workdir);
|
|
68796
|
+
} catch (err) {
|
|
68797
|
+
if (err.code === "ENOENT") return jsonResult({
|
|
68798
|
+
workdir,
|
|
68799
|
+
tasks: []
|
|
68800
|
+
});
|
|
68801
|
+
return jsonResult({
|
|
68802
|
+
workdir,
|
|
68803
|
+
tasks: [],
|
|
68804
|
+
error: err instanceof Error ? err.message : String(err)
|
|
68805
|
+
});
|
|
68806
|
+
}
|
|
68807
|
+
const taskIds = /* @__PURE__ */ new Set();
|
|
68808
|
+
for (const entry of entries) {
|
|
68809
|
+
if (!entry.startsWith(TASK_FILE_PREFIX)) continue;
|
|
68810
|
+
for (const suffix of TASK_FILE_SUFFIXES) if (entry.endsWith(suffix)) {
|
|
68811
|
+
const id = entry.slice(5, -suffix.length);
|
|
68812
|
+
if (id.length > 0 && TASK_ID_RE.test(id)) taskIds.add(id);
|
|
68813
|
+
break;
|
|
68814
|
+
}
|
|
68815
|
+
}
|
|
68816
|
+
const tasks = await Promise.all([...taskIds].toSorted().map((id) => readTaskInfo(workdir, id)));
|
|
68817
|
+
return jsonResult({
|
|
68818
|
+
workdir,
|
|
68819
|
+
tasks
|
|
68820
|
+
});
|
|
68821
|
+
}
|
|
68822
|
+
};
|
|
68823
|
+
}
|
|
68824
|
+
function createTaskCancelTool(deps) {
|
|
68825
|
+
return {
|
|
68826
|
+
label: "Task Cancel",
|
|
68827
|
+
name: "task_cancel",
|
|
68828
|
+
description: `Send a signal (default SIGTERM) to a running detached task.
|
|
68829
|
+
|
|
68830
|
+
Reads task-<id>.pid in the workdir, validates the recorded PID is alive,
|
|
68831
|
+
and sends the signal via process.kill. The task's TERM/INT/HUP trap will
|
|
68832
|
+
write an "aborted" status before exiting, so a follow-up task_list call
|
|
68833
|
+
sees the canonical end state.
|
|
68834
|
+
|
|
68835
|
+
task-id must match the same allow-list as detach-task.sh: 1–60 chars from
|
|
68836
|
+
[a-zA-Z0-9._-], no leading '.' or '-'. signal accepts TERM (default), INT,
|
|
68837
|
+
HUP, QUIT, KILL, USR1, USR2 — with or without the "SIG" prefix.
|
|
68838
|
+
|
|
68839
|
+
Returns: { ok, taskId, pid, sentSignal, alreadyDead?, error? }.`,
|
|
68840
|
+
parameters: TaskCancelSchema,
|
|
68841
|
+
execute: async (_toolCallId, args) => {
|
|
68842
|
+
const params = args;
|
|
68843
|
+
const taskId = readStringParam(params, "taskId", { required: true });
|
|
68844
|
+
if (!TASK_ID_RE.test(taskId)) return jsonResult({
|
|
68845
|
+
ok: false,
|
|
68846
|
+
taskId,
|
|
68847
|
+
error: "taskId must be 1–60 chars from [a-zA-Z0-9._-] and must not start with '.' or '-'."
|
|
68848
|
+
});
|
|
68849
|
+
const override = readStringParam(params, "workdir");
|
|
68850
|
+
let workdir;
|
|
68851
|
+
try {
|
|
68852
|
+
workdir = resolveWorkdir(deps, override);
|
|
68853
|
+
} catch (err) {
|
|
68854
|
+
return jsonResult({
|
|
68855
|
+
ok: false,
|
|
68856
|
+
taskId,
|
|
68857
|
+
error: err instanceof Error ? err.message : String(err)
|
|
68858
|
+
});
|
|
68859
|
+
}
|
|
68860
|
+
const signalRaw = readStringParam(params, "signal");
|
|
68861
|
+
let signal;
|
|
68862
|
+
try {
|
|
68863
|
+
signal = normaliseSignal(signalRaw);
|
|
68864
|
+
} catch (err) {
|
|
68865
|
+
return jsonResult({
|
|
68866
|
+
ok: false,
|
|
68867
|
+
taskId,
|
|
68868
|
+
error: err instanceof Error ? err.message : String(err)
|
|
68869
|
+
});
|
|
68870
|
+
}
|
|
68871
|
+
const pidPath = path.join(workdir, `${TASK_FILE_PREFIX}${taskId}.pid`);
|
|
68872
|
+
let pidText;
|
|
68873
|
+
try {
|
|
68874
|
+
pidText = (await fs.promises.readFile(pidPath, "utf8")).trim();
|
|
68875
|
+
} catch (err) {
|
|
68876
|
+
if (err.code === "ENOENT") return jsonResult({
|
|
68877
|
+
ok: false,
|
|
68878
|
+
taskId,
|
|
68879
|
+
error: `no pid file at ${pidPath} — task is unknown or already cleaned up`
|
|
68880
|
+
});
|
|
68881
|
+
return jsonResult({
|
|
68882
|
+
ok: false,
|
|
68883
|
+
taskId,
|
|
68884
|
+
error: err instanceof Error ? err.message : String(err)
|
|
68885
|
+
});
|
|
68886
|
+
}
|
|
68887
|
+
const pid = Number.parseInt(pidText, 10);
|
|
68888
|
+
if (!Number.isFinite(pid) || pid <= 0) return jsonResult({
|
|
68889
|
+
ok: false,
|
|
68890
|
+
taskId,
|
|
68891
|
+
error: `pid file at ${pidPath} did not contain a positive integer`
|
|
68892
|
+
});
|
|
68893
|
+
if (!isPidAlive(pid)) return jsonResult({
|
|
68894
|
+
ok: false,
|
|
68895
|
+
taskId,
|
|
68896
|
+
pid,
|
|
68897
|
+
alreadyDead: true,
|
|
68898
|
+
error: "process is no longer running"
|
|
68899
|
+
});
|
|
68900
|
+
try {
|
|
68901
|
+
process.kill(pid, signal);
|
|
68902
|
+
} catch (err) {
|
|
68903
|
+
return jsonResult({
|
|
68904
|
+
ok: false,
|
|
68905
|
+
taskId,
|
|
68906
|
+
pid,
|
|
68907
|
+
sentSignal: signal,
|
|
68908
|
+
error: err instanceof Error ? err.message : String(err)
|
|
68909
|
+
});
|
|
68910
|
+
}
|
|
68911
|
+
return jsonResult({
|
|
68912
|
+
ok: true,
|
|
68913
|
+
taskId,
|
|
68914
|
+
pid,
|
|
68915
|
+
sentSignal: signal
|
|
68916
|
+
});
|
|
68917
|
+
}
|
|
68918
|
+
};
|
|
68919
|
+
}
|
|
68920
|
+
|
|
68668
68921
|
//#endregion
|
|
68669
68922
|
//#region src/agents/tools/tts-tool.ts
|
|
68670
68923
|
const TtsToolSchema = Type.Object({
|
|
@@ -69965,6 +70218,8 @@ function createSymiTools(options) {
|
|
|
69965
70218
|
config: options?.config
|
|
69966
70219
|
}),
|
|
69967
70220
|
createCronTool({ agentSessionKey: options?.agentSessionKey }),
|
|
70221
|
+
createTaskListTool({ workspaceDir }),
|
|
70222
|
+
createTaskCancelTool({ workspaceDir }),
|
|
69968
70223
|
...messageTool ? [messageTool] : [],
|
|
69969
70224
|
createTtsTool({
|
|
69970
70225
|
agentChannel: options?.agentChannel,
|
|
@@ -78756,7 +79011,7 @@ async function deliverSessionMaintenanceWarning(params) {
|
|
|
78756
79011
|
return;
|
|
78757
79012
|
}
|
|
78758
79013
|
try {
|
|
78759
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
79014
|
+
const { deliverOutboundPayloads } = await import("./deliver-CKgFosI5.js").then((n) => n.n);
|
|
78760
79015
|
await deliverOutboundPayloads({
|
|
78761
79016
|
cfg: params.cfg,
|
|
78762
79017
|
channel,
|