@symerian/symi 2.5.8 → 2.6.1
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-qtxJ-6em.js → accounts-3dCrO3oZ.js} +1 -1
- package/dist/{accounts-tNElYrCH.js → accounts-BRw8yhIW.js} +21 -21
- package/dist/{accounts-CWktKM8a.js → accounts-BuZxOb3B.js} +1 -1
- package/dist/{active-listener-C9r8ZB9m.js → active-listener-CfHHV2SU.js} +1 -1
- package/dist/{agent-scope-BxoUQqgM.js → agent-scope-CpEJ0B88.js} +3 -3
- package/dist/{agents-CXloh6n_.js → agents-DQIz-_on.js} +4 -4
- package/dist/{agents.config-BuTzBaXf.js → agents.config-CIJRaVWl.js} +1 -1
- package/dist/{agents.config-BhAJXAtA.js → agents.config-D8WPDf-m.js} +1 -1
- package/dist/{audio-preflight-O3ASWbaG.js → audio-preflight-BVaaZWkg.js} +34 -34
- package/dist/{audio-preflight-C40mKAp7.js → audio-preflight-CPBOQV4I.js} +4 -4
- package/dist/{auth-choice-DvaVrSwn.js → auth-choice-BqFbNDuP.js} +1 -1
- package/dist/{auth-choice-Br6zT8iS.js → auth-choice-DTDyJL1r.js} +1 -1
- package/dist/{model-auth-DK43VicI.js → auth-profiles-DdK1Hxaa.js} +412 -412
- package/dist/{banner-BtqKaQZr.js → banner-DYDCxnDL.js} +1 -1
- package/dist/{bindings-B7Ke6LJi.js → bindings-BsHoBLIE.js} +2 -2
- package/dist/build-info.json +3 -3
- package/dist/bundled/boot-md/handler.js +60 -60
- package/dist/bundled/bootstrap-extra-files/handler.js +6 -6
- package/dist/bundled/command-logger/handler.js +3 -3
- package/dist/bundled/session-memory/handler.js +61 -61
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{channel-activity-CsM_hJ_s.js → channel-activity-B6G1jnQT.js} +2 -2
- package/dist/{channel-options-CfLxsV76.js → channel-options-CvHSm_Kx.js} +1 -1
- package/dist/{channel-options-DFHEgad5.js → channel-options-vBCJhJB7.js} +1 -1
- package/dist/{channel-web-D-jDDmWN.js → channel-web-CM2LyWZW.js} +1 -1
- package/dist/{channels-cli-BEZORT4N.js → channels-cli-D5H3Wcho.js} +4 -4
- package/dist/{channels-cli-CT6wdGT8.js → channels-cli-DzOjNNFn.js} +4 -4
- package/dist/{chrome-BFekevcE.js → chrome-D2SKJnR7.js} +24 -24
- package/dist/{chrome-CDJYxX5a.js → chrome-DkaXoP36.js} +5 -5
- package/dist/{chunk-BW5f05BR.js → chunk-09egQapi.js} +1 -1
- package/dist/{cli-kxxM9xT0.js → cli-8hqssnRJ.js} +1 -1
- package/dist/{cli-CkxvN9Cb.js → cli-DNZwCDRe.js} +1 -1
- package/dist/{command-registry-DsqA8NDd.js → command-registry-CHtN2HeK.js} +9 -9
- package/dist/{commands-registry-D7CTCQPm.js → commands-registry-Bfc7Uz0o.js} +4 -4
- package/dist/{completion-cli-mZMiIG7C.js → completion-cli-C8y_J5KC.js} +1 -1
- package/dist/{completion-cli-QCrjurdu.js → completion-cli-Cov6N3BO.js} +2 -2
- package/dist/{config-DRbjHIwD.js → config-5SdHIcHU.js} +6 -6
- package/dist/{config-cli-CS_0o9LY.js → config-cli-B2REEd2l.js} +1 -1
- package/dist/{config-cli-DLsLPE4o.js → config-cli-BwO0xAbV.js} +1 -1
- package/dist/{configure-T9J4bw0H.js → configure-BWSYSi2-.js} +3 -3
- package/dist/{configure-BX4aNf3w.js → configure-C6yNe33U.js} +3 -3
- package/dist/{conversation-label-DXUkoKcB.js → conversation-label-Onz2hiJh.js} +1 -1
- package/dist/{deliver-BH0l3UKW.js → deliver-C-37cZUe.js} +1 -1
- package/dist/{deliver-CvCK5Mm9.js → deliver-C46-vyqg.js} +11 -11
- package/dist/{diagnostic-CI0kRQkt.js → diagnostic-rPhsBoZz.js} +2 -2
- package/dist/{doctor-completion-BKydQfCM.js → doctor-completion-BKKzstt6.js} +1 -1
- package/dist/{doctor-completion-CTodkFg2.js → doctor-completion-D7CDLFLg.js} +1 -1
- package/dist/entry.js +1 -1
- package/dist/{command-format-BaxDnULz.js → env-BDXYbTKj.js} +10 -10
- package/dist/{errors-BoQgnc8X.js → errors-XIsvXeC-.js} +1 -1
- package/dist/extensionAPI.js +6 -6
- package/dist/{frontmatter-C_bv_0P8.js → frontmatter-CTR5f_Ez.js} +2 -2
- package/dist/{gateway-cli-CZnyhTAu.js → gateway-cli-BhFM4Bkm.js} +20 -18
- package/dist/{gateway-cli-DEpU3Bg3.js → gateway-cli-Datohp3m.js} +20 -18
- package/dist/{gemini-auth-CdSPHuLl.js → gemini-auth-Dy12ZAH3.js} +2 -2
- package/dist/{github-copilot-token-C_qUP7p5.js → github-copilot-token-cCYzSU9h.js} +1 -1
- package/dist/{glass-ui-ws-KbKXJGb5.js → glass-ui-ws-BzqfD_wX.js} +7 -7
- package/dist/{glass-ui-ws-BdBSYcsf.js → glass-ui-ws-D9yvYULL.js} +7 -7
- package/dist/{health-DQmyj-7z.js → health-BjwDRAdd.js} +1 -1
- package/dist/{health-z-YCZRhf.js → health-C5XJPwpt.js} +1 -1
- package/dist/{hooks-cli-4d-QhgRs.js → hooks-cli-CafMq9Vr.js} +2 -2
- package/dist/{hooks-cli-BRehYEXJ.js → hooks-cli-U12oVyLH.js} +2 -2
- package/dist/{image-B0wGflxA.js → image-CuzFLQWC.js} +7 -7
- package/dist/{image-CHzdaNJ4.js → image-DcpMiprB.js} +1 -1
- package/dist/{image-ops-CvJzsyvE.js → image-ops-C7CauEK8.js} +99 -99
- package/dist/{inbound-context-BlHX0H3E.js → inbound-context-DSDTl6Kj.js} +2 -2
- package/dist/index.js +6 -6
- package/dist/{ir-DccrnjsE.js → ir-CTiz95Vb.js} +5 -5
- package/dist/llm-slug-generator.js +64 -84
- package/dist/{local-roots-DMwIh5cS.js → local-roots-DhZz0Ybs.js} +6 -6
- package/dist/{login-qr-Batf3PT5.js → login-qr-AP9agO-i.js} +13 -13
- package/dist/{login-CwCoxapk.js → login-ul8zaw_S.js} +7 -7
- package/dist/{manager-D_LwXbc6.js → manager-PprhCvO_.js} +25 -25
- package/dist/{manifest-registry-D0IQ3WuX.js → manifest-registry-yb7sAlu4.js} +2 -2
- package/dist/{markdown-tables-iMQQZu4Q.js → markdown-tables-C-BmIap8.js} +1 -1
- package/dist/{message-channel-Dz5lr5b0.js → message-channel-OlFBYAw8.js} +1 -1
- package/dist/{models-CPlSSoV0.js → models-Bo4iHJy-.js} +7 -8
- package/dist/{models-cli-BM2RWTmM.js → models-cli-6aNi3eN9.js} +7 -8
- package/dist/{models-cli-DDhpJuX3.js → models-cli-B5vh-XK8.js} +3 -3
- package/dist/{onboard-DpB21qno.js → onboard-Bm-pmstf.js} +2 -2
- package/dist/{onboard-channels-DjfS9mS6.js → onboard-channels-BRd1cXye.js} +1 -1
- package/dist/{onboard-channels-S0FbC25u.js → onboard-channels-CUl5U8kV.js} +1 -1
- package/dist/{onboard-BczLOUCW.js → onboard-f-GJ26Ix.js} +2 -2
- package/dist/{onboarding-CyPkawbg.js → onboarding-CvBDWlBJ.js} +3 -3
- package/dist/{onboarding--mrKZtpR.js → onboarding-DIVKvosg.js} +3 -3
- package/dist/{onboarding.finalize-0XoI3wLH.js → onboarding.finalize-DJX6mSLa.js} +6 -6
- package/dist/{onboarding.finalize-C0ijhYbg.js → onboarding.finalize-WSac-JKd.js} +5 -5
- package/dist/{outbound-D4fN_ZlE.js → outbound-CtMCmwxR.js} +7 -7
- package/dist/{outbound-attachment-DjNDa3zn.js → outbound-attachment-DJldbweZ.js} +2 -2
- package/dist/{paths-DLyHUt31.js → paths-CbQV9WEg.js} +2 -2
- package/dist/{pi-auth-json-0SYBFZTt.js → pi-auth-json-Bk8ERadJ.js} +10 -10
- package/dist/{pi-embedded-Cg70pjmm.js → pi-embedded-BmbbC1Sb.js} +20275 -20070
- package/dist/{pi-embedded-helpers-lgx_U5KS.js → pi-embedded-helpers-B8kqLWns.js} +4 -4
- package/dist/{pi-embedded-helpers-DLFjnVBb.js → pi-embedded-helpers-CfqDGQ9J.js} +81 -81
- package/dist/{plugin-registry-VhRGXCLQ.js → plugin-registry-2zUJMasm.js} +1 -1
- package/dist/{plugin-registry-Dxo1iUfJ.js → plugin-registry-5yf-hu_W.js} +1 -1
- package/dist/plugin-sdk/agents/model-token-filter.d.ts +10 -0
- package/dist/plugin-sdk/agents/pi-embedded-runner.d.ts +1 -1
- package/dist/plugin-sdk/agents/pi-tools.validate-wrapper.d.ts +23 -0
- package/dist/plugin-sdk/agents/pi-tools.validate.d.ts +26 -0
- package/dist/plugin-sdk/agents/tool-loop-detection.d.ts +3 -1
- package/dist/plugin-sdk/agents/unified-runner.d.ts +69 -1
- package/dist/plugin-sdk/auto-reply/reply/agent-runner-execution.d.ts +2 -2
- package/dist/plugin-sdk/{channel-web-DKo2tOO-.js → channel-web-DPyyTvFo.js} +1 -1
- package/dist/plugin-sdk/config/model-profiles.d.ts +2 -0
- package/dist/plugin-sdk/index.js +2 -2
- package/dist/plugin-sdk/infra/diagnostic-events.d.ts +1 -1
- package/dist/plugin-sdk/logging/diagnostic-session-state.d.ts +2 -0
- package/dist/plugin-sdk/logging/diagnostic.d.ts +1 -1
- package/dist/plugin-sdk/{reply-Ch4_18FZ.js → reply-QAcAd9ev.js} +536 -331
- package/dist/plugin-sdk/{tool-loop-detection-edmW8ZiF.js → tool-loop-detection-DU5sTIKg.js} +53 -3
- package/dist/plugin-sdk/{web-Dz2oyzw_.js → web-DaTTL9M0.js} +2 -2
- package/dist/{plugins-DQYI3Fr-.js → plugins-BzmbgY7s.js} +5 -5
- package/dist/{plugins-cli-zNr1ThAO.js → plugins-cli-D4eRESV2.js} +2 -2
- package/dist/{plugins-cli-DeDSnKlr.js → plugins-cli-DksVl33N.js} +2 -2
- package/dist/{program-COEKTv5u.js → program-BjORH7Cc.js} +7 -7
- package/dist/{program-context-CbM3x8lT.js → program-context-DaNGrTOm.js} +17 -17
- package/dist/{prompt-select-styled-d18_XWTb.js → prompt-select-styled-QaS2zul_.js} +4 -4
- package/dist/{prompt-select-styled-C6JLWNMU.js → prompt-select-styled-YOj4xigd.js} +4 -4
- package/dist/{provider-auth-helpers-BmH4oHwJ.js → provider-auth-helpers-BAGT_RXV.js} +1 -1
- package/dist/{provider-auth-helpers-C8cO9DLi.js → provider-auth-helpers-DCEbm2hz.js} +1 -1
- package/dist/{push-apns-CoqskfCc.js → push-apns-BECodU1i.js} +1 -1
- package/dist/{push-apns-CJtWrkQV.js → push-apns-Bek3ANJa.js} +1 -1
- package/dist/{pw-ai-De-KR9_s.js → pw-ai-1htA-NnS.js} +1 -1
- package/dist/{pw-ai-BnAKvSuw.js → pw-ai-m0mj2KWK.js} +16 -16
- package/dist/{qmd-manager-QHUP-_em.js → qmd-manager-iDLSiI4Z.js} +10 -10
- package/dist/{register.agent-C1Is84Q1.js → register.agent-B34lxx7F.js} +5 -5
- package/dist/{register.agent-fK3vOCU5.js → register.agent-DJHQo-Iq.js} +6 -6
- package/dist/{register.configure-CIwwqqt9.js → register.configure-BdhhIzb0.js} +6 -6
- package/dist/{register.configure-DFJeKFFK.js → register.configure-DC_-t5kj.js} +6 -6
- package/dist/{register.maintenance-BwTFd3Ax.js → register.maintenance-CITur3O_.js} +8 -8
- package/dist/{register.maintenance-DKDqruW6.js → register.maintenance-cs-A4kHF.js} +7 -7
- package/dist/{register.message-DYnXMP4c.js → register.message--RhtnEYn.js} +2 -2
- package/dist/{register.message-Ce57RPK8.js → register.message-PIaHm2pZ.js} +2 -2
- package/dist/{register.onboard-9glf-j43.js → register.onboard-CTJQoDcK.js} +4 -4
- package/dist/{register.onboard-Dj-_AJQr.js → register.onboard-DucZgrF7.js} +4 -4
- package/dist/{register.setup-C0CXUMFE.js → register.setup-2ZiUN7ui.js} +4 -4
- package/dist/{register.setup-Cp3DBI6D.js → register.setup-DD4Rgkt9.js} +4 -4
- package/dist/{register.status-health-sessions-DBXMyrNP.js → register.status-health-sessions-BqD7L8XL.js} +3 -3
- package/dist/{register.status-health-sessions-BncpB9Vw.js → register.status-health-sessions-sLgA92t7.js} +3 -3
- package/dist/{register.subclis-D6PmKJll.js → register.subclis-B2dGWFur.js} +9 -9
- package/dist/{registry-CK4e9hn8.js → registry-DYq1AYOv.js} +2 -2
- package/dist/{replies-BIX_isV7.js → replies-LSmuwOhA.js} +3 -3
- package/dist/{reply-BfZzgC9H.js → reply-DYnTEYoa.js} +537 -332
- package/dist/{reply-prefix-XlyuyChD.js → reply-prefix-DpqZu44Z.js} +1 -1
- package/dist/{resolve-route-CZ-1eqw0.js → resolve-route-C4_I4GFI.js} +5 -5
- package/dist/{retry-Cly39XZB.js → retry-BBVXkKBV.js} +1 -1
- package/dist/{run-main-wm3s04Xh.js → run-main-DWmu2b6D.js} +14 -14
- package/dist/{runner-DUBExAb5.js → runner-BcQ0sF9T.js} +1 -1
- package/dist/{runner-odEv83vv.js → runner-CU9l0uJh.js} +46 -46
- package/dist/{send-WyRqb4WD.js → send-CQAKg_12.js} +7 -7
- package/dist/{send-DeFniOjh.js → send-CVMyYPQw.js} +7 -7
- package/dist/{send-CiTGOvEc.js → send-CvhXrdgS.js} +12 -12
- package/dist/{send-DW96zgDL.js → send-DAN9hA5h.js} +6 -6
- package/dist/{send-B1u-LrcS.js → send-DYj_o4_F.js} +14 -14
- package/dist/{server-methods-D5zcFhng.js → server-methods-C8EWZt2g.js} +7 -7
- package/dist/{server-methods-xXv4ObXK.js → server-methods-vDGoM3xL.js} +7 -7
- package/dist/{server-node-events-BN7H6wBM.js → server-node-events-CKi12bol.js} +2 -2
- package/dist/{server-node-events-D4At7-pe.js → server-node-events-DFwGbkcO.js} +2 -2
- package/dist/{session-SM36BTsl.js → session-DSU1vxxi.js} +4 -4
- package/dist/{skill-commands-BJMb_psG.js → skill-commands-DcVwOafC.js} +17 -17
- package/dist/{skills-BFekKL7i.js → skills-Bs0AW1g3.js} +25 -25
- package/dist/{sqlite-DRbx2dhW.js → sqlite-D_mz1_-y.js} +17 -17
- package/dist/{status-XJTqV-CC.js → status--iNVOTMO.js} +2 -2
- package/dist/{status-PbQwO8SV.js → status-B1_iHrOg.js} +2 -2
- package/dist/{status-Nhvf_TEN.js → status-BQcdARV4.js} +1 -1
- package/dist/{status-C5rGEkur.js → status-DiX0DAtH.js} +1 -1
- package/dist/{store-C0wvOkae.js → store-01F_JM7O.js} +6 -6
- package/dist/{subagent-registry-DvCrN2PQ.js → subagent-registry-CXrOOgPW.js} +19438 -19233
- package/dist/{subsystem-Bs9YvKLa.js → subsystem-BjyjJF-d.js} +1 -1
- package/dist/{tables-DuZspiBu.js → tables-qMwbq29u.js} +1 -1
- package/dist/{target-errors-Be1SwYlW.js → target-errors-Bbr9rlzN.js} +2 -2
- package/dist/{thinking-CdlENGRW.js → thinking-BprCy23Z.js} +5 -5
- package/dist/{tokens-H1H1LiSQ.js → tokens-Bux9Y_xD.js} +1 -1
- package/dist/{tool-images-DXB7tqWi.js → tool-images-SqqWIT22.js} +2 -2
- package/dist/{tool-loop-detection-BgbtzUGc.js → tool-loop-detection-C7TCF2V2.js} +53 -3
- package/dist/{tool-loop-detection-BU3fbtCd.js → tool-loop-detection-D7qjFnRh.js} +53 -3
- package/dist/{tool-loop-detection-B6j1r-Wk.js → tool-loop-detection-DPVtQOfM.js} +53 -3
- package/dist/{tool-loop-detection-Cs8_HCsx.js → tool-loop-detection-DR_rrIA1.js} +56 -6
- package/dist/{pi-embedded-CTBkDXkV.js → unified-runner-CulJZMxc.js} +69924 -69719
- package/dist/{update-cli-BHxqriaA.js → update-cli-560gprSp.js} +7 -7
- package/dist/{update-cli-IqwjBYS0.js → update-cli-D1pLX3eo.js} +8 -8
- package/dist/{update-runner-BuoOzUcX.js → update-runner-BQxFFCGc.js} +1 -1
- package/dist/{update-runner-BFwirE1P.js → update-runner-CLKHrONW.js} +1 -1
- package/dist/{web-C4CDNJmR.js → web-Bqrgp43v.js} +1 -1
- package/dist/{web-OSVyyJa9.js → web-D4qJ9XKP.js} +6 -6
- package/dist/{web-Cr6E8Ych.js → web-Dr5cOn-1.js} +2 -2
- package/dist/{web-Dti17mxB.js → web-hHX9a9YO.js} +64 -64
- package/dist/{whatsapp-actions-D1RsnX7P.js → whatsapp-actions-BIeSWsCF.js} +25 -25
- package/dist/{workspace-wAaHI8-5.js → workspace-DscDraUb.js} +28 -28
- package/extensions/bluebubbles/node_modules/.bin/symi +0 -0
- package/extensions/copilot-proxy/node_modules/.bin/symi +0 -0
- package/extensions/diagnostics-otel/node_modules/.bin/acorn +0 -0
- package/extensions/diagnostics-otel/node_modules/.bin/symi +0 -0
- package/extensions/discord/node_modules/.bin/symi +0 -0
- package/extensions/feishu/node_modules/.bin/symi +0 -0
- package/extensions/google-antigravity-auth/node_modules/.bin/symi +0 -0
- package/extensions/google-gemini-cli-auth/node_modules/.bin/symi +0 -0
- package/extensions/googlechat/node_modules/.bin/symi +0 -0
- package/extensions/imessage/node_modules/.bin/symi +0 -0
- package/extensions/irc/node_modules/.bin/symi +0 -0
- package/extensions/learning-loop/node_modules/.bin/symi +0 -0
- package/extensions/line/node_modules/.bin/symi +0 -0
- package/extensions/matrix/node_modules/.bin/markdown-it +0 -0
- package/extensions/matrix/node_modules/.bin/symi +0 -0
- package/extensions/mattermost/node_modules/.bin/symi +0 -0
- package/extensions/memory-core/node_modules/.bin/symi +0 -0
- package/extensions/memory-lancedb/node_modules/.bin/arrow2csv +0 -0
- package/extensions/memory-lancedb/node_modules/.bin/openai +0 -0
- package/extensions/memory-lancedb/node_modules/.bin/symi +0 -0
- package/extensions/minimax-portal-auth/node_modules/.bin/symi +0 -0
- package/extensions/msteams/node_modules/.bin/symi +0 -0
- package/extensions/nextcloud-talk/node_modules/.bin/symi +0 -0
- package/extensions/nostr/node_modules/.bin/symi +0 -0
- package/extensions/nostr/node_modules/.bin/tsc +0 -0
- package/extensions/nostr/node_modules/.bin/tsserver +0 -0
- package/extensions/signal/node_modules/.bin/symi +0 -0
- package/extensions/slack/node_modules/.bin/symi +0 -0
- package/extensions/telegram/node_modules/.bin/symi +0 -0
- package/extensions/tlon/node_modules/.bin/symi +0 -0
- package/extensions/twitch/node_modules/.bin/symi +0 -0
- package/extensions/voice-call/node_modules/.bin/symi +0 -0
- package/extensions/whatsapp/node_modules/.bin/symi +0 -0
- package/extensions/zalo/node_modules/.bin/symi +0 -0
- package/extensions/zalouser/node_modules/.bin/symi +0 -0
- package/package.json +83 -113
- package/skills/nano-banana-pro/scripts/generate_image.py +0 -0
- package/skills/sherpa-onnx-tts/bin/sherpa-onnx-tts +0 -0
- package/skills/tmux/scripts/find-sessions.sh +0 -0
- package/skills/tmux/scripts/wait-for-text.sh +0 -0
- package/dist/paths-Cce4PUkG.js +0 -212
- /package/dist/{boolean-B8-BqKGQ.js → boolean-CE7i9tBR.js} +0 -0
- /package/dist/{chat-type-C_KiWNAH.js → chat-type-3FRbbjbq.js} +0 -0
- /package/dist/{diagnostic-session-state-Bxo4UHOL.js → diagnostic-session-state-Zw87xFym.js} +0 -0
- /package/dist/{legacy-names-BHV4AoFT.js → legacy-names-CePMUvus.js} +0 -0
- /package/dist/{pi-model-discovery-DaNAekda.js → pi-model-discovery-Bv5YDJc8.js} +0 -0
- /package/dist/{redact-jSxx6Ep2.js → redact-BDMXB06K.js} +0 -0
- /package/dist/{ssrf-BTMDZjHT.js → ssrf-DpUUUgkK.js} +0 -0
- /package/dist/{targets-CFovdgJI.js → targets-DGkXkFPj.js} +0 -0
- /package/dist/{transcript-events-DDYvbmRV.js → transcript-events-BBh3Gsrx.js} +0 -0
|
@@ -9,6 +9,8 @@ const TOOL_CALL_HISTORY_SIZE = 30;
|
|
|
9
9
|
const WARNING_THRESHOLD = 10;
|
|
10
10
|
const CRITICAL_THRESHOLD = 20;
|
|
11
11
|
const GLOBAL_CIRCUIT_BREAKER_THRESHOLD = 30;
|
|
12
|
+
const CONSECUTIVE_FAILURE_WARNING_THRESHOLD = 3;
|
|
13
|
+
const CONSECUTIVE_FAILURE_CRITICAL_THRESHOLD = 5;
|
|
12
14
|
const DEFAULT_LOOP_DETECTION_CONFIG = {
|
|
13
15
|
enabled: false,
|
|
14
16
|
historySize: TOOL_CALL_HISTORY_SIZE,
|
|
@@ -18,8 +20,11 @@ const DEFAULT_LOOP_DETECTION_CONFIG = {
|
|
|
18
20
|
detectors: {
|
|
19
21
|
genericRepeat: true,
|
|
20
22
|
knownPollNoProgress: true,
|
|
21
|
-
pingPong: true
|
|
22
|
-
|
|
23
|
+
pingPong: true,
|
|
24
|
+
consecutiveFailure: true
|
|
25
|
+
},
|
|
26
|
+
consecutiveFailureWarningThreshold: CONSECUTIVE_FAILURE_WARNING_THRESHOLD,
|
|
27
|
+
consecutiveFailureCriticalThreshold: CONSECUTIVE_FAILURE_CRITICAL_THRESHOLD
|
|
23
28
|
};
|
|
24
29
|
function asPositiveInt(value, fallback) {
|
|
25
30
|
if (typeof value !== "number" || !Number.isInteger(value) || value <= 0) return fallback;
|
|
@@ -37,10 +42,13 @@ function resolveLoopDetectionConfig(config) {
|
|
|
37
42
|
warningThreshold,
|
|
38
43
|
criticalThreshold,
|
|
39
44
|
globalCircuitBreakerThreshold,
|
|
45
|
+
consecutiveFailureWarningThreshold: asPositiveInt(config?.consecutiveFailureWarningThreshold, DEFAULT_LOOP_DETECTION_CONFIG.consecutiveFailureWarningThreshold),
|
|
46
|
+
consecutiveFailureCriticalThreshold: asPositiveInt(config?.consecutiveFailureCriticalThreshold, DEFAULT_LOOP_DETECTION_CONFIG.consecutiveFailureCriticalThreshold),
|
|
40
47
|
detectors: {
|
|
41
48
|
genericRepeat: config?.detectors?.genericRepeat ?? DEFAULT_LOOP_DETECTION_CONFIG.detectors.genericRepeat,
|
|
42
49
|
knownPollNoProgress: config?.detectors?.knownPollNoProgress ?? DEFAULT_LOOP_DETECTION_CONFIG.detectors.knownPollNoProgress,
|
|
43
|
-
pingPong: config?.detectors?.pingPong ?? DEFAULT_LOOP_DETECTION_CONFIG.detectors.pingPong
|
|
50
|
+
pingPong: config?.detectors?.pingPong ?? DEFAULT_LOOP_DETECTION_CONFIG.detectors.pingPong,
|
|
51
|
+
consecutiveFailure: (config?.detectors)?.consecutiveFailure ?? DEFAULT_LOOP_DETECTION_CONFIG.detectors.consecutiveFailure
|
|
44
52
|
}
|
|
45
53
|
};
|
|
46
54
|
}
|
|
@@ -218,6 +226,22 @@ function canonicalPairKey(signatureA, signatureB) {
|
|
|
218
226
|
return [signatureA, signatureB].toSorted().join("|");
|
|
219
227
|
}
|
|
220
228
|
/**
|
|
229
|
+
* Count consecutive error results for a specific tool, walking backward from
|
|
230
|
+
* the most recent call. A success or a call to a different tool resets the streak.
|
|
231
|
+
* Only counts entries that have been resolved (have a resultHash or isError flag).
|
|
232
|
+
*/
|
|
233
|
+
function getConsecutiveFailureStreak(history, toolName) {
|
|
234
|
+
let count = 0;
|
|
235
|
+
for (let i = history.length - 1; i >= 0; i--) {
|
|
236
|
+
const entry = history[i];
|
|
237
|
+
if (entry.toolName !== toolName) break;
|
|
238
|
+
if (entry.resultHash === void 0 && entry.isError === void 0) break;
|
|
239
|
+
if (!entry.isError) break;
|
|
240
|
+
count++;
|
|
241
|
+
}
|
|
242
|
+
return count;
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
221
245
|
* Detect if an agent is stuck in a repetitive tool call loop.
|
|
222
246
|
* Checks if the same tool+params combination has been called excessively.
|
|
223
247
|
*/
|
|
@@ -230,6 +254,31 @@ function detectToolCallLoop(state, toolName, params, config) {
|
|
|
230
254
|
const noProgressStreak = noProgress.count;
|
|
231
255
|
const knownPollTool = isKnownPollToolCall(toolName, params);
|
|
232
256
|
const pingPong = getPingPongStreak(history, currentHash);
|
|
257
|
+
if (resolvedConfig.detectors.consecutiveFailure) {
|
|
258
|
+
const failureStreak = getConsecutiveFailureStreak(history, toolName);
|
|
259
|
+
if (failureStreak >= resolvedConfig.consecutiveFailureCriticalThreshold) {
|
|
260
|
+
log.error(`Consecutive failure circuit breaker: ${toolName} failed ${failureStreak} times in a row`);
|
|
261
|
+
return {
|
|
262
|
+
stuck: true,
|
|
263
|
+
level: "critical",
|
|
264
|
+
detector: "consecutive_failure",
|
|
265
|
+
count: failureStreak,
|
|
266
|
+
message: `CRITICAL: ${toolName} has failed ${failureStreak} consecutive times. Stop calling this tool. Explain to the user what you were trying to do and why it failed.`,
|
|
267
|
+
warningKey: `consecutive-failure:${toolName}`
|
|
268
|
+
};
|
|
269
|
+
}
|
|
270
|
+
if (failureStreak >= resolvedConfig.consecutiveFailureWarningThreshold) {
|
|
271
|
+
log.warn(`Consecutive failure warning: ${toolName} failed ${failureStreak} times in a row`);
|
|
272
|
+
return {
|
|
273
|
+
stuck: true,
|
|
274
|
+
level: "warning",
|
|
275
|
+
detector: "consecutive_failure",
|
|
276
|
+
count: failureStreak,
|
|
277
|
+
message: `WARNING: You have failed to call ${toolName} ${failureStreak} times consecutively. Stop retrying and explain to the user what you were trying to do. The tool arguments may contain invalid syntax from model control tokens.`,
|
|
278
|
+
warningKey: `consecutive-failure:${toolName}`
|
|
279
|
+
};
|
|
280
|
+
}
|
|
281
|
+
}
|
|
233
282
|
if (noProgressStreak >= resolvedConfig.globalCircuitBreakerThreshold) {
|
|
234
283
|
log.error(`Global circuit breaker triggered: ${toolName} repeated ${noProgressStreak} times with no progress`);
|
|
235
284
|
return {
|
|
@@ -334,6 +383,7 @@ function recordToolCallOutcome(state, params) {
|
|
|
334
383
|
if (call.toolName !== params.toolName || call.argsHash !== argsHash) continue;
|
|
335
384
|
if (call.resultHash !== void 0) continue;
|
|
336
385
|
call.resultHash = resultHash;
|
|
386
|
+
call.isError = params.error !== void 0;
|
|
337
387
|
matched = true;
|
|
338
388
|
break;
|
|
339
389
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { a as WA_WEB_AUTH_DIR, g as webAuthExists, s as logWebSelfId, u as pickWebChannel } from "./accounts-D9zGZU5t.js";
|
|
2
|
-
import "./reply-
|
|
2
|
+
import "./reply-QAcAd9ev.js";
|
|
3
3
|
import "./paths-DR2yt_mP.js";
|
|
4
4
|
import "./github-copilot-token-D9X2phUj.js";
|
|
5
5
|
import "./plugins-BbAvhC25.js";
|
|
@@ -45,7 +45,7 @@ import "./pi-embedded-helpers-BveUP4hk.js";
|
|
|
45
45
|
import "./paths-A0xdf3yk.js";
|
|
46
46
|
import "./diagnostic-mFf4i4G9.js";
|
|
47
47
|
import "./store-Do3t33-c.js";
|
|
48
|
-
import { n as monitorWebInbox, t as monitorWebChannel } from "./channel-web-
|
|
48
|
+
import { n as monitorWebInbox, t as monitorWebChannel } from "./channel-web-DPyyTvFo.js";
|
|
49
49
|
import "./image-BOYy0Ump.js";
|
|
50
50
|
import "./pi-model-discovery-LbcEa65a.js";
|
|
51
51
|
import "./api-key-rotation-CVBMpnPc.js";
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { f as DEFAULT_ACCOUNT_ID, p as normalizeAccountId } from "./session-key-BCzIW1Y2.js";
|
|
2
|
-
import { M as normalizeE164, a as normalizeAnyChannelId, l as requireActivePluginRegistry, n as CHAT_CHANNEL_ORDER } from "./registry-
|
|
3
|
-
import {
|
|
4
|
-
import { t as normalizeChatType } from "./chat-type-
|
|
5
|
-
import {
|
|
6
|
-
import { n as listBoundAccountIds, r as resolveDefaultAgentBoundAccountId } from "./bindings-
|
|
2
|
+
import { M as normalizeE164, a as normalizeAnyChannelId, l as requireActivePluginRegistry, n as CHAT_CHANNEL_ORDER } from "./registry-DYq1AYOv.js";
|
|
3
|
+
import { t as isTruthyEnvValue } from "./env-BDXYbTKj.js";
|
|
4
|
+
import { t as normalizeChatType } from "./chat-type-3FRbbjbq.js";
|
|
5
|
+
import { m as createAccountListHelpers } from "./accounts-BRw8yhIW.js";
|
|
6
|
+
import { n as listBoundAccountIds, r as resolveDefaultAgentBoundAccountId } from "./bindings-BsHoBLIE.js";
|
|
7
7
|
import fs from "node:fs";
|
|
8
8
|
|
|
9
9
|
//#region src/channels/plugins/account-action-gate.ts
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { g as resolveStateDir } from "./paths-Cqn-zk3M.js";
|
|
2
2
|
import { B as theme, S as shortenHomePath, g as resolveConfigDir, x as shortenHomeInString, y as resolveUserPath } from "./utils-B-0b9bGM.js";
|
|
3
3
|
import "./thinking-EAliFiVK.js";
|
|
4
|
-
import "./reply-
|
|
4
|
+
import "./reply-DYnTEYoa.js";
|
|
5
5
|
import "./registry-Cja8eT7G.js";
|
|
6
6
|
import { f as defaultRuntime } from "./subsystem-D9vIQve0.js";
|
|
7
7
|
import "./exec-CWkblSrI.js";
|
|
@@ -106,7 +106,7 @@ import "./npm-registry-spec-C2JDdSZS.js";
|
|
|
106
106
|
import "./skill-scanner-CLs8u6vQ.js";
|
|
107
107
|
import { i as resolvePluginInstallDir, n as installPluginFromNpmSpec, r as installPluginFromPath, t as recordPluginInstall } from "./installs-C1Cebk97.js";
|
|
108
108
|
import { t as renderTable } from "./table-BTgkRafz.js";
|
|
109
|
-
import { t as buildPluginStatusReport } from "./status-
|
|
109
|
+
import { t as buildPluginStatusReport } from "./status-DiX0DAtH.js";
|
|
110
110
|
import { n as updateNpmInstalledPlugins } from "./update-rw7wJwHd.js";
|
|
111
111
|
import fs from "node:fs";
|
|
112
112
|
import os from "node:os";
|
|
@@ -13,7 +13,7 @@ import "./client-DMBZpU6X.js";
|
|
|
13
13
|
import "./call-BcE47FtD.js";
|
|
14
14
|
import "./message-channel-C9dERklz.js";
|
|
15
15
|
import "./pairing-token-Byh6drgn.js";
|
|
16
|
-
import "./subagent-registry-
|
|
16
|
+
import "./subagent-registry-CXrOOgPW.js";
|
|
17
17
|
import "./sessions-CJXnZVjR.js";
|
|
18
18
|
import "./tokens-Csntmwwn.js";
|
|
19
19
|
import "./plugins-CwSlLxM8.js";
|
|
@@ -102,7 +102,7 @@ import "./npm-registry-spec-DkaZNHAW.js";
|
|
|
102
102
|
import "./skill-scanner-BGWOBqLY.js";
|
|
103
103
|
import { i as resolvePluginInstallDir, n as installPluginFromNpmSpec, r as installPluginFromPath, t as recordPluginInstall } from "./installs-CgQpVncj.js";
|
|
104
104
|
import { t as renderTable } from "./table-D01d2GuY.js";
|
|
105
|
-
import { t as buildPluginStatusReport } from "./status-
|
|
105
|
+
import { t as buildPluginStatusReport } from "./status-BQcdARV4.js";
|
|
106
106
|
import { n as updateNpmInstalledPlugins } from "./update-DEMKx4eC.js";
|
|
107
107
|
import os from "node:os";
|
|
108
108
|
import path from "node:path";
|
|
@@ -14,7 +14,7 @@ import "./client-DMBZpU6X.js";
|
|
|
14
14
|
import "./call-BcE47FtD.js";
|
|
15
15
|
import "./message-channel-C9dERklz.js";
|
|
16
16
|
import "./pairing-token-Byh6drgn.js";
|
|
17
|
-
import "./subagent-registry-
|
|
17
|
+
import "./subagent-registry-CXrOOgPW.js";
|
|
18
18
|
import "./sessions-CJXnZVjR.js";
|
|
19
19
|
import "./tokens-Csntmwwn.js";
|
|
20
20
|
import "./plugins-CwSlLxM8.js";
|
|
@@ -99,13 +99,13 @@ import "./prompt-style-DwCXob2h.js";
|
|
|
99
99
|
import "./pairing-labels-D1HDboV2.js";
|
|
100
100
|
import "./pi-tools.policy-De00gPXt.js";
|
|
101
101
|
import "./catalog-DLQFKucJ.js";
|
|
102
|
-
import "./plugin-registry-
|
|
103
|
-
import { n as resolveCliChannelOptions } from "./channel-options-
|
|
104
|
-
import { t as getSubCliCommandsWithSubcommands } from "./register.subclis-
|
|
105
|
-
import { a as registerProgramCommands, r as getCoreCliCommandsWithSubcommands } from "./command-registry-
|
|
102
|
+
import "./plugin-registry-5yf-hu_W.js";
|
|
103
|
+
import { n as resolveCliChannelOptions } from "./channel-options-CvHSm_Kx.js";
|
|
104
|
+
import { t as getSubCliCommandsWithSubcommands } from "./register.subclis-B2dGWFur.js";
|
|
105
|
+
import { a as registerProgramCommands, r as getCoreCliCommandsWithSubcommands } from "./command-registry-CHtN2HeK.js";
|
|
106
106
|
import { r as setProgramContext } from "./program-context-CqzR_m-7.js";
|
|
107
107
|
import { t as forceFreePort } from "./ports-Dn122MUd.js";
|
|
108
|
-
import { n as formatCliBannerLine, r as hasEmittedCliBanner, t as emitCliBanner } from "./banner-
|
|
108
|
+
import { n as formatCliBannerLine, r as hasEmittedCliBanner, t as emitCliBanner } from "./banner-DYDCxnDL.js";
|
|
109
109
|
import { Command } from "commander";
|
|
110
110
|
|
|
111
111
|
//#region src/cli/program/context.ts
|
|
@@ -213,7 +213,7 @@ function registerPreActionHooks(program, programVersion) {
|
|
|
213
213
|
commandPath
|
|
214
214
|
});
|
|
215
215
|
if (PLUGIN_REQUIRED_COMMANDS.has(commandPath[0])) {
|
|
216
|
-
const { ensurePluginRegistryLoaded } = await import("./plugin-registry-
|
|
216
|
+
const { ensurePluginRegistryLoaded } = await import("./plugin-registry-5yf-hu_W.js").then((n) => n.n);
|
|
217
217
|
ensurePluginRegistryLoaded();
|
|
218
218
|
}
|
|
219
219
|
});
|
|
@@ -43,7 +43,7 @@ const entries = [
|
|
|
43
43
|
description: "Run, inspect, and query the WebSocket Gateway",
|
|
44
44
|
hasSubcommands: true,
|
|
45
45
|
register: async (program) => {
|
|
46
|
-
(await import("./gateway-cli-
|
|
46
|
+
(await import("./gateway-cli-BhFM4Bkm.js")).registerGatewayCli(program);
|
|
47
47
|
}
|
|
48
48
|
},
|
|
49
49
|
{
|
|
@@ -75,7 +75,7 @@ const entries = [
|
|
|
75
75
|
description: "Discover, scan, and configure models",
|
|
76
76
|
hasSubcommands: true,
|
|
77
77
|
register: async (program) => {
|
|
78
|
-
(await import("./models-cli-
|
|
78
|
+
(await import("./models-cli-6aNi3eN9.js")).registerModelsCli(program);
|
|
79
79
|
}
|
|
80
80
|
},
|
|
81
81
|
{
|
|
@@ -155,7 +155,7 @@ const entries = [
|
|
|
155
155
|
description: "Manage internal agent hooks",
|
|
156
156
|
hasSubcommands: true,
|
|
157
157
|
register: async (program) => {
|
|
158
|
-
(await import("./hooks-cli-
|
|
158
|
+
(await import("./hooks-cli-U12oVyLH.js")).registerHooksCli(program);
|
|
159
159
|
}
|
|
160
160
|
},
|
|
161
161
|
{
|
|
@@ -179,7 +179,7 @@ const entries = [
|
|
|
179
179
|
description: "Secure DM pairing (approve inbound requests)",
|
|
180
180
|
hasSubcommands: true,
|
|
181
181
|
register: async (program) => {
|
|
182
|
-
const { registerPluginCliCommands } = await import("./cli-
|
|
182
|
+
const { registerPluginCliCommands } = await import("./cli-8hqssnRJ.js");
|
|
183
183
|
registerPluginCliCommands(program, await loadConfig());
|
|
184
184
|
(await import("./pairing-cli-CBLfGvqW.js")).registerPairingCli(program);
|
|
185
185
|
}
|
|
@@ -189,8 +189,8 @@ const entries = [
|
|
|
189
189
|
description: "Manage Symi plugins and extensions",
|
|
190
190
|
hasSubcommands: true,
|
|
191
191
|
register: async (program) => {
|
|
192
|
-
(await import("./plugins-cli-
|
|
193
|
-
const { registerPluginCliCommands } = await import("./cli-
|
|
192
|
+
(await import("./plugins-cli-D4eRESV2.js")).registerPluginsCli(program);
|
|
193
|
+
const { registerPluginCliCommands } = await import("./cli-8hqssnRJ.js");
|
|
194
194
|
registerPluginCliCommands(program, await loadConfig());
|
|
195
195
|
}
|
|
196
196
|
},
|
|
@@ -199,7 +199,7 @@ const entries = [
|
|
|
199
199
|
description: "Manage connected chat channels (Telegram, Discord, etc.)",
|
|
200
200
|
hasSubcommands: true,
|
|
201
201
|
register: async (program) => {
|
|
202
|
-
(await import("./channels-cli-
|
|
202
|
+
(await import("./channels-cli-D5H3Wcho.js")).registerChannelsCli(program);
|
|
203
203
|
}
|
|
204
204
|
},
|
|
205
205
|
{
|
|
@@ -231,7 +231,7 @@ const entries = [
|
|
|
231
231
|
description: "Update Symi and inspect update channel status",
|
|
232
232
|
hasSubcommands: true,
|
|
233
233
|
register: async (program) => {
|
|
234
|
-
(await import("./update-cli-
|
|
234
|
+
(await import("./update-cli-560gprSp.js")).registerUpdateCli(program);
|
|
235
235
|
}
|
|
236
236
|
},
|
|
237
237
|
{
|
|
@@ -239,7 +239,7 @@ const entries = [
|
|
|
239
239
|
description: "Generate shell completion script",
|
|
240
240
|
hasSubcommands: false,
|
|
241
241
|
register: async (program) => {
|
|
242
|
-
(await import("./completion-cli-
|
|
242
|
+
(await import("./completion-cli-C8y_J5KC.js").then((n) => n.n)).registerCompletionCli(program);
|
|
243
243
|
}
|
|
244
244
|
}
|
|
245
245
|
];
|
|
@@ -302,7 +302,7 @@ const coreEntries = [
|
|
|
302
302
|
hasSubcommands: false
|
|
303
303
|
}],
|
|
304
304
|
register: async ({ program }) => {
|
|
305
|
-
(await import("./register.setup-
|
|
305
|
+
(await import("./register.setup-DD4Rgkt9.js")).registerSetupCommand(program);
|
|
306
306
|
}
|
|
307
307
|
},
|
|
308
308
|
{
|
|
@@ -312,7 +312,7 @@ const coreEntries = [
|
|
|
312
312
|
hasSubcommands: false
|
|
313
313
|
}],
|
|
314
314
|
register: async ({ program }) => {
|
|
315
|
-
(await import("./register.onboard-
|
|
315
|
+
(await import("./register.onboard-DucZgrF7.js")).registerOnboardCommand(program);
|
|
316
316
|
}
|
|
317
317
|
},
|
|
318
318
|
{
|
|
@@ -322,7 +322,7 @@ const coreEntries = [
|
|
|
322
322
|
hasSubcommands: false
|
|
323
323
|
}],
|
|
324
324
|
register: async ({ program }) => {
|
|
325
|
-
(await import("./register.configure-
|
|
325
|
+
(await import("./register.configure-BdhhIzb0.js")).registerConfigureCommand(program);
|
|
326
326
|
}
|
|
327
327
|
},
|
|
328
328
|
{
|
|
@@ -332,7 +332,7 @@ const coreEntries = [
|
|
|
332
332
|
hasSubcommands: true
|
|
333
333
|
}],
|
|
334
334
|
register: async ({ program }) => {
|
|
335
|
-
(await import("./config-cli-
|
|
335
|
+
(await import("./config-cli-BwO0xAbV.js")).registerConfigCli(program);
|
|
336
336
|
}
|
|
337
337
|
},
|
|
338
338
|
{
|
|
@@ -359,7 +359,7 @@ const coreEntries = [
|
|
|
359
359
|
}
|
|
360
360
|
],
|
|
361
361
|
register: async ({ program }) => {
|
|
362
|
-
(await import("./register.maintenance-
|
|
362
|
+
(await import("./register.maintenance-cs-A4kHF.js")).registerMaintenanceCommands(program);
|
|
363
363
|
}
|
|
364
364
|
},
|
|
365
365
|
{
|
|
@@ -369,7 +369,7 @@ const coreEntries = [
|
|
|
369
369
|
hasSubcommands: true
|
|
370
370
|
}],
|
|
371
371
|
register: async ({ program, ctx }) => {
|
|
372
|
-
(await import("./register.message-
|
|
372
|
+
(await import("./register.message-PIaHm2pZ.js")).registerMessageCommands(program, ctx);
|
|
373
373
|
}
|
|
374
374
|
},
|
|
375
375
|
{
|
|
@@ -393,7 +393,7 @@ const coreEntries = [
|
|
|
393
393
|
hasSubcommands: true
|
|
394
394
|
}],
|
|
395
395
|
register: async ({ program, ctx }) => {
|
|
396
|
-
(await import("./register.agent-
|
|
396
|
+
(await import("./register.agent-B34lxx7F.js")).registerAgentCommands(program, { agentChannelOptions: ctx.agentChannelOptions });
|
|
397
397
|
}
|
|
398
398
|
},
|
|
399
399
|
{
|
|
@@ -415,7 +415,7 @@ const coreEntries = [
|
|
|
415
415
|
}
|
|
416
416
|
],
|
|
417
417
|
register: async ({ program }) => {
|
|
418
|
-
(await import("./register.status-health-sessions-
|
|
418
|
+
(await import("./register.status-health-sessions-BqD7L8XL.js")).registerStatusHealthSessionsCommands(program);
|
|
419
419
|
}
|
|
420
420
|
},
|
|
421
421
|
{
|
|
@@ -8,7 +8,7 @@ import { t as buildWorkspaceSkillStatus } from "./skills-status-DKXJ-tbi.js";
|
|
|
8
8
|
import { l as writeConfigFile, o as readConfigFileSnapshot } from "./config-DHBLS1Hl.js";
|
|
9
9
|
import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-BcE47FtD.js";
|
|
10
10
|
import { l as resolveGatewayBindHost, n as isLoopbackHost } from "./net-DZ5Ayk-W.js";
|
|
11
|
-
import { _n as DEFAULT_OAUTH_WARN_MS, m as loadSymiPlugins, vn as buildAuthHealthSummary, yn as formatRemainingShort } from "./subagent-registry-
|
|
11
|
+
import { _n as DEFAULT_OAUTH_WARN_MS, m as loadSymiPlugins, vn as buildAuthHealthSummary, yn as formatRemainingShort } from "./subagent-registry-CXrOOgPW.js";
|
|
12
12
|
import { F as resolveMainSessionKey, H as cleanStaleLockFiles, o as loadSessionStore } from "./sessions-CJXnZVjR.js";
|
|
13
13
|
import { n as listChannelPlugins } from "./plugins-CwSlLxM8.js";
|
|
14
14
|
import { D as DEFAULT_SANDBOX_COMMON_IMAGE, E as DEFAULT_SANDBOX_BROWSER_IMAGE, O as DEFAULT_SANDBOX_IMAGE, p as resolveSandboxScope } from "./sandbox-BFzSUT19.js";
|
|
@@ -31,16 +31,16 @@ import { a as launchAgentPlistExists, i as isLaunchAgentLoaded, o as repairLaunc
|
|
|
31
31
|
import { i as auditGatewayServiceConfig, n as renderSystemdUnavailableHints, o as needsNodeRuntimeMigration, r as SERVICE_AUDIT_CODES, s as formatRuntimeStatus, t as isSystemdUnavailableDetail } from "./systemd-hints-sQipWGd1.js";
|
|
32
32
|
import { t as readLastGatewayErrorLine } from "./diagnostics-CS1ov_hH.js";
|
|
33
33
|
import { n as renderGatewayServiceCleanupHints, t as findExtraGatewayServices } from "./inspect-t04OgGMk.js";
|
|
34
|
-
import { r as healthCommand } from "./health-
|
|
34
|
+
import { r as healthCommand } from "./health-C5XJPwpt.js";
|
|
35
35
|
import { n as resolveControlUiDistIndexHealth, r as resolveControlUiDistIndexPathForRoot } from "./control-ui-assets-BseSWee1.js";
|
|
36
36
|
import { t as resolveDmAllowState } from "./dm-policy-shared-DJ-61hCT.js";
|
|
37
|
-
import { t as runGatewayUpdate } from "./update-runner-
|
|
37
|
+
import { t as runGatewayUpdate } from "./update-runner-BQxFFCGc.js";
|
|
38
38
|
import { t as resolveAgentSessionDirs } from "./session-dirs-DWgIYmAt.js";
|
|
39
39
|
import { n as logConfigUpdated } from "./logging-BGewRZy0.js";
|
|
40
40
|
import { n as detectLegacyStateMigrations, r as runLegacyStateMigrations, t as loadAndMaybeMigrateDoctorConfig } from "./doctor-config-flow-CA3eiKhd.js";
|
|
41
41
|
import { t as ensureSystemdUserLingerInteractive } from "./systemd-linger-DA_LW52P.js";
|
|
42
42
|
import { t as formatHealthCheckFailure } from "./health-format-CzgUHmmX.js";
|
|
43
|
-
import { n as doctorShellCompletion } from "./doctor-completion-
|
|
43
|
+
import { n as doctorShellCompletion } from "./doctor-completion-BKKzstt6.js";
|
|
44
44
|
import { execFile } from "node:child_process";
|
|
45
45
|
import os from "node:os";
|
|
46
46
|
import path from "node:path";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { d as resolveIsNixMode, g as resolveStateDir, m as resolveOAuthDir, t as CONFIG_PATH, u as resolveGatewayPort, y as resolveRequiredHomeDir } from "./paths-Cqn-zk3M.js";
|
|
2
2
|
import { C as sleep, S as shortenHomePath, U as getResolvedLoggerSettings, y as resolveUserPath } from "./utils-B-0b9bGM.js";
|
|
3
|
-
import { _r as formatRemainingShort, ft as loadSymiPlugins, gr as buildAuthHealthSummary, hr as DEFAULT_OAUTH_WARN_MS } from "./reply-
|
|
3
|
+
import { _r as formatRemainingShort, ft as loadSymiPlugins, gr as buildAuthHealthSummary, hr as DEFAULT_OAUTH_WARN_MS } from "./reply-DYnTEYoa.js";
|
|
4
4
|
import { t as resolveSymiPackageRoot } from "./symi-root-CrGJbkzf.js";
|
|
5
5
|
import { f as defaultRuntime } from "./subsystem-D9vIQve0.js";
|
|
6
6
|
import { n as runExec, t as runCommandWithTimeout } from "./exec-CWkblSrI.js";
|
|
@@ -34,16 +34,16 @@ import { a as launchAgentPlistExists, i as isLaunchAgentLoaded, o as repairLaunc
|
|
|
34
34
|
import { i as auditGatewayServiceConfig, n as renderSystemdUnavailableHints, o as needsNodeRuntimeMigration, r as SERVICE_AUDIT_CODES, s as formatRuntimeStatus, t as isSystemdUnavailableDetail } from "./systemd-hints-BR6gChwm.js";
|
|
35
35
|
import { t as readLastGatewayErrorLine } from "./diagnostics-BAMlsVVX.js";
|
|
36
36
|
import { n as renderGatewayServiceCleanupHints, t as findExtraGatewayServices } from "./inspect-CllGjsWo.js";
|
|
37
|
-
import { r as healthCommand } from "./health-
|
|
37
|
+
import { r as healthCommand } from "./health-BjwDRAdd.js";
|
|
38
38
|
import { n as resolveControlUiDistIndexHealth, r as resolveControlUiDistIndexPathForRoot } from "./control-ui-assets-Z947tKLt.js";
|
|
39
39
|
import { t as resolveDmAllowState } from "./dm-policy-shared-Bh3TbexU.js";
|
|
40
|
-
import { t as runGatewayUpdate } from "./update-runner-
|
|
40
|
+
import { t as runGatewayUpdate } from "./update-runner-CLKHrONW.js";
|
|
41
41
|
import { t as resolveAgentSessionDirs } from "./session-dirs-DWgIYmAt.js";
|
|
42
42
|
import { n as logConfigUpdated } from "./logging-BzzwiKjv.js";
|
|
43
43
|
import { n as detectLegacyStateMigrations, r as runLegacyStateMigrations, t as loadAndMaybeMigrateDoctorConfig } from "./doctor-config-flow-QnaBd8kL.js";
|
|
44
44
|
import { t as ensureSystemdUserLingerInteractive } from "./systemd-linger-aQ75ZlXY.js";
|
|
45
45
|
import { t as formatHealthCheckFailure } from "./health-format-DSwnXZPU.js";
|
|
46
|
-
import { n as doctorShellCompletion } from "./doctor-completion-
|
|
46
|
+
import { n as doctorShellCompletion } from "./doctor-completion-D7CDLFLg.js";
|
|
47
47
|
import fs from "node:fs";
|
|
48
48
|
import os from "node:os";
|
|
49
49
|
import path from "node:path";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { dt as createPluginLoaderLogger, ft as loadSymiPlugins } from "./reply-
|
|
1
|
+
import { dt as createPluginLoaderLogger, ft as loadSymiPlugins } from "./reply-DYnTEYoa.js";
|
|
2
2
|
import { t as createSubsystemLogger } from "./subsystem-D9vIQve0.js";
|
|
3
3
|
import { At as ensureAuthProfileStore, Ot as upsertAuthProfile, l as normalizeProviderId } from "./model-selection-CyFvYcRt.js";
|
|
4
4
|
import { n as isWSLEnv } from "./wsl-C4424szg.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { o as createSubsystemLogger } from "./entry.js";
|
|
2
2
|
import { L as normalizeProviderId, b as ensureAuthProfileStore, v as upsertAuthProfile } from "./auth-profiles-Q1xTr5SX.js";
|
|
3
|
-
import { m as loadSymiPlugins, p as createPluginLoaderLogger } from "./subagent-registry-
|
|
3
|
+
import { m as loadSymiPlugins, p as createPluginLoaderLogger } from "./subagent-registry-CXrOOgPW.js";
|
|
4
4
|
import { n as isWSLEnv } from "./wsl-jdLWdiKy.js";
|
|
5
5
|
import { r as stylePromptTitle } from "./prompt-style-DwCXob2h.js";
|
|
6
6
|
import { f as updateConfig } from "./shared-D8K9MkWg.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { g as resolveStateDir } from "./paths-Cqn-zk3M.js";
|
|
2
2
|
import { A as isVerbose } from "./utils-B-0b9bGM.js";
|
|
3
|
-
import { Nr as estimateBase64DecodedBytes, ot as sniffMimeFromBase64 } from "./reply-
|
|
3
|
+
import { Nr as estimateBase64DecodedBytes, ot as sniffMimeFromBase64 } from "./reply-DYnTEYoa.js";
|
|
4
4
|
import { S as parseAgentSessionKey } from "./session-key-DCt45XZa.js";
|
|
5
5
|
import { s as shouldLogSubsystemToConsole, t as createSubsystemLogger } from "./subsystem-D9vIQve0.js";
|
|
6
6
|
import { n as redactSensitiveText, t as getDefaultRedactPatterns } from "./redact-f-Q-hFt_.js";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Yt as resolveStateDir, _t as isVerbose, f as shouldLogSubsystemToConsole, o as createSubsystemLogger } from "./entry.js";
|
|
2
2
|
import { S as parseAgentSessionKey } from "./session-key-DjZ7Z1hW.js";
|
|
3
3
|
import { c as writeJsonAtomic, o as createAsyncLock, s as readJsonFile } from "./pairing-token-Byh6drgn.js";
|
|
4
|
-
import { Fn as estimateBase64DecodedBytes, d as sniffMimeFromBase64 } from "./subagent-registry-
|
|
4
|
+
import { Fn as estimateBase64DecodedBytes, d as sniffMimeFromBase64 } from "./subagent-registry-CXrOOgPW.js";
|
|
5
5
|
import { n as redactSensitiveText, t as getDefaultRedactPatterns } from "./redact-B40lik2B.js";
|
|
6
6
|
import path from "node:path";
|
|
7
7
|
import chalk from "chalk";
|
|
@@ -7,7 +7,7 @@ import "./github-copilot-token-BbsJ0Qbo.js";
|
|
|
7
7
|
import { r as formatCliCommand } from "./env-CQ_DQOwT.js";
|
|
8
8
|
import "./config-BmV60pPT.js";
|
|
9
9
|
import "./manifest-registry-D-mTF1cj.js";
|
|
10
|
-
import { _ as fetchJson, b as withCdpSocket, d as normalizeCdpWsUrl, g as appendCdpPath, h as withBrowserNavigationPolicy, m as assertBrowserNavigationAllowed, t as getChromeWebSocketUrl, u as formatAriaSnapshot, y as getHeadersWithAuth } from "./chrome-
|
|
10
|
+
import { _ as fetchJson, b as withCdpSocket, d as normalizeCdpWsUrl, g as appendCdpPath, h as withBrowserNavigationPolicy, m as assertBrowserNavigationAllowed, t as getChromeWebSocketUrl, u as formatAriaSnapshot, y as getHeadersWithAuth } from "./chrome-D2SKJnR7.js";
|
|
11
11
|
import "./redact-1NGYV_8p.js";
|
|
12
12
|
import { n as formatErrorMessage } from "./errors-CPfngF0S.js";
|
|
13
13
|
import "./ssrf-CxfFyMRZ.js";
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
import "./paths-
|
|
2
|
-
import { dt as resolvePreferredSymiTmpDir } from "./registry-
|
|
3
|
-
import "./agent-scope-
|
|
4
|
-
import "./subsystem-
|
|
5
|
-
import "./workspace-
|
|
6
|
-
import "./
|
|
7
|
-
import {
|
|
8
|
-
import "./
|
|
9
|
-
import "./
|
|
10
|
-
import "./config-
|
|
11
|
-
import "./manifest-registry-
|
|
12
|
-
import { _ as fetchJson, b as withCdpSocket, d as normalizeCdpWsUrl, g as appendCdpPath, h as withBrowserNavigationPolicy, m as assertBrowserNavigationAllowed, t as getChromeWebSocketUrl, u as formatAriaSnapshot, y as getHeadersWithAuth } from "./chrome-
|
|
13
|
-
import "./redact-
|
|
14
|
-
import { n as formatErrorMessage } from "./errors-
|
|
15
|
-
import "./ssrf-
|
|
16
|
-
import fs from "node:fs/promises";
|
|
1
|
+
import "./paths-CE7eVGHg.js";
|
|
2
|
+
import { dt as resolvePreferredSymiTmpDir } from "./registry-DYq1AYOv.js";
|
|
3
|
+
import "./agent-scope-CpEJ0B88.js";
|
|
4
|
+
import "./subsystem-BjyjJF-d.js";
|
|
5
|
+
import "./workspace-DscDraUb.js";
|
|
6
|
+
import "./auth-profiles-DdK1Hxaa.js";
|
|
7
|
+
import { n as formatCliCommand } from "./env-BDXYbTKj.js";
|
|
8
|
+
import "./github-copilot-token-cCYzSU9h.js";
|
|
9
|
+
import "./boolean-CE7i9tBR.js";
|
|
10
|
+
import "./config-5SdHIcHU.js";
|
|
11
|
+
import "./manifest-registry-yb7sAlu4.js";
|
|
12
|
+
import { _ as fetchJson, b as withCdpSocket, d as normalizeCdpWsUrl, g as appendCdpPath, h as withBrowserNavigationPolicy, m as assertBrowserNavigationAllowed, t as getChromeWebSocketUrl, u as formatAriaSnapshot, y as getHeadersWithAuth } from "./chrome-DkaXoP36.js";
|
|
13
|
+
import "./redact-BDMXB06K.js";
|
|
14
|
+
import { n as formatErrorMessage } from "./errors-XIsvXeC-.js";
|
|
15
|
+
import "./ssrf-DpUUUgkK.js";
|
|
17
16
|
import path from "node:path";
|
|
17
|
+
import fs from "node:fs/promises";
|
|
18
18
|
import crypto from "node:crypto";
|
|
19
19
|
import { chromium, devices } from "playwright-core";
|
|
20
20
|
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { s as resolveStateDir } from "./paths-
|
|
1
|
+
import { s as resolveStateDir } from "./paths-CE7eVGHg.js";
|
|
2
2
|
import { y as parseAgentSessionKey } from "./session-key-BCzIW1Y2.js";
|
|
3
|
-
import "./registry-
|
|
4
|
-
import { s as resolveAgentWorkspaceDir } from "./agent-scope-
|
|
5
|
-
import { t as createSubsystemLogger } from "./subsystem-
|
|
6
|
-
import "./workspace-
|
|
7
|
-
import "./
|
|
8
|
-
import "./
|
|
9
|
-
import { _ as isFileMissingError, n as buildSessionEntry, r as listSessionFilesForAgent, t as requireNodeSqlite, v as statRegularFile } from "./sqlite-
|
|
10
|
-
import fs from "node:fs/promises";
|
|
11
|
-
import os from "node:os";
|
|
3
|
+
import "./registry-DYq1AYOv.js";
|
|
4
|
+
import { s as resolveAgentWorkspaceDir } from "./agent-scope-CpEJ0B88.js";
|
|
5
|
+
import { t as createSubsystemLogger } from "./subsystem-BjyjJF-d.js";
|
|
6
|
+
import "./workspace-DscDraUb.js";
|
|
7
|
+
import "./paths-CbQV9WEg.js";
|
|
8
|
+
import "./redact-BDMXB06K.js";
|
|
9
|
+
import { _ as isFileMissingError, n as buildSessionEntry, r as listSessionFilesForAgent, t as requireNodeSqlite, v as statRegularFile } from "./sqlite-D_mz1_-y.js";
|
|
12
10
|
import path from "node:path";
|
|
11
|
+
import os from "node:os";
|
|
12
|
+
import fs from "node:fs/promises";
|
|
13
13
|
import { spawn } from "node:child_process";
|
|
14
14
|
import readline from "node:readline";
|
|
15
15
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import "./paths-Cqn-zk3M.js";
|
|
2
2
|
import { B as theme, P as setVerbose, S as shortenHomePath, y as resolveUserPath } from "./utils-B-0b9bGM.js";
|
|
3
3
|
import "./thinking-EAliFiVK.js";
|
|
4
|
-
import { $t as parseIdentityMarkdown, Dt as resolveSessionKeyForRequest, Et as agentCommand, Lt as createDefaultDeps, Zt as identityHasValues } from "./reply-
|
|
4
|
+
import { $t as parseIdentityMarkdown, Dt as resolveSessionKeyForRequest, Et as agentCommand, Lt as createDefaultDeps, Zt as identityHasValues } from "./reply-DYnTEYoa.js";
|
|
5
5
|
import { m as DEFAULT_ACCOUNT_ID, s as normalizeAgentId, t as DEFAULT_AGENT_ID } from "./session-key-DCt45XZa.js";
|
|
6
6
|
import { r as DEFAULT_CHAT_CHANNEL } from "./registry-Cja8eT7G.js";
|
|
7
7
|
import { f as defaultRuntime } from "./subsystem-D9vIQve0.js";
|
|
@@ -115,15 +115,15 @@ import "./install-safe-path-tCLiMpmO.js";
|
|
|
115
115
|
import "./npm-registry-spec-C2JDdSZS.js";
|
|
116
116
|
import "./skill-scanner-CLs8u6vQ.js";
|
|
117
117
|
import "./installs-C1Cebk97.js";
|
|
118
|
-
import { r as setupChannels } from "./onboard-channels-
|
|
118
|
+
import { r as setupChannels } from "./onboard-channels-CUl5U8kV.js";
|
|
119
119
|
import { t as requireValidConfigSnapshot } from "./config-validation-CmimHAES.js";
|
|
120
|
-
import { a as pruneAgentConfig, i as loadAgentIdentity, n as buildAgentSummaries, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-
|
|
120
|
+
import { a as pruneAgentConfig, i as loadAgentIdentity, n as buildAgentSummaries, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-CIJRaVWl.js";
|
|
121
121
|
import "./shared-Knv1hy6h.js";
|
|
122
122
|
import "./auth-token-BnOynwk4.js";
|
|
123
123
|
import { n as logConfigUpdated } from "./logging-BzzwiKjv.js";
|
|
124
|
-
import "./provider-auth-helpers-
|
|
124
|
+
import "./provider-auth-helpers-BAGT_RXV.js";
|
|
125
125
|
import { n as promptAuthChoiceGrouped } from "./auth-choice-prompt-BLzEBA1v.js";
|
|
126
|
-
import { i as applyAuthChoice, r as warnIfModelConfigLooksOff } from "./auth-choice-
|
|
126
|
+
import { i as applyAuthChoice, r as warnIfModelConfigLooksOff } from "./auth-choice-BqFbNDuP.js";
|
|
127
127
|
import "./openai-model-default-DMjQRsb1.js";
|
|
128
128
|
import "./model-picker-Ddo3jHe-.js";
|
|
129
129
|
import path from "node:path";
|
|
@@ -15,7 +15,7 @@ import "./client-DMBZpU6X.js";
|
|
|
15
15
|
import { a as randomIdempotencyKey, n as callGateway } from "./call-BcE47FtD.js";
|
|
16
16
|
import { h as GATEWAY_CLIENT_NAMES, l as normalizeMessageChannel, m as GATEWAY_CLIENT_MODES } from "./message-channel-C9dERklz.js";
|
|
17
17
|
import "./pairing-token-Byh6drgn.js";
|
|
18
|
-
import { E as createDefaultDeps, S as resolveSessionKeyForRequest, x as agentCommand } from "./subagent-registry-
|
|
18
|
+
import { E as createDefaultDeps, S as resolveSessionKeyForRequest, x as agentCommand } from "./subagent-registry-CXrOOgPW.js";
|
|
19
19
|
import "./sessions-CJXnZVjR.js";
|
|
20
20
|
import "./tokens-Csntmwwn.js";
|
|
21
21
|
import "./plugins-CwSlLxM8.js";
|
|
@@ -108,16 +108,16 @@ import "./install-safe-path-BK8js28D.js";
|
|
|
108
108
|
import "./npm-registry-spec-DkaZNHAW.js";
|
|
109
109
|
import "./skill-scanner-BGWOBqLY.js";
|
|
110
110
|
import "./installs-CgQpVncj.js";
|
|
111
|
-
import "./onboard-channels-
|
|
111
|
+
import "./onboard-channels-BRd1cXye.js";
|
|
112
112
|
import "./config-validation-BITwrsxY.js";
|
|
113
113
|
import { t as collectOption } from "./helpers-ITexi1_a.js";
|
|
114
|
-
import "./agents.config-
|
|
114
|
+
import "./agents.config-D8WPDf-m.js";
|
|
115
115
|
import "./shared-D8K9MkWg.js";
|
|
116
116
|
import "./auth-token-Cmrk2TPo.js";
|
|
117
117
|
import "./logging-BGewRZy0.js";
|
|
118
|
-
import "./provider-auth-helpers-
|
|
119
|
-
import { a as agentsAddCommand, i as agentsDeleteCommand, n as agentsListCommand, r as agentsSetIdentityCommand } from "./agents-
|
|
120
|
-
import "./auth-choice-
|
|
118
|
+
import "./provider-auth-helpers-DCEbm2hz.js";
|
|
119
|
+
import { a as agentsAddCommand, i as agentsDeleteCommand, n as agentsListCommand, r as agentsSetIdentityCommand } from "./agents-DQIz-_on.js";
|
|
120
|
+
import "./auth-choice-DTDyJL1r.js";
|
|
121
121
|
import "./openai-model-default-DAwnTUcK.js";
|
|
122
122
|
import "./model-picker-D5nCutGW.js";
|
|
123
123
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import "./paths-Cqn-zk3M.js";
|
|
2
2
|
import { B as theme } from "./utils-B-0b9bGM.js";
|
|
3
3
|
import "./thinking-EAliFiVK.js";
|
|
4
|
-
import "./reply-
|
|
4
|
+
import "./reply-DYnTEYoa.js";
|
|
5
5
|
import "./registry-Cja8eT7G.js";
|
|
6
6
|
import { f as defaultRuntime } from "./subsystem-D9vIQve0.js";
|
|
7
7
|
import "./exec-CWkblSrI.js";
|
|
@@ -111,23 +111,23 @@ import "./install-safe-path-tCLiMpmO.js";
|
|
|
111
111
|
import "./npm-registry-spec-C2JDdSZS.js";
|
|
112
112
|
import "./skill-scanner-CLs8u6vQ.js";
|
|
113
113
|
import "./installs-C1Cebk97.js";
|
|
114
|
-
import "./onboard-channels-
|
|
114
|
+
import "./onboard-channels-CUl5U8kV.js";
|
|
115
115
|
import "./daemon-runtime-2mwX-jqj.js";
|
|
116
116
|
import "./systemd-riq8uNJQ.js";
|
|
117
117
|
import "./service-Cl74hx8J.js";
|
|
118
118
|
import "./widearea-dns-DzLerlJb.js";
|
|
119
119
|
import "./bonjour-discovery-BHTF5p0X.js";
|
|
120
|
-
import "./health-
|
|
120
|
+
import "./health-BjwDRAdd.js";
|
|
121
121
|
import "./control-ui-assets-Z947tKLt.js";
|
|
122
122
|
import "./skills-install-D67isO1L.js";
|
|
123
123
|
import "./shared-Knv1hy6h.js";
|
|
124
124
|
import "./auth-token-BnOynwk4.js";
|
|
125
125
|
import "./logging-BzzwiKjv.js";
|
|
126
|
-
import "./provider-auth-helpers-
|
|
127
|
-
import "./auth-choice-
|
|
126
|
+
import "./provider-auth-helpers-BAGT_RXV.js";
|
|
127
|
+
import "./auth-choice-BqFbNDuP.js";
|
|
128
128
|
import "./openai-model-default-DMjQRsb1.js";
|
|
129
129
|
import "./model-picker-Ddo3jHe-.js";
|
|
130
|
-
import { n as configureCommandFromSectionsArg, r as CONFIGURE_WIZARD_SECTIONS } from "./configure-
|
|
130
|
+
import { n as configureCommandFromSectionsArg, r as CONFIGURE_WIZARD_SECTIONS } from "./configure-BWSYSi2-.js";
|
|
131
131
|
import "./systemd-linger-aQ75ZlXY.js";
|
|
132
132
|
import "./onboard-custom-C7O-zfQ1.js";
|
|
133
133
|
import "./health-format-DSwnXZPU.js";
|