@visorcraft/idlehands 4.2.2 → 4.2.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/dist/{accounts-3HS_UAhJ.js → accounts-B4A5mL3Y.js} +1 -1
- package/dist/{accounts-BlHH-u_r.js → accounts-BDVs8LTu.js} +1 -1
- package/dist/{accounts-DOlh6RqB.js → accounts-CIvVRRHb.js} +1 -1
- package/dist/{accounts-DLTODa_Z.js → accounts-CbaEMSlt.js} +2 -2
- package/dist/{accounts-DLL4jMvc.js → accounts-Dk8mJIrQ.js} +2 -2
- package/dist/{accounts-DgbTKQoW.js → accounts-VbtNKne6.js} +1 -1
- package/dist/{acp-cli-BEpWQbqb.js → acp-cli-BF3FD1qw.js} +12 -12
- package/dist/{agent-scope-RA0zXRpu.js → agent-scope-DbNnv10G.js} +3 -3
- package/dist/{agent-scope-CSFjmUrH.js → agent-scope-DyP_tr7s.js} +3 -3
- package/dist/{agent-via-gateway-C42kkKZI.js → agent-via-gateway-CugFJzVP.js} +2 -2
- package/dist/{agent-via-gateway-Bf6TEh2k.js → agent-via-gateway-DG8Axzn2.js} +57 -57
- package/dist/{agent-via-gateway-oMn0WfUq.js → agent-via-gateway-DwRsFLFS.js} +6 -6
- package/dist/{agent-via-gateway-CldlRczJ.js → agent-via-gateway-VdG-s4L4.js} +1 -1
- package/dist/{agents-BfnnMO1i.js → agents-DDuWSZ0g.js} +4 -4
- package/dist/{agents.config-BFfVBZMA.js → agents.config-8tuPdcTQ.js} +1 -1
- package/dist/{agents.config-bWtpv0jP.js → agents.config-A-WLFOiz.js} +2 -2
- package/dist/{anton-DSS3RNo7.js → anton-CaPVBTOS.js} +117 -63
- package/dist/{anton-DXL8jrY_.js → anton-DCN6G6Up.js} +120 -66
- package/dist/{anton-CgpWkf5P.js → anton-DqWaq0gv.js} +116 -63
- package/dist/{anton-CuLeFevj.js → anton-sGTx_HDs.js} +119 -66
- package/dist/{api-key-rotation-B-FTJm5p.js → api-key-rotation-Bj8Q_8ST.js} +2 -2
- package/dist/{audio-preflight-Dl1TO10w.js → audio-preflight-BEe3Go6e.js} +41 -41
- package/dist/{audio-preflight-9inwhXLH.js → audio-preflight-CW8IH1lU.js} +32 -32
- package/dist/{audit-CKeZnjft.js → audit-DjUOBxVB.js} +21 -21
- package/dist/{auth-heRVBxh2.js → auth-DoNXQLDj.js} +1 -1
- package/dist/{auth-choice-BNofPyTK.js → auth-choice-C0ADVtim.js} +1 -1
- package/dist/{auth-choice-Z7nPFxhP.js → auth-choice-CnB-Ffeh.js} +10 -10
- package/dist/{auth-choice-D12Wsf7w.js → auth-choice-fHV4ZjtT.js} +15 -15
- package/dist/{auth-choice.apply-helpers-CGcniL1T.js → auth-choice.apply-helpers-fIm7h2DA.js} +1 -1
- package/dist/{auth-store-bL1LNwm5.js → auth-store-DXT-l7fO.js} +1 -1
- package/dist/{auth-store-DDzIMy8_.js → auth-store-Dqjgb5R1.js} +1 -1
- package/dist/{auth-token-BJq87X3o.js → auth-token-ChjRQYCt.js} +2 -2
- package/dist/{banner-B1-kj-GW.js → banner-C1dFMwdL.js} +1 -1
- package/dist/{bindings-av9-yFB3.js → bindings-D3b5Fmc9.js} +2 -2
- package/dist/{bindings-B59Q7nsk.js → bindings-DorAphZu.js} +2 -2
- package/dist/{bonjour-discovery-DMslm8Hx.js → bonjour-discovery-Yzgl5gfZ.js} +2 -2
- package/dist/{browser-cli-Ci6DpTnS.js → browser-cli-B8GEKR0p.js} +19 -19
- package/dist/build-info.json +3 -3
- package/dist/bundled/boot-md/handler.js +57 -57
- package/dist/bundled/bootstrap-extra-files/handler.js +4 -4
- package/dist/bundled/command-logger/handler.js +2 -2
- package/dist/bundled/session-memory/handler.js +57 -57
- package/dist/{call-BpWhjuOg.js → call-SK4sGwpN.js} +4 -4
- package/dist/{channel-account-context-CDbY5AIr.js → channel-account-context-CBQ0TdW0.js} +1 -1
- package/dist/{channel-activity-Df_QWn3k.js → channel-activity-D3e45uuU.js} +3 -3
- package/dist/{channel-activity-DaCsrdWK.js → channel-activity-D_TMOGQ0.js} +3 -3
- package/dist/{channel-options-C5Iz9bes.js → channel-options-DPIZ2OfB.js} +1 -1
- package/dist/{channel-options-CUP3A4VX.js → channel-options-dvj7gQ75.js} +5 -5
- package/dist/{channel-selection-ZxRkxpuF.js → channel-selection-DLfBD-c0.js} +2 -2
- package/dist/{channel-web-CGXl1PnB.js → channel-web-C022IdsV.js} +2 -2
- package/dist/{channel-web-CsUiKxQo.js → channel-web-DAeB1zPN.js} +26 -26
- package/dist/{channels-cli-DmHSajZy.js → channels-cli-BdUt4Lf-.js} +104 -104
- package/dist/{channels-cli-DK7TRLqX.js → channels-cli-DzA8ku51.js} +7 -7
- package/dist/{channels-status-issues-CDpWjdI3.js → channels-status-issues-DMvYh1lV.js} +1 -1
- package/dist/{chrome-DkhJIPqM.js → chrome-BcJB6PcM.js} +6 -6
- package/dist/{chrome-VBsQfIrt.js → chrome-DeAzXWRb.js} +4 -4
- package/dist/{chunk-CgCAeFdA.js → chunk-CMpX7Jaz.js} +1 -1
- package/dist/{chunk-ClMFHJu-.js → chunk-DJjn34fF.js} +1 -1
- package/dist/{clack-prompter-CvbZsmjW.js → clack-prompter-EMS8sO4h.js} +5 -5
- package/dist/{clawbot-cli-uFgYrysW.js → clawbot-cli-B8qqplom.js} +9 -9
- package/dist/cli/daemon-cli.js +1 -1
- package/dist/{cli-6eMKeewY.js → cli-BC9fLKsk.js} +2 -2
- package/dist/cli-VNJdJ9_T.js +162 -0
- package/dist/{client-DtnD-ee9.js → client-Cagiy1nE.js} +2 -2
- package/dist/{clipboard-LsW7H0Y8.js → clipboard-BqjWohVl.js} +1 -1
- package/dist/{command-registry-BFTlzx6d.js → command-registry-Bo2L5BJz.js} +10 -10
- package/dist/{commands-Dj5LalLo.js → commands-5UqnjBKV.js} +2 -2
- package/dist/{commands-registry-CURlRZQJ.js → commands-registry-C1lIoXkL.js} +5 -5
- package/dist/{commands-registry-CowrfO43.js → commands-registry-j4vAzcF2.js} +5 -5
- package/dist/{completion-cli-BbXgtvGY.js → completion-cli-CevdZ8t2.js} +2 -2
- package/dist/{completion-cli-PBfCNWhv.js → completion-cli-w7SY12wl.js} +4 -4
- package/dist/{config-cli-Q934shK6.js → config-cli-C8s4mZF3.js} +1 -1
- package/dist/{config-cli-BVJRkNhX.js → config-cli-D2221rb8.js} +13 -13
- package/dist/{config-guard-BdsOumqh.js → config-guard-DwTygT00.js} +23 -23
- package/dist/{config-validation-BvKX6fPw.js → config-validation-wUpXePGY.js} +2 -2
- package/dist/{configure-85ttW_lD.js → configure-6COQEc8d.js} +21 -21
- package/dist/{configure-BGAvA5a4.js → configure-BpeVYPCY.js} +3 -3
- package/dist/{control-ui-assets-C7ZpN9hN.js → control-ui-assets-CSrZ1shI.js} +1 -1
- package/dist/{cron-cli-DQsnGQKs.js → cron-cli-Den58QGF.js} +17 -17
- package/dist/{daemon-cli-DUg-s4LG.js → daemon-cli-CpCtUgS2.js} +14 -14
- package/dist/{daemon-install-CYPo4M1M.js → daemon-install-BPEEr5XM.js} +8 -8
- package/dist/{deliver-l8EA_rIo.js → deliver-BUiQ-9fE.js} +10 -10
- package/dist/{deliver--kttnrER.js → deliver-BqJFyWu7.js} +10 -10
- package/dist/{deps-Ch6bZ8PI.js → deps-B3svY-p3.js} +1 -1
- package/dist/{deps-B1l5WEJq.js → deps-BTDAxEQ6.js} +6 -6
- package/dist/{deps-Bq7jJLyN.js → deps-Coo8Thxy.js} +6 -6
- package/dist/{deps-AEDT3iDX.js → deps-DOxHxBHl.js} +1 -1
- package/dist/{devices-cli-DKK65S9Z.js → devices-cli-HTdRxjTf.js} +12 -12
- package/dist/{diagnostic-DUpiGDI6.js → diagnostic-4owMk4vH.js} +1 -1
- package/dist/{diagnostic-ByHpt6q8.js → diagnostic-BUKW2Q0G.js} +1 -1
- package/dist/{diagnostic-BECJfEvH.js → diagnostic-ztHDqZ1m.js} +3 -3
- package/dist/{diagnostics-DmZbQ8Nc.js → diagnostics-C2vxSb6v.js} +1 -1
- package/dist/{directory-cli-Dz9iXeut.js → directory-cli-BQDn6Qin.js} +16 -16
- package/dist/{dns-cli-DD6hWsdc.js → dns-cli-lwfJKGdv.js} +10 -10
- package/dist/{dock-4HLkEWeL.js → dock-BgOmHcbh.js} +6 -6
- package/dist/{dock-Y96MzKuM.js → dock-DpA6CUDJ.js} +6 -6
- package/dist/{docs-cli-cHkrTB2e.js → docs-cli-Jnv5gp25.js} +9 -9
- package/dist/{doctor-completion-CN5Zujsa.js → doctor-completion-CCuJkHb8.js} +2 -2
- package/dist/{doctor-completion-Clh5CNUd.js → doctor-completion-CkCkSkfC.js} +1 -1
- package/dist/{doctor-config-flow-Ck4oCjfl.js → doctor-config-flow-DcxVJJvh.js} +13 -13
- package/dist/emergency-stop-BNon2wpA.js +162 -0
- package/dist/{emergency-stop-D_bTOufu.js → emergency-stop-DO0wn668.js} +2 -2
- package/dist/{emergency-stop-2v4bhRCE.js → emergency-stop-DZFe7oYv.js} +2 -2
- package/dist/emergency-stop-JMddgwUX.js +113 -0
- package/dist/{enable-o_s6PBsC.js → enable-ztZSnOGv.js} +2 -2
- package/dist/entry.js +1 -1
- package/dist/{env-BtjfGfYS.js → env-B5G1qwGc.js} +1 -1
- package/dist/{env-Bx-F45X5.js → env-dMo-pLSc.js} +1 -1
- package/dist/{errors-DZDuPc3M.js → errors-BNr2qnai.js} +1 -1
- package/dist/{errors-XpvBRvrk.js → errors-C_0nm4TJ.js} +1 -1
- package/dist/{exec-CKHMT0tZ.js → exec-B9xbr2pN.js} +2 -2
- package/dist/{exec-approvals-allowlist-Co2tJSEo.js → exec-approvals-allowlist-BzsyDGgt.js} +1 -1
- package/dist/{exec-approvals-cli-D6XUzs4j.js → exec-approvals-cli-2SjGVbIm.js} +21 -21
- package/dist/{exec-safe-bin-runtime-policy-DaoU9-ni.js → exec-safe-bin-runtime-policy-bEV0LvVh.js} +2 -2
- package/dist/extensionAPI.js +2 -2
- package/dist/{fetch-guard-yUZu1Vzc.js → fetch-guard-C-IWepjW.js} +1 -1
- package/dist/{fetch-guard-BdcyjI44.js → fetch-guard-iuQsIjqN.js} +1 -1
- package/dist/{frontmatter-CNT2SLK9.js → frontmatter-BOudmHMS.js} +2 -2
- package/dist/{frontmatter-D-sQ_Hqk.js → frontmatter-x0EBRtDF.js} +2 -2
- package/dist/{fs-safe-qiODuhN1.js → fs-safe-CYUaAFO9.js} +2 -2
- package/dist/{gateway-cli-DJm73Wou.js → gateway-cli-Cf7kqenc.js} +123 -123
- package/dist/{gateway-cli-Cl7cEsHE.js → gateway-cli-D6Sh2d9w.js} +9 -9
- package/dist/{gateway-rpc-BBFG1T-M.js → gateway-rpc-C_He5poS.js} +3 -3
- package/dist/{gemini-auth-DcQhBD_n.js → gemini-auth-CIyaa44H.js} +2 -2
- package/dist/{gmail-setup-utils-DRJTQOMM.js → gmail-setup-utils-D1VrLZhD.js} +3 -3
- package/dist/{health-C6_Sa_ef.js → health-BavRGpi2.js} +15 -15
- package/dist/{health-format-Ba_hOaT2.js → health-format-CWIquyOr.js} +1 -1
- package/dist/{health-D-b3jdnU.js → health-j2mDzeUl.js} +1 -1
- package/dist/{help-format-CMAqOikG.js → help-format-D7QsjOW4.js} +1 -1
- package/dist/{hooks-cli-BC3n8UYQ.js → hooks-cli-AnCnOcQY.js} +93 -93
- package/dist/{hooks-cli-BB25FyuN.js → hooks-cli-DDAeDBcO.js} +3 -3
- package/dist/{hooks-status-DNGo2G8Q.js → hooks-status-BBvzI_rQ.js} +3 -3
- package/dist/{image-DSDEbSiO.js → image-BkrcRFPe.js} +7 -7
- package/dist/{image-D_PnW33c.js → image-D8b_rlQC.js} +6 -6
- package/dist/{image-ops-BU-VdLZu.js → image-ops-CGnAhRRV.js} +1 -1
- package/dist/{image-ops-CVPIEkjZ.js → image-ops-D1KtygWz.js} +1 -1
- package/dist/index.js +99 -99
- package/dist/{inspect-ISQZuNM5.js → inspect-BOW-hTlT.js} +1 -1
- package/dist/{installs-CNubze2L.js → installs-DGfrRYWX.js} +4 -4
- package/dist/{ir-z6aop5rJ.js → ir-B7IBoKLy.js} +5 -5
- package/dist/{ir-VncGpwA1.js → ir-DBqjL1SG.js} +4 -4
- package/dist/{lifecycle-core-B6UoqYTJ.js → lifecycle-core-DOL5vqsF.js} +5 -5
- package/dist/{links-15764jZB.js → links-DIG3qrf5.js} +1 -1
- package/dist/llm-slug-generator.js +57 -57
- package/dist/{local-roots-q0xbefkf.js → local-roots-B-lmQdZs.js} +4 -4
- package/dist/{local-roots-czSWcF7i.js → local-roots-KN4Hp1yZ.js} +4 -4
- package/dist/{logging-B0-9lotb.js → logging-BK2fjjMe.js} +1 -1
- package/dist/{login-CfUhrgWT.js → login-BVf_DBja.js} +6 -6
- package/dist/{login-CUJ4A8gi.js → login-CFr5vJmR.js} +6 -6
- package/dist/{login-qr-BTJ95win.js → login-qr-CFFFOjOl.js} +9 -9
- package/dist/{login-qr-DBMsUxgL.js → login-qr-V1EwcFLt.js} +10 -10
- package/dist/{logs-cli-4VQ9Iwiw.js → logs-cli-BgrYblUE.js} +13 -13
- package/dist/{manager-BZ0tYOnu.js → manager-BE_76jWB.js} +10 -10
- package/dist/{manager-BMAFgXyU.js → manager-DayGME0K.js} +10 -10
- package/dist/{manifest-registry-Bak1x76G.js → manifest-registry-cOeAg4W6.js} +2 -2
- package/dist/{markdown-tables-DZClqsNo.js → markdown-tables-BQ8czvs_.js} +1 -1
- package/dist/{markdown-tables-Cjn8O_5e.js → markdown-tables-CzsockiZ.js} +1 -1
- package/dist/{memory-cli-CUGwnVIY.js → memory-cli-D_bFq_Q1.js} +12 -12
- package/dist/{message-channel-9h0j5RdN.js → message-channel-C8QtrwEU.js} +1 -1
- package/dist/{message-channel-DVauVtrg.js → message-channel-CRSTffWx.js} +1 -1
- package/dist/{model-C-icShH2.js → model-Di6JkHyx.js} +2 -2
- package/dist/{model-catalog-D9no0CH2.js → model-catalog-D_KsCB5j.js} +4 -4
- package/dist/{model-picker-BkXoTOiA.js → model-picker-CM_QFlL4.js} +4 -4
- package/dist/{model-selection-C88a_9g6.js → model-selection-1MMYqY6M.js} +11 -11
- package/dist/{model-selection-0dGxYGp8.js → model-selection-Df4-bBn3.js} +12 -12
- package/dist/{models-C1_Tdc1Q.js → models-RiKkYhfQ.js} +2 -2
- package/dist/{models-cli-B9yw60gV.js → models-cli-B4HXQG2Q.js} +98 -98
- package/dist/{models-cli-Bs5ZNSbk.js → models-cli-CSSZi7-P.js} +4 -4
- package/dist/{models-config-C5A1wDWh.js → models-config-zq6L0fug.js} +2 -2
- package/dist/{node-cli-BYzjxmUY.js → node-cli-PVcj1bnA.js} +33 -33
- package/dist/{node-service-C3vyxHLA.js → node-service-IG3YtMJq.js} +1 -1
- package/dist/{nodes-cli-kNOtp0U0.js → nodes-cli-DKj4NkKf.js} +21 -21
- package/dist/{nodes-screen-CcpPaFxa.js → nodes-screen-CK0vmyQx.js} +1 -1
- package/dist/{note-69EfBEU-.js → note--5AAjfvH.js} +2 -2
- package/dist/{npm-registry-spec-BCbbfIhX.js → npm-registry-spec-B81IsQOs.js} +2 -2
- package/dist/{npm-resolution-BMDipaRX.js → npm-resolution-D1b0Eoa4.js} +4 -4
- package/dist/{npm-resolution-yXJbqHHn.js → npm-resolution-vCuR0Tv5.js} +1 -1
- package/dist/{onboard-CYRoDnOI.js → onboard-Dcj7w5Sb.js} +2 -2
- package/dist/{onboard-channels-CNQt2jFU.js → onboard-channels-BT-vQKYZ.js} +17 -17
- package/dist/{onboard-channels-CkxvodmR.js → onboard-channels-jrbhR8dl.js} +1 -1
- package/dist/{onboard-custom-DUbzMMu7.js → onboard-custom-C_4nk_e8.js} +4 -4
- package/dist/{onboard-DjbHK18p.js → onboard-enaQTAES.js} +9 -9
- package/dist/{onboard-helpers-mzy38DiC.js → onboard-helpers-CXjQtadC.js} +7 -7
- package/dist/{onboard-hooks-D9teGxfH.js → onboard-hooks-CuOJrgfu.js} +7 -7
- package/dist/{onboard-remote-LCBHijVE.js → onboard-remote-B-bN7EmV.js} +3 -3
- package/dist/{onboard-skills-jFY9gaOu.js → onboard-skills-BVmcgCzz.js} +4 -4
- package/dist/{onboarding-BEDOWI9h.js → onboarding-BpiNSUID.js} +3 -3
- package/dist/{onboarding-D9AZJlDK.js → onboarding-fRvJJ_jS.js} +16 -16
- package/dist/{onboarding.finalize-DJxMkD2g.js → onboarding.finalize-6q8jh9r4.js} +99 -99
- package/dist/{onboarding.finalize-D4hW1yTd.js → onboarding.finalize-B557eJgx.js} +7 -7
- package/dist/{onboarding.gateway-config-Btu2gzgr.js → onboarding.gateway-config-BinQe57V.js} +21 -21
- package/dist/{openai-model-default-7J6cw1rA.js → openai-model-default-CK1wUY3u.js} +2 -2
- package/dist/{outbound-pWVnnOB8.js → outbound-BNh6PpQb.js} +6 -6
- package/dist/{outbound-DPTxwchq.js → outbound-DClHNQfl.js} +6 -6
- package/dist/{outbound-attachment-BuJwyBh-.js → outbound-attachment-3I6GzwDe.js} +2 -2
- package/dist/{outbound-attachment-Bot3bRnK.js → outbound-attachment-Cz80loTd.js} +2 -2
- package/dist/{pairing-cli-jwx6hMsM.js → pairing-cli-By_hykOY.js} +15 -15
- package/dist/{pairing-labels-ChQJzbS9.js → pairing-labels-Dm-DUGGI.js} +1 -1
- package/dist/{pairing-store-CPpEEQJO.js → pairing-store-CPUUuW7M.js} +3 -3
- package/dist/{path-alias-guards-CwzKuGwh.js → path-alias-guards-Cu1nXNMM.js} +1 -1
- package/dist/{path-env-CKSLQUS1.js → path-env-CWIJihhd.js} +1 -1
- package/dist/{paths-B-CLQ5RT.js → paths-CBF9EBzh.js} +1 -1
- package/dist/{pi-embedded-C-ELC4B8.js → pi-embedded-CMll1riT.js} +96 -96
- package/dist/{pi-embedded-o6Xj8V4C.js → pi-embedded-D35RiR0f.js} +11 -11
- package/dist/{pi-embedded-helpers-BdHpVi4N.js → pi-embedded-helpers-CghCLoPo.js} +16 -16
- package/dist/{pi-embedded-helpers-BCsfqpDt.js → pi-embedded-helpers-D675DgwP.js} +4 -4
- package/dist/{pi-model-discovery-BIP3RjXl.js → pi-model-discovery-BEKzIGSg.js} +1 -1
- package/dist/{pi-model-discovery-DXdGUBPM.js → pi-model-discovery-Bb__OY-j.js} +1 -1
- package/dist/{pi-tools.policy-DfITIKZj.js → pi-tools.policy-GzRj_NVc.js} +6 -6
- package/dist/{plugin-auto-enable-7DUxMy6A.js → plugin-auto-enable-CU8IfpBV.js} +5 -5
- package/dist/{plugin-registry-6C1sgAm1.js → plugin-registry-DMdIUK_2.js} +1 -1
- package/dist/{plugin-registry-DIK-5KI9.js → plugin-registry-DdywtXL5.js} +4 -4
- package/dist/plugin-sdk/{agent-via-gateway-DmQMFWNE.js → agent-via-gateway-W4SFqR3m.js} +2 -2
- package/dist/plugin-sdk/{anton-CrjFisFZ.js → anton-DgXekgcy.js} +116 -63
- package/dist/plugin-sdk/{channel-web-vQgHbtCG.js → channel-web-DbwkbMKY.js} +2 -2
- package/dist/plugin-sdk/commands/anton.d.ts +28 -4
- package/dist/plugin-sdk/{deps-DfyALwFG.js → deps-HLNhWkFy.js} +1 -1
- package/dist/plugin-sdk/{emergency-stop-0ZrbH3D4.js → emergency-stop-BXP-MZHW.js} +2 -2
- package/dist/plugin-sdk/index.js +3 -3
- package/dist/plugin-sdk/{reply-BfdVf3fw.js → reply-BEnj9--x.js} +11 -11
- package/dist/plugin-sdk/{web-DwDLI7GP.js → web-TsEAe4Bs.js} +3 -3
- package/dist/{plugins-D46VZh7u.js → plugins-Bj6rzE-9.js} +5 -5
- package/dist/{plugins-HLi321vw.js → plugins-CRB60mCJ.js} +5 -5
- package/dist/{plugins-cli-DFUxLQbB.js → plugins-cli-CkqS4cmo.js} +3 -3
- package/dist/{plugins-cli-B1kN2Xze.js → plugins-cli-DHVkVGke.js} +95 -95
- package/dist/{ports-SQy1d-RL.js → ports-BJ6Xu_G6.js} +3 -3
- package/dist/{ports-B2o0FSFD.js → ports-D3FuSfMU.js} +2 -2
- package/dist/{program-mmjp27H4.js → program-BeB3v4zk.js} +8 -8
- package/dist/{program-context-CjyGlgVG.js → program-context-w-tdgurY.js} +43 -43
- package/dist/{progress-BQLz1r3L.js → progress-BN8aygvh.js} +1 -1
- package/dist/{prompt-select-styled-04TKk_r3.js → prompt-select-styled-CE6lL16-.js} +4 -4
- package/dist/{prompt-select-styled-FskTiqWw.js → prompt-select-styled-CGdWABH5.js} +35 -35
- package/dist/{prompt-style-kmKiCZnm.js → prompt-style-BRwf6dfp.js} +1 -1
- package/dist/{provider-auth-helpers-BI7MVWjD.js → provider-auth-helpers-C72Fb__o.js} +7 -7
- package/dist/{provider-auth-helpers-9IcvdTst.js → provider-auth-helpers-D0RhcC2q.js} +1 -1
- package/dist/{push-apns-Bh0u21Bh.js → push-apns-CeEArjp5.js} +1 -1
- package/dist/{push-apns-DvSYSWvk.js → push-apns-Nj66xHk1.js} +5 -5
- package/dist/{pw-ai-ClfeTowr.js → pw-ai-CfYaR1K2.js} +11 -11
- package/dist/{pw-ai-7i9eGnLh.js → pw-ai-DRVoaq_u.js} +13 -13
- package/dist/{qmd-manager-DxMPr_TW.js → qmd-manager-B_GgyQQ0.js} +6 -6
- package/dist/{qmd-manager-B-qeywfQ.js → qmd-manager-SkIM31ge.js} +6 -6
- package/dist/{qr-cli-CSt5ihwG.js → qr-cli-BsFvbHQy.js} +4 -4
- package/dist/{query-expansion-Clts_AGz.js → query-expansion-BIsWftgR.js} +2 -2
- package/dist/{query-expansion-BIZ50Uk8.js → query-expansion-DEq020GG.js} +2 -2
- package/dist/{redact-Dk_8Rk3-.js → redact-Bvpf-ATQ.js} +1 -1
- package/dist/{redact-B_4KNlXs.js → redact-CIBM9Zli.js} +1 -1
- package/dist/{redact-snapshot-BbEVKv0k.js → redact-snapshot-DQ_VN7gO.js} +2 -2
- package/dist/{register.agent-B3zUfhl9.js → register.agent-BaiV-Kp5.js} +9 -9
- package/dist/{register.agent-BSe92Zxh.js → register.agent-CoADvHMz.js} +110 -110
- package/dist/{register.configure-N4JG5hVe.js → register.configure-COg3mvRi.js} +8 -8
- package/dist/register.configure-Dhfhctpj.js +168 -0
- package/dist/{register.maintenance-DxauQqK_.js → register.maintenance-CjxM0oKc.js} +108 -108
- package/dist/{register.maintenance-BjhkxF3o.js → register.maintenance-MELPxVyx.js} +9 -9
- package/dist/{register.message-BsMpRFVr.js → register.message-CbssH6ek.js} +90 -90
- package/dist/{register.message-DoZ5i1Pn.js → register.message-kzRNe_7l.js} +3 -3
- package/dist/{register.onboard-Hxi3l9IA.js → register.onboard-CAbo-VF1.js} +29 -29
- package/dist/{register.onboard-Cw3wNQRm.js → register.onboard-CJeQ64iC.js} +2 -2
- package/dist/{register.orchestrator-anton-BqQfw2JX.js → register.orchestrator-anton-CBnyqoHX.js} +7 -7
- package/dist/{register.orchestrator-anton-DOByOKzU.js → register.orchestrator-anton-CdVQ30at.js} +2 -2
- package/dist/{register.setup-dazD7bl3.js → register.setup-DEH8S3Y5.js} +31 -31
- package/dist/{register.setup-r5Xy4nv4.js → register.setup-XGT1lV6o.js} +2 -2
- package/dist/{register.status-health-sessions-3zjBM0m6.js → register.status-health-sessions-0ppExIVs.js} +101 -101
- package/dist/{register.status-health-sessions-DobZ2G2u.js → register.status-health-sessions-jEhyhioj.js} +4 -4
- package/dist/{register.subclis-CGJxYP3h.js → register.subclis-DQx75Ni7.js} +9 -9
- package/dist/{replies-cfk2XJ69.js → replies-6_GxvQYe.js} +3 -3
- package/dist/{replies-hSFVxL4h.js → replies-CWMglpIw.js} +3 -3
- package/dist/{reply-BDr-UY9O.js → reply-Du7Q5RJl.js} +114 -114
- package/dist/{reply-prefix-PDoW4EZy.js → reply-prefix-BUgeSN2R.js} +1 -1
- package/dist/{reply-prefix-C3y4zpTl.js → reply-prefix-CXLm7TNq.js} +1 -1
- package/dist/{resolve-route-D_AbcmD6.js → resolve-route-BrHTn_2g.js} +4 -4
- package/dist/{resolve-route-Co_8ykQj.js → resolve-route-DuttYY7A.js} +4 -4
- package/dist/{retry-DbI92XJ6.js → retry-B7zUL1Mv.js} +1 -1
- package/dist/{retry-Db05aSB8.js → retry-BeB9WenR.js} +1 -1
- package/dist/{rpc-Cf9OK5Yk.js → rpc-Dp_JZNAZ.js} +3 -3
- package/dist/{run-main-BDEztzfx.js → run-main-D56C-iq4.js} +15 -15
- package/dist/{runner-CDjI14QL.js → runner-PgRFPYUj.js} +11 -11
- package/dist/{runner-DzszLzI4.js → runner-p3KLBBEt.js} +11 -11
- package/dist/{runtime-XmXLaHNk.js → runtime-DELkrqga.js} +3 -3
- package/dist/{sandbox-DcUw5h3p.js → sandbox-cEpEHVD-.js} +8 -8
- package/dist/{sandbox-cli-DGvJ7Eeq.js → sandbox-cli-B7kOJiLh.js} +32 -32
- package/dist/{secrets-cli-CR3h2TBy.js → secrets-cli-COGPFjdu.js} +14 -14
- package/dist/{security-cli-B9_LV2po.js → security-cli-Db4ZYVER.js} +42 -42
- package/dist/{send-C-sC5FEL.js → send-BeIZJuy4.js} +7 -7
- package/dist/{send-DwdHiC7_.js → send-BhbOA8rP.js} +10 -10
- package/dist/{send-gAZecXKW.js → send-C1hvd3bt.js} +6 -6
- package/dist/{send-DQiw_nGD.js → send-D-UmmCCj.js} +7 -7
- package/dist/{send-CcOlxFgw.js → send-D4bMycQu.js} +7 -7
- package/dist/{send--lzpNy4f.js → send-DA-ryUJS.js} +14 -14
- package/dist/{send-C4v0Leny.js → send-D_ARyjSf.js} +6 -6
- package/dist/{send-BygI0N_k.js → send-Dfa3sn6r.js} +13 -13
- package/dist/{send-qZc5cwnf.js → send-DmLC7aEF.js} +10 -10
- package/dist/{send-DuwdEkLw.js → send-DnscWRVE.js} +7 -7
- package/dist/{server-D6MltJIF.js → server-DLOBjQtf.js} +21 -21
- package/dist/{server-context-DI0W_H7R.js → server-context-CvZnSu9L.js} +11 -11
- package/dist/{server-lifecycle-B5PlrlbG.js → server-lifecycle-CfZbDiFe.js} +2 -2
- package/dist/{server-node-events-C69TPlKW.js → server-node-events-C1uC6pPJ.js} +89 -89
- package/dist/{server-node-events-BL1dTBEr.js → server-node-events-h-U5Mfvv.js} +3 -3
- package/dist/{service-C8NMS3m_.js → service-fKr0VnMd.js} +1 -1
- package/dist/{session-CdnrRhb4.js → session-BKdoiopW.js} +2 -2
- package/dist/{session-CsQYfL3c.js → session-F_YDS_1V.js} +3 -3
- package/dist/{sessions-BxJlMZ9d.js → sessions-3ioSeOA1.js} +6 -6
- package/dist/{sessions-BtPXimXQ.js → sessions-uS8Ko6pU.js} +6 -6
- package/dist/{shared-CpDPo3hJ.js → shared-Cvf3nhuq.js} +2 -2
- package/dist/{shared-DpLSpJIl.js → shared-pSfUCPxh.js} +1 -1
- package/dist/{skill-commands-BFzmZAfo.js → skill-commands-BY4BNcfR.js} +6 -6
- package/dist/{skill-commands-DdspcyAT.js → skill-commands-Ck3flWX7.js} +5 -5
- package/dist/{skill-scanner-D7mzXRXd.js → skill-scanner-BFXxq_hZ.js} +1 -1
- package/dist/{skills-Cto1PwoM.js → skills-CnAPWfca.js} +7 -7
- package/dist/{skills-DlvDyK8L.js → skills-DuPZzvnK.js} +4 -4
- package/dist/{skills-cli-BhKGhjbO.js → skills-cli-wSg-syqz.js} +10 -10
- package/dist/{skills-install-tr6wRWZj.js → skills-install-CQihNd2n.js} +6 -6
- package/dist/{skills-status-qjQ8XP0h.js → skills-status-D7aU-6Ob.js} +4 -4
- package/dist/{status-B8z0RCPf.js → status-CQ18Gd-d.js} +24 -24
- package/dist/{status-AEwcpHsu.js → status-DmPnFNgt.js} +2 -2
- package/dist/{status.update-CTi6vuWj.js → status.update-Cri65g-V.js} +1 -1
- package/dist/{store-kH9wHHbO.js → store-CR1Ag5tw.js} +2 -2
- package/dist/{store-wmxD_RdX.js → store-CvMgrKWx.js} +2 -2
- package/dist/{subagent-registry-Dclk-Ews.js → subagent-registry-CPeVtSZk.js} +11 -11
- package/dist/{subsystem-CGZX2PBV.js → subsystem-BTkYq-SM.js} +1 -1
- package/dist/{subsystem-B7s1gpl_.js → subsystem-tzu-rIAJ.js} +1 -1
- package/dist/{system-cli-DyVZ5udc.js → system-cli-DSF87U3I.js} +13 -13
- package/dist/{system-run-approval-context-CISBXlNw.js → system-run-approval-context-DtT5msEN.js} +1 -1
- package/dist/{system-run-command-qJdgzxLp.js → system-run-command-CrHlKsQv.js} +1 -1
- package/dist/{systemd-CaCR5CyM.js → systemd-C9CCJ2y5.js} +2 -2
- package/dist/{systemd-hints-DHu-HVFx.js → systemd-hints-D4_AmIA0.js} +2 -2
- package/dist/{systemd-linger-B7XlUHk_.js → systemd-linger-BRBtRm6O.js} +2 -2
- package/dist/{table-B9AmL3M1.js → table-PG064F0C.js} +2 -2
- package/dist/{tables-DjMlciHF.js → tables-5k-zOZ-s.js} +1 -1
- package/dist/{tables-g9xkflht.js → tables-Ca5i1iM6.js} +1 -1
- package/dist/{tailscale-B5Irc_Bi.js → tailscale-Dr3FvwTm.js} +2 -2
- package/dist/{target-errors-CtMvHKax.js → target-errors-BPfQrPim.js} +2 -2
- package/dist/{target-errors-bLIVFsbF.js → target-errors-BhRMVh6a.js} +2 -2
- package/dist/{tokens-Dg-QZ_pN.js → tokens-BRLyURxW.js} +1 -1
- package/dist/{tokens-B2bEUMr5.js → tokens-DY5TC4xI.js} +1 -1
- package/dist/{tool-display-Dac7lHGW.js → tool-display-1HTlk4mF.js} +2 -2
- package/dist/{tool-images-upeV0xA7.js → tool-images-ByP8vQ_u.js} +2 -2
- package/dist/{tool-images-CHqepyF_.js → tool-images-CcGZpzmq.js} +2 -2
- package/dist/{tool-loop-detection-BpnogMb3.js → tool-loop-detection-BNGetx3Z.js} +2 -2
- package/dist/{tool-loop-detection-C5VjmhPJ.js → tool-loop-detection-BxLycal4.js} +2 -2
- package/dist/{trash-CUFiyQN5.js → trash-CHnKIQrP.js} +1 -1
- package/dist/{tui-Bne3YNiw.js → tui-BmvrLAnW.js} +9 -9
- package/dist/{tui-cli-D0Z-rcUe.js → tui-cli-Dm28GC4T.js} +39 -39
- package/dist/{update-D79ppbMQ.js → update-D96LyJ5s.js} +3 -3
- package/dist/{update-cli-8Tk6PCmD.js → update-cli-Di_N9xCB.js} +115 -115
- package/dist/{update-cli-Bobm67f-.js → update-cli-DraOIip8.js} +9 -9
- package/dist/{update-runner-B4xzPa4-.js → update-runner-BJRwxU_y.js} +5 -5
- package/dist/{update-runner-C4NjVy9-.js → update-runner-BQlZS5zz.js} +1 -1
- package/dist/{utils-CXzXXV2o.js → utils-BfmeFj7S.js} +2 -2
- package/dist/{utils-BB3tnxio.js → utils-CTFLl_ji.js} +2 -2
- package/dist/{web-7nT90W2f.js → web-Cp8ceOUo.js} +63 -63
- package/dist/{web-DPSpgc_K.js → web-CrYZNxAg.js} +3 -3
- package/dist/web-D77Xu1Fp.js +123 -0
- package/dist/{web-9J12F46d.js → web-DzfcaLnK.js} +3 -3
- package/dist/{webhooks-cli-2N03q0iY.js → webhooks-cli-DLVMYO3R.js} +11 -11
- package/dist/{whatsapp-actions-Da9VWDOd.js → whatsapp-actions-DbPcN6JQ.js} +23 -23
- package/dist/{whatsapp-actions-Cms8wQM1.js → whatsapp-actions-De803Fwb.js} +22 -22
- package/dist/{widearea-dns-FDdFH5E8.js → widearea-dns-DJVz6r4U.js} +1 -1
- package/dist/{with-timeout-DEdycYxq.js → with-timeout-Bz8F3xNq.js} +5 -5
- package/dist/{workspace-D3pARwoB.js → workspace-BHN1rb4L.js} +3 -3
- package/dist/{workspace-nJ4KDY5w.js → workspace-DBFSzT6O.js} +2 -2
- package/dist/{workspace-dirs-SsExQ3Bz.js → workspace-dirs-C34pt6Pa.js} +1 -1
- package/extensions/acpx/package.json +1 -1
- package/extensions/bluebubbles/package.json +1 -1
- package/extensions/copilot-proxy/package.json +1 -1
- package/extensions/diagnostics-otel/package.json +1 -1
- package/extensions/discord/package.json +1 -1
- package/extensions/feishu/package.json +1 -1
- package/extensions/google-gemini-cli-auth/package.json +1 -1
- package/extensions/googlechat/package.json +1 -1
- package/extensions/hand/package.json +1 -1
- package/extensions/imessage/package.json +1 -1
- package/extensions/irc/package.json +1 -1
- package/extensions/line/package.json +1 -1
- package/extensions/llm-task/package.json +1 -1
- package/extensions/matrix/package.json +1 -1
- package/extensions/mattermost/package.json +1 -1
- package/extensions/memory-core/package.json +1 -1
- package/extensions/memory-lancedb/package.json +1 -1
- package/extensions/minimax-portal-auth/package.json +1 -1
- package/extensions/msteams/package.json +1 -1
- package/extensions/nextcloud-talk/package.json +1 -1
- package/extensions/nostr/package.json +1 -1
- package/extensions/open-prose/package.json +1 -1
- package/extensions/signal/package.json +1 -1
- package/extensions/slack/package.json +1 -1
- package/extensions/synology-chat/package.json +1 -1
- package/extensions/telegram/package.json +1 -1
- package/extensions/tlon/package.json +1 -1
- package/extensions/twitch/package.json +1 -1
- package/extensions/voice-call/package.json +1 -1
- package/extensions/whatsapp/package.json +1 -1
- package/extensions/zalo/package.json +1 -1
- package/extensions/zalouser/package.json +1 -1
- package/package.json +1 -1
- package/dist/cli-DEE_ketW.js +0 -162
- package/dist/emergency-stop-Br57IwSQ.js +0 -113
- package/dist/emergency-stop-BtasjDnU.js +0 -162
- package/dist/register.configure-DZ9OCp0V.js +0 -168
- package/dist/web-Dqy4kqC9.js +0 -123
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
2
|
-
import { t as CONFIG_DIR } from "./utils-
|
|
2
|
+
import { t as CONFIG_DIR } from "./utils-BfmeFj7S.js";
|
|
3
3
|
import path from "node:path";
|
|
4
4
|
import { promisify } from "node:util";
|
|
5
5
|
import fs from "node:fs/promises";
|
|
@@ -10,6 +10,7 @@ var anton_exports = /* @__PURE__ */ __exportAll({
|
|
|
10
10
|
antonStatus: () => antonStatus,
|
|
11
11
|
antonStop: () => antonStop,
|
|
12
12
|
formatProgressMessage: () => formatProgressMessage,
|
|
13
|
+
resolveAntonExecutionConfig: () => resolveAntonExecutionConfig,
|
|
13
14
|
runAnton: () => runAnton
|
|
14
15
|
});
|
|
15
16
|
const ANTON_STATE_PATH = path.join(CONFIG_DIR, "anton.state.json");
|
|
@@ -94,73 +95,101 @@ function buildDirectTaskPrompt(task) {
|
|
|
94
95
|
].join("\n");
|
|
95
96
|
}
|
|
96
97
|
function buildDiscoveryPrompt(task, taskFile, planFilePath) {
|
|
97
|
-
return `You are running
|
|
98
|
+
return `You are a coding assistant running discovery for a task orchestrator.
|
|
98
99
|
|
|
99
|
-
##
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
- Read the codebase to understand what needs to change.
|
|
100
|
+
## YOUR JOB
|
|
101
|
+
Analyze the codebase and write a detailed implementation plan to a file.
|
|
102
|
+
You will NOT implement anything yourself — a separate agent will do that using your plan.
|
|
103
103
|
|
|
104
104
|
## TASK
|
|
105
105
|
From task file: ${taskFile}
|
|
106
106
|
Task: ${task}
|
|
107
107
|
|
|
108
|
-
##
|
|
108
|
+
## WHAT YOU MUST DO
|
|
109
109
|
|
|
110
|
-
|
|
111
|
-
|
|
110
|
+
1. Use the read tool to examine relevant source files, configs, tests, and docs.
|
|
111
|
+
2. Understand what currently exists and what needs to change.
|
|
112
|
+
3. Use the write tool to create the plan file at: ${planFilePath}
|
|
112
113
|
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
- Files to modify/create
|
|
121
|
-
- How to verify (test commands)
|
|
122
|
-
4. Verify the file exists and is non-empty
|
|
123
|
-
5. Return ONLY: {"status":"incomplete","filename":"${planFilePath}"}
|
|
114
|
+
The plan file MUST contain:
|
|
115
|
+
- The task description
|
|
116
|
+
- What currently exists (files you read, current behavior)
|
|
117
|
+
- What specifically needs to change and why
|
|
118
|
+
- Step-by-step implementation instructions (specific enough that another agent can follow them)
|
|
119
|
+
- Which files to modify or create, with the exact changes needed
|
|
120
|
+
- How to verify the changes work (test commands, expected output)
|
|
124
121
|
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
}
|
|
128
|
-
function buildReviewPrompt(planFilePath) {
|
|
129
|
-
return `Review this implementation plan and improve it:
|
|
130
|
-
${planFilePath}
|
|
122
|
+
4. After writing the plan file, return ONLY this JSON:
|
|
123
|
+
{"status":"incomplete","filename":"${planFilePath}"}
|
|
131
124
|
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
- Opportunities to reuse existing code
|
|
135
|
-
- Unclear or ambiguous steps
|
|
136
|
-
- Missing test scenarios
|
|
125
|
+
If you are CERTAIN the task is already complete (you verified with tools), return:
|
|
126
|
+
{"status":"complete","filename":""}
|
|
137
127
|
|
|
138
|
-
|
|
128
|
+
## IMPORTANT
|
|
129
|
+
- You MUST use tools (read, exec, write). Do not skip straight to returning JSON.
|
|
130
|
+
- Do not modify any source files other than the plan file above.
|
|
131
|
+
- The quality of your plan directly determines whether the task succeeds.`;
|
|
132
|
+
}
|
|
133
|
+
function buildReviewPrompt(planFilePath) {
|
|
134
|
+
return `You are reviewing an implementation plan written by another agent.
|
|
139
135
|
|
|
140
|
-
|
|
141
|
-
|
|
136
|
+
1. Use the read tool to open: ${planFilePath}
|
|
137
|
+
2. Read the plan carefully. Check for:
|
|
138
|
+
- Missing edge cases or unclear steps
|
|
139
|
+
- Opportunities to reuse existing code
|
|
140
|
+
- Missing test scenarios or verification steps
|
|
141
|
+
- Whether the file paths and change descriptions are specific enough for another agent to follow
|
|
142
|
+
3. Use the write tool to update the SAME file in-place with your improvements.
|
|
143
|
+
4. After updating, return: {"status":"ready","filename":"${planFilePath}"}
|
|
142
144
|
|
|
143
|
-
Do not
|
|
144
|
-
Return JSON only. No markdown fences. No commentary.`;
|
|
145
|
+
Do not skip reading the file. Do not return JSON without first reading and updating the plan.`;
|
|
145
146
|
}
|
|
146
147
|
function buildImplementationPrompt(task, planFilePath) {
|
|
147
148
|
return [
|
|
148
|
-
|
|
149
|
-
"A planning agent has already analyzed the codebase and written a detailed spec.",
|
|
149
|
+
`Complete this task: ${task}`,
|
|
150
150
|
"",
|
|
151
|
-
`
|
|
151
|
+
`An implementation plan is available at: ${planFilePath}`,
|
|
152
|
+
"Read it first, then follow its instructions.",
|
|
152
153
|
"",
|
|
153
|
-
|
|
154
|
+
"You MUST use the edit or write tool to modify the actual source files.",
|
|
155
|
+
"Describing changes in text or showing diffs without applying them does NOT count.",
|
|
156
|
+
"Do not ask for confirmation — apply the changes now.",
|
|
154
157
|
"",
|
|
155
|
-
"
|
|
156
|
-
"
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
158
|
+
"After making the edits, run any verification steps from the plan.",
|
|
159
|
+
"Then return a brief summary of what you changed."
|
|
160
|
+
].join("\n");
|
|
161
|
+
}
|
|
162
|
+
function buildImplementationRetryPrompt(task, planFilePath) {
|
|
163
|
+
return [
|
|
164
|
+
"Your previous implementation attempt made zero repository changes.",
|
|
165
|
+
`Task: ${task}`,
|
|
166
|
+
`Plan file: ${planFilePath}`,
|
|
167
|
+
"",
|
|
168
|
+
"You must now perform actual file edits in this turn.",
|
|
169
|
+
"Required sequence:",
|
|
170
|
+
"1) Read the plan file.",
|
|
171
|
+
"2) Use edit/write to modify repository files.",
|
|
172
|
+
"3) Optionally run verification.",
|
|
173
|
+
"4) Return a short summary.",
|
|
160
174
|
"",
|
|
161
|
-
"
|
|
175
|
+
"If you only provide analysis/diff text without edit/write tool calls, this attempt fails."
|
|
162
176
|
].join("\n");
|
|
163
177
|
}
|
|
178
|
+
function resolveAntonExecutionConfig(params) {
|
|
179
|
+
const antonCfg = params.config ?? {};
|
|
180
|
+
const preflightCfg = antonCfg.preflight ?? {};
|
|
181
|
+
const requestedMode = params.modeOverride ?? antonCfg.mode ?? "direct";
|
|
182
|
+
const mode = requestedMode === "preflight" && preflightCfg.enabled === false ? "direct" : requestedMode;
|
|
183
|
+
const taskTimeoutSec = antonCfg.taskTimeoutSec ?? 1200;
|
|
184
|
+
return {
|
|
185
|
+
mode,
|
|
186
|
+
requirementsReview: antonCfg.requirementsReview ?? preflightCfg.requirementsReview ?? false,
|
|
187
|
+
taskTimeoutSec,
|
|
188
|
+
discoveryTimeoutSec: antonCfg.discoveryTimeoutSec ?? preflightCfg.discoveryTimeoutSec ?? taskTimeoutSec,
|
|
189
|
+
reviewTimeoutSec: antonCfg.reviewTimeoutSec ?? preflightCfg.reviewTimeoutSec ?? taskTimeoutSec,
|
|
190
|
+
preflightMaxRetries: antonCfg.preflightMaxRetries ?? preflightCfg.maxRetries ?? 2
|
|
191
|
+
};
|
|
192
|
+
}
|
|
164
193
|
function formatDuration(ms) {
|
|
165
194
|
const seconds = Math.floor(ms / 1e3);
|
|
166
195
|
if (seconds < 60) return `${seconds}s`;
|
|
@@ -218,14 +247,14 @@ async function antonStop(runtime) {
|
|
|
218
247
|
/** Load Anton config from the IdleHands config file. */
|
|
219
248
|
async function loadAntonConfig() {
|
|
220
249
|
try {
|
|
221
|
-
const { loadConfig } = await import("./model-selection-
|
|
250
|
+
const { loadConfig } = await import("./model-selection-Df4-bBn3.js").then((n) => n.Mt);
|
|
222
251
|
return loadConfig().anton ?? {};
|
|
223
252
|
} catch {
|
|
224
253
|
return {};
|
|
225
254
|
}
|
|
226
255
|
}
|
|
227
256
|
async function runAgentTask(args) {
|
|
228
|
-
const { agentCliCommand } = await import("./agent-via-gateway-
|
|
257
|
+
const { agentCliCommand } = await import("./agent-via-gateway-DwRsFLFS.js").then((n) => n.n);
|
|
229
258
|
const extraSystemPrompt = args.workspaceDir ? `Your working directory is: ${args.workspaceDir}\nAll file paths are relative to this directory. Use this as your cwd for all operations.` : void 0;
|
|
230
259
|
const result = await agentCliCommand({
|
|
231
260
|
message: args.message,
|
|
@@ -326,18 +355,18 @@ function normalizeDiscoveryFilename(filename, expectedPlanFile) {
|
|
|
326
355
|
return path.resolve(trimmed);
|
|
327
356
|
}
|
|
328
357
|
function buildDiscoveryRepairPrompt(task, taskFile, planFilePath) {
|
|
329
|
-
return `
|
|
358
|
+
return `Your previous attempt did not produce a valid plan file. Try again.
|
|
330
359
|
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
2) Verify the file exists and is non-empty
|
|
334
|
-
3) Return ONLY strict JSON: {"status":"incomplete","filename":"${planFilePath}"}
|
|
360
|
+
Task file: ${taskFile}
|
|
361
|
+
Task: ${task}
|
|
335
362
|
|
|
336
|
-
|
|
363
|
+
You MUST:
|
|
364
|
+
1. Use the read tool to examine the relevant source files in this repository.
|
|
365
|
+
2. Use the write tool to create a detailed implementation plan at: ${planFilePath}
|
|
366
|
+
The plan must include: what exists now, what needs to change, specific file edits, and verification steps.
|
|
367
|
+
3. After writing the file, return: {"status":"incomplete","filename":"${planFilePath}"}
|
|
337
368
|
|
|
338
|
-
Do not
|
|
339
|
-
Task file: ${taskFile}
|
|
340
|
-
Task: ${task}`;
|
|
369
|
+
Do not skip tool usage. Do not return JSON without first writing the plan file.`;
|
|
341
370
|
}
|
|
342
371
|
async function tryPersistPlanFallback(params) {
|
|
343
372
|
const planText = (((typeof params.parsed?.planMarkdown === "string" ? params.parsed.planMarkdown : void 0) ?? (typeof params.parsed?.plan === "string" ? params.parsed.plan : void 0))?.trim() || extractPlanMarkdownFromText(params.rawText) || "").trim();
|
|
@@ -591,14 +620,18 @@ async function runAnton(args) {
|
|
|
591
620
|
return;
|
|
592
621
|
}
|
|
593
622
|
const antonCfg = await loadAntonConfig();
|
|
594
|
-
const
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
const
|
|
599
|
-
const
|
|
623
|
+
const execution = resolveAntonExecutionConfig({
|
|
624
|
+
config: antonCfg,
|
|
625
|
+
modeOverride: args.mode
|
|
626
|
+
});
|
|
627
|
+
const mode = execution.mode;
|
|
628
|
+
const requirementsReview = execution.requirementsReview;
|
|
629
|
+
const taskTimeout = execution.taskTimeoutSec;
|
|
630
|
+
const discoveryTimeout = execution.discoveryTimeoutSec;
|
|
631
|
+
const reviewTimeout = execution.reviewTimeoutSec;
|
|
632
|
+
const preflightMaxRetries = execution.preflightMaxRetries;
|
|
600
633
|
const planDir = antonCfg.planDir ? path.resolve(antonCfg.planDir) : path.resolve(path.dirname(filePath), ".agents", "tasks");
|
|
601
|
-
const { loadConfig } = await import("./model-selection-
|
|
634
|
+
const { loadConfig } = await import("./model-selection-Df4-bBn3.js").then((n) => n.Mt);
|
|
602
635
|
const cfg = loadConfig();
|
|
603
636
|
const defaultTimeout = String(Number.isFinite(args.timeoutSec) && (args.timeoutSec ?? 0) > 0 ? args.timeoutSec : cfg.agents?.defaults?.timeoutSeconds ?? taskTimeout);
|
|
604
637
|
await acquireLock(Boolean(args.force));
|
|
@@ -738,8 +771,29 @@ async function runAnton(args) {
|
|
|
738
771
|
deps: args.deps,
|
|
739
772
|
workspaceDir: args.workspaceDir
|
|
740
773
|
});
|
|
741
|
-
|
|
742
|
-
if (mode === "preflight" && changedBeforeTask !== null && changedAfter !== null && changedAfter <= changedBeforeTask)
|
|
774
|
+
let changedAfter = await getGitChangedFileCount(gitCwd, changeIgnores);
|
|
775
|
+
if (mode === "preflight" && changedBeforeTask !== null && changedAfter !== null && changedAfter <= changedBeforeTask) {
|
|
776
|
+
const retrySessionId = `anton-impl-retry-${Date.now()}-${taskNum}`;
|
|
777
|
+
await notify({
|
|
778
|
+
phase: "task_agent_spawned",
|
|
779
|
+
index: taskNum,
|
|
780
|
+
total: pending.length,
|
|
781
|
+
task: `${task.text} (implementation retry)`,
|
|
782
|
+
sessionId: retrySessionId
|
|
783
|
+
});
|
|
784
|
+
await runAgentTask({
|
|
785
|
+
message: buildImplementationRetryPrompt(task.text, planFile ?? ""),
|
|
786
|
+
sessionId: retrySessionId,
|
|
787
|
+
timeout: defaultTimeout,
|
|
788
|
+
agent: args.agent,
|
|
789
|
+
to: args.to,
|
|
790
|
+
runtime: args.runtime,
|
|
791
|
+
deps: args.deps,
|
|
792
|
+
workspaceDir: args.workspaceDir
|
|
793
|
+
});
|
|
794
|
+
changedAfter = await getGitChangedFileCount(gitCwd, changeIgnores);
|
|
795
|
+
if (changedAfter !== null && changedAfter <= changedBeforeTask) throw new Error("Implementation made no repository changes after retry; refusing to mark task complete");
|
|
796
|
+
}
|
|
743
797
|
const updated = markTaskDone(await fs.readFile(filePath, "utf8"), task.line);
|
|
744
798
|
await fs.writeFile(filePath, updated, "utf8");
|
|
745
799
|
completed += 1;
|
|
@@ -88,73 +88,101 @@ function buildDirectTaskPrompt(task) {
|
|
|
88
88
|
].join("\n");
|
|
89
89
|
}
|
|
90
90
|
function buildDiscoveryPrompt(task, taskFile, planFilePath) {
|
|
91
|
-
return `You are running
|
|
91
|
+
return `You are a coding assistant running discovery for a task orchestrator.
|
|
92
92
|
|
|
93
|
-
##
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
- Read the codebase to understand what needs to change.
|
|
93
|
+
## YOUR JOB
|
|
94
|
+
Analyze the codebase and write a detailed implementation plan to a file.
|
|
95
|
+
You will NOT implement anything yourself — a separate agent will do that using your plan.
|
|
97
96
|
|
|
98
97
|
## TASK
|
|
99
98
|
From task file: ${taskFile}
|
|
100
99
|
Task: ${task}
|
|
101
100
|
|
|
102
|
-
##
|
|
101
|
+
## WHAT YOU MUST DO
|
|
103
102
|
|
|
104
|
-
|
|
105
|
-
|
|
103
|
+
1. Use the read tool to examine relevant source files, configs, tests, and docs.
|
|
104
|
+
2. Understand what currently exists and what needs to change.
|
|
105
|
+
3. Use the write tool to create the plan file at: ${planFilePath}
|
|
106
106
|
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
- Files to modify/create
|
|
115
|
-
- How to verify (test commands)
|
|
116
|
-
4. Verify the file exists and is non-empty
|
|
117
|
-
5. Return ONLY: {"status":"incomplete","filename":"${planFilePath}"}
|
|
107
|
+
The plan file MUST contain:
|
|
108
|
+
- The task description
|
|
109
|
+
- What currently exists (files you read, current behavior)
|
|
110
|
+
- What specifically needs to change and why
|
|
111
|
+
- Step-by-step implementation instructions (specific enough that another agent can follow them)
|
|
112
|
+
- Which files to modify or create, with the exact changes needed
|
|
113
|
+
- How to verify the changes work (test commands, expected output)
|
|
118
114
|
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
}
|
|
122
|
-
function buildReviewPrompt(planFilePath) {
|
|
123
|
-
return `Review this implementation plan and improve it:
|
|
124
|
-
${planFilePath}
|
|
115
|
+
4. After writing the plan file, return ONLY this JSON:
|
|
116
|
+
{"status":"incomplete","filename":"${planFilePath}"}
|
|
125
117
|
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
- Opportunities to reuse existing code
|
|
129
|
-
- Unclear or ambiguous steps
|
|
130
|
-
- Missing test scenarios
|
|
118
|
+
If you are CERTAIN the task is already complete (you verified with tools), return:
|
|
119
|
+
{"status":"complete","filename":""}
|
|
131
120
|
|
|
132
|
-
|
|
121
|
+
## IMPORTANT
|
|
122
|
+
- You MUST use tools (read, exec, write). Do not skip straight to returning JSON.
|
|
123
|
+
- Do not modify any source files other than the plan file above.
|
|
124
|
+
- The quality of your plan directly determines whether the task succeeds.`;
|
|
125
|
+
}
|
|
126
|
+
function buildReviewPrompt(planFilePath) {
|
|
127
|
+
return `You are reviewing an implementation plan written by another agent.
|
|
133
128
|
|
|
134
|
-
|
|
135
|
-
|
|
129
|
+
1. Use the read tool to open: ${planFilePath}
|
|
130
|
+
2. Read the plan carefully. Check for:
|
|
131
|
+
- Missing edge cases or unclear steps
|
|
132
|
+
- Opportunities to reuse existing code
|
|
133
|
+
- Missing test scenarios or verification steps
|
|
134
|
+
- Whether the file paths and change descriptions are specific enough for another agent to follow
|
|
135
|
+
3. Use the write tool to update the SAME file in-place with your improvements.
|
|
136
|
+
4. After updating, return: {"status":"ready","filename":"${planFilePath}"}
|
|
136
137
|
|
|
137
|
-
Do not
|
|
138
|
-
Return JSON only. No markdown fences. No commentary.`;
|
|
138
|
+
Do not skip reading the file. Do not return JSON without first reading and updating the plan.`;
|
|
139
139
|
}
|
|
140
140
|
function buildImplementationPrompt(task, planFilePath) {
|
|
141
141
|
return [
|
|
142
|
-
|
|
143
|
-
"A planning agent has already analyzed the codebase and written a detailed spec.",
|
|
142
|
+
`Complete this task: ${task}`,
|
|
144
143
|
"",
|
|
145
|
-
`
|
|
144
|
+
`An implementation plan is available at: ${planFilePath}`,
|
|
145
|
+
"Read it first, then follow its instructions.",
|
|
146
146
|
"",
|
|
147
|
-
|
|
147
|
+
"You MUST use the edit or write tool to modify the actual source files.",
|
|
148
|
+
"Describing changes in text or showing diffs without applying them does NOT count.",
|
|
149
|
+
"Do not ask for confirmation — apply the changes now.",
|
|
148
150
|
"",
|
|
149
|
-
"
|
|
150
|
-
"
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
151
|
+
"After making the edits, run any verification steps from the plan.",
|
|
152
|
+
"Then return a brief summary of what you changed."
|
|
153
|
+
].join("\n");
|
|
154
|
+
}
|
|
155
|
+
function buildImplementationRetryPrompt(task, planFilePath) {
|
|
156
|
+
return [
|
|
157
|
+
"Your previous implementation attempt made zero repository changes.",
|
|
158
|
+
`Task: ${task}`,
|
|
159
|
+
`Plan file: ${planFilePath}`,
|
|
160
|
+
"",
|
|
161
|
+
"You must now perform actual file edits in this turn.",
|
|
162
|
+
"Required sequence:",
|
|
163
|
+
"1) Read the plan file.",
|
|
164
|
+
"2) Use edit/write to modify repository files.",
|
|
165
|
+
"3) Optionally run verification.",
|
|
166
|
+
"4) Return a short summary.",
|
|
154
167
|
"",
|
|
155
|
-
"
|
|
168
|
+
"If you only provide analysis/diff text without edit/write tool calls, this attempt fails."
|
|
156
169
|
].join("\n");
|
|
157
170
|
}
|
|
171
|
+
function resolveAntonExecutionConfig(params) {
|
|
172
|
+
const antonCfg = params.config ?? {};
|
|
173
|
+
const preflightCfg = antonCfg.preflight ?? {};
|
|
174
|
+
const requestedMode = params.modeOverride ?? antonCfg.mode ?? "direct";
|
|
175
|
+
const mode = requestedMode === "preflight" && preflightCfg.enabled === false ? "direct" : requestedMode;
|
|
176
|
+
const taskTimeoutSec = antonCfg.taskTimeoutSec ?? 1200;
|
|
177
|
+
return {
|
|
178
|
+
mode,
|
|
179
|
+
requirementsReview: antonCfg.requirementsReview ?? preflightCfg.requirementsReview ?? false,
|
|
180
|
+
taskTimeoutSec,
|
|
181
|
+
discoveryTimeoutSec: antonCfg.discoveryTimeoutSec ?? preflightCfg.discoveryTimeoutSec ?? taskTimeoutSec,
|
|
182
|
+
reviewTimeoutSec: antonCfg.reviewTimeoutSec ?? preflightCfg.reviewTimeoutSec ?? taskTimeoutSec,
|
|
183
|
+
preflightMaxRetries: antonCfg.preflightMaxRetries ?? preflightCfg.maxRetries ?? 2
|
|
184
|
+
};
|
|
185
|
+
}
|
|
158
186
|
function formatDuration(ms) {
|
|
159
187
|
const seconds = Math.floor(ms / 1e3);
|
|
160
188
|
if (seconds < 60) return `${seconds}s`;
|
|
@@ -219,7 +247,7 @@ async function loadAntonConfig() {
|
|
|
219
247
|
}
|
|
220
248
|
}
|
|
221
249
|
async function runAgentTask(args) {
|
|
222
|
-
const { agentCliCommand } = await import("./agent-via-gateway-
|
|
250
|
+
const { agentCliCommand } = await import("./agent-via-gateway-CugFJzVP.js");
|
|
223
251
|
const extraSystemPrompt = args.workspaceDir ? `Your working directory is: ${args.workspaceDir}\nAll file paths are relative to this directory. Use this as your cwd for all operations.` : void 0;
|
|
224
252
|
const result = await agentCliCommand({
|
|
225
253
|
message: args.message,
|
|
@@ -320,18 +348,18 @@ function normalizeDiscoveryFilename(filename, expectedPlanFile) {
|
|
|
320
348
|
return path.resolve(trimmed);
|
|
321
349
|
}
|
|
322
350
|
function buildDiscoveryRepairPrompt(task, taskFile, planFilePath) {
|
|
323
|
-
return `
|
|
351
|
+
return `Your previous attempt did not produce a valid plan file. Try again.
|
|
324
352
|
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
2) Verify the file exists and is non-empty
|
|
328
|
-
3) Return ONLY strict JSON: {"status":"incomplete","filename":"${planFilePath}"}
|
|
353
|
+
Task file: ${taskFile}
|
|
354
|
+
Task: ${task}
|
|
329
355
|
|
|
330
|
-
|
|
356
|
+
You MUST:
|
|
357
|
+
1. Use the read tool to examine the relevant source files in this repository.
|
|
358
|
+
2. Use the write tool to create a detailed implementation plan at: ${planFilePath}
|
|
359
|
+
The plan must include: what exists now, what needs to change, specific file edits, and verification steps.
|
|
360
|
+
3. After writing the file, return: {"status":"incomplete","filename":"${planFilePath}"}
|
|
331
361
|
|
|
332
|
-
Do not
|
|
333
|
-
Task file: ${taskFile}
|
|
334
|
-
Task: ${task}`;
|
|
362
|
+
Do not skip tool usage. Do not return JSON without first writing the plan file.`;
|
|
335
363
|
}
|
|
336
364
|
async function tryPersistPlanFallback(params) {
|
|
337
365
|
const planText = (((typeof params.parsed?.planMarkdown === "string" ? params.parsed.planMarkdown : void 0) ?? (typeof params.parsed?.plan === "string" ? params.parsed.plan : void 0))?.trim() || extractPlanMarkdownFromText(params.rawText) || "").trim();
|
|
@@ -585,12 +613,16 @@ async function runAnton(args) {
|
|
|
585
613
|
return;
|
|
586
614
|
}
|
|
587
615
|
const antonCfg = await loadAntonConfig();
|
|
588
|
-
const
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
const
|
|
593
|
-
const
|
|
616
|
+
const execution = resolveAntonExecutionConfig({
|
|
617
|
+
config: antonCfg,
|
|
618
|
+
modeOverride: args.mode
|
|
619
|
+
});
|
|
620
|
+
const mode = execution.mode;
|
|
621
|
+
const requirementsReview = execution.requirementsReview;
|
|
622
|
+
const taskTimeout = execution.taskTimeoutSec;
|
|
623
|
+
const discoveryTimeout = execution.discoveryTimeoutSec;
|
|
624
|
+
const reviewTimeout = execution.reviewTimeoutSec;
|
|
625
|
+
const preflightMaxRetries = execution.preflightMaxRetries;
|
|
594
626
|
const planDir = antonCfg.planDir ? path.resolve(antonCfg.planDir) : path.resolve(path.dirname(filePath), ".agents", "tasks");
|
|
595
627
|
const { loadConfig } = await import("./model-selection-D3Jhcvg-.js").then((n) => n.F);
|
|
596
628
|
const cfg = loadConfig();
|
|
@@ -732,8 +764,29 @@ async function runAnton(args) {
|
|
|
732
764
|
deps: args.deps,
|
|
733
765
|
workspaceDir: args.workspaceDir
|
|
734
766
|
});
|
|
735
|
-
|
|
736
|
-
if (mode === "preflight" && changedBeforeTask !== null && changedAfter !== null && changedAfter <= changedBeforeTask)
|
|
767
|
+
let changedAfter = await getGitChangedFileCount(gitCwd, changeIgnores);
|
|
768
|
+
if (mode === "preflight" && changedBeforeTask !== null && changedAfter !== null && changedAfter <= changedBeforeTask) {
|
|
769
|
+
const retrySessionId = `anton-impl-retry-${Date.now()}-${taskNum}`;
|
|
770
|
+
await notify({
|
|
771
|
+
phase: "task_agent_spawned",
|
|
772
|
+
index: taskNum,
|
|
773
|
+
total: pending.length,
|
|
774
|
+
task: `${task.text} (implementation retry)`,
|
|
775
|
+
sessionId: retrySessionId
|
|
776
|
+
});
|
|
777
|
+
await runAgentTask({
|
|
778
|
+
message: buildImplementationRetryPrompt(task.text, planFile ?? ""),
|
|
779
|
+
sessionId: retrySessionId,
|
|
780
|
+
timeout: defaultTimeout,
|
|
781
|
+
agent: args.agent,
|
|
782
|
+
to: args.to,
|
|
783
|
+
runtime: args.runtime,
|
|
784
|
+
deps: args.deps,
|
|
785
|
+
workspaceDir: args.workspaceDir
|
|
786
|
+
});
|
|
787
|
+
changedAfter = await getGitChangedFileCount(gitCwd, changeIgnores);
|
|
788
|
+
if (changedAfter !== null && changedAfter <= changedBeforeTask) throw new Error("Implementation made no repository changes after retry; refusing to mark task complete");
|
|
789
|
+
}
|
|
737
790
|
const updated = markTaskDone(await fs.readFile(filePath, "utf8"), task.line);
|
|
738
791
|
await fs.writeFile(filePath, updated, "utf8");
|
|
739
792
|
completed += 1;
|