@gaodefa/daocore 2026.5.29 → 2026.5.30
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-DI3P6TIb.js +277 -0
- package/dist/abort.runtime-B6Z7lDEa.js +2 -0
- package/dist/abort.runtime.js +1 -1
- package/dist/account-inspect-BFz7X0TX.js +173 -0
- package/dist/accounts-BoYYrY7x.js +107 -0
- package/dist/accounts-Busq29zW.js +107 -0
- package/dist/accounts-CuvH2tuN.js +119 -0
- package/dist/accounts-DkIcqvf7.js +2 -0
- package/dist/acp-runtime-BA8lzXzf.js +26 -0
- package/dist/acp-spawn-DPz2aX3A.js +2 -0
- package/dist/acp-spawn-DvVCsWYV.js +1275 -0
- package/dist/acp-stateful-target-driver-DcC76aZW.js +89 -0
- package/dist/action-kill-D-dVisIX.js +33 -0
- package/dist/action-runtime-BEiqwxDD.js +469 -0
- package/dist/action-runtime-api-1LzcGjcX.js +2 -0
- package/dist/action-send-c3CnDuPg.js +39 -0
- package/dist/action-spawn-Dj4kwpWs.js +47 -0
- package/dist/actions-qLccmQBc.js +161 -0
- package/dist/actions.runtime-B5vYAgNi.js +5 -0
- package/dist/agent-command-D6Ds198G.js +1367 -0
- package/dist/agent-components.runtime-xquK0B3L.js +10 -0
- package/dist/agent-components.runtime.js +1 -1
- package/dist/agent-harness-runtime-Dq1fCBOM.js +180 -0
- package/dist/agent-harness-task-runtime-DvSEqFkD.js +140 -0
- package/dist/agent-lm5ZYOFy.js +3 -0
- package/dist/agent-runner-execution-Dbh2pDhQ.js +1713 -0
- package/dist/agent-runner-utils-Di3r2T1T.js +266 -0
- package/dist/agent-runner.runtime-BW90EcGW.js +3455 -0
- package/dist/agent-runner.runtime.js +1 -1
- package/dist/agent-runtime-BgIT5Ytc.js +229 -0
- package/dist/agent-via-gateway-DMMS8-hK.js +463 -0
- package/dist/agent-ylolD8-V.js +2 -0
- package/dist/api-BB4vXLtW.js +2 -0
- package/dist/api-CUhM3KNB.js +134 -0
- package/dist/api-CewRHSbT.js +6 -0
- package/dist/api-CfKjNJlW.js +2 -0
- package/dist/api-Rsnqui1u.js +3 -0
- package/dist/api-k7AvxwHr.js +639 -0
- package/dist/apply-DQ4TQNMA.js +54 -0
- package/dist/apply-S_75Py4Y.js +41 -0
- package/dist/approval-handler.runtime-Cthxrstu.js +130 -0
- package/dist/assistant-Cp9pGaBw.js +291 -0
- package/dist/attachment-normalize-5R0bLLOj.js +225 -0
- package/dist/attempt-execution-DuyyZYsU.js +558 -0
- package/dist/attempt-execution.runtime-DF2GPgNh.js +3 -0
- package/dist/attempt-execution.runtime.js +1 -1
- package/dist/attempt-execution.shared-CwdukA3t.js +38 -0
- package/dist/attempt.prompt-helpers-CUqKtIa5.js +475 -0
- package/dist/attempt.tool-run-context-BbN4_BYO.js +2094 -0
- package/dist/binding-routing-C6Ex2Blu.js +113 -0
- package/dist/binding-targets-BqREncSL.js +121 -0
- package/dist/bot-DGMEkaIJ.js +7894 -0
- package/dist/bot-deps-BltYjeMX.js +2 -0
- package/dist/bot-deps-XvGCor9f.js +747 -0
- package/dist/bot-message-context.runtime-kK-xvLV7.js +7 -0
- package/dist/bot-message-context.runtime.js +1 -1
- package/dist/bot-message-context.session.runtime-DpOIJUae.js +12 -0
- package/dist/bot-message-context.session.runtime.js +1 -1
- package/dist/bot-native-commands.delivery.runtime-D49p5Lc1.js +4 -0
- package/dist/bot-native-commands.delivery.runtime.js +1 -1
- package/dist/bot-native-commands.runtime-8XBdSpkQ.js +13 -0
- package/dist/bot-native-commands.runtime.js +1 -1
- package/dist/bridge-server-y_XGduPx.js +113 -0
- package/dist/browser-cli-B2jmmTT3.js +230 -0
- package/dist/browser-cli-actions-input-JQt5ZQcn.js +473 -0
- package/dist/browser-cli-actions-observe-CrfKh6AX.js +81 -0
- package/dist/browser-cli-debug-DQACWlvC.js +137 -0
- package/dist/browser-cli-inspect-DDnxx0Xw.js +104 -0
- package/dist/browser-cli-lEuOnZzs.js +2 -0
- package/dist/browser-cli-manage-DogmwtYt.js +443 -0
- package/dist/browser-cli-resize-BHuV71VZ.js +26 -0
- package/dist/browser-cli-shared-CidShgoF.js +50 -0
- package/dist/browser-cli-state-i8cCGbiQ.js +337 -0
- package/dist/browser-control-auth-CKfXdXWj.js +2 -0
- package/dist/browser-profiles-ATBTvUGh.js +2 -0
- package/dist/browser-runtime-KmCT6FuL.js +384 -0
- package/dist/build-DOOT6f62.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-DwvrwB-g.js +1782 -0
- package/dist/channel-B-wgK1bK.js +481 -0
- package/dist/channel-B1e_k1P0.js +867 -0
- package/dist/channel-BRDfa5tc.js +1777 -0
- package/dist/channel-BVEO1O4p.js +376 -0
- package/dist/channel-BYlO5l1d.js +508 -0
- package/dist/channel-Bl0sPoNx.js +653 -0
- package/dist/channel-C84xtDBy.js +1134 -0
- package/dist/channel-CLgKq4Ds.js +1556 -0
- package/dist/channel-CZT0qxLh.js +1249 -0
- package/dist/channel-CffBHWkb.js +955 -0
- package/dist/channel-D34ZJvVB.js +2126 -0
- package/dist/channel-DcdXLo_W.js +238 -0
- package/dist/channel-DnK5TrXV.js +362 -0
- package/dist/channel-Dzj4RHY2.js +740 -0
- package/dist/channel-OhZzLZCj.js +562 -0
- package/dist/channel-actions.runtime-Cdvhqc9s.js +265 -0
- package/dist/channel-actions.runtime.js +1 -1
- package/dist/channel-core-Dz9I_R4j.js +5 -0
- package/dist/channel-inbound-COGoV_aS.js +80 -0
- package/dist/channel-mP6HCIMr.js +1496 -0
- package/dist/channel-plugin-runtime-C0R46KeG.js +998 -0
- package/dist/channel-quGdgWel.js +808 -0
- package/dist/channel-runtime-FvPQoIF9.js +408 -0
- package/dist/channel.runtime-2vUz3gij.js +109 -0
- package/dist/channel.runtime-BZLDSNuQ.js +254 -0
- package/dist/channel.runtime-Bo5jO0Hj.js +4 -0
- package/dist/channel.runtime-CDgvrjM2.js +652 -0
- package/dist/channel.runtime-COf8SDFn.js +88 -0
- package/dist/channel.runtime-C_C1f8lu.js +733 -0
- package/dist/channel.runtime-CqPbsg8t.js +2528 -0
- package/dist/channel.runtime-DtV85Khx.js +1008 -0
- package/dist/channel.runtime-Spt1ukGW.js +21009 -0
- package/dist/channel.setup-Bc0LUQS1.js +1098 -0
- package/dist/channel.setup-ChTkj2hq.js +343 -0
- package/dist/channel.setup-CpMD9F8i.js +10 -0
- package/dist/chat-mUsjD5YN.js +2666 -0
- package/dist/chrome-u314zcbM.js +1503 -0
- package/dist/cli/run-main.js +5 -5
- package/dist/cli-CJMoqXrc.js +1341 -0
- package/dist/cli-compaction-qGYB7suI.js +347 -0
- package/dist/cli-metadata-BBJFpNU9.js +22 -0
- package/dist/cli-runner-C0kcts0I.js +540 -0
- package/dist/cli-runner-CTm8K6s8.js +2 -0
- package/dist/cli-runner.runtime-C8deL5FL.js +3 -0
- package/dist/cli-runner.runtime-DDAg1D0L.js +4 -0
- package/dist/cli-runner.runtime.js +1 -1
- package/dist/cli-startup-metadata.json +8 -8
- package/dist/client-CPxpgs4m.js +650 -0
- package/dist/client-adapter-CLlqOqfu.js +897 -0
- package/dist/client-factory-R7Rr2jwn.js +9 -0
- package/dist/command-auth-CkQP1buP.js +135 -0
- package/dist/command-handlers-CJEjFyMk.js +1609 -0
- package/dist/command-registry-BDgyOqDw.js +4 -0
- package/dist/command-registry-BVi5Jn1S.js +9 -0
- package/dist/command-registry-core-JCfsVRtz.js +110 -0
- package/dist/command-status.runtime-CM1JLzi6.js +90 -0
- package/dist/command-status.runtime.js +1 -1
- package/dist/commands-acp-C1-I78U6.js +74 -0
- package/dist/commands-compact.runtime-DOsNavwp.js +10 -0
- package/dist/commands-compact.runtime.js +1 -1
- package/dist/commands-handlers.runtime-BD1n2WGw.js +6154 -0
- package/dist/commands-handlers.runtime.js +1 -1
- package/dist/commands-status-DU_UTQz1.js +16 -0
- package/dist/commands-status-DejfTakp.js +3 -0
- package/dist/commands-status.runtime-DejfTakp.js +3 -0
- package/dist/commands-status.runtime.js +1 -1
- package/dist/commands-subagents-control.runtime-D7vo_2Y_.js +3 -0
- package/dist/commands-subagents-control.runtime-DGybTjJ6.js +2 -0
- package/dist/commands-subagents-control.runtime.js +1 -1
- package/dist/commands-system-prompt-BEBXAMea.js +2 -0
- package/dist/commands-system-prompt-gj3oQpQO.js +162 -0
- package/dist/commands.runtime-CgXX70IN.js +176 -0
- package/dist/commands.runtime.js +1 -1
- package/dist/commitments/runtime.js +1 -1
- package/dist/compact-C41XxMDt.js +480 -0
- package/dist/compact-DUVAF9EC.js +1141 -0
- package/dist/compact.runtime-COMRg6s3.js +12 -0
- package/dist/compact.runtime.js +1 -1
- package/dist/completion-cli-CmEYoB9a.js +315 -0
- package/dist/computer-use-BwJHu1QF.js +367 -0
- package/dist/config-ATBTvUGh.js +2 -0
- package/dist/config-DlNgjF8W.js +373 -0
- package/dist/config-mutations-tl_OqI6d.js +159 -0
- package/dist/context-engine-host-compat-BNPAIK9F.js +288 -0
- package/dist/context-engine-host-compat-C69CK7zS.js +2 -0
- package/dist/context-engine-lifecycle-iQ8f5a_-.js +1274 -0
- package/dist/control-auth-vVxyGKxY.js +114 -0
- package/dist/control-service-73nj79EW.js +145 -0
- package/dist/control-ui/assets/agents-DdWIz8Vk.js +1008 -0
- package/dist/control-ui/assets/channel-config-extras-C7ELhuDi.js +2 -0
- package/dist/control-ui/assets/channels-Bsoj-9BS.js +367 -0
- package/dist/control-ui/assets/cron-BRTEw1tT.js +1013 -0
- package/dist/control-ui/assets/debug-EKl_F8_L.js +97 -0
- package/dist/control-ui/assets/index-DSbSO7ys.js +7370 -0
- package/dist/control-ui/assets/instances-B1AoYwI5.js +57 -0
- package/dist/control-ui/assets/logs-BChOznzh.js +74 -0
- package/dist/control-ui/assets/nodes-5yebKh9k.js +436 -0
- package/dist/control-ui/assets/sessions-BlDYNThc.js +399 -0
- package/dist/control-ui/assets/skills-shared-CNFnf7KU.js +11 -0
- package/dist/control-ui/assets/skills-uxTDRmLx.js +314 -0
- package/dist/control-ui/index.html +1 -1
- package/dist/control-ui/sw.js +1 -1
- package/dist/conversation-binding-runtime-CmoTKcY1.js +4 -0
- package/dist/conversation-runtime-BxOHxuin.js +31 -0
- package/dist/core-D0Y2H55f.js +282 -0
- package/dist/core-api-BKlJUtDt.js +5 -0
- package/dist/core-api-_fiftUHn.js +2 -0
- package/dist/crestodian/crestodian.js +1 -1
- package/dist/crestodian/rescue-message.js +1 -1
- package/dist/crestodian-BJifoQiR.js +55 -0
- package/dist/daocore-tools-BMdF8RwK.js +11727 -0
- package/dist/delivery-e2ci_bcX.js +1002 -0
- package/dist/dialogue-BXayGhnz.js +37 -0
- package/dist/dir-fetch-tool-Cara5mZh.js +565 -0
- package/dist/dir-list-tool-CQ8Bo5Ez.js +100 -0
- package/dist/direct-dm-CPk6Qm9D.js +64 -0
- package/dist/directive-handling.fast-lane-BQ9aXqk8.js +68 -0
- package/dist/directive-handling.impl--a5AGurq.js +818 -0
- package/dist/directive-handling.impl-C4JqMwle.js +2 -0
- package/dist/directive-handling.model-selection-pyTYMIXn.js +122 -0
- package/dist/directive-handling.persist.runtime-B7vWT1r9.js +263 -0
- package/dist/directive-handling.persist.runtime.js +1 -1
- package/dist/dispatch-3Ru_eGq1.js +1640 -0
- package/dist/dispatch-acp-transcript.runtime-CYMP-5oE.js +40 -0
- package/dist/dispatch-acp-transcript.runtime.js +1 -1
- package/dist/dispatch-acp.runtime-BVCiklXk.js +18 -0
- package/dist/dispatch-acp.runtime.js +1 -1
- package/dist/doctor-B8mR3Sgr.js +2 -0
- package/dist/doctor-BJ6DuerV.js +6 -0
- package/dist/doctor-config-flow-BdOGs_zn.js +1741 -0
- package/dist/doctor-core-checks-CDf0stz-.js +2 -0
- package/dist/doctor-core-checks-Cpdnu2XI.js +573 -0
- package/dist/doctor-health-0qv_acBu.js +65 -0
- package/dist/doctor-health-contributions-Db1FQgFw.js +696 -0
- package/dist/doctor-lint-C1g4Llgl.js +94 -0
- package/dist/doctor-state-integrity-C8iXFLJ7.js +1231 -0
- package/dist/doctor-update-CsPu6p3d.js +58 -0
- package/dist/dynamic-tools-YQ0z0YKH.js +486 -0
- package/dist/embedded-backend-S0cahIZw.js +579 -0
- package/dist/embedded-gateway-stub.runtime-Cjw12ALm.js +12 -0
- package/dist/embedded-gateway-stub.runtime.js +1 -1
- package/dist/exec-approvals-ArHHjoE-.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-DQpAtjX4.js +124 -0
- package/dist/file-write-tool-CkB0oYwe.js +127 -0
- package/dist/format-DUJUpMFQ.js +1145 -0
- package/dist/gateway-cli-CQo_E4Ka.js +435 -0
- package/dist/gateway-method-runtime-1QPgVJH7.js +21 -0
- package/dist/get-reply-DfUcsC-O.js +4689 -0
- package/dist/get-reply-from-config.runtime-C95MG73O.js +2 -0
- package/dist/get-reply-from-config.runtime.js +1 -1
- package/dist/graph-users-DPJe0fPs.js +1419 -0
- package/dist/group-access-DefaNJ6L.js +112 -0
- package/dist/handle-action.guild-admin-C1sy1kGJ.js +288 -0
- package/dist/harness-BgPRdmNK.js +61 -0
- package/dist/health-DFR9A1YV.js +4 -0
- package/dist/heartbeat-runner-BiYVPs25.js +5 -0
- package/dist/heartbeat-runner.runtime-Bmaq8WUA.js +4 -0
- package/dist/heartbeat-runner.runtime.js +1 -1
- package/dist/hooks-CNJDuJUm.js +534 -0
- package/dist/inbound-direct-dm-runtime-DFt58p71.js +2 -0
- package/dist/inbound-reply-dispatch-kgSDM8ax.js +148 -0
- package/dist/index.js +1 -1
- package/dist/init-B0zO_U4r.js +59 -0
- package/dist/inline-buttons-B6zgQW3J.js +40 -0
- package/dist/internal-events-C3Q5t6hg.js +90 -0
- package/dist/isolated-agent-CaSU5GCJ.js +2 -0
- package/dist/isolated-agent-CnsD2TmP.js +1118 -0
- package/dist/lifecycle-i3WZDaIn.js +571 -0
- package/dist/list.probe-g0rUiVXW.js +449 -0
- package/dist/list.status-command-DG3PrmeO.js +789 -0
- package/dist/llm-slug-generator-CHlf69FU.js +78 -0
- package/dist/llm-slug-generator.js +1 -1
- package/dist/local-dispatch.runtime-CDeHUp_A.js +9 -0
- package/dist/local-dispatch.runtime.js +1 -1
- package/dist/manager.runtime-BlLMPUTq.js +2714 -0
- package/dist/manager.runtime.js +1 -1
- package/dist/markdown-to-line-r_mBHMdy.js +811 -0
- package/dist/mcp-http-C5UPIJGR.js +555 -0
- package/dist/mcp-http-CTy9gpfA.js +2 -0
- package/dist/media-understanding-provider-BT6TOuVa.js +339 -0
- package/dist/message-actions-BdcjjwFt.js +145 -0
- package/dist/message-handler-B29Tj2p2.js +1715 -0
- package/dist/message-handler-BhHb1FHI.js +384 -0
- package/dist/message-handler.preflight-ouZ_-3o8.js +1125 -0
- package/dist/message-handler.process-CrYiBx_F.js +1484 -0
- package/dist/model-CLbtocQX.js +74 -0
- package/dist/model-selection-BG_vU9Kl.js +272 -0
- package/dist/models-4KERn3ya.js +104 -0
- package/dist/models-BCa-ipxi.js +2 -0
- package/dist/models-cli-DtpGXEsf.js +256 -0
- package/dist/monitor-B-egsvmI.js +1657 -0
- package/dist/monitor-BJX9Yv7k.js +2 -0
- package/dist/monitor-BPrIy3pV.js +715 -0
- package/dist/monitor-BWknZZ7N.js +4377 -0
- package/dist/monitor-C3y_PtI1.js +60 -0
- package/dist/monitor-DCzfdqE4.js +1370 -0
- package/dist/monitor-P24epSwE.js +2788 -0
- package/dist/monitor-auth-CEG_xldE.js +179 -0
- package/dist/monitor-jEePJbbS.js +834 -0
- package/dist/monitor-polling.runtime-BzlHK11u.js +883 -0
- package/dist/monitor-polling.runtime.js +1 -1
- package/dist/monitor-webhook.runtime-vFEhk_Zj.js +387 -0
- package/dist/monitor-webhook.runtime.js +1 -1
- package/dist/monitor.account-BUIfgWXg.js +5233 -0
- package/dist/monitor.runtime-Cp7W4fhb.js +2 -0
- package/dist/monitor.runtime.js +1 -1
- package/dist/monitor.webhook-DzrbeR4T.js +180 -0
- package/dist/node-cli-sessions-CLbI14UA.js +1228 -0
- package/dist/openai-http-BM9BIA_g.js +824 -0
- package/dist/openresponses-http-CNoW9kk8.js +1173 -0
- package/dist/operations-DT4bsxV6.js +805 -0
- package/dist/outbound-adapter-CZRUOgY0.js +543 -0
- package/dist/outbound-session-route-DneMsGNx.js +45 -0
- package/dist/outbound.runtime-CHuoKJJI.js +2 -0
- package/dist/outbound.runtime.js +1 -1
- package/dist/pi-embedded-1-rsueO_.js +3796 -0
- package/dist/pi-embedded-BRfDncVO.js +4 -0
- package/dist/pi-embedded.runtime-DEYoa6bW.js +4 -0
- package/dist/pi-embedded.runtime.js +1 -1
- package/dist/pi-tools-C0P3NgP5.js +2413 -0
- package/dist/plan-BQUkjBMY.js +81 -0
- package/dist/plan-CRO9_2_k.js +112 -0
- package/dist/plugin-BJCmWhnh.js +12396 -0
- package/dist/plugin-app-cache-key-CXAg0F7A.js +46 -0
- package/dist/plugin-enabled-D93Z9LSo.js +233 -0
- package/dist/plugin-registration-BBrTcZnf.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-DnZEPBEA.js +1229 -0
- package/dist/plugins/runtime/index.js +4 -4
- package/dist/policy-CMv5QMPG.js +138 -0
- package/dist/policy-CeoP4t9J.js +680 -0
- package/dist/prepare.runtime-DZ55JiTt.js +732 -0
- package/dist/prepare.runtime.js +1 -1
- package/dist/preview-warnings-O08PZRxu.js +392 -0
- package/dist/probe-C6w3bP8X.js +682 -0
- package/dist/probe-Cs1_X1NA.js +47 -0
- package/dist/probe-Cuee_jyM.js +2204 -0
- package/dist/probe-DZxCnDzn.js +2 -0
- package/dist/program-C2dT8VHB.js +131 -0
- package/dist/provider-C2_vSzYh.js +32 -0
- package/dist/provider-DSfTDQbj.js +152 -0
- package/dist/provider-U8hrm9h-.js +32 -0
- package/dist/provider-_v910H8y.js +8735 -0
- package/dist/provider-dispatcher-C3kmmIEC.js +22 -0
- package/dist/provider-dispatcher.runtime.js +1 -1
- package/dist/provider-session.runtime-Mg0fx5hH.js +9 -0
- package/dist/provider-session.runtime.js +1 -1
- package/dist/provider.runtime-pSTXuHrq.js +2 -0
- package/dist/provider.runtime.js +1 -1
- package/dist/public-surface-loader-09t4TTue.js +114 -0
- package/dist/pw-ai-DjNqHV3_.js +3029 -0
- package/dist/pw-role-snapshot-DoGefdv7.js +333 -0
- package/dist/reaction-level-C8Mqxizo.js +19 -0
- package/dist/reaction-runtime-api-DOP6xOsm.js +116 -0
- package/dist/realtime-transcription-provider-BTGEXXna.js +205 -0
- package/dist/register-CbZPpqI3.js +2178 -0
- package/dist/register.agent-DrBFuPKh.js +156 -0
- package/dist/register.crestodian-DwTbmaK8.js +24 -0
- package/dist/register.maintenance-BIeoYBub.js +83 -0
- package/dist/register.runtime-B5V9_Dwz.js +54 -0
- package/dist/register.subclis-CJE9ISZY.js +31 -0
- package/dist/register.subclis-YQsKas8N.js +3 -0
- package/dist/register.subclis-core-CjwdGeGU.js +273 -0
- package/dist/repair-sequencing-C0jrL5pw.js +640 -0
- package/dist/reply-delivery-B28mTIpb.js +196 -0
- package/dist/reply-runtime-BqQX7HHw.js +11 -0
- package/dist/reply.runtime-C95MG73O.js +2 -0
- package/dist/reply.runtime.js +1 -1
- package/dist/request-BqoMvXxH.js +54 -0
- package/dist/resolve-allowlist-hbKKd_kq.js +220 -0
- package/dist/result-fallback-classifier-BrORPoxj.js +79 -0
- package/dist/route-HHRgSzVy.js +469 -0
- package/dist/route-resolution-C7bafjVc.js +274 -0
- package/dist/routes-86XGeo7a.js +2 -0
- package/dist/routes-BhVGr9ie.js +3602 -0
- package/dist/run-Bb5QP5JV.js +1162 -0
- package/dist/run-attempt-CLi0wV7j.js +7704 -0
- package/dist/run-command-Be6GAxiW.js +2 -0
- package/dist/run-command-Ds4hr3iU.js +23 -0
- package/dist/run-embedded.runtime-wX9ORojX.js +4 -0
- package/dist/run-embedded.runtime.js +1 -1
- package/dist/run-execution-cli.runtime-BmNZVB2N.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-Uq5sjftu.js +2 -0
- package/dist/run-subagent-registry.runtime.js +1 -1
- package/dist/runtime-BktLQ75j.js +1287 -0
- package/dist/runtime-C9XdR62_.js +438 -0
- package/dist/runtime-CTvWDPx9.js +6179 -0
- package/dist/runtime-api-BojB3MUw.js +21 -0
- package/dist/runtime-api-C92MlAwp.js +13 -0
- package/dist/runtime-api-CFNZE9Xt.js +13 -0
- package/dist/runtime-api-Cimpgm5_.js +3 -0
- package/dist/runtime-api-D8qG_lUm.js +17 -0
- package/dist/runtime-api-DMDMnQEG.js +4 -0
- package/dist/runtime-api-DupQdIlE.js +24 -0
- package/dist/runtime-api.actions-B8i3elqu.js +3 -0
- package/dist/runtime-api.monitor-BntFzf_M.js +6 -0
- package/dist/runtime-api.send-CPlmi1jc.js +4 -0
- package/dist/runtime-api.threads-D-H_r_Nl.js +2 -0
- package/dist/runtime-channel-BGhTxnXZ.js +150 -0
- package/dist/runtime-channel-CPFxNapZ.js +2 -0
- package/dist/runtime-embedded-pi.runtime-BjnMTurB.js +2 -0
- package/dist/runtime-embedded-pi.runtime.js +1 -1
- package/dist/sanitize-outbound-BMUv1NeS.js +127 -0
- package/dist/sdk-setup-tools-Do3DkQi_.js +8 -0
- package/dist/secrets-B8YVPHhk.js +113 -0
- package/dist/security-audit-7Gg_nL4o.js +122 -0
- package/dist/security-audit-Bk3CREj-.js +118 -0
- package/dist/security-audit.runtime-BmSJrdeq.js +2 -0
- package/dist/security-audit.runtime.js +1 -1
- package/dist/selection-BFGde9-_.js +3 -0
- package/dist/selection-DrLFlbgG.js +16157 -0
- package/dist/send-4dLa-BQo.js +1631 -0
- package/dist/send-CV6gCwYP.js +192 -0
- package/dist/send-aGiK3Efu.js +143 -0
- package/dist/send-dB3CehAN.js +2 -0
- package/dist/send.components-BcG9BlkC.js +2 -0
- package/dist/send.components-rLjDlfYU.js +500 -0
- package/dist/send.runtime-D20k2MSr.js +2 -0
- package/dist/send.runtime.js +1 -1
- package/dist/server-BTRx_U1s.js +73 -0
- package/dist/server-CY0ymhBg.js +24 -0
- package/dist/server-close.runtime.js +1 -1
- package/dist/server-context-BxGT8wbK.js +955 -0
- package/dist/server-context-DYlbhAaT.js +2 -0
- package/dist/server-cron-BB_15lcP.js +2 -0
- package/dist/server-cron-CfyJX_a4.js +2989 -0
- package/dist/server-methods-Ck2ab6TC.js +16494 -0
- package/dist/server-node-events-BdRizF-5.js +596 -0
- package/dist/server-plugin-bootstrap-CPUr8NFE.js +70 -0
- package/dist/server-plugins-__5AxjzH.js +432 -0
- package/dist/server-reload-handlers-BMl9Fx9b.js +714 -0
- package/dist/server-restart-sentinel-D11M_ZsH.js +747 -0
- package/dist/server-restart-sentinel-DGptQ27c.js +2 -0
- package/dist/server-runtime-services-BwtLs-8I.js +2 -0
- package/dist/server-runtime-services-aJydixRu.js +267 -0
- package/dist/server-startup-plugins-m_P3gY4m.js +113 -0
- package/dist/server-startup-post-attach-DuXQ1AXL.js +716 -0
- package/dist/server-ws-runtime-mXmxB1W8.js +349 -0
- package/dist/server.impl-fuV8aKSP.js +2586 -0
- package/dist/service-a8cTFka4.js +1446 -0
- package/dist/session-binding-BIycxo9u.js +2 -0
- package/dist/session-binding-xHwQr9vM.js +219 -0
- package/dist/session-kill-http-DiUZhcoN.js +121 -0
- package/dist/session-reset-service-DkepDoob.js +625 -0
- package/dist/session-route-Ba5u7ecb.js +93 -0
- package/dist/session-status.runtime-Cb1X69Rl.js +2 -0
- package/dist/session-status.runtime.js +1 -1
- package/dist/session-subagent-reactivation.runtime-rbqmto4G.js +2 -0
- package/dist/session-subagent-reactivation.runtime.js +1 -1
- package/dist/session-tab-registry-DSKOoJta.js +521 -0
- package/dist/sessions-history-http-CWP88I_C.js +430 -0
- package/dist/sessions.runtime-1q1OwLn3.js +2 -0
- package/dist/sessions.runtime.js +1 -1
- package/dist/setup-api-DtrOOYeP.js +29 -0
- package/dist/setup-core-DMrJS6LP.js +174 -0
- package/dist/setup-surface-BFPNu1qA.js +405 -0
- package/dist/setup-surface-CedShqhO.js +288 -0
- package/dist/setup-surface-DLOBH1Vf.js +320 -0
- package/dist/setup-surface-MhCeEWSj.js +221 -0
- package/dist/shared-DamL-e8D.js +121 -0
- package/dist/shared-client-B48JoAsz.js +2 -0
- package/dist/shared-client-BoSiDnUo.js +629 -0
- package/dist/side-question-DQoQ_ETb.js +683 -0
- package/dist/skill-tool-dispatch.runtime-CWLloYA8.js +143 -0
- package/dist/skill-tool-dispatch.runtime.js +1 -1
- package/dist/slash-state-DrrWJQfv.js +2166 -0
- package/dist/speech-provider-8Hx1uw41.js +184 -0
- package/dist/src-BbUYOPwU.js +4256 -0
- package/dist/startup-context-opAJAamX.js +313 -0
- package/dist/status-subagents.runtime-DSo7ZK_Z.js +18 -0
- package/dist/status-subagents.runtime.js +1 -1
- package/dist/status-text-AyPuDzrO.js +296 -0
- package/dist/sticker-cache-91Tp8mLP.js +206 -0
- package/dist/sticker-vision.runtime-DjleFXi5.js +17 -0
- package/dist/sticker-vision.runtime.js +1 -1
- package/dist/subagent-announce-delivery-DS_2W9oZ.js +958 -0
- package/dist/subagent-announce-hatA_PZ2.js +354 -0
- package/dist/subagent-control-IyFIvc7T.js +508 -0
- package/dist/subagent-hooks-BCj5eB0Z.js +2 -0
- package/dist/subagent-hooks-BWjTBkox.js +146 -0
- package/dist/subagent-hooks-CdGLK9_3.js +230 -0
- package/dist/subagent-hooks-EH0tBkw9.js +2 -0
- package/dist/subagent-hooks-api-BhYaXQJV.js +23 -0
- package/dist/subagent-hooks-api-uGsV8Xn5.js +22 -0
- package/dist/subagent-hooks-api-wfJFKIPx.js +23 -0
- package/dist/subagent-hooks-l8Xd94dt.js +2 -0
- package/dist/subagent-hooks-m2eHUO_d.js +116 -0
- package/dist/subagent-orphan-recovery-Bq9zvX3L.js +352 -0
- package/dist/subagent-registry-Bcb3zy6b.js +3 -0
- package/dist/subagent-registry-CoZNTFx-.js +2351 -0
- package/dist/subagent-registry.runtime.js +1 -1
- package/dist/subagent-session-cleanup--00EjDLe.js +525 -0
- package/dist/subagent-spawn-ClJJkz3D.js +1164 -0
- package/dist/target-id-BsZLiF3x.js +107 -0
- package/dist/targets-CQMe4AZP.js +44 -0
- package/dist/targets-SmL1AU-H.js +19 -0
- package/dist/targets-Y-roiA47.js +19 -0
- package/dist/task-registry-control.runtime.js +1 -1
- package/dist/telegram/token.js +1 -1
- package/dist/testing-B5hNJDuF.js +267 -0
- package/dist/thread-bindings-BD3eE0kK.js +232 -0
- package/dist/thread-bindings-C9NNiv8K.js +571 -0
- package/dist/thread-bindings-Dl4PN1vZ.js +228 -0
- package/dist/thread-bindings-uK1LLAwy.js +8 -0
- package/dist/thread-bindings.discord-api-BHNEUbnk.js +187 -0
- package/dist/thread-bindings.manager-B0LXiH3F.js +2 -0
- package/dist/thread-bindings.manager-BTlH4XMG.js +536 -0
- package/dist/thread-lifecycle-DG8uyPHd.js +1614 -0
- package/dist/token-BbGCANnE.js +134 -0
- package/dist/tool-actions.runtime-oUUrD8HB.js +534 -0
- package/dist/tool-actions.runtime.js +1 -1
- package/dist/tool-bqg-_vYv.js +139 -0
- package/dist/tool-resolution-CSZsa3kP.js +149 -0
- package/dist/tools-effective-inventory-0CqFp-vq.js +204 -0
- package/dist/tools-invoke-http-DhYHY0Yh.js +67 -0
- package/dist/tools-invoke-shared-CbVJJUj7.js +200 -0
- package/dist/tts-C2qD-ad6.js +66 -0
- package/dist/tui-CzGY254f.js +4709 -0
- package/dist/tui-backend-fzoeoSN0.js +256 -0
- package/dist/tui-cli-B2RWb2gM.js +37 -0
- package/dist/tui-dgS8hdXU.js +2 -0
- package/dist/update-cli-BmiBDf3c.js +3664 -0
- package/dist/update-runner-CM7QVX6u.js +2379 -0
- package/dist/vision-tools-BzoBZnIc.js +1409 -0
- package/dist/web-search-DmfOd66S.js +62 -0
- package/dist/web-search-provider.runtime-3C5-pODD.js +328 -0
- package/dist/web-search-provider.runtime-Doh-Z9We.js +2 -0
- package/dist/web-search-provider.runtime.js +1 -1
- package/dist/xai-oauth-BLvQ43hx.js +479 -0
- package/dist/xai-user-agent-BdMQ_0_O.js +32 -0
- package/package.json +1 -1
- package/dist/abort-DeEb_wKd.js +0 -277
- package/dist/abort.runtime-CoYXQGPK.js +0 -2
- package/dist/account-inspect-D_06-CYS.js +0 -173
- package/dist/accounts-BCTqtj4Y.js +0 -107
- package/dist/accounts-BudLl8P2.js +0 -107
- package/dist/accounts-CUReBDA0.js +0 -2
- package/dist/accounts-PCioSzzr.js +0 -119
- package/dist/acp-runtime-B2t9_BHD.js +0 -26
- package/dist/acp-spawn-0x4Iiu1o.js +0 -2
- package/dist/acp-spawn-B2Ghe0jJ.js +0 -1275
- package/dist/acp-stateful-target-driver-C4VgcSyz.js +0 -89
- package/dist/action-kill-ClYsXEz7.js +0 -33
- package/dist/action-runtime-DrLPkNvU.js +0 -469
- package/dist/action-runtime-api-BqSflr9q.js +0 -2
- package/dist/action-send-CIy9cziD.js +0 -39
- package/dist/action-spawn-BjV6lFnX.js +0 -47
- package/dist/actions-D-QH7wq5.js +0 -161
- package/dist/actions.runtime-hzDtXQGU.js +0 -5
- package/dist/agent-Bb1DTBgv.js +0 -3
- package/dist/agent-Cnqj258q.js +0 -2
- package/dist/agent-command-BRx6ZNgJ.js +0 -1367
- package/dist/agent-components.runtime-D-g6xXJ0.js +0 -10
- package/dist/agent-harness-runtime-dKUQFuOc.js +0 -180
- package/dist/agent-harness-task-runtime-v2crUm3i.js +0 -140
- package/dist/agent-runner-execution-AOzdxvWR.js +0 -1713
- package/dist/agent-runner-utils-Byv50B4Z.js +0 -266
- package/dist/agent-runner.runtime-hhgRE0Z-.js +0 -3455
- package/dist/agent-runtime-BHmh3i0o.js +0 -229
- package/dist/agent-via-gateway-DnCqaK4a.js +0 -463
- package/dist/api-Bzyb8sFU.js +0 -3
- package/dist/api-CIEDFXZs.js +0 -2
- package/dist/api-D_dTQAu8.js +0 -2
- package/dist/api-DilBjZ9Q.js +0 -6
- package/dist/api-E5zoQMmh.js +0 -134
- package/dist/api-OJZug8gQ.js +0 -639
- package/dist/apply-C0eV5T0O.js +0 -41
- package/dist/apply-alsYvxLE.js +0 -54
- package/dist/approval-handler.runtime-C6jqZXSN.js +0 -130
- package/dist/assistant-DDXnAAB5.js +0 -291
- package/dist/attachment-normalize-Cv-_4DWU.js +0 -225
- package/dist/attempt-execution-DECEU59r.js +0 -558
- package/dist/attempt-execution.runtime-kasMxuER.js +0 -3
- package/dist/attempt-execution.shared-ClUxk52p.js +0 -38
- package/dist/attempt.prompt-helpers-Bxlv9VSu.js +0 -475
- package/dist/attempt.tool-run-context-CplQWX6g.js +0 -2094
- package/dist/binding-routing-0Obpp-Ij.js +0 -113
- package/dist/binding-targets-CZHQaZL4.js +0 -121
- package/dist/bot-BPbQ0840.js +0 -7894
- package/dist/bot-deps-Cs1M9USs.js +0 -2
- package/dist/bot-deps-xAcaOtTZ.js +0 -747
- package/dist/bot-message-context.runtime-Bji78Cbn.js +0 -7
- package/dist/bot-message-context.session.runtime-C3dyOIYH.js +0 -12
- package/dist/bot-native-commands.delivery.runtime-WshH99fy.js +0 -4
- package/dist/bot-native-commands.runtime-C1L364gU.js +0 -13
- package/dist/bridge-server-DPlM8_Lk.js +0 -113
- package/dist/browser-cli-DFNQE98N.js +0 -230
- package/dist/browser-cli-Drb5E5--.js +0 -2
- package/dist/browser-cli-actions-input-Dx-1OXmE.js +0 -473
- package/dist/browser-cli-actions-observe-BMDfE7xU.js +0 -81
- package/dist/browser-cli-debug-nu7Ih09g.js +0 -137
- package/dist/browser-cli-inspect-D5X2wohg.js +0 -104
- package/dist/browser-cli-manage-DkzYwph4.js +0 -443
- package/dist/browser-cli-resize-B30Avedl.js +0 -26
- package/dist/browser-cli-shared-cMgQoQzF.js +0 -50
- package/dist/browser-cli-state-CQLDvDy7.js +0 -337
- package/dist/browser-control-auth-D7ArmHUt.js +0 -2
- package/dist/browser-profiles-B39SIZNb.js +0 -2
- package/dist/browser-runtime-DUbSAOOS.js +0 -384
- package/dist/build-D25KqC92.js +0 -257
- package/dist/capability-cli-CuyXrlAB.js +0 -1782
- package/dist/channel-0N3YGMGg.js +0 -1496
- package/dist/channel-1UyKoLyp.js +0 -481
- package/dist/channel-BG87pSEW.js +0 -740
- package/dist/channel-BPGSaZW7.js +0 -1249
- package/dist/channel-BQMPh1J_.js +0 -376
- package/dist/channel-Bd_8V6zn.js +0 -1134
- package/dist/channel-BtBjh_ij.js +0 -362
- package/dist/channel-CpFBlVH6.js +0 -562
- package/dist/channel-CwuTrIrF.js +0 -508
- package/dist/channel-Cxl4sJA-.js +0 -1777
- package/dist/channel-D-VfU4Z2.js +0 -2126
- package/dist/channel-D9q8aYrN.js +0 -867
- package/dist/channel-DKSvVvZh.js +0 -238
- package/dist/channel-DvoFfWLx.js +0 -808
- package/dist/channel-GktTcGHm.js +0 -955
- package/dist/channel-actions.runtime-CKcRA0GW.js +0 -265
- package/dist/channel-core-nm8s1qFZ.js +0 -5
- package/dist/channel-d3t2ESlE.js +0 -653
- package/dist/channel-inbound-DKz40dq-.js +0 -80
- package/dist/channel-plugin-runtime-DKIGZWfW.js +0 -998
- package/dist/channel-runtime-Bh8_GY12.js +0 -408
- package/dist/channel-yQ8jCOb9.js +0 -1556
- package/dist/channel.runtime-BG4mM5cQ.js +0 -652
- package/dist/channel.runtime-BS6PyFFa.js +0 -1008
- package/dist/channel.runtime-CE_xECqN.js +0 -88
- package/dist/channel.runtime-Cd1Sw8U4.js +0 -254
- package/dist/channel.runtime-DIq3XOEe.js +0 -733
- package/dist/channel.runtime-Dy1cx35I.js +0 -21009
- package/dist/channel.runtime-NyIMjLnP.js +0 -109
- package/dist/channel.runtime-Zx5mfE2V.js +0 -4
- package/dist/channel.runtime-rJRibGfN.js +0 -2528
- package/dist/channel.setup--4ACadmF.js +0 -10
- package/dist/channel.setup-DzwqIlo3.js +0 -1098
- package/dist/channel.setup-FKYSJwXR.js +0 -343
- package/dist/chat-CKxSm7r1.js +0 -2666
- package/dist/chrome-rMubJwRG.js +0 -1503
- package/dist/cli-CbTod55I.js +0 -1341
- package/dist/cli-compaction-BbHgjJyW.js +0 -347
- package/dist/cli-metadata-DkOWLC_p.js +0 -22
- package/dist/cli-runner-Cwzv_RKf.js +0 -540
- package/dist/cli-runner-DdnUsgPl.js +0 -2
- package/dist/cli-runner.runtime-BlrSgbEW.js +0 -3
- package/dist/cli-runner.runtime-D8kVfvFH.js +0 -4
- package/dist/client-ClvxsWgL.js +0 -650
- package/dist/client-adapter-CsrIIjK1.js +0 -897
- package/dist/client-factory-DAYClhwm.js +0 -9
- package/dist/command-auth-CCha2ofd.js +0 -135
- package/dist/command-handlers-DCWJzHyB.js +0 -1609
- package/dist/command-registry-BIf61QNz.js +0 -9
- package/dist/command-registry-DJROBy4h.js +0 -4
- package/dist/command-registry-core-BQOWqi6S.js +0 -110
- package/dist/command-status.runtime-D88CUglL.js +0 -90
- package/dist/commands-acp-B-8dHX4Z.js +0 -74
- package/dist/commands-compact.runtime-ComX5mUk.js +0 -10
- package/dist/commands-handlers.runtime-DR3wjXHX.js +0 -6154
- package/dist/commands-status-CDyGrwsI.js +0 -3
- package/dist/commands-status-DV-i_ZIK.js +0 -16
- package/dist/commands-status.runtime-CDyGrwsI.js +0 -3
- package/dist/commands-subagents-control.runtime-B029cXAS.js +0 -3
- package/dist/commands-subagents-control.runtime-DR8Qspe0.js +0 -2
- package/dist/commands-system-prompt-C10ctsG3.js +0 -162
- package/dist/commands-system-prompt-DQlRWwnk.js +0 -2
- package/dist/commands.runtime-BYmIAuN0.js +0 -176
- package/dist/compact-14Ljaaeu.js +0 -480
- package/dist/compact-B--ovdkx.js +0 -1141
- package/dist/compact.runtime-E0Idf2Dq.js +0 -12
- package/dist/completion-cli-DMvvQGSk.js +0 -315
- package/dist/computer-use-CcLwX5SR.js +0 -367
- package/dist/config-B39SIZNb.js +0 -2
- package/dist/config-D4rsGOyV.js +0 -373
- package/dist/config-mutations-CsI3YJu7.js +0 -159
- package/dist/context-engine-host-compat-BZpDFiMJ.js +0 -2
- package/dist/context-engine-host-compat-runUdES5.js +0 -288
- package/dist/context-engine-lifecycle-D6odtNrn.js +0 -1274
- package/dist/control-auth-BPGpPtfz.js +0 -114
- package/dist/control-service-C-OmdPCe.js +0 -145
- package/dist/control-ui/assets/agents-GeyOHPuW.js +0 -1008
- package/dist/control-ui/assets/channel-config-extras-D7en6iUg.js +0 -2
- package/dist/control-ui/assets/channels-DkEyr1w5.js +0 -367
- package/dist/control-ui/assets/cron-C-wThQ1Q.js +0 -1013
- package/dist/control-ui/assets/debug-83AFRtIX.js +0 -97
- package/dist/control-ui/assets/index-CiGEhMOA.js +0 -7370
- package/dist/control-ui/assets/instances-CVl0t-1h.js +0 -57
- package/dist/control-ui/assets/logs-eybVEXxg.js +0 -74
- package/dist/control-ui/assets/nodes-C_A7eoU2.js +0 -436
- package/dist/control-ui/assets/sessions-Cq4Nc69u.js +0 -399
- package/dist/control-ui/assets/skills-ZN6hroIh.js +0 -314
- package/dist/control-ui/assets/skills-shared-DIWGwmdC.js +0 -11
- package/dist/conversation-binding-runtime-C2U1JElL.js +0 -4
- package/dist/conversation-runtime-NmIUd3Zu.js +0 -31
- package/dist/core-DGKJP1dm.js +0 -282
- package/dist/core-api-1fA4sNeC.js +0 -5
- package/dist/core-api-BY822Quq.js +0 -2
- package/dist/crestodian-Bp-NXiBC.js +0 -55
- package/dist/daocore-tools-Defpam0j.js +0 -11727
- package/dist/delivery-CEdVAUGB.js +0 -1002
- package/dist/dialogue-CZ69INPq.js +0 -37
- package/dist/dir-fetch-tool-BCicHhQE.js +0 -565
- package/dist/dir-list-tool-Cv_WktsJ.js +0 -100
- package/dist/direct-dm-Bz89rM8x.js +0 -64
- package/dist/directive-handling.fast-lane-DDnbcc5S.js +0 -68
- package/dist/directive-handling.impl-B0H52Ymr.js +0 -818
- package/dist/directive-handling.impl-CgKpwEW-.js +0 -2
- package/dist/directive-handling.model-selection-_cXAr0vt.js +0 -122
- package/dist/directive-handling.persist.runtime-Dw0mfzXT.js +0 -263
- package/dist/dispatch-C3AeYvyP.js +0 -1640
- package/dist/dispatch-acp-transcript.runtime-CP8pqBwS.js +0 -40
- package/dist/dispatch-acp.runtime-Cdap-AZI.js +0 -18
- package/dist/doctor-BZwVH97p.js +0 -2
- package/dist/doctor-BfkGBii1.js +0 -6
- package/dist/doctor-config-flow-D3JASGDt.js +0 -1741
- package/dist/doctor-core-checks-DH5AIT0Q.js +0 -573
- package/dist/doctor-core-checks-DiNu7VSh.js +0 -2
- package/dist/doctor-health-BDIJ-Nro.js +0 -65
- package/dist/doctor-health-contributions-BgmF7w8X.js +0 -696
- package/dist/doctor-lint-uIxkMUSO.js +0 -94
- package/dist/doctor-state-integrity-ws1b_BGk.js +0 -1231
- package/dist/doctor-update-Cx4CqxaX.js +0 -58
- package/dist/dynamic-tools-DiqOxhJh.js +0 -486
- package/dist/embedded-backend-C634irMl.js +0 -579
- package/dist/embedded-gateway-stub.runtime-CCfrTOeN.js +0 -12
- package/dist/exec-approvals-D85KThSg.js +0 -149
- package/dist/file-fetch-tool-BERaGYCT.js +0 -124
- package/dist/file-write-tool-BjHrMyfe.js +0 -127
- package/dist/format-DE9PuPg1.js +0 -1145
- package/dist/gateway-cli-B5hjhbUy.js +0 -435
- package/dist/gateway-method-runtime-Bu0E9Eki.js +0 -21
- package/dist/get-reply-6PtPz9hv.js +0 -4689
- package/dist/get-reply-from-config.runtime-CwprvhoR.js +0 -2
- package/dist/graph-users-DUp1kgnS.js +0 -1419
- package/dist/group-access-D5GBQ3w6.js +0 -112
- package/dist/handle-action.guild-admin-CA0Y-buD.js +0 -288
- package/dist/harness-B5nOFVfm.js +0 -61
- package/dist/health-D5heIDj3.js +0 -4
- package/dist/heartbeat-runner-BzFkIFHh.js +0 -5
- package/dist/heartbeat-runner.runtime-p6H1_xMV.js +0 -4
- package/dist/hooks-BvTyQ14X.js +0 -534
- package/dist/inbound-direct-dm-runtime-DwiDXi8L.js +0 -2
- package/dist/inbound-reply-dispatch-YoDUOC6C.js +0 -148
- package/dist/init-CPtcV5Xu.js +0 -59
- package/dist/inline-buttons-DeD5d42c.js +0 -40
- package/dist/internal-events-DEb50Sw3.js +0 -90
- package/dist/isolated-agent-CcxFFZ-Z.js +0 -1118
- package/dist/isolated-agent-CpHzq5qr.js +0 -2
- package/dist/lifecycle-DNel-oMe.js +0 -571
- package/dist/list.probe-DCa3N25d.js +0 -449
- package/dist/list.status-command-CyeAJmZW.js +0 -789
- package/dist/llm-slug-generator-CyqTY37Z.js +0 -78
- package/dist/local-dispatch.runtime-nE39kFIP.js +0 -9
- package/dist/manager.runtime-CpAPB8D5.js +0 -2714
- package/dist/markdown-to-line-Ci6TRmoZ.js +0 -811
- package/dist/mcp-http-BR0vmxFL.js +0 -2
- package/dist/mcp-http-C0oniA8h.js +0 -555
- package/dist/media-understanding-provider-BwA0XqC3.js +0 -339
- package/dist/message-actions-C9C_Ngkd.js +0 -145
- package/dist/message-handler-CUUKPC5n.js +0 -384
- package/dist/message-handler-xRTfIXWV.js +0 -1715
- package/dist/message-handler.preflight-Ch2Q7V3M.js +0 -1125
- package/dist/message-handler.process-HM3mK93q.js +0 -1484
- package/dist/model-CB8Ex5xS.js +0 -74
- package/dist/model-selection-2s0Dinux.js +0 -272
- package/dist/models-Cn-6DJ41.js +0 -2
- package/dist/models-CzszJD__.js +0 -104
- package/dist/models-cli-CbhElnA5.js +0 -256
- package/dist/monitor-7aprTsMV.js +0 -715
- package/dist/monitor-BuVhqwDS.js +0 -1370
- package/dist/monitor-C4H_YkgY.js +0 -2
- package/dist/monitor-CPQsMxgv.js +0 -1657
- package/dist/monitor-Ce0V1PiR.js +0 -4377
- package/dist/monitor-D0bcGJWI.js +0 -60
- package/dist/monitor-DEjlJqzh.js +0 -834
- package/dist/monitor-auth-DjJZsjgV.js +0 -179
- package/dist/monitor-ikSYagv3.js +0 -2788
- package/dist/monitor-polling.runtime-D7yEflMM.js +0 -883
- package/dist/monitor-webhook.runtime-CIZt-biI.js +0 -387
- package/dist/monitor.account-C2sMOBCS.js +0 -5233
- package/dist/monitor.runtime-BAi6zmcn.js +0 -2
- package/dist/monitor.webhook-BcjpfRCX.js +0 -180
- package/dist/node-cli-sessions-CIhkJRU4.js +0 -1228
- package/dist/openai-http-Dj21RwSj.js +0 -824
- package/dist/openresponses-http-COnnr1ox.js +0 -1173
- package/dist/operations-H3vUh0lM.js +0 -805
- package/dist/outbound-adapter-WLtWE7wv.js +0 -543
- package/dist/outbound-session-route-CZtd64EH.js +0 -45
- package/dist/outbound.runtime-D98P0sN1.js +0 -2
- package/dist/pi-embedded-BWJzd4mK.js +0 -4
- package/dist/pi-embedded-DeNsSqQQ.js +0 -3796
- package/dist/pi-embedded.runtime-CZnNwFpc.js +0 -4
- package/dist/pi-tools-CNHSpjBa.js +0 -2413
- package/dist/plan-B0reFFlM.js +0 -81
- package/dist/plan-CrfF-TH8.js +0 -112
- package/dist/plugin-DI_8eYOe.js +0 -12396
- package/dist/plugin-app-cache-key-WaTUD3e-.js +0 -46
- package/dist/plugin-enabled-aWLXgGGi.js +0 -233
- package/dist/plugin-registration-ByjRIVJm.js +0 -88
- package/dist/plugin-service-VQm_241d.js +0 -1229
- package/dist/policy-BmJH-swe.js +0 -680
- package/dist/policy-DE-bO1zn.js +0 -138
- package/dist/prepare.runtime-bSj3-res.js +0 -732
- package/dist/preview-warnings-CbuGYsF9.js +0 -392
- package/dist/probe-C_rWg7_m.js +0 -682
- package/dist/probe-CagOFfx6.js +0 -2
- package/dist/probe-thX1HqOh.js +0 -2204
- package/dist/probe-zU6B6gFt.js +0 -47
- package/dist/program-BtVdH743.js +0 -131
- package/dist/provider-CDoD7tO0.js +0 -8735
- package/dist/provider-CK1gMdJ2.js +0 -32
- package/dist/provider-DJqr9djy.js +0 -32
- package/dist/provider-DsOJp5bK.js +0 -152
- package/dist/provider-dispatcher-UNQ-LSx9.js +0 -22
- package/dist/provider-session.runtime-DMrkMb4x.js +0 -9
- package/dist/provider.runtime-C2-t3zm8.js +0 -2
- package/dist/public-surface-loader-hTeyyHcd.js +0 -114
- package/dist/pw-ai-BaL3eVYx.js +0 -3029
- package/dist/pw-role-snapshot-DKeBqhN1.js +0 -333
- package/dist/reaction-level-BV2potsD.js +0 -19
- package/dist/reaction-runtime-api-CCBxgM10.js +0 -116
- package/dist/realtime-transcription-provider-CHYtIXZm.js +0 -205
- package/dist/register-BJf28G9B.js +0 -2178
- package/dist/register.agent-oXAHwNQv.js +0 -156
- package/dist/register.crestodian-CQ0sqdV2.js +0 -24
- package/dist/register.maintenance-CylVRs5M.js +0 -83
- package/dist/register.runtime-CcDgwy0X.js +0 -54
- package/dist/register.subclis-CpBYNw2X.js +0 -3
- package/dist/register.subclis-N2CvieOL.js +0 -31
- package/dist/register.subclis-core-BHaGvbzg.js +0 -273
- package/dist/repair-sequencing-EBBnBdIB.js +0 -640
- package/dist/reply-delivery-BLoPALlI.js +0 -196
- package/dist/reply-runtime-D4asNTSa.js +0 -11
- package/dist/reply.runtime-CwprvhoR.js +0 -2
- package/dist/request-DlWPRUDt.js +0 -54
- package/dist/resolve-allowlist-BukQf58x.js +0 -220
- package/dist/result-fallback-classifier-DyHFnqfV.js +0 -79
- package/dist/route-BMf4keN5.js +0 -469
- package/dist/route-resolution-DWNi1QAu.js +0 -274
- package/dist/routes-C20LC8c4.js +0 -3602
- package/dist/routes-CkK7Vv_m.js +0 -2
- package/dist/run-KDF_AEza.js +0 -1162
- package/dist/run-attempt-JHYCfonU.js +0 -7704
- package/dist/run-command-3PVihYIy.js +0 -2
- package/dist/run-command-QHAXnyKY.js +0 -23
- package/dist/run-embedded.runtime-BJw-2vss.js +0 -4
- package/dist/run-execution-cli.runtime-GHClMn2g.js +0 -4
- package/dist/run-subagent-registry.runtime-BLLMrhtE.js +0 -2
- package/dist/runtime-C2u-dC1r.js +0 -1287
- package/dist/runtime-ClyfkDWT.js +0 -6179
- package/dist/runtime-WXCarlPc.js +0 -438
- package/dist/runtime-api-3QhGLpZf.js +0 -13
- package/dist/runtime-api-DRAu3mjv.js +0 -4
- package/dist/runtime-api-JE07pOem.js +0 -13
- package/dist/runtime-api-JuKylHvw.js +0 -24
- package/dist/runtime-api-bcbk4yax.js +0 -21
- package/dist/runtime-api-dDe9U2_V.js +0 -17
- package/dist/runtime-api-uMexLqGS.js +0 -3
- package/dist/runtime-api.actions-Bo7TLDFl.js +0 -3
- package/dist/runtime-api.monitor-7q78L1Em.js +0 -6
- package/dist/runtime-api.send-Bf9RR4nV.js +0 -4
- package/dist/runtime-api.threads-Dj2QuhHj.js +0 -2
- package/dist/runtime-channel-k1C0Satl.js +0 -2
- package/dist/runtime-channel-qt9t0J-J.js +0 -150
- package/dist/runtime-embedded-pi.runtime-BPB9NlTS.js +0 -2
- package/dist/sanitize-outbound-BLH_SQvg.js +0 -127
- package/dist/sdk-setup-tools-BshlBPau.js +0 -8
- package/dist/secrets-CsHXv7d3.js +0 -113
- package/dist/security-audit-CUXBQXNX.js +0 -122
- package/dist/security-audit-CzdXbRma.js +0 -118
- package/dist/security-audit.runtime-Ca0FMFJG.js +0 -2
- package/dist/selection-BmvQJlSD.js +0 -3
- package/dist/selection-BplDXc9w.js +0 -16157
- package/dist/send--qFg8a9v.js +0 -1631
- package/dist/send-BPdryPPA.js +0 -192
- package/dist/send-Bl4YaRkS.js +0 -143
- package/dist/send-Ccm7RMXC.js +0 -2
- package/dist/send.components-c3OUPSmR.js +0 -2
- package/dist/send.components-rhQJYoXs.js +0 -500
- package/dist/send.runtime-dfUkAp5d.js +0 -2
- package/dist/server-DRhyTMLe.js +0 -73
- package/dist/server-Dv4BzjGn.js +0 -24
- package/dist/server-context-4HRJy2vp.js +0 -955
- package/dist/server-context-DlxYb1G5.js +0 -2
- package/dist/server-cron-Bt8Pkc3i.js +0 -2989
- package/dist/server-cron-CtNWsa4Z.js +0 -2
- package/dist/server-methods-rye_okUW.js +0 -16494
- package/dist/server-node-events-C1yZ5a1u.js +0 -596
- package/dist/server-plugin-bootstrap-DUMyVtlP.js +0 -70
- package/dist/server-plugins-B5ZWWkRE.js +0 -432
- package/dist/server-reload-handlers-CTnMXNjT.js +0 -714
- package/dist/server-restart-sentinel-CAYxtwmY.js +0 -747
- package/dist/server-restart-sentinel-DqrtSIvy.js +0 -2
- package/dist/server-runtime-services-CuptQTe5.js +0 -2
- package/dist/server-runtime-services-aaS2IiW3.js +0 -267
- package/dist/server-startup-plugins-D0ymJgQT.js +0 -113
- package/dist/server-startup-post-attach-DlrN2uyt.js +0 -716
- package/dist/server-ws-runtime-CdpLbv4o.js +0 -349
- package/dist/server.impl-Cb4qcMTg.js +0 -2586
- package/dist/service-qxvDlMQE.js +0 -1446
- package/dist/session-binding-6bLobLHL.js +0 -219
- package/dist/session-binding-Bm6fCpoY.js +0 -2
- package/dist/session-kill-http-B6WjVo8V.js +0 -121
- package/dist/session-reset-service-GUVIhxp4.js +0 -625
- package/dist/session-route-BcRDnvzG.js +0 -93
- package/dist/session-status.runtime-BcjOunV4.js +0 -2
- package/dist/session-subagent-reactivation.runtime-BSmk_KYn.js +0 -2
- package/dist/session-tab-registry-BBYzbSOu.js +0 -521
- package/dist/sessions-history-http-bLJJfgLm.js +0 -430
- package/dist/sessions.runtime-DNRtQzCk.js +0 -2
- package/dist/setup-api-CcolVVJs.js +0 -29
- package/dist/setup-core-eJD18F3B.js +0 -174
- package/dist/setup-surface-B75C2Qtz.js +0 -221
- package/dist/setup-surface-CFuPfVHp.js +0 -405
- package/dist/setup-surface-Dyy-Mzyz.js +0 -288
- package/dist/setup-surface-ZsVF_g8W.js +0 -320
- package/dist/shared-BkCNrcLX.js +0 -121
- package/dist/shared-client-B7zqC9p2.js +0 -2
- package/dist/shared-client-yXjKgZBz.js +0 -629
- package/dist/side-question-DU3gESCb.js +0 -683
- package/dist/skill-tool-dispatch.runtime-CPBuqyvk.js +0 -143
- package/dist/slash-state-Do3bAahA.js +0 -2166
- package/dist/speech-provider-Bg9los3C.js +0 -184
- package/dist/src-D7LzUctH.js +0 -4256
- package/dist/startup-context-CCF2gIOl.js +0 -313
- package/dist/status-subagents.runtime-DX5FTymp.js +0 -18
- package/dist/status-text-B-1u5dSV.js +0 -296
- package/dist/sticker-cache-DwpU_9RJ.js +0 -206
- package/dist/sticker-vision.runtime-Bbldi_YL.js +0 -17
- package/dist/subagent-announce-BCo0VHVL.js +0 -354
- package/dist/subagent-announce-delivery-JcnuDN_N.js +0 -958
- package/dist/subagent-control-BzbA3Suz.js +0 -508
- package/dist/subagent-hooks-BIGZQWrG.js +0 -2
- package/dist/subagent-hooks-Bj4qYZfv.js +0 -230
- package/dist/subagent-hooks-C-rvhVBv.js +0 -2
- package/dist/subagent-hooks-P01_AFl5.js +0 -116
- package/dist/subagent-hooks-VEfak8nl.js +0 -2
- package/dist/subagent-hooks-api-BPnSxxN4.js +0 -23
- package/dist/subagent-hooks-api-DwIAvMoS.js +0 -22
- package/dist/subagent-hooks-api-kgyR9FOb.js +0 -23
- package/dist/subagent-hooks-oED56wqq.js +0 -146
- package/dist/subagent-orphan-recovery-D79ZzwKN.js +0 -352
- package/dist/subagent-registry-D0soBT5j.js +0 -2351
- package/dist/subagent-registry-DRJDkmty.js +0 -3
- package/dist/subagent-session-cleanup-9eAO1aJe.js +0 -525
- package/dist/subagent-spawn-D80vbogm.js +0 -1164
- package/dist/target-id-COLv5LsJ.js +0 -107
- package/dist/targets-CDW5IQ6a.js +0 -44
- package/dist/targets-Ci6O1ZdP.js +0 -19
- package/dist/targets-CsaWFBg1.js +0 -19
- package/dist/testing-BoJit-h1.js +0 -267
- package/dist/thread-bindings-CGCvw0KT.js +0 -571
- package/dist/thread-bindings-ClCTNacX.js +0 -228
- package/dist/thread-bindings-DRb7BMZ6.js +0 -8
- package/dist/thread-bindings-Xc6smav0.js +0 -232
- package/dist/thread-bindings.discord-api-DC467oeF.js +0 -187
- package/dist/thread-bindings.manager-C_mpTDIZ.js +0 -536
- package/dist/thread-bindings.manager-DkCRs612.js +0 -2
- package/dist/thread-lifecycle-DpqCXlx9.js +0 -1614
- package/dist/token-CI6HjbTA.js +0 -134
- package/dist/tool-BMe7hjBK.js +0 -139
- package/dist/tool-actions.runtime-D-h5PI_m.js +0 -534
- package/dist/tool-resolution-CnLx0CHe.js +0 -149
- package/dist/tools-effective-inventory-BR6MUMtE.js +0 -204
- package/dist/tools-invoke-http-CTTs2yMT.js +0 -67
- package/dist/tools-invoke-shared-9B1EjXWf.js +0 -200
- package/dist/tts-eGOviZ5c.js +0 -66
- package/dist/tui-Bw0HqKd7.js +0 -4709
- package/dist/tui-CIZJnPzj.js +0 -2
- package/dist/tui-backend-BJ_r7tcF.js +0 -256
- package/dist/tui-cli-BaSMBpuA.js +0 -37
- package/dist/update-cli-zuCybGNR.js +0 -3664
- package/dist/update-runner-Dek2BHmQ.js +0 -2379
- package/dist/vision-tools-1ps0BEE5.js +0 -1409
- package/dist/web-search-B7EziZXE.js +0 -62
- package/dist/web-search-provider.runtime-DGTCvGch.js +0 -328
- package/dist/web-search-provider.runtime-DWL5t39M.js +0 -2
- package/dist/xai-oauth-CRtsj2Gs.js +0 -479
- package/dist/xai-user-agent-Dndwzw2S.js +0 -32
- /package/dist/{acp-runtime-backend-DSDBcyh9.js → acp-runtime-backend-Cxo7eBHf.js} +0 -0
- /package/dist/{channel-actions-FV66JqtI.js → channel-actions-UDeVjgGz.js} +0 -0
- /package/dist/{command-status-runtime-BRWKSoG7.js → command-status-runtime-CoHd4Fws.js} +0 -0
- /package/dist/{delegate-DGqKhwB4.js → delegate-B-2xZ77o.js} +0 -0
- /package/dist/{dispatch-acp-Ceoxja_Z.js → dispatch-acp-DLPkmK7K.js} +0 -0
- /package/dist/{heartbeat-runner-CJHvr5pG.js → heartbeat-runner-D2j6JwOI.js} +0 -0
- /package/dist/{library-Bq3aDek_.js → library-DBT0cIPP.js} +0 -0
- /package/dist/{run-executor.runtime-DNJhGPbA.js → run-executor.runtime-DE4J7f4M.js} +0 -0
- /package/dist/{shared-CYxmRpq1.js → shared-xeo8Yh5n.js} +0 -0
package/dist/runtime-C2u-dC1r.js
DELETED
|
@@ -1,1287 +0,0 @@
|
|
|
1
|
-
import { a as normalizeLowercaseStringOrEmpty } from "./string-coerce-DyL154ka.js";
|
|
2
|
-
import { i as formatErrorMessage } from "./errors-D_oyTIw2.js";
|
|
3
|
-
import { t as assertMediaNotDataUrl } from "./sandbox-paths-LIVGeGKH.js";
|
|
4
|
-
import { c as jsonResult, f as readNumberParam, g as readStringParam, m as readStringArrayParam, p as readReactionParams, u as parseAvailableTags } from "./common-vJyw6dD-.js";
|
|
5
|
-
import { i as resolveOpenProviderRuntimeGroupPolicy } from "./runtime-group-policy-CmZDlIwd.js";
|
|
6
|
-
import { r as resolvePollMaxSelections } from "./polls-C-v11_tu.js";
|
|
7
|
-
import { t as readBooleanParam } from "./boolean-param-Ch5dc2FQ.js";
|
|
8
|
-
import { a as withNormalizedTimestamp } from "./date-time-D7najZvu.js";
|
|
9
|
-
import "./error-runtime--zM-GsR-.js";
|
|
10
|
-
import "./string-coerce-runtime-DcopKqDR.js";
|
|
11
|
-
import { a as mergeDiscordAccountConfig, o as resolveDefaultDiscordAccountId, t as createDiscordActionGate } from "./accounts-BgsM9h2-.js";
|
|
12
|
-
import { n as resolveDiscordChannelId } from "./target-parsing-D1FhMbX6.js";
|
|
13
|
-
import { r as sendDiscordComponentMessage } from "./send.components-rhQJYoXs.js";
|
|
14
|
-
import { n as getGateway, o as getPresence } from "./gateway-registry-DPxmW0Db.js";
|
|
15
|
-
import { Wt as PermissionFlagsBits } from "./discord-DLn5dEWC.js";
|
|
16
|
-
import { A as isThreadChannelType, E as fetchChannelPermissionsDiscord, P as createDiscordRuntimeAccountContext, d as resolveDiscordTargetChannelId, k as hasAnyGuildPermissionDiscord } from "./send.shared-DkEjcqxQ.js";
|
|
17
|
-
import { a as normalizeDiscordSlug, c as resolveDiscordChannelConfigWithFallback, n as isDiscordGroupAllowedByPolicy } from "./allow-list-BcPKAZym.js";
|
|
18
|
-
import { A as removeRoleDiscord, B as removeChannelPermissionDiscord, C as fetchGuildInfoDiscord, D as kickMemberDiscord, E as fetchVoiceStatusDiscord, F as uploadStickerDiscord, I as createChannelDiscord, L as deleteChannelDiscord, M as timeoutMemberDiscord, N as listGuildEmojisDiscord, O as listGuildChannelsDiscord, P as uploadEmojiDiscord, R as editChannelDiscord, S as fetchChannelInfoDiscord, T as fetchRoleInfoDiscord, V as setChannelPermissionDiscord, _ as searchMessagesDiscord, b as banMemberDiscord, c as DiscordThreadInitialMessageError, d as editMessageDiscord, f as fetchMessageDiscord, g as readMessagesDiscord, h as pinMessageDiscord, i as removeReactionDiscord, j as resolveEventCoverImage, k as listScheduledEventsDiscord, l as createThreadDiscord, m as listThreadsDiscord, n as reactMessageDiscord, o as sendVoiceMessageDiscord, p as listPinsDiscord, r as removeOwnReactionsDiscord, t as fetchReactionsDiscord, u as deleteMessageDiscord, v as unpinMessageDiscord, w as fetchMemberInfoDiscord, x as createScheduledEventDiscord, y as addRoleDiscord, z as moveChannelDiscord } from "./send-BZbyJL0A.js";
|
|
19
|
-
import { n as sendPollDiscord, r as sendStickerDiscord, t as sendMessageDiscord } from "./send.outbound-C2EaQ1Hx.js";
|
|
20
|
-
import { s as readDiscordComponentSpec } from "./components-CaDkKz9J.js";
|
|
21
|
-
import "./targets-BoRwMAy3.js";
|
|
22
|
-
//#region extensions/discord/src/actions/runtime.shared.ts
|
|
23
|
-
function readDiscordParentIdParam(params) {
|
|
24
|
-
if (params.clearParent === true) return null;
|
|
25
|
-
if (params.parentId === null) return null;
|
|
26
|
-
return readStringParam(params, "parentId");
|
|
27
|
-
}
|
|
28
|
-
function readDiscordBooleanParam(params, key) {
|
|
29
|
-
return typeof params[key] === "boolean" ? params[key] : void 0;
|
|
30
|
-
}
|
|
31
|
-
function createDiscordActionOptions(params) {
|
|
32
|
-
return {
|
|
33
|
-
cfg: params.cfg,
|
|
34
|
-
...params.accountId ? { accountId: params.accountId } : {},
|
|
35
|
-
...params.extra ?? {}
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
|
-
function readDiscordChannelCreateParams(params) {
|
|
39
|
-
const parentId = readDiscordParentIdParam(params);
|
|
40
|
-
return {
|
|
41
|
-
guildId: readStringParam(params, "guildId", { required: true }),
|
|
42
|
-
name: readStringParam(params, "name", { required: true }),
|
|
43
|
-
type: readNumberParam(params, "channelType", { integer: true }) ?? readNumberParam(params, "type", { integer: true }) ?? void 0,
|
|
44
|
-
parentId: parentId ?? void 0,
|
|
45
|
-
topic: readStringParam(params, "topic") ?? void 0,
|
|
46
|
-
position: readNumberParam(params, "position", { integer: true }) ?? void 0,
|
|
47
|
-
nsfw: readDiscordBooleanParam(params, "nsfw")
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
function readDiscordChannelEditParams(params) {
|
|
51
|
-
const parentId = readDiscordParentIdParam(params);
|
|
52
|
-
return {
|
|
53
|
-
channelId: readStringParam(params, "channelId", { required: true }),
|
|
54
|
-
name: readStringParam(params, "name") ?? void 0,
|
|
55
|
-
topic: readStringParam(params, "topic") ?? void 0,
|
|
56
|
-
position: readNumberParam(params, "position", { integer: true }) ?? void 0,
|
|
57
|
-
parentId: parentId === void 0 ? void 0 : parentId,
|
|
58
|
-
nsfw: readDiscordBooleanParam(params, "nsfw"),
|
|
59
|
-
rateLimitPerUser: readNumberParam(params, "rateLimitPerUser", { integer: true }) ?? void 0,
|
|
60
|
-
archived: readDiscordBooleanParam(params, "archived"),
|
|
61
|
-
locked: readDiscordBooleanParam(params, "locked"),
|
|
62
|
-
autoArchiveDuration: readNumberParam(params, "autoArchiveDuration", { integer: true }) ?? void 0,
|
|
63
|
-
availableTags: parseAvailableTags(params.availableTags)
|
|
64
|
-
};
|
|
65
|
-
}
|
|
66
|
-
function readDiscordChannelMoveParams(params) {
|
|
67
|
-
const parentId = readDiscordParentIdParam(params);
|
|
68
|
-
return {
|
|
69
|
-
guildId: readStringParam(params, "guildId", { required: true }),
|
|
70
|
-
channelId: readStringParam(params, "channelId", { required: true }),
|
|
71
|
-
parentId: parentId === void 0 ? void 0 : parentId,
|
|
72
|
-
position: readNumberParam(params, "position", { integer: true }) ?? void 0
|
|
73
|
-
};
|
|
74
|
-
}
|
|
75
|
-
//#endregion
|
|
76
|
-
//#region extensions/discord/src/actions/runtime.guild.ts
|
|
77
|
-
const discordGuildActionRuntime = {
|
|
78
|
-
addRoleDiscord,
|
|
79
|
-
createChannelDiscord,
|
|
80
|
-
createScheduledEventDiscord,
|
|
81
|
-
resolveEventCoverImage,
|
|
82
|
-
deleteChannelDiscord,
|
|
83
|
-
editChannelDiscord,
|
|
84
|
-
fetchChannelInfoDiscord,
|
|
85
|
-
fetchMemberInfoDiscord,
|
|
86
|
-
fetchRoleInfoDiscord,
|
|
87
|
-
fetchVoiceStatusDiscord,
|
|
88
|
-
listGuildChannelsDiscord,
|
|
89
|
-
listGuildEmojisDiscord,
|
|
90
|
-
listScheduledEventsDiscord,
|
|
91
|
-
moveChannelDiscord,
|
|
92
|
-
removeChannelPermissionDiscord,
|
|
93
|
-
removeRoleDiscord,
|
|
94
|
-
setChannelPermissionDiscord,
|
|
95
|
-
uploadEmojiDiscord,
|
|
96
|
-
uploadStickerDiscord
|
|
97
|
-
};
|
|
98
|
-
async function runRoleMutation(params) {
|
|
99
|
-
const guildId = readStringParam(params.values, "guildId", { required: true });
|
|
100
|
-
const userId = readStringParam(params.values, "userId", { required: true });
|
|
101
|
-
const roleId = readStringParam(params.values, "roleId", { required: true });
|
|
102
|
-
await params.mutate({
|
|
103
|
-
guildId,
|
|
104
|
-
userId,
|
|
105
|
-
roleId
|
|
106
|
-
}, createDiscordActionOptions({
|
|
107
|
-
cfg: params.cfg,
|
|
108
|
-
accountId: params.accountId
|
|
109
|
-
}));
|
|
110
|
-
}
|
|
111
|
-
function readChannelPermissionTarget(params) {
|
|
112
|
-
return {
|
|
113
|
-
channelId: readStringParam(params, "channelId", { required: true }),
|
|
114
|
-
targetId: readStringParam(params, "targetId", { required: true })
|
|
115
|
-
};
|
|
116
|
-
}
|
|
117
|
-
async function handleDiscordGuildAction(action, params, isActionEnabled, cfg, options) {
|
|
118
|
-
const accountId = readStringParam(params, "accountId");
|
|
119
|
-
if (!cfg) throw new Error("Discord guild actions require a resolved runtime config.");
|
|
120
|
-
const withOpts = (extra) => createDiscordActionOptions({
|
|
121
|
-
cfg,
|
|
122
|
-
accountId,
|
|
123
|
-
extra
|
|
124
|
-
});
|
|
125
|
-
switch (action) {
|
|
126
|
-
case "memberInfo": {
|
|
127
|
-
if (!isActionEnabled("memberInfo")) throw new Error("Discord member info is disabled.");
|
|
128
|
-
const guildId = readStringParam(params, "guildId", { required: true });
|
|
129
|
-
const userId = readStringParam(params, "userId", { required: true });
|
|
130
|
-
const effectiveAccountId = accountId ?? resolveDefaultDiscordAccountId(cfg);
|
|
131
|
-
const member = await discordGuildActionRuntime.fetchMemberInfoDiscord(guildId, userId, createDiscordActionOptions({
|
|
132
|
-
cfg,
|
|
133
|
-
accountId: effectiveAccountId
|
|
134
|
-
}));
|
|
135
|
-
const presence = getPresence(effectiveAccountId, userId);
|
|
136
|
-
const activities = presence?.activities ?? void 0;
|
|
137
|
-
const status = presence?.status ?? void 0;
|
|
138
|
-
return jsonResult({
|
|
139
|
-
ok: true,
|
|
140
|
-
member,
|
|
141
|
-
...presence ? {
|
|
142
|
-
status,
|
|
143
|
-
activities
|
|
144
|
-
} : {}
|
|
145
|
-
});
|
|
146
|
-
}
|
|
147
|
-
case "roleInfo": {
|
|
148
|
-
if (!isActionEnabled("roleInfo")) throw new Error("Discord role info is disabled.");
|
|
149
|
-
const guildId = readStringParam(params, "guildId", { required: true });
|
|
150
|
-
return jsonResult({
|
|
151
|
-
ok: true,
|
|
152
|
-
roles: await discordGuildActionRuntime.fetchRoleInfoDiscord(guildId, withOpts())
|
|
153
|
-
});
|
|
154
|
-
}
|
|
155
|
-
case "emojiList": {
|
|
156
|
-
if (!isActionEnabled("reactions")) throw new Error("Discord reactions are disabled.");
|
|
157
|
-
const guildId = readStringParam(params, "guildId", { required: true });
|
|
158
|
-
return jsonResult({
|
|
159
|
-
ok: true,
|
|
160
|
-
emojis: await discordGuildActionRuntime.listGuildEmojisDiscord(guildId, withOpts())
|
|
161
|
-
});
|
|
162
|
-
}
|
|
163
|
-
case "emojiUpload": {
|
|
164
|
-
if (!isActionEnabled("emojiUploads")) throw new Error("Discord emoji uploads are disabled.");
|
|
165
|
-
const guildId = readStringParam(params, "guildId", { required: true });
|
|
166
|
-
const name = readStringParam(params, "name", { required: true });
|
|
167
|
-
const mediaUrl = readStringParam(params, "mediaUrl", { required: true });
|
|
168
|
-
const roleIds = readStringArrayParam(params, "roleIds");
|
|
169
|
-
return jsonResult({
|
|
170
|
-
ok: true,
|
|
171
|
-
emoji: await discordGuildActionRuntime.uploadEmojiDiscord({
|
|
172
|
-
guildId,
|
|
173
|
-
name,
|
|
174
|
-
mediaUrl,
|
|
175
|
-
roleIds: roleIds?.length ? roleIds : void 0
|
|
176
|
-
}, withOpts())
|
|
177
|
-
});
|
|
178
|
-
}
|
|
179
|
-
case "stickerUpload": {
|
|
180
|
-
if (!isActionEnabled("stickerUploads")) throw new Error("Discord sticker uploads are disabled.");
|
|
181
|
-
const guildId = readStringParam(params, "guildId", { required: true });
|
|
182
|
-
const name = readStringParam(params, "name", { required: true });
|
|
183
|
-
const description = readStringParam(params, "description", { required: true });
|
|
184
|
-
const tags = readStringParam(params, "tags", { required: true });
|
|
185
|
-
const mediaUrl = readStringParam(params, "mediaUrl", { required: true });
|
|
186
|
-
return jsonResult({
|
|
187
|
-
ok: true,
|
|
188
|
-
sticker: await discordGuildActionRuntime.uploadStickerDiscord({
|
|
189
|
-
guildId,
|
|
190
|
-
name,
|
|
191
|
-
description,
|
|
192
|
-
tags,
|
|
193
|
-
mediaUrl
|
|
194
|
-
}, withOpts())
|
|
195
|
-
});
|
|
196
|
-
}
|
|
197
|
-
case "roleAdd":
|
|
198
|
-
if (!isActionEnabled("roles", false)) throw new Error("Discord role changes are disabled.");
|
|
199
|
-
await runRoleMutation({
|
|
200
|
-
cfg,
|
|
201
|
-
accountId,
|
|
202
|
-
values: params,
|
|
203
|
-
mutate: discordGuildActionRuntime.addRoleDiscord
|
|
204
|
-
});
|
|
205
|
-
return jsonResult({ ok: true });
|
|
206
|
-
case "roleRemove":
|
|
207
|
-
if (!isActionEnabled("roles", false)) throw new Error("Discord role changes are disabled.");
|
|
208
|
-
await runRoleMutation({
|
|
209
|
-
cfg,
|
|
210
|
-
accountId,
|
|
211
|
-
values: params,
|
|
212
|
-
mutate: discordGuildActionRuntime.removeRoleDiscord
|
|
213
|
-
});
|
|
214
|
-
return jsonResult({ ok: true });
|
|
215
|
-
case "channelInfo": {
|
|
216
|
-
if (!isActionEnabled("channelInfo")) throw new Error("Discord channel info is disabled.");
|
|
217
|
-
const channelId = readStringParam(params, "channelId", { required: true });
|
|
218
|
-
return jsonResult({
|
|
219
|
-
ok: true,
|
|
220
|
-
channel: await discordGuildActionRuntime.fetchChannelInfoDiscord(channelId, withOpts())
|
|
221
|
-
});
|
|
222
|
-
}
|
|
223
|
-
case "channelList": {
|
|
224
|
-
if (!isActionEnabled("channelInfo")) throw new Error("Discord channel info is disabled.");
|
|
225
|
-
const guildId = readStringParam(params, "guildId", { required: true });
|
|
226
|
-
return jsonResult({
|
|
227
|
-
ok: true,
|
|
228
|
-
channels: await discordGuildActionRuntime.listGuildChannelsDiscord(guildId, withOpts())
|
|
229
|
-
});
|
|
230
|
-
}
|
|
231
|
-
case "voiceStatus": {
|
|
232
|
-
if (!isActionEnabled("voiceStatus")) throw new Error("Discord voice status is disabled.");
|
|
233
|
-
const guildId = readStringParam(params, "guildId", { required: true });
|
|
234
|
-
const userId = readStringParam(params, "userId", { required: true });
|
|
235
|
-
return jsonResult({
|
|
236
|
-
ok: true,
|
|
237
|
-
voice: await discordGuildActionRuntime.fetchVoiceStatusDiscord(guildId, userId, withOpts())
|
|
238
|
-
});
|
|
239
|
-
}
|
|
240
|
-
case "eventList": {
|
|
241
|
-
if (!isActionEnabled("events")) throw new Error("Discord events are disabled.");
|
|
242
|
-
const guildId = readStringParam(params, "guildId", { required: true });
|
|
243
|
-
return jsonResult({
|
|
244
|
-
ok: true,
|
|
245
|
-
events: await discordGuildActionRuntime.listScheduledEventsDiscord(guildId, withOpts())
|
|
246
|
-
});
|
|
247
|
-
}
|
|
248
|
-
case "eventCreate": {
|
|
249
|
-
if (!isActionEnabled("events")) throw new Error("Discord events are disabled.");
|
|
250
|
-
const guildId = readStringParam(params, "guildId", { required: true });
|
|
251
|
-
const name = readStringParam(params, "name", { required: true });
|
|
252
|
-
const startTime = readStringParam(params, "startTime", { required: true });
|
|
253
|
-
const endTime = readStringParam(params, "endTime");
|
|
254
|
-
const description = readStringParam(params, "description");
|
|
255
|
-
const channelId = readStringParam(params, "channelId");
|
|
256
|
-
const location = readStringParam(params, "location");
|
|
257
|
-
const imageUrl = readStringParam(params, "image", { trim: false });
|
|
258
|
-
const entityTypeRaw = readStringParam(params, "entityType");
|
|
259
|
-
const entityType = entityTypeRaw === "stage" ? 1 : entityTypeRaw === "external" ? 3 : 2;
|
|
260
|
-
const image = imageUrl ? await discordGuildActionRuntime.resolveEventCoverImage(imageUrl, { localRoots: options?.mediaLocalRoots }) : void 0;
|
|
261
|
-
const payload = {
|
|
262
|
-
name,
|
|
263
|
-
description,
|
|
264
|
-
scheduled_start_time: startTime,
|
|
265
|
-
scheduled_end_time: endTime,
|
|
266
|
-
entity_type: entityType,
|
|
267
|
-
channel_id: channelId,
|
|
268
|
-
entity_metadata: entityType === 3 && location ? { location } : void 0,
|
|
269
|
-
image,
|
|
270
|
-
privacy_level: 2
|
|
271
|
-
};
|
|
272
|
-
return jsonResult({
|
|
273
|
-
ok: true,
|
|
274
|
-
event: await discordGuildActionRuntime.createScheduledEventDiscord(guildId, payload, withOpts())
|
|
275
|
-
});
|
|
276
|
-
}
|
|
277
|
-
case "channelCreate":
|
|
278
|
-
if (!isActionEnabled("channels")) throw new Error("Discord channel management is disabled.");
|
|
279
|
-
return jsonResult({
|
|
280
|
-
ok: true,
|
|
281
|
-
channel: await discordGuildActionRuntime.createChannelDiscord(readDiscordChannelCreateParams(params), withOpts())
|
|
282
|
-
});
|
|
283
|
-
case "channelEdit":
|
|
284
|
-
if (!isActionEnabled("channels")) throw new Error("Discord channel management is disabled.");
|
|
285
|
-
return jsonResult({
|
|
286
|
-
ok: true,
|
|
287
|
-
channel: await discordGuildActionRuntime.editChannelDiscord(readDiscordChannelEditParams(params), withOpts())
|
|
288
|
-
});
|
|
289
|
-
case "channelDelete": {
|
|
290
|
-
if (!isActionEnabled("channels")) throw new Error("Discord channel management is disabled.");
|
|
291
|
-
const channelId = readStringParam(params, "channelId", { required: true });
|
|
292
|
-
return jsonResult(await discordGuildActionRuntime.deleteChannelDiscord(channelId, withOpts()));
|
|
293
|
-
}
|
|
294
|
-
case "channelMove":
|
|
295
|
-
if (!isActionEnabled("channels")) throw new Error("Discord channel management is disabled.");
|
|
296
|
-
await discordGuildActionRuntime.moveChannelDiscord(readDiscordChannelMoveParams(params), withOpts());
|
|
297
|
-
return jsonResult({ ok: true });
|
|
298
|
-
case "categoryCreate": {
|
|
299
|
-
if (!isActionEnabled("channels")) throw new Error("Discord channel management is disabled.");
|
|
300
|
-
const guildId = readStringParam(params, "guildId", { required: true });
|
|
301
|
-
const name = readStringParam(params, "name", { required: true });
|
|
302
|
-
const position = readNumberParam(params, "position", { integer: true });
|
|
303
|
-
return jsonResult({
|
|
304
|
-
ok: true,
|
|
305
|
-
category: await discordGuildActionRuntime.createChannelDiscord({
|
|
306
|
-
guildId,
|
|
307
|
-
name,
|
|
308
|
-
type: 4,
|
|
309
|
-
position: position ?? void 0
|
|
310
|
-
}, withOpts())
|
|
311
|
-
});
|
|
312
|
-
}
|
|
313
|
-
case "categoryEdit": {
|
|
314
|
-
if (!isActionEnabled("channels")) throw new Error("Discord channel management is disabled.");
|
|
315
|
-
const categoryId = readStringParam(params, "categoryId", { required: true });
|
|
316
|
-
const name = readStringParam(params, "name");
|
|
317
|
-
const position = readNumberParam(params, "position", { integer: true });
|
|
318
|
-
return jsonResult({
|
|
319
|
-
ok: true,
|
|
320
|
-
category: await discordGuildActionRuntime.editChannelDiscord({
|
|
321
|
-
channelId: categoryId,
|
|
322
|
-
name: name ?? void 0,
|
|
323
|
-
position: position ?? void 0
|
|
324
|
-
}, withOpts())
|
|
325
|
-
});
|
|
326
|
-
}
|
|
327
|
-
case "categoryDelete": {
|
|
328
|
-
if (!isActionEnabled("channels")) throw new Error("Discord channel management is disabled.");
|
|
329
|
-
const categoryId = readStringParam(params, "categoryId", { required: true });
|
|
330
|
-
return jsonResult(await discordGuildActionRuntime.deleteChannelDiscord(categoryId, withOpts()));
|
|
331
|
-
}
|
|
332
|
-
case "channelPermissionSet": {
|
|
333
|
-
if (!isActionEnabled("channels")) throw new Error("Discord channel management is disabled.");
|
|
334
|
-
const { channelId, targetId } = readChannelPermissionTarget(params);
|
|
335
|
-
const targetType = readStringParam(params, "targetType", { required: true }) === "member" ? 1 : 0;
|
|
336
|
-
const allow = readStringParam(params, "allow");
|
|
337
|
-
const deny = readStringParam(params, "deny");
|
|
338
|
-
await discordGuildActionRuntime.setChannelPermissionDiscord({
|
|
339
|
-
channelId,
|
|
340
|
-
targetId,
|
|
341
|
-
targetType,
|
|
342
|
-
allow: allow ?? void 0,
|
|
343
|
-
deny: deny ?? void 0
|
|
344
|
-
}, withOpts());
|
|
345
|
-
return jsonResult({ ok: true });
|
|
346
|
-
}
|
|
347
|
-
case "channelPermissionRemove": {
|
|
348
|
-
if (!isActionEnabled("channels")) throw new Error("Discord channel management is disabled.");
|
|
349
|
-
const { channelId, targetId } = readChannelPermissionTarget(params);
|
|
350
|
-
await discordGuildActionRuntime.removeChannelPermissionDiscord(channelId, targetId, withOpts());
|
|
351
|
-
return jsonResult({ ok: true });
|
|
352
|
-
}
|
|
353
|
-
default: throw new Error(`Unknown action: ${action}`);
|
|
354
|
-
}
|
|
355
|
-
}
|
|
356
|
-
//#endregion
|
|
357
|
-
//#region extensions/discord/src/actions/runtime.messaging.runtime.ts
|
|
358
|
-
const discordMessagingActionRuntime = {
|
|
359
|
-
createThreadDiscord,
|
|
360
|
-
deleteMessageDiscord,
|
|
361
|
-
editChannelDiscord,
|
|
362
|
-
editMessageDiscord,
|
|
363
|
-
fetchChannelInfoDiscord,
|
|
364
|
-
fetchGuildInfoDiscord,
|
|
365
|
-
fetchChannelPermissionsDiscord,
|
|
366
|
-
fetchMessageDiscord,
|
|
367
|
-
fetchReactionsDiscord,
|
|
368
|
-
listPinsDiscord,
|
|
369
|
-
listThreadsDiscord,
|
|
370
|
-
pinMessageDiscord,
|
|
371
|
-
reactMessageDiscord,
|
|
372
|
-
readDiscordComponentSpec,
|
|
373
|
-
readMessagesDiscord,
|
|
374
|
-
removeOwnReactionsDiscord,
|
|
375
|
-
removeReactionDiscord,
|
|
376
|
-
resolveDiscordReactionTargetChannelId,
|
|
377
|
-
resolveDiscordChannelId,
|
|
378
|
-
searchMessagesDiscord,
|
|
379
|
-
sendDiscordComponentMessage,
|
|
380
|
-
sendMessageDiscord,
|
|
381
|
-
sendPollDiscord,
|
|
382
|
-
sendStickerDiscord,
|
|
383
|
-
sendVoiceMessageDiscord,
|
|
384
|
-
unpinMessageDiscord
|
|
385
|
-
};
|
|
386
|
-
async function resolveDiscordReactionTargetChannelId(params) {
|
|
387
|
-
try {
|
|
388
|
-
return resolveDiscordChannelId(params.target);
|
|
389
|
-
} catch {
|
|
390
|
-
return (await resolveDiscordTargetChannelId(params.target, {
|
|
391
|
-
cfg: params.cfg,
|
|
392
|
-
accountId: params.accountId
|
|
393
|
-
})).channelId;
|
|
394
|
-
}
|
|
395
|
-
}
|
|
396
|
-
//#endregion
|
|
397
|
-
//#region extensions/discord/src/actions/runtime.messaging.messages.ts
|
|
398
|
-
function parseDiscordMessageLink(link) {
|
|
399
|
-
const match = link.trim().match(/^(?:https?:\/\/)?(?:ptb\.|canary\.)?discord(?:app)?\.com\/channels\/(\d+)\/(\d+)\/(\d+)(?:\/?|\?.*)$/i);
|
|
400
|
-
if (!match) throw new Error("Invalid Discord message link. Expected https://discord.com/channels/<guildId>/<channelId>/<messageId>.");
|
|
401
|
-
return {
|
|
402
|
-
guildId: match[1],
|
|
403
|
-
channelId: match[2],
|
|
404
|
-
messageId: match[3]
|
|
405
|
-
};
|
|
406
|
-
}
|
|
407
|
-
function describeDiscordMessageListResult(value) {
|
|
408
|
-
if (Array.isArray(value)) return "array";
|
|
409
|
-
if (value === null) return "null";
|
|
410
|
-
if (value && typeof value === "object") {
|
|
411
|
-
const keys = Object.keys(value).toSorted();
|
|
412
|
-
return keys.length ? `object with keys ${keys.join(", ")}` : "object";
|
|
413
|
-
}
|
|
414
|
-
return typeof value;
|
|
415
|
-
}
|
|
416
|
-
function assertDiscordMessageListResult(value) {
|
|
417
|
-
if (Array.isArray(value)) return value;
|
|
418
|
-
throw new Error(`Discord message read returned ${describeDiscordMessageListResult(value)} instead of an array.`);
|
|
419
|
-
}
|
|
420
|
-
async function handleDiscordMessageManagementAction(ctx) {
|
|
421
|
-
switch (ctx.action) {
|
|
422
|
-
case "permissions": {
|
|
423
|
-
if (!ctx.isActionEnabled("permissions")) throw new Error("Discord permissions are disabled.");
|
|
424
|
-
const channelId = ctx.resolveChannelId();
|
|
425
|
-
await ctx.assertReadTargetAllowed({ channelId });
|
|
426
|
-
return jsonResult({
|
|
427
|
-
ok: true,
|
|
428
|
-
permissions: await discordMessagingActionRuntime.fetchChannelPermissionsDiscord(channelId, ctx.withOpts())
|
|
429
|
-
});
|
|
430
|
-
}
|
|
431
|
-
case "fetchMessage": {
|
|
432
|
-
if (!ctx.isActionEnabled("messages")) throw new Error("Discord message reads are disabled.");
|
|
433
|
-
const messageLink = readStringParam(ctx.params, "messageLink");
|
|
434
|
-
let guildId = readStringParam(ctx.params, "guildId");
|
|
435
|
-
let channelId = readStringParam(ctx.params, "channelId");
|
|
436
|
-
let messageId = readStringParam(ctx.params, "messageId");
|
|
437
|
-
if (messageLink) {
|
|
438
|
-
const parsed = parseDiscordMessageLink(messageLink);
|
|
439
|
-
guildId = parsed.guildId;
|
|
440
|
-
channelId = parsed.channelId;
|
|
441
|
-
messageId = parsed.messageId;
|
|
442
|
-
}
|
|
443
|
-
if (!guildId || !channelId || !messageId) throw new Error("Discord message fetch requires guildId, channelId, and messageId (or a valid messageLink).");
|
|
444
|
-
await ctx.assertReadTargetAllowed({
|
|
445
|
-
guildId,
|
|
446
|
-
channelId
|
|
447
|
-
});
|
|
448
|
-
const message = await discordMessagingActionRuntime.fetchMessageDiscord(channelId, messageId, ctx.withOpts());
|
|
449
|
-
return jsonResult({
|
|
450
|
-
ok: true,
|
|
451
|
-
message: ctx.normalizeMessage(message),
|
|
452
|
-
guildId,
|
|
453
|
-
channelId,
|
|
454
|
-
messageId
|
|
455
|
-
});
|
|
456
|
-
}
|
|
457
|
-
case "readMessages": {
|
|
458
|
-
if (!ctx.isActionEnabled("messages")) throw new Error("Discord message reads are disabled.");
|
|
459
|
-
const channelId = ctx.resolveChannelId();
|
|
460
|
-
await ctx.assertReadTargetAllowed({ channelId });
|
|
461
|
-
const query = {
|
|
462
|
-
limit: readNumberParam(ctx.params, "limit"),
|
|
463
|
-
before: readStringParam(ctx.params, "before"),
|
|
464
|
-
after: readStringParam(ctx.params, "after"),
|
|
465
|
-
around: readStringParam(ctx.params, "around")
|
|
466
|
-
};
|
|
467
|
-
return jsonResult({
|
|
468
|
-
ok: true,
|
|
469
|
-
messages: assertDiscordMessageListResult(await discordMessagingActionRuntime.readMessagesDiscord(channelId, query, ctx.withOpts())).map((message) => ctx.normalizeMessage(message))
|
|
470
|
-
});
|
|
471
|
-
}
|
|
472
|
-
case "editMessage": {
|
|
473
|
-
if (!ctx.isActionEnabled("messages")) throw new Error("Discord message edits are disabled.");
|
|
474
|
-
const channelId = ctx.resolveChannelId();
|
|
475
|
-
const messageId = readStringParam(ctx.params, "messageId", { required: true });
|
|
476
|
-
const content = readStringParam(ctx.params, "content", { required: true });
|
|
477
|
-
return jsonResult({
|
|
478
|
-
ok: true,
|
|
479
|
-
message: await discordMessagingActionRuntime.editMessageDiscord(channelId, messageId, { content }, ctx.withOpts())
|
|
480
|
-
});
|
|
481
|
-
}
|
|
482
|
-
case "deleteMessage": {
|
|
483
|
-
if (!ctx.isActionEnabled("messages")) throw new Error("Discord message deletes are disabled.");
|
|
484
|
-
const channelId = ctx.resolveChannelId();
|
|
485
|
-
const messageId = readStringParam(ctx.params, "messageId", { required: true });
|
|
486
|
-
await discordMessagingActionRuntime.deleteMessageDiscord(channelId, messageId, ctx.withOpts());
|
|
487
|
-
return jsonResult({ ok: true });
|
|
488
|
-
}
|
|
489
|
-
case "pinMessage": {
|
|
490
|
-
if (!ctx.isActionEnabled("pins")) throw new Error("Discord pins are disabled.");
|
|
491
|
-
const channelId = ctx.resolveChannelId();
|
|
492
|
-
const messageId = readStringParam(ctx.params, "messageId", { required: true });
|
|
493
|
-
await discordMessagingActionRuntime.pinMessageDiscord(channelId, messageId, ctx.withOpts());
|
|
494
|
-
return jsonResult({ ok: true });
|
|
495
|
-
}
|
|
496
|
-
case "unpinMessage": {
|
|
497
|
-
if (!ctx.isActionEnabled("pins")) throw new Error("Discord pins are disabled.");
|
|
498
|
-
const channelId = ctx.resolveChannelId();
|
|
499
|
-
const messageId = readStringParam(ctx.params, "messageId", { required: true });
|
|
500
|
-
await discordMessagingActionRuntime.unpinMessageDiscord(channelId, messageId, ctx.withOpts());
|
|
501
|
-
return jsonResult({ ok: true });
|
|
502
|
-
}
|
|
503
|
-
case "listPins": {
|
|
504
|
-
if (!ctx.isActionEnabled("pins")) throw new Error("Discord pins are disabled.");
|
|
505
|
-
const channelId = ctx.resolveChannelId();
|
|
506
|
-
await ctx.assertReadTargetAllowed({ channelId });
|
|
507
|
-
return jsonResult({
|
|
508
|
-
ok: true,
|
|
509
|
-
pins: (await discordMessagingActionRuntime.listPinsDiscord(channelId, ctx.withOpts())).map((pin) => ctx.normalizeMessage(pin))
|
|
510
|
-
});
|
|
511
|
-
}
|
|
512
|
-
case "searchMessages": {
|
|
513
|
-
if (!ctx.isActionEnabled("search")) throw new Error("Discord search is disabled.");
|
|
514
|
-
const guildId = readStringParam(ctx.params, "guildId", { required: true });
|
|
515
|
-
const content = readStringParam(ctx.params, "content", { required: true });
|
|
516
|
-
const channelId = readStringParam(ctx.params, "channelId");
|
|
517
|
-
const channelIds = readStringArrayParam(ctx.params, "channelIds");
|
|
518
|
-
const authorId = readStringParam(ctx.params, "authorId");
|
|
519
|
-
const authorIds = readStringArrayParam(ctx.params, "authorIds");
|
|
520
|
-
const limit = readNumberParam(ctx.params, "limit");
|
|
521
|
-
const channelIdList = [...channelIds ?? [], ...channelId ? [channelId] : []];
|
|
522
|
-
if (channelIdList.length > 0) for (const targetChannelId of channelIdList) await ctx.assertReadTargetAllowed({
|
|
523
|
-
guildId,
|
|
524
|
-
channelId: targetChannelId
|
|
525
|
-
});
|
|
526
|
-
else await ctx.assertGuildReadTargetAllowed({ guildId });
|
|
527
|
-
const authorIdList = [...authorIds ?? [], ...authorId ? [authorId] : []];
|
|
528
|
-
const results = await discordMessagingActionRuntime.searchMessagesDiscord({
|
|
529
|
-
guildId,
|
|
530
|
-
content,
|
|
531
|
-
channelIds: channelIdList.length ? channelIdList : void 0,
|
|
532
|
-
authorIds: authorIdList.length ? authorIdList : void 0,
|
|
533
|
-
limit
|
|
534
|
-
}, ctx.withOpts());
|
|
535
|
-
if (!results || typeof results !== "object") return jsonResult({
|
|
536
|
-
ok: true,
|
|
537
|
-
results
|
|
538
|
-
});
|
|
539
|
-
const resultsRecord = results;
|
|
540
|
-
const messages = resultsRecord.messages;
|
|
541
|
-
const normalizedMessages = Array.isArray(messages) ? messages.map((group) => Array.isArray(group) ? group.map((msg) => ctx.normalizeMessage(msg)) : group) : messages;
|
|
542
|
-
return jsonResult({
|
|
543
|
-
ok: true,
|
|
544
|
-
results: {
|
|
545
|
-
...resultsRecord,
|
|
546
|
-
messages: normalizedMessages
|
|
547
|
-
}
|
|
548
|
-
});
|
|
549
|
-
}
|
|
550
|
-
default: return;
|
|
551
|
-
}
|
|
552
|
-
}
|
|
553
|
-
//#endregion
|
|
554
|
-
//#region extensions/discord/src/actions/runtime.messaging.reactions.ts
|
|
555
|
-
async function handleDiscordReactionMessagingAction(ctx) {
|
|
556
|
-
switch (ctx.action) {
|
|
557
|
-
case "react": {
|
|
558
|
-
if (!ctx.isActionEnabled("reactions")) throw new Error("Discord reactions are disabled.");
|
|
559
|
-
const channelId = await ctx.resolveReactionChannelId();
|
|
560
|
-
const messageId = readStringParam(ctx.params, "messageId", { required: true });
|
|
561
|
-
const { emoji, remove, isEmpty } = readReactionParams(ctx.params, { removeErrorMessage: "Emoji is required to remove a Discord reaction." });
|
|
562
|
-
if (remove) {
|
|
563
|
-
await discordMessagingActionRuntime.removeReactionDiscord(channelId, messageId, emoji, ctx.withReactionRuntimeOptions());
|
|
564
|
-
return jsonResult({
|
|
565
|
-
ok: true,
|
|
566
|
-
removed: emoji
|
|
567
|
-
});
|
|
568
|
-
}
|
|
569
|
-
if (isEmpty) return jsonResult({
|
|
570
|
-
ok: true,
|
|
571
|
-
removed: (await discordMessagingActionRuntime.removeOwnReactionsDiscord(channelId, messageId, ctx.withReactionRuntimeOptions())).removed
|
|
572
|
-
});
|
|
573
|
-
await discordMessagingActionRuntime.reactMessageDiscord(channelId, messageId, emoji, ctx.withReactionRuntimeOptions());
|
|
574
|
-
return jsonResult({
|
|
575
|
-
ok: true,
|
|
576
|
-
added: emoji
|
|
577
|
-
});
|
|
578
|
-
}
|
|
579
|
-
case "reactions": {
|
|
580
|
-
if (!ctx.isActionEnabled("reactions")) throw new Error("Discord reactions are disabled.");
|
|
581
|
-
const channelId = await ctx.resolveReactionChannelId();
|
|
582
|
-
const messageId = readStringParam(ctx.params, "messageId", { required: true });
|
|
583
|
-
const limit = readNumberParam(ctx.params, "limit");
|
|
584
|
-
await ctx.assertReadTargetAllowed({ channelId });
|
|
585
|
-
return jsonResult({
|
|
586
|
-
ok: true,
|
|
587
|
-
reactions: await discordMessagingActionRuntime.fetchReactionsDiscord(channelId, messageId, ctx.withReactionRuntimeOptions({ limit }))
|
|
588
|
-
});
|
|
589
|
-
}
|
|
590
|
-
default: return;
|
|
591
|
-
}
|
|
592
|
-
}
|
|
593
|
-
//#endregion
|
|
594
|
-
//#region extensions/discord/src/actions/runtime.messaging.send.ts
|
|
595
|
-
function hasDiscordComponentObjectKeys(value) {
|
|
596
|
-
return Boolean(value && typeof value === "object" && !Array.isArray(value) && Object.keys(value).length > 0);
|
|
597
|
-
}
|
|
598
|
-
async function appendDiscordThreadRenameResult(ctx, params) {
|
|
599
|
-
const threadName = params.threadName?.trim();
|
|
600
|
-
if (!threadName) return params.payload;
|
|
601
|
-
if (!ctx.isActionEnabled("channels")) return {
|
|
602
|
-
...params.payload,
|
|
603
|
-
warning: "Discord threadName was ignored because Discord channel management is disabled."
|
|
604
|
-
};
|
|
605
|
-
let channelId;
|
|
606
|
-
try {
|
|
607
|
-
channelId = discordMessagingActionRuntime.resolveDiscordChannelId(params.target);
|
|
608
|
-
} catch {
|
|
609
|
-
return {
|
|
610
|
-
...params.payload,
|
|
611
|
-
warning: "Discord threadName was ignored because the send target is not a channel/thread."
|
|
612
|
-
};
|
|
613
|
-
}
|
|
614
|
-
try {
|
|
615
|
-
if (!isThreadChannelType((await discordMessagingActionRuntime.fetchChannelInfoDiscord(channelId, ctx.withOpts())).type)) return {
|
|
616
|
-
...params.payload,
|
|
617
|
-
warning: "Discord threadName was ignored because the send target is not a thread."
|
|
618
|
-
};
|
|
619
|
-
const renamed = await discordMessagingActionRuntime.editChannelDiscord({
|
|
620
|
-
channelId,
|
|
621
|
-
name: threadName
|
|
622
|
-
}, ctx.withOpts());
|
|
623
|
-
return {
|
|
624
|
-
...params.payload,
|
|
625
|
-
threadRename: {
|
|
626
|
-
ok: true,
|
|
627
|
-
channelId,
|
|
628
|
-
name: renamed.name ?? threadName
|
|
629
|
-
}
|
|
630
|
-
};
|
|
631
|
-
} catch (error) {
|
|
632
|
-
return {
|
|
633
|
-
...params.payload,
|
|
634
|
-
warning: `Discord message was sent, but thread rename failed: ${formatErrorMessage(error)}`
|
|
635
|
-
};
|
|
636
|
-
}
|
|
637
|
-
}
|
|
638
|
-
async function handleDiscordMessageSendAction(ctx) {
|
|
639
|
-
switch (ctx.action) {
|
|
640
|
-
case "sticker": {
|
|
641
|
-
if (!ctx.isActionEnabled("stickers")) throw new Error("Discord stickers are disabled.");
|
|
642
|
-
const to = readStringParam(ctx.params, "to", { required: true });
|
|
643
|
-
const content = readStringParam(ctx.params, "content");
|
|
644
|
-
const stickerIds = readStringArrayParam(ctx.params, "stickerIds", {
|
|
645
|
-
required: true,
|
|
646
|
-
label: "stickerIds"
|
|
647
|
-
});
|
|
648
|
-
await discordMessagingActionRuntime.sendStickerDiscord(to, stickerIds, ctx.withOpts({ content }));
|
|
649
|
-
return jsonResult({ ok: true });
|
|
650
|
-
}
|
|
651
|
-
case "poll": {
|
|
652
|
-
if (!ctx.isActionEnabled("polls")) throw new Error("Discord polls are disabled.");
|
|
653
|
-
const to = readStringParam(ctx.params, "to", { required: true });
|
|
654
|
-
const content = readStringParam(ctx.params, "content");
|
|
655
|
-
const question = readStringParam(ctx.params, "question", { required: true });
|
|
656
|
-
const answers = readStringArrayParam(ctx.params, "answers", {
|
|
657
|
-
required: true,
|
|
658
|
-
label: "answers"
|
|
659
|
-
});
|
|
660
|
-
const allowMultiselect = readBooleanParam(ctx.params, "allowMultiselect");
|
|
661
|
-
const durationHours = readNumberParam(ctx.params, "durationHours");
|
|
662
|
-
const maxSelections = resolvePollMaxSelections(answers.length, allowMultiselect);
|
|
663
|
-
await discordMessagingActionRuntime.sendPollDiscord(to, {
|
|
664
|
-
question,
|
|
665
|
-
options: answers,
|
|
666
|
-
maxSelections,
|
|
667
|
-
durationHours
|
|
668
|
-
}, ctx.withOpts({ content }));
|
|
669
|
-
return jsonResult({ ok: true });
|
|
670
|
-
}
|
|
671
|
-
case "sendMessage": {
|
|
672
|
-
if (!ctx.isActionEnabled("messages")) throw new Error("Discord message sends are disabled.");
|
|
673
|
-
const to = readStringParam(ctx.params, "to", { required: true });
|
|
674
|
-
const asVoice = ctx.params.asVoice === true;
|
|
675
|
-
const silent = ctx.params.silent === true;
|
|
676
|
-
const suppressEmbeds = ctx.params.suppressEmbeds === void 0 ? void 0 : ctx.params.suppressEmbeds === true;
|
|
677
|
-
const rawComponents = ctx.params.components;
|
|
678
|
-
const componentSpec = hasDiscordComponentObjectKeys(rawComponents) ? discordMessagingActionRuntime.readDiscordComponentSpec(rawComponents) : null;
|
|
679
|
-
const components = Array.isArray(rawComponents) || typeof rawComponents === "function" ? rawComponents : void 0;
|
|
680
|
-
const mediaUrl = readStringParam(ctx.params, "mediaUrl", { trim: false }) ?? readStringParam(ctx.params, "path", { trim: false }) ?? readStringParam(ctx.params, "filePath", { trim: false });
|
|
681
|
-
const content = readStringParam(ctx.params, "content", {
|
|
682
|
-
required: !asVoice && !componentSpec && !components && !mediaUrl,
|
|
683
|
-
allowEmpty: true
|
|
684
|
-
});
|
|
685
|
-
const filename = readStringParam(ctx.params, "filename");
|
|
686
|
-
const replyTo = readStringParam(ctx.params, "replyTo");
|
|
687
|
-
const threadName = readStringParam(ctx.params, "threadName");
|
|
688
|
-
const rawEmbeds = ctx.params.embeds;
|
|
689
|
-
const embeds = Array.isArray(rawEmbeds) ? rawEmbeds : void 0;
|
|
690
|
-
const sessionKey = readStringParam(ctx.params, "__sessionKey");
|
|
691
|
-
const agentId = readStringParam(ctx.params, "__agentId");
|
|
692
|
-
if (componentSpec) {
|
|
693
|
-
if (asVoice) throw new Error("Discord components cannot be sent as voice messages.");
|
|
694
|
-
if (embeds?.length) throw new Error("Discord components cannot include embeds.");
|
|
695
|
-
const normalizedContent = content?.trim() ? content : void 0;
|
|
696
|
-
const payload = componentSpec.text ? componentSpec : {
|
|
697
|
-
...componentSpec,
|
|
698
|
-
text: normalizedContent
|
|
699
|
-
};
|
|
700
|
-
return jsonResult(await appendDiscordThreadRenameResult(ctx, {
|
|
701
|
-
payload: {
|
|
702
|
-
ok: true,
|
|
703
|
-
result: await discordMessagingActionRuntime.sendDiscordComponentMessage(to, payload, {
|
|
704
|
-
...ctx.withOpts(),
|
|
705
|
-
silent,
|
|
706
|
-
replyTo: replyTo ?? void 0,
|
|
707
|
-
sessionKey: sessionKey ?? void 0,
|
|
708
|
-
agentId: agentId ?? void 0,
|
|
709
|
-
mediaUrl: mediaUrl ?? void 0,
|
|
710
|
-
filename: filename ?? void 0,
|
|
711
|
-
mediaAccess: ctx.options?.mediaAccess,
|
|
712
|
-
mediaLocalRoots: ctx.options?.mediaLocalRoots,
|
|
713
|
-
mediaReadFile: ctx.options?.mediaReadFile,
|
|
714
|
-
...suppressEmbeds === void 0 ? {} : { suppressEmbeds }
|
|
715
|
-
}),
|
|
716
|
-
components: true
|
|
717
|
-
},
|
|
718
|
-
target: to,
|
|
719
|
-
threadName
|
|
720
|
-
}));
|
|
721
|
-
}
|
|
722
|
-
if (asVoice) {
|
|
723
|
-
if (!mediaUrl) throw new Error("Voice messages require a media file reference (mediaUrl, path, or filePath).");
|
|
724
|
-
if (content && content.trim()) throw new Error("Voice messages cannot include text content (Discord limitation). Remove the content parameter.");
|
|
725
|
-
assertMediaNotDataUrl(mediaUrl);
|
|
726
|
-
return jsonResult(await appendDiscordThreadRenameResult(ctx, {
|
|
727
|
-
payload: {
|
|
728
|
-
ok: true,
|
|
729
|
-
result: await discordMessagingActionRuntime.sendVoiceMessageDiscord(to, mediaUrl, {
|
|
730
|
-
...ctx.withOpts(),
|
|
731
|
-
replyTo,
|
|
732
|
-
silent
|
|
733
|
-
}),
|
|
734
|
-
voiceMessage: true
|
|
735
|
-
},
|
|
736
|
-
target: to,
|
|
737
|
-
threadName
|
|
738
|
-
}));
|
|
739
|
-
}
|
|
740
|
-
return jsonResult(await appendDiscordThreadRenameResult(ctx, {
|
|
741
|
-
payload: {
|
|
742
|
-
ok: true,
|
|
743
|
-
result: await discordMessagingActionRuntime.sendMessageDiscord(to, content ?? "", {
|
|
744
|
-
...ctx.withOpts(),
|
|
745
|
-
mediaAccess: ctx.options?.mediaAccess,
|
|
746
|
-
mediaUrl,
|
|
747
|
-
filename: filename ?? void 0,
|
|
748
|
-
mediaLocalRoots: ctx.options?.mediaLocalRoots,
|
|
749
|
-
mediaReadFile: ctx.options?.mediaReadFile,
|
|
750
|
-
replyTo,
|
|
751
|
-
components,
|
|
752
|
-
embeds,
|
|
753
|
-
silent,
|
|
754
|
-
...suppressEmbeds === void 0 ? {} : { suppressEmbeds }
|
|
755
|
-
})
|
|
756
|
-
},
|
|
757
|
-
target: to,
|
|
758
|
-
threadName
|
|
759
|
-
}));
|
|
760
|
-
}
|
|
761
|
-
case "threadCreate": {
|
|
762
|
-
if (!ctx.isActionEnabled("threads")) throw new Error("Discord threads are disabled.");
|
|
763
|
-
const channelId = ctx.resolveChannelId();
|
|
764
|
-
const name = readStringParam(ctx.params, "name", { required: true });
|
|
765
|
-
const messageId = readStringParam(ctx.params, "messageId");
|
|
766
|
-
const content = readStringParam(ctx.params, "content");
|
|
767
|
-
const payload = {
|
|
768
|
-
name,
|
|
769
|
-
messageId,
|
|
770
|
-
autoArchiveMinutes: readNumberParam(ctx.params, "autoArchiveMinutes"),
|
|
771
|
-
content,
|
|
772
|
-
appliedTags: readStringArrayParam(ctx.params, "appliedTags") ?? void 0
|
|
773
|
-
};
|
|
774
|
-
try {
|
|
775
|
-
return jsonResult({
|
|
776
|
-
ok: true,
|
|
777
|
-
thread: await discordMessagingActionRuntime.createThreadDiscord(channelId, payload, ctx.withOpts())
|
|
778
|
-
});
|
|
779
|
-
} catch (error) {
|
|
780
|
-
if (error instanceof DiscordThreadInitialMessageError) return jsonResult({
|
|
781
|
-
ok: true,
|
|
782
|
-
partial: true,
|
|
783
|
-
thread: error.thread,
|
|
784
|
-
warning: "Discord thread was created, but sending the initial message failed.",
|
|
785
|
-
initialMessageError: error.initialMessageError
|
|
786
|
-
});
|
|
787
|
-
throw error;
|
|
788
|
-
}
|
|
789
|
-
}
|
|
790
|
-
case "threadList": {
|
|
791
|
-
if (!ctx.isActionEnabled("threads")) throw new Error("Discord threads are disabled.");
|
|
792
|
-
const guildId = readStringParam(ctx.params, "guildId", { required: true });
|
|
793
|
-
const channelId = readStringParam(ctx.params, "channelId");
|
|
794
|
-
const includeArchived = readBooleanParam(ctx.params, "includeArchived");
|
|
795
|
-
const before = readStringParam(ctx.params, "before");
|
|
796
|
-
const limit = readNumberParam(ctx.params, "limit");
|
|
797
|
-
return jsonResult({
|
|
798
|
-
ok: true,
|
|
799
|
-
threads: await discordMessagingActionRuntime.listThreadsDiscord({
|
|
800
|
-
guildId,
|
|
801
|
-
channelId,
|
|
802
|
-
includeArchived,
|
|
803
|
-
before,
|
|
804
|
-
limit
|
|
805
|
-
}, ctx.withOpts())
|
|
806
|
-
});
|
|
807
|
-
}
|
|
808
|
-
case "threadReply": {
|
|
809
|
-
if (!ctx.isActionEnabled("threads")) throw new Error("Discord threads are disabled.");
|
|
810
|
-
const channelId = ctx.resolveChannelId();
|
|
811
|
-
const content = readStringParam(ctx.params, "content", { required: true });
|
|
812
|
-
const mediaUrl = readStringParam(ctx.params, "mediaUrl");
|
|
813
|
-
const replyTo = readStringParam(ctx.params, "replyTo");
|
|
814
|
-
return jsonResult({
|
|
815
|
-
ok: true,
|
|
816
|
-
result: await discordMessagingActionRuntime.sendMessageDiscord(`channel:${channelId}`, content, {
|
|
817
|
-
...ctx.withOpts(),
|
|
818
|
-
mediaUrl,
|
|
819
|
-
mediaLocalRoots: ctx.options?.mediaLocalRoots,
|
|
820
|
-
mediaReadFile: ctx.options?.mediaReadFile,
|
|
821
|
-
replyTo
|
|
822
|
-
})
|
|
823
|
-
});
|
|
824
|
-
}
|
|
825
|
-
default: return;
|
|
826
|
-
}
|
|
827
|
-
}
|
|
828
|
-
//#endregion
|
|
829
|
-
//#region extensions/discord/src/actions/runtime.messaging.shared.ts
|
|
830
|
-
function hasDiscordGuildEntries(guilds) {
|
|
831
|
-
return Boolean(guilds && Object.keys(guilds).length > 0);
|
|
832
|
-
}
|
|
833
|
-
function allowsAllDiscordGuildChannels(channels) {
|
|
834
|
-
const wildcard = channels?.["*"];
|
|
835
|
-
if (!wildcard || wildcard.enabled === false) return false;
|
|
836
|
-
return Object.values(channels ?? {}).every((entry) => entry?.enabled !== false);
|
|
837
|
-
}
|
|
838
|
-
function resolveDiscordActionGuildEntry(params) {
|
|
839
|
-
const guildId = params.guildId?.trim();
|
|
840
|
-
if (!params.guilds) return null;
|
|
841
|
-
if (guildId && params.guilds[guildId]) return {
|
|
842
|
-
...params.guilds[guildId],
|
|
843
|
-
id: guildId
|
|
844
|
-
};
|
|
845
|
-
if (guildId) {
|
|
846
|
-
const byConfiguredId = Object.values(params.guilds).find((guild) => guild?.id === guildId);
|
|
847
|
-
if (byConfiguredId) return {
|
|
848
|
-
...byConfiguredId,
|
|
849
|
-
id: guildId
|
|
850
|
-
};
|
|
851
|
-
}
|
|
852
|
-
const guildSlug = params.guildName ? normalizeDiscordSlug(params.guildName) : "";
|
|
853
|
-
if (guildSlug) {
|
|
854
|
-
const bySlug = params.guilds[guildSlug] ?? Object.values(params.guilds).find((guild) => guild?.slug === guildSlug);
|
|
855
|
-
if (bySlug) return {
|
|
856
|
-
...bySlug,
|
|
857
|
-
id: guildId,
|
|
858
|
-
slug: guildSlug || bySlug.slug
|
|
859
|
-
};
|
|
860
|
-
}
|
|
861
|
-
if (params.includeWildcard === false) return null;
|
|
862
|
-
const wildcard = params.guilds["*"];
|
|
863
|
-
return wildcard ? {
|
|
864
|
-
...wildcard,
|
|
865
|
-
id: guildId
|
|
866
|
-
} : null;
|
|
867
|
-
}
|
|
868
|
-
function readDiscordChannelStringField(value, ...keys) {
|
|
869
|
-
if (!value || typeof value !== "object") return;
|
|
870
|
-
const record = value;
|
|
871
|
-
for (const key of keys) {
|
|
872
|
-
const candidate = record[key];
|
|
873
|
-
if (typeof candidate === "string" && candidate.trim()) return candidate.trim();
|
|
874
|
-
}
|
|
875
|
-
}
|
|
876
|
-
function readDiscordChannelType(value) {
|
|
877
|
-
if (!value || typeof value !== "object") return;
|
|
878
|
-
const type = value.type;
|
|
879
|
-
return typeof type === "number" ? type : void 0;
|
|
880
|
-
}
|
|
881
|
-
function isDiscordThreadChannel(value) {
|
|
882
|
-
const type = readDiscordChannelType(value);
|
|
883
|
-
return type === 10 || type === 11 || type === 12;
|
|
884
|
-
}
|
|
885
|
-
function isDiscordReadTargetAllowedInGuild(params) {
|
|
886
|
-
if (resolveDiscordChannelConfigWithFallback({
|
|
887
|
-
guildInfo: params.guildInfo,
|
|
888
|
-
channelId: params.target.channelId,
|
|
889
|
-
channelName: params.target.channelName,
|
|
890
|
-
channelSlug: params.target.channelSlug,
|
|
891
|
-
parentId: params.target.parentId,
|
|
892
|
-
parentName: params.target.parentName,
|
|
893
|
-
parentSlug: params.target.parentSlug,
|
|
894
|
-
scope: params.target.scope
|
|
895
|
-
})?.allowed === false) return false;
|
|
896
|
-
return isDiscordGroupAllowedByPolicy({
|
|
897
|
-
groupPolicy: params.groupPolicy,
|
|
898
|
-
guildAllowlisted: Boolean(params.guildInfo),
|
|
899
|
-
channelAllowlistConfigured: hasDiscordGuildEntries(params.guildInfo?.channels),
|
|
900
|
-
channelAllowed: true
|
|
901
|
-
});
|
|
902
|
-
}
|
|
903
|
-
function isDiscordReadTargetExplicitlyAllowedById(params) {
|
|
904
|
-
const channelEntry = params.guildInfo?.channels?.[params.target.channelId];
|
|
905
|
-
if (!channelEntry || channelEntry.enabled === false) return false;
|
|
906
|
-
return isDiscordGroupAllowedByPolicy({
|
|
907
|
-
groupPolicy: params.groupPolicy,
|
|
908
|
-
guildAllowlisted: Boolean(params.guildInfo),
|
|
909
|
-
channelAllowlistConfigured: true,
|
|
910
|
-
channelAllowed: true
|
|
911
|
-
});
|
|
912
|
-
}
|
|
913
|
-
function createDiscordMessagingActionContext(params) {
|
|
914
|
-
const accountId = readStringParam(params.input, "accountId");
|
|
915
|
-
const cfgOptions = { cfg: params.cfg };
|
|
916
|
-
const accountConfig = mergeDiscordAccountConfig(params.cfg, accountId ?? resolveDefaultDiscordAccountId(params.cfg));
|
|
917
|
-
const guilds = accountConfig.guilds;
|
|
918
|
-
const hasGuildEntries = Object.keys(guilds ?? {}).length > 0;
|
|
919
|
-
const { groupPolicy } = resolveOpenProviderRuntimeGroupPolicy({
|
|
920
|
-
providerConfigPresent: params.cfg.channels?.discord !== void 0,
|
|
921
|
-
groupPolicy: accountConfig.groupPolicy,
|
|
922
|
-
defaultGroupPolicy: params.cfg.channels?.defaults?.groupPolicy
|
|
923
|
-
});
|
|
924
|
-
const withOpts = (extra) => createDiscordActionOptions({
|
|
925
|
-
cfg: params.cfg,
|
|
926
|
-
accountId,
|
|
927
|
-
extra
|
|
928
|
-
});
|
|
929
|
-
const resolvedReactionAccountId = accountId ?? resolveDefaultDiscordAccountId(params.cfg);
|
|
930
|
-
const reactionRuntimeOptions = resolvedReactionAccountId ? createDiscordRuntimeAccountContext({
|
|
931
|
-
cfg: params.cfg,
|
|
932
|
-
accountId: resolvedReactionAccountId
|
|
933
|
-
}) : cfgOptions;
|
|
934
|
-
const guildNameById = /* @__PURE__ */ new Map();
|
|
935
|
-
const resolveGuildName = async (guildId) => {
|
|
936
|
-
if (guildNameById.has(guildId)) return guildNameById.get(guildId) ?? null;
|
|
937
|
-
try {
|
|
938
|
-
const guildName = readDiscordChannelStringField(await discordMessagingActionRuntime.fetchGuildInfoDiscord(guildId, withOpts()), "name") ?? null;
|
|
939
|
-
guildNameById.set(guildId, guildName);
|
|
940
|
-
return guildName;
|
|
941
|
-
} catch {
|
|
942
|
-
guildNameById.set(guildId, null);
|
|
943
|
-
return null;
|
|
944
|
-
}
|
|
945
|
-
};
|
|
946
|
-
const resolveReadGuildEntry = async (guildId) => {
|
|
947
|
-
const direct = resolveDiscordActionGuildEntry({
|
|
948
|
-
guilds,
|
|
949
|
-
guildId,
|
|
950
|
-
includeWildcard: false
|
|
951
|
-
});
|
|
952
|
-
if (direct || !guildId) return direct;
|
|
953
|
-
const named = resolveDiscordActionGuildEntry({
|
|
954
|
-
guilds,
|
|
955
|
-
guildId,
|
|
956
|
-
guildName: await resolveGuildName(guildId) ?? void 0,
|
|
957
|
-
includeWildcard: false
|
|
958
|
-
});
|
|
959
|
-
if (named) return named;
|
|
960
|
-
return resolveDiscordActionGuildEntry({
|
|
961
|
-
guilds,
|
|
962
|
-
guildId
|
|
963
|
-
});
|
|
964
|
-
};
|
|
965
|
-
const resolveReadTargetContext = async (channelId) => {
|
|
966
|
-
const fallback = {
|
|
967
|
-
channelId,
|
|
968
|
-
channelSlug: normalizeDiscordSlug(channelId) || channelId
|
|
969
|
-
};
|
|
970
|
-
let channelInfo;
|
|
971
|
-
try {
|
|
972
|
-
channelInfo = await discordMessagingActionRuntime.fetchChannelInfoDiscord(channelId, withOpts());
|
|
973
|
-
} catch {
|
|
974
|
-
return fallback;
|
|
975
|
-
}
|
|
976
|
-
const channelName = readDiscordChannelStringField(channelInfo, "name");
|
|
977
|
-
const target = {
|
|
978
|
-
channelId,
|
|
979
|
-
channelSlug: channelName ? normalizeDiscordSlug(channelName) : fallback.channelSlug
|
|
980
|
-
};
|
|
981
|
-
const targetGuildId = readDiscordChannelStringField(channelInfo, "guild_id", "guildId");
|
|
982
|
-
if (targetGuildId) target.guildId = targetGuildId;
|
|
983
|
-
if (channelName) target.channelName = channelName;
|
|
984
|
-
if (!isDiscordThreadChannel(channelInfo)) return target;
|
|
985
|
-
target.scope = "thread";
|
|
986
|
-
target.parentId = readDiscordChannelStringField(channelInfo, "parent_id", "parentId");
|
|
987
|
-
if (!target.parentId) return target;
|
|
988
|
-
try {
|
|
989
|
-
const parentName = readDiscordChannelStringField(await discordMessagingActionRuntime.fetchChannelInfoDiscord(target.parentId, withOpts()), "name");
|
|
990
|
-
if (parentName) {
|
|
991
|
-
target.parentName = parentName;
|
|
992
|
-
target.parentSlug = normalizeDiscordSlug(parentName);
|
|
993
|
-
}
|
|
994
|
-
} catch {}
|
|
995
|
-
return target;
|
|
996
|
-
};
|
|
997
|
-
return {
|
|
998
|
-
action: params.action,
|
|
999
|
-
params: params.input,
|
|
1000
|
-
isActionEnabled: params.isActionEnabled,
|
|
1001
|
-
cfg: params.cfg,
|
|
1002
|
-
options: params.options,
|
|
1003
|
-
accountId,
|
|
1004
|
-
resolveChannelId: () => discordMessagingActionRuntime.resolveDiscordChannelId(readStringParam(params.input, "channelId", { required: true })),
|
|
1005
|
-
assertReadTargetAllowed: async ({ guildId, channelId }) => {
|
|
1006
|
-
const targetChannelId = discordMessagingActionRuntime.resolveDiscordChannelId(channelId);
|
|
1007
|
-
if (!hasGuildEntries && groupPolicy !== "disabled" && groupPolicy !== "allowlist") return;
|
|
1008
|
-
const target = await resolveReadTargetContext(targetChannelId);
|
|
1009
|
-
if (guildId) {
|
|
1010
|
-
if (target.guildId && target.guildId !== guildId) throw new Error("Discord read target channel is not allowed.");
|
|
1011
|
-
if (!isDiscordReadTargetAllowedInGuild({
|
|
1012
|
-
groupPolicy,
|
|
1013
|
-
guildInfo: await resolveReadGuildEntry(guildId),
|
|
1014
|
-
target
|
|
1015
|
-
})) throw new Error("Discord read target channel is not allowed.");
|
|
1016
|
-
return;
|
|
1017
|
-
}
|
|
1018
|
-
if (target.guildId) {
|
|
1019
|
-
if (!isDiscordReadTargetAllowedInGuild({
|
|
1020
|
-
groupPolicy,
|
|
1021
|
-
guildInfo: await resolveReadGuildEntry(target.guildId),
|
|
1022
|
-
target
|
|
1023
|
-
})) throw new Error("Discord read target channel is not allowed.");
|
|
1024
|
-
return;
|
|
1025
|
-
}
|
|
1026
|
-
if (!Object.values(guilds ?? {}).some((guildInfo) => isDiscordReadTargetExplicitlyAllowedById({
|
|
1027
|
-
groupPolicy,
|
|
1028
|
-
guildInfo: guildInfo ?? null,
|
|
1029
|
-
target
|
|
1030
|
-
}))) throw new Error("Discord read target channel is not allowed.");
|
|
1031
|
-
},
|
|
1032
|
-
assertGuildReadTargetAllowed: async ({ guildId }) => {
|
|
1033
|
-
const guildInfo = await resolveReadGuildEntry(guildId);
|
|
1034
|
-
if (!isDiscordGroupAllowedByPolicy({
|
|
1035
|
-
groupPolicy,
|
|
1036
|
-
guildAllowlisted: Boolean(guildInfo),
|
|
1037
|
-
channelAllowlistConfigured: false,
|
|
1038
|
-
channelAllowed: true
|
|
1039
|
-
})) throw new Error("Discord read target channel is not allowed.");
|
|
1040
|
-
if (hasDiscordGuildEntries(guildInfo?.channels) && !allowsAllDiscordGuildChannels(guildInfo.channels)) throw new Error("Discord message search requires channelId or channelIds so each read target can be authorized.");
|
|
1041
|
-
},
|
|
1042
|
-
resolveReactionChannelId: async () => {
|
|
1043
|
-
const target = readStringParam(params.input, "channelId") ?? readStringParam(params.input, "to", { required: true });
|
|
1044
|
-
return await discordMessagingActionRuntime.resolveDiscordReactionTargetChannelId({
|
|
1045
|
-
target,
|
|
1046
|
-
cfg: params.cfg,
|
|
1047
|
-
accountId: resolvedReactionAccountId
|
|
1048
|
-
});
|
|
1049
|
-
},
|
|
1050
|
-
withOpts,
|
|
1051
|
-
withReactionRuntimeOptions: (extra) => ({
|
|
1052
|
-
...reactionRuntimeOptions ?? cfgOptions,
|
|
1053
|
-
...extra
|
|
1054
|
-
}),
|
|
1055
|
-
normalizeMessage: (message) => {
|
|
1056
|
-
if (!message || typeof message !== "object") return message;
|
|
1057
|
-
return withNormalizedTimestamp(message, message.timestamp);
|
|
1058
|
-
}
|
|
1059
|
-
};
|
|
1060
|
-
}
|
|
1061
|
-
//#endregion
|
|
1062
|
-
//#region extensions/discord/src/actions/runtime.messaging.ts
|
|
1063
|
-
async function handleDiscordMessagingAction(action, params, isActionEnabled, cfg, options) {
|
|
1064
|
-
if (!cfg) throw new Error("Discord messaging actions require a resolved runtime config.");
|
|
1065
|
-
const ctx = createDiscordMessagingActionContext({
|
|
1066
|
-
action,
|
|
1067
|
-
input: params,
|
|
1068
|
-
isActionEnabled,
|
|
1069
|
-
cfg,
|
|
1070
|
-
options
|
|
1071
|
-
});
|
|
1072
|
-
return await handleDiscordReactionMessagingAction(ctx) ?? await handleDiscordMessageSendAction(ctx) ?? await handleDiscordMessageManagementAction(ctx) ?? (() => {
|
|
1073
|
-
throw new Error(`Unknown action: ${action}`);
|
|
1074
|
-
})();
|
|
1075
|
-
}
|
|
1076
|
-
//#endregion
|
|
1077
|
-
//#region extensions/discord/src/actions/runtime.moderation-shared.ts
|
|
1078
|
-
const moderationPermissions = {
|
|
1079
|
-
timeout: PermissionFlagsBits.ModerateMembers,
|
|
1080
|
-
kick: PermissionFlagsBits.KickMembers,
|
|
1081
|
-
ban: PermissionFlagsBits.BanMembers
|
|
1082
|
-
};
|
|
1083
|
-
function isDiscordModerationAction(action) {
|
|
1084
|
-
return action === "timeout" || action === "kick" || action === "ban";
|
|
1085
|
-
}
|
|
1086
|
-
function requiredGuildPermissionForModerationAction(action) {
|
|
1087
|
-
return moderationPermissions[action];
|
|
1088
|
-
}
|
|
1089
|
-
function readDiscordModerationCommand(action, params) {
|
|
1090
|
-
if (!isDiscordModerationAction(action)) throw new Error(`Unsupported Discord moderation action: ${action}`);
|
|
1091
|
-
return {
|
|
1092
|
-
action,
|
|
1093
|
-
guildId: readStringParam(params, "guildId", { required: true }),
|
|
1094
|
-
userId: readStringParam(params, "userId", { required: true }),
|
|
1095
|
-
durationMinutes: readNumberParam(params, "durationMinutes", { integer: true }),
|
|
1096
|
-
until: readStringParam(params, "until"),
|
|
1097
|
-
reason: readStringParam(params, "reason"),
|
|
1098
|
-
deleteMessageDays: readNumberParam(params, "deleteMessageDays", { integer: true })
|
|
1099
|
-
};
|
|
1100
|
-
}
|
|
1101
|
-
//#endregion
|
|
1102
|
-
//#region extensions/discord/src/actions/runtime.moderation.ts
|
|
1103
|
-
const discordModerationActionRuntime = {
|
|
1104
|
-
banMemberDiscord,
|
|
1105
|
-
hasAnyGuildPermissionDiscord,
|
|
1106
|
-
kickMemberDiscord,
|
|
1107
|
-
timeoutMemberDiscord
|
|
1108
|
-
};
|
|
1109
|
-
async function verifySenderModerationPermission(params) {
|
|
1110
|
-
if (!params.senderUserId) return;
|
|
1111
|
-
if (!await discordModerationActionRuntime.hasAnyGuildPermissionDiscord(params.guildId, params.senderUserId, [params.requiredPermission], createDiscordActionOptions({
|
|
1112
|
-
cfg: params.cfg,
|
|
1113
|
-
accountId: params.accountId
|
|
1114
|
-
}))) throw new Error("Sender does not have required permissions for this moderation action.");
|
|
1115
|
-
}
|
|
1116
|
-
async function handleDiscordModerationAction(action, params, isActionEnabled, cfg) {
|
|
1117
|
-
if (!isDiscordModerationAction(action)) throw new Error(`Unknown action: ${action}`);
|
|
1118
|
-
if (!isActionEnabled("moderation", false)) throw new Error("Discord moderation is disabled.");
|
|
1119
|
-
if (!cfg) throw new Error("Discord moderation actions require a resolved runtime config.");
|
|
1120
|
-
const accountId = readStringParam(params, "accountId");
|
|
1121
|
-
const command = readDiscordModerationCommand(action, params);
|
|
1122
|
-
const senderUserId = readStringParam(params, "senderUserId");
|
|
1123
|
-
const withOpts = () => createDiscordActionOptions({
|
|
1124
|
-
cfg,
|
|
1125
|
-
accountId
|
|
1126
|
-
});
|
|
1127
|
-
await verifySenderModerationPermission({
|
|
1128
|
-
guildId: command.guildId,
|
|
1129
|
-
senderUserId,
|
|
1130
|
-
requiredPermission: requiredGuildPermissionForModerationAction(command.action),
|
|
1131
|
-
accountId,
|
|
1132
|
-
cfg
|
|
1133
|
-
});
|
|
1134
|
-
switch (command.action) {
|
|
1135
|
-
case "timeout": return jsonResult({
|
|
1136
|
-
ok: true,
|
|
1137
|
-
member: await discordModerationActionRuntime.timeoutMemberDiscord({
|
|
1138
|
-
guildId: command.guildId,
|
|
1139
|
-
userId: command.userId,
|
|
1140
|
-
durationMinutes: command.durationMinutes,
|
|
1141
|
-
until: command.until,
|
|
1142
|
-
reason: command.reason
|
|
1143
|
-
}, withOpts())
|
|
1144
|
-
});
|
|
1145
|
-
case "kick":
|
|
1146
|
-
await discordModerationActionRuntime.kickMemberDiscord({
|
|
1147
|
-
guildId: command.guildId,
|
|
1148
|
-
userId: command.userId,
|
|
1149
|
-
reason: command.reason
|
|
1150
|
-
}, withOpts());
|
|
1151
|
-
return jsonResult({ ok: true });
|
|
1152
|
-
case "ban":
|
|
1153
|
-
await discordModerationActionRuntime.banMemberDiscord({
|
|
1154
|
-
guildId: command.guildId,
|
|
1155
|
-
userId: command.userId,
|
|
1156
|
-
reason: command.reason,
|
|
1157
|
-
deleteMessageDays: command.deleteMessageDays
|
|
1158
|
-
}, withOpts());
|
|
1159
|
-
return jsonResult({ ok: true });
|
|
1160
|
-
}
|
|
1161
|
-
throw new Error("Unsupported Discord moderation action");
|
|
1162
|
-
}
|
|
1163
|
-
//#endregion
|
|
1164
|
-
//#region extensions/discord/src/actions/runtime.presence.ts
|
|
1165
|
-
const ACTIVITY_TYPE_MAP = {
|
|
1166
|
-
playing: 0,
|
|
1167
|
-
streaming: 1,
|
|
1168
|
-
listening: 2,
|
|
1169
|
-
watching: 3,
|
|
1170
|
-
custom: 4,
|
|
1171
|
-
competing: 5
|
|
1172
|
-
};
|
|
1173
|
-
const VALID_STATUSES = new Set([
|
|
1174
|
-
"online",
|
|
1175
|
-
"dnd",
|
|
1176
|
-
"idle",
|
|
1177
|
-
"invisible"
|
|
1178
|
-
]);
|
|
1179
|
-
async function handleDiscordPresenceAction(action, params, isActionEnabled) {
|
|
1180
|
-
if (action !== "setPresence") throw new Error(`Unknown presence action: ${action}`);
|
|
1181
|
-
if (!isActionEnabled("presence", false)) throw new Error("Discord presence changes are disabled.");
|
|
1182
|
-
const accountId = readStringParam(params, "accountId");
|
|
1183
|
-
const gateway = getGateway(accountId);
|
|
1184
|
-
if (!gateway) throw new Error(`Discord gateway not available${accountId ? ` for account "${accountId}"` : ""}. The bot may not be connected.`);
|
|
1185
|
-
if (!gateway.isConnected) throw new Error(`Discord gateway is not connected${accountId ? ` for account "${accountId}"` : ""}.`);
|
|
1186
|
-
const statusRaw = readStringParam(params, "status") ?? "online";
|
|
1187
|
-
if (!VALID_STATUSES.has(statusRaw)) throw new Error(`Invalid status "${statusRaw}". Must be one of: ${[...VALID_STATUSES].join(", ")}`);
|
|
1188
|
-
const status = statusRaw;
|
|
1189
|
-
const activityTypeRaw = readStringParam(params, "activityType");
|
|
1190
|
-
const activityName = readStringParam(params, "activityName");
|
|
1191
|
-
const activities = [];
|
|
1192
|
-
if (activityTypeRaw || activityName) {
|
|
1193
|
-
if (!activityTypeRaw) throw new Error(`activityType is required when activityName is provided. Valid types: ${Object.keys(ACTIVITY_TYPE_MAP).join(", ")}`);
|
|
1194
|
-
const typeNum = ACTIVITY_TYPE_MAP[normalizeLowercaseStringOrEmpty(activityTypeRaw)];
|
|
1195
|
-
if (typeNum === void 0) throw new Error(`Invalid activityType "${activityTypeRaw}". Must be one of: ${Object.keys(ACTIVITY_TYPE_MAP).join(", ")}`);
|
|
1196
|
-
const activity = {
|
|
1197
|
-
name: activityName ?? "",
|
|
1198
|
-
type: typeNum
|
|
1199
|
-
};
|
|
1200
|
-
if (typeNum === 1) {
|
|
1201
|
-
const url = readStringParam(params, "activityUrl");
|
|
1202
|
-
if (url) activity.url = url;
|
|
1203
|
-
}
|
|
1204
|
-
const state = readStringParam(params, "activityState");
|
|
1205
|
-
if (state) activity.state = state;
|
|
1206
|
-
activities.push(activity);
|
|
1207
|
-
}
|
|
1208
|
-
const presenceData = {
|
|
1209
|
-
since: null,
|
|
1210
|
-
activities,
|
|
1211
|
-
status,
|
|
1212
|
-
afk: false
|
|
1213
|
-
};
|
|
1214
|
-
gateway.updatePresence(presenceData);
|
|
1215
|
-
return jsonResult({
|
|
1216
|
-
ok: true,
|
|
1217
|
-
status,
|
|
1218
|
-
activities: activities.map((a) => Object.assign({
|
|
1219
|
-
type: a.type,
|
|
1220
|
-
name: a.name
|
|
1221
|
-
}, a.url ? { url: a.url } : {}, a.state ? { state: a.state } : {}))
|
|
1222
|
-
});
|
|
1223
|
-
}
|
|
1224
|
-
//#endregion
|
|
1225
|
-
//#region extensions/discord/src/actions/runtime.ts
|
|
1226
|
-
const messagingActions = new Set([
|
|
1227
|
-
"react",
|
|
1228
|
-
"reactions",
|
|
1229
|
-
"sticker",
|
|
1230
|
-
"poll",
|
|
1231
|
-
"permissions",
|
|
1232
|
-
"fetchMessage",
|
|
1233
|
-
"readMessages",
|
|
1234
|
-
"sendMessage",
|
|
1235
|
-
"editMessage",
|
|
1236
|
-
"deleteMessage",
|
|
1237
|
-
"threadCreate",
|
|
1238
|
-
"threadList",
|
|
1239
|
-
"threadReply",
|
|
1240
|
-
"pinMessage",
|
|
1241
|
-
"unpinMessage",
|
|
1242
|
-
"listPins",
|
|
1243
|
-
"searchMessages"
|
|
1244
|
-
]);
|
|
1245
|
-
const guildActions = new Set([
|
|
1246
|
-
"memberInfo",
|
|
1247
|
-
"roleInfo",
|
|
1248
|
-
"emojiList",
|
|
1249
|
-
"emojiUpload",
|
|
1250
|
-
"stickerUpload",
|
|
1251
|
-
"roleAdd",
|
|
1252
|
-
"roleRemove",
|
|
1253
|
-
"channelInfo",
|
|
1254
|
-
"channelList",
|
|
1255
|
-
"voiceStatus",
|
|
1256
|
-
"eventList",
|
|
1257
|
-
"eventCreate",
|
|
1258
|
-
"channelCreate",
|
|
1259
|
-
"channelEdit",
|
|
1260
|
-
"channelDelete",
|
|
1261
|
-
"channelMove",
|
|
1262
|
-
"categoryCreate",
|
|
1263
|
-
"categoryEdit",
|
|
1264
|
-
"categoryDelete",
|
|
1265
|
-
"channelPermissionSet",
|
|
1266
|
-
"channelPermissionRemove"
|
|
1267
|
-
]);
|
|
1268
|
-
const moderationActions = new Set([
|
|
1269
|
-
"timeout",
|
|
1270
|
-
"kick",
|
|
1271
|
-
"ban"
|
|
1272
|
-
]);
|
|
1273
|
-
const presenceActions = new Set(["setPresence"]);
|
|
1274
|
-
async function handleDiscordAction(params, cfg, options) {
|
|
1275
|
-
const action = readStringParam(params, "action", { required: true });
|
|
1276
|
-
const isActionEnabled = createDiscordActionGate({
|
|
1277
|
-
cfg,
|
|
1278
|
-
accountId: readStringParam(params, "accountId")
|
|
1279
|
-
});
|
|
1280
|
-
if (messagingActions.has(action)) return await handleDiscordMessagingAction(action, params, isActionEnabled, cfg, options);
|
|
1281
|
-
if (guildActions.has(action)) return await handleDiscordGuildAction(action, params, isActionEnabled, cfg, options);
|
|
1282
|
-
if (moderationActions.has(action)) return await handleDiscordModerationAction(action, params, isActionEnabled, cfg);
|
|
1283
|
-
if (presenceActions.has(action)) return await handleDiscordPresenceAction(action, params, isActionEnabled);
|
|
1284
|
-
throw new Error(`Unknown action: ${action}`);
|
|
1285
|
-
}
|
|
1286
|
-
//#endregion
|
|
1287
|
-
export { readDiscordChannelCreateParams as a, readDiscordParentIdParam as c, requiredGuildPermissionForModerationAction as i, isDiscordModerationAction as n, readDiscordChannelEditParams as o, readDiscordModerationCommand as r, readDiscordChannelMoveParams as s, handleDiscordAction as t };
|