@noxsoft/anima 2.0.2 → 2.0.4
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/README.md +1260 -28
- package/dist/accounts-Bth3PpPD.js +260 -0
- package/dist/accounts-D8CPKNkN.js +259 -0
- package/dist/acp-cli-ByK6lS6c.js +1081 -0
- package/dist/acp-cli-CaQCjIw4.js +1084 -0
- package/dist/agent-BgIkqd3F.js +725 -0
- package/dist/agent-N5BDcge4.js +725 -0
- package/dist/agent-events-COH7NDW2.js +182 -0
- package/dist/agent-scope-CPphqq-U.js +452 -0
- package/dist/agent-scope-DZgptr9J.js +452 -0
- package/dist/agent-scope-cj2QCT6R.js +112 -0
- package/dist/agents-NEudYMdg.js +774 -0
- package/dist/agents.config-Bujs-NIy.js +182 -0
- package/dist/agents.config-jp7OLssr.js +182 -0
- package/dist/argv-BMZMiW7v.js +73 -0
- package/dist/audit-C-UJhfdv.js +2401 -0
- package/dist/audit-CeCO7SK5.js +2401 -0
- package/dist/auth-BNZsOHGF.js +648 -0
- package/dist/auth-DMPZWzEa.js +639 -0
- package/dist/auth-choice-5VnaGMD-.js +2681 -0
- package/dist/auth-choice-DA2k4vs8.js +2681 -0
- package/dist/auth-health-B7FqA26_.js +149 -0
- package/dist/auth-health-VO_MPqVX.js +149 -0
- package/dist/auth-profiles-BDrNYX_n.js +1564 -0
- package/dist/auth-profiles-CxSHydjn.js +2689 -0
- package/dist/banner-BtDZPRzi.js +294 -0
- package/dist/browser-cli-8yQMpxb8.js +1679 -0
- package/dist/browser-cli-Czg3JtDH.js +1676 -0
- package/dist/build-info.json +3 -3
- package/dist/bundled/boot-md/handler.js +16 -16
- package/dist/bundled/bootstrap-extra-files/handler.js +4 -4
- package/dist/bundled/command-logger/handler.js +1 -1
- package/dist/bundled/session-memory/handler.js +5 -5
- package/dist/call-BIzCaKZb.js +282 -0
- package/dist/call-BYDpTVCZ.js +282 -0
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/catalog-CqKiUgu6.js +185 -0
- package/dist/catalog-DMfEg-oK.js +185 -0
- package/dist/channel-options-BrtCtyrT.js +32 -0
- package/dist/channel-options-CO21Gl8p.js +33 -0
- package/dist/channel-selection-Bbm1lq3P.js +51 -0
- package/dist/channel-selection-CqcX7Ocw.js +51 -0
- package/dist/channel-web-DrsT6OAE.js +2162 -0
- package/dist/channels-cli-Juyh1S6n.js +1304 -0
- package/dist/channels-cli-zNvi1m5c.js +1306 -0
- package/dist/channels-status-issues-CqzqshW4.js +18 -0
- package/dist/channels-status-issues-DdJdO866.js +18 -0
- package/dist/chrome-C4dOMO8z.js +1601 -0
- package/dist/chrome-DdcDzAtH.js +1629 -0
- package/dist/chrome-U3DRzjJD.js +1601 -0
- package/dist/chunk-D2nLsrEW.js +348 -0
- package/dist/clack-prompter-BI3RDW5w.js +92 -0
- package/dist/clack-prompter-Dwr1m_IZ.js +92 -0
- package/dist/cli/daemon-cli.js +1 -1
- package/dist/cli-C3cpDaz8.js +99 -0
- package/dist/cli-CjWUGdGC.js +101 -0
- package/dist/cli-session-BVjY_XrW.js +5463 -0
- package/dist/cli-session-gtuYN2Iq.js +5408 -0
- package/dist/client-Dswwze5_.js +1692 -0
- package/dist/client-LRKFjo4A.js +1692 -0
- package/dist/clipboard-BZKS9O1u.js +31 -0
- package/dist/clipboard-DES8b1AM.js +31 -0
- package/dist/command-format-CP1YTNCl.js +52 -0
- package/dist/command-format-CVL4K5cj.js +52 -0
- package/dist/command-format-G6N2zghg.js +38 -0
- package/dist/command-registry-BBvNvysr.js +248 -0
- package/dist/commands-AZ3n8Y2c.js +726 -0
- package/dist/commands-BMnD_QRY.js +726 -0
- package/dist/commands-registry-cFqZ6Ib4.js +766 -0
- package/dist/commands-registry-q13H7ng5.js +766 -0
- package/dist/common-CX5458fH.js +287 -0
- package/dist/common-DJbnT8ws.js +287 -0
- package/dist/completion-cli-BADRBcIl.js +432 -0
- package/dist/completion-cli-DMQgiObF.js +431 -0
- package/dist/config-CU-Axg8P.js +5704 -0
- package/dist/config-DaqbUdkI.js +5705 -0
- package/dist/config-cli-BPlbwiuA.js +244 -0
- package/dist/config-cli-DXgZJkPU.js +247 -0
- package/dist/config-guard-Ba49JNds.js +76 -0
- package/dist/config-guard-Cu0qMKZJ.js +93 -0
- package/dist/config-kVVm5EYV.js +6523 -0
- package/dist/config-sync-CzLnLTXt.js +91 -0
- package/dist/config-sync-DuydxPWx.js +91 -0
- package/dist/configure-CHgacLyi.js +960 -0
- package/dist/configure-DfHXDa1L.js +959 -0
- package/dist/context-DzgXOckU.js +60 -0
- package/dist/control-service-8_wKHwBa.js +72 -0
- package/dist/control-service-BtL1Jto_.js +72 -0
- package/dist/cron-cli-BCzSR2c0.js +448 -0
- package/dist/cron-cli-CCWNkykU.js +451 -0
- package/dist/daemon-cli-Bjkbu9Vy.js +565 -0
- package/dist/daemon-cli-CmlHcC1J.js +566 -0
- package/dist/daemon-cli.js +16 -16
- package/dist/daemon-runtime-C0tz7VAC.js +460 -0
- package/dist/daemon-runtime-rUTqCVwJ.js +460 -0
- package/dist/deliver-BBggsviM.js +1097 -0
- package/dist/deliver-CePITOl8.js +1162 -0
- package/dist/deliver-DFnVaetP.js +1097 -0
- package/dist/delivery-queue-BJQK3oh5.js +220 -0
- package/dist/deps-CeEKhrp7.js +42 -0
- package/dist/devices-cli-DQrDMrZH.js +198 -0
- package/dist/devices-cli-Oe-A1Dv0.js +195 -0
- package/dist/diagnostics-DxMFrBLO.js +35 -0
- package/dist/diagnostics-m79ZlMmZ.js +35 -0
- package/dist/directory-cli-BL6h8cGF.js +246 -0
- package/dist/directory-cli-Cjgmi_sj.js +243 -0
- package/dist/dispatcher-DAFbQM-c.js +100 -0
- package/dist/dispatcher-DNd40gUn.js +100 -0
- package/dist/dist-CqDI82ei.js +929 -0
- package/dist/dist-DnHRxR5U.js +929 -0
- package/dist/dns-cli-CFtV3BXK.js +200 -0
- package/dist/dns-cli-NyIHvQ5S.js +197 -0
- package/dist/dock-BdXLb5oY.js +753 -0
- package/dist/dock-jYICmNcI.js +753 -0
- package/dist/docs-cli-CrOaIK_H.js +161 -0
- package/dist/docs-cli-D_cmJDSr.js +159 -0
- package/dist/doctor-BpGxKrBl.js +1815 -0
- package/dist/doctor-D12wNQPU.js +1813 -0
- package/dist/doctor-completion-DeOfofek.js +92 -0
- package/dist/doctor-completion-DwjqdEcK.js +92 -0
- package/dist/doctor-config-flow-BI3mpkbd.js +1232 -0
- package/dist/doctor-config-flow-wMHheFkC.js +1232 -0
- package/dist/engine-BCtL-AMw.js +563 -0
- package/dist/engine-Bk_UT413.js +563 -0
- package/dist/entry.js +5 -5
- package/dist/env-v6411I8h.js +32 -0
- package/dist/exec-B7sUS164.js +1167 -0
- package/dist/exec-approvals-CroGJRUg.js +1221 -0
- package/dist/exec-approvals-cli-BTxF_RsH.js +371 -0
- package/dist/exec-approvals-cli-n1gyGwH2.js +368 -0
- package/dist/exec-mhSykkaa.js +255 -0
- package/dist/extensionAPI.js +3 -3
- package/dist/frontmatter-BmHq0vRD.js +204 -0
- package/dist/gateway-cli-DDBadlrS.js +19971 -0
- package/dist/gateway-cli-IZNkOMBe.js +19972 -0
- package/dist/gateway-rpc-Dtx8HN-n.js +28 -0
- package/dist/gateway-rpc-L2PVSqGj.js +28 -0
- package/dist/github-copilot-auth-DKyqDaGU.js +1418 -0
- package/dist/github-copilot-auth-DXpOMSd3.js +1418 -0
- package/dist/gmail-setup-utils-BKNczIJ9.js +428 -0
- package/dist/gmail-setup-utils-co0ppccC.js +428 -0
- package/dist/health-Bm8ZTvC3.js +1253 -0
- package/dist/health-DUf1gt4E.js +1258 -0
- package/dist/health-format-BksT6F68.js +208 -0
- package/dist/health-format-uzh1xYLD.js +208 -0
- package/dist/heartbeat-visibility-1TJb1Zao.js +98 -0
- package/dist/heartbeat-visibility-CwodtdcX.js +98 -0
- package/dist/help-format-C6cv_aZp.js +17 -0
- package/dist/helpers-N-uSFKOn.js +10 -0
- package/dist/hooks-cli-1POsXqOl.js +993 -0
- package/dist/hooks-cli-BGjILbze.js +991 -0
- package/dist/hooks-status-DE07n5RC.js +356 -0
- package/dist/hooks-status-Du-d1jde.js +356 -0
- package/dist/image-ops-B_AYV3tp.js +541 -0
- package/dist/image-ops-Bp0C6Mvr.js +541 -0
- package/dist/index.js +82 -82
- package/dist/init-9A0s7bWG.js +122 -0
- package/dist/init-DoyCHJDC.js +122 -0
- package/dist/installs-D1C9wHAq.js +383 -0
- package/dist/installs-Dh4dHayM.js +383 -0
- package/dist/ipv4-DCItfaJo.js +1964 -0
- package/dist/ipv4-DSOUVx0i.js +1964 -0
- package/dist/lanes-BvSnHq2h.js +232 -0
- package/dist/lifecycle-core-BY4WIf9g.js +388 -0
- package/dist/lifecycle-core-TQKyXO-6.js +387 -0
- package/dist/links-CNu_8RZl.js +15 -0
- package/dist/links-D2tt2ouh.js +15 -0
- package/dist/llm-slug-generator.js +4 -4
- package/dist/logging-BIeRw0WR.js +15 -0
- package/dist/logging-C7lb3Vjc.js +15 -0
- package/dist/login-DXWKewA2.js +59 -0
- package/dist/login-Fhh4uWmf.js +61 -0
- package/dist/login-pPs3UO38.js +61 -0
- package/dist/login-qr-CevLD8cV.js +326 -0
- package/dist/login-qr-GF2JMIy-.js +323 -0
- package/dist/login-qr-ZYYKD6Yt.js +321 -0
- package/dist/logs-cli-CzXbX8HZ.js +242 -0
- package/dist/logs-cli-D9ngH9PF.js +245 -0
- package/dist/manager-BD5rA3w0.js +3244 -0
- package/dist/manager-BDPgBQSH.js +3246 -0
- package/dist/manager-DRWMWM--.js +3244 -0
- package/dist/manifest-registry-DbvPaBXY.js +748 -0
- package/dist/manifest-registry-kHX_MFa1.js +748 -0
- package/dist/markdown-tables-CqwihY2m.js +347 -0
- package/dist/markdown-tables-DJV7eAJZ.js +348 -0
- package/dist/media-lUqN-0O9.js +1342 -0
- package/dist/memory-cli-BLXSpgnN.js +868 -0
- package/dist/memory-cli-BcGVkkRJ.js +869 -0
- package/dist/message-channel-D_jIO87f.js +110 -0
- package/dist/migrate-BpVOar4L.js +157 -0
- package/dist/migrate-CkgGDkWy.js +157 -0
- package/dist/model-selection-Cqt6aJ0G.js +2691 -0
- package/dist/models-CExsNQPH.js +2510 -0
- package/dist/models-cli-Ba3Jmwev.js +2739 -0
- package/dist/models-cli-iDAlsbL2.js +258 -0
- package/dist/net-0A_zcaQD.js +218 -0
- package/dist/node-cli-ATmwCXIk.js +1319 -0
- package/dist/node-cli-DYFR_V25.js +1322 -0
- package/dist/node-service-CN4LqR1A.js +67 -0
- package/dist/node-service-CWt3MdSC.js +67 -0
- package/dist/nodes-cli-BeVmhTz3.js +1197 -0
- package/dist/nodes-cli-QeJIfa18.js +1200 -0
- package/dist/nodes-screen-DHyWAlla.js +234 -0
- package/dist/nodes-screen-qs3jRBPk.js +234 -0
- package/dist/note-CSlg2BnB.js +73 -0
- package/dist/note-Ctvglhp1.js +73 -0
- package/dist/npm-registry-spec-DQd4M22q.js +351 -0
- package/dist/npm-registry-spec-PxisIMts.js +351 -0
- package/dist/onboard-DeruD10m.js +1166 -0
- package/dist/onboard-SAcu5N6N.js +1165 -0
- package/dist/onboard-channels-C4iSfFXR.js +672 -0
- package/dist/onboard-channels-oVTVgoyg.js +672 -0
- package/dist/onboard-helpers-B8roRwLP.js +365 -0
- package/dist/onboard-helpers-Dgh26hgP.js +365 -0
- package/dist/onboarding-Bi-ac8we.js +911 -0
- package/dist/onboarding-C2gjB2u8.js +910 -0
- package/dist/orchestrator-DlbAYMQP.js +357 -0
- package/dist/orchestrator-DlwVRVDA.js +357 -0
- package/dist/outbound-CkKgc6iR.js +2062 -0
- package/dist/outbound-Vfm5yDh3.js +214 -0
- package/dist/outbound-bs_VK51X.js +214 -0
- package/dist/outbound-send-deps-DDjiMfEL.js +55 -0
- package/dist/pairing-cli-CJYeuEik.js +118 -0
- package/dist/pairing-cli-mqopHI8s.js +121 -0
- package/dist/pairing-store-BsXzUDPv.js +388 -0
- package/dist/pairing-store-DoNj00-X.js +388 -0
- package/dist/path-env-C_xpiG8l.js +89 -0
- package/dist/path-env-DSSMHu5A.js +89 -0
- package/dist/paths-B1vRVCad.js +126 -0
- package/dist/paths-BMuHNFxg.js +238 -0
- package/dist/paths-BXQQzXGQ.js +129 -0
- package/dist/paths-Buw_geoe.js +54 -0
- package/dist/paths-DA9WYabg.js +222 -0
- package/dist/paths-DfQGx0_k.js +129 -0
- package/dist/pi-auth-json-DOPW3e4X.js +78 -0
- package/dist/pi-auth-json-MruLmI_X.js +82 -0
- package/dist/pi-auth-json-lae_wwwo.js +80 -0
- package/dist/pi-model-discovery-7q0GxMrp.js +3 -0
- package/dist/pi-tools.policy-Csmla32P.js +200 -0
- package/dist/pi-tools.policy-xYdDLEv9.js +200 -0
- package/dist/plugin-auto-enable-CViVVWgg.js +282 -0
- package/dist/plugin-auto-enable-CjZ238UI.js +282 -0
- package/dist/plugin-registry-B4Aw2hzq.js +32 -0
- package/dist/plugin-registry-DW81arxW.js +32 -0
- package/dist/plugin-sdk/cli/cli-name.d.ts +1 -1
- package/dist/plugin-sdk/config/paths.d.ts +2 -2
- package/dist/plugin-sdk/index.js +7 -7
- package/dist/plugins-DhcGAPDB.js +38 -0
- package/dist/plugins-DtghNRtM.js +168 -0
- package/dist/plugins-cli-4vWTmOAb.js +736 -0
- package/dist/plugins-cli-CdTMbP0X.js +734 -0
- package/dist/polls-D6eCdatA.js +1343 -0
- package/dist/ports-BtZx-JKD.js +96 -0
- package/dist/ports-C8bKN8s0.js +96 -0
- package/dist/ports-DHiKnPRX.js +344 -0
- package/dist/ports-vd93M_Pt.js +317 -0
- package/dist/program-CX3aUVeb.js +176 -0
- package/dist/program-context-BPos0ivo.js +496 -0
- package/dist/progress-oiAjiiNi.js +133 -0
- package/dist/prompt-style-Cm4wOtKm.js +9 -0
- package/dist/pw-ai-4QbK5YFe.js +1865 -0
- package/dist/pw-ai-BWz3Cxt7.js +1868 -0
- package/dist/pw-ai-C83HBue2.js +1867 -0
- package/dist/qmd-manager-BcMeZiGD.js +938 -0
- package/dist/qmd-manager-CPypGJ0P.js +935 -0
- package/dist/qmd-manager-CRrSkfia.js +937 -0
- package/dist/register.agent-DDY8KJhn.js +265 -0
- package/dist/register.agent-DKawm-9d.js +1003 -0
- package/dist/register.anima-CEWUo29k.js +193 -0
- package/dist/register.anima-DBWz2rk_.js +193 -0
- package/dist/register.configure-BX67qV8k.js +103 -0
- package/dist/register.configure-CWsySuiq.js +101 -0
- package/dist/register.maintenance-0k-ZNhDg.js +543 -0
- package/dist/register.maintenance-BIwx1fzX.js +543 -0
- package/dist/register.message-CXPsoakA.js +657 -0
- package/dist/register.message-DA3jvfgI.js +660 -0
- package/dist/register.onboard-C4HG7Hqv.js +170 -0
- package/dist/register.onboard-GOpdif-j.js +170 -0
- package/dist/register.setup-B17vZT7C.js +175 -0
- package/dist/register.setup-GJyUDCqh.js +175 -0
- package/dist/register.status-health-sessions-D5876dGx.js +313 -0
- package/dist/register.status-health-sessions-lOewVIZR.js +142 -0
- package/dist/register.subclis-Dwnujj5C.js +255 -0
- package/dist/reply-CR5T_oQJ.js +32212 -0
- package/dist/reply-prefix-BcrS4Umd.js +100 -0
- package/dist/reply-prefix-Btb5o2NH.js +100 -0
- package/dist/reply-r089HuRA.js +32212 -0
- package/dist/routes-B4czFzIb.js +1820 -0
- package/dist/routes-ucJWAk5O.js +1820 -0
- package/dist/rpc-BnKxnQ0v.js +70 -0
- package/dist/rpc-DgE-xnyx.js +70 -0
- package/dist/run-main-B74kv84C.js +371 -0
- package/dist/runtime-guard-CKFdts2L.js +60 -0
- package/dist/sandbox-CJTS3er6.js +858 -0
- package/dist/sandbox-DBSiVHt_.js +859 -0
- package/dist/sandbox-cli-CrkjyU5M.js +461 -0
- package/dist/sandbox-cli-D1r5y6Sz.js +458 -0
- package/dist/security-cli-BZUdnkhn.js +462 -0
- package/dist/security-cli-DS09ebvA.js +465 -0
- package/dist/server-context-C0xZbYhg.js +824 -0
- package/dist/server-context-DVh2z7om.js +824 -0
- package/dist/server-node-events-bu9lpkMH.js +233 -0
- package/dist/server-node-events-i1Rrww31.js +231 -0
- package/dist/service-CJJwLEor.js +642 -0
- package/dist/service-DxLxBhaU.js +642 -0
- package/dist/service-audit-DB4Y3Ekp.js +488 -0
- package/dist/service-audit-M8y4TXVb.js +488 -0
- package/dist/session-CGxOLFs2.js +179 -0
- package/dist/session-DTTbdKb0.js +181 -0
- package/dist/session-cost-usage-FcdJl9c3.js +600 -0
- package/dist/session-cost-usage-qdfsGU2a.js +600 -0
- package/dist/session-yOhWcsD2.js +181 -0
- package/dist/sessions-B-Cu7JZq.js +1296 -0
- package/dist/sessions-BgLN4KFr.js +180 -0
- package/dist/sessions-CnRjwdVr.js +1296 -0
- package/dist/sessions-wRKla1Qh.js +2038 -0
- package/dist/shared-DS3UaJSP.js +66 -0
- package/dist/shared-DxNHzky3.js +77 -0
- package/dist/shared-Qpt4hUDi.js +66 -0
- package/dist/shared-kzrojZ1B.js +77 -0
- package/dist/skill-scanner-DLJji5Ye.js +263 -0
- package/dist/skills-BWFIEp4j.js +807 -0
- package/dist/skills-DV4zKdCx.js +808 -0
- package/dist/skills-cli-BY53ILm2.js +289 -0
- package/dist/skills-cli-CO3gxl8A.js +286 -0
- package/dist/skills-status-DX5pcqY3.js +166 -0
- package/dist/skills-status-zhcKzGkp.js +166 -0
- package/dist/sqlite-B6MojU1I.js +321 -0
- package/dist/sqlite-CuprTGR7.js +453 -0
- package/dist/sqlite-dzD-jMjs.js +368 -0
- package/dist/start-Cu3aLoSf.js +297 -0
- package/dist/start-Dz7tMAl8.js +296 -0
- package/dist/status-CaSxhxfV.js +2132 -0
- package/dist/status-D2C0JCX3.js +2137 -0
- package/dist/status-DlFMsQzh.js +27 -0
- package/dist/status-G0CITnKR.js +27 -0
- package/dist/status.update-CHjhVxJY.js +79 -0
- package/dist/status.update-DVFelehi.js +79 -0
- package/dist/subagent-registry-3Xb4el-8.js +14 -0
- package/dist/subagent-registry-CdSjz14I.js +2760 -0
- package/dist/subagent-registry-DNDhbHWi.js +2759 -0
- package/dist/subsystem-DfKstnEK.js +860 -0
- package/dist/system-cli-B5mt0FWa.js +82 -0
- package/dist/system-cli-Dg3UQ3Zz.js +79 -0
- package/dist/systemd-B43AvOGx.js +452 -0
- package/dist/systemd-RpPE0XGg.js +452 -0
- package/dist/systemd-hints-DMJT-Bbc.js +36 -0
- package/dist/systemd-hints-vRInKcz9.js +36 -0
- package/dist/systemd-linger-Dzyxqsod.js +75 -0
- package/dist/systemd-linger-EujbmI5A.js +75 -0
- package/dist/table-DhXHfRX2.js +279 -0
- package/dist/table-bWCLW-3P.js +279 -0
- package/dist/timeout-Ddn-5kAO.js +232 -0
- package/dist/tokens-3psI_Qk2.js +14 -0
- package/dist/tokens-BaM53PEx.js +14 -0
- package/dist/trash-Bmxs1Rnm.js +23 -0
- package/dist/trash-C39a6hKA.js +23 -0
- package/dist/tui-BHgBWhHE.js +3894 -0
- package/dist/tui-cli-B9Sq5-cC.js +50 -0
- package/dist/tui-cli-Dw7v4JoJ.js +47 -0
- package/dist/tui-mUwDwqvd.js +3894 -0
- package/dist/update-DF0GHG0j.js +317 -0
- package/dist/update-DoZLVjva.js +317 -0
- package/dist/update-check-Bt1dVPVN.js +400 -0
- package/dist/update-check-D5qAKes7.js +400 -0
- package/dist/update-cli-BNu2Oi7H.js +1105 -0
- package/dist/update-cli-D36AmALA.js +1105 -0
- package/dist/update-runner-CNQQaTwA.js +894 -0
- package/dist/update-runner-CvxZmbu-.js +894 -0
- package/dist/usage-BGCwNnjk.js +4516 -0
- package/dist/utils-DZ8pnOD5.js +243 -0
- package/dist/web-B5QG839O.js +46842 -0
- package/dist/web-Cmnvk9v0.js +2203 -0
- package/dist/web-Cv2KnTnL.js +63 -0
- package/dist/webhooks-cli-B6y89Pj_.js +319 -0
- package/dist/webhooks-cli-BDzHON4w.js +316 -0
- package/dist/whatsapp-actions-C_5MwVxM.js +45 -0
- package/dist/whatsapp-actions-hgYA12To.js +53 -0
- package/dist/whatsapp-actions-zTiVOoOV.js +49 -0
- package/dist/widearea-dns-BeIdnISJ.js +127 -0
- package/dist/widearea-dns-CF1gxpJ-.js +127 -0
- package/dist/workspace-DLna1IxR.js +649 -0
- package/dist/ws-log-Q4wO1Ztb.js +267 -0
- package/dist/ws-log-xF0kxDzp.js +267 -0
- package/package.json +1 -2
- package/dist/accounts-Cc5E4IDO.js +0 -260
- package/dist/accounts-CcVrwKqv.js +0 -259
- package/dist/acp-cli-DvphOKuh.js +0 -1081
- package/dist/acp-cli-p28pQ65a.js +0 -1084
- package/dist/agent-Cj7uDJaZ.js +0 -725
- package/dist/agent-Cuj9-2sT.js +0 -725
- package/dist/agent-events-BEBQsyE5.js +0 -182
- package/dist/agent-scope-BVf4aSwY.js +0 -112
- package/dist/agent-scope-OZi7lb8S.js +0 -452
- package/dist/agent-scope-V1bi9OYL.js +0 -452
- package/dist/agents-BUWqn_Ui.js +0 -774
- package/dist/agents.config-Dvo2ULxs.js +0 -182
- package/dist/agents.config-d6H0_3oj.js +0 -182
- package/dist/argv-DqUHKf0o.js +0 -73
- package/dist/audit-C6okOOSh.js +0 -2401
- package/dist/audit-VWjIdwC7.js +0 -2401
- package/dist/auth-91o2YM96.js +0 -648
- package/dist/auth-choice-CAmACV13.js +0 -2681
- package/dist/auth-choice-p3SeHPj2.js +0 -2681
- package/dist/auth-health-B_jXrWe6.js +0 -149
- package/dist/auth-health-DCicUKYR.js +0 -149
- package/dist/auth-lZ26wsbN.js +0 -639
- package/dist/auth-profiles-CCDD56dU.js +0 -1564
- package/dist/auth-profiles-DxI8L7bs.js +0 -2689
- package/dist/banner-Cohn04J6.js +0 -294
- package/dist/browser-cli-DANzjztE.js +0 -1676
- package/dist/browser-cli-WjsVH741.js +0 -1679
- package/dist/call-BAHvlu2G.js +0 -282
- package/dist/call-Ct7EGP_L.js +0 -282
- package/dist/catalog-BAayBt1L.js +0 -185
- package/dist/catalog-BNsf97BM.js +0 -185
- package/dist/channel-options-Dx9nPlX8.js +0 -33
- package/dist/channel-options-ZdvXrTGs.js +0 -32
- package/dist/channel-selection-CujyiWGM.js +0 -51
- package/dist/channel-selection-DfGpCyh2.js +0 -51
- package/dist/channel-web-CC0hkgkR.js +0 -2162
- package/dist/channels-cli-D7lNBpIb.js +0 -1304
- package/dist/channels-cli-DUPG8WDv.js +0 -1306
- package/dist/channels-status-issues-DBc1pU_R.js +0 -18
- package/dist/channels-status-issues-DjO9MHIG.js +0 -18
- package/dist/chrome-Bi6iZ5sG.js +0 -1601
- package/dist/chrome-DNSv7Cpy.js +0 -1629
- package/dist/chrome-DScZx4Lk.js +0 -1601
- package/dist/chunk-mxPVo000.js +0 -348
- package/dist/clack-prompter-B0kl7shw.js +0 -92
- package/dist/clack-prompter-B1YxZdRy.js +0 -92
- package/dist/cli-CfHUkOD0.js +0 -101
- package/dist/cli-ClMrIh6l.js +0 -99
- package/dist/cli-session-BkPTd9Pk.js +0 -5463
- package/dist/cli-session-Dd8DKb5a.js +0 -5408
- package/dist/client-C1avc0vD.js +0 -1692
- package/dist/client-CC94YZrT.js +0 -1692
- package/dist/clipboard-B2fBy8tG.js +0 -31
- package/dist/clipboard-BbGnZskJ.js +0 -31
- package/dist/command-format-Clp46jkj.js +0 -38
- package/dist/command-format-DELazozB.js +0 -52
- package/dist/command-format-SkzzRqR1.js +0 -52
- package/dist/command-registry-DZ4hkmA0.js +0 -248
- package/dist/commands-DtYZJSPn.js +0 -568
- package/dist/commands-Dujk1JmY.js +0 -568
- package/dist/commands-registry-Bd0xbvwG.js +0 -766
- package/dist/commands-registry-DYfRSVF3.js +0 -766
- package/dist/common-D6bu0zHC.js +0 -287
- package/dist/common-zW9Y2P1B.js +0 -287
- package/dist/completion-cli-tSe7Pmqm.js +0 -431
- package/dist/completion-cli-vn4IScs5.js +0 -432
- package/dist/config-C8rUDJXY.js +0 -5704
- package/dist/config-CLZ_XGVw.js +0 -6523
- package/dist/config-SY8M0kM_.js +0 -5705
- package/dist/config-cli-1V7D2Wsw.js +0 -247
- package/dist/config-cli-CjWEC81L.js +0 -244
- package/dist/config-guard-BW2gpKj_.js +0 -93
- package/dist/config-guard-BvxuzHpo.js +0 -76
- package/dist/config-sync-CoIIbEOe.js +0 -91
- package/dist/config-sync-DvAttep0.js +0 -91
- package/dist/configure-Bf0oupCE.js +0 -959
- package/dist/configure-DRM-7zFf.js +0 -960
- package/dist/context-D5iEFzv9.js +0 -60
- package/dist/control-service-C8m8F9pr.js +0 -72
- package/dist/control-service-DKotCWCg.js +0 -72
- package/dist/cron-cli-DB_FLYHD.js +0 -448
- package/dist/cron-cli-bxm5lrrO.js +0 -451
- package/dist/daemon-cli-1LsOnICv.js +0 -566
- package/dist/daemon-cli-CC2NrJ7a.js +0 -565
- package/dist/daemon-runtime-BXZhtBL9.js +0 -460
- package/dist/daemon-runtime-DW4USC7r.js +0 -460
- package/dist/deliver-B4HuPwJA.js +0 -1162
- package/dist/deliver-LiY5oL52.js +0 -1097
- package/dist/deliver-xrmk7xjh.js +0 -1097
- package/dist/delivery-queue-TnQykYsg.js +0 -220
- package/dist/deps-CMMOiOsF.js +0 -42
- package/dist/devices-cli-Be5he2SA.js +0 -195
- package/dist/devices-cli-z6ecoFe9.js +0 -198
- package/dist/diagnostics-Dj75aEHN.js +0 -35
- package/dist/diagnostics-DlIw6fqD.js +0 -35
- package/dist/directory-cli-CEy-0nxj.js +0 -243
- package/dist/directory-cli-DpzKcigr.js +0 -246
- package/dist/dispatcher-10Shiuz3.js +0 -100
- package/dist/dispatcher-3Jae6AiW.js +0 -100
- package/dist/dns-cli-Bat1pkc-.js +0 -200
- package/dist/dns-cli-NohNyEo0.js +0 -197
- package/dist/dock-DbxBBv30.js +0 -753
- package/dist/dock-cPBY4qGl.js +0 -753
- package/dist/docs-cli-BWp6p-Tq.js +0 -161
- package/dist/docs-cli-x22FnZfL.js +0 -159
- package/dist/doctor-BrT5m_on.js +0 -1815
- package/dist/doctor-Pp2HVnjM.js +0 -1813
- package/dist/doctor-completion-DNTimX9o.js +0 -92
- package/dist/doctor-completion-ylN9QAJ6.js +0 -92
- package/dist/doctor-config-flow-D1w3700T.js +0 -1232
- package/dist/doctor-config-flow-Dq50iE1R.js +0 -1232
- package/dist/engine-B9avUJL5.js +0 -563
- package/dist/engine-BiUQ25D4.js +0 -563
- package/dist/env-0lJfCPsw.js +0 -32
- package/dist/exec-BenD3A5l.js +0 -1167
- package/dist/exec-Bv3pyjeM.js +0 -255
- package/dist/exec-approvals-CdLmKX2R.js +0 -1221
- package/dist/exec-approvals-cli-DXfV6G8H.js +0 -368
- package/dist/exec-approvals-cli-J2cZs10o.js +0 -371
- package/dist/frontmatter-YijVi0FQ.js +0 -204
- package/dist/gateway-cli-DOAbA0pc.js +0 -19972
- package/dist/gateway-cli-QpWtBhQy.js +0 -19971
- package/dist/gateway-rpc-DJKBil9s.js +0 -28
- package/dist/gateway-rpc-DVterpLP.js +0 -28
- package/dist/github-copilot-auth-4IUFp669.js +0 -1418
- package/dist/github-copilot-auth-C9E0IROs.js +0 -1418
- package/dist/gmail-setup-utils-BPo_LkKI.js +0 -428
- package/dist/gmail-setup-utils-D3Yqgor7.js +0 -428
- package/dist/health-BeZnqp6m.js +0 -1258
- package/dist/health-Cn2OoVWZ.js +0 -1253
- package/dist/health-format-CdP99j3Y.js +0 -208
- package/dist/health-format-JEChH08S.js +0 -208
- package/dist/heartbeat-visibility-BL3WAchI.js +0 -98
- package/dist/heartbeat-visibility-CQ9QimI7.js +0 -98
- package/dist/help-format-Dl4bsrLI.js +0 -17
- package/dist/helpers-ZKNRexvX.js +0 -10
- package/dist/hooks-cli-D99hXt7K.js +0 -991
- package/dist/hooks-cli-DMB8RiEO.js +0 -993
- package/dist/hooks-status-B-e96dZj.js +0 -356
- package/dist/hooks-status-C_9sE0ox.js +0 -356
- package/dist/image-ops-Dlt3T7th.js +0 -541
- package/dist/image-ops-omlvdfah.js +0 -541
- package/dist/init-Bm04RagW.js +0 -122
- package/dist/init-CaJBf4p1.js +0 -122
- package/dist/installs-C2iMRBVz.js +0 -383
- package/dist/installs-D-cPGdCw.js +0 -383
- package/dist/ipv4-Bf7NS3QU.js +0 -1964
- package/dist/ipv4-wWNs8IH_.js +0 -1964
- package/dist/lanes-CNxj3tit.js +0 -232
- package/dist/lifecycle-core-B_7XRcvF.js +0 -388
- package/dist/lifecycle-core-By83PVAK.js +0 -387
- package/dist/links-BfjHVTB_.js +0 -15
- package/dist/links-DPGe0OHw.js +0 -15
- package/dist/logging-DB6BQmhi.js +0 -15
- package/dist/logging-mcb66J0p.js +0 -15
- package/dist/login-BDCg6D0N.js +0 -61
- package/dist/login-BDfnbjnZ.js +0 -59
- package/dist/login-BqH1itcg.js +0 -61
- package/dist/login-qr-CyOw3R4r.js +0 -321
- package/dist/login-qr-D8ECtb72.js +0 -323
- package/dist/login-qr-RnR7e4Bw.js +0 -326
- package/dist/logs-cli--j89L74J.js +0 -245
- package/dist/logs-cli-DpEMg_Gq.js +0 -242
- package/dist/manager-B4OyvcxT.js +0 -3244
- package/dist/manager-Cqc1CeH7.js +0 -3246
- package/dist/manager-DUyQPFvj.js +0 -3244
- package/dist/manifest-registry-CW1zCyRF.js +0 -748
- package/dist/manifest-registry-D4lM2RdV.js +0 -748
- package/dist/markdown-tables-BT1X6jqH.js +0 -347
- package/dist/markdown-tables-DHgOK2vI.js +0 -348
- package/dist/media-THyainiE.js +0 -1342
- package/dist/memory-cli-BKocCWXM.js +0 -868
- package/dist/memory-cli-Jmma-xI_.js +0 -869
- package/dist/message-channel-dSTVVCyX.js +0 -110
- package/dist/migrate-BR6iAIjO.js +0 -157
- package/dist/migrate-D0EcMs0f.js +0 -157
- package/dist/model-selection-YcSr9CgC.js +0 -2691
- package/dist/models-1vUQBVfw.js +0 -2510
- package/dist/models-cli-BK3BwUhL.js +0 -2739
- package/dist/models-cli-DECrM8oA.js +0 -258
- package/dist/net-B5lXhYLV.js +0 -218
- package/dist/node-cli-cLHUNpPD.js +0 -1319
- package/dist/node-cli-fO7Y132S.js +0 -1322
- package/dist/node-service-BFxHJsno.js +0 -67
- package/dist/node-service-DUnan4uK.js +0 -67
- package/dist/nodes-cli-BCq35E6N.js +0 -1200
- package/dist/nodes-cli-vD7MwAKP.js +0 -1197
- package/dist/nodes-screen-1YiLkqr5.js +0 -234
- package/dist/nodes-screen-DZeD8hE5.js +0 -234
- package/dist/note-Bi8Wb8DV.js +0 -73
- package/dist/note-uiuPxhyX.js +0 -73
- package/dist/npm-registry-spec-B-XIShkB.js +0 -351
- package/dist/npm-registry-spec-za3itb5Y.js +0 -351
- package/dist/onboard-Ds6w_sWo.js +0 -1165
- package/dist/onboard-SAVx3bp4.js +0 -1166
- package/dist/onboard-channels-Cg_EkBa4.js +0 -672
- package/dist/onboard-channels-D7NbA55V.js +0 -672
- package/dist/onboard-helpers-DO_hgZb9.js +0 -365
- package/dist/onboard-helpers-_XgJgeqh.js +0 -365
- package/dist/onboarding-3hLmDd0r.js +0 -911
- package/dist/onboarding-B4LKLsbU.js +0 -910
- package/dist/orchestrator-BKzmyBWy.js +0 -357
- package/dist/orchestrator-BN3QCz2s.js +0 -357
- package/dist/outbound-BgA9hNlP.js +0 -2062
- package/dist/outbound-CjdvVhUI.js +0 -214
- package/dist/outbound-DOGe6qb2.js +0 -214
- package/dist/outbound-send-deps-Du5aBpd7.js +0 -55
- package/dist/pairing-cli-2vnyg_Nd.js +0 -118
- package/dist/pairing-cli-BH1KQtNV.js +0 -121
- package/dist/pairing-store-DJz_9Gv0.js +0 -388
- package/dist/pairing-store-DmOzxcuk.js +0 -388
- package/dist/path-env-Bu6k0jDQ.js +0 -89
- package/dist/path-env-C0zQSjw8.js +0 -89
- package/dist/paths-BTc4nk-6.js +0 -126
- package/dist/paths-BgUi2Z2G.js +0 -54
- package/dist/paths-C6VCWKo3.js +0 -238
- package/dist/paths-CCxa0o9c.js +0 -222
- package/dist/paths-CxRf2rBG.js +0 -129
- package/dist/paths-hcX1Gqg5.js +0 -129
- package/dist/pi-auth-json-B68R7q7_.js +0 -82
- package/dist/pi-auth-json-CR0jXAgq.js +0 -78
- package/dist/pi-auth-json-ZYzi3nxs.js +0 -80
- package/dist/pi-model-discovery-Cxs4pvC2.js +0 -3
- package/dist/pi-tools.policy-D81U5xy0.js +0 -200
- package/dist/pi-tools.policy-DSHkkb5b.js +0 -200
- package/dist/plugin-auto-enable-CxF4bpDN.js +0 -282
- package/dist/plugin-auto-enable-jNaAeyEh.js +0 -282
- package/dist/plugin-registry-C7XWotZG.js +0 -32
- package/dist/plugin-registry-DcUCbGax.js +0 -32
- package/dist/plugins-B362e77G.js +0 -168
- package/dist/plugins-CmSUIUNi.js +0 -38
- package/dist/plugins-cli-BsCEnoQ7.js +0 -734
- package/dist/plugins-cli-QSIsMUG7.js +0 -736
- package/dist/polls-CItfB1H8.js +0 -1343
- package/dist/ports-BVLMN1Sr.js +0 -96
- package/dist/ports-CqLSlU6Z.js +0 -317
- package/dist/ports-D94CwCrv.js +0 -344
- package/dist/ports-D_NHthOz.js +0 -96
- package/dist/program-DkJHjI0R.js +0 -176
- package/dist/program-context-DnyGM2SC.js +0 -496
- package/dist/progress-Bek_GyWS.js +0 -133
- package/dist/prompt-style-lu0clOOE.js +0 -9
- package/dist/pw-ai-BLVMuSLv.js +0 -1867
- package/dist/pw-ai-DZJWEF_f.js +0 -1865
- package/dist/pw-ai-dzf-ptcn.js +0 -1868
- package/dist/qmd-manager-Cur_Ekn0.js +0 -937
- package/dist/qmd-manager-DNAUuwjK.js +0 -938
- package/dist/qmd-manager-DepEoASu.js +0 -935
- package/dist/register.agent-CSWvzOkR.js +0 -265
- package/dist/register.agent-UeH2NXmH.js +0 -1003
- package/dist/register.anima-DOdee0dh.js +0 -193
- package/dist/register.anima-HHDWsz6r.js +0 -193
- package/dist/register.configure-CSJFxdz9.js +0 -103
- package/dist/register.configure-D84Fvcz4.js +0 -101
- package/dist/register.maintenance-B3pvNbZb.js +0 -543
- package/dist/register.maintenance-BKVOwkw6.js +0 -543
- package/dist/register.message-BAO6CPl2.js +0 -657
- package/dist/register.message-OXoOKE_6.js +0 -660
- package/dist/register.onboard-BK_ixVmD.js +0 -170
- package/dist/register.onboard-cfCaPx6j.js +0 -170
- package/dist/register.setup-BGfDnzph.js +0 -175
- package/dist/register.setup-Y-Q74M-0.js +0 -175
- package/dist/register.status-health-sessions-CT14eitH.js +0 -142
- package/dist/register.status-health-sessions-TfZMzAUn.js +0 -313
- package/dist/register.subclis-BZwdlNHC.js +0 -255
- package/dist/reply-mlsExaZm.js +0 -32212
- package/dist/reply-prefix-B0CfR4bM.js +0 -100
- package/dist/reply-prefix-w4a39ybC.js +0 -100
- package/dist/reply-qalRISe_.js +0 -32212
- package/dist/routes-CENsHJyg.js +0 -1820
- package/dist/routes-DO0HqW2e.js +0 -1820
- package/dist/rpc-C0pjNhBi.js +0 -70
- package/dist/rpc-DZ44PIXE.js +0 -70
- package/dist/run-main-BMpKw8Mp.js +0 -371
- package/dist/runtime-guard-BSUFiAQV.js +0 -60
- package/dist/sandbox-BIGfMYEI.js +0 -858
- package/dist/sandbox-DxP3IpUP.js +0 -859
- package/dist/sandbox-cli-DtLGH8sL.js +0 -461
- package/dist/sandbox-cli-_Tg7lfJ_.js +0 -458
- package/dist/security-cli-BRwgbedo.js +0 -462
- package/dist/security-cli-D3bSuyZt.js +0 -465
- package/dist/server-context-49XFFxFg.js +0 -824
- package/dist/server-context-LrlgrZzS.js +0 -824
- package/dist/server-node-events-Dm52i7NW.js +0 -231
- package/dist/server-node-events-QX523UyF.js +0 -233
- package/dist/service-BNVpYcQe.js +0 -642
- package/dist/service-D56aMXUB.js +0 -642
- package/dist/service-audit-D0X_XAB2.js +0 -488
- package/dist/service-audit-qmf6XMmP.js +0 -488
- package/dist/session-CrQQLLhx.js +0 -179
- package/dist/session-LocsOOWJ.js +0 -181
- package/dist/session-Vlce2BAT.js +0 -181
- package/dist/session-cost-usage-BwiTZuKl.js +0 -600
- package/dist/session-cost-usage-DT9YNXTJ.js +0 -600
- package/dist/sessions-BfV53TbG.js +0 -1296
- package/dist/sessions-BimpX_km.js +0 -180
- package/dist/sessions-DcXpzig0.js +0 -1296
- package/dist/sessions-Wd18dukK.js +0 -2038
- package/dist/shared-Bsr69u_7.js +0 -77
- package/dist/shared-Cgly1vPb.js +0 -66
- package/dist/shared-JOo05hST.js +0 -66
- package/dist/shared-f7dvQsi7.js +0 -77
- package/dist/skill-scanner-CkaVLABv.js +0 -263
- package/dist/skills-B-G7UHOa.js +0 -808
- package/dist/skills-B5LQx4lT.js +0 -807
- package/dist/skills-cli-DUGe2ZWW.js +0 -286
- package/dist/skills-cli-DtOk0bvK.js +0 -289
- package/dist/skills-status-Clq9ZnYu.js +0 -166
- package/dist/skills-status-JQluhU-P.js +0 -166
- package/dist/sqlite-BukcjdJa.js +0 -321
- package/dist/sqlite-CGcOZZ0C.js +0 -368
- package/dist/sqlite-Ck6f9KWc.js +0 -453
- package/dist/start--xmSFepB.js +0 -372
- package/dist/start-BdlZbqrr.js +0 -371
- package/dist/status-BgoeFm6g.js +0 -2137
- package/dist/status-BjjDrUq7.js +0 -27
- package/dist/status-Ct0DgOZ-.js +0 -2132
- package/dist/status-RA_uNmK0.js +0 -27
- package/dist/status.update-BjOH3GlS.js +0 -79
- package/dist/status.update-DLU1qBf0.js +0 -79
- package/dist/subagent-registry-9RLdKxES.js +0 -2760
- package/dist/subagent-registry-Byuex3zp.js +0 -2759
- package/dist/subagent-registry-DOBunBYS.js +0 -14
- package/dist/subsystem-Dowf8fSU.js +0 -860
- package/dist/system-cli-C5oBpzni.js +0 -79
- package/dist/system-cli-DXNKD_Id.js +0 -82
- package/dist/systemd-BSrHDyeU.js +0 -452
- package/dist/systemd-By5xdSB4.js +0 -452
- package/dist/systemd-hints-BtjL_5Rh.js +0 -36
- package/dist/systemd-hints-sJmr6cjb.js +0 -36
- package/dist/systemd-linger-CTmV2Gci.js +0 -75
- package/dist/systemd-linger-CmyqQkeC.js +0 -75
- package/dist/table-BL0lJzsm.js +0 -279
- package/dist/table-DoiRPsn0.js +0 -279
- package/dist/timeout-CswI_K-U.js +0 -232
- package/dist/tokens-C-X7wDKj.js +0 -14
- package/dist/tokens-DkvqA72p.js +0 -14
- package/dist/trash-BJLK1vMn.js +0 -23
- package/dist/trash-_x5UZ94k.js +0 -23
- package/dist/tui-BHjxDFZC.js +0 -3894
- package/dist/tui-CgOocwN8.js +0 -3894
- package/dist/tui-cli-5ANH8dE5.js +0 -47
- package/dist/tui-cli-BQ4P-JW_.js +0 -50
- package/dist/update-LFgxHHPd.js +0 -317
- package/dist/update-TxptCqk7.js +0 -317
- package/dist/update-check-CWc7YXmc.js +0 -400
- package/dist/update-check-IhlWaui6.js +0 -400
- package/dist/update-cli-PtXU62w7.js +0 -1105
- package/dist/update-cli-Va0EtETG.js +0 -1105
- package/dist/update-runner-BLeKFkiB.js +0 -894
- package/dist/update-runner-Iuzpc-_y.js +0 -894
- package/dist/usage-ApGvBLVg.js +0 -4516
- package/dist/utils-Bsw__U-F.js +0 -243
- package/dist/web-B6_Ky60G.js +0 -63
- package/dist/web-EZLQEWXY.js +0 -46842
- package/dist/web-pec8YJUX.js +0 -2203
- package/dist/webhooks-cli-BYQKTHTp.js +0 -319
- package/dist/webhooks-cli-C2_xtsUQ.js +0 -316
- package/dist/whatsapp-actions-C72VCq8f.js +0 -49
- package/dist/whatsapp-actions-Ck9Uv0Nw.js +0 -45
- package/dist/whatsapp-actions-D0reTj2k.js +0 -53
- package/dist/widearea-dns-B6ocX23x.js +0 -127
- package/dist/widearea-dns-NsEUNYwz.js +0 -127
- package/dist/workspace-Dcfoy5JJ.js +0 -649
- package/dist/ws-log-N8R5MvGE.js +0 -267
- package/dist/ws-log-gwFxPxj5.js +0 -267
- /package/dist/{auto-update-CUeF99gI.js → auto-update-CpF0fycd.js} +0 -0
- /package/dist/{auto-update-cgkp9ZTJ.js → auto-update-DNWdO7uF.js} +0 -0
- /package/dist/{brew-CVZkr0GU.js → brew-nqf_MiE4.js} +0 -0
- /package/dist/{budget-DxYQSekw.js → budget-CPedI-qW.js} +0 -0
- /package/dist/{budget-BWBp8Res.js → budget-CRpvqDRX.js} +0 -0
- /package/dist/{cli-utils-DtAxdCte.js → cli-utils-C1YHVD4o.js} +0 -0
- /package/dist/{command-options-CSbuuqHr.js → command-options-BbponVnw.js} +0 -0
- /package/dist/{command-options-Cp1tf96a.js → command-options-s0gnvXnS.js} +0 -0
- /package/dist/{constants-O8yBqCBv.js → constants-Dhb6zSIV.js} +0 -0
- /package/dist/{dangerous-tools-5ObDWy1N.js → dangerous-tools-DGTtJ_JR.js} +0 -0
- /package/dist/{dangerous-tools-Jwr7jqNw.js → dangerous-tools-DxrfTOfT.js} +0 -0
- /package/dist/{delivery-queue-B6IHz4Ry.js → delivery-queue-Bxm0nzw7.js} +0 -0
- /package/dist/{display-BDOsXu8F.js → display-Jy3UdGzA.js} +0 -0
- /package/dist/{errors-CHow2wtt.js → errors-CKaCqKga.js} +0 -0
- /package/dist/{exec-BizYYQgP.js → exec-DDmuVVNq.js} +0 -0
- /package/dist/{format-Mq6iU0_5.js → format-ByEjgyTF.js} +0 -0
- /package/dist/{format-duration-DhWzz_5b.js → format-duration-Aaj5tjJd.js} +0 -0
- /package/dist/{format-relative-C6kUHuOj.js → format-relative-79_Y1n2Y.js} +0 -0
- /package/dist/{help-format-DUBI91Ti.js → help-format-BMKzarov.js} +0 -0
- /package/dist/{helpers-eJFa4K6r.js → helpers-DpEB9Mh0.js} +0 -0
- /package/dist/{helpers-DLgbkcEn.js → helpers-FMld9sBT.js} +0 -0
- /package/dist/{input-provenance-DJBdpeKk.js → input-provenance-Cy_KnBlP.js} +0 -0
- /package/dist/{is-main-Dt9DTcH1.js → is-main-yjaVwMtJ.js} +0 -0
- /package/dist/{loader-l2OBdJ8x.js → loader-Br7Vr0zn.js} +0 -0
- /package/dist/{loader-BoYxRfcW.js → loader-CkmOrXcC.js} +0 -0
- /package/dist/{logging-BdnOSVPD.js → logging-CY-Q5cwf.js} +0 -0
- /package/dist/{message-channel-w4F2b2F6.js → message-channel-dua8OOGJ.js} +0 -0
- /package/dist/{mime-B1ZoR53M.js → mime-CBg4KybI.js} +0 -0
- /package/dist/{model-param-b-DPwyNGn8.js → model-param-b-DW9f0NN8.js} +0 -0
- /package/dist/{node-match-8XZnaid6.js → node-match-BV8bTBd4.js} +0 -0
- /package/dist/{normalize-GDK8JTNW.js → normalize-_lmlBOW9.js} +0 -0
- /package/dist/{openclaw-root-C85WMnVV.js → openclaw-root-JPvmPTf7.js} +0 -0
- /package/dist/{outbound-send-deps-ANnAhImn.js → outbound-send-deps-BfUvuWGa.js} +0 -0
- /package/dist/{parse-6-2MDhdT.js → parse-CZRwKocn.js} +0 -0
- /package/dist/{parse-log-line-Bqh1SSzC.js → parse-log-line-CvrZEK6A.js} +0 -0
- /package/dist/{parse-log-line-DUZCjXbl.js → parse-log-line-mLdat0AH.js} +0 -0
- /package/dist/{parse-port-BKB9Exlg.js → parse-port-BSOOdo7I.js} +0 -0
- /package/dist/{parse-port-DrfvwwiL.js → parse-port-Y0NK62x1.js} +0 -0
- /package/dist/{parse-timeout-Di_tcEmi.js → parse-timeout-DVPQ3n9j.js} +0 -0
- /package/dist/{paths-DcVEkYX5.js → paths-DHjlJ6cn.js} +0 -0
- /package/dist/{pi-model-discovery-DsRqYJLy.js → pi-model-discovery-DzEIEgHL.js} +0 -0
- /package/dist/{plugins-CDJw924T.js → plugins-D6PBOdkn.js} +0 -0
- /package/dist/{program-context-Bvn8046-.js → program-context-Q1hkT73c.js} +0 -0
- /package/dist/{progress-CbZ2D53A.js → progress-C9Ha1NJh.js} +0 -0
- /package/dist/{prompt-style-DKy6qQxR.js → prompt-style-DQi8j03a.js} +0 -0
- /package/dist/{prompts-BI__va99.js → prompts-BEHxUC3w.js} +0 -0
- /package/dist/{prompts-_dDWkCAz.js → prompts-CSOhuiqe.js} +0 -0
- /package/dist/{queue-D_u34pbL.js → queue-BJGo7kAB.js} +0 -0
- /package/dist/{queue-PG591iID.js → queue-DYgUbdoq.js} +0 -0
- /package/dist/{redact-ClVwO7Nn.js → redact-CyKvdFrg.js} +0 -0
- /package/dist/{registry-Bs_DJK9E.js → registry-C5MAYD4V.js} +0 -0
- /package/dist/{registry-D_zlP1U-.js → registry-CRrXXVs0.js} +0 -0
- /package/dist/{requirements-BzZxj2Wu.js → requirements-CGkxTCu4.js} +0 -0
- /package/dist/{requirements-DIW1svgA.js → requirements-CIDaOcbO.js} +0 -0
- /package/dist/{runtime-guard-DeOXA_86.js → runtime-guard-nL3Lp8T-.js} +0 -0
- /package/dist/{secret-equal-Dghy3xsA.js → secret-equal-DJpmLXlG.js} +0 -0
- /package/dist/{send-BhAfdGII.js → send-CTcxgDDU.js} +0 -0
- /package/dist/{send-ga9udK1_.js → send-DPezUR3-.js} +0 -0
- /package/dist/{send-C2t9xpXI.js → send-DZQTaG7-.js} +0 -0
- /package/dist/{send-DigO-i9j.js → send-VDff2gra.js} +0 -0
- /package/dist/{send-Dz2BDHll.js → send-bgQNV8d1.js} +0 -0
- /package/dist/{session-key-BGiG_JcT.js → session-key-CQT-NR6w.js} +0 -0
- /package/dist/{shell-argv-CAq1mLa2.js → shell-argv-n9IueeJQ.js} +0 -0
- /package/dist/{skill-scanner-Coo4QoCd.js → skill-scanner-o6NgVMD9.js} +0 -0
- /package/dist/{status-CMnlcBVc.js → status-C53kTIXF.js} +0 -0
- /package/dist/{status-tDZPwewW.js → status-CZDDA_Sy.js} +0 -0
- /package/dist/{system-run-command-X9lDJIy0.js → system-run-command-BCjUffN9.js} +0 -0
- /package/dist/{system-run-command-DGk7dwQP.js → system-run-command-CqAqKL9K.js} +0 -0
- /package/dist/{tailnet-CuiNECdL.js → tailnet-Ciwjv243.js} +0 -0
- /package/dist/{templates-CeYJjVzw.js → templates-37RKpACb.js} +0 -0
- /package/dist/{templates-I3Z0xplD.js → templates-DPalk30o.js} +0 -0
- /package/dist/{thinking-BXEswx1X.js → thinking-2hxwmvTl.js} +0 -0
- /package/dist/{transcript-events-C1hdue6u.js → transcript-events-Bp7fGnwv.js} +0 -0
- /package/dist/{transcript-tools-DuyYOkUq.js → transcript-tools-D4Lbxlka.js} +0 -0
- /package/dist/{usage-format-BAirWUSO.js → usage-format-6Uar63S0.js} +0 -0
- /package/dist/{utils-C9sj30YY.js → utils-DT8uXjFS.js} +0 -0
- /package/dist/{wsl-CqyuRvtM.js → wsl-CrPvx2kZ.js} +0 -0
- /package/dist/{wsl-ymJYvc9Q.js → wsl-UvJ5dHah.js} +0 -0
package/dist/context-D5iEFzv9.js
DELETED
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import { b as resolveAnimaAgentDir } from "./auth-profiles-DxI8L7bs.js";
|
|
2
|
-
import { i as loadConfig } from "./config-C8rUDJXY.js";
|
|
3
|
-
import path from "node:path";
|
|
4
|
-
import fs from "node:fs/promises";
|
|
5
|
-
|
|
6
|
-
//#region src/agents/models-config.ts
|
|
7
|
-
/**
|
|
8
|
-
* Models configuration — SIMPLIFIED
|
|
9
|
-
*
|
|
10
|
-
* The multi-provider LLM abstraction (pi-ai) has been removed.
|
|
11
|
-
* ANIMA uses Claude Code CLI exclusively. This file retains only
|
|
12
|
-
* the minimal interface needed by the rest of the codebase.
|
|
13
|
-
* Full replacement comes in Phase 2.
|
|
14
|
-
*/
|
|
15
|
-
async function ensureAnimaModelsJson(config, agentDirOverride) {
|
|
16
|
-
config ?? loadConfig();
|
|
17
|
-
const agentDir = agentDirOverride?.trim() ? agentDirOverride.trim() : resolveAnimaAgentDir();
|
|
18
|
-
await fs.mkdir(agentDir, {
|
|
19
|
-
recursive: true,
|
|
20
|
-
mode: 448
|
|
21
|
-
});
|
|
22
|
-
const targetPath = path.join(agentDir, "models.json");
|
|
23
|
-
const content = JSON.stringify({ providers: {} }, null, 2) + "\n";
|
|
24
|
-
let existing = "";
|
|
25
|
-
try {
|
|
26
|
-
existing = await fs.readFile(targetPath, "utf8");
|
|
27
|
-
} catch {}
|
|
28
|
-
if (existing === content) return {
|
|
29
|
-
agentDir,
|
|
30
|
-
wrote: false
|
|
31
|
-
};
|
|
32
|
-
await fs.writeFile(targetPath, content, { mode: 384 });
|
|
33
|
-
return {
|
|
34
|
-
agentDir,
|
|
35
|
-
wrote: true
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
//#endregion
|
|
40
|
-
//#region src/agents/context.ts
|
|
41
|
-
const MODEL_CACHE = /* @__PURE__ */ new Map();
|
|
42
|
-
(async () => {
|
|
43
|
-
try {
|
|
44
|
-
const { discoverAuthStorage, discoverModels } = await import("./pi-model-discovery-DsRqYJLy.js").then((n) => n.r);
|
|
45
|
-
await ensureAnimaModelsJson(loadConfig());
|
|
46
|
-
const agentDir = resolveAnimaAgentDir();
|
|
47
|
-
const models = discoverModels(discoverAuthStorage(agentDir), agentDir).getAll();
|
|
48
|
-
for (const m of models) {
|
|
49
|
-
if (!m?.id) continue;
|
|
50
|
-
if (typeof m.contextWindow === "number" && m.contextWindow > 0) MODEL_CACHE.set(m.id, m.contextWindow);
|
|
51
|
-
}
|
|
52
|
-
} catch {}
|
|
53
|
-
})();
|
|
54
|
-
function lookupContextTokens(modelId) {
|
|
55
|
-
if (!modelId) return;
|
|
56
|
-
return MODEL_CACHE.get(modelId);
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
//#endregion
|
|
60
|
-
export { ensureAnimaModelsJson as n, lookupContextTokens as t };
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
2
|
-
import { t as createSubsystemLogger } from "./subsystem-Dowf8fSU.js";
|
|
3
|
-
import { i as loadConfig } from "./config-SY8M0kM_.js";
|
|
4
|
-
import { _ as ensureChromeExtensionRelayServer } from "./chrome-DScZx4Lk.js";
|
|
5
|
-
import { a as resolveProfile, i as resolveBrowserConfig, n as listKnownProfileNames, p as ensureBrowserControlAuth, t as createBrowserRouteContext } from "./server-context-LrlgrZzS.js";
|
|
6
|
-
|
|
7
|
-
//#region src/browser/control-service.ts
|
|
8
|
-
var control_service_exports = /* @__PURE__ */ __exportAll({
|
|
9
|
-
createBrowserControlContext: () => createBrowserControlContext,
|
|
10
|
-
getBrowserControlState: () => getBrowserControlState,
|
|
11
|
-
startBrowserControlServiceFromConfig: () => startBrowserControlServiceFromConfig,
|
|
12
|
-
stopBrowserControlService: () => stopBrowserControlService
|
|
13
|
-
});
|
|
14
|
-
let state = null;
|
|
15
|
-
const logService = createSubsystemLogger("browser").child("service");
|
|
16
|
-
function getBrowserControlState() {
|
|
17
|
-
return state;
|
|
18
|
-
}
|
|
19
|
-
function createBrowserControlContext() {
|
|
20
|
-
return createBrowserRouteContext({
|
|
21
|
-
getState: () => state,
|
|
22
|
-
refreshConfigFromDisk: true
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
async function startBrowserControlServiceFromConfig() {
|
|
26
|
-
if (state) return state;
|
|
27
|
-
const cfg = loadConfig();
|
|
28
|
-
const resolved = resolveBrowserConfig(cfg.browser, cfg);
|
|
29
|
-
if (!resolved.enabled) return null;
|
|
30
|
-
try {
|
|
31
|
-
if ((await ensureBrowserControlAuth({ cfg })).generatedToken) logService.info("No browser auth configured; generated gateway.auth.token automatically.");
|
|
32
|
-
} catch (err) {
|
|
33
|
-
logService.warn(`failed to auto-configure browser auth: ${String(err)}`);
|
|
34
|
-
}
|
|
35
|
-
state = {
|
|
36
|
-
server: null,
|
|
37
|
-
port: resolved.controlPort,
|
|
38
|
-
resolved,
|
|
39
|
-
profiles: /* @__PURE__ */ new Map()
|
|
40
|
-
};
|
|
41
|
-
for (const name of Object.keys(resolved.profiles)) {
|
|
42
|
-
const profile = resolveProfile(resolved, name);
|
|
43
|
-
if (!profile || profile.driver !== "extension") continue;
|
|
44
|
-
await ensureChromeExtensionRelayServer({ cdpUrl: profile.cdpUrl }).catch((err) => {
|
|
45
|
-
logService.warn(`Chrome extension relay init failed for profile "${name}": ${String(err)}`);
|
|
46
|
-
});
|
|
47
|
-
}
|
|
48
|
-
logService.info(`Browser control service ready (profiles=${Object.keys(resolved.profiles).length})`);
|
|
49
|
-
return state;
|
|
50
|
-
}
|
|
51
|
-
async function stopBrowserControlService() {
|
|
52
|
-
const current = state;
|
|
53
|
-
if (!current) return;
|
|
54
|
-
const ctx = createBrowserRouteContext({
|
|
55
|
-
getState: () => state,
|
|
56
|
-
refreshConfigFromDisk: true
|
|
57
|
-
});
|
|
58
|
-
try {
|
|
59
|
-
for (const name of listKnownProfileNames(current)) try {
|
|
60
|
-
await ctx.forProfile(name).stopRunningBrowser();
|
|
61
|
-
} catch {}
|
|
62
|
-
} catch (err) {
|
|
63
|
-
logService.warn(`anima browser stop failed: ${String(err)}`);
|
|
64
|
-
}
|
|
65
|
-
state = null;
|
|
66
|
-
try {
|
|
67
|
-
await (await import("./pw-ai-dzf-ptcn.js")).closePlaywrightBrowserConnection();
|
|
68
|
-
} catch {}
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
//#endregion
|
|
72
|
-
export { createBrowserControlContext as n, startBrowserControlServiceFromConfig as r, control_service_exports as t };
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
2
|
-
import { o as createSubsystemLogger } from "./entry.js";
|
|
3
|
-
import { i as loadConfig } from "./config-C8rUDJXY.js";
|
|
4
|
-
import { c as resolveProfile, i as ensureBrowserControlAuth, n as listKnownProfileNames, s as resolveBrowserConfig, t as createBrowserRouteContext } from "./server-context-49XFFxFg.js";
|
|
5
|
-
import { _ as ensureChromeExtensionRelayServer } from "./chrome-Bi6iZ5sG.js";
|
|
6
|
-
|
|
7
|
-
//#region src/browser/control-service.ts
|
|
8
|
-
var control_service_exports = /* @__PURE__ */ __exportAll({
|
|
9
|
-
createBrowserControlContext: () => createBrowserControlContext,
|
|
10
|
-
getBrowserControlState: () => getBrowserControlState,
|
|
11
|
-
startBrowserControlServiceFromConfig: () => startBrowserControlServiceFromConfig,
|
|
12
|
-
stopBrowserControlService: () => stopBrowserControlService
|
|
13
|
-
});
|
|
14
|
-
let state = null;
|
|
15
|
-
const logService = createSubsystemLogger("browser").child("service");
|
|
16
|
-
function getBrowserControlState() {
|
|
17
|
-
return state;
|
|
18
|
-
}
|
|
19
|
-
function createBrowserControlContext() {
|
|
20
|
-
return createBrowserRouteContext({
|
|
21
|
-
getState: () => state,
|
|
22
|
-
refreshConfigFromDisk: true
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
async function startBrowserControlServiceFromConfig() {
|
|
26
|
-
if (state) return state;
|
|
27
|
-
const cfg = loadConfig();
|
|
28
|
-
const resolved = resolveBrowserConfig(cfg.browser, cfg);
|
|
29
|
-
if (!resolved.enabled) return null;
|
|
30
|
-
try {
|
|
31
|
-
if ((await ensureBrowserControlAuth({ cfg })).generatedToken) logService.info("No browser auth configured; generated gateway.auth.token automatically.");
|
|
32
|
-
} catch (err) {
|
|
33
|
-
logService.warn(`failed to auto-configure browser auth: ${String(err)}`);
|
|
34
|
-
}
|
|
35
|
-
state = {
|
|
36
|
-
server: null,
|
|
37
|
-
port: resolved.controlPort,
|
|
38
|
-
resolved,
|
|
39
|
-
profiles: /* @__PURE__ */ new Map()
|
|
40
|
-
};
|
|
41
|
-
for (const name of Object.keys(resolved.profiles)) {
|
|
42
|
-
const profile = resolveProfile(resolved, name);
|
|
43
|
-
if (!profile || profile.driver !== "extension") continue;
|
|
44
|
-
await ensureChromeExtensionRelayServer({ cdpUrl: profile.cdpUrl }).catch((err) => {
|
|
45
|
-
logService.warn(`Chrome extension relay init failed for profile "${name}": ${String(err)}`);
|
|
46
|
-
});
|
|
47
|
-
}
|
|
48
|
-
logService.info(`Browser control service ready (profiles=${Object.keys(resolved.profiles).length})`);
|
|
49
|
-
return state;
|
|
50
|
-
}
|
|
51
|
-
async function stopBrowserControlService() {
|
|
52
|
-
const current = state;
|
|
53
|
-
if (!current) return;
|
|
54
|
-
const ctx = createBrowserRouteContext({
|
|
55
|
-
getState: () => state,
|
|
56
|
-
refreshConfigFromDisk: true
|
|
57
|
-
});
|
|
58
|
-
try {
|
|
59
|
-
for (const name of listKnownProfileNames(current)) try {
|
|
60
|
-
await ctx.forProfile(name).stopRunningBrowser();
|
|
61
|
-
} catch {}
|
|
62
|
-
} catch (err) {
|
|
63
|
-
logService.warn(`anima browser stop failed: ${String(err)}`);
|
|
64
|
-
}
|
|
65
|
-
state = null;
|
|
66
|
-
try {
|
|
67
|
-
await (await import("./pw-ai-BLVMuSLv.js")).closePlaywrightBrowserConnection();
|
|
68
|
-
} catch {}
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
//#endregion
|
|
72
|
-
export { createBrowserControlContext as n, startBrowserControlServiceFromConfig as r, control_service_exports as t };
|
|
@@ -1,448 +0,0 @@
|
|
|
1
|
-
import { A as colorize, M as theme, b as danger, h as defaultRuntime, j as isRich } from "./entry.js";
|
|
2
|
-
import "./auth-profiles-DxI8L7bs.js";
|
|
3
|
-
import { p as sanitizeAgentId } from "./session-key-BGiG_JcT.js";
|
|
4
|
-
import "./utils-C9sj30YY.js";
|
|
5
|
-
import "./exec-BizYYQgP.js";
|
|
6
|
-
import "./agent-scope-OZi7lb8S.js";
|
|
7
|
-
import "./manifest-registry-D4lM2RdV.js";
|
|
8
|
-
import "./config-C8rUDJXY.js";
|
|
9
|
-
import "./client-C1avc0vD.js";
|
|
10
|
-
import "./call-BAHvlu2G.js";
|
|
11
|
-
import "./message-channel-w4F2b2F6.js";
|
|
12
|
-
import "./logging-BdnOSVPD.js";
|
|
13
|
-
import "./accounts-CcVrwKqv.js";
|
|
14
|
-
import { n as listChannelPlugins } from "./plugins-CDJw924T.js";
|
|
15
|
-
import { n as formatDurationHuman } from "./format-duration-DhWzz_5b.js";
|
|
16
|
-
import { t as formatDocsLink } from "./links-BfjHVTB_.js";
|
|
17
|
-
import "./progress-CbZ2D53A.js";
|
|
18
|
-
import { t as parseAbsoluteTimeMs } from "./parse-6-2MDhdT.js";
|
|
19
|
-
import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-DJKBil9s.js";
|
|
20
|
-
import { n as parsePositiveIntOrUndefined } from "./helpers-DLgbkcEn.js";
|
|
21
|
-
|
|
22
|
-
//#region src/cli/cron-cli/shared.ts
|
|
23
|
-
const getCronChannelOptions = () => ["last", ...listChannelPlugins().map((plugin) => plugin.id)].join("|");
|
|
24
|
-
async function warnIfCronSchedulerDisabled(opts) {
|
|
25
|
-
try {
|
|
26
|
-
const res = await callGatewayFromCli("cron.status", opts, {});
|
|
27
|
-
if (res?.enabled === true) return;
|
|
28
|
-
const store = typeof res?.storePath === "string" ? res.storePath : "";
|
|
29
|
-
defaultRuntime.error([
|
|
30
|
-
"warning: cron scheduler is disabled in the Gateway; jobs are saved but will not run automatically.",
|
|
31
|
-
"Re-enable with `cron.enabled: true` (or remove `cron.enabled: false`) and restart the Gateway.",
|
|
32
|
-
store ? `store: ${store}` : ""
|
|
33
|
-
].filter(Boolean).join("\n"));
|
|
34
|
-
} catch {}
|
|
35
|
-
}
|
|
36
|
-
function parseDurationMs(input) {
|
|
37
|
-
const raw = input.trim();
|
|
38
|
-
if (!raw) return null;
|
|
39
|
-
const match = raw.match(/^(\d+(?:\.\d+)?)(ms|s|m|h|d)$/i);
|
|
40
|
-
if (!match) return null;
|
|
41
|
-
const n = Number.parseFloat(match[1] ?? "");
|
|
42
|
-
if (!Number.isFinite(n) || n <= 0) return null;
|
|
43
|
-
const unit = (match[2] ?? "").toLowerCase();
|
|
44
|
-
const factor = unit === "ms" ? 1 : unit === "s" ? 1e3 : unit === "m" ? 6e4 : unit === "h" ? 36e5 : 864e5;
|
|
45
|
-
return Math.floor(n * factor);
|
|
46
|
-
}
|
|
47
|
-
function parseAt(input) {
|
|
48
|
-
const raw = input.trim();
|
|
49
|
-
if (!raw) return null;
|
|
50
|
-
const absolute = parseAbsoluteTimeMs(raw);
|
|
51
|
-
if (absolute !== null) return new Date(absolute).toISOString();
|
|
52
|
-
const dur = parseDurationMs(raw);
|
|
53
|
-
if (dur !== null) return new Date(Date.now() + dur).toISOString();
|
|
54
|
-
return null;
|
|
55
|
-
}
|
|
56
|
-
const CRON_ID_PAD = 36;
|
|
57
|
-
const CRON_NAME_PAD = 24;
|
|
58
|
-
const CRON_SCHEDULE_PAD = 32;
|
|
59
|
-
const CRON_NEXT_PAD = 10;
|
|
60
|
-
const CRON_LAST_PAD = 10;
|
|
61
|
-
const CRON_STATUS_PAD = 9;
|
|
62
|
-
const CRON_TARGET_PAD = 9;
|
|
63
|
-
const CRON_AGENT_PAD = 10;
|
|
64
|
-
const pad = (value, width) => value.padEnd(width);
|
|
65
|
-
const truncate = (value, width) => {
|
|
66
|
-
if (value.length <= width) return value;
|
|
67
|
-
if (width <= 3) return value.slice(0, width);
|
|
68
|
-
return `${value.slice(0, width - 3)}...`;
|
|
69
|
-
};
|
|
70
|
-
const formatIsoMinute = (iso) => {
|
|
71
|
-
const parsed = parseAbsoluteTimeMs(iso);
|
|
72
|
-
const d = new Date(parsed ?? NaN);
|
|
73
|
-
if (Number.isNaN(d.getTime())) return "-";
|
|
74
|
-
const isoStr = d.toISOString();
|
|
75
|
-
return `${isoStr.slice(0, 10)} ${isoStr.slice(11, 16)}Z`;
|
|
76
|
-
};
|
|
77
|
-
const formatSpan = (ms) => {
|
|
78
|
-
if (ms < 6e4) return "<1m";
|
|
79
|
-
if (ms < 36e5) return `${Math.round(ms / 6e4)}m`;
|
|
80
|
-
if (ms < 864e5) return `${Math.round(ms / 36e5)}h`;
|
|
81
|
-
return `${Math.round(ms / 864e5)}d`;
|
|
82
|
-
};
|
|
83
|
-
const formatRelative = (ms, nowMs) => {
|
|
84
|
-
if (!ms) return "-";
|
|
85
|
-
const delta = ms - nowMs;
|
|
86
|
-
const label = formatSpan(Math.abs(delta));
|
|
87
|
-
return delta >= 0 ? `in ${label}` : `${label} ago`;
|
|
88
|
-
};
|
|
89
|
-
const formatSchedule = (schedule) => {
|
|
90
|
-
if (schedule.kind === "at") return `at ${formatIsoMinute(schedule.at)}`;
|
|
91
|
-
if (schedule.kind === "every") return `every ${formatDurationHuman(schedule.everyMs)}`;
|
|
92
|
-
return schedule.tz ? `cron ${schedule.expr} @ ${schedule.tz}` : `cron ${schedule.expr}`;
|
|
93
|
-
};
|
|
94
|
-
const formatStatus = (job) => {
|
|
95
|
-
if (!job.enabled) return "disabled";
|
|
96
|
-
if (job.state.runningAtMs) return "running";
|
|
97
|
-
return job.state.lastStatus ?? "idle";
|
|
98
|
-
};
|
|
99
|
-
function printCronList(jobs, runtime = defaultRuntime) {
|
|
100
|
-
if (jobs.length === 0) {
|
|
101
|
-
runtime.log("No cron jobs.");
|
|
102
|
-
return;
|
|
103
|
-
}
|
|
104
|
-
const rich = isRich();
|
|
105
|
-
const header = [
|
|
106
|
-
pad("ID", CRON_ID_PAD),
|
|
107
|
-
pad("Name", CRON_NAME_PAD),
|
|
108
|
-
pad("Schedule", CRON_SCHEDULE_PAD),
|
|
109
|
-
pad("Next", CRON_NEXT_PAD),
|
|
110
|
-
pad("Last", CRON_LAST_PAD),
|
|
111
|
-
pad("Status", CRON_STATUS_PAD),
|
|
112
|
-
pad("Target", CRON_TARGET_PAD),
|
|
113
|
-
pad("Agent", CRON_AGENT_PAD)
|
|
114
|
-
].join(" ");
|
|
115
|
-
runtime.log(rich ? theme.heading(header) : header);
|
|
116
|
-
const now = Date.now();
|
|
117
|
-
for (const job of jobs) {
|
|
118
|
-
const idLabel = pad(job.id, CRON_ID_PAD);
|
|
119
|
-
const nameLabel = pad(truncate(job.name, CRON_NAME_PAD), CRON_NAME_PAD);
|
|
120
|
-
const scheduleLabel = pad(truncate(formatSchedule(job.schedule), CRON_SCHEDULE_PAD), CRON_SCHEDULE_PAD);
|
|
121
|
-
const nextLabel = pad(job.enabled ? formatRelative(job.state.nextRunAtMs, now) : "-", CRON_NEXT_PAD);
|
|
122
|
-
const lastLabel = pad(formatRelative(job.state.lastRunAtMs, now), CRON_LAST_PAD);
|
|
123
|
-
const statusRaw = formatStatus(job);
|
|
124
|
-
const statusLabel = pad(statusRaw, CRON_STATUS_PAD);
|
|
125
|
-
const targetLabel = pad(job.sessionTarget ?? "-", CRON_TARGET_PAD);
|
|
126
|
-
const agentLabel = pad(truncate(job.agentId ?? "default", CRON_AGENT_PAD), CRON_AGENT_PAD);
|
|
127
|
-
const coloredStatus = (() => {
|
|
128
|
-
if (statusRaw === "ok") return colorize(rich, theme.success, statusLabel);
|
|
129
|
-
if (statusRaw === "error") return colorize(rich, theme.error, statusLabel);
|
|
130
|
-
if (statusRaw === "running") return colorize(rich, theme.warn, statusLabel);
|
|
131
|
-
if (statusRaw === "skipped") return colorize(rich, theme.muted, statusLabel);
|
|
132
|
-
return colorize(rich, theme.muted, statusLabel);
|
|
133
|
-
})();
|
|
134
|
-
const coloredTarget = job.sessionTarget === "isolated" ? colorize(rich, theme.accentBright, targetLabel) : colorize(rich, theme.accent, targetLabel);
|
|
135
|
-
const coloredAgent = job.agentId ? colorize(rich, theme.info, agentLabel) : colorize(rich, theme.muted, agentLabel);
|
|
136
|
-
const line = [
|
|
137
|
-
colorize(rich, theme.accent, idLabel),
|
|
138
|
-
colorize(rich, theme.info, nameLabel),
|
|
139
|
-
colorize(rich, theme.info, scheduleLabel),
|
|
140
|
-
colorize(rich, theme.muted, nextLabel),
|
|
141
|
-
colorize(rich, theme.muted, lastLabel),
|
|
142
|
-
coloredStatus,
|
|
143
|
-
coloredTarget,
|
|
144
|
-
coloredAgent
|
|
145
|
-
].join(" ");
|
|
146
|
-
runtime.log(line.trimEnd());
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
//#endregion
|
|
151
|
-
//#region src/cli/cron-cli/register.cron-add.ts
|
|
152
|
-
function registerCronStatusCommand(cron) {
|
|
153
|
-
addGatewayClientOptions(cron.command("status").description("Show cron scheduler status").option("--json", "Output JSON", false).action(async (opts) => {
|
|
154
|
-
try {
|
|
155
|
-
const res = await callGatewayFromCli("cron.status", opts, {});
|
|
156
|
-
defaultRuntime.log(JSON.stringify(res, null, 2));
|
|
157
|
-
} catch (err) {
|
|
158
|
-
defaultRuntime.error(danger(String(err)));
|
|
159
|
-
defaultRuntime.exit(1);
|
|
160
|
-
}
|
|
161
|
-
}));
|
|
162
|
-
}
|
|
163
|
-
function registerCronListCommand(cron) {
|
|
164
|
-
addGatewayClientOptions(cron.command("list").description("List cron jobs").option("--all", "Include disabled jobs", false).option("--json", "Output JSON", false).action(async (opts) => {
|
|
165
|
-
try {
|
|
166
|
-
const res = await callGatewayFromCli("cron.list", opts, { includeDisabled: Boolean(opts.all) });
|
|
167
|
-
if (opts.json) {
|
|
168
|
-
defaultRuntime.log(JSON.stringify(res, null, 2));
|
|
169
|
-
return;
|
|
170
|
-
}
|
|
171
|
-
printCronList(res?.jobs ?? [], defaultRuntime);
|
|
172
|
-
} catch (err) {
|
|
173
|
-
defaultRuntime.error(danger(String(err)));
|
|
174
|
-
defaultRuntime.exit(1);
|
|
175
|
-
}
|
|
176
|
-
}));
|
|
177
|
-
}
|
|
178
|
-
function registerCronAddCommand(cron) {
|
|
179
|
-
addGatewayClientOptions(cron.command("add").alias("create").description("Add a cron job").requiredOption("--name <name>", "Job name").option("--description <text>", "Optional description").option("--disabled", "Create job disabled", false).option("--delete-after-run", "Delete one-shot job after it succeeds", false).option("--keep-after-run", "Keep one-shot job after it succeeds", false).option("--agent <id>", "Agent id for this job").option("--session <target>", "Session target (main|isolated)").option("--wake <mode>", "Wake mode (now|next-heartbeat)", "now").option("--at <when>", "Run once at time (ISO) or +duration (e.g. 20m)").option("--every <duration>", "Run every duration (e.g. 10m, 1h)").option("--cron <expr>", "Cron expression (5-field)").option("--tz <iana>", "Timezone for cron expressions (IANA)", "").option("--system-event <text>", "System event payload (main session)").option("--message <text>", "Agent message payload").option("--thinking <level>", "Thinking level for agent jobs (off|minimal|low|medium|high)").option("--model <model>", "Model override for agent jobs (provider/model or alias)").option("--timeout-seconds <n>", "Timeout seconds for agent jobs").option("--announce", "Announce summary to a chat (subagent-style)", false).option("--deliver", "Deprecated (use --announce). Announces a summary to a chat.").option("--no-deliver", "Disable announce delivery and skip main-session summary").option("--channel <channel>", `Delivery channel (${getCronChannelOptions()})`, "last").option("--to <dest>", "Delivery destination (E.164, Telegram chatId, or Discord channel/user)").option("--best-effort-deliver", "Do not fail the job if delivery fails", false).option("--json", "Output JSON", false).action(async (opts, cmd) => {
|
|
180
|
-
try {
|
|
181
|
-
const schedule = (() => {
|
|
182
|
-
const at = typeof opts.at === "string" ? opts.at : "";
|
|
183
|
-
const every = typeof opts.every === "string" ? opts.every : "";
|
|
184
|
-
const cronExpr = typeof opts.cron === "string" ? opts.cron : "";
|
|
185
|
-
if ([
|
|
186
|
-
Boolean(at),
|
|
187
|
-
Boolean(every),
|
|
188
|
-
Boolean(cronExpr)
|
|
189
|
-
].filter(Boolean).length !== 1) throw new Error("Choose exactly one schedule: --at, --every, or --cron");
|
|
190
|
-
if (at) {
|
|
191
|
-
const atIso = parseAt(at);
|
|
192
|
-
if (!atIso) throw new Error("Invalid --at; use ISO time or duration like 20m");
|
|
193
|
-
return {
|
|
194
|
-
kind: "at",
|
|
195
|
-
at: atIso
|
|
196
|
-
};
|
|
197
|
-
}
|
|
198
|
-
if (every) {
|
|
199
|
-
const everyMs = parseDurationMs(every);
|
|
200
|
-
if (!everyMs) throw new Error("Invalid --every; use e.g. 10m, 1h, 1d");
|
|
201
|
-
return {
|
|
202
|
-
kind: "every",
|
|
203
|
-
everyMs
|
|
204
|
-
};
|
|
205
|
-
}
|
|
206
|
-
return {
|
|
207
|
-
kind: "cron",
|
|
208
|
-
expr: cronExpr,
|
|
209
|
-
tz: typeof opts.tz === "string" && opts.tz.trim() ? opts.tz.trim() : void 0
|
|
210
|
-
};
|
|
211
|
-
})();
|
|
212
|
-
const wakeMode = (typeof opts.wake === "string" ? opts.wake : "now").trim() || "now";
|
|
213
|
-
if (wakeMode !== "now" && wakeMode !== "next-heartbeat") throw new Error("--wake must be now or next-heartbeat");
|
|
214
|
-
const agentId = typeof opts.agent === "string" && opts.agent.trim() ? sanitizeAgentId(opts.agent.trim()) : void 0;
|
|
215
|
-
const hasAnnounce = Boolean(opts.announce) || opts.deliver === true;
|
|
216
|
-
const hasNoDeliver = opts.deliver === false;
|
|
217
|
-
if ([hasAnnounce, hasNoDeliver].filter(Boolean).length > 1) throw new Error("Choose at most one of --announce or --no-deliver");
|
|
218
|
-
const payload = (() => {
|
|
219
|
-
const systemEvent = typeof opts.systemEvent === "string" ? opts.systemEvent.trim() : "";
|
|
220
|
-
const message = typeof opts.message === "string" ? opts.message.trim() : "";
|
|
221
|
-
if ([Boolean(systemEvent), Boolean(message)].filter(Boolean).length !== 1) throw new Error("Choose exactly one payload: --system-event or --message");
|
|
222
|
-
if (systemEvent) return {
|
|
223
|
-
kind: "systemEvent",
|
|
224
|
-
text: systemEvent
|
|
225
|
-
};
|
|
226
|
-
const timeoutSeconds = parsePositiveIntOrUndefined(opts.timeoutSeconds);
|
|
227
|
-
return {
|
|
228
|
-
kind: "agentTurn",
|
|
229
|
-
message,
|
|
230
|
-
model: typeof opts.model === "string" && opts.model.trim() ? opts.model.trim() : void 0,
|
|
231
|
-
thinking: typeof opts.thinking === "string" && opts.thinking.trim() ? opts.thinking.trim() : void 0,
|
|
232
|
-
timeoutSeconds: timeoutSeconds && Number.isFinite(timeoutSeconds) ? timeoutSeconds : void 0
|
|
233
|
-
};
|
|
234
|
-
})();
|
|
235
|
-
const sessionSource = (typeof cmd?.getOptionValueSource === "function" ? (name) => cmd.getOptionValueSource(name) : () => void 0)("session");
|
|
236
|
-
const sessionTargetRaw = typeof opts.session === "string" ? opts.session.trim() : "";
|
|
237
|
-
const inferredSessionTarget = payload.kind === "agentTurn" ? "isolated" : "main";
|
|
238
|
-
const sessionTarget = sessionSource === "cli" ? sessionTargetRaw || "" : inferredSessionTarget;
|
|
239
|
-
if (sessionTarget !== "main" && sessionTarget !== "isolated") throw new Error("--session must be main or isolated");
|
|
240
|
-
if (opts.deleteAfterRun && opts.keepAfterRun) throw new Error("Choose --delete-after-run or --keep-after-run, not both");
|
|
241
|
-
if (sessionTarget === "main" && payload.kind !== "systemEvent") throw new Error("Main jobs require --system-event (systemEvent).");
|
|
242
|
-
if (sessionTarget === "isolated" && payload.kind !== "agentTurn") throw new Error("Isolated jobs require --message (agentTurn).");
|
|
243
|
-
if ((opts.announce || typeof opts.deliver === "boolean") && (sessionTarget !== "isolated" || payload.kind !== "agentTurn")) throw new Error("--announce/--no-deliver require --session isolated.");
|
|
244
|
-
const deliveryMode = sessionTarget === "isolated" && payload.kind === "agentTurn" ? hasAnnounce ? "announce" : hasNoDeliver ? "none" : "announce" : void 0;
|
|
245
|
-
const name = (typeof opts.name === "string" ? opts.name : "").trim();
|
|
246
|
-
if (!name) throw new Error("--name is required");
|
|
247
|
-
const res = await callGatewayFromCli("cron.add", opts, {
|
|
248
|
-
name,
|
|
249
|
-
description: typeof opts.description === "string" && opts.description.trim() ? opts.description.trim() : void 0,
|
|
250
|
-
enabled: !opts.disabled,
|
|
251
|
-
deleteAfterRun: opts.deleteAfterRun ? true : opts.keepAfterRun ? false : void 0,
|
|
252
|
-
agentId,
|
|
253
|
-
schedule,
|
|
254
|
-
sessionTarget,
|
|
255
|
-
wakeMode,
|
|
256
|
-
payload,
|
|
257
|
-
delivery: deliveryMode ? {
|
|
258
|
-
mode: deliveryMode,
|
|
259
|
-
channel: typeof opts.channel === "string" && opts.channel.trim() ? opts.channel.trim() : void 0,
|
|
260
|
-
to: typeof opts.to === "string" && opts.to.trim() ? opts.to.trim() : void 0,
|
|
261
|
-
bestEffort: opts.bestEffortDeliver ? true : void 0
|
|
262
|
-
} : void 0
|
|
263
|
-
});
|
|
264
|
-
defaultRuntime.log(JSON.stringify(res, null, 2));
|
|
265
|
-
await warnIfCronSchedulerDisabled(opts);
|
|
266
|
-
} catch (err) {
|
|
267
|
-
defaultRuntime.error(danger(String(err)));
|
|
268
|
-
defaultRuntime.exit(1);
|
|
269
|
-
}
|
|
270
|
-
}));
|
|
271
|
-
}
|
|
272
|
-
|
|
273
|
-
//#endregion
|
|
274
|
-
//#region src/cli/cron-cli/register.cron-edit.ts
|
|
275
|
-
const assignIf = (target, key, value, shouldAssign) => {
|
|
276
|
-
if (shouldAssign) target[key] = value;
|
|
277
|
-
};
|
|
278
|
-
function registerCronEditCommand(cron) {
|
|
279
|
-
addGatewayClientOptions(cron.command("edit").description("Edit a cron job (patch fields)").argument("<id>", "Job id").option("--name <name>", "Set name").option("--description <text>", "Set description").option("--enable", "Enable job", false).option("--disable", "Disable job", false).option("--delete-after-run", "Delete one-shot job after it succeeds", false).option("--keep-after-run", "Keep one-shot job after it succeeds", false).option("--session <target>", "Session target (main|isolated)").option("--agent <id>", "Set agent id").option("--clear-agent", "Unset agent and use default", false).option("--wake <mode>", "Wake mode (now|next-heartbeat)").option("--at <when>", "Set one-shot time (ISO) or duration like 20m").option("--every <duration>", "Set interval duration like 10m").option("--cron <expr>", "Set cron expression").option("--tz <iana>", "Timezone for cron expressions (IANA)").option("--system-event <text>", "Set systemEvent payload").option("--message <text>", "Set agentTurn payload message").option("--thinking <level>", "Thinking level for agent jobs").option("--model <model>", "Model override for agent jobs").option("--timeout-seconds <n>", "Timeout seconds for agent jobs").option("--announce", "Announce summary to a chat (subagent-style)").option("--deliver", "Deprecated (use --announce). Announces a summary to a chat.").option("--no-deliver", "Disable announce delivery").option("--channel <channel>", `Delivery channel (${getCronChannelOptions()})`).option("--to <dest>", "Delivery destination (E.164, Telegram chatId, or Discord channel/user)").option("--best-effort-deliver", "Do not fail job if delivery fails").option("--no-best-effort-deliver", "Fail job when delivery fails").action(async (id, opts) => {
|
|
280
|
-
try {
|
|
281
|
-
if (opts.session === "main" && opts.message) throw new Error("Main jobs cannot use --message; use --system-event or --session isolated.");
|
|
282
|
-
if (opts.session === "isolated" && opts.systemEvent) throw new Error("Isolated jobs cannot use --system-event; use --message or --session main.");
|
|
283
|
-
if (opts.announce && typeof opts.deliver === "boolean") throw new Error("Choose --announce or --no-deliver (not multiple).");
|
|
284
|
-
const patch = {};
|
|
285
|
-
if (typeof opts.name === "string") patch.name = opts.name;
|
|
286
|
-
if (typeof opts.description === "string") patch.description = opts.description;
|
|
287
|
-
if (opts.enable && opts.disable) throw new Error("Choose --enable or --disable, not both");
|
|
288
|
-
if (opts.enable) patch.enabled = true;
|
|
289
|
-
if (opts.disable) patch.enabled = false;
|
|
290
|
-
if (opts.deleteAfterRun && opts.keepAfterRun) throw new Error("Choose --delete-after-run or --keep-after-run, not both");
|
|
291
|
-
if (opts.deleteAfterRun) patch.deleteAfterRun = true;
|
|
292
|
-
if (opts.keepAfterRun) patch.deleteAfterRun = false;
|
|
293
|
-
if (typeof opts.session === "string") patch.sessionTarget = opts.session;
|
|
294
|
-
if (typeof opts.wake === "string") patch.wakeMode = opts.wake;
|
|
295
|
-
if (opts.agent && opts.clearAgent) throw new Error("Use --agent or --clear-agent, not both");
|
|
296
|
-
if (typeof opts.agent === "string" && opts.agent.trim()) patch.agentId = sanitizeAgentId(opts.agent.trim());
|
|
297
|
-
if (opts.clearAgent) patch.agentId = null;
|
|
298
|
-
if ([
|
|
299
|
-
opts.at,
|
|
300
|
-
opts.every,
|
|
301
|
-
opts.cron
|
|
302
|
-
].filter(Boolean).length > 1) throw new Error("Choose at most one schedule change");
|
|
303
|
-
if (opts.at) {
|
|
304
|
-
const atIso = parseAt(String(opts.at));
|
|
305
|
-
if (!atIso) throw new Error("Invalid --at");
|
|
306
|
-
patch.schedule = {
|
|
307
|
-
kind: "at",
|
|
308
|
-
at: atIso
|
|
309
|
-
};
|
|
310
|
-
} else if (opts.every) {
|
|
311
|
-
const everyMs = parseDurationMs(String(opts.every));
|
|
312
|
-
if (!everyMs) throw new Error("Invalid --every");
|
|
313
|
-
patch.schedule = {
|
|
314
|
-
kind: "every",
|
|
315
|
-
everyMs
|
|
316
|
-
};
|
|
317
|
-
} else if (opts.cron) patch.schedule = {
|
|
318
|
-
kind: "cron",
|
|
319
|
-
expr: String(opts.cron),
|
|
320
|
-
tz: typeof opts.tz === "string" && opts.tz.trim() ? opts.tz.trim() : void 0
|
|
321
|
-
};
|
|
322
|
-
const hasSystemEventPatch = typeof opts.systemEvent === "string";
|
|
323
|
-
const model = typeof opts.model === "string" && opts.model.trim() ? opts.model.trim() : void 0;
|
|
324
|
-
const thinking = typeof opts.thinking === "string" && opts.thinking.trim() ? opts.thinking.trim() : void 0;
|
|
325
|
-
const timeoutSeconds = opts.timeoutSeconds ? Number.parseInt(String(opts.timeoutSeconds), 10) : void 0;
|
|
326
|
-
const hasTimeoutSeconds = Boolean(timeoutSeconds && Number.isFinite(timeoutSeconds));
|
|
327
|
-
const hasDeliveryModeFlag = opts.announce || typeof opts.deliver === "boolean";
|
|
328
|
-
const hasDeliveryTarget = typeof opts.channel === "string" || typeof opts.to === "string";
|
|
329
|
-
const hasBestEffort = typeof opts.bestEffortDeliver === "boolean";
|
|
330
|
-
const hasAgentTurnPatch = typeof opts.message === "string" || Boolean(model) || Boolean(thinking) || hasTimeoutSeconds || hasDeliveryModeFlag || hasDeliveryTarget || hasBestEffort;
|
|
331
|
-
if (hasSystemEventPatch && hasAgentTurnPatch) throw new Error("Choose at most one payload change");
|
|
332
|
-
if (hasSystemEventPatch) patch.payload = {
|
|
333
|
-
kind: "systemEvent",
|
|
334
|
-
text: String(opts.systemEvent)
|
|
335
|
-
};
|
|
336
|
-
else if (hasAgentTurnPatch) {
|
|
337
|
-
const payload = { kind: "agentTurn" };
|
|
338
|
-
assignIf(payload, "message", String(opts.message), typeof opts.message === "string");
|
|
339
|
-
assignIf(payload, "model", model, Boolean(model));
|
|
340
|
-
assignIf(payload, "thinking", thinking, Boolean(thinking));
|
|
341
|
-
assignIf(payload, "timeoutSeconds", timeoutSeconds, hasTimeoutSeconds);
|
|
342
|
-
patch.payload = payload;
|
|
343
|
-
}
|
|
344
|
-
if (hasDeliveryModeFlag || hasDeliveryTarget || hasBestEffort) {
|
|
345
|
-
const delivery = { mode: opts.announce || opts.deliver === true ? "announce" : opts.deliver === false ? "none" : "announce" };
|
|
346
|
-
if (typeof opts.channel === "string") {
|
|
347
|
-
const channel = opts.channel.trim();
|
|
348
|
-
delivery.channel = channel ? channel : void 0;
|
|
349
|
-
}
|
|
350
|
-
if (typeof opts.to === "string") {
|
|
351
|
-
const to = opts.to.trim();
|
|
352
|
-
delivery.to = to ? to : void 0;
|
|
353
|
-
}
|
|
354
|
-
if (typeof opts.bestEffortDeliver === "boolean") delivery.bestEffort = opts.bestEffortDeliver;
|
|
355
|
-
patch.delivery = delivery;
|
|
356
|
-
}
|
|
357
|
-
const res = await callGatewayFromCli("cron.update", opts, {
|
|
358
|
-
id,
|
|
359
|
-
patch
|
|
360
|
-
});
|
|
361
|
-
defaultRuntime.log(JSON.stringify(res, null, 2));
|
|
362
|
-
await warnIfCronSchedulerDisabled(opts);
|
|
363
|
-
} catch (err) {
|
|
364
|
-
defaultRuntime.error(danger(String(err)));
|
|
365
|
-
defaultRuntime.exit(1);
|
|
366
|
-
}
|
|
367
|
-
}));
|
|
368
|
-
}
|
|
369
|
-
|
|
370
|
-
//#endregion
|
|
371
|
-
//#region src/cli/cron-cli/register.cron-simple.ts
|
|
372
|
-
function registerCronSimpleCommands(cron) {
|
|
373
|
-
addGatewayClientOptions(cron.command("rm").alias("remove").alias("delete").description("Remove a cron job").argument("<id>", "Job id").option("--json", "Output JSON", false).action(async (id, opts) => {
|
|
374
|
-
try {
|
|
375
|
-
const res = await callGatewayFromCli("cron.remove", opts, { id });
|
|
376
|
-
defaultRuntime.log(JSON.stringify(res, null, 2));
|
|
377
|
-
} catch (err) {
|
|
378
|
-
defaultRuntime.error(danger(String(err)));
|
|
379
|
-
defaultRuntime.exit(1);
|
|
380
|
-
}
|
|
381
|
-
}));
|
|
382
|
-
addGatewayClientOptions(cron.command("enable").description("Enable a cron job").argument("<id>", "Job id").action(async (id, opts) => {
|
|
383
|
-
try {
|
|
384
|
-
const res = await callGatewayFromCli("cron.update", opts, {
|
|
385
|
-
id,
|
|
386
|
-
patch: { enabled: true }
|
|
387
|
-
});
|
|
388
|
-
defaultRuntime.log(JSON.stringify(res, null, 2));
|
|
389
|
-
await warnIfCronSchedulerDisabled(opts);
|
|
390
|
-
} catch (err) {
|
|
391
|
-
defaultRuntime.error(danger(String(err)));
|
|
392
|
-
defaultRuntime.exit(1);
|
|
393
|
-
}
|
|
394
|
-
}));
|
|
395
|
-
addGatewayClientOptions(cron.command("disable").description("Disable a cron job").argument("<id>", "Job id").action(async (id, opts) => {
|
|
396
|
-
try {
|
|
397
|
-
const res = await callGatewayFromCli("cron.update", opts, {
|
|
398
|
-
id,
|
|
399
|
-
patch: { enabled: false }
|
|
400
|
-
});
|
|
401
|
-
defaultRuntime.log(JSON.stringify(res, null, 2));
|
|
402
|
-
await warnIfCronSchedulerDisabled(opts);
|
|
403
|
-
} catch (err) {
|
|
404
|
-
defaultRuntime.error(danger(String(err)));
|
|
405
|
-
defaultRuntime.exit(1);
|
|
406
|
-
}
|
|
407
|
-
}));
|
|
408
|
-
addGatewayClientOptions(cron.command("runs").description("Show cron run history (JSONL-backed)").requiredOption("--id <id>", "Job id").option("--limit <n>", "Max entries (default 50)", "50").action(async (opts) => {
|
|
409
|
-
try {
|
|
410
|
-
const limitRaw = Number.parseInt(String(opts.limit ?? "50"), 10);
|
|
411
|
-
const limit = Number.isFinite(limitRaw) && limitRaw > 0 ? limitRaw : 50;
|
|
412
|
-
const res = await callGatewayFromCli("cron.runs", opts, {
|
|
413
|
-
id: String(opts.id),
|
|
414
|
-
limit
|
|
415
|
-
});
|
|
416
|
-
defaultRuntime.log(JSON.stringify(res, null, 2));
|
|
417
|
-
} catch (err) {
|
|
418
|
-
defaultRuntime.error(danger(String(err)));
|
|
419
|
-
defaultRuntime.exit(1);
|
|
420
|
-
}
|
|
421
|
-
}));
|
|
422
|
-
addGatewayClientOptions(cron.command("run").description("Run a cron job now (debug)").argument("<id>", "Job id").option("--due", "Run only when due (default behavior in older versions)", false).action(async (id, opts) => {
|
|
423
|
-
try {
|
|
424
|
-
const res = await callGatewayFromCli("cron.run", opts, {
|
|
425
|
-
id,
|
|
426
|
-
mode: opts.due ? "due" : "force"
|
|
427
|
-
});
|
|
428
|
-
defaultRuntime.log(JSON.stringify(res, null, 2));
|
|
429
|
-
} catch (err) {
|
|
430
|
-
defaultRuntime.error(danger(String(err)));
|
|
431
|
-
defaultRuntime.exit(1);
|
|
432
|
-
}
|
|
433
|
-
}));
|
|
434
|
-
}
|
|
435
|
-
|
|
436
|
-
//#endregion
|
|
437
|
-
//#region src/cli/cron-cli/register.ts
|
|
438
|
-
function registerCronCli(program) {
|
|
439
|
-
const cron = program.command("cron").description("Manage cron jobs (via Gateway)").addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/cron", "docs.openclaw.ai/cli/cron")}\n`);
|
|
440
|
-
registerCronStatusCommand(cron);
|
|
441
|
-
registerCronListCommand(cron);
|
|
442
|
-
registerCronAddCommand(cron);
|
|
443
|
-
registerCronSimpleCommands(cron);
|
|
444
|
-
registerCronEditCommand(cron);
|
|
445
|
-
}
|
|
446
|
-
|
|
447
|
-
//#endregion
|
|
448
|
-
export { registerCronCli };
|