@symerian/symi 2.0.17 → 2.0.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{acp-cli-SgZGC8og.js → acp-cli-bbOWOXnN.js} +3 -3
- package/dist/{acp-cli-DqQjT50N.js → acp-cli-sXld4yJl.js} +3 -3
- package/dist/{agents-C4_0TzXm.js → agents-CENGwpKH.js} +8 -8
- package/dist/{agents.config-Bneyaqn6.js → agents.config-CgNflQtq.js} +1 -1
- package/dist/{agents.config-D9Ufj9CE.js → agents.config-WhJPXBWO.js} +1 -1
- package/dist/{api-key-rotation-BukD0zzl.js → api-key-rotation-De1ivBc0.js} +1 -1
- package/dist/{audio-preflight-BiAp3Hvj.js → audio-preflight-BxuYnm6k.js} +7 -7
- package/dist/{audio-preflight-Cpsd8C3J.js → audio-preflight-DCHBMKWE.js} +13 -13
- package/dist/{audio-preflight-mSUx5I34.js → audio-preflight-Djedh6Uc.js} +7 -7
- package/dist/{audio-preflight-5w1q1hWh.js → audio-preflight-USnUISOE.js} +13 -13
- package/dist/{audit-BCHYqYge.js → audit-DpqAVLn7.js} +7 -7
- package/dist/{audit-FH7mu_3g.js → audit-Dxa-KhrA.js} +7 -7
- package/dist/{auth-choice-B8qrETy7.js → auth-choice-BdZAR0l8.js} +7 -7
- package/dist/{auth-choice-5u4JonD1.js → auth-choice-upc_PcJy.js} +7 -7
- package/dist/{auth-profiles-BD22fK4p.js → auth-profiles-Cs3GPB03.js} +6 -2
- package/dist/{auth-token-CNnt7guc.js → auth-token-CbDExtp_.js} +1 -1
- package/dist/{auth-token-BrlnZiCq.js → auth-token-DdkoxDu3.js} +1 -1
- package/dist/{banner-CufnkY4K.js → banner-BE8pGhkj.js} +1 -1
- package/dist/{browser-cli-Cmyh_mQi.js → browser-cli-8URbjVyN.js} +4 -4
- package/dist/{browser-cli-n1RQ8OQs.js → browser-cli-DQ0DQymk.js} +4 -4
- package/dist/build-info.json +3 -3
- package/dist/bundled/boot-md/handler.js +18 -18
- package/dist/bundled/session-memory/handler.js +18 -18
- package/dist/{call-BKOIc76f.js → call-B-p451Eo.js} +1 -1
- package/dist/{call-C30ffTSt.js → call-Cspuh_Jh.js} +1 -1
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{channel-options-BBDX9s3H.js → channel-options-BPQpyMzn.js} +1 -1
- package/dist/{channel-options-CxOu5Gvn.js → channel-options-DEmvgalQ.js} +1 -1
- package/dist/{channel-web-DxSaM7GA.js → channel-web-Djcjl6S4.js} +8 -8
- package/dist/{channels-cli-CvtvmTOx.js → channels-cli-Cps6htRW.js} +39 -39
- package/dist/{channels-cli-CB6lWL72.js → channels-cli-Dn9ahV_w.js} +38 -38
- package/dist/{chrome-1cQdPKbv.js → chrome-BUUMKYz7.js} +8 -8
- package/dist/{chrome-CPwj5x24.js → chrome-Chj8uCZN.js} +1 -1
- package/dist/{chrome-DPu6LSX4.js → chrome-DGb_CkF8.js} +8 -8
- package/dist/{chrome-CUsfMVUk.js → chrome-XQjc7KSW.js} +1 -1
- package/dist/cli/daemon-cli.js +1 -1
- package/dist/{cli-CU_pJKCD.js → cli-Df__rsHc.js} +33 -33
- package/dist/{cli-cDOiHmL7.js → cli-atR7r3t-.js} +34 -34
- package/dist/{command-registry-D1zcgjTn.js → command-registry-Yv0ZBYYd.js} +11 -11
- package/dist/{commands-registry-DyWjIe7d.js → commands-registry-B_V42ZiZ.js} +1 -1
- package/dist/{commands-registry-Copoizgv.js → commands-registry-DN93gKlx.js} +1 -1
- package/dist/{commands-registry-uo2OKqdL.js → commands-registry-nK_mZXUN.js} +1 -1
- package/dist/{commands-registry-C3C4Rv3O.js → commands-registry-tuRMQmX4.js} +1 -1
- package/dist/{completion-cli-C8TsFimX.js → completion-cli-BCDS6oHd.js} +2 -2
- package/dist/{completion-cli-DWcx6gc6.js → completion-cli-Bw-2RaGe.js} +1 -1
- package/dist/{config-BLe0R4JX.js → config-BMStjqdp.js} +5 -2
- package/dist/{config-CvuX_y8t.js → config-Bh5BJYfZ.js} +5 -2
- package/dist/{config-ClXqj_D1.js → config-Crs8V2FU.js} +5 -2
- package/dist/{config-DehS9e5w.js → config-CxnbOYs8.js} +5 -2
- package/dist/{config-cli-DcjOWFbW.js → config-cli-BK-o9KUV.js} +3 -3
- package/dist/{config-cli-CEp26CMt.js → config-cli-CQJtnjeK.js} +3 -3
- package/dist/{config-guard-CGgFpviD.js → config-guard-CNwpT-bm.js} +5 -5
- package/dist/{config-guard-Ix_EcPkt.js → config-guard-DvNDqIJp.js} +2 -2
- package/dist/{config-validation-Ct_myZSl.js → config-validation-D0ku5PSk.js} +1 -1
- package/dist/{config-validation-BQnULegl.js → config-validation-g8v4CRxO.js} +1 -1
- package/dist/{configure-DbqI2Bgi.js → configure-D1fWVt_Z.js} +11 -11
- package/dist/{configure-B3aYKtwN.js → configure-D6i9bdDN.js} +11 -11
- package/dist/{control-service-CZ8lXYgi.js → control-service-B7EmYYFH.js} +4 -4
- package/dist/{control-service-DI1Do6Nn.js → control-service-BwrQoUMh.js} +4 -4
- package/dist/control-ui/js/app.js +79 -0
- package/dist/control-ui/js/render.js +39 -0
- package/dist/{cron-cli-NJy3v3Eb.js → cron-cli-D-nqfPZ5.js} +4 -4
- package/dist/{cron-cli-BH6kt3EZ.js → cron-cli-D9nGEQiu.js} +4 -4
- package/dist/{daemon-cli-BuOGkn7L.js → daemon-cli-DJR87xEg.js} +6 -6
- package/dist/{daemon-cli-CweZn-1O.js → daemon-cli-l5oXLo3n.js} +6 -6
- package/dist/daemon-cli.js +4 -1
- package/dist/{daemon-runtime-D1K-9VEC.js → daemon-runtime-BkVgNwLi.js} +1 -1
- package/dist/{daemon-runtime-C1t_OfMD.js → daemon-runtime-D4sIbUkl.js} +1 -1
- package/dist/{deliver-D8xILUUI.js → deliver-8_lPbrcf.js} +2 -2
- package/dist/{deliver-CIc_l0o6.js → deliver-8jOk1f3v.js} +3 -3
- package/dist/{deliver-DqqfC-g1.js → deliver-C0Azi_cK.js} +3 -3
- package/dist/{deliver-BorDF5OG.js → deliver-mS1WnuiB.js} +2 -2
- package/dist/{devices-cli-BE5ZzcA7.js → devices-cli-CaK3Ausk.js} +3 -3
- package/dist/{devices-cli-BUdOf8m2.js → devices-cli-V6vhbLKq.js} +3 -3
- package/dist/{directory-cli-BBdctcDF.js → directory-cli-BmNzLgXc.js} +2 -2
- package/dist/{directory-cli-DQHIn9um.js → directory-cli-Cd9lchia.js} +2 -2
- package/dist/{dm-policy-shared-BovJdm5T.js → dm-policy-shared-CvHrO6D_.js} +1 -1
- package/dist/{dm-policy-shared-DckBYBwg.js → dm-policy-shared-flFO0wFg.js} +1 -1
- package/dist/{dns-cli-mCiUyfvk.js → dns-cli-BEOWeAGR.js} +2 -2
- package/dist/{dns-cli-6H_E37de.js → dns-cli-mH-jPqkH.js} +2 -2
- package/dist/{doctor-completion-CAdewURI.js → doctor-completion-CCRu96-k.js} +1 -1
- package/dist/{doctor-completion-CXUM27y3.js → doctor-completion-DblWjsvi.js} +1 -1
- package/dist/{doctor-config-flow-CthAM9my.js → doctor-config-flow-Dd6-lC3V.js} +3 -3
- package/dist/{doctor-config-flow-BWD9G2UQ.js → doctor-config-flow-Dpnvu5A2.js} +3 -3
- package/dist/entry.js +1 -1
- package/dist/{exec-approvals-cli-CjU3pZzx.js → exec-approvals-cli-Dlf9s8ne.js} +5 -5
- package/dist/{exec-approvals-cli-CYKHeoEA.js → exec-approvals-cli-lDvry8Xq.js} +5 -5
- package/dist/extensionAPI.js +18 -18
- package/dist/{gateway-cli-n-kmAuP8.js → gateway-cli-B7kUZfUu.js} +51 -51
- package/dist/{gateway-cli-Bs96hk7L.js → gateway-cli-CaelVnat.js} +52 -52
- package/dist/{gateway-rpc-CTqBFfgd.js → gateway-rpc-CCYQR5Bz.js} +1 -1
- package/dist/{gateway-rpc-0C2uJScX.js → gateway-rpc-aJiLRbJG.js} +1 -1
- package/dist/{gemini-auth-7AWT6JXV.js → gemini-auth-2cinXFeY.js} +1 -1
- package/dist/{gemini-auth-BHSrr2_B.js → gemini-auth-DmWoaMTb.js} +1 -1
- package/dist/{gemini-auth-K6vg8B5c.js → gemini-auth-DtBB7-5F.js} +1 -1
- package/dist/{glass-ui-ws-mIHlWvBv.js → glass-ui-ws-CMCfE_8I.js} +42 -42
- package/dist/{glass-ui-ws-DFYRIWTO.js → glass-ui-ws-CzHgG5_-.js} +43 -43
- package/dist/{health-gsbXEgFI.js → health-C8krNwSF.js} +5 -5
- package/dist/{health-CpbZDInE.js → health-CiMUQ2KG.js} +5 -5
- package/dist/{hooks-cli-iVG6fkFc.js → hooks-cli-C8fq5oKx.js} +34 -34
- package/dist/{hooks-cli-SJWnM2SY.js → hooks-cli-CYHfc5jB.js} +35 -35
- package/dist/{image-DrkD-6sg.js → image-BTLvoV0e.js} +3 -3
- package/dist/{image-DIzd7Gw9.js → image-CNYGLoQl.js} +3 -3
- package/dist/{image-GHA29jwQ.js → image-DCnQz5jN.js} +3 -3
- package/dist/{image-DWOvY8sR.js → image-bJzFwVE3.js} +3 -3
- package/dist/index.js +42 -42
- package/dist/{lifecycle-core-CPLYFbS4.js → lifecycle-core-C7fyJOuN.js} +2 -2
- package/dist/{lifecycle-core-CE8aXuLe.js → lifecycle-core-f8oPRRaQ.js} +2 -2
- package/dist/llm-slug-generator.js +18 -18
- package/dist/{login-BcCF4noU.js → login-BZsZO9ST.js} +2 -2
- package/dist/{login-_Ynqrjet.js → login-C2C1yAD8.js} +2 -2
- package/dist/{login-DNeGXcjV.js → login-CJf4Gdbq.js} +2 -2
- package/dist/{login-C5eMLg1G.js → login-DTkUG4Mp.js} +2 -2
- package/dist/{login-qr-DjXNemMm.js → login-qr-BSm4xrHW.js} +3 -3
- package/dist/{login-qr-E4YwhoPt.js → login-qr-C4uL0W0C.js} +3 -3
- package/dist/{login-qr-CzD7_Pru.js → login-qr-CBPis3I2.js} +3 -3
- package/dist/{login-qr-CYEYc0Vo.js → login-qr-rvsxQT5p.js} +3 -3
- package/dist/{logs-cli-CIQ4qmRW.js → logs-cli-9__MsacS.js} +4 -4
- package/dist/{logs-cli-BLp5AOM0.js → logs-cli-DJJ4_QXv.js} +4 -4
- package/dist/{manager-oQJvFR6J.js → manager-Cw42HtQ7.js} +2 -2
- package/dist/{manager-Oiy1uHsu.js → manager-D0d-bOOe.js} +2 -2
- package/dist/{manager-BmHL5ETi.js → manager-D5ZbBYmN.js} +2 -2
- package/dist/{manager-CPQ2pEj3.js → manager-DqkRhYYl.js} +2 -2
- package/dist/{memory-cli-CGRSXKeF.js → memory-cli-D5iikkSG.js} +5 -5
- package/dist/{memory-cli-BUoM-v1-.js → memory-cli-OWL3A7_N.js} +5 -5
- package/dist/{model-CLebVu_U.js → model-ApXxvnzl.js} +1 -1
- package/dist/{model-DaukLY-k.js → model-DDV7HL-B.js} +1 -1
- package/dist/{model-auth-CeL58m55.js → model-auth-Db8I8QVL.js} +6 -2
- package/dist/{model-catalog-sW2MkIv9.js → model-catalog-Dq60dweH.js} +4 -4
- package/dist/{model-catalog-DZbVIJnH.js → model-catalog-jhBOlBYp.js} +4 -4
- package/dist/{model-picker-BJBeaNrK.js → model-picker-Bsyh5aNH.js} +3 -3
- package/dist/{model-picker-DUl7Gvdh.js → model-picker-C1U-Jt0h.js} +3 -3
- package/dist/{model-selection-Csawd2_i.js → model-selection-BBrZnKDw.js} +6 -2
- package/dist/{model-selection--4t4F87n.js → model-selection-DBPwoBvb.js} +6 -2
- package/dist/{models-LtuCAbk5.js → models-Cyr_kMKD.js} +14 -14
- package/dist/{models-cli-DEQCqsfo.js → models-cli-Ds0-bgOC.js} +39 -39
- package/dist/{models-cli-CB2zHB3Q.js → models-cli-H_wXDrQs.js} +40 -40
- package/dist/{models-config-DT09Fas0.js → models-config-CjPV5JrE.js} +2 -2
- package/dist/{models-config-BH6-rmtt.js → models-config-vcoi9QfD.js} +2 -2
- package/dist/{node-cli-BnZT8tc-.js → node-cli-B9nJomOA.js} +10 -10
- package/dist/{node-cli-znp1IPL2.js → node-cli-DHVafAR8.js} +10 -10
- package/dist/{nodes-cli-C8L5ablK.js → nodes-cli-CyVFmnaa.js} +4 -4
- package/dist/{nodes-cli-D3bHqKX1.js → nodes-cli-fvPbfbB4.js} +4 -4
- package/dist/{onboard-Dz7lPFv1.js → onboard-B-lQ356l.js} +10 -10
- package/dist/{onboard-B725u5vG.js → onboard-BSMzd6sG.js} +10 -10
- package/dist/{onboard-channels-DjG2jZUq.js → onboard-channels-C_p8450m.js} +2 -2
- package/dist/{onboard-channels-DPb8R8S3.js → onboard-channels-CfoFMyCh.js} +2 -2
- package/dist/{onboard-custom-CFqoXgjd.js → onboard-custom-CpKrCcyH.js} +3 -3
- package/dist/{onboard-custom-in5WChfX.js → onboard-custom-DsPk-82B.js} +3 -3
- package/dist/{onboard-helpers-BmDQMRZ7.js → onboard-helpers-C9emwuya.js} +2 -2
- package/dist/{onboard-helpers-_sSsfEAa.js → onboard-helpers-DIAvDwi8.js} +2 -2
- package/dist/{onboard-remote-BeAAhzmD.js → onboard-remote-CJrAdmgq.js} +1 -1
- package/dist/{onboard-remote-CBEIs-Ew.js → onboard-remote-DQu1ERap.js} +1 -1
- package/dist/{onboard-skills-EVFmwR8Q.js → onboard-skills-BC-T_r3T.js} +2 -2
- package/dist/{onboard-skills-Bx_OM5v0.js → onboard-skills-CtX6zH5x.js} +2 -2
- package/dist/{onboarding-D-FQIiBn.js → onboarding-CCO17f35.js} +11 -11
- package/dist/{onboarding-qxWeXuGM.js → onboarding-CEg1sg-w.js} +11 -11
- package/dist/{onboarding.finalize-D_gWQwW0.js → onboarding.finalize-B0eG7XwQ.js} +39 -39
- package/dist/{onboarding.finalize-DJTQnGkJ.js → onboarding.finalize-CD7SmwyJ.js} +41 -41
- package/dist/{onboarding.gateway-config-r7VeJWM7.js → onboarding.gateway-config-Cr1fFG05.js} +5 -5
- package/dist/{onboarding.gateway-config-Boplq1Mn.js → onboarding.gateway-config-GDMTEWcW.js} +5 -5
- package/dist/{openai-model-default-DF334-MD.js → openai-model-default-BMY_YH9P.js} +2 -2
- package/dist/{openai-model-default-DJwRgrAC.js → openai-model-default-l66tU27B.js} +2 -2
- package/dist/{outbound-DRslTBga.js → outbound-DXyOHKUR.js} +1 -1
- package/dist/{outbound-DPCAcHLQ.js → outbound-DYyGKxSZ.js} +1 -1
- package/dist/{outbound-yaYfpPTu.js → outbound-Qgo51Q1x.js} +1 -1
- package/dist/{outbound-B_cf2WkB.js → outbound-btxNyARe.js} +1 -1
- package/dist/{pairing-cli-DOMZSDiT.js → pairing-cli-DC6MUFHZ.js} +4 -4
- package/dist/{pairing-cli-DFgfVeeY.js → pairing-cli-m3BrxJoY.js} +4 -4
- package/dist/{pairing-labels-B-WwqJ-z.js → pairing-labels-Ca15tgVV.js} +1 -1
- package/dist/{pairing-labels-sIj1ZLt-.js → pairing-labels-D_XOc2nT.js} +1 -1
- package/dist/{pairing-store-CFwkjcA5.js → pairing-store-DdUVpKvp.js} +1 -1
- package/dist/{pairing-store-CicZMhK8.js → pairing-store-cjckhuQX.js} +1 -1
- package/dist/{pi-auth-json-BNhcohVK.js → pi-auth-json-BJB80_DY.js} +1 -1
- package/dist/{pi-auth-json-Do26xypW.js → pi-auth-json-Ba2dEWAH.js} +2 -2
- package/dist/{pi-auth-json-DV2ruNQM.js → pi-auth-json-BqB9Z6Gg.js} +1 -1
- package/dist/{pi-auth-json-CNgAAznq.js → pi-auth-json-etIDtHw9.js} +1 -1
- package/dist/{pi-embedded-BINp4yHJ.js → pi-embedded-BR587DfN.js} +266 -70
- package/dist/{pi-embedded-C6BUGEuF.js → pi-embedded-CyEM9NzS.js} +266 -70
- package/dist/{pi-embedded-helpers-jynCNZsb.js → pi-embedded-helpers-BflbNBBD.js} +1 -1
- package/dist/{pi-embedded-helpers-BDwdFGX-.js → pi-embedded-helpers-CAtkZb8c.js} +6 -6
- package/dist/{pi-embedded-helpers-Dfp-iKzJ.js → pi-embedded-helpers-KIM5SCp6.js} +6 -6
- package/dist/{pi-embedded-helpers-Cs0TgOaH.js → pi-embedded-helpers-XJw27Ryb.js} +1 -1
- package/dist/{pi-tools.policy-eb_uvOQV.js → pi-tools.policy-BJ7mumw5.js} +2 -2
- package/dist/{pi-tools.policy-vws0LV7U.js → pi-tools.policy-P1akpJL8.js} +2 -2
- package/dist/{plugin-auto-enable-D4BRdbII.js → plugin-auto-enable-B-WfJQ_3.js} +1 -1
- package/dist/{plugin-auto-enable-DdvlcMuw.js → plugin-auto-enable-CdctkFTt.js} +1 -1
- package/dist/{plugin-registry-C61W5IWr.js → plugin-registry-CAuOLe4u.js} +2 -2
- package/dist/{plugin-registry-D1cKRWYQ.js → plugin-registry-gJKyJBN5.js} +2 -2
- package/dist/plugin-sdk/agents/plan-mode.d.ts +2 -1
- package/dist/plugin-sdk/agents/synthetic-models.d.ts +1 -1
- package/dist/plugin-sdk/agents/system-prompt.d.ts +2 -1
- package/dist/plugin-sdk/agents/timeout.d.ts +1 -0
- package/dist/plugin-sdk/{api-key-rotation-Qy7QGV8_.js → api-key-rotation-DNKq8sDG.js} +1 -1
- package/dist/plugin-sdk/{audio-preflight-CdG1OBN2.js → audio-preflight-BLIDrYdM.js} +7 -7
- package/dist/plugin-sdk/{channel-web-DFVIpsZB.js → channel-web-CmlTJ7hK.js} +7 -7
- package/dist/plugin-sdk/{chrome-XyjVFCkY.js → chrome-DZFDAzW-.js} +1 -1
- package/dist/plugin-sdk/{commands-registry-CvppXodz.js → commands-registry-un-LmdXo.js} +1 -1
- package/dist/plugin-sdk/config/types.agent-defaults.d.ts +6 -0
- package/dist/plugin-sdk/config/zod-schema.agent-defaults.d.ts +3 -0
- package/dist/plugin-sdk/config/zod-schema.agents.d.ts +3 -0
- package/dist/plugin-sdk/config/zod-schema.d.ts +3 -0
- package/dist/plugin-sdk/{config-DG32gDDp.js → config-E1hS2lFY.js} +5 -2
- package/dist/plugin-sdk/{deliver-BdbnTrPD.js → deliver-DedoujTw.js} +2 -2
- package/dist/plugin-sdk/{image-B4_TBNqR.js → image-BTkmcfWM.js} +3 -3
- package/dist/plugin-sdk/index.js +22 -22
- package/dist/plugin-sdk/{login-Dey5tDpn.js → login-DsV1n99g.js} +2 -2
- package/dist/plugin-sdk/{login-qr-Tx8z1frn.js → login-qr-BXuSdbtI.js} +3 -3
- package/dist/plugin-sdk/{manager-RdPsBbBU.js → manager-BItSTruD.js} +2 -2
- package/dist/plugin-sdk/{model-selection-D6J2MZsj.js → model-selection-aEd_4vFO.js} +6 -2
- package/dist/plugin-sdk/{outbound-BpzsDbEV.js → outbound-2GErJr9p.js} +1 -1
- package/dist/plugin-sdk/{pi-auth-json-BmWuNdJA.js → pi-auth-json-FyiScmI7.js} +1 -1
- package/dist/plugin-sdk/{pi-embedded-helpers-OWtoPEg8.js → pi-embedded-helpers-ClMAnIcK.js} +6 -6
- package/dist/plugin-sdk/{pw-ai-OhVopvbb.js → pw-ai-DgQXeoga.js} +3 -3
- package/dist/plugin-sdk/{replies-DiFTMGgM.js → replies-DgHmcQJm.js} +1 -1
- package/dist/plugin-sdk/{reply-v8ed4JLy.js → reply-ByXRSx6U.js} +262 -66
- package/dist/plugin-sdk/{runner-BUXsfUip.js → runner-BZyapZ82.js} +5 -5
- package/dist/plugin-sdk/{send-CGSsrvd1.js → send-BRY1rgHy.js} +2 -2
- package/dist/plugin-sdk/{send-BXvJJUV_.js → send-BeLrD_W8.js} +1 -1
- package/dist/plugin-sdk/{send-BbFwAS_k.js → send-BmtFyMcr.js} +1 -1
- package/dist/plugin-sdk/{send-Drdgnfr_.js → send-BnQuSlC7.js} +1 -1
- package/dist/plugin-sdk/{send-DXcq1jzH.js → send-pZOlfgD0.js} +1 -1
- package/dist/plugin-sdk/{session-CX5KhlOe.js → session-Bjd4Dl7q.js} +1 -1
- package/dist/plugin-sdk/{skill-commands-NTPqO_az.js → skill-commands-Cwps3qpb.js} +1 -1
- package/dist/plugin-sdk/{web-DfIRv_Mx.js → web-C0VbV0vu.js} +22 -22
- package/dist/plugin-sdk/{whatsapp-actions-Dh6Y2fu9.js → whatsapp-actions-ydkRfuPg.js} +3 -3
- package/dist/{plugins-cli-ClY_BPg9.js → plugins-cli-BgXKqvpz.js} +34 -34
- package/dist/{plugins-cli-UmtKEuxj.js → plugins-cli-wo480wui.js} +35 -35
- package/dist/{program-CNsuYlJt.js → program-Ce64EM2F.js} +41 -41
- package/dist/{program-context-C2XeNCxI.js → program-context-D1Aj6Hxo.js} +38 -38
- package/dist/{prompt-select-styled-CiYSpQIf.js → prompt-select-styled-DLBGvEup.js} +17 -17
- package/dist/{prompt-select-styled-CgsYQqlJ.js → prompt-select-styled-DWgtQk76.js} +17 -17
- package/dist/{provider-auth-helpers-XIYHuUnj.js → provider-auth-helpers-CVi3VrsV.js} +4 -4
- package/dist/{provider-auth-helpers-CVAbJckC.js → provider-auth-helpers-fgQMn0eD.js} +4 -4
- package/dist/{push-apns-9q7Pl5I0.js → push-apns-CckLJBvV.js} +1 -1
- package/dist/{push-apns-6y-7OuAU.js → push-apns-kn7d-4VV.js} +1 -1
- package/dist/{pw-ai-C9noP7iN.js → pw-ai-5o71PJ5h.js} +3 -3
- package/dist/{pw-ai-BdNmRxEw.js → pw-ai-C3t2kdhc.js} +3 -3
- package/dist/{pw-ai-BfUWg8Eh.js → pw-ai-D-O0LOKC.js} +3 -3
- package/dist/{pw-ai-Dnh_iopr.js → pw-ai-I8AbpqgG.js} +3 -3
- package/dist/{qr-cli-BbRZOhwI.js → qr-cli-DC0qgjHf.js} +2 -2
- package/dist/{qr-cli-Cac34dCs.js → qr-cli-iTQlujHe.js} +2 -2
- package/dist/{register.agent-Ys85zXmm.js → register.agent-B94MeV3Q.js} +43 -43
- package/dist/{register.agent-DmLJVv4N.js → register.agent-uEXUpxgu.js} +45 -45
- package/dist/{register.configure-DYuK1UkU.js → register.configure-Bv85zqz8.js} +48 -48
- package/dist/{register.configure-BwmAY5TF.js → register.configure-tHkhp6vI.js} +47 -47
- package/dist/{register.maintenance-BQa25CA8.js → register.maintenance-BICJkK4r.js} +46 -46
- package/dist/{register.maintenance-625En1kE.js → register.maintenance-DaW01sHo.js} +44 -44
- package/dist/{register.message-DKeM6mQo.js → register.message-7Or0MY88.js} +34 -34
- package/dist/{register.message-CDpK3rbI.js → register.message-CSCfumTM.js} +35 -35
- package/dist/{register.onboard-CbvkWFq5.js → register.onboard-DgC3S144.js} +42 -42
- package/dist/{register.onboard-DtMjj81J.js → register.onboard-oEy-BwfU.js} +43 -43
- package/dist/{register.setup-DdX4Ahvt.js → register.setup-BnpJJOV4.js} +42 -42
- package/dist/{register.setup-BHhLns2f.js → register.setup-hrp8DAVZ.js} +43 -43
- package/dist/{register.status-health-sessions-D1KvwnF9.js → register.status-health-sessions-BfLJEzMU.js} +38 -38
- package/dist/{register.status-health-sessions-CqMFel_o.js → register.status-health-sessions-njnukBAU.js} +40 -40
- package/dist/{register.subclis-su5EMHvC.js → register.subclis-DEYBaz-Z.js} +28 -28
- package/dist/{replies-DqyX2Vln.js → replies-B5Jh0OCP.js} +1 -1
- package/dist/{replies-DtdP8R93.js → replies-BVXZDrhw.js} +1 -1
- package/dist/{replies-zeeuLUij.js → replies-CHirod5x.js} +1 -1
- package/dist/{replies-Dzc6eCFS.js → replies-Cyt5jQaT.js} +1 -1
- package/dist/{reply-DyFibFiG.js → reply-77x5WoQH.js} +274 -78
- package/dist/{routes-CEjKic_-.js → routes-BtsprtPx.js} +3 -3
- package/dist/{routes-B7FWIw81.js → routes-D5iYXgsO.js} +3 -3
- package/dist/{rpc-CV10Y2YL.js → rpc-CjvivzOg.js} +1 -1
- package/dist/{rpc-CR9IjVRa.js → rpc-lMWCuyRt.js} +1 -1
- package/dist/{run-main-CRPU46XB.js → run-main-DNA2le87.js} +53 -53
- package/dist/{runner-BkANJiWS.js → runner-3kD2Hk1w.js} +5 -5
- package/dist/{runner-v0fS4J7T.js → runner-Bzh_L69X.js} +5 -5
- package/dist/{runner-CTglx_CV.js → runner-_npJ-cn9.js} +5 -5
- package/dist/{runner-w5reqY02.js → runner-b_ibT3sW.js} +5 -5
- package/dist/{sandbox-DTzJlbvf.js → sandbox-BBGJMpXR.js} +5 -5
- package/dist/{sandbox-BpIrSDhl.js → sandbox-CPR0wRyk.js} +5 -5
- package/dist/{sandbox-cli-R_ZOY_KC.js → sandbox-cli-BgCrevMy.js} +7 -7
- package/dist/{sandbox-cli-B4VN_9mV.js → sandbox-cli-CHOc4ElC.js} +7 -7
- package/dist/{security-cli-BMB3kCFA.js → security-cli-B7YKQ6Nh.js} +12 -12
- package/dist/{security-cli-DmpyxTgQ.js → security-cli-iW-aIZ15.js} +12 -12
- package/dist/{send-DVLEgg9H.js → send--qdaLm4C.js} +1 -1
- package/dist/{send-CRWQglv9.js → send-B26isft5.js} +1 -1
- package/dist/{send-DDrpEKUg.js → send-BAM-zeo8.js} +2 -2
- package/dist/{send-Bt4UsVrd.js → send-BVKK9mIc.js} +1 -1
- package/dist/{send-Bx04WqH5.js → send-BfoI2xoz.js} +1 -1
- package/dist/{send-hJthT6M_.js → send-Btgfdf6H.js} +1 -1
- package/dist/{send-tDTl6xgz.js → send-BxkOVx17.js} +2 -2
- package/dist/{send-CC2vm0xU.js → send-C1fiVl-C.js} +1 -1
- package/dist/{send-BLT3lTZy.js → send-C7DzVT6I.js} +1 -1
- package/dist/{send-BbV4XqMl.js → send-CNZ2iT1h.js} +1 -1
- package/dist/{send-CQzO_Tg0.js → send-CboqahSN.js} +2 -2
- package/dist/{send-DyK4u4yH.js → send-DVNiZsde.js} +1 -1
- package/dist/{send-CZ18Xq5n.js → send-DXw0_dn5.js} +1 -1
- package/dist/{send-CEjpAJ8N.js → send-DffO5_WA.js} +1 -1
- package/dist/{send-BXiiQprI.js → send-Dfohx1Dj.js} +1 -1
- package/dist/{send-EQ1insgp.js → send-Dfum4W06.js} +1 -1
- package/dist/{send-CltKx_vS.js → send-QGcGaA1o.js} +2 -2
- package/dist/{send-BR3reUOE.js → send-TtpoiB7G.js} +1 -1
- package/dist/{send-Dm4UYQsf.js → send-sS-DxRJV.js} +1 -1
- package/dist/{send-1iB7Rdwp.js → send-ytd5gZYc.js} +1 -1
- package/dist/{server-context-DbcjnRHG.js → server-context-CZZZ5S6q.js} +5 -5
- package/dist/{server-context-BcjcQhiM.js → server-context-DiCxB7wV.js} +5 -5
- package/dist/{server-methods-U_lDP83A.js → server-methods-DgHyPneM.js} +21 -18
- package/dist/{server-methods-56m79WbR.js → server-methods-alycWcYE.js} +22 -19
- package/dist/{server-node-events-DpGswbj8.js → server-node-events-B5dFQdac.js} +34 -34
- package/dist/{server-node-events-Q9J_E8Ce.js → server-node-events-BkIo___r.js} +35 -35
- package/dist/{session-1Q4kg4xp.js → session-BFbJf357.js} +1 -1
- package/dist/{session-C86mCuOs.js → session-BdWP3apT.js} +1 -1
- package/dist/{session-BvXsNdtA.js → session-CiCHQ3Ah.js} +1 -1
- package/dist/{session-B4JR6zUJ.js → session-Dg44BpS1.js} +1 -1
- package/dist/{session-utils-CFvGKxdu.js → session-utils-Cs-nCi4-.js} +4 -4
- package/dist/{sessions-B3nP13Fw.js → sessions-BF3cJslT.js} +2 -2
- package/dist/{sessions-BdeJp6uY.js → sessions-C_c07viS.js} +2 -2
- package/dist/{sessions-m60NabL_.js → sessions-RYattOnc.js} +4 -4
- package/dist/{shared-mv9M8Mzc.js → shared-BmGIQ5oj.js} +2 -2
- package/dist/{shared-sOiAK5kN.js → shared-Dg2JustZ.js} +2 -2
- package/dist/{skill-commands-CWySL97a.js → skill-commands-BlfEmZ8t.js} +1 -1
- package/dist/{skill-commands-B64uavY9.js → skill-commands-C2kxEz5h.js} +1 -1
- package/dist/{skill-commands-DrFCB9F9.js → skill-commands-CSBmZ_di.js} +1 -1
- package/dist/{skill-commands-DWcJOIzP.js → skill-commands-C_ZNSYNS.js} +1 -1
- package/dist/{skills-cli-B7FG8Ft4.js → skills-cli-D9N3SSqr.js} +2 -2
- package/dist/{skills-cli-DVTw-NM0.js → skills-cli-G_0fvsIb.js} +2 -2
- package/dist/{status-D4KjZ3qi.js → status-D-gXM4AZ.js} +11 -11
- package/dist/{status-BNmYNm1S.js → status-T4y8IdyW.js} +2 -2
- package/dist/{status-DIYjr2wp.js → status-s0Mudh8o.js} +2 -2
- package/dist/{status-DbXRbJqY.js → status-yh81t6sL.js} +12 -12
- package/dist/{status.update-DKLvc9EH.js → status.update-9QVNoqzS.js} +1 -1
- package/dist/{status.update-CbXOcYqG.js → status.update-DAK4tN-2.js} +1 -1
- package/dist/{subagent-registry-Ct3GvWVn.js → subagent-registry-newoxfzs.js} +275 -79
- package/dist/{system-cli-B_KTvR0v.js → system-cli-B0oAtepa.js} +4 -4
- package/dist/{system-cli-9b3AzE_M.js → system-cli-kixN2BmA.js} +4 -4
- package/dist/{systemd-hints-BE7qhp3n.js → systemd-hints-BPRCUlOg.js} +1 -1
- package/dist/{systemd-hints-D_u4AuIu.js → systemd-hints-CRzDDf1-.js} +1 -1
- package/dist/{tui-oo_JjD-G.js → tui-CwMmsLXs.js} +16 -7
- package/dist/{tui-BViOdgFZ.js → tui-PZpjjXWo.js} +16 -7
- package/dist/{tui-cli-DKQz32oa.js → tui-cli-CU2JJJI9.js} +11 -11
- package/dist/{tui-cli-B97jQaQp.js → tui-cli-PTM4Eps5.js} +11 -11
- package/dist/{update-cli-Dhk0Yxsm.js → update-cli-B1dB4WdO.js} +47 -47
- package/dist/{update-cli-C9S00L1E.js → update-cli-BQdfZeXu.js} +49 -49
- package/dist/{update-runner-DBZOvTzN.js → update-runner-DKzlPMRC.js} +1 -1
- package/dist/{update-runner-BnIIcsqA.js → update-runner-HJhfkubt.js} +1 -1
- package/dist/{web-mXHyxR_l.js → web-BnH0qf_8.js} +21 -21
- package/dist/{web-f7lkf_un.js → web-CQzdHGhF.js} +21 -21
- package/dist/{web-8NQJ75ip.js → web-CScA06_W.js} +37 -37
- package/dist/{web-5uLk4OEM.js → web-DTIV3Lgo.js} +37 -37
- package/dist/{webhooks-cli-BLi_usfE.js → webhooks-cli-B97uWTaD.js} +2 -2
- package/dist/{webhooks-cli-Dz9n2L0-.js → webhooks-cli-CAHebfVz.js} +2 -2
- package/dist/{whatsapp-actions-ChtHuvdU.js → whatsapp-actions-BgiS8DUJ.js} +3 -3
- package/dist/{whatsapp-actions-6S6PNs2p.js → whatsapp-actions-BsVCZeLO.js} +3 -3
- package/dist/{whatsapp-actions-B4YPuD2Q.js → whatsapp-actions-DfJHCjBV.js} +3 -3
- package/dist/{whatsapp-actions-M8kjDd9l.js → whatsapp-actions-xhdGIJBd.js} +3 -3
- package/dist/{with-timeout-2zPYOOzh.js → with-timeout-C0euAxXp.js} +1 -1
- package/dist/{with-timeout-gaHpaiis.js → with-timeout-CiGZZ4b2.js} +1 -1
- package/docs/reference/templates/SYMIPULSE.md +1 -0
- package/package.json +1 -1
|
@@ -8,40 +8,40 @@ import { C as createInternalHookEvent, T as triggerInternalHook, _ as clearPlugi
|
|
|
8
8
|
import { d as createNonExitingRuntime, f as defaultRuntime, t as createSubsystemLogger } from "./subsystem-D9vIQve0.js";
|
|
9
9
|
import { a as logError, i as logDebug, n as runExec, o as logInfo, r as spawnWithFallback, s as logWarn, t as runCommandWithTimeout } from "./exec-CWkblSrI.js";
|
|
10
10
|
import { C as ensureAgentWorkspace, E as loadWorkspaceBootstrapFiles, a as resolveAgentModelFallbacksOverride, c as resolveAgentWorkspaceDir, d as resolveSessionAgentId, f as resolveSessionAgentIds, g as DEFAULT_IDENTITY_FILENAME, h as DEFAULT_BOOTSTRAP_FILENAME, i as resolveAgentDir, l as resolveDefaultAgentId, m as DEFAULT_AGENT_WORKSPACE_DIR, n as listAgentIds, o as resolveAgentModelPrimary, r as resolveAgentConfig, s as resolveAgentSkillsFilter, u as resolveEffectiveModelFallbacks, w as filterBootstrapFilesForSession } from "./agent-scope-CgUHAtCo.js";
|
|
11
|
-
import { At as ensureAuthProfileStore, Bt as normalizeSecretInput, Et as markAuthProfileGood, Ft as resolveSymiAgentDir, G as getCustomProviderApiKey, Gt as DEFAULT_MODEL, H as OLLAMA_NATIVE_BASE_URL, It as withFileLock, K as requireApiKey, Kt as DEFAULT_PROVIDER, Pt as resolveAuthStorePathForDisplay, Q as getShellPathFromLoginShell, Tt as listProfilesForProvider, U as createOllamaStreamFn, Vt as resolveAuthProfileDisplayLabel, W as getApiKeyForModel, Wt as DEFAULT_CONTEXT_TOKENS, X as resolveModelAuthMode, Y as resolveEnvApiKey, c as normalizeModelRef$2, et as resolveShellEnvFallbackTimeoutMs, ft as resolveAuthProfileOrder, g as resolveModelRefFromString, gt as markAuthProfileUsed, ht as markAuthProfileFailure, i as findNormalizedProviderValue, l as normalizeProviderId, m as resolveDefaultModelForAgent, mt as isProfileInCooldown, n as buildConfiguredAllowlistKeys, o as isCliProvider, p as resolveConfiguredModelRef, pt as getSoonestCooldownExpiry, q as resolveApiKeyForProvider, r as buildModelAliasIndex, s as modelKey, t as buildAllowedModelSet, u as parseModelRef, v as resolveSubagentSpawnModelSelection, vt as resolveApiKeyForProfile, wt as dedupeProfileIds, y as resolveThinkingDefault } from "./model-selection-
|
|
11
|
+
import { At as ensureAuthProfileStore, Bt as normalizeSecretInput, Et as markAuthProfileGood, Ft as resolveSymiAgentDir, G as getCustomProviderApiKey, Gt as DEFAULT_MODEL, H as OLLAMA_NATIVE_BASE_URL, It as withFileLock, K as requireApiKey, Kt as DEFAULT_PROVIDER, Pt as resolveAuthStorePathForDisplay, Q as getShellPathFromLoginShell, Tt as listProfilesForProvider, U as createOllamaStreamFn, Vt as resolveAuthProfileDisplayLabel, W as getApiKeyForModel, Wt as DEFAULT_CONTEXT_TOKENS, X as resolveModelAuthMode, Y as resolveEnvApiKey, c as normalizeModelRef$2, et as resolveShellEnvFallbackTimeoutMs, ft as resolveAuthProfileOrder, g as resolveModelRefFromString, gt as markAuthProfileUsed, ht as markAuthProfileFailure, i as findNormalizedProviderValue, l as normalizeProviderId, m as resolveDefaultModelForAgent, mt as isProfileInCooldown, n as buildConfiguredAllowlistKeys, o as isCliProvider, p as resolveConfiguredModelRef, pt as getSoonestCooldownExpiry, q as resolveApiKeyForProvider, r as buildModelAliasIndex, s as modelKey, t as buildAllowedModelSet, u as parseModelRef, v as resolveSubagentSpawnModelSelection, vt as resolveApiKeyForProfile, wt as dedupeProfileIds, y as resolveThinkingDefault } from "./model-selection-BBrZnKDw.js";
|
|
12
12
|
import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-DAu1a6BX.js";
|
|
13
13
|
import { t as formatCliCommand } from "./command-format-COaS-S7B.js";
|
|
14
14
|
import { t as parseBooleanValue$1 } from "./boolean-BsqeuxE6.js";
|
|
15
15
|
import { t as isTruthyEnvValue } from "./env-DPCHYPeH.js";
|
|
16
16
|
import { a as isInternalMessageChannel, c as listDeliverableMessageChannels, d as resolveMessageChannel, h as GATEWAY_CLIENT_NAMES, i as isGatewayMessageChannel, l as normalizeMessageChannel, m as GATEWAY_CLIENT_MODES, n as isDeliverableMessageChannel, o as isMarkdownCapableMessageChannel, p as GATEWAY_CLIENT_IDS, t as INTERNAL_MESSAGE_CHANNEL, u as resolveGatewayMessageChannel } from "./message-channel-aT-I_DTX.js";
|
|
17
|
-
import { $ as parseDiscordTarget, A as unpinMessageDiscord, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as createDiscordRestClient, D as pinMessageDiscord, Dt as normalizeChannelSlug, E as listThreadsDiscord, Et as buildChannelKeyCandidates, F as fetchMemberInfoDiscord, G as uploadStickerDiscord, H as timeoutMemberDiscord, I as fetchRoleInfoDiscord, J as editChannelDiscord, K as createChannelDiscord, L as fetchVoiceStatusDiscord, M as banMemberDiscord, N as createScheduledEventDiscord, O as readMessagesDiscord, Ot as resolveChannelEntryMatchWithFallback, P as fetchChannelInfoDiscord, Q as stripUndefinedFields, R as kickMemberDiscord, S as deleteMessageDiscord, St as createDiscordClient, T as listPinsDiscord, Tt as applyChannelMatchMeta, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendPollDiscord, _t as resolveDiscordSystemLocation, a as removeReactionDiscord, at as normalizeDiscordAllowList, b as sendWebhookMessageDiscord, bt as fetchChannelPermissionsDiscord, c as formatDiscordComponentEventText, ct as resolveDiscordChannelConfigWithFallback, d as parseDiscordModalCustomId, dt as resolveDiscordOwnerAllowFrom, et as resolveDiscordChannelId, f as parseDiscordModalCustomIdForCarbon, ft as resolveDiscordShouldRequireMention, g as sendMessageDiscord, gt as formatDiscordUserTag, h as resolveDiscordModalEntry, ht as formatDiscordReactionEmoji, i as removeOwnReactionsDiscord, it as isDiscordGroupAllowedByPolicy, j as addRoleDiscord, k as searchMessagesDiscord, l as parseDiscordComponentCustomId, lt as resolveDiscordGuildEntry, m as resolveDiscordComponentEntry, mt as shouldEmitDiscordReactionNotification, n as fetchReactionsDiscord, nt as listDiscordDirectoryPeersLive, o as sendDiscordComponentMessage, ot as normalizeDiscordSlug, p as readDiscordComponentSpec, pt as resolveGroupDmAllow, q as deleteChannelDiscord, r as reactMessageDiscord, rt as allowListMatches$1, s as createDiscordFormModal, st as resolveDiscordAllowListMatch, tt as listDiscordDirectoryGroupsLive, u as parseDiscordComponentCustomIdForCarbon, ut as resolveDiscordMemberAccessState, v as sendStickerDiscord, vt as resolveTimestampMs, w as fetchMessageDiscord, wt as chunkDiscordTextWithMode, x as createThreadDiscord, xt as hasAnyGuildPermissionDiscord, y as sendVoiceMessageDiscord, yt as fetchDiscord, z as listGuildChannelsDiscord } from "./send-
|
|
18
|
-
import { A as parseConfigPath, B as resolveAgentMaxConcurrent, C as parseDurationMs, D as setConfigOverride, E as resetConfigOverrides, H as VERSION, M as unsetConfigValueAtPath, O as unsetConfigOverride, T as getConfigOverrides, _ as isInboundPathAllowed, b as resolveIMessageRemoteAttachmentRoots, c as resolveConfigSnapshotHash, h as resolveTelegramCustomCommands, i as loadConfig, j as setConfigValueAtPath, k as getConfigValueAtPath, l as writeConfigFile, m as normalizeTelegramCommandName, o as readConfigFileSnapshot, p as TELEGRAM_COMMAND_NAME_PATTERN, u as validateConfigObjectWithPlugins, w as validateJsonSchemaValue, x as normalizeScpRemoteHost, y as resolveIMessageAttachmentRoots, z as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH } from "./config-
|
|
17
|
+
import { $ as parseDiscordTarget, A as unpinMessageDiscord, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as createDiscordRestClient, D as pinMessageDiscord, Dt as normalizeChannelSlug, E as listThreadsDiscord, Et as buildChannelKeyCandidates, F as fetchMemberInfoDiscord, G as uploadStickerDiscord, H as timeoutMemberDiscord, I as fetchRoleInfoDiscord, J as editChannelDiscord, K as createChannelDiscord, L as fetchVoiceStatusDiscord, M as banMemberDiscord, N as createScheduledEventDiscord, O as readMessagesDiscord, Ot as resolveChannelEntryMatchWithFallback, P as fetchChannelInfoDiscord, Q as stripUndefinedFields, R as kickMemberDiscord, S as deleteMessageDiscord, St as createDiscordClient, T as listPinsDiscord, Tt as applyChannelMatchMeta, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendPollDiscord, _t as resolveDiscordSystemLocation, a as removeReactionDiscord, at as normalizeDiscordAllowList, b as sendWebhookMessageDiscord, bt as fetchChannelPermissionsDiscord, c as formatDiscordComponentEventText, ct as resolveDiscordChannelConfigWithFallback, d as parseDiscordModalCustomId, dt as resolveDiscordOwnerAllowFrom, et as resolveDiscordChannelId, f as parseDiscordModalCustomIdForCarbon, ft as resolveDiscordShouldRequireMention, g as sendMessageDiscord, gt as formatDiscordUserTag, h as resolveDiscordModalEntry, ht as formatDiscordReactionEmoji, i as removeOwnReactionsDiscord, it as isDiscordGroupAllowedByPolicy, j as addRoleDiscord, k as searchMessagesDiscord, l as parseDiscordComponentCustomId, lt as resolveDiscordGuildEntry, m as resolveDiscordComponentEntry, mt as shouldEmitDiscordReactionNotification, n as fetchReactionsDiscord, nt as listDiscordDirectoryPeersLive, o as sendDiscordComponentMessage, ot as normalizeDiscordSlug, p as readDiscordComponentSpec, pt as resolveGroupDmAllow, q as deleteChannelDiscord, r as reactMessageDiscord, rt as allowListMatches$1, s as createDiscordFormModal, st as resolveDiscordAllowListMatch, tt as listDiscordDirectoryGroupsLive, u as parseDiscordComponentCustomIdForCarbon, ut as resolveDiscordMemberAccessState, v as sendStickerDiscord, vt as resolveTimestampMs, w as fetchMessageDiscord, wt as chunkDiscordTextWithMode, x as createThreadDiscord, xt as hasAnyGuildPermissionDiscord, y as sendVoiceMessageDiscord, yt as fetchDiscord, z as listGuildChannelsDiscord } from "./send-C1fiVl-C.js";
|
|
18
|
+
import { A as parseConfigPath, B as resolveAgentMaxConcurrent, C as parseDurationMs, D as setConfigOverride, E as resetConfigOverrides, H as VERSION, M as unsetConfigValueAtPath, O as unsetConfigOverride, T as getConfigOverrides, _ as isInboundPathAllowed, b as resolveIMessageRemoteAttachmentRoots, c as resolveConfigSnapshotHash, h as resolveTelegramCustomCommands, i as loadConfig, j as setConfigValueAtPath, k as getConfigValueAtPath, l as writeConfigFile, m as normalizeTelegramCommandName, o as readConfigFileSnapshot, p as TELEGRAM_COMMAND_NAME_PATTERN, u as validateConfigObjectWithPlugins, w as validateJsonSchemaValue, x as normalizeScpRemoteHost, y as resolveIMessageAttachmentRoots, z as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH } from "./config-BMStjqdp.js";
|
|
19
19
|
import { a as safeStatSync, c as applyTestPluginDefaults, d as resolveEnableState, f as resolveMemorySlotDecision, h as isDangerousHostEnvVarName, i as isPathInside, n as loadPluginManifestRegistry, r as discoverSymiPlugins, u as normalizePluginsConfig } from "./manifest-registry-C4BxOMWX.js";
|
|
20
20
|
import { a as isPathInsideWithRealpath } from "./legacy-names-Be3msDZo.js";
|
|
21
21
|
import { t as normalizeChatType } from "./chat-type-DyovJwCt.js";
|
|
22
22
|
import { n as resolveConversationLabel } from "./conversation-label-Bn5j3lUT.js";
|
|
23
23
|
import { r as normalizeInboundTextNewlines, t as finalizeInboundContext } from "./inbound-context-CmmmT8IP.js";
|
|
24
|
-
import { _ as applyTemplate, a as resolveMediaAttachmentLocalRoots, c as resolveAttachmentKind, d as registerUnhandledRejectionHandler, f as resolveConcurrency, g as CLI_OUTPUT_MAX_BUFFER, h as resolveMediaUnderstandingScope, i as resolveAutoImageModel, l as buildRandomTempFilePath, m as normalizeMediaUnderstandingChatType, n as createMediaAttachmentCache, o as runCapability, p as resolveTimeoutMs, r as normalizeMediaAttachments, t as buildProviderRegistry } from "./runner-
|
|
25
|
-
import { _ as stripThinkingTagsFromText, a as decodeDataUrl, b as minimaxUnderstandImage, 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 stripReasoningTagsFromText, y as extractTextFromChatContent } from "./image-
|
|
26
|
-
import { t as ensureSymiModelsJson } from "./models-config-
|
|
24
|
+
import { _ as applyTemplate, a as resolveMediaAttachmentLocalRoots, c as resolveAttachmentKind, d as registerUnhandledRejectionHandler, f as resolveConcurrency, g as CLI_OUTPUT_MAX_BUFFER, h as resolveMediaUnderstandingScope, i as resolveAutoImageModel, l as buildRandomTempFilePath, m as normalizeMediaUnderstandingChatType, n as createMediaAttachmentCache, o as runCapability, p as resolveTimeoutMs, r as normalizeMediaAttachments, t as buildProviderRegistry } from "./runner-3kD2Hk1w.js";
|
|
25
|
+
import { _ as stripThinkingTagsFromText, a as decodeDataUrl, b as minimaxUnderstandImage, 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 stripReasoningTagsFromText, y as extractTextFromChatContent } from "./image-CNYGLoQl.js";
|
|
26
|
+
import { t as ensureSymiModelsJson } from "./models-config-vcoi9QfD.js";
|
|
27
27
|
import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-4uUnLc3n.js";
|
|
28
|
-
import { A as isTransientHttpError, C as isContextOverflowError, D as isRateLimitAssistantError, E as isLikelyContextOverflowError, F as ensureSessionHeader, I as resolveBootstrapMaxChars, L as resolveBootstrapTotalMaxChars, M as parseImageSizeError, N as sanitizeUserFacingText, O as isRawApiErrorPayload, P as buildBootstrapContextFiles, R as sanitizeGoogleTurnOrdering, S as isCompactionFailureError, T as isFailoverErrorMessage, _ as formatRawAssistantErrorForUi, a as isMessagingToolDuplicateNormalized, b as isBillingAssistantError, c as extractToolCallsFromAssistant, d as isAntigravityClaude, f as isGoogleModelApi, g as formatBillingErrorMessage, h as formatAssistantErrorText, j as parseImageDimensionError, k as isTimeoutErrorMessage, l as extractToolResultId, m as classifyFailoverReason, n as validateGeminiTurns, o as normalizeTextForComparison, p as BILLING_ERROR_USER_MESSAGE, r as pickFallbackThinkingLevel, s as sanitizeSessionMessagesImages, t as validateAnthropicTurns, u as downgradeOpenAIReasoningBlocks, v as getApiErrorPayloadFingerprint, w as isFailoverAssistantError, x as isCloudCodeAssistFormatError, y as isAuthAssistantError } from "./pi-embedded-helpers-
|
|
29
|
-
import { C as stripPluginOnlyAllowlist, S as resolveToolProfilePolicy, T as matchesAnyGlobPattern, _ as collectExplicitAllowlist, a as ensureSandboxWorkspaceForSession, b as mergeAlsoAllowPolicy, c as resolveSandboxRuntimeStatus, d as getBridgeAuthForPort, f as resolveSandboxConfigForAgent, g as buildPluginToolGroups, h as applyOwnerOnlyToolPolicy, o as resolveSandboxContext, v as expandPolicyWithPluginGroups, w as compileGlobPatterns, x as normalizeToolName } from "./sandbox-
|
|
30
|
-
import { T as DEFAULT_AI_SNAPSHOT_MAX_CHARS } from "./chrome-
|
|
31
|
-
import { i as resolveBrowserConfig, m as resolveBrowserControlAuth } from "./server-context-
|
|
28
|
+
import { A as isTransientHttpError, C as isContextOverflowError, D as isRateLimitAssistantError, E as isLikelyContextOverflowError, F as ensureSessionHeader, I as resolveBootstrapMaxChars, L as resolveBootstrapTotalMaxChars, M as parseImageSizeError, N as sanitizeUserFacingText, O as isRawApiErrorPayload, P as buildBootstrapContextFiles, R as sanitizeGoogleTurnOrdering, S as isCompactionFailureError, T as isFailoverErrorMessage, _ as formatRawAssistantErrorForUi, a as isMessagingToolDuplicateNormalized, b as isBillingAssistantError, c as extractToolCallsFromAssistant, d as isAntigravityClaude, f as isGoogleModelApi, g as formatBillingErrorMessage, h as formatAssistantErrorText, j as parseImageDimensionError, k as isTimeoutErrorMessage, l as extractToolResultId, m as classifyFailoverReason, n as validateGeminiTurns, o as normalizeTextForComparison, p as BILLING_ERROR_USER_MESSAGE, r as pickFallbackThinkingLevel, s as sanitizeSessionMessagesImages, t as validateAnthropicTurns, u as downgradeOpenAIReasoningBlocks, v as getApiErrorPayloadFingerprint, w as isFailoverAssistantError, x as isCloudCodeAssistFormatError, y as isAuthAssistantError } from "./pi-embedded-helpers-BflbNBBD.js";
|
|
29
|
+
import { C as stripPluginOnlyAllowlist, S as resolveToolProfilePolicy, T as matchesAnyGlobPattern, _ as collectExplicitAllowlist, a as ensureSandboxWorkspaceForSession, b as mergeAlsoAllowPolicy, c as resolveSandboxRuntimeStatus, d as getBridgeAuthForPort, f as resolveSandboxConfigForAgent, g as buildPluginToolGroups, h as applyOwnerOnlyToolPolicy, o as resolveSandboxContext, v as expandPolicyWithPluginGroups, w as compileGlobPatterns, x as normalizeToolName } from "./sandbox-BBGJMpXR.js";
|
|
30
|
+
import { T as DEFAULT_AI_SNAPSHOT_MAX_CHARS } from "./chrome-XQjc7KSW.js";
|
|
31
|
+
import { i as resolveBrowserConfig, m as resolveBrowserControlAuth } from "./server-context-DiCxB7wV.js";
|
|
32
32
|
import { a as resolveSkillsPromptForRun, d as resolveSandboxInputPath, h as applySkillEnvOverridesFromSnapshot, i as loadWorkspaceSkillEntries, l as assertMediaNotDataUrl, m as applySkillEnvOverrides, p as resolveSandboxedMediaSource, r as buildWorkspaceSkillSnapshot, u as assertSandboxPath } from "./skills-6jdJQ5ZL.js";
|
|
33
33
|
import { n as formatErrorMessage, r as formatUncaughtError } from "./errors-BF3TeRH2.js";
|
|
34
34
|
import { i as resolveExistingPathsWithinRoot, r as DEFAULT_UPLOAD_DIR } from "./paths-BBm9fwuG.js";
|
|
35
35
|
import { i as isBlockedHostnameOrIp, o as normalizeHostname, t as SsrFBlockedError } from "./ssrf-BCYMnxkM.js";
|
|
36
36
|
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-1OJMSAUX.js";
|
|
37
37
|
import { n as getMediaDir, r as saveMediaBuffer } from "./store-r1DJSDq-.js";
|
|
38
|
-
import { B as resolveAgentMainSessionKey, C as capArrayByJsonBytes, D as resolveSessionTranscriptCandidates, E as readSessionTitleFieldsFromTranscript, F as resolveSessionResetType, H as resolveMainSessionKey, I as resolveThreadFlag, J as acquireSessionWriteLock, K as buildGroupDisplayName, L as DEFAULT_RESET_TRIGGERS, M as evaluateSessionFreshness, N as resolveChannelResetConfig, P as resolveSessionResetPolicy, R as resolveFreshSessionTotalTokens, S as archiveSessionTranscripts, V as resolveExplicitAgentSessionKey, W as deriveSessionMetaPatch, X as resolveSessionLockMaxHoldFromTimeout, _ as mergeDeliveryContext, a as resolveAndPersistSessionFile, b as normalizeAccountId$3, c as recordSessionMetaFromInbound, d as updateSessionStore, f as updateSessionStoreEntry, g as deliveryContextKey, h as deliveryContextFromSession, j as resolveSessionKey, m as resolveCacheTtlMs$1, n as parseSessionThreadInfo, o as loadSessionStore, p as isCacheEnabled, q as resolveGroupSessionKey, r as appendAssistantMessageToSessionTranscript, s as readSessionUpdatedAt, t as extractDeliveryInfo, u as updateLastRoute, v as normalizeDeliveryContext, y as normalizeSessionDeliveryFields, z as canonicalizeMainSessionAlias } from "./sessions-
|
|
38
|
+
import { B as resolveAgentMainSessionKey, C as capArrayByJsonBytes, D as resolveSessionTranscriptCandidates, E as readSessionTitleFieldsFromTranscript, F as resolveSessionResetType, H as resolveMainSessionKey, I as resolveThreadFlag, J as acquireSessionWriteLock, K as buildGroupDisplayName, L as DEFAULT_RESET_TRIGGERS, M as evaluateSessionFreshness, N as resolveChannelResetConfig, P as resolveSessionResetPolicy, R as resolveFreshSessionTotalTokens, S as archiveSessionTranscripts, V as resolveExplicitAgentSessionKey, W as deriveSessionMetaPatch, X as resolveSessionLockMaxHoldFromTimeout, _ as mergeDeliveryContext, a as resolveAndPersistSessionFile, b as normalizeAccountId$3, c as recordSessionMetaFromInbound, d as updateSessionStore, f as updateSessionStoreEntry, g as deliveryContextKey, h as deliveryContextFromSession, j as resolveSessionKey, m as resolveCacheTtlMs$1, n as parseSessionThreadInfo, o as loadSessionStore, p as isCacheEnabled, q as resolveGroupSessionKey, r as appendAssistantMessageToSessionTranscript, s as readSessionUpdatedAt, t as extractDeliveryInfo, u as updateLastRoute, v as normalizeDeliveryContext, y as normalizeSessionDeliveryFields, z as canonicalizeMainSessionAlias } from "./sessions-C_c07viS.js";
|
|
39
39
|
import { a as resolveChannelGroupRequireMention, c as normalizeHyphenSlug, i as resolveChannelGroupPolicy, l as normalizeStringEntries, n as listChannelDocks, r as normalizeSignalMessagingTarget, s as normalizeAtHashSlug, t as getChannelDock, u as normalizeStringEntriesLower } from "./dock-BhS32F6E.js";
|
|
40
40
|
import { _ as listEnabledDiscordAccounts, a as isWhatsAppGroupJid, c as listEnabledTelegramAccounts, d as resolveTelegramToken, f as resolveSlackAccount, g as createDiscordActionGate, h as resolveSlackBotToken, l as listTelegramAccountIds, m as resolveSlackAppToken, n as listChannelPlugins, o as normalizeWhatsAppTarget, r as normalizeChannelId$1, s as createTelegramActionGate, t as getChannelPlugin, u as resolveTelegramAccount, v as resolveDiscordAccount, y as normalizeDiscordToken } from "./plugins-DKDeQZF0.js";
|
|
41
41
|
import { a as logWebSelfId, i as getWebAuthAgeMs, m as webAuthExists, n as resolveWhatsAppAccount, o as logoutWeb, u as readWebSelfId } from "./accounts-DDuIpcln.js";
|
|
42
42
|
import { t as resolveIMessageAccount } from "./accounts-bK-Yqdwx.js";
|
|
43
43
|
import { n as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-DyJN4_vR.js";
|
|
44
|
-
import { a as resolveSlackWebClientOptions, c as buildSlackBlocksFallbackText, i as createSlackWebClient, l as parseSlackTarget, o as parseSlackBlocksInput, s as validateSlackBlocksArray, t as sendMessageSlack, u as resolveSlackChannelId } from "./send-
|
|
44
|
+
import { a as resolveSlackWebClientOptions, c as buildSlackBlocksFallbackText, i as createSlackWebClient, l as parseSlackTarget, o as parseSlackBlocksInput, s as validateSlackBlocksArray, t as sendMessageSlack, u as resolveSlackChannelId } from "./send-TtpoiB7G.js";
|
|
45
45
|
import { c as resolveStorePath, i as resolveSessionTranscriptPath, n as resolveSessionFilePath, r as resolveSessionFilePathOptions, t as resolveDefaultSessionStorePath } from "./paths-CyhzMxFA.js";
|
|
46
46
|
import { i as normalizeInputProvenance, n as applyInputProvenanceToUserMessage, r as hasInterSessionUserProvenance } from "./input-provenance-BzbXHcaD.js";
|
|
47
47
|
import { t as emitSessionTranscriptUpdate } from "./transcript-events-DdnTeoR1.js";
|
|
@@ -51,50 +51,50 @@ import { n as fetchWithTimeout, t as bindAbortRelay } from "./fetch-timeout-Db3d
|
|
|
51
51
|
import { t as fetchWithSsrFGuard } from "./fetch-guard-DOPkVbh3.js";
|
|
52
52
|
import { a as readResponseWithLimit, i as fetchRemoteMedia, n as getDefaultMediaLocalRoots, t as getAgentScopedMediaLocalRoots } from "./local-roots-aAFLQGkY.js";
|
|
53
53
|
import { v as runTasksWithConcurrency } from "./sqlite-Dx3J_aSE.js";
|
|
54
|
-
import { n as loadModelCatalog, r as modelSupportsVision, t as findModelInCatalog } from "./model-catalog-
|
|
54
|
+
import { n as loadModelCatalog, r as modelSupportsVision, t as findModelInCatalog } from "./model-catalog-jhBOlBYp.js";
|
|
55
55
|
import { a as isSilentReplyText, i as isSilentReplyPrefixText, n as SILENT_REPLY_TOKEN, r as SYMIPULSE_TOKEN, t as HEARTBEAT_TOKEN } from "./tokens-BuceUQDl.js";
|
|
56
|
-
import { n as createBrowserRouteDispatcher, r as getMachineDisplayName, t as withTimeout$4 } from "./with-timeout-
|
|
57
|
-
import { C as getGlobalHookRunner, S as throwIfAborted, _ as normalizeTargetForProvider, a as normalizeOutboundPayloadsForJson, b as splitMediaFromOutput, c as applyReplyThreading, d as isRenderablePayload, f as shouldSuppressMessagingToolReplies, g as normalizeChannelTargetInput, h as buildTargetResolverSignature, i as normalizeOutboundPayloads, l as filterMessagingToolDuplicates, m as resolveReplyToMode, o as normalizeReplyPayloadsForDelivery, p as createReplyToModeFilterForChannel, r as formatOutboundPayloadLog, s as applyReplyTagsToPayload, t as deliverOutboundPayloads, u as filterMessagingToolMediaDuplicates, v as parseReplyDirectives, w as initializeGlobalHookRunner, x as parseInlineDirectives$1, y as MEDIA_TOKEN_RE } from "./deliver-
|
|
56
|
+
import { n as createBrowserRouteDispatcher, r as getMachineDisplayName, t as withTimeout$4 } from "./with-timeout-CiGZZ4b2.js";
|
|
57
|
+
import { C as getGlobalHookRunner, S as throwIfAborted, _ as normalizeTargetForProvider, a as normalizeOutboundPayloadsForJson, b as splitMediaFromOutput, c as applyReplyThreading, d as isRenderablePayload, f as shouldSuppressMessagingToolReplies, g as normalizeChannelTargetInput, h as buildTargetResolverSignature, i as normalizeOutboundPayloads, l as filterMessagingToolDuplicates, m as resolveReplyToMode, o as normalizeReplyPayloadsForDelivery, p as createReplyToModeFilterForChannel, r as formatOutboundPayloadLog, s as applyReplyTagsToPayload, t as deliverOutboundPayloads, u as filterMessagingToolMediaDuplicates, v as parseReplyDirectives, w as initializeGlobalHookRunner, x as parseInlineDirectives$1, y as MEDIA_TOKEN_RE } from "./deliver-C0Azi_cK.js";
|
|
58
58
|
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-DjBRPfu9.js";
|
|
59
59
|
import { r as getDiagnosticSessionState } from "./diagnostic-session-state-CUslJyKP.js";
|
|
60
|
-
import { A as hasBotMention, B as resolveSenderAllowMatch, C as buildTelegramGroupPeerId, D as describeReplyTarget, E as buildTypingThreadParams, F as resolveTelegramReplyId, G as toLocationContext, H as isSenderIdAllowed, I as resolveTelegramStreamMode, J as parseTelegramTarget, K as withTelegramApiErrorLogging, L as resolveTelegramThreadSpec, M as resolveTelegramForumThreadId, N as resolveTelegramGroupAllowFromContext, O as expandTextLinks, P as resolveTelegramMediaPlaceholder, R as isSenderAllowed$1, S as buildTelegramGroupFrom, T as buildTelegramThreadParams, U as mergeAllowFromSources, V as firstDefined$1, W as formatLocationText, Y as resolveTelegramTargetChatType, _ as resolveTelegramFetch, a as reactMessageTelegram, b as buildSenderLabel, c as sendStickerTelegram, d as wasSentByBot, f as isRecoverableTelegramNetworkError, g as wrapFileReferencesInHtml, h as renderTelegramHtmlText, i as editMessageTelegram, j as normalizeForwardedContext, k as extractTelegramLocation, m as markdownToTelegramHtml, n as createForumTopicTelegram, o as sendMessageTelegram, p as markdownToTelegramChunks, q as isVoiceCompatibleAudio, r as deleteMessageTelegram, s as sendPollTelegram, t as buildInlineKeyboard, u as resolveTelegramVoiceSend, v as splitTelegramCaption, w as buildTelegramParentPeer, x as buildSenderName, y as buildGroupLabel, z as normalizeAllowFromWithStore$1 } from "./send-
|
|
61
|
-
import { a as buildModelAliasLines, n as resolveModel } from "./model-
|
|
60
|
+
import { A as hasBotMention, B as resolveSenderAllowMatch, C as buildTelegramGroupPeerId, D as describeReplyTarget, E as buildTypingThreadParams, F as resolveTelegramReplyId, G as toLocationContext, H as isSenderIdAllowed, I as resolveTelegramStreamMode, J as parseTelegramTarget, K as withTelegramApiErrorLogging, L as resolveTelegramThreadSpec, M as resolveTelegramForumThreadId, N as resolveTelegramGroupAllowFromContext, O as expandTextLinks, P as resolveTelegramMediaPlaceholder, R as isSenderAllowed$1, S as buildTelegramGroupFrom, T as buildTelegramThreadParams, U as mergeAllowFromSources, V as firstDefined$1, W as formatLocationText, Y as resolveTelegramTargetChatType, _ as resolveTelegramFetch, a as reactMessageTelegram, b as buildSenderLabel, c as sendStickerTelegram, d as wasSentByBot, f as isRecoverableTelegramNetworkError, g as wrapFileReferencesInHtml, h as renderTelegramHtmlText, i as editMessageTelegram, j as normalizeForwardedContext, k as extractTelegramLocation, m as markdownToTelegramHtml, n as createForumTopicTelegram, o as sendMessageTelegram, p as markdownToTelegramChunks, q as isVoiceCompatibleAudio, r as deleteMessageTelegram, s as sendPollTelegram, t as buildInlineKeyboard, u as resolveTelegramVoiceSend, v as splitTelegramCaption, w as buildTelegramParentPeer, x as buildSenderName, y as buildGroupLabel, z as normalizeAllowFromWithStore$1 } from "./send-BxkOVx17.js";
|
|
61
|
+
import { a as buildModelAliasLines, n as resolveModel } from "./model-ApXxvnzl.js";
|
|
62
62
|
import { a as resolveAgentIdentity, i as resolveAckReaction, o as resolveEffectiveMessagesConfig, r as resolveResponsePrefixTemplate, s as resolveHumanDelayConfig, t as createReplyPrefixOptions } from "./reply-prefix-CE2YmmsD.js";
|
|
63
|
-
import { i as resolveMemoryBackendConfig, n as registerMemoryCli, r as getMemorySearchManager } from "./memory-cli-
|
|
64
|
-
import { i as resolveMemorySearchConfig } from "./manager-
|
|
63
|
+
import { i as resolveMemoryBackendConfig, n as registerMemoryCli, r as getMemorySearchManager } from "./memory-cli-D5iikkSG.js";
|
|
64
|
+
import { i as resolveMemorySearchConfig } from "./manager-D0d-bOOe.js";
|
|
65
65
|
import { n as retryAsync } from "./retry-BoS4e4X_.js";
|
|
66
66
|
import { c as imageResultFromFile, d as readNumberParam, f as readReactionParams, h as readStringParam, l as jsonResult, m as readStringOrNumberParam, n as missingTargetError, o as createActionGate, p as readStringArrayParam, r as unknownTargetError, s as imageResult, t as ambiguousTargetError, u as parseAvailableTags } from "./target-errors-7AvoVa10.js";
|
|
67
67
|
import { a as chunkText, c as resolveChunkMode, d as isSafeFenceBreak, f as parseFenceSpans, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, o as chunkTextWithMode, r as chunkMarkdownText, t as chunkByNewline, u as findFenceSpanAt } from "./chunk-1dhPX1NK.js";
|
|
68
68
|
import { n as resolveMarkdownTableMode } from "./markdown-tables-CEbN0fEm.js";
|
|
69
69
|
import { a as loadWebMedia, i as getDefaultLocalRoots } from "./ir-DZam9q5M.js";
|
|
70
70
|
import { a as resolveNativeSkillsEnabled, i as resolveNativeCommandsEnabled, n as isNativeCommandsExplicitlyDisabled, r as isRestartEnabled, t as isCommandFlagEnabled } from "./commands-BNLCWX6e.js";
|
|
71
|
-
import { a as listChatCommandsForConfig, c as normalizeCommandBody, d as resolveCommandArgMenu, f as serializeCommandArgs, i as listChatCommands, l as parseCommandArgs, o as listNativeCommandSpecs, p as shouldHandleTextCommands, r as findCommandByNativeName, s as listNativeCommandSpecsForConfig, t as buildCommandTextFromArgs, u as resolveCommandArgChoices } from "./commands-registry-
|
|
71
|
+
import { a as listChatCommandsForConfig, c as normalizeCommandBody, d as resolveCommandArgMenu, f as serializeCommandArgs, i as listChatCommands, l as parseCommandArgs, o as listNativeCommandSpecs, p as shouldHandleTextCommands, r as findCommandByNativeName, s as listNativeCommandSpecsForConfig, t as buildCommandTextFromArgs, u as resolveCommandArgChoices } from "./commands-registry-B_V42ZiZ.js";
|
|
72
72
|
import { Mt as SESSION_LABEL_MAX_LENGTH, t as GatewayClient } from "./client-CQSyCS4M.js";
|
|
73
|
-
import { a as randomIdempotencyKey, d as resolveLeastPrivilegeOperatorScopesForMethod, n as callGateway, r as callGatewayLeastPrivilege, t as buildGatewayConnectionDetails } from "./call-
|
|
73
|
+
import { a as randomIdempotencyKey, d as resolveLeastPrivilegeOperatorScopesForMethod, n as callGateway, r as callGatewayLeastPrivilege, t as buildGatewayConnectionDetails } from "./call-Cspuh_Jh.js";
|
|
74
74
|
import { n as formatTimeAgo } from "./format-relative-BXoxEQVN.js";
|
|
75
75
|
import { n as normalizePollInput } from "./polls-DhH5YkzN.js";
|
|
76
76
|
import { n as recordChannelActivity, r as createDiscordRetryRunner, t as getChannelActivity } from "./channel-activity-BOiuJS3t.js";
|
|
77
77
|
import { n as wrapFetchWithAbortSignal, t as resolveFetch } from "./fetch-DTNGXEzX.js";
|
|
78
78
|
import { t as convertMarkdownTables } from "./tables-BEzT0Da4.js";
|
|
79
|
-
import { c as signalRpcRequest, l as streamSignalEvents, n as sendReadReceiptSignal, o as resolveSignalRpcContext, r as sendTypingSignal, s as signalCheck, t as sendMessageSignal } from "./send-
|
|
80
|
-
import { i as readChannelAllowFromStore, l as listPairingChannels, o as removeChannelAllowFromStoreEntry, s as upsertChannelPairingRequest, t as addChannelAllowFromStoreEntry } from "./pairing-store-
|
|
79
|
+
import { c as signalRpcRequest, l as streamSignalEvents, n as sendReadReceiptSignal, o as resolveSignalRpcContext, r as sendTypingSignal, s as signalCheck, t as sendMessageSignal } from "./send-DVNiZsde.js";
|
|
80
|
+
import { i as readChannelAllowFromStore, l as listPairingChannels, o as removeChannelAllowFromStoreEntry, s as upsertChannelPairingRequest, t as addChannelAllowFromStoreEntry } from "./pairing-store-DdUVpKvp.js";
|
|
81
81
|
import { t as makeProxyFetch } from "./proxy-DU7W9XSc.js";
|
|
82
82
|
import { i as formatDurationSeconds, r as formatDurationPrecise, t as formatDurationCompact$1 } from "./format-duration-D0B0Uo-I.js";
|
|
83
83
|
import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-BMoTaVAH.js";
|
|
84
|
-
import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-
|
|
85
|
-
import { b as ensureSkillsWatcher, i as resolveSkillCommandInvocation, n as listSkillCommandsForAgents, o as getRemoteSkillEligibility, r as listSkillCommandsForWorkspace, t as listReservedChatSlashCommandNames, x as getSkillsSnapshotVersion } from "./skill-commands-
|
|
84
|
+
import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-CHirod5x.js";
|
|
85
|
+
import { b as ensureSkillsWatcher, i as resolveSkillCommandInvocation, n as listSkillCommandsForAgents, o as getRemoteSkillEligibility, r as listSkillCommandsForWorkspace, t as listReservedChatSlashCommandNames, x as getSkillsSnapshotVersion } from "./skill-commands-CSBmZ_di.js";
|
|
86
86
|
import { c as hasNonzeroUsage, l as normalizeUsage, n as loadCostUsageSummary, o as derivePromptTokens, r as loadSessionCostSummary, s as deriveSessionTotalTokens } from "./session-cost-usage-BG4AXrGN.js";
|
|
87
|
-
import { a as normalizeIMessageHandle, c as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, i as isAllowedIMessageSender, o as parseIMessageTarget, r as formatIMessageChatTarget, s as createIMessageRpcClient, t as sendMessageIMessage } from "./send-
|
|
88
|
-
import { r as detectBinary } from "./onboard-helpers-
|
|
89
|
-
import { t as resolvePairingIdLabel } from "./pairing-labels-
|
|
87
|
+
import { a as normalizeIMessageHandle, c as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, i as isAllowedIMessageSender, o as parseIMessageTarget, r as formatIMessageChatTarget, s as createIMessageRpcClient, t as sendMessageIMessage } from "./send-Dfum4W06.js";
|
|
88
|
+
import { r as detectBinary } from "./onboard-helpers-DIAvDwi8.js";
|
|
89
|
+
import { t as resolvePairingIdLabel } from "./pairing-labels-Ca15tgVV.js";
|
|
90
90
|
import { i as resolveModelCostConfig, n as formatTokenCount$2, r as formatUsd, t as estimateUsageCost } from "./usage-format-BzKEDn0q.js";
|
|
91
91
|
import { t as getActiveWebListener } from "./active-listener-kvXhlgwu.js";
|
|
92
92
|
import { _ as getTrustedSafeBinDirs, b as buildSafeShellCommand, d as resolveExecApprovals, f as resolveExecApprovalsFromFile, g as resolveSafeBins, h as evaluateShellAllowlist, i as maxAsk, l as recordAllowlistUse, n as addAllowlistEntry, o as minSecurity, u as requiresExecApproval, y as buildSafeBinsShellCommand } from "./exec-approvals-Kn31mBcW.js";
|
|
93
93
|
import { a as canvasSnapshotTempPath, c as parseCameraClipPayload, d as writeCameraClipPayloadToFile, f as writeUrlToFile, g as normalizePathPrepend, h as mergePathPrepend, i as parseEnvPairs, l as parseCameraSnapPayload, m as applyPathPrepend, n as screenRecordTempPath, o as parseCanvasSnapshotPayload, p as buildNodeShellCommand, r as writeScreenRecordToFile, s as cameraTempPath, t as parseScreenRecordPayload, u as writeBase64ToFile } from "./nodes-screen-VBGXKdLk.js";
|
|
94
94
|
import { n as parseNodeList, r as parsePairingList, t as resolveNodeIdFromCandidates } from "./node-match-CN8o4Vi3.js";
|
|
95
95
|
import { n as recordCommandPoll, r as resetCommandPollCount } from "./command-poll-backoff-BiwOFDEK.js";
|
|
96
|
-
import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, n as isToolAllowedByPolicies, r as resolveEffectiveToolPolicy, t as filterToolsByPolicy } from "./pi-tools.policy-
|
|
97
|
-
import { n as createBrowserControlContext, r as startBrowserControlServiceFromConfig } from "./control-service-
|
|
96
|
+
import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, n as isToolAllowedByPolicies, r as resolveEffectiveToolPolicy, t as filterToolsByPolicy } from "./pi-tools.policy-BJ7mumw5.js";
|
|
97
|
+
import { n as createBrowserControlContext, r as startBrowserControlServiceFromConfig } from "./control-service-BwrQoUMh.js";
|
|
98
98
|
import { i as parseAbsoluteTimeMs, r as resolveDefaultCronStaggerMs, t as normalizeCronStaggerMs } from "./stagger-BUClb97_.js";
|
|
99
99
|
import { c as resolveGatewayLaunchAgentLabel, d as resolveGatewaySystemdServiceName } from "./constants-C8_BLnaW.js";
|
|
100
100
|
import { n as resolveMessageChannelSelection, t as listConfiguredMessageChannels } from "./channel-selection-DuWs0Aak.js";
|
|
@@ -451,6 +451,8 @@ function resolveAgentTimeoutMs(opts) {
|
|
|
451
451
|
if (overrideSeconds < 0) return defaultMs;
|
|
452
452
|
return clampTimeoutMs(overrideSeconds * 1e3);
|
|
453
453
|
}
|
|
454
|
+
const modelSeconds = normalizeNumber(opts.modelTimeoutSeconds);
|
|
455
|
+
if (modelSeconds !== void 0 && modelSeconds > 0) return clampTimeoutMs(modelSeconds * 1e3);
|
|
454
456
|
return defaultMs;
|
|
455
457
|
}
|
|
456
458
|
|
|
@@ -2891,7 +2893,7 @@ async function createModelSelectionState(params) {
|
|
|
2891
2893
|
}
|
|
2892
2894
|
}
|
|
2893
2895
|
if (sessionEntry && sessionStore && sessionKey && sessionEntry.authProfileOverride) {
|
|
2894
|
-
const { ensureAuthProfileStore } = await import("./model-selection-
|
|
2896
|
+
const { ensureAuthProfileStore } = await import("./model-selection-BBrZnKDw.js").then((n) => n.dt);
|
|
2895
2897
|
const profile = ensureAuthProfileStore(void 0, { allowKeychainPrompt: false }).profiles[sessionEntry.authProfileOverride];
|
|
2896
2898
|
const providerKey = normalizeProviderId(provider);
|
|
2897
2899
|
if (!profile || normalizeProviderId(profile.provider) !== providerKey) await clearSessionAuthProfileOverride({
|
|
@@ -10413,7 +10415,7 @@ async function routeReply(params) {
|
|
|
10413
10415
|
const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
|
|
10414
10416
|
const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
|
|
10415
10417
|
try {
|
|
10416
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
10418
|
+
const { deliverOutboundPayloads } = await import("./deliver-C0Azi_cK.js").then((n) => n.n);
|
|
10417
10419
|
return {
|
|
10418
10420
|
ok: true,
|
|
10419
10421
|
messageId: (await deliverOutboundPayloads({
|
|
@@ -12963,7 +12965,7 @@ async function describeStickerImage(params) {
|
|
|
12963
12965
|
logVerbose(`telegram: describing sticker with ${provider}/${model}`);
|
|
12964
12966
|
try {
|
|
12965
12967
|
const buffer = await fs$1.readFile(imagePath);
|
|
12966
|
-
const { describeImageWithModel } = await import("./image-
|
|
12968
|
+
const { describeImageWithModel } = await import("./image-CNYGLoQl.js").then((n) => n.n);
|
|
12967
12969
|
return (await describeImageWithModel({
|
|
12968
12970
|
buffer,
|
|
12969
12971
|
fileName: "sticker.webp",
|
|
@@ -13386,7 +13388,7 @@ function createWhatsAppLoginTool() {
|
|
|
13386
13388
|
force: Type.Optional(Type.Boolean())
|
|
13387
13389
|
}),
|
|
13388
13390
|
execute: async (_toolCallId, args) => {
|
|
13389
|
-
const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-
|
|
13391
|
+
const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-BSm4xrHW.js");
|
|
13390
13392
|
if ((args?.action ?? "start") === "wait") {
|
|
13391
13393
|
const result = await waitForWebLogin({ timeoutMs: typeof args.timeoutMs === "number" ? args.timeoutMs : void 0 });
|
|
13392
13394
|
return {
|
|
@@ -15602,7 +15604,7 @@ async function preflightDiscordMessage(params) {
|
|
|
15602
15604
|
let preflightTranscript;
|
|
15603
15605
|
const hasAudioAttachment = message.attachments?.some((att) => att.contentType?.startsWith("audio/"));
|
|
15604
15606
|
if (!isDirectMessage && shouldRequireMention && hasAudioAttachment && !baseText && mentionRegexes.length > 0) try {
|
|
15605
|
-
const { transcribeFirstAudio } = await import("./audio-preflight-
|
|
15607
|
+
const { transcribeFirstAudio } = await import("./audio-preflight-DCHBMKWE.js");
|
|
15606
15608
|
const audioPaths = message.attachments?.filter((att) => att.contentType?.startsWith("audio/")).map((att) => att.url) ?? [];
|
|
15607
15609
|
if (audioPaths.length > 0) preflightTranscript = await transcribeFirstAudio({
|
|
15608
15610
|
ctx: {
|
|
@@ -20900,8 +20902,8 @@ function buildMemorySection(params) {
|
|
|
20900
20902
|
lines.push("");
|
|
20901
20903
|
return lines;
|
|
20902
20904
|
}
|
|
20903
|
-
function buildUserIdentitySection(ownerLine, isMinimal) {
|
|
20904
|
-
if (!ownerLine || isMinimal) return [];
|
|
20905
|
+
function buildUserIdentitySection(ownerLine, isMinimal, isCoding) {
|
|
20906
|
+
if (!ownerLine || isMinimal || isCoding) return [];
|
|
20905
20907
|
return [
|
|
20906
20908
|
"## Authorized Senders",
|
|
20907
20909
|
ownerLine,
|
|
@@ -20925,8 +20927,8 @@ function buildTimeSection(params) {
|
|
|
20925
20927
|
""
|
|
20926
20928
|
];
|
|
20927
20929
|
}
|
|
20928
|
-
function buildReplyTagsSection(isMinimal) {
|
|
20929
|
-
if (isMinimal) return [];
|
|
20930
|
+
function buildReplyTagsSection(isMinimal, isCoding) {
|
|
20931
|
+
if (isMinimal || isCoding) return [];
|
|
20930
20932
|
return [
|
|
20931
20933
|
"## Reply Tags",
|
|
20932
20934
|
"To request a native reply/quote on supported surfaces, include one tag in your reply:",
|
|
@@ -20939,7 +20941,7 @@ function buildReplyTagsSection(isMinimal) {
|
|
|
20939
20941
|
];
|
|
20940
20942
|
}
|
|
20941
20943
|
function buildMessagingSection(params) {
|
|
20942
|
-
if (params.isMinimal) return [];
|
|
20944
|
+
if (params.isMinimal || params.isCoding) return [];
|
|
20943
20945
|
return [
|
|
20944
20946
|
"## Messaging",
|
|
20945
20947
|
"- Reply in current session → automatically routes to the source channel (Signal, Telegram, etc.)",
|
|
@@ -20962,7 +20964,7 @@ function buildMessagingSection(params) {
|
|
|
20962
20964
|
];
|
|
20963
20965
|
}
|
|
20964
20966
|
function buildVoiceSection(params) {
|
|
20965
|
-
if (params.isMinimal) return [];
|
|
20967
|
+
if (params.isMinimal || params.isCoding) return [];
|
|
20966
20968
|
const hint = params.ttsHint?.trim();
|
|
20967
20969
|
if (!hint) return [];
|
|
20968
20970
|
return [
|
|
@@ -20971,6 +20973,71 @@ function buildVoiceSection(params) {
|
|
|
20971
20973
|
""
|
|
20972
20974
|
];
|
|
20973
20975
|
}
|
|
20976
|
+
function buildVerifyYourWorkSection(params) {
|
|
20977
|
+
if (params.isMinimal) return [];
|
|
20978
|
+
const exec = params.execToolName;
|
|
20979
|
+
const read = params.readToolName;
|
|
20980
|
+
return [
|
|
20981
|
+
"## Verify Your Work",
|
|
20982
|
+
[
|
|
20983
|
+
"Before delivering any code, script, configuration, or technical artifact, you MUST perform a structured verification pass.",
|
|
20984
|
+
"Skipping verification is the single most common cause of incomplete or broken outputs.",
|
|
20985
|
+
"Treat this section as mandatory for every coding task, not optional polish."
|
|
20986
|
+
].join(" "),
|
|
20987
|
+
"",
|
|
20988
|
+
"### 1. Re-read the request",
|
|
20989
|
+
[
|
|
20990
|
+
"Before you finalize your response, re-read the user's original message (and any follow-ups) in full.",
|
|
20991
|
+
"Extract every discrete requirement, constraint, and preference they stated.",
|
|
20992
|
+
"Write them down internally as a checklist.",
|
|
20993
|
+
"This catches drift: it is easy to start solving a related-but-different problem mid-task."
|
|
20994
|
+
].join(" "),
|
|
20995
|
+
"",
|
|
20996
|
+
"### 2. Check each requirement against your output",
|
|
20997
|
+
[
|
|
20998
|
+
"Walk through your internal checklist point by point.",
|
|
20999
|
+
"For each requirement, locate the exact lines in your output that satisfy it.",
|
|
21000
|
+
"If you cannot point to concrete lines that fulfill a requirement, the work is not done — go back and address the gap before responding.",
|
|
21001
|
+
"Pay special attention to edge cases, error handling, and boundary conditions the user mentioned."
|
|
21002
|
+
].join(" "),
|
|
21003
|
+
"",
|
|
21004
|
+
"### 3. Run the code",
|
|
21005
|
+
[
|
|
21006
|
+
`Whenever possible, use ${exec} to actually run, compile, lint, or test your code before presenting it.`,
|
|
21007
|
+
"Do not guess whether code works — execute it and observe the result.",
|
|
21008
|
+
"If the code produces errors, fix them and re-run until it succeeds.",
|
|
21009
|
+
"For scripts: run them with representative inputs.",
|
|
21010
|
+
"For libraries/modules: write and execute a minimal smoke test.",
|
|
21011
|
+
"For config files: validate syntax (e.g., json, yaml, toml parsers).",
|
|
21012
|
+
"If execution is genuinely impossible (no runtime available, user explicitly said not to run), state that you were unable to verify execution and explain why."
|
|
21013
|
+
].join(" "),
|
|
21014
|
+
"",
|
|
21015
|
+
"### 4. Include tests when requested",
|
|
21016
|
+
[
|
|
21017
|
+
"If the user asked for tests, they are a hard requirement — not a nice-to-have.",
|
|
21018
|
+
"Deliver the tests alongside the implementation, not as an afterthought.",
|
|
21019
|
+
"Run the tests and confirm they pass before responding.",
|
|
21020
|
+
"If the user did not explicitly ask for tests but the change is non-trivial, consider whether a test would catch a regression and offer one."
|
|
21021
|
+
].join(" "),
|
|
21022
|
+
"",
|
|
21023
|
+
"### 5. Self-review",
|
|
21024
|
+
[
|
|
21025
|
+
`After everything above, use ${read} to re-read any files you created or modified.`,
|
|
21026
|
+
"Look at them with fresh eyes as if reviewing someone else's code.",
|
|
21027
|
+
"Check for: typos, missing imports, unused variables, inconsistent naming, hardcoded values that should be configurable, incomplete error handling, and security issues (exposed secrets, injection vectors, missing input validation).",
|
|
21028
|
+
"If you find problems during self-review, fix them, re-run verification, and only then respond."
|
|
21029
|
+
].join(" "),
|
|
21030
|
+
"",
|
|
21031
|
+
"### Verification failures",
|
|
21032
|
+
[
|
|
21033
|
+
"If any step above reveals a gap, do NOT respond with a partial answer and a disclaimer.",
|
|
21034
|
+
"Instead, fix the issue silently and re-verify.",
|
|
21035
|
+
"The user should receive working, complete output — not a draft with known issues.",
|
|
21036
|
+
"Only flag genuinely unresolvable ambiguities (where you need the user's decision to proceed)."
|
|
21037
|
+
].join(" "),
|
|
21038
|
+
""
|
|
21039
|
+
];
|
|
21040
|
+
}
|
|
20974
21041
|
function buildDocsSection(params) {
|
|
20975
21042
|
const docsPath = params.docsPath?.trim();
|
|
20976
21043
|
if (!docsPath || params.isMinimal) return [];
|
|
@@ -21095,6 +21162,7 @@ function buildAgentSystemPrompt(params) {
|
|
|
21095
21162
|
const messageChannelOptions = listDeliverableMessageChannels().join("|");
|
|
21096
21163
|
const promptMode = params.promptMode ?? "full";
|
|
21097
21164
|
const isMinimal = promptMode === "minimal" || promptMode === "none";
|
|
21165
|
+
const isCoding = promptMode === "coding";
|
|
21098
21166
|
const sandboxContainerWorkspace = params.sandboxInfo?.containerWorkspaceDir?.trim();
|
|
21099
21167
|
const sanitizedWorkspaceDir = sanitizeForPromptLiteral(params.workspaceDir);
|
|
21100
21168
|
const sanitizedSandboxContainerWorkspace = sandboxContainerWorkspace ? sanitizeForPromptLiteral(sandboxContainerWorkspace) : "";
|
|
@@ -21171,19 +21239,19 @@ function buildAgentSystemPrompt(params) {
|
|
|
21171
21239
|
"",
|
|
21172
21240
|
...skillsSection,
|
|
21173
21241
|
...memorySection,
|
|
21174
|
-
hasGateway && !isMinimal ? "## Symi Self-Update" : "",
|
|
21175
|
-
hasGateway && !isMinimal ? [
|
|
21242
|
+
hasGateway && !isMinimal && !isCoding ? "## Symi Self-Update" : "",
|
|
21243
|
+
hasGateway && !isMinimal && !isCoding ? [
|
|
21176
21244
|
"Get Updates (self-update) is ONLY allowed when the user explicitly asks for it.",
|
|
21177
21245
|
"Do not run config.apply or update.run unless the user explicitly requests an update or config change; if it's not explicit, ask first.",
|
|
21178
21246
|
"Actions: config.get, config.schema, config.apply (validate + write full config, then restart), update.run (update deps or git, then restart).",
|
|
21179
21247
|
"After restart, Symi pings the last active session automatically."
|
|
21180
21248
|
].join("\n") : "",
|
|
21181
|
-
hasGateway && !isMinimal ? "" : "",
|
|
21249
|
+
hasGateway && !isMinimal && !isCoding ? "" : "",
|
|
21182
21250
|
"",
|
|
21183
|
-
params.modelAliasLines && params.modelAliasLines.length > 0 && !isMinimal ? "## Model Aliases" : "",
|
|
21184
|
-
params.modelAliasLines && params.modelAliasLines.length > 0 && !isMinimal ? "Prefer aliases when specifying model overrides; full provider/model is also accepted." : "",
|
|
21185
|
-
params.modelAliasLines && params.modelAliasLines.length > 0 && !isMinimal ? params.modelAliasLines.join("\n") : "",
|
|
21186
|
-
params.modelAliasLines && params.modelAliasLines.length > 0 && !isMinimal ? "" : "",
|
|
21251
|
+
params.modelAliasLines && params.modelAliasLines.length > 0 && !isMinimal && !isCoding ? "## Model Aliases" : "",
|
|
21252
|
+
params.modelAliasLines && params.modelAliasLines.length > 0 && !isMinimal && !isCoding ? "Prefer aliases when specifying model overrides; full provider/model is also accepted." : "",
|
|
21253
|
+
params.modelAliasLines && params.modelAliasLines.length > 0 && !isMinimal && !isCoding ? params.modelAliasLines.join("\n") : "",
|
|
21254
|
+
params.modelAliasLines && params.modelAliasLines.length > 0 && !isMinimal && !isCoding ? "" : "",
|
|
21187
21255
|
userTimezone ? "If you need the current date, time, or day of week, run session_status (📊 session_status)." : "",
|
|
21188
21256
|
"## Workspace",
|
|
21189
21257
|
`Your working directory is: ${displayWorkspaceDir}`,
|
|
@@ -21191,6 +21259,11 @@ function buildAgentSystemPrompt(params) {
|
|
|
21191
21259
|
...workspaceNotes,
|
|
21192
21260
|
"",
|
|
21193
21261
|
...docsSection,
|
|
21262
|
+
...buildVerifyYourWorkSection({
|
|
21263
|
+
isMinimal,
|
|
21264
|
+
execToolName,
|
|
21265
|
+
readToolName
|
|
21266
|
+
}),
|
|
21194
21267
|
params.sandboxInfo?.enabled ? "## Sandbox" : "",
|
|
21195
21268
|
params.sandboxInfo?.enabled ? [
|
|
21196
21269
|
"You are running in a sandboxed runtime (tools execute in Docker).",
|
|
@@ -21208,14 +21281,15 @@ function buildAgentSystemPrompt(params) {
|
|
|
21208
21281
|
params.sandboxInfo.elevated?.allowed ? `Current elevated level: ${params.sandboxInfo.elevated.defaultLevel} (ask runs exec on host with approvals; full auto-approves).` : ""
|
|
21209
21282
|
].filter(Boolean).join("\n") : "",
|
|
21210
21283
|
params.sandboxInfo?.enabled ? "" : "",
|
|
21211
|
-
...buildUserIdentitySection(ownerLine, isMinimal),
|
|
21284
|
+
...buildUserIdentitySection(ownerLine, isMinimal, isCoding),
|
|
21212
21285
|
...buildTimeSection({ userTimezone }),
|
|
21213
21286
|
"## Workspace Files (injected)",
|
|
21214
21287
|
"These user-editable files are loaded by Symi and included below in Project Context.",
|
|
21215
21288
|
"",
|
|
21216
|
-
...buildReplyTagsSection(isMinimal),
|
|
21289
|
+
...buildReplyTagsSection(isMinimal, isCoding),
|
|
21217
21290
|
...buildMessagingSection({
|
|
21218
21291
|
isMinimal,
|
|
21292
|
+
isCoding,
|
|
21219
21293
|
availableTools,
|
|
21220
21294
|
messageChannelOptions,
|
|
21221
21295
|
inlineButtonsEnabled,
|
|
@@ -21224,6 +21298,7 @@ function buildAgentSystemPrompt(params) {
|
|
|
21224
21298
|
}),
|
|
21225
21299
|
...buildVoiceSection({
|
|
21226
21300
|
isMinimal,
|
|
21301
|
+
isCoding,
|
|
21227
21302
|
ttsHint: params.ttsHint
|
|
21228
21303
|
})
|
|
21229
21304
|
];
|
|
@@ -21263,8 +21338,8 @@ function buildAgentSystemPrompt(params) {
|
|
|
21263
21338
|
lines.push("");
|
|
21264
21339
|
for (const file of validContextFiles) lines.push(`## ${file.path}`, "", file.content, "");
|
|
21265
21340
|
}
|
|
21266
|
-
if (!isMinimal) lines.push("## Silent Replies", `When you have nothing to say, respond with ONLY: ${SILENT_REPLY_TOKEN}`, "", "⚠️ Rules:", "- It must be your ENTIRE message — nothing else", `- Never append it to an actual response (never include "${SILENT_REPLY_TOKEN}" in real replies)`, "- Never wrap it in markdown or code blocks", "", `❌ Wrong: "Here's help... ${SILENT_REPLY_TOKEN}"`, `❌ Wrong: "${SILENT_REPLY_TOKEN}"`, `✅ Right: ${SILENT_REPLY_TOKEN}`, "");
|
|
21267
|
-
if (!isMinimal) lines.push("## Heartbeats", heartbeatPromptLine, "If you receive a heartbeat poll (a user message matching the heartbeat prompt above), and there is nothing that needs attention, reply exactly:", "SYMIPULSE_OK", "Symi treats a leading/trailing \"SYMIPULSE_OK\" as a heartbeat ack (and may discard it).", "If something needs attention, do NOT include \"SYMIPULSE_OK\"; reply with the alert text instead.", "");
|
|
21341
|
+
if (!isMinimal && !isCoding) lines.push("## Silent Replies", `When you have nothing to say, respond with ONLY: ${SILENT_REPLY_TOKEN}`, "", "⚠️ Rules:", "- It must be your ENTIRE message — nothing else", `- Never append it to an actual response (never include "${SILENT_REPLY_TOKEN}" in real replies)`, "- Never wrap it in markdown or code blocks", "", `❌ Wrong: "Here's help... ${SILENT_REPLY_TOKEN}"`, `❌ Wrong: "${SILENT_REPLY_TOKEN}"`, `✅ Right: ${SILENT_REPLY_TOKEN}`, "");
|
|
21342
|
+
if (!isMinimal && !isCoding) lines.push("## Heartbeats", heartbeatPromptLine, "If you receive a heartbeat poll (a user message matching the heartbeat prompt above), and there is nothing that needs attention, reply exactly:", "SYMIPULSE_OK", "Symi treats a leading/trailing \"SYMIPULSE_OK\" as a heartbeat ack (and may discard it).", "If something needs attention, do NOT include \"SYMIPULSE_OK\"; reply with the alert text instead.", "");
|
|
21268
21343
|
lines.push("## Runtime", buildRuntimeLine(runtimeInfo, runtimeChannel, runtimeCapabilities, params.defaultThinkLevel), `Reasoning: ${reasoningLevel} (hidden unless on/stream). Toggle /reasoning; /status shows Reasoning when enabled.`);
|
|
21269
21344
|
return lines.filter(Boolean).join("\n");
|
|
21270
21345
|
}
|
|
@@ -22291,27 +22366,27 @@ async function runWithImageModelFallback(params) {
|
|
|
22291
22366
|
function createDefaultDeps() {
|
|
22292
22367
|
return {
|
|
22293
22368
|
sendMessageWhatsApp: async (...args) => {
|
|
22294
|
-
const { sendMessageWhatsApp } = await import("./web-
|
|
22369
|
+
const { sendMessageWhatsApp } = await import("./web-DTIV3Lgo.js");
|
|
22295
22370
|
return await sendMessageWhatsApp(...args);
|
|
22296
22371
|
},
|
|
22297
22372
|
sendMessageTelegram: async (...args) => {
|
|
22298
|
-
const { sendMessageTelegram } = await import("./send-
|
|
22373
|
+
const { sendMessageTelegram } = await import("./send-BxkOVx17.js").then((n) => n.l);
|
|
22299
22374
|
return await sendMessageTelegram(...args);
|
|
22300
22375
|
},
|
|
22301
22376
|
sendMessageDiscord: async (...args) => {
|
|
22302
|
-
const { sendMessageDiscord } = await import("./send-
|
|
22377
|
+
const { sendMessageDiscord } = await import("./send-C1fiVl-C.js").then((n) => n.t);
|
|
22303
22378
|
return await sendMessageDiscord(...args);
|
|
22304
22379
|
},
|
|
22305
22380
|
sendMessageSlack: async (...args) => {
|
|
22306
|
-
const { sendMessageSlack } = await import("./send-
|
|
22381
|
+
const { sendMessageSlack } = await import("./send-TtpoiB7G.js").then((n) => n.n);
|
|
22307
22382
|
return await sendMessageSlack(...args);
|
|
22308
22383
|
},
|
|
22309
22384
|
sendMessageSignal: async (...args) => {
|
|
22310
|
-
const { sendMessageSignal } = await import("./send-
|
|
22385
|
+
const { sendMessageSignal } = await import("./send-DVNiZsde.js").then((n) => n.i);
|
|
22311
22386
|
return await sendMessageSignal(...args);
|
|
22312
22387
|
},
|
|
22313
22388
|
sendMessageIMessage: async (...args) => {
|
|
22314
|
-
const { sendMessageIMessage } = await import("./send-
|
|
22389
|
+
const { sendMessageIMessage } = await import("./send-Dfum4W06.js").then((n) => n.n);
|
|
22315
22390
|
return await sendMessageIMessage(...args);
|
|
22316
22391
|
}
|
|
22317
22392
|
};
|
|
@@ -23064,9 +23139,11 @@ async function agentCommand(opts, runtime = defaultRuntime, deps = createDefault
|
|
|
23064
23139
|
const isSubagentLane = (typeof opts.lane === "string" ? opts.lane.trim() : "") === String(AGENT_LANE_SUBAGENT);
|
|
23065
23140
|
const timeoutSecondsRaw = opts.timeout !== void 0 ? Number.parseInt(String(opts.timeout), 10) : isSubagentLane ? 0 : void 0;
|
|
23066
23141
|
if (timeoutSecondsRaw !== void 0 && (Number.isNaN(timeoutSecondsRaw) || timeoutSecondsRaw < 0)) throw new Error("--timeout must be a non-negative integer (seconds; 0 means no timeout)");
|
|
23142
|
+
const primaryModelKey = typeof cfg?.agents?.defaults?.model === "object" ? cfg.agents.defaults.model.primary : void 0;
|
|
23067
23143
|
const timeoutMs = resolveAgentTimeoutMs({
|
|
23068
23144
|
cfg,
|
|
23069
|
-
overrideSeconds: timeoutSecondsRaw
|
|
23145
|
+
overrideSeconds: timeoutSecondsRaw,
|
|
23146
|
+
modelTimeoutSeconds: (primaryModelKey ? cfg?.agents?.defaults?.models?.[primaryModelKey]?.timeoutSeconds : void 0) ?? null
|
|
23070
23147
|
});
|
|
23071
23148
|
const { sessionId, sessionKey, sessionEntry: resolvedSessionEntry, sessionStore, storePath, isNewSession, persistedThinking, persistedVerbose } = resolveSession({
|
|
23072
23149
|
cfg,
|
|
@@ -33458,7 +33535,7 @@ function readSlackExternalArgMenuToken(raw) {
|
|
|
33458
33535
|
}
|
|
33459
33536
|
let commandsRegistry;
|
|
33460
33537
|
async function getCommandsRegistry() {
|
|
33461
|
-
if (!commandsRegistry) commandsRegistry = await import("./commands-registry-
|
|
33538
|
+
if (!commandsRegistry) commandsRegistry = await import("./commands-registry-B_V42ZiZ.js").then((n) => n.n);
|
|
33462
33539
|
return commandsRegistry;
|
|
33463
33540
|
}
|
|
33464
33541
|
function encodeSlackCommandArgValue(parts) {
|
|
@@ -33861,7 +33938,7 @@ async function registerSlackMonitorSlashCommands(params) {
|
|
|
33861
33938
|
});
|
|
33862
33939
|
const deliverSlashPayloads = async (replies) => {
|
|
33863
33940
|
const [{ deliverSlackSlashReplies }, { resolveChunkMode }, { resolveMarkdownTableMode }] = await Promise.all([
|
|
33864
|
-
import("./replies-
|
|
33941
|
+
import("./replies-CHirod5x.js").then((n) => n.r),
|
|
33865
33942
|
import("./chunk-1dhPX1NK.js").then((n) => n.s),
|
|
33866
33943
|
import("./markdown-tables-CEbN0fEm.js").then((n) => n.t)
|
|
33867
33944
|
]);
|
|
@@ -33916,7 +33993,7 @@ async function registerSlackMonitorSlashCommands(params) {
|
|
|
33916
33993
|
let nativeCommands = [];
|
|
33917
33994
|
if (nativeEnabled) {
|
|
33918
33995
|
reg = await getCommandsRegistry();
|
|
33919
|
-
const skillCommands = nativeSkillsEnabled ? (await import("./skill-commands-
|
|
33996
|
+
const skillCommands = nativeSkillsEnabled ? (await import("./skill-commands-CSBmZ_di.js").then((n) => n.a)).listSkillCommandsForAgents({ cfg }) : [];
|
|
33920
33997
|
nativeCommands = reg.listNativeCommandSpecsForConfig(cfg, {
|
|
33921
33998
|
skillCommands,
|
|
33922
33999
|
provider: "slack"
|
|
@@ -38685,7 +38762,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, storeAllowFro
|
|
|
38685
38762
|
const hasAudio = allMedia.some((media) => media.contentType?.startsWith("audio/"));
|
|
38686
38763
|
let preflightTranscript;
|
|
38687
38764
|
if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0) try {
|
|
38688
|
-
const { transcribeFirstAudio } = await import("./audio-preflight-
|
|
38765
|
+
const { transcribeFirstAudio } = await import("./audio-preflight-DCHBMKWE.js");
|
|
38689
38766
|
preflightTranscript = await transcribeFirstAudio({
|
|
38690
38767
|
ctx: {
|
|
38691
38768
|
MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
|
|
@@ -40839,23 +40916,23 @@ let webLoginQrPromise = null;
|
|
|
40839
40916
|
let webChannelPromise = null;
|
|
40840
40917
|
let whatsappActionsPromise = null;
|
|
40841
40918
|
function loadWebOutbound() {
|
|
40842
|
-
webOutboundPromise ??= import("./outbound-
|
|
40919
|
+
webOutboundPromise ??= import("./outbound-DYyGKxSZ.js").then((n) => n.t);
|
|
40843
40920
|
return webOutboundPromise;
|
|
40844
40921
|
}
|
|
40845
40922
|
function loadWebLogin() {
|
|
40846
|
-
webLoginPromise ??= import("./login-
|
|
40923
|
+
webLoginPromise ??= import("./login-BZsZO9ST.js").then((n) => n.n);
|
|
40847
40924
|
return webLoginPromise;
|
|
40848
40925
|
}
|
|
40849
40926
|
function loadWebLoginQr() {
|
|
40850
|
-
webLoginQrPromise ??= import("./login-qr-
|
|
40927
|
+
webLoginQrPromise ??= import("./login-qr-BSm4xrHW.js");
|
|
40851
40928
|
return webLoginQrPromise;
|
|
40852
40929
|
}
|
|
40853
40930
|
function loadWebChannel() {
|
|
40854
|
-
webChannelPromise ??= import("./web-
|
|
40931
|
+
webChannelPromise ??= import("./web-DTIV3Lgo.js");
|
|
40855
40932
|
return webChannelPromise;
|
|
40856
40933
|
}
|
|
40857
40934
|
function loadWhatsAppActions() {
|
|
40858
|
-
whatsappActionsPromise ??= import("./whatsapp-actions-
|
|
40935
|
+
whatsappActionsPromise ??= import("./whatsapp-actions-xhdGIJBd.js");
|
|
40859
40936
|
return whatsappActionsPromise;
|
|
40860
40937
|
}
|
|
40861
40938
|
function createPluginRuntime() {
|
|
@@ -58738,7 +58815,7 @@ async function compactEmbeddedPiSessionDirect(params) {
|
|
|
58738
58815
|
config: params.config
|
|
58739
58816
|
});
|
|
58740
58817
|
const isDefaultAgent = sessionAgentId === defaultAgentId;
|
|
58741
|
-
const promptMode = isSubagentSessionKey(params.sessionKey) || isCronSessionKey(params.sessionKey) ? "minimal" : "full";
|
|
58818
|
+
const promptMode = isSubagentSessionKey(params.sessionKey) || isCronSessionKey(params.sessionKey) ? "minimal" : params.config?.agents?.defaults?.promptMode === "coding" ? "coding" : "full";
|
|
58742
58819
|
const docsPath = await resolveSymiDocsPath({
|
|
58743
58820
|
workspaceDir: effectiveWorkspace,
|
|
58744
58821
|
argv1: process.argv[1],
|
|
@@ -58978,6 +59055,9 @@ function createStreamFnWithExtraParams(baseStreamFn, extraParams, provider) {
|
|
|
58978
59055
|
const streamParams = {};
|
|
58979
59056
|
if (typeof extraParams.temperature === "number") streamParams.temperature = extraParams.temperature;
|
|
58980
59057
|
if (typeof extraParams.maxTokens === "number") streamParams.maxTokens = extraParams.maxTokens;
|
|
59058
|
+
if (typeof extraParams.top_p === "number") streamParams.top_p = extraParams.top_p;
|
|
59059
|
+
if (typeof extraParams.top_k === "number") streamParams.top_k = extraParams.top_k;
|
|
59060
|
+
if (typeof extraParams.repeat_penalty === "number") streamParams.repeat_penalty = extraParams.repeat_penalty;
|
|
58981
59061
|
const cacheRetention = resolveCacheRetention(extraParams, provider);
|
|
58982
59062
|
if (cacheRetention) streamParams.cacheRetention = cacheRetention;
|
|
58983
59063
|
if (Object.keys(streamParams).length === 0) return;
|
|
@@ -61306,7 +61386,7 @@ function scorePlanComplexity(prompt) {
|
|
|
61306
61386
|
if ([...PLAN_KEYWORDS, ...ANALYSIS_KEYWORDS].some((kw) => lower.includes(kw)) || FILE_PATH_RE.test(prompt)) score += 3;
|
|
61307
61387
|
}
|
|
61308
61388
|
const numberedItems = prompt.match(NUMBERED_LIST_RE);
|
|
61309
|
-
if (numberedItems && numberedItems.length >=
|
|
61389
|
+
if (numberedItems && numberedItems.length >= 6) score += 2;
|
|
61310
61390
|
for (const kw of PLAN_KEYWORDS) if (lower.includes(kw)) {
|
|
61311
61391
|
score += 2;
|
|
61312
61392
|
break;
|
|
@@ -61323,7 +61403,7 @@ function scorePlanComplexity(prompt) {
|
|
|
61323
61403
|
}
|
|
61324
61404
|
return score;
|
|
61325
61405
|
}
|
|
61326
|
-
const PLAN_MODE_THRESHOLD =
|
|
61406
|
+
const PLAN_MODE_THRESHOLD = 8;
|
|
61327
61407
|
/**
|
|
61328
61408
|
* Determine whether a prompt should trigger plan mode.
|
|
61329
61409
|
*
|
|
@@ -61358,14 +61438,15 @@ function shouldEnterPlanMode(prompt, opts = {}) {
|
|
|
61358
61438
|
score: 0
|
|
61359
61439
|
};
|
|
61360
61440
|
const score = scorePlanComplexity(trimmed);
|
|
61361
|
-
|
|
61441
|
+
const threshold = opts.threshold ?? PLAN_MODE_THRESHOLD;
|
|
61442
|
+
if (score >= threshold) return {
|
|
61362
61443
|
enter: true,
|
|
61363
|
-
reason: `complexity score ${score} >= ${
|
|
61444
|
+
reason: `complexity score ${score} >= ${threshold}`,
|
|
61364
61445
|
score
|
|
61365
61446
|
};
|
|
61366
61447
|
return {
|
|
61367
61448
|
enter: false,
|
|
61368
|
-
reason: `complexity score ${score} < ${
|
|
61449
|
+
reason: `complexity score ${score} < ${threshold}`,
|
|
61369
61450
|
score
|
|
61370
61451
|
};
|
|
61371
61452
|
}
|
|
@@ -62261,7 +62342,7 @@ async function runEmbeddedAttempt(params) {
|
|
|
62261
62342
|
}
|
|
62262
62343
|
});
|
|
62263
62344
|
const isDefaultAgent = sessionAgentId === defaultAgentId;
|
|
62264
|
-
const promptMode = isSubagentSessionKey(params.sessionKey) || isCronSessionKey(params.sessionKey) ? "minimal" : "full";
|
|
62345
|
+
const promptMode = isSubagentSessionKey(params.sessionKey) || isCronSessionKey(params.sessionKey) ? "minimal" : params.config?.agents?.defaults?.promptMode === "coding" ? "coding" : "full";
|
|
62265
62346
|
const docsPath = await resolveSymiDocsPath({
|
|
62266
62347
|
workspaceDir: effectiveWorkspace,
|
|
62267
62348
|
argv1: process.argv[1],
|
|
@@ -62658,7 +62739,8 @@ async function runEmbeddedAttempt(params) {
|
|
|
62658
62739
|
{
|
|
62659
62740
|
const planResult = shouldEnterPlanMode(effectivePrompt, {
|
|
62660
62741
|
isSubagent: isSubagentSessionKey(params.sessionKey),
|
|
62661
|
-
isCron: isCronSessionKey(params.sessionKey)
|
|
62742
|
+
isCron: isCronSessionKey(params.sessionKey),
|
|
62743
|
+
threshold: params.config?.agents?.defaults?.planModeThreshold
|
|
62662
62744
|
});
|
|
62663
62745
|
if (planResult.enter) {
|
|
62664
62746
|
if (planResult.stripped != null) effectivePrompt = planResult.stripped;
|
|
@@ -63276,6 +63358,7 @@ async function runEmbeddedPiAgent(params) {
|
|
|
63276
63358
|
let lastRunPromptUsage;
|
|
63277
63359
|
let autoCompactionCount = 0;
|
|
63278
63360
|
let runLoopIterations = 0;
|
|
63361
|
+
let verificationPassCompleted = false;
|
|
63279
63362
|
try {
|
|
63280
63363
|
while (true) {
|
|
63281
63364
|
if (runLoopIterations >= MAX_RUN_LOOP_ITERATIONS) {
|
|
@@ -63645,6 +63728,116 @@ async function runEmbeddedPiAgent(params) {
|
|
|
63645
63728
|
suppressToolErrorWarnings: params.suppressToolErrorWarnings,
|
|
63646
63729
|
inlineToolResultsAllowed: false
|
|
63647
63730
|
});
|
|
63731
|
+
if (!verificationPassCompleted && !aborted && !timedOut && !promptError && payloads.length > 0 && !isCronSessionKey(params.sessionKey) && !isSubagentSessionKey(params.sessionKey)) {
|
|
63732
|
+
const CODE_TOOL_NAMES = new Set([
|
|
63733
|
+
"exec",
|
|
63734
|
+
"bash",
|
|
63735
|
+
"write",
|
|
63736
|
+
"edit",
|
|
63737
|
+
"file_write",
|
|
63738
|
+
"file_edit",
|
|
63739
|
+
"write_file",
|
|
63740
|
+
"edit_file",
|
|
63741
|
+
"create_file",
|
|
63742
|
+
"patch"
|
|
63743
|
+
]);
|
|
63744
|
+
const hasCodeToolUsage = attempt.toolMetas.some((tm) => CODE_TOOL_NAMES.has(tm.toolName.toLowerCase()));
|
|
63745
|
+
const hasCodeBlocks = attempt.assistantTexts.some((text) => /```[\s\S]*?```/.test(text));
|
|
63746
|
+
if (hasCodeToolUsage || hasCodeBlocks) {
|
|
63747
|
+
verificationPassCompleted = true;
|
|
63748
|
+
log$2.debug(`[verification] starting verification pass: runId=${params.runId} sessionId=${params.sessionId} trigger=${hasCodeToolUsage ? "tool_usage" : "code_blocks"}`);
|
|
63749
|
+
const verificationPrompt = "Review your response against the original user request. Check: (1) Did you address every requirement? (2) Did you include tests if requested? (3) Did you run and verify the code works? If you missed anything, fix it now. If everything looks correct, briefly confirm.";
|
|
63750
|
+
try {
|
|
63751
|
+
const verifyAttempt = await runEmbeddedAttempt({
|
|
63752
|
+
sessionId: params.sessionId,
|
|
63753
|
+
sessionKey: params.sessionKey,
|
|
63754
|
+
messageChannel: params.messageChannel,
|
|
63755
|
+
messageProvider: params.messageProvider,
|
|
63756
|
+
agentAccountId: params.agentAccountId,
|
|
63757
|
+
messageTo: params.messageTo,
|
|
63758
|
+
messageThreadId: params.messageThreadId,
|
|
63759
|
+
groupId: params.groupId,
|
|
63760
|
+
groupChannel: params.groupChannel,
|
|
63761
|
+
groupSpace: params.groupSpace,
|
|
63762
|
+
spawnedBy: params.spawnedBy,
|
|
63763
|
+
senderIsOwner: params.senderIsOwner,
|
|
63764
|
+
currentChannelId: params.currentChannelId,
|
|
63765
|
+
currentThreadTs: params.currentThreadTs,
|
|
63766
|
+
replyToMode: params.replyToMode,
|
|
63767
|
+
hasRepliedRef: params.hasRepliedRef,
|
|
63768
|
+
sessionFile: params.sessionFile,
|
|
63769
|
+
workspaceDir: resolvedWorkspace,
|
|
63770
|
+
agentDir,
|
|
63771
|
+
config: params.config,
|
|
63772
|
+
skillsSnapshot: params.skillsSnapshot,
|
|
63773
|
+
prompt: verificationPrompt,
|
|
63774
|
+
images: void 0,
|
|
63775
|
+
disableTools: params.disableTools,
|
|
63776
|
+
provider,
|
|
63777
|
+
modelId,
|
|
63778
|
+
model,
|
|
63779
|
+
authStorage,
|
|
63780
|
+
modelRegistry,
|
|
63781
|
+
agentId: workspaceResolution.agentId,
|
|
63782
|
+
thinkLevel,
|
|
63783
|
+
verboseLevel: params.verboseLevel,
|
|
63784
|
+
reasoningLevel: params.reasoningLevel,
|
|
63785
|
+
toolResultFormat: resolvedToolResultFormat,
|
|
63786
|
+
execOverrides: params.execOverrides,
|
|
63787
|
+
bashElevated: params.bashElevated,
|
|
63788
|
+
timeoutMs: params.timeoutMs,
|
|
63789
|
+
runId: params.runId,
|
|
63790
|
+
abortSignal: params.abortSignal,
|
|
63791
|
+
shouldEmitToolResult: params.shouldEmitToolResult,
|
|
63792
|
+
shouldEmitToolOutput: params.shouldEmitToolOutput,
|
|
63793
|
+
onPartialReply: params.onPartialReply,
|
|
63794
|
+
onAssistantMessageStart: params.onAssistantMessageStart,
|
|
63795
|
+
onBlockReply: params.onBlockReply,
|
|
63796
|
+
onBlockReplyFlush: params.onBlockReplyFlush,
|
|
63797
|
+
blockReplyBreak: params.blockReplyBreak,
|
|
63798
|
+
blockReplyChunking: params.blockReplyChunking,
|
|
63799
|
+
onReasoningStream: params.onReasoningStream,
|
|
63800
|
+
onReasoningEnd: params.onReasoningEnd,
|
|
63801
|
+
onToolResult: params.onToolResult,
|
|
63802
|
+
onAgentEvent: params.onAgentEvent,
|
|
63803
|
+
extraSystemPrompt: params.extraSystemPrompt,
|
|
63804
|
+
inputProvenance: params.inputProvenance,
|
|
63805
|
+
streamParams: params.streamParams,
|
|
63806
|
+
ownerNumbers: params.ownerNumbers,
|
|
63807
|
+
enforceFinalTag: params.enforceFinalTag
|
|
63808
|
+
});
|
|
63809
|
+
const verifyUsage = normalizeUsage(verifyAttempt.lastAssistant?.usage);
|
|
63810
|
+
mergeUsageIntoAccumulator(usageAccumulator, verifyAttempt.attemptUsage ?? verifyUsage);
|
|
63811
|
+
if (verifyAttempt.compactionCount) autoCompactionCount += verifyAttempt.compactionCount;
|
|
63812
|
+
const verifyHasToolUsage = verifyAttempt.toolMetas.length > 0;
|
|
63813
|
+
const verifyHasContent = verifyAttempt.assistantTexts.some((t) => t.trim().length > 0);
|
|
63814
|
+
if (verifyHasToolUsage || verifyHasContent) {
|
|
63815
|
+
const verifyPayloads = buildEmbeddedRunPayloads({
|
|
63816
|
+
assistantTexts: [...attempt.assistantTexts, ...verifyAttempt.assistantTexts],
|
|
63817
|
+
toolMetas: [...attempt.toolMetas, ...verifyAttempt.toolMetas],
|
|
63818
|
+
lastAssistant: verifyAttempt.lastAssistant ?? attempt.lastAssistant,
|
|
63819
|
+
lastToolError: verifyAttempt.lastToolError ?? attempt.lastToolError,
|
|
63820
|
+
config: params.config,
|
|
63821
|
+
sessionKey: params.sessionKey ?? params.sessionId,
|
|
63822
|
+
provider: activeErrorContext.provider,
|
|
63823
|
+
model: activeErrorContext.model,
|
|
63824
|
+
verboseLevel: params.verboseLevel,
|
|
63825
|
+
reasoningLevel: params.reasoningLevel,
|
|
63826
|
+
toolResultFormat: resolvedToolResultFormat,
|
|
63827
|
+
suppressToolErrorWarnings: params.suppressToolErrorWarnings,
|
|
63828
|
+
inlineToolResultsAllowed: false
|
|
63829
|
+
});
|
|
63830
|
+
if (verifyPayloads.length > 0) {
|
|
63831
|
+
payloads.length = 0;
|
|
63832
|
+
payloads.push(...verifyPayloads);
|
|
63833
|
+
}
|
|
63834
|
+
log$2.debug(`[verification] verification produced corrections: runId=${params.runId} tools=${verifyAttempt.toolMetas.length} texts=${verifyAttempt.assistantTexts.length}`);
|
|
63835
|
+
} else log$2.debug(`[verification] verification confirmed original response: runId=${params.runId}`);
|
|
63836
|
+
} catch (verifyErr) {
|
|
63837
|
+
log$2.warn(`[verification] verification pass failed, keeping original response: runId=${params.runId} error=${String(verifyErr)}`);
|
|
63838
|
+
}
|
|
63839
|
+
}
|
|
63840
|
+
}
|
|
63648
63841
|
if (timedOut && !timedOutDuringCompaction && payloads.length === 0) return {
|
|
63649
63842
|
payloads: [{
|
|
63650
63843
|
text: "Request timed out before a response was generated. Please try again, or increase `agents.defaults.timeoutSeconds` in your config.",
|
|
@@ -71173,7 +71366,7 @@ async function deliverSessionMaintenanceWarning(params) {
|
|
|
71173
71366
|
return;
|
|
71174
71367
|
}
|
|
71175
71368
|
try {
|
|
71176
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
71369
|
+
const { deliverOutboundPayloads } = await import("./deliver-C0Azi_cK.js").then((n) => n.n);
|
|
71177
71370
|
await deliverOutboundPayloads({
|
|
71178
71371
|
cfg: params.cfg,
|
|
71179
71372
|
channel,
|
|
@@ -71825,9 +72018,12 @@ async function getReplyFromConfig(ctx, opts, configOverride) {
|
|
|
71825
72018
|
ensureBootstrapFiles: !agentCfg?.skipBootstrap && !isFastTestEnv
|
|
71826
72019
|
})).dir;
|
|
71827
72020
|
const agentDir = resolveAgentDir(cfg, agentId);
|
|
72021
|
+
const primaryModelKey = typeof cfg?.agents?.defaults?.model === "object" ? cfg.agents.defaults.model.primary : void 0;
|
|
72022
|
+
const modelTimeoutSeconds = primaryModelKey ? cfg?.agents?.defaults?.models?.[primaryModelKey]?.timeoutSeconds : void 0;
|
|
71828
72023
|
const timeoutMs = resolveAgentTimeoutMs({
|
|
71829
72024
|
cfg,
|
|
71830
|
-
overrideSeconds: opts?.timeoutOverrideSeconds
|
|
72025
|
+
overrideSeconds: opts?.timeoutOverrideSeconds,
|
|
72026
|
+
modelTimeoutSeconds: modelTimeoutSeconds ?? null
|
|
71831
72027
|
});
|
|
71832
72028
|
const configuredTypingSeconds = agentCfg?.typingIntervalSeconds ?? sessionCfg?.typingIntervalSeconds;
|
|
71833
72029
|
const typingIntervalSeconds = typeof configuredTypingSeconds === "number" ? configuredTypingSeconds : 6;
|