@visorcraft/idlehands 4.0.18 → 4.0.19
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/CHANGELOG.md +7 -0
- package/dist/{accounts-upx5iuke.js → accounts-BDVs8LTu.js} +1 -1
- package/dist/{accounts-yD5yI-jP.js → accounts-CIvVRRHb.js} +1 -1
- package/dist/{accounts-CRDMZUcg.js → accounts-Dk8mJIrQ.js} +6 -6
- package/dist/{acp-cli-COix-boa.js → acp-cli-B3uwVAGD.js} +2 -2
- package/dist/{acp-cli-B-7CXaeS.js → acp-cli-BEpWQbqb.js} +2 -2
- package/dist/{agent-scope-BVeQuh5x.js → agent-scope-DyP_tr7s.js} +4 -4
- package/dist/{agent-via-gateway-Cl2YwlXJ.js → agent-via-gateway-B03q92bw.js} +2 -2
- package/dist/{agent-via-gateway-pMCfUzW-.js → agent-via-gateway-B2Z_k_od.js} +60 -60
- package/dist/{agent-via-gateway-ClQrLbgo.js → agent-via-gateway-CUQG6kii.js} +2 -2
- package/dist/{agent-via-gateway-CC37LlPd.js → agent-via-gateway-Cn3iNSod.js} +7 -7
- package/dist/{agents-DrnGQroU.js → agents-DdTECKDf.js} +5 -5
- package/dist/{agents.config-BZPnYIMF.js → agents.config-CHtoYxr6.js} +1 -1
- package/dist/{agents.config-DfWZrbXn.js → agents.config-D2EbQiOx.js} +1 -1
- package/dist/{anton-BfrX2FMd.js → anton-D4vpCj_q.js} +32 -6
- package/dist/{anton-B-I7rEtn.js → anton-DsmttQbC.js} +36 -10
- package/dist/{anton-BrY-bWgq.js → anton-hH1PyE2C.js} +32 -6
- package/dist/{anton-BgKjig3B.js → anton-x7f6kIFP.js} +32 -6
- package/dist/{audio-preflight-aBtF0cRI.js → audio-preflight-BSlR2jEq.js} +35 -35
- package/dist/{audio-preflight-CSSlgO89.js → audio-preflight-vD3mDc6w.js} +4 -4
- package/dist/{audit-Bkd4fvVb.js → audit-C9PrbHng.js} +2 -2
- package/dist/{audit-BmaVRZSd.js → audit-CKeZnjft.js} +2 -2
- package/dist/{auth-choice-_C22dz9o.js → auth-choice-DRR52LJT.js} +2 -2
- package/dist/{auth-choice-DtvI4epn.js → auth-choice-DVoPuwEs.js} +2 -2
- package/dist/{auth-store-DQAd4LSE.js → auth-store-DXT-l7fO.js} +12 -12
- package/dist/{banner-B-UYZG8d.js → banner-CFKoGAzN.js} +1 -1
- package/dist/{bindings-B9L4cqmm.js → bindings-D3b5Fmc9.js} +2 -2
- package/dist/{browser-cli-Ddh5zEZN.js → browser-cli-Brb82I5e.js} +3 -3
- package/dist/{browser-cli-Ny1nHwqv.js → browser-cli-Ci6DpTnS.js} +3 -3
- package/dist/build-info.json +3 -3
- package/dist/bundled/boot-md/handler.js +60 -60
- package/dist/bundled/bootstrap-extra-files/handler.js +5 -5
- package/dist/bundled/command-logger/handler.js +3 -3
- package/dist/bundled/session-memory/handler.js +60 -60
- package/dist/{call-BRL23UCk.js → call-BpWhjuOg.js} +1 -1
- package/dist/{call-DuNslqj2.js → call-C82rD2Wn.js} +1 -1
- package/dist/{channel-activity-DOLX-uK1.js → channel-activity-D_TMOGQ0.js} +3 -3
- package/dist/{channel-options-C0iwLcfC.js → channel-options-B4oF7_V2.js} +1 -1
- package/dist/{channel-options-BbwNg4q_.js → channel-options-BU0E7BdU.js} +1 -1
- package/dist/{channel-web-BLxKeCXF.js → channel-web-0icuasR6.js} +2 -2
- package/dist/{channel-web-q6Ugfiks.js → channel-web-BDytDCrG.js} +2 -2
- package/dist/{channels-cli-DaRR8vAs.js → channels-cli-B2w32z11.js} +10 -10
- package/dist/{channels-cli-BtL1XuuK.js → channels-cli-DWaQsKP8.js} +10 -10
- package/dist/{chrome-Do5potHV.js → chrome-DEnkfZ9p.js} +9 -9
- package/dist/{chrome-D_SXDetO.js → chrome-_2tzVjVl.js} +17 -17
- package/dist/{chunk-BgScV6uo.js → chunk-CMpX7Jaz.js} +1 -1
- package/dist/cli/daemon-cli.js +1 -1
- package/dist/{cli-BjhrdeVd.js → cli-BVw2ja-q.js} +5 -5
- package/dist/{cli-CrUoGRuS.js → cli-Hplv9sD1.js} +5 -5
- package/dist/{client-DxH9hwLn.js → client-DtnD-ee9.js} +1 -0
- package/dist/{client-Brv1GCwX.js → client-udFMSDes.js} +1 -0
- package/dist/{command-registry-BZNlvfaM.js → command-registry-CWDCVzZv.js} +11 -11
- package/dist/{commands-registry-CK7aj_ri.js → commands-registry-j4vAzcF2.js} +5 -5
- package/dist/{completion-cli-p9W-g1Pe.js → completion-cli-CjERsZ27.js} +2 -2
- package/dist/{completion-cli-BIabgt7h.js → completion-cli-f5M3WVf8.js} +1 -1
- package/dist/{config-cli-B4nNEjK9.js → config-cli-B2gc8CV1.js} +1 -1
- package/dist/{config-cli-u4zbdm-e.js → config-cli-Bt7n6ZJS.js} +1 -1
- package/dist/{configure-BbDbMd5G.js → configure-BXsptBk3.js} +6 -6
- package/dist/{configure-Dj1JdeEI.js → configure-CKspMrI1.js} +6 -6
- package/dist/{cron-cli-Xml0Uww8.js → cron-cli-DQsnGQKs.js} +3 -3
- package/dist/{cron-cli-D4DXiD1C.js → cron-cli-DXZzPHDQ.js} +3 -3
- package/dist/{daemon-cli-yC6gq-yv.js → daemon-cli-DOG5Mivy.js} +2 -2
- package/dist/{daemon-cli-B1Ti51bt.js → daemon-cli-DUg-s4LG.js} +2 -2
- package/dist/daemon-cli.js +1 -0
- package/dist/{deliver-whAbSPLk.js → deliver-5FLCa6tB.js} +1 -1
- package/dist/{deliver-CJaM2zRY.js → deliver-CVTXl0Cv.js} +20 -20
- package/dist/{deps-CQzDLqTz.js → deps-BAMUVAdU.js} +6 -6
- package/dist/{deps-BMWq0kjy.js → deps-BbipxGPW.js} +1 -1
- package/dist/{deps-BuRud-p8.js → deps-CjWcQwlX.js} +1 -1
- package/dist/{deps-Dr9GpASq.js → deps-CwPrf7RC.js} +1 -1
- package/dist/{devices-cli-BNkO0Fey.js → devices-cli-DKK65S9Z.js} +2 -2
- package/dist/{devices-cli-Ck6s9sQQ.js → devices-cli-aiEJxYcN.js} +2 -2
- package/dist/{diagnostic-lz5wKsEe.js → diagnostic-4owMk4vH.js} +1 -1
- package/dist/{dock-6MgvdSqu.js → dock-BgOmHcbh.js} +6 -6
- package/dist/{doctor-completion-BLRGmusD.js → doctor-completion-C2-SDBd6.js} +1 -1
- package/dist/{doctor-completion-BeZMlZPb.js → doctor-completion-DB151YdP.js} +1 -1
- package/dist/emergency-stop-BldYLJq7.js +113 -0
- package/dist/{emergency-stop-CSSPAKHr.js → emergency-stop-CDozqde9.js} +5 -5
- package/dist/{emergency-stop-BEsjWvQL.js → emergency-stop-DpNGtfb4.js} +5 -5
- package/dist/{emergency-stop-BU-Vbk3V.js → emergency-stop-Lj33jqJJ.js} +7 -7
- package/dist/entry.js +1 -1
- package/dist/{env-B7b7MKfk.js → env-B5G1qwGc.js} +1 -1
- package/dist/{errors--Eb33_ji.js → errors-C_0nm4TJ.js} +1 -1
- package/dist/{exec-approvals-cli-CyjTnYfk.js → exec-approvals-cli-D6XUzs4j.js} +4 -4
- package/dist/{exec-approvals-cli-CNWOtvwX.js → exec-approvals-cli-DRoaRYPn.js} +4 -4
- package/dist/extensionAPI.js +7 -7
- package/dist/{fetch-guard-OZ_PCUyr.js → fetch-guard-iuQsIjqN.js} +1 -1
- package/dist/{frontmatter-p8nPDprK.js → frontmatter-BOudmHMS.js} +2 -2
- package/dist/{fs-safe-BEl8T_Vc.js → fs-safe-CYUaAFO9.js} +2 -2
- package/dist/{gateway-cli-BCHdAJHS.js → gateway-cli-Ccd1ukWq.js} +17 -14
- package/dist/{gateway-cli-Dumy2IVU.js → gateway-cli-lNUOd2_i.js} +17 -14
- package/dist/{gateway-rpc-CdfF0Zt5.js → gateway-rpc-5PTvwEfj.js} +1 -1
- package/dist/{gateway-rpc-Du-ZpDjh.js → gateway-rpc-BBFG1T-M.js} +1 -1
- package/dist/{gemini-auth-CA0K3QXj.js → gemini-auth-CIyaa44H.js} +2 -2
- package/dist/{github-copilot-token-DCg9Q9Ll.js → github-copilot-token-Dgt6cnsM.js} +7 -7
- package/dist/{health-CqdQAURH.js → health--GQAFTBr.js} +2 -2
- package/dist/{health-B3kk7l82.js → health-HEN6Wk9G.js} +2 -2
- package/dist/{hooks-cli-jMG5GST1.js → hooks-cli-DFrttZGb.js} +6 -6
- package/dist/{hooks-cli-Ba4woLl0.js → hooks-cli-Di8qrzIB.js} +6 -6
- package/dist/{image-BQ3RQWD8.js → image-COw__ACq.js} +6 -6
- package/dist/{image-BAsQlUqT.js → image-C_aN5P6-.js} +1 -1
- package/dist/{image-ops-ZNtLhD4c.js → image-ops-D1KtygWz.js} +1 -1
- package/dist/index.js +10 -10
- package/dist/{ir-DnyYtX4H.js → ir-B7IBoKLy.js} +5 -5
- package/dist/llm-slug-generator.js +60 -60
- package/dist/{local-roots-C9CA2f0R.js → local-roots-KN4Hp1yZ.js} +5 -5
- package/dist/{login-Cn1vc1bn.js → login-CFr5vJmR.js} +6 -6
- package/dist/{login-qr-Dj0NmRdg.js → login-qr-CFFFOjOl.js} +11 -11
- package/dist/{logs-cli-CH4mFhUt.js → logs-cli-4VQ9Iwiw.js} +3 -3
- package/dist/{logs-cli-BN5TN6bg.js → logs-cli-u0WmYxx7.js} +3 -3
- package/dist/{manager-DBd_2F6j.js → manager-BE_76jWB.js} +15 -15
- package/dist/{markdown-tables-CsrsXS80.js → markdown-tables-CzsockiZ.js} +1 -1
- package/dist/{message-channel-Cg9KtLfy.js → message-channel-C8QtrwEU.js} +1 -1
- package/dist/{model-selection-Vtu6d5Um.js → model-selection-1MMYqY6M.js} +41 -41
- package/dist/{models-cli-iLP9BnPA.js → models-cli-CMwszgSD.js} +6 -6
- package/dist/{models-cli-BaR1RccY.js → models-cli-DVAyIZ63.js} +7 -7
- package/dist/{models-C6GypzZ1.js → models-tZYpgts_.js} +3 -3
- package/dist/{node-cli-Ch7K7WtL.js → node-cli-BYzjxmUY.js} +1 -1
- package/dist/{node-cli-BiQaHamJ.js → node-cli-CgeiQGbv.js} +1 -1
- package/dist/{nodes-cli-tVCIBdL1.js → nodes-cli-DaE0WsOH.js} +3 -3
- package/dist/{nodes-cli-D_hUCPNt.js → nodes-cli-kNOtp0U0.js} +3 -3
- package/dist/{npm-resolution-DYUWHUe5.js → npm-resolution-By6bZkA-.js} +1 -1
- package/dist/{npm-resolution-CWxaTTrT.js → npm-resolution-DLSA4PTO.js} +1 -1
- package/dist/{onboard-DdBsJgzg.js → onboard-B6eOxpDM.js} +3 -3
- package/dist/{onboard-CinZ4CuY.js → onboard-CbXlbAx2.js} +3 -3
- package/dist/{onboard-channels-Bnwwq6TK.js → onboard-channels-BISq46-i.js} +2 -2
- package/dist/{onboard-channels-9XAEsgO-.js → onboard-channels-JPltbNGL.js} +2 -2
- package/dist/{onboard-helpers-Dp6wXNs7.js → onboard-helpers-DWivfzcc.js} +1 -1
- package/dist/{onboard-helpers-BQmbMJxJ.js → onboard-helpers-mzy38DiC.js} +1 -1
- package/dist/{onboard-remote-1ZZd5lcX.js → onboard-remote-BMo2C9Ae.js} +1 -1
- package/dist/{onboard-remote-CIjhaP2W.js → onboard-remote-LCBHijVE.js} +1 -1
- package/dist/{onboard-skills-BD_AS1Iy.js → onboard-skills-BrqATIYg.js} +1 -1
- package/dist/{onboard-skills-BsaUIuq6.js → onboard-skills-jFY9gaOu.js} +1 -1
- package/dist/{onboarding-C4oujn63.js → onboarding-Da3n7Rvs.js} +7 -7
- package/dist/{onboarding-DFvHWFqL.js → onboarding-DikyMlYG.js} +7 -7
- package/dist/{onboarding.finalize-BDWHPpyn.js → onboarding.finalize-Bp2ufMd0.js} +10 -10
- package/dist/{onboarding.finalize-DMhdDTvo.js → onboarding.finalize-CwYx5n3Z.js} +11 -11
- package/dist/{onboarding.gateway-config-CEQMyj8l.js → onboarding.gateway-config-Btu2gzgr.js} +3 -3
- package/dist/{onboarding.gateway-config-Czn7jKsq.js → onboarding.gateway-config-w3C9Yj3B.js} +3 -3
- package/dist/{outbound-BYm4JJli.js → outbound-BNh6PpQb.js} +6 -6
- package/dist/{outbound-attachment-DwaqvYNG.js → outbound-attachment-3I6GzwDe.js} +2 -2
- package/dist/{path-alias-guards-BnjbJzIQ.js → path-alias-guards-Cu1nXNMM.js} +1 -1
- package/dist/{paths-CkTEyLTV.js → paths-BYNVLNi_.js} +5 -5
- package/dist/{paths-0fcEvxu4.js → paths-D_qUel1T.js} +3 -3
- package/dist/{pi-embedded-Dap1HAGA.js → pi-embedded-Bc4KWuTe.js} +28 -27
- package/dist/{pi-embedded-BDp9JsrM.js → pi-embedded-BeyOxL6U.js} +177 -176
- package/dist/{pi-embedded-helpers-Ct2rwp-P.js → pi-embedded-helpers-C2j0LfJC.js} +4 -4
- package/dist/{pi-embedded-helpers-B1CKQ81Y.js → pi-embedded-helpers-CyTpDKo5.js} +24 -24
- package/dist/{pi-model-discovery-DBHbwKOo.js → pi-model-discovery-Bb__OY-j.js} +7 -7
- package/dist/{plugin-registry-CGFy1ugt.js → plugin-registry-BY85d-vE.js} +1 -1
- package/dist/{plugin-registry-LYzfPk35.js → plugin-registry-DROWinG6.js} +1 -1
- package/dist/plugin-sdk/{agent-via-gateway-De4e2_-W.js → agent-via-gateway-CXtWg-qx.js} +2 -2
- package/dist/plugin-sdk/{anton-BO16dWNw.js → anton-CGYTy9vy.js} +32 -6
- package/dist/plugin-sdk/{channel-web-Cd-eamYe.js → channel-web-EFRSObCG.js} +2 -2
- package/dist/plugin-sdk/commands/agent/types.d.ts +1 -0
- package/dist/plugin-sdk/{deps-D6VWIdk7.js → deps-qZxPlSgp.js} +1 -1
- package/dist/plugin-sdk/{emergency-stop-w-HD2bz4.js → emergency-stop-CxcBz-aQ.js} +2 -2
- package/dist/plugin-sdk/gateway/protocol/schema/agent.d.ts +1 -0
- package/dist/plugin-sdk/index.js +3 -3
- package/dist/plugin-sdk/{reply-BqAPyIsz.js → reply-nUO1aM3T.js} +13 -12
- package/dist/plugin-sdk/{web-Dj_tThNQ.js → web-CEtAvhaI.js} +3 -3
- package/dist/{plugins-Bb6_uisJ.js → plugins-CRB60mCJ.js} +10 -10
- package/dist/{plugins-cli-BQKfJ9aF.js → plugins-cli-RFXGkaxP.js} +6 -6
- package/dist/{plugins-cli-BCAcCeRZ.js → plugins-cli-b_o3IL7x.js} +6 -6
- package/dist/{program-context-DBOEyhi4.js → program-context-D6irLwPo.js} +31 -31
- package/dist/{program-Df-zk5RB.js → program-vH6RTUOw.js} +11 -11
- package/dist/{prompt-select-styled-DJVZSK4X.js → prompt-select-styled-CDoDFWo7.js} +6 -6
- package/dist/{prompt-select-styled-B0FsbRWb.js → prompt-select-styled-DFVvU0TH.js} +6 -6
- package/dist/{provider-auth-helpers-D0cQmJkF.js → provider-auth-helpers-BCc5UtUa.js} +1 -1
- package/dist/{provider-auth-helpers-Aojd4jNn.js → provider-auth-helpers-CNRz0SFC.js} +1 -1
- package/dist/{push-apns-BtI9tV7C.js → push-apns-CHmvuoMu.js} +1 -1
- package/dist/{push-apns-qzriU6TC.js → push-apns-e2xmxGGE.js} +1 -1
- package/dist/{pw-ai-BKPa5DlF.js → pw-ai-CowTfhOG.js} +13 -13
- package/dist/{pw-ai-yrIWfcWX.js → pw-ai-DjmrIQle.js} +1 -1
- package/dist/{qmd-manager-DEJVRLvM.js → qmd-manager-B_GgyQQ0.js} +8 -8
- package/dist/{query-expansion-CW7PqIXL.js → query-expansion-DEq020GG.js} +5 -5
- package/dist/{redact-D1Ebz_iR.js → redact-Bvpf-ATQ.js} +1 -1
- package/dist/{register.agent-ButiRGeg.js → register.agent-Dx7ULz49.js} +12 -12
- package/dist/{register.agent-Xdy9Gu3H.js → register.agent-HWcFMr6h.js} +11 -11
- package/dist/{register.configure-f4xr9iKB.js → register.configure-BctHAiWh.js} +13 -13
- package/dist/{register.configure-m5qhbCOO.js → register.configure-k8gocsJw.js} +13 -13
- package/dist/{register.maintenance-N55abUee.js → register.maintenance-BYiX9iOa.js} +12 -12
- package/dist/{register.maintenance-BA4e0HDc.js → register.maintenance-C6o2WuQx.js} +11 -11
- package/dist/{register.message-DaVB6EYW.js → register.message-BLScF2fV.js} +6 -6
- package/dist/{register.message-Zta0bYh0.js → register.message-BewFLd-k.js} +6 -6
- package/dist/{register.onboard-BHKf5Emm.js → register.onboard-BVm-2XAx.js} +5 -5
- package/dist/{register.onboard-BikBO9Gs.js → register.onboard-a0kqiCTa.js} +5 -5
- package/dist/{register.orchestrator-anton-DtPFOV9F.js → register.orchestrator-anton-BYyjV8R-.js} +5 -4
- package/dist/{register.orchestrator-anton-x3yGok7b.js → register.orchestrator-anton-Tn_RaMLq.js} +5 -4
- package/dist/{register.setup-BeRMjZaz.js → register.setup-BJ0WBUpt.js} +5 -5
- package/dist/{register.setup-DCIPrpG0.js → register.setup-BwPJaqpH.js} +5 -5
- package/dist/{register.status-health-sessions-I0YSjY_V.js → register.status-health-sessions-Clzt8hbv.js} +8 -8
- package/dist/{register.status-health-sessions-CA5wMwpi.js → register.status-health-sessions-wbopjGL-.js} +8 -8
- package/dist/{register.subclis-DZkq_g35.js → register.subclis-CrcOefJY.js} +21 -21
- package/dist/{replies-CXcxPRWk.js → replies-6_GxvQYe.js} +3 -3
- package/dist/{reply-DlS9HBVo.js → reply-D5gCiiGr.js} +15 -15
- package/dist/{reply-prefix-49q2WQ2B.js → reply-prefix-BUgeSN2R.js} +1 -1
- package/dist/{resolve-route-Dr-fqH39.js → resolve-route-DuttYY7A.js} +4 -4
- package/dist/{retry-DWN-e4ja.js → retry-BeB9WenR.js} +1 -1
- package/dist/{rpc-CCimHATv.js → rpc-Cf9OK5Yk.js} +1 -1
- package/dist/{rpc-CasD0keJ.js → rpc-DVTovtI3.js} +1 -1
- package/dist/{run-main-B75ak_hb.js → run-main-BCX3UZMR.js} +18 -18
- package/dist/{runner-DO528Ump.js → runner-BzNdfqDz.js} +11 -11
- package/dist/{runner-Bv_BA3vd.js → runner-CZW_eyf2.js} +1 -1
- package/dist/{secrets-cli-Bx9bIigZ.js → secrets-cli-C4UBK_LV.js} +3 -3
- package/dist/{secrets-cli-Bgp_H_bH.js → secrets-cli-CR3h2TBy.js} +3 -3
- package/dist/{security-cli-MQ__Ca6v.js → security-cli-B9_LV2po.js} +3 -3
- package/dist/{security-cli-e1WjvhRm.js → security-cli-an5u-5Jb.js} +3 -3
- package/dist/{send-BspIjWIY.js → send-BeIZJuy4.js} +7 -7
- package/dist/{send-szC_vYk_.js → send-C1hvd3bt.js} +6 -6
- package/dist/{send-CRnMBrJ2.js → send-D4bMycQu.js} +7 -7
- package/dist/{send-De8xTUIV.js → send-Dfa3sn6r.js} +24 -24
- package/dist/{send-BypmtKl1.js → send-DmLC7aEF.js} +10 -10
- package/dist/{server-node-events-CufCnFp4.js → server-node-events-CbVkqOtV.js} +6 -6
- package/dist/{server-node-events-B1RPoseF.js → server-node-events-DvStFPGi.js} +6 -6
- package/dist/{session-CKiIT4OY.js → session-F_YDS_1V.js} +7 -7
- package/dist/{sessions-BgxmLQuf.js → sessions-3ioSeOA1.js} +41 -41
- package/dist/{skill-commands-BOUMR5De.js → skill-commands-Ck3flWX7.js} +9 -9
- package/dist/{skills-OsjsCf_S.js → skills-CnAPWfca.js} +22 -22
- package/dist/{status-hXjECVBh.js → status-CWnPokQF.js} +5 -5
- package/dist/{status-ERmEJYw1.js → status-ClMOrHdT.js} +5 -5
- package/dist/{store-B4rHJvSg.js → store-CvMgrKWx.js} +2 -2
- package/dist/{subagent-registry-CcxZYIwL.js → subagent-registry-BH5O1rxK.js} +15 -15
- package/dist/{subsystem-B98oWbbO.js → subsystem-tzu-rIAJ.js} +1 -1
- package/dist/{system-cli-CHiaS_zS.js → system-cli-Dd-gBN0t.js} +3 -3
- package/dist/{system-cli-3T-OTIKv.js → system-cli-DyVZ5udc.js} +3 -3
- package/dist/{tables-DuOExt0S.js → tables-5k-zOZ-s.js} +1 -1
- package/dist/{target-errors-CWZr3RMI.js → target-errors-BPfQrPim.js} +2 -2
- package/dist/{tokens-B9ArFCMX.js → tokens-BRLyURxW.js} +1 -1
- package/dist/{tool-images-DLiBUCZb.js → tool-images-CcGZpzmq.js} +2 -2
- package/dist/{tool-loop-detection-j48jLTrr.js → tool-loop-detection-BNGetx3Z.js} +3 -3
- package/dist/{tui-BPgLehyv.js → tui-2u2ZDhHV.js} +2 -2
- package/dist/{tui-lalhRHve.js → tui-Bne3YNiw.js} +2 -2
- package/dist/{tui-cli-9z2Sm8Qg.js → tui-cli-BWnIeq57.js} +3 -3
- package/dist/{tui-cli-BVKWJ9X7.js → tui-cli-D0Z-rcUe.js} +3 -3
- package/dist/{update-cli-Rnv68OR6.js → update-cli-BTNcddEX.js} +12 -12
- package/dist/{update-cli-DROtjWg7.js → update-cli-CxZD0ekr.js} +13 -13
- package/dist/{update-runner-BWxBVG9j.js → update-runner-CN7Dm9tg.js} +1 -1
- package/dist/{update-runner-CqeNDbPD.js → update-runner-tu2Aiphu.js} +1 -1
- package/dist/{utils-ChNzRVsg.js → utils-CTFLl_ji.js} +18 -18
- package/dist/{web-BMSzFWiF.js → web-BV-BEZj6.js} +6 -6
- package/dist/{web-5ddwA0bs.js → web-Csmkqx1W.js} +66 -66
- package/dist/{web-BQLIquZA.js → web-DiqHxfw7.js} +8 -8
- package/dist/{web-CnzKMZK0.js → web-aRaB-CvF.js} +6 -6
- package/dist/{whatsapp-actions-CYraflBZ.js → whatsapp-actions-DbPcN6JQ.js} +25 -25
- package/dist/{workspace-AM44PzIs.js → workspace-DBFSzT6O.js} +18 -18
- 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/CHANGELOG.md +6 -0
- 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/CHANGELOG.md +6 -0
- package/extensions/msteams/package.json +1 -1
- package/extensions/nextcloud-talk/package.json +1 -1
- package/extensions/nostr/CHANGELOG.md +6 -0
- 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/CHANGELOG.md +6 -0
- package/extensions/twitch/package.json +1 -1
- package/extensions/voice-call/CHANGELOG.md +6 -0
- package/extensions/voice-call/package.json +1 -1
- package/extensions/whatsapp/package.json +1 -1
- package/extensions/zalo/CHANGELOG.md +6 -0
- package/extensions/zalo/package.json +1 -1
- package/extensions/zalouser/CHANGELOG.md +6 -0
- package/extensions/zalouser/package.json +1 -1
- package/package.json +1 -1
- package/dist/emergency-stop-JXB5jZyK.js +0 -113
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
Docs: https://docs.idlehands.ai
|
|
4
4
|
|
|
5
|
+
## 4.0.19
|
|
6
|
+
|
|
7
|
+
### Fixes
|
|
8
|
+
|
|
9
|
+
- Anton workspace propagation (hard fix): gateway `agent` calls now forward `workspaceDir` through to `agentCommand`, and `agentCommand` now honors per-call `workspaceDir` before falling back to session/default workspace.
|
|
10
|
+
- Anton CLI debugging support: `idlehands anton run` now supports `--workspace <dir>` so Anton preflight can be validated directly against a target workspace.
|
|
11
|
+
|
|
5
12
|
## 4.0.18
|
|
6
13
|
|
|
7
14
|
### Fixes
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { p as normalizeAccountId } from "./session-key-CuLPSMu_.js";
|
|
2
|
-
import { r as createAccountListHelpers } from "./accounts-
|
|
2
|
+
import { r as createAccountListHelpers } from "./accounts-Dk8mJIrQ.js";
|
|
3
3
|
import { t as resolveAccountEntry } from "./account-lookup-DlMshWZ_.js";
|
|
4
4
|
|
|
5
5
|
//#region src/signal/accounts.ts
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { p as normalizeAccountId } from "./session-key-CuLPSMu_.js";
|
|
2
|
-
import { r as createAccountListHelpers } from "./accounts-
|
|
2
|
+
import { r as createAccountListHelpers } from "./accounts-Dk8mJIrQ.js";
|
|
3
3
|
import { t as resolveAccountEntry } from "./account-lookup-DlMshWZ_.js";
|
|
4
4
|
|
|
5
5
|
//#region src/imessage/accounts.ts
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { l as resolveOAuthDir } from "./paths-
|
|
2
|
-
import { h as resolveUserPath } from "./utils-
|
|
1
|
+
import { l as resolveOAuthDir } from "./paths-BYNVLNi_.js";
|
|
2
|
+
import { h as resolveUserPath } from "./utils-CTFLl_ji.js";
|
|
3
3
|
import { f as DEFAULT_ACCOUNT_ID, p as normalizeAccountId } from "./session-key-CuLPSMu_.js";
|
|
4
4
|
import { t as resolveAccountEntry } from "./account-lookup-DlMshWZ_.js";
|
|
5
|
-
import { r as hasWebCredsSync } from "./auth-store-
|
|
5
|
+
import { r as hasWebCredsSync } from "./auth-store-DXT-l7fO.js";
|
|
6
6
|
import path from "node:path";
|
|
7
|
-
import
|
|
7
|
+
import syncFs from "node:fs";
|
|
8
8
|
|
|
9
9
|
//#region src/channels/plugins/account-helpers.ts
|
|
10
10
|
function createAccountListHelpers(channelKey) {
|
|
@@ -44,7 +44,7 @@ function listWhatsAppAuthDirs(cfg) {
|
|
|
44
44
|
accountId
|
|
45
45
|
}).authDir);
|
|
46
46
|
try {
|
|
47
|
-
const entries =
|
|
47
|
+
const entries = syncFs.readdirSync(whatsappDir, { withFileTypes: true });
|
|
48
48
|
for (const entry of entries) {
|
|
49
49
|
if (!entry.isDirectory()) continue;
|
|
50
50
|
authDirs.add(path.join(whatsappDir, entry.name));
|
|
@@ -66,7 +66,7 @@ function resolveLegacyAuthDir() {
|
|
|
66
66
|
}
|
|
67
67
|
function legacyAuthExists(authDir) {
|
|
68
68
|
try {
|
|
69
|
-
return
|
|
69
|
+
return syncFs.existsSync(path.join(authDir, "creds.json"));
|
|
70
70
|
} catch {
|
|
71
71
|
return false;
|
|
72
72
|
}
|
|
@@ -9,8 +9,8 @@ import "./host-env-security-VbAkcANc.js";
|
|
|
9
9
|
import { r as VERSION } from "./env-vars-I4LX5XSX.js";
|
|
10
10
|
import "./manifest-registry-ChP7-gzj.js";
|
|
11
11
|
import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-Qpj4ExtQ.js";
|
|
12
|
-
import { t as GatewayClient } from "./client-
|
|
13
|
-
import { t as buildGatewayConnectionDetails } from "./call-
|
|
12
|
+
import { t as GatewayClient } from "./client-udFMSDes.js";
|
|
13
|
+
import { t as buildGatewayConnectionDetails } from "./call-C82rD2Wn.js";
|
|
14
14
|
import "./pairing-token-CnnKAS6M.js";
|
|
15
15
|
import "./net-CE_62H5R.js";
|
|
16
16
|
import "./ip-Y1214nEL.js";
|
|
@@ -18,8 +18,8 @@ import "./ip-DJ5wsTQn.js";
|
|
|
18
18
|
import "./tailnet-C9lH_YnG.js";
|
|
19
19
|
import "./ws-XBTtYpJc.js";
|
|
20
20
|
import { t as resolveGatewayCredentialsFromConfig } from "./credentials-DcJ9zJDt.js";
|
|
21
|
-
import { t as GatewayClient } from "./client-
|
|
22
|
-
import { t as buildGatewayConnectionDetails } from "./call-
|
|
21
|
+
import { t as GatewayClient } from "./client-DtnD-ee9.js";
|
|
22
|
+
import { t as buildGatewayConnectionDetails } from "./call-BpWhjuOg.js";
|
|
23
23
|
import "./pairing-token-lKXTMQ_M.js";
|
|
24
24
|
import { t as formatDocsLink } from "./links-15764jZB.js";
|
|
25
25
|
import { t as isMainModule } from "./is-main-DxnLDMqD.js";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { d as resolveStateDir } from "./paths-
|
|
2
|
-
import { t as createSubsystemLogger } from "./subsystem-
|
|
3
|
-
import { h as resolveUserPath } from "./utils-
|
|
1
|
+
import { d as resolveStateDir } from "./paths-BYNVLNi_.js";
|
|
2
|
+
import { t as createSubsystemLogger } from "./subsystem-tzu-rIAJ.js";
|
|
3
|
+
import { h as resolveUserPath } from "./utils-CTFLl_ji.js";
|
|
4
4
|
import { l as resolveAgentIdFromSessionKey, s as normalizeAgentId, t as DEFAULT_AGENT_ID, x as parseAgentSessionKey } from "./session-key-CuLPSMu_.js";
|
|
5
|
-
import { p as resolveDefaultAgentWorkspaceDir } from "./workspace-
|
|
5
|
+
import { p as resolveDefaultAgentWorkspaceDir } from "./workspace-DBFSzT6O.js";
|
|
6
6
|
import path from "node:path";
|
|
7
7
|
|
|
8
8
|
//#region src/config/model-input.ts
|
|
@@ -4,8 +4,8 @@ import { t as formatCliCommand } from "./command-format-CPa5ksO_.js";
|
|
|
4
4
|
import { r as listAgentIds } from "./agent-scope-mLXQGQde.js";
|
|
5
5
|
import { s as normalizeAgentId } from "./session-key-B9ePuoPx.js";
|
|
6
6
|
import { h as GATEWAY_CLIENT_NAMES, l as normalizeMessageChannel, m as GATEWAY_CLIENT_MODES } from "./message-channel-Qpj4ExtQ.js";
|
|
7
|
-
import { D as resolveSessionKeyForRequest, E as agentCommand } from "./subagent-registry-
|
|
8
|
-
import { a as randomIdempotencyKey, n as callGateway } from "./call-
|
|
7
|
+
import { D as resolveSessionKeyForRequest, E as agentCommand } from "./subagent-registry-BH5O1rxK.js";
|
|
8
|
+
import { a as randomIdempotencyKey, n as callGateway } from "./call-C82rD2Wn.js";
|
|
9
9
|
import { n as withProgress } from "./progress-B76RkFx7.js";
|
|
10
10
|
|
|
11
11
|
//#region src/commands/agent-via-gateway.ts
|
|
@@ -1,73 +1,73 @@
|
|
|
1
|
-
import { n as listAgentIds } from "./agent-scope-
|
|
2
|
-
import "./paths-
|
|
3
|
-
import "./subsystem-
|
|
4
|
-
import "./utils-
|
|
1
|
+
import { n as listAgentIds } from "./agent-scope-DyP_tr7s.js";
|
|
2
|
+
import "./paths-BYNVLNi_.js";
|
|
3
|
+
import "./subsystem-tzu-rIAJ.js";
|
|
4
|
+
import "./utils-CTFLl_ji.js";
|
|
5
5
|
import "./runtime-8mi3mpYB.js";
|
|
6
6
|
import { s as normalizeAgentId } from "./session-key-CuLPSMu_.js";
|
|
7
|
-
import "./workspace-
|
|
8
|
-
import { R as loadConfig } from "./model-selection-
|
|
9
|
-
import "./github-copilot-token-
|
|
7
|
+
import "./workspace-DBFSzT6O.js";
|
|
8
|
+
import { R as loadConfig } from "./model-selection-1MMYqY6M.js";
|
|
9
|
+
import "./github-copilot-token-Dgt6cnsM.js";
|
|
10
10
|
import { t as formatCliCommand } from "./command-format-BAxx4PW5.js";
|
|
11
11
|
import "./boolean-CE7i9tBR.js";
|
|
12
|
-
import "./env-
|
|
13
|
-
import "./dock-
|
|
14
|
-
import "./tokens-
|
|
15
|
-
import { H as randomIdempotencyKey, V as callGateway, a as agentCommand, o as resolveSessionKeyForRequest, v as withProgress } from "./pi-embedded-
|
|
16
|
-
import "./plugins-
|
|
17
|
-
import "./accounts-
|
|
18
|
-
import "./bindings-
|
|
19
|
-
import "./auth-store-
|
|
20
|
-
import "./send-
|
|
21
|
-
import "./send-
|
|
22
|
-
import "./deliver-
|
|
23
|
-
import "./diagnostic-
|
|
12
|
+
import "./env-B5G1qwGc.js";
|
|
13
|
+
import "./dock-BgOmHcbh.js";
|
|
14
|
+
import "./tokens-BRLyURxW.js";
|
|
15
|
+
import { H as randomIdempotencyKey, V as callGateway, a as agentCommand, o as resolveSessionKeyForRequest, v as withProgress } from "./pi-embedded-BeyOxL6U.js";
|
|
16
|
+
import "./plugins-CRB60mCJ.js";
|
|
17
|
+
import "./accounts-Dk8mJIrQ.js";
|
|
18
|
+
import "./bindings-D3b5Fmc9.js";
|
|
19
|
+
import "./auth-store-DXT-l7fO.js";
|
|
20
|
+
import "./send-BeIZJuy4.js";
|
|
21
|
+
import "./send-DmLC7aEF.js";
|
|
22
|
+
import "./deliver-CVTXl0Cv.js";
|
|
23
|
+
import "./diagnostic-4owMk4vH.js";
|
|
24
24
|
import "./diagnostic-session-state-BGF2r-kt.js";
|
|
25
|
-
import "./accounts-
|
|
26
|
-
import "./send-
|
|
27
|
-
import "./image-ops-
|
|
28
|
-
import "./pi-model-discovery-
|
|
29
|
-
import { d as GATEWAY_CLIENT_MODES, f as GATEWAY_CLIENT_NAMES, s as normalizeMessageChannel } from "./message-channel-
|
|
30
|
-
import "./pi-embedded-helpers-
|
|
31
|
-
import "./chrome-
|
|
25
|
+
import "./accounts-BDVs8LTu.js";
|
|
26
|
+
import "./send-Dfa3sn6r.js";
|
|
27
|
+
import "./image-ops-D1KtygWz.js";
|
|
28
|
+
import "./pi-model-discovery-Bb__OY-j.js";
|
|
29
|
+
import { d as GATEWAY_CLIENT_MODES, f as GATEWAY_CLIENT_NAMES, s as normalizeMessageChannel } from "./message-channel-C8QtrwEU.js";
|
|
30
|
+
import "./pi-embedded-helpers-CyTpDKo5.js";
|
|
31
|
+
import "./chrome-_2tzVjVl.js";
|
|
32
32
|
import "./ssrf-CZeHDwVZ.js";
|
|
33
|
-
import "./frontmatter-
|
|
34
|
-
import "./skills-
|
|
35
|
-
import "./path-alias-guards-
|
|
36
|
-
import "./redact-
|
|
37
|
-
import "./errors
|
|
38
|
-
import "./fs-safe-
|
|
39
|
-
import "./store-
|
|
40
|
-
import "./sessions-
|
|
41
|
-
import "./accounts-
|
|
42
|
-
import "./paths-
|
|
43
|
-
import "./tool-images-
|
|
33
|
+
import "./frontmatter-BOudmHMS.js";
|
|
34
|
+
import "./skills-CnAPWfca.js";
|
|
35
|
+
import "./path-alias-guards-Cu1nXNMM.js";
|
|
36
|
+
import "./redact-Bvpf-ATQ.js";
|
|
37
|
+
import "./errors-C_0nm4TJ.js";
|
|
38
|
+
import "./fs-safe-CYUaAFO9.js";
|
|
39
|
+
import "./store-CvMgrKWx.js";
|
|
40
|
+
import "./sessions-3ioSeOA1.js";
|
|
41
|
+
import "./accounts-CIvVRRHb.js";
|
|
42
|
+
import "./paths-D_qUel1T.js";
|
|
43
|
+
import "./tool-images-CcGZpzmq.js";
|
|
44
44
|
import "./thinking-z4_linel.js";
|
|
45
|
-
import "./image-
|
|
46
|
-
import "./reply-prefix-
|
|
47
|
-
import "./manager-
|
|
48
|
-
import "./gemini-auth-
|
|
49
|
-
import "./fetch-guard-
|
|
50
|
-
import "./query-expansion-
|
|
51
|
-
import "./retry-
|
|
52
|
-
import "./target-errors-
|
|
53
|
-
import "./chunk-
|
|
54
|
-
import "./markdown-tables-
|
|
55
|
-
import "./local-roots-
|
|
56
|
-
import "./ir-
|
|
45
|
+
import "./image-COw__ACq.js";
|
|
46
|
+
import "./reply-prefix-BUgeSN2R.js";
|
|
47
|
+
import "./manager-BE_76jWB.js";
|
|
48
|
+
import "./gemini-auth-CIyaa44H.js";
|
|
49
|
+
import "./fetch-guard-iuQsIjqN.js";
|
|
50
|
+
import "./query-expansion-DEq020GG.js";
|
|
51
|
+
import "./retry-BeB9WenR.js";
|
|
52
|
+
import "./target-errors-BPfQrPim.js";
|
|
53
|
+
import "./chunk-CMpX7Jaz.js";
|
|
54
|
+
import "./markdown-tables-CzsockiZ.js";
|
|
55
|
+
import "./local-roots-KN4Hp1yZ.js";
|
|
56
|
+
import "./ir-B7IBoKLy.js";
|
|
57
57
|
import "./render-MTSxc7LK.js";
|
|
58
|
-
import "./commands-registry-
|
|
59
|
-
import "./skill-commands-
|
|
60
|
-
import "./runner-
|
|
58
|
+
import "./commands-registry-j4vAzcF2.js";
|
|
59
|
+
import "./skill-commands-Ck3flWX7.js";
|
|
60
|
+
import "./runner-BzNdfqDz.js";
|
|
61
61
|
import "./fetch-CsfR_943.js";
|
|
62
|
-
import "./channel-activity-
|
|
63
|
-
import "./tables-
|
|
64
|
-
import "./send-
|
|
65
|
-
import "./outbound-attachment-
|
|
66
|
-
import "./send-
|
|
67
|
-
import "./resolve-route-
|
|
62
|
+
import "./channel-activity-D_TMOGQ0.js";
|
|
63
|
+
import "./tables-5k-zOZ-s.js";
|
|
64
|
+
import "./send-C1hvd3bt.js";
|
|
65
|
+
import "./outbound-attachment-3I6GzwDe.js";
|
|
66
|
+
import "./send-D4bMycQu.js";
|
|
67
|
+
import "./resolve-route-DuttYY7A.js";
|
|
68
68
|
import "./proxy-CRB9oCP5.js";
|
|
69
|
-
import "./replies-
|
|
70
|
-
import "./deps-
|
|
69
|
+
import "./replies-6_GxvQYe.js";
|
|
70
|
+
import "./deps-BAMUVAdU.js";
|
|
71
71
|
|
|
72
72
|
//#region src/commands/agent-via-gateway.ts
|
|
73
73
|
const NO_GATEWAY_TIMEOUT_MS = 2147e6;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
2
|
-
import { Mt as resolveSessionKeyForRequest, jt as agentCommand } from "./reply-
|
|
2
|
+
import { Mt as resolveSessionKeyForRequest, jt as agentCommand } from "./reply-D5gCiiGr.js";
|
|
3
3
|
import { r as listAgentIds } from "./agent-scope-RA0zXRpu.js";
|
|
4
4
|
import { s as normalizeAgentId } from "./session-key-Cuihcz_O.js";
|
|
5
5
|
import { It as loadConfig } from "./model-selection-0dGxYGp8.js";
|
|
6
6
|
import { t as formatCliCommand } from "./command-format-DInZLuZ8.js";
|
|
7
7
|
import { h as GATEWAY_CLIENT_NAMES, l as normalizeMessageChannel, m as GATEWAY_CLIENT_MODES } from "./message-channel-DVauVtrg.js";
|
|
8
|
-
import { a as randomIdempotencyKey, n as callGateway } from "./call-
|
|
8
|
+
import { a as randomIdempotencyKey, n as callGateway } from "./call-BpWhjuOg.js";
|
|
9
9
|
import { n as withProgress } from "./progress-BQLz1r3L.js";
|
|
10
10
|
|
|
11
11
|
//#region src/commands/agent-via-gateway.ts
|
|
@@ -11,14 +11,14 @@ import { t as formatCliCommand } from "./command-format-BAxx4PW5.js";
|
|
|
11
11
|
import "./env-BpvqFD5n.js";
|
|
12
12
|
import "./dock-QcCdS4qA.js";
|
|
13
13
|
import "./tokens-Cg4XNE3H.js";
|
|
14
|
-
import { H as callGateway, U as randomIdempotencyKey, a as agentCommand, o as resolveSessionKeyForRequest, v as withProgress } from "./pi-embedded-
|
|
14
|
+
import { H as callGateway, U as randomIdempotencyKey, a as agentCommand, o as resolveSessionKeyForRequest, v as withProgress } from "./pi-embedded-Bc4KWuTe.js";
|
|
15
15
|
import "./plugins-D-_jp4FO.js";
|
|
16
16
|
import "./accounts-BwrguHMw.js";
|
|
17
17
|
import "./bindings-hT7SPhiA.js";
|
|
18
18
|
import "./auth-store-D1JaYlig.js";
|
|
19
19
|
import "./send-J10cQN4A.js";
|
|
20
20
|
import "./send-DLZt92Da.js";
|
|
21
|
-
import "./deliver-
|
|
21
|
+
import "./deliver-5FLCa6tB.js";
|
|
22
22
|
import "./diagnostic-jHCdo9Am.js";
|
|
23
23
|
import "./diagnostic-session-state-Bx2Le86J.js";
|
|
24
24
|
import "./accounts-BRVjft5i.js";
|
|
@@ -26,8 +26,8 @@ import "./send-Dd4xdAHf.js";
|
|
|
26
26
|
import "./image-ops-BDG-MYYV.js";
|
|
27
27
|
import "./pi-model-discovery-Dic-M5qw.js";
|
|
28
28
|
import { d as GATEWAY_CLIENT_MODES, f as GATEWAY_CLIENT_NAMES, s as normalizeMessageChannel } from "./message-channel-DqqfOIdx.js";
|
|
29
|
-
import "./pi-embedded-helpers-
|
|
30
|
-
import "./chrome-
|
|
29
|
+
import "./pi-embedded-helpers-C2j0LfJC.js";
|
|
30
|
+
import "./chrome-DEnkfZ9p.js";
|
|
31
31
|
import "./ssrf-DappnhDp.js";
|
|
32
32
|
import "./skills-nQcWk6Z6.js";
|
|
33
33
|
import "./path-alias-guards-CGbCFqW8.js";
|
|
@@ -40,7 +40,7 @@ import "./accounts-CBoBCTgA.js";
|
|
|
40
40
|
import "./paths-vOrMwCEQ.js";
|
|
41
41
|
import "./tool-images-CpZSs-zE.js";
|
|
42
42
|
import "./thinking-BFsWfunr.js";
|
|
43
|
-
import "./image-
|
|
43
|
+
import "./image-C_aN5P6-.js";
|
|
44
44
|
import "./manager-DYOflU5p.js";
|
|
45
45
|
import "./gemini-auth-m2hi6OmF.js";
|
|
46
46
|
import "./fetch-guard-BdCPmLBP.js";
|
|
@@ -54,7 +54,7 @@ import "./ir-BwkcXPZC.js";
|
|
|
54
54
|
import "./render-Ddkk6wf8.js";
|
|
55
55
|
import "./commands-registry-1-Rv2-IS.js";
|
|
56
56
|
import "./skill-commands-CHpRgsOw.js";
|
|
57
|
-
import "./runner-
|
|
57
|
+
import "./runner-CZW_eyf2.js";
|
|
58
58
|
import "./fetch-ChVgjTkv.js";
|
|
59
59
|
import "./channel-activity-C3LJmSjf.js";
|
|
60
60
|
import "./tables-CJKtUpY0.js";
|
|
@@ -64,7 +64,7 @@ import "./send-Cn2wvd3W.js";
|
|
|
64
64
|
import "./resolve-route-BI3VjtwE.js";
|
|
65
65
|
import "./proxy-CNZpb4NE.js";
|
|
66
66
|
import "./replies-CqYEEgmA.js";
|
|
67
|
-
import "./deps-
|
|
67
|
+
import "./deps-BbipxGPW.js";
|
|
68
68
|
|
|
69
69
|
//#region src/commands/agent-via-gateway.ts
|
|
70
70
|
const NO_GATEWAY_TIMEOUT_MS = 2147e6;
|
|
@@ -6,18 +6,18 @@ import { t as formatCliCommand } from "./command-format-CPa5ksO_.js";
|
|
|
6
6
|
import { a as resolveAgentDir, b as DEFAULT_IDENTITY_FILENAME, d as resolveDefaultAgentId, n as listAgentEntries, u as resolveAgentWorkspaceDir } from "./agent-scope-mLXQGQde.js";
|
|
7
7
|
import { m as DEFAULT_ACCOUNT_ID, s as normalizeAgentId, t as DEFAULT_AGENT_ID } from "./session-key-B9ePuoPx.js";
|
|
8
8
|
import { n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin } from "./plugins-CCrfZ49T.js";
|
|
9
|
-
import { M as identityHasValues, P as parseIdentityMarkdown } from "./subagent-registry-
|
|
9
|
+
import { M as identityHasValues, P as parseIdentityMarkdown } from "./subagent-registry-BH5O1rxK.js";
|
|
10
10
|
import { l as resolveSessionTranscriptsDirForAgent } from "./paths-CC17i2eK.js";
|
|
11
|
-
import { a as ensureWorkspaceAndSessions, l as moveToTrash } from "./onboard-helpers-
|
|
11
|
+
import { a as ensureWorkspaceAndSessions, l as moveToTrash } from "./onboard-helpers-DWivfzcc.js";
|
|
12
12
|
import { t as WizardCancelledError } from "./prompts-D3HHe1ZZ.js";
|
|
13
13
|
import { t as createClackPrompter } from "./clack-prompter-Bo7vS5xP.js";
|
|
14
14
|
import { t as resolveChannelDefaultAccountId } from "./helpers-CIyuenBU.js";
|
|
15
15
|
import { a as parseBindingSpecs, i as describeBinding, n as applyAgentBindings, o as removeAgentBindings, r as buildChannelBindings, t as requireValidConfigSnapshot } from "./config-validation-BgKexeQb.js";
|
|
16
|
-
import { a as pruneAgentConfig, i as loadAgentIdentity, n as buildAgentSummaries, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-
|
|
17
|
-
import { r as setupChannels } from "./onboard-channels-
|
|
16
|
+
import { a as pruneAgentConfig, i as loadAgentIdentity, n as buildAgentSummaries, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-D2EbQiOx.js";
|
|
17
|
+
import { r as setupChannels } from "./onboard-channels-JPltbNGL.js";
|
|
18
18
|
import { n as logConfigUpdated } from "./logging-MF6Thoxk.js";
|
|
19
19
|
import { n as promptAuthChoiceGrouped } from "./auth-choice-prompt-kycZqH8q.js";
|
|
20
|
-
import { i as applyAuthChoice, r as warnIfModelConfigLooksOff } from "./auth-choice-
|
|
20
|
+
import { i as applyAuthChoice, r as warnIfModelConfigLooksOff } from "./auth-choice-DVoPuwEs.js";
|
|
21
21
|
import path from "node:path";
|
|
22
22
|
import fs from "node:fs/promises";
|
|
23
23
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { en as identityHasValues, tn as loadAgentIdentityFromWorkspace } from "./reply-
|
|
1
|
+
import { en as identityHasValues, tn as loadAgentIdentityFromWorkspace } from "./reply-D5gCiiGr.js";
|
|
2
2
|
import { a as resolveAgentDir, d as resolveDefaultAgentId, n as listAgentEntries, u as resolveAgentWorkspaceDir } from "./agent-scope-RA0zXRpu.js";
|
|
3
3
|
import { s as normalizeAgentId } from "./session-key-Cuihcz_O.js";
|
|
4
4
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { a as resolveAgentDir, d as resolveDefaultAgentId, n as listAgentEntries, u as resolveAgentWorkspaceDir } from "./agent-scope-mLXQGQde.js";
|
|
2
2
|
import { s as normalizeAgentId } from "./session-key-B9ePuoPx.js";
|
|
3
|
-
import { M as identityHasValues, N as loadAgentIdentityFromWorkspace } from "./subagent-registry-
|
|
3
|
+
import { M as identityHasValues, N as loadAgentIdentityFromWorkspace } from "./subagent-registry-BH5O1rxK.js";
|
|
4
4
|
|
|
5
5
|
//#region src/commands/agents.config.ts
|
|
6
6
|
function findAgentEntryIndex(list, agentId) {
|
|
@@ -225,7 +225,7 @@ async function loadAntonConfig() {
|
|
|
225
225
|
}
|
|
226
226
|
}
|
|
227
227
|
async function runAgentTask(args) {
|
|
228
|
-
const { agentCliCommand } = await import("./agent-via-gateway-
|
|
228
|
+
const { agentCliCommand } = await import("./agent-via-gateway-B03q92bw.js").then((n) => n.n);
|
|
229
229
|
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
230
|
const result = await agentCliCommand({
|
|
231
231
|
message: args.message,
|
|
@@ -375,9 +375,21 @@ async function runDiscoveryPhase(args) {
|
|
|
375
375
|
workspaceDir: args.workspaceDir
|
|
376
376
|
});
|
|
377
377
|
const firstParsed = extractJsonObject(firstPass.text);
|
|
378
|
-
if ((firstParsed?.status ?? "").toLowerCase() === "complete") throw new Error("Discovery claimed task already complete without a verifiable plan artifact; refusing auto-complete");
|
|
379
378
|
const declaredPlanFile = normalizeDiscoveryFilename(firstParsed?.filename, planFile);
|
|
380
|
-
if (await isPlanFileValid(
|
|
379
|
+
if (await isPlanFileValid(planFile)) {
|
|
380
|
+
await args.notify({
|
|
381
|
+
phase: "discovery_complete",
|
|
382
|
+
index: args.taskNum,
|
|
383
|
+
total: args.total,
|
|
384
|
+
task: args.task.text,
|
|
385
|
+
planFile
|
|
386
|
+
});
|
|
387
|
+
return {
|
|
388
|
+
status: "plan_ready",
|
|
389
|
+
planFile
|
|
390
|
+
};
|
|
391
|
+
}
|
|
392
|
+
if (declaredPlanFile !== planFile && await isPlanFileValid(declaredPlanFile)) {
|
|
381
393
|
await args.notify({
|
|
382
394
|
phase: "discovery_complete",
|
|
383
395
|
index: args.taskNum,
|
|
@@ -426,7 +438,19 @@ async function runDiscoveryPhase(args) {
|
|
|
426
438
|
workspaceDir: args.workspaceDir
|
|
427
439
|
});
|
|
428
440
|
const repairParsed = extractJsonObject(repairPass.text);
|
|
429
|
-
if (
|
|
441
|
+
if (await isPlanFileValid(declaredPlanFile)) {
|
|
442
|
+
await args.notify({
|
|
443
|
+
phase: "discovery_complete",
|
|
444
|
+
index: args.taskNum,
|
|
445
|
+
total: args.total,
|
|
446
|
+
task: args.task.text,
|
|
447
|
+
planFile: declaredPlanFile
|
|
448
|
+
});
|
|
449
|
+
return {
|
|
450
|
+
status: "plan_ready",
|
|
451
|
+
planFile: declaredPlanFile
|
|
452
|
+
};
|
|
453
|
+
}
|
|
430
454
|
const repairPlanFile = normalizeDiscoveryFilename(repairParsed?.filename, declaredPlanFile);
|
|
431
455
|
if (await isPlanFileValid(repairPlanFile) || await tryPersistPlanFallback({
|
|
432
456
|
planFile: repairPlanFile,
|
|
@@ -615,6 +639,9 @@ async function runAnton(args) {
|
|
|
615
639
|
});
|
|
616
640
|
try {
|
|
617
641
|
let planFile;
|
|
642
|
+
const gitCwdForBaseline = args.workspaceDir ? path.resolve(args.workspaceDir) : path.dirname(filePath);
|
|
643
|
+
const taskFileRelForBaseline = path.relative(gitCwdForBaseline, filePath).replace(/\\/g, "/");
|
|
644
|
+
const changedBeforeTask = await getGitChangedFileCount(gitCwdForBaseline, taskFileRelForBaseline.startsWith("..") ? [] : [taskFileRelForBaseline]);
|
|
618
645
|
if (mode === "preflight") {
|
|
619
646
|
const discoveryResult = await runDiscoveryPhase({
|
|
620
647
|
task,
|
|
@@ -686,7 +713,6 @@ async function runAnton(args) {
|
|
|
686
713
|
const gitCwd = args.workspaceDir ? path.resolve(args.workspaceDir) : path.dirname(filePath);
|
|
687
714
|
const taskFileRel = path.relative(gitCwd, filePath).replace(/\\/g, "/");
|
|
688
715
|
const changeIgnores = taskFileRel.startsWith("..") ? [] : [taskFileRel];
|
|
689
|
-
const changedBefore = await getGitChangedFileCount(gitCwd, changeIgnores);
|
|
690
716
|
await runAgentTask({
|
|
691
717
|
message: implPrompt,
|
|
692
718
|
sessionId: implSessionId,
|
|
@@ -698,7 +724,7 @@ async function runAnton(args) {
|
|
|
698
724
|
workspaceDir: args.workspaceDir
|
|
699
725
|
});
|
|
700
726
|
const changedAfter = await getGitChangedFileCount(gitCwd, changeIgnores);
|
|
701
|
-
if (mode === "preflight" &&
|
|
727
|
+
if (mode === "preflight" && changedBeforeTask !== null && changedAfter !== null && changedAfter <= changedBeforeTask) throw new Error("Implementation made no repository changes; refusing to mark task complete");
|
|
702
728
|
const updated = markTaskDone(await fs.readFile(filePath, "utf8"), task.line);
|
|
703
729
|
await fs.writeFile(filePath, updated, "utf8");
|
|
704
730
|
completed += 1;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import "./paths-
|
|
2
|
-
import { t as CONFIG_DIR } from "./utils-
|
|
1
|
+
import "./paths-BYNVLNi_.js";
|
|
2
|
+
import { t as CONFIG_DIR } from "./utils-CTFLl_ji.js";
|
|
3
3
|
import fs from "node:fs/promises";
|
|
4
4
|
import path from "node:path";
|
|
5
5
|
import { promisify } from "node:util";
|
|
@@ -212,14 +212,14 @@ async function antonStop(runtime) {
|
|
|
212
212
|
/** Load Anton config from the IdleHands config file. */
|
|
213
213
|
async function loadAntonConfig() {
|
|
214
214
|
try {
|
|
215
|
-
const { loadConfig } = await import("./model-selection-
|
|
215
|
+
const { loadConfig } = await import("./model-selection-1MMYqY6M.js").then((n) => n.I);
|
|
216
216
|
return loadConfig().anton ?? {};
|
|
217
217
|
} catch {
|
|
218
218
|
return {};
|
|
219
219
|
}
|
|
220
220
|
}
|
|
221
221
|
async function runAgentTask(args) {
|
|
222
|
-
const { agentCliCommand } = await import("./agent-via-gateway-
|
|
222
|
+
const { agentCliCommand } = await import("./agent-via-gateway-B2Z_k_od.js");
|
|
223
223
|
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
224
|
const result = await agentCliCommand({
|
|
225
225
|
message: args.message,
|
|
@@ -369,9 +369,21 @@ async function runDiscoveryPhase(args) {
|
|
|
369
369
|
workspaceDir: args.workspaceDir
|
|
370
370
|
});
|
|
371
371
|
const firstParsed = extractJsonObject(firstPass.text);
|
|
372
|
-
if ((firstParsed?.status ?? "").toLowerCase() === "complete") throw new Error("Discovery claimed task already complete without a verifiable plan artifact; refusing auto-complete");
|
|
373
372
|
const declaredPlanFile = normalizeDiscoveryFilename(firstParsed?.filename, planFile);
|
|
374
|
-
if (await isPlanFileValid(
|
|
373
|
+
if (await isPlanFileValid(planFile)) {
|
|
374
|
+
await args.notify({
|
|
375
|
+
phase: "discovery_complete",
|
|
376
|
+
index: args.taskNum,
|
|
377
|
+
total: args.total,
|
|
378
|
+
task: args.task.text,
|
|
379
|
+
planFile
|
|
380
|
+
});
|
|
381
|
+
return {
|
|
382
|
+
status: "plan_ready",
|
|
383
|
+
planFile
|
|
384
|
+
};
|
|
385
|
+
}
|
|
386
|
+
if (declaredPlanFile !== planFile && await isPlanFileValid(declaredPlanFile)) {
|
|
375
387
|
await args.notify({
|
|
376
388
|
phase: "discovery_complete",
|
|
377
389
|
index: args.taskNum,
|
|
@@ -420,7 +432,19 @@ async function runDiscoveryPhase(args) {
|
|
|
420
432
|
workspaceDir: args.workspaceDir
|
|
421
433
|
});
|
|
422
434
|
const repairParsed = extractJsonObject(repairPass.text);
|
|
423
|
-
if (
|
|
435
|
+
if (await isPlanFileValid(declaredPlanFile)) {
|
|
436
|
+
await args.notify({
|
|
437
|
+
phase: "discovery_complete",
|
|
438
|
+
index: args.taskNum,
|
|
439
|
+
total: args.total,
|
|
440
|
+
task: args.task.text,
|
|
441
|
+
planFile: declaredPlanFile
|
|
442
|
+
});
|
|
443
|
+
return {
|
|
444
|
+
status: "plan_ready",
|
|
445
|
+
planFile: declaredPlanFile
|
|
446
|
+
};
|
|
447
|
+
}
|
|
424
448
|
const repairPlanFile = normalizeDiscoveryFilename(repairParsed?.filename, declaredPlanFile);
|
|
425
449
|
if (await isPlanFileValid(repairPlanFile) || await tryPersistPlanFallback({
|
|
426
450
|
planFile: repairPlanFile,
|
|
@@ -553,7 +577,7 @@ async function runAnton(args) {
|
|
|
553
577
|
const reviewTimeout = antonCfg.reviewTimeoutSec ?? taskTimeout;
|
|
554
578
|
const preflightMaxRetries = antonCfg.preflightMaxRetries ?? 2;
|
|
555
579
|
const planDir = antonCfg.planDir ? path.resolve(antonCfg.planDir) : path.resolve(path.dirname(filePath), ".agents", "tasks");
|
|
556
|
-
const { loadConfig } = await import("./model-selection-
|
|
580
|
+
const { loadConfig } = await import("./model-selection-1MMYqY6M.js").then((n) => n.I);
|
|
557
581
|
const cfg = loadConfig();
|
|
558
582
|
const defaultTimeout = String(Number.isFinite(args.timeoutSec) && (args.timeoutSec ?? 0) > 0 ? args.timeoutSec : cfg.agents?.defaults?.timeoutSeconds ?? taskTimeout);
|
|
559
583
|
await acquireLock(Boolean(args.force));
|
|
@@ -609,6 +633,9 @@ async function runAnton(args) {
|
|
|
609
633
|
});
|
|
610
634
|
try {
|
|
611
635
|
let planFile;
|
|
636
|
+
const gitCwdForBaseline = args.workspaceDir ? path.resolve(args.workspaceDir) : path.dirname(filePath);
|
|
637
|
+
const taskFileRelForBaseline = path.relative(gitCwdForBaseline, filePath).replace(/\\/g, "/");
|
|
638
|
+
const changedBeforeTask = await getGitChangedFileCount(gitCwdForBaseline, taskFileRelForBaseline.startsWith("..") ? [] : [taskFileRelForBaseline]);
|
|
612
639
|
if (mode === "preflight") {
|
|
613
640
|
const discoveryResult = await runDiscoveryPhase({
|
|
614
641
|
task,
|
|
@@ -680,7 +707,6 @@ async function runAnton(args) {
|
|
|
680
707
|
const gitCwd = args.workspaceDir ? path.resolve(args.workspaceDir) : path.dirname(filePath);
|
|
681
708
|
const taskFileRel = path.relative(gitCwd, filePath).replace(/\\/g, "/");
|
|
682
709
|
const changeIgnores = taskFileRel.startsWith("..") ? [] : [taskFileRel];
|
|
683
|
-
const changedBefore = await getGitChangedFileCount(gitCwd, changeIgnores);
|
|
684
710
|
await runAgentTask({
|
|
685
711
|
message: implPrompt,
|
|
686
712
|
sessionId: implSessionId,
|
|
@@ -692,7 +718,7 @@ async function runAnton(args) {
|
|
|
692
718
|
workspaceDir: args.workspaceDir
|
|
693
719
|
});
|
|
694
720
|
const changedAfter = await getGitChangedFileCount(gitCwd, changeIgnores);
|
|
695
|
-
if (mode === "preflight" &&
|
|
721
|
+
if (mode === "preflight" && changedBeforeTask !== null && changedAfter !== null && changedAfter <= changedBeforeTask) throw new Error("Implementation made no repository changes; refusing to mark task complete");
|
|
696
722
|
const updated = markTaskDone(await fs.readFile(filePath, "utf8"), task.line);
|
|
697
723
|
await fs.writeFile(filePath, updated, "utf8");
|
|
698
724
|
completed += 1;
|
|
@@ -219,7 +219,7 @@ async function loadAntonConfig() {
|
|
|
219
219
|
}
|
|
220
220
|
}
|
|
221
221
|
async function runAgentTask(args) {
|
|
222
|
-
const { agentCliCommand } = await import("./agent-via-gateway-
|
|
222
|
+
const { agentCliCommand } = await import("./agent-via-gateway-Cn3iNSod.js");
|
|
223
223
|
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
224
|
const result = await agentCliCommand({
|
|
225
225
|
message: args.message,
|
|
@@ -369,9 +369,21 @@ async function runDiscoveryPhase(args) {
|
|
|
369
369
|
workspaceDir: args.workspaceDir
|
|
370
370
|
});
|
|
371
371
|
const firstParsed = extractJsonObject(firstPass.text);
|
|
372
|
-
if ((firstParsed?.status ?? "").toLowerCase() === "complete") throw new Error("Discovery claimed task already complete without a verifiable plan artifact; refusing auto-complete");
|
|
373
372
|
const declaredPlanFile = normalizeDiscoveryFilename(firstParsed?.filename, planFile);
|
|
374
|
-
if (await isPlanFileValid(
|
|
373
|
+
if (await isPlanFileValid(planFile)) {
|
|
374
|
+
await args.notify({
|
|
375
|
+
phase: "discovery_complete",
|
|
376
|
+
index: args.taskNum,
|
|
377
|
+
total: args.total,
|
|
378
|
+
task: args.task.text,
|
|
379
|
+
planFile
|
|
380
|
+
});
|
|
381
|
+
return {
|
|
382
|
+
status: "plan_ready",
|
|
383
|
+
planFile
|
|
384
|
+
};
|
|
385
|
+
}
|
|
386
|
+
if (declaredPlanFile !== planFile && await isPlanFileValid(declaredPlanFile)) {
|
|
375
387
|
await args.notify({
|
|
376
388
|
phase: "discovery_complete",
|
|
377
389
|
index: args.taskNum,
|
|
@@ -420,7 +432,19 @@ async function runDiscoveryPhase(args) {
|
|
|
420
432
|
workspaceDir: args.workspaceDir
|
|
421
433
|
});
|
|
422
434
|
const repairParsed = extractJsonObject(repairPass.text);
|
|
423
|
-
if (
|
|
435
|
+
if (await isPlanFileValid(declaredPlanFile)) {
|
|
436
|
+
await args.notify({
|
|
437
|
+
phase: "discovery_complete",
|
|
438
|
+
index: args.taskNum,
|
|
439
|
+
total: args.total,
|
|
440
|
+
task: args.task.text,
|
|
441
|
+
planFile: declaredPlanFile
|
|
442
|
+
});
|
|
443
|
+
return {
|
|
444
|
+
status: "plan_ready",
|
|
445
|
+
planFile: declaredPlanFile
|
|
446
|
+
};
|
|
447
|
+
}
|
|
424
448
|
const repairPlanFile = normalizeDiscoveryFilename(repairParsed?.filename, declaredPlanFile);
|
|
425
449
|
if (await isPlanFileValid(repairPlanFile) || await tryPersistPlanFallback({
|
|
426
450
|
planFile: repairPlanFile,
|
|
@@ -609,6 +633,9 @@ async function runAnton(args) {
|
|
|
609
633
|
});
|
|
610
634
|
try {
|
|
611
635
|
let planFile;
|
|
636
|
+
const gitCwdForBaseline = args.workspaceDir ? path.resolve(args.workspaceDir) : path.dirname(filePath);
|
|
637
|
+
const taskFileRelForBaseline = path.relative(gitCwdForBaseline, filePath).replace(/\\/g, "/");
|
|
638
|
+
const changedBeforeTask = await getGitChangedFileCount(gitCwdForBaseline, taskFileRelForBaseline.startsWith("..") ? [] : [taskFileRelForBaseline]);
|
|
612
639
|
if (mode === "preflight") {
|
|
613
640
|
const discoveryResult = await runDiscoveryPhase({
|
|
614
641
|
task,
|
|
@@ -680,7 +707,6 @@ async function runAnton(args) {
|
|
|
680
707
|
const gitCwd = args.workspaceDir ? path.resolve(args.workspaceDir) : path.dirname(filePath);
|
|
681
708
|
const taskFileRel = path.relative(gitCwd, filePath).replace(/\\/g, "/");
|
|
682
709
|
const changeIgnores = taskFileRel.startsWith("..") ? [] : [taskFileRel];
|
|
683
|
-
const changedBefore = await getGitChangedFileCount(gitCwd, changeIgnores);
|
|
684
710
|
await runAgentTask({
|
|
685
711
|
message: implPrompt,
|
|
686
712
|
sessionId: implSessionId,
|
|
@@ -692,7 +718,7 @@ async function runAnton(args) {
|
|
|
692
718
|
workspaceDir: args.workspaceDir
|
|
693
719
|
});
|
|
694
720
|
const changedAfter = await getGitChangedFileCount(gitCwd, changeIgnores);
|
|
695
|
-
if (mode === "preflight" &&
|
|
721
|
+
if (mode === "preflight" && changedBeforeTask !== null && changedAfter !== null && changedAfter <= changedBeforeTask) throw new Error("Implementation made no repository changes; refusing to mark task complete");
|
|
696
722
|
const updated = markTaskDone(await fs.readFile(filePath, "utf8"), task.line);
|
|
697
723
|
await fs.writeFile(filePath, updated, "utf8");
|
|
698
724
|
completed += 1;
|