@nikolasp98/minion 2026.6.14-dev.20260616061802 → 2026.6.16-dev
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{acp-cli-Du7NWZu3.js → acp-cli-2xKZfd6v.js} +3 -3
- package/dist/{acp-cli-BmKOFno7.js → acp-cli-q8e4aJoa.js} +3 -3
- package/dist/{agent-6dzad4Vk.js → agent-CZq9c4BW.js} +13 -13
- package/dist/{agent-step-C3wXb9Cx.js → agent-step-D5w2xNfi.js} +2 -2
- package/dist/{agent-step-Bf1GImWB.js → agent-step-DnVo1ws9.js} +2 -2
- package/dist/{agents-Dw2xlB7X.js → agents-3owoMugG.js} +7 -7
- package/dist/{agents-list-tool-Dq0lIpTn.js → agents-list-tool-Bjcc4I_6.js} +3 -3
- package/dist/{agents-list-tool-D9mHFLLa.js → agents-list-tool-CzUTgXov.js} +3 -3
- package/dist/{agents.config-1imA1H12.js → agents.config-Di1Fb5KI.js} +12 -12
- package/dist/{audit-DmbpL3cv.js → audit-B8L_aShb.js} +10 -10
- package/dist/{audit-DmJGMt0j.js → audit-Ck6MCUxx.js} +10 -10
- package/dist/{auth-choice-neer30p3.js → auth-choice-B6U5biA7.js} +4 -4
- package/dist/{auth-choice-CAmZkQLg.js → auth-choice-DmpOyRlb.js} +4 -4
- package/dist/{banner-DpI_geg3.js → banner-Be2ToLay.js} +1 -1
- package/dist/{browser-cli-z39mB4Us.js → browser-cli-BvtSNPci.js} +3 -3
- package/dist/{browser-cli-DDHEGwdS.js → browser-cli-De-S5eSp.js} +3 -3
- package/dist/{browser-tool-CWG74LXa.js → browser-tool-BVAlCkv9.js} +7 -7
- package/dist/{browser-tool-CZsdYOyF.js → browser-tool-CTNhVzit.js} +7 -7
- package/dist/build-info.json +3 -3
- package/dist/bundled/boot-md/handler.js +489 -42
- package/dist/bundled/kg-message-sync/handler.js +6 -2
- package/dist/bundled/session-memory/handler.js +47 -1
- package/dist/{call-DkT-xA-u.js → call-BrDNyQiZ.js} +2 -2
- package/dist/{call-COjGFB_A.js → call-Di0NGY7s.js} +2 -2
- package/dist/{call-BKa0221r.js → call-QNmBuec5.js} +1 -1
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{canvas-tool-yqzOmVk8.js → canvas-tool-C8kJ8X6t.js} +2 -2
- package/dist/{canvas-tool-D7utVUj9.js → canvas-tool-v_tDod0l.js} +2 -2
- package/dist/{channel-options-DDJR7t6c.js → channel-options-BgB_XE_R.js} +1 -1
- package/dist/{channel-options-wAeX19Sd.js → channel-options-C3G3uvc8.js} +1 -1
- package/dist/{channel-web-B731iz_S.js → channel-web-C7erWB8c.js} +7 -7
- package/dist/{channels-cli-DyZ1QjyT.js → channels-cli-CWL9_dUC.js} +9 -9
- package/dist/{channels-cli-B2lgO976.js → channels-cli-D0WU7aEW.js} +9 -9
- package/dist/{chrome-BYfNS8BB.js → chrome-BUH9jMtc.js} +1 -1
- package/dist/{chrome-DKRiholg.js → chrome-WqxB18cs.js} +2 -2
- package/dist/{chrome-C3MXJRdA.js → chrome-xmfH0ICu.js} +2 -2
- package/dist/{clawbot-cli-ByrTjcjf.js → clawbot-cli-BqvWmOf2.js} +1 -1
- package/dist/{clawbot-cli-C-8EFRKv.js → clawbot-cli-Cy4xxEwA.js} +1 -1
- package/dist/cli/daemon-cli.js +1 -1
- package/dist/{cli-DNiohgQu.js → cli-C6-qelzK.js} +3 -3
- package/dist/{cli-D-m3umOT.js → cli-COPy2u3N.js} +3 -3
- package/dist/{client-D2hf2jQ7.js → client-BIS2Uayk.js} +4 -4
- package/dist/{client-BQN-LuPk.js → client-BoM5FwV4.js} +4 -4
- package/dist/{client-xu3whbFC.js → client-CTr2olAS.js} +4 -4
- package/dist/{command-registry-CB0tYTNA.js → command-registry-BSAY6wdm.js} +14 -14
- package/dist/{commands-registry-PW7IInMR.js → commands-registry-SXjoCA7i.js} +2 -2
- package/dist/{commands-registry-dia3m7-M.js → commands-registry-UnBqSA67.js} +2 -2
- package/dist/{completion-cli-Dg5pvBMY.js → completion-cli--3eqgAwK.js} +1 -1
- package/dist/{completion-cli-CSzxM5wY.js → completion-cli-RDTl_9qR.js} +2 -2
- package/dist/{config-BBoAK0dA.js → config-CkMQunWU.js} +6 -2
- package/dist/{config-ClkrcdId.js → config-DHYot764.js} +2 -2
- package/dist/{config-BgqD6SVw.js → config-DJTLRK5S.js} +2 -2
- package/dist/{config-cli-Denu0eEu.js → config-cli-BUCeVfP_.js} +4 -4
- package/dist/{config-cli-DtAjejub.js → config-cli-C1RrXpz0.js} +4 -4
- package/dist/{config-guard-DF1WNs2e.js → config-guard-CVx36OOi.js} +3 -3
- package/dist/config-guard-Csz0-uEX.js +2 -0
- package/dist/{config-validation-mmyHFUrK.js → config-validation-BVN3OEOd.js} +2 -2
- package/dist/{config-validation-lm5BwYiy.js → config-validation-C3jULSMI.js} +2 -2
- package/dist/{configure-CxrB1V4C.js → configure-CQEz5KQ3.js} +15 -15
- package/dist/{configure-CroxylRT.js → configure-akx6bWAt.js} +15 -15
- package/dist/{cron-cli-CYFkAl-f.js → cron-cli-BoMJUHUX.js} +2 -2
- package/dist/{cron-cli-CMjG3iLg.js → cron-cli-DvtMDSN2.js} +1 -1
- package/dist/{cron-tool-B3ffaxAO.js → cron-tool-Dcr3QMih.js} +5 -5
- package/dist/{cron-tool-BnUUPLV3.js → cron-tool-DllqQBKI.js} +5 -5
- package/dist/{daemon-cli-Bs0GD5xF.js → daemon-cli-CHfZAu4w.js} +9 -9
- package/dist/{daemon-cli-dauqwBcE.js → daemon-cli-D7K6zRR6.js} +9 -9
- package/dist/daemon-cli.js +6 -2
- package/dist/daemon-install-helpers-Ls_foXgf.js +2 -0
- package/dist/daemon-install-helpers-VzSaKa-j.js +2 -0
- package/dist/{daemon-runtime-C-XyxJRT.js → daemon-runtime--L-FasK6.js} +1 -1
- package/dist/{daemon-runtime-BLp3uThx.js → daemon-runtime-DKTkFmdZ.js} +1 -1
- package/dist/{deliver-C40KRMzm.js → deliver-BCijF1xe.js} +4 -4
- package/dist/{deliver-C5vVViLg.js → deliver-DiDYkpmh.js} +5 -5
- package/dist/{deliver-Dhut24vc.js → deliver-Ds0o_rCY.js} +3 -3
- package/dist/{deps-DRyTOIPO.js → deps-DFeGFeii.js} +6 -6
- package/dist/{devices-cli-DFPiK0W5.js → devices-cli-C9OvVBEs.js} +1 -1
- package/dist/{devices-cli-BfwxECLu.js → devices-cli-D4YJarjz.js} +1 -1
- package/dist/{diagnostic-Bzd3eHBU.js → diagnostic-CVAiT8Yi.js} +2 -2
- package/dist/{diagnostic-session-state-C8e7GxAm.js → diagnostic-session-state-Cj5nMvNL.js} +1 -1
- package/dist/{directory-cli-BX_a06o7.js → directory-cli--LuldZqc.js} +2 -2
- package/dist/{directory-cli-BQlGeeQK.js → directory-cli-DHpksyLI.js} +2 -2
- package/dist/{dispatcher-BWcYLowQ.js → dispatcher-D46WCdTe.js} +7 -7
- package/dist/{dispatcher-DefEQC4n.js → dispatcher-D8fgAnwH.js} +7 -7
- package/dist/{dm-policy-shared-Dm70u4Yr.js → dm-policy-shared-CEUsAI0F.js} +1 -1
- package/dist/{dm-policy-shared-DeX6SUMT.js → dm-policy-shared-DZglJJMa.js} +1 -1
- package/dist/{dns-cli-CxMaD4cI.js → dns-cli-C4L7EzEY.js} +2 -2
- package/dist/{dns-cli-DAdvx6qq.js → dns-cli-wSFONc42.js} +2 -2
- package/dist/{docs-cli-BR1YXIH4.js → docs-cli-4Dzg7LrJ.js} +1 -1
- package/dist/{docs-cli-BR8IKtP3.js → docs-cli-BWUGypxO.js} +1 -1
- package/dist/doctor-completion-B4bzzPyA.js +2 -0
- package/dist/doctor-completion-CE9xjPcf.js +2 -0
- package/dist/{doctor-completion-C3YAoPkP.js → doctor-completion-COKl8-PU.js} +1 -1
- package/dist/{doctor-completion-CkIy7FpB.js → doctor-completion-DPjvm1G7.js} +1 -1
- package/dist/{doctor-config-flow-CsP66Ij5.js → doctor-config-flow-CCqETtju.js} +4 -4
- package/dist/{doctor-config-flow-D_WRZLT3.js → doctor-config-flow-CRibe33c.js} +4 -4
- package/dist/entry.js +1 -1
- package/dist/{exec-approvals-cli-CLIzgYS8.js → exec-approvals-cli-CCqVDSOe.js} +2 -2
- package/dist/{exec-approvals-cli-DW2-7TEV.js → exec-approvals-cli-RRZ5wIP0.js} +2 -2
- package/dist/extensionAPI.d.ts +36 -2
- package/dist/extensionAPI.js +263 -20
- package/dist/{gateway-Duqy39t3.js → gateway-Bvd5CqY4.js} +3 -3
- package/dist/{gateway-CqhiWZQd.js → gateway-D_kwhuup.js} +3 -3
- package/dist/{gateway-cli-CUrxOlB4.js → gateway-cli-BbuSOWKq.js} +328 -244
- package/dist/{gateway-cli-BrM4d8E7.js → gateway-cli-C-AMSwgo.js} +324 -240
- package/dist/{gateway-0sVK3Rjy.js → gateway-q_fM0u-m.js} +2 -2
- package/dist/{gateway-rpc-BGgh3mTl.js → gateway-rpc-Ed0F1N_m.js} +1 -1
- package/dist/{gateway-rpc-9WQJwkTJ.js → gateway-rpc-J14XBNuM.js} +1 -1
- package/dist/{gateway-tool-DtlbDV6N.js → gateway-tool-Bi96OPGe.js} +3 -3
- package/dist/{gateway-tool-CMd3r3O5.js → gateway-tool-CNaxsMbd.js} +3 -3
- package/dist/{github-copilot-auth-Dh5sombA.js → github-copilot-auth-BmlL3P7c.js} +2 -2
- package/dist/{github-copilot-auth-ClDHXpfT.js → github-copilot-auth-DhjScF3O.js} +2 -2
- package/dist/{gmail-Dkq3kngs.js → gmail-BuCz-KEp.js} +1 -1
- package/dist/{gmail-DpPYd91j.js → gmail-C1O6grHu.js} +1 -1
- package/dist/{health-BlZEOPXK.js → health-6TTjEZoo.js} +8 -8
- package/dist/{health-BJ-Irw3K.js → health-BJbAa4df.js} +8 -8
- package/dist/{hooks-cli-Bqd1BR2r.js → hooks-cli-C0Z9dRtP.js} +2 -2
- package/dist/{hooks-cli-CR_bwhdf.js → hooks-cli-DFrRHJ1j.js} +2 -2
- package/dist/{host-D3VZGype.js → host-C8oRBLB6.js} +1 -1
- package/dist/{host-CafVbu36.js → host-DCfZcVR_.js} +1 -1
- package/dist/{image-tool-CwCxITcF.js → image-tool-D_dhIXLT.js} +2 -2
- package/dist/{image-tool-BY8NbIQs.js → image-tool-y-FDf6-M.js} +2 -2
- package/dist/index.d.ts +36 -2
- package/dist/index.js +10 -10
- package/dist/{io-TKYkFbcF.js → io-C_Q6AU5E.js} +2 -2
- package/dist/{io-oiyyZuuG.js → io-CpUiX-Lv.js} +2 -2
- package/dist/{ir-CP9ltYx0.js → ir-D0vxg3iM.js} +2 -2
- package/dist/{knowledge-graph-Dd0rSl0Q.js → knowledge-graph-BFnL_feN.js} +1 -1
- package/dist/{lifecycle-core-C7W7YZwn.js → lifecycle-core-CCUOBmZs.js} +3 -3
- package/dist/{lifecycle-core-BQztQGrv.js → lifecycle-core-CX37YE4Z.js} +3 -3
- package/dist/llm-slug-generator.js +47 -1
- package/dist/{logs-cli-CdAJHTuP.js → logs-cli-BYdqoMkJ.js} +2 -2
- package/dist/{logs-cli-lcuW5kPv.js → logs-cli-Comxq7pP.js} +2 -2
- package/dist/{manager-DeR0znMP.js → manager-DvUEsXx3.js} +1 -1
- package/dist/{memory-cli-BxVGlaEm.js → memory-cli-Bz--RMDo.js} +3 -3
- package/dist/{memory-cli-Y_w-AsVt.js → memory-cli-ilkHc_D4.js} +3 -3
- package/dist/{message-action-runner-CE4bDq6V.js → message-action-runner-BZQOV03k.js} +9 -9
- package/dist/{message-action-runner-BdclEzxx.js → message-action-runner-J8W9BPhj.js} +9 -9
- package/dist/{message-tool-BpFLUe6E.js → message-tool-BHJpugQ6.js} +6 -6
- package/dist/{message-tool-_MODnjgC.js → message-tool-GTRrYMuR.js} +6 -6
- package/dist/{model-catalog-AiXYmm_2.js → model-catalog-7Ew4iFgU.js} +3 -3
- package/dist/{model-catalog-CIgjk707.js → model-catalog-B1R3eepi.js} +3 -3
- package/dist/{model-fallback-DsefSc26.js → model-fallback--afWtYyY.js} +2 -2
- package/dist/{model-fallback-C92G-WUW.js → model-fallback-DXR7ZbvM.js} +2 -2
- package/dist/{model-fallback-Dwkt7imi.js → model-fallback-GSMox3YK.js} +3 -3
- package/dist/{model-picker-B_SEgewv.js → model-picker--bqpbxbC.js} +2 -2
- package/dist/{model-picker-DLr3xagY.js → model-picker-DJpEjKZT.js} +2 -2
- package/dist/{models-YFKEQsfy.js → models-CETV4zZ3.js} +12 -12
- package/dist/{models-cli-DuHCNW7r.js → models-cli-B5caj79x.js} +2 -2
- package/dist/{models-cli-yoQKaR0X.js → models-cli-DPT6gYJm.js} +12 -12
- package/dist/{models-config-BWzVL4DK.js → models-config-CX3wpMrd.js} +2 -2
- package/dist/{models-config-Df7nRCU-.js → models-config-ChIAfklN.js} +2 -2
- package/dist/{node-cli-D4pCYQMW.js → node-cli-4VRhz_1P.js} +7 -7
- package/dist/{node-cli-DzvdQBVp.js → node-cli-DyoQqYo1.js} +7 -7
- package/dist/{nodes-cli-CHWJMLm6.js → nodes-cli-CNQ633Hz.js} +5 -5
- package/dist/{nodes-cli-cjiOPFLH.js → nodes-cli-Dl3KtKoX.js} +5 -5
- package/dist/{nodes-tool-CR8MmpTZ.js → nodes-tool-BkgixWxk.js} +3 -3
- package/dist/{nodes-tool-DxMgloLr.js → nodes-tool-BmT8LWTt.js} +3 -3
- package/dist/{nodes-utils-BHrOJOWk.js → nodes-utils-B1jr4oHE.js} +1 -1
- package/dist/{nodes-utils-BRFzmJmB.js → nodes-utils-CVaBTJ5V.js} +1 -1
- package/dist/{nodes-utils-Eo4ilZ36.js → nodes-utils-DVNKajNN.js} +1 -1
- package/dist/{onboard-D3EkmOs0.js → onboard-BSb-bXtw.js} +9 -9
- package/dist/{onboard-DdguleAq.js → onboard-DHzBfhN9.js} +9 -9
- package/dist/{onboard-channels-DBltNYY2.js → onboard-channels-BP5oQVqD.js} +1 -1
- package/dist/{onboard-channels-cSzxNqaz.js → onboard-channels-CNmc5fTo.js} +1 -1
- package/dist/{onboard-channels-CeAsHBgW.js → onboard-channels-DHeOj8d6.js} +1 -1
- package/dist/{onboard-channels-ZDMAODeW.js → onboard-channels-DqoegMtk.js} +1 -1
- package/dist/{onboard-custom-DqkrqRdv.js → onboard-custom-B7OO328d.js} +2 -2
- package/dist/{onboard-custom-DMHUJH5-.js → onboard-custom-BODmfSpC.js} +1 -1
- package/dist/{onboard-custom-Vb7K9679.js → onboard-custom-BZv_tJxB.js} +1 -1
- package/dist/{onboard-custom-DOEx3xcN.js → onboard-custom-D7LvDFdH.js} +2 -2
- package/dist/{onboard-helpers-D60Qp1ne.js → onboard-helpers-B9IGa3vx.js} +5 -5
- package/dist/{onboard-helpers-7fbTU2tq.js → onboard-helpers-BKca3qU4.js} +1 -1
- package/dist/{onboard-helpers-DCve32jF.js → onboard-helpers-DP2LE5Oh.js} +5 -5
- package/dist/{onboard-helpers-xGGsG9to.js → onboard-helpers-HkYz_NGi.js} +1 -1
- package/dist/{onboard-remote-B13DRLJa.js → onboard-remote-DQrtJWPJ.js} +1 -1
- package/dist/{onboard-remote-C6s3bR7X.js → onboard-remote-kBPMv7zo.js} +1 -1
- package/dist/{onboard-skills-BU0OKpqj.js → onboard-skills-Cd2WeuBn.js} +3 -3
- package/dist/{onboard-skills-CKzdl2Ph.js → onboard-skills-KRXxu17b.js} +3 -3
- package/dist/{onboarding-BkiZ3JkU.js → onboarding-Cg42Uf0E.js} +11 -11
- package/dist/{onboarding-C--TfoeE.js → onboarding-nPyIyp8f.js} +11 -11
- package/dist/{onboarding.finalize-CUkOVH_E.js → onboarding.finalize-B8gctARP.js} +9 -9
- package/dist/{onboarding.finalize-Damz4ET-.js → onboarding.finalize-BoMhnz3U.js} +9 -9
- package/dist/{onboarding.gateway-config-BA3PQJBL.js → onboarding.gateway-config-Co5c5Jsj.js} +2 -2
- package/dist/{onboarding.gateway-config-4wtmgfdq.js → onboarding.gateway-config-DkkPCpUx.js} +2 -2
- package/dist/{outbound-send-deps-BmDpImVK.js → outbound-send-deps-Dg8cSoFv.js} +6 -6
- package/dist/{outbound-session-B9B7Vsxm.js → outbound-session-BCNTkSVV.js} +3 -3
- package/dist/{outbound-session-pZGUQ4vz.js → outbound-session-BG0ZMrIB.js} +3 -3
- package/dist/{pairing-cli-CRnZKVjx.js → pairing-cli-B_sfgSbk.js} +2 -2
- package/dist/{pairing-cli-aoyKpG0L.js → pairing-cli-mUAKj093.js} +2 -2
- package/dist/{pi-embedded-helpers-D-m7pmXE.js → pi-embedded-helpers-BsRnajNh.js} +1 -1
- package/dist/{pi-embedded-helpers-CkhQP2gU.js → pi-embedded-helpers-CSxJBpFl.js} +1 -1
- package/dist/{pi-embedded-helpers-BbHYim54.js → pi-embedded-helpers-CUfPWD_N.js} +6 -5
- package/dist/{pi-embedded-utils-C6MaVLHj.js → pi-embedded-utils-BlNfBen_.js} +1 -1
- package/dist/{pi-embedded-utils-DIGchmzO.js → pi-embedded-utils-Bql42QTv.js} +1 -1
- package/dist/{pi-embedded-utils-Ip0GsjWb.js → pi-embedded-utils-BtyCE2ZK.js} +1 -1
- package/dist/{pi-model-discovery-Ot_Q_yYa.js → pi-model-discovery-BV73T1am.js} +1 -1
- package/dist/{pi-tools.policy-Dt2kTSid.js → pi-tools.policy-DDJ31-0E.js} +3 -3
- package/dist/{plugin-registry-BZCSZFQn.js → plugin-registry-Dq33ZU89.js} +3 -3
- package/dist/{plugin-registry-DMRnpxA2.js → plugin-registry-RoPLmlrM.js} +3 -3
- package/dist/plugin-sdk/agents/bash/bash-tools.exec-runtime.d.ts +4 -0
- package/dist/plugin-sdk/agents/pi-embedded-runner/tool-result-context-guard.d.ts +5 -0
- package/dist/plugin-sdk/agents/pi-embedded-runner/tool-result-reduce.d.ts +8 -0
- package/dist/plugin-sdk/agents/sandbox/tier0/index.d.ts +3 -0
- package/dist/plugin-sdk/agents/sandbox/tier0/registry.d.ts +28 -0
- package/dist/plugin-sdk/agents/sandbox/tier0/router.d.ts +18 -0
- package/dist/plugin-sdk/agents/sandbox/tier0/virtual-sandbox.d.ts +30 -0
- package/dist/plugin-sdk/agents/sandbox/types.d.ts +5 -0
- package/dist/plugin-sdk/agents/sections/behaviour.d.ts +9 -0
- package/dist/plugin-sdk/agents/skills/compact-prompt.d.ts +12 -0
- package/dist/plugin-sdk/agents/skills/workspace.d.ts +4 -0
- package/dist/plugin-sdk/channels/discord.js +487 -40
- package/dist/plugin-sdk/channels/googlechat.js +3 -1
- package/dist/plugin-sdk/channels/imessage.js +487 -40
- package/dist/plugin-sdk/channels/line.js +489 -42
- package/dist/plugin-sdk/channels/msteams.js +3 -1
- package/dist/plugin-sdk/channels/signal.js +487 -40
- package/dist/plugin-sdk/channels/slack.js +487 -40
- package/dist/plugin-sdk/channels/telegram.js +487 -40
- package/dist/plugin-sdk/channels/whatsapp.js +488 -41
- package/dist/plugin-sdk/config/types.agent-defaults.d.ts +8 -0
- package/dist/plugin-sdk/config/types.agents.d.ts +4 -0
- package/dist/plugin-sdk/config/types.gateway.d.ts +8 -0
- package/dist/plugin-sdk/config/types.skills.d.ts +7 -0
- package/dist/plugin-sdk/config/types.tools.d.ts +8 -0
- package/dist/plugin-sdk/config/zod-schema.agent-defaults.d.ts +3 -0
- package/dist/plugin-sdk/config/zod-schema.agent-runtime.d.ts +9 -0
- package/dist/plugin-sdk/config/zod-schema.agents.d.ts +6 -0
- package/dist/plugin-sdk/config/zod-schema.d.ts +26 -0
- package/dist/plugin-sdk/core.js +6 -2
- package/dist/plugin-sdk/index.js +501 -54
- package/dist/{plugins-cli-BKMBY-np.js → plugins-cli-BA0wJM-k.js} +3 -3
- package/dist/{plugins-cli-D3_BCsVN.js → plugins-cli-a-DWljrI.js} +3 -3
- package/dist/{program-context-CVLR19jJ.js → program-context-CUZUPsiC.js} +43 -43
- package/dist/{program-DFvYiOXj.js → program-gbYi5UIa.js} +7 -7
- package/dist/{prompt-select-styled-D-axSDjg.js → prompt-select-styled-DAdqH32e.js} +17 -17
- package/dist/{prompt-select-styled-n1nMLPsI.js → prompt-select-styled-lKRNiihE.js} +17 -17
- package/dist/{push-apns-Dh6xZki_.js → push-apns-BhtcU_Da.js} +1 -1
- package/dist/{push-apns-D4wjtIOe.js → push-apns-D69Af97u.js} +1 -1
- package/dist/{pw-ai-2VhRhF2B.js → pw-ai-Ba9xJlWV.js} +2 -2
- package/dist/{pw-ai-Blk_s6D5.js → pw-ai-Cvjg4UOk.js} +2 -2
- package/dist/{pw-ai-B6oeo1wI.js → pw-ai-DiwvYyv3.js} +2 -2
- package/dist/{pw-session-Crb06R5v.js → pw-session-BZ1pAX5r.js} +1 -1
- package/dist/{pw-session-DmaV4mTM.js → pw-session-BxiZ6YYh.js} +1 -1
- package/dist/{pw-session-CATqkBLI.js → pw-session-EHew9i-n.js} +1 -1
- package/dist/{qr-cli-B3IWV_8b.js → qr-cli-CFsUuFR-.js} +2 -2
- package/dist/{qr-cli-SfioxAM_.js → qr-cli-SfzcWdI0.js} +2 -2
- package/dist/{register.agent-DDVZDpQC.js → register.agent-B4bNkRtB.js} +11 -11
- package/dist/{register.agent-Dfk70LYq.js → register.agent-DHCAqxWX.js} +8 -8
- package/dist/{register.channel-BvMvb6ip.js → register.channel-B1vKkWV7.js} +2 -2
- package/dist/{register.channel-BJtyCgD7.js → register.channel-D0lVq7dU.js} +2 -2
- package/dist/{register.configure-WQlTjNyz.js → register.configure-DFSJd0YH.js} +1 -1
- package/dist/{register.configure-BdKChDnl.js → register.configure-DIHFldND.js} +1 -1
- package/dist/{register.drone-B-xrDJpJ.js → register.drone-Do4i5ZE9.js} +2 -2
- package/dist/{register.drone-DSHJ5vq1.js → register.drone-Tckr0QFo.js} +2 -2
- package/dist/{register.maintenance-DoMoBeyF.js → register.maintenance-Bw9G1eZ0.js} +5 -5
- package/dist/{register.maintenance-DnP_N0ye.js → register.maintenance-D5LVEuKI.js} +5 -5
- package/dist/{register.message-Xl-pZILp.js → register.message-BsGRyTVT.js} +7 -7
- package/dist/{register.message-Cdp8TM0J.js → register.message-C_51tZCE.js} +8 -8
- package/dist/{register.onboard-BzZPizJ0.js → register.onboard-CMusJAzJ.js} +1 -1
- package/dist/{register.onboard-IPqLR5Zb.js → register.onboard-Ngaw9ikW.js} +1 -1
- package/dist/{register.setup-DLzSctB1.js → register.setup-aKi_hurQ.js} +4 -4
- package/dist/{register.setup-BX8Ya9qY.js → register.setup-xpiPRct8.js} +4 -4
- package/dist/{register.status-health-sessions-CXIHidz6.js → register.status-health-sessions-B87H-g0g.js} +6 -6
- package/dist/{register.status-health-sessions-DnNAMB3T.js → register.status-health-sessions-D2rMUW_t.js} +4 -4
- package/dist/{register.subclis-DAt5WEzu.js → register.subclis-DB0kFld6.js} +30 -30
- package/dist/{reply-D_uwJ_hb.js → reply-CNJWciSj.js} +442 -52
- package/dist/{reply-payloads-BBHotu7W.js → reply-payloads-BS889lPA.js} +2 -2
- package/dist/{reply-payloads-CikGrhVL.js → reply-payloads-Dk-zLmJC.js} +2 -2
- package/dist/{reply-prefix-eSF5kXs5.js → reply-prefix-CfrIMbCM.js} +1 -1
- package/dist/{reply-prefix-CYbvVBOV.js → reply-prefix-D9MQ_veY.js} +1 -1
- package/dist/{resolve-route-FLi7kFo1.js → resolve-route-0arQsERr.js} +1 -1
- package/dist/{resolve-route-DiiBj8NL.js → resolve-route-DwDSX3mI.js} +2 -2
- package/dist/{routes-DFLRIpty.js → routes-DubNFADQ.js} +4 -4
- package/dist/{routes-CagC77kh.js → routes-hcdbDZ60.js} +4 -4
- package/dist/{rpc-DxdMMngu.js → rpc-CpEGWO4f.js} +1 -1
- package/dist/{rpc-dZcSayi6.js → rpc-DShIx1il.js} +1 -1
- package/dist/{run-main-Cw7JO4bk.js → run-main-CgrHeBpO.js} +20 -20
- package/dist/{sandbox-DX1DKAJb.js → sandbox-BYK6Qgnd.js} +9 -8
- package/dist/{sandbox-pZvVQZ-a.js → sandbox-CDGF9AVA.js} +9 -8
- package/dist/{sandbox-cli-DsFqky0Y.js → sandbox-cli-3v8NFyXC.js} +4 -4
- package/dist/{sandbox-cli--NZU5yHm.js → sandbox-cli-DmXP8NkD.js} +4 -4
- package/dist/{security-cli-B9rFqAom.js → security-cli-B23Rjmu8.js} +3 -3
- package/dist/{security-cli-DUGFqvJc.js → security-cli-C7jxF7EW.js} +3 -3
- package/dist/{send-OcwoynpB.js → send-B3EXtlyb.js} +2 -2
- package/dist/{send-BUUHmWJ3.js → send-Boe93Q4V.js} +2 -2
- package/dist/{send-Czh3Yz38.js → send-Br1IcpxR.js} +2 -2
- package/dist/{send-mztwgKny.js → send-BrvRGJ0_.js} +3 -3
- package/dist/{send-CRNffLsb.js → send-BuiJlYF8.js} +2 -2
- package/dist/{send-DTQ_lSWv.js → send-DPURnZWZ.js} +2 -2
- package/dist/{send-Bh69NFd_.js → send-DT-x-IFQ.js} +3 -3
- package/dist/{send-CuFw68zk.js → send-D_PQuZ3x.js} +2 -2
- package/dist/{send-Ckq83rOO.js → send-DhuPDKRX.js} +2 -2
- package/dist/{server-context-D-VUH9Bz.js → server-context-BRKaxwJB.js} +6 -6
- package/dist/{server-context-BlUcP_zF.js → server-context-CvEQbenq.js} +6 -6
- package/dist/{server-context-BNI2cc_e.js → server-context-nyYhGUmI.js} +5 -5
- package/dist/{server-node-events-DQqHB_8B.js → server-node-events-B6rUT0PE.js} +8 -8
- package/dist/{server-node-events-BqG45BMs.js → server-node-events-D90DAPI1.js} +10 -10
- package/dist/{session-status-tool-CN-Juxjq.js → session-status-tool-BIN4ooy0.js} +6 -6
- package/dist/{session-status-tool-DnD354sJ.js → session-status-tool-CtbF1-VI.js} +7 -7
- package/dist/{session-utils-0BYkk3f_.js → session-utils-DDCd8HC9.js} +4 -4
- package/dist/{sessions-CismtNoo.js → sessions-ByNQiqr2.js} +1 -1
- package/dist/{sessions-D_b2UXud.js → sessions-C0Qs0Flz.js} +3 -3
- package/dist/{sessions-0d-dBE8D.js → sessions-CPoA3oJo.js} +4 -4
- package/dist/{sessions-Z8JCL_sa.js → sessions-CW4tzKA-.js} +3 -3
- package/dist/{sessions-helpers-Crh_NTSX.js → sessions-helpers-DdqQiSR6.js} +3 -3
- package/dist/{sessions-helpers-JsbUTHcP.js → sessions-helpers-vwVJ1Vy4.js} +3 -3
- package/dist/{sessions-helpers-uZ0Taeh3.js → sessions-helpers-xH-u6Byb.js} +3 -3
- package/dist/{sessions-history-tool-6VYdT_kc.js → sessions-history-tool-BO81rMTT.js} +5 -5
- package/dist/{sessions-history-tool-6WMcHpxy.js → sessions-history-tool-DKXNjv5X.js} +5 -5
- package/dist/{sessions-list-tool-CwTLRwGc.js → sessions-list-tool-6DJtypdD.js} +5 -5
- package/dist/{sessions-list-tool-CwGp-l3S.js → sessions-list-tool-s_y-_4Uv.js} +5 -5
- package/dist/{sessions-send-tool-BKNgicV5.js → sessions-send-tool-C3ggqtMe.js} +5 -5
- package/dist/{sessions-send-tool-Dl4HKGgL.js → sessions-send-tool-roh-kyNw.js} +5 -5
- package/dist/{sessions-spawn-tool-DqfoPFrK.js → sessions-spawn-tool-BgkkNWMg.js} +1 -1
- package/dist/{sessions-spawn-tool-Bguo3O1I.js → sessions-spawn-tool-UAd65WIb.js} +1 -1
- package/dist/{shared-Cr0N9iap.js → shared-BysrBqEi.js} +2 -2
- package/dist/{shared-B7QVxDsn.js → shared-CjEFJgna.js} +2 -2
- package/dist/{skills-DkeUrhAT.js → skills-Bf4ZPGHe.js} +1 -1
- package/dist/{skills-DMPRReoe.js → skills-DDhWBAii.js} +1 -1
- package/dist/{skills-cli--8zG3UQk.js → skills-cli-DnO1g2oN.js} +6 -6
- package/dist/{skills-cli-D334Q0dM.js → skills-cli-DxFMRja6.js} +6 -6
- package/dist/{skills-install-DAphGXoj.js → skills-install-Bo9PwVmT.js} +2 -2
- package/dist/{skills-install-BNR2Nfa3.js → skills-install-DkZHLCih.js} +2 -2
- package/dist/{skills-status-D54inzOP.js → skills-status-8p-KrlIF.js} +2 -2
- package/dist/{skills-status-DDzkv-Rj.js → skills-status-CBTT87BN.js} +2 -2
- package/dist/{status-BIvJQtxV.js → status-BpgCPxM4.js} +3 -3
- package/dist/{status-JJ8BdlhI.js → status-Db6PPdwI.js} +3 -3
- package/dist/{status-DosDYGut.js → status-DyQwrglF.js} +12 -12
- package/dist/{status-gWt5DmvD.js → status-Dz_-4ATW.js} +13 -13
- package/dist/{status.update-BnYycijV.js → status.update-BBLk_Q3P.js} +1 -1
- package/dist/{status.update-D0KmfrNX.js → status.update-OhQ3FS7R.js} +1 -1
- package/dist/{subagent-registry-0zv9UyYz.js → subagent-registry-C_UHFYRY.js} +443 -53
- package/dist/{subagents-tool-usr_WpP2.js → subagents-tool-BdWYv7Mb.js} +6 -6
- package/dist/{subagents-tool-m92Kjy1x.js → subagents-tool-DjPwvSat.js} +6 -6
- package/dist/{system-cli-t4Qk2mcC.js → system-cli-BQJK1EiV.js} +1 -1
- package/dist/{system-cli-BxYnYU05.js → system-cli-Cj6oDS1q.js} +1 -1
- package/dist/{systemd-hints-JlNoKkcf.js → systemd-hints-BKM-UvY_.js} +1 -1
- package/dist/{systemd-hints-C21GmUrX.js → systemd-hints-BdVIEvO3.js} +1 -1
- package/dist/{targets-BWPxk4rU.js → targets-BpZ7t54u.js} +1 -1
- package/dist/{tools-F4g3knJE.js → tools-D3fRPoa3.js} +421 -38
- package/dist/{tools-cli-Cmg7InJT.js → tools-cli-CjniP2oD.js} +3 -3
- package/dist/{tools-cli-BPV7GpBg.js → tools-cli-DLPn3_f-.js} +3 -3
- package/dist/{tts-CC3WSaW9.js → tts-BhWpmVdG.js} +1 -1
- package/dist/{tts-CRpGlsYO.js → tts-DrFhyLnB.js} +1 -1
- package/dist/{tts-OJZ7iSKo.js → tts-DyQvwyVi.js} +1 -1
- package/dist/{tts-tool-DsLN8-ZT.js → tts-tool-CdaKVWBM.js} +3 -3
- package/dist/{tts-tool-B73xs8Vs.js → tts-tool-CfEs7ebD.js} +3 -3
- package/dist/{tui-BRdOjXJy.js → tui-CNuz7tKz.js} +5 -5
- package/dist/{tui-PSDwA6SF.js → tui-DJvjN1xV.js} +5 -5
- package/dist/{tui-cli-DMD7clw2.js → tui-cli-CLoyYSXd.js} +1 -1
- package/dist/{tui-cli-DHWrleUP.js → tui-cli-DhhA87TG.js} +1 -1
- package/dist/{update-cli-DlxYgSAN.js → update-cli-0lBEnFj5.js} +8 -8
- package/dist/{update-cli-Du5BbYfl.js → update-cli-Cc4jgBsG.js} +8 -8
- package/dist/{validation-CG8Ui8_v.js → validation-B-XaORq2.js} +5 -1
- package/dist/{validation-T0CNq_JP.js → validation-DuFmPzCB.js} +5 -1
- package/dist/web-BUkj8HIz.js +2 -0
- package/dist/{web-CtwxKIvO.js → web-BY79LufL.js} +8 -8
- package/dist/{web-search-B5d6ODyB.js → web-search-CCeGZMBD.js} +4 -4
- package/dist/{web-search-CV42wG57.js → web-search-D1pX-Tuc.js} +4 -4
- package/dist/{webhooks-cli-tSv_Pzzq.js → webhooks-cli-B3LP9UKY.js} +5 -5
- package/dist/{webhooks-cli-BeHnKv6z.js → webhooks-cli-C5xR4Wu5.js} +5 -5
- package/dist/{workspace-Dov1_dCF.js → workspace-BwzunhL2.js} +49 -3
- package/dist/{workspace-CSGZ3DZ_.js → workspace-CVAkpBJa.js} +48 -2
- package/dist/{workspace-CSBTFAxh.js → workspace-D5-DoTNR.js} +48 -2
- package/dist/{workspace-dirs-Yo4RZm7s.js → workspace-dirs-CJDJUlno.js} +3 -3
- package/docs/superpowers/plans/2026-06-10-phase1-quick-wins.md +1260 -0
- package/docs/superpowers/specs/2026-06-10-recon-quick-wins-and-silent-agent-design.md +151 -0
- package/extensions/alert-watcher/index.js +47 -1
- package/extensions/bluebubbles/index.js +5 -1
- package/extensions/feishu/index.js +5 -1
- package/extensions/flows/index.js +52 -2
- package/extensions/gmail-calendar/index.js +47 -1
- package/extensions/googlechat/index.js +5 -1
- package/extensions/irc/index.js +5 -1
- package/extensions/llm-task/index.js +47 -1
- package/extensions/matrix/{credentials-B1q3x-N0.mjs → credentials-BtiLgiNR.mjs} +5 -1
- package/extensions/matrix/index.js +3 -3
- package/extensions/matrix/{matrix-B9amoffh.mjs → matrix-CWlUSNSh.mjs} +2 -2
- package/extensions/matrix/{resolve-targets-Dw7tv-7K.mjs → resolve-targets-ml4iU4Bd.mjs} +2 -2
- package/extensions/mattermost/index.js +5 -1
- package/extensions/nextcloud-talk/index.js +5 -1
- package/extensions/tlon/index.js +47 -1
- package/extensions/wati/index.js +5 -1
- package/extensions/weixin/index.js +5 -1
- package/extensions/zalo/index.js +5 -1
- package/extensions/zalouser/index.js +5 -1
- package/package.json +3 -2
- package/dist/config-guard-BfdkKYAa.js +0 -2
- package/dist/daemon-install-helpers-4gMthp-_.js +0 -2
- package/dist/daemon-install-helpers-BLXYJ3C5.js +0 -2
- package/dist/doctor-completion-DKJRw1m1.js +0 -2
- package/dist/doctor-completion-DMcJXsi0.js +0 -2
- package/dist/web-Dj8nR4rt.js +0 -2
|
@@ -47,6 +47,7 @@ import { Type as Type$1 } from "@sinclair/typebox";
|
|
|
47
47
|
import { spinner } from "@clack/prompts";
|
|
48
48
|
import { createOscProgressController, supportsOscProgress } from "osc-progress";
|
|
49
49
|
import MarkdownIt from "markdown-it";
|
|
50
|
+
import { Bash, InMemoryFs, MountableFs, ReadWriteFs } from "just-bash";
|
|
50
51
|
import fs$2 from "fs/promises";
|
|
51
52
|
import os$1 from "os";
|
|
52
53
|
import path$1 from "path";
|
|
@@ -67,7 +68,7 @@ var __exportAll = (all, no_symbols) => {
|
|
|
67
68
|
};
|
|
68
69
|
//#endregion
|
|
69
70
|
//#region src/shared/with-timeout.ts
|
|
70
|
-
function withTimeout$
|
|
71
|
+
function withTimeout$5(promise, timeoutMs) {
|
|
71
72
|
if (!timeoutMs || timeoutMs <= 0) return promise;
|
|
72
73
|
let timer = null;
|
|
73
74
|
const timeout = new Promise((_, reject) => {
|
|
@@ -86,7 +87,7 @@ async function probeLineBot(channelAccessToken, timeoutMs = 5e3) {
|
|
|
86
87
|
};
|
|
87
88
|
const client = new messagingApi.MessagingApiClient({ channelAccessToken: channelAccessToken.trim() });
|
|
88
89
|
try {
|
|
89
|
-
const profile = await withTimeout$
|
|
90
|
+
const profile = await withTimeout$5(client.getBotInfo(), timeoutMs);
|
|
90
91
|
return {
|
|
91
92
|
ok: true,
|
|
92
93
|
bot: {
|
|
@@ -413,7 +414,7 @@ function notifyMcpToolsChanged() {
|
|
|
413
414
|
}
|
|
414
415
|
}
|
|
415
416
|
var tools$1, sseSubscribers, EMPTY_OBJECT_SCHEMA;
|
|
416
|
-
var init_registry$
|
|
417
|
+
var init_registry$7 = __esmMin((() => {
|
|
417
418
|
tools$1 = /* @__PURE__ */ new Map();
|
|
418
419
|
sseSubscribers = /* @__PURE__ */ new Set();
|
|
419
420
|
EMPTY_OBJECT_SCHEMA = {
|
|
@@ -1346,7 +1347,7 @@ function createSubsystemLogger(subsystem) {
|
|
|
1346
1347
|
}
|
|
1347
1348
|
var SUBSYSTEM_COLORS, SUBSYSTEM_COLOR_OVERRIDES, SUBSYSTEM_PREFIXES_TO_DROP, SUBSYSTEM_MAX_SEGMENTS, CHANNEL_SUBSYSTEM_PREFIXES;
|
|
1348
1349
|
var init_subsystem = __esmMin((() => {
|
|
1349
|
-
init_registry$
|
|
1350
|
+
init_registry$5();
|
|
1350
1351
|
init_globals();
|
|
1351
1352
|
init_runtime$3();
|
|
1352
1353
|
init_progress_line();
|
|
@@ -2280,9 +2281,9 @@ function createPluginRegistry(registryParams) {
|
|
|
2280
2281
|
registerTypedHook
|
|
2281
2282
|
};
|
|
2282
2283
|
}
|
|
2283
|
-
var init_registry$
|
|
2284
|
+
var init_registry$6 = __esmMin((() => {
|
|
2284
2285
|
init_instant_commands();
|
|
2285
|
-
init_registry$
|
|
2286
|
+
init_registry$7();
|
|
2286
2287
|
init_internal_hooks();
|
|
2287
2288
|
init_utils$2();
|
|
2288
2289
|
init_channel_link_runtime();
|
|
@@ -2316,7 +2317,7 @@ function setActivePluginRuntime(runtime) {
|
|
|
2316
2317
|
}
|
|
2317
2318
|
var REGISTRY_STATE, CONFIG_STATE, RUNTIME_STATE, state$3, configState, runtimeState$1;
|
|
2318
2319
|
var init_runtime$2 = __esmMin((() => {
|
|
2319
|
-
init_registry$
|
|
2320
|
+
init_registry$6();
|
|
2320
2321
|
REGISTRY_STATE = Symbol.for("minion.pluginRegistryState");
|
|
2321
2322
|
CONFIG_STATE = Symbol.for("minion.pluginRegistryConfig");
|
|
2322
2323
|
RUNTIME_STATE = Symbol.for("minion.activePluginRuntime");
|
|
@@ -2363,7 +2364,7 @@ function normalizeAnyChannelId(raw) {
|
|
|
2363
2364
|
})?.plugin.id ?? null;
|
|
2364
2365
|
}
|
|
2365
2366
|
var CHAT_CHANNEL_ORDER, CHANNEL_IDS, CHAT_CHANNEL_META, CHAT_CHANNEL_ALIASES, normalizeChannelKey;
|
|
2366
|
-
var init_registry$
|
|
2367
|
+
var init_registry$5 = __esmMin((() => {
|
|
2367
2368
|
init_runtime$2();
|
|
2368
2369
|
CHAT_CHANNEL_ORDER = [
|
|
2369
2370
|
"telegram",
|
|
@@ -2536,7 +2537,7 @@ function isMarkdownCapableMessageChannel(raw) {
|
|
|
2536
2537
|
}
|
|
2537
2538
|
var INTERNAL_MESSAGE_CHANNEL, MARKDOWN_CAPABLE_CHANNELS, listPluginChannelIds, listDeliverableMessageChannels, listGatewayMessageChannels;
|
|
2538
2539
|
var init_message_channel = __esmMin((() => {
|
|
2539
|
-
init_registry$
|
|
2540
|
+
init_registry$5();
|
|
2540
2541
|
init_client_info();
|
|
2541
2542
|
init_runtime$2();
|
|
2542
2543
|
INTERNAL_MESSAGE_CHANNEL = "webchat";
|
|
@@ -4260,7 +4261,7 @@ function resolveDefaultAgentBoundAccountId(cfg, channelId) {
|
|
|
4260
4261
|
}
|
|
4261
4262
|
var init_bindings = __esmMin((() => {
|
|
4262
4263
|
init_agent_scope();
|
|
4263
|
-
init_registry$
|
|
4264
|
+
init_registry$5();
|
|
4264
4265
|
init_session_key$1();
|
|
4265
4266
|
}));
|
|
4266
4267
|
//#endregion
|
|
@@ -5106,7 +5107,7 @@ var init_dock = __esmMin((() => {
|
|
|
5106
5107
|
init_utils$2();
|
|
5107
5108
|
init_group_mentions();
|
|
5108
5109
|
init_signal$1();
|
|
5109
|
-
init_registry$
|
|
5110
|
+
init_registry$5();
|
|
5110
5111
|
formatLower = (allowFrom) => allowFrom.map((entry) => String(entry).trim()).filter(Boolean).map((entry) => entry.toLowerCase());
|
|
5111
5112
|
formatDiscordAllowFrom = (allowFrom) => allowFrom.map((entry) => String(entry).trim().replace(/^<@!?/, "").replace(/>$/, "").replace(/^discord:/i, "").replace(/^user:/i, "").replace(/^pk:/i, "").trim().toLowerCase()).filter(Boolean);
|
|
5112
5113
|
DOCKS = {
|
|
@@ -5531,7 +5532,7 @@ function normalizeChannelId(raw) {
|
|
|
5531
5532
|
}
|
|
5532
5533
|
var init_plugins = __esmMin((() => {
|
|
5533
5534
|
init_runtime$2();
|
|
5534
|
-
init_registry$
|
|
5535
|
+
init_registry$5();
|
|
5535
5536
|
init_directory_config();
|
|
5536
5537
|
}));
|
|
5537
5538
|
//#endregion
|
|
@@ -6427,6 +6428,7 @@ var init_zod_schema_agent_runtime = __esmMin((() => {
|
|
|
6427
6428
|
]).optional(),
|
|
6428
6429
|
perSession: z.boolean().optional(),
|
|
6429
6430
|
workspaceRoot: z.string().optional(),
|
|
6431
|
+
tier0: z.object({ enabled: z.boolean().optional() }).strict().optional(),
|
|
6430
6432
|
docker: SandboxDockerSchema,
|
|
6431
6433
|
browser: SandboxBrowserSchema,
|
|
6432
6434
|
prune: SandboxPruneSchema
|
|
@@ -6628,7 +6630,8 @@ var init_zod_schema_agent_runtime = __esmMin((() => {
|
|
|
6628
6630
|
exec: ToolExecSchema,
|
|
6629
6631
|
fs: ToolFsSchema,
|
|
6630
6632
|
subagents: z.object({ tools: ToolPolicySchema }).strict().optional(),
|
|
6631
|
-
sandbox: z.object({ tools: ToolPolicySchema }).strict().optional()
|
|
6633
|
+
sandbox: z.object({ tools: ToolPolicySchema }).strict().optional(),
|
|
6634
|
+
outputReduce: z.object({ enabled: z.boolean().optional() }).strict().optional()
|
|
6632
6635
|
}).strict().superRefine((value, ctx) => {
|
|
6633
6636
|
addAllowAlsoAllowConflictIssue(value, ctx, "tools cannot set both allow and alsoAllow in the same scope (merge alsoAllow into allow, or remove allow and use profile + alsoAllow)");
|
|
6634
6637
|
}).optional();
|
|
@@ -7124,7 +7127,7 @@ var init_shell_env = __esmMin((() => {
|
|
|
7124
7127
|
//#region src/version.ts
|
|
7125
7128
|
var VERSION;
|
|
7126
7129
|
var init_version$1 = __esmMin((() => {
|
|
7127
|
-
VERSION = "2026.6.
|
|
7130
|
+
VERSION = "2026.6.16-dev";
|
|
7128
7131
|
}));
|
|
7129
7132
|
//#endregion
|
|
7130
7133
|
//#region src/config/agent-dirs.ts
|
|
@@ -16847,6 +16850,7 @@ var init_zod_schema = __esmMin((() => {
|
|
|
16847
16850
|
importContacts: z.boolean().optional()
|
|
16848
16851
|
}).strict().optional(),
|
|
16849
16852
|
memorySync: z.object({ enabled: z.boolean().optional() }).strict().optional(),
|
|
16853
|
+
trajectory: z.object({ enabled: z.boolean().optional() }).strict().optional(),
|
|
16850
16854
|
personalAgentObservations: z.object({
|
|
16851
16855
|
enabled: z.boolean().optional(),
|
|
16852
16856
|
dbPath: z.string().optional()
|
|
@@ -16959,6 +16963,7 @@ var init_zod_schema = __esmMin((() => {
|
|
|
16959
16963
|
memory: MemorySchema,
|
|
16960
16964
|
skills: z.object({
|
|
16961
16965
|
allowBundled: z.array(z.string()).optional(),
|
|
16966
|
+
progressiveDisclosure: z.boolean().optional(),
|
|
16962
16967
|
load: z.object({
|
|
16963
16968
|
extraDirs: z.array(z.string()).optional(),
|
|
16964
16969
|
watch: z.boolean().optional(),
|
|
@@ -17334,7 +17339,7 @@ function validateConfigObjectWithPluginsBase(raw, opts) {
|
|
|
17334
17339
|
var AVATAR_SCHEME_RE, AVATAR_DATA_RE, AVATAR_HTTP_RE, WINDOWS_ABS_RE;
|
|
17335
17340
|
var init_validation = __esmMin((() => {
|
|
17336
17341
|
init_agent_scope();
|
|
17337
|
-
init_registry$
|
|
17342
|
+
init_registry$5();
|
|
17338
17343
|
init_config_state();
|
|
17339
17344
|
init_manifest_registry();
|
|
17340
17345
|
init_schema_validator();
|
|
@@ -22919,6 +22924,24 @@ var init_bundled_dir = __esmMin((() => {
|
|
|
22919
22924
|
init_minion_root();
|
|
22920
22925
|
}));
|
|
22921
22926
|
//#endregion
|
|
22927
|
+
//#region src/agents/skills/compact-prompt.ts
|
|
22928
|
+
/**
|
|
22929
|
+
* Render a compact, name+description-only skills listing for progressive
|
|
22930
|
+
* disclosure. The full SKILL.md body is deliberately omitted; the agent is
|
|
22931
|
+
* instructed to load it on demand via the `skill_view` tool. This keeps the
|
|
22932
|
+
* system prompt small when many skills are available.
|
|
22933
|
+
*/
|
|
22934
|
+
function formatSkillsCompact(skills) {
|
|
22935
|
+
if (skills.length === 0) return "";
|
|
22936
|
+
return [
|
|
22937
|
+
"<available_skills>",
|
|
22938
|
+
...skills.map((s) => `- **${s.name}** — ${s.description.trim()}`),
|
|
22939
|
+
"</available_skills>",
|
|
22940
|
+
"Call the `skill_view` tool with a skill name to load its full instructions before using it."
|
|
22941
|
+
].join("\n");
|
|
22942
|
+
}
|
|
22943
|
+
var init_compact_prompt = __esmMin((() => {}));
|
|
22944
|
+
//#endregion
|
|
22922
22945
|
//#region src/shared/config-eval.ts
|
|
22923
22946
|
function isTruthyValue(value) {
|
|
22924
22947
|
if (value === void 0 || value === null) return false;
|
|
@@ -23669,6 +23692,35 @@ function applySkillsPromptLimits(params) {
|
|
|
23669
23692
|
truncatedReason
|
|
23670
23693
|
};
|
|
23671
23694
|
}
|
|
23695
|
+
/**
|
|
23696
|
+
* Resolve whether progressive disclosure is enabled. Default is ON; only an
|
|
23697
|
+
* explicit `false` disables it (inlining full skill bodies in the prompt).
|
|
23698
|
+
*/
|
|
23699
|
+
function resolveProgressiveDisclosure(config, override) {
|
|
23700
|
+
if (override !== void 0) return override;
|
|
23701
|
+
return config?.skills?.progressiveDisclosure !== false;
|
|
23702
|
+
}
|
|
23703
|
+
/**
|
|
23704
|
+
* Map prompt-eligible skill entries to compact `{ name, description, body }`
|
|
23705
|
+
* records. The body is the full SKILL.md text, read from disk on demand; if the
|
|
23706
|
+
* file can't be read we fall back to an empty body (compact mode omits bodies
|
|
23707
|
+
* from the prompt anyway, so this only affects callers that inspect `body`).
|
|
23708
|
+
*/
|
|
23709
|
+
function toCompactSkills(skills) {
|
|
23710
|
+
return skills.map((skill) => {
|
|
23711
|
+
let body = "";
|
|
23712
|
+
try {
|
|
23713
|
+
body = fs.readFileSync(skill.filePath, "utf-8");
|
|
23714
|
+
} catch {
|
|
23715
|
+
body = "";
|
|
23716
|
+
}
|
|
23717
|
+
return {
|
|
23718
|
+
name: skill.name,
|
|
23719
|
+
description: skill.description ?? "",
|
|
23720
|
+
body
|
|
23721
|
+
};
|
|
23722
|
+
});
|
|
23723
|
+
}
|
|
23672
23724
|
function buildWorkspaceSkillSnapshot(workspaceDir, opts) {
|
|
23673
23725
|
const eligible = filterSkillEntries(opts?.entries ?? loadSkillEntries(workspaceDir, opts), opts?.config, opts?.skillFilter, opts?.eligibility, opts?.denyFilter);
|
|
23674
23726
|
const resolvedSkills = eligible.filter((entry) => entry.invocation?.disableModelInvocation !== true).map((entry) => entry.skill);
|
|
@@ -23680,7 +23732,7 @@ function buildWorkspaceSkillSnapshot(workspaceDir, opts) {
|
|
|
23680
23732
|
const prompt = [
|
|
23681
23733
|
remoteNote,
|
|
23682
23734
|
truncated ? `⚠️ Skills truncated: included ${skillsForPrompt.length} of ${resolvedSkills.length}. Run \`openclaw skills check\` to audit.` : "",
|
|
23683
|
-
formatSkillsForPrompt(compactSkillPaths(skillsForPrompt))
|
|
23735
|
+
resolveProgressiveDisclosure(opts?.config, opts?.progressive) ? formatSkillsCompact(toCompactSkills(skillsForPrompt)) : formatSkillsForPrompt(compactSkillPaths(skillsForPrompt))
|
|
23684
23736
|
].filter(Boolean).join("\n");
|
|
23685
23737
|
const skillFilter = normalizeSkillFilter(opts?.skillFilter);
|
|
23686
23738
|
const denyFilter = normalizeSkillFilter(opts?.denyFilter);
|
|
@@ -23707,7 +23759,7 @@ function buildWorkspaceSkillsPrompt(workspaceDir, opts) {
|
|
|
23707
23759
|
return [
|
|
23708
23760
|
remoteNote,
|
|
23709
23761
|
truncated ? `⚠️ Skills truncated: included ${skillsForPrompt.length} of ${resolvedSkills.length}. Run \`openclaw skills check\` to audit.` : "",
|
|
23710
|
-
formatSkillsForPrompt(compactSkillPaths(skillsForPrompt))
|
|
23762
|
+
resolveProgressiveDisclosure(opts?.config, opts?.progressive) ? formatSkillsCompact(toCompactSkills(skillsForPrompt)) : formatSkillsForPrompt(compactSkillPaths(skillsForPrompt))
|
|
23711
23763
|
].filter(Boolean).join("\n");
|
|
23712
23764
|
}
|
|
23713
23765
|
function resolveSkillsPromptForRun(params) {
|
|
@@ -23860,6 +23912,7 @@ var init_workspace$1 = __esmMin((() => {
|
|
|
23860
23912
|
init_utils$2();
|
|
23861
23913
|
init_sandbox_paths();
|
|
23862
23914
|
init_bundled_dir();
|
|
23915
|
+
init_compact_prompt();
|
|
23863
23916
|
init_config$3();
|
|
23864
23917
|
init_filter();
|
|
23865
23918
|
init_frontmatter();
|
|
@@ -28032,7 +28085,7 @@ var init_parse$2 = __esmMin((() => {
|
|
|
28032
28085
|
ERROR_PAYLOAD_PREFIX_RE = /^(?:error|api\s*error|apierror|openai\s*error|anthropic\s*error|gateway\s*error)[:\s-]+/i;
|
|
28033
28086
|
})), DEFAULT_SANDBOX_WORKSPACE_ROOT, DEFAULT_SANDBOX_IMAGE, DEFAULT_TOOL_ALLOW, DEFAULT_TOOL_DENY, SANDBOX_AGENT_WORKSPACE_MOUNT, SANDBOX_STATE_DIR, SANDBOX_REGISTRY_PATH, SANDBOX_BROWSER_REGISTRY_PATH;
|
|
28034
28087
|
var init_constants$2 = __esmMin((() => {
|
|
28035
|
-
init_registry$
|
|
28088
|
+
init_registry$5();
|
|
28036
28089
|
init_config$4();
|
|
28037
28090
|
DEFAULT_SANDBOX_WORKSPACE_ROOT = path.join(STATE_DIR, "sandboxes");
|
|
28038
28091
|
DEFAULT_SANDBOX_IMAGE = "minion-sandbox:bookworm-slim";
|
|
@@ -28537,6 +28590,7 @@ function resolveSandboxConfigForAgent(cfg, agentId) {
|
|
|
28537
28590
|
scope,
|
|
28538
28591
|
workspaceAccess: agentSandbox?.workspaceAccess ?? agent?.workspaceAccess ?? "none",
|
|
28539
28592
|
workspaceRoot: agentSandbox?.workspaceRoot ?? agent?.workspaceRoot ?? DEFAULT_SANDBOX_WORKSPACE_ROOT,
|
|
28593
|
+
tier0: { enabled: agentSandbox?.tier0?.enabled ?? agent?.tier0?.enabled ?? false },
|
|
28540
28594
|
docker: resolveSandboxDockerConfig({
|
|
28541
28595
|
scope,
|
|
28542
28596
|
globalDocker: agent?.docker,
|
|
@@ -36508,7 +36562,7 @@ async function removeBrowserRegistryEntry(containerName) {
|
|
|
36508
36562
|
return next;
|
|
36509
36563
|
});
|
|
36510
36564
|
}
|
|
36511
|
-
var init_registry$
|
|
36565
|
+
var init_registry$4 = __esmMin((() => {
|
|
36512
36566
|
init_session_write_lock();
|
|
36513
36567
|
init_constants$2();
|
|
36514
36568
|
}));
|
|
@@ -36969,7 +37023,7 @@ var init_docker = __esmMin((() => {
|
|
|
36969
37023
|
init_runtime$3();
|
|
36970
37024
|
init_config_hash();
|
|
36971
37025
|
init_constants$2();
|
|
36972
|
-
init_registry$
|
|
37026
|
+
init_registry$4();
|
|
36973
37027
|
init_shared$1();
|
|
36974
37028
|
init_validate_sandbox_security();
|
|
36975
37029
|
log$44 = createSubsystemLogger("sandbox/docker");
|
|
@@ -37195,7 +37249,7 @@ var init_browser = __esmMin((() => {
|
|
|
37195
37249
|
init_config$2();
|
|
37196
37250
|
init_constants$2();
|
|
37197
37251
|
init_docker();
|
|
37198
|
-
init_registry$
|
|
37252
|
+
init_registry$4();
|
|
37199
37253
|
init_shared$1();
|
|
37200
37254
|
init_tool_policy();
|
|
37201
37255
|
HOT_BROWSER_WINDOW_MS = 300 * 1e3;
|
|
@@ -37561,7 +37615,7 @@ var init_prune = __esmMin((() => {
|
|
|
37561
37615
|
init_runtime$3();
|
|
37562
37616
|
init_browser_bridges();
|
|
37563
37617
|
init_docker();
|
|
37564
|
-
init_registry$
|
|
37618
|
+
init_registry$4();
|
|
37565
37619
|
lastPruneAtMs = 0;
|
|
37566
37620
|
}));
|
|
37567
37621
|
//#endregion
|
|
@@ -37867,7 +37921,7 @@ var init_manage = __esmMin((() => {
|
|
|
37867
37921
|
init_config$4();
|
|
37868
37922
|
init_config$2();
|
|
37869
37923
|
init_docker();
|
|
37870
|
-
init_registry$
|
|
37924
|
+
init_registry$4();
|
|
37871
37925
|
init_shared$1();
|
|
37872
37926
|
}));
|
|
37873
37927
|
//#endregion
|
|
@@ -42694,7 +42748,7 @@ function resolveCommandAuthorization(params) {
|
|
|
42694
42748
|
}
|
|
42695
42749
|
var init_command_auth = __esmMin((() => {
|
|
42696
42750
|
init_dock();
|
|
42697
|
-
init_registry$
|
|
42751
|
+
init_registry$5();
|
|
42698
42752
|
init_message_channel();
|
|
42699
42753
|
}));
|
|
42700
42754
|
//#endregion
|
|
@@ -44997,7 +45051,7 @@ var loggedListActionErrors;
|
|
|
44997
45051
|
var init_channel_tools = __esmMin((() => {
|
|
44998
45052
|
init_dock();
|
|
44999
45053
|
init_plugins();
|
|
45000
|
-
init_registry$
|
|
45054
|
+
init_registry$5();
|
|
45001
45055
|
init_runtime$3();
|
|
45002
45056
|
loggedListActionErrors = /* @__PURE__ */ new Set();
|
|
45003
45057
|
}));
|
|
@@ -61418,7 +61472,7 @@ function loadOpenClawPlugins(options = {}) {
|
|
|
61418
61472
|
}
|
|
61419
61473
|
var registryCache, defaultLogger, resolvePluginSdkAliasFile, resolvePluginSdkAlias;
|
|
61420
61474
|
var init_loader = __esmMin((() => {
|
|
61421
|
-
init_registry$
|
|
61475
|
+
init_registry$7();
|
|
61422
61476
|
init_subsystem();
|
|
61423
61477
|
init_utils$2();
|
|
61424
61478
|
init_version$1();
|
|
@@ -61429,7 +61483,7 @@ var init_loader = __esmMin((() => {
|
|
|
61429
61483
|
init_config_state();
|
|
61430
61484
|
init_discovery();
|
|
61431
61485
|
init_manifest_registry();
|
|
61432
|
-
init_registry$
|
|
61486
|
+
init_registry$6();
|
|
61433
61487
|
init_runtime$2();
|
|
61434
61488
|
init_runtime$1();
|
|
61435
61489
|
init_schema_validator();
|
|
@@ -62902,6 +62956,198 @@ var init_landlock = __esmMin((() => {
|
|
|
62902
62956
|
_caps = null;
|
|
62903
62957
|
}));
|
|
62904
62958
|
//#endregion
|
|
62959
|
+
//#region src/agents/sandbox/tier0/router.ts
|
|
62960
|
+
function shouldTryTier0(command) {
|
|
62961
|
+
const cmd = command.trim();
|
|
62962
|
+
if (!cmd) return false;
|
|
62963
|
+
for (const re of ESCALATE_PATTERNS) if (re.test(cmd)) return false;
|
|
62964
|
+
return true;
|
|
62965
|
+
}
|
|
62966
|
+
/**
|
|
62967
|
+
* Distinguish "just-bash can't do this" from "the user's command legitimately
|
|
62968
|
+
* failed". Known limitations in just-bash@3.0.1 include `$(( ))` arithmetic
|
|
62969
|
+
* expansion (trips its own defense-in-depth `node:module` guard) and any
|
|
62970
|
+
* unimplemented builtin. These must escalate to Docker, not surface as failures.
|
|
62971
|
+
*/
|
|
62972
|
+
function isInterpreterLimitation(stderr) {
|
|
62973
|
+
if (!stderr) return false;
|
|
62974
|
+
return /security violation/i.test(stderr) || /indicates a bug in just-bash/i.test(stderr) || /\bcommand not found\b/i.test(stderr) || /not (yet )?(supported|implemented)/i.test(stderr) || /unknown command/i.test(stderr);
|
|
62975
|
+
}
|
|
62976
|
+
var ESCALATE_PATTERNS;
|
|
62977
|
+
var init_router = __esmMin((() => {
|
|
62978
|
+
ESCALATE_PATTERNS = [
|
|
62979
|
+
/\b(curl|wget|nc|ncat|netcat|ssh|scp|sftp|rsync|ping|dig|nslookup|host)\b/,
|
|
62980
|
+
/\b(python3?|pip3?|node|npm|pnpm|yarn|bun|deno|ruby|perl|php|cargo|rustc|go|gcc|g\+\+|cc|clang|make|cmake|java|javac|dotnet)\b/,
|
|
62981
|
+
/\b(apt|apt-get|dpkg|yum|dnf|apk|brew|sudo|su|systemctl|service|mount|umount|chroot|insmod|modprobe|iptables)\b/,
|
|
62982
|
+
/\b(docker|kubectl|helm|git|gh|aws|gcloud|az|terraform|ffmpeg|convert|magick|pandoc)\b/,
|
|
62983
|
+
/(^|\s|=)\/(dev|proc|sys)\//,
|
|
62984
|
+
/<\(|>\(/
|
|
62985
|
+
];
|
|
62986
|
+
}));
|
|
62987
|
+
//#endregion
|
|
62988
|
+
//#region src/agents/sandbox/tier0/virtual-sandbox.ts
|
|
62989
|
+
/**
|
|
62990
|
+
* Tier-0 virtual sandbox — an in-process bash backend powered by just-bash.
|
|
62991
|
+
*
|
|
62992
|
+
* This is the cheap/fast tier in front of the Docker sandbox. For the high-volume
|
|
62993
|
+
* "safe" majority of agent shell calls (string munging, fs reads/writes in the
|
|
62994
|
+
* workspace, grep/sed/jq-style pipelines) it runs the command in-process against
|
|
62995
|
+
* an in-memory shell with the real workspace dir mounted — no container spawn.
|
|
62996
|
+
*
|
|
62997
|
+
* Correctness: the agent's real workspace dir is mounted (read-write, symlink-
|
|
62998
|
+
* blocked, root-jailed via just-bash's ReadWriteFs) at the container workdir, so
|
|
62999
|
+
* file visibility is identical to the Docker path. `/tmp` etc. live on an
|
|
63000
|
+
* InMemoryFs base. Network and python are OFF by default (just-bash defaults).
|
|
63001
|
+
*
|
|
63002
|
+
* Anything just-bash can't serve (an unimplemented builtin, an internal error)
|
|
63003
|
+
* sets `unsupported: true`; callers MUST escalate those to the Docker backend.
|
|
63004
|
+
* See ./router.ts for the routing + interpreter-limitation heuristics.
|
|
63005
|
+
*/
|
|
63006
|
+
function withTimeout$4(p, ms) {
|
|
63007
|
+
if (!ms) return p;
|
|
63008
|
+
return new Promise((resolve, reject) => {
|
|
63009
|
+
const timer = setTimeout(() => reject(new TimeoutError()), ms);
|
|
63010
|
+
p.then((value) => {
|
|
63011
|
+
clearTimeout(timer);
|
|
63012
|
+
resolve(value);
|
|
63013
|
+
}, (error) => {
|
|
63014
|
+
clearTimeout(timer);
|
|
63015
|
+
reject(error);
|
|
63016
|
+
});
|
|
63017
|
+
});
|
|
63018
|
+
}
|
|
63019
|
+
var Tier0VirtualSandbox, TimeoutError;
|
|
63020
|
+
var init_virtual_sandbox = __esmMin((() => {
|
|
63021
|
+
init_router();
|
|
63022
|
+
Tier0VirtualSandbox = class {
|
|
63023
|
+
constructor() {
|
|
63024
|
+
this.instances = /* @__PURE__ */ new Map();
|
|
63025
|
+
}
|
|
63026
|
+
getInstance(req) {
|
|
63027
|
+
const existing = this.instances.get(req.scopeKey);
|
|
63028
|
+
if (existing && existing.workspaceHostDir === req.workspaceHostDir && existing.workdir === req.workdir) {
|
|
63029
|
+
existing.lastUsed = Date.now();
|
|
63030
|
+
return existing.bash;
|
|
63031
|
+
}
|
|
63032
|
+
const fs = new MountableFs({ base: new InMemoryFs() });
|
|
63033
|
+
fs.mount(req.workdir, new ReadWriteFs({ root: req.workspaceHostDir }));
|
|
63034
|
+
const bash = new Bash({
|
|
63035
|
+
fs,
|
|
63036
|
+
cwd: req.workdir,
|
|
63037
|
+
env: {
|
|
63038
|
+
LANG: "C.UTF-8",
|
|
63039
|
+
...req.env
|
|
63040
|
+
},
|
|
63041
|
+
executionLimits: {
|
|
63042
|
+
maxCommandCount: 1e4,
|
|
63043
|
+
maxLoopIterations: 1e6
|
|
63044
|
+
}
|
|
63045
|
+
});
|
|
63046
|
+
const inst = {
|
|
63047
|
+
bash,
|
|
63048
|
+
workspaceHostDir: req.workspaceHostDir,
|
|
63049
|
+
workdir: req.workdir,
|
|
63050
|
+
lastUsed: Date.now()
|
|
63051
|
+
};
|
|
63052
|
+
this.instances.set(req.scopeKey, inst);
|
|
63053
|
+
return bash;
|
|
63054
|
+
}
|
|
63055
|
+
async exec(req) {
|
|
63056
|
+
const startedAt = Date.now();
|
|
63057
|
+
let bash;
|
|
63058
|
+
try {
|
|
63059
|
+
bash = this.getInstance(req);
|
|
63060
|
+
} catch {
|
|
63061
|
+
return {
|
|
63062
|
+
status: "failed",
|
|
63063
|
+
exitCode: null,
|
|
63064
|
+
durationMs: Date.now() - startedAt,
|
|
63065
|
+
aggregated: "",
|
|
63066
|
+
timedOut: false,
|
|
63067
|
+
unsupported: true
|
|
63068
|
+
};
|
|
63069
|
+
}
|
|
63070
|
+
try {
|
|
63071
|
+
const result = await withTimeout$4(bash.exec(req.command, {
|
|
63072
|
+
cwd: req.workdir,
|
|
63073
|
+
env: req.env
|
|
63074
|
+
}), req.timeoutSec ? req.timeoutSec * 1e3 : void 0);
|
|
63075
|
+
const durationMs = Date.now() - startedAt;
|
|
63076
|
+
const combined = [result.stdout, result.stderr].filter(Boolean).join("").trim();
|
|
63077
|
+
if (result.exitCode === 0) return {
|
|
63078
|
+
status: "completed",
|
|
63079
|
+
exitCode: 0,
|
|
63080
|
+
durationMs,
|
|
63081
|
+
aggregated: combined,
|
|
63082
|
+
timedOut: false,
|
|
63083
|
+
unsupported: false
|
|
63084
|
+
};
|
|
63085
|
+
return {
|
|
63086
|
+
status: "failed",
|
|
63087
|
+
exitCode: result.exitCode,
|
|
63088
|
+
durationMs,
|
|
63089
|
+
aggregated: combined,
|
|
63090
|
+
timedOut: false,
|
|
63091
|
+
unsupported: isInterpreterLimitation(result.stderr)
|
|
63092
|
+
};
|
|
63093
|
+
} catch (err) {
|
|
63094
|
+
const timedOut = err instanceof TimeoutError;
|
|
63095
|
+
return {
|
|
63096
|
+
status: "failed",
|
|
63097
|
+
exitCode: null,
|
|
63098
|
+
durationMs: Date.now() - startedAt,
|
|
63099
|
+
aggregated: "",
|
|
63100
|
+
timedOut,
|
|
63101
|
+
unsupported: !timedOut
|
|
63102
|
+
};
|
|
63103
|
+
}
|
|
63104
|
+
}
|
|
63105
|
+
dispose(scopeKey) {
|
|
63106
|
+
if (scopeKey) this.instances.delete(scopeKey);
|
|
63107
|
+
else this.instances.clear();
|
|
63108
|
+
}
|
|
63109
|
+
/** test/inspection helper */
|
|
63110
|
+
get liveInstances() {
|
|
63111
|
+
return this.instances.size;
|
|
63112
|
+
}
|
|
63113
|
+
};
|
|
63114
|
+
TimeoutError = class extends Error {};
|
|
63115
|
+
}));
|
|
63116
|
+
//#endregion
|
|
63117
|
+
//#region src/agents/sandbox/tier0/registry.ts
|
|
63118
|
+
function getTier0Sandbox() {
|
|
63119
|
+
if (!singleton$1) singleton$1 = new Tier0VirtualSandbox();
|
|
63120
|
+
return singleton$1;
|
|
63121
|
+
}
|
|
63122
|
+
/**
|
|
63123
|
+
* Resolve the tier-0 binding for an exec, or undefined to use the Docker/host
|
|
63124
|
+
* path. `workspaceHostDir` is the real sandbox workspace dir (mounted into the
|
|
63125
|
+
* Docker container too), so tier-0 sees the same files.
|
|
63126
|
+
*/
|
|
63127
|
+
function resolveTier0Binding(params) {
|
|
63128
|
+
if (!params.workspaceHostDir) return;
|
|
63129
|
+
const sandboxCfg = resolveSandboxConfigForAgent(params.config ?? loadConfig(), params.agentId);
|
|
63130
|
+
if (!sandboxCfg.tier0.enabled) return;
|
|
63131
|
+
if (sandboxCfg.workspaceAccess === "ro") return;
|
|
63132
|
+
return {
|
|
63133
|
+
backend: getTier0Sandbox(),
|
|
63134
|
+
workspaceHostDir: params.workspaceHostDir
|
|
63135
|
+
};
|
|
63136
|
+
}
|
|
63137
|
+
var singleton$1;
|
|
63138
|
+
var init_registry$3 = __esmMin((() => {
|
|
63139
|
+
init_config$4();
|
|
63140
|
+
init_config$2();
|
|
63141
|
+
init_virtual_sandbox();
|
|
63142
|
+
}));
|
|
63143
|
+
//#endregion
|
|
63144
|
+
//#region src/agents/sandbox/tier0/index.ts
|
|
63145
|
+
var init_tier0 = __esmMin((() => {
|
|
63146
|
+
init_router();
|
|
63147
|
+
init_registry$3();
|
|
63148
|
+
init_virtual_sandbox();
|
|
63149
|
+
}));
|
|
63150
|
+
//#endregion
|
|
62905
63151
|
//#region src/agents/tools/automation/gateway.ts
|
|
62906
63152
|
function readGatewayCallOptions(params) {
|
|
62907
63153
|
return {
|
|
@@ -64584,10 +64830,112 @@ function emitExecSystemEvent(text, opts) {
|
|
|
64584
64830
|
});
|
|
64585
64831
|
requestHeartbeatNow({ reason: "exec-event" });
|
|
64586
64832
|
}
|
|
64833
|
+
/**
|
|
64834
|
+
* Tier-0 fast path: run `execCommand` in the in-process virtual sandbox. Returns
|
|
64835
|
+
* a completed ExecProcessHandle on success, or null when just-bash can't serve
|
|
64836
|
+
* the command (so the caller escalates to Docker). Output is sanitized and a
|
|
64837
|
+
* ProcessSession is registered exactly like the normal path, so downstream
|
|
64838
|
+
* session listing / tailing is unaffected.
|
|
64839
|
+
*/
|
|
64840
|
+
async function tryTier0Exec(args) {
|
|
64841
|
+
const { opts, sessionId, startedAt, execCommand } = args;
|
|
64842
|
+
const tier0 = opts.tier0;
|
|
64843
|
+
const sandbox = opts.sandbox;
|
|
64844
|
+
if (!tier0 || !sandbox) return null;
|
|
64845
|
+
const workdir = opts.containerWorkdir ?? sandbox.containerWorkdir;
|
|
64846
|
+
let outcome;
|
|
64847
|
+
try {
|
|
64848
|
+
outcome = await tier0.backend.exec({
|
|
64849
|
+
command: execCommand,
|
|
64850
|
+
workdir,
|
|
64851
|
+
workspaceHostDir: tier0.workspaceHostDir,
|
|
64852
|
+
env: opts.env,
|
|
64853
|
+
scopeKey: sandbox.containerName,
|
|
64854
|
+
timeoutSec: opts.timeoutSec
|
|
64855
|
+
});
|
|
64856
|
+
} catch {
|
|
64857
|
+
return null;
|
|
64858
|
+
}
|
|
64859
|
+
if (outcome.unsupported) return null;
|
|
64860
|
+
const session = {
|
|
64861
|
+
id: sessionId,
|
|
64862
|
+
command: opts.command,
|
|
64863
|
+
scopeKey: opts.scopeKey,
|
|
64864
|
+
sessionKey: opts.sessionKey,
|
|
64865
|
+
notifyOnExit: opts.notifyOnExit,
|
|
64866
|
+
notifyOnExitEmptySuccess: opts.notifyOnExitEmptySuccess === true,
|
|
64867
|
+
exitNotified: false,
|
|
64868
|
+
child: void 0,
|
|
64869
|
+
stdin: void 0,
|
|
64870
|
+
pid: void 0,
|
|
64871
|
+
startedAt,
|
|
64872
|
+
cwd: opts.workdir,
|
|
64873
|
+
maxOutputChars: opts.maxOutput,
|
|
64874
|
+
pendingMaxOutputChars: opts.pendingMaxOutput,
|
|
64875
|
+
totalOutputChars: 0,
|
|
64876
|
+
pendingStdout: [],
|
|
64877
|
+
pendingStderr: [],
|
|
64878
|
+
pendingStdoutChars: 0,
|
|
64879
|
+
pendingStderrChars: 0,
|
|
64880
|
+
aggregated: "",
|
|
64881
|
+
tail: "",
|
|
64882
|
+
exited: false,
|
|
64883
|
+
exitCode: void 0,
|
|
64884
|
+
exitSignal: void 0,
|
|
64885
|
+
truncated: false,
|
|
64886
|
+
backgrounded: false
|
|
64887
|
+
};
|
|
64888
|
+
addSession(session);
|
|
64889
|
+
const sanitized = stripAnsi(sanitizeBinaryOutput(outcome.aggregated));
|
|
64890
|
+
for (const chunk of chunkString(sanitized)) appendOutput(session, "stdout", chunk);
|
|
64891
|
+
const status = outcome.status === "completed" ? "completed" : "failed";
|
|
64892
|
+
markExited(session, outcome.exitCode ?? 0, null, status);
|
|
64893
|
+
const durationMs = Date.now() - startedAt;
|
|
64894
|
+
const aggregated = session.aggregated.trim();
|
|
64895
|
+
let result;
|
|
64896
|
+
if (status === "completed") {
|
|
64897
|
+
const exitCode = outcome.exitCode ?? 0;
|
|
64898
|
+
result = {
|
|
64899
|
+
status: "completed",
|
|
64900
|
+
exitCode,
|
|
64901
|
+
exitSignal: null,
|
|
64902
|
+
durationMs,
|
|
64903
|
+
aggregated: aggregated + (exitCode !== 0 ? `\n\n(Command exited with code ${exitCode})` : ""),
|
|
64904
|
+
timedOut: false
|
|
64905
|
+
};
|
|
64906
|
+
} else {
|
|
64907
|
+
const reason = outcome.timedOut ? `Command timed out after ${opts.timeoutSec} seconds` : `Command exited with code ${outcome.exitCode ?? 1}`;
|
|
64908
|
+
result = {
|
|
64909
|
+
status: "failed",
|
|
64910
|
+
exitCode: outcome.exitCode,
|
|
64911
|
+
exitSignal: null,
|
|
64912
|
+
durationMs,
|
|
64913
|
+
aggregated,
|
|
64914
|
+
timedOut: outcome.timedOut,
|
|
64915
|
+
reason: aggregated ? `${aggregated}\n\n${reason}` : reason
|
|
64916
|
+
};
|
|
64917
|
+
}
|
|
64918
|
+
return {
|
|
64919
|
+
session,
|
|
64920
|
+
startedAt,
|
|
64921
|
+
pid: void 0,
|
|
64922
|
+
promise: Promise.resolve(result),
|
|
64923
|
+
kill: () => {}
|
|
64924
|
+
};
|
|
64925
|
+
}
|
|
64587
64926
|
async function runExecProcess(opts) {
|
|
64588
64927
|
const startedAt = Date.now();
|
|
64589
64928
|
const sessionId = createSessionSlug();
|
|
64590
64929
|
const execCommand = opts.execCommand ?? opts.command;
|
|
64930
|
+
if (opts.tier0 && opts.sandbox && !opts.usePty && shouldTryTier0(execCommand)) {
|
|
64931
|
+
const tier0Handle = await tryTier0Exec({
|
|
64932
|
+
opts,
|
|
64933
|
+
sessionId,
|
|
64934
|
+
startedAt,
|
|
64935
|
+
execCommand
|
|
64936
|
+
});
|
|
64937
|
+
if (tier0Handle) return tier0Handle;
|
|
64938
|
+
}
|
|
64591
64939
|
const supervisor = getProcessSupervisor();
|
|
64592
64940
|
const session = {
|
|
64593
64941
|
id: sessionId,
|
|
@@ -64818,6 +65166,7 @@ var init_bash_tools_exec_runtime = __esmMin((() => {
|
|
|
64818
65166
|
init_supervisor();
|
|
64819
65167
|
init_pty_dsr();
|
|
64820
65168
|
init_shell_utils();
|
|
65169
|
+
init_tier0();
|
|
64821
65170
|
init_bash_process_registry();
|
|
64822
65171
|
init_bash_tools_shared();
|
|
64823
65172
|
DANGEROUS_HOST_ENV_VARS = new Set([
|
|
@@ -65421,7 +65770,11 @@ function createExecTool(defaults) {
|
|
|
65421
65770
|
scopeKey: defaults?.scopeKey,
|
|
65422
65771
|
sessionKey: notifySessionKey,
|
|
65423
65772
|
timeoutSec: effectiveTimeout,
|
|
65424
|
-
onUpdate
|
|
65773
|
+
onUpdate,
|
|
65774
|
+
tier0: sandbox ? resolveTier0Binding({
|
|
65775
|
+
agentId,
|
|
65776
|
+
workspaceHostDir: sandbox.workspaceDir
|
|
65777
|
+
}) : void 0
|
|
65425
65778
|
});
|
|
65426
65779
|
let yielded = false;
|
|
65427
65780
|
let yieldTimer = null;
|
|
@@ -65496,6 +65849,7 @@ var init_bash_tools_exec = __esmMin((() => {
|
|
|
65496
65849
|
init_logger$2();
|
|
65497
65850
|
init_session_key$1();
|
|
65498
65851
|
init_landlock();
|
|
65852
|
+
init_tier0();
|
|
65499
65853
|
init_gateway();
|
|
65500
65854
|
init_nodes_utils();
|
|
65501
65855
|
init_bash_process_registry();
|
|
@@ -79158,7 +79512,7 @@ function resolvePingPongTurns(cfg) {
|
|
|
79158
79512
|
var ANNOUNCE_SKIP_TOKEN, REPLY_SKIP_TOKEN, DEFAULT_PING_PONG_TURNS, MAX_PING_PONG_TURNS;
|
|
79159
79513
|
var init_sessions_send_helpers = __esmMin((() => {
|
|
79160
79514
|
init_plugins();
|
|
79161
|
-
init_registry$
|
|
79515
|
+
init_registry$5();
|
|
79162
79516
|
ANNOUNCE_SKIP_TOKEN = "ANNOUNCE_SKIP";
|
|
79163
79517
|
REPLY_SKIP_TOKEN = "REPLY_SKIP";
|
|
79164
79518
|
DEFAULT_PING_PONG_TURNS = 5;
|
|
@@ -91633,11 +91987,12 @@ var init_agent_type = __esmMin((() => {
|
|
|
91633
91987
|
if (!trimmed) return [];
|
|
91634
91988
|
return [
|
|
91635
91989
|
"## Skills (mandatory)",
|
|
91636
|
-
"Before replying: scan <available_skills>
|
|
91637
|
-
|
|
91638
|
-
"- If multiple could apply: choose the most specific one, then
|
|
91639
|
-
"- If none clearly apply: do not
|
|
91640
|
-
|
|
91990
|
+
"Before replying: scan the <available_skills> entries.",
|
|
91991
|
+
"- If exactly one skill clearly applies: load its full instructions, then follow it.",
|
|
91992
|
+
"- If multiple could apply: choose the most specific one, then load/follow it.",
|
|
91993
|
+
"- If none clearly apply: do not load any skill.",
|
|
91994
|
+
`To load a skill's full instructions: if they aren't already shown, call the \`skill_view\` tool with the skill name; otherwise read its SKILL.md at <location> with \`${ctx.readToolName}\`.`,
|
|
91995
|
+
"Constraints: never load more than one skill up front; only load after selecting.",
|
|
91641
91996
|
trimmed,
|
|
91642
91997
|
""
|
|
91643
91998
|
];
|
|
@@ -91783,6 +92138,37 @@ var init_agent_type = __esmMin((() => {
|
|
|
91783
92138
|
];
|
|
91784
92139
|
}));
|
|
91785
92140
|
//#endregion
|
|
92141
|
+
//#region src/agents/sections/behaviour.ts
|
|
92142
|
+
var BEHAVIOUR_SECTIONS;
|
|
92143
|
+
var init_behaviour = __esmMin((() => {
|
|
92144
|
+
init_prose_loader();
|
|
92145
|
+
BEHAVIOUR_SECTIONS = [{
|
|
92146
|
+
id: "behaviour",
|
|
92147
|
+
layer: "identity",
|
|
92148
|
+
order: 2200,
|
|
92149
|
+
modes: ["full", "minimal"],
|
|
92150
|
+
cacheable: false,
|
|
92151
|
+
header: "## Operating Rules (self-maintained)",
|
|
92152
|
+
source: "file",
|
|
92153
|
+
render: (ctx) => {
|
|
92154
|
+
const workspaceDir = ctx.params.workspaceDir;
|
|
92155
|
+
if (!workspaceDir) return [];
|
|
92156
|
+
const content = resolveProse({
|
|
92157
|
+
layer: "identity",
|
|
92158
|
+
id: "behaviour",
|
|
92159
|
+
agentWorkspaceDir: workspaceDir
|
|
92160
|
+
})?.content.trim();
|
|
92161
|
+
if (!content) return [];
|
|
92162
|
+
return [
|
|
92163
|
+
"## Operating Rules (self-maintained)",
|
|
92164
|
+
"",
|
|
92165
|
+
content,
|
|
92166
|
+
""
|
|
92167
|
+
];
|
|
92168
|
+
}
|
|
92169
|
+
}];
|
|
92170
|
+
}));
|
|
92171
|
+
//#endregion
|
|
91786
92172
|
//#region src/agents/sections/identity.ts
|
|
91787
92173
|
var IDENTITY_SECTIONS;
|
|
91788
92174
|
var init_identity = __esmMin((() => {
|
|
@@ -92751,6 +93137,7 @@ function getBuiltinRegistry() {
|
|
|
92751
93137
|
_registry.registerAll(PLATFORM_SECTIONS);
|
|
92752
93138
|
_registry.registerAll(AGENT_TYPE_SECTIONS);
|
|
92753
93139
|
_registry.registerAll(IDENTITY_SECTIONS);
|
|
93140
|
+
_registry.registerAll(BEHAVIOUR_SECTIONS);
|
|
92754
93141
|
_registry.registerAll(USER_SECTIONS);
|
|
92755
93142
|
_registry.registerAll(SESSION_SECTIONS);
|
|
92756
93143
|
return _registry;
|
|
@@ -92769,6 +93156,7 @@ function assembleAgentSystemPrompt(params) {
|
|
|
92769
93156
|
var _registry;
|
|
92770
93157
|
var init_assemble = __esmMin((() => {
|
|
92771
93158
|
init_agent_type();
|
|
93159
|
+
init_behaviour();
|
|
92772
93160
|
init_identity();
|
|
92773
93161
|
init_platform();
|
|
92774
93162
|
init_registry$1();
|
|
@@ -98491,6 +98879,36 @@ async function prepareSessionManagerForRun(params) {
|
|
|
98491
98879
|
}
|
|
98492
98880
|
var init_session_manager_init = __esmMin((() => {}));
|
|
98493
98881
|
//#endregion
|
|
98882
|
+
//#region src/agents/pi-embedded-runner/tool-result-reduce.ts
|
|
98883
|
+
/** Pure text reducer for oversized/repetitive tool output. Never throws. */
|
|
98884
|
+
function reduceToolOutputText(text, opts) {
|
|
98885
|
+
let lines = text.split("\n");
|
|
98886
|
+
if (opts.collapseRuns) {
|
|
98887
|
+
const collapsed = [];
|
|
98888
|
+
let i = 0;
|
|
98889
|
+
while (i < lines.length) {
|
|
98890
|
+
let j = i + 1;
|
|
98891
|
+
while (j < lines.length && lines[j] === lines[i]) j += 1;
|
|
98892
|
+
const run = j - i;
|
|
98893
|
+
if (run >= 5) collapsed.push(`${lines[i]} (repeated ${run}×)`);
|
|
98894
|
+
else for (let k = i; k < j; k++) collapsed.push(lines[k]);
|
|
98895
|
+
i = j;
|
|
98896
|
+
}
|
|
98897
|
+
lines = collapsed;
|
|
98898
|
+
}
|
|
98899
|
+
if (lines.length <= opts.maxLines) return lines.join("\n");
|
|
98900
|
+
if (opts.headLines + opts.tailLines >= lines.length) return lines.join("\n");
|
|
98901
|
+
const head = lines.slice(0, opts.headLines);
|
|
98902
|
+
const tail = lines.slice(lines.length - opts.tailLines);
|
|
98903
|
+
const elided = lines.length - head.length - tail.length;
|
|
98904
|
+
return [
|
|
98905
|
+
...head,
|
|
98906
|
+
`… ${elided} lines elided …`,
|
|
98907
|
+
...tail
|
|
98908
|
+
].join("\n");
|
|
98909
|
+
}
|
|
98910
|
+
var init_tool_result_reduce = __esmMin((() => {}));
|
|
98911
|
+
//#endregion
|
|
98494
98912
|
//#region src/agents/pi-embedded-runner/tool-result-context-guard.ts
|
|
98495
98913
|
function isTextBlock(block) {
|
|
98496
98914
|
return !!block && typeof block === "object" && block.type === "text";
|
|
@@ -98625,8 +99043,28 @@ function applyMessageMutationInPlace(target, source) {
|
|
|
98625
99043
|
for (const key of Object.keys(targetRecord)) if (!(key in sourceRecord)) delete targetRecord[key];
|
|
98626
99044
|
Object.assign(targetRecord, sourceRecord);
|
|
98627
99045
|
}
|
|
99046
|
+
/**
|
|
99047
|
+
* Run the pure line-reducer over each tool-result message's text content,
|
|
99048
|
+
* mutating messages in place. Skips reductions that wouldn't shrink the text.
|
|
99049
|
+
*/
|
|
99050
|
+
function reduceToolResultOutputsInPlace(messages) {
|
|
99051
|
+
for (const message of messages) {
|
|
99052
|
+
if (!isToolResultMessage(message)) continue;
|
|
99053
|
+
const rawText = getToolResultText(message);
|
|
99054
|
+
if (!rawText) continue;
|
|
99055
|
+
const reduced = reduceToolOutputText(rawText, {
|
|
99056
|
+
maxLines: REDUCE_MAX_LINES,
|
|
99057
|
+
headLines: REDUCE_HEAD_LINES,
|
|
99058
|
+
tailLines: REDUCE_TAIL_LINES,
|
|
99059
|
+
collapseRuns: true
|
|
99060
|
+
});
|
|
99061
|
+
if (reduced === rawText) continue;
|
|
99062
|
+
applyMessageMutationInPlace(message, replaceToolResultText(message, reduced));
|
|
99063
|
+
}
|
|
99064
|
+
}
|
|
98628
99065
|
function enforceToolResultContextBudgetInPlace(params) {
|
|
98629
|
-
const { messages, contextBudgetChars, maxSingleToolResultChars } = params;
|
|
99066
|
+
const { messages, contextBudgetChars, maxSingleToolResultChars, reduceOutput } = params;
|
|
99067
|
+
if (reduceOutput) reduceToolResultOutputsInPlace(messages);
|
|
98630
99068
|
for (const message of messages) {
|
|
98631
99069
|
if (!isToolResultMessage(message)) continue;
|
|
98632
99070
|
applyMessageMutationInPlace(message, truncateToolResultToChars(message, maxSingleToolResultChars));
|
|
@@ -98648,6 +99086,7 @@ function enforceToolResultContextBudgetInPlace(params) {
|
|
|
98648
99086
|
* @returns An async function suitable for use as Agent's transformContext callback.
|
|
98649
99087
|
*/
|
|
98650
99088
|
function createToolResultContextGuardTransform(params) {
|
|
99089
|
+
const reduceOutput = params.reduceOutput !== false;
|
|
98651
99090
|
const contextWindowTokens = Math.max(1, Math.floor(params.contextWindowTokens));
|
|
98652
99091
|
const contextBudgetChars = Math.max(1024, Math.floor(contextWindowTokens * CHARS_PER_TOKEN_ESTIMATE * CONTEXT_INPUT_HEADROOM_RATIO));
|
|
98653
99092
|
const maxSingleToolResultChars = Math.max(1024, Math.floor(contextWindowTokens * TOOL_RESULT_CHARS_PER_TOKEN_ESTIMATE * SINGLE_TOOL_RESULT_CONTEXT_SHARE));
|
|
@@ -98658,13 +99097,15 @@ function createToolResultContextGuardTransform(params) {
|
|
|
98658
99097
|
enforceToolResultContextBudgetInPlace({
|
|
98659
99098
|
messages: contextMessages,
|
|
98660
99099
|
contextBudgetChars,
|
|
98661
|
-
maxSingleToolResultChars
|
|
99100
|
+
maxSingleToolResultChars,
|
|
99101
|
+
reduceOutput
|
|
98662
99102
|
});
|
|
98663
99103
|
return contextMessages;
|
|
98664
99104
|
};
|
|
98665
99105
|
}
|
|
98666
|
-
var CHARS_PER_TOKEN_ESTIMATE, CONTEXT_INPUT_HEADROOM_RATIO, SINGLE_TOOL_RESULT_CONTEXT_SHARE, TOOL_RESULT_CHARS_PER_TOKEN_ESTIMATE, IMAGE_CHAR_ESTIMATE, CONTEXT_LIMIT_TRUNCATION_NOTICE, CONTEXT_LIMIT_TRUNCATION_SUFFIX, PREEMPTIVE_TOOL_RESULT_COMPACTION_PLACEHOLDER;
|
|
99106
|
+
var CHARS_PER_TOKEN_ESTIMATE, CONTEXT_INPUT_HEADROOM_RATIO, SINGLE_TOOL_RESULT_CONTEXT_SHARE, TOOL_RESULT_CHARS_PER_TOKEN_ESTIMATE, IMAGE_CHAR_ESTIMATE, CONTEXT_LIMIT_TRUNCATION_NOTICE, CONTEXT_LIMIT_TRUNCATION_SUFFIX, PREEMPTIVE_TOOL_RESULT_COMPACTION_PLACEHOLDER, REDUCE_MAX_LINES, REDUCE_HEAD_LINES, REDUCE_TAIL_LINES;
|
|
98667
99107
|
var init_tool_result_context_guard = __esmMin((() => {
|
|
99108
|
+
init_tool_result_reduce();
|
|
98668
99109
|
CHARS_PER_TOKEN_ESTIMATE = 4;
|
|
98669
99110
|
CONTEXT_INPUT_HEADROOM_RATIO = .75;
|
|
98670
99111
|
SINGLE_TOOL_RESULT_CONTEXT_SHARE = .5;
|
|
@@ -98673,6 +99114,9 @@ var init_tool_result_context_guard = __esmMin((() => {
|
|
|
98673
99114
|
CONTEXT_LIMIT_TRUNCATION_NOTICE = "[truncated: output exceeded context limit]";
|
|
98674
99115
|
CONTEXT_LIMIT_TRUNCATION_SUFFIX = `\n${CONTEXT_LIMIT_TRUNCATION_NOTICE}`;
|
|
98675
99116
|
PREEMPTIVE_TOOL_RESULT_COMPACTION_PLACEHOLDER = "[compacted: tool output removed to free context]";
|
|
99117
|
+
REDUCE_MAX_LINES = 200;
|
|
99118
|
+
REDUCE_HEAD_LINES = 40;
|
|
99119
|
+
REDUCE_TAIL_LINES = 40;
|
|
98676
99120
|
}));
|
|
98677
99121
|
//#endregion
|
|
98678
99122
|
//#region src/agents/pi-embedded-runner/run/attempt-session.ts
|
|
@@ -98765,7 +99209,10 @@ async function createRunSession(params, env) {
|
|
|
98765
99209
|
applySystemPromptOverrideToSession(session, env.systemPromptText);
|
|
98766
99210
|
if (!session) throw new Error("Embedded agent session missing");
|
|
98767
99211
|
const activeSession = session;
|
|
98768
|
-
const contextGuardTransform = createToolResultContextGuardTransform({
|
|
99212
|
+
const contextGuardTransform = createToolResultContextGuardTransform({
|
|
99213
|
+
contextWindowTokens: Math.max(1, Math.floor(params.model.contextWindow ?? params.model.maxTokens ?? 2e5)),
|
|
99214
|
+
reduceOutput: params.config?.tools?.outputReduce?.enabled !== false
|
|
99215
|
+
});
|
|
98769
99216
|
activeSession.agent.transformContext = contextGuardTransform;
|
|
98770
99217
|
const cacheTrace = createCacheTrace({
|
|
98771
99218
|
cfg: params.config,
|
|
@@ -103057,7 +103504,7 @@ var init_commands_allowlist = __esmMin((() => {
|
|
|
103057
103504
|
init_resolve_users();
|
|
103058
103505
|
init_config_writes();
|
|
103059
103506
|
init_pairing();
|
|
103060
|
-
init_registry$
|
|
103507
|
+
init_registry$5();
|
|
103061
103508
|
init_accounts$1();
|
|
103062
103509
|
init_accounts();
|
|
103063
103510
|
init_config$4();
|
|
@@ -104397,7 +104844,7 @@ var init_debug_commands = __esmMin((() => {
|
|
|
104397
104844
|
var handleConfigCommand, handleDebugCommand;
|
|
104398
104845
|
var init_commands_config = __esmMin((() => {
|
|
104399
104846
|
init_config_writes();
|
|
104400
|
-
init_registry$
|
|
104847
|
+
init_registry$5();
|
|
104401
104848
|
init_config_paths();
|
|
104402
104849
|
init_config$4();
|
|
104403
104850
|
init_runtime_overrides();
|
|
@@ -108578,7 +109025,7 @@ var init_reply_elevated = __esmMin((() => {
|
|
|
108578
109025
|
init_agent_scope();
|
|
108579
109026
|
init_dock();
|
|
108580
109027
|
init_plugins();
|
|
108581
|
-
init_registry$
|
|
109028
|
+
init_registry$5();
|
|
108582
109029
|
init_message_channel();
|
|
108583
109030
|
init_string_normalization();
|
|
108584
109031
|
init_elevated_unavailable();
|
|
@@ -110179,7 +110626,7 @@ var BUN_FETCH_SOCKET_ERROR_RE, isBunFetchSocketError, formatBunFetchSocketError,
|
|
|
110179
110626
|
var init_agent_runner_utils = __esmMin((() => {
|
|
110180
110627
|
init_agent_scope();
|
|
110181
110628
|
init_dock();
|
|
110182
|
-
init_registry$
|
|
110629
|
+
init_registry$5();
|
|
110183
110630
|
init_sessions$1();
|
|
110184
110631
|
init_provider_utils();
|
|
110185
110632
|
init_usage_format();
|