@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
|
@@ -1,88 +1,88 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
2
|
-
import { c as resolveDefaultAgentId, d as resolveSessionAgentId, f as resolveSessionAgentIds, g as toAgentModelListLike, h as resolveAgentModelPrimaryValue, i as resolveAgentDir, l as resolveEffectiveModelFallbacks, m as resolveAgentModelFallbackValues, n as listAgentIds, o as resolveAgentSkillsFilter, r as resolveAgentConfig, s as resolveAgentWorkspaceDir, t as hasConfiguredModelFallbacks, u as resolveRunModelFallbacksOverride } from "./agent-scope-
|
|
3
|
-
import { d as resolveStateDir, f as expandHomePrefix, i as resolveConfigPath, m as resolveRequiredHomeDir, n as STATE_DIR, s as resolveGatewayPort } from "./paths-
|
|
4
|
-
import { C as triggerInternalHook, _ as getPluginCommandSpecs, a as listChatChannels, b as createInternalHookEvent, c as normalizeChatChannelId, d as requireActivePluginRegistry, f as setActivePluginRegistry, g as executePluginCommand, h as clearPluginCommands, i as getChatChannelMeta, l as getActivePluginRegistry, m as normalizePluginHttpPath, o as normalizeAnyChannelId, p as createPluginRegistry, r as CHAT_CHANNEL_ORDER, s as normalizeChannelId$1, t as createSubsystemLogger, u as getActivePluginRegistryKey, v as listPluginCommands, y as matchPluginCommand } from "./subsystem-
|
|
5
|
-
import { A as shouldLogVerbose, C as isPlainObject, D as logVerbose, F as theme, I as getChildLogger, K as resolvePreferredIdleHandsTmpDir, M as warn, N as colorize, P as isRich, S as truncateUtf16Safe, W as normalizeLogLevel, _ as shortenHomeInString, a as ensureDir$3, b as sliceUtf16Safe, c as isRecord$1, d as normalizeE164, h as resolveUserPath, k as setVerbose, o as escapeRegExp, r as clampInt, s as formatTerminalLink, t as CONFIG_DIR, v as shortenHomePath, w as danger, y as sleep$1 } from "./utils-
|
|
2
|
+
import { c as resolveDefaultAgentId, d as resolveSessionAgentId, f as resolveSessionAgentIds, g as toAgentModelListLike, h as resolveAgentModelPrimaryValue, i as resolveAgentDir, l as resolveEffectiveModelFallbacks, m as resolveAgentModelFallbackValues, n as listAgentIds, o as resolveAgentSkillsFilter, r as resolveAgentConfig, s as resolveAgentWorkspaceDir, t as hasConfiguredModelFallbacks, u as resolveRunModelFallbacksOverride } from "./agent-scope-DyP_tr7s.js";
|
|
3
|
+
import { d as resolveStateDir, f as expandHomePrefix, i as resolveConfigPath, m as resolveRequiredHomeDir, n as STATE_DIR, s as resolveGatewayPort } from "./paths-BYNVLNi_.js";
|
|
4
|
+
import { C as triggerInternalHook, _ as getPluginCommandSpecs, a as listChatChannels, b as createInternalHookEvent, c as normalizeChatChannelId, d as requireActivePluginRegistry, f as setActivePluginRegistry, g as executePluginCommand, h as clearPluginCommands, i as getChatChannelMeta, l as getActivePluginRegistry, m as normalizePluginHttpPath, o as normalizeAnyChannelId, p as createPluginRegistry, r as CHAT_CHANNEL_ORDER, s as normalizeChannelId$1, t as createSubsystemLogger, u as getActivePluginRegistryKey, v as listPluginCommands, y as matchPluginCommand } from "./subsystem-tzu-rIAJ.js";
|
|
5
|
+
import { A as shouldLogVerbose, C as isPlainObject, D as logVerbose, F as theme, I as getChildLogger, K as resolvePreferredIdleHandsTmpDir, M as warn, N as colorize, P as isRich, S as truncateUtf16Safe, W as normalizeLogLevel, _ as shortenHomeInString, a as ensureDir$3, b as sliceUtf16Safe, c as isRecord$1, d as normalizeE164, h as resolveUserPath, k as setVerbose, o as escapeRegExp, r as clampInt, s as formatTerminalLink, t as CONFIG_DIR, v as shortenHomePath, w as danger, y as sleep$1 } from "./utils-CTFLl_ji.js";
|
|
6
6
|
import { a as registerActiveProgressLine, i as clearActiveProgressLine, n as defaultRuntime, o as unregisterActiveProgressLine, t as createNonExitingRuntime } from "./runtime-8mi3mpYB.js";
|
|
7
7
|
import { S as resolveThreadParentSessionKey, _ as getSubagentDepth, b as isSubagentSessionKey, c as normalizeMainKey, d as sanitizeAgentId, f as DEFAULT_ACCOUNT_ID, g as deriveSessionChatType, h as isBlockedObjectKey, l as resolveAgentIdFromSessionKey, m as normalizeOptionalAccountId, o as classifySessionKeyShape, p as normalizeAccountId$2, r as buildAgentMainSessionKey, s as normalizeAgentId, t as DEFAULT_AGENT_ID, u as resolveThreadSessionKeys, v as isAcpSessionKey, x as parseAgentSessionKey, y as isCronSessionKey } from "./session-key-CuLPSMu_.js";
|
|
8
|
-
import { S as logWarn, T as openBoundaryFileSync, _ as runExec, a as DEFAULT_IDENTITY_FILENAME, b as logError, f as loadWorkspaceBootstrapFiles, g as runCommandWithTimeout, l as ensureAgentWorkspace, m as resolveIdleHandsPackageRoot, n as DEFAULT_AGENT_WORKSPACE_DIR, r as DEFAULT_BOOTSTRAP_FILENAME, u as filterBootstrapFilesForSession, v as spawnWithFallback, w as openBoundaryFile, x as logInfo, y as logDebug } from "./workspace-
|
|
9
|
-
import { $t as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, A as getSoonestCooldownExpiry, At as buildEnforcedShellCommand, Bt as unwrapKnownDispatchWrapperInvocation, C as getCustomProviderApiKey, Ct as unsetConfigValueAtPath, D as resolveModelAuthMode, Dt as normalizeTrustedSafeBinDirs, E as resolveEnvApiKey, Et as listWritableExplicitTrustedSafeBinDirs, F as resolveApiKeyForProfile, Ft as resolveAllowlistCandidatePath, G as normalizeTelegramCommandName, Gt as resolveSafeBinProfiles, H as writeConfigFile, Ht as splitShellArgs, It as resolveCommandResolutionFromArgv, J as isInboundPathAllowed, Jt as mapStreamingModeToSlackLegacyDraftStreamMode, K as resolveTelegramCustomCommands, Kt as applyMergePatch, Lt as extractShellWrapperInlineCommand, M as markAuthProfileFailure, Mt as splitCommandChain, N as markAuthProfileUsed, Nt as DEFAULT_SAFE_BINS, Ot as validateSafeBinArgv, P as resolveProfilesUnavailableReason, Pt as matchAllowlist, Q as normalizeScpRemoteHost, R as loadConfig, Rt as isDispatchWrapperExecutable, S as getApiKeyForModel, St as setConfigValueAtPath, T as resolveApiKeyForProvider, Tt as isTrustedSafeBinPath, U as validateConfigObjectWithPlugins, Ut as SAFE_BIN_PROFILES, V as resolveConfigSnapshotHash, Vt as unwrapKnownShellMultiplexerInvocation, W as TELEGRAM_COMMAND_NAME_PATTERN, Wt as normalizeSafeBinProfileFixtures, X as resolveIMessageAttachmentRoots, Xt as resolveSlackNativeStreaming, Yt as resolveDiscordPreviewStreamMode, Z as resolveIMessageRemoteAttachmentRoots, Zt as resolveSlackStreamingMode, _n as splitTrailingAuthProfile, _t as resetConfigOverrides, a as isCliProvider, an as resolveOwnerDisplaySetting, at as isPathWithinRoot, b as OLLAMA_NATIVE_BASE_URL, bn as DEFAULT_PROVIDER, bt as getConfigValueAtPath, c as normalizeProviderId, cn as markAuthProfileGood, ct as loadPluginManifestRegistry, d as resolveDefaultModelForAgent, dn as resolveIdleHandsAgentDir, dt as safeStatSync, en as resolveAgentMaxConcurrent, et as parseDurationMs, f as resolveModelRefFromString, fn as withFileLock, ft as applyTestPluginDefaults, gn as normalizeSecretInput, gt as getConfigOverrides, h as resolveThinkingDefault, hn as resolveAuthProfileDisplayLabel, ht as resolveMemorySlotDecision, i as findNormalizedProviderValue, in as isDangerousHostEnvVarName, it as isAvatarHttpUrl, j as isProfileInCooldown, jt as isWindowsPlatform, k as resolveAuthProfileOrder, kt as analyzeShellCommand, ln as ensureAuthProfileStore, lt as discoverIdleHandsPlugins, m as resolveSubagentSpawnModelSelection, mt as resolveEffectiveEnableState, n as buildConfiguredAllowlistKeys, nn as getShellPathFromLoginShell, nt as AVATAR_MAX_BYTES, o as modelKey, on as dedupeProfileIds, ot as isSupportedLocalAvatarExtension, p as resolveReasoningDefault, pt as normalizePluginsConfig, qt as isSafeExecutableValue, r as buildModelAliasIndex, rn as resolveShellEnvFallbackTimeoutMs, rt as isAvatarDataUrl, s as normalizeModelRef$2, sn as listProfilesForProvider, st as validateJsonSchemaValue, t as buildAllowedModelSet, tn as VERSION, u as resolveConfiguredModelRef, un as resolveAuthStorePathForDisplay, ut as isPathInside, vn as DEFAULT_CONTEXT_TOKENS, vt as setConfigOverride, w as requireApiKey, wt as getTrustedSafeBinDirs, x as createOllamaStreamFn, xt as parseConfigPath, yn as DEFAULT_MODEL, yt as unsetConfigOverride, z as readConfigFileSnapshot, zt as isShellWrapperExecutable } from "./model-selection-
|
|
10
|
-
import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-
|
|
8
|
+
import { S as logWarn, T as openBoundaryFileSync, _ as runExec, a as DEFAULT_IDENTITY_FILENAME, b as logError, f as loadWorkspaceBootstrapFiles, g as runCommandWithTimeout, l as ensureAgentWorkspace, m as resolveIdleHandsPackageRoot, n as DEFAULT_AGENT_WORKSPACE_DIR, r as DEFAULT_BOOTSTRAP_FILENAME, u as filterBootstrapFilesForSession, v as spawnWithFallback, w as openBoundaryFile, x as logInfo, y as logDebug } from "./workspace-DBFSzT6O.js";
|
|
9
|
+
import { $t as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, A as getSoonestCooldownExpiry, At as buildEnforcedShellCommand, Bt as unwrapKnownDispatchWrapperInvocation, C as getCustomProviderApiKey, Ct as unsetConfigValueAtPath, D as resolveModelAuthMode, Dt as normalizeTrustedSafeBinDirs, E as resolveEnvApiKey, Et as listWritableExplicitTrustedSafeBinDirs, F as resolveApiKeyForProfile, Ft as resolveAllowlistCandidatePath, G as normalizeTelegramCommandName, Gt as resolveSafeBinProfiles, H as writeConfigFile, Ht as splitShellArgs, It as resolveCommandResolutionFromArgv, J as isInboundPathAllowed, Jt as mapStreamingModeToSlackLegacyDraftStreamMode, K as resolveTelegramCustomCommands, Kt as applyMergePatch, Lt as extractShellWrapperInlineCommand, M as markAuthProfileFailure, Mt as splitCommandChain, N as markAuthProfileUsed, Nt as DEFAULT_SAFE_BINS, Ot as validateSafeBinArgv, P as resolveProfilesUnavailableReason, Pt as matchAllowlist, Q as normalizeScpRemoteHost, R as loadConfig, Rt as isDispatchWrapperExecutable, S as getApiKeyForModel, St as setConfigValueAtPath, T as resolveApiKeyForProvider, Tt as isTrustedSafeBinPath, U as validateConfigObjectWithPlugins, Ut as SAFE_BIN_PROFILES, V as resolveConfigSnapshotHash, Vt as unwrapKnownShellMultiplexerInvocation, W as TELEGRAM_COMMAND_NAME_PATTERN, Wt as normalizeSafeBinProfileFixtures, X as resolveIMessageAttachmentRoots, Xt as resolveSlackNativeStreaming, Yt as resolveDiscordPreviewStreamMode, Z as resolveIMessageRemoteAttachmentRoots, Zt as resolveSlackStreamingMode, _n as splitTrailingAuthProfile, _t as resetConfigOverrides, a as isCliProvider, an as resolveOwnerDisplaySetting, at as isPathWithinRoot, b as OLLAMA_NATIVE_BASE_URL, bn as DEFAULT_PROVIDER, bt as getConfigValueAtPath, c as normalizeProviderId, cn as markAuthProfileGood, ct as loadPluginManifestRegistry, d as resolveDefaultModelForAgent, dn as resolveIdleHandsAgentDir, dt as safeStatSync, en as resolveAgentMaxConcurrent, et as parseDurationMs, f as resolveModelRefFromString, fn as withFileLock, ft as applyTestPluginDefaults, gn as normalizeSecretInput, gt as getConfigOverrides, h as resolveThinkingDefault, hn as resolveAuthProfileDisplayLabel, ht as resolveMemorySlotDecision, i as findNormalizedProviderValue, in as isDangerousHostEnvVarName, it as isAvatarHttpUrl, j as isProfileInCooldown, jt as isWindowsPlatform, k as resolveAuthProfileOrder, kt as analyzeShellCommand, ln as ensureAuthProfileStore, lt as discoverIdleHandsPlugins, m as resolveSubagentSpawnModelSelection, mt as resolveEffectiveEnableState, n as buildConfiguredAllowlistKeys, nn as getShellPathFromLoginShell, nt as AVATAR_MAX_BYTES, o as modelKey, on as dedupeProfileIds, ot as isSupportedLocalAvatarExtension, p as resolveReasoningDefault, pt as normalizePluginsConfig, qt as isSafeExecutableValue, r as buildModelAliasIndex, rn as resolveShellEnvFallbackTimeoutMs, rt as isAvatarDataUrl, s as normalizeModelRef$2, sn as listProfilesForProvider, st as validateJsonSchemaValue, t as buildAllowedModelSet, tn as VERSION, u as resolveConfiguredModelRef, un as resolveAuthStorePathForDisplay, ut as isPathInside, vn as DEFAULT_CONTEXT_TOKENS, vt as setConfigOverride, w as requireApiKey, wt as getTrustedSafeBinDirs, x as createOllamaStreamFn, xt as parseConfigPath, yn as DEFAULT_MODEL, yt as unsetConfigOverride, z as readConfigFileSnapshot, zt as isShellWrapperExecutable } from "./model-selection-1MMYqY6M.js";
|
|
10
|
+
import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-Dgt6cnsM.js";
|
|
11
11
|
import { n as resolveCliName, t as formatCliCommand } from "./command-format-BAxx4PW5.js";
|
|
12
12
|
import { t as parseBooleanValue$1 } from "./boolean-CE7i9tBR.js";
|
|
13
|
-
import { t as isTruthyEnvValue } from "./env-
|
|
13
|
+
import { t as isTruthyEnvValue } from "./env-B5G1qwGc.js";
|
|
14
14
|
import { n as MANIFEST_KEY } from "./legacy-names-B4ZvHEmO.js";
|
|
15
|
-
import { a as resolveChannelGroupRequireMention, c as normalizeHyphenSlug, i as resolveChannelGroupPolicy, l as normalizeStringEntries, n as listChannelDocks, o as resolveChannelGroupToolsPolicy, r as normalizeSignalMessagingTarget, s as normalizeAtHashSlug, t as getChannelDock, u as normalizeStringEntriesLower } from "./dock-
|
|
15
|
+
import { a as resolveChannelGroupRequireMention, c as normalizeHyphenSlug, i as resolveChannelGroupPolicy, l as normalizeStringEntries, n as listChannelDocks, o as resolveChannelGroupToolsPolicy, r as normalizeSignalMessagingTarget, s as normalizeAtHashSlug, t as getChannelDock, u as normalizeStringEntriesLower } from "./dock-BgOmHcbh.js";
|
|
16
16
|
import { t as runTasksWithConcurrency } from "./run-with-concurrency-CEV6qf-x.js";
|
|
17
|
-
import { i as isSilentReplyText, n as SILENT_REPLY_TOKEN, r as isSilentReplyPrefixText, t as HEARTBEAT_TOKEN } from "./tokens-
|
|
18
|
-
import { _ as resolveDiscordAccount, a as normalizeWhatsAppTarget, c as listTelegramAccountIds, d as resolveSlackAccount, g as listEnabledDiscordAccounts, h as createDiscordActionGate, i as isWhatsAppGroupJid, l as resolveTelegramAccount, m as resolveSlackBotToken, n as listChannelPlugins, o as createTelegramActionGate, p as resolveSlackAppToken, r as normalizeChannelId$2, s as listEnabledTelegramAccounts, t as getChannelPlugin, u as resolveTelegramToken, v as normalizeDiscordToken } from "./plugins-
|
|
19
|
-
import { n as resolveWhatsAppAccount, t as hasAnyWhatsAppAuth } from "./accounts-
|
|
17
|
+
import { i as isSilentReplyText, n as SILENT_REPLY_TOKEN, r as isSilentReplyPrefixText, t as HEARTBEAT_TOKEN } from "./tokens-BRLyURxW.js";
|
|
18
|
+
import { _ as resolveDiscordAccount, a as normalizeWhatsAppTarget, c as listTelegramAccountIds, d as resolveSlackAccount, g as listEnabledDiscordAccounts, h as createDiscordActionGate, i as isWhatsAppGroupJid, l as resolveTelegramAccount, m as resolveSlackBotToken, n as listChannelPlugins, o as createTelegramActionGate, p as resolveSlackAppToken, r as normalizeChannelId$2, s as listEnabledTelegramAccounts, t as getChannelPlugin, u as resolveTelegramToken, v as normalizeDiscordToken } from "./plugins-CRB60mCJ.js";
|
|
19
|
+
import { n as resolveWhatsAppAccount, t as hasAnyWhatsAppAuth } from "./accounts-Dk8mJIrQ.js";
|
|
20
20
|
import { t as resolveAccountEntry } from "./account-lookup-DlMshWZ_.js";
|
|
21
21
|
import { t as normalizeChatType } from "./chat-type-BPBtOjer.js";
|
|
22
|
-
import { t as buildChannelAccountBindings } from "./bindings-
|
|
23
|
-
import { a as logoutWeb, i as logWebSelfId, l as readWebSelfId, n as getWebAuthAgeMs, p as webAuthExists } from "./auth-store-
|
|
24
|
-
import { a as resolveSlackWebClientOptions, c as buildSlackBlocksFallbackText, i as createSlackWebClient, l as parseSlackTarget, o as parseSlackBlocksInput, s as validateSlackBlocksArray, t as sendMessageSlack, u as resolveSlackChannelId } from "./send-
|
|
25
|
-
import { $ as fetchChannelPermissionsDiscord, A as unpinMessageDiscord, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveTimestampMs, D as pinMessageDiscord, Dt as normalizeChannelSlug, E as listThreadsDiscord, Et as buildChannelKeyCandidates, F as fetchMemberInfoDiscord, G as uploadStickerDiscord, H as timeoutMemberDiscord, I as fetchRoleInfoDiscord, J as editChannelDiscord, K as createChannelDiscord, L as fetchVoiceStatusDiscord, M as banMemberDiscord, N as createScheduledEventDiscord, O as readMessagesDiscord, Ot as resolveChannelEntryMatchWithFallback, P as fetchChannelInfoDiscord, Q as stripUndefinedFields, R as kickMemberDiscord, S as deleteMessageDiscord, St as resolveDiscordSystemLocation, T as listPinsDiscord, Tt as applyChannelMatchMeta, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendPollDiscord, _t as resolveDiscordShouldRequireMention, a as removeReactionDiscord, at as resolveDiscordChannelId, b as sendWebhookMessageDiscord, bt as formatDiscordReactionEmoji, c as formatDiscordComponentEventText, ct as allowListMatches$1, d as parseDiscordModalCustomId, dt as normalizeDiscordSlug, et as hasAnyGuildPermissionDiscord, f as parseDiscordModalCustomIdForCarbon, ft as resolveDiscordAllowListMatch, g as sendMessageDiscord, gt as resolveDiscordOwnerAllowFrom, h as resolveDiscordModalEntry, ht as resolveDiscordMemberAccessState, i as removeOwnReactionsDiscord, it as parseDiscordTarget, j as addRoleDiscord, k as searchMessagesDiscord, l as parseDiscordComponentCustomId, lt as isDiscordGroupAllowedByPolicy, m as resolveDiscordComponentEntry, mt as resolveDiscordGuildEntry, n as fetchReactionsDiscord, nt as createDiscordClient, o as sendDiscordComponentMessage, ot as listDiscordDirectoryGroupsLive, p as readDiscordComponentSpec, pt as resolveDiscordChannelConfigWithFallback, q as deleteChannelDiscord, r as reactMessageDiscord, rt as createDiscordRestClient, s as createDiscordFormModal, st as listDiscordDirectoryPeersLive, tt as chunkDiscordTextWithMode, u as parseDiscordComponentCustomIdForCarbon, ut as normalizeDiscordAllowList, v as sendStickerDiscord, vt as resolveGroupDmAllow, w as fetchMessageDiscord, wt as fetchDiscord, x as createThreadDiscord, xt as formatDiscordUserTag, y as sendVoiceMessageDiscord, yt as shouldEmitDiscordReactionNotification, z as listGuildChannelsDiscord } from "./send-
|
|
22
|
+
import { t as buildChannelAccountBindings } from "./bindings-D3b5Fmc9.js";
|
|
23
|
+
import { a as logoutWeb, i as logWebSelfId, l as readWebSelfId, n as getWebAuthAgeMs, p as webAuthExists } from "./auth-store-DXT-l7fO.js";
|
|
24
|
+
import { a as resolveSlackWebClientOptions, c as buildSlackBlocksFallbackText, i as createSlackWebClient, l as parseSlackTarget, o as parseSlackBlocksInput, s as validateSlackBlocksArray, t as sendMessageSlack, u as resolveSlackChannelId } from "./send-BeIZJuy4.js";
|
|
25
|
+
import { $ as fetchChannelPermissionsDiscord, A as unpinMessageDiscord, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveTimestampMs, D as pinMessageDiscord, Dt as normalizeChannelSlug, E as listThreadsDiscord, Et as buildChannelKeyCandidates, F as fetchMemberInfoDiscord, G as uploadStickerDiscord, H as timeoutMemberDiscord, I as fetchRoleInfoDiscord, J as editChannelDiscord, K as createChannelDiscord, L as fetchVoiceStatusDiscord, M as banMemberDiscord, N as createScheduledEventDiscord, O as readMessagesDiscord, Ot as resolveChannelEntryMatchWithFallback, P as fetchChannelInfoDiscord, Q as stripUndefinedFields, R as kickMemberDiscord, S as deleteMessageDiscord, St as resolveDiscordSystemLocation, T as listPinsDiscord, Tt as applyChannelMatchMeta, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendPollDiscord, _t as resolveDiscordShouldRequireMention, a as removeReactionDiscord, at as resolveDiscordChannelId, b as sendWebhookMessageDiscord, bt as formatDiscordReactionEmoji, c as formatDiscordComponentEventText, ct as allowListMatches$1, d as parseDiscordModalCustomId, dt as normalizeDiscordSlug, et as hasAnyGuildPermissionDiscord, f as parseDiscordModalCustomIdForCarbon, ft as resolveDiscordAllowListMatch, g as sendMessageDiscord, gt as resolveDiscordOwnerAllowFrom, h as resolveDiscordModalEntry, ht as resolveDiscordMemberAccessState, i as removeOwnReactionsDiscord, it as parseDiscordTarget, j as addRoleDiscord, k as searchMessagesDiscord, l as parseDiscordComponentCustomId, lt as isDiscordGroupAllowedByPolicy, m as resolveDiscordComponentEntry, mt as resolveDiscordGuildEntry, n as fetchReactionsDiscord, nt as createDiscordClient, o as sendDiscordComponentMessage, ot as listDiscordDirectoryGroupsLive, p as readDiscordComponentSpec, pt as resolveDiscordChannelConfigWithFallback, q as deleteChannelDiscord, r as reactMessageDiscord, rt as createDiscordRestClient, s as createDiscordFormModal, st as listDiscordDirectoryPeersLive, tt as chunkDiscordTextWithMode, u as parseDiscordComponentCustomIdForCarbon, ut as normalizeDiscordAllowList, v as sendStickerDiscord, vt as resolveGroupDmAllow, w as fetchMessageDiscord, wt as fetchDiscord, x as createThreadDiscord, xt as formatDiscordUserTag, y as sendVoiceMessageDiscord, yt as shouldEmitDiscordReactionNotification, z as listGuildChannelsDiscord } from "./send-DmLC7aEF.js";
|
|
26
26
|
import { n as generateSecureUuid, t as generateSecureToken } from "./secure-random-B1N_MXT_.js";
|
|
27
|
-
import { C as initializeGlobalHookRunner, S as getGlobalHookRunner, _ as createReplyToModeFilterForChannel, a as normalizeOutboundPayloadsForJson, b as normalizeChannelTargetInput, c as parseReplyDirectives, d as applyReplyThreading, f as filterMessagingToolDuplicates, g as shouldSuppressReasoningPayload, h as shouldSuppressMessagingToolReplies, i as normalizeOutboundPayloads, l as splitMediaFromOutput, m as isRenderablePayload, o as normalizeReplyPayloadsForDelivery, p as filterMessagingToolMediaDuplicates, r as formatOutboundPayloadLog, s as throwIfAborted, t as deliverOutboundPayloads, u as applyReplyTagsToPayload, v as resolveReplyToMode, x as normalizeTargetForProvider, y as buildTargetResolverSignature } from "./deliver-
|
|
28
|
-
import { a as logMessageProcessed, c as logWebhookError, d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, i as logLaneEnqueue, l as logWebhookProcessed, m as isDiagnosticsEnabled, o as logMessageQueued, p as emitDiagnosticEvent, r as logLaneDequeue, s as logSessionStateChange, t as diag, u as logWebhookReceived } from "./diagnostic-
|
|
27
|
+
import { C as initializeGlobalHookRunner, S as getGlobalHookRunner, _ as createReplyToModeFilterForChannel, a as normalizeOutboundPayloadsForJson, b as normalizeChannelTargetInput, c as parseReplyDirectives, d as applyReplyThreading, f as filterMessagingToolDuplicates, g as shouldSuppressReasoningPayload, h as shouldSuppressMessagingToolReplies, i as normalizeOutboundPayloads, l as splitMediaFromOutput, m as isRenderablePayload, o as normalizeReplyPayloadsForDelivery, p as filterMessagingToolMediaDuplicates, r as formatOutboundPayloadLog, s as throwIfAborted, t as deliverOutboundPayloads, u as applyReplyTagsToPayload, v as resolveReplyToMode, x as normalizeTargetForProvider, y as buildTargetResolverSignature } from "./deliver-CVTXl0Cv.js";
|
|
28
|
+
import { a as logMessageProcessed, c as logWebhookError, d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, i as logLaneEnqueue, l as logWebhookProcessed, m as isDiagnosticsEnabled, o as logMessageQueued, p as emitDiagnosticEvent, r as logLaneDequeue, s as logSessionStateChange, t as diag, u as logWebhookReceived } from "./diagnostic-4owMk4vH.js";
|
|
29
29
|
import { r as getDiagnosticSessionState } from "./diagnostic-session-state-BGF2r-kt.js";
|
|
30
|
-
import { n as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-
|
|
31
|
-
import { $ as readJsonFileWithFallback, A as extractTelegramLocation, B as normalizeAllowFrom$2, C as buildTelegramGroupFrom, D as buildTypingThreadParams, E as buildTelegramThreadParams, F as resolveTelegramMediaPlaceholder, G as mergeDmAllowFromSources, H as resolveSenderAllowMatch, I as resolveTelegramReplyId, J as toLocationContext, K as resolveGroupAllowFromSources, L as resolveTelegramStreamMode, M as normalizeForwardedContext, N as resolveTelegramForumThreadId, O as describeReplyTarget, P as resolveTelegramGroupAllowFromContext, Q as upsertChannelPairingRequest, R as resolveTelegramThreadSpec, S as buildSenderName, T as buildTelegramParentPeer, U as firstDefined$1, V as normalizeDmAllowFromWithStore$1, W as isSenderIdAllowed, X as readChannelAllowFromStore, Y as addChannelAllowFromStoreEntry, Z as removeChannelAllowFromStoreEntry, _ as resolveTelegramFetch, a as reactMessageTelegram, at as resolveTelegramTargetChatType, b as buildGroupLabel, c as sendStickerTelegram, d as wasSentByBot, et as writeJsonFileAtomically, f as isRecoverableTelegramNetworkError, g as wrapFileReferencesInHtml, h as renderTelegramHtmlText, i as editMessageTelegram, it as parseTelegramTarget, j as hasBotMention, k as expandTextLinks, m as markdownToTelegramHtml, n as createForumTopicTelegram, nt as listPairingChannels, o as sendMessageTelegram, p as markdownToTelegramChunks, q as formatLocationText, r as deleteMessageTelegram, rt as isVoiceCompatibleAudio, s as sendPollTelegram, t as buildInlineKeyboard, tt as getPairingAdapter, u as resolveTelegramVoiceSend, v as splitTelegramCaption, w as buildTelegramGroupPeerId, x as buildSenderLabel, y as withTelegramApiErrorLogging, z as isSenderAllowed$1 } from "./send-
|
|
32
|
-
import { c as detectMime, d as imageMimeFromFormat, f as isAudioFileName, g as MAX_IMAGE_BYTES, i as getImageMetadata, l as extensionForMime, p as isGifMedia, s as resizeToJpeg, v as mediaKindFromMime } from "./image-ops-
|
|
33
|
-
import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-
|
|
34
|
-
import { a as isMarkdownCapableMessageChannel, c as resolveGatewayMessageChannel, d as GATEWAY_CLIENT_MODES, f as GATEWAY_CLIENT_NAMES, i as isInternalMessageChannel, l as resolveMessageChannel, n as isDeliverableMessageChannel, o as listDeliverableMessageChannels, r as isGatewayMessageChannel, s as normalizeMessageChannel, t as INTERNAL_MESSAGE_CHANNEL, u as GATEWAY_CLIENT_IDS } from "./message-channel-
|
|
35
|
-
import { $ as stripPluginOnlyAllowlist, A as isTimeoutErrorMessage, B as resolveBrowserConfig, C as isCompactionFailureError, D as isLikelyContextOverflowError, E as isFailoverErrorMessage, F as ensureSandboxWorkspaceForSession, G as resolveGatewayCredentialsFromConfig, H as getBridgeAuthForPort, I as resolveSandboxContext, J as applyOwnerOnlyToolPolicy, K as trimToUndefined$1, L as resolveSandboxRuntimeStatus, M as parseImageDimensionError, N as parseImageSizeError, O as isRateLimitAssistantError, P as sanitizeUserFacingText, Q as mergeAlsoAllowPolicy, R as createBrowserRouteContext, S as isCloudCodeAssistFormatError, T as isFailoverAssistantError, U as ensureBrowserControlAuth, V as resolveProfile, W as resolveBrowserControlAuth, X as collectExplicitAllowlist, Y as buildPluginToolGroups, Z as expandPolicyWithPluginGroups, _ as formatRawAssistantErrorForUi, a as isMessagingToolDuplicateNormalized, at as buildBootstrapContextFiles, b as isAuthPermanentErrorMessage, c as extractToolCallsFromAssistant, ct as resolveBootstrapTotalMaxChars, d as downgradeOpenAIReasoningBlocks, et as expandToolGroups, f as isGoogleModelApi, g as formatBillingErrorMessage, h as formatAssistantErrorText, it as matchesAnyGlobPattern, j as isTransientHttpError, k as isRawApiErrorPayload, l as extractToolResultId, lt as sanitizeGoogleTurnOrdering, m as classifyFailoverReason, n as validateGeminiTurns, nt as resolveToolProfilePolicy, o as normalizeTextForComparison, ot as ensureSessionHeader, p as BILLING_ERROR_USER_MESSAGE, q as resolveSandboxConfigForAgent, r as pickFallbackThinkingLevel, rt as compileGlobPatterns, s as sanitizeSessionMessagesImages, st as resolveBootstrapMaxChars, t as validateAnthropicTurns, tt as normalizeToolName, u as sanitizeToolCallIdsForCloudCodeAssist, v as getApiErrorPayloadFingerprint, w as isContextOverflowError, x as isBillingAssistantError, y as isAuthAssistantError, z as registerBrowserRoutes } from "./pi-embedded-helpers-
|
|
36
|
-
import { C as ensureChromeExtensionRelayServer, F as isSecureWebSocketUrl, O as DEFAULT_UPLOAD_DIR, P as isLoopbackHost, R as DEFAULT_AI_SNAPSHOT_MAX_CHARS, T as rawDataToString, k as resolveExistingPathsWithinRoot, s as resolveLsofCommandSync } from "./chrome-
|
|
30
|
+
import { n as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-BDVs8LTu.js";
|
|
31
|
+
import { $ as readJsonFileWithFallback, A as extractTelegramLocation, B as normalizeAllowFrom$2, C as buildTelegramGroupFrom, D as buildTypingThreadParams, E as buildTelegramThreadParams, F as resolveTelegramMediaPlaceholder, G as mergeDmAllowFromSources, H as resolveSenderAllowMatch, I as resolveTelegramReplyId, J as toLocationContext, K as resolveGroupAllowFromSources, L as resolveTelegramStreamMode, M as normalizeForwardedContext, N as resolveTelegramForumThreadId, O as describeReplyTarget, P as resolveTelegramGroupAllowFromContext, Q as upsertChannelPairingRequest, R as resolveTelegramThreadSpec, S as buildSenderName, T as buildTelegramParentPeer, U as firstDefined$1, V as normalizeDmAllowFromWithStore$1, W as isSenderIdAllowed, X as readChannelAllowFromStore, Y as addChannelAllowFromStoreEntry, Z as removeChannelAllowFromStoreEntry, _ as resolveTelegramFetch, a as reactMessageTelegram, at as resolveTelegramTargetChatType, b as buildGroupLabel, c as sendStickerTelegram, d as wasSentByBot, et as writeJsonFileAtomically, f as isRecoverableTelegramNetworkError, g as wrapFileReferencesInHtml, h as renderTelegramHtmlText, i as editMessageTelegram, it as parseTelegramTarget, j as hasBotMention, k as expandTextLinks, m as markdownToTelegramHtml, n as createForumTopicTelegram, nt as listPairingChannels, o as sendMessageTelegram, p as markdownToTelegramChunks, q as formatLocationText, r as deleteMessageTelegram, rt as isVoiceCompatibleAudio, s as sendPollTelegram, t as buildInlineKeyboard, tt as getPairingAdapter, u as resolveTelegramVoiceSend, v as splitTelegramCaption, w as buildTelegramGroupPeerId, x as buildSenderLabel, y as withTelegramApiErrorLogging, z as isSenderAllowed$1 } from "./send-Dfa3sn6r.js";
|
|
32
|
+
import { c as detectMime, d as imageMimeFromFormat, f as isAudioFileName, g as MAX_IMAGE_BYTES, i as getImageMetadata, l as extensionForMime, p as isGifMedia, s as resizeToJpeg, v as mediaKindFromMime } from "./image-ops-D1KtygWz.js";
|
|
33
|
+
import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-Bb__OY-j.js";
|
|
34
|
+
import { a as isMarkdownCapableMessageChannel, c as resolveGatewayMessageChannel, d as GATEWAY_CLIENT_MODES, f as GATEWAY_CLIENT_NAMES, i as isInternalMessageChannel, l as resolveMessageChannel, n as isDeliverableMessageChannel, o as listDeliverableMessageChannels, r as isGatewayMessageChannel, s as normalizeMessageChannel, t as INTERNAL_MESSAGE_CHANNEL, u as GATEWAY_CLIENT_IDS } from "./message-channel-C8QtrwEU.js";
|
|
35
|
+
import { $ as stripPluginOnlyAllowlist, A as isTimeoutErrorMessage, B as resolveBrowserConfig, C as isCompactionFailureError, D as isLikelyContextOverflowError, E as isFailoverErrorMessage, F as ensureSandboxWorkspaceForSession, G as resolveGatewayCredentialsFromConfig, H as getBridgeAuthForPort, I as resolveSandboxContext, J as applyOwnerOnlyToolPolicy, K as trimToUndefined$1, L as resolveSandboxRuntimeStatus, M as parseImageDimensionError, N as parseImageSizeError, O as isRateLimitAssistantError, P as sanitizeUserFacingText, Q as mergeAlsoAllowPolicy, R as createBrowserRouteContext, S as isCloudCodeAssistFormatError, T as isFailoverAssistantError, U as ensureBrowserControlAuth, V as resolveProfile, W as resolveBrowserControlAuth, X as collectExplicitAllowlist, Y as buildPluginToolGroups, Z as expandPolicyWithPluginGroups, _ as formatRawAssistantErrorForUi, a as isMessagingToolDuplicateNormalized, at as buildBootstrapContextFiles, b as isAuthPermanentErrorMessage, c as extractToolCallsFromAssistant, ct as resolveBootstrapTotalMaxChars, d as downgradeOpenAIReasoningBlocks, et as expandToolGroups, f as isGoogleModelApi, g as formatBillingErrorMessage, h as formatAssistantErrorText, it as matchesAnyGlobPattern, j as isTransientHttpError, k as isRawApiErrorPayload, l as extractToolResultId, lt as sanitizeGoogleTurnOrdering, m as classifyFailoverReason, n as validateGeminiTurns, nt as resolveToolProfilePolicy, o as normalizeTextForComparison, ot as ensureSessionHeader, p as BILLING_ERROR_USER_MESSAGE, q as resolveSandboxConfigForAgent, r as pickFallbackThinkingLevel, rt as compileGlobPatterns, s as sanitizeSessionMessagesImages, st as resolveBootstrapMaxChars, t as validateAnthropicTurns, tt as normalizeToolName, u as sanitizeToolCallIdsForCloudCodeAssist, v as getApiErrorPayloadFingerprint, w as isContextOverflowError, x as isBillingAssistantError, y as isAuthAssistantError, z as registerBrowserRoutes } from "./pi-embedded-helpers-CyTpDKo5.js";
|
|
36
|
+
import { C as ensureChromeExtensionRelayServer, F as isSecureWebSocketUrl, O as DEFAULT_UPLOAD_DIR, P as isLoopbackHost, R as DEFAULT_AI_SNAPSHOT_MAX_CHARS, T as rawDataToString, k as resolveExistingPathsWithinRoot, s as resolveLsofCommandSync } from "./chrome-_2tzVjVl.js";
|
|
37
37
|
import { i as isBlockedHostnameOrIp, o as normalizeHostname, t as SsrFBlockedError } from "./ssrf-CZeHDwVZ.js";
|
|
38
|
-
import { c as assertSandboxPath, d as resolveSandboxedMediaSource, f as applySkillEnvOverrides, i as resolveSkillsPromptForRun, l as resolveSandboxInputPath, n as buildWorkspaceSkillSnapshot, p as applySkillEnvOverridesFromSnapshot, r as loadWorkspaceSkillEntries, s as assertMediaNotDataUrl } from "./skills-
|
|
39
|
-
import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-
|
|
40
|
-
import { r as compileSafeRegex, t as redactSensitiveText } from "./redact-
|
|
41
|
-
import { n as formatErrorMessage, r as formatUncaughtError } from "./errors
|
|
42
|
-
import { i as writeFileWithinRoot, n as openFileWithinRoot, t as SafeOpenError } from "./fs-safe-
|
|
43
|
-
import { n as getMediaDir, r as saveMediaBuffer } from "./store-
|
|
44
|
-
import { A as normalizeInputProvenance, B as setSessionRuntimeModel, C as capArrayByJsonBytes, D as INPUT_PROVENANCE_KIND_VALUES, E as parseInlineDirectives$1, F as resolveSessionResetType, G as deriveSessionMetaPatch, I as resolveThreadFlag, J as resolveSessionLockMaxHoldFromTimeout, K as resolveGroupSessionKey, L as DEFAULT_RESET_TRIGGERS, M as evaluateSessionFreshness, N as resolveChannelResetConfig, O as applyInputProvenanceToUserMessage, P as resolveSessionResetPolicy, R as mergeSessionEntry, S as archiveSessionTranscripts, T as extractToolCallNames, U as resolveExplicitAgentSessionKey, V as canonicalizeMainSessionAlias, W as resolveMainSessionKey, _ as deliveryContextKey, b as normalizeSessionDeliveryFields, c as readSessionUpdatedAt, d as updateLastRoute, f as updateSessionStore, g as deliveryContextFromSession, h as resolveCacheTtlMs$1, i as appendAssistantMessageToSessionTranscript, j as resolveSessionKey, k as hasInterSessionUserProvenance, l as recordSessionMetaFromInbound, m as isCacheEnabled, n as extractDeliveryInfo, o as resolveAndPersistSessionFile, p as updateSessionStoreEntry, q as acquireSessionWriteLock, r as parseSessionThreadInfo, s as loadSessionStore, v as mergeDeliveryContext, w as countToolResults, x as normalizeAccountId$3, y as normalizeDeliveryContext, z as resolveFreshSessionTotalTokens } from "./sessions-
|
|
38
|
+
import { c as assertSandboxPath, d as resolveSandboxedMediaSource, f as applySkillEnvOverrides, i as resolveSkillsPromptForRun, l as resolveSandboxInputPath, n as buildWorkspaceSkillSnapshot, p as applySkillEnvOverridesFromSnapshot, r as loadWorkspaceSkillEntries, s as assertMediaNotDataUrl } from "./skills-CnAPWfca.js";
|
|
39
|
+
import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-Cu1nXNMM.js";
|
|
40
|
+
import { r as compileSafeRegex, t as redactSensitiveText } from "./redact-Bvpf-ATQ.js";
|
|
41
|
+
import { n as formatErrorMessage, r as formatUncaughtError } from "./errors-C_0nm4TJ.js";
|
|
42
|
+
import { i as writeFileWithinRoot, n as openFileWithinRoot, t as SafeOpenError } from "./fs-safe-CYUaAFO9.js";
|
|
43
|
+
import { n as getMediaDir, r as saveMediaBuffer } from "./store-CvMgrKWx.js";
|
|
44
|
+
import { A as normalizeInputProvenance, B as setSessionRuntimeModel, C as capArrayByJsonBytes, D as INPUT_PROVENANCE_KIND_VALUES, E as parseInlineDirectives$1, F as resolveSessionResetType, G as deriveSessionMetaPatch, I as resolveThreadFlag, J as resolveSessionLockMaxHoldFromTimeout, K as resolveGroupSessionKey, L as DEFAULT_RESET_TRIGGERS, M as evaluateSessionFreshness, N as resolveChannelResetConfig, O as applyInputProvenanceToUserMessage, P as resolveSessionResetPolicy, R as mergeSessionEntry, S as archiveSessionTranscripts, T as extractToolCallNames, U as resolveExplicitAgentSessionKey, V as canonicalizeMainSessionAlias, W as resolveMainSessionKey, _ as deliveryContextKey, b as normalizeSessionDeliveryFields, c as readSessionUpdatedAt, d as updateLastRoute, f as updateSessionStore, g as deliveryContextFromSession, h as resolveCacheTtlMs$1, i as appendAssistantMessageToSessionTranscript, j as resolveSessionKey, k as hasInterSessionUserProvenance, l as recordSessionMetaFromInbound, m as isCacheEnabled, n as extractDeliveryInfo, o as resolveAndPersistSessionFile, p as updateSessionStoreEntry, q as acquireSessionWriteLock, r as parseSessionThreadInfo, s as loadSessionStore, v as mergeDeliveryContext, w as countToolResults, x as normalizeAccountId$3, y as normalizeDeliveryContext, z as resolveFreshSessionTotalTokens } from "./sessions-3ioSeOA1.js";
|
|
45
45
|
import { n as resolveConversationLabel } from "./conversation-label-1Wad2kXc.js";
|
|
46
|
-
import { t as resolveIMessageAccount } from "./accounts-
|
|
47
|
-
import { a as resolveSessionFilePathOptions, i as resolveSessionFilePath, l as resolveSessionTranscriptsDirForAgent, o as resolveSessionTranscriptPath, r as resolveDefaultSessionStorePath, u as resolveStorePath } from "./paths-
|
|
46
|
+
import { t as resolveIMessageAccount } from "./accounts-CIvVRRHb.js";
|
|
47
|
+
import { a as resolveSessionFilePathOptions, i as resolveSessionFilePath, l as resolveSessionTranscriptsDirForAgent, o as resolveSessionTranscriptPath, r as resolveDefaultSessionStorePath, u as resolveStorePath } from "./paths-D_qUel1T.js";
|
|
48
48
|
import { t as emitSessionTranscriptUpdate } from "./transcript-events-_OimdA_2.js";
|
|
49
|
-
import { a as canonicalizeBase64, i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, o as estimateBase64DecodedBytes, r as sanitizeToolResultImages } from "./tool-images-
|
|
49
|
+
import { a as canonicalizeBase64, i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, o as estimateBase64DecodedBytes, r as sanitizeToolResultImages } from "./tool-images-CcGZpzmq.js";
|
|
50
50
|
import { a as normalizeReasoningLevel, c as normalizeVerboseLevel, i as normalizeElevatedLevel, l as resolveResponseUsageMode, n as formatXHighModelHint, o as normalizeThinkLevel, s as normalizeUsageDisplay, t as formatThinkingLevels, u as supportsXHighThinking } from "./thinking-z4_linel.js";
|
|
51
|
-
import { C as extractTextFromChatContent, S as isInsideCode, _ as stripMinimaxToolCallXml, a as decodeDataUrl, b as stripReasoningTagsFromText, c as extractAssistantText$1, d as extractThinkingFromTaggedText, f as formatReasoningMessage, g as stripDowngradedToolCallText, h as promoteThinkingTagsToBlocks, i as coerceImageModelConfig, l as extractAssistantThinking, m as isAssistantMessage, o as resolveProviderVisionModelFromConfig, p as inferToolMetaFromArgs, r as coerceImageAssistantText, s as minimaxUnderstandImage, u as extractThinkingFromTaggedStream, v as stripThinkingTagsFromText, w as ensureIdleHandsModelsJson, x as findCodeRegions, y as resolveToolDisplay } from "./image-
|
|
52
|
-
import { a as resolveAgentIdentity, i as resolveAckReaction, o as resolveEffectiveMessagesConfig, r as resolveResponsePrefixTemplate, s as resolveHumanDelayConfig, t as createReplyPrefixOptions } from "./reply-prefix-
|
|
53
|
-
import { n as resolveMemorySearchConfig } from "./manager-
|
|
51
|
+
import { C as extractTextFromChatContent, S as isInsideCode, _ as stripMinimaxToolCallXml, a as decodeDataUrl, b as stripReasoningTagsFromText, c as extractAssistantText$1, d as extractThinkingFromTaggedText, f as formatReasoningMessage, g as stripDowngradedToolCallText, h as promoteThinkingTagsToBlocks, i as coerceImageModelConfig, l as extractAssistantThinking, m as isAssistantMessage, o as resolveProviderVisionModelFromConfig, p as inferToolMetaFromArgs, r as coerceImageAssistantText, s as minimaxUnderstandImage, u as extractThinkingFromTaggedStream, v as stripThinkingTagsFromText, w as ensureIdleHandsModelsJson, x as findCodeRegions, y as resolveToolDisplay } from "./image-COw__ACq.js";
|
|
52
|
+
import { a as resolveAgentIdentity, i as resolveAckReaction, o as resolveEffectiveMessagesConfig, r as resolveResponsePrefixTemplate, s as resolveHumanDelayConfig, t as createReplyPrefixOptions } from "./reply-prefix-BUgeSN2R.js";
|
|
53
|
+
import { n as resolveMemorySearchConfig } from "./manager-BE_76jWB.js";
|
|
54
54
|
import { n as fetchWithTimeout, t as bindAbortRelay } from "./fetch-timeout-3YYM8QuM.js";
|
|
55
|
-
import { t as fetchWithSsrFGuard } from "./fetch-guard-
|
|
56
|
-
import { f as listMemoryFiles, p as normalizeExtraMemoryPaths } from "./query-expansion-
|
|
57
|
-
import { n as retryAsync } from "./retry-
|
|
58
|
-
import { a as createActionGate, c as jsonResult, d as readReactionParams, f as readStringArrayParam, l as parseAvailableTags, m as readStringParam, n as missingTargetError, o as imageResult, p as readStringOrNumberParam, r as unknownTargetError, s as imageResultFromFile, t as ambiguousTargetError, u as readNumberParam } from "./target-errors-
|
|
59
|
-
import { a as chunkText, c as resolveChunkMode, d as isSafeFenceBreak, f as parseFenceSpans, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, o as chunkTextWithMode, r as chunkMarkdownText, t as chunkByNewline, u as findFenceSpanAt } from "./chunk-
|
|
60
|
-
import { n as resolveMarkdownTableMode } from "./markdown-tables-
|
|
61
|
-
import { a as readResponseWithLimit, i as fetchRemoteMedia, n as getDefaultMediaLocalRoots, r as MediaFetchError, t as getAgentScopedMediaLocalRoots } from "./local-roots-
|
|
62
|
-
import { a as loadWebMedia, i as getDefaultLocalRoots } from "./ir-
|
|
63
|
-
import { _ as isNativeCommandsExplicitlyDisabled, a as listChatCommands, b as resolveNativeSkillsEnabled, c as listNativeCommandSpecsForConfig, d as parseCommandArgs, f as resolveCommandArgChoices, g as isCommandFlagEnabled, h as shouldHandleTextCommands, i as isCommandEnabled, l as maybeResolveTextAlias, m as serializeCommandArgs, o as listChatCommandsForConfig, p as resolveCommandArgMenu, r as findCommandByNativeName, s as listNativeCommandSpecs, t as buildCommandTextFromArgs, u as normalizeCommandBody, v as isRestartEnabled, y as resolveNativeCommandsEnabled } from "./commands-registry-
|
|
64
|
-
import { c as getSkillsSnapshotVersion, d as createAsyncLock, f as readJsonFile, i as resolveSkillCommandInvocation, l as pruneExpiredPending, n as listSkillCommandsForAgents, o as getRemoteSkillEligibility, p as writeJsonAtomic, r as listSkillCommandsForWorkspace, s as ensureSkillsWatcher, t as listReservedChatSlashCommandNames, u as resolvePairingPaths } from "./skill-commands-
|
|
55
|
+
import { t as fetchWithSsrFGuard } from "./fetch-guard-iuQsIjqN.js";
|
|
56
|
+
import { f as listMemoryFiles, p as normalizeExtraMemoryPaths } from "./query-expansion-DEq020GG.js";
|
|
57
|
+
import { n as retryAsync } from "./retry-BeB9WenR.js";
|
|
58
|
+
import { a as createActionGate, c as jsonResult, d as readReactionParams, f as readStringArrayParam, l as parseAvailableTags, m as readStringParam, n as missingTargetError, o as imageResult, p as readStringOrNumberParam, r as unknownTargetError, s as imageResultFromFile, t as ambiguousTargetError, u as readNumberParam } from "./target-errors-BPfQrPim.js";
|
|
59
|
+
import { a as chunkText, c as resolveChunkMode, d as isSafeFenceBreak, f as parseFenceSpans, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, o as chunkTextWithMode, r as chunkMarkdownText, t as chunkByNewline, u as findFenceSpanAt } from "./chunk-CMpX7Jaz.js";
|
|
60
|
+
import { n as resolveMarkdownTableMode } from "./markdown-tables-CzsockiZ.js";
|
|
61
|
+
import { a as readResponseWithLimit, i as fetchRemoteMedia, n as getDefaultMediaLocalRoots, r as MediaFetchError, t as getAgentScopedMediaLocalRoots } from "./local-roots-KN4Hp1yZ.js";
|
|
62
|
+
import { a as loadWebMedia, i as getDefaultLocalRoots } from "./ir-B7IBoKLy.js";
|
|
63
|
+
import { _ as isNativeCommandsExplicitlyDisabled, a as listChatCommands, b as resolveNativeSkillsEnabled, c as listNativeCommandSpecsForConfig, d as parseCommandArgs, f as resolveCommandArgChoices, g as isCommandFlagEnabled, h as shouldHandleTextCommands, i as isCommandEnabled, l as maybeResolveTextAlias, m as serializeCommandArgs, o as listChatCommandsForConfig, p as resolveCommandArgMenu, r as findCommandByNativeName, s as listNativeCommandSpecs, t as buildCommandTextFromArgs, u as normalizeCommandBody, v as isRestartEnabled, y as resolveNativeCommandsEnabled } from "./commands-registry-j4vAzcF2.js";
|
|
64
|
+
import { c as getSkillsSnapshotVersion, d as createAsyncLock, f as readJsonFile, i as resolveSkillCommandInvocation, l as pruneExpiredPending, n as listSkillCommandsForAgents, o as getRemoteSkillEligibility, p as writeJsonAtomic, r as listSkillCommandsForWorkspace, s as ensureSkillsWatcher, t as listReservedChatSlashCommandNames, u as resolvePairingPaths } from "./skill-commands-Ck3flWX7.js";
|
|
65
65
|
import { r as normalizeInboundTextNewlines, t as finalizeInboundContext } from "./inbound-context-BYczzTII.js";
|
|
66
|
-
import { _ as resolveMediaUnderstandingScope, a as resolveMediaAttachmentLocalRoots, c as loadModelCatalog, d as resolveAttachmentKind, f as buildRandomTempFilePath, g as normalizeMediaUnderstandingChatType, h as resolveTimeoutMs$2, i as resolveAutoImageModel, l as modelSupportsVision, m as resolveConcurrency, n as createMediaAttachmentCache, o as runCapability, p as registerUnhandledRejectionHandler, r as normalizeMediaAttachments, s as findModelInCatalog, t as buildProviderRegistry, v as CLI_OUTPUT_MAX_BUFFER, y as applyTemplate } from "./runner-
|
|
66
|
+
import { _ as resolveMediaUnderstandingScope, a as resolveMediaAttachmentLocalRoots, c as loadModelCatalog, d as resolveAttachmentKind, f as buildRandomTempFilePath, g as normalizeMediaUnderstandingChatType, h as resolveTimeoutMs$2, i as resolveAutoImageModel, l as modelSupportsVision, m as resolveConcurrency, n as createMediaAttachmentCache, o as runCapability, p as registerUnhandledRejectionHandler, r as normalizeMediaAttachments, s as findModelInCatalog, t as buildProviderRegistry, v as CLI_OUTPUT_MAX_BUFFER, y as applyTemplate } from "./runner-BzNdfqDz.js";
|
|
67
67
|
import { n as wrapFetchWithAbortSignal, t as resolveFetch } from "./fetch-CsfR_943.js";
|
|
68
68
|
import { n as recordCommandPoll, r as resetCommandPollCount } from "./command-poll-backoff-D9g0X0i7.js";
|
|
69
|
-
import { n as recordChannelActivity, r as createDiscordRetryRunner, t as getChannelActivity } from "./channel-activity-
|
|
69
|
+
import { n as recordChannelActivity, r as createDiscordRetryRunner, t as getChannelActivity } from "./channel-activity-D_TMOGQ0.js";
|
|
70
70
|
import { n as normalizePollInput } from "./polls-DhMjjIGW.js";
|
|
71
|
-
import { t as convertMarkdownTables } from "./tables-
|
|
72
|
-
import { a as resolveSignalRpcContext, c as streamSignalEvents, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-
|
|
73
|
-
import { a as formatIMessageChatTarget, c as parseIMessageTarget, i as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, o as isAllowedIMessageSender, r as createIMessageRpcClient, s as normalizeIMessageHandle, t as sendMessageIMessage } from "./send-
|
|
74
|
-
import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-
|
|
71
|
+
import { t as convertMarkdownTables } from "./tables-5k-zOZ-s.js";
|
|
72
|
+
import { a as resolveSignalRpcContext, c as streamSignalEvents, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-C1hvd3bt.js";
|
|
73
|
+
import { a as formatIMessageChatTarget, c as parseIMessageTarget, i as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, o as isAllowedIMessageSender, r as createIMessageRpcClient, s as normalizeIMessageHandle, t as sendMessageIMessage } from "./send-D4bMycQu.js";
|
|
74
|
+
import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-DuttYY7A.js";
|
|
75
75
|
import { i as redactIdentifier, t as getActiveWebListener } from "./active-listener-jilCMH1M.js";
|
|
76
76
|
import { t as makeProxyFetch } from "./proxy-CRB9oCP5.js";
|
|
77
|
-
import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-
|
|
78
|
-
import { r as createOutboundSendDepsFromCliSource, t as createDefaultDeps } from "./deps-
|
|
77
|
+
import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-6_GxvQYe.js";
|
|
78
|
+
import { r as createOutboundSendDepsFromCliSource, t as createDefaultDeps } from "./deps-BAMUVAdU.js";
|
|
79
79
|
import { createRequire } from "node:module";
|
|
80
80
|
import * as fs$1 from "node:fs/promises";
|
|
81
81
|
import fs from "node:fs/promises";
|
|
82
82
|
import os, { homedir } from "node:os";
|
|
83
83
|
import * as path$1 from "node:path";
|
|
84
84
|
import path, { isAbsolute } from "node:path";
|
|
85
|
-
import
|
|
85
|
+
import syncFs, { existsSync, mkdirSync, mkdtempSync, readFileSync, renameSync, rmSync, statSync, unlinkSync, writeFileSync } from "node:fs";
|
|
86
86
|
import JSON5 from "json5";
|
|
87
87
|
import { inspect, promisify } from "node:util";
|
|
88
88
|
import { execFile, execFileSync, spawn, spawnSync } from "node:child_process";
|
|
@@ -3246,7 +3246,7 @@ async function resolveIdleHandsDocsPath(params) {
|
|
|
3246
3246
|
const workspaceDir = params.workspaceDir?.trim();
|
|
3247
3247
|
if (workspaceDir) {
|
|
3248
3248
|
const workspaceDocs = path.join(workspaceDir, "docs");
|
|
3249
|
-
if (
|
|
3249
|
+
if (syncFs.existsSync(workspaceDocs)) return workspaceDocs;
|
|
3250
3250
|
}
|
|
3251
3251
|
const packageRoot = await resolveIdleHandsPackageRoot({
|
|
3252
3252
|
cwd: params.cwd,
|
|
@@ -3255,7 +3255,7 @@ async function resolveIdleHandsDocsPath(params) {
|
|
|
3255
3255
|
});
|
|
3256
3256
|
if (!packageRoot) return null;
|
|
3257
3257
|
const packageDocs = path.join(packageRoot, "docs");
|
|
3258
|
-
return
|
|
3258
|
+
return syncFs.existsSync(packageDocs) ? packageDocs : null;
|
|
3259
3259
|
}
|
|
3260
3260
|
|
|
3261
3261
|
//#endregion
|
|
@@ -3965,7 +3965,7 @@ async function getMemorySearchManager(params) {
|
|
|
3965
3965
|
if (cached) return { manager: cached };
|
|
3966
3966
|
}
|
|
3967
3967
|
try {
|
|
3968
|
-
const { QmdMemoryManager } = await import("./qmd-manager-
|
|
3968
|
+
const { QmdMemoryManager } = await import("./qmd-manager-B_GgyQQ0.js");
|
|
3969
3969
|
const primary = await QmdMemoryManager.create({
|
|
3970
3970
|
cfg: params.cfg,
|
|
3971
3971
|
agentId: params.agentId,
|
|
@@ -3977,7 +3977,7 @@ async function getMemorySearchManager(params) {
|
|
|
3977
3977
|
const wrapper = new FallbackMemoryManager({
|
|
3978
3978
|
primary,
|
|
3979
3979
|
fallbackFactory: async () => {
|
|
3980
|
-
const { MemoryIndexManager } = await import("./manager-
|
|
3980
|
+
const { MemoryIndexManager } = await import("./manager-BE_76jWB.js").then((n) => n.t);
|
|
3981
3981
|
return await MemoryIndexManager.get(params);
|
|
3982
3982
|
}
|
|
3983
3983
|
}, () => QMD_MANAGER_CACHE.delete(cacheKey));
|
|
@@ -3990,7 +3990,7 @@ async function getMemorySearchManager(params) {
|
|
|
3990
3990
|
}
|
|
3991
3991
|
}
|
|
3992
3992
|
try {
|
|
3993
|
-
const { MemoryIndexManager } = await import("./manager-
|
|
3993
|
+
const { MemoryIndexManager } = await import("./manager-BE_76jWB.js").then((n) => n.t);
|
|
3994
3994
|
return { manager: await MemoryIndexManager.get(params) };
|
|
3995
3995
|
} catch (err) {
|
|
3996
3996
|
return {
|
|
@@ -4678,7 +4678,7 @@ function resolveDefaultIdentityPath() {
|
|
|
4678
4678
|
return path.join(resolveStateDir(), "identity", "device.json");
|
|
4679
4679
|
}
|
|
4680
4680
|
function ensureDir$2(filePath) {
|
|
4681
|
-
|
|
4681
|
+
syncFs.mkdirSync(path.dirname(filePath), { recursive: true });
|
|
4682
4682
|
}
|
|
4683
4683
|
const ED25519_SPKI_PREFIX = Buffer.from("302a300506032b6570032100", "hex");
|
|
4684
4684
|
function base64UrlEncode(buf) {
|
|
@@ -4714,8 +4714,8 @@ function generateIdentity() {
|
|
|
4714
4714
|
}
|
|
4715
4715
|
function loadOrCreateDeviceIdentity(filePath = resolveDefaultIdentityPath()) {
|
|
4716
4716
|
try {
|
|
4717
|
-
if (
|
|
4718
|
-
const raw =
|
|
4717
|
+
if (syncFs.existsSync(filePath)) {
|
|
4718
|
+
const raw = syncFs.readFileSync(filePath, "utf8");
|
|
4719
4719
|
const parsed = JSON.parse(raw);
|
|
4720
4720
|
if (parsed?.version === 1 && typeof parsed.deviceId === "string" && typeof parsed.publicKeyPem === "string" && typeof parsed.privateKeyPem === "string") {
|
|
4721
4721
|
const derivedId = fingerprintPublicKey(parsed.publicKeyPem);
|
|
@@ -4724,9 +4724,9 @@ function loadOrCreateDeviceIdentity(filePath = resolveDefaultIdentityPath()) {
|
|
|
4724
4724
|
...parsed,
|
|
4725
4725
|
deviceId: derivedId
|
|
4726
4726
|
};
|
|
4727
|
-
|
|
4727
|
+
syncFs.writeFileSync(filePath, `${JSON.stringify(updated, null, 2)}\n`, { mode: 384 });
|
|
4728
4728
|
try {
|
|
4729
|
-
|
|
4729
|
+
syncFs.chmodSync(filePath, 384);
|
|
4730
4730
|
} catch {}
|
|
4731
4731
|
return {
|
|
4732
4732
|
deviceId: derivedId,
|
|
@@ -4751,9 +4751,9 @@ function loadOrCreateDeviceIdentity(filePath = resolveDefaultIdentityPath()) {
|
|
|
4751
4751
|
privateKeyPem: identity.privateKeyPem,
|
|
4752
4752
|
createdAtMs: Date.now()
|
|
4753
4753
|
};
|
|
4754
|
-
|
|
4754
|
+
syncFs.writeFileSync(filePath, `${JSON.stringify(stored, null, 2)}\n`, { mode: 384 });
|
|
4755
4755
|
try {
|
|
4756
|
-
|
|
4756
|
+
syncFs.chmodSync(filePath, 384);
|
|
4757
4757
|
} catch {}
|
|
4758
4758
|
return identity;
|
|
4759
4759
|
}
|
|
@@ -4903,8 +4903,8 @@ function resolveDeviceAuthPath(env = process.env) {
|
|
|
4903
4903
|
}
|
|
4904
4904
|
function readStore(filePath) {
|
|
4905
4905
|
try {
|
|
4906
|
-
if (!
|
|
4907
|
-
const raw =
|
|
4906
|
+
if (!syncFs.existsSync(filePath)) return null;
|
|
4907
|
+
const raw = syncFs.readFileSync(filePath, "utf8");
|
|
4908
4908
|
const parsed = JSON.parse(raw);
|
|
4909
4909
|
if (parsed?.version !== 1 || typeof parsed.deviceId !== "string") return null;
|
|
4910
4910
|
if (!parsed.tokens || typeof parsed.tokens !== "object") return null;
|
|
@@ -4914,10 +4914,10 @@ function readStore(filePath) {
|
|
|
4914
4914
|
}
|
|
4915
4915
|
}
|
|
4916
4916
|
function writeStore(filePath, store) {
|
|
4917
|
-
|
|
4918
|
-
|
|
4917
|
+
syncFs.mkdirSync(path.dirname(filePath), { recursive: true });
|
|
4918
|
+
syncFs.writeFileSync(filePath, `${JSON.stringify(store, null, 2)}\n`, { mode: 384 });
|
|
4919
4919
|
try {
|
|
4920
|
-
|
|
4920
|
+
syncFs.chmodSync(filePath, 384);
|
|
4921
4921
|
} catch {}
|
|
4922
4922
|
}
|
|
4923
4923
|
function loadDeviceAuthToken(params) {
|
|
@@ -5107,6 +5107,7 @@ const AgentParamsSchema = Type.Object({
|
|
|
5107
5107
|
bestEffortDeliver: Type.Optional(Type.Boolean()),
|
|
5108
5108
|
lane: Type.Optional(Type.String()),
|
|
5109
5109
|
extraSystemPrompt: Type.Optional(Type.String()),
|
|
5110
|
+
workspaceDir: Type.Optional(Type.String()),
|
|
5110
5111
|
inputProvenance: Type.Optional(Type.Object({
|
|
5111
5112
|
kind: Type.String({ enum: [...INPUT_PROVENANCE_KIND_VALUES] }),
|
|
5112
5113
|
sourceSessionKey: Type.Optional(Type.String()),
|
|
@@ -7936,7 +7937,7 @@ async function routeReply(params) {
|
|
|
7936
7937
|
const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
|
|
7937
7938
|
const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
|
|
7938
7939
|
try {
|
|
7939
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
7940
|
+
const { deliverOutboundPayloads } = await import("./deliver-CVTXl0Cv.js").then((n) => n.n);
|
|
7940
7941
|
const outboundSession = buildOutboundSessionContext({
|
|
7941
7942
|
cfg,
|
|
7942
7943
|
agentId: resolvedAgentId,
|
|
@@ -8456,7 +8457,7 @@ function normalizeSessionKey$1(value) {
|
|
|
8456
8457
|
}
|
|
8457
8458
|
function readSessionStore(storePath) {
|
|
8458
8459
|
try {
|
|
8459
|
-
const raw =
|
|
8460
|
+
const raw = syncFs.readFileSync(storePath, "utf-8");
|
|
8460
8461
|
const parsed = JSON5.parse(raw);
|
|
8461
8462
|
if (parsed && typeof parsed === "object" && !Array.isArray(parsed)) return parsed;
|
|
8462
8463
|
} catch {}
|
|
@@ -17451,7 +17452,7 @@ function mergeLegacyAgent(current, legacy) {
|
|
|
17451
17452
|
}
|
|
17452
17453
|
function ensureDir$1(filePath) {
|
|
17453
17454
|
const dir = path.dirname(filePath);
|
|
17454
|
-
|
|
17455
|
+
syncFs.mkdirSync(dir, { recursive: true });
|
|
17455
17456
|
}
|
|
17456
17457
|
function coerceAllowlistEntries(allowlist) {
|
|
17457
17458
|
if (!Array.isArray(allowlist) || allowlist.length === 0) return Array.isArray(allowlist) ? allowlist : void 0;
|
|
@@ -17521,11 +17522,11 @@ function generateToken() {
|
|
|
17521
17522
|
function loadExecApprovals() {
|
|
17522
17523
|
const filePath = resolveExecApprovalsPath();
|
|
17523
17524
|
try {
|
|
17524
|
-
if (!
|
|
17525
|
+
if (!syncFs.existsSync(filePath)) return normalizeExecApprovals({
|
|
17525
17526
|
version: 1,
|
|
17526
17527
|
agents: {}
|
|
17527
17528
|
});
|
|
17528
|
-
const raw =
|
|
17529
|
+
const raw = syncFs.readFileSync(filePath, "utf8");
|
|
17529
17530
|
const parsed = JSON.parse(raw);
|
|
17530
17531
|
if (parsed?.version !== 1) return normalizeExecApprovals({
|
|
17531
17532
|
version: 1,
|
|
@@ -17542,9 +17543,9 @@ function loadExecApprovals() {
|
|
|
17542
17543
|
function saveExecApprovals(file) {
|
|
17543
17544
|
const filePath = resolveExecApprovalsPath();
|
|
17544
17545
|
ensureDir$1(filePath);
|
|
17545
|
-
|
|
17546
|
+
syncFs.writeFileSync(filePath, `${JSON.stringify(file, null, 2)}\n`, { mode: 384 });
|
|
17546
17547
|
try {
|
|
17547
|
-
|
|
17548
|
+
syncFs.chmodSync(filePath, 384);
|
|
17548
17549
|
} catch {}
|
|
17549
17550
|
}
|
|
17550
17551
|
function ensureExecApprovals() {
|
|
@@ -18029,18 +18030,18 @@ function drainSystemEventEntries(sessionKey) {
|
|
|
18029
18030
|
function resolvePowerShellPath() {
|
|
18030
18031
|
const programFiles = process.env.ProgramFiles || process.env.PROGRAMFILES || "C:\\Program Files";
|
|
18031
18032
|
const pwsh7 = path.join(programFiles, "PowerShell", "7", "pwsh.exe");
|
|
18032
|
-
if (
|
|
18033
|
+
if (syncFs.existsSync(pwsh7)) return pwsh7;
|
|
18033
18034
|
const programW6432 = process.env.ProgramW6432;
|
|
18034
18035
|
if (programW6432 && programW6432 !== programFiles) {
|
|
18035
18036
|
const pwsh7Alt = path.join(programW6432, "PowerShell", "7", "pwsh.exe");
|
|
18036
|
-
if (
|
|
18037
|
+
if (syncFs.existsSync(pwsh7Alt)) return pwsh7Alt;
|
|
18037
18038
|
}
|
|
18038
18039
|
const pwshInPath = resolveShellFromPath("pwsh");
|
|
18039
18040
|
if (pwshInPath) return pwshInPath;
|
|
18040
18041
|
const systemRoot = process.env.SystemRoot || process.env.WINDIR;
|
|
18041
18042
|
if (systemRoot) {
|
|
18042
18043
|
const candidate = path.join(systemRoot, "System32", "WindowsPowerShell", "v1.0", "powershell.exe");
|
|
18043
|
-
if (
|
|
18044
|
+
if (syncFs.existsSync(candidate)) return candidate;
|
|
18044
18045
|
}
|
|
18045
18046
|
return "powershell.exe";
|
|
18046
18047
|
}
|
|
@@ -18078,7 +18079,7 @@ function resolveShellFromPath(name) {
|
|
|
18078
18079
|
for (const entry of entries) {
|
|
18079
18080
|
const candidate = path.join(entry, name);
|
|
18080
18081
|
try {
|
|
18081
|
-
|
|
18082
|
+
syncFs.accessSync(candidate, syncFs.constants.X_OK);
|
|
18082
18083
|
return candidate;
|
|
18083
18084
|
} catch {}
|
|
18084
18085
|
}
|
|
@@ -21329,7 +21330,7 @@ const MODEL_CACHE = /* @__PURE__ */ new Map();
|
|
|
21329
21330
|
await ensureIdleHandsModelsJson(cfg);
|
|
21330
21331
|
} catch {}
|
|
21331
21332
|
try {
|
|
21332
|
-
const { discoverAuthStorage, discoverModels } = await import("./pi-model-discovery-
|
|
21333
|
+
const { discoverAuthStorage, discoverModels } = await import("./pi-model-discovery-Bb__OY-j.js").then((n) => n.r);
|
|
21333
21334
|
const agentDir = resolveIdleHandsAgentDir();
|
|
21334
21335
|
const modelRegistry = discoverModels(discoverAuthStorage(agentDir), agentDir);
|
|
21335
21336
|
applyDiscoveredContextWindows({
|
|
@@ -21481,7 +21482,7 @@ function walkUpFrom(startDir, opts, resolveAtDir) {
|
|
|
21481
21482
|
function hasGitMarker(repoRoot) {
|
|
21482
21483
|
const gitPath = path.join(repoRoot, ".git");
|
|
21483
21484
|
try {
|
|
21484
|
-
const stat =
|
|
21485
|
+
const stat = syncFs.statSync(gitPath);
|
|
21485
21486
|
return stat.isDirectory() || stat.isFile();
|
|
21486
21487
|
} catch {
|
|
21487
21488
|
return false;
|
|
@@ -21493,10 +21494,10 @@ function findGitRoot(startDir, opts = {}) {
|
|
|
21493
21494
|
function resolveGitDirFromMarker(repoRoot) {
|
|
21494
21495
|
const gitPath = path.join(repoRoot, ".git");
|
|
21495
21496
|
try {
|
|
21496
|
-
const stat =
|
|
21497
|
+
const stat = syncFs.statSync(gitPath);
|
|
21497
21498
|
if (stat.isDirectory()) return gitPath;
|
|
21498
21499
|
if (!stat.isFile()) return null;
|
|
21499
|
-
const match =
|
|
21500
|
+
const match = syncFs.readFileSync(gitPath, "utf-8").match(/gitdir:\s*(.+)/i);
|
|
21500
21501
|
if (!match?.[1]) return null;
|
|
21501
21502
|
return path.resolve(repoRoot, match[1].trim());
|
|
21502
21503
|
} catch {
|
|
@@ -21563,7 +21564,7 @@ const resolveCommitHash = (options = {}) => {
|
|
|
21563
21564
|
cachedCommit = null;
|
|
21564
21565
|
return cachedCommit;
|
|
21565
21566
|
}
|
|
21566
|
-
const head =
|
|
21567
|
+
const head = syncFs.readFileSync(headPath, "utf-8").trim();
|
|
21567
21568
|
if (!head) {
|
|
21568
21569
|
cachedCommit = null;
|
|
21569
21570
|
return cachedCommit;
|
|
@@ -21571,7 +21572,7 @@ const resolveCommitHash = (options = {}) => {
|
|
|
21571
21572
|
if (head.startsWith("ref:")) {
|
|
21572
21573
|
const ref = head.replace(/^ref:\s*/i, "").trim();
|
|
21573
21574
|
const refPath = path.resolve(path.dirname(headPath), ref);
|
|
21574
|
-
cachedCommit = formatCommit(
|
|
21575
|
+
cachedCommit = formatCommit(syncFs.readFileSync(refPath, "utf-8").trim());
|
|
21575
21576
|
return cachedCommit;
|
|
21576
21577
|
}
|
|
21577
21578
|
cachedCommit = formatCommit(head);
|
|
@@ -21831,17 +21832,17 @@ const readUsageFromSessionLog = (sessionId, sessionEntry, agentId, sessionKey, s
|
|
|
21831
21832
|
} catch {
|
|
21832
21833
|
return;
|
|
21833
21834
|
}
|
|
21834
|
-
if (!
|
|
21835
|
+
if (!syncFs.existsSync(logPath)) return;
|
|
21835
21836
|
try {
|
|
21836
21837
|
const TAIL_BYTES = 8192;
|
|
21837
|
-
const stat =
|
|
21838
|
+
const stat = syncFs.statSync(logPath);
|
|
21838
21839
|
const offset = Math.max(0, stat.size - TAIL_BYTES);
|
|
21839
21840
|
const buf = Buffer.alloc(Math.min(TAIL_BYTES, stat.size));
|
|
21840
|
-
const fd =
|
|
21841
|
+
const fd = syncFs.openSync(logPath, "r");
|
|
21841
21842
|
try {
|
|
21842
|
-
|
|
21843
|
+
syncFs.readSync(fd, buf, 0, buf.length, offset);
|
|
21843
21844
|
} finally {
|
|
21844
|
-
|
|
21845
|
+
syncFs.closeSync(fd);
|
|
21845
21846
|
}
|
|
21846
21847
|
const tail = buf.toString("utf-8");
|
|
21847
21848
|
const lines = (offset > 0 ? tail.slice(tail.indexOf("\n") + 1) : tail).split(/\n+/);
|
|
@@ -23061,7 +23062,7 @@ const handleAntonCommand = async (params, _allowTextCommands) => {
|
|
|
23061
23062
|
};
|
|
23062
23063
|
const arg = body.slice(6).trim();
|
|
23063
23064
|
if (arg === "status" || arg === "") {
|
|
23064
|
-
const { antonStatus } = await import("./anton-
|
|
23065
|
+
const { antonStatus } = await import("./anton-DsmttQbC.js");
|
|
23065
23066
|
const lines = [];
|
|
23066
23067
|
await antonStatus({
|
|
23067
23068
|
log: (msg) => lines.push(msg),
|
|
@@ -23077,7 +23078,7 @@ const handleAntonCommand = async (params, _allowTextCommands) => {
|
|
|
23077
23078
|
return { shouldContinue: false };
|
|
23078
23079
|
}
|
|
23079
23080
|
if (arg === "stop") {
|
|
23080
|
-
const { antonStop } = await import("./anton-
|
|
23081
|
+
const { antonStop } = await import("./anton-DsmttQbC.js");
|
|
23081
23082
|
const lines = [];
|
|
23082
23083
|
await antonStop({
|
|
23083
23084
|
log: (msg) => lines.push(msg),
|
|
@@ -23115,8 +23116,8 @@ const handleAntonCommand = async (params, _allowTextCommands) => {
|
|
|
23115
23116
|
await sendProgress(replyCtx, text);
|
|
23116
23117
|
return { shouldContinue: false };
|
|
23117
23118
|
}
|
|
23118
|
-
const { runAnton, formatProgressMessage } = await import("./anton-
|
|
23119
|
-
const { createDefaultDeps } = await import("./deps-
|
|
23119
|
+
const { runAnton, formatProgressMessage } = await import("./anton-DsmttQbC.js");
|
|
23120
|
+
const { createDefaultDeps } = await import("./deps-BAMUVAdU.js").then((n) => n.n);
|
|
23120
23121
|
const { createNonExitingRuntime } = await import("./runtime-8mi3mpYB.js").then((n) => n.r);
|
|
23121
23122
|
const runtime = createNonExitingRuntime();
|
|
23122
23123
|
const deps = createDefaultDeps();
|
|
@@ -23213,8 +23214,8 @@ const handleDirCommand = async (params, _allowTextCommands) => {
|
|
|
23213
23214
|
}
|
|
23214
23215
|
try {
|
|
23215
23216
|
if (params.sessionKey) {
|
|
23216
|
-
const { updateSessionStoreEntry } = await import("./sessions-
|
|
23217
|
-
const { resolveDefaultSessionStorePath } = await import("./paths-
|
|
23217
|
+
const { updateSessionStoreEntry } = await import("./sessions-3ioSeOA1.js").then((n) => n.u);
|
|
23218
|
+
const { resolveDefaultSessionStorePath } = await import("./paths-D_qUel1T.js").then((n) => n.n);
|
|
23218
23219
|
await updateSessionStoreEntry({
|
|
23219
23220
|
storePath: params.storePath ?? resolveDefaultSessionStorePath(),
|
|
23220
23221
|
sessionKey: params.sessionKey,
|
|
@@ -23403,7 +23404,7 @@ function resolveRepoRoot(params) {
|
|
|
23403
23404
|
const configured = params.config?.agents?.defaults?.repoRoot?.trim();
|
|
23404
23405
|
if (configured) try {
|
|
23405
23406
|
const resolved = path.resolve(configured);
|
|
23406
|
-
if (
|
|
23407
|
+
if (syncFs.statSync(resolved).isDirectory()) return resolved;
|
|
23407
23408
|
} catch {}
|
|
23408
23409
|
const candidates = [params.workspaceDir, params.cwd].map((value) => value?.trim()).filter(Boolean);
|
|
23409
23410
|
const seen = /* @__PURE__ */ new Set();
|
|
@@ -24175,7 +24176,7 @@ async function buildContextReply(params) {
|
|
|
24175
24176
|
//#region src/auto-reply/reply/commands-export-session.ts
|
|
24176
24177
|
const EXPORT_HTML_DIR = path.join(path.dirname(fileURLToPath(import.meta.url)), "export-html");
|
|
24177
24178
|
function loadTemplate(fileName) {
|
|
24178
|
-
return
|
|
24179
|
+
return syncFs.readFileSync(path.join(EXPORT_HTML_DIR, fileName), "utf-8");
|
|
24179
24180
|
}
|
|
24180
24181
|
function generateHtml(sessionData) {
|
|
24181
24182
|
const template = loadTemplate("template.html");
|
|
@@ -24249,7 +24250,7 @@ async function buildExportSessionReply(params) {
|
|
|
24249
24250
|
} catch (err) {
|
|
24250
24251
|
return { text: `❌ Failed to resolve session file: ${err instanceof Error ? err.message : String(err)}` };
|
|
24251
24252
|
}
|
|
24252
|
-
if (!
|
|
24253
|
+
if (!syncFs.existsSync(sessionFile)) return { text: `❌ Session file not found: ${sessionFile}` };
|
|
24253
24254
|
const sessionManager = SessionManager.open(sessionFile);
|
|
24254
24255
|
const entries = sessionManager.getEntries();
|
|
24255
24256
|
const header = sessionManager.getHeader();
|
|
@@ -24270,8 +24271,8 @@ async function buildExportSessionReply(params) {
|
|
|
24270
24271
|
const defaultFileName = `idlehands-session-${entry.sessionId.slice(0, 8)}-${timestamp}.html`;
|
|
24271
24272
|
const outputPath = args.outputPath ? path.resolve(args.outputPath.startsWith("~") ? args.outputPath.replace("~", process.env.HOME ?? "") : args.outputPath) : path.join(params.workspaceDir, defaultFileName);
|
|
24272
24273
|
const outputDir = path.dirname(outputPath);
|
|
24273
|
-
if (!
|
|
24274
|
-
|
|
24274
|
+
if (!syncFs.existsSync(outputDir)) syncFs.mkdirSync(outputDir, { recursive: true });
|
|
24275
|
+
syncFs.writeFileSync(outputPath, html, "utf-8");
|
|
24275
24276
|
const relativePath = path.relative(params.workspaceDir, outputPath);
|
|
24276
24277
|
return { text: [
|
|
24277
24278
|
"✅ Session exported!",
|
|
@@ -24446,8 +24447,8 @@ function resolveZaiApiKey() {
|
|
|
24446
24447
|
}
|
|
24447
24448
|
try {
|
|
24448
24449
|
const authPath = path.join(resolveRequiredHomeDir(process.env, os.homedir), ".pi", "agent", "auth.json");
|
|
24449
|
-
if (!
|
|
24450
|
-
const data = JSON.parse(
|
|
24450
|
+
if (!syncFs.existsSync(authPath)) return;
|
|
24451
|
+
const data = JSON.parse(syncFs.readFileSync(authPath, "utf-8"));
|
|
24451
24452
|
return data["z-ai"]?.access || data.zai?.access;
|
|
24452
24453
|
} catch {
|
|
24453
24454
|
return;
|
|
@@ -26210,7 +26211,7 @@ function shouldPersistAnyBindingState() {
|
|
|
26210
26211
|
}
|
|
26211
26212
|
function shouldPersistBindingMutations() {
|
|
26212
26213
|
if (shouldPersistAnyBindingState()) return true;
|
|
26213
|
-
return
|
|
26214
|
+
return syncFs.existsSync(resolveThreadBindingsPath());
|
|
26214
26215
|
}
|
|
26215
26216
|
function saveBindingsToDisk(params = {}) {
|
|
26216
26217
|
if (!params.force && !shouldPersistAnyBindingState()) return;
|
|
@@ -27474,7 +27475,7 @@ const applyCostTotal = (totals, costTotal) => {
|
|
|
27474
27475
|
totals.totalCost += costTotal;
|
|
27475
27476
|
};
|
|
27476
27477
|
async function* readJsonlRecords(filePath) {
|
|
27477
|
-
const fileStream =
|
|
27478
|
+
const fileStream = syncFs.createReadStream(filePath, { encoding: "utf-8" });
|
|
27478
27479
|
const rl = readline.createInterface({
|
|
27479
27480
|
input: fileStream,
|
|
27480
27481
|
crlfDelay: Infinity
|
|
@@ -27546,10 +27547,10 @@ async function loadCostUsageSummary(params) {
|
|
|
27546
27547
|
const dailyMap = /* @__PURE__ */ new Map();
|
|
27547
27548
|
const totals = emptyTotals();
|
|
27548
27549
|
const sessionsDir = resolveSessionTranscriptsDirForAgent(params?.agentId);
|
|
27549
|
-
const entries = await
|
|
27550
|
+
const entries = await syncFs.promises.readdir(sessionsDir, { withFileTypes: true }).catch(() => []);
|
|
27550
27551
|
const files = (await Promise.all(entries.filter((entry) => entry.isFile() && entry.name.endsWith(".jsonl")).map(async (entry) => {
|
|
27551
27552
|
const filePath = path.join(sessionsDir, entry.name);
|
|
27552
|
-
const stats = await
|
|
27553
|
+
const stats = await syncFs.promises.stat(filePath).catch(() => null);
|
|
27553
27554
|
if (!stats) return null;
|
|
27554
27555
|
if (stats.mtimeMs < sinceTime) return null;
|
|
27555
27556
|
return filePath;
|
|
@@ -27582,7 +27583,7 @@ async function loadCostUsageSummary(params) {
|
|
|
27582
27583
|
}
|
|
27583
27584
|
async function loadSessionCostSummary(params) {
|
|
27584
27585
|
const sessionFile = params.sessionFile ?? (params.sessionId ? resolveSessionFilePath(params.sessionId, params.sessionEntry, { agentId: params.agentId }) : void 0);
|
|
27585
|
-
if (!sessionFile || !
|
|
27586
|
+
if (!sessionFile || !syncFs.existsSync(sessionFile)) return null;
|
|
27586
27587
|
const totals = emptyTotals();
|
|
27587
27588
|
let firstActivity;
|
|
27588
27589
|
let lastActivity;
|
|
@@ -29899,7 +29900,7 @@ async function createModelSelectionState(params) {
|
|
|
29899
29900
|
}
|
|
29900
29901
|
}
|
|
29901
29902
|
if (sessionEntry && sessionStore && sessionKey && sessionEntry.authProfileOverride) {
|
|
29902
|
-
const { ensureAuthProfileStore } = await import("./model-selection-
|
|
29903
|
+
const { ensureAuthProfileStore } = await import("./model-selection-1MMYqY6M.js").then((n) => n.O);
|
|
29903
29904
|
const profile = ensureAuthProfileStore(void 0, { allowKeychainPrompt: false }).profiles[sessionEntry.authProfileOverride];
|
|
29904
29905
|
const providerKey = normalizeProviderId(provider);
|
|
29905
29906
|
if (!profile || normalizeProviderId(profile.provider) !== providerKey) await clearSessionAuthProfileOverride({
|
|
@@ -33421,7 +33422,7 @@ function asBoolean(value) {
|
|
|
33421
33422
|
}
|
|
33422
33423
|
function resolveTempPathParts(opts) {
|
|
33423
33424
|
const tmpDir = opts.tmpDir ?? resolvePreferredIdleHandsTmpDir();
|
|
33424
|
-
if (!opts.tmpDir)
|
|
33425
|
+
if (!opts.tmpDir) syncFs.mkdirSync(tmpDir, {
|
|
33425
33426
|
recursive: true,
|
|
33426
33427
|
mode: 448
|
|
33427
33428
|
});
|
|
@@ -36361,9 +36362,9 @@ function loadExternalCatalogEntries(options) {
|
|
|
36361
36362
|
const entries = [];
|
|
36362
36363
|
for (const rawPath of paths) {
|
|
36363
36364
|
const resolved = resolveUserPath(rawPath);
|
|
36364
|
-
if (!
|
|
36365
|
+
if (!syncFs.existsSync(resolved)) continue;
|
|
36365
36366
|
try {
|
|
36366
|
-
const payload = JSON.parse(
|
|
36367
|
+
const payload = JSON.parse(syncFs.readFileSync(resolved, "utf-8"));
|
|
36367
36368
|
entries.push(...parseCatalogEntries(payload));
|
|
36368
36369
|
} catch {}
|
|
36369
36370
|
}
|
|
@@ -39579,7 +39580,7 @@ function listExistingAgentIdsFromDisk() {
|
|
|
39579
39580
|
const root = resolveStateDir();
|
|
39580
39581
|
const agentsDir = path.join(root, "agents");
|
|
39581
39582
|
try {
|
|
39582
|
-
return
|
|
39583
|
+
return syncFs.readdirSync(agentsDir, { withFileTypes: true }).filter((entry) => entry.isDirectory()).map((entry) => normalizeAgentId(entry.name)).filter(Boolean);
|
|
39583
39584
|
} catch {
|
|
39584
39585
|
return [];
|
|
39585
39586
|
}
|
|
@@ -45424,7 +45425,7 @@ async function runAgentTurnWithFallback(params) {
|
|
|
45424
45425
|
if (corruptedSessionId) {
|
|
45425
45426
|
const transcriptPath = resolveSessionTranscriptPath(corruptedSessionId);
|
|
45426
45427
|
try {
|
|
45427
|
-
|
|
45428
|
+
syncFs.unlinkSync(transcriptPath);
|
|
45428
45429
|
} catch {}
|
|
45429
45430
|
}
|
|
45430
45431
|
delete params.activeSessionStore[sessionKey];
|
|
@@ -46159,9 +46160,9 @@ function auditPostCompactionReads(readFilePaths, workspaceDir, requiredReads = D
|
|
|
46159
46160
|
* Returns messages from the last N lines (default 100).
|
|
46160
46161
|
*/
|
|
46161
46162
|
function readSessionMessages(sessionFile, maxLines = 100) {
|
|
46162
|
-
if (!
|
|
46163
|
+
if (!syncFs.existsSync(sessionFile)) return [];
|
|
46163
46164
|
try {
|
|
46164
|
-
const recentLines =
|
|
46165
|
+
const recentLines = syncFs.readFileSync(sessionFile, "utf-8").trim().split("\n").slice(-maxLines);
|
|
46165
46166
|
const messages = [];
|
|
46166
46167
|
for (const line of recentLines) try {
|
|
46167
46168
|
const entry = JSON.parse(line);
|
|
@@ -46202,8 +46203,8 @@ const MAX_CONTEXT_CHARS = 3e3;
|
|
|
46202
46203
|
async function readPostCompactionContext(workspaceDir) {
|
|
46203
46204
|
const agentsPath = path.join(workspaceDir, "AGENTS.md");
|
|
46204
46205
|
try {
|
|
46205
|
-
if (!
|
|
46206
|
-
const sections = extractSections(await
|
|
46206
|
+
if (!syncFs.existsSync(agentsPath)) return null;
|
|
46207
|
+
const sections = extractSections(await syncFs.promises.readFile(agentsPath, "utf-8"), ["Session Startup", "Red Lines"]);
|
|
46207
46208
|
if (sections.length === 0) return null;
|
|
46208
46209
|
const combined = sections.join("\n\n");
|
|
46209
46210
|
return "[Post-compaction context refresh]\n\nSession was just compacted. The conversation summary above is a hint, NOT a substitute for your startup sequence. Execute your Session Startup sequence now — read the required files before responding to the user.\n\nCritical rules from AGENTS.md:\n\n" + (combined.length > MAX_CONTEXT_CHARS ? combined.slice(0, MAX_CONTEXT_CHARS) + "\n...[truncated]..." : combined);
|
|
@@ -46437,7 +46438,7 @@ async function runReplyAgent(params) {
|
|
|
46437
46438
|
if (resolved) transcriptCandidates.add(resolved);
|
|
46438
46439
|
transcriptCandidates.add(resolveSessionTranscriptPath(prevSessionId, agentId));
|
|
46439
46440
|
for (const candidate of transcriptCandidates) try {
|
|
46440
|
-
|
|
46441
|
+
syncFs.unlinkSync(candidate);
|
|
46441
46442
|
} catch {}
|
|
46442
46443
|
}
|
|
46443
46444
|
return true;
|
|
@@ -47428,7 +47429,7 @@ async function deliverSessionMaintenanceWarning(params) {
|
|
|
47428
47429
|
return;
|
|
47429
47430
|
}
|
|
47430
47431
|
try {
|
|
47431
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
47432
|
+
const { deliverOutboundPayloads } = await import("./deliver-CVTXl0Cv.js").then((n) => n.n);
|
|
47432
47433
|
const outboundSession = buildOutboundSessionContext({
|
|
47433
47434
|
cfg: params.cfg,
|
|
47434
47435
|
sessionKey: params.sessionKey
|
|
@@ -47485,7 +47486,7 @@ function forkSessionFromParent(params) {
|
|
|
47485
47486
|
agentId: params.agentId,
|
|
47486
47487
|
sessionsDir: params.sessionsDir
|
|
47487
47488
|
});
|
|
47488
|
-
if (!parentSessionFile || !
|
|
47489
|
+
if (!parentSessionFile || !syncFs.existsSync(parentSessionFile)) return null;
|
|
47489
47490
|
try {
|
|
47490
47491
|
const manager = SessionManager.open(parentSessionFile);
|
|
47491
47492
|
const leafId = manager.getLeafId();
|
|
@@ -47509,7 +47510,7 @@ function forkSessionFromParent(params) {
|
|
|
47509
47510
|
cwd: manager.getCwd(),
|
|
47510
47511
|
parentSession: parentSessionFile
|
|
47511
47512
|
};
|
|
47512
|
-
|
|
47513
|
+
syncFs.writeFileSync(sessionFile, `${JSON.stringify(header)}\n`, "utf-8");
|
|
47513
47514
|
return {
|
|
47514
47515
|
sessionId,
|
|
47515
47516
|
sessionFile
|
|
@@ -51864,7 +51865,7 @@ async function describeStickerImage(params) {
|
|
|
51864
51865
|
logVerbose(`telegram: describing sticker with ${provider}/${model}`);
|
|
51865
51866
|
try {
|
|
51866
51867
|
const buffer = await fs.readFile(imagePath);
|
|
51867
|
-
const { describeImageWithModel } = await import("./image-
|
|
51868
|
+
const { describeImageWithModel } = await import("./image-COw__ACq.js").then((n) => n.n);
|
|
51868
51869
|
return (await describeImageWithModel({
|
|
51869
51870
|
buffer,
|
|
51870
51871
|
fileName: "sticker.webp",
|
|
@@ -52318,7 +52319,7 @@ function createWhatsAppLoginTool() {
|
|
|
52318
52319
|
force: Type.Optional(Type.Boolean())
|
|
52319
52320
|
}),
|
|
52320
52321
|
execute: async (_toolCallId, args) => {
|
|
52321
|
-
const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-
|
|
52322
|
+
const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-CFFFOjOl.js");
|
|
52322
52323
|
if ((args?.action ?? "start") === "wait") {
|
|
52323
52324
|
const result = await waitForWebLogin({ timeoutMs: typeof args.timeoutMs === "number" ? args.timeoutMs : void 0 });
|
|
52324
52325
|
return {
|
|
@@ -52605,7 +52606,7 @@ async function withMemoryManagerForAgent(params) {
|
|
|
52605
52606
|
}
|
|
52606
52607
|
async function checkReadableFile(pathname) {
|
|
52607
52608
|
try {
|
|
52608
|
-
await fs.access(pathname,
|
|
52609
|
+
await fs.access(pathname, syncFs.constants.R_OK);
|
|
52609
52610
|
return { exists: true };
|
|
52610
52611
|
} catch (err) {
|
|
52611
52612
|
const code = err.code;
|
|
@@ -52664,7 +52665,7 @@ async function scanMemoryFiles(workspaceDir, extraPaths = []) {
|
|
|
52664
52665
|
}
|
|
52665
52666
|
let dirReadable = null;
|
|
52666
52667
|
try {
|
|
52667
|
-
await fs.access(memoryDir,
|
|
52668
|
+
await fs.access(memoryDir, syncFs.constants.R_OK);
|
|
52668
52669
|
dirReadable = true;
|
|
52669
52670
|
} catch (err) {
|
|
52670
52671
|
const code = err.code;
|
|
@@ -54792,7 +54793,7 @@ async function preflightDiscordMessage(params) {
|
|
|
54792
54793
|
let preflightTranscript;
|
|
54793
54794
|
const hasAudioAttachment = message.attachments?.some((att) => att.contentType?.startsWith("audio/"));
|
|
54794
54795
|
if (!isDirectMessage && shouldRequireMention && hasAudioAttachment && !baseText && mentionRegexes.length > 0) try {
|
|
54795
|
-
const { transcribeFirstAudio } = await import("./audio-preflight-
|
|
54796
|
+
const { transcribeFirstAudio } = await import("./audio-preflight-BSlR2jEq.js");
|
|
54796
54797
|
const audioPaths = message.attachments?.filter((att) => att.contentType?.startsWith("audio/")).map((att) => att.url) ?? [];
|
|
54797
54798
|
if (audioPaths.length > 0) preflightTranscript = await transcribeFirstAudio({
|
|
54798
54799
|
ctx: {
|
|
@@ -56374,7 +56375,7 @@ function identityHasValues(identity) {
|
|
|
56374
56375
|
}
|
|
56375
56376
|
function loadIdentityFromFile(identityPath) {
|
|
56376
56377
|
try {
|
|
56377
|
-
const parsed = parseIdentityMarkdown(
|
|
56378
|
+
const parsed = parseIdentityMarkdown(syncFs.readFileSync(identityPath, "utf-8"));
|
|
56378
56379
|
if (!identityHasValues(parsed)) return null;
|
|
56379
56380
|
return parsed;
|
|
56380
56381
|
} catch {
|
|
@@ -56398,7 +56399,7 @@ function resolveAvatarSource(cfg, agentId) {
|
|
|
56398
56399
|
}
|
|
56399
56400
|
function resolveExistingPath(value) {
|
|
56400
56401
|
try {
|
|
56401
|
-
return
|
|
56402
|
+
return syncFs.realpathSync(value);
|
|
56402
56403
|
} catch {
|
|
56403
56404
|
return path.resolve(value);
|
|
56404
56405
|
}
|
|
@@ -56416,7 +56417,7 @@ function resolveLocalAvatarPath(params) {
|
|
|
56416
56417
|
reason: "unsupported_extension"
|
|
56417
56418
|
};
|
|
56418
56419
|
try {
|
|
56419
|
-
const stat =
|
|
56420
|
+
const stat = syncFs.statSync(realPath);
|
|
56420
56421
|
if (!stat.isFile()) return {
|
|
56421
56422
|
ok: false,
|
|
56422
56423
|
reason: "missing"
|
|
@@ -57269,9 +57270,9 @@ function createDiscordMessageHandler(params) {
|
|
|
57269
57270
|
try {
|
|
57270
57271
|
const messageText = resolveDiscordMessageText(data.message)?.trim();
|
|
57271
57272
|
if (messageText) {
|
|
57272
|
-
const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-
|
|
57273
|
+
const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-BldYLJq7.js");
|
|
57273
57274
|
if (isAbortRequestText(messageText)) {
|
|
57274
|
-
const { resolveAgentRoute } = await import("./resolve-route-
|
|
57275
|
+
const { resolveAgentRoute } = await import("./resolve-route-DuttYY7A.js").then((n) => n.r);
|
|
57275
57276
|
const channelId = resolveDiscordMessageChannelId({
|
|
57276
57277
|
message: data.message,
|
|
57277
57278
|
eventChannelId: data.channel_id
|
|
@@ -59993,7 +59994,7 @@ async function agentCommand(opts, runtime = defaultRuntime, deps = createDefault
|
|
|
59993
59994
|
agentId: sessionAgentId,
|
|
59994
59995
|
sessionKey
|
|
59995
59996
|
});
|
|
59996
|
-
const workspaceDirRaw = resolvedSessionEntry?.workspaceDir?.trim() || resolveAgentWorkspaceDir(cfg, sessionAgentId);
|
|
59997
|
+
const workspaceDirRaw = opts.workspaceDir?.trim() || resolvedSessionEntry?.workspaceDir?.trim() || resolveAgentWorkspaceDir(cfg, sessionAgentId);
|
|
59997
59998
|
const agentDir = resolveAgentDir(cfg, sessionAgentId);
|
|
59998
59999
|
const workspaceDir = (await ensureAgentWorkspace({
|
|
59999
60000
|
dir: workspaceDirRaw,
|
|
@@ -64767,9 +64768,9 @@ async function monitorIMessageProvider(opts = {}) {
|
|
|
64767
64768
|
}
|
|
64768
64769
|
const msgText = (message.text ?? "").trim();
|
|
64769
64770
|
if (msgText) {
|
|
64770
|
-
const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-
|
|
64771
|
+
const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-BldYLJq7.js");
|
|
64771
64772
|
if (isAbortRequestText(msgText)) {
|
|
64772
|
-
const { resolveAgentRoute } = await import("./resolve-route-
|
|
64773
|
+
const { resolveAgentRoute } = await import("./resolve-route-DuttYY7A.js").then((n) => n.r);
|
|
64773
64774
|
const route = resolveAgentRoute({
|
|
64774
64775
|
cfg,
|
|
64775
64776
|
channel: "imessage",
|
|
@@ -64850,7 +64851,7 @@ async function monitorIMessageProvider(opts = {}) {
|
|
|
64850
64851
|
function readFileIfExists(filePath) {
|
|
64851
64852
|
if (!filePath) return;
|
|
64852
64853
|
try {
|
|
64853
|
-
return
|
|
64854
|
+
return syncFs.readFileSync(filePath, "utf-8").trim();
|
|
64854
64855
|
} catch {
|
|
64855
64856
|
return;
|
|
64856
64857
|
}
|
|
@@ -65426,7 +65427,7 @@ async function downloadLineMedia(messageId, channelAccessToken, maxBytes = 10 *
|
|
|
65426
65427
|
prefix: "line-media",
|
|
65427
65428
|
extension: getExtensionForContentType(contentType)
|
|
65428
65429
|
});
|
|
65429
|
-
await
|
|
65430
|
+
await syncFs.promises.writeFile(filePath, buffer);
|
|
65430
65431
|
logVerbose(`line: downloaded media ${messageId} to ${filePath} (${buffer.length} bytes)`);
|
|
65431
65432
|
return {
|
|
65432
65433
|
path: filePath,
|
|
@@ -67378,9 +67379,9 @@ function createSignalEventHandler(deps) {
|
|
|
67378
67379
|
const senderName = envelope.sourceName ?? senderDisplay;
|
|
67379
67380
|
const messageId = typeof envelope.timestamp === "number" ? String(envelope.timestamp) : void 0;
|
|
67380
67381
|
if (bodyText) {
|
|
67381
|
-
const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-
|
|
67382
|
+
const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-BldYLJq7.js");
|
|
67382
67383
|
if (isAbortRequestText(bodyText)) {
|
|
67383
|
-
const { resolveAgentRoute } = await import("./resolve-route-
|
|
67384
|
+
const { resolveAgentRoute } = await import("./resolve-route-DuttYY7A.js").then((n) => n.r);
|
|
67384
67385
|
const route = resolveAgentRoute({
|
|
67385
67386
|
cfg: deps.cfg,
|
|
67386
67387
|
channel: "signal",
|
|
@@ -70760,9 +70761,9 @@ function createSlackMessageHandler(params) {
|
|
|
70760
70761
|
if (ctx.markMessageSeen(message.channel, message.ts)) return;
|
|
70761
70762
|
const rawText = (message.text ?? "").trim();
|
|
70762
70763
|
if (rawText) {
|
|
70763
|
-
const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-
|
|
70764
|
+
const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-BldYLJq7.js");
|
|
70764
70765
|
if (isAbortRequestText(rawText)) {
|
|
70765
|
-
const { resolveAgentRoute } = await import("./resolve-route-
|
|
70766
|
+
const { resolveAgentRoute } = await import("./resolve-route-DuttYY7A.js").then((n) => n.r);
|
|
70766
70767
|
const route = resolveAgentRoute({
|
|
70767
70768
|
cfg: ctx.cfg,
|
|
70768
70769
|
channel: "slack",
|
|
@@ -70882,7 +70883,7 @@ function readSlackExternalArgMenuToken(raw) {
|
|
|
70882
70883
|
}
|
|
70883
70884
|
let commandsRegistry;
|
|
70884
70885
|
async function getCommandsRegistry() {
|
|
70885
|
-
if (!commandsRegistry) commandsRegistry = await import("./commands-registry-
|
|
70886
|
+
if (!commandsRegistry) commandsRegistry = await import("./commands-registry-j4vAzcF2.js").then((n) => n.n);
|
|
70886
70887
|
return commandsRegistry;
|
|
70887
70888
|
}
|
|
70888
70889
|
function encodeSlackCommandArgValue(parts) {
|
|
@@ -71206,14 +71207,14 @@ async function registerSlackMonitorSlashCommands(params) {
|
|
|
71206
71207
|
const channelName = channelInfo?.name;
|
|
71207
71208
|
const roomLabel = channelName ? `#${channelName}` : `#${command.channel_id}`;
|
|
71208
71209
|
const [{ resolveAgentRoute }, { finalizeInboundContext }, { dispatchReplyWithDispatcher }] = await Promise.all([
|
|
71209
|
-
import("./resolve-route-
|
|
71210
|
+
import("./resolve-route-DuttYY7A.js").then((n) => n.r),
|
|
71210
71211
|
import("./inbound-context-BYczzTII.js").then((n) => n.n),
|
|
71211
71212
|
Promise.resolve().then(() => provider_dispatcher_exports)
|
|
71212
71213
|
]);
|
|
71213
71214
|
const [{ resolveConversationLabel }, { createReplyPrefixOptions }, { recordSessionMetaFromInbound, resolveStorePath }] = await Promise.all([
|
|
71214
71215
|
import("./conversation-label-1Wad2kXc.js").then((n) => n.t),
|
|
71215
|
-
import("./reply-prefix-
|
|
71216
|
-
import("./sessions-
|
|
71216
|
+
import("./reply-prefix-BUgeSN2R.js").then((n) => n.n),
|
|
71217
|
+
import("./sessions-3ioSeOA1.js").then((n) => n.t)
|
|
71217
71218
|
]);
|
|
71218
71219
|
const route = resolveAgentRoute({
|
|
71219
71220
|
cfg,
|
|
@@ -71281,9 +71282,9 @@ async function registerSlackMonitorSlashCommands(params) {
|
|
|
71281
71282
|
});
|
|
71282
71283
|
const deliverSlashPayloads = async (replies) => {
|
|
71283
71284
|
const [{ deliverSlackSlashReplies }, { resolveChunkMode }, { resolveMarkdownTableMode }] = await Promise.all([
|
|
71284
|
-
import("./replies-
|
|
71285
|
-
import("./chunk-
|
|
71286
|
-
import("./markdown-tables-
|
|
71285
|
+
import("./replies-6_GxvQYe.js").then((n) => n.r),
|
|
71286
|
+
import("./chunk-CMpX7Jaz.js").then((n) => n.s),
|
|
71287
|
+
import("./markdown-tables-CzsockiZ.js").then((n) => n.t)
|
|
71287
71288
|
]);
|
|
71288
71289
|
await deliverSlackSlashReplies({
|
|
71289
71290
|
replies,
|
|
@@ -71336,7 +71337,7 @@ async function registerSlackMonitorSlashCommands(params) {
|
|
|
71336
71337
|
let nativeCommands = [];
|
|
71337
71338
|
if (nativeEnabled) {
|
|
71338
71339
|
reg = await getCommandsRegistry();
|
|
71339
|
-
const skillCommands = nativeSkillsEnabled ? (await import("./skill-commands-
|
|
71340
|
+
const skillCommands = nativeSkillsEnabled ? (await import("./skill-commands-Ck3flWX7.js").then((n) => n.a)).listSkillCommandsForAgents({ cfg }) : [];
|
|
71340
71341
|
nativeCommands = reg.listNativeCommandSpecsForConfig(cfg, {
|
|
71341
71342
|
skillCommands,
|
|
71342
71343
|
provider: "slack"
|
|
@@ -72954,7 +72955,7 @@ const registerTelegramHandlers = ({ cfg, accountId, bot, opts, runtime, mediaMax
|
|
|
72954
72955
|
const { ctx, msg, chatId, resolvedThreadId, storeAllowFrom, sendOversizeWarning, oversizeLogMessage } = params;
|
|
72955
72956
|
const text = typeof msg.text === "string" ? msg.text : void 0;
|
|
72956
72957
|
if (text) {
|
|
72957
|
-
const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-
|
|
72958
|
+
const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-BldYLJq7.js");
|
|
72958
72959
|
if (isAbortRequestText(text)) {
|
|
72959
72960
|
const senderId = msg.from?.id ? String(msg.from.id) : "";
|
|
72960
72961
|
if (!senderId || !allowFrom?.length || allowFrom.includes(senderId)) {
|
|
@@ -73841,7 +73842,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, replyMedia =
|
|
|
73841
73842
|
const hasAudio = allMedia.some((media) => media.contentType?.startsWith("audio/"));
|
|
73842
73843
|
let preflightTranscript;
|
|
73843
73844
|
if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0) try {
|
|
73844
|
-
const { transcribeFirstAudio } = await import("./audio-preflight-
|
|
73845
|
+
const { transcribeFirstAudio } = await import("./audio-preflight-BSlR2jEq.js");
|
|
73845
73846
|
preflightTranscript = await transcribeFirstAudio({
|
|
73846
73847
|
ctx: {
|
|
73847
73848
|
MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
|
|
@@ -76427,23 +76428,23 @@ let webLoginQrPromise = null;
|
|
|
76427
76428
|
let webChannelPromise = null;
|
|
76428
76429
|
let whatsappActionsPromise = null;
|
|
76429
76430
|
function loadWebOutbound() {
|
|
76430
|
-
webOutboundPromise ??= import("./outbound-
|
|
76431
|
+
webOutboundPromise ??= import("./outbound-BNh6PpQb.js").then((n) => n.t);
|
|
76431
76432
|
return webOutboundPromise;
|
|
76432
76433
|
}
|
|
76433
76434
|
function loadWebLogin() {
|
|
76434
|
-
webLoginPromise ??= import("./login-
|
|
76435
|
+
webLoginPromise ??= import("./login-CFr5vJmR.js").then((n) => n.n);
|
|
76435
76436
|
return webLoginPromise;
|
|
76436
76437
|
}
|
|
76437
76438
|
function loadWebLoginQr() {
|
|
76438
|
-
webLoginQrPromise ??= import("./login-qr-
|
|
76439
|
+
webLoginQrPromise ??= import("./login-qr-CFFFOjOl.js");
|
|
76439
76440
|
return webLoginQrPromise;
|
|
76440
76441
|
}
|
|
76441
76442
|
function loadWebChannel() {
|
|
76442
|
-
webChannelPromise ??= import("./web-
|
|
76443
|
+
webChannelPromise ??= import("./web-Csmkqx1W.js");
|
|
76443
76444
|
return webChannelPromise;
|
|
76444
76445
|
}
|
|
76445
76446
|
function loadWhatsAppActions() {
|
|
76446
|
-
whatsappActionsPromise ??= import("./whatsapp-actions-
|
|
76447
|
+
whatsappActionsPromise ??= import("./whatsapp-actions-DbPcN6JQ.js");
|
|
76447
76448
|
return whatsappActionsPromise;
|
|
76448
76449
|
}
|
|
76449
76450
|
function createPluginRuntime() {
|
|
@@ -76673,7 +76674,7 @@ const resolvePluginSdkAliasFile = (params) => {
|
|
|
76673
76674
|
const srcCandidate = path.join(cursor, "src", "plugin-sdk", params.srcFile);
|
|
76674
76675
|
const distCandidate = path.join(cursor, "dist", "plugin-sdk", params.distFile);
|
|
76675
76676
|
const orderedCandidates = isDistRuntime ? [distCandidate, srcCandidate] : isTest ? [distCandidate, srcCandidate] : [distCandidate];
|
|
76676
|
-
for (const candidate of orderedCandidates) if (
|
|
76677
|
+
for (const candidate of orderedCandidates) if (syncFs.existsSync(candidate)) return candidate;
|
|
76677
76678
|
const parent = path.dirname(cursor);
|
|
76678
76679
|
if (parent === cursor) break;
|
|
76679
76680
|
cursor = parent;
|
|
@@ -77011,7 +77012,7 @@ function loadIdleHandsPlugins(options = {}) {
|
|
|
77011
77012
|
continue;
|
|
77012
77013
|
}
|
|
77013
77014
|
const safeSource = opened.path;
|
|
77014
|
-
|
|
77015
|
+
syncFs.closeSync(opened.fd);
|
|
77015
77016
|
let mod = null;
|
|
77016
77017
|
try {
|
|
77017
77018
|
mod = getJiti()(safeSource);
|
|
@@ -77148,7 +77149,7 @@ function loadIdleHandsPlugins(options = {}) {
|
|
|
77148
77149
|
}
|
|
77149
77150
|
function safeRealpathOrResolve(value) {
|
|
77150
77151
|
try {
|
|
77151
|
-
return
|
|
77152
|
+
return syncFs.realpathSync(value);
|
|
77152
77153
|
} catch {
|
|
77153
77154
|
return path.resolve(value);
|
|
77154
77155
|
}
|
|
@@ -77512,9 +77513,9 @@ function resolvePatchFileOps(options) {
|
|
|
77512
77513
|
});
|
|
77513
77514
|
assertBoundaryRead(opened, filePath);
|
|
77514
77515
|
try {
|
|
77515
|
-
return
|
|
77516
|
+
return syncFs.readFileSync(opened.fd, "utf8");
|
|
77516
77517
|
} finally {
|
|
77517
|
-
|
|
77518
|
+
syncFs.closeSync(opened.fd);
|
|
77518
77519
|
}
|
|
77519
77520
|
},
|
|
77520
77521
|
writeFile: async (filePath, content) => {
|
|
@@ -77816,7 +77817,7 @@ async function recordLoopOutcome(args) {
|
|
|
77816
77817
|
if (!args.ctx?.sessionKey) return;
|
|
77817
77818
|
try {
|
|
77818
77819
|
const { getDiagnosticSessionState } = await import("./diagnostic-session-state-BGF2r-kt.js").then((n) => n.n);
|
|
77819
|
-
const { recordToolCallOutcome } = await import("./tool-loop-detection-
|
|
77820
|
+
const { recordToolCallOutcome } = await import("./tool-loop-detection-BNGetx3Z.js");
|
|
77820
77821
|
recordToolCallOutcome(getDiagnosticSessionState({
|
|
77821
77822
|
sessionKey: args.ctx.sessionKey,
|
|
77822
77823
|
sessionId: args.ctx?.agentId
|
|
@@ -77837,8 +77838,8 @@ async function runBeforeToolCallHook(args) {
|
|
|
77837
77838
|
const params = args.params;
|
|
77838
77839
|
if (args.ctx?.sessionKey) {
|
|
77839
77840
|
const { getDiagnosticSessionState } = await import("./diagnostic-session-state-BGF2r-kt.js").then((n) => n.n);
|
|
77840
|
-
const { logToolLoopAction } = await import("./diagnostic-
|
|
77841
|
-
const { detectToolCallLoop, recordToolCall } = await import("./tool-loop-detection-
|
|
77841
|
+
const { logToolLoopAction } = await import("./diagnostic-4owMk4vH.js").then((n) => n.n);
|
|
77842
|
+
const { detectToolCallLoop, recordToolCall } = await import("./tool-loop-detection-BNGetx3Z.js");
|
|
77842
77843
|
const sessionState = getDiagnosticSessionState({
|
|
77843
77844
|
sessionKey: args.ctx.sessionKey,
|
|
77844
77845
|
sessionId: args.ctx?.agentId
|
|
@@ -80604,8 +80605,8 @@ async function readWorkspaceContextForSummary() {
|
|
|
80604
80605
|
const workspaceDir = process.cwd();
|
|
80605
80606
|
const agentsPath = path.join(workspaceDir, "AGENTS.md");
|
|
80606
80607
|
try {
|
|
80607
|
-
if (!
|
|
80608
|
-
const sections = extractSections(await
|
|
80608
|
+
if (!syncFs.existsSync(agentsPath)) return "";
|
|
80609
|
+
const sections = extractSections(await syncFs.promises.readFile(agentsPath, "utf-8"), ["Session Startup", "Red Lines"]);
|
|
80609
80610
|
if (sections.length === 0) return "";
|
|
80610
80611
|
const combined = sections.join("\n\n");
|
|
80611
80612
|
return `\n\n<workspace-critical-rules>\n${combined.length > MAX_SUMMARY_CONTEXT_CHARS ? combined.slice(0, MAX_SUMMARY_CONTEXT_CHARS) + "\n...[truncated]..." : combined}\n</workspace-critical-rules>`;
|
|
@@ -81973,7 +81974,7 @@ async function compactEmbeddedPiSessionDirect(params) {
|
|
|
81973
81974
|
if (!apiKeyInfo.apiKey) {
|
|
81974
81975
|
if (apiKeyInfo.mode !== "aws-sdk") throw new Error(`No API key resolved for provider "${model.provider}" (auth mode: ${apiKeyInfo.mode}).`);
|
|
81975
81976
|
} else if (model.provider === "github-copilot") {
|
|
81976
|
-
const { resolveCopilotApiToken } = await import("./github-copilot-token-
|
|
81977
|
+
const { resolveCopilotApiToken } = await import("./github-copilot-token-Dgt6cnsM.js").then((n) => n.n);
|
|
81977
81978
|
const copilotToken = await resolveCopilotApiToken({ githubToken: apiKeyInfo.apiKey });
|
|
81978
81979
|
authStorage.setRuntimeApiKey(model.provider, copilotToken.token);
|
|
81979
81980
|
} else authStorage.setRuntimeApiKey(model.provider, apiKeyInfo.apiKey);
|
|
@@ -83393,11 +83394,11 @@ function appendRawStream(payload) {
|
|
|
83393
83394
|
if (!rawStreamReady) {
|
|
83394
83395
|
rawStreamReady = true;
|
|
83395
83396
|
try {
|
|
83396
|
-
|
|
83397
|
+
syncFs.mkdirSync(path.dirname(RAW_STREAM_PATH), { recursive: true });
|
|
83397
83398
|
} catch {}
|
|
83398
83399
|
}
|
|
83399
83400
|
try {
|
|
83400
|
-
|
|
83401
|
+
syncFs.promises.appendFile(RAW_STREAM_PATH, `${JSON.stringify(payload)}\n`);
|
|
83401
83402
|
} catch {}
|
|
83402
83403
|
}
|
|
83403
83404
|
|
|
@@ -87000,7 +87001,7 @@ async function runEmbeddedPiAgent(params) {
|
|
|
87000
87001
|
return;
|
|
87001
87002
|
}
|
|
87002
87003
|
if (model.provider === "github-copilot") {
|
|
87003
|
-
const { resolveCopilotApiToken } = await import("./github-copilot-token-
|
|
87004
|
+
const { resolveCopilotApiToken } = await import("./github-copilot-token-Dgt6cnsM.js").then((n) => n.n);
|
|
87004
87005
|
const copilotToken = await resolveCopilotApiToken({ githubToken: apiKeyInfo.apiKey });
|
|
87005
87006
|
authStorage.setRuntimeApiKey(model.provider, copilotToken.token);
|
|
87006
87007
|
} else authStorage.setRuntimeApiKey(model.provider, apiKeyInfo.apiKey);
|