squidclaw 2026.4.20 → 2026.4.21
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/.buildstamp +1 -1
- package/dist/{abort-H-Ry_5LX.js → abort-BK5S-MVo.js} +2 -2
- package/dist/{abort.runtime-CgR9MdCq.js → abort.runtime-BS8WXSXO.js} +1 -1
- package/dist/abort.runtime.js +1 -1
- package/dist/{access-control-C_kCoSvX.js → access-control-DTTlrBlO.js} +1 -1
- package/dist/{accounts-xHbvTM3L.js → accounts-BPP8Fyqx.js} +1 -1
- package/dist/{accounts-DAtrMfJC.js → accounts-BaLpRlYY.js} +1 -1
- package/dist/accounts-DPVrioFv.js +2 -0
- package/dist/{accounts-DAjE_Is-.js → accounts-DT_NAs1C.js} +2 -2
- package/dist/acp-binding-runtime-B7QSJdNn.js +2 -0
- package/dist/{acp-runtime-CdrZmqRF.js → acp-runtime-BnYh9Ei2.js} +2 -2
- package/dist/{acp-stateful-target-driver-BMqidvHe.js → acp-stateful-target-driver-CDpYxOAj.js} +2 -2
- package/dist/{action-info-DsVwVslz.js → action-info-5SZ4BAXs.js} +1 -1
- package/dist/{action-kill-BEks25cD.js → action-kill-4b3muJZ_.js} +2 -2
- package/dist/{action-runtime-C5gQ21hq.js → action-runtime-DFXu0lS3.js} +1 -1
- package/dist/{action-runtime-CIIkr60b.js → action-runtime-NfxAM8kZ.js} +6 -6
- package/dist/{action-send-BiwY0FSX.js → action-send-_HHZ5zPR.js} +2 -2
- package/dist/{action-spawn-Be84d9wb.js → action-spawn-BvFMk5Af.js} +1 -1
- package/dist/{actions.runtime-1vRPu9AI.js → actions.runtime-CSADGcEf.js} +1 -1
- package/dist/agent-BYjZBJjX.js +2 -0
- package/dist/{agent-command-CbjBuiAT.js → agent-command-5N2PlknP.js} +3 -3
- package/dist/{agent-components.runtime-Cp1ptSpx.js → agent-components.runtime-iyd3FoCi.js} +3 -3
- package/dist/agent-components.runtime.js +1 -1
- package/dist/{agent-runner.runtime-FxhCE3wy.js → agent-runner.runtime-BdzGlW5a.js} +1 -1
- package/dist/agent-runner.runtime.js +1 -1
- package/dist/{agent-runtime-9uO3F0oP.js → agent-runtime-DiwekA7Y.js} +1 -1
- package/dist/api-BKlSWpmj.js +2 -0
- package/dist/{api-p32AuYfU.js → api-Bl81lrj_.js} +1 -1
- package/dist/api-CDmoAd0d.js +5 -0
- package/dist/{api-_WPMaABh.js → api-CGx_lH_S.js} +2 -2
- package/dist/{api-B1tX99Z2.js → api-DOC0PIRN.js} +3 -3
- package/dist/api-DgXYxGAg.js +2 -0
- package/dist/api-DjPFmNKJ.js +3 -0
- package/dist/api-Dq0w8R0_.js +2 -0
- package/dist/{api-B9k8AuI7.js → api-KzkfeEqo.js} +5 -5
- package/dist/{api-BgVJ_Zq4.js → api-yKtusK9J.js} +1 -1
- package/dist/{approval-handler.runtime-Uapb5hJ2.js → approval-handler.runtime-DHlGW39M.js} +2 -2
- package/dist/{approval-handler.runtime-B9avXUxa.js → approval-handler.runtime-DNm7fVYc.js} +4 -4
- package/dist/approval-handler.runtime.js +1 -1
- package/dist/{approval-native-D3EX3eJk.js → approval-native-z_FiczGR.js} +3 -3
- package/dist/{attachment-normalize-DTGRSmPb.js → attachment-normalize-KfDTxLFN.js} +1 -1
- package/dist/{binding-routing-CACEZc_Z.js → binding-routing-CAblYKaE.js} +1 -1
- package/dist/{binding-targets-B3umteYg.js → binding-targets-DrBXDwZt.js} +1 -1
- package/dist/{bot-3CKIZCV8.js → bot-CQnukBtH.js} +23 -23
- package/dist/{bot-message-context.runtime-D1IAU18r.js → bot-message-context.runtime-DPRXIR4Z.js} +2 -2
- package/dist/bot-message-context.runtime.js +1 -1
- package/dist/{bot-message-context.session.runtime-lJ3op8vq.js → bot-message-context.session.runtime-6X3ySjjb.js} +2 -2
- package/dist/bot-message-context.session.runtime.js +1 -1
- package/dist/{bot-native-commands.delivery.runtime-DWiCYGDZ.js → bot-native-commands.delivery.runtime-nw0DG8iP.js} +1 -1
- package/dist/bot-native-commands.delivery.runtime.js +1 -1
- package/dist/{bot-native-commands.runtime-BPJ4W_CC.js → bot-native-commands.runtime-R-B6A6ks.js} +3 -3
- package/dist/bot-native-commands.runtime.js +1 -1
- 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-xzT35Acg.js → capability-cli-UAAMEpSn.js} +3 -3
- package/dist/{captured-registration-xo8TUH5y.js → captured-registration-Bl60Hvp4.js} +2 -2
- package/dist/{channel-CBi9Mqfi.js → channel-BObgCPix.js} +15 -15
- package/dist/{channel-CdvA2txv.js → channel-B_1FXIEg.js} +3 -3
- package/dist/{channel-D7lvZevL.js → channel-Bi128jbX.js} +4 -4
- package/dist/{channel-B5pj568b.js → channel-Cd8gV_ZA.js} +5 -5
- package/dist/{channel-QUA9rLQ2.js → channel-D9QhH6Rm.js} +7 -7
- package/dist/{channel-Cghz3p4D.js → channel-DHw-I7Nf.js} +8 -8
- package/dist/{channel-BzM0t-D2.js → channel-DPeDuUG7.js} +5 -5
- package/dist/{channel-B_T0mNJ2.js → channel-Dqd2YdW8.js} +4 -4
- package/dist/{channel-BmJNPdfD.js → channel-DuF6K39z.js} +17 -17
- package/dist/{channel-gxJNusbo.js → channel-MTt9w8Yo.js} +6 -6
- package/dist/{channel-actions-C_3gJyZw.js → channel-actions-v9Ojn4Nf.js} +1 -1
- package/dist/{channel-actions.runtime-w1jv9p90.js → channel-actions.runtime-D_OK-K6b.js} +1 -1
- package/dist/channel-actions.runtime.js +1 -1
- package/dist/channel-core-B6fpCVKZ.js +2 -0
- package/dist/{channel-DkAjYuc2.js → channel-enKQhcLP.js} +4 -4
- package/dist/{channel-inbound-DM101rnQ.js → channel-inbound-DgXIB5SS.js} +1 -1
- package/dist/{channel-plugin-runtime-Dz3Al02K.js → channel-plugin-runtime-D86XdI64.js} +4 -4
- package/dist/{channel-react-action-6uVxpBdG.js → channel-react-action-DnrcGui_.js} +1 -1
- package/dist/{channel-runtime-BhIg_tQ5.js → channel-runtime-DpiPbwg2.js} +4 -4
- package/dist/{channel.runtime-CFA1WDvX.js → channel.runtime-3MWB-sS3.js} +5 -5
- package/dist/{channel.runtime-Fv38Q_7f.js → channel.runtime-BENKcwWx.js} +4 -4
- package/dist/{channel.runtime-C5dkHhH9.js → channel.runtime-BKLXzG_k.js} +3 -3
- package/dist/{channel.runtime-F8JpG6qp.js → channel.runtime-BZCzEVB1.js} +3 -3
- package/dist/{channel.runtime-8uViPdpR.js → channel.runtime-Bpd2eDL1.js} +2 -2
- package/dist/{channel.runtime-Cyo8GHDq.js → channel.runtime-CQLAfOwr.js} +1 -1
- package/dist/{channel.runtime-ZGUvm6Lj.js → channel.runtime-CYyl__8v.js} +1 -1
- package/dist/{channel.runtime-d-J52tuj.js → channel.runtime-CaPRJAHJ.js} +4 -4
- package/dist/{channel.runtime-C2oCfz4Z.js → channel.runtime-KjIJ5mS7.js} +6 -6
- package/dist/channel.runtime-ercIXnxx.js +4 -0
- package/dist/channel.runtime.js +1 -1
- package/dist/{channel.setup-DNMo-iy9.js → channel.setup-DLd9-wxk.js} +2 -2
- package/dist/{channel.setup-D6Ev9JQ2.js → channel.setup-DNoFxgqt.js} +1 -1
- package/dist/{channel2.runtime-B7yDRQLd.js → channel2.runtime-BBtt7Aro.js} +1 -1
- package/dist/channel2.runtime.js +1 -1
- package/dist/{cli-BxS1u0Tt.js → cli-BPCz7vGj.js} +1 -1
- package/dist/{cli-DW4YF7yl.js → cli-DBC4vA8I.js} +9 -9
- package/dist/{cli-metadata-LFUyAbIz.js → cli-metadata-BqKcet1W.js} +1 -1
- package/dist/cli-startup-metadata.json +1 -1
- package/dist/{cli.runtime-CHgmcx5B.js → cli.runtime-DBVpCu66.js} +2 -2
- package/dist/{client-CzWWrEwX.js → client-BbuH8ELw.js} +1 -1
- package/dist/{client-C54S-kFe.js → client-DzaxdBI_.js} +4 -4
- package/dist/client-FIe7pL-v.js +5 -0
- package/dist/{client-bootstrap-CQNkW7dg.js → client-bootstrap-C5Y8VeDx.js} +1 -1
- package/dist/{client-bootstrap-laBFZvcW.js → client-bootstrap-CsAu9dD7.js} +1 -1
- package/dist/{client-HkJafYV_.js → client-p3fG-701.js} +2 -2
- package/dist/{command-auth-CXgepi0E.js → command-auth-5TxiwPIQ.js} +1 -1
- package/dist/{command-registry-DqxWHS_n.js → command-registry-C8-Wtr-c.js} +1 -1
- package/dist/{command-registry-BXj-_sY1.js → command-registry-CPWNjxT6.js} +6 -6
- package/dist/{commands-acp-BPodODnN.js → commands-acp-CIBeOwap.js} +3 -3
- package/dist/{commands-compact.runtime-CDqZhOA_.js → commands-compact.runtime-BkkVU5U6.js} +1 -1
- package/dist/commands-compact.runtime.js +1 -1
- package/dist/{commands-handlers.runtime-D3Pxxbol.js → commands-handlers.runtime-SdVDl5xx.js} +11 -11
- package/dist/commands-handlers.runtime.js +1 -1
- package/dist/{commands-status-BByA2jvy.js → commands-status-I7_N1tsF.js} +2 -2
- package/dist/{commands-status.runtime-BTL1D6VP.js → commands-status.runtime-DWO8GX2D.js} +1 -1
- package/dist/commands-status.runtime.js +1 -1
- package/dist/commands-subagents-control.runtime-AbmpZui3.js +2 -0
- package/dist/{commands-subagents-control.runtime-6fWsLbhV.js → commands-subagents-control.runtime-C_iqutEz.js} +2 -2
- package/dist/commands-subagents-control.runtime.js +1 -1
- package/dist/{commands.runtime-Cm8D-nT-.js → commands.runtime-eHK_QBgc.js} +3 -3
- package/dist/commands.runtime.js +1 -1
- package/dist/{compact.runtime-ClyAUGKM.js → compact.runtime-DVxJgEUW.js} +1 -1
- package/dist/compact.runtime.js +1 -1
- package/dist/{completion-cli-CraSWzj7.js → completion-cli-DMMl17uG.js} +2 -2
- package/dist/{completion-cli-BC4wGtio.js → completion-cli-DbfKLf32.js} +1 -1
- package/dist/{config-CNE4XZcU.js → config-8kVNLORv.js} +4 -4
- package/dist/{connect-options-BvSV2hbt.js → connect-options-jWo6OnhA.js} +1 -1
- package/dist/{conversation-binding-runtime-C8_JxOK0.js → conversation-binding-runtime-D_zjm3wL.js} +1 -1
- package/dist/{conversation-runtime-GN2oDF9f.js → conversation-runtime-B9kR_5Zn.js} +2 -2
- package/dist/{core-BGdsH-jP.js → core-Dpsiu47E.js} +2 -2
- package/dist/{create-client-1IpnT7Zn.js → create-client-Dj7rWaoO.js} +3 -3
- package/dist/create-client-LjeCsm86.js +2 -0
- package/dist/{credentials-BnPD4p7_.js → credentials-BlBdPxmP.js} +1 -1
- package/dist/{credentials-write.runtime-CvY5SyDX.js → credentials-write.runtime-BDop2Prn.js} +3 -3
- package/dist/credentials-write.runtime.js +1 -1
- package/dist/{delegate-Dcf0AxjV.js → delegate-Dg1zJNN4.js} +1 -1
- package/dist/{delivery-CnW7In7W.js → delivery-BWnKQ7kI.js} +4 -4
- package/dist/{direct-dm-C6ZoyTKO.js → direct-dm-CzaaDdM9.js} +1 -1
- package/dist/{discovery-D1EN0RZ8.js → discovery-CVgZ3Srt.js} +1 -1
- package/dist/{discovery-B6IVAqCL.js → discovery-Dcir3XWB.js} +1 -1
- package/dist/{dispatch-CBAXU8nt.js → dispatch-BhbDD_Wd.js} +2 -2
- package/dist/{dispatch-acp-manager.runtime-Bb2GAqlG.js → dispatch-acp-manager.runtime-Cczo85cS.js} +1 -1
- package/dist/dispatch-acp-manager.runtime.js +1 -1
- package/dist/{dispatch-acp-jUw9HuoG.js → dispatch-acp-zh4bcE6-.js} +1 -1
- package/dist/{dispatch-acp.runtime-DvEVus1N.js → dispatch-acp.runtime-B6Y7JM1F.js} +1 -1
- package/dist/dispatch-acp.runtime.js +1 -1
- package/dist/{docker-harness-AKpGA495.js → docker-harness-DYCX4PtZ.js} +1 -1
- package/dist/{doctor-completion-Bwwr5hVS.js → doctor-completion-DrqYKC-E.js} +1 -1
- package/dist/entry.js +1 -1
- package/dist/env-auth-CUtLVe1X.js +2 -0
- package/dist/{exec-approvals-DWDJf_Y7.js → exec-approvals-CHbfTHpS.js} +1 -1
- package/dist/{exec-approvals-DdUXdhUz.js → exec-approvals-DxjsYXTJ.js} +2 -2
- package/dist/extensionAPI.js +1 -1
- package/dist/extensions/acpx/index.js +3 -3
- package/dist/extensions/acpx/register.runtime.js +1 -1
- package/dist/extensions/acpx/runtime-api.js +3 -3
- package/dist/extensions/amazon-bedrock/.squidclaw-runtime-deps-stamp.json +1 -1
- package/dist/extensions/amazon-bedrock/api.js +2 -2
- package/dist/extensions/amazon-bedrock/discovery.js +1 -1
- package/dist/extensions/amazon-bedrock/index.js +1 -1
- package/dist/extensions/amazon-bedrock/register.sync.runtime.js +1 -1
- package/dist/extensions/amazon-bedrock/setup-api.js +1 -1
- package/dist/extensions/amazon-bedrock-mantle/.squidclaw-runtime-deps-stamp.json +1 -1
- package/dist/extensions/amazon-bedrock-mantle/api.js +1 -1
- package/dist/extensions/amazon-bedrock-mantle/discovery.js +1 -1
- package/dist/extensions/amazon-bedrock-mantle/index.js +1 -1
- package/dist/extensions/amazon-bedrock-mantle/register.sync.runtime.js +1 -1
- package/dist/extensions/bluebubbles/api.js +3 -3
- package/dist/extensions/browser/test-support.js +1 -1
- package/dist/extensions/device-pair/api.js +1 -1
- package/dist/extensions/device-pair/index.js +3 -3
- package/dist/extensions/device-pair/notify.js +1 -1
- package/dist/extensions/device-pair/pair-command-approve.js +1 -1
- package/dist/extensions/diffs/.squidclaw-runtime-deps-stamp.json +1 -1
- package/dist/extensions/discord/.squidclaw-runtime-deps-stamp.json +1 -1
- package/dist/extensions/discord/api.js +4 -4
- package/dist/extensions/discord/channel-plugin-api.js +1 -1
- package/dist/extensions/discord/contract-api.js +2 -2
- package/dist/extensions/discord/runtime-api.js +6 -6
- package/dist/extensions/discord/subagent-hooks-api.js +1 -1
- package/dist/extensions/discord/test-api.js +4 -4
- package/dist/extensions/feishu/.squidclaw-runtime-deps-stamp.json +1 -1
- package/dist/extensions/feishu/api.js +6 -6
- package/dist/extensions/feishu/contract-api.js +1 -1
- package/dist/extensions/feishu/runtime-api.js +1 -1
- package/dist/extensions/google/index.js +1 -1
- package/dist/extensions/google/music-generation-provider.js +1 -1
- package/dist/extensions/googlechat/api.js +1 -1
- package/dist/extensions/googlechat/runtime-api.js +1 -1
- package/dist/extensions/googlechat/test-api.js +2 -2
- package/dist/extensions/imessage/api.js +6 -6
- 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/line/api.js +7 -7
- package/dist/extensions/line/contract-api.js +1 -1
- package/dist/extensions/line/runtime-api.js +4 -4
- package/dist/extensions/line/setup-api.js +1 -1
- package/dist/extensions/lobster/runtime-api.js +1 -1
- package/dist/extensions/matrix/api.js +4 -4
- package/dist/extensions/matrix/channel-plugin-api.js +1 -1
- package/dist/extensions/matrix/cli-metadata.js +1 -1
- package/dist/extensions/matrix/contract-api.js +3 -3
- package/dist/extensions/matrix/index.js +1 -1
- package/dist/extensions/matrix/plugin-entry.handlers.runtime.js +3 -3
- package/dist/extensions/matrix/runtime-heavy-api.js +1 -1
- package/dist/extensions/matrix/test-api.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 +1 -1
- package/dist/extensions/memory-core/cli-metadata.js +1 -1
- package/dist/extensions/memory-lancedb/cli-metadata.js +1 -1
- package/dist/extensions/minimax/index.js +1 -1
- package/dist/extensions/minimax/music-generation-provider.js +1 -1
- package/dist/extensions/msteams/api.js +1 -1
- package/dist/extensions/msteams/runtime-api.js +3 -3
- package/dist/extensions/msteams/test-api.js +1 -1
- package/dist/extensions/nextcloud-talk/api.js +5 -5
- package/dist/extensions/nextcloud-talk/runtime-api.js +2 -2
- package/dist/extensions/nostr/api.js +5 -5
- package/dist/extensions/nostr/runtime-api.js +3 -3
- package/dist/extensions/nostr/setup-api.js +1 -1
- package/dist/extensions/nostr/test-api.js +1 -1
- package/dist/extensions/openshell/index.js +1 -1
- package/dist/extensions/qa-channel/api.js +3 -3
- package/dist/extensions/qa-channel/runtime-api.js +3 -3
- package/dist/extensions/qa-channel/setup-entry.js +3 -3
- package/dist/extensions/qa-lab/api.js +4 -4
- package/dist/extensions/qa-lab/index.js +2 -2
- package/dist/extensions/qa-lab/runtime-api.js +3 -3
- package/dist/extensions/qqbot/.squidclaw-runtime-deps-stamp.json +1 -1
- package/dist/extensions/qqbot/api.js +1 -1
- package/dist/extensions/signal/api.js +10 -10
- package/dist/extensions/signal/reaction-runtime-api.js +1 -1
- package/dist/extensions/signal/runtime-api.js +7 -7
- package/dist/extensions/slack/.squidclaw-runtime-deps-stamp.json +1 -1
- package/dist/extensions/slack/api.js +3 -3
- package/dist/extensions/slack/channel-plugin-api.js +1 -1
- package/dist/extensions/slack/contract-api.js +2 -2
- package/dist/extensions/slack/runtime-api.js +2 -2
- package/dist/extensions/slack/security-contract-api.js +1 -1
- package/dist/extensions/slack/test-api.js +2 -2
- package/dist/extensions/synology-chat/api.js +2 -2
- package/dist/extensions/telegram/.squidclaw-runtime-deps-stamp.json +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 +4 -4
- package/dist/extensions/telegram/runtime-api.js +7 -7
- package/dist/extensions/telegram/setup-plugin-api.js +1 -1
- package/dist/extensions/telegram/test-api.js +2 -2
- package/dist/extensions/telegram/test-support.js +3 -3
- package/dist/extensions/tlon/api.js +3 -3
- package/dist/extensions/tlon/runtime-api.js +1 -1
- package/dist/extensions/tlon/test-api.js +1 -1
- package/dist/extensions/twitch/api.js +1 -1
- package/dist/extensions/webhooks/.squidclaw-runtime-deps-stamp.json +1 -1
- package/dist/extensions/webhooks/api.js +1 -1
- package/dist/extensions/webhooks/index.js +1 -1
- package/dist/extensions/whatsapp/action-runtime-api.js +1 -1
- package/dist/extensions/whatsapp/action-runtime.runtime.js +1 -1
- package/dist/extensions/whatsapp/api.js +4 -4
- package/dist/extensions/whatsapp/channel-plugin-api.js +1 -1
- package/dist/extensions/whatsapp/contract-api.js +1 -1
- package/dist/extensions/whatsapp/runtime-api.js +6 -6
- package/dist/extensions/whatsapp/setup-plugin-api.js +1 -1
- package/dist/extensions/whatsapp/test-api.js +4 -4
- package/dist/extensions/zalo/api.js +9 -9
- package/dist/extensions/zalo/runtime-api.js +2 -2
- package/dist/extensions/zalo/setup-api.js +2 -2
- package/dist/extensions/zalouser/api.js +1 -1
- package/dist/extensions/zalouser/runtime-api.js +4 -4
- package/dist/extensions/zalouser/test-api.js +1 -1
- package/dist/{format-CleST4de.js → format-DrtHwjJy.js} +3 -3
- package/dist/{gateway-kuQhhn7Y.js → gateway-MtQplUxe.js} +1 -1
- package/dist/{gateway-cli-CjcQJP-9.js → gateway-cli-BJ3aD2WU.js} +1 -1
- package/dist/get-reply-from-config.runtime-CWcEG-KI.js +2 -0
- package/dist/get-reply-from-config.runtime.js +1 -1
- package/dist/{graph-users-D6lkAb5j.js → graph-users-Bzp0oX2c.js} +1 -1
- package/dist/{group-access-D9k_GVNr.js → group-access-DOPehmrd.js} +1 -1
- package/dist/{handle-action-BxSGhU80.js → handle-action-Bf1KYMx6.js} +1 -1
- package/dist/{heartbeat-runner-DlfNLvD3.js → heartbeat-runner-BDSjOeAX.js} +1 -1
- package/dist/{heartbeat-runner-CF8p3dgk.js → heartbeat-runner-CYdRMi7_.js} +2 -2
- package/dist/heartbeat-runner.runtime-ByE0DlmV.js +2 -0
- package/dist/heartbeat-runner.runtime.js +1 -1
- package/dist/{http-client-Buv7NgDj.js → http-client-BXoOt9zV.js} +1 -1
- package/dist/{inbound-reply-dispatch-Cp44_op7.js → inbound-reply-dispatch-QoP-4etY.js} +1 -1
- package/dist/index.js +2 -2
- package/dist/{inline-buttons-BpMw2u8L.js → inline-buttons-DhvyL0gh.js} +1 -1
- package/dist/{known-users-DZaXUWiG.js → known-users-CkaEZrG-.js} +2 -2
- package/dist/{legacy-crypto-restore-ClFp2QUY.js → legacy-crypto-restore-DqHTfeQZ.js} +1 -1
- package/dist/{library-CSBTqHMR.js → library-DWIJMiC1.js} +1 -1
- package/dist/{llm-slug-generator-B01LP9HH.js → llm-slug-generator-CPJLUh4c.js} +1 -1
- package/dist/llm-slug-generator.js +1 -1
- package/dist/{login-K1GQthhU.js → login-D7bmVW5j.js} +8 -8
- package/dist/{manager-BTGVz4e1.js → manager-Fvv6XDbR.js} +1 -1
- package/dist/{manager.runtime-BBy0rWm9.js → manager.runtime-B2xwPNwV.js} +2 -2
- package/dist/manager.runtime.js +1 -1
- package/dist/{markdown-to-line-0K6UHBqJ.js → markdown-to-line-mtO9DgAI.js} +1 -1
- package/dist/matrix-migration.runtime-BANzRV6j.js +2 -0
- package/dist/matrix-migration.runtime.js +1 -1
- package/dist/{media-text-c7-3FyUu.js → media-text-gzhw__0D.js} +1 -1
- package/dist/{message-actions-BPQ-e3VC.js → message-actions-BDzHPwhu.js} +1 -1
- package/dist/{message-handler-B-u3SSes.js → message-handler-DZGQdR64.js} +7 -7
- package/dist/{messages-BuEE5gHf.js → messages-Bkqh7BiF.js} +3 -3
- package/dist/{migration-snapshot.runtime-ClrwAnV8.js → migration-snapshot.runtime-C42aXI4d.js} +2 -2
- package/dist/migration-snapshot.runtime.js +1 -1
- package/dist/{models-B4fVe317.js → models-ButQTiPN.js} +1 -1
- package/dist/{models-B5cGctMp.js → models-DEjGejys.js} +1 -1
- package/dist/{models-cli-DkYLCTnZ.js → models-cli-Bto5gRm_.js} +1 -1
- package/dist/{monitor-JDNTmtia.js → monitor-BBpB3kdf.js} +4 -4
- package/dist/monitor-BjfXsA4M.js +4 -0
- package/dist/monitor-Bp6GsWf8.js +5 -0
- package/dist/monitor-CHT-YgIL.js +2 -0
- package/dist/{monitor-CydoS_Vt.js → monitor-CiAj3Uay.js} +9 -9
- package/dist/{monitor-Di1L5Cy7.js → monitor-Cngu4k0r.js} +8 -8
- package/dist/{monitor-C7sqEJV_.js → monitor-DKQlDsej.js} +3 -3
- package/dist/{monitor-7LLOtbo9.js → monitor-DawRvs0y.js} +4 -4
- package/dist/{monitor-yZ0KJj-O.js → monitor-DcUmty8x.js} +8 -8
- package/dist/{monitor-CJrj1Hqg.js → monitor-DlK4PMhr.js} +18 -18
- package/dist/{monitor-auth-DC7ulkD8.js → monitor-auth-_eVL-FD2.js} +3 -3
- package/dist/{monitor-polling.runtime-CfWsLXwo.js → monitor-polling.runtime-BQV3eMgN.js} +3 -3
- package/dist/monitor-polling.runtime.js +1 -1
- package/dist/{monitor-CamRwhxS.js → monitor-vH3SeLmx.js} +1 -1
- package/dist/{monitor-webhook.runtime-CPYnFoZ4.js → monitor-webhook.runtime-DhTOwELa.js} +2 -2
- package/dist/monitor-webhook.runtime.js +1 -1
- package/dist/monitor.runtime-DQzPpCkM.js +2 -0
- package/dist/monitor.runtime.js +1 -1
- package/dist/{monitor.webhook-UpkTyK6s.js → monitor.webhook-B7iNLt-9.js} +1 -1
- package/dist/{msteams-RI171_Dk.js → msteams-CkA8M9AS.js} +1 -1
- package/dist/{music-generation-provider-DnqMVDu2.js → music-generation-provider-BpYR50zf.js} +1 -1
- package/dist/{music-generation-provider-DGTyCsNv.js → music-generation-provider-Defucc_t.js} +1 -1
- package/dist/{nextcloud-talk-CqWYizPC.js → nextcloud-talk-BpQBltdc.js} +1 -1
- package/dist/{nostr-D2I0V8TK.js → nostr-BlAumSd0.js} +1 -1
- package/dist/{notify-CWgeh13p.js → notify-KjiKWDf8.js} +1 -1
- package/dist/{onboard-BLH-yh58.js → onboard-BQk2zgU7.js} +1 -1
- package/dist/{outbound-adapter-D8CySdL9.js → outbound-adapter-C9RMFT9G.js} +2 -2
- package/dist/{outbound-send-deps-CeG28QYl.js → outbound-send-deps-CkqAJbWZ.js} +1 -1
- package/dist/{outbound.runtime-B57mI3Qc.js → outbound.runtime-DjJfaah3.js} +1 -1
- package/dist/outbound.runtime.js +1 -1
- package/dist/{pair-command-approve-DndR4jex.js → pair-command-approve-Z1zNIg2W.js} +2 -2
- package/dist/{persistent-bindings.lifecycle-Dcyib6NR.js → persistent-bindings.lifecycle-Dk6gSnpF.js} +1 -1
- package/dist/{pi-embedded-Bx9lPBB8.js → pi-embedded-BXkjNHgG.js} +12 -12
- package/dist/{pi-embedded-m_yOS0Tz.js → pi-embedded-pFmmpkYT.js} +1 -1
- package/dist/{pi-embedded.runtime-BT1nDhtw.js → pi-embedded.runtime-BlYjVS7s.js} +1 -1
- package/dist/pi-embedded.runtime.js +1 -1
- package/dist/plugin-sdk/.boundary-entry-shims.stamp +1 -1
- package/dist/plugin-sdk/acp-binding-runtime.js +2 -2
- package/dist/plugin-sdk/acp-runtime.js +2 -2
- 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/command-auth.js +2 -2
- 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 +3 -3
- package/dist/plugin-sdk/direct-dm.js +1 -1
- package/dist/plugin-sdk/inbound-reply-dispatch.js +1 -1
- package/dist/plugin-sdk/index.js +1 -1
- package/dist/plugin-sdk/irc.js +1 -1
- package/dist/plugin-sdk/msteams.js +2 -2
- package/dist/plugin-sdk/nextcloud-talk.js +2 -2
- package/dist/plugin-sdk/nostr.js +2 -2
- package/dist/plugin-sdk/qa-channel.js +3 -3
- package/dist/plugin-sdk/reply-dispatch-runtime.js +2 -2
- package/dist/plugin-sdk/reply-runtime.js +4 -4
- package/dist/plugin-sdk/testing.js +4 -4
- package/dist/plugin-sdk/zalo.js +1 -1
- package/dist/plugin-sdk/zalouser.js +1 -1
- package/dist/plugins/runtime/index.js +1 -1
- package/dist/{policy-BQcC86yf.js → policy-CUv3U5cu.js} +2 -2
- package/dist/{prepare-BsH6-Rk9.js → prepare-0NsbmIpG.js} +5 -5
- package/dist/{preview-streaming-C4PW-DAG.js → preview-streaming-DQLqvbBE.js} +1 -1
- package/dist/{probe-C1IDRTtc.js → probe-B94PGdGD.js} +2 -2
- package/dist/{probe-CL1l7rT3.js → probe-C86rZbSs.js} +1 -1
- package/dist/{probe-C2vBJwsU.js → probe-DNzlZ4Gm.js} +1 -1
- package/dist/probe-DOABPulN.js +2 -0
- package/dist/{probe-Cvzy5FiV.js → probe-Q_XnWndt.js} +7 -7
- package/dist/probe.runtime-BoR_rtfo.js +3 -0
- package/dist/{profile-update-XNGz8Vvb.js → profile-update-DoapRWz8.js} +1 -1
- package/dist/{program-DznbebAT.js → program-y-QXSMrP.js} +1 -1
- package/dist/{prompt-select-styled-CFx6rCz-.js → prompt-select-styled-CJwFKVfl.js} +3 -3
- package/dist/{provider-CXX-2cpp.js → provider-CAhmfu3_.js} +13 -13
- package/dist/{provider-DN64T2Yl.js → provider-YuQkYTm9.js} +10 -10
- package/dist/{provider-dispatcher-BlNn8Luw.js → provider-dispatcher-CqaUAtXd.js} +1 -1
- package/dist/{provider-session.runtime-CrP-Vxo4.js → provider-session.runtime-uMIk4Zas.js} +6 -6
- package/dist/provider-session.runtime.js +1 -1
- package/dist/provider.runtime-C68xiuja.js +2 -0
- package/dist/provider.runtime.js +1 -1
- package/dist/qa-channel-DXyPHOtD.js +2 -0
- package/dist/{qa-cli-4pW3AnNM.js → qa-cli-C0TNWGMj.js} +2 -2
- package/dist/{reaction-level-0Iq_4nvh.js → reaction-level-CsHmA5-L.js} +1 -1
- package/dist/{reaction-runtime-api-B6TDNZ-8.js → reaction-runtime-api-37SbdIrh.js} +1 -1
- package/dist/{register.agent-BQjga-2m.js → register.agent-Bn1KOtEZ.js} +3 -3
- package/dist/{register.maintenance-Dou-Yv4E.js → register.maintenance-Ddu7ldq2.js} +1 -1
- package/dist/{register.onboard-DGG5VJkr.js → register.onboard-CuqJtoGb.js} +1 -1
- package/dist/{register.runtime-W36V4yB6.js → register.runtime-827W3fFQ.js} +3 -3
- package/dist/register.runtime.js +1 -1
- package/dist/{register.setup-L2F2d7JV.js → register.setup-Bkxed9zB.js} +1 -1
- package/dist/{register.status-health-sessions-HUwktNNy.js → register.status-health-sessions-DhvY2ELa.js} +5 -5
- package/dist/{register.subclis-cvwvb-xK.js → register.subclis-BKBwxjAx.js} +6 -6
- package/dist/{register.subclis-S6RS8QK6.js → register.subclis-BcKJ7A8r.js} +1 -1
- package/dist/{register.sync.runtime-B3HMegN0.js → register.sync.runtime-BvxNyO1a.js} +2 -2
- package/dist/{register.sync.runtime-BnjDDEKs.js → register.sync.runtime-uMEVR5k9.js} +1 -1
- package/dist/register.sync.runtime.js +1 -1
- package/dist/{replies-pGD5U1PH.js → replies-pynzTLh6.js} +1 -1
- package/dist/reply-dispatch-runtime-Cl_97AB9.js +3 -0
- package/dist/{reply-CZ84PGXM.js → reply-gPxOKHrq.js} +6 -6
- package/dist/reply-resolver.runtime-CGlxPcC-.js +3 -0
- package/dist/reply-resolver.runtime.js +1 -1
- package/dist/{reply-runtime-tcjV951e.js → reply-runtime-Cc0_oT6w.js} +4 -4
- package/dist/reply.runtime-B6qQZUAc.js +2 -0
- package/dist/reply.runtime.js +1 -1
- package/dist/{resolve-targets-I9zj6PUv.js → resolve-targets-Cqar4s-P.js} +3 -3
- package/dist/{route-resolution-Cf1Xh7Zy.js → route-resolution-BGx0oG0T.js} +2 -2
- package/dist/{run-main-PuR6OnAq.js → run-main-DxX0w8bY.js} +7 -7
- package/dist/{runtime-gK4AYLgu.js → runtime-CGE2d-7o.js} +8 -8
- package/dist/{runtime-api-DJcp52zs.js → runtime-api-5lZXw1b3.js} +1 -1
- package/dist/{runtime-api-B2aTZnkP.js → runtime-api-BSpeC4PX.js} +4 -4
- package/dist/runtime-api-BTZQ2FkZ.js +2 -0
- package/dist/{runtime-api-bGTRWd_O.js → runtime-api-Br9iJPR4.js} +1 -1
- package/dist/{runtime-api-C1Wbd6jd.js → runtime-api-CDkP-XGv.js} +1 -1
- package/dist/{runtime-api-D2cOteXJ.js → runtime-api-DARNIF6F.js} +2 -2
- package/dist/{runtime-api-BRt9YRJy.js → runtime-api-DBZyGpTV.js} +1 -1
- package/dist/{runtime-api-CdpHBjuR.js → runtime-api-DRlmkTqI.js} +1 -1
- package/dist/{runtime-api-XUvLYXnA.js → runtime-api-Dk0SbPX0.js} +1 -1
- package/dist/{runtime-api-D_2vw6cb.js → runtime-api-aSy7_Ev7.js} +2 -2
- package/dist/runtime-api-lF_Ak4Cs.js +2 -0
- package/dist/{runtime-api-Byb4D198.js → runtime-api-wz7d2Leq.js} +1 -1
- package/dist/runtime-embedded-pi.runtime-DW-48umi.js +2 -0
- package/dist/runtime-embedded-pi.runtime.js +1 -1
- package/dist/{runtime-heavy-api-B3N-obSl.js → runtime-heavy-api-B2R4EnFq.js} +2 -2
- package/dist/runtime-internal-BV3f9_iw.js +2 -0
- package/dist/{runtime-plugins-C3njOaW-.js → runtime-plugins-vpo90S24.js} +1 -1
- package/dist/{sdk-XZ_Z4kvw.js → sdk-C0qPIh8E.js} +2 -2
- package/dist/{security-audit-BAr8L1Xd.js → security-audit-0SaTo0nF.js} +1 -1
- package/dist/{security-audit-BJyAIIUB.js → security-audit-B7Q7ZX-N.js} +1 -1
- package/dist/{security-audit-7jdVsW53.js → security-audit-DB2yOyib.js} +1 -1
- package/dist/{security-audit.runtime-JHdIfe--.js → security-audit.runtime-B98qMNDk.js} +1 -1
- package/dist/security-audit.runtime.js +1 -1
- package/dist/{send-CygV5lgH.js → send-2JjV--W8.js} +1 -1
- package/dist/{send-f4oaP4lt.js → send-C4_5Nrj1.js} +2 -2
- package/dist/{send-vHle4D4s.js → send-Cl4hmgvy.js} +1 -1
- package/dist/{send-BDtSfhq0.js → send-DEQTYNpA.js} +2 -2
- package/dist/send-DqE6Z4wS.js +2 -0
- package/dist/{send-njHlc4Sx.js → send-cg7ZUh8L.js} +1 -1
- package/dist/{send-CrwRkKEn.js → send-h-ljua2B.js} +1 -1
- package/dist/{send.runtime-_DjLDu_1.js → send.runtime-BpYCUusT.js} +1 -1
- package/dist/send.runtime-nYLmRgy5.js +2 -0
- package/dist/send.runtime.js +1 -1
- package/dist/{server-CzrFX5HH.js → server-Cv43X9Ba.js} +1 -1
- package/dist/{server-node-events-7Mzq1Pt2.js → server-node-events-N2EiUlQc.js} +3 -3
- package/dist/{server.impl-DfarI3XH.js → server.impl-NaC_chAZ.js} +20 -20
- package/dist/{session-reset-service-BGYoS6JC.js → session-reset-service-Du7cSzR4.js} +3 -3
- package/dist/{session-route-D7w8kaze.js → session-route-2IRGPhA7.js} +1 -1
- package/dist/{session-store-metadata-DHvnDpQ2.js → session-store-metadata-Bpj1_E6B.js} +5 -5
- package/dist/{session-subagent-reactivation.runtime-BcBMqtPT.js → session-subagent-reactivation.runtime-Dz_gxCM_.js} +1 -1
- package/dist/session-subagent-reactivation.runtime.js +1 -1
- package/dist/{sessions.runtime-C4Q8yiXC.js → sessions.runtime-BOc8DVTq.js} +1 -1
- package/dist/sessions.runtime.js +1 -1
- package/dist/{setup-BlSQlFmf.js → setup-BYNLke78.js} +1 -1
- package/dist/{setup-api-6_Xv1NaE.js → setup-api-Cqih6dtm.js} +1 -1
- package/dist/{setup-bootstrap-Q40XzDy2.js → setup-bootstrap-bXEOG_ML.js} +2 -2
- package/dist/{setup-contract-poe1_kAE.js → setup-contract-C-c2TKoo.js} +1 -1
- package/dist/{setup-core-CJkkVYG4.js → setup-core-3Qj-iJcQ.js} +3 -3
- package/dist/{setup-core-Bl3NJaUQ.js → setup-core-CE_hGO1T.js} +2 -2
- package/dist/{setup-surface-B3HYPKdr.js → setup-surface-BmYHB0TB.js} +2 -2
- package/dist/{setup-surface-BjU0_9ni.js → setup-surface-BsGAinhz.js} +2 -2
- package/dist/{setup-surface-hgClXLWJ.js → setup-surface-DLRkvcvT.js} +8 -8
- package/dist/{setup-surface-CJst1Jgd.js → setup-surface-DOe-FL-H.js} +1 -1
- package/dist/{setup.finalize-Bl63cgqX.js → setup.finalize-Dw4pvWOq.js} +2 -2
- package/dist/{shared-Bwto1cf_.js → shared-BLdGMZ8Q.js} +2 -2
- package/dist/{shared-CBoBr3aP.js → shared-Bbqmy7zS.js} +1 -1
- package/dist/{shared-Cht2nbh-.js → shared-DKaN2Sgf.js} +4 -4
- package/dist/{shared-CtO43IzT.js → shared-Niec58eb.js} +2 -2
- package/dist/{slash-commands.runtime-CXFMEIO5.js → slash-commands.runtime-CW9nqkK7.js} +1 -1
- package/dist/slash-commands.runtime.js +1 -1
- package/dist/{slash-dispatch.runtime-BHaFWpgG.js → slash-dispatch.runtime-x87zH-rg.js} +4 -4
- package/dist/slash-dispatch.runtime.js +1 -1
- package/dist/{slash-skill-commands.runtime-DVZ2L1K_.js → slash-skill-commands.runtime-wdvpAc3f.js} +1 -1
- package/dist/slash-skill-commands.runtime.js +1 -1
- package/dist/squidclaw-tools.runtime-CZd5LbNT.js +2 -0
- package/dist/squidclaw-tools.runtime.js +1 -1
- package/dist/{src-CcaaJ6Z6.js → src-CMR0JeUY.js} +6 -6
- package/dist/{startup-verification-CiMh-wvb.js → startup-verification-DHENnwEO.js} +1 -1
- package/dist/status-BF3PX1wn.js +3 -0
- package/dist/{status-BiBGJOpO.js → status-CQwE-1AS.js} +4 -4
- package/dist/{status-all-z9Pkn3iD.js → status-all-tmcLH_1L.js} +1 -1
- package/dist/{status-json-B9zIiTcT.js → status-json-CGZCQ1R-.js} +1 -1
- package/dist/{status.scan-oYGKMEEx.js → status.scan-CNQjuye-.js} +2 -2
- package/dist/{status.scan-overview-BDfHdhnh.js → status.scan-overview-D7K1vRmG.js} +1 -1
- package/dist/{status.scan.fast-json-BiOVdrKz.js → status.scan.fast-json-Cc9L_Ago.js} +1 -1
- package/dist/{status.scan.fast-json-DsUDhhJA.js → status.scan.fast-json-D6q8XuiH.js} +1 -1
- package/dist/{status.summary-Cja1jEe2.js → status.summary-CpmZOPah.js} +1 -1
- package/dist/{status.summary-BHHnG7nJ.js → status.summary-oY8vxJha.js} +1 -1
- package/dist/{sticker-cache-Cd8OVC4p.js → sticker-cache-DFWYj2Xy.js} +1 -1
- package/dist/{sticker-vision.runtime-4UHPl0mq.js → sticker-vision.runtime-C_V03CZU.js} +1 -1
- package/dist/sticker-vision.runtime.js +1 -1
- package/dist/{storage-YT39bpsi.js → storage-BGk_CQ0o.js} +1 -1
- package/dist/{subagent-announce.registry.runtime-DoFxP8xM.js → subagent-announce.registry.runtime-BNvOgrE2.js} +2 -2
- package/dist/subagent-announce.registry.runtime.js +1 -1
- package/dist/{subagent-hooks-CuTcLavq.js → subagent-hooks-XffaGbgu.js} +1 -1
- package/dist/{subagent-orphan-recovery-DKbfBqsP.js → subagent-orphan-recovery-CwXRKPSo.js} +2 -2
- package/dist/subagent-registry-runtime-BKMKffyB.js +2 -0
- package/dist/{subagent-registry.runtime-DbOvQjAN.js → subagent-registry.runtime-CQ01jFNe.js} +1 -1
- package/dist/subagent-registry.runtime.js +1 -1
- package/dist/suite-C3HgK0BL.js +2 -0
- package/dist/{suite-BLGLZUam.js → suite-idSgof6E.js} +4 -4
- package/dist/{suite-launch.runtime-BNHGwIvO.js → suite-launch.runtime-CFegy0La.js} +1 -1
- package/dist/suite-launch.runtime.js +1 -1
- package/dist/{task-executor-D6dPc3Sb.js → task-executor-Coe7ulkd.js} +2 -2
- package/dist/{task-owner-access-m9__4AMg.js → task-owner-access-C3x5f8uc.js} +1 -1
- package/dist/{task-registry-aCEHx64L.js → task-registry-CZuFBvDQ.js} +1 -1
- package/dist/task-registry-control.runtime-CqNlO8ML.js +3 -0
- package/dist/task-registry-control.runtime.js +1 -1
- package/dist/{task-registry.audit-BACF4oke.js → task-registry.audit-BlLsRMoU.js} +2 -2
- package/dist/{task-registry.maintenance-B74KAJrz.js → task-registry.maintenance-taeaRrwJ.js} +1 -1
- package/dist/telegram/token.js +1 -1
- package/dist/{testing-DPBa7PY5.js → testing-BcNuRY1i.js} +2 -2
- package/dist/{thread-bindings-D5YJVil7.js → thread-bindings-B0-Krplp.js} +3 -3
- package/dist/{thread-bindings-CdXYftrF.js → thread-bindings-CxKffUBy.js} +1 -1
- package/dist/{thread-bindings-DzWllvkK.js → thread-bindings-D1v3Wkpc.js} +2 -2
- package/dist/{thread-bindings-BnIZmRRn.js → thread-bindings-D4hrUQd0.js} +4 -4
- package/dist/{thread-bindings.discord-api-hawSAebI.js → thread-bindings.discord-api-gO5WB6mV.js} +1 -1
- package/dist/{thread-bindings.manager-CQi_5yw2.js → thread-bindings.manager-BRgGceJd.js} +2 -2
- package/dist/{thread-bindings.manager-DmzoXHoz.js → thread-bindings.manager-wVzLmRkS.js} +1 -1
- package/dist/{token-CiLSLWsB.js → token-B9UGaH5S.js} +1 -1
- package/dist/{tool-actions.runtime-B-fFC7u0.js → tool-actions.runtime-CPPtHcOa.js} +7 -7
- package/dist/tool-actions.runtime.js +1 -1
- package/dist/{tools-effective-inventory-BQAeiS-u.js → tools-effective-inventory-BfMybjKQ.js} +1 -1
- package/dist/{update-cli-BTDkCbvI.js → update-cli-DKEXurYc.js} +3 -3
- package/dist/{verification-CyXKCPJL.js → verification-34YqE5M3.js} +1 -1
- package/dist/{verification-nfSi5nnX.js → verification-CkCIE7zZ.js} +1 -1
- package/package.json +1 -1
- package/dist/accounts-cmxY3KhL.js +0 -2
- package/dist/acp-binding-runtime-D8Bo48UG.js +0 -2
- package/dist/agent-BNCS-rqd.js +0 -2
- package/dist/api-C6o-NuSZ.js +0 -5
- package/dist/api-CENLKvhs.js +0 -2
- package/dist/api-DOlgxPp4.js +0 -2
- package/dist/api-Dj0pGFcV.js +0 -3
- package/dist/api-xeMwAXYq.js +0 -2
- package/dist/channel-core-D9HikzZ6.js +0 -2
- package/dist/channel.runtime-2P0dPnE0.js +0 -4
- package/dist/client-C21GaqAq.js +0 -5
- package/dist/commands-subagents-control.runtime-DKQHYLGk.js +0 -2
- package/dist/control-ui/apple-touch-icon.png +0 -0
- package/dist/control-ui/assets/agents-DiaOppFK.js +0 -813
- package/dist/control-ui/assets/channel-config-extras-BO8n7-sM.js +0 -2
- package/dist/control-ui/assets/channels-fYfRw5ZL.js +0 -353
- package/dist/control-ui/assets/cron-DYyEm1jm.js +0 -932
- package/dist/control-ui/assets/de-clz-8aad.js +0 -2
- package/dist/control-ui/assets/debug-C_IhrnLl.js +0 -94
- package/dist/control-ui/assets/dreaming-GXaguO0J.js +0 -213
- package/dist/control-ui/assets/es-CQgWM83W.js +0 -2
- package/dist/control-ui/assets/fr-BjmdcBBw.js +0 -2
- package/dist/control-ui/assets/id-3qUyH5X0.js +0 -2
- package/dist/control-ui/assets/index-DhPAE7si.js +0 -4813
- package/dist/control-ui/assets/index-XSW7WWRB.css +0 -1
- package/dist/control-ui/assets/instances-B8J-oieq.js +0 -57
- package/dist/control-ui/assets/ja-JP-BwoUpYKH.js +0 -2
- package/dist/control-ui/assets/ko-CUMKZ3-D.js +0 -2
- package/dist/control-ui/assets/logs-BbPqHP4G.js +0 -74
- package/dist/control-ui/assets/nodes-DLQ-YjPm.js +0 -428
- package/dist/control-ui/assets/pl-CQupR6Ir.js +0 -2
- package/dist/control-ui/assets/preview_false-BbapWtFj.js +0 -2
- package/dist/control-ui/assets/pt-BR-DcTmGZZL.js +0 -2
- package/dist/control-ui/assets/sessions-GTAtxfEB.js +0 -306
- package/dist/control-ui/assets/skills-DpZc5iVN.js +0 -314
- package/dist/control-ui/assets/skills-shared-u4L48xHn.js +0 -11
- package/dist/control-ui/assets/tr-BxzATSZo.js +0 -2
- package/dist/control-ui/assets/uk-CfJWY5wW.js +0 -2
- package/dist/control-ui/assets/zh-CN-BfiZ3q64.js +0 -2
- package/dist/control-ui/assets/zh-TW-DgWzgO6x.js +0 -2
- package/dist/control-ui/favicon-32.png +0 -0
- package/dist/control-ui/favicon.ico +0 -0
- package/dist/control-ui/favicon.svg +0 -22
- package/dist/control-ui/index.html +0 -70
- package/dist/create-client-CshEX2m4.js +0 -2
- package/dist/env-auth-CmCEpWtd.js +0 -2
- package/dist/get-reply-from-config.runtime-SOwkaIgx.js +0 -2
- package/dist/heartbeat-runner.runtime-CXO4wuWt.js +0 -2
- package/dist/matrix-migration.runtime-Rx0VlfPo.js +0 -2
- package/dist/monitor-BBVP1HDd.js +0 -4
- package/dist/monitor-D8n1QE4q.js +0 -2
- package/dist/monitor-DU6HX8MW.js +0 -5
- package/dist/monitor.runtime-DCmuKFu9.js +0 -2
- package/dist/probe-CcQGOg8N.js +0 -2
- package/dist/probe.runtime-CazSuhtK.js +0 -3
- package/dist/provider.runtime-Brog9oyt.js +0 -2
- package/dist/qa-channel-ByqTdMJB.js +0 -2
- package/dist/reply-dispatch-runtime-CvzsFH3g.js +0 -3
- package/dist/reply-resolver.runtime-D62ugZZP.js +0 -3
- package/dist/reply.runtime-C69pi305.js +0 -2
- package/dist/runtime-api-By_TrMA6.js +0 -2
- package/dist/runtime-api-Cvm36W9Y.js +0 -2
- package/dist/runtime-embedded-pi.runtime-DXnH1F3C.js +0 -2
- package/dist/runtime-internal-D0aIFsqm.js +0 -2
- package/dist/send-CM3dhnnl.js +0 -2
- package/dist/send.runtime-BaKZaW81.js +0 -2
- package/dist/squidclaw-tools.runtime-g1bAXcEY.js +0 -2
- package/dist/status-De9_Kj73.js +0 -3
- package/dist/subagent-registry-runtime-D91IXuvS.js +0 -2
- package/dist/suite-Ch2KLIrW.js +0 -2
- package/dist/task-registry-control.runtime-CLEe5LaI.js +0 -3
|
@@ -1,932 +0,0 @@
|
|
|
1
|
-
import{A as a,t as n,h as P,d as r,j as K,I as H,J as S,f as R}from"./index-DhPAE7si.js";const f=e=>e??a;function O(){return[{value:"ok",label:n("cron.runs.runStatusOk")},{value:"error",label:n("cron.runs.runStatusError")},{value:"skipped",label:n("cron.runs.runStatusSkipped")}]}function U(){return[{value:"delivered",label:n("cron.runs.deliveryDelivered")},{value:"not-delivered",label:n("cron.runs.deliveryNotDelivered")},{value:"unknown",label:n("cron.runs.deliveryUnknown")},{value:"not-requested",label:n("cron.runs.deliveryNotRequested")}]}function j(e,t,l){const i=new Set(e);return l?i.add(t):i.delete(t),Array.from(i)}function F(e,t){return e.length===0?t:e.length<=2?e.join(", "):`${e[0]} +${e.length-1}`}function q(e){const t=["last",...e.channels.filter(Boolean)],l=e.form.deliveryChannel?.trim();l&&!t.includes(l)&&t.push(l);const i=new Set;return t.filter(d=>i.has(d)?!1:(i.add(d),!0))}function E(e,t){if(t==="last")return"last";const l=e.channelMeta?.find(i=>i.id===t);return l?.label?l.label:e.channelLabels?.[t]??t}function _(e){return r`
|
|
2
|
-
<div class="field cron-filter-dropdown" data-filter=${e.id}>
|
|
3
|
-
<span>${e.title}</span>
|
|
4
|
-
<details class="cron-filter-dropdown__details">
|
|
5
|
-
<summary class="btn cron-filter-dropdown__trigger">
|
|
6
|
-
<span>${e.summary}</span>
|
|
7
|
-
</summary>
|
|
8
|
-
<div class="cron-filter-dropdown__panel">
|
|
9
|
-
<div class="cron-filter-dropdown__list">
|
|
10
|
-
${e.options.map(t=>r`
|
|
11
|
-
<label class="cron-filter-dropdown__option">
|
|
12
|
-
<input
|
|
13
|
-
type="checkbox"
|
|
14
|
-
value=${t.value}
|
|
15
|
-
.checked=${e.selected.includes(t.value)}
|
|
16
|
-
@change=${l=>{const i=l.target;e.onToggle(t.value,i.checked)}}
|
|
17
|
-
/>
|
|
18
|
-
<span>${t.label}</span>
|
|
19
|
-
</label>
|
|
20
|
-
`)}
|
|
21
|
-
</div>
|
|
22
|
-
<div class="row">
|
|
23
|
-
<button class="btn" type="button" @click=${e.onClear}>
|
|
24
|
-
${n("cron.runs.clear")}
|
|
25
|
-
</button>
|
|
26
|
-
</div>
|
|
27
|
-
</div>
|
|
28
|
-
</details>
|
|
29
|
-
</div>
|
|
30
|
-
`}function y(e,t){const l=Array.from(new Set(t.map(i=>i.trim()).filter(Boolean)));return l.length===0?a:r`<datalist id=${e}>
|
|
31
|
-
${l.map(i=>r`<option value=${i}></option> `)}
|
|
32
|
-
</datalist>`}function u(e){return`cron-error-${e}`}function B(e){return e==="name"?"cron-name":e==="scheduleAt"?"cron-schedule-at":e==="everyAmount"?"cron-every-amount":e==="cronExpr"?"cron-cron-expr":e==="staggerAmount"?"cron-stagger-amount":e==="payloadText"?"cron-payload-text":e==="payloadModel"?"cron-payload-model":e==="payloadThinking"?"cron-payload-thinking":e==="timeoutSeconds"?"cron-timeout-seconds":e==="failureAlertAfter"?"cron-failure-alert-after":e==="failureAlertCooldownSeconds"?"cron-failure-alert-cooldown-seconds":"cron-delivery-to"}function N(e,t,l){return e==="payloadText"?t.payloadKind==="systemEvent"?n("cron.form.mainTimelineMessage"):n("cron.form.assistantTaskPrompt"):e==="deliveryTo"?l==="webhook"?n("cron.form.webhookUrl"):n("cron.form.to"):{name:n("cron.form.fieldName"),scheduleAt:n("cron.form.runAt"),everyAmount:n("cron.form.every"),cronExpr:n("cron.form.expression"),staggerAmount:n("cron.form.staggerWindow"),payloadText:n("cron.form.assistantTaskPrompt"),payloadModel:n("cron.form.model"),payloadThinking:n("cron.form.thinking"),timeoutSeconds:n("cron.form.timeoutSeconds"),deliveryTo:n("cron.form.to"),failureAlertAfter:"Failure alert after",failureAlertCooldownSeconds:"Failure alert cooldown"}[e]}function z(e,t,l){const i=["name","scheduleAt","everyAmount","cronExpr","staggerAmount","payloadText","payloadModel","payloadThinking","timeoutSeconds","deliveryTo","failureAlertAfter","failureAlertCooldownSeconds"],d=[];for(const s of i){const v=e[s];v&&d.push({key:s,label:N(s,t,l),message:v,inputId:B(s)})}return d}function Q(e){const t=document.getElementById(e);t instanceof HTMLElement&&(typeof t.scrollIntoView=="function"&&t.scrollIntoView({block:"center",behavior:"smooth"}),t.focus())}function c(e,t=!1){return r`<span>
|
|
33
|
-
${e}
|
|
34
|
-
${t?r`
|
|
35
|
-
<span class="cron-required-marker" aria-hidden="true">*</span>
|
|
36
|
-
<span class="cron-required-sr">${n("cron.form.requiredSr")}</span>
|
|
37
|
-
`:a}
|
|
38
|
-
</span>`}function te(e){const t=!!e.editingJobId,l=e.form.payloadKind==="agentTurn",i=e.form.scheduleKind==="cron",d=q(e),s=e.runsJobId==null?void 0:e.jobs.find(o=>o.id===e.runsJobId),v=e.runsScope==="all"?n("cron.jobList.allJobs"):s?.name??e.runsJobId??n("cron.jobList.selectJob"),g=e.runs.toSorted((o,h)=>e.runsSortDir==="asc"?o.ts-h.ts:h.ts-o.ts),b=O(),p=U(),M=b.filter(o=>e.runsStatuses.includes(o.value)).map(o=>o.label),D=p.filter(o=>e.runsDeliveryStatuses.includes(o.value)).map(o=>o.label),J=F(M,n("cron.runs.allStatuses")),L=F(D,n("cron.runs.allDelivery")),x=e.form.sessionTarget!=="main"&&e.form.payloadKind==="agentTurn",m=e.form.deliveryMode==="announce"&&!x?"none":e.form.deliveryMode,k=z(e.fieldErrors,e.form,m),w=!e.busy&&k.length>0,I=e.jobsQuery.trim().length>0||e.jobsEnabledFilter!=="all"||e.jobsScheduleKindFilter!=="all"||e.jobsLastStatusFilter!=="all"||e.jobsSortBy!=="nextRunAtMs"||e.jobsSortDir!=="asc",C=w&&!e.canSubmit?k.length===1?n("cron.form.fixFields",{count:String(k.length)}):n("cron.form.fixFieldsPlural",{count:String(k.length)}):"";return r`
|
|
39
|
-
<section class="card cron-summary-strip">
|
|
40
|
-
<div class="cron-summary-strip__left">
|
|
41
|
-
<div class="cron-summary-item">
|
|
42
|
-
<div class="cron-summary-label">${n("cron.summary.enabled")}</div>
|
|
43
|
-
<div class="cron-summary-value">
|
|
44
|
-
<span class=${`chip ${e.status?.enabled?"chip-ok":"chip-danger"}`}>
|
|
45
|
-
${e.status?e.status.enabled?n("cron.summary.yes"):n("cron.summary.no"):n("common.na")}
|
|
46
|
-
</span>
|
|
47
|
-
</div>
|
|
48
|
-
</div>
|
|
49
|
-
<div class="cron-summary-item">
|
|
50
|
-
<div class="cron-summary-label">${n("cron.summary.jobs")}</div>
|
|
51
|
-
<div class="cron-summary-value">${e.status?.jobs??n("common.na")}</div>
|
|
52
|
-
</div>
|
|
53
|
-
<div class="cron-summary-item cron-summary-item--wide">
|
|
54
|
-
<div class="cron-summary-label">${n("cron.summary.nextWake")}</div>
|
|
55
|
-
<div class="cron-summary-value">${P(e.status?.nextWakeAtMs??null)}</div>
|
|
56
|
-
</div>
|
|
57
|
-
</div>
|
|
58
|
-
<div class="cron-summary-strip__actions">
|
|
59
|
-
<button
|
|
60
|
-
class=${e.loading?"btn cron-refresh-btn--loading":"btn"}
|
|
61
|
-
?disabled=${e.loading}
|
|
62
|
-
@click=${e.onRefresh}
|
|
63
|
-
>
|
|
64
|
-
${e.loading?n("cron.summary.refreshing"):n("cron.summary.refresh")}
|
|
65
|
-
</button>
|
|
66
|
-
${e.error?r`<span class="muted">${e.error}</span>`:a}
|
|
67
|
-
</div>
|
|
68
|
-
</section>
|
|
69
|
-
|
|
70
|
-
<section class="cron-workspace">
|
|
71
|
-
<div class="cron-workspace-main">
|
|
72
|
-
<section class="card">
|
|
73
|
-
<div
|
|
74
|
-
class="row"
|
|
75
|
-
style="justify-content: space-between; align-items: flex-start; gap: 12px;"
|
|
76
|
-
>
|
|
77
|
-
<div>
|
|
78
|
-
<div class="card-title">${n("cron.jobs.title")}</div>
|
|
79
|
-
<div class="card-sub">${n("cron.jobs.subtitle")}</div>
|
|
80
|
-
</div>
|
|
81
|
-
<div class="muted">
|
|
82
|
-
${n("cron.jobs.shownOf",{shown:String(e.jobs.length),total:String(e.jobsTotal)})}
|
|
83
|
-
</div>
|
|
84
|
-
</div>
|
|
85
|
-
<div class="filters" style="margin-top: 12px;">
|
|
86
|
-
<label class="field cron-filter-search">
|
|
87
|
-
<span>${n("cron.jobs.searchJobs")}</span>
|
|
88
|
-
<input
|
|
89
|
-
.value=${e.jobsQuery}
|
|
90
|
-
placeholder=${n("cron.jobs.searchPlaceholder")}
|
|
91
|
-
@input=${o=>e.onJobsFiltersChange({cronJobsQuery:o.target.value})}
|
|
92
|
-
/>
|
|
93
|
-
</label>
|
|
94
|
-
<label class="field">
|
|
95
|
-
<span>${n("cron.jobs.enabled")}</span>
|
|
96
|
-
<select
|
|
97
|
-
.value=${e.jobsEnabledFilter}
|
|
98
|
-
@change=${o=>e.onJobsFiltersChange({cronJobsEnabledFilter:o.target.value})}
|
|
99
|
-
>
|
|
100
|
-
<option value="all">${n("cron.jobs.all")}</option>
|
|
101
|
-
<option value="enabled">${n("common.enabled")}</option>
|
|
102
|
-
<option value="disabled">${n("common.disabled")}</option>
|
|
103
|
-
</select>
|
|
104
|
-
</label>
|
|
105
|
-
<label class="field">
|
|
106
|
-
<span>${n("cron.jobs.schedule")}</span>
|
|
107
|
-
<select
|
|
108
|
-
data-test-id="cron-jobs-schedule-filter"
|
|
109
|
-
.value=${e.jobsScheduleKindFilter}
|
|
110
|
-
@change=${o=>e.onJobsFiltersChange({cronJobsScheduleKindFilter:o.target.value})}
|
|
111
|
-
>
|
|
112
|
-
<option value="all">${n("cron.jobs.all")}</option>
|
|
113
|
-
<option value="at">${n("cron.form.at")}</option>
|
|
114
|
-
<option value="every">${n("cron.form.every")}</option>
|
|
115
|
-
<option value="cron">${n("cron.form.cronOption")}</option>
|
|
116
|
-
</select>
|
|
117
|
-
</label>
|
|
118
|
-
<label class="field">
|
|
119
|
-
<span>${n("cron.jobs.lastRun")}</span>
|
|
120
|
-
<select
|
|
121
|
-
data-test-id="cron-jobs-last-status-filter"
|
|
122
|
-
.value=${e.jobsLastStatusFilter}
|
|
123
|
-
@change=${o=>e.onJobsFiltersChange({cronJobsLastStatusFilter:o.target.value})}
|
|
124
|
-
>
|
|
125
|
-
<option value="all">${n("cron.jobs.all")}</option>
|
|
126
|
-
<option value="ok">${n("cron.runs.runStatusOk")}</option>
|
|
127
|
-
<option value="error">${n("cron.runs.runStatusError")}</option>
|
|
128
|
-
<option value="skipped">${n("cron.runs.runStatusSkipped")}</option>
|
|
129
|
-
</select>
|
|
130
|
-
</label>
|
|
131
|
-
<label class="field">
|
|
132
|
-
<span>${n("cron.jobs.sort")}</span>
|
|
133
|
-
<select
|
|
134
|
-
.value=${e.jobsSortBy}
|
|
135
|
-
@change=${o=>e.onJobsFiltersChange({cronJobsSortBy:o.target.value})}
|
|
136
|
-
>
|
|
137
|
-
<option value="nextRunAtMs">${n("cron.jobs.nextRun")}</option>
|
|
138
|
-
<option value="updatedAtMs">${n("cron.jobs.recentlyUpdated")}</option>
|
|
139
|
-
<option value="name">${n("cron.jobs.name")}</option>
|
|
140
|
-
</select>
|
|
141
|
-
</label>
|
|
142
|
-
<label class="field">
|
|
143
|
-
<span>${n("cron.jobs.direction")}</span>
|
|
144
|
-
<select
|
|
145
|
-
.value=${e.jobsSortDir}
|
|
146
|
-
@change=${o=>e.onJobsFiltersChange({cronJobsSortDir:o.target.value})}
|
|
147
|
-
>
|
|
148
|
-
<option value="asc">${n("cron.jobs.ascending")}</option>
|
|
149
|
-
<option value="desc">${n("cron.jobs.descending")}</option>
|
|
150
|
-
</select>
|
|
151
|
-
</label>
|
|
152
|
-
<label class="field">
|
|
153
|
-
<span>${n("cron.jobs.reset")}</span>
|
|
154
|
-
<button
|
|
155
|
-
class="btn"
|
|
156
|
-
data-test-id="cron-jobs-filters-reset"
|
|
157
|
-
?disabled=${!I}
|
|
158
|
-
@click=${e.onJobsFiltersReset}
|
|
159
|
-
>
|
|
160
|
-
${n("cron.jobs.reset")}
|
|
161
|
-
</button>
|
|
162
|
-
</label>
|
|
163
|
-
</div>
|
|
164
|
-
${e.jobs.length===0?r` <div class="muted" style="margin-top: 12px">${n("cron.jobs.noMatching")}</div> `:r`
|
|
165
|
-
<div class="list" style="margin-top: 12px;">
|
|
166
|
-
${e.jobs.map(o=>V(o,e))}
|
|
167
|
-
</div>
|
|
168
|
-
`}
|
|
169
|
-
${e.jobsHasMore?r`
|
|
170
|
-
<div class="row" style="margin-top: 12px">
|
|
171
|
-
<button
|
|
172
|
-
class="btn"
|
|
173
|
-
?disabled=${e.loading||e.jobsLoadingMore}
|
|
174
|
-
@click=${e.onLoadMoreJobs}
|
|
175
|
-
>
|
|
176
|
-
${e.jobsLoadingMore?n("cron.jobs.loading"):n("cron.jobs.loadMore")}
|
|
177
|
-
</button>
|
|
178
|
-
</div>
|
|
179
|
-
`:a}
|
|
180
|
-
</section>
|
|
181
|
-
|
|
182
|
-
<section class="card">
|
|
183
|
-
<div
|
|
184
|
-
class="row"
|
|
185
|
-
style="justify-content: space-between; align-items: flex-start; gap: 12px;"
|
|
186
|
-
>
|
|
187
|
-
<div>
|
|
188
|
-
<div class="card-title">${n("cron.runs.title")}</div>
|
|
189
|
-
<div class="card-sub">
|
|
190
|
-
${e.runsScope==="all"?n("cron.runs.subtitleAll"):n("cron.runs.subtitleJob",{title:v})}
|
|
191
|
-
</div>
|
|
192
|
-
</div>
|
|
193
|
-
<div class="muted">
|
|
194
|
-
${n("cron.jobs.shownOf",{shown:String(g.length),total:String(e.runsTotal)})}
|
|
195
|
-
</div>
|
|
196
|
-
</div>
|
|
197
|
-
<div class="cron-run-filters">
|
|
198
|
-
<div class="cron-run-filters__row cron-run-filters__row--primary">
|
|
199
|
-
<label class="field">
|
|
200
|
-
<span>${n("cron.runs.scope")}</span>
|
|
201
|
-
<select
|
|
202
|
-
.value=${e.runsScope}
|
|
203
|
-
@change=${o=>e.onRunsFiltersChange({cronRunsScope:o.target.value})}
|
|
204
|
-
>
|
|
205
|
-
<option value="all">${n("cron.runs.allJobs")}</option>
|
|
206
|
-
<option value="job" ?disabled=${e.runsJobId==null}>
|
|
207
|
-
${n("cron.runs.selectedJob")}
|
|
208
|
-
</option>
|
|
209
|
-
</select>
|
|
210
|
-
</label>
|
|
211
|
-
<label class="field cron-run-filter-search">
|
|
212
|
-
<span>${n("cron.runs.searchRuns")}</span>
|
|
213
|
-
<input
|
|
214
|
-
.value=${e.runsQuery}
|
|
215
|
-
placeholder=${n("cron.runs.searchPlaceholder")}
|
|
216
|
-
@input=${o=>e.onRunsFiltersChange({cronRunsQuery:o.target.value})}
|
|
217
|
-
/>
|
|
218
|
-
</label>
|
|
219
|
-
<label class="field">
|
|
220
|
-
<span>${n("cron.jobs.sort")}</span>
|
|
221
|
-
<select
|
|
222
|
-
.value=${e.runsSortDir}
|
|
223
|
-
@change=${o=>e.onRunsFiltersChange({cronRunsSortDir:o.target.value})}
|
|
224
|
-
>
|
|
225
|
-
<option value="desc">${n("cron.runs.newestFirst")}</option>
|
|
226
|
-
<option value="asc">${n("cron.runs.oldestFirst")}</option>
|
|
227
|
-
</select>
|
|
228
|
-
</label>
|
|
229
|
-
</div>
|
|
230
|
-
<div class="cron-run-filters__row cron-run-filters__row--secondary">
|
|
231
|
-
${_({id:"status",title:n("cron.runs.status"),summary:J,options:b,selected:e.runsStatuses,onToggle:(o,h)=>{const A=j(e.runsStatuses,o,h);e.onRunsFiltersChange({cronRunsStatuses:A})},onClear:()=>{e.onRunsFiltersChange({cronRunsStatuses:[]})}})}
|
|
232
|
-
${_({id:"delivery",title:n("cron.runs.delivery"),summary:L,options:p,selected:e.runsDeliveryStatuses,onToggle:(o,h)=>{const A=j(e.runsDeliveryStatuses,o,h);e.onRunsFiltersChange({cronRunsDeliveryStatuses:A})},onClear:()=>{e.onRunsFiltersChange({cronRunsDeliveryStatuses:[]})}})}
|
|
233
|
-
</div>
|
|
234
|
-
</div>
|
|
235
|
-
${e.runsScope==="job"&&e.runsJobId==null?r`
|
|
236
|
-
<div class="muted" style="margin-top: 12px">${n("cron.runs.selectJobHint")}</div>
|
|
237
|
-
`:g.length===0?r`
|
|
238
|
-
<div class="muted" style="margin-top: 12px">${n("cron.runs.noMatching")}</div>
|
|
239
|
-
`:r`
|
|
240
|
-
<div class="list" style="margin-top: 12px;">
|
|
241
|
-
${g.map(o=>ne(o,e.basePath,e.onNavigateToChat))}
|
|
242
|
-
</div>
|
|
243
|
-
`}
|
|
244
|
-
${(e.runsScope==="all"||e.runsJobId!=null)&&e.runsHasMore?r`
|
|
245
|
-
<div class="row" style="margin-top: 12px">
|
|
246
|
-
<button
|
|
247
|
-
class="btn"
|
|
248
|
-
?disabled=${e.runsLoadingMore}
|
|
249
|
-
@click=${e.onLoadMoreRuns}
|
|
250
|
-
>
|
|
251
|
-
${e.runsLoadingMore?n("cron.jobs.loading"):n("cron.runs.loadMore")}
|
|
252
|
-
</button>
|
|
253
|
-
</div>
|
|
254
|
-
`:a}
|
|
255
|
-
</section>
|
|
256
|
-
</div>
|
|
257
|
-
|
|
258
|
-
<section class="card cron-workspace-form">
|
|
259
|
-
<div class="card-title">${t?n("cron.form.editJob"):n("cron.form.newJob")}</div>
|
|
260
|
-
<div class="card-sub">
|
|
261
|
-
${t?n("cron.form.updateSubtitle"):n("cron.form.createSubtitle")}
|
|
262
|
-
</div>
|
|
263
|
-
<div class="cron-form">
|
|
264
|
-
<div class="cron-required-legend">
|
|
265
|
-
<span class="cron-required-marker" aria-hidden="true">*</span> ${n("cron.form.required")}
|
|
266
|
-
</div>
|
|
267
|
-
<section class="cron-form-section">
|
|
268
|
-
<div class="cron-form-section__title">${n("cron.form.basics")}</div>
|
|
269
|
-
<div class="cron-form-section__sub">${n("cron.form.basicsSub")}</div>
|
|
270
|
-
<div class="form-grid cron-form-grid">
|
|
271
|
-
<label class="field">
|
|
272
|
-
${c(n("cron.form.fieldName"),!0)}
|
|
273
|
-
<input
|
|
274
|
-
id="cron-name"
|
|
275
|
-
.value=${e.form.name}
|
|
276
|
-
placeholder=${n("cron.form.namePlaceholder")}
|
|
277
|
-
aria-invalid=${e.fieldErrors.name?"true":"false"}
|
|
278
|
-
aria-describedby=${f(e.fieldErrors.name?u("name"):void 0)}
|
|
279
|
-
@input=${o=>e.onFormChange({name:o.target.value})}
|
|
280
|
-
/>
|
|
281
|
-
${$(e.fieldErrors.name,u("name"))}
|
|
282
|
-
</label>
|
|
283
|
-
<label class="field">
|
|
284
|
-
<span>${n("cron.form.description")}</span>
|
|
285
|
-
<input
|
|
286
|
-
.value=${e.form.description}
|
|
287
|
-
placeholder=${n("cron.form.descriptionPlaceholder")}
|
|
288
|
-
@input=${o=>e.onFormChange({description:o.target.value})}
|
|
289
|
-
/>
|
|
290
|
-
</label>
|
|
291
|
-
<label class="field">
|
|
292
|
-
${c(n("cron.form.agentId"))}
|
|
293
|
-
<input
|
|
294
|
-
id="cron-agent-id"
|
|
295
|
-
.value=${e.form.agentId}
|
|
296
|
-
list="cron-agent-suggestions"
|
|
297
|
-
?disabled=${e.form.clearAgent}
|
|
298
|
-
@input=${o=>e.onFormChange({agentId:o.target.value})}
|
|
299
|
-
placeholder=${n("cron.form.agentPlaceholder")}
|
|
300
|
-
/>
|
|
301
|
-
<div class="cron-help">${n("cron.form.agentHelp")}</div>
|
|
302
|
-
</label>
|
|
303
|
-
<label class="field checkbox cron-checkbox cron-checkbox-inline">
|
|
304
|
-
<input
|
|
305
|
-
type="checkbox"
|
|
306
|
-
.checked=${e.form.enabled}
|
|
307
|
-
@change=${o=>e.onFormChange({enabled:o.target.checked})}
|
|
308
|
-
/>
|
|
309
|
-
<span class="field-checkbox__label">${n("cron.summary.enabled")}</span>
|
|
310
|
-
</label>
|
|
311
|
-
</div>
|
|
312
|
-
</section>
|
|
313
|
-
|
|
314
|
-
<section class="cron-form-section">
|
|
315
|
-
<div class="cron-form-section__title">${n("cron.form.schedule")}</div>
|
|
316
|
-
<div class="cron-form-section__sub">${n("cron.form.scheduleSub")}</div>
|
|
317
|
-
<div class="form-grid cron-form-grid">
|
|
318
|
-
<label class="field cron-span-2">
|
|
319
|
-
${c(n("cron.form.schedule"))}
|
|
320
|
-
<select
|
|
321
|
-
id="cron-schedule-kind"
|
|
322
|
-
.value=${e.form.scheduleKind}
|
|
323
|
-
@change=${o=>e.onFormChange({scheduleKind:o.target.value})}
|
|
324
|
-
>
|
|
325
|
-
<option value="every">${n("cron.form.every")}</option>
|
|
326
|
-
<option value="at">${n("cron.form.at")}</option>
|
|
327
|
-
<option value="cron">${n("cron.form.cronOption")}</option>
|
|
328
|
-
</select>
|
|
329
|
-
</label>
|
|
330
|
-
</div>
|
|
331
|
-
${W(e)}
|
|
332
|
-
</section>
|
|
333
|
-
|
|
334
|
-
<section class="cron-form-section">
|
|
335
|
-
<div class="cron-form-section__title">${n("cron.form.execution")}</div>
|
|
336
|
-
<div class="cron-form-section__sub">${n("cron.form.executionSub")}</div>
|
|
337
|
-
<div class="form-grid cron-form-grid">
|
|
338
|
-
<label class="field">
|
|
339
|
-
${c(n("cron.form.session"))}
|
|
340
|
-
<select
|
|
341
|
-
id="cron-session-target"
|
|
342
|
-
.value=${e.form.sessionTarget}
|
|
343
|
-
@change=${o=>e.onFormChange({sessionTarget:o.target.value})}
|
|
344
|
-
>
|
|
345
|
-
<option value="main">${n("cron.form.main")}</option>
|
|
346
|
-
<option value="isolated">${n("cron.form.isolated")}</option>
|
|
347
|
-
</select>
|
|
348
|
-
<div class="cron-help">${n("cron.form.sessionHelp")}</div>
|
|
349
|
-
</label>
|
|
350
|
-
<label class="field">
|
|
351
|
-
${c(n("cron.form.wakeMode"))}
|
|
352
|
-
<select
|
|
353
|
-
id="cron-wake-mode"
|
|
354
|
-
.value=${e.form.wakeMode}
|
|
355
|
-
@change=${o=>e.onFormChange({wakeMode:o.target.value})}
|
|
356
|
-
>
|
|
357
|
-
<option value="now">${n("cron.form.now")}</option>
|
|
358
|
-
<option value="next-heartbeat">${n("cron.form.nextHeartbeat")}</option>
|
|
359
|
-
</select>
|
|
360
|
-
<div class="cron-help">${n("cron.form.wakeModeHelp")}</div>
|
|
361
|
-
</label>
|
|
362
|
-
<label class="field ${l?"":"cron-span-2"}">
|
|
363
|
-
${c(n("cron.form.payloadKind"))}
|
|
364
|
-
<select
|
|
365
|
-
id="cron-payload-kind"
|
|
366
|
-
.value=${e.form.payloadKind}
|
|
367
|
-
@change=${o=>e.onFormChange({payloadKind:o.target.value})}
|
|
368
|
-
>
|
|
369
|
-
<option value="systemEvent">${n("cron.form.systemEvent")}</option>
|
|
370
|
-
<option value="agentTurn">${n("cron.form.agentTurn")}</option>
|
|
371
|
-
</select>
|
|
372
|
-
<div class="cron-help">
|
|
373
|
-
${e.form.payloadKind==="systemEvent"?n("cron.form.systemEventHelp"):n("cron.form.agentTurnHelp")}
|
|
374
|
-
</div>
|
|
375
|
-
</label>
|
|
376
|
-
${l?r`
|
|
377
|
-
<label class="field">
|
|
378
|
-
${c(n("cron.form.timeoutSeconds"))}
|
|
379
|
-
<input
|
|
380
|
-
id="cron-timeout-seconds"
|
|
381
|
-
.value=${e.form.timeoutSeconds}
|
|
382
|
-
placeholder=${n("cron.form.timeoutPlaceholder")}
|
|
383
|
-
aria-invalid=${e.fieldErrors.timeoutSeconds?"true":"false"}
|
|
384
|
-
aria-describedby=${f(e.fieldErrors.timeoutSeconds?u("timeoutSeconds"):void 0)}
|
|
385
|
-
@input=${o=>e.onFormChange({timeoutSeconds:o.target.value})}
|
|
386
|
-
/>
|
|
387
|
-
<div class="cron-help">${n("cron.form.timeoutHelp")}</div>
|
|
388
|
-
${$(e.fieldErrors.timeoutSeconds,u("timeoutSeconds"))}
|
|
389
|
-
</label>
|
|
390
|
-
`:a}
|
|
391
|
-
</div>
|
|
392
|
-
<label class="field cron-span-2">
|
|
393
|
-
${c(e.form.payloadKind==="systemEvent"?n("cron.form.mainTimelineMessage"):n("cron.form.assistantTaskPrompt"),!0)}
|
|
394
|
-
<textarea
|
|
395
|
-
id="cron-payload-text"
|
|
396
|
-
.value=${e.form.payloadText}
|
|
397
|
-
aria-invalid=${e.fieldErrors.payloadText?"true":"false"}
|
|
398
|
-
aria-describedby=${f(e.fieldErrors.payloadText?u("payloadText"):void 0)}
|
|
399
|
-
@input=${o=>e.onFormChange({payloadText:o.target.value})}
|
|
400
|
-
rows="4"
|
|
401
|
-
></textarea>
|
|
402
|
-
${$(e.fieldErrors.payloadText,u("payloadText"))}
|
|
403
|
-
</label>
|
|
404
|
-
</section>
|
|
405
|
-
|
|
406
|
-
<section class="cron-form-section">
|
|
407
|
-
<div class="cron-form-section__title">${n("cron.form.deliverySection")}</div>
|
|
408
|
-
<div class="cron-form-section__sub">${n("cron.form.deliverySub")}</div>
|
|
409
|
-
<div class="form-grid cron-form-grid">
|
|
410
|
-
<label class="field ${m==="none"?"cron-span-2":""}">
|
|
411
|
-
${c(n("cron.form.resultDelivery"))}
|
|
412
|
-
<select
|
|
413
|
-
id="cron-delivery-mode"
|
|
414
|
-
.value=${m}
|
|
415
|
-
@change=${o=>e.onFormChange({deliveryMode:o.target.value})}
|
|
416
|
-
>
|
|
417
|
-
${x?r` <option value="announce">${n("cron.form.announceDefault")}</option> `:a}
|
|
418
|
-
<option value="webhook">${n("cron.form.webhookPost")}</option>
|
|
419
|
-
<option value="none">${n("cron.form.noneInternal")}</option>
|
|
420
|
-
</select>
|
|
421
|
-
<div class="cron-help">${n("cron.form.deliveryHelp")}</div>
|
|
422
|
-
</label>
|
|
423
|
-
${m!=="none"?r`
|
|
424
|
-
<label class="field ${m==="webhook"?"cron-span-2":""}">
|
|
425
|
-
${c(m==="webhook"?n("cron.form.webhookUrl"):n("cron.form.channel"),m==="webhook")}
|
|
426
|
-
${m==="webhook"?r`
|
|
427
|
-
<input
|
|
428
|
-
id="cron-delivery-to"
|
|
429
|
-
.value=${e.form.deliveryTo}
|
|
430
|
-
list="cron-delivery-to-suggestions"
|
|
431
|
-
aria-invalid=${e.fieldErrors.deliveryTo?"true":"false"}
|
|
432
|
-
aria-describedby=${f(e.fieldErrors.deliveryTo?u("deliveryTo"):void 0)}
|
|
433
|
-
@input=${o=>e.onFormChange({deliveryTo:o.target.value})}
|
|
434
|
-
placeholder=${n("cron.form.webhookPlaceholder")}
|
|
435
|
-
/>
|
|
436
|
-
`:r`
|
|
437
|
-
<select
|
|
438
|
-
id="cron-delivery-channel"
|
|
439
|
-
.value=${e.form.deliveryChannel||"last"}
|
|
440
|
-
@change=${o=>e.onFormChange({deliveryChannel:o.target.value})}
|
|
441
|
-
>
|
|
442
|
-
${d.map(o=>r`<option value=${o}>
|
|
443
|
-
${E(e,o)}
|
|
444
|
-
</option>`)}
|
|
445
|
-
</select>
|
|
446
|
-
`}
|
|
447
|
-
${m==="announce"?r` <div class="cron-help">${n("cron.form.channelHelp")}</div> `:r` <div class="cron-help">${n("cron.form.webhookHelp")}</div> `}
|
|
448
|
-
</label>
|
|
449
|
-
${m==="announce"?r`
|
|
450
|
-
<label class="field cron-span-2">
|
|
451
|
-
${c(n("cron.form.to"))}
|
|
452
|
-
<input
|
|
453
|
-
id="cron-delivery-to"
|
|
454
|
-
.value=${e.form.deliveryTo}
|
|
455
|
-
list="cron-delivery-to-suggestions"
|
|
456
|
-
@input=${o=>e.onFormChange({deliveryTo:o.target.value})}
|
|
457
|
-
placeholder=${n("cron.form.toPlaceholder")}
|
|
458
|
-
/>
|
|
459
|
-
<div class="cron-help">${n("cron.form.toHelp")}</div>
|
|
460
|
-
</label>
|
|
461
|
-
`:a}
|
|
462
|
-
${m==="webhook"?$(e.fieldErrors.deliveryTo,u("deliveryTo")):a}
|
|
463
|
-
`:a}
|
|
464
|
-
</div>
|
|
465
|
-
</section>
|
|
466
|
-
|
|
467
|
-
<details class="cron-advanced">
|
|
468
|
-
<summary class="cron-advanced__summary">${n("cron.form.advanced")}</summary>
|
|
469
|
-
<div class="cron-help">${n("cron.form.advancedHelp")}</div>
|
|
470
|
-
<div class="form-grid cron-form-grid">
|
|
471
|
-
<label class="field checkbox cron-checkbox">
|
|
472
|
-
<input
|
|
473
|
-
type="checkbox"
|
|
474
|
-
.checked=${e.form.deleteAfterRun}
|
|
475
|
-
@change=${o=>e.onFormChange({deleteAfterRun:o.target.checked})}
|
|
476
|
-
/>
|
|
477
|
-
<span class="field-checkbox__label">${n("cron.form.deleteAfterRun")}</span>
|
|
478
|
-
<div class="cron-help">${n("cron.form.deleteAfterRunHelp")}</div>
|
|
479
|
-
</label>
|
|
480
|
-
<label class="field checkbox cron-checkbox">
|
|
481
|
-
<input
|
|
482
|
-
type="checkbox"
|
|
483
|
-
.checked=${e.form.clearAgent}
|
|
484
|
-
@change=${o=>e.onFormChange({clearAgent:o.target.checked})}
|
|
485
|
-
/>
|
|
486
|
-
<span class="field-checkbox__label">${n("cron.form.clearAgentOverride")}</span>
|
|
487
|
-
<div class="cron-help">${n("cron.form.clearAgentHelp")}</div>
|
|
488
|
-
</label>
|
|
489
|
-
<label class="field cron-span-2">
|
|
490
|
-
${c("Session key")}
|
|
491
|
-
<input
|
|
492
|
-
id="cron-session-key"
|
|
493
|
-
.value=${e.form.sessionKey}
|
|
494
|
-
@input=${o=>e.onFormChange({sessionKey:o.target.value})}
|
|
495
|
-
placeholder="agent:main:main"
|
|
496
|
-
/>
|
|
497
|
-
<div class="cron-help">Optional routing key for job delivery and wake routing.</div>
|
|
498
|
-
</label>
|
|
499
|
-
${i?r`
|
|
500
|
-
<label class="field checkbox cron-checkbox cron-span-2">
|
|
501
|
-
<input
|
|
502
|
-
type="checkbox"
|
|
503
|
-
.checked=${e.form.scheduleExact}
|
|
504
|
-
@change=${o=>e.onFormChange({scheduleExact:o.target.checked})}
|
|
505
|
-
/>
|
|
506
|
-
<span class="field-checkbox__label">${n("cron.form.exactTiming")}</span>
|
|
507
|
-
<div class="cron-help">${n("cron.form.exactTimingHelp")}</div>
|
|
508
|
-
</label>
|
|
509
|
-
<div class="cron-stagger-group cron-span-2">
|
|
510
|
-
<label class="field">
|
|
511
|
-
${c(n("cron.form.staggerWindow"))}
|
|
512
|
-
<input
|
|
513
|
-
id="cron-stagger-amount"
|
|
514
|
-
.value=${e.form.staggerAmount}
|
|
515
|
-
?disabled=${e.form.scheduleExact}
|
|
516
|
-
aria-invalid=${e.fieldErrors.staggerAmount?"true":"false"}
|
|
517
|
-
aria-describedby=${f(e.fieldErrors.staggerAmount?u("staggerAmount"):void 0)}
|
|
518
|
-
@input=${o=>e.onFormChange({staggerAmount:o.target.value})}
|
|
519
|
-
placeholder=${n("cron.form.staggerPlaceholder")}
|
|
520
|
-
/>
|
|
521
|
-
${$(e.fieldErrors.staggerAmount,u("staggerAmount"))}
|
|
522
|
-
</label>
|
|
523
|
-
<label class="field">
|
|
524
|
-
<span>${n("cron.form.staggerUnit")}</span>
|
|
525
|
-
<select
|
|
526
|
-
.value=${e.form.staggerUnit}
|
|
527
|
-
?disabled=${e.form.scheduleExact}
|
|
528
|
-
@change=${o=>e.onFormChange({staggerUnit:o.target.value})}
|
|
529
|
-
>
|
|
530
|
-
<option value="seconds">${n("cron.form.seconds")}</option>
|
|
531
|
-
<option value="minutes">${n("cron.form.minutes")}</option>
|
|
532
|
-
</select>
|
|
533
|
-
</label>
|
|
534
|
-
</div>
|
|
535
|
-
`:a}
|
|
536
|
-
${l?r`
|
|
537
|
-
<label class="field cron-span-2">
|
|
538
|
-
${c("Account ID")}
|
|
539
|
-
<input
|
|
540
|
-
id="cron-delivery-account-id"
|
|
541
|
-
.value=${e.form.deliveryAccountId}
|
|
542
|
-
list="cron-delivery-account-suggestions"
|
|
543
|
-
?disabled=${m!=="announce"}
|
|
544
|
-
@input=${o=>e.onFormChange({deliveryAccountId:o.target.value})}
|
|
545
|
-
placeholder="default"
|
|
546
|
-
/>
|
|
547
|
-
<div class="cron-help">
|
|
548
|
-
Optional channel account ID for multi-account setups.
|
|
549
|
-
</div>
|
|
550
|
-
</label>
|
|
551
|
-
<label class="field checkbox cron-checkbox cron-span-2">
|
|
552
|
-
<input
|
|
553
|
-
type="checkbox"
|
|
554
|
-
.checked=${e.form.payloadLightContext}
|
|
555
|
-
@change=${o=>e.onFormChange({payloadLightContext:o.target.checked})}
|
|
556
|
-
/>
|
|
557
|
-
<span class="field-checkbox__label">Light context</span>
|
|
558
|
-
<div class="cron-help">
|
|
559
|
-
Use lightweight bootstrap context for this agent job.
|
|
560
|
-
</div>
|
|
561
|
-
</label>
|
|
562
|
-
<label class="field">
|
|
563
|
-
${c(n("cron.form.model"))}
|
|
564
|
-
<input
|
|
565
|
-
id="cron-payload-model"
|
|
566
|
-
.value=${e.form.payloadModel}
|
|
567
|
-
list="cron-model-suggestions"
|
|
568
|
-
@input=${o=>e.onFormChange({payloadModel:o.target.value})}
|
|
569
|
-
placeholder=${n("cron.form.modelPlaceholder")}
|
|
570
|
-
/>
|
|
571
|
-
<div class="cron-help">${n("cron.form.modelHelp")}</div>
|
|
572
|
-
</label>
|
|
573
|
-
<label class="field">
|
|
574
|
-
${c(n("cron.form.thinking"))}
|
|
575
|
-
<input
|
|
576
|
-
id="cron-payload-thinking"
|
|
577
|
-
.value=${e.form.payloadThinking}
|
|
578
|
-
list="cron-thinking-suggestions"
|
|
579
|
-
@input=${o=>e.onFormChange({payloadThinking:o.target.value})}
|
|
580
|
-
placeholder=${n("cron.form.thinkingPlaceholder")}
|
|
581
|
-
/>
|
|
582
|
-
<div class="cron-help">${n("cron.form.thinkingHelp")}</div>
|
|
583
|
-
</label>
|
|
584
|
-
`:a}
|
|
585
|
-
${l?r`
|
|
586
|
-
<label class="field cron-span-2">
|
|
587
|
-
${c("Failure alerts")}
|
|
588
|
-
<select
|
|
589
|
-
.value=${e.form.failureAlertMode}
|
|
590
|
-
@change=${o=>e.onFormChange({failureAlertMode:o.target.value})}
|
|
591
|
-
>
|
|
592
|
-
<option value="inherit">Inherit global setting</option>
|
|
593
|
-
<option value="disabled">Disable for this job</option>
|
|
594
|
-
<option value="custom">Custom per-job settings</option>
|
|
595
|
-
</select>
|
|
596
|
-
<div class="cron-help">
|
|
597
|
-
Control when this job sends repeated-failure alerts.
|
|
598
|
-
</div>
|
|
599
|
-
</label>
|
|
600
|
-
${e.form.failureAlertMode==="custom"?r`
|
|
601
|
-
<label class="field">
|
|
602
|
-
${c("Alert after")}
|
|
603
|
-
<input
|
|
604
|
-
id="cron-failure-alert-after"
|
|
605
|
-
.value=${e.form.failureAlertAfter}
|
|
606
|
-
aria-invalid=${e.fieldErrors.failureAlertAfter?"true":"false"}
|
|
607
|
-
aria-describedby=${f(e.fieldErrors.failureAlertAfter?u("failureAlertAfter"):void 0)}
|
|
608
|
-
@input=${o=>e.onFormChange({failureAlertAfter:o.target.value})}
|
|
609
|
-
placeholder="2"
|
|
610
|
-
/>
|
|
611
|
-
<div class="cron-help">Consecutive errors before alerting.</div>
|
|
612
|
-
${$(e.fieldErrors.failureAlertAfter,u("failureAlertAfter"))}
|
|
613
|
-
</label>
|
|
614
|
-
<label class="field">
|
|
615
|
-
${c("Cooldown (seconds)")}
|
|
616
|
-
<input
|
|
617
|
-
id="cron-failure-alert-cooldown-seconds"
|
|
618
|
-
.value=${e.form.failureAlertCooldownSeconds}
|
|
619
|
-
aria-invalid=${e.fieldErrors.failureAlertCooldownSeconds?"true":"false"}
|
|
620
|
-
aria-describedby=${f(e.fieldErrors.failureAlertCooldownSeconds?u("failureAlertCooldownSeconds"):void 0)}
|
|
621
|
-
@input=${o=>e.onFormChange({failureAlertCooldownSeconds:o.target.value})}
|
|
622
|
-
placeholder="3600"
|
|
623
|
-
/>
|
|
624
|
-
<div class="cron-help">Minimum seconds between alerts.</div>
|
|
625
|
-
${$(e.fieldErrors.failureAlertCooldownSeconds,u("failureAlertCooldownSeconds"))}
|
|
626
|
-
</label>
|
|
627
|
-
<label class="field">
|
|
628
|
-
${c("Alert channel")}
|
|
629
|
-
<select
|
|
630
|
-
.value=${e.form.failureAlertChannel||"last"}
|
|
631
|
-
@change=${o=>e.onFormChange({failureAlertChannel:o.target.value})}
|
|
632
|
-
>
|
|
633
|
-
${d.map(o=>r`<option value=${o}>
|
|
634
|
-
${E(e,o)}
|
|
635
|
-
</option>`)}
|
|
636
|
-
</select>
|
|
637
|
-
</label>
|
|
638
|
-
<label class="field">
|
|
639
|
-
${c("Alert to")}
|
|
640
|
-
<input
|
|
641
|
-
.value=${e.form.failureAlertTo}
|
|
642
|
-
list="cron-delivery-to-suggestions"
|
|
643
|
-
@input=${o=>e.onFormChange({failureAlertTo:o.target.value})}
|
|
644
|
-
placeholder="+1555... or chat id"
|
|
645
|
-
/>
|
|
646
|
-
<div class="cron-help">
|
|
647
|
-
Optional recipient override for failure alerts.
|
|
648
|
-
</div>
|
|
649
|
-
</label>
|
|
650
|
-
<label class="field">
|
|
651
|
-
${c("Alert mode")}
|
|
652
|
-
<select
|
|
653
|
-
.value=${e.form.failureAlertDeliveryMode||"announce"}
|
|
654
|
-
@change=${o=>e.onFormChange({failureAlertDeliveryMode:o.target.value})}
|
|
655
|
-
>
|
|
656
|
-
<option value="announce">Announce (via channel)</option>
|
|
657
|
-
<option value="webhook">Webhook (HTTP POST)</option>
|
|
658
|
-
</select>
|
|
659
|
-
</label>
|
|
660
|
-
<label class="field">
|
|
661
|
-
${c("Alert account ID")}
|
|
662
|
-
<input
|
|
663
|
-
.value=${e.form.failureAlertAccountId}
|
|
664
|
-
@input=${o=>e.onFormChange({failureAlertAccountId:o.target.value})}
|
|
665
|
-
placeholder="Account ID for multi-account setups"
|
|
666
|
-
/>
|
|
667
|
-
</label>
|
|
668
|
-
`:a}
|
|
669
|
-
`:a}
|
|
670
|
-
${m!=="none"?r`
|
|
671
|
-
<label class="field checkbox cron-checkbox cron-span-2">
|
|
672
|
-
<input
|
|
673
|
-
type="checkbox"
|
|
674
|
-
.checked=${e.form.deliveryBestEffort}
|
|
675
|
-
@change=${o=>e.onFormChange({deliveryBestEffort:o.target.checked})}
|
|
676
|
-
/>
|
|
677
|
-
<span class="field-checkbox__label"
|
|
678
|
-
>${n("cron.form.bestEffortDelivery")}</span
|
|
679
|
-
>
|
|
680
|
-
<div class="cron-help">${n("cron.form.bestEffortHelp")}</div>
|
|
681
|
-
</label>
|
|
682
|
-
`:a}
|
|
683
|
-
</div>
|
|
684
|
-
</details>
|
|
685
|
-
</div>
|
|
686
|
-
${w?r`
|
|
687
|
-
<div class="cron-form-status" role="status" aria-live="polite">
|
|
688
|
-
<div class="cron-form-status__title">${n("cron.form.cantAddYet")}</div>
|
|
689
|
-
<div class="cron-help">${n("cron.form.fillRequired")}</div>
|
|
690
|
-
<ul class="cron-form-status__list">
|
|
691
|
-
${k.map(o=>r`
|
|
692
|
-
<li>
|
|
693
|
-
<button
|
|
694
|
-
type="button"
|
|
695
|
-
class="cron-form-status__link"
|
|
696
|
-
@click=${()=>Q(o.inputId)}
|
|
697
|
-
>
|
|
698
|
-
${o.label}: ${n(o.message)}
|
|
699
|
-
</button>
|
|
700
|
-
</li>
|
|
701
|
-
`)}
|
|
702
|
-
</ul>
|
|
703
|
-
</div>
|
|
704
|
-
`:a}
|
|
705
|
-
<div class="row cron-form-actions">
|
|
706
|
-
<button
|
|
707
|
-
class="btn primary"
|
|
708
|
-
?disabled=${e.busy||!e.canSubmit}
|
|
709
|
-
@click=${e.onAdd}
|
|
710
|
-
>
|
|
711
|
-
${e.busy?n("cron.form.saving"):t?n("cron.form.saveChanges"):n("cron.form.addJob")}
|
|
712
|
-
</button>
|
|
713
|
-
${C?r`<div class="cron-submit-reason" aria-live="polite">${C}</div>`:a}
|
|
714
|
-
${t?r`
|
|
715
|
-
<button class="btn" ?disabled=${e.busy} @click=${e.onCancelEdit}>
|
|
716
|
-
${n("cron.form.cancel")}
|
|
717
|
-
</button>
|
|
718
|
-
`:a}
|
|
719
|
-
</div>
|
|
720
|
-
</section>
|
|
721
|
-
</section>
|
|
722
|
-
|
|
723
|
-
${y("cron-agent-suggestions",e.agentSuggestions)}
|
|
724
|
-
${y("cron-model-suggestions",e.modelSuggestions)}
|
|
725
|
-
${y("cron-thinking-suggestions",e.thinkingSuggestions)}
|
|
726
|
-
${y("cron-tz-suggestions",e.timezoneSuggestions)}
|
|
727
|
-
${y("cron-delivery-to-suggestions",e.deliveryToSuggestions)}
|
|
728
|
-
${y("cron-delivery-account-suggestions",e.accountSuggestions)}
|
|
729
|
-
`}function W(e){const t=e.form;return t.scheduleKind==="at"?r`
|
|
730
|
-
<label class="field cron-span-2" style="margin-top: 12px;">
|
|
731
|
-
${c(n("cron.form.runAt"),!0)}
|
|
732
|
-
<input
|
|
733
|
-
id="cron-schedule-at"
|
|
734
|
-
type="datetime-local"
|
|
735
|
-
.value=${t.scheduleAt}
|
|
736
|
-
aria-invalid=${e.fieldErrors.scheduleAt?"true":"false"}
|
|
737
|
-
aria-describedby=${f(e.fieldErrors.scheduleAt?u("scheduleAt"):void 0)}
|
|
738
|
-
@input=${l=>e.onFormChange({scheduleAt:l.target.value})}
|
|
739
|
-
/>
|
|
740
|
-
${$(e.fieldErrors.scheduleAt,u("scheduleAt"))}
|
|
741
|
-
</label>
|
|
742
|
-
`:t.scheduleKind==="every"?r`
|
|
743
|
-
<div class="form-grid cron-form-grid" style="margin-top: 12px;">
|
|
744
|
-
<label class="field">
|
|
745
|
-
${c(n("cron.form.every"),!0)}
|
|
746
|
-
<input
|
|
747
|
-
id="cron-every-amount"
|
|
748
|
-
.value=${t.everyAmount}
|
|
749
|
-
aria-invalid=${e.fieldErrors.everyAmount?"true":"false"}
|
|
750
|
-
aria-describedby=${f(e.fieldErrors.everyAmount?u("everyAmount"):void 0)}
|
|
751
|
-
@input=${l=>e.onFormChange({everyAmount:l.target.value})}
|
|
752
|
-
placeholder=${n("cron.form.everyAmountPlaceholder")}
|
|
753
|
-
/>
|
|
754
|
-
${$(e.fieldErrors.everyAmount,u("everyAmount"))}
|
|
755
|
-
</label>
|
|
756
|
-
<label class="field">
|
|
757
|
-
<span>${n("cron.form.unit")}</span>
|
|
758
|
-
<select
|
|
759
|
-
.value=${t.everyUnit}
|
|
760
|
-
@change=${l=>e.onFormChange({everyUnit:l.target.value})}
|
|
761
|
-
>
|
|
762
|
-
<option value="minutes">${n("cron.form.minutes")}</option>
|
|
763
|
-
<option value="hours">${n("cron.form.hours")}</option>
|
|
764
|
-
<option value="days">${n("cron.form.days")}</option>
|
|
765
|
-
</select>
|
|
766
|
-
</label>
|
|
767
|
-
</div>
|
|
768
|
-
`:r`
|
|
769
|
-
<div class="form-grid cron-form-grid" style="margin-top: 12px;">
|
|
770
|
-
<label class="field">
|
|
771
|
-
${c(n("cron.form.expression"),!0)}
|
|
772
|
-
<input
|
|
773
|
-
id="cron-cron-expr"
|
|
774
|
-
.value=${t.cronExpr}
|
|
775
|
-
aria-invalid=${e.fieldErrors.cronExpr?"true":"false"}
|
|
776
|
-
aria-describedby=${f(e.fieldErrors.cronExpr?u("cronExpr"):void 0)}
|
|
777
|
-
@input=${l=>e.onFormChange({cronExpr:l.target.value})}
|
|
778
|
-
placeholder=${n("cron.form.expressionPlaceholder")}
|
|
779
|
-
/>
|
|
780
|
-
${$(e.fieldErrors.cronExpr,u("cronExpr"))}
|
|
781
|
-
</label>
|
|
782
|
-
<label class="field">
|
|
783
|
-
<span>${n("cron.form.timezoneOptional")}</span>
|
|
784
|
-
<input
|
|
785
|
-
.value=${t.cronTz}
|
|
786
|
-
list="cron-tz-suggestions"
|
|
787
|
-
@input=${l=>e.onFormChange({cronTz:l.target.value})}
|
|
788
|
-
placeholder=${n("cron.form.timezonePlaceholder")}
|
|
789
|
-
/>
|
|
790
|
-
<div class="cron-help">${n("cron.form.timezoneHelp")}</div>
|
|
791
|
-
</label>
|
|
792
|
-
<div class="cron-help cron-span-2">${n("cron.form.jitterHelp")}</div>
|
|
793
|
-
</div>
|
|
794
|
-
`}function $(e,t){return e?r`<div id=${f(t)} class="cron-help cron-error">${n(e)}</div>`:a}function V(e,t){const i=`list-item list-item-clickable cron-job${t.runsJobId===e.id?" list-item-selected":""}`,d=s=>{t.onLoadRuns(e.id),s()};return r`
|
|
795
|
-
<div class=${i} @click=${()=>t.onLoadRuns(e.id)}>
|
|
796
|
-
<div class="list-main">
|
|
797
|
-
<div class="list-title">${e.name}</div>
|
|
798
|
-
<div class="list-sub">${K(e)}</div>
|
|
799
|
-
${Y(e)}
|
|
800
|
-
${e.agentId?r`<div class="muted cron-job-agent">
|
|
801
|
-
${n("cron.jobDetail.agent")}: ${e.agentId}
|
|
802
|
-
</div>`:a}
|
|
803
|
-
</div>
|
|
804
|
-
<div class="list-meta">${X(e)}</div>
|
|
805
|
-
<div class="cron-job-footer">
|
|
806
|
-
<div class="chip-row cron-job-chips">
|
|
807
|
-
<span class=${`chip ${e.enabled?"chip-ok":"chip-danger"}`}>
|
|
808
|
-
${e.enabled?n("cron.jobList.enabled"):n("cron.jobList.disabled")}
|
|
809
|
-
</span>
|
|
810
|
-
<span class="chip">${e.sessionTarget}</span>
|
|
811
|
-
<span class="chip">${e.wakeMode}</span>
|
|
812
|
-
</div>
|
|
813
|
-
<div class="row cron-job-actions">
|
|
814
|
-
<button
|
|
815
|
-
class="btn"
|
|
816
|
-
?disabled=${t.busy}
|
|
817
|
-
@click=${s=>{s.stopPropagation(),d(()=>t.onEdit(e))}}
|
|
818
|
-
>
|
|
819
|
-
${n("cron.jobList.edit")}
|
|
820
|
-
</button>
|
|
821
|
-
<button
|
|
822
|
-
class="btn"
|
|
823
|
-
?disabled=${t.busy}
|
|
824
|
-
@click=${s=>{s.stopPropagation(),d(()=>t.onClone(e))}}
|
|
825
|
-
>
|
|
826
|
-
${n("cron.jobList.clone")}
|
|
827
|
-
</button>
|
|
828
|
-
<button
|
|
829
|
-
class="btn"
|
|
830
|
-
?disabled=${t.busy}
|
|
831
|
-
@click=${s=>{s.stopPropagation(),d(()=>t.onToggle(e,!e.enabled))}}
|
|
832
|
-
>
|
|
833
|
-
${e.enabled?n("cron.jobList.disable"):n("cron.jobList.enable")}
|
|
834
|
-
</button>
|
|
835
|
-
<button
|
|
836
|
-
class="btn"
|
|
837
|
-
?disabled=${t.busy}
|
|
838
|
-
@click=${s=>{s.stopPropagation(),d(()=>t.onRun(e,"force"))}}
|
|
839
|
-
>
|
|
840
|
-
${n("cron.jobList.run")}
|
|
841
|
-
</button>
|
|
842
|
-
<button
|
|
843
|
-
class="btn"
|
|
844
|
-
?disabled=${t.busy}
|
|
845
|
-
@click=${s=>{s.stopPropagation(),d(()=>t.onRun(e,"due"))}}
|
|
846
|
-
>
|
|
847
|
-
Run if due
|
|
848
|
-
</button>
|
|
849
|
-
<button
|
|
850
|
-
class="btn"
|
|
851
|
-
?disabled=${t.busy}
|
|
852
|
-
@click=${s=>{s.stopPropagation(),t.onLoadRuns(e.id)}}
|
|
853
|
-
>
|
|
854
|
-
${n("cron.jobList.history")}
|
|
855
|
-
</button>
|
|
856
|
-
<button
|
|
857
|
-
class="btn danger"
|
|
858
|
-
?disabled=${t.busy}
|
|
859
|
-
@click=${s=>{s.stopPropagation(),d(()=>t.onRemove(e))}}
|
|
860
|
-
>
|
|
861
|
-
${n("cron.jobList.remove")}
|
|
862
|
-
</button>
|
|
863
|
-
</div>
|
|
864
|
-
</div>
|
|
865
|
-
</div>
|
|
866
|
-
`}function Y(e){if(e.payload.kind==="systemEvent")return r`<div class="cron-job-detail">
|
|
867
|
-
<span class="cron-job-detail-label">${n("cron.jobDetail.system")}</span>
|
|
868
|
-
<span class="muted cron-job-detail-value">${e.payload.text}</span>
|
|
869
|
-
</div>`;const t=e.delivery,l=t?.mode==="webhook"?t.to?` (${t.to})`:"":t?.channel||t?.to?` (${t.channel??"last"}${t.to?` -> ${t.to}`:""})`:"";return r`
|
|
870
|
-
<div class="cron-job-detail">
|
|
871
|
-
<span class="cron-job-detail-label">${n("cron.jobDetail.prompt")}</span>
|
|
872
|
-
<span class="muted cron-job-detail-value">${e.payload.message}</span>
|
|
873
|
-
</div>
|
|
874
|
-
${t?r`<div class="cron-job-detail">
|
|
875
|
-
<span class="cron-job-detail-label">${n("cron.jobDetail.delivery")}</span>
|
|
876
|
-
<span class="muted cron-job-detail-value">${t.mode}${l}</span>
|
|
877
|
-
</div>`:a}
|
|
878
|
-
`}function T(e){return typeof e!="number"||!Number.isFinite(e)?n("common.na"):R(e)}function G(e,t=Date.now()){const l=R(e);return e>t?n("cron.runEntry.next",{rel:l}):n("cron.runEntry.due",{rel:l})}function X(e){const t=e.state?.lastStatus,l=t==="ok"?"cron-job-status-ok":t==="error"?"cron-job-status-error":t==="skipped"?"cron-job-status-skipped":"cron-job-status-na",i=t==="ok"?n("cron.runs.runStatusOk"):t==="error"?n("cron.runs.runStatusError"):t==="skipped"?n("cron.runs.runStatusSkipped"):n("common.na"),d=e.state?.nextRunAtMs,s=e.state?.lastRunAtMs;return r`
|
|
879
|
-
<div class="cron-job-state">
|
|
880
|
-
<div class="cron-job-state-row">
|
|
881
|
-
<span class="cron-job-state-key">${n("cron.jobState.status")}</span>
|
|
882
|
-
<span class=${`cron-job-status-pill ${l}`}>${i}</span>
|
|
883
|
-
</div>
|
|
884
|
-
<div class="cron-job-state-row">
|
|
885
|
-
<span class="cron-job-state-key">${n("cron.jobState.next")}</span>
|
|
886
|
-
<span class="cron-job-state-value" title=${S(d)}>
|
|
887
|
-
${T(d)}
|
|
888
|
-
</span>
|
|
889
|
-
</div>
|
|
890
|
-
<div class="cron-job-state-row">
|
|
891
|
-
<span class="cron-job-state-key">${n("cron.jobState.last")}</span>
|
|
892
|
-
<span class="cron-job-state-value" title=${S(s)}>
|
|
893
|
-
${T(s)}
|
|
894
|
-
</span>
|
|
895
|
-
</div>
|
|
896
|
-
</div>
|
|
897
|
-
`}function Z(e){switch(e){case"ok":return n("cron.runs.runStatusOk");case"error":return n("cron.runs.runStatusError");case"skipped":return n("cron.runs.runStatusSkipped");default:return n("cron.runs.runStatusUnknown")}}function ee(e){switch(e){case"delivered":return n("cron.runs.deliveryDelivered");case"not-delivered":return n("cron.runs.deliveryNotDelivered");case"not-requested":return n("cron.runs.deliveryNotRequested");case"unknown":return n("cron.runs.deliveryUnknown");default:return n("cron.runs.deliveryUnknown")}}function ne(e,t,l){const i=typeof e.sessionKey=="string"&&e.sessionKey.trim().length>0?`${H("chat",t)}?session=${encodeURIComponent(e.sessionKey)}`:null,d=Z(e.status??"unknown"),s=ee(e.deliveryStatus??"not-requested"),v=e.usage,g=v&&typeof v.total_tokens=="number"?`${v.total_tokens} tokens`:v&&typeof v.input_tokens=="number"&&typeof v.output_tokens=="number"?`${v.input_tokens} in / ${v.output_tokens} out`:null;return r`
|
|
898
|
-
<div class="list-item cron-run-entry">
|
|
899
|
-
<div class="list-main cron-run-entry__main">
|
|
900
|
-
<div class="list-title cron-run-entry__title">
|
|
901
|
-
${e.jobName??e.jobId}
|
|
902
|
-
<span class="muted"> · ${d}</span>
|
|
903
|
-
</div>
|
|
904
|
-
<div class="list-sub cron-run-entry__summary">
|
|
905
|
-
${e.summary??e.error??n("cron.runEntry.noSummary")}
|
|
906
|
-
</div>
|
|
907
|
-
<div class="chip-row" style="margin-top: 6px;">
|
|
908
|
-
<span class="chip">${s}</span>
|
|
909
|
-
${e.model?r`<span class="chip">${e.model}</span>`:a}
|
|
910
|
-
${e.provider?r`<span class="chip">${e.provider}</span>`:a}
|
|
911
|
-
${g?r`<span class="chip">${g}</span>`:a}
|
|
912
|
-
</div>
|
|
913
|
-
</div>
|
|
914
|
-
<div class="list-meta cron-run-entry__meta">
|
|
915
|
-
<div>${S(e.ts)}</div>
|
|
916
|
-
${typeof e.runAtMs=="number"?r`<div class="muted">${n("cron.runEntry.runAt")} ${S(e.runAtMs)}</div>`:a}
|
|
917
|
-
<div class="muted">${e.durationMs??0}ms</div>
|
|
918
|
-
${typeof e.nextRunAtMs=="number"?r`<div class="muted">${G(e.nextRunAtMs)}</div>`:a}
|
|
919
|
-
${i?r`<div>
|
|
920
|
-
<a
|
|
921
|
-
class="session-link"
|
|
922
|
-
href=${i}
|
|
923
|
-
@click=${b=>{b.defaultPrevented||b.button!==0||b.metaKey||b.ctrlKey||b.shiftKey||b.altKey||l&&e.sessionKey&&(b.preventDefault(),l(e.sessionKey))}}
|
|
924
|
-
>${n("cron.runEntry.openRunChat")}</a
|
|
925
|
-
>
|
|
926
|
-
</div>`:a}
|
|
927
|
-
${e.error?r`<div class="muted">${e.error}</div>`:a}
|
|
928
|
-
${e.deliveryError?r`<div class="muted">${e.deliveryError}</div>`:a}
|
|
929
|
-
</div>
|
|
930
|
-
</div>
|
|
931
|
-
`}export{te as renderCron};
|
|
932
|
-
//# sourceMappingURL=cron-DYyEm1jm.js.map
|