@symerian/symi 2.8.6 → 2.8.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{accounts-BRw8yhIW.js → accounts-D1r2dq1t.js} +21 -21
- package/dist/{accounts-3dCrO3oZ.js → accounts-dRUMQQrB.js} +1 -1
- package/dist/{accounts-BuZxOb3B.js → accounts-wSphH5gv.js} +1 -1
- package/dist/{active-listener-Br2FcRv7.js → active-listener-C3pfJhdC.js} +1 -1
- package/dist/{agent-scope-CpEJ0B88.js → agent-scope-D68_xfTL.js} +3 -3
- package/dist/{agents-DWuqUDaG.js → agents-CKqrLbBd.js} +4 -4
- package/dist/{agents.config-DWsjuONZ.js → agents.config-D17kikNs.js} +1 -1
- package/dist/{agents.config-B8euVOOW.js → agents.config-DnEa79_a.js} +1 -1
- package/dist/{audio-preflight-D0nJ1LEt.js → audio-preflight-DFLcuVNn.js} +29 -29
- package/dist/{audio-preflight-CKbpf-IL.js → audio-preflight-DJXj9QP9.js} +5 -5
- package/dist/{audio-preflight-BQaUmV6k.js → audio-preflight-DfALITTK.js} +5 -5
- package/dist/{audio-preflight-D_g9Duqw.js → audio-preflight-lr-WPpc9.js} +4 -4
- package/dist/{audit-DCOp_J5K.js → audit-DVUHZrf4.js} +2 -2
- package/dist/{audit-BIeVybsA.js → audit-DgAM_dWL.js} +2 -2
- package/dist/{auth-choice-kpk3L0TR.js → auth-choice-KEir_3i_.js} +1 -1
- package/dist/{auth-choice-hKVjPWaU.js → auth-choice-obR6mZqe.js} +1 -1
- package/dist/{auth-profiles-C2vj6htZ.js → auth-profiles-aJfgABnE.js} +17 -17
- package/dist/{banner-C1RFNTRm.js → banner-BEYICVDD.js} +1 -1
- package/dist/{bindings-BsHoBLIE.js → bindings-Bat2RnAR.js} +2 -2
- package/dist/build-info.json +3 -3
- package/dist/bundled/boot-md/handler.js +54 -54
- package/dist/bundled/bootstrap-extra-files/handler.js +5 -5
- package/dist/bundled/command-logger/handler.js +1 -1
- package/dist/bundled/session-memory/handler.js +54 -54
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{channel-activity-D-kw83R0.js → channel-activity-Cm1OJRbv.js} +1 -1
- package/dist/{channel-options-Vjegw-bn.js → channel-options-D9g8Ji5_.js} +1 -1
- package/dist/{channel-options-Pit7RtN-.js → channel-options-H9pR0AWZ.js} +1 -1
- package/dist/{channel-web-BVm_UWyj.js → channel-web-B9-EHnds.js} +3 -3
- package/dist/{channels-cli-Bh07AMec.js → channels-cli-C_YU5GaO.js} +11 -11
- package/dist/{channels-cli-CXws5tG8.js → channels-cli-mCf_KwBC.js} +12 -12
- package/dist/{chrome-C08Z0XAa.js → chrome-B0yKTuIS.js} +21 -21
- package/dist/{chrome-BUT--ob3.js → chrome-B14NNyfm.js} +7 -7
- package/dist/{chunk-BHW8Yu5A.js → chunk-B9x_1qSr.js} +1 -1
- package/dist/{cli-D5qinxg-.js → cli-D8xchhQH.js} +8 -8
- package/dist/{cli-TABOKnEJ.js → cli-WAg9Zydm.js} +9 -9
- package/dist/{command-registry-DEe4juCf.js → command-registry-nSYGDoue.js} +9 -9
- package/dist/{commands-registry-CfoYlMQB.js → commands-registry-CeBC8Vy2.js} +4 -4
- package/dist/{completion-cli-W3fyiL94.js → completion-cli-BzV4_BVf.js} +1 -1
- package/dist/{completion-cli-D0j-46vF.js → completion-cli-CR5v_bKh.js} +2 -2
- package/dist/{config-BkZ9HOKT.js → config-Dp67YMkg.js} +12 -12
- package/dist/{config-cli-DLBtnr_W.js → config-cli-DFXYnUAB.js} +1 -1
- package/dist/{config-cli-CajteLy8.js → config-cli-wcQ2PQ2b.js} +1 -1
- package/dist/{config-guard-DjlYIjka.js → config-guard-CJ4iAPK5.js} +1 -1
- package/dist/{config-guard-BJE6xSY9.js → config-guard-DsOhmFl6.js} +2 -2
- package/dist/{configure-B79KjBCS.js → configure-CCux4ZEl.js} +3 -3
- package/dist/{configure-2PdZnKO6.js → configure-DSXgdzrp.js} +3 -3
- package/dist/control-ui/js/app.js +13 -60
- package/dist/control-ui/js/render.js +4 -72
- package/dist/{deliver-CiL9mQXH.js → deliver-BLt_liXS.js} +2 -2
- package/dist/{deliver-CLZGlRZt.js → deliver-DPWY9adX.js} +20 -20
- package/dist/{deliver-B36OzmeP.js → deliver-DrC7tG6s.js} +1 -1
- package/dist/{deliver-CXpvGXqJ.js → deliver-lG9ITE8w.js} +2 -2
- package/dist/{diagnostic-CQiU0O8b.js → diagnostic-DIKKFHpP.js} +1 -1
- package/dist/{doctor-completion-DOnUbTdS.js → doctor-completion-D-deyczv.js} +1 -1
- package/dist/{doctor-completion-mlj3aq0W.js → doctor-completion-jev9bFib.js} +1 -1
- package/dist/{doctor-config-flow-DFk-NaP5.js → doctor-config-flow-C81j0-sE.js} +1 -1
- package/dist/{doctor-config-flow-BRB_O0jG.js → doctor-config-flow-CN8seKLA.js} +1 -1
- package/dist/entry.js +1 -1
- package/dist/{env-BDXYbTKj.js → env-xmBFQPBP.js} +1 -1
- package/dist/extensionAPI.js +6 -6
- package/dist/{frontmatter-CTR5f_Ez.js → frontmatter-CV0YkjoY.js} +2 -2
- package/dist/{gateway-cli-D7jQypRh.js → gateway-cli-BJvattWu.js} +19 -19
- package/dist/{gateway-cli-nHVe7vxD.js → gateway-cli-_BIiMqiD.js} +18 -18
- package/dist/{gemini-auth-BefM10YB.js → gemini-auth-JP7SzVpY.js} +1 -1
- package/dist/{github-copilot-token-cCYzSU9h.js → github-copilot-token-B8B2pmph.js} +7 -7
- package/dist/{glass-ui-ws-BgVPCNjg.js → glass-ui-ws-BHVpfzRg.js} +16 -16
- package/dist/{glass-ui-ws-CMMnvVpl.js → glass-ui-ws-DRWpg6Qb.js} +15 -15
- package/dist/{health-DvkoG4Dw.js → health-7ZvWXkvm.js} +3 -3
- package/dist/{health-DKxSHkOQ.js → health-D1L94KKE.js} +3 -3
- package/dist/{hooks-cli-DV1GeJpO.js → hooks-cli-B-JbgOoq.js} +9 -9
- package/dist/{hooks-cli-DsWn_3um.js → hooks-cli-BjYy0UUP.js} +10 -10
- package/dist/{image-BHhzdmbq.js → image-CKeN0xJL.js} +1 -1
- package/dist/{image-BnO8X_hj.js → image-DCB54N2j.js} +4 -4
- package/dist/{image-CJ_QZqzR.js → image-DXco5IYt.js} +1 -1
- package/dist/{image-C2IvljWU.js → image-D_qN_IxA.js} +1 -1
- package/dist/{image-ops-C7CauEK8.js → image-ops-M5agStZn.js} +16 -16
- package/dist/index.js +14 -14
- package/dist/{ir-JAy_3A3B.js → ir-Z9axTYHx.js} +4 -4
- package/dist/llm-slug-generator.js +54 -54
- package/dist/{local-roots-Se92wAN5.js → local-roots-Bh5xx9IO.js} +5 -5
- package/dist/{login-CksRbu5D.js → login-Z-O7e3RD.js} +7 -7
- package/dist/{login-qr-COIr6FGZ.js → login-qr-Cqe-9-jf.js} +12 -12
- package/dist/{manager-DXyJKTj7.js → manager-ayAJucg2.js} +22 -22
- package/dist/{manifest-registry-CBCGTsIb.js → manifest-registry-QT5_77XA.js} +19 -19
- package/dist/{markdown-tables-Dnj2LQUc.js → markdown-tables-DuRhvVpP.js} +1 -1
- package/dist/{message-channel-OlFBYAw8.js → message-channel-DwDSKGn4.js} +1 -1
- package/dist/{models-BohMMqeG.js → models-PeKQE2ct.js} +2 -2
- package/dist/{models-cli-DabormMV.js → models-cli-ChoXOtnk.js} +9 -9
- package/dist/{models-cli-CJywE4w7.js → models-cli-lSGGkLeL.js} +11 -11
- package/dist/{onboard-ygIcreY9.js → onboard-9PT0Wv1A.js} +2 -2
- package/dist/{onboard-CyuUucGA.js → onboard-B8q4Vpz1.js} +2 -2
- package/dist/{onboard-channels-DU6do-N5.js → onboard-channels-CN0qvsHO.js} +1 -1
- package/dist/{onboard-channels-DaY1NwXd.js → onboard-channels-Cg4bD8ps.js} +1 -1
- package/dist/{onboarding-Bqz1NgoR.js → onboarding-BAn2oNRB.js} +4 -4
- package/dist/{onboarding-BfeyfvK_.js → onboarding-hJaI3u5t.js} +4 -4
- package/dist/{onboarding.finalize-CG0xwhEw.js → onboarding.finalize-BPZZr8Cm.js} +13 -13
- package/dist/{onboarding.finalize-DzTo4LEo.js → onboarding.finalize-BTrhVcW5.js} +15 -15
- package/dist/{onboarding.gateway-config-7LGxdDrq.js → onboarding.gateway-config-TM8ERKyn.js} +1 -1
- package/dist/{onboarding.gateway-config-DJJRuyZ_.js → onboarding.gateway-config-vGTQDqA6.js} +1 -1
- package/dist/{outbound-attachment-BzwVH4Pn.js → outbound-attachment-BOy-OY4-.js} +2 -2
- package/dist/{outbound-CX-uuDet.js → outbound-xWV2AYDD.js} +7 -7
- package/dist/paths-CYmyCDsE.js +212 -0
- package/dist/{paths-CbQV9WEg.js → paths-DEuVuViW.js} +1 -1
- package/dist/{pi-auth-json-RXOlh8ar.js → pi-auth-json-Q3FwtPeJ.js} +1 -1
- package/dist/{pi-embedded-BaNpG0Aq.js → pi-embedded-F3kbSP7M.js} +20 -16
- package/dist/{pi-embedded-helpers-DcN8GHTt.js → pi-embedded-helpers-CFTCaByg.js} +73 -73
- package/dist/{pi-embedded-helpers-BET359cH.js → pi-embedded-helpers-D8YgtMdl.js} +4 -4
- package/dist/{pi-embedded-helpers-jo_kKs-Z.js → pi-embedded-helpers-DSscUmkR.js} +1 -1
- package/dist/{pi-embedded-helpers-DiXXYmgo.js → pi-embedded-helpers-DpOccVre.js} +1 -1
- package/dist/{pi-tools.policy-p7LLu64F.js → pi-tools.policy-BpN-v9bT.js} +1 -1
- package/dist/{pi-tools.policy-CGVKAOoE.js → pi-tools.policy-DOVQ8dDx.js} +1 -1
- package/dist/{plugin-registry-DG2IOSY3.js → plugin-registry-BVoIgv-5.js} +1 -1
- package/dist/{plugin-registry-DTm-oyEP.js → plugin-registry-DFPTE_HO.js} +1 -1
- package/dist/plugin-sdk/{channel-web-D-ct3FR3.js → channel-web-BNGOwMat.js} +1 -1
- package/dist/plugin-sdk/index.js +2 -2
- package/dist/plugin-sdk/{reply-Gpdxnjey.js → reply-DcNZU8lj.js} +6 -2
- package/dist/plugin-sdk/{web-BFa_GJSK.js → web-CeR-wf-N.js} +2 -2
- package/dist/{plugins-BzmbgY7s.js → plugins-Bkr5ZdYs.js} +9 -9
- package/dist/{plugins-cli-BrHhfpbX.js → plugins-cli-BwM4f91E.js} +10 -10
- package/dist/{plugins-cli-BJpemLCS.js → plugins-cli-uoGDkhOc.js} +9 -9
- package/dist/{program-CYzFuO3w.js → program-DhBZLOgJ.js} +16 -16
- package/dist/{program-context-G2iHoB5D.js → program-context-BJEZcvA2.js} +20 -20
- package/dist/{prompt-select-styled-lVyrkSPI.js → prompt-select-styled-CJjLDUCj.js} +7 -7
- package/dist/{prompt-select-styled-P0KS75Rt.js → prompt-select-styled-CMBgFELR.js} +7 -7
- package/dist/{provider-auth-helpers-CoYjxsb2.js → provider-auth-helpers-DeWQHkRc.js} +1 -1
- package/dist/{provider-auth-helpers-Cygsm5_L.js → provider-auth-helpers-S2j3hcBK.js} +1 -1
- package/dist/{push-apns-CHM_4e6x.js → push-apns-CJ2CpgRB.js} +1 -1
- package/dist/{push-apns-BMfcGm-A.js → push-apns-YD8SuIy0.js} +1 -1
- package/dist/{pw-ai-B476LzSK.js → pw-ai-DHoYzirP.js} +11 -11
- package/dist/{pw-ai-DE8wmtet.js → pw-ai-DTmHAKPA.js} +1 -1
- package/dist/{qmd-manager-lBS9mT9w.js → qmd-manager-8-Z3Cdpt.js} +7 -7
- package/dist/{register.agent-BTmY2MoW.js → register.agent-B2u3ouKf.js} +14 -14
- package/dist/{register.agent-efba5ajU.js → register.agent-gMPMyFRj.js} +12 -12
- package/dist/{register.configure-DHSfWAqs.js → register.configure-C6mVcNay.js} +14 -14
- package/dist/{register.configure-EQOE0vHS.js → register.configure-DncWEkhU.js} +13 -13
- package/dist/{register.maintenance-CzcgKkH3.js → register.maintenance-Cz1IOILv.js} +15 -15
- package/dist/{register.maintenance-CsczzIEq.js → register.maintenance-D5oV0fjR.js} +17 -17
- package/dist/{register.message-Bc3A_dfj.js → register.message-B6hxm3rn.js} +9 -9
- package/dist/{register.message-u6gwfQPX.js → register.message-QejTHJGQ.js} +10 -10
- package/dist/{register.onboard-CtKNq5I_.js → register.onboard-CA06T3Jp.js} +12 -12
- package/dist/{register.onboard-yDsskHey.js → register.onboard-kJuHrfio.js} +11 -11
- package/dist/{register.setup-BPeB8JTw.js → register.setup-BD8QKVsT.js} +11 -11
- package/dist/{register.setup-BJqk3N2q.js → register.setup-C11edfdp.js} +12 -12
- package/dist/{register.status-health-sessions-CU6Uv3iO.js → register.status-health-sessions-257I77oA.js} +13 -13
- package/dist/{register.status-health-sessions-KzzMJ0H1.js → register.status-health-sessions-CrTiF0_d.js} +11 -11
- package/dist/{register.subclis-C_464foT.js → register.subclis-CnOalkYH.js} +12 -12
- package/dist/{registry-DYq1AYOv.js → registry-UkL38jvt.js} +17 -17
- package/dist/{replies-BWgZR_w5.js → replies-CWH084Xr.js} +3 -3
- package/dist/{reply-kWKTXRkY.js → reply-o0IEwJ_P.js} +18 -14
- package/dist/{reply-prefix-CvEIl6_d.js → reply-prefix-ZnX2V-k9.js} +1 -1
- package/dist/{resolve-route-DX7xcMsD.js → resolve-route-gl0ZOOKR.js} +4 -4
- package/dist/{retry-B-y5suGA.js → retry-D25Z8MVS.js} +1 -1
- package/dist/{run-main-I-kj1_yf.js → run-main-BuVFHsuQ.js} +25 -25
- package/dist/{runner-D5nFF9E6.js → runner-C-ygJOAu.js} +22 -22
- package/dist/{runner-BVgCl6yZ.js → runner-COpebDew.js} +1 -1
- package/dist/{runner-BopCEjwB.js → runner-CSdQSvE8.js} +1 -1
- package/dist/{runner-eBF6SlQ6.js → runner-C_BlQ2fG.js} +1 -1
- package/dist/{sandbox-ooxzsj2D.js → sandbox-BOVopTqv.js} +1 -1
- package/dist/{sandbox-Cl2r-bXv.js → sandbox-CDxHBl3I.js} +1 -1
- package/dist/{sandbox-cli-CZSrSTkk.js → sandbox-cli-0eu7BCa8.js} +2 -2
- package/dist/{sandbox-cli-BH45SMwC.js → sandbox-cli-BpfYaZBG.js} +2 -2
- package/dist/{security-cli-CEI0zQJs.js → security-cli-B5s73Le2.js} +4 -4
- package/dist/{security-cli-Bz-Sv5-H.js → security-cli-CzWHkrqD.js} +4 -4
- package/dist/{send-CCmxHtaA.js → send-BJhQtCyM.js} +6 -6
- package/dist/{send-xTfsDEE2.js → send-CF_nzDHe.js} +18 -18
- package/dist/{send-vqwluhp3.js → send-Cf47Nas6.js} +7 -7
- package/dist/{send-B7aHpAco.js → send-DERqzyba.js} +6 -6
- package/dist/{send-Yzy50T1h.js → send-DQoKXmre.js} +10 -10
- package/dist/{server-methods-DuXvSLX-.js → server-methods-D0laPfTZ.js} +10 -10
- package/dist/{server-methods-DQHU-PVR.js → server-methods-D1eF0-Yu.js} +11 -11
- package/dist/{server-node-events-CwAM91fd.js → server-node-events-D3iV_wDf.js} +9 -9
- package/dist/{server-node-events-ecaGjg5E.js → server-node-events-b7X9bVIS.js} +10 -10
- package/dist/{session-BTLA3Rm7.js → session-C1eFu8k4.js} +8 -8
- package/dist/{session-utils-Dwt6eGX6.js → session-utils-BPXkhuNM.js} +1 -1
- package/dist/{sessions-Do060W3W.js → sessions-BPD85pWA.js} +2 -3
- package/dist/{sessions-vYQs1OzE.js → sessions-BeYHj0gr.js} +2 -3
- package/dist/{sessions-DQxygr94.js → sessions-NTd36-CO.js} +2 -2
- package/dist/{skill-commands-D1hG6Ikz.js → skill-commands-CKXkvl80.js} +16 -16
- package/dist/{skills-CXxrn_e2.js → skills-DxmX9HVT.js} +24 -24
- package/dist/{sqlite-BHWvOATS.js → sqlite-JHY-uOmS.js} +16 -16
- package/dist/{status-v8DOdpX6.js → status-Cv3PcsRo.js} +4 -4
- package/dist/{status-DNVKHGLC.js → status-CwrFTb4t.js} +1 -1
- package/dist/{status-CW9LMA2M.js → status-K22ODH_m.js} +1 -1
- package/dist/{status-DsFAg-bK.js → status-eVKjxfUO.js} +5 -5
- package/dist/{store-01F_JM7O.js → store-Ea3zM6xK.js} +6 -6
- package/dist/{subagent-registry-C8UsZ8F0.js → subagent-registry-4XZvxwX0.js} +19 -15
- package/dist/{subsystem-BjyjJF-d.js → subsystem-DN75fnEF.js} +1 -1
- package/dist/{tables-BuM4FKR3.js → tables-Dkg9O8rv.js} +1 -1
- package/dist/{target-errors-BEugWC4F.js → target-errors-Pr77jao5.js} +2 -2
- package/dist/{thinking-BprCy23Z.js → thinking-C9-JAUzD.js} +5 -5
- package/dist/{tokens-W0JzCJJM.js → tokens-CCZl4YHT.js} +1 -1
- package/dist/{tool-images-SqqWIT22.js → tool-images-B1qVCntj.js} +2 -2
- package/dist/{tool-loop-detection-D5mBY7AC.js → tool-loop-detection-C33wf43N.js} +3 -3
- package/dist/{tui-B61kHmM2.js → tui-DfPeXwah.js} +2 -2
- package/dist/{tui-CiGfEtDa.js → tui-LZPdrFmK.js} +2 -2
- package/dist/{tui-cli-CwNXfDnk.js → tui-cli-Bm3TJgXf.js} +4 -4
- package/dist/{tui-cli-DHKMCeGp.js → tui-cli-DFXZ7r1F.js} +4 -4
- package/dist/{unified-runner-BojeuKIk.js → unified-runner-BL7URnpP.js} +235 -231
- package/dist/{update-cli-BwX8SW9m.js → update-cli-Bf-HR0_b.js} +17 -17
- package/dist/{update-cli-DQOw6sqy.js → update-cli-CjtzOlMZ.js} +15 -15
- package/dist/{update-runner-BhXkq5Gw.js → update-runner-CxuU59aU.js} +1 -1
- package/dist/{update-runner-C56OyqSE.js → update-runner-i95oVXRi.js} +1 -1
- package/dist/{web-Dxkxcp7P.js → web-B3QBvAid.js} +58 -58
- package/dist/{web-CGicnDRL.js → web-CTog1mw0.js} +9 -9
- package/dist/{web-f1xT-H2y.js → web-D6aUh_IC.js} +6 -6
- package/dist/{web-NSGlkQEO.js → web-D_WLAogr.js} +9 -9
- package/dist/{whatsapp-actions-CiXMwRR8.js → whatsapp-actions-pddprZ8J.js} +23 -23
- package/dist/{workspace-DscDraUb.js → workspace-DqJ5h-ZB.js} +27 -27
- package/extensions/bluebubbles/package.json +1 -1
- package/extensions/copilot-proxy/package.json +1 -1
- package/extensions/diagnostics-otel/package.json +1 -1
- package/extensions/discord/package.json +1 -1
- package/extensions/feishu/package.json +1 -1
- package/extensions/google-antigravity-auth/package.json +1 -1
- package/extensions/google-gemini-cli-auth/package.json +1 -1
- package/extensions/googlechat/package.json +1 -1
- package/extensions/imessage/package.json +1 -1
- package/extensions/irc/package.json +1 -1
- package/extensions/learning-loop/package.json +1 -1
- package/extensions/line/package.json +1 -1
- package/extensions/llm-task/package.json +1 -1
- package/extensions/matrix/CHANGELOG.md +6 -0
- package/extensions/matrix/package.json +1 -1
- package/extensions/mattermost/package.json +1 -1
- package/extensions/memory-core/package.json +1 -1
- package/extensions/memory-lancedb/package.json +1 -1
- package/extensions/minimax-portal-auth/package.json +1 -1
- package/extensions/msteams/CHANGELOG.md +6 -0
- package/extensions/msteams/package.json +1 -1
- package/extensions/nextcloud-talk/package.json +1 -1
- package/extensions/nostr/CHANGELOG.md +6 -0
- package/extensions/nostr/package.json +1 -1
- package/extensions/open-prose/package.json +1 -1
- package/extensions/outlook/index.ts +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
|
@@ -745,7 +745,6 @@ function stripEnvelopeFromContent(content) {
|
|
|
745
745
|
if (entry.type !== "text" || typeof entry.text !== "string") return item;
|
|
746
746
|
const stripped = stripMessageIdHints(stripEnvelope(stripInboundMetadata(entry.text)));
|
|
747
747
|
if (stripped === entry.text) return item;
|
|
748
|
-
if (!stripped.trim()) return item;
|
|
749
748
|
changed = true;
|
|
750
749
|
return {
|
|
751
750
|
...entry,
|
|
@@ -763,7 +762,7 @@ function stripEnvelopeFromMessage(message) {
|
|
|
763
762
|
const next = { ...entry };
|
|
764
763
|
if (typeof entry.content === "string") {
|
|
765
764
|
const stripped = stripMessageIdHints(stripEnvelope(stripInboundMetadata(entry.content)));
|
|
766
|
-
if (stripped !== entry.content
|
|
765
|
+
if (stripped !== entry.content) {
|
|
767
766
|
next.content = stripped;
|
|
768
767
|
changed = true;
|
|
769
768
|
}
|
|
@@ -775,7 +774,7 @@ function stripEnvelopeFromMessage(message) {
|
|
|
775
774
|
}
|
|
776
775
|
} else if (typeof entry.text === "string") {
|
|
777
776
|
const stripped = stripMessageIdHints(stripEnvelope(stripInboundMetadata(entry.text)));
|
|
778
|
-
if (stripped !== entry.text
|
|
777
|
+
if (stripped !== entry.text) {
|
|
779
778
|
next.text = stripped;
|
|
780
779
|
changed = true;
|
|
781
780
|
}
|
|
@@ -3,10 +3,10 @@ import { Dt as theme, Et as isRich, gt as info } from "./entry.js";
|
|
|
3
3
|
import { Ht as DEFAULT_MODEL, Ut as DEFAULT_PROVIDER, V as resolveConfiguredModelRef, Vt as DEFAULT_CONTEXT_TOKENS } from "./auth-profiles-BBniPGeS.js";
|
|
4
4
|
import { S as parseAgentSessionKey } from "./session-key-DjZ7Z1hW.js";
|
|
5
5
|
import { i as loadConfig } from "./config-DXt3pc08.js";
|
|
6
|
-
import { j as resolveFreshSessionTotalTokens, o as loadSessionStore } from "./sessions-
|
|
6
|
+
import { j as resolveFreshSessionTotalTokens, o as loadSessionStore } from "./sessions-BPD85pWA.js";
|
|
7
7
|
import { c as resolveStorePath } from "./paths-DNdWAq7b.js";
|
|
8
8
|
import { n as formatTimeAgo } from "./format-relative-DX-rh76l.js";
|
|
9
|
-
import { l as resolveSessionModelRef, n as classifySessionKey, u as lookupContextTokens } from "./session-utils-
|
|
9
|
+
import { l as resolveSessionModelRef, n as classifySessionKey, u as lookupContextTokens } from "./session-utils-BPXkhuNM.js";
|
|
10
10
|
|
|
11
11
|
//#region src/commands/sessions.ts
|
|
12
12
|
var sessions_exports = /* @__PURE__ */ __exportAll({ sessionsCommand: () => sessionsCommand });
|
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
2
|
-
import { s as resolveStateDir } from "./paths-
|
|
3
|
-
import { I as resolveUserPath, S as CONFIG_DIR } from "./registry-
|
|
4
|
-
import { s as resolveAgentWorkspaceDir, t as listAgentIds } from "./agent-scope-
|
|
5
|
-
import { t as createSubsystemLogger } from "./subsystem-
|
|
6
|
-
import { o as resolvePluginSkillDirs, t as buildWorkspaceSkillCommandSpecs } from "./skills-
|
|
7
|
-
import { i as listChatCommands } from "./commands-registry-
|
|
2
|
+
import { s as resolveStateDir } from "./paths-CYmyCDsE.js";
|
|
3
|
+
import { I as resolveUserPath, S as CONFIG_DIR } from "./registry-UkL38jvt.js";
|
|
4
|
+
import { s as resolveAgentWorkspaceDir, t as listAgentIds } from "./agent-scope-D68_xfTL.js";
|
|
5
|
+
import { t as createSubsystemLogger } from "./subsystem-DN75fnEF.js";
|
|
6
|
+
import { o as resolvePluginSkillDirs, t as buildWorkspaceSkillCommandSpecs } from "./skills-DxmX9HVT.js";
|
|
7
|
+
import { i as listChatCommands } from "./commands-registry-CeBC8Vy2.js";
|
|
8
8
|
import path from "node:path";
|
|
9
|
-
import
|
|
9
|
+
import fsSync from "node:fs";
|
|
10
10
|
import os from "node:os";
|
|
11
|
-
import fs
|
|
11
|
+
import fs from "node:fs/promises";
|
|
12
12
|
import { randomUUID } from "node:crypto";
|
|
13
13
|
import chokidar from "chokidar";
|
|
14
14
|
|
|
15
15
|
//#region src/infra/json-files.ts
|
|
16
16
|
async function readJsonFile(filePath) {
|
|
17
17
|
try {
|
|
18
|
-
const raw = await fs
|
|
18
|
+
const raw = await fs.readFile(filePath, "utf8");
|
|
19
19
|
return JSON.parse(raw);
|
|
20
20
|
} catch {
|
|
21
21
|
return null;
|
|
@@ -24,15 +24,15 @@ async function readJsonFile(filePath) {
|
|
|
24
24
|
async function writeJsonAtomic(filePath, value, options) {
|
|
25
25
|
const mode = options?.mode ?? 384;
|
|
26
26
|
const dir = path.dirname(filePath);
|
|
27
|
-
await fs
|
|
27
|
+
await fs.mkdir(dir, { recursive: true });
|
|
28
28
|
const tmp = `${filePath}.${randomUUID()}.tmp`;
|
|
29
|
-
await fs
|
|
29
|
+
await fs.writeFile(tmp, JSON.stringify(value, null, 2), "utf8");
|
|
30
30
|
try {
|
|
31
|
-
await fs
|
|
31
|
+
await fs.chmod(tmp, mode);
|
|
32
32
|
} catch {}
|
|
33
|
-
await fs
|
|
33
|
+
await fs.rename(tmp, filePath);
|
|
34
34
|
try {
|
|
35
|
-
await fs
|
|
35
|
+
await fs.chmod(filePath, mode);
|
|
36
36
|
} catch {}
|
|
37
37
|
}
|
|
38
38
|
function createAsyncLock() {
|
|
@@ -283,8 +283,8 @@ function listSkillCommandsForAgents(params) {
|
|
|
283
283
|
const visitedDirs = /* @__PURE__ */ new Set();
|
|
284
284
|
for (const agentId of agentIds) {
|
|
285
285
|
const workspaceDir = resolveAgentWorkspaceDir(params.cfg, agentId);
|
|
286
|
-
if (!
|
|
287
|
-
const canonicalDir =
|
|
286
|
+
if (!fsSync.existsSync(workspaceDir)) continue;
|
|
287
|
+
const canonicalDir = fsSync.realpathSync(workspaceDir);
|
|
288
288
|
if (visitedDirs.has(canonicalDir)) continue;
|
|
289
289
|
visitedDirs.add(canonicalDir);
|
|
290
290
|
const commands = buildWorkspaceSkillCommandSpecs(workspaceDir, {
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { I as resolveUserPath, S as CONFIG_DIR } from "./registry-
|
|
2
|
-
import { f as normalizeSkillFilter } from "./agent-scope-
|
|
3
|
-
import { t as createSubsystemLogger } from "./subsystem-
|
|
4
|
-
import { h as resolveSymiPackageRootSync } from "./workspace-
|
|
5
|
-
import { c as resolveMemorySlotDecision, d as isDangerousHostEnvVarName, o as normalizePluginsConfig, s as resolveEnableState, t as loadPluginManifestRegistry } from "./manifest-registry-
|
|
6
|
-
import { a as resolveSymiManifestBlock, c as resolveSymiManifestRequires, d as hasBinary, f as isConfigPathTruthyWithDefaults, i as parseSymiManifestInstallBase, l as parseFrontmatterBlock, n as normalizeStringList, o as resolveSymiManifestInstall, p as resolveRuntimePlatform, r as parseFrontmatterBool, s as resolveSymiManifestOs, t as getFrontmatterString, u as evaluateRuntimeRequires } from "./frontmatter-
|
|
1
|
+
import { I as resolveUserPath, S as CONFIG_DIR } from "./registry-UkL38jvt.js";
|
|
2
|
+
import { f as normalizeSkillFilter } from "./agent-scope-D68_xfTL.js";
|
|
3
|
+
import { t as createSubsystemLogger } from "./subsystem-DN75fnEF.js";
|
|
4
|
+
import { h as resolveSymiPackageRootSync } from "./workspace-DqJ5h-ZB.js";
|
|
5
|
+
import { c as resolveMemorySlotDecision, d as isDangerousHostEnvVarName, o as normalizePluginsConfig, s as resolveEnableState, t as loadPluginManifestRegistry } from "./manifest-registry-QT5_77XA.js";
|
|
6
|
+
import { a as resolveSymiManifestBlock, c as resolveSymiManifestRequires, d as hasBinary, f as isConfigPathTruthyWithDefaults, i as parseSymiManifestInstallBase, l as parseFrontmatterBlock, n as normalizeStringList, o as resolveSymiManifestInstall, p as resolveRuntimePlatform, r as parseFrontmatterBool, s as resolveSymiManifestOs, t as getFrontmatterString, u as evaluateRuntimeRequires } from "./frontmatter-CV0YkjoY.js";
|
|
7
7
|
import path from "node:path";
|
|
8
|
-
import
|
|
8
|
+
import fsSync from "node:fs";
|
|
9
9
|
import os from "node:os";
|
|
10
|
-
import fs
|
|
10
|
+
import fs from "node:fs/promises";
|
|
11
11
|
import { fileURLToPath } from "node:url";
|
|
12
12
|
import { formatSkillsForPrompt, loadSkillsFromDir } from "@mariozechner/pi-coding-agent";
|
|
13
13
|
|
|
@@ -391,7 +391,7 @@ async function assertNoSymlinkEscape(relative, root, options) {
|
|
|
391
391
|
const isLast = idx === parts.length - 1;
|
|
392
392
|
current = path.join(current, part);
|
|
393
393
|
try {
|
|
394
|
-
if ((await fs
|
|
394
|
+
if ((await fs.lstat(current)).isSymbolicLink()) {
|
|
395
395
|
if (options?.allowFinalSymlink && isLast) return;
|
|
396
396
|
const target = await tryRealpath(current);
|
|
397
397
|
if (!isPathInside(rootReal, target)) throw new Error(`Symlink escapes sandbox root (${shortPath(rootReal)}): ${shortPath(current)}`);
|
|
@@ -405,7 +405,7 @@ async function assertNoSymlinkEscape(relative, root, options) {
|
|
|
405
405
|
}
|
|
406
406
|
async function tryRealpath(value) {
|
|
407
407
|
try {
|
|
408
|
-
return await fs
|
|
408
|
+
return await fs.realpath(value);
|
|
409
409
|
} catch {
|
|
410
410
|
return path.resolve(value);
|
|
411
411
|
}
|
|
@@ -424,13 +424,13 @@ function shortPath(value) {
|
|
|
424
424
|
//#region src/agents/skills/bundled-dir.ts
|
|
425
425
|
function looksLikeSkillsDir(dir) {
|
|
426
426
|
try {
|
|
427
|
-
const entries =
|
|
427
|
+
const entries = fsSync.readdirSync(dir, { withFileTypes: true });
|
|
428
428
|
for (const entry of entries) {
|
|
429
429
|
if (entry.name.startsWith(".")) continue;
|
|
430
430
|
const fullPath = path.join(dir, entry.name);
|
|
431
431
|
if (entry.isFile() && entry.name.endsWith(".md")) return true;
|
|
432
432
|
if (entry.isDirectory()) {
|
|
433
|
-
if (
|
|
433
|
+
if (fsSync.existsSync(path.join(fullPath, "SKILL.md"))) return true;
|
|
434
434
|
}
|
|
435
435
|
}
|
|
436
436
|
} catch {
|
|
@@ -445,7 +445,7 @@ function resolveBundledSkillsDir(opts = {}) {
|
|
|
445
445
|
const execPath = opts.execPath ?? process.execPath;
|
|
446
446
|
const execDir = path.dirname(execPath);
|
|
447
447
|
const sibling = path.join(execDir, "skills");
|
|
448
|
-
if (
|
|
448
|
+
if (fsSync.existsSync(sibling)) return sibling;
|
|
449
449
|
} catch {}
|
|
450
450
|
try {
|
|
451
451
|
const moduleUrl = opts.moduleUrl ?? import.meta.url;
|
|
@@ -501,7 +501,7 @@ function resolvePluginSkillDirs(params) {
|
|
|
501
501
|
const trimmed = raw.trim();
|
|
502
502
|
if (!trimmed) continue;
|
|
503
503
|
const candidate = path.resolve(record.rootDir, trimmed);
|
|
504
|
-
if (!
|
|
504
|
+
if (!fsSync.existsSync(candidate)) {
|
|
505
505
|
log.warn(`plugin skill path not found (${record.id}): ${candidate}`);
|
|
506
506
|
continue;
|
|
507
507
|
}
|
|
@@ -528,7 +528,7 @@ async function serializeByKey(key, task) {
|
|
|
528
528
|
|
|
529
529
|
//#endregion
|
|
530
530
|
//#region src/agents/skills/workspace.ts
|
|
531
|
-
const fsp =
|
|
531
|
+
const fsp = fsSync.promises;
|
|
532
532
|
const skillsLogger = createSubsystemLogger("skills");
|
|
533
533
|
const skillCommandDebugOnce = /* @__PURE__ */ new Set();
|
|
534
534
|
/**
|
|
@@ -605,7 +605,7 @@ function resolveSkillsLimits(config) {
|
|
|
605
605
|
}
|
|
606
606
|
function listChildDirectories(dir) {
|
|
607
607
|
try {
|
|
608
|
-
const entries =
|
|
608
|
+
const entries = fsSync.readdirSync(dir, { withFileTypes: true });
|
|
609
609
|
const dirs = [];
|
|
610
610
|
for (const entry of entries) {
|
|
611
611
|
if (entry.name.startsWith(".")) continue;
|
|
@@ -616,7 +616,7 @@ function listChildDirectories(dir) {
|
|
|
616
616
|
continue;
|
|
617
617
|
}
|
|
618
618
|
if (entry.isSymbolicLink()) try {
|
|
619
|
-
if (
|
|
619
|
+
if (fsSync.statSync(fullPath).isDirectory()) dirs.push(entry.name);
|
|
620
620
|
} catch {}
|
|
621
621
|
}
|
|
622
622
|
return dirs;
|
|
@@ -627,7 +627,7 @@ function listChildDirectories(dir) {
|
|
|
627
627
|
function resolveNestedSkillsRoot(dir, opts) {
|
|
628
628
|
const nested = path.join(dir, "skills");
|
|
629
629
|
try {
|
|
630
|
-
if (!
|
|
630
|
+
if (!fsSync.existsSync(nested) || !fsSync.statSync(nested).isDirectory()) return { baseDir: dir };
|
|
631
631
|
} catch {
|
|
632
632
|
return { baseDir: dir };
|
|
633
633
|
}
|
|
@@ -636,7 +636,7 @@ function resolveNestedSkillsRoot(dir, opts) {
|
|
|
636
636
|
const toScan = scanLimit === 0 ? [] : nestedDirs.slice(0, Math.min(nestedDirs.length, scanLimit));
|
|
637
637
|
for (const name of toScan) {
|
|
638
638
|
const skillMd = path.join(nested, name, "SKILL.md");
|
|
639
|
-
if (
|
|
639
|
+
if (fsSync.existsSync(skillMd)) return {
|
|
640
640
|
baseDir: nested,
|
|
641
641
|
note: `Detected nested skills root at ${nested}`
|
|
642
642
|
};
|
|
@@ -656,9 +656,9 @@ function loadSkillEntries(workspaceDir, opts) {
|
|
|
656
656
|
const loadSkills = (params) => {
|
|
657
657
|
const baseDir = resolveNestedSkillsRoot(params.dir, { maxEntriesToScan: limits.maxCandidatesPerRoot }).baseDir;
|
|
658
658
|
const rootSkillMd = path.join(baseDir, "SKILL.md");
|
|
659
|
-
if (
|
|
659
|
+
if (fsSync.existsSync(rootSkillMd)) {
|
|
660
660
|
try {
|
|
661
|
-
const size =
|
|
661
|
+
const size = fsSync.statSync(rootSkillMd).size;
|
|
662
662
|
if (size > limits.maxSkillFileBytes) {
|
|
663
663
|
skillsLogger.warn("Skipping skills root due to oversized SKILL.md.", {
|
|
664
664
|
dir: baseDir,
|
|
@@ -697,9 +697,9 @@ function loadSkillEntries(workspaceDir, opts) {
|
|
|
697
697
|
for (const name of limitedChildren) {
|
|
698
698
|
const skillDir = path.join(baseDir, name);
|
|
699
699
|
const skillMd = path.join(skillDir, "SKILL.md");
|
|
700
|
-
if (!
|
|
700
|
+
if (!fsSync.existsSync(skillMd)) continue;
|
|
701
701
|
try {
|
|
702
|
-
const size =
|
|
702
|
+
const size = fsSync.statSync(skillMd).size;
|
|
703
703
|
if (size > limits.maxSkillFileBytes) {
|
|
704
704
|
skillsLogger.warn("Skipping skill due to oversized SKILL.md.", {
|
|
705
705
|
skill: name,
|
|
@@ -767,7 +767,7 @@ function loadSkillEntries(workspaceDir, opts) {
|
|
|
767
767
|
return Array.from(merged.values()).map((skill) => {
|
|
768
768
|
let frontmatter = {};
|
|
769
769
|
try {
|
|
770
|
-
frontmatter = parseFrontmatter(
|
|
770
|
+
frontmatter = parseFrontmatter(fsSync.readFileSync(skill.filePath, "utf-8"));
|
|
771
771
|
} catch {}
|
|
772
772
|
return {
|
|
773
773
|
skill,
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { t as createSubsystemLogger } from "./subsystem-
|
|
2
|
-
import { o as resolveSessionTranscriptsDirForAgent } from "./paths-
|
|
1
|
+
import { t as createSubsystemLogger } from "./subsystem-DN75fnEF.js";
|
|
2
|
+
import { o as resolveSessionTranscriptsDirForAgent } from "./paths-DEuVuViW.js";
|
|
3
3
|
import { t as redactSensitiveText } from "./redact-BDMXB06K.js";
|
|
4
4
|
import { createRequire } from "node:module";
|
|
5
5
|
import path from "node:path";
|
|
6
|
-
import
|
|
7
|
-
import fs
|
|
6
|
+
import fsSync from "node:fs";
|
|
7
|
+
import fs from "node:fs/promises";
|
|
8
8
|
import crypto from "node:crypto";
|
|
9
9
|
|
|
10
10
|
//#region src/memory/fs-utils.ts
|
|
@@ -14,7 +14,7 @@ function isFileMissingError(err) {
|
|
|
14
14
|
async function statRegularFile(absPath) {
|
|
15
15
|
let stat;
|
|
16
16
|
try {
|
|
17
|
-
stat = await fs
|
|
17
|
+
stat = await fs.lstat(absPath);
|
|
18
18
|
} catch (err) {
|
|
19
19
|
if (isFileMissingError(err)) return { missing: true };
|
|
20
20
|
throw err;
|
|
@@ -71,7 +71,7 @@ async function runTasksWithConcurrency(params) {
|
|
|
71
71
|
//#region src/memory/internal.ts
|
|
72
72
|
function ensureDir(dir) {
|
|
73
73
|
try {
|
|
74
|
-
|
|
74
|
+
fsSync.mkdirSync(dir, { recursive: true });
|
|
75
75
|
} catch {}
|
|
76
76
|
return dir;
|
|
77
77
|
}
|
|
@@ -90,7 +90,7 @@ function isMemoryPath(relPath) {
|
|
|
90
90
|
return normalized.startsWith("memory/");
|
|
91
91
|
}
|
|
92
92
|
async function walkDir(dir, files) {
|
|
93
|
-
const entries = await fs
|
|
93
|
+
const entries = await fs.readdir(dir, { withFileTypes: true });
|
|
94
94
|
for (const entry of entries) {
|
|
95
95
|
const full = path.join(dir, entry.name);
|
|
96
96
|
if (entry.isSymbolicLink()) continue;
|
|
@@ -110,7 +110,7 @@ async function listMemoryFiles(workspaceDir, extraPaths) {
|
|
|
110
110
|
const memoryDir = path.join(workspaceDir, "memory");
|
|
111
111
|
const addMarkdownFile = async (absPath) => {
|
|
112
112
|
try {
|
|
113
|
-
const stat = await fs
|
|
113
|
+
const stat = await fs.lstat(absPath);
|
|
114
114
|
if (stat.isSymbolicLink() || !stat.isFile()) return;
|
|
115
115
|
if (!absPath.endsWith(".md")) return;
|
|
116
116
|
result.push(absPath);
|
|
@@ -119,12 +119,12 @@ async function listMemoryFiles(workspaceDir, extraPaths) {
|
|
|
119
119
|
await addMarkdownFile(memoryFile);
|
|
120
120
|
await addMarkdownFile(altMemoryFile);
|
|
121
121
|
try {
|
|
122
|
-
const dirStat = await fs
|
|
122
|
+
const dirStat = await fs.lstat(memoryDir);
|
|
123
123
|
if (!dirStat.isSymbolicLink() && dirStat.isDirectory()) await walkDir(memoryDir, result);
|
|
124
124
|
} catch {}
|
|
125
125
|
const normalizedExtraPaths = normalizeExtraMemoryPaths(workspaceDir, extraPaths);
|
|
126
126
|
if (normalizedExtraPaths.length > 0) for (const inputPath of normalizedExtraPaths) try {
|
|
127
|
-
const stat = await fs
|
|
127
|
+
const stat = await fs.lstat(inputPath);
|
|
128
128
|
if (stat.isSymbolicLink()) continue;
|
|
129
129
|
if (stat.isDirectory()) {
|
|
130
130
|
await walkDir(inputPath, result);
|
|
@@ -138,7 +138,7 @@ async function listMemoryFiles(workspaceDir, extraPaths) {
|
|
|
138
138
|
for (const entry of result) {
|
|
139
139
|
let key = entry;
|
|
140
140
|
try {
|
|
141
|
-
key = await fs
|
|
141
|
+
key = await fs.realpath(entry);
|
|
142
142
|
} catch {}
|
|
143
143
|
if (seen.has(key)) continue;
|
|
144
144
|
seen.add(key);
|
|
@@ -152,14 +152,14 @@ function hashText(value) {
|
|
|
152
152
|
async function buildFileEntry(absPath, workspaceDir) {
|
|
153
153
|
let stat;
|
|
154
154
|
try {
|
|
155
|
-
stat = await fs
|
|
155
|
+
stat = await fs.stat(absPath);
|
|
156
156
|
} catch (err) {
|
|
157
157
|
if (isFileMissingError(err)) return null;
|
|
158
158
|
throw err;
|
|
159
159
|
}
|
|
160
160
|
let content;
|
|
161
161
|
try {
|
|
162
|
-
content = await fs
|
|
162
|
+
content = await fs.readFile(absPath, "utf-8");
|
|
163
163
|
} catch (err) {
|
|
164
164
|
if (isFileMissingError(err)) return null;
|
|
165
165
|
throw err;
|
|
@@ -293,7 +293,7 @@ const log = createSubsystemLogger("memory");
|
|
|
293
293
|
async function listSessionFilesForAgent(agentId) {
|
|
294
294
|
const dir = resolveSessionTranscriptsDirForAgent(agentId);
|
|
295
295
|
try {
|
|
296
|
-
return (await fs
|
|
296
|
+
return (await fs.readdir(dir, { withFileTypes: true })).filter((entry) => entry.isFile()).map((entry) => entry.name).filter((name) => name.endsWith(".jsonl")).map((name) => path.join(dir, name));
|
|
297
297
|
} catch {
|
|
298
298
|
return [];
|
|
299
299
|
}
|
|
@@ -323,8 +323,8 @@ function extractSessionText(content) {
|
|
|
323
323
|
}
|
|
324
324
|
async function buildSessionEntry(absPath) {
|
|
325
325
|
try {
|
|
326
|
-
const stat = await fs
|
|
327
|
-
const lines = (await fs
|
|
326
|
+
const stat = await fs.stat(absPath);
|
|
327
|
+
const lines = (await fs.readFile(absPath, "utf-8")).split("\n");
|
|
328
328
|
const collected = [];
|
|
329
329
|
const lineMap = [];
|
|
330
330
|
for (let jsonlIdx = 0; jsonlIdx < lines.length; jsonlIdx++) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { u as resolveGatewayPort } from "./paths-Cqn-zk3M.js";
|
|
2
2
|
import { B as theme, k as info, z as isRich } from "./utils-B-0b9bGM.js";
|
|
3
|
-
import { B as summarizeRestartSentinel, Jt as sha256HexPrefix, _t as formatUsageReportLines, a as buildChannelSummary, gt as loadProviderUsageSummary, h as listAgentsForGateway, m as classifySessionKey, o as buildChannelAccountSnapshot, pr as lookupContextTokens, s as formatChannelAllowFrom, wr as peekSystemEvents, x as resolveSessionModelRef, z as readRestartSentinel } from "./reply-
|
|
3
|
+
import { B as summarizeRestartSentinel, Jt as sha256HexPrefix, _t as formatUsageReportLines, a as buildChannelSummary, gt as loadProviderUsageSummary, h as listAgentsForGateway, m as classifySessionKey, o as buildChannelAccountSnapshot, pr as lookupContextTokens, s as formatChannelAllowFrom, wr as peekSystemEvents, x as resolveSessionModelRef, z as readRestartSentinel } from "./reply-o0IEwJ_P.js";
|
|
4
4
|
import { S as parseAgentSessionKey } from "./session-key-DCt45XZa.js";
|
|
5
5
|
import { t as resolveSymiPackageRoot } from "./symi-root-CrGJbkzf.js";
|
|
6
6
|
import { n as runExec } from "./exec-CWkblSrI.js";
|
|
@@ -10,7 +10,7 @@ import { t as formatCliCommand } from "./command-format-COaS-S7B.js";
|
|
|
10
10
|
import { H as VERSION, i as loadConfig, o as readConfigFileSnapshot } from "./config-PXAJCHa5.js";
|
|
11
11
|
import { o as getTailnetHostname, s as readTailscaleStatusJson } from "./tailscale-D5dKabOc.js";
|
|
12
12
|
import { a as inspectPortUsage, s as formatPortDiagnostics } from "./ports-BOmtxoTv.js";
|
|
13
|
-
import { H as resolveMainSessionKey, R as resolveFreshSessionTotalTokens, o as loadSessionStore } from "./sessions-
|
|
13
|
+
import { H as resolveMainSessionKey, R as resolveFreshSessionTotalTokens, o as loadSessionStore } from "./sessions-BeYHj0gr.js";
|
|
14
14
|
import { n as listChannelPlugins } from "./plugins-DKDeQZF0.js";
|
|
15
15
|
import { c as resolveStorePath } from "./paths-CyhzMxFA.js";
|
|
16
16
|
import { r as getMemorySearchManager } from "./memory-cli-AoMrHA5O.js";
|
|
@@ -27,8 +27,8 @@ import { s as resolveGatewayLogPaths, t as resolveGatewayService } from "./servi
|
|
|
27
27
|
import { t as formatRuntimeStatusWithDetails } from "./runtime-status-D6c3G7my.js";
|
|
28
28
|
import { t as readLastGatewayErrorLine } from "./diagnostics-BRwihzJG.js";
|
|
29
29
|
import { t as renderTable } from "./table-BKlH0YlA.js";
|
|
30
|
-
import { a as resolveGatewayProbeAuth$1, c as probeGateway, t as runSecurityAudit } from "./audit-
|
|
31
|
-
import { a as resolveHeartbeatSummaryForAgent, t as formatHealthChannelLines } from "./health-
|
|
30
|
+
import { a as resolveGatewayProbeAuth$1, c as probeGateway, t as runSecurityAudit } from "./audit-DVUHZrf4.js";
|
|
31
|
+
import { a as resolveHeartbeatSummaryForAgent, t as formatHealthChannelLines } from "./health-D1L94KKE.js";
|
|
32
32
|
import { g as resolveUpdateChannelDisplay, i as formatGitInstallLabel, m as normalizeUpdateChannel, t as checkUpdateStatus } from "./update-check-7EzEjSzb.js";
|
|
33
33
|
import { t as resolveNodeService } from "./node-service-CD47Qpf1.js";
|
|
34
34
|
import { n as redactSecrets, t as formatGatewayAuthUsed } from "./format-B0yJsjEo.js";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { o as createSubsystemLogger } from "./entry.js";
|
|
2
2
|
import { D as resolveDefaultAgentWorkspaceDir, c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-D-jRCY0d.js";
|
|
3
3
|
import { i as loadConfig } from "./config-DXt3pc08.js";
|
|
4
|
-
import { m as loadSymiPlugins, p as createPluginLoaderLogger } from "./subagent-registry-
|
|
4
|
+
import { m as loadSymiPlugins, p as createPluginLoaderLogger } from "./subagent-registry-4XZvxwX0.js";
|
|
5
5
|
|
|
6
6
|
//#region src/plugins/status.ts
|
|
7
7
|
const log = createSubsystemLogger("plugins");
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { dt as createPluginLoaderLogger, ft as loadSymiPlugins } from "./reply-
|
|
1
|
+
import { dt as createPluginLoaderLogger, ft as loadSymiPlugins } from "./reply-o0IEwJ_P.js";
|
|
2
2
|
import { t as createSubsystemLogger } from "./subsystem-D9vIQve0.js";
|
|
3
3
|
import { D as resolveDefaultAgentWorkspaceDir, c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-CgUHAtCo.js";
|
|
4
4
|
import { i as loadConfig } from "./config-PXAJCHa5.js";
|
|
@@ -9,15 +9,15 @@ import { c as resolveAgentWorkspaceDir } from "./agent-scope-D-jRCY0d.js";
|
|
|
9
9
|
import { t as buildWorkspaceSkillStatus } from "./skills-status-DODCG6UU.js";
|
|
10
10
|
import { H as VERSION, i as loadConfig, o as readConfigFileSnapshot } from "./config-DXt3pc08.js";
|
|
11
11
|
import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-BrRWr7Lj.js";
|
|
12
|
-
import { En as peekSystemEvents, St as summarizeRestartSentinel, cn as buildChannelAccountSnapshot, in as formatUsageReportLines, ln as formatChannelAllowFrom, nt as sha256HexPrefix, rn as loadProviderUsageSummary, sn as buildChannelSummary, xt as readRestartSentinel } from "./subagent-registry-
|
|
13
|
-
import { F as resolveMainSessionKey, j as resolveFreshSessionTotalTokens, o as loadSessionStore } from "./sessions-
|
|
12
|
+
import { En as peekSystemEvents, St as summarizeRestartSentinel, cn as buildChannelAccountSnapshot, in as formatUsageReportLines, ln as formatChannelAllowFrom, nt as sha256HexPrefix, rn as loadProviderUsageSummary, sn as buildChannelSummary, xt as readRestartSentinel } from "./subagent-registry-4XZvxwX0.js";
|
|
13
|
+
import { F as resolveMainSessionKey, j as resolveFreshSessionTotalTokens, o as loadSessionStore } from "./sessions-BPD85pWA.js";
|
|
14
14
|
import { n as listChannelPlugins } from "./plugins-CwSlLxM8.js";
|
|
15
15
|
import { o as getTailnetHostname, s as readTailscaleStatusJson } from "./tailscale-CbbvYNVw.js";
|
|
16
16
|
import { i as formatPortDiagnostics, n as inspectPortUsage } from "./ports-2xFXbwLq.js";
|
|
17
17
|
import { c as resolveStorePath } from "./paths-DNdWAq7b.js";
|
|
18
18
|
import { r as getMemorySearchManager } from "./memory-cli-Bf2sefbp.js";
|
|
19
19
|
import { n as formatTimeAgo } from "./format-relative-DX-rh76l.js";
|
|
20
|
-
import { l as resolveSessionModelRef, n as classifySessionKey, r as listAgentsForGateway, u as lookupContextTokens } from "./session-utils-
|
|
20
|
+
import { l as resolveSessionModelRef, n as classifySessionKey, r as listAgentsForGateway, u as lookupContextTokens } from "./session-utils-BPXkhuNM.js";
|
|
21
21
|
import { o as getRemoteSkillEligibility } from "./skill-commands-BSJONVkt.js";
|
|
22
22
|
import { r as formatDurationPrecise } from "./format-duration-BOC0O2XQ.js";
|
|
23
23
|
import { n as withProgress } from "./progress-BAHiAaDW.js";
|
|
@@ -28,8 +28,8 @@ import { s as resolveGatewayLogPaths, t as resolveGatewayService } from "./servi
|
|
|
28
28
|
import { t as formatRuntimeStatusWithDetails } from "./runtime-status-hFVEC3wO.js";
|
|
29
29
|
import { t as readLastGatewayErrorLine } from "./diagnostics-CS1ov_hH.js";
|
|
30
30
|
import { t as renderTable } from "./table-D01d2GuY.js";
|
|
31
|
-
import { a as resolveGatewayProbeAuth$1, c as probeGateway, t as runSecurityAudit } from "./audit-
|
|
32
|
-
import { o as resolveHeartbeatSummaryForAgent, t as formatHealthChannelLines } from "./health-
|
|
31
|
+
import { a as resolveGatewayProbeAuth$1, c as probeGateway, t as runSecurityAudit } from "./audit-DgAM_dWL.js";
|
|
32
|
+
import { o as resolveHeartbeatSummaryForAgent, t as formatHealthChannelLines } from "./health-7ZvWXkvm.js";
|
|
33
33
|
import { g as resolveUpdateChannelDisplay, i as formatGitInstallLabel, m as normalizeUpdateChannel, t as checkUpdateStatus } from "./update-check-ZdimP1aU.js";
|
|
34
34
|
import { t as resolveNodeService } from "./node-service-fcZExd22.js";
|
|
35
35
|
import { n as redactSecrets, t as formatGatewayAuthUsed } from "./format-DVLB9DNB.js";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { P as resolveConfigDir } from "./registry-
|
|
2
|
-
import { c as detectMime, l as extensionForMime } from "./image-ops-
|
|
1
|
+
import { P as resolveConfigDir } from "./registry-UkL38jvt.js";
|
|
2
|
+
import { c as detectMime, l as extensionForMime } from "./image-ops-M5agStZn.js";
|
|
3
3
|
import path from "node:path";
|
|
4
|
-
import fs
|
|
4
|
+
import fs from "node:fs/promises";
|
|
5
5
|
import crypto from "node:crypto";
|
|
6
6
|
|
|
7
7
|
//#region src/media/store.ts
|
|
@@ -24,7 +24,7 @@ function getMediaDir() {
|
|
|
24
24
|
}
|
|
25
25
|
async function ensureMediaDir() {
|
|
26
26
|
const mediaDir = resolveMediaDir();
|
|
27
|
-
await fs
|
|
27
|
+
await fs.mkdir(mediaDir, {
|
|
28
28
|
recursive: true,
|
|
29
29
|
mode: 448
|
|
30
30
|
});
|
|
@@ -33,7 +33,7 @@ async function ensureMediaDir() {
|
|
|
33
33
|
async function saveMediaBuffer(buffer, contentType, subdir = "inbound", maxBytes = MAX_BYTES, originalFilename) {
|
|
34
34
|
if (buffer.byteLength > maxBytes) throw new Error(`Media exceeds ${(maxBytes / (1024 * 1024)).toFixed(0)}MB limit`);
|
|
35
35
|
const dir = path.join(resolveMediaDir(), subdir);
|
|
36
|
-
await fs
|
|
36
|
+
await fs.mkdir(dir, {
|
|
37
37
|
recursive: true,
|
|
38
38
|
mode: 448
|
|
39
39
|
});
|
|
@@ -51,7 +51,7 @@ async function saveMediaBuffer(buffer, contentType, subdir = "inbound", maxBytes
|
|
|
51
51
|
id = sanitized ? `${sanitized}---${uuid}${ext}` : `${uuid}${ext}`;
|
|
52
52
|
} else id = ext ? `${uuid}${ext}` : uuid;
|
|
53
53
|
const dest = path.join(dir, id);
|
|
54
|
-
await fs
|
|
54
|
+
await fs.writeFile(dest, buffer, { mode: 384 });
|
|
55
55
|
return {
|
|
56
56
|
id,
|
|
57
57
|
path: dest,
|
|
@@ -19,7 +19,7 @@ import { It as SESSION_LABEL_MAX_LENGTH, t as GatewayClient } from "./client-qUl
|
|
|
19
19
|
import { a as randomIdempotencyKey, d as resolveLeastPrivilegeOperatorScopesForMethod, n as callGateway, r as callGatewayLeastPrivilege, t as buildGatewayConnectionDetails } from "./call-BrRWr7Lj.js";
|
|
20
20
|
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-C9dERklz.js";
|
|
21
21
|
import { i as normalizeInputProvenance, n as applyInputProvenanceToUserMessage, r as hasInterSessionUserProvenance } from "./input-provenance-D0lNkCf6.js";
|
|
22
|
-
import { A as DEFAULT_RESET_TRIGGERS, B as resolveGroupSessionKey, D as resolveSessionResetPolicy, E as resolveChannelResetConfig, F as resolveMainSessionKey, G as deliveryContextKey, J as normalizeSessionDeliveryFields, K as mergeDeliveryContext, L as deriveSessionMetaPatch, O as resolveSessionResetType, P as resolveExplicitAgentSessionKey, T as evaluateSessionFreshness, U as resolveSessionLockMaxHoldFromTimeout, V as acquireSessionWriteLock, W as deliveryContextFromSession, Y as normalizeAccountId$3, _ as capArrayByJsonBytes, a as resolveAndPersistSessionFile, c as recordSessionMetaFromInbound, d as updateSessionStore, f as updateSessionStoreEntry, g as archiveSessionTranscripts, j as resolveFreshSessionTotalTokens, k as resolveThreadFlag, m as resolveCacheTtlMs$1, n as parseSessionThreadInfo, o as loadSessionStore, p as isCacheEnabled, q as normalizeDeliveryContext, r as appendAssistantMessageToSessionTranscript, s as readSessionUpdatedAt, t as extractDeliveryInfo, u as updateLastRoute, w as resolveSessionKey } from "./sessions-
|
|
22
|
+
import { A as DEFAULT_RESET_TRIGGERS, B as resolveGroupSessionKey, D as resolveSessionResetPolicy, E as resolveChannelResetConfig, F as resolveMainSessionKey, G as deliveryContextKey, J as normalizeSessionDeliveryFields, K as mergeDeliveryContext, L as deriveSessionMetaPatch, O as resolveSessionResetType, P as resolveExplicitAgentSessionKey, T as evaluateSessionFreshness, U as resolveSessionLockMaxHoldFromTimeout, V as acquireSessionWriteLock, W as deliveryContextFromSession, Y as normalizeAccountId$3, _ as capArrayByJsonBytes, a as resolveAndPersistSessionFile, c as recordSessionMetaFromInbound, d as updateSessionStore, f as updateSessionStoreEntry, g as archiveSessionTranscripts, j as resolveFreshSessionTotalTokens, k as resolveThreadFlag, m as resolveCacheTtlMs$1, n as parseSessionThreadInfo, o as loadSessionStore, p as isCacheEnabled, q as normalizeDeliveryContext, r as appendAssistantMessageToSessionTranscript, s as readSessionUpdatedAt, t as extractDeliveryInfo, u as updateLastRoute, w as resolveSessionKey } from "./sessions-BPD85pWA.js";
|
|
23
23
|
import { a as isSilentReplyText, i as isSilentReplyPrefixText, n as SILENT_REPLY_TOKEN, r as SYMIPULSE_TOKEN, t as HEARTBEAT_TOKEN } from "./tokens-Csntmwwn.js";
|
|
24
24
|
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-CwSlLxM8.js";
|
|
25
25
|
import { a as logWebSelfId, i as getWebAuthAgeMs, m as webAuthExists, n as resolveWhatsAppAccount, o as logoutWeb, u as readWebSelfId } from "./accounts-D9ITgITj.js";
|
|
@@ -27,14 +27,14 @@ import { t as normalizeChatType } from "./chat-type-CeFzWU-6.js";
|
|
|
27
27
|
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-BcvVKfh2.js";
|
|
28
28
|
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-DnsTDCll.js";
|
|
29
29
|
import { n as createBrowserRouteDispatcher, r as getMachineDisplayName, t as withTimeout$4 } from "./with-timeout-BIXdW2Bg.js";
|
|
30
|
-
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-
|
|
30
|
+
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-BLt_liXS.js";
|
|
31
31
|
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-Ci8Xsc_Y.js";
|
|
32
32
|
import { r as getDiagnosticSessionState } from "./diagnostic-session-state-CIjIGxEE.js";
|
|
33
33
|
import { n as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-D1eLj5t8.js";
|
|
34
34
|
import { 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 parseTelegramTarget, K as toLocationContext, L as resolveTelegramStreamMode, M as normalizeForwardedContext, N as resolveTelegramForumThreadId, O as describeReplyTarget, P as resolveTelegramGroupAllowFromContext, R as resolveTelegramThreadSpec, S as buildSenderName, T as buildTelegramParentPeer, U as isSenderIdAllowed, V as resolveSenderAllowMatch, W as mergeAllowFromSources, Y as resolveTelegramTargetChatType, _ as resolveTelegramFetch, a as reactMessageTelegram, b as buildGroupLabel, c as sendStickerTelegram, d as wasSentByBot, 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 isVoiceCompatibleAudio, r as deleteMessageTelegram, s as sendPollTelegram, t as buildInlineKeyboard, u as resolveTelegramVoiceSend, v as splitTelegramCaption, w as buildTelegramGroupPeerId, x as buildSenderLabel, y as withTelegramApiErrorLogging, z as isSenderAllowed$1 } from "./send-CaUqpyyp.js";
|
|
35
35
|
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-CUkaZz2F.js";
|
|
36
|
-
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-
|
|
37
|
-
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-
|
|
36
|
+
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-DSscUmkR.js";
|
|
37
|
+
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-CDxHBl3I.js";
|
|
38
38
|
import { T as DEFAULT_AI_SNAPSHOT_MAX_CHARS } from "./chrome-D2ohnA09.js";
|
|
39
39
|
import { i as resolveBrowserConfig, m as resolveBrowserControlAuth } from "./server-context-BBaojT7U.js";
|
|
40
40
|
import { n as formatErrorMessage, r as formatUncaughtError } from "./errors-Ba_ROWsq.js";
|
|
@@ -63,13 +63,13 @@ import { a as readResponseWithLimit, i as fetchRemoteMedia, n as getDefaultMedia
|
|
|
63
63
|
import { a as loadWebMedia, i as getDefaultLocalRoots } from "./ir-D-flMHhr.js";
|
|
64
64
|
import { a as resolveNativeSkillsEnabled, i as resolveNativeCommandsEnabled, n as isNativeCommandsExplicitlyDisabled, r as isRestartEnabled, t as isCommandFlagEnabled } from "./commands-CkrIpKCc.js";
|
|
65
65
|
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-CccyRhnX.js";
|
|
66
|
-
import { _ as stripMinimaxToolCallXml, a as decodeDataUrl, b as extractTextFromChatContent, 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, y as stripReasoningTagsFromText } from "./image-
|
|
66
|
+
import { _ as stripMinimaxToolCallXml, a as decodeDataUrl, b as extractTextFromChatContent, 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, y as stripReasoningTagsFromText } from "./image-DXco5IYt.js";
|
|
67
67
|
import { n as resolveToolDisplay } from "./tool-display-CXwOC-qw.js";
|
|
68
68
|
import { n as formatTimeAgo } from "./format-relative-DX-rh76l.js";
|
|
69
69
|
import { r as normalizeInboundTextNewlines, t as finalizeInboundContext } from "./inbound-context-72dOKfLG.js";
|
|
70
|
-
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-
|
|
70
|
+
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-CSdQSvE8.js";
|
|
71
71
|
import { n as loadModelCatalog, r as modelSupportsVision, t as findModelInCatalog } from "./model-catalog-DKGSg6jF.js";
|
|
72
|
-
import { a as loadCombinedSessionStoreForGateway, u as lookupContextTokens } from "./session-utils-
|
|
72
|
+
import { a as loadCombinedSessionStoreForGateway, u as lookupContextTokens } from "./session-utils-BPXkhuNM.js";
|
|
73
73
|
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-BSJONVkt.js";
|
|
74
74
|
import { i as readChannelAllowFromStore, l as listPairingChannels, o as removeChannelAllowFromStoreEntry, s as upsertChannelPairingRequest, t as addChannelAllowFromStoreEntry } from "./pairing-store-NgA78L2g.js";
|
|
75
75
|
import { n as wrapFetchWithAbortSignal, t as resolveFetch } from "./fetch-BhFkwlZW.js";
|
|
@@ -95,7 +95,7 @@ import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliv
|
|
|
95
95
|
import { r as detectBinary } from "./onboard-helpers-7H_XiJt-.js";
|
|
96
96
|
import { t as resolvePairingIdLabel } from "./pairing-labels-DwceB1dG.js";
|
|
97
97
|
import { t as getActiveWebListener } from "./active-listener-De1JhR4W.js";
|
|
98
|
-
import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, n as isToolAllowedByPolicies, r as resolveEffectiveToolPolicy, t as filterToolsByPolicy } from "./pi-tools.policy-
|
|
98
|
+
import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, n as isToolAllowedByPolicies, r as resolveEffectiveToolPolicy, t as filterToolsByPolicy } from "./pi-tools.policy-DOVQ8dDx.js";
|
|
99
99
|
import { createRequire } from "node:module";
|
|
100
100
|
import { execFileSync, spawn, spawnSync } from "node:child_process";
|
|
101
101
|
import os, { homedir } from "node:os";
|
|
@@ -20374,7 +20374,7 @@ async function routeReply(params) {
|
|
|
20374
20374
|
const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
|
|
20375
20375
|
const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
|
|
20376
20376
|
try {
|
|
20377
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
20377
|
+
const { deliverOutboundPayloads } = await import("./deliver-BLt_liXS.js").then((n) => n.n);
|
|
20378
20378
|
return {
|
|
20379
20379
|
ok: true,
|
|
20380
20380
|
messageId: (await deliverOutboundPayloads({
|
|
@@ -40415,6 +40415,10 @@ async function runEmbeddedAttempt(params) {
|
|
|
40415
40415
|
effectivePrompt = `${hookResult.prependContext}\n\n${params.prompt}`;
|
|
40416
40416
|
log$5.debug(`hooks: prepended context to prompt (${hookResult.prependContext.length} chars)`);
|
|
40417
40417
|
}
|
|
40418
|
+
if (hookResult?.systemPrompt) {
|
|
40419
|
+
applySystemPromptOverrideToSession(activeSession, `${systemPromptText}\n\n${hookResult.systemPrompt}`);
|
|
40420
|
+
log$5.debug(`hooks: appended systemPrompt from plugin hook (${hookResult.systemPrompt.length} chars)`);
|
|
40421
|
+
}
|
|
40418
40422
|
{
|
|
40419
40423
|
const autoRecallAgentId = normalizeAgentId(params.sessionKey);
|
|
40420
40424
|
if ((params.config ? resolveMemorySearchConfig(params.config, autoRecallAgentId) : null) && params.config) try {
|
|
@@ -44398,7 +44402,7 @@ async function deliverSessionMaintenanceWarning(params) {
|
|
|
44398
44402
|
return;
|
|
44399
44403
|
}
|
|
44400
44404
|
try {
|
|
44401
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
44405
|
+
const { deliverOutboundPayloads } = await import("./deliver-BLt_liXS.js").then((n) => n.n);
|
|
44402
44406
|
await deliverOutboundPayloads({
|
|
44403
44407
|
cfg: params.cfg,
|
|
44404
44408
|
channel,
|
|
@@ -47852,7 +47856,7 @@ async function describeStickerImage(params) {
|
|
|
47852
47856
|
logVerbose(`telegram: describing sticker with ${provider}/${model}`);
|
|
47853
47857
|
try {
|
|
47854
47858
|
const buffer = await fs$1.readFile(imagePath);
|
|
47855
|
-
const { describeImageWithModel } = await import("./image-
|
|
47859
|
+
const { describeImageWithModel } = await import("./image-DXco5IYt.js").then((n) => n.n);
|
|
47856
47860
|
return (await describeImageWithModel({
|
|
47857
47861
|
buffer,
|
|
47858
47862
|
fileName: "sticker.webp",
|
|
@@ -49651,7 +49655,7 @@ async function preflightDiscordMessage(params) {
|
|
|
49651
49655
|
let preflightTranscript;
|
|
49652
49656
|
const hasAudioAttachment = message.attachments?.some((att) => att.contentType?.startsWith("audio/"));
|
|
49653
49657
|
if (!isDirectMessage && shouldRequireMention && hasAudioAttachment && !baseText && mentionRegexes.length > 0) try {
|
|
49654
|
-
const { transcribeFirstAudio } = await import("./audio-preflight-
|
|
49658
|
+
const { transcribeFirstAudio } = await import("./audio-preflight-DfALITTK.js");
|
|
49655
49659
|
const audioPaths = message.attachments?.filter((att) => att.contentType?.startsWith("audio/")).map((att) => att.url) ?? [];
|
|
49656
49660
|
if (audioPaths.length > 0) preflightTranscript = await transcribeFirstAudio({
|
|
49657
49661
|
ctx: {
|
|
@@ -53434,7 +53438,7 @@ function isVoiceChannelType(type) {
|
|
|
53434
53438
|
function createDefaultDeps() {
|
|
53435
53439
|
return {
|
|
53436
53440
|
sendMessageWhatsApp: async (...args) => {
|
|
53437
|
-
const { sendMessageWhatsApp } = await import("./web-
|
|
53441
|
+
const { sendMessageWhatsApp } = await import("./web-CTog1mw0.js");
|
|
53438
53442
|
return await sendMessageWhatsApp(...args);
|
|
53439
53443
|
},
|
|
53440
53444
|
sendMessageTelegram: async (...args) => {
|
|
@@ -66582,7 +66586,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, storeAllowFro
|
|
|
66582
66586
|
const hasAudio = allMedia.some((media) => media.contentType?.startsWith("audio/"));
|
|
66583
66587
|
let preflightTranscript;
|
|
66584
66588
|
if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0) try {
|
|
66585
|
-
const { transcribeFirstAudio } = await import("./audio-preflight-
|
|
66589
|
+
const { transcribeFirstAudio } = await import("./audio-preflight-DfALITTK.js");
|
|
66586
66590
|
preflightTranscript = await transcribeFirstAudio({
|
|
66587
66591
|
ctx: {
|
|
66588
66592
|
MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
|
|
@@ -68748,7 +68752,7 @@ function loadWebLoginQr() {
|
|
|
68748
68752
|
return webLoginQrPromise;
|
|
68749
68753
|
}
|
|
68750
68754
|
function loadWebChannel() {
|
|
68751
|
-
webChannelPromise ??= import("./web-
|
|
68755
|
+
webChannelPromise ??= import("./web-CTog1mw0.js");
|
|
68752
68756
|
return webChannelPromise;
|
|
68753
68757
|
}
|
|
68754
68758
|
function loadWhatsAppActions() {
|