@gaodefa/daocore 2026.5.35 → 2026.5.37
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/abort-Bp4IXIaT.js +277 -0
- package/dist/abort.runtime-yT20lVm3.js +2 -0
- package/dist/abort.runtime.js +1 -1
- package/dist/account-inspect-Braq4T5C.js +173 -0
- package/dist/accounts-B73T487L.js +2 -0
- package/dist/accounts-Byqhka0B.js +107 -0
- package/dist/accounts-C6REvXTb.js +107 -0
- package/dist/accounts-DHkZahnb.js +119 -0
- package/dist/acp-runtime-CsYu7oyf.js +26 -0
- package/dist/acp-spawn-BpcanpjB.js +2 -0
- package/dist/acp-spawn-CXnfFZet.js +1275 -0
- package/dist/acp-stateful-target-driver-dbQl7Cls.js +89 -0
- package/dist/action-kill-CmrHUh6-.js +33 -0
- package/dist/action-runtime-Nz_MTd85.js +469 -0
- package/dist/action-runtime-api-NVBTHRJ0.js +2 -0
- package/dist/action-send-Bw28r8YX.js +39 -0
- package/dist/action-spawn-Db3goKdw.js +47 -0
- package/dist/actions-CZEEFK0T.js +161 -0
- package/dist/actions.runtime-f4FlBapO.js +5 -0
- package/dist/agent-BFrHijEI.js +3 -0
- package/dist/agent-BvTZZujh.js +2 -0
- package/dist/agent-command-CexUxiL4.js +1367 -0
- package/dist/agent-components.runtime-Bv--4UUq.js +10 -0
- package/dist/agent-components.runtime.js +1 -1
- package/dist/agent-harness-runtime-_4Ou4ZI_.js +180 -0
- package/dist/agent-harness-task-runtime-D0TI6yGM.js +140 -0
- package/dist/agent-runner-execution-BWvPnRM1.js +1713 -0
- package/dist/agent-runner-utils-hmda0Lyc.js +266 -0
- package/dist/agent-runner.runtime-6MrZPOYP.js +3455 -0
- package/dist/agent-runner.runtime.js +1 -1
- package/dist/agent-runtime-Cnq13raf.js +229 -0
- package/dist/agent-via-gateway-Cux4caUy.js +463 -0
- package/dist/api-0vV8JjoW.js +2 -0
- package/dist/api-4kojV9vT.js +639 -0
- package/dist/api-C4dZHG-E.js +2 -0
- package/dist/api-DFDhOB71.js +134 -0
- package/dist/api-Dd41e_NF.js +3 -0
- package/dist/api-DqSBNv8i.js +6 -0
- package/dist/apply-DnknmYSP.js +41 -0
- package/dist/apply-XMFoVMgK.js +54 -0
- package/dist/approval-handler.runtime-BIKhPCUE.js +130 -0
- package/dist/assistant-Cfzr-QfG.js +291 -0
- package/dist/attachment-normalize-Bqthqujs.js +225 -0
- package/dist/attempt-execution-Cc2IUiUY.js +558 -0
- package/dist/attempt-execution.runtime-C1pnC5CL.js +3 -0
- package/dist/attempt-execution.runtime.js +1 -1
- package/dist/attempt-execution.shared-DR-LL9H1.js +38 -0
- package/dist/attempt.prompt-helpers-DvfaNdO_.js +475 -0
- package/dist/attempt.tool-run-context-Fk3-iLKA.js +2094 -0
- package/dist/binding-routing-BjRihOZ8.js +113 -0
- package/dist/binding-targets-D3vQIPpu.js +121 -0
- package/dist/bot-BzKQljl1.js +7894 -0
- package/dist/bot-deps-CHJno4Xv.js +747 -0
- package/dist/bot-deps-CTU3vOGH.js +2 -0
- package/dist/bot-message-context.runtime-DPAocg_K.js +7 -0
- package/dist/bot-message-context.runtime.js +1 -1
- package/dist/bot-message-context.session.runtime-cWFJiTXb.js +12 -0
- package/dist/bot-message-context.session.runtime.js +1 -1
- package/dist/bot-native-commands.delivery.runtime-BBiSJ9qu.js +4 -0
- package/dist/bot-native-commands.delivery.runtime.js +1 -1
- package/dist/bot-native-commands.runtime-BoWjkHEv.js +13 -0
- package/dist/bot-native-commands.runtime.js +1 -1
- package/dist/bridge-server-BnWfM8E9.js +113 -0
- package/dist/browser-cli-CKSNhiVi.js +230 -0
- package/dist/browser-cli-CsC0lbjc.js +2 -0
- package/dist/browser-cli-actions-input-1PFDZ0_b.js +473 -0
- package/dist/browser-cli-actions-observe-DfH0Y9FC.js +81 -0
- package/dist/browser-cli-debug-hj-w-s9t.js +137 -0
- package/dist/browser-cli-inspect-CxxMD86J.js +104 -0
- package/dist/browser-cli-manage-DOn9OEh_.js +443 -0
- package/dist/browser-cli-resize-BFHf-RqV.js +26 -0
- package/dist/browser-cli-shared-Ca_pACoG.js +50 -0
- package/dist/browser-cli-state-CCIHMGkC.js +337 -0
- package/dist/browser-control-auth-dTGAuDxC.js +2 -0
- package/dist/browser-profiles-CjXJJdop.js +2 -0
- package/dist/browser-runtime-DrNsVpfv.js +384 -0
- package/dist/build-QfdWbTGY.js +257 -0
- package/dist/build-info.json +3 -3
- package/dist/bundled/boot-md/handler.js +2 -2
- package/dist/bundled/session-memory/handler.js +1 -1
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/capability-cli-D7nQY4qe.js +1782 -0
- package/dist/channel-13BBMvGu.js +1496 -0
- package/dist/channel-B9qWcqGg.js +562 -0
- package/dist/channel-BB9gjVcH.js +362 -0
- package/dist/channel-BM_u9Kct.js +508 -0
- package/dist/channel-CQbX6z1g.js +740 -0
- package/dist/channel-CXkMpUA_.js +1134 -0
- package/dist/channel-CcENPjLR.js +1556 -0
- package/dist/channel-CfgfbGDs.js +808 -0
- package/dist/channel-D6JtLARW.js +955 -0
- package/dist/channel-D6klawjQ.js +867 -0
- package/dist/channel-DFTg6l_Y.js +1777 -0
- package/dist/channel-DI30oIzM.js +238 -0
- package/dist/channel-Dwmhp2QK.js +376 -0
- package/dist/channel-DyOJHorx.js +481 -0
- package/dist/channel-DzLAzPz_.js +1249 -0
- package/dist/channel-ZshGzzZU.js +2126 -0
- package/dist/channel-actions.runtime-BPuh-LPy.js +265 -0
- package/dist/channel-actions.runtime.js +1 -1
- package/dist/channel-core-Cip0DXqW.js +5 -0
- package/dist/channel-inbound-nxJGbY-L.js +80 -0
- package/dist/channel-kn7WFIV-.js +653 -0
- package/dist/channel-plugin-runtime-D2mUAQP6.js +998 -0
- package/dist/channel-runtime-DWbCQz0-.js +408 -0
- package/dist/channel.runtime-BRLds_50.js +1008 -0
- package/dist/channel.runtime-BYk5D3KV.js +652 -0
- package/dist/channel.runtime-Bd5GuqVD.js +4 -0
- package/dist/channel.runtime-BhiiHau6.js +109 -0
- package/dist/channel.runtime-CKnG96oM.js +254 -0
- package/dist/channel.runtime-DbuDXi8A.js +2528 -0
- package/dist/channel.runtime-DfQ7lbcl.js +21009 -0
- package/dist/channel.runtime-DhzR3IQP.js +733 -0
- package/dist/channel.runtime-SnJqiMZZ.js +88 -0
- package/dist/channel.setup-0jZeZ91N.js +1098 -0
- package/dist/channel.setup-C3aSMtNe.js +343 -0
- package/dist/channel.setup-x_GPUW2e.js +10 -0
- package/dist/chat-DyxY_o5e.js +2666 -0
- package/dist/chrome-CUytWLO5.js +1503 -0
- package/dist/cli/run-main.js +5 -5
- package/dist/cli-BnAifbUH.js +1341 -0
- package/dist/cli-compaction-BsDXzDbB.js +347 -0
- package/dist/cli-metadata-C2ez_EOq.js +22 -0
- package/dist/cli-runner-Df8f6aib.js +2 -0
- package/dist/cli-runner-N-xuwavW.js +540 -0
- package/dist/cli-runner.runtime-BZgB5Wze.js +3 -0
- package/dist/cli-runner.runtime-CzWSBiUX.js +4 -0
- package/dist/cli-runner.runtime.js +1 -1
- package/dist/cli-startup-metadata.json +8 -8
- package/dist/client-BSznX-Sw.js +650 -0
- package/dist/client-adapter-CvuAhGRl.js +897 -0
- package/dist/client-factory-Dl9ZpTlR.js +9 -0
- package/dist/command-auth-Cp3qho7_.js +135 -0
- package/dist/command-handlers-7evBobOS.js +1609 -0
- package/dist/command-registry-3bVh0URP.js +4 -0
- package/dist/command-registry-core-BwoOJhVM.js +110 -0
- package/dist/command-registry-ms_STeBz.js +9 -0
- package/dist/command-status.runtime-HmI60xl3.js +90 -0
- package/dist/command-status.runtime.js +1 -1
- package/dist/commands-acp-NnHhockz.js +74 -0
- package/dist/commands-compact.runtime-wJDJ6VWY.js +10 -0
- package/dist/commands-compact.runtime.js +1 -1
- package/dist/commands-handlers.runtime-CDlvieOM.js +6154 -0
- package/dist/commands-handlers.runtime.js +1 -1
- package/dist/commands-status-CJsUMgIw.js +16 -0
- package/dist/commands-status-j5QdKUbl.js +3 -0
- package/dist/commands-status.runtime-j5QdKUbl.js +3 -0
- package/dist/commands-status.runtime.js +1 -1
- package/dist/commands-subagents-control.runtime-BfOBOw5t.js +3 -0
- package/dist/commands-subagents-control.runtime-CALs_ywD.js +2 -0
- package/dist/commands-subagents-control.runtime.js +1 -1
- package/dist/commands-system-prompt-BnMuvo_P.js +2 -0
- package/dist/commands-system-prompt-BqcYl8m9.js +162 -0
- package/dist/commands.runtime-DMhewKIp.js +176 -0
- package/dist/commands.runtime.js +1 -1
- package/dist/commitments/runtime.js +1 -1
- package/dist/compact-B4Hs8o3S.js +1141 -0
- package/dist/compact-CKxyl7Ak.js +480 -0
- package/dist/compact.runtime-BPnE7Lia.js +12 -0
- package/dist/compact.runtime.js +1 -1
- package/dist/completion-cli-CjPmmjGf.js +315 -0
- package/dist/computer-use-DI-JbifZ.js +367 -0
- package/dist/config-CA7Mb3IV.js +373 -0
- package/dist/config-CjXJJdop.js +2 -0
- package/dist/config-mutations-CIt7XNeY.js +159 -0
- package/dist/context-engine-host-compat-C0PN-GqB.js +288 -0
- package/dist/context-engine-host-compat-r4dLJY0h.js +2 -0
- package/dist/context-engine-lifecycle-BgedIp9C.js +1274 -0
- package/dist/control-auth-BNpGd-Kk.js +114 -0
- package/dist/control-service-kce7bfHU.js +145 -0
- package/dist/control-ui/assets/agents-Czpx0c8x.js +1008 -0
- package/dist/control-ui/assets/channel-config-extras-BuBdEckJ.js +2 -0
- package/dist/control-ui/assets/channels-DTznnTWd.js +367 -0
- package/dist/control-ui/assets/cron-DTo10-Bl.js +1013 -0
- package/dist/control-ui/assets/debug-2XZI3fnM.js +97 -0
- package/dist/control-ui/assets/index-Dtd73wqB.js +7370 -0
- package/dist/control-ui/assets/instances-BhqtjRmo.js +57 -0
- package/dist/control-ui/assets/logs-JKxN4zrt.js +74 -0
- package/dist/control-ui/assets/nodes-C_mRZOJC.js +436 -0
- package/dist/control-ui/assets/sessions-CC9KhfyX.js +399 -0
- package/dist/control-ui/assets/skills-BgkpyMHh.js +314 -0
- package/dist/control-ui/assets/skills-shared-D7PhefCn.js +11 -0
- package/dist/control-ui/index.html +1 -1
- package/dist/control-ui/sw.js +1 -1
- package/dist/conversation-binding-runtime-CUUOaxkw.js +4 -0
- package/dist/conversation-runtime-CAGsRmgG.js +31 -0
- package/dist/core-DDHeEXv5.js +282 -0
- package/dist/core-api-BfuO-na1.js +5 -0
- package/dist/core-api-YA03piFN.js +2 -0
- package/dist/crestodian/crestodian.js +1 -1
- package/dist/crestodian/rescue-message.js +1 -1
- package/dist/crestodian-BvNBIbgT.js +55 -0
- package/dist/daocore-tools-V8Z6YbCA.js +11727 -0
- package/dist/delivery-CqDMMxF-.js +1002 -0
- package/dist/dialogue-C7jN6TtR.js +37 -0
- package/dist/dir-fetch-tool-DKizoBAo.js +565 -0
- package/dist/dir-list-tool-CMSe1Gic.js +100 -0
- package/dist/direct-dm-CNDGhZHH.js +64 -0
- package/dist/directive-handling.fast-lane-BNDUrJm9.js +68 -0
- package/dist/directive-handling.impl-CNMskvfI.js +2 -0
- package/dist/directive-handling.impl-DkSnupbX.js +818 -0
- package/dist/directive-handling.model-selection-DrYH2dJi.js +122 -0
- package/dist/directive-handling.persist.runtime-Bf1g-e09.js +263 -0
- package/dist/directive-handling.persist.runtime.js +1 -1
- package/dist/dispatch-BqXq6928.js +1640 -0
- package/dist/dispatch-acp-transcript.runtime-B8OLBkcv.js +40 -0
- package/dist/dispatch-acp-transcript.runtime.js +1 -1
- package/dist/dispatch-acp.runtime-CFRlXnm3.js +18 -0
- package/dist/dispatch-acp.runtime.js +1 -1
- package/dist/doctor-C8zSecbl.js +6 -0
- package/dist/doctor-DmE-4kn4.js +2 -0
- package/dist/doctor-config-flow-CiEbrb8s.js +1741 -0
- package/dist/doctor-core-checks-B3G8nJ2e.js +573 -0
- package/dist/doctor-core-checks-BeflOFTE.js +2 -0
- package/dist/doctor-health-Ali-Hxdp.js +65 -0
- package/dist/doctor-health-contributions-CXfgIUQd.js +696 -0
- package/dist/doctor-lint-B5IHZCxG.js +94 -0
- package/dist/doctor-state-integrity-BjeDtfbq.js +1231 -0
- package/dist/doctor-update-CG2msB2K.js +58 -0
- package/dist/dynamic-tools-D5gHaas6.js +486 -0
- package/dist/embedded-backend-BLW2WQJF.js +579 -0
- package/dist/embedded-gateway-stub.runtime-DbUedhpy.js +12 -0
- package/dist/embedded-gateway-stub.runtime.js +1 -1
- package/dist/exec-approvals-CwwQA-_B.js +149 -0
- package/dist/extensionAPI.js +1 -1
- package/dist/extensions/active-memory/index.js +1 -1
- package/dist/extensions/admin-http-rpc/index.js +1 -1
- package/dist/extensions/browser/browser-bridge.js +1 -1
- package/dist/extensions/browser/browser-config.js +4 -4
- package/dist/extensions/browser/browser-control-auth.js +2 -2
- package/dist/extensions/browser/browser-doctor.js +2 -2
- package/dist/extensions/browser/browser-maintenance.js +1 -1
- package/dist/extensions/browser/browser-profiles.js +2 -2
- package/dist/extensions/browser/browser-runtime-api.js +11 -11
- package/dist/extensions/browser/cli-metadata.js +1 -1
- package/dist/extensions/browser/index.js +1 -1
- package/dist/extensions/browser/plugin-registration.js +1 -1
- package/dist/extensions/browser/register.runtime.js +4 -4
- package/dist/extensions/browser/runtime-api.js +13 -13
- package/dist/extensions/canvas/index.js +1 -1
- package/dist/extensions/clickclack/api.js +2 -2
- package/dist/extensions/clickclack/channel-plugin-api.js +1 -1
- package/dist/extensions/clickclack/runtime-api.js +2 -2
- package/dist/extensions/device-pair/api.js +1 -1
- package/dist/extensions/device-pair/pair-command-approve.js +1 -1
- package/dist/extensions/file-transfer/index.js +4 -4
- package/dist/extensions/imessage/api.js +2 -2
- package/dist/extensions/imessage/channel-plugin-api.js +1 -1
- package/dist/extensions/imessage/message-tool-api.d.ts +1 -1
- package/dist/extensions/imessage/runtime-api.js +3 -3
- package/dist/extensions/irc/api.js +2 -2
- package/dist/extensions/irc/channel-plugin-api.js +1 -1
- package/dist/extensions/llm-task/index.js +1 -1
- package/dist/extensions/mattermost/api.js +1 -1
- package/dist/extensions/mattermost/channel-plugin-api.js +1 -1
- package/dist/extensions/mattermost/channel-plugin-runtime.js +1 -1
- package/dist/extensions/mattermost/policy-api.js +1 -1
- package/dist/extensions/mattermost/runtime-api.js +2 -2
- package/dist/extensions/mattermost/slash-route-api.js +1 -1
- package/dist/extensions/memory-core/cli-metadata.js +1 -1
- package/dist/extensions/migrate-claude/apply.js +1 -1
- package/dist/extensions/migrate-claude/index.js +1 -1
- package/dist/extensions/migrate-claude/plan.js +1 -1
- package/dist/extensions/migrate-claude/provider.js +1 -1
- package/dist/extensions/migrate-claude/targets.js +1 -1
- package/dist/extensions/migrate-hermes/apply.js +1 -1
- package/dist/extensions/migrate-hermes/index.js +1 -1
- package/dist/extensions/migrate-hermes/model.js +1 -1
- package/dist/extensions/migrate-hermes/plan.js +1 -1
- package/dist/extensions/migrate-hermes/provider.js +1 -1
- package/dist/extensions/migrate-hermes/secrets.js +1 -1
- package/dist/extensions/migrate-hermes/targets.js +1 -1
- package/dist/extensions/policy/api.js +1 -1
- package/dist/extensions/policy/index.js +2 -2
- package/dist/extensions/signal/api.js +6 -6
- package/dist/extensions/signal/channel-plugin-api.js +1 -1
- package/dist/extensions/signal/reaction-runtime-api.js +1 -1
- package/dist/extensions/signal/runtime-api.js +7 -7
- package/dist/extensions/skill-workshop/api.js +1 -1
- package/dist/extensions/skill-workshop/index.js +2 -2
- package/dist/extensions/telegram/account-inspect-api.js +1 -1
- package/dist/extensions/telegram/api.js +11 -11
- package/dist/extensions/telegram/channel-plugin-api.js +2 -2
- package/dist/extensions/telegram/contract-api.js +3 -3
- package/dist/extensions/telegram/runtime-api.js +7 -7
- package/dist/extensions/telegram/security-audit-contract-api.js +1 -1
- package/dist/extensions/telegram/setup-plugin-api.js +1 -1
- package/dist/extensions/telegram/test-api.js +2 -2
- package/dist/extensions/webhooks/api.js +1 -1
- package/dist/extensions/webhooks/index.js +1 -1
- package/dist/extensions/xai/index.js +4 -4
- package/dist/extensions/xai/realtime-transcription-provider.js +1 -1
- package/dist/extensions/xai/speech-provider.js +1 -1
- package/dist/extensions/xai/test-api.js +1 -1
- package/dist/extensions/xai/tts.js +1 -1
- package/dist/extensions/xai/web-search.js +1 -1
- package/dist/extensions/xai/xai-oauth.js +1 -1
- package/dist/file-fetch-tool-CekPjemC.js +124 -0
- package/dist/file-write-tool-C7-UYxXN.js +127 -0
- package/dist/format-BrgWhpMP.js +1145 -0
- package/dist/format-C-lnTES_.js +250 -0
- package/dist/gateway-cli-DaSBVL_2.js +435 -0
- package/dist/gateway-method-runtime-B3nJGqAy.js +21 -0
- package/dist/get-reply-CCGEqENF.js +4689 -0
- package/dist/get-reply-from-config.runtime-1bVL6Eaa.js +2 -0
- package/dist/get-reply-from-config.runtime.js +1 -1
- package/dist/graph-users-CCkJYdwo.js +1419 -0
- package/dist/group-access-BrcrVhTm.js +112 -0
- package/dist/handle-action.guild-admin-8EfNNvKz.js +288 -0
- package/dist/harness-BNsomB7U.js +61 -0
- package/dist/health-CJOAk46r.js +4 -0
- package/dist/health-state-BYK8dOjQ.js +106 -0
- package/dist/heartbeat-runner-BjAnHwan.js +5 -0
- package/dist/heartbeat-runner.runtime-BhQDpIvL.js +4 -0
- package/dist/heartbeat-runner.runtime.js +1 -1
- package/dist/hooks-CAleL-fH.js +534 -0
- package/dist/inbound-direct-dm-runtime-aWeBKeRE.js +2 -0
- package/dist/inbound-reply-dispatch-DvWaNCgR.js +148 -0
- package/dist/index.js +1 -1
- package/dist/init-D_kHY2_L.js +59 -0
- package/dist/inline-buttons-CBfC5L_C.js +40 -0
- package/dist/internal-events-DR7M-R-k.js +90 -0
- package/dist/isolated-agent-BSwvfJdq.js +1118 -0
- package/dist/isolated-agent-B_H2wb6F.js +2 -0
- package/dist/lifecycle-BsPQk14E.js +571 -0
- package/dist/list.probe-DVPoP_gs.js +449 -0
- package/dist/list.status-command-YLSxt2nU.js +789 -0
- package/dist/llm-slug-generator-DMXCuj_8.js +78 -0
- package/dist/llm-slug-generator.js +1 -1
- package/dist/local-dispatch.runtime-ByJpKbzY.js +9 -0
- package/dist/local-dispatch.runtime.js +1 -1
- package/dist/manager.runtime-Cbd4Wkzv.js +2714 -0
- package/dist/manager.runtime.js +1 -1
- package/dist/markdown-to-line-UROW4ICU.js +811 -0
- package/dist/mcp-http-Bs04-o36.js +2 -0
- package/dist/mcp-http-DusJ-yus.js +555 -0
- package/dist/media-understanding-provider-DJ2PVD5L.js +339 -0
- package/dist/message-actions-BOhsMU7S.js +145 -0
- package/dist/message-handler-BUvaTnYL.js +384 -0
- package/dist/message-handler-DGhAY58r.js +1715 -0
- package/dist/message-handler.preflight-COR7HHaa.js +1125 -0
- package/dist/message-handler.process-Cnlh9kQt.js +1484 -0
- package/dist/model-CrGV78vh.js +74 -0
- package/dist/model-selection-BkMRVKvT.js +272 -0
- package/dist/models-CAsfL9Yc.js +104 -0
- package/dist/models-DAHwZzdm.js +2 -0
- package/dist/models-cli-NVAexFpF.js +256 -0
- package/dist/monitor-BHLuAWAQ.js +2 -0
- package/dist/monitor-BbTVo-eV.js +715 -0
- package/dist/monitor-CLLyEX0R.js +2788 -0
- package/dist/monitor-CTR3lVMb.js +834 -0
- package/dist/monitor-Cl2p6Juz.js +60 -0
- package/dist/monitor-D5rBDT5w.js +4377 -0
- package/dist/monitor-DyRkvAJd.js +1370 -0
- package/dist/monitor-IiG3eV5_.js +1657 -0
- package/dist/monitor-auth-D_0zoeLn.js +179 -0
- package/dist/monitor-polling.runtime-BXzw5egF.js +883 -0
- package/dist/monitor-polling.runtime.js +1 -1
- package/dist/monitor-webhook.runtime-C3arPPzi.js +387 -0
- package/dist/monitor-webhook.runtime.js +1 -1
- package/dist/monitor.account-DrVGHE8V.js +5233 -0
- package/dist/monitor.runtime-DPEbukZB.js +2 -0
- package/dist/monitor.runtime.js +1 -1
- package/dist/monitor.webhook-jkAnTCQb.js +180 -0
- package/dist/node-cli-sessions-DcVj-6eN.js +1228 -0
- package/dist/openai-http-CmoI0e7t.js +824 -0
- package/dist/openresponses-http-Bi3LSGUc.js +1173 -0
- package/dist/operations-9LkwgILD.js +805 -0
- package/dist/outbound-adapter-xUTnrNGD.js +543 -0
- package/dist/outbound-session-route-CBXkht6a.js +45 -0
- package/dist/outbound.runtime-CAgimRZ1.js +2 -0
- package/dist/outbound.runtime.js +1 -1
- package/dist/pi-embedded-BKpKsszm.js +4 -0
- package/dist/pi-embedded-DmeQCwCt.js +3796 -0
- package/dist/pi-embedded.runtime-C283Wor9.js +4 -0
- package/dist/pi-embedded.runtime.js +1 -1
- package/dist/pi-tools-B0nJW7W4.js +2413 -0
- package/dist/plan-BILA3XMN.js +81 -0
- package/dist/plan-DHXchBJq.js +112 -0
- package/dist/plugin-CHLmrL9G.js +12396 -0
- package/dist/plugin-app-cache-key-C-_klURZ.js +46 -0
- package/dist/plugin-enabled-DzYMnPpm.js +233 -0
- package/dist/plugin-registration-DLrh8AB5.js +88 -0
- package/dist/plugin-sdk/.boundary-entry-shims.stamp +1 -1
- package/dist/plugin-sdk/acp-runtime-backend.js +1 -1
- package/dist/plugin-sdk/acp-runtime.js +2 -2
- package/dist/plugin-sdk/agent-harness-runtime.js +6 -6
- package/dist/plugin-sdk/agent-harness-task-runtime.js +1 -1
- package/dist/plugin-sdk/agent-harness.js +7 -7
- package/dist/plugin-sdk/agent-runtime.js +2 -2
- package/dist/plugin-sdk/channel-core.js +2 -2
- package/dist/plugin-sdk/channel-inbound.js +2 -2
- package/dist/plugin-sdk/channel-test-helpers.js +1 -1
- package/dist/plugin-sdk/command-auth.js +1 -1
- package/dist/plugin-sdk/command-status-runtime.js +1 -1
- package/dist/plugin-sdk/compat.js +1 -1
- package/dist/plugin-sdk/conversation-binding-runtime.js +2 -2
- package/dist/plugin-sdk/conversation-runtime.js +3 -3
- package/dist/plugin-sdk/core.js +2 -2
- package/dist/plugin-sdk/direct-dm.js +1 -1
- package/dist/plugin-sdk/gateway-method-runtime.js +1 -1
- package/dist/plugin-sdk/health.js +2 -2
- package/dist/plugin-sdk/inbound-reply-dispatch.js +1 -1
- package/dist/plugin-sdk/index.js +1 -1
- package/dist/plugin-sdk/mattermost.js +1 -1
- package/dist/plugin-sdk/plugin-test-contracts.js +2 -2
- package/dist/plugin-sdk/provider-test-contracts.js +4 -4
- package/dist/plugin-sdk/reply-runtime.js +4 -4
- package/dist/plugin-sdk/testing.js +2 -2
- package/dist/plugin-sdk/zalouser.js +1 -1
- package/dist/plugin-service-xm4tv2oM.js +1229 -0
- package/dist/plugins/runtime/index.js +4 -4
- package/dist/policy-BUSsfT7A.js +138 -0
- package/dist/policy-BwwL6sP2.js +680 -0
- package/dist/prepare.runtime-Dcrb22a5.js +732 -0
- package/dist/prepare.runtime.js +1 -1
- package/dist/preview-warnings-Cx__1X43.js +392 -0
- package/dist/probe-CevnbYpq.js +682 -0
- package/dist/probe-CoEDhBiC.js +2204 -0
- package/dist/probe-ConXyeqE.js +2 -0
- package/dist/probe-D-jU5onR.js +47 -0
- package/dist/program-D3uXTum0.js +131 -0
- package/dist/provider--7lUimtp.js +152 -0
- package/dist/provider-CCGQtVNI.js +8735 -0
- package/dist/provider-DVMSF8i8.js +32 -0
- package/dist/provider-R_TaXN59.js +32 -0
- package/dist/provider-dispatcher-CYkb3lfL.js +22 -0
- package/dist/provider-dispatcher.runtime.js +1 -1
- package/dist/provider-session.runtime-DzG2BUE9.js +9 -0
- package/dist/provider-session.runtime.js +1 -1
- package/dist/provider.runtime-D1-pMnoj.js +2 -0
- package/dist/provider.runtime.js +1 -1
- package/dist/public-surface-loader-BZisefzq.js +114 -0
- package/dist/pw-ai-Cbau3n7J.js +3029 -0
- package/dist/pw-role-snapshot-HeQTrxIk.js +333 -0
- package/dist/reaction-level-uJ8tiLpH.js +19 -0
- package/dist/reaction-runtime-api-BKUvK5Wn.js +116 -0
- package/dist/realtime-transcription-provider-Daix0e58.js +205 -0
- package/dist/register-Dj9j6LEv.js +2178 -0
- package/dist/register.agent-OiMUcpgI.js +156 -0
- package/dist/register.crestodian-CbqhJMEx.js +24 -0
- package/dist/register.maintenance-CQILEqsM.js +83 -0
- package/dist/register.runtime-BwfUZoFY.js +54 -0
- package/dist/register.status-health-sessions-DF6wxmsG.js +282 -0
- package/dist/register.subclis-CYoz9B5t.js +31 -0
- package/dist/register.subclis-Dkal2Cnf.js +3 -0
- package/dist/register.subclis-core-BRrO0IX7.js +273 -0
- package/dist/repair-sequencing-DvQQmyrq.js +640 -0
- package/dist/reply-delivery-ohbM16VN.js +196 -0
- package/dist/reply-runtime-qGOCyyux.js +11 -0
- package/dist/reply.runtime-1bVL6Eaa.js +2 -0
- package/dist/reply.runtime.js +1 -1
- package/dist/request-CC3c4Svm.js +54 -0
- package/dist/resolve-allowlist-vAhCe75e.js +220 -0
- package/dist/result-fallback-classifier-CZtnXmbx.js +79 -0
- package/dist/route-resolution-CXaxgYtw.js +274 -0
- package/dist/route-uo5aoUdQ.js +469 -0
- package/dist/routes-BqtrHP28.js +2 -0
- package/dist/routes-pIjFm3n0.js +3602 -0
- package/dist/run-DsXJF_m8.js +1162 -0
- package/dist/run-attempt-B2GDG3uT.js +7704 -0
- package/dist/run-command-BfVI_lOc.js +23 -0
- package/dist/run-command-DNrCjZ3m.js +2 -0
- package/dist/run-embedded.runtime-g47oIqaL.js +4 -0
- package/dist/run-embedded.runtime.js +1 -1
- package/dist/run-execution-cli.runtime-zQ48ZAc5.js +4 -0
- package/dist/run-execution-cli.runtime.js +1 -1
- package/dist/run-executor.runtime.js +1 -1
- package/dist/run-subagent-registry.runtime-CXj8K_pJ.js +2 -0
- package/dist/run-subagent-registry.runtime.js +1 -1
- package/dist/runtime-CjTLh1Zl.js +6179 -0
- package/dist/runtime-NVf_F_HM.js +1287 -0
- package/dist/runtime-Z5_yALHT.js +438 -0
- package/dist/runtime-api-BExObylL.js +17 -0
- package/dist/runtime-api-BfCI6iAu.js +3 -0
- package/dist/runtime-api-BkzOHOsq.js +13 -0
- package/dist/runtime-api-BtVSnSI4.js +4 -0
- package/dist/runtime-api-DLHn_SE-.js +24 -0
- package/dist/runtime-api-_nsdMn3H.js +13 -0
- package/dist/runtime-api-qMRycIAN.js +21 -0
- package/dist/runtime-api.actions-UmkTxLGC.js +3 -0
- package/dist/runtime-api.monitor-JDAShUxC.js +6 -0
- package/dist/runtime-api.send-B65J_Lod.js +4 -0
- package/dist/runtime-api.threads-B7tsKPA_.js +2 -0
- package/dist/runtime-channel-Bs6XTsp4.js +150 -0
- package/dist/runtime-channel-C3WZVBBg.js +2 -0
- package/dist/runtime-embedded-pi.runtime-P8AdyyIu.js +2 -0
- package/dist/runtime-embedded-pi.runtime.js +1 -1
- package/dist/sanitize-outbound-Bt4-FGfp.js +127 -0
- package/dist/sdk-setup-tools-CfyJODAu.js +8 -0
- package/dist/secrets-DjmhS0YO.js +113 -0
- package/dist/security-audit-CKVBQPWN.js +118 -0
- package/dist/security-audit-D9IeXoG3.js +122 -0
- package/dist/security-audit.runtime-CYMQTOM9.js +2 -0
- package/dist/security-audit.runtime.js +1 -1
- package/dist/selection--wvE7VOv.js +16157 -0
- package/dist/selection-y-7QPgGA.js +3 -0
- package/dist/send-BlmkYrI0.js +1631 -0
- package/dist/send-CbkEX0QM.js +143 -0
- package/dist/send-Cmn4RsqA.js +192 -0
- package/dist/send-Dug9BZ9D.js +2 -0
- package/dist/send.components-CyaKuD2L.js +500 -0
- package/dist/send.components-PcOc-Ovz.js +2 -0
- package/dist/send.runtime-xY6hEtyv.js +2 -0
- package/dist/send.runtime.js +1 -1
- package/dist/server-BnGgr3PE.js +73 -0
- package/dist/server-close.runtime.js +1 -1
- package/dist/server-context-CLKwYCyu.js +955 -0
- package/dist/server-context-CYVPTQQC.js +2 -0
- package/dist/server-cron-B1jBiRyb.js +2989 -0
- package/dist/server-cron-X77jGOEU.js +2 -0
- package/dist/server-maintenance-De3og-4o.js +167 -0
- package/dist/server-methods-BBnXSrf2.js +16494 -0
- package/dist/server-node-events-BUsL79RS.js +596 -0
- package/dist/server-plugin-bootstrap-ALp-FJwj.js +70 -0
- package/dist/server-plugins-ufO_8NhB.js +432 -0
- package/dist/server-reload-handlers-CPiyHZtT.js +714 -0
- package/dist/server-restart-sentinel-CQk6eeWM.js +747 -0
- package/dist/server-restart-sentinel-D3cRaMdv.js +2 -0
- package/dist/server-runtime-services-Bu0xO9C9.js +2 -0
- package/dist/server-runtime-services-DXP2sVWQ.js +267 -0
- package/dist/server-startup-early-BtMFPN84.js +87 -0
- package/dist/server-startup-plugins-CQ_pYS5Y.js +113 -0
- package/dist/server-startup-post-attach-gbmw9hix.js +716 -0
- package/dist/server-ws-runtime-Cd3Y798f.js +349 -0
- package/dist/server-xLxaL9Qb.js +24 -0
- package/dist/server.impl-C78G0iEs.js +2586 -0
- package/dist/service-wi5zUseG.js +1446 -0
- package/dist/session-binding-BUfCOB1r.js +219 -0
- package/dist/session-binding-DBdZdGMb.js +2 -0
- package/dist/session-kill-http-PtCc8zMl.js +121 -0
- package/dist/session-reset-service-BOBmro8l.js +625 -0
- package/dist/session-route-CJUmMLQC.js +93 -0
- package/dist/session-status.runtime-C10K54fr.js +2 -0
- package/dist/session-status.runtime.js +1 -1
- package/dist/session-subagent-reactivation.runtime-DfIyTUKb.js +2 -0
- package/dist/session-subagent-reactivation.runtime.js +1 -1
- package/dist/session-tab-registry-DQbVw6TC.js +521 -0
- package/dist/sessions-history-http-BX2MupcW.js +430 -0
- package/dist/sessions.runtime-C2inYyN4.js +2 -0
- package/dist/sessions.runtime.js +1 -1
- package/dist/setup-api-LkhGnkD8.js +29 -0
- package/dist/setup-core-CinEapxM.js +174 -0
- package/dist/setup-surface-BCtf5vsv.js +221 -0
- package/dist/setup-surface-BlIPVefp.js +320 -0
- package/dist/setup-surface-CfGI8GXG.js +288 -0
- package/dist/setup-surface-Cpi2A6hH.js +405 -0
- package/dist/shared-D57heBsq.js +121 -0
- package/dist/shared-client-BNqlZyQZ.js +2 -0
- package/dist/shared-client-DkXSWGuf.js +629 -0
- package/dist/side-question-CJpQXQwO.js +683 -0
- package/dist/skill-tool-dispatch.runtime-DFIYzLB7.js +143 -0
- package/dist/skill-tool-dispatch.runtime.js +1 -1
- package/dist/slash-state-PVFVXsf5.js +2166 -0
- package/dist/speech-provider-BYMES40R.js +184 -0
- package/dist/src-Cig0nIaB.js +4256 -0
- package/dist/startup-context-BhCfCVUP.js +313 -0
- package/dist/status-BUGiySd0.js +3 -0
- package/dist/status-CCUVxq2T.js +4 -0
- package/dist/status-all-DVmRki9n.js +573 -0
- package/dist/status-json-C9yB-I_P.js +14 -0
- package/dist/status-json-command-DLiHHY4-.js +84 -0
- package/dist/status-runtime-shared-CVVr1-B8.js +283 -0
- package/dist/status-subagents.runtime-Dnd_-sFp.js +18 -0
- package/dist/status-subagents.runtime.js +1 -1
- package/dist/status-text-Bv7B6Qvi.js +296 -0
- package/dist/status.command-CgQ_YxAV.js +2 -0
- package/dist/status.command-DljDx7Pt.js +420 -0
- package/dist/status.command.text-runtime-HPfXUUVK.js +15 -0
- package/dist/status.scan-XGVKT6BH.js +68 -0
- package/dist/status.scan-overview-BdO_Dwpk.js +444 -0
- package/dist/status.scan.fast-json-BbfAYFaX.js +2 -0
- package/dist/status.scan.fast-json-CixCI_VT.js +127 -0
- package/dist/status.scan.runtime-c77nmHB8.js +479 -0
- package/dist/status.scan.runtime.js +1 -1
- package/dist/status.update-CgJc9Ame.js +2 -0
- package/dist/status.update-DxUx2UCj.js +86 -0
- package/dist/sticker-cache-zbRCf5UY.js +206 -0
- package/dist/sticker-vision.runtime-D8hb_hbK.js +17 -0
- package/dist/sticker-vision.runtime.js +1 -1
- package/dist/subagent-announce-D-tCpxB7.js +354 -0
- package/dist/subagent-announce-delivery-CV9sHBb8.js +958 -0
- package/dist/subagent-control-B71yROQ1.js +508 -0
- package/dist/subagent-hooks-5z9r_kyU.js +230 -0
- package/dist/subagent-hooks-B9N4nO9J.js +2 -0
- package/dist/subagent-hooks-Bqm8GC4e.js +116 -0
- package/dist/subagent-hooks-CH64M3D2.js +2 -0
- package/dist/subagent-hooks-YX204bTO.js +2 -0
- package/dist/subagent-hooks-api-22u-zraT.js +23 -0
- package/dist/subagent-hooks-api-CZbBhZq3.js +23 -0
- package/dist/subagent-hooks-api-Ji-FhB1I.js +22 -0
- package/dist/subagent-hooks-yIneGe_q.js +146 -0
- package/dist/subagent-orphan-recovery-BR2b7ZZK.js +352 -0
- package/dist/subagent-registry-7llbjThI.js +2351 -0
- package/dist/subagent-registry-IXRntXRj.js +3 -0
- package/dist/subagent-registry.runtime.js +1 -1
- package/dist/subagent-session-cleanup-Ckvz5u4B.js +525 -0
- package/dist/subagent-spawn-28HeMeKx.js +1164 -0
- package/dist/target-id-CGBWkCke.js +107 -0
- package/dist/targets-B8kgW-Y8.js +19 -0
- package/dist/targets-BhYsYz4Q.js +44 -0
- package/dist/targets-Dl-MgHWz.js +19 -0
- package/dist/task-registry-control.runtime.js +1 -1
- package/dist/telegram/token.js +1 -1
- package/dist/testing-CwJ9EDFR.js +267 -0
- package/dist/text-report-97aYC9pB.js +695 -0
- package/dist/thread-bindings-B6t8Q4ba.js +8 -0
- package/dist/thread-bindings-B9f-_sFy.js +571 -0
- package/dist/thread-bindings-CJDUpwXD.js +228 -0
- package/dist/thread-bindings-DxvjdbzW.js +232 -0
- package/dist/thread-bindings.discord-api-CnRP-DSi.js +187 -0
- package/dist/thread-bindings.manager-2B6_nSpQ.js +536 -0
- package/dist/thread-bindings.manager-C_n--VnJ.js +2 -0
- package/dist/thread-lifecycle-C2hLLuqe.js +1614 -0
- package/dist/token-Bo7-r-aE.js +134 -0
- package/dist/tool-BLIlzoql.js +139 -0
- package/dist/tool-actions.runtime-CXZ0UNkZ.js +534 -0
- package/dist/tool-actions.runtime.js +1 -1
- package/dist/tool-resolution-BqtQFCPq.js +149 -0
- package/dist/tools-effective-inventory-DABx239z.js +204 -0
- package/dist/tools-invoke-http-8pjepRT1.js +67 -0
- package/dist/tools-invoke-shared-l5WK0ntS.js +200 -0
- package/dist/tts-BIYGM92g.js +66 -0
- package/dist/tui-DCykl3IU.js +4709 -0
- package/dist/tui-DzUa_vFQ.js +2 -0
- package/dist/tui-backend-BJUtldXg.js +256 -0
- package/dist/tui-cli-C-Q6SJc7.js +37 -0
- package/dist/update-check-BKUpUW-v.js +372 -0
- package/dist/update-cli-DA6H6wa0.js +3664 -0
- package/dist/update-runner-C680U-SL.js +2379 -0
- package/dist/update-startup-DPjYirTF.js +2 -0
- package/dist/update-startup-Wr7CfPVC.js +339 -0
- package/dist/vision-tools-DJ4y7cV-.js +1409 -0
- package/dist/web-search-DpV8PBBY.js +62 -0
- package/dist/web-search-provider.runtime-Bmvff7rR.js +2 -0
- package/dist/web-search-provider.runtime-CY9JJJoF.js +328 -0
- package/dist/web-search-provider.runtime.js +1 -1
- package/dist/xai-oauth-gj-8ubLa.js +479 -0
- package/dist/xai-user-agent-D4JRRc1W.js +32 -0
- package/package.json +1 -1
- package/dist/abort-5xSPv96j.js +0 -277
- package/dist/abort.runtime-0926E27Z.js +0 -2
- package/dist/account-inspect-BgzS8u-D.js +0 -173
- package/dist/accounts-7v5WrRCh.js +0 -2
- package/dist/accounts-BzO41JQx.js +0 -107
- package/dist/accounts-CSbmdRcc.js +0 -107
- package/dist/accounts-CZQ5w4JW.js +0 -119
- package/dist/acp-runtime-BCeSAla4.js +0 -26
- package/dist/acp-spawn-Czqyiryw.js +0 -1275
- package/dist/acp-spawn-D39EyfB9.js +0 -2
- package/dist/acp-stateful-target-driver-Ds-A-N-E.js +0 -89
- package/dist/action-kill-BdD5_Aml.js +0 -33
- package/dist/action-runtime-COScp8ol.js +0 -469
- package/dist/action-runtime-api-BgjjgLcW.js +0 -2
- package/dist/action-send-DfeejIBh.js +0 -39
- package/dist/action-spawn-DO8scagE.js +0 -47
- package/dist/actions-XbUKh94t.js +0 -161
- package/dist/actions.runtime-D_FyKsqj.js +0 -5
- package/dist/agent-3M5jLi8y.js +0 -2
- package/dist/agent-_HmdUCr4.js +0 -3
- package/dist/agent-command-JdyQsbkT.js +0 -1367
- package/dist/agent-components.runtime-BiG6LL4q.js +0 -10
- package/dist/agent-harness-runtime-CHrYKoTd.js +0 -180
- package/dist/agent-harness-task-runtime-DHQNyKub.js +0 -140
- package/dist/agent-runner-execution-D20QTBXr.js +0 -1713
- package/dist/agent-runner-utils-Bqe6xxgK.js +0 -266
- package/dist/agent-runner.runtime-BDNZI9xP.js +0 -3455
- package/dist/agent-runtime-TYhcwEWD.js +0 -229
- package/dist/agent-via-gateway-Dr06Lb5b.js +0 -463
- package/dist/api-Bv6Yzx0U.js +0 -639
- package/dist/api-CKq871s7.js +0 -134
- package/dist/api-DX_U2wja.js +0 -2
- package/dist/api-U8Q33Ouw.js +0 -6
- package/dist/api-UYhicEhq.js +0 -3
- package/dist/api-yyfjBhjb.js +0 -2
- package/dist/apply-BaAAhGbT.js +0 -41
- package/dist/apply-DoPxVm4A.js +0 -54
- package/dist/approval-handler.runtime-BtGX8k1E.js +0 -130
- package/dist/assistant-B3I8-7Lv.js +0 -291
- package/dist/attachment-normalize-C0-A3gAr.js +0 -225
- package/dist/attempt-execution-B4Uh6AAn.js +0 -558
- package/dist/attempt-execution.runtime-CDwaTeFi.js +0 -3
- package/dist/attempt-execution.shared-LOacq8Oi.js +0 -38
- package/dist/attempt.prompt-helpers-DTLTH3Mn.js +0 -475
- package/dist/attempt.tool-run-context-CQfLOzhy.js +0 -2094
- package/dist/binding-routing-D1Ep8LYu.js +0 -113
- package/dist/binding-targets-DAx23oWo.js +0 -121
- package/dist/bot-Wv3X4bsa.js +0 -7894
- package/dist/bot-deps-Bl2rHw_I.js +0 -747
- package/dist/bot-deps-D5QFJ6Sp.js +0 -2
- package/dist/bot-message-context.runtime-CLTMWkIl.js +0 -7
- package/dist/bot-message-context.session.runtime-C7ixtg9D.js +0 -12
- package/dist/bot-native-commands.delivery.runtime-Dd7fg3sv.js +0 -4
- package/dist/bot-native-commands.runtime-xxk9PH27.js +0 -13
- package/dist/bridge-server-B2OfZKTC.js +0 -113
- package/dist/browser-cli-C5iosRvD.js +0 -230
- package/dist/browser-cli-CLz_3gcp.js +0 -2
- package/dist/browser-cli-actions-input-DmI7MUTC.js +0 -473
- package/dist/browser-cli-actions-observe-D3mxz2K_.js +0 -81
- package/dist/browser-cli-debug-D4ovrUvJ.js +0 -137
- package/dist/browser-cli-inspect-NM7kVusr.js +0 -104
- package/dist/browser-cli-manage--VYOZfBu.js +0 -443
- package/dist/browser-cli-resize-DrCL8Kq1.js +0 -26
- package/dist/browser-cli-shared-Cd6zdFZW.js +0 -50
- package/dist/browser-cli-state-CoB8ZyE6.js +0 -337
- package/dist/browser-control-auth-Bev4Zk62.js +0 -2
- package/dist/browser-profiles-BxPD8_vB.js +0 -2
- package/dist/browser-runtime-C07L-Zov.js +0 -384
- package/dist/build-CQUvEKPr.js +0 -257
- package/dist/capability-cli-CgkX47xS.js +0 -1782
- package/dist/channel-4gVDslD_.js +0 -653
- package/dist/channel-6vrwZPs9.js +0 -238
- package/dist/channel-B9ZuUQ6v.js +0 -562
- package/dist/channel-BADrx_U3.js +0 -1556
- package/dist/channel-BGLIVapC.js +0 -481
- package/dist/channel-BwcQp8Rq.js +0 -955
- package/dist/channel-BzSKfrLf.js +0 -740
- package/dist/channel-C4XSENg9.js +0 -2126
- package/dist/channel-C7ga9fTJ.js +0 -1777
- package/dist/channel-C8hBwzA1.js +0 -362
- package/dist/channel-CCG1mfB4.js +0 -1496
- package/dist/channel-CKOJY4Zd.js +0 -1134
- package/dist/channel-CYxTzhn7.js +0 -376
- package/dist/channel-DDg0cxDP.js +0 -808
- package/dist/channel-DpsxF3Mf.js +0 -1249
- package/dist/channel-actions.runtime-DJOOf7eP.js +0 -265
- package/dist/channel-cl_cgDg6.js +0 -508
- package/dist/channel-core-DTSpGZkc.js +0 -5
- package/dist/channel-emJStu3a.js +0 -867
- package/dist/channel-inbound-le9T0BS4.js +0 -80
- package/dist/channel-plugin-runtime-COf6cDhp.js +0 -998
- package/dist/channel-runtime-LgCwu-e7.js +0 -408
- package/dist/channel.runtime-1b8dMgHq.js +0 -4
- package/dist/channel.runtime-BIZeTsuh.js +0 -88
- package/dist/channel.runtime-BPTDdF_t.js +0 -1008
- package/dist/channel.runtime-CMwMP86f.js +0 -21009
- package/dist/channel.runtime-CbR_S3Es.js +0 -733
- package/dist/channel.runtime-CoNDJV33.js +0 -254
- package/dist/channel.runtime-D1ve78xp.js +0 -109
- package/dist/channel.runtime-DAuGTOCS.js +0 -652
- package/dist/channel.runtime-DCHOoofn.js +0 -2528
- package/dist/channel.setup-BP1xL5Pf.js +0 -1098
- package/dist/channel.setup-ChiJ3GPS.js +0 -10
- package/dist/channel.setup-SmJQYInQ.js +0 -343
- package/dist/chat-zRdfy5a3.js +0 -2666
- package/dist/chrome-CKXrklba.js +0 -1503
- package/dist/cli-D8jOuVTO.js +0 -1341
- package/dist/cli-compaction-BLVrCsK5.js +0 -347
- package/dist/cli-metadata-CYvkEhJD.js +0 -22
- package/dist/cli-runner-BlM3bE0F.js +0 -2
- package/dist/cli-runner-D6RHy0cU.js +0 -540
- package/dist/cli-runner.runtime-BZAAFLDU.js +0 -4
- package/dist/cli-runner.runtime-CpX1HvG6.js +0 -3
- package/dist/client-CtRn_hQP.js +0 -650
- package/dist/client-adapter-BVIdEc7J.js +0 -897
- package/dist/client-factory-6n6tLSIi.js +0 -9
- package/dist/command-auth-B2r-fHTK.js +0 -135
- package/dist/command-handlers-Pnxu5_zT.js +0 -1609
- package/dist/command-registry-Ck2pwGIs.js +0 -9
- package/dist/command-registry-CmCmwAX7.js +0 -4
- package/dist/command-registry-core-Bpb8Zmai.js +0 -110
- package/dist/command-status.runtime-Bjq4f1lX.js +0 -90
- package/dist/commands-acp-B7zCM6RA.js +0 -74
- package/dist/commands-compact.runtime-CmtzRn-a.js +0 -10
- package/dist/commands-handlers.runtime-C4kTnIeK.js +0 -6154
- package/dist/commands-status-DVgiHsQ5.js +0 -16
- package/dist/commands-status-DlYd-7ik.js +0 -3
- package/dist/commands-status.runtime-DlYd-7ik.js +0 -3
- package/dist/commands-subagents-control.runtime-DgvtGIas.js +0 -2
- package/dist/commands-subagents-control.runtime-JdMGlKtk.js +0 -3
- package/dist/commands-system-prompt-BQyxb4tV.js +0 -162
- package/dist/commands-system-prompt-ByWU697p.js +0 -2
- package/dist/commands.runtime-CJP1VpiV.js +0 -176
- package/dist/compact-DLUg6XJH.js +0 -1141
- package/dist/compact-_E6we35c.js +0 -480
- package/dist/compact.runtime-DPVrm-pW.js +0 -12
- package/dist/completion-cli-DoizagFW.js +0 -315
- package/dist/computer-use-CCjnsa_1.js +0 -367
- package/dist/config-BilJG9EC.js +0 -373
- package/dist/config-BxPD8_vB.js +0 -2
- package/dist/config-mutations-D_EXryF0.js +0 -159
- package/dist/context-engine-host-compat-CqmA35DL.js +0 -2
- package/dist/context-engine-host-compat-CueTS2PS.js +0 -288
- package/dist/context-engine-lifecycle-BfMiEl15.js +0 -1274
- package/dist/control-auth-BU7xIoX-.js +0 -114
- package/dist/control-service-rkbW1sH-.js +0 -145
- package/dist/control-ui/assets/agents-Bmksc4At.js +0 -1008
- package/dist/control-ui/assets/channel-config-extras-0m9cczr4.js +0 -2
- package/dist/control-ui/assets/channels-DGCi3xli.js +0 -367
- package/dist/control-ui/assets/cron-B3jHqPYZ.js +0 -1013
- package/dist/control-ui/assets/debug-C38n-Ynm.js +0 -97
- package/dist/control-ui/assets/index-B3vU4Kp-.js +0 -7370
- package/dist/control-ui/assets/instances-B5l_Ub4a.js +0 -57
- package/dist/control-ui/assets/logs-CDvzMoRN.js +0 -74
- package/dist/control-ui/assets/nodes-Cb6gzeB7.js +0 -436
- package/dist/control-ui/assets/sessions-DKl00hAp.js +0 -399
- package/dist/control-ui/assets/skills-C0BEkZ-Q.js +0 -314
- package/dist/control-ui/assets/skills-shared-ILWmFgzt.js +0 -11
- package/dist/conversation-binding-runtime-DUU8Cbqn.js +0 -4
- package/dist/conversation-runtime-DPrqAWle.js +0 -31
- package/dist/core-CUD6UgSq.js +0 -282
- package/dist/core-api-B1g3Om3O.js +0 -5
- package/dist/core-api-C-O6aNhF.js +0 -2
- package/dist/crestodian-v9uXA3A2.js +0 -55
- package/dist/daocore-tools-C28lHB0m.js +0 -11727
- package/dist/delivery-BuWQ2Vps.js +0 -1002
- package/dist/dialogue-DSYoyGRK.js +0 -37
- package/dist/dir-fetch-tool-Cp6QDtGT.js +0 -565
- package/dist/dir-list-tool-Cgwy8SnK.js +0 -100
- package/dist/direct-dm-B9jtIQVB.js +0 -64
- package/dist/directive-handling.fast-lane-DW5n01VF.js +0 -68
- package/dist/directive-handling.impl-BZXGBxBu.js +0 -2
- package/dist/directive-handling.impl-DvmlznGE.js +0 -818
- package/dist/directive-handling.model-selection-CdbAe1eC.js +0 -122
- package/dist/directive-handling.persist.runtime-B7WHo9zw.js +0 -263
- package/dist/dispatch-Bysi6DFL.js +0 -1640
- package/dist/dispatch-acp-transcript.runtime-CrAnpqiX.js +0 -40
- package/dist/dispatch-acp.runtime-DkcXZIbM.js +0 -18
- package/dist/doctor-CFmGWeIn.js +0 -6
- package/dist/doctor-_JI7RKJk.js +0 -2
- package/dist/doctor-config-flow-DVXxaLTb.js +0 -1741
- package/dist/doctor-core-checks-BfUW_u2R.js +0 -2
- package/dist/doctor-core-checks-lmN1Tw4N.js +0 -573
- package/dist/doctor-health-ZgTh34Za.js +0 -65
- package/dist/doctor-health-contributions-DV0Ff5cp.js +0 -696
- package/dist/doctor-lint-DbYtxQxC.js +0 -94
- package/dist/doctor-state-integrity-CZdBuNdm.js +0 -1231
- package/dist/doctor-update-DpFQTsrm.js +0 -58
- package/dist/dynamic-tools-DWocQS_t.js +0 -486
- package/dist/embedded-backend-DGDv3GDw.js +0 -579
- package/dist/embedded-gateway-stub.runtime-mATMWU23.js +0 -12
- package/dist/exec-approvals-tk6i5Iy2.js +0 -149
- package/dist/file-fetch-tool-BVh97aps.js +0 -124
- package/dist/file-write-tool-Cfb7u51o.js +0 -127
- package/dist/format-Bqz5xYeB.js +0 -250
- package/dist/format-DpuFG9c5.js +0 -1145
- package/dist/gateway-cli-eCkwL4uy.js +0 -435
- package/dist/gateway-method-runtime-BXqKYfux.js +0 -21
- package/dist/get-reply-Bc_T3z5w.js +0 -4689
- package/dist/get-reply-from-config.runtime-BKhFCEun.js +0 -2
- package/dist/graph-users-BiokxXwA.js +0 -1419
- package/dist/group-access-DBAPYc28.js +0 -112
- package/dist/handle-action.guild-admin-S3qgTJJ3.js +0 -288
- package/dist/harness-B7wBXWh0.js +0 -61
- package/dist/health-DdXlm-1M.js +0 -4
- package/dist/health-state-BbDa6gRr.js +0 -106
- package/dist/heartbeat-runner-CZKQeDIE.js +0 -5
- package/dist/heartbeat-runner.runtime-D5VTmRkB.js +0 -4
- package/dist/hooks-CJtypGfW.js +0 -534
- package/dist/inbound-direct-dm-runtime-D91V0BFn.js +0 -2
- package/dist/inbound-reply-dispatch-DTvJL7df.js +0 -148
- package/dist/init-qWugBDhm.js +0 -59
- package/dist/inline-buttons-1E4EwLvT.js +0 -40
- package/dist/internal-events-DtxthZ8P.js +0 -90
- package/dist/isolated-agent-C0ZZI5QV.js +0 -2
- package/dist/isolated-agent-C7qWrmnX.js +0 -1118
- package/dist/lifecycle-Wq49oJK4.js +0 -571
- package/dist/list.probe-DWMHsvUW.js +0 -449
- package/dist/list.status-command-DSGGuDOk.js +0 -789
- package/dist/llm-slug-generator-Bp_C1mgK.js +0 -78
- package/dist/local-dispatch.runtime-Cn8pnuYP.js +0 -9
- package/dist/manager.runtime-BdEdrDpV.js +0 -2714
- package/dist/markdown-to-line-D8Y0X3f4.js +0 -811
- package/dist/mcp-http-Cmug_nIB.js +0 -555
- package/dist/mcp-http-Dxmrs9Wm.js +0 -2
- package/dist/media-understanding-provider-BUGZ_tGW.js +0 -339
- package/dist/message-actions-Bb5avCm0.js +0 -145
- package/dist/message-handler-7FxYBWCr.js +0 -384
- package/dist/message-handler-EXgLxNWG.js +0 -1715
- package/dist/message-handler.preflight-CtW30FUU.js +0 -1125
- package/dist/message-handler.process-D_tmiE76.js +0 -1484
- package/dist/model-FzMER7bm.js +0 -74
- package/dist/model-selection-bti71700.js +0 -272
- package/dist/models-C8i8gMx4.js +0 -2
- package/dist/models-CdD9KMFY.js +0 -104
- package/dist/models-cli-gg_kT0t3.js +0 -256
- package/dist/monitor-Be8nfodW.js +0 -1657
- package/dist/monitor-Bvxk0x5H.js +0 -715
- package/dist/monitor-CE97mY08.js +0 -2788
- package/dist/monitor-CUf3qwuD.js +0 -60
- package/dist/monitor-D6mKqFJ6.js +0 -834
- package/dist/monitor-DU7GwGnr.js +0 -4377
- package/dist/monitor-DhcXz9j_.js +0 -2
- package/dist/monitor-auth-BRcGC8Y2.js +0 -179
- package/dist/monitor-polling.runtime-IxrlG8Xk.js +0 -883
- package/dist/monitor-vVY3N7u5.js +0 -1370
- package/dist/monitor-webhook.runtime-hc4RVNDK.js +0 -387
- package/dist/monitor.account-XphC4gzs.js +0 -5233
- package/dist/monitor.runtime-6xS3OjmH.js +0 -2
- package/dist/monitor.webhook-5EHwrXWd.js +0 -180
- package/dist/node-cli-sessions-DOBuRxFO.js +0 -1228
- package/dist/openai-http-CGnGQIGW.js +0 -824
- package/dist/openresponses-http-BXPy59t0.js +0 -1173
- package/dist/operations-BvCPaweO.js +0 -805
- package/dist/outbound-adapter-DiSr_Bhn.js +0 -543
- package/dist/outbound-session-route-Cm1ZzMzO.js +0 -45
- package/dist/outbound.runtime-_iFVmHLo.js +0 -2
- package/dist/pi-embedded-D5GNzI7q.js +0 -4
- package/dist/pi-embedded-DFFUgktH.js +0 -3796
- package/dist/pi-embedded.runtime-Cd4ObvwO.js +0 -4
- package/dist/pi-tools-BC8I1xvo.js +0 -2413
- package/dist/plan-CB-ExQ8I.js +0 -112
- package/dist/plan-XEE4NkGP.js +0 -81
- package/dist/plugin-FgCZcV6y.js +0 -12396
- package/dist/plugin-app-cache-key-CDrzpMz5.js +0 -46
- package/dist/plugin-enabled-C63xoVby.js +0 -233
- package/dist/plugin-registration-DmMBSR62.js +0 -88
- package/dist/plugin-service-Dt30fEbO.js +0 -1229
- package/dist/policy-CtICwdgT.js +0 -680
- package/dist/policy-DT-VOML-.js +0 -138
- package/dist/prepare.runtime-BZWbkknM.js +0 -732
- package/dist/preview-warnings-c5wlaU-y.js +0 -392
- package/dist/probe-C0Gd1211.js +0 -682
- package/dist/probe-CM_9YKXA.js +0 -2
- package/dist/probe-CrkgoSu3.js +0 -2204
- package/dist/probe-DcbGYJMj.js +0 -47
- package/dist/program-DcIk29tW.js +0 -131
- package/dist/provider-B2h8f0Br.js +0 -8735
- package/dist/provider-BXVr37w8.js +0 -32
- package/dist/provider-CIB7u7hX.js +0 -152
- package/dist/provider-bvVoUDev.js +0 -32
- package/dist/provider-dispatcher-btaVKiyh.js +0 -22
- package/dist/provider-session.runtime-CFBF4pr7.js +0 -9
- package/dist/provider.runtime-CZfM-gk6.js +0 -2
- package/dist/public-surface-loader-BTQVJb2c.js +0 -114
- package/dist/pw-ai-CZwiW9VR.js +0 -3029
- package/dist/pw-role-snapshot-BBAmIGwb.js +0 -333
- package/dist/reaction-level-DBBuD-ww.js +0 -19
- package/dist/reaction-runtime-api-C1vrXLqZ.js +0 -116
- package/dist/realtime-transcription-provider-CelUuvqm.js +0 -205
- package/dist/register-OPqUqnP6.js +0 -2178
- package/dist/register.agent-DSrwwOvx.js +0 -156
- package/dist/register.crestodian-Xxxk2-Zl.js +0 -24
- package/dist/register.maintenance-CDfzLTNQ.js +0 -83
- package/dist/register.runtime-BVG-Dv_-.js +0 -54
- package/dist/register.status-health-sessions-B36GUeBl.js +0 -282
- package/dist/register.subclis-BHzKPsu3.js +0 -31
- package/dist/register.subclis-Je6qsLUH.js +0 -3
- package/dist/register.subclis-core-DqSQ4XoR.js +0 -273
- package/dist/repair-sequencing-DNO4k0Xf.js +0 -640
- package/dist/reply-delivery-37v9z05y.js +0 -196
- package/dist/reply-runtime-py2XHqw1.js +0 -11
- package/dist/reply.runtime-BKhFCEun.js +0 -2
- package/dist/request-CoRpTCQ-.js +0 -54
- package/dist/resolve-allowlist-D-vOgxSP.js +0 -220
- package/dist/result-fallback-classifier-Dn3Dmp9k.js +0 -79
- package/dist/route-DW9RJF0S.js +0 -469
- package/dist/route-resolution-D_0Mvu67.js +0 -274
- package/dist/routes-437aa83D.js +0 -3602
- package/dist/routes-D7LQ3tMt.js +0 -2
- package/dist/run-DXGJiQoW.js +0 -1162
- package/dist/run-attempt-_0WJ7JVY.js +0 -7704
- package/dist/run-command-BkhBbZq4.js +0 -23
- package/dist/run-command-DMG9dO72.js +0 -2
- package/dist/run-embedded.runtime-D525I-KH.js +0 -4
- package/dist/run-execution-cli.runtime-TuyJs3wn.js +0 -4
- package/dist/run-subagent-registry.runtime-BcGVpK9w.js +0 -2
- package/dist/runtime-5_JhnRj0.js +0 -438
- package/dist/runtime-BEfdbKzt.js +0 -6179
- package/dist/runtime-DtQ2yT4g.js +0 -1287
- package/dist/runtime-api-Bm7IDGdk.js +0 -24
- package/dist/runtime-api-C8uxd9Js.js +0 -4
- package/dist/runtime-api-CLhw7d8A.js +0 -13
- package/dist/runtime-api-Ccg7ngfJ.js +0 -13
- package/dist/runtime-api-CpQqdZYq.js +0 -21
- package/dist/runtime-api-JulpTdFC.js +0 -17
- package/dist/runtime-api-zbqtuJt-.js +0 -3
- package/dist/runtime-api.actions-2fHneH-M.js +0 -3
- package/dist/runtime-api.monitor-Bpj7QCdL.js +0 -6
- package/dist/runtime-api.send-DeoFOMAr.js +0 -4
- package/dist/runtime-api.threads-b16O0JZ4.js +0 -2
- package/dist/runtime-channel-CuERpYnN.js +0 -150
- package/dist/runtime-channel-YbtclsiZ.js +0 -2
- package/dist/runtime-embedded-pi.runtime-DEcqs7Yu.js +0 -2
- package/dist/sanitize-outbound-cOz4EipP.js +0 -127
- package/dist/sdk-setup-tools-Bur4xhiB.js +0 -8
- package/dist/secrets-B0P_1QcV.js +0 -113
- package/dist/security-audit-DRttHvfh.js +0 -122
- package/dist/security-audit-Dp26B_nd.js +0 -118
- package/dist/security-audit.runtime-DYK4iAnc.js +0 -2
- package/dist/selection-44C59Jt6.js +0 -16157
- package/dist/selection-QO-UjTkW.js +0 -3
- package/dist/send-C_D0mahx.js +0 -2
- package/dist/send-Cr-pK3Md.js +0 -143
- package/dist/send-DVhzeHKl.js +0 -1631
- package/dist/send-PmYvWFLe.js +0 -192
- package/dist/send.components-B2Mo6jm1.js +0 -500
- package/dist/send.components-BPYxo1GP.js +0 -2
- package/dist/send.runtime-D3JsvWwD.js +0 -2
- package/dist/server-0ubKRVjg.js +0 -24
- package/dist/server-DfzdV9XR.js +0 -73
- package/dist/server-context-CUWMZ_eM.js +0 -2
- package/dist/server-context-Cnl8idXT.js +0 -955
- package/dist/server-cron-D7QmsboM.js +0 -2
- package/dist/server-cron-mea_v_AH.js +0 -2989
- package/dist/server-maintenance-CzgBw90t.js +0 -167
- package/dist/server-methods-BQK-_CCw.js +0 -16494
- package/dist/server-node-events-C__xvGU1.js +0 -596
- package/dist/server-plugin-bootstrap-vC6fQjdM.js +0 -70
- package/dist/server-plugins-BfXHktel.js +0 -432
- package/dist/server-reload-handlers-CdagBZAE.js +0 -714
- package/dist/server-restart-sentinel-BO-vqR3K.js +0 -747
- package/dist/server-restart-sentinel-DND8yDHW.js +0 -2
- package/dist/server-runtime-services-Bao-oSOF.js +0 -267
- package/dist/server-runtime-services-D6cI6uO2.js +0 -2
- package/dist/server-startup-early-BDLTmiF5.js +0 -87
- package/dist/server-startup-plugins-q_W_iA3q.js +0 -113
- package/dist/server-startup-post-attach-CYKy2V3j.js +0 -716
- package/dist/server-ws-runtime-Da8L4ypZ.js +0 -349
- package/dist/server.impl-DGOSejqy.js +0 -2586
- package/dist/service-DlI2U-cK.js +0 -1446
- package/dist/session-binding-CwkYLNXf.js +0 -2
- package/dist/session-binding-DX-fo3c9.js +0 -219
- package/dist/session-kill-http-CFmTagxj.js +0 -121
- package/dist/session-reset-service-B25Jlagv.js +0 -625
- package/dist/session-route-bgMaGZRG.js +0 -93
- package/dist/session-status.runtime-Bs2EXyKA.js +0 -2
- package/dist/session-subagent-reactivation.runtime-DXxAjUOk.js +0 -2
- package/dist/session-tab-registry-DacdZ4tB.js +0 -521
- package/dist/sessions-history-http-BVpW1ZcJ.js +0 -430
- package/dist/sessions.runtime-KBdCnSz6.js +0 -2
- package/dist/setup-api-CeIlDnWx.js +0 -29
- package/dist/setup-core-DLbBGLsw.js +0 -174
- package/dist/setup-surface-B2a2VaWD.js +0 -221
- package/dist/setup-surface-Bx_siWyS.js +0 -320
- package/dist/setup-surface-Cf4YnQu2.js +0 -405
- package/dist/setup-surface-DTcOOfre.js +0 -288
- package/dist/shared-LAgU4fFs.js +0 -121
- package/dist/shared-client-Am1mCd-v.js +0 -2
- package/dist/shared-client-D3A48dlk.js +0 -629
- package/dist/side-question-DVTWk-tO.js +0 -683
- package/dist/skill-tool-dispatch.runtime-igagKDUg.js +0 -143
- package/dist/slash-state-DJji-KSx.js +0 -2166
- package/dist/speech-provider-Dsa05s8C.js +0 -184
- package/dist/src-DqgvOnta.js +0 -4256
- package/dist/startup-context-CWwChEn9.js +0 -313
- package/dist/status-CUKFkF6b.js +0 -3
- package/dist/status-_UeuGVi3.js +0 -4
- package/dist/status-all-ChigLV_X.js +0 -573
- package/dist/status-json-CIdP1iBJ.js +0 -14
- package/dist/status-json-command-BDEUrp6M.js +0 -84
- package/dist/status-runtime-shared-Cq4a18dI.js +0 -283
- package/dist/status-subagents.runtime-CAVnAL4K.js +0 -18
- package/dist/status-text-D4HAPHm1.js +0 -296
- package/dist/status.command-8BU177X9.js +0 -2
- package/dist/status.command-yh7emvuM.js +0 -420
- package/dist/status.command.text-runtime-B8OpdGCG.js +0 -15
- package/dist/status.scan-BIuwlU6G.js +0 -68
- package/dist/status.scan-overview-r9Sk69iQ.js +0 -444
- package/dist/status.scan.fast-json-3nlHM3LS.js +0 -2
- package/dist/status.scan.fast-json-DnwGPJ0_.js +0 -127
- package/dist/status.scan.runtime-CgdduW2l.js +0 -479
- package/dist/status.update-BgFhUW7I.js +0 -86
- package/dist/status.update-rQL4_Irv.js +0 -2
- package/dist/sticker-cache-hPdFIaR8.js +0 -206
- package/dist/sticker-vision.runtime-CKwNUUYH.js +0 -17
- package/dist/subagent-announce-CPTinWX3.js +0 -354
- package/dist/subagent-announce-delivery-ohL5PocA.js +0 -958
- package/dist/subagent-control-BQDtHw6e.js +0 -508
- package/dist/subagent-hooks-BUKvlYGi.js +0 -2
- package/dist/subagent-hooks-CwwuJtIN.js +0 -2
- package/dist/subagent-hooks-D-6S1mpG.js +0 -146
- package/dist/subagent-hooks-DK4O9DHY.js +0 -2
- package/dist/subagent-hooks-DKrXETX6.js +0 -230
- package/dist/subagent-hooks-RtDD-o7f.js +0 -116
- package/dist/subagent-hooks-api-CSGGhB4Y.js +0 -23
- package/dist/subagent-hooks-api-Zf13FmkW.js +0 -23
- package/dist/subagent-hooks-api-fTY-dYum.js +0 -22
- package/dist/subagent-orphan-recovery-CR_zRTfz.js +0 -352
- package/dist/subagent-registry-BHt8-wIZ.js +0 -2351
- package/dist/subagent-registry-BuLz8xwh.js +0 -3
- package/dist/subagent-session-cleanup-D7ihbQFh.js +0 -525
- package/dist/subagent-spawn-OIztmjv_.js +0 -1164
- package/dist/target-id-DWzawpWq.js +0 -107
- package/dist/targets-B5V5WYoi.js +0 -19
- package/dist/targets-HIPV3dV_.js +0 -44
- package/dist/targets-sXOKpsPF.js +0 -19
- package/dist/testing-a7plxbxs.js +0 -267
- package/dist/text-report-7eTN6lDu.js +0 -695
- package/dist/thread-bindings-CFgQ6p2l.js +0 -228
- package/dist/thread-bindings-CJgi2r1R.js +0 -232
- package/dist/thread-bindings-CSoJgsSu.js +0 -8
- package/dist/thread-bindings-DvMQHqPr.js +0 -571
- package/dist/thread-bindings.discord-api-Btr2o7Dq.js +0 -187
- package/dist/thread-bindings.manager-B2MjrNW8.js +0 -536
- package/dist/thread-bindings.manager-DrIh5eqv.js +0 -2
- package/dist/thread-lifecycle-9hfhP6NM.js +0 -1614
- package/dist/token-D1xw1VoL.js +0 -134
- package/dist/tool-DTcPPGeG.js +0 -139
- package/dist/tool-actions.runtime-RP-p2ohJ.js +0 -534
- package/dist/tool-resolution-FQZNVA7E.js +0 -149
- package/dist/tools-effective-inventory-D4IsbxCS.js +0 -204
- package/dist/tools-invoke-http-kcbjM-Jl.js +0 -67
- package/dist/tools-invoke-shared-CETqKcCV.js +0 -200
- package/dist/tts-BMP6Xnk0.js +0 -66
- package/dist/tui-C36hUrre.js +0 -2
- package/dist/tui-DiM1ke7p.js +0 -4709
- package/dist/tui-backend-De30cpsu.js +0 -256
- package/dist/tui-cli-k2-5mPku.js +0 -37
- package/dist/update-check-Dq2TmP7u.js +0 -372
- package/dist/update-cli-CIH--yOA.js +0 -3664
- package/dist/update-runner-ON3AsN9h.js +0 -2379
- package/dist/update-startup-B1hNnHsG.js +0 -2
- package/dist/update-startup-DfHO6Sde.js +0 -339
- package/dist/vision-tools-B2EWe9pv.js +0 -1409
- package/dist/web-search-DPki3TB7.js +0 -62
- package/dist/web-search-provider.runtime-CwRj50RV.js +0 -2
- package/dist/web-search-provider.runtime-DvOOme-j.js +0 -328
- package/dist/xai-oauth-DtHB3Iav.js +0 -479
- package/dist/xai-user-agent-lpTplBOY.js +0 -32
- /package/dist/{acp-runtime-backend-Cn6L41Tg.js → acp-runtime-backend-DL9bHzqW.js} +0 -0
- /package/dist/{channel-actions-8G0w3eC5.js → channel-actions-CMf4W2nb.js} +0 -0
- /package/dist/{command-status-runtime-DEkrRb2G.js → command-status-runtime-CFttYerC.js} +0 -0
- /package/dist/{delegate-CIrV5fYx.js → delegate-D6LGFAf5.js} +0 -0
- /package/dist/{dispatch-acp-DSCi-ptu.js → dispatch-acp-aDmm-ClP.js} +0 -0
- /package/dist/{heartbeat-runner-D_Iq9CmQ.js → heartbeat-runner-CA3FnKVt.js} +0 -0
- /package/dist/{library-DhnQegiK.js → library-Bwpqe3Xn.js} +0 -0
- /package/dist/{run-executor.runtime-feFJuDlS.js → run-executor.runtime-BDRmO1Qf.js} +0 -0
- /package/dist/{shared-docD3l41.js → shared-DMRXpVQc.js} +0 -0
|
@@ -0,0 +1,1002 @@
|
|
|
1
|
+
import { i as formatErrorMessage } from "./errors-D_oyTIw2.js";
|
|
2
|
+
import { o as root } from "./secure-temp-dir-BC5cWiAo.js";
|
|
3
|
+
import { r as logVerbose, s as warn, t as danger } from "./globals-DhGeOA1P.js";
|
|
4
|
+
import { t as createSubsystemLogger } from "./subsystem-CppbuBPw.js";
|
|
5
|
+
import { t as getGlobalHookRunner, u as fireAndForgetHook } from "./hook-runner-global-RR7B_IHd.js";
|
|
6
|
+
import { m as triggerInternalHook, n as createInternalHookEvent } from "./internal-hooks-jFOLQ8JS.js";
|
|
7
|
+
import { c as kindFromMime, s as isGifMedia } from "./mime-DppuT-pZ.js";
|
|
8
|
+
import { a as toInternalMessageSentContext, d as toPluginMessageSentEvent, l as toPluginMessageContext, t as buildCanonicalSentMessageHookContext } from "./message-hook-mappers-Cts6cIjh.js";
|
|
9
|
+
import { l as normalizeMessagePresentation } from "./payload-BDV15CYA.js";
|
|
10
|
+
import { n as probeVideoDimensions } from "./media-services-C8kJ1LwP.js";
|
|
11
|
+
import { a as projectOutboundPayloadPlanForDelivery, t as createOutboundPayloadPlan } from "./payloads-DecsNYNJ.js";
|
|
12
|
+
import { u as saveMediaBuffer } from "./store-53qCOCD8.js";
|
|
13
|
+
import { n as retryAsync } from "./retry-BKOOizpi.js";
|
|
14
|
+
import { a as saveRemoteMedia, n as MediaFetchError } from "./fetch-CThiKx3T.js";
|
|
15
|
+
import { t as loadWebMedia } from "./web-media-9RxiGagW.js";
|
|
16
|
+
import { i as chunkMarkdownTextWithMode } from "./chunk-DeZRGIEM.js";
|
|
17
|
+
import { t as buildOutboundMediaLoadOptions } from "./load-options-LnfEFXDj.js";
|
|
18
|
+
import { i as shouldRetryTelegramTransportFallback, t as resolveTelegramApiBase } from "./fetch-CBRkqVBE.js";
|
|
19
|
+
import "./runtime-env-BSECk1Nm.js";
|
|
20
|
+
import { o as isSafeToRetrySendError, u as isTelegramRateLimitError } from "./request-timeouts-CQOVTeCu.js";
|
|
21
|
+
import "./reply-chunking-C6CVu1PV.js";
|
|
22
|
+
import "./web-media-CRJx89eu.js";
|
|
23
|
+
import "./outbound-runtime-BWFKdtGY.js";
|
|
24
|
+
import "./file-access-runtime-BFNHVWzb.js";
|
|
25
|
+
import { n as createChannelApiRetryRunner } from "./retry-policy-NbhM9vPP.js";
|
|
26
|
+
import "./ssrf-runtime-Gwgbj2qf.js";
|
|
27
|
+
import "./media-runtime-CPXTkSQr.js";
|
|
28
|
+
import "./plugin-runtime-TPqTSJyy.js";
|
|
29
|
+
import "./hook-runtime-CUNYBlUz.js";
|
|
30
|
+
import "./retry-runtime-BObvpQE1.js";
|
|
31
|
+
import { B as resolveTelegramMediaPlaceholder, D as resolveTelegramReplyId, a as renderTelegramHtmlText, c as wrapFileReferencesInHtml, n as markdownToTelegramChunks, r as markdownToTelegramHtml } from "./format-BrgWhpMP.js";
|
|
32
|
+
import { t as resolveTelegramInlineButtons } from "./button-types-C0Gyj4Tz.js";
|
|
33
|
+
import { t as resolveTelegramInteractiveTextFallback } from "./interactive-fallback-hkNKT0cd.js";
|
|
34
|
+
import { a as getCachedSticker, n as cacheSticker } from "./sticker-cache-zbRCf5UY.js";
|
|
35
|
+
import { D as splitTelegramCaption, O as withTelegramApiErrorLogging, b as removeTelegramNativeQuoteParam, h as resolveTelegramVoiceSend, v as buildTelegramSendParams, x as buildInlineKeyboard, y as getTelegramNativeQuoteReplyMessageId } from "./send-BlmkYrI0.js";
|
|
36
|
+
import path from "node:path";
|
|
37
|
+
import { GrammyError, InputFile } from "grammy";
|
|
38
|
+
//#region extensions/telegram/src/bot/delivery.send.ts
|
|
39
|
+
const PARSE_ERR_RE = /can't parse entities|parse entities|find end of the entity/i;
|
|
40
|
+
const EMPTY_TEXT_ERR_RE = /message text is empty/i;
|
|
41
|
+
const QUOTE_PARAM_RE = /\bquote not found\b|\bQUOTE_TEXT_INVALID\b|\bquote text invalid\b/i;
|
|
42
|
+
const GrammyErrorCtor$2 = typeof GrammyError === "function" ? GrammyError : void 0;
|
|
43
|
+
function isTelegramQuoteParamError(err) {
|
|
44
|
+
if (GrammyErrorCtor$2 && err instanceof GrammyErrorCtor$2) return QUOTE_PARAM_RE.test(err.description);
|
|
45
|
+
return QUOTE_PARAM_RE.test(formatErrorMessage(err));
|
|
46
|
+
}
|
|
47
|
+
function createTelegramDeliverySendRetry() {
|
|
48
|
+
return createChannelApiRetryRunner({
|
|
49
|
+
shouldRetry: (err) => isSafeToRetrySendError(err) || isTelegramRateLimitError(err),
|
|
50
|
+
strictShouldRetry: true
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
async function sendTelegramWithThreadFallback(params) {
|
|
54
|
+
const hasNativeQuote = getTelegramNativeQuoteReplyMessageId(params.requestParams) != null;
|
|
55
|
+
const shouldSuppressFirstErrorLog = (err) => hasNativeQuote && isTelegramQuoteParamError(err);
|
|
56
|
+
const mergedShouldLog = params.shouldLog ? (err) => params.shouldLog(err) && !shouldSuppressFirstErrorLog(err) : (err) => !shouldSuppressFirstErrorLog(err);
|
|
57
|
+
const requestWithRetry = createTelegramDeliverySendRetry();
|
|
58
|
+
const runLoggedSend = (operation, requestParams, shouldLog) => withTelegramApiErrorLogging({
|
|
59
|
+
operation,
|
|
60
|
+
runtime: params.runtime,
|
|
61
|
+
...shouldLog ? { shouldLog } : {},
|
|
62
|
+
fn: () => requestWithRetry(() => params.send(requestParams), operation)
|
|
63
|
+
});
|
|
64
|
+
try {
|
|
65
|
+
return await runLoggedSend(params.operation, params.requestParams, mergedShouldLog);
|
|
66
|
+
} catch (err) {
|
|
67
|
+
if (hasNativeQuote && isTelegramQuoteParamError(err)) {
|
|
68
|
+
params.runtime.log?.(`telegram ${params.operation}: native quote rejected; retrying with legacy reply_to_message_id`);
|
|
69
|
+
return await sendTelegramWithThreadFallback({
|
|
70
|
+
...params,
|
|
71
|
+
operation: `${params.operation} (legacy reply retry)`,
|
|
72
|
+
requestParams: removeTelegramNativeQuoteParam(params.requestParams)
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
throw err;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
async function sendTelegramText(bot, chatId, text, runtime, opts) {
|
|
79
|
+
const baseParams = buildTelegramSendParams({
|
|
80
|
+
replyToMessageId: opts?.replyToMessageId,
|
|
81
|
+
replyQuoteMessageId: opts?.replyQuoteMessageId,
|
|
82
|
+
replyQuoteText: opts?.replyQuoteText,
|
|
83
|
+
replyQuotePosition: opts?.replyQuotePosition,
|
|
84
|
+
replyQuoteEntities: opts?.replyQuoteEntities,
|
|
85
|
+
thread: opts?.thread,
|
|
86
|
+
silent: opts?.silent
|
|
87
|
+
});
|
|
88
|
+
const linkPreviewOptions = opts?.linkPreview ?? true ? void 0 : { is_disabled: true };
|
|
89
|
+
const htmlText = (opts?.textMode ?? "markdown") === "html" ? text : markdownToTelegramHtml(text);
|
|
90
|
+
const fallbackText = opts?.plainText ?? text;
|
|
91
|
+
const hasFallbackText = fallbackText.trim().length > 0;
|
|
92
|
+
const sendPlainFallback = async () => {
|
|
93
|
+
const res = await sendTelegramWithThreadFallback({
|
|
94
|
+
operation: "sendMessage",
|
|
95
|
+
runtime,
|
|
96
|
+
thread: opts?.thread,
|
|
97
|
+
requestParams: baseParams,
|
|
98
|
+
send: (effectiveParams) => bot.api.sendMessage(chatId, fallbackText, {
|
|
99
|
+
...linkPreviewOptions ? { link_preview_options: linkPreviewOptions } : {},
|
|
100
|
+
...opts?.replyMarkup ? { reply_markup: opts.replyMarkup } : {},
|
|
101
|
+
...effectiveParams
|
|
102
|
+
})
|
|
103
|
+
});
|
|
104
|
+
runtime.log?.(`telegram sendMessage ok chat=${chatId} message=${res.message_id} (plain)`);
|
|
105
|
+
return res.message_id;
|
|
106
|
+
};
|
|
107
|
+
if (!htmlText.trim()) {
|
|
108
|
+
if (!hasFallbackText) throw new Error("telegram sendMessage failed: empty formatted text and empty plain fallback");
|
|
109
|
+
return await sendPlainFallback();
|
|
110
|
+
}
|
|
111
|
+
try {
|
|
112
|
+
const res = await sendTelegramWithThreadFallback({
|
|
113
|
+
operation: "sendMessage",
|
|
114
|
+
runtime,
|
|
115
|
+
thread: opts?.thread,
|
|
116
|
+
requestParams: baseParams,
|
|
117
|
+
shouldLog: (err) => {
|
|
118
|
+
const errText = formatErrorMessage(err);
|
|
119
|
+
return !PARSE_ERR_RE.test(errText) && !EMPTY_TEXT_ERR_RE.test(errText);
|
|
120
|
+
},
|
|
121
|
+
send: (effectiveParams) => bot.api.sendMessage(chatId, htmlText, {
|
|
122
|
+
parse_mode: "HTML",
|
|
123
|
+
...linkPreviewOptions ? { link_preview_options: linkPreviewOptions } : {},
|
|
124
|
+
...opts?.replyMarkup ? { reply_markup: opts.replyMarkup } : {},
|
|
125
|
+
...effectiveParams
|
|
126
|
+
})
|
|
127
|
+
});
|
|
128
|
+
runtime.log?.(`telegram sendMessage ok chat=${chatId} message=${res.message_id}`);
|
|
129
|
+
return res.message_id;
|
|
130
|
+
} catch (err) {
|
|
131
|
+
const errText = formatErrorMessage(err);
|
|
132
|
+
if (PARSE_ERR_RE.test(errText) || EMPTY_TEXT_ERR_RE.test(errText)) {
|
|
133
|
+
if (!hasFallbackText) throw err;
|
|
134
|
+
runtime.log?.(`telegram formatted send failed; retrying without formatting: ${errText}`);
|
|
135
|
+
return await sendPlainFallback();
|
|
136
|
+
}
|
|
137
|
+
throw err;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
//#endregion
|
|
141
|
+
//#region extensions/telegram/src/bot/reply-threading.ts
|
|
142
|
+
function resolveReplyToForSend(params) {
|
|
143
|
+
return params.replyToId && (params.replyToMode === "all" || !params.progress.hasReplied) ? params.replyToId : void 0;
|
|
144
|
+
}
|
|
145
|
+
function markReplyApplied(progress, replyToId) {
|
|
146
|
+
if (replyToId && !progress.hasReplied) progress.hasReplied = true;
|
|
147
|
+
}
|
|
148
|
+
function markDelivered$1(progress) {
|
|
149
|
+
progress.hasDelivered = true;
|
|
150
|
+
}
|
|
151
|
+
async function sendChunkedTelegramReplyText(params) {
|
|
152
|
+
const applyDelivered = params.markDelivered ?? markDelivered$1;
|
|
153
|
+
for (let i = 0; i < params.chunks.length; i += 1) {
|
|
154
|
+
const chunk = params.chunks[i];
|
|
155
|
+
if (!chunk) continue;
|
|
156
|
+
const isFirstChunk = i === 0;
|
|
157
|
+
const replyToMessageId = resolveReplyToForSend({
|
|
158
|
+
replyToId: params.replyToId,
|
|
159
|
+
replyToMode: params.replyToMode,
|
|
160
|
+
progress: params.progress
|
|
161
|
+
});
|
|
162
|
+
const shouldAttachQuote = Boolean(replyToMessageId) && Boolean(params.replyQuoteText) && (params.quoteOnlyOnFirstChunk !== true || isFirstChunk);
|
|
163
|
+
await params.sendChunk({
|
|
164
|
+
chunk,
|
|
165
|
+
isFirstChunk,
|
|
166
|
+
replyToMessageId,
|
|
167
|
+
replyMarkup: isFirstChunk ? params.replyMarkup : void 0,
|
|
168
|
+
replyQuoteText: shouldAttachQuote ? params.replyQuoteText : void 0
|
|
169
|
+
});
|
|
170
|
+
markReplyApplied(params.progress, replyToMessageId);
|
|
171
|
+
applyDelivered(params.progress);
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
//#endregion
|
|
175
|
+
//#region extensions/telegram/src/bot/delivery.replies.ts
|
|
176
|
+
const VOICE_FORBIDDEN_MARKER = "VOICE_MESSAGES_FORBIDDEN";
|
|
177
|
+
const CAPTION_TOO_LONG_RE = /caption is too long/i;
|
|
178
|
+
const GrammyErrorCtor$1 = typeof GrammyError === "function" ? GrammyError : void 0;
|
|
179
|
+
const silentReplyLogger = createSubsystemLogger("telegram/silent-reply");
|
|
180
|
+
function buildChunkTextResolver(params) {
|
|
181
|
+
return (markdown) => {
|
|
182
|
+
const markdownChunks = params.chunkMode === "newline" ? chunkMarkdownTextWithMode(markdown, params.textLimit, params.chunkMode) : [markdown];
|
|
183
|
+
const chunks = [];
|
|
184
|
+
for (const chunk of markdownChunks) {
|
|
185
|
+
const nested = markdownToTelegramChunks(chunk, params.textLimit, { tableMode: params.tableMode });
|
|
186
|
+
if (!nested.length && chunk) {
|
|
187
|
+
chunks.push({
|
|
188
|
+
html: wrapFileReferencesInHtml(markdownToTelegramHtml(chunk, {
|
|
189
|
+
tableMode: params.tableMode,
|
|
190
|
+
wrapFileRefs: false
|
|
191
|
+
})),
|
|
192
|
+
text: chunk
|
|
193
|
+
});
|
|
194
|
+
continue;
|
|
195
|
+
}
|
|
196
|
+
chunks.push(...nested);
|
|
197
|
+
}
|
|
198
|
+
return chunks;
|
|
199
|
+
};
|
|
200
|
+
}
|
|
201
|
+
function markDelivered(progress) {
|
|
202
|
+
progress.hasDelivered = true;
|
|
203
|
+
progress.deliveredCount += 1;
|
|
204
|
+
}
|
|
205
|
+
function filterEmptyTelegramTextChunks(chunks) {
|
|
206
|
+
return chunks.filter((chunk) => chunk.text.trim().length > 0);
|
|
207
|
+
}
|
|
208
|
+
function resolveReplyQuoteForSend(params) {
|
|
209
|
+
if (params.replyToId != null) {
|
|
210
|
+
const mapped = params.replyQuoteByMessageId?.[String(params.replyToId)];
|
|
211
|
+
if (mapped?.text) {
|
|
212
|
+
const quote = {
|
|
213
|
+
messageId: params.replyToId,
|
|
214
|
+
text: mapped.text
|
|
215
|
+
};
|
|
216
|
+
if (typeof mapped.position === "number") quote.position = mapped.position;
|
|
217
|
+
if (mapped.entities) quote.entities = mapped.entities;
|
|
218
|
+
return quote;
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
const quote = {};
|
|
222
|
+
if (params.replyQuoteMessageId != null) quote.messageId = params.replyQuoteMessageId;
|
|
223
|
+
if (params.replyQuoteText != null) quote.text = params.replyQuoteText;
|
|
224
|
+
if (params.replyQuotePosition != null) quote.position = params.replyQuotePosition;
|
|
225
|
+
if (params.replyQuoteEntities != null) quote.entities = params.replyQuoteEntities;
|
|
226
|
+
return quote;
|
|
227
|
+
}
|
|
228
|
+
async function deliverTextReply(params) {
|
|
229
|
+
let firstDeliveredMessageId;
|
|
230
|
+
await sendChunkedTelegramReplyText({
|
|
231
|
+
chunks: filterEmptyTelegramTextChunks(params.chunkText(params.replyText)),
|
|
232
|
+
progress: params.progress,
|
|
233
|
+
replyToId: params.replyToId,
|
|
234
|
+
replyToMode: params.replyToMode,
|
|
235
|
+
replyMarkup: params.replyMarkup,
|
|
236
|
+
replyQuoteText: params.replyQuoteText,
|
|
237
|
+
markDelivered,
|
|
238
|
+
sendChunk: async ({ chunk, replyToMessageId, replyMarkup, replyQuoteText }) => {
|
|
239
|
+
const messageId = await sendTelegramText(params.bot, params.chatId, chunk.html, params.runtime, {
|
|
240
|
+
replyToMessageId,
|
|
241
|
+
replyQuoteMessageId: params.replyQuoteMessageId,
|
|
242
|
+
replyQuoteText,
|
|
243
|
+
replyQuotePosition: params.replyQuotePosition,
|
|
244
|
+
replyQuoteEntities: params.replyQuoteEntities,
|
|
245
|
+
thread: params.thread,
|
|
246
|
+
textMode: "html",
|
|
247
|
+
plainText: chunk.text,
|
|
248
|
+
linkPreview: params.linkPreview,
|
|
249
|
+
silent: params.silent,
|
|
250
|
+
replyMarkup
|
|
251
|
+
});
|
|
252
|
+
if (firstDeliveredMessageId == null) firstDeliveredMessageId = messageId;
|
|
253
|
+
}
|
|
254
|
+
});
|
|
255
|
+
return firstDeliveredMessageId;
|
|
256
|
+
}
|
|
257
|
+
async function sendPendingFollowUpText(params) {
|
|
258
|
+
await sendChunkedTelegramReplyText({
|
|
259
|
+
chunks: filterEmptyTelegramTextChunks(params.chunkText(params.text)),
|
|
260
|
+
progress: params.progress,
|
|
261
|
+
replyToId: params.replyToId,
|
|
262
|
+
replyToMode: params.replyToMode,
|
|
263
|
+
replyMarkup: params.replyMarkup,
|
|
264
|
+
markDelivered,
|
|
265
|
+
sendChunk: async ({ chunk, replyToMessageId, replyMarkup }) => {
|
|
266
|
+
await sendTelegramText(params.bot, params.chatId, chunk.html, params.runtime, {
|
|
267
|
+
replyToMessageId,
|
|
268
|
+
thread: params.thread,
|
|
269
|
+
textMode: "html",
|
|
270
|
+
plainText: chunk.text,
|
|
271
|
+
linkPreview: params.linkPreview,
|
|
272
|
+
silent: params.silent,
|
|
273
|
+
replyMarkup
|
|
274
|
+
});
|
|
275
|
+
}
|
|
276
|
+
});
|
|
277
|
+
}
|
|
278
|
+
function isVoiceMessagesForbidden(err) {
|
|
279
|
+
if (GrammyErrorCtor$1 && err instanceof GrammyErrorCtor$1) return err.description.includes(VOICE_FORBIDDEN_MARKER);
|
|
280
|
+
return formatErrorMessage(err).includes(VOICE_FORBIDDEN_MARKER);
|
|
281
|
+
}
|
|
282
|
+
function isCaptionTooLong(err) {
|
|
283
|
+
if (GrammyErrorCtor$1 && err instanceof GrammyErrorCtor$1) return CAPTION_TOO_LONG_RE.test(err.description);
|
|
284
|
+
return CAPTION_TOO_LONG_RE.test(formatErrorMessage(err));
|
|
285
|
+
}
|
|
286
|
+
function resolveVoiceFallbackText(reply) {
|
|
287
|
+
if (reply.text?.trim()) return reply.text;
|
|
288
|
+
if (reply.spokenText?.trim()) return reply.spokenText;
|
|
289
|
+
}
|
|
290
|
+
async function sendTelegramVoiceFallbackText(opts) {
|
|
291
|
+
let firstDeliveredMessageId;
|
|
292
|
+
const chunks = filterEmptyTelegramTextChunks(opts.chunkText(opts.text));
|
|
293
|
+
let appliedReplyTo = false;
|
|
294
|
+
for (let i = 0; i < chunks.length; i += 1) {
|
|
295
|
+
const chunk = chunks[i];
|
|
296
|
+
const replyToForChunk = !appliedReplyTo ? opts.replyToId : void 0;
|
|
297
|
+
const applyQuoteForChunk = !appliedReplyTo;
|
|
298
|
+
const messageId = await sendTelegramText(opts.bot, opts.chatId, chunk.html, opts.runtime, {
|
|
299
|
+
replyToMessageId: replyToForChunk,
|
|
300
|
+
replyQuoteMessageId: applyQuoteForChunk ? opts.replyQuoteMessageId : void 0,
|
|
301
|
+
replyQuoteText: applyQuoteForChunk ? opts.replyQuoteText : void 0,
|
|
302
|
+
replyQuotePosition: applyQuoteForChunk ? opts.replyQuotePosition : void 0,
|
|
303
|
+
replyQuoteEntities: applyQuoteForChunk ? opts.replyQuoteEntities : void 0,
|
|
304
|
+
thread: opts.thread,
|
|
305
|
+
textMode: "html",
|
|
306
|
+
plainText: chunk.text,
|
|
307
|
+
linkPreview: opts.linkPreview,
|
|
308
|
+
silent: opts.silent,
|
|
309
|
+
replyMarkup: !appliedReplyTo ? opts.replyMarkup : void 0
|
|
310
|
+
});
|
|
311
|
+
if (firstDeliveredMessageId == null) firstDeliveredMessageId = messageId;
|
|
312
|
+
if (replyToForChunk) appliedReplyTo = true;
|
|
313
|
+
}
|
|
314
|
+
return firstDeliveredMessageId;
|
|
315
|
+
}
|
|
316
|
+
async function deliverMediaReply(params) {
|
|
317
|
+
let firstDeliveredMessageId;
|
|
318
|
+
let visibleFallbackText;
|
|
319
|
+
let first = true;
|
|
320
|
+
let pendingFollowUpText;
|
|
321
|
+
for (const mediaUrl of params.mediaList) {
|
|
322
|
+
const isFirstMedia = first;
|
|
323
|
+
const media = await params.mediaLoader(mediaUrl, buildOutboundMediaLoadOptions({
|
|
324
|
+
mediaLocalRoots: params.mediaLocalRoots,
|
|
325
|
+
maxBytes: params.mediaMaxBytes
|
|
326
|
+
}));
|
|
327
|
+
const kind = kindFromMime(media.contentType ?? void 0);
|
|
328
|
+
const isGif = isGifMedia({
|
|
329
|
+
contentType: media.contentType,
|
|
330
|
+
fileName: media.fileName
|
|
331
|
+
});
|
|
332
|
+
const fileName = media.fileName ?? (isGif ? "animation.gif" : "file");
|
|
333
|
+
const file = new InputFile(media.buffer, fileName);
|
|
334
|
+
const { caption, followUpText } = splitTelegramCaption(isFirstMedia ? params.reply.text ?? void 0 : void 0);
|
|
335
|
+
const htmlCaption = caption ? renderTelegramHtmlText(caption, { tableMode: params.tableMode }) : void 0;
|
|
336
|
+
if (followUpText) pendingFollowUpText = followUpText;
|
|
337
|
+
first = false;
|
|
338
|
+
const replyToMessageId = resolveReplyToForSend({
|
|
339
|
+
replyToId: params.replyToId,
|
|
340
|
+
replyToMode: params.replyToMode,
|
|
341
|
+
progress: params.progress
|
|
342
|
+
});
|
|
343
|
+
const shouldAttachButtonsToMedia = isFirstMedia && params.replyMarkup && !followUpText;
|
|
344
|
+
const videoDimensions = kind === "video" ? await probeVideoDimensions(media.buffer) : void 0;
|
|
345
|
+
const mediaParams = {
|
|
346
|
+
caption: htmlCaption,
|
|
347
|
+
...htmlCaption ? { parse_mode: "HTML" } : {},
|
|
348
|
+
...shouldAttachButtonsToMedia ? { reply_markup: params.replyMarkup } : {},
|
|
349
|
+
...videoDimensions ? {
|
|
350
|
+
width: videoDimensions.width,
|
|
351
|
+
height: videoDimensions.height
|
|
352
|
+
} : {},
|
|
353
|
+
...buildTelegramSendParams({
|
|
354
|
+
replyToMessageId,
|
|
355
|
+
replyQuoteMessageId: params.replyQuoteMessageId,
|
|
356
|
+
replyQuoteText: params.replyQuoteText,
|
|
357
|
+
replyQuotePosition: params.replyQuotePosition,
|
|
358
|
+
replyQuoteEntities: params.replyQuoteEntities,
|
|
359
|
+
thread: params.thread,
|
|
360
|
+
silent: params.silent
|
|
361
|
+
})
|
|
362
|
+
};
|
|
363
|
+
if (isGif) {
|
|
364
|
+
const result = await sendTelegramWithThreadFallback({
|
|
365
|
+
operation: "sendAnimation",
|
|
366
|
+
runtime: params.runtime,
|
|
367
|
+
thread: params.thread,
|
|
368
|
+
requestParams: mediaParams,
|
|
369
|
+
send: (effectiveParams) => params.bot.api.sendAnimation(params.chatId, file, { ...effectiveParams })
|
|
370
|
+
});
|
|
371
|
+
if (firstDeliveredMessageId == null) firstDeliveredMessageId = result.message_id;
|
|
372
|
+
markDelivered(params.progress);
|
|
373
|
+
} else if (kind === "image") {
|
|
374
|
+
const result = await sendTelegramWithThreadFallback({
|
|
375
|
+
operation: "sendPhoto",
|
|
376
|
+
runtime: params.runtime,
|
|
377
|
+
thread: params.thread,
|
|
378
|
+
requestParams: mediaParams,
|
|
379
|
+
send: (effectiveParams) => params.bot.api.sendPhoto(params.chatId, file, { ...effectiveParams })
|
|
380
|
+
});
|
|
381
|
+
if (firstDeliveredMessageId == null) firstDeliveredMessageId = result.message_id;
|
|
382
|
+
markDelivered(params.progress);
|
|
383
|
+
} else if (kind === "video") {
|
|
384
|
+
const result = await sendTelegramWithThreadFallback({
|
|
385
|
+
operation: "sendVideo",
|
|
386
|
+
runtime: params.runtime,
|
|
387
|
+
thread: params.thread,
|
|
388
|
+
requestParams: mediaParams,
|
|
389
|
+
send: (effectiveParams) => params.bot.api.sendVideo(params.chatId, file, { ...effectiveParams })
|
|
390
|
+
});
|
|
391
|
+
if (firstDeliveredMessageId == null) firstDeliveredMessageId = result.message_id;
|
|
392
|
+
markDelivered(params.progress);
|
|
393
|
+
} else if (kind === "audio") {
|
|
394
|
+
const { useVoice } = resolveTelegramVoiceSend({
|
|
395
|
+
wantsVoice: params.reply.audioAsVoice === true,
|
|
396
|
+
contentType: media.contentType,
|
|
397
|
+
fileName,
|
|
398
|
+
logFallback: logVerbose
|
|
399
|
+
});
|
|
400
|
+
if (useVoice) {
|
|
401
|
+
const sendVoiceMedia = async (requestParams, shouldLog) => {
|
|
402
|
+
const result = await sendTelegramWithThreadFallback({
|
|
403
|
+
operation: "sendVoice",
|
|
404
|
+
runtime: params.runtime,
|
|
405
|
+
thread: params.thread,
|
|
406
|
+
requestParams,
|
|
407
|
+
shouldLog,
|
|
408
|
+
send: (effectiveParams) => params.bot.api.sendVoice(params.chatId, file, { ...effectiveParams })
|
|
409
|
+
});
|
|
410
|
+
if (firstDeliveredMessageId == null) firstDeliveredMessageId = result.message_id;
|
|
411
|
+
markDelivered(params.progress);
|
|
412
|
+
};
|
|
413
|
+
await params.onVoiceRecording?.();
|
|
414
|
+
try {
|
|
415
|
+
await sendVoiceMedia(mediaParams, (err) => !isVoiceMessagesForbidden(err));
|
|
416
|
+
} catch (voiceErr) {
|
|
417
|
+
if (isVoiceMessagesForbidden(voiceErr)) {
|
|
418
|
+
const fallbackText = resolveVoiceFallbackText(params.reply);
|
|
419
|
+
if (!fallbackText || !fallbackText.trim()) throw voiceErr;
|
|
420
|
+
logVerbose("telegram sendVoice forbidden (recipient has voice messages blocked in privacy settings); falling back to text");
|
|
421
|
+
const voiceFallbackReplyTo = resolveReplyToForSend({
|
|
422
|
+
replyToId: params.replyToId,
|
|
423
|
+
replyToMode: params.replyToMode,
|
|
424
|
+
progress: params.progress
|
|
425
|
+
});
|
|
426
|
+
const fallbackMessageId = await sendTelegramVoiceFallbackText({
|
|
427
|
+
bot: params.bot,
|
|
428
|
+
chatId: params.chatId,
|
|
429
|
+
runtime: params.runtime,
|
|
430
|
+
text: fallbackText,
|
|
431
|
+
chunkText: params.chunkText,
|
|
432
|
+
replyToId: voiceFallbackReplyTo,
|
|
433
|
+
replyQuoteMessageId: params.replyQuoteMessageId,
|
|
434
|
+
replyQuotePosition: params.replyQuotePosition,
|
|
435
|
+
replyQuoteEntities: params.replyQuoteEntities,
|
|
436
|
+
thread: params.thread,
|
|
437
|
+
linkPreview: params.linkPreview,
|
|
438
|
+
silent: params.silent,
|
|
439
|
+
replyMarkup: params.replyMarkup,
|
|
440
|
+
replyQuoteText: params.replyQuoteText
|
|
441
|
+
});
|
|
442
|
+
if (firstDeliveredMessageId == null) firstDeliveredMessageId = fallbackMessageId;
|
|
443
|
+
visibleFallbackText = fallbackText;
|
|
444
|
+
markReplyApplied(params.progress, voiceFallbackReplyTo);
|
|
445
|
+
markDelivered(params.progress);
|
|
446
|
+
continue;
|
|
447
|
+
}
|
|
448
|
+
if (isCaptionTooLong(voiceErr)) {
|
|
449
|
+
logVerbose("telegram sendVoice caption too long; resending voice without caption + text separately");
|
|
450
|
+
const noCaptionParams = { ...mediaParams };
|
|
451
|
+
delete noCaptionParams.caption;
|
|
452
|
+
delete noCaptionParams.parse_mode;
|
|
453
|
+
await sendVoiceMedia(noCaptionParams);
|
|
454
|
+
const fallbackText = resolveVoiceFallbackText(params.reply);
|
|
455
|
+
if (fallbackText?.trim()) {
|
|
456
|
+
await sendTelegramVoiceFallbackText({
|
|
457
|
+
bot: params.bot,
|
|
458
|
+
chatId: params.chatId,
|
|
459
|
+
runtime: params.runtime,
|
|
460
|
+
text: fallbackText,
|
|
461
|
+
chunkText: params.chunkText,
|
|
462
|
+
replyToId: void 0,
|
|
463
|
+
thread: params.thread,
|
|
464
|
+
linkPreview: params.linkPreview,
|
|
465
|
+
silent: params.silent,
|
|
466
|
+
replyMarkup: params.replyMarkup
|
|
467
|
+
});
|
|
468
|
+
visibleFallbackText = fallbackText;
|
|
469
|
+
}
|
|
470
|
+
markReplyApplied(params.progress, replyToMessageId);
|
|
471
|
+
continue;
|
|
472
|
+
}
|
|
473
|
+
throw voiceErr;
|
|
474
|
+
}
|
|
475
|
+
} else {
|
|
476
|
+
const result = await sendTelegramWithThreadFallback({
|
|
477
|
+
operation: "sendAudio",
|
|
478
|
+
runtime: params.runtime,
|
|
479
|
+
thread: params.thread,
|
|
480
|
+
requestParams: mediaParams,
|
|
481
|
+
send: (effectiveParams) => params.bot.api.sendAudio(params.chatId, file, { ...effectiveParams })
|
|
482
|
+
});
|
|
483
|
+
if (firstDeliveredMessageId == null) firstDeliveredMessageId = result.message_id;
|
|
484
|
+
markDelivered(params.progress);
|
|
485
|
+
}
|
|
486
|
+
} else {
|
|
487
|
+
const result = await sendTelegramWithThreadFallback({
|
|
488
|
+
operation: "sendDocument",
|
|
489
|
+
runtime: params.runtime,
|
|
490
|
+
thread: params.thread,
|
|
491
|
+
requestParams: mediaParams,
|
|
492
|
+
send: (effectiveParams) => params.bot.api.sendDocument(params.chatId, file, { ...effectiveParams })
|
|
493
|
+
});
|
|
494
|
+
if (firstDeliveredMessageId == null) firstDeliveredMessageId = result.message_id;
|
|
495
|
+
markDelivered(params.progress);
|
|
496
|
+
}
|
|
497
|
+
markReplyApplied(params.progress, replyToMessageId);
|
|
498
|
+
if (pendingFollowUpText && isFirstMedia) {
|
|
499
|
+
await sendPendingFollowUpText({
|
|
500
|
+
bot: params.bot,
|
|
501
|
+
chatId: params.chatId,
|
|
502
|
+
runtime: params.runtime,
|
|
503
|
+
thread: params.thread,
|
|
504
|
+
chunkText: params.chunkText,
|
|
505
|
+
text: pendingFollowUpText,
|
|
506
|
+
replyMarkup: params.replyMarkup,
|
|
507
|
+
linkPreview: params.linkPreview,
|
|
508
|
+
silent: params.silent,
|
|
509
|
+
replyToId: params.replyToId,
|
|
510
|
+
replyToMode: params.replyToMode,
|
|
511
|
+
progress: params.progress
|
|
512
|
+
});
|
|
513
|
+
pendingFollowUpText = void 0;
|
|
514
|
+
}
|
|
515
|
+
}
|
|
516
|
+
return {
|
|
517
|
+
firstDeliveredMessageId,
|
|
518
|
+
visibleFallbackText
|
|
519
|
+
};
|
|
520
|
+
}
|
|
521
|
+
async function maybePinFirstDeliveredMessage(params) {
|
|
522
|
+
if (!(params.pin === true || typeof params.pin === "object" && params.pin.enabled) || typeof params.firstDeliveredMessageId !== "number") return;
|
|
523
|
+
const notify = typeof params.pin === "object" && params.pin.notify === true;
|
|
524
|
+
try {
|
|
525
|
+
await params.bot.api.pinChatMessage(params.chatId, params.firstDeliveredMessageId, { disable_notification: !notify });
|
|
526
|
+
} catch (err) {
|
|
527
|
+
logVerbose(`telegram pinChatMessage failed chat=${params.chatId} message=${params.firstDeliveredMessageId}: ${formatErrorMessage(err)}`);
|
|
528
|
+
}
|
|
529
|
+
}
|
|
530
|
+
function buildTelegramSentHookContext(params) {
|
|
531
|
+
return buildCanonicalSentMessageHookContext({
|
|
532
|
+
to: params.chatId,
|
|
533
|
+
content: params.content,
|
|
534
|
+
success: params.success,
|
|
535
|
+
error: params.error,
|
|
536
|
+
channelId: "telegram",
|
|
537
|
+
accountId: params.accountId,
|
|
538
|
+
conversationId: params.chatId,
|
|
539
|
+
messageId: typeof params.messageId === "number" ? String(params.messageId) : void 0,
|
|
540
|
+
isGroup: params.isGroup,
|
|
541
|
+
groupId: params.groupId
|
|
542
|
+
});
|
|
543
|
+
}
|
|
544
|
+
function emitInternalMessageSentHook(params) {
|
|
545
|
+
if (!params.sessionKeyForInternalHooks) return;
|
|
546
|
+
const canonical = buildTelegramSentHookContext(params);
|
|
547
|
+
fireAndForgetHook(triggerInternalHook(createInternalHookEvent("message", "sent", params.sessionKeyForInternalHooks, toInternalMessageSentContext(canonical))), "telegram: message:sent internal hook failed");
|
|
548
|
+
}
|
|
549
|
+
function emitMessageSentHooks(params) {
|
|
550
|
+
if (!params.enabled && !params.sessionKeyForInternalHooks) return;
|
|
551
|
+
const canonical = buildTelegramSentHookContext(params);
|
|
552
|
+
if (params.enabled) fireAndForgetHook(Promise.resolve(params.hookRunner.runMessageSent(toPluginMessageSentEvent(canonical), toPluginMessageContext(canonical))), "telegram: message_sent plugin hook failed");
|
|
553
|
+
emitInternalMessageSentHook(params);
|
|
554
|
+
}
|
|
555
|
+
function emitTelegramMessageSentHooks(params) {
|
|
556
|
+
const hookRunner = getGlobalHookRunner();
|
|
557
|
+
emitMessageSentHooks({
|
|
558
|
+
...params,
|
|
559
|
+
hookRunner,
|
|
560
|
+
enabled: hookRunner?.hasHooks("message_sent") ?? false
|
|
561
|
+
});
|
|
562
|
+
}
|
|
563
|
+
async function deliverReplies(params) {
|
|
564
|
+
const progress = {
|
|
565
|
+
hasReplied: false,
|
|
566
|
+
hasDelivered: false,
|
|
567
|
+
deliveredCount: 0
|
|
568
|
+
};
|
|
569
|
+
const mediaLoader = params.mediaLoader ?? loadWebMedia;
|
|
570
|
+
const transcriptMirror = params.transcriptMirror;
|
|
571
|
+
const deliveredContents = [];
|
|
572
|
+
const hookRunner = getGlobalHookRunner();
|
|
573
|
+
const hasMessageSendingHooks = hookRunner?.hasHooks("message_sending") ?? false;
|
|
574
|
+
const hasMessageSentHooks = hookRunner?.hasHooks("message_sent") ?? false;
|
|
575
|
+
const chunkText = buildChunkTextResolver({
|
|
576
|
+
textLimit: params.textLimit,
|
|
577
|
+
chunkMode: params.chunkMode ?? "length",
|
|
578
|
+
tableMode: params.tableMode
|
|
579
|
+
});
|
|
580
|
+
const candidateReplies = [];
|
|
581
|
+
for (const reply of params.replies) {
|
|
582
|
+
if (!reply || typeof reply !== "object") {
|
|
583
|
+
params.runtime.error?.(danger("reply missing text/media"));
|
|
584
|
+
continue;
|
|
585
|
+
}
|
|
586
|
+
candidateReplies.push(reply);
|
|
587
|
+
}
|
|
588
|
+
const normalizedReplies = projectOutboundPayloadPlanForDelivery(createOutboundPayloadPlan(candidateReplies, {
|
|
589
|
+
cfg: params.cfg,
|
|
590
|
+
sessionKey: params.policySessionKey ?? params.sessionKeyForInternalHooks,
|
|
591
|
+
surface: "telegram"
|
|
592
|
+
}));
|
|
593
|
+
const originalExactSilentCount = candidateReplies.filter((reply) => typeof reply.text === "string" && reply.text.trim().toUpperCase() === "NO_REPLY").length;
|
|
594
|
+
if (originalExactSilentCount > 0) silentReplyLogger.debug("telegram delivery normalized NO_REPLY candidates", {
|
|
595
|
+
hasSessionKey: Boolean(params.sessionKeyForInternalHooks),
|
|
596
|
+
hasChatId: params.chatId.length > 0,
|
|
597
|
+
originalCount: candidateReplies.length,
|
|
598
|
+
normalizedCount: normalizedReplies.length,
|
|
599
|
+
originalExactSilentCount
|
|
600
|
+
});
|
|
601
|
+
for (const originalReply of normalizedReplies) {
|
|
602
|
+
let reply = originalReply;
|
|
603
|
+
const mediaList = reply?.mediaUrls?.length ? reply.mediaUrls : reply?.mediaUrl ? [reply.mediaUrl] : [];
|
|
604
|
+
const hasMedia = mediaList.length > 0;
|
|
605
|
+
const presentation = normalizeMessagePresentation(reply?.presentation);
|
|
606
|
+
const interactive = reply?.interactive;
|
|
607
|
+
const resolvedReplyText = resolveTelegramInteractiveTextFallback({
|
|
608
|
+
text: reply?.text,
|
|
609
|
+
interactive,
|
|
610
|
+
presentation
|
|
611
|
+
}) ?? reply?.text ?? "";
|
|
612
|
+
if (reply && resolvedReplyText !== (reply.text ?? "")) reply = {
|
|
613
|
+
...reply,
|
|
614
|
+
text: resolvedReplyText
|
|
615
|
+
};
|
|
616
|
+
if (!resolvedReplyText && !hasMedia) {
|
|
617
|
+
if (reply?.audioAsVoice) {
|
|
618
|
+
logVerbose("telegram reply has audioAsVoice without media/text; skipping");
|
|
619
|
+
continue;
|
|
620
|
+
}
|
|
621
|
+
params.runtime.error?.(danger("reply missing text/media"));
|
|
622
|
+
continue;
|
|
623
|
+
}
|
|
624
|
+
const rawContent = resolvedReplyText;
|
|
625
|
+
const spokenHookContent = !rawContent && reply.audioAsVoice === true && reply.spokenText?.trim() ? reply.spokenText : void 0;
|
|
626
|
+
const hookContent = spokenHookContent ?? rawContent;
|
|
627
|
+
const replyToId = params.replyToMode === "off" ? void 0 : resolveTelegramReplyId(reply.replyToId);
|
|
628
|
+
const replyQuote = resolveReplyQuoteForSend({
|
|
629
|
+
replyToId,
|
|
630
|
+
replyQuoteByMessageId: params.replyQuoteByMessageId,
|
|
631
|
+
replyQuoteMessageId: params.replyQuoteMessageId,
|
|
632
|
+
replyQuoteText: params.replyQuoteText,
|
|
633
|
+
replyQuotePosition: params.replyQuotePosition,
|
|
634
|
+
replyQuoteEntities: params.replyQuoteEntities
|
|
635
|
+
});
|
|
636
|
+
if (hasMessageSendingHooks) {
|
|
637
|
+
const hookResult = await hookRunner?.runMessageSending({
|
|
638
|
+
to: params.chatId,
|
|
639
|
+
content: hookContent,
|
|
640
|
+
replyToId,
|
|
641
|
+
threadId: params.thread?.id,
|
|
642
|
+
metadata: {
|
|
643
|
+
channel: "telegram",
|
|
644
|
+
mediaUrls: mediaList,
|
|
645
|
+
threadId: params.thread?.id
|
|
646
|
+
}
|
|
647
|
+
}, {
|
|
648
|
+
channelId: "telegram",
|
|
649
|
+
accountId: params.accountId,
|
|
650
|
+
conversationId: params.chatId
|
|
651
|
+
});
|
|
652
|
+
if (hookResult?.cancel) continue;
|
|
653
|
+
if (typeof hookResult?.content === "string" && hookResult.content !== hookContent) reply = spokenHookContent ? {
|
|
654
|
+
...reply,
|
|
655
|
+
spokenText: hookResult.content
|
|
656
|
+
} : {
|
|
657
|
+
...reply,
|
|
658
|
+
text: hookResult.content
|
|
659
|
+
};
|
|
660
|
+
}
|
|
661
|
+
let contentForSentHook = reply.text || (reply.audioAsVoice === true ? resolveVoiceFallbackText(reply) : "") || "";
|
|
662
|
+
try {
|
|
663
|
+
const deliveredCountBeforeReply = progress.deliveredCount;
|
|
664
|
+
const telegramData = reply.channelData?.telegram;
|
|
665
|
+
const replyMarkup = buildInlineKeyboard(resolveTelegramInlineButtons({
|
|
666
|
+
buttons: telegramData?.buttons,
|
|
667
|
+
presentation,
|
|
668
|
+
interactive
|
|
669
|
+
}));
|
|
670
|
+
let firstDeliveredMessageId;
|
|
671
|
+
if (mediaList.length === 0) firstDeliveredMessageId = await deliverTextReply({
|
|
672
|
+
bot: params.bot,
|
|
673
|
+
chatId: params.chatId,
|
|
674
|
+
runtime: params.runtime,
|
|
675
|
+
thread: params.thread,
|
|
676
|
+
chunkText,
|
|
677
|
+
replyText: reply.text || "",
|
|
678
|
+
replyMarkup,
|
|
679
|
+
replyQuoteMessageId: replyQuote.messageId,
|
|
680
|
+
replyQuoteText: replyQuote.text,
|
|
681
|
+
replyQuotePosition: replyQuote.position,
|
|
682
|
+
replyQuoteEntities: replyQuote.entities,
|
|
683
|
+
linkPreview: params.linkPreview,
|
|
684
|
+
silent: params.silent,
|
|
685
|
+
replyToId,
|
|
686
|
+
replyToMode: params.replyToMode,
|
|
687
|
+
progress
|
|
688
|
+
});
|
|
689
|
+
else {
|
|
690
|
+
const mediaDelivery = await deliverMediaReply({
|
|
691
|
+
reply,
|
|
692
|
+
mediaList,
|
|
693
|
+
bot: params.bot,
|
|
694
|
+
chatId: params.chatId,
|
|
695
|
+
runtime: params.runtime,
|
|
696
|
+
thread: params.thread,
|
|
697
|
+
tableMode: params.tableMode,
|
|
698
|
+
mediaLocalRoots: params.mediaLocalRoots,
|
|
699
|
+
mediaMaxBytes: params.mediaMaxBytes,
|
|
700
|
+
chunkText,
|
|
701
|
+
mediaLoader,
|
|
702
|
+
onVoiceRecording: params.onVoiceRecording,
|
|
703
|
+
linkPreview: params.linkPreview,
|
|
704
|
+
silent: params.silent,
|
|
705
|
+
replyQuoteMessageId: replyQuote.messageId,
|
|
706
|
+
replyQuoteText: replyQuote.text,
|
|
707
|
+
replyQuotePosition: replyQuote.position,
|
|
708
|
+
replyQuoteEntities: replyQuote.entities,
|
|
709
|
+
replyMarkup,
|
|
710
|
+
replyToId,
|
|
711
|
+
replyToMode: params.replyToMode,
|
|
712
|
+
progress
|
|
713
|
+
});
|
|
714
|
+
firstDeliveredMessageId = mediaDelivery.firstDeliveredMessageId;
|
|
715
|
+
if (mediaDelivery.visibleFallbackText) contentForSentHook = mediaDelivery.visibleFallbackText;
|
|
716
|
+
}
|
|
717
|
+
await maybePinFirstDeliveredMessage({
|
|
718
|
+
pin: reply.delivery?.pin,
|
|
719
|
+
bot: params.bot,
|
|
720
|
+
chatId: params.chatId,
|
|
721
|
+
runtime: params.runtime,
|
|
722
|
+
firstDeliveredMessageId
|
|
723
|
+
});
|
|
724
|
+
if (progress.deliveredCount > deliveredCountBeforeReply && transcriptMirror) deliveredContents.push({
|
|
725
|
+
text: contentForSentHook,
|
|
726
|
+
mediaUrls: mediaList
|
|
727
|
+
});
|
|
728
|
+
emitMessageSentHooks({
|
|
729
|
+
hookRunner,
|
|
730
|
+
enabled: hasMessageSentHooks,
|
|
731
|
+
sessionKeyForInternalHooks: params.sessionKeyForInternalHooks,
|
|
732
|
+
chatId: params.chatId,
|
|
733
|
+
accountId: params.accountId,
|
|
734
|
+
content: contentForSentHook,
|
|
735
|
+
success: progress.deliveredCount > deliveredCountBeforeReply,
|
|
736
|
+
messageId: firstDeliveredMessageId,
|
|
737
|
+
isGroup: params.mirrorIsGroup,
|
|
738
|
+
groupId: params.mirrorGroupId
|
|
739
|
+
});
|
|
740
|
+
} catch (error) {
|
|
741
|
+
emitMessageSentHooks({
|
|
742
|
+
hookRunner,
|
|
743
|
+
enabled: hasMessageSentHooks,
|
|
744
|
+
sessionKeyForInternalHooks: params.sessionKeyForInternalHooks,
|
|
745
|
+
chatId: params.chatId,
|
|
746
|
+
accountId: params.accountId,
|
|
747
|
+
content: contentForSentHook,
|
|
748
|
+
success: false,
|
|
749
|
+
error: formatErrorMessage(error),
|
|
750
|
+
isGroup: params.mirrorIsGroup,
|
|
751
|
+
groupId: params.mirrorGroupId
|
|
752
|
+
});
|
|
753
|
+
throw error;
|
|
754
|
+
}
|
|
755
|
+
}
|
|
756
|
+
if (progress.hasDelivered && transcriptMirror) {
|
|
757
|
+
const text = deliveredContents.map((content) => content.text).filter(Boolean).join("\n\n");
|
|
758
|
+
const mediaUrls = deliveredContents.flatMap((content) => content.mediaUrls);
|
|
759
|
+
if (text || mediaUrls.length > 0) try {
|
|
760
|
+
await transcriptMirror({
|
|
761
|
+
text: text || void 0,
|
|
762
|
+
mediaUrls: mediaUrls.length > 0 ? mediaUrls : void 0
|
|
763
|
+
});
|
|
764
|
+
} catch (mirrorErr) {
|
|
765
|
+
logVerbose(`telegram transcriptMirror failed: ${formatErrorMessage(mirrorErr)}`);
|
|
766
|
+
}
|
|
767
|
+
}
|
|
768
|
+
return { delivered: progress.hasDelivered };
|
|
769
|
+
}
|
|
770
|
+
//#endregion
|
|
771
|
+
//#region extensions/telegram/src/bot/delivery.resolve-media.ts
|
|
772
|
+
const FILE_TOO_BIG_RE = /file is too big/i;
|
|
773
|
+
const GrammyErrorCtor = typeof GrammyError === "function" ? GrammyError : void 0;
|
|
774
|
+
function buildTelegramMediaSsrfPolicy(apiRoot, dangerouslyAllowPrivateNetwork) {
|
|
775
|
+
const hostnames = ["api.telegram.org"];
|
|
776
|
+
let allowedHostnames;
|
|
777
|
+
if (apiRoot) try {
|
|
778
|
+
const customHost = new URL(apiRoot).hostname;
|
|
779
|
+
if (customHost && !hostnames.includes(customHost)) {
|
|
780
|
+
hostnames.push(customHost);
|
|
781
|
+
allowedHostnames = [customHost];
|
|
782
|
+
}
|
|
783
|
+
} catch (err) {
|
|
784
|
+
logVerbose(`telegram: invalid apiRoot URL "${apiRoot}": ${String(err)}`);
|
|
785
|
+
}
|
|
786
|
+
return {
|
|
787
|
+
hostnameAllowlist: hostnames,
|
|
788
|
+
...allowedHostnames ? { allowedHostnames } : {},
|
|
789
|
+
...dangerouslyAllowPrivateNetwork ? { allowPrivateNetwork: true } : {},
|
|
790
|
+
allowRfc2544BenchmarkRange: true
|
|
791
|
+
};
|
|
792
|
+
}
|
|
793
|
+
/**
|
|
794
|
+
* Returns true if the error is Telegram's "file is too big" error.
|
|
795
|
+
* This happens when trying to download files >20MB via the Bot API.
|
|
796
|
+
* Unlike network errors, this is a permanent error and should not be retried.
|
|
797
|
+
*/
|
|
798
|
+
function isFileTooBigError(err) {
|
|
799
|
+
if (GrammyErrorCtor && err instanceof GrammyErrorCtor) return FILE_TOO_BIG_RE.test(err.description);
|
|
800
|
+
return FILE_TOO_BIG_RE.test(formatErrorMessage(err));
|
|
801
|
+
}
|
|
802
|
+
/**
|
|
803
|
+
* Returns true if the error is a transient network error that should be retried.
|
|
804
|
+
* Returns false for permanent errors like "file is too big" (400 Bad Request).
|
|
805
|
+
*/
|
|
806
|
+
function isRetryableGetFileError(err) {
|
|
807
|
+
if (isFileTooBigError(err)) return false;
|
|
808
|
+
return true;
|
|
809
|
+
}
|
|
810
|
+
function resolveMediaMetadata(msg) {
|
|
811
|
+
return {
|
|
812
|
+
fileRef: msg.photo?.[msg.photo.length - 1] ?? msg.video ?? msg.video_note ?? msg.document ?? msg.audio ?? msg.voice,
|
|
813
|
+
fileName: msg.document?.file_name ?? msg.audio?.file_name ?? msg.video?.file_name ?? msg.animation?.file_name,
|
|
814
|
+
mimeType: msg.audio?.mime_type ?? msg.voice?.mime_type ?? msg.video?.mime_type ?? msg.document?.mime_type ?? msg.animation?.mime_type
|
|
815
|
+
};
|
|
816
|
+
}
|
|
817
|
+
async function resolveTelegramFileWithRetry(ctx) {
|
|
818
|
+
try {
|
|
819
|
+
return await retryAsync(() => ctx.getFile(), {
|
|
820
|
+
attempts: 3,
|
|
821
|
+
minDelayMs: 1e3,
|
|
822
|
+
maxDelayMs: 4e3,
|
|
823
|
+
jitter: .2,
|
|
824
|
+
label: "telegram:getFile",
|
|
825
|
+
shouldRetry: isRetryableGetFileError,
|
|
826
|
+
onRetry: ({ attempt, maxAttempts }) => logVerbose(`telegram: getFile retry ${attempt}/${maxAttempts}`)
|
|
827
|
+
});
|
|
828
|
+
} catch (err) {
|
|
829
|
+
if (isFileTooBigError(err)) {
|
|
830
|
+
logVerbose(warn("telegram: getFile failed - file exceeds Telegram Bot API 20MB limit; skipping attachment"));
|
|
831
|
+
return null;
|
|
832
|
+
}
|
|
833
|
+
logVerbose(`telegram: getFile failed after retries: ${String(err)}`);
|
|
834
|
+
return null;
|
|
835
|
+
}
|
|
836
|
+
}
|
|
837
|
+
function resolveRequiredTelegramTransport(transport) {
|
|
838
|
+
if (transport) return transport;
|
|
839
|
+
const resolvedFetch = globalThis.fetch;
|
|
840
|
+
if (!resolvedFetch) throw new Error("fetch is not available; set channels.telegram.proxy in config");
|
|
841
|
+
return {
|
|
842
|
+
fetch: resolvedFetch,
|
|
843
|
+
sourceFetch: resolvedFetch,
|
|
844
|
+
close: async () => {}
|
|
845
|
+
};
|
|
846
|
+
}
|
|
847
|
+
/** Default idle timeout for Telegram media downloads (30 seconds). */
|
|
848
|
+
const TELEGRAM_DOWNLOAD_IDLE_TIMEOUT_MS = 3e4;
|
|
849
|
+
function usesTrustedTelegramExplicitProxy(transport) {
|
|
850
|
+
return transport.dispatcherAttempts?.some((attempt) => attempt.dispatcherPolicy?.mode === "explicit-proxy") ?? false;
|
|
851
|
+
}
|
|
852
|
+
function resolveTrustedLocalTelegramRoot(filePath, trustedLocalFileRoots) {
|
|
853
|
+
if (!path.isAbsolute(filePath)) return null;
|
|
854
|
+
for (const rootDir of trustedLocalFileRoots ?? []) {
|
|
855
|
+
const relativePath = path.relative(rootDir, filePath);
|
|
856
|
+
if (relativePath === "" || relativePath === ".." || relativePath.startsWith(`..${path.sep}`) || path.isAbsolute(relativePath)) continue;
|
|
857
|
+
return {
|
|
858
|
+
rootDir,
|
|
859
|
+
relativePath
|
|
860
|
+
};
|
|
861
|
+
}
|
|
862
|
+
return null;
|
|
863
|
+
}
|
|
864
|
+
async function downloadAndSaveTelegramFile(params) {
|
|
865
|
+
const trustedLocalFile = resolveTrustedLocalTelegramRoot(params.filePath, params.trustedLocalFileRoots);
|
|
866
|
+
if (trustedLocalFile) {
|
|
867
|
+
let localFile;
|
|
868
|
+
try {
|
|
869
|
+
localFile = await (await root(trustedLocalFile.rootDir)).read(trustedLocalFile.relativePath, { maxBytes: params.maxBytes });
|
|
870
|
+
} catch (err) {
|
|
871
|
+
throw new MediaFetchError("fetch_failed", `Failed to read local Telegram Bot API media from ${params.filePath}: ${formatErrorMessage(err)}`, { cause: err });
|
|
872
|
+
}
|
|
873
|
+
return await saveMediaBuffer(localFile.buffer, params.mimeType, "inbound", params.maxBytes, params.telegramFileName ?? path.basename(localFile.realPath));
|
|
874
|
+
}
|
|
875
|
+
if (path.isAbsolute(params.filePath)) throw new MediaFetchError("fetch_failed", `Telegram Bot API returned absolute file path ${params.filePath} outside trustedLocalFileRoots`);
|
|
876
|
+
const transport = resolveRequiredTelegramTransport(params.transport);
|
|
877
|
+
return await saveRemoteMedia({
|
|
878
|
+
url: `${resolveTelegramApiBase(params.apiRoot)}/file/bot${params.token}/${params.filePath}`,
|
|
879
|
+
fetchImpl: transport.sourceFetch,
|
|
880
|
+
dispatcherAttempts: transport.dispatcherAttempts,
|
|
881
|
+
trustExplicitProxyDns: usesTrustedTelegramExplicitProxy(transport),
|
|
882
|
+
shouldRetryFetchError: shouldRetryTelegramTransportFallback,
|
|
883
|
+
retry: {
|
|
884
|
+
attempts: 3,
|
|
885
|
+
minDelayMs: 1e3,
|
|
886
|
+
maxDelayMs: 4e3,
|
|
887
|
+
jitter: .2,
|
|
888
|
+
label: "telegram:media-download",
|
|
889
|
+
onRetry: ({ attempt, maxAttempts }) => logVerbose(`telegram: media download retry ${attempt}/${maxAttempts}`)
|
|
890
|
+
},
|
|
891
|
+
filePathHint: params.filePath,
|
|
892
|
+
maxBytes: params.maxBytes,
|
|
893
|
+
readIdleTimeoutMs: TELEGRAM_DOWNLOAD_IDLE_TIMEOUT_MS,
|
|
894
|
+
ssrfPolicy: buildTelegramMediaSsrfPolicy(params.apiRoot, params.dangerouslyAllowPrivateNetwork),
|
|
895
|
+
fallbackContentType: params.mimeType,
|
|
896
|
+
originalFilename: params.telegramFileName
|
|
897
|
+
});
|
|
898
|
+
}
|
|
899
|
+
async function resolveStickerMedia(params) {
|
|
900
|
+
const { msg, ctx, maxBytes, token, transport } = params;
|
|
901
|
+
if (!msg.sticker) return;
|
|
902
|
+
const sticker = msg.sticker;
|
|
903
|
+
if (sticker.is_animated || sticker.is_video) {
|
|
904
|
+
logVerbose("telegram: skipping animated/video sticker (only static stickers supported)");
|
|
905
|
+
return null;
|
|
906
|
+
}
|
|
907
|
+
if (!sticker.file_id) return null;
|
|
908
|
+
try {
|
|
909
|
+
const file = await resolveTelegramFileWithRetry(ctx);
|
|
910
|
+
if (!file?.file_path) {
|
|
911
|
+
logVerbose("telegram: getFile returned no file_path for sticker");
|
|
912
|
+
return null;
|
|
913
|
+
}
|
|
914
|
+
const saved = await downloadAndSaveTelegramFile({
|
|
915
|
+
filePath: file.file_path,
|
|
916
|
+
token,
|
|
917
|
+
transport,
|
|
918
|
+
maxBytes,
|
|
919
|
+
apiRoot: params.apiRoot,
|
|
920
|
+
trustedLocalFileRoots: params.trustedLocalFileRoots,
|
|
921
|
+
dangerouslyAllowPrivateNetwork: params.dangerouslyAllowPrivateNetwork
|
|
922
|
+
});
|
|
923
|
+
const cached = sticker.file_unique_id ? getCachedSticker(sticker.file_unique_id) : null;
|
|
924
|
+
if (cached) {
|
|
925
|
+
logVerbose(`telegram: sticker cache hit for ${sticker.file_unique_id}`);
|
|
926
|
+
const fileId = sticker.file_id ?? cached.fileId;
|
|
927
|
+
const emoji = sticker.emoji ?? cached.emoji;
|
|
928
|
+
const setName = sticker.set_name ?? cached.setName;
|
|
929
|
+
if (fileId !== cached.fileId || emoji !== cached.emoji || setName !== cached.setName) cacheSticker({
|
|
930
|
+
...cached,
|
|
931
|
+
fileId,
|
|
932
|
+
emoji,
|
|
933
|
+
setName
|
|
934
|
+
});
|
|
935
|
+
return {
|
|
936
|
+
path: saved.path,
|
|
937
|
+
contentType: saved.contentType,
|
|
938
|
+
placeholder: "<media:sticker>",
|
|
939
|
+
stickerMetadata: {
|
|
940
|
+
emoji,
|
|
941
|
+
setName,
|
|
942
|
+
fileId,
|
|
943
|
+
fileUniqueId: sticker.file_unique_id,
|
|
944
|
+
cachedDescription: cached.description
|
|
945
|
+
}
|
|
946
|
+
};
|
|
947
|
+
}
|
|
948
|
+
return {
|
|
949
|
+
path: saved.path,
|
|
950
|
+
contentType: saved.contentType,
|
|
951
|
+
placeholder: "<media:sticker>",
|
|
952
|
+
stickerMetadata: {
|
|
953
|
+
emoji: sticker.emoji ?? void 0,
|
|
954
|
+
setName: sticker.set_name ?? void 0,
|
|
955
|
+
fileId: sticker.file_id,
|
|
956
|
+
fileUniqueId: sticker.file_unique_id
|
|
957
|
+
}
|
|
958
|
+
};
|
|
959
|
+
} catch (err) {
|
|
960
|
+
logVerbose(`telegram: failed to process sticker: ${String(err)}`);
|
|
961
|
+
return null;
|
|
962
|
+
}
|
|
963
|
+
}
|
|
964
|
+
async function resolveMedia(params) {
|
|
965
|
+
const { ctx, maxBytes, token, transport, apiRoot, trustedLocalFileRoots, dangerouslyAllowPrivateNetwork } = params;
|
|
966
|
+
const msg = ctx.message;
|
|
967
|
+
const stickerResolved = await resolveStickerMedia({
|
|
968
|
+
msg,
|
|
969
|
+
ctx,
|
|
970
|
+
maxBytes,
|
|
971
|
+
token,
|
|
972
|
+
transport,
|
|
973
|
+
apiRoot,
|
|
974
|
+
trustedLocalFileRoots,
|
|
975
|
+
dangerouslyAllowPrivateNetwork
|
|
976
|
+
});
|
|
977
|
+
if (stickerResolved !== void 0) return stickerResolved;
|
|
978
|
+
const metadata = resolveMediaMetadata(msg);
|
|
979
|
+
if (!metadata.fileRef?.file_id) return null;
|
|
980
|
+
const file = await resolveTelegramFileWithRetry(ctx);
|
|
981
|
+
if (!file) return null;
|
|
982
|
+
if (!file.file_path) throw new Error("Telegram getFile returned no file_path");
|
|
983
|
+
const saved = await downloadAndSaveTelegramFile({
|
|
984
|
+
filePath: file.file_path,
|
|
985
|
+
token,
|
|
986
|
+
transport,
|
|
987
|
+
maxBytes,
|
|
988
|
+
telegramFileName: metadata.fileName,
|
|
989
|
+
mimeType: metadata.mimeType,
|
|
990
|
+
apiRoot,
|
|
991
|
+
trustedLocalFileRoots,
|
|
992
|
+
dangerouslyAllowPrivateNetwork
|
|
993
|
+
});
|
|
994
|
+
const placeholder = resolveTelegramMediaPlaceholder(msg) ?? "<media:document>";
|
|
995
|
+
return {
|
|
996
|
+
path: saved.path,
|
|
997
|
+
contentType: saved.contentType,
|
|
998
|
+
placeholder
|
|
999
|
+
};
|
|
1000
|
+
}
|
|
1001
|
+
//#endregion
|
|
1002
|
+
export { emitTelegramMessageSentHooks as i, deliverReplies as n, emitInternalMessageSentHook as r, resolveMedia as t };
|