@symerian/symi 2.9.1 → 2.9.2
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-BNM6b6XY.js → acp-cli-Bc6ZQZ4f.js} +2 -2
- package/dist/{acp-cli-DXsJS3-G.js → acp-cli-Dy9QuDBN.js} +2 -2
- package/dist/{agents-FNeM-byc.js → agents-DTl30WoB.js} +7 -7
- package/dist/{agents.config-DUYDFbfP.js → agents.config-CO8F9mkD.js} +1 -1
- package/dist/{agents.config-CjML1ogJ.js → agents.config-CZ3GFxPg.js} +1 -1
- package/dist/{audio-preflight-CwbuWmdG.js → audio-preflight-8UNY1akA.js} +11 -11
- package/dist/{audio-preflight-SaT5IcVn.js → audio-preflight-By0dnw-T.js} +11 -11
- package/dist/{audio-preflight-DlO0Hw-w.js → audio-preflight-DQR2Ivi-.js} +5 -5
- package/dist/{audio-preflight-CMutcMs5.js → audio-preflight-Dtsvq6Hj.js} +6 -6
- package/dist/{audit-qWCLpveM.js → audit-DGwhL71Q.js} +5 -5
- package/dist/{audit-Ojap-R-Y.js → audit-OPWWS900.js} +5 -5
- package/dist/{auth-choice-BjTiWmH-.js → auth-choice-BYDGn7lJ.js} +4 -4
- package/dist/{auth-choice-RQ5keocP.js → auth-choice-BoOyy-ZT.js} +4 -4
- package/dist/{banner-dYiFXA70.js → banner-D4MiyUnv.js} +1 -1
- package/dist/{browser-cli-BQ9jHIXP.js → browser-cli-CGLTZ9KQ.js} +3 -3
- package/dist/{browser-cli-BW0C5Y8-.js → browser-cli-qpJlsofO.js} +3 -3
- package/dist/build-info.json +3 -3
- package/dist/bundled/boot-md/handler.js +14 -14
- package/dist/bundled/session-memory/handler.js +14 -14
- package/dist/{call-X_vwo309.js → call-BCTAmPye.js} +1 -1
- package/dist/{call-BZbBLMOq.js → call-BIETyST6.js} +1 -1
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{channel-options-CjZlTumK.js → channel-options-B6qP-vR-.js} +1 -1
- package/dist/{channel-options-DqXYA7rM.js → channel-options-BiSSYYQC.js} +1 -1
- package/dist/{channel-web-BITaNjFT.js → channel-web-DP97EUhx.js} +7 -7
- package/dist/{channels-cli-7cDtM5kW.js → channels-cli-6LNvJQPb.js} +30 -30
- package/dist/{channels-cli-C8CesA1x.js → channels-cli-CE_A3Hai.js} +31 -31
- package/dist/{chrome-t-stBgN6.js → chrome-B-hW5hrK.js} +1 -1
- package/dist/{chrome-B1zznUiv.js → chrome-BaMQiegP.js} +8 -8
- package/dist/{chrome-faqXQ9f1.js → chrome-CO5ZhkcZ.js} +1 -1
- package/dist/{chrome-BFDOGeu3.js → chrome-CtTba9sH.js} +1 -1
- package/dist/cli/daemon-cli.js +1 -1
- package/dist/{cli-BJ9_X9eE.js → cli-D4j_JTug.js} +27 -27
- package/dist/{cli-ZC_92Xyn.js → cli-DwQ3mqhI.js} +26 -26
- package/dist/{command-registry-B1ltIC7z.js → command-registry-b62Qpsi2.js} +11 -11
- package/dist/{completion-cli-_P0e-rhC.js → completion-cli-DUT2XYgK.js} +2 -2
- package/dist/{completion-cli-KSs4eFcq.js → completion-cli-RQyC3L-t.js} +1 -1
- package/dist/{config-BYCtuYPj.js → config-CitI_jxW.js} +6 -0
- package/dist/{config-CbBZUq-Q.js → config-D7Zr88dI.js} +6 -0
- package/dist/{config-BXMAsmut.js → config-Do4JxgLI.js} +6 -0
- package/dist/{config-DE6JXMtt.js → config-Gfhqs66L.js} +6 -0
- package/dist/{config-cli-DIrPShKH.js → config-cli-Di8VOhbp.js} +2 -2
- package/dist/{config-cli-DjCKp4Pe.js → config-cli-H52N8rp1.js} +2 -2
- package/dist/{config-guard-BrZXdLQw.js → config-guard-BLcbR_sH.js} +2 -2
- package/dist/{config-guard-DYmSI51f.js → config-guard-CgPPAm7S.js} +3 -3
- package/dist/{config-validation-CNRgc5vc.js → config-validation-B6GnatLw.js} +1 -1
- package/dist/{config-validation-fdYfdAc3.js → config-validation-UMq2H_tR.js} +1 -1
- package/dist/{configure-CsZWO6Nr.js → configure-BF9crM5K.js} +10 -10
- package/dist/{configure-Ds8SzTEw.js → configure-DQxuawe-.js} +10 -10
- package/dist/{control-service-DQX3HXS4.js → control-service-BkyH7qkF.js} +4 -4
- package/dist/{control-service-B5HVCnUI.js → control-service-DnNPjFvU.js} +4 -4
- package/dist/{cron-cli-CfSmL43G.js → cron-cli-CcgewYtp.js} +3 -3
- package/dist/{cron-cli-D2L3-4aw.js → cron-cli-DEcQk1bb.js} +3 -3
- package/dist/{daemon-cli-D9_xrFGD.js → daemon-cli-BNZu5unw.js} +6 -6
- package/dist/{daemon-cli-BHwfgmrQ.js → daemon-cli-BiBjGGfw.js} +6 -6
- package/dist/daemon-cli.js +6 -0
- package/dist/{daemon-runtime-BiZG4Kqi.js → daemon-runtime-C-Mwepv_.js} +1 -1
- package/dist/{daemon-runtime-DOqm0LLm.js → daemon-runtime-C86WnKU5.js} +1 -1
- package/dist/{deliver-CeNdvQJ3.js → deliver-DaRQn5Ai.js} +3 -3
- package/dist/{deliver-Cqk3zmyW.js → deliver-DrgHcdVo.js} +3 -3
- package/dist/{deliver-nBdNxMIr.js → deliver-Dx39g9ey.js} +2 -2
- package/dist/{deliver--ff__Iq0.js → deliver-XYF4JahT.js} +2 -2
- package/dist/{devices-cli-BzyrjuAk.js → devices-cli-Wb4H-vyx.js} +2 -2
- package/dist/{devices-cli-CEvTb9Vr.js → devices-cli-hX2lrsCy.js} +2 -2
- package/dist/{directory-cli-KZHlp_jk.js → directory-cli-CLIYvXkV.js} +1 -1
- package/dist/{directory-cli-Ds7uESrp.js → directory-cli-C_vm-dsr.js} +1 -1
- package/dist/{dns-cli-e8z7wTzi.js → dns-cli-BJuUZ4pr.js} +1 -1
- package/dist/{dns-cli-SNU_PJfw.js → dns-cli-CTCAHPcB.js} +1 -1
- package/dist/{doctor-completion-D4bMStWc.js → doctor-completion-BKXQ50ee.js} +1 -1
- package/dist/{doctor-completion-CfGWMYVG.js → doctor-completion-BS2JEeZy.js} +1 -1
- package/dist/{doctor-config-flow-CJ4__c8U.js → doctor-config-flow-BFHsvL2k.js} +2 -2
- package/dist/{doctor-config-flow-DHXFFSRu.js → doctor-config-flow-l2aPNzHP.js} +2 -2
- package/dist/entry.js +1 -1
- package/dist/{exec-approvals-cli-z9Iy8aWD.js → exec-approvals-cli-BXDSu2Ze.js} +4 -4
- package/dist/{exec-approvals-cli-_AbKrXIH.js → exec-approvals-cli-uAM6-swA.js} +4 -4
- package/dist/extensionAPI.js +16 -16
- package/dist/{gateway-cli-B4ElmhPF.js → gateway-cli-Do9KUPqe.js} +42 -42
- package/dist/{gateway-cli-CfO9aUt0.js → gateway-cli-moPf-zP5.js} +43 -43
- package/dist/{gateway-rpc-D1S1i5HM.js → gateway-rpc-DMEPdgmc.js} +1 -1
- package/dist/{gateway-rpc-BlWORxUe.js → gateway-rpc-Wa_4MrZb.js} +1 -1
- package/dist/{glass-ui-ws-D1UKJUFI.js → glass-ui-ws-D53pvIov.js} +35 -35
- package/dist/{glass-ui-ws-Bhu3COgn.js → glass-ui-ws-Dfro-3R8.js} +34 -34
- package/dist/{health-CCslN1xh.js → health-BQGRC0xh.js} +5 -5
- package/dist/{health-CLRDrjsk.js → health-CV741PBg.js} +5 -5
- package/dist/{hooks-cli-DvLYXNNe.js → hooks-cli-CG-PDY2U.js} +28 -28
- package/dist/{hooks-cli-BrVLhsJ6.js → hooks-cli-CWXGIL9L.js} +27 -27
- package/dist/{image-D5bsPk2_.js → image-BjyeKf1c.js} +2 -2
- package/dist/{image-CEdTQp1F.js → image-C-JvPPpM.js} +2 -2
- package/dist/{image-B6aY1oY3.js → image-GaF72sln.js} +2 -2
- package/dist/{image-Cp6qRPZ2.js → image-dYtWZNKT.js} +2 -2
- package/dist/index.js +35 -35
- package/dist/{lifecycle-core-CcPnnp9c.js → lifecycle-core-BMVHLJi_.js} +2 -2
- package/dist/{lifecycle-core-BUGPz1GT.js → lifecycle-core-HOQrbQ-_.js} +2 -2
- package/dist/llm-slug-generator.js +14 -14
- package/dist/{login-DwBazcKM.js → login-Cd4DTmg6.js} +2 -2
- package/dist/{login-B7OJui4y.js → login-Cv_LYGzG.js} +2 -2
- package/dist/{login-DKeZ-sOf.js → login-D4OYfM0U.js} +2 -2
- package/dist/{login-Cu0fTI3Z.js → login-DqhTprwd.js} +2 -2
- package/dist/{login-qr-BBrzemk7.js → login-qr-CZXIrzvh.js} +2 -2
- package/dist/{login-qr-DyU6qD2X.js → login-qr-DiyxAHpv.js} +2 -2
- package/dist/{login-qr-CtELJan3.js → login-qr-Dq_hs3eJ.js} +2 -2
- package/dist/{login-qr-Ft17VIG6.js → login-qr-Xgw7JPYo.js} +2 -2
- package/dist/{logs-cli-CvgvoxvI.js → logs-cli-DZTxEhiM.js} +3 -3
- package/dist/{logs-cli-Dg6OSEA6.js → logs-cli-Dh-aAqF3.js} +3 -3
- package/dist/{manager-OSWCBsL_.js → manager-B_2KzUSI.js} +1 -1
- package/dist/{manager-HASZR70T.js → manager-Bc-MeMho.js} +1 -1
- package/dist/{manager-CztTHQhN.js → manager-CLPHK-qG.js} +1 -1
- package/dist/{manager-8N1YbbDk.js → manager-yrUe0KOT.js} +1 -1
- package/dist/{memory-cli-BmWvHCEJ.js → memory-cli-3RSIw4no.js} +4 -4
- package/dist/{memory-cli-BDWdeqta.js → memory-cli-BKNnDIdx.js} +4 -4
- package/dist/{model-catalog-BhW-vn5v.js → model-catalog-BFJW_s3i.js} +2 -2
- package/dist/{model-catalog-FckJ4pcL.js → model-catalog-DRqmevpR.js} +2 -2
- package/dist/{model-picker-D3ii5sBm.js → model-picker-BT8MumhL.js} +2 -2
- package/dist/{model-picker-DEUeht6L.js → model-picker-DhsG4iZa.js} +2 -2
- package/dist/{models-5C-QKF0q.js → models-D_C2JFPw.js} +8 -8
- package/dist/{models-cli-BqW-Y1GI.js → models-cli-DQE60EtL.js} +30 -30
- package/dist/{models-cli-B2IebIhR.js → models-cli-j2O4e1Lu.js} +29 -29
- package/dist/{models-config-DGDMieos.js → models-config-DdK8uWQW.js} +1 -1
- package/dist/{models-config-CHVfeRDR.js → models-config-frWb8fDT.js} +1 -1
- package/dist/{node-cli-hAxte5bw.js → node-cli-DB4Z23h8.js} +9 -9
- package/dist/{node-cli-emEb0aRo.js → node-cli-DcRlL2Np.js} +9 -9
- package/dist/{nodes-cli-DQPQqEYN.js → nodes-cli-B42u9UxB.js} +3 -3
- package/dist/{nodes-cli-yd9KABqj.js → nodes-cli-DQ9YsQmy.js} +3 -3
- package/dist/{onboard-BL7Ei8OA.js → onboard-Ckw89oRF.js} +7 -7
- package/dist/{onboard-o5O2Ipvr.js → onboard-DUIZfWqa.js} +7 -7
- package/dist/{onboard-channels-B-PEQmiI.js → onboard-channels-B8Ouc5sR.js} +1 -1
- package/dist/{onboard-channels-Do0lkLVV.js → onboard-channels-Oa9IlsGt.js} +1 -1
- package/dist/{onboard-custom-BVMtQfB1.js → onboard-custom-7TON2w6b.js} +2 -2
- package/dist/{onboard-custom-CVA34zSg.js → onboard-custom-Bb3xuH0G.js} +2 -2
- package/dist/{onboard-helpers-O6bxf40E.js → onboard-helpers-BiCrYw-N.js} +2 -2
- package/dist/{onboard-helpers-CNFdWQIV.js → onboard-helpers-Ca4KojJF.js} +2 -2
- package/dist/{onboard-remote-QMqQxvh7.js → onboard-remote-B8MQTgX-.js} +1 -1
- package/dist/{onboard-remote-uYveiXQe.js → onboard-remote-IMqgmH78.js} +1 -1
- package/dist/{onboard-skills-CLb94Ag2.js → onboard-skills-BP1P7f-w.js} +1 -1
- package/dist/{onboard-skills-Du3aWSN3.js → onboard-skills-BcvPjVfl.js} +1 -1
- package/dist/{onboarding-3DwQLO4z.js → onboarding-Cjh-Y8ha.js} +10 -10
- package/dist/{onboarding-B_F_DbjQ.js → onboarding-JFWHlqAb.js} +10 -10
- package/dist/{onboarding.finalize-BWejCrVi.js → onboarding.finalize-CkGLgiEA.js} +32 -32
- package/dist/{onboarding.finalize-D_G6Tcqi.js → onboarding.finalize-spzEoVkm.js} +34 -34
- package/dist/{onboarding.gateway-config-D8K7HsWb.js → onboarding.gateway-config-Cp8mV8S9.js} +4 -4
- package/dist/{onboarding.gateway-config-Dixr8mmH.js → onboarding.gateway-config-tmzsyFbT.js} +4 -4
- package/dist/{outbound-CLCy4Nsg.js → outbound-BD7PNRhC.js} +1 -1
- package/dist/{outbound-DVVulk0E.js → outbound-BaF9dF-H.js} +1 -1
- package/dist/{outbound-b9pVFyW7.js → outbound-CDuo0JH3.js} +1 -1
- package/dist/{outbound-DlWjA7jN.js → outbound-CPcVipU-.js} +1 -1
- package/dist/{pairing-cli-Cgj6qx8Z.js → pairing-cli-CfuG75IW.js} +1 -1
- package/dist/{pairing-cli-CchjvjCR.js → pairing-cli-K09J3MIl.js} +1 -1
- package/dist/{pi-embedded-q_tNOp_h.js → pi-embedded-D6Zi01El.js} +343 -41
- package/dist/{pi-embedded-helpers-DrAT2ieP.js → pi-embedded-helpers-B1P8lkqj.js} +5 -5
- package/dist/{pi-embedded-helpers-BgpogTwt.js → pi-embedded-helpers-BlL08R8g.js} +1 -1
- package/dist/{pi-embedded-helpers-DK2WpZI8.js → pi-embedded-helpers-CmY04lZ7.js} +1 -1
- package/dist/{pi-embedded-helpers-BPP4adeW.js → pi-embedded-helpers-DuZtk5SK.js} +6 -6
- package/dist/{pi-tools.policy-BE7fB_Cf.js → pi-tools.policy-54ABEJtH.js} +2 -2
- package/dist/{pi-tools.policy-GxaAKOgf.js → pi-tools.policy-BFsWV2pS.js} +2 -2
- package/dist/{plugin-registry-CRIH5Sdf.js → plugin-registry-CYglC746.js} +2 -2
- package/dist/{plugin-registry-B_KRAoou.js → plugin-registry-zGF6HUkQ.js} +2 -2
- package/dist/plugin-sdk/agents/pi-embedded-runner/system-prompt.d.ts +14 -0
- package/dist/plugin-sdk/agents/skills/triggers.d.ts +12 -0
- package/dist/plugin-sdk/agents/system-prompt-skills-jit.d.ts +28 -0
- package/dist/plugin-sdk/agents/tools/skill-search-tool.d.ts +30 -0
- package/dist/plugin-sdk/{audio-preflight-CwMsvdv8.js → audio-preflight-CoKYDdd4.js} +6 -6
- package/dist/plugin-sdk/{channel-web-CiewzSOW.js → channel-web-eeGSjU9N.js} +7 -7
- package/dist/plugin-sdk/{chrome-Cou8jVJ2.js → chrome-CdjVSHtz.js} +1 -1
- package/dist/plugin-sdk/config/types.skills.d.ts +14 -0
- package/dist/plugin-sdk/config/zod-schema.d.ts +2 -0
- package/dist/plugin-sdk/{config-DQntj58u.js → config-Cf-PzD3r.js} +6 -0
- package/dist/plugin-sdk/{deliver-OVx3XKTy.js → deliver-hjUeDZ7e.js} +2 -2
- package/dist/plugin-sdk/{image-ChrcMCo_.js → image-CS95I-I5.js} +2 -2
- package/dist/plugin-sdk/index.js +20 -20
- package/dist/plugin-sdk/{login-WuhOM4Dg.js → login-BhLw-aw1.js} +2 -2
- package/dist/plugin-sdk/{login-qr-C87Q7LuN.js → login-qr-B4dxH543.js} +2 -2
- package/dist/plugin-sdk/{manager-Yvm-LGVR.js → manager-DZ5-lr4s.js} +1 -1
- package/dist/plugin-sdk/{outbound-T0XdUo-H.js → outbound-D7yJKgEX.js} +1 -1
- package/dist/plugin-sdk/{pi-embedded-helpers-DihvU43r.js → pi-embedded-helpers-6EL59cK1.js} +6 -6
- package/dist/plugin-sdk/{pw-ai-DUQ9kG2D.js → pw-ai-DWcXZkbZ.js} +2 -2
- package/dist/plugin-sdk/{replies-DD0EJRXx.js → replies-B4fizDsZ.js} +1 -1
- package/dist/plugin-sdk/{reply-I6ZFg_UE.js → reply-BRGoceel.js} +348 -46
- package/dist/plugin-sdk/{runner-IyZnVyIT.js → runner-D9c_MNRa.js} +2 -2
- package/dist/plugin-sdk/{send-Do_qdBr_.js → send-BAzimHH-.js} +1 -1
- package/dist/plugin-sdk/{send-DxXXcQ_o.js → send-BfqyNBU1.js} +1 -1
- package/dist/plugin-sdk/{send-Cxr9NnOd.js → send-CF7BhO8B.js} +1 -1
- package/dist/plugin-sdk/{send-SRQweHTE.js → send-CJIEYVXL.js} +1 -1
- package/dist/plugin-sdk/{send-Dd71o3sZ.js → send-DDpZS9jb.js} +1 -1
- package/dist/plugin-sdk/{session-LEZ8u8RX.js → session-BfTQAyNx.js} +1 -1
- package/dist/plugin-sdk/{skill-commands-DEfqC_kJ.js → skill-commands-C70yD9PL.js} +1 -1
- package/dist/plugin-sdk/{skills-C9DbB-Kp.js → skills-DuQ-xGok.js} +1 -1
- package/dist/plugin-sdk/{synthesis-bQ4DMwsj.js → synthesis-DVsG2Tbp.js} +16 -16
- package/dist/plugin-sdk/{web-C3YuHiih.js → web-7u3fdT2S.js} +20 -20
- package/dist/plugin-sdk/{whatsapp-actions-ClWxTG5S.js → whatsapp-actions-B_3do0s7.js} +2 -2
- package/dist/{plugins-cli-Co9cRpLe.js → plugins-cli-CLb_0vH6.js} +27 -27
- package/dist/{plugins-cli-MDYiXsRL.js → plugins-cli-ndIGvW38.js} +28 -28
- package/dist/{program-BWqVPm5t.js → program-BovNsUAh.js} +34 -34
- package/dist/{program-context-m9C36Cuq.js → program-context-mFSRQPMm.js} +38 -38
- package/dist/{prompt-select-styled-DzjQVaDM.js → prompt-select-styled-DlKhnnDV.js} +15 -15
- package/dist/{prompt-select-styled-BKJVEVPk.js → prompt-select-styled-vhI0kQYd.js} +15 -15
- package/dist/{provider-auth-helpers-DaTqy1aA.js → provider-auth-helpers-DXlKD0hY.js} +2 -2
- package/dist/{provider-auth-helpers-DYJ-0sNe.js → provider-auth-helpers-U0t5YhCn.js} +2 -2
- package/dist/{push-apns-DdQlLTpV.js → push-apns-hN0N3Wcu.js} +1 -1
- package/dist/{push-apns-_aeFBwsP.js → push-apns-rDsc17-c.js} +1 -1
- package/dist/{pw-ai-DSmC8YuO.js → pw-ai-B8IypzYb.js} +2 -2
- package/dist/{pw-ai-D9ZuX3U6.js → pw-ai-BYRvpqBg.js} +2 -2
- package/dist/{pw-ai-Bpp0J0PM.js → pw-ai-BlWK9Tr3.js} +2 -2
- package/dist/{pw-ai-XSTIQILG.js → pw-ai-BwKx4yAQ.js} +2 -2
- package/dist/{qr-cli-DtHLOD1G.js → qr-cli-B7hz3Zj2.js} +1 -1
- package/dist/{qr-cli-Dq9G8FPl.js → qr-cli-Zf3abH3y.js} +1 -1
- package/dist/{register.agent-Hi0PN67T.js → register.agent-B1liWWB3.js} +35 -35
- package/dist/{register.agent-RNTVF_Nk.js → register.agent-Cyij2g-g.js} +33 -33
- package/dist/{register.configure-Dp-F_KKy.js → register.configure-CoYKlH75.js} +37 -37
- package/dist/{register.configure-DE2Fg1dO.js → register.configure-keWh1w1p.js} +38 -38
- package/dist/{register.maintenance-Bbd-g7nL.js → register.maintenance-CsA9QQRE.js} +37 -37
- package/dist/{register.maintenance-QHRRhtsg.js → register.maintenance-CvY-Yar9.js} +35 -35
- package/dist/{register.message-BvutRi1a.js → register.message-D7815_7Y.js} +28 -28
- package/dist/{register.message-B5uWOXev.js → register.message-DltuBwIg.js} +27 -27
- package/dist/{register.onboard-DRHuoRTm.js → register.onboard-CY50To_-.js} +33 -33
- package/dist/{register.onboard-CNOh527M.js → register.onboard-FcZymlrx.js} +34 -34
- package/dist/{register.setup-D1ePW7dl.js → register.setup-8dkIizGs.js} +34 -34
- package/dist/{register.setup-Cj0oOZqL.js → register.setup-X011Evir.js} +33 -33
- package/dist/{register.status-health-sessions-sf1XzcPo.js → register.status-health-sessions-DRkIaw1q.js} +32 -32
- package/dist/{register.status-health-sessions-DfyO7JaH.js → register.status-health-sessions-u9ZbWWea.js} +30 -30
- package/dist/{register.subclis-Do_HdpUT.js → register.subclis-vTS3UwIU.js} +28 -28
- package/dist/{replies-IkylJ7lX.js → replies-A6SltFjk.js} +1 -1
- package/dist/{replies-CPhYC11m.js → replies-CsNZ9ImJ.js} +1 -1
- package/dist/{replies-BxvfG7Oj.js → replies-Dk0cnpHa.js} +1 -1
- package/dist/{replies-BV7oFP7Z.js → replies-Dmo0pSSf.js} +1 -1
- package/dist/{reply-DEub7xci.js → reply-Dx9DWIO2.js} +355 -52
- package/dist/{routes-n7RUgOOW.js → routes-B3wAMCSw.js} +3 -3
- package/dist/{routes-Evl8vnTV.js → routes-DH2Da7TP.js} +3 -3
- package/dist/{rpc-3T_LjHn1.js → rpc-BPtq6BO7.js} +1 -1
- package/dist/{rpc-DeJsMHDF.js → rpc-DCB41PXt.js} +1 -1
- package/dist/{run-main-B_ZLo4JR.js → run-main-BQKf71Kt.js} +45 -45
- package/dist/{runner-CMvsDzah.js → runner-C4opGXAA.js} +2 -2
- package/dist/{runner-CiThXXY3.js → runner-CY_8vnxU.js} +3 -3
- package/dist/{runner-B_6xBcPB.js → runner-Dbs3i8HW.js} +2 -2
- package/dist/{runner-BX-ap4VU.js → runner-Im1oOE3i.js} +3 -3
- package/dist/{sandbox-T9SO3y3b.js → sandbox-BTziorto.js} +5 -5
- package/dist/{sandbox-cli-MZJX1Ht6.js → sandbox-cli-BVpVuidu.js} +6 -6
- package/dist/{sandbox-cli-Bi8lblc6.js → sandbox-cli-rOwF1Yuh.js} +6 -6
- package/dist/{sandbox-BQ5LAIBQ.js → sandbox-wUKYI3zy.js} +5 -5
- package/dist/{security-cli-AZBZs6ww.js → security-cli-Bb4vR6LY.js} +9 -9
- package/dist/{security-cli-txjMZzBx.js → security-cli-Cg7KhJC7.js} +9 -9
- package/dist/{send-CcD9S5so.js → send-8Gw3YmOh.js} +1 -1
- package/dist/{send-BtbWvw2k.js → send-90t8KM2a.js} +1 -1
- package/dist/{send-DlYO3ExM.js → send-9ktd0CBZ.js} +1 -1
- package/dist/{send-C6-rN_Li.js → send-B0szkIfv.js} +1 -1
- package/dist/{send-CyPj_MLV.js → send-B7kMNQ-T.js} +1 -1
- package/dist/{send-DNqcjLyg.js → send-BbZtP8GJ.js} +1 -1
- package/dist/{send-C4IU_tV3.js → send-CQj8FBE3.js} +1 -1
- package/dist/{send-Bi8XhwOZ.js → send-Cxr6CgGf.js} +1 -1
- package/dist/{send-CfejAK2u.js → send-D27q8Oqo.js} +1 -1
- package/dist/{send-CupfdYEg.js → send-D4GfXudZ.js} +1 -1
- package/dist/{send-BPBFuPrC.js → send-D5Siw6wn.js} +1 -1
- package/dist/{send-BUBES34Y.js → send-DanpvmZQ.js} +1 -1
- package/dist/{send-CSkNKYIc.js → send-DbJsN7Lj.js} +1 -1
- package/dist/{send-dohExhb8.js → send-Dj6_LS_W.js} +1 -1
- package/dist/{send-vmIzYMwN.js → send-F2Cpm-SJ.js} +1 -1
- package/dist/{send-BaSqjfd_.js → send-aXMPprv9.js} +1 -1
- package/dist/{send-_CmB6CKB.js → send-depbZ9aA.js} +1 -1
- package/dist/{send-llekTUks.js → send-nRhkxbqX.js} +1 -1
- package/dist/{send-CoSPwGiI.js → send-t_DoGd2Y.js} +1 -1
- package/dist/{send-Dn1Pirhx.js → send-zMHWALCW.js} +1 -1
- package/dist/{server-context-CGMSzPWd.js → server-context-BPuBLXYG.js} +5 -5
- package/dist/{server-context-BkYSrDni.js → server-context-DQIkGNj2.js} +5 -5
- package/dist/{server-methods-C-itThFa.js → server-methods-1TzYth88.js} +17 -17
- package/dist/{server-methods-P-ayY-6k.js → server-methods-DeIwhdBv.js} +16 -16
- package/dist/{server-node-events-tvNFkev2.js → server-node-events-CFMtnBFU.js} +28 -28
- package/dist/{server-node-events-D5ee96aZ.js → server-node-events-DF_ks0oa.js} +27 -27
- package/dist/{session-CifmyF9K.js → session-C4odFBc2.js} +1 -1
- package/dist/{session-bvybh7vL.js → session-CTTpxOx1.js} +1 -1
- package/dist/{session-CMploMg7.js → session-Cs58by4_.js} +1 -1
- package/dist/{session-DQimwuIx.js → session-d5_vMl76.js} +1 -1
- package/dist/{session-utils-DQ-t0PxQ.js → session-utils--1xVj2BC.js} +3 -3
- package/dist/{sessions-BIsirZy0.js → sessions-BikjOqQs.js} +3 -3
- package/dist/{sessions-BKn2DFYs.js → sessions-CVWGQEWu.js} +1 -1
- package/dist/{sessions-DCr5nAOw.js → sessions-CpDbQNFu.js} +1 -1
- package/dist/{shared-iaXjUnvo.js → shared-DHpMu95O.js} +1 -1
- package/dist/{shared-F4GNd-mC.js → shared-NCp143fJ.js} +1 -1
- package/dist/{skill-commands-CSF7Poen.js → skill-commands-QmLQo8Tj.js} +1 -1
- package/dist/{skills-XEbTRNYL.js → skills-D0hfZgFz.js} +1 -1
- package/dist/{skills-cli-BX1J5GLJ.js → skills-cli-6wYY0Xes.js} +1 -1
- package/dist/{skills-cli-CZgrqMPo.js → skills-cli-CkTThcTU.js} +1 -1
- package/dist/{status-BlTLrS6h.js → status-CvElSWg2.js} +2 -2
- package/dist/{status-CfIkReeE.js → status-CwZgLSfx.js} +10 -10
- package/dist/{status-DjvBeoYl.js → status-DEQAH4oA.js} +2 -2
- package/dist/{status-BqjF9Q9S.js → status-vO4-v0vI.js} +9 -9
- package/dist/{status.update-C5evp93A.js → status.update-BSaVYFQv.js} +1 -1
- package/dist/{status.update-BZnfRS2e.js → status.update-DoXJrRh6.js} +1 -1
- package/dist/{subagent-registry-DVYhalAo.js → subagent-registry-K1lQH7iR.js} +351 -48
- package/dist/{synthesis-y-Ozm8YK.js → synthesis-AYqn8_O8.js} +27 -27
- package/dist/{synthesis-DgiYnjmZ.js → synthesis-CZhOC8n4.js} +14 -14
- package/dist/{synthesis-DRXsTePq.js → synthesis-DazoL-DI.js} +26 -26
- package/dist/{synthesis-DDQ5zAtf.js → synthesis-DhxkkJq7.js} +16 -16
- package/dist/{system-cli-IeefTiI1.js → system-cli-BmccUOcE.js} +3 -3
- package/dist/{system-cli-hjvWuxnn.js → system-cli-DJIrqTFB.js} +3 -3
- package/dist/{systemd-hints-CW7G2Z_2.js → systemd-hints-BbqPFaZ2.js} +1 -1
- package/dist/{systemd-hints-CcsN2P1C.js → systemd-hints-CfnF9j3s.js} +1 -1
- package/dist/{tui-DulNash-.js → tui-Cc1L4YuN.js} +4 -4
- package/dist/{tui-ByDc_eA-.js → tui-D5we2kr7.js} +4 -4
- package/dist/{tui-cli-cbFjX5ua.js → tui-cli-BHBp8e8w.js} +9 -9
- package/dist/{tui-cli-D--Wucil.js → tui-cli-CmVmkEzr.js} +9 -9
- package/dist/{unified-runner-BRmPenSK.js → unified-runner-CavADnkK.js} +350 -47
- package/dist/{update-cli-BfvcUFky.js → update-cli-DPf2vrJK.js} +40 -40
- package/dist/{update-cli-5uhTWLns.js → update-cli-DmxFKAmJ.js} +38 -38
- package/dist/{update-runner-DyENgdTM.js → update-runner-D4UIv_1p.js} +1 -1
- package/dist/{update-runner-22u8HOoq.js → update-runner-XU-jPEg_.js} +1 -1
- package/dist/{web-s9NWpUYH.js → web-BBbVbRTg.js} +30 -30
- package/dist/{web-Dbe1DwOE.js → web-BJIv_6uQ.js} +17 -17
- package/dist/{web-CqeSgivQ.js → web-C-E-O8iP.js} +30 -30
- package/dist/{web-B8GaP73t.js → web-CIj8erCe.js} +19 -19
- package/dist/{webhooks-cli-9lyrT9S-.js → webhooks-cli-BPWIcZ4r.js} +1 -1
- package/dist/{webhooks-cli-C56QoA-d.js → webhooks-cli-DCw-yCzR.js} +1 -1
- package/dist/{whatsapp-actions-Dx8FkbIf.js → whatsapp-actions-B5o7eFIc.js} +2 -2
- package/dist/{whatsapp-actions-D5RBK0Cm.js → whatsapp-actions-CJkCiI_n.js} +2 -2
- package/dist/{whatsapp-actions-BV4mjN5j.js → whatsapp-actions-CkT3dnmD.js} +2 -2
- package/dist/{whatsapp-actions-BngdI8G3.js → whatsapp-actions-DRvUrapa.js} +2 -2
- package/dist/{with-timeout-7gwjaz5c.js → with-timeout-7M4c248g.js} +1 -1
- package/dist/{with-timeout-C1vsg3IF.js → with-timeout-BWETfI9T.js} +1 -1
- package/extensions/bluebubbles/package.json +1 -1
- package/extensions/copilot-proxy/package.json +1 -1
- package/extensions/diagnostics-otel/package.json +1 -1
- package/extensions/discord/package.json +1 -1
- package/extensions/feishu/package.json +1 -1
- package/extensions/google-antigravity-auth/package.json +1 -1
- package/extensions/google-gemini-cli-auth/package.json +1 -1
- package/extensions/googlechat/package.json +1 -1
- package/extensions/imessage/package.json +1 -1
- package/extensions/irc/package.json +1 -1
- package/extensions/learning-loop/package.json +1 -1
- package/extensions/line/package.json +1 -1
- package/extensions/llm-task/package.json +1 -1
- package/extensions/matrix/CHANGELOG.md +6 -0
- package/extensions/matrix/package.json +1 -1
- package/extensions/mattermost/package.json +1 -1
- package/extensions/memory-core/package.json +1 -1
- package/extensions/memory-lancedb/package.json +1 -1
- package/extensions/minimax-portal-auth/package.json +1 -1
- package/extensions/msteams/CHANGELOG.md +6 -0
- package/extensions/msteams/package.json +1 -1
- package/extensions/nextcloud-talk/package.json +1 -1
- package/extensions/nostr/CHANGELOG.md +6 -0
- package/extensions/nostr/package.json +1 -1
- package/extensions/open-prose/package.json +1 -1
- package/extensions/outlook/package.json +1 -1
- package/extensions/pipeline/package.json +1 -1
- package/extensions/signal/package.json +1 -1
- package/extensions/slack/package.json +1 -1
- package/extensions/telegram/package.json +1 -1
- package/extensions/tlon/package.json +1 -1
- package/extensions/twitch/CHANGELOG.md +6 -0
- package/extensions/twitch/package.json +1 -1
- package/extensions/voice-call/CHANGELOG.md +6 -0
- package/extensions/voice-call/package.json +1 -1
- package/extensions/whatsapp/package.json +1 -1
- package/extensions/zalo/CHANGELOG.md +6 -0
- package/extensions/zalo/package.json +1 -1
- package/extensions/zalouser/CHANGELOG.md +6 -0
- package/extensions/zalouser/package.json +1 -1
- package/package.json +1 -1
- package/skills/1password/SKILL.md +1 -0
- package/skills/apple-notes/SKILL.md +1 -0
- package/skills/apple-reminders/SKILL.md +1 -0
- package/skills/bear-notes/SKILL.md +1 -0
- package/skills/blogwatcher/SKILL.md +1 -0
- package/skills/blucli/SKILL.md +1 -0
- package/skills/bluebubbles/SKILL.md +1 -0
- package/skills/camsnap/SKILL.md +1 -0
- package/skills/canvas/SKILL.md +6 -0
- package/skills/coding-agent/SKILL.md +1 -0
- package/skills/connect-email/SKILL.md +1 -0
- package/skills/discord/SKILL.md +1 -0
- package/skills/eightctl/SKILL.md +1 -0
- package/skills/food-order/SKILL.md +1 -0
- package/skills/gemini/SKILL.md +1 -0
- package/skills/gh-issues/SKILL.md +1 -0
- package/skills/gifgrep/SKILL.md +1 -0
- package/skills/github/SKILL.md +1 -0
- package/skills/gog/SKILL.md +1 -0
- package/skills/goplaces/SKILL.md +1 -0
- package/skills/healthcheck/SKILL.md +1 -0
- package/skills/himalaya/SKILL.md +1 -0
- package/skills/imsg/SKILL.md +1 -0
- package/skills/long-task/SKILL.md +1 -0
- package/skills/mcporter/SKILL.md +1 -0
- package/skills/model-usage/SKILL.md +1 -0
- package/skills/nano-banana-pro/SKILL.md +1 -0
- package/skills/nano-pdf/SKILL.md +1 -0
- package/skills/notion/SKILL.md +1 -0
- package/skills/obsidian/SKILL.md +1 -0
- package/skills/openai-image-gen/SKILL.md +1 -0
- package/skills/openai-whisper/SKILL.md +1 -0
- package/skills/openai-whisper-api/SKILL.md +1 -0
- package/skills/openhue/SKILL.md +1 -0
- package/skills/oracle/SKILL.md +1 -0
- package/skills/ordercli/SKILL.md +1 -0
- package/skills/peekaboo/SKILL.md +1 -0
- package/skills/sag/SKILL.md +1 -0
- package/skills/session-logs/SKILL.md +1 -0
- package/skills/sherpa-onnx-tts/SKILL.md +1 -0
- package/skills/skill-creator/SKILL.md +1 -0
- package/skills/slack/SKILL.md +1 -0
- package/skills/songsee/SKILL.md +1 -0
- package/skills/sonoscli/SKILL.md +1 -0
- package/skills/spotify-player/SKILL.md +1 -0
- package/skills/summarize/SKILL.md +1 -0
- package/skills/symihub/SKILL.md +1 -0
- package/skills/things-mac/SKILL.md +1 -0
- package/skills/tmux/SKILL.md +1 -0
- package/skills/trello/SKILL.md +1 -0
- package/skills/video-frames/SKILL.md +1 -0
- package/skills/voice-call/SKILL.md +1 -0
- package/skills/wacli/SKILL.md +1 -0
- package/skills/weather/SKILL.md +1 -0
- package/skills/xurl/SKILL.md +1 -0
|
@@ -10,10 +10,11 @@ import { $ as resolveAuthProfileDisplayLabel, B as resolveApiKeyForProvider, C a
|
|
|
10
10
|
import { n as formatCliCommand, r as resolveCliName, t as isTruthyEnvValue } from "./env-BDXYbTKj.js";
|
|
11
11
|
import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-cCYzSU9h.js";
|
|
12
12
|
import { t as parseBooleanValue$1 } from "./boolean-CE7i9tBR.js";
|
|
13
|
-
import { $ as normalizeDeliveryContext, A as isTransientHttpError, At as DEFAULT_UPLOAD_DIR, Bt as expandToolGroups, C as isContextOverflowError, Ct as resolveGroupSessionKey, D as isRateLimitAssistantError, Dt as registerBrowserRoutes, E as isLikelyContextOverflowError, Et as createBrowserRouteContext, F as resolveSandboxContext, Ft as resolveSandboxConfigForAgent, G as updateLastRoute, Gt as compileGlobPatterns, H as loadSessionStore, Ht as normalizeToolName, I as resolveSandboxRuntimeStatus, It as applyOwnerOnlyToolPolicy, J as isCacheEnabled, Jt as ensureSessionHeader, K as updateSessionStore, Kt as matchesAnyGlobPattern, L as extractDeliveryInfo, Lt as buildPluginToolGroups, M as parseImageSizeError, Mt as getBridgeAuthForPort, N as sanitizeUserFacingText, Nt as ensureBrowserControlAuth, O as isRawApiErrorPayload, Ot as resolveBrowserConfig, P as ensureSandboxWorkspaceForSession, Pt as resolveBrowserControlAuth, Q as mergeDeliveryContext, R as parseSessionThreadInfo, Rt as collectExplicitAllowlist, S as isCompactionFailureError, St as deriveSessionMetaPatch, T as isFailoverErrorMessage, Tt as resolveSessionLockMaxHoldFromTimeout, U as readSessionUpdatedAt, Ut as resolveToolProfilePolicy, V as resolveAndPersistSessionFile, Vt as mergeAlsoAllowPolicy, W as recordSessionMetaFromInbound, Wt as stripPluginOnlyAllowlist, X as deliveryContextFromSession, Xt as resolveBootstrapTotalMaxChars, Y as resolveCacheTtlMs$1, Yt as resolveBootstrapMaxChars, Z as deliveryContextKey, Zt as sanitizeGoogleTurnOrdering, _ as formatRawAssistantErrorForUi, _t as resolveFreshSessionTotalTokens, a as isMessagingToolDuplicateNormalized, at as extractToolCallNames, b as isBillingAssistantError, bt as resolveExplicitAgentSessionKey, c as extractToolCallsFromAssistant, ct as hasInterSessionUserProvenance, d as isAntigravityClaude, dt as evaluateSessionFreshness, et as normalizeSessionDeliveryFields, f as isGoogleModelApi, ft as resolveChannelResetConfig, g as formatBillingErrorMessage, gt as DEFAULT_RESET_TRIGGERS, h as formatAssistantErrorText, ht as resolveThreadFlag, it as countToolResults, j as parseImageDimensionError, jt as resolveExistingPathsWithinRoot, k as isTimeoutErrorMessage, kt as resolveProfile, l as extractToolResultId, lt as normalizeInputProvenance, m as classifyFailoverReason, mt as resolveSessionResetType, n as validateGeminiTurns, nt as archiveSessionTranscripts, o as normalizeTextForComparison, ot as INPUT_PROVENANCE_KIND_VALUES, p as BILLING_ERROR_USER_MESSAGE, pt as resolveSessionResetPolicy, q as updateSessionStoreEntry, qt as buildBootstrapContextFiles, r as pickFallbackThinkingLevel, rt as capArrayByJsonBytes, s as sanitizeSessionMessagesImages, st as applyInputProvenanceToUserMessage, t as validateAnthropicTurns, tt as normalizeAccountId$3, u as downgradeOpenAIReasoningBlocks, ut as resolveSessionKey, v as getApiErrorPayloadFingerprint, vt as canonicalizeMainSessionAlias, w as isFailoverAssistantError, wt as acquireSessionWriteLock, x as isCloudCodeAssistFormatError, xt as resolveMainSessionKey, y as isAuthAssistantError, z as appendAssistantMessageToSessionTranscript, zt as expandPolicyWithPluginGroups } from "./pi-embedded-helpers-
|
|
14
|
-
import { A as VERSION, C as getConfigValueAtPath, D as isSafeExecutableValue, E as unsetConfigValueAtPath, O as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, S as unsetConfigOverride, T as setConfigValueAtPath, _ as parseDurationMs, a as writeConfigFile, b as resetConfigOverrides, c as TELEGRAM_COMMAND_NAME_PATTERN, f as isInboundPathAllowed, g as normalizeScpRemoteHost, h as resolveIMessageRemoteAttachmentRoots, i as resolveConfigSnapshotHash, k as resolveAgentMaxConcurrent, l as normalizeTelegramCommandName, m as resolveIMessageAttachmentRoots, n as loadConfig, o as validateConfigObjectWithPlugins, r as readConfigFileSnapshot, u as resolveTelegramCustomCommands, v as validateJsonSchemaValue, w as parseConfigPath, x as setConfigOverride, y as getConfigOverrides } from "./config-
|
|
13
|
+
import { $ as normalizeDeliveryContext, A as isTransientHttpError, At as DEFAULT_UPLOAD_DIR, Bt as expandToolGroups, C as isContextOverflowError, Ct as resolveGroupSessionKey, D as isRateLimitAssistantError, Dt as registerBrowserRoutes, E as isLikelyContextOverflowError, Et as createBrowserRouteContext, F as resolveSandboxContext, Ft as resolveSandboxConfigForAgent, G as updateLastRoute, Gt as compileGlobPatterns, H as loadSessionStore, Ht as normalizeToolName, I as resolveSandboxRuntimeStatus, It as applyOwnerOnlyToolPolicy, J as isCacheEnabled, Jt as ensureSessionHeader, K as updateSessionStore, Kt as matchesAnyGlobPattern, L as extractDeliveryInfo, Lt as buildPluginToolGroups, M as parseImageSizeError, Mt as getBridgeAuthForPort, N as sanitizeUserFacingText, Nt as ensureBrowserControlAuth, O as isRawApiErrorPayload, Ot as resolveBrowserConfig, P as ensureSandboxWorkspaceForSession, Pt as resolveBrowserControlAuth, Q as mergeDeliveryContext, R as parseSessionThreadInfo, Rt as collectExplicitAllowlist, S as isCompactionFailureError, St as deriveSessionMetaPatch, T as isFailoverErrorMessage, Tt as resolveSessionLockMaxHoldFromTimeout, U as readSessionUpdatedAt, Ut as resolveToolProfilePolicy, V as resolveAndPersistSessionFile, Vt as mergeAlsoAllowPolicy, W as recordSessionMetaFromInbound, Wt as stripPluginOnlyAllowlist, X as deliveryContextFromSession, Xt as resolveBootstrapTotalMaxChars, Y as resolveCacheTtlMs$1, Yt as resolveBootstrapMaxChars, Z as deliveryContextKey, Zt as sanitizeGoogleTurnOrdering, _ as formatRawAssistantErrorForUi, _t as resolveFreshSessionTotalTokens, a as isMessagingToolDuplicateNormalized, at as extractToolCallNames, b as isBillingAssistantError, bt as resolveExplicitAgentSessionKey, c as extractToolCallsFromAssistant, ct as hasInterSessionUserProvenance, d as isAntigravityClaude, dt as evaluateSessionFreshness, et as normalizeSessionDeliveryFields, f as isGoogleModelApi, ft as resolveChannelResetConfig, g as formatBillingErrorMessage, gt as DEFAULT_RESET_TRIGGERS, h as formatAssistantErrorText, ht as resolveThreadFlag, it as countToolResults, j as parseImageDimensionError, jt as resolveExistingPathsWithinRoot, k as isTimeoutErrorMessage, kt as resolveProfile, l as extractToolResultId, lt as normalizeInputProvenance, m as classifyFailoverReason, mt as resolveSessionResetType, n as validateGeminiTurns, nt as archiveSessionTranscripts, o as normalizeTextForComparison, ot as INPUT_PROVENANCE_KIND_VALUES, p as BILLING_ERROR_USER_MESSAGE, pt as resolveSessionResetPolicy, q as updateSessionStoreEntry, qt as buildBootstrapContextFiles, r as pickFallbackThinkingLevel, rt as capArrayByJsonBytes, s as sanitizeSessionMessagesImages, st as applyInputProvenanceToUserMessage, t as validateAnthropicTurns, tt as normalizeAccountId$3, u as downgradeOpenAIReasoningBlocks, ut as resolveSessionKey, v as getApiErrorPayloadFingerprint, vt as canonicalizeMainSessionAlias, w as isFailoverAssistantError, wt as acquireSessionWriteLock, x as isCloudCodeAssistFormatError, xt as resolveMainSessionKey, y as isAuthAssistantError, z as appendAssistantMessageToSessionTranscript, zt as expandPolicyWithPluginGroups } from "./pi-embedded-helpers-B1P8lkqj.js";
|
|
14
|
+
import { A as VERSION, C as getConfigValueAtPath, D as isSafeExecutableValue, E as unsetConfigValueAtPath, O as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, S as unsetConfigOverride, T as setConfigValueAtPath, _ as parseDurationMs, a as writeConfigFile, b as resetConfigOverrides, c as TELEGRAM_COMMAND_NAME_PATTERN, f as isInboundPathAllowed, g as normalizeScpRemoteHost, h as resolveIMessageRemoteAttachmentRoots, i as resolveConfigSnapshotHash, k as resolveAgentMaxConcurrent, l as normalizeTelegramCommandName, m as resolveIMessageAttachmentRoots, n as loadConfig, o as validateConfigObjectWithPlugins, r as readConfigFileSnapshot, u as resolveTelegramCustomCommands, v as validateJsonSchemaValue, w as parseConfigPath, x as setConfigOverride, y as getConfigOverrides } from "./config-Do4JxgLI.js";
|
|
15
15
|
import { a as applyTestPluginDefaults, c as resolveMemorySlotDecision, d as isDangerousHostEnvVarName, i as safeStatSync, n as discoverSymiPlugins, o as normalizePluginsConfig, r as isPathInside, s as resolveEnableState, t as loadPluginManifestRegistry, u as isPathInsideWithRealpath } from "./manifest-registry-CBCGTsIb.js";
|
|
16
|
-
import { C as rawDataToString, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, T as isSecureWebSocketUrl, x as ensureChromeExtensionRelayServer } from "./chrome-
|
|
16
|
+
import { C as rawDataToString, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, T as isSecureWebSocketUrl, x as ensureChromeExtensionRelayServer } from "./chrome-BaMQiegP.js";
|
|
17
|
+
import { l as parseFrontmatterBlock } from "./frontmatter-CTR5f_Ez.js";
|
|
17
18
|
import { c as assertSandboxPath, d as resolveSandboxedMediaSource, f as applySkillEnvOverrides, i as resolveSkillsPromptForRun, l as resolveSandboxInputPath, n as buildWorkspaceSkillSnapshot, p as applySkillEnvOverridesFromSnapshot, r as loadWorkspaceSkillEntries, s as assertMediaNotDataUrl } from "./skills-CXxrn_e2.js";
|
|
18
19
|
import { n as formatErrorMessage, r as formatUncaughtError } from "./errors-XIsvXeC-.js";
|
|
19
20
|
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-C7CauEK8.js";
|
|
@@ -27,20 +28,20 @@ import { _ as resolveDiscordAccount, a as normalizeWhatsAppTarget, c as listTele
|
|
|
27
28
|
import { a as logoutWeb, i as logWebSelfId, l as readWebSelfId, p as webAuthExists, r as getWebAuthAgeMs, t as resolveWhatsAppAccount } from "./accounts-BRw8yhIW.js";
|
|
28
29
|
import { t as resolveIMessageAccount } from "./accounts-3dCrO3oZ.js";
|
|
29
30
|
import { n as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-BuZxOb3B.js";
|
|
30
|
-
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-
|
|
31
|
-
import { $ as fetchChannelPermissionsDiscord, A as unpinMessageDiscord, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveTimestampMs, 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 resolveDiscordSystemLocation, 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 resolveDiscordShouldRequireMention, a as removeReactionDiscord, at as resolveDiscordChannelId, b as sendWebhookMessageDiscord, bt as formatDiscordReactionEmoji, c as formatDiscordComponentEventText, ct as allowListMatches$1, d as parseDiscordModalCustomId, dt as normalizeDiscordSlug, et as hasAnyGuildPermissionDiscord, f as parseDiscordModalCustomIdForCarbon, ft as resolveDiscordAllowListMatch, g as sendMessageDiscord, gt as resolveDiscordOwnerAllowFrom, h as resolveDiscordModalEntry, ht as resolveDiscordMemberAccessState, i as removeOwnReactionsDiscord, it as parseDiscordTarget, j as addRoleDiscord, k as searchMessagesDiscord, l as parseDiscordComponentCustomId, lt as isDiscordGroupAllowedByPolicy, m as resolveDiscordComponentEntry, mt as resolveDiscordGuildEntry, n as fetchReactionsDiscord, nt as createDiscordClient, o as sendDiscordComponentMessage, ot as listDiscordDirectoryGroupsLive, p as readDiscordComponentSpec, pt as resolveDiscordChannelConfigWithFallback, q as deleteChannelDiscord, r as reactMessageDiscord, rt as createDiscordRestClient, s as createDiscordFormModal, st as listDiscordDirectoryPeersLive, tt as chunkDiscordTextWithMode, u as parseDiscordComponentCustomIdForCarbon, ut as normalizeDiscordAllowList, v as sendStickerDiscord, vt as resolveGroupDmAllow, w as fetchMessageDiscord, wt as fetchDiscord, x as createThreadDiscord, xt as formatDiscordUserTag, y as sendVoiceMessageDiscord, yt as shouldEmitDiscordReactionNotification, z as listGuildChannelsDiscord } from "./send-
|
|
31
|
+
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-B7kMNQ-T.js";
|
|
32
|
+
import { $ as fetchChannelPermissionsDiscord, A as unpinMessageDiscord, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveTimestampMs, 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 resolveDiscordSystemLocation, 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 resolveDiscordShouldRequireMention, a as removeReactionDiscord, at as resolveDiscordChannelId, b as sendWebhookMessageDiscord, bt as formatDiscordReactionEmoji, c as formatDiscordComponentEventText, ct as allowListMatches$1, d as parseDiscordModalCustomId, dt as normalizeDiscordSlug, et as hasAnyGuildPermissionDiscord, f as parseDiscordModalCustomIdForCarbon, ft as resolveDiscordAllowListMatch, g as sendMessageDiscord, gt as resolveDiscordOwnerAllowFrom, h as resolveDiscordModalEntry, ht as resolveDiscordMemberAccessState, i as removeOwnReactionsDiscord, it as parseDiscordTarget, j as addRoleDiscord, k as searchMessagesDiscord, l as parseDiscordComponentCustomId, lt as isDiscordGroupAllowedByPolicy, m as resolveDiscordComponentEntry, mt as resolveDiscordGuildEntry, n as fetchReactionsDiscord, nt as createDiscordClient, o as sendDiscordComponentMessage, ot as listDiscordDirectoryGroupsLive, p as readDiscordComponentSpec, pt as resolveDiscordChannelConfigWithFallback, q as deleteChannelDiscord, r as reactMessageDiscord, rt as createDiscordRestClient, s as createDiscordFormModal, st as listDiscordDirectoryPeersLive, tt as chunkDiscordTextWithMode, u as parseDiscordComponentCustomIdForCarbon, ut as normalizeDiscordAllowList, v as sendStickerDiscord, vt as resolveGroupDmAllow, w as fetchMessageDiscord, wt as fetchDiscord, x as createThreadDiscord, xt as formatDiscordUserTag, y as sendVoiceMessageDiscord, yt as shouldEmitDiscordReactionNotification, z as listGuildChannelsDiscord } from "./send-9ktd0CBZ.js";
|
|
32
33
|
import { t as emitSessionTranscriptUpdate } from "./transcript-events-BBh3Gsrx.js";
|
|
33
34
|
import { i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, r as sanitizeToolResultImages } from "./tool-images-SqqWIT22.js";
|
|
34
|
-
import { C as getGlobalHookRunner, S as parseInlineDirectives$1, _ as normalizeTargetForProvider, a as normalizeOutboundPayloadsForJson, b as MEDIA_TOKEN_RE, 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 throwIfAborted, w as initializeGlobalHookRunner, x as splitMediaFromOutput, y as parseReplyDirectives } from "./deliver-
|
|
35
|
+
import { C as getGlobalHookRunner, S as parseInlineDirectives$1, _ as normalizeTargetForProvider, a as normalizeOutboundPayloadsForJson, b as MEDIA_TOKEN_RE, 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 throwIfAborted, w as initializeGlobalHookRunner, x as splitMediaFromOutput, y as parseReplyDirectives } from "./deliver-Dx39g9ey.js";
|
|
35
36
|
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-BUcR3Meg.js";
|
|
36
37
|
import { r as getDiagnosticSessionState } from "./diagnostic-session-state-Zw87xFym.js";
|
|
37
|
-
import { S as ensureSymiModelsJson, _ as stripMinimaxToolCallXml, a as decodeDataUrl, b as stripReasoningTagsFromText, c as extractAssistantText$1, d as extractThinkingFromTaggedText, f as formatReasoningMessage, g as stripDowngradedToolCallText, h as promoteThinkingTagsToBlocks, i as coerceImageModelConfig, l as extractAssistantThinking, m as isAssistantMessage, o as resolveProviderVisionModelFromConfig, p as inferToolMetaFromArgs, r as coerceImageAssistantText, s as minimaxUnderstandImage, u as extractThinkingFromTaggedStream, v as stripThinkingTagsFromText, x as extractTextFromChatContent, y as resolveToolDisplay } from "./image-
|
|
38
|
+
import { S as ensureSymiModelsJson, _ as stripMinimaxToolCallXml, a as decodeDataUrl, b as stripReasoningTagsFromText, c as extractAssistantText$1, d as extractThinkingFromTaggedText, f as formatReasoningMessage, g as stripDowngradedToolCallText, h as promoteThinkingTagsToBlocks, i as coerceImageModelConfig, l as extractAssistantThinking, m as isAssistantMessage, o as resolveProviderVisionModelFromConfig, p as inferToolMetaFromArgs, r as coerceImageAssistantText, s as minimaxUnderstandImage, u as extractThinkingFromTaggedStream, v as stripThinkingTagsFromText, x as extractTextFromChatContent, y as resolveToolDisplay } from "./image-C-JvPPpM.js";
|
|
38
39
|
import { t as ensurePiAuthJsonFromAuthProfiles } from "./pi-auth-json-RXOlh8ar.js";
|
|
39
40
|
import { a as isSilentReplyText, i as isSilentReplyPrefixText, n as SILENT_REPLY_TOKEN, r as SYMIPULSE_TOKEN, t as HEARTBEAT_TOKEN } from "./tokens-W0JzCJJM.js";
|
|
40
|
-
import { $ as isVoiceCompatibleAudio, A as extractTelegramLocation, B as normalizeAllowFromWithStore$1, C as buildTelegramGroupFrom, D as buildTypingThreadParams, E as buildTelegramThreadParams, F as resolveTelegramMediaPlaceholder, G as formatLocationText, H as firstDefined$1, I as resolveTelegramReplyId, J as readChannelAllowFromStore, K as toLocationContext, L as resolveTelegramStreamMode, M as normalizeForwardedContext, N as resolveTelegramForumThreadId, O as describeReplyTarget, P as resolveTelegramGroupAllowFromContext, Q as listPairingChannels, R as resolveTelegramThreadSpec, S as buildSenderName, T as buildTelegramParentPeer, U as isSenderIdAllowed, V as resolveSenderAllowMatch, W as mergeAllowFromSources, X as upsertChannelPairingRequest, Y as removeChannelAllowFromStoreEntry, Z as getPairingAdapter, _ as resolveTelegramFetch, a as reactMessageTelegram, b as buildGroupLabel, c as sendStickerTelegram, d as wasSentByBot, et as parseTelegramTarget, f as isRecoverableTelegramNetworkError, g as wrapFileReferencesInHtml, h as renderTelegramHtmlText, i as editMessageTelegram, j as hasBotMention, k as expandTextLinks, m as markdownToTelegramHtml, n as createForumTopicTelegram, o as sendMessageTelegram, p as markdownToTelegramChunks, q as addChannelAllowFromStoreEntry, r as deleteMessageTelegram, s as sendPollTelegram, t as buildInlineKeyboard, tt as resolveTelegramTargetChatType, u as resolveTelegramVoiceSend, v as splitTelegramCaption, w as buildTelegramGroupPeerId, x as buildSenderLabel, y as withTelegramApiErrorLogging, z as isSenderAllowed$1 } from "./send-
|
|
41
|
+
import { $ as isVoiceCompatibleAudio, A as extractTelegramLocation, B as normalizeAllowFromWithStore$1, C as buildTelegramGroupFrom, D as buildTypingThreadParams, E as buildTelegramThreadParams, F as resolveTelegramMediaPlaceholder, G as formatLocationText, H as firstDefined$1, I as resolveTelegramReplyId, J as readChannelAllowFromStore, K as toLocationContext, L as resolveTelegramStreamMode, M as normalizeForwardedContext, N as resolveTelegramForumThreadId, O as describeReplyTarget, P as resolveTelegramGroupAllowFromContext, Q as listPairingChannels, R as resolveTelegramThreadSpec, S as buildSenderName, T as buildTelegramParentPeer, U as isSenderIdAllowed, V as resolveSenderAllowMatch, W as mergeAllowFromSources, X as upsertChannelPairingRequest, Y as removeChannelAllowFromStoreEntry, Z as getPairingAdapter, _ as resolveTelegramFetch, a as reactMessageTelegram, b as buildGroupLabel, c as sendStickerTelegram, d as wasSentByBot, et as parseTelegramTarget, f as isRecoverableTelegramNetworkError, g as wrapFileReferencesInHtml, h as renderTelegramHtmlText, i as editMessageTelegram, j as hasBotMention, k as expandTextLinks, m as markdownToTelegramHtml, n as createForumTopicTelegram, o as sendMessageTelegram, p as markdownToTelegramChunks, q as addChannelAllowFromStoreEntry, r as deleteMessageTelegram, s as sendPollTelegram, t as buildInlineKeyboard, tt as resolveTelegramTargetChatType, u as resolveTelegramVoiceSend, v as splitTelegramCaption, w as buildTelegramGroupPeerId, x as buildSenderLabel, y as withTelegramApiErrorLogging, z as isSenderAllowed$1 } from "./send-90t8KM2a.js";
|
|
41
42
|
import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-CuZX_Q4t.js";
|
|
42
43
|
import { a as resolveAgentIdentity, i as resolveAckReaction, o as resolveEffectiveMessagesConfig, r as resolveResponsePrefixTemplate, s as resolveHumanDelayConfig, t as createReplyPrefixOptions } from "./reply-prefix-CvEIl6_d.js";
|
|
43
|
-
import { a as resolveMemorySearchConfig, i as resolveOllamaBaseUrl, r as probeOllamaEmbeddingModels, t as MemoryIndexManager } from "./manager-
|
|
44
|
+
import { a as resolveMemorySearchConfig, i as resolveOllamaBaseUrl, r as probeOllamaEmbeddingModels, t as MemoryIndexManager } from "./manager-Bc-MeMho.js";
|
|
44
45
|
import { c as normalizeExtraMemoryPaths, f as runTasksWithConcurrency, s as listMemoryFiles } from "./internal-DjnxpF_K.js";
|
|
45
46
|
import { n as retryAsync } from "./retry-B-y5suGA.js";
|
|
46
47
|
import { a as createActionGate, c as jsonResult, d as readReactionParams, f as readStringArrayParam, l as parseAvailableTags, m as readStringParam, n as missingTargetError, o as imageResult, p as readStringOrNumberParam, r as unknownTargetError, s as imageResultFromFile, t as ambiguousTargetError, u as readNumberParam } from "./target-errors-DeJTztcq.js";
|
|
@@ -50,7 +51,7 @@ import { n as fetchWithTimeout, t as bindAbortRelay } from "./fetch-timeout-CVCB
|
|
|
50
51
|
import { a as readResponseWithLimit, i as fetchRemoteMedia, n as getDefaultMediaLocalRoots, o as fetchWithSsrFGuard, t as getAgentScopedMediaLocalRoots } from "./local-roots-ClipCZ9s.js";
|
|
51
52
|
import { a as loadWebMedia, i as getDefaultLocalRoots } from "./ir-7tMVY7D_.js";
|
|
52
53
|
import { _ as resolveNativeCommandsEnabled, a as listChatCommandsForConfig, c as normalizeCommandBody, d as resolveCommandArgMenu, f as serializeCommandArgs, g as isRestartEnabled, h as isNativeCommandsExplicitlyDisabled, i as listChatCommands, l as parseCommandArgs, m as isCommandFlagEnabled, o as listNativeCommandSpecs, p as shouldHandleTextCommands, r as findCommandByNativeName, s as listNativeCommandSpecsForConfig, t as buildCommandTextFromArgs, u as resolveCommandArgChoices, v as resolveNativeSkillsEnabled } from "./commands-registry-DxbSTLNQ.js";
|
|
53
|
-
import { _ as CLI_OUTPUT_MAX_BUFFER, a as resolveMediaAttachmentLocalRoots, c as loadModelCatalog, d as resolveAttachmentKind, f as buildRandomTempFilePath, g as resolveMediaUnderstandingScope, h as normalizeMediaUnderstandingChatType, i as resolveAutoImageModel, l as modelSupportsVision, m as resolveTimeoutMs$1, n as createMediaAttachmentCache, o as runCapability, p as resolveConcurrency, r as normalizeMediaAttachments, s as findModelInCatalog, t as buildProviderRegistry, v as applyTemplate, y as registerUnhandledRejectionHandler } from "./runner-
|
|
54
|
+
import { _ as CLI_OUTPUT_MAX_BUFFER, a as resolveMediaAttachmentLocalRoots, c as loadModelCatalog, d as resolveAttachmentKind, f as buildRandomTempFilePath, g as resolveMediaUnderstandingScope, h as normalizeMediaUnderstandingChatType, i as resolveAutoImageModel, l as modelSupportsVision, m as resolveTimeoutMs$1, n as createMediaAttachmentCache, o as runCapability, p as resolveConcurrency, r as normalizeMediaAttachments, s as findModelInCatalog, t as buildProviderRegistry, v as applyTemplate, y as registerUnhandledRejectionHandler } from "./runner-C4opGXAA.js";
|
|
54
55
|
import { c as getSkillsSnapshotVersion, d as createAsyncLock, f as readJsonFile, i as resolveSkillCommandInvocation, l as pruneExpiredPending, n as listSkillCommandsForAgents, o as getRemoteSkillEligibility, p as writeJsonAtomic, r as listSkillCommandsForWorkspace, s as ensureSkillsWatcher, t as listReservedChatSlashCommandNames, u as resolvePairingPaths } from "./skill-commands-DG2lcozb.js";
|
|
55
56
|
import { r as normalizeInboundTextNewlines, t as finalizeInboundContext } from "./inbound-context-DZQU0r3y.js";
|
|
56
57
|
import { n as wrapFetchWithAbortSignal, t as resolveFetch } from "./fetch-ClslA6GS.js";
|
|
@@ -58,11 +59,11 @@ import { n as recordCommandPoll, r as resetCommandPollCount } from "./command-po
|
|
|
58
59
|
import { n as recordChannelActivity, r as createDiscordRetryRunner, t as getChannelActivity } from "./channel-activity-D8QD7GoV.js";
|
|
59
60
|
import { n as normalizePollInput } from "./polls-Kt7OzYCK.js";
|
|
60
61
|
import { t as convertMarkdownTables } from "./tables-DoG-pFrf.js";
|
|
61
|
-
import { a as resolveSignalRpcContext, c as streamSignalEvents, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-
|
|
62
|
-
import { a as formatIMessageChatTarget, c as parseIMessageTarget, i as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, o as isAllowedIMessageSender, r as createIMessageRpcClient, s as normalizeIMessageHandle, t as sendMessageIMessage } from "./send-
|
|
62
|
+
import { a as resolveSignalRpcContext, c as streamSignalEvents, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-zMHWALCW.js";
|
|
63
|
+
import { a as formatIMessageChatTarget, c as parseIMessageTarget, i as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, o as isAllowedIMessageSender, r as createIMessageRpcClient, s as normalizeIMessageHandle, t as sendMessageIMessage } from "./send-CQj8FBE3.js";
|
|
63
64
|
import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-Jy5dFY67.js";
|
|
64
65
|
import { t as makeProxyFetch } from "./proxy-d9fklNTC.js";
|
|
65
|
-
import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-
|
|
66
|
+
import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-A6SltFjk.js";
|
|
66
67
|
import { t as getActiveWebListener } from "./active-listener-BVZOh2T1.js";
|
|
67
68
|
import { createRequire } from "node:module";
|
|
68
69
|
import * as path$1 from "node:path";
|
|
@@ -81,7 +82,7 @@ import AjvPkg from "ajv";
|
|
|
81
82
|
import { CURRENT_SESSION_VERSION, DefaultResourceLoader, SessionManager, SettingsManager, codingTools, createAgentSession, createEditTool, createReadTool, createWriteTool, estimateTokens, generateSummary, readTool } from "@mariozechner/pi-coding-agent";
|
|
82
83
|
import { createServer } from "node:http";
|
|
83
84
|
import { ProxyAgent, fetch as fetch$1 } from "undici";
|
|
84
|
-
import WebSocket
|
|
85
|
+
import WebSocket, { WebSocket as WebSocket$1 } from "ws";
|
|
85
86
|
import { Buffer as Buffer$1 } from "node:buffer";
|
|
86
87
|
import { EdgeTTS } from "node-edge-tts";
|
|
87
88
|
import { createJiti } from "jiti";
|
|
@@ -4335,7 +4336,7 @@ async function getMemorySearchManager(params) {
|
|
|
4335
4336
|
const wrapper = new FallbackMemoryManager({
|
|
4336
4337
|
primary,
|
|
4337
4338
|
fallbackFactory: async () => {
|
|
4338
|
-
const { MemoryIndexManager } = await import("./manager-
|
|
4339
|
+
const { MemoryIndexManager } = await import("./manager-Bc-MeMho.js").then((n) => n.n);
|
|
4339
4340
|
return await MemoryIndexManager.get(params);
|
|
4340
4341
|
}
|
|
4341
4342
|
}, () => QMD_MANAGER_CACHE.delete(cacheKey));
|
|
@@ -4348,7 +4349,7 @@ async function getMemorySearchManager(params) {
|
|
|
4348
4349
|
}
|
|
4349
4350
|
}
|
|
4350
4351
|
try {
|
|
4351
|
-
const { MemoryIndexManager } = await import("./manager-
|
|
4352
|
+
const { MemoryIndexManager } = await import("./manager-Bc-MeMho.js").then((n) => n.n);
|
|
4352
4353
|
return { manager: await MemoryIndexManager.get(params) };
|
|
4353
4354
|
} catch (err) {
|
|
4354
4355
|
return {
|
|
@@ -6445,10 +6446,10 @@ function buildEmbeddedSandboxInfo(sandbox, execElevated) {
|
|
|
6445
6446
|
//#endregion
|
|
6446
6447
|
//#region src/agents/system-prompt-skills-autoload.ts
|
|
6447
6448
|
const FRONTMATTER_RE = /^---\s*\n[\s\S]*?\n---\s*\n?/;
|
|
6448
|
-
let cachedPackageRoot;
|
|
6449
|
-
function getPackageRoot() {
|
|
6450
|
-
if (cachedPackageRoot === void 0) cachedPackageRoot = resolveSymiPackageRootSync({});
|
|
6451
|
-
return cachedPackageRoot;
|
|
6449
|
+
let cachedPackageRoot$1;
|
|
6450
|
+
function getPackageRoot$1() {
|
|
6451
|
+
if (cachedPackageRoot$1 === void 0) cachedPackageRoot$1 = resolveSymiPackageRootSync({});
|
|
6452
|
+
return cachedPackageRoot$1;
|
|
6452
6453
|
}
|
|
6453
6454
|
function safeSkillName(name) {
|
|
6454
6455
|
return /^[a-zA-Z0-9_][a-zA-Z0-9._-]{0,59}$/.test(name);
|
|
@@ -6477,7 +6478,7 @@ function buildAutoLoadedSkillsBlock(opts) {
|
|
|
6477
6478
|
if (opts.minimalMode) return "";
|
|
6478
6479
|
const names = opts.skillNames.filter((n) => typeof n === "string" && n.trim().length > 0);
|
|
6479
6480
|
if (names.length === 0) return "";
|
|
6480
|
-
const packageRoot = getPackageRoot();
|
|
6481
|
+
const packageRoot = getPackageRoot$1();
|
|
6481
6482
|
const loaded = [];
|
|
6482
6483
|
for (const rawName of names) {
|
|
6483
6484
|
const name = rawName.trim();
|
|
@@ -6522,6 +6523,296 @@ function buildAutoLoadedSkillsBlock(opts) {
|
|
|
6522
6523
|
].join("\n");
|
|
6523
6524
|
}
|
|
6524
6525
|
|
|
6526
|
+
//#endregion
|
|
6527
|
+
//#region src/agents/skills/triggers.ts
|
|
6528
|
+
const QUOTE_RE = /^["'`](.*)["'`]$/;
|
|
6529
|
+
const ARRAY_FORM_RE = /^\[(.*)\]$/s;
|
|
6530
|
+
function stripWrappingQuotes(s) {
|
|
6531
|
+
const m = s.trim().match(QUOTE_RE);
|
|
6532
|
+
return m ? m[1] : s.trim();
|
|
6533
|
+
}
|
|
6534
|
+
/** Parse a single trigger value, dropping empty / whitespace-only entries. */
|
|
6535
|
+
function cleanTrigger(raw) {
|
|
6536
|
+
const trimmed = stripWrappingQuotes(raw).toLowerCase();
|
|
6537
|
+
return trimmed.length > 0 ? trimmed : null;
|
|
6538
|
+
}
|
|
6539
|
+
/**
|
|
6540
|
+
* Parse the value of a `triggers:` frontmatter field into a string[].
|
|
6541
|
+
* Accepts both inline-array form `[a, b, "c d"]` and YAML-list form
|
|
6542
|
+
* (multiline with leading hyphens). Returns deduped lowercased trigger
|
|
6543
|
+
* strings, or empty array on unparseable / missing input.
|
|
6544
|
+
*/
|
|
6545
|
+
function parseTriggersValue(raw) {
|
|
6546
|
+
if (typeof raw !== "string") return [];
|
|
6547
|
+
const trimmed = raw.trim();
|
|
6548
|
+
if (!trimmed) return [];
|
|
6549
|
+
const items = [];
|
|
6550
|
+
const arrayMatch = trimmed.match(ARRAY_FORM_RE);
|
|
6551
|
+
if (arrayMatch) {
|
|
6552
|
+
const inner = arrayMatch[1];
|
|
6553
|
+
let buf = "";
|
|
6554
|
+
let inQuote = null;
|
|
6555
|
+
for (const ch of inner) {
|
|
6556
|
+
if (inQuote) {
|
|
6557
|
+
if (ch === inQuote) inQuote = null;
|
|
6558
|
+
else buf += ch;
|
|
6559
|
+
continue;
|
|
6560
|
+
}
|
|
6561
|
+
if (ch === "\"" || ch === "'") {
|
|
6562
|
+
inQuote = ch;
|
|
6563
|
+
continue;
|
|
6564
|
+
}
|
|
6565
|
+
if (ch === ",") {
|
|
6566
|
+
const cleaned = cleanTrigger(buf);
|
|
6567
|
+
if (cleaned) items.push(cleaned);
|
|
6568
|
+
buf = "";
|
|
6569
|
+
continue;
|
|
6570
|
+
}
|
|
6571
|
+
buf += ch;
|
|
6572
|
+
}
|
|
6573
|
+
const cleaned = cleanTrigger(buf);
|
|
6574
|
+
if (cleaned) items.push(cleaned);
|
|
6575
|
+
} else for (const line of trimmed.split("\n")) {
|
|
6576
|
+
const ltrim = line.trimStart();
|
|
6577
|
+
if (ltrim.startsWith("- ")) {
|
|
6578
|
+
const cleaned = cleanTrigger(ltrim.slice(2));
|
|
6579
|
+
if (cleaned) items.push(cleaned);
|
|
6580
|
+
} else if (ltrim && !ltrim.startsWith("#")) {
|
|
6581
|
+
const cleaned = cleanTrigger(ltrim);
|
|
6582
|
+
if (cleaned) items.push(cleaned);
|
|
6583
|
+
}
|
|
6584
|
+
}
|
|
6585
|
+
const seen = /* @__PURE__ */ new Set();
|
|
6586
|
+
const out = [];
|
|
6587
|
+
for (const t of items) if (!seen.has(t)) {
|
|
6588
|
+
seen.add(t);
|
|
6589
|
+
out.push(t);
|
|
6590
|
+
}
|
|
6591
|
+
return out;
|
|
6592
|
+
}
|
|
6593
|
+
/**
|
|
6594
|
+
* Extract triggers from a parsed frontmatter record. Returns empty array
|
|
6595
|
+
* when the field is absent or unparseable.
|
|
6596
|
+
*/
|
|
6597
|
+
function getSkillTriggers(frontmatter) {
|
|
6598
|
+
return parseTriggersValue(frontmatter.triggers);
|
|
6599
|
+
}
|
|
6600
|
+
|
|
6601
|
+
//#endregion
|
|
6602
|
+
//#region src/agents/tools/skill-search-tool.ts
|
|
6603
|
+
const SkillSearchToolSchema = Type.Object({
|
|
6604
|
+
query: Type.String({
|
|
6605
|
+
minLength: 1,
|
|
6606
|
+
description: "Intent description (2-8 words). Match by trigger keywords first, then description text."
|
|
6607
|
+
}),
|
|
6608
|
+
limit: Type.Optional(Type.Number({
|
|
6609
|
+
minimum: 1,
|
|
6610
|
+
maximum: 10,
|
|
6611
|
+
description: "Max results to return (default 5, capped at 10)."
|
|
6612
|
+
}))
|
|
6613
|
+
});
|
|
6614
|
+
const CACHE_TTL_MS = 6e4;
|
|
6615
|
+
const SAFE_NAME_RE = /^[a-zA-Z0-9_][a-zA-Z0-9._-]{0,59}$/;
|
|
6616
|
+
function loadSkillFromDir(dir, source) {
|
|
6617
|
+
const name = path.basename(dir);
|
|
6618
|
+
if (!SAFE_NAME_RE.test(name)) return null;
|
|
6619
|
+
const file = path.join(dir, "SKILL.md");
|
|
6620
|
+
let raw;
|
|
6621
|
+
try {
|
|
6622
|
+
if (!fs.statSync(file).isFile()) return null;
|
|
6623
|
+
raw = fs.readFileSync(file, "utf8");
|
|
6624
|
+
} catch {
|
|
6625
|
+
return null;
|
|
6626
|
+
}
|
|
6627
|
+
const fm = parseFrontmatterBlock(raw);
|
|
6628
|
+
return {
|
|
6629
|
+
name,
|
|
6630
|
+
description: (fm.description ?? "").trim(),
|
|
6631
|
+
path: file,
|
|
6632
|
+
triggers: getSkillTriggers(fm),
|
|
6633
|
+
source
|
|
6634
|
+
};
|
|
6635
|
+
}
|
|
6636
|
+
function listSkillDirs(root) {
|
|
6637
|
+
const skillsDir = path.join(root, "skills");
|
|
6638
|
+
let entries;
|
|
6639
|
+
try {
|
|
6640
|
+
entries = fs.readdirSync(skillsDir, { withFileTypes: true });
|
|
6641
|
+
} catch {
|
|
6642
|
+
return [];
|
|
6643
|
+
}
|
|
6644
|
+
return entries.filter((e) => e.isDirectory()).map((e) => path.join(skillsDir, e.name));
|
|
6645
|
+
}
|
|
6646
|
+
let cachedPackageRoot;
|
|
6647
|
+
const cachePerWorkspace = /* @__PURE__ */ new Map();
|
|
6648
|
+
function getPackageRoot() {
|
|
6649
|
+
if (cachedPackageRoot === void 0) cachedPackageRoot = resolveSymiPackageRootSync({});
|
|
6650
|
+
return cachedPackageRoot;
|
|
6651
|
+
}
|
|
6652
|
+
function loadAllSkills(workspaceDir) {
|
|
6653
|
+
const cacheKey = workspaceDir ?? "";
|
|
6654
|
+
const now = Date.now();
|
|
6655
|
+
const existing = cachePerWorkspace.get(cacheKey);
|
|
6656
|
+
if (existing && now - existing.loadedAt < CACHE_TTL_MS) return existing.skills;
|
|
6657
|
+
const seen = /* @__PURE__ */ new Map();
|
|
6658
|
+
if (workspaceDir) for (const dir of listSkillDirs(workspaceDir)) {
|
|
6659
|
+
const skill = loadSkillFromDir(dir, "workspace");
|
|
6660
|
+
if (skill && !seen.has(skill.name)) seen.set(skill.name, skill);
|
|
6661
|
+
}
|
|
6662
|
+
const packageRoot = getPackageRoot();
|
|
6663
|
+
if (packageRoot) for (const dir of listSkillDirs(packageRoot)) {
|
|
6664
|
+
const skill = loadSkillFromDir(dir, "bundled");
|
|
6665
|
+
if (skill && !seen.has(skill.name)) seen.set(skill.name, skill);
|
|
6666
|
+
}
|
|
6667
|
+
const skills = [...seen.values()];
|
|
6668
|
+
cachePerWorkspace.set(cacheKey, {
|
|
6669
|
+
skills,
|
|
6670
|
+
loadedAt: now
|
|
6671
|
+
});
|
|
6672
|
+
return skills;
|
|
6673
|
+
}
|
|
6674
|
+
const TOKEN_SPLIT_RE = /[^\w/]+/;
|
|
6675
|
+
function tokenizeQuery(raw) {
|
|
6676
|
+
return raw.toLowerCase().split(TOKEN_SPLIT_RE).filter((t) => t.length >= 2);
|
|
6677
|
+
}
|
|
6678
|
+
/**
|
|
6679
|
+
* Score a query against one skill's triggers + description.
|
|
6680
|
+
* - Trigger score: ratio of query tokens that appear in the trigger set.
|
|
6681
|
+
* - FTS score: 0.4 × ratio of query tokens that appear in the description
|
|
6682
|
+
* (case-insensitive substring match).
|
|
6683
|
+
* - Final = max(trigger, fts) so trigger matches always beat descriptions.
|
|
6684
|
+
* - Returns 0 for "no signal at all" (caller should drop these).
|
|
6685
|
+
*/
|
|
6686
|
+
function scoreSkillMatch(skill, queryTokens) {
|
|
6687
|
+
if (queryTokens.length === 0) return 0;
|
|
6688
|
+
const triggerSet = new Set(skill.triggers.map((t) => t.toLowerCase()));
|
|
6689
|
+
const description = skill.description.toLowerCase();
|
|
6690
|
+
let triggerHits = 0;
|
|
6691
|
+
let ftsHits = 0;
|
|
6692
|
+
for (const token of queryTokens) if (triggerSet.has(token)) triggerHits += 1;
|
|
6693
|
+
else if (description.includes(token)) ftsHits += 1;
|
|
6694
|
+
const triggerScore = triggerHits / queryTokens.length;
|
|
6695
|
+
const ftsScore = ftsHits / queryTokens.length * .4;
|
|
6696
|
+
return Math.max(triggerScore, ftsScore);
|
|
6697
|
+
}
|
|
6698
|
+
/**
|
|
6699
|
+
* Pure-function search; exported for testing without going through the
|
|
6700
|
+
* tool execute wrapper.
|
|
6701
|
+
*/
|
|
6702
|
+
function searchSkills(query, limit, workspaceDir) {
|
|
6703
|
+
const tokens = tokenizeQuery(query);
|
|
6704
|
+
if (tokens.length === 0) return [];
|
|
6705
|
+
const all = loadAllSkills(workspaceDir);
|
|
6706
|
+
const scored = [];
|
|
6707
|
+
for (const skill of all) {
|
|
6708
|
+
const score = scoreSkillMatch(skill, tokens);
|
|
6709
|
+
if (score > 0) scored.push({
|
|
6710
|
+
name: skill.name,
|
|
6711
|
+
description: skill.description,
|
|
6712
|
+
path: skill.path,
|
|
6713
|
+
score
|
|
6714
|
+
});
|
|
6715
|
+
}
|
|
6716
|
+
scored.sort((a, b) => b.score - a.score || a.name.localeCompare(b.name));
|
|
6717
|
+
return scored.slice(0, limit);
|
|
6718
|
+
}
|
|
6719
|
+
function createSkillSearchTool(opts) {
|
|
6720
|
+
return {
|
|
6721
|
+
name: "skill_search",
|
|
6722
|
+
label: "skill_search",
|
|
6723
|
+
description: "Find skills relevant to the current task. Returns matching skills with name/description/path; `read` the SKILL.md to apply. Call before non-trivial tool work — search by intent ('connect email', 'long task') not tool name.",
|
|
6724
|
+
parameters: SkillSearchToolSchema,
|
|
6725
|
+
execute: async (_toolCallId, args) => {
|
|
6726
|
+
const params = args;
|
|
6727
|
+
const query = typeof params.query === "string" ? params.query.trim() : "";
|
|
6728
|
+
if (!query) return jsonResult({
|
|
6729
|
+
ok: false,
|
|
6730
|
+
error: "skill_search requires a non-empty `query` string."
|
|
6731
|
+
});
|
|
6732
|
+
const limit = typeof params.limit === "number" && Number.isFinite(params.limit) ? Math.min(10, Math.max(1, Math.floor(params.limit))) : 5;
|
|
6733
|
+
try {
|
|
6734
|
+
return jsonResult({
|
|
6735
|
+
ok: true,
|
|
6736
|
+
query,
|
|
6737
|
+
matches: searchSkills(query, limit, opts?.workspaceDir)
|
|
6738
|
+
});
|
|
6739
|
+
} catch (err) {
|
|
6740
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
6741
|
+
logWarn(`skill_search failed: ${message}`);
|
|
6742
|
+
return jsonResult({
|
|
6743
|
+
ok: false,
|
|
6744
|
+
error: message
|
|
6745
|
+
});
|
|
6746
|
+
}
|
|
6747
|
+
}
|
|
6748
|
+
};
|
|
6749
|
+
}
|
|
6750
|
+
|
|
6751
|
+
//#endregion
|
|
6752
|
+
//#region src/agents/system-prompt-skills-jit.ts
|
|
6753
|
+
const MAX_ANCHOR_DESCRIPTION_CHARS = 100;
|
|
6754
|
+
const MAX_AUTO_INJECT_RESULTS = 3;
|
|
6755
|
+
const MAX_AUTO_INJECT_TOTAL_CHARS = 600;
|
|
6756
|
+
/**
|
|
6757
|
+
* Build the anchor list block. Returns "" when no anchor list configured
|
|
6758
|
+
* or in preload mode (anchor list adds value only in jit/hybrid).
|
|
6759
|
+
*/
|
|
6760
|
+
function buildAnchorListBlock(opts) {
|
|
6761
|
+
if (opts.minimalMode) return "";
|
|
6762
|
+
if (opts.discoveryMode !== "jit" && opts.discoveryMode !== "hybrid") return "";
|
|
6763
|
+
const names = (opts.anchorList ?? []).filter((n) => typeof n === "string" && n.trim().length > 0);
|
|
6764
|
+
if (names.length === 0) return "";
|
|
6765
|
+
const lines = [];
|
|
6766
|
+
for (const name of names) {
|
|
6767
|
+
const description = searchSkills(name, 1, opts.workspaceDir)[0]?.description.trim() ?? "";
|
|
6768
|
+
const truncated = description.length > MAX_ANCHOR_DESCRIPTION_CHARS ? `${description.slice(0, MAX_ANCHOR_DESCRIPTION_CHARS - 1)}…` : description;
|
|
6769
|
+
lines.push(truncated ? `- ${name}: ${truncated}` : `- ${name}`);
|
|
6770
|
+
}
|
|
6771
|
+
return [
|
|
6772
|
+
"",
|
|
6773
|
+
"## Anchor Skills",
|
|
6774
|
+
"These skills are always available. Read their SKILL.md via `read` if relevant. For full discovery use the `skill_search` tool.",
|
|
6775
|
+
lines.join("\n"),
|
|
6776
|
+
""
|
|
6777
|
+
].join("\n");
|
|
6778
|
+
}
|
|
6779
|
+
/**
|
|
6780
|
+
* Build the auto-injected matches block based on the user message triggers.
|
|
6781
|
+
* Returns "" when discoveryMode doesn't ask for it, no message available,
|
|
6782
|
+
* no matches found, or in minimal mode.
|
|
6783
|
+
*/
|
|
6784
|
+
function buildAutoInjectBlock(opts) {
|
|
6785
|
+
if (opts.minimalMode) return "";
|
|
6786
|
+
if (opts.discoveryMode !== "jit" && opts.discoveryMode !== "hybrid") return "";
|
|
6787
|
+
const message = (opts.userMessage ?? "").trim();
|
|
6788
|
+
if (!message) return "";
|
|
6789
|
+
const matches = searchSkills(message, MAX_AUTO_INJECT_RESULTS, opts.workspaceDir);
|
|
6790
|
+
if (matches.length === 0) return "";
|
|
6791
|
+
const lines = [];
|
|
6792
|
+
let total = 0;
|
|
6793
|
+
for (const match of matches) {
|
|
6794
|
+
const description = match.description.trim();
|
|
6795
|
+
const truncated = description.length > MAX_ANCHOR_DESCRIPTION_CHARS ? `${description.slice(0, MAX_ANCHOR_DESCRIPTION_CHARS - 1)}…` : description;
|
|
6796
|
+
const skillRef = path.basename(path.dirname(match.path));
|
|
6797
|
+
const line = truncated ? `- ${skillRef}: ${truncated}` : `- ${skillRef}`;
|
|
6798
|
+
if (total + line.length > MAX_AUTO_INJECT_TOTAL_CHARS) break;
|
|
6799
|
+
lines.push(line);
|
|
6800
|
+
total += line.length + 1;
|
|
6801
|
+
}
|
|
6802
|
+
if (lines.length === 0) return "";
|
|
6803
|
+
return [
|
|
6804
|
+
"",
|
|
6805
|
+
"## Possibly Relevant Skills (auto-suggested for this request)",
|
|
6806
|
+
"These skills' triggers matched keywords in your message. Read the SKILL.md if it applies; otherwise ignore and proceed.",
|
|
6807
|
+
lines.join("\n"),
|
|
6808
|
+
""
|
|
6809
|
+
].join("\n");
|
|
6810
|
+
}
|
|
6811
|
+
/** Convenience: build both blocks concatenated. */
|
|
6812
|
+
function buildSkillsJitBlocks(opts) {
|
|
6813
|
+
return `${buildAnchorListBlock(opts)}${buildAutoInjectBlock(opts)}`;
|
|
6814
|
+
}
|
|
6815
|
+
|
|
6525
6816
|
//#endregion
|
|
6526
6817
|
//#region src/agents/system-prompt.ts
|
|
6527
6818
|
function buildSkillsSection(params) {
|
|
@@ -7068,12 +7359,17 @@ function buildEmbeddedSystemPrompt(params) {
|
|
|
7068
7359
|
});
|
|
7069
7360
|
const promptMode = params.promptMode ?? "full";
|
|
7070
7361
|
const isMinimal = promptMode === "minimal" || promptMode === "none";
|
|
7071
|
-
|
|
7362
|
+
return `${corePrompt}${buildAutoLoadedSkillsBlock({
|
|
7072
7363
|
skillNames: params.autoLoadInlineSkills ?? [],
|
|
7073
7364
|
workspaceDir: params.workspaceDir,
|
|
7074
7365
|
minimalMode: isMinimal
|
|
7075
|
-
})
|
|
7076
|
-
|
|
7366
|
+
})}${buildSkillsJitBlocks({
|
|
7367
|
+
discoveryMode: params.skillsDiscoveryMode,
|
|
7368
|
+
anchorList: params.skillsAnchorList,
|
|
7369
|
+
userMessage: params.currentUserMessage,
|
|
7370
|
+
workspaceDir: params.workspaceDir,
|
|
7371
|
+
minimalMode: isMinimal
|
|
7372
|
+
})}`;
|
|
7077
7373
|
}
|
|
7078
7374
|
function createSystemPromptOverride(systemPrompt) {
|
|
7079
7375
|
const override = systemPrompt.trim();
|
|
@@ -9038,7 +9334,7 @@ var GatewayClient = class {
|
|
|
9038
9334
|
if (fingerprint !== expected) return /* @__PURE__ */ new Error("gateway tls fingerprint mismatch");
|
|
9039
9335
|
});
|
|
9040
9336
|
}
|
|
9041
|
-
this.ws = new WebSocket(url, wsOptions);
|
|
9337
|
+
this.ws = new WebSocket$1(url, wsOptions);
|
|
9042
9338
|
this.ws.on("open", () => {
|
|
9043
9339
|
if (url.startsWith("wss://") && this.opts.tlsFingerprint) {
|
|
9044
9340
|
const tlsError = this.validateTlsFingerprint();
|
|
@@ -9257,7 +9553,7 @@ var GatewayClient = class {
|
|
|
9257
9553
|
return null;
|
|
9258
9554
|
}
|
|
9259
9555
|
async request(method, params, opts) {
|
|
9260
|
-
if (!this.ws || this.ws.readyState !== WebSocket.OPEN) throw new Error("gateway not connected");
|
|
9556
|
+
if (!this.ws || this.ws.readyState !== WebSocket$1.OPEN) throw new Error("gateway not connected");
|
|
9261
9557
|
const id = randomUUID();
|
|
9262
9558
|
const frame = {
|
|
9263
9559
|
type: "req",
|
|
@@ -10526,7 +10822,7 @@ async function routeReply(params) {
|
|
|
10526
10822
|
const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
|
|
10527
10823
|
const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
|
|
10528
10824
|
try {
|
|
10529
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
10825
|
+
const { deliverOutboundPayloads } = await import("./deliver-Dx39g9ey.js").then((n) => n.n);
|
|
10530
10826
|
return {
|
|
10531
10827
|
ok: true,
|
|
10532
10828
|
messageId: (await deliverOutboundPayloads({
|
|
@@ -40540,6 +40836,7 @@ function createSymiTools(options) {
|
|
|
40540
40836
|
createCronTool({ agentSessionKey: options?.agentSessionKey }),
|
|
40541
40837
|
createTaskListTool({ workspaceDir }),
|
|
40542
40838
|
createTaskCancelTool({ workspaceDir }),
|
|
40839
|
+
createSkillSearchTool({ workspaceDir }),
|
|
40543
40840
|
...messageTool ? [messageTool] : [],
|
|
40544
40841
|
createTtsTool({
|
|
40545
40842
|
agentChannel: options?.agentChannel,
|
|
@@ -44319,7 +44616,7 @@ async function deliverSessionMaintenanceWarning(params) {
|
|
|
44319
44616
|
return;
|
|
44320
44617
|
}
|
|
44321
44618
|
try {
|
|
44322
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
44619
|
+
const { deliverOutboundPayloads } = await import("./deliver-Dx39g9ey.js").then((n) => n.n);
|
|
44323
44620
|
await deliverOutboundPayloads({
|
|
44324
44621
|
cfg: params.cfg,
|
|
44325
44622
|
channel,
|
|
@@ -47765,7 +48062,7 @@ async function describeStickerImage(params) {
|
|
|
47765
48062
|
logVerbose(`telegram: describing sticker with ${provider}/${model}`);
|
|
47766
48063
|
try {
|
|
47767
48064
|
const buffer = await fs$1.readFile(imagePath);
|
|
47768
|
-
const { describeImageWithModel } = await import("./image-
|
|
48065
|
+
const { describeImageWithModel } = await import("./image-C-JvPPpM.js").then((n) => n.n);
|
|
47769
48066
|
return (await describeImageWithModel({
|
|
47770
48067
|
buffer,
|
|
47771
48068
|
fileName: "sticker.webp",
|
|
@@ -48188,7 +48485,7 @@ function createWhatsAppLoginTool() {
|
|
|
48188
48485
|
force: Type.Optional(Type.Boolean())
|
|
48189
48486
|
}),
|
|
48190
48487
|
execute: async (_toolCallId, args) => {
|
|
48191
|
-
const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-
|
|
48488
|
+
const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-DiyxAHpv.js");
|
|
48192
48489
|
if ((args?.action ?? "start") === "wait") {
|
|
48193
48490
|
const result = await waitForWebLogin({ timeoutMs: typeof args.timeoutMs === "number" ? args.timeoutMs : void 0 });
|
|
48194
48491
|
return {
|
|
@@ -50514,7 +50811,7 @@ async function preflightDiscordMessage(params) {
|
|
|
50514
50811
|
let preflightTranscript;
|
|
50515
50812
|
const hasAudioAttachment = message.attachments?.some((att) => att.contentType?.startsWith("audio/"));
|
|
50516
50813
|
if (!isDirectMessage && shouldRequireMention && hasAudioAttachment && !baseText && mentionRegexes.length > 0) try {
|
|
50517
|
-
const { transcribeFirstAudio } = await import("./audio-preflight-
|
|
50814
|
+
const { transcribeFirstAudio } = await import("./audio-preflight-DQR2Ivi-.js");
|
|
50518
50815
|
const audioPaths = message.attachments?.filter((att) => att.contentType?.startsWith("audio/")).map((att) => att.url) ?? [];
|
|
50519
50816
|
if (audioPaths.length > 0) preflightTranscript = await transcribeFirstAudio({
|
|
50520
50817
|
ctx: {
|
|
@@ -54520,27 +54817,27 @@ function isVoiceChannelType(type) {
|
|
|
54520
54817
|
function createDefaultDeps() {
|
|
54521
54818
|
return {
|
|
54522
54819
|
sendMessageWhatsApp: async (...args) => {
|
|
54523
|
-
const { sendMessageWhatsApp } = await import("./web-
|
|
54820
|
+
const { sendMessageWhatsApp } = await import("./web-BJIv_6uQ.js");
|
|
54524
54821
|
return await sendMessageWhatsApp(...args);
|
|
54525
54822
|
},
|
|
54526
54823
|
sendMessageTelegram: async (...args) => {
|
|
54527
|
-
const { sendMessageTelegram } = await import("./send-
|
|
54824
|
+
const { sendMessageTelegram } = await import("./send-90t8KM2a.js").then((n) => n.l);
|
|
54528
54825
|
return await sendMessageTelegram(...args);
|
|
54529
54826
|
},
|
|
54530
54827
|
sendMessageDiscord: async (...args) => {
|
|
54531
|
-
const { sendMessageDiscord } = await import("./send-
|
|
54828
|
+
const { sendMessageDiscord } = await import("./send-9ktd0CBZ.js").then((n) => n.t);
|
|
54532
54829
|
return await sendMessageDiscord(...args);
|
|
54533
54830
|
},
|
|
54534
54831
|
sendMessageSlack: async (...args) => {
|
|
54535
|
-
const { sendMessageSlack } = await import("./send-
|
|
54832
|
+
const { sendMessageSlack } = await import("./send-B7kMNQ-T.js").then((n) => n.n);
|
|
54536
54833
|
return await sendMessageSlack(...args);
|
|
54537
54834
|
},
|
|
54538
54835
|
sendMessageSignal: async (...args) => {
|
|
54539
|
-
const { sendMessageSignal } = await import("./send-
|
|
54836
|
+
const { sendMessageSignal } = await import("./send-zMHWALCW.js").then((n) => n.i);
|
|
54540
54837
|
return await sendMessageSignal(...args);
|
|
54541
54838
|
},
|
|
54542
54839
|
sendMessageIMessage: async (...args) => {
|
|
54543
|
-
const { sendMessageIMessage } = await import("./send-
|
|
54840
|
+
const { sendMessageIMessage } = await import("./send-CQj8FBE3.js").then((n) => n.n);
|
|
54544
54841
|
return await sendMessageIMessage(...args);
|
|
54545
54842
|
}
|
|
54546
54843
|
};
|
|
@@ -57425,7 +57722,7 @@ function createDiscordGatewayPlugin(params) {
|
|
|
57425
57722
|
super(options);
|
|
57426
57723
|
}
|
|
57427
57724
|
createWebSocket(url) {
|
|
57428
|
-
return new WebSocket
|
|
57725
|
+
return new WebSocket(url, { agent });
|
|
57429
57726
|
}
|
|
57430
57727
|
}
|
|
57431
57728
|
return new ProxyGatewayPlugin();
|
|
@@ -65370,7 +65667,7 @@ async function registerSlackMonitorSlashCommands(params) {
|
|
|
65370
65667
|
});
|
|
65371
65668
|
const deliverSlashPayloads = async (replies) => {
|
|
65372
65669
|
const [{ deliverSlackSlashReplies }, { resolveChunkMode }, { resolveMarkdownTableMode }] = await Promise.all([
|
|
65373
|
-
import("./replies-
|
|
65670
|
+
import("./replies-A6SltFjk.js").then((n) => n.r),
|
|
65374
65671
|
import("./chunk-BRe1o4Af.js").then((n) => n.s),
|
|
65375
65672
|
import("./markdown-tables-x2Xe2UXh.js").then((n) => n.t)
|
|
65376
65673
|
]);
|
|
@@ -67643,7 +67940,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, storeAllowFro
|
|
|
67643
67940
|
const hasAudio = allMedia.some((media) => media.contentType?.startsWith("audio/"));
|
|
67644
67941
|
let preflightTranscript;
|
|
67645
67942
|
if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0) try {
|
|
67646
|
-
const { transcribeFirstAudio } = await import("./audio-preflight-
|
|
67943
|
+
const { transcribeFirstAudio } = await import("./audio-preflight-DQR2Ivi-.js");
|
|
67647
67944
|
preflightTranscript = await transcribeFirstAudio({
|
|
67648
67945
|
ctx: {
|
|
67649
67946
|
MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
|
|
@@ -69788,23 +70085,23 @@ let webLoginQrPromise = null;
|
|
|
69788
70085
|
let webChannelPromise = null;
|
|
69789
70086
|
let whatsappActionsPromise = null;
|
|
69790
70087
|
function loadWebOutbound() {
|
|
69791
|
-
webOutboundPromise ??= import("./outbound-
|
|
70088
|
+
webOutboundPromise ??= import("./outbound-BaF9dF-H.js").then((n) => n.t);
|
|
69792
70089
|
return webOutboundPromise;
|
|
69793
70090
|
}
|
|
69794
70091
|
function loadWebLogin() {
|
|
69795
|
-
webLoginPromise ??= import("./login-
|
|
70092
|
+
webLoginPromise ??= import("./login-DqhTprwd.js").then((n) => n.n);
|
|
69796
70093
|
return webLoginPromise;
|
|
69797
70094
|
}
|
|
69798
70095
|
function loadWebLoginQr() {
|
|
69799
|
-
webLoginQrPromise ??= import("./login-qr-
|
|
70096
|
+
webLoginQrPromise ??= import("./login-qr-DiyxAHpv.js");
|
|
69800
70097
|
return webLoginQrPromise;
|
|
69801
70098
|
}
|
|
69802
70099
|
function loadWebChannel() {
|
|
69803
|
-
webChannelPromise ??= import("./web-
|
|
70100
|
+
webChannelPromise ??= import("./web-BJIv_6uQ.js");
|
|
69804
70101
|
return webChannelPromise;
|
|
69805
70102
|
}
|
|
69806
70103
|
function loadWhatsAppActions() {
|
|
69807
|
-
whatsappActionsPromise ??= import("./whatsapp-actions-
|
|
70104
|
+
whatsappActionsPromise ??= import("./whatsapp-actions-DRvUrapa.js");
|
|
69808
70105
|
return whatsappActionsPromise;
|
|
69809
70106
|
}
|
|
69810
70107
|
function createPluginRuntime() {
|
|
@@ -73807,7 +74104,10 @@ async function compactEmbeddedPiSessionDirect(params) {
|
|
|
73807
74104
|
userTimeFormat,
|
|
73808
74105
|
contextFiles,
|
|
73809
74106
|
memoryCitationsMode: params.config?.memory?.citations,
|
|
73810
|
-
autoLoadInlineSkills: params.config?.skills?.autoLoadInline
|
|
74107
|
+
autoLoadInlineSkills: params.config?.skills?.autoLoadInline,
|
|
74108
|
+
skillsDiscoveryMode: params.config?.skills?.discoveryMode,
|
|
74109
|
+
skillsAnchorList: params.config?.skills?.anchorList,
|
|
74110
|
+
currentUserMessage: void 0
|
|
73811
74111
|
}));
|
|
73812
74112
|
const sessionLock = await acquireSessionWriteLock({
|
|
73813
74113
|
sessionFile: params.sessionFile,
|
|
@@ -77998,7 +78298,10 @@ async function runEmbeddedAttempt(params) {
|
|
|
77998
78298
|
userTimeFormat,
|
|
77999
78299
|
contextFiles,
|
|
78000
78300
|
memoryCitationsMode: params.config?.memory?.citations,
|
|
78001
|
-
autoLoadInlineSkills: params.config?.skills?.autoLoadInline
|
|
78301
|
+
autoLoadInlineSkills: params.config?.skills?.autoLoadInline,
|
|
78302
|
+
skillsDiscoveryMode: params.config?.skills?.discoveryMode,
|
|
78303
|
+
skillsAnchorList: params.config?.skills?.anchorList,
|
|
78304
|
+
currentUserMessage: params.prompt
|
|
78002
78305
|
});
|
|
78003
78306
|
const systemPromptReport = buildSystemPromptReport({
|
|
78004
78307
|
source: "run",
|