@qwen-code/qwen-code 0.21.2-nightly.20260801.bc382c3ff → 0.21.3
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/bundled/qc-helper/docs/configuration/settings.md +34 -32
- package/bundled/qc-helper/docs/features/code-review.md +78 -23
- package/bundled/qc-helper/docs/features/commands.md +1 -0
- package/bundled/qc-helper/docs/features/skills.md +32 -1
- package/bundled/qc-helper/docs/reference/keyboard-shortcuts.md +12 -12
- package/bundled/qc-helper/docs/support/troubleshooting.md +6 -1
- package/bundled/review/DESIGN.md +167 -32
- package/bundled/review/SKILL.md +156 -32
- package/chunks/{MaxSizedBox-CDHTDITS.js → MaxSizedBox-OJR636GP.js} +14 -13
- package/chunks/{StandaloneSessionPicker-L63HUAHP.js → StandaloneSessionPicker-AMMBF5UY.js} +34 -32
- package/chunks/{acpAgent-6WVVT2P3.js → acpAgent-M57LVIQA.js} +80 -78
- package/chunks/{agent-KDM4CBOU.js → agent-PE37ARLM.js} +13 -12
- package/chunks/{agent-headless-AS7K2K57.js → agent-headless-45ASME4R.js} +13 -12
- package/chunks/{artifact-tool-ANV4CFCR.js → artifact-tool-TBOYEKTY.js} +1 -1
- package/chunks/{askUserQuestion-MALEB47H.js → askUserQuestion-23Y5WZFJ.js} +1 -1
- package/chunks/{bridge-JNEW6FES.js → bridge-K3ZRPO4D.js} +14 -13
- package/chunks/{channel-management-service-QOO7TD3T.js → channel-management-service-IXJ2MZTS.js} +6 -6
- package/chunks/{channel-settings-store-4CSMTR4L.js → channel-settings-store-PEAR3IME.js} +19 -18
- package/chunks/{channel-worker-group-ERSUOPIR.js → channel-worker-group-NDG4WOOZ.js} +4 -4
- package/chunks/{channel-worker-manager-X247YDQ7.js → channel-worker-manager-ZCW6UW34.js} +4 -4
- package/chunks/{channel-worker-supervisor-ORJIEEPP.js → channel-worker-supervisor-ATGFTZRN.js} +3 -3
- package/chunks/{chunk-LAPK3GLC.js → chunk-22YFMJBW.js} +24 -6
- package/chunks/{chunk-UHTJC7O3.js → chunk-24ER7UV4.js} +1 -1
- package/chunks/{chunk-3WXMXT7C.js → chunk-2LZCLQIS.js} +5 -5
- package/chunks/{chunk-NZB4NDJL.js → chunk-2MI7ZTRT.js} +4 -4
- package/chunks/{chunk-C4L2MEIT.js → chunk-3MWNROHB.js} +3 -3
- package/chunks/{chunk-2PNQQ4UR.js → chunk-3XF4WT3B.js} +1 -1
- package/chunks/{chunk-TNVKFQXQ.js → chunk-4AGGSHCH.js} +383 -153
- package/chunks/{chunk-M2F5PLOW.js → chunk-4K3RV3OA.js} +3 -3
- package/chunks/{chunk-5UJ6A3CH.js → chunk-5JPVOYWA.js} +5 -5
- package/chunks/{chunk-AYB4HSBI.js → chunk-5VYFXHY2.js} +3 -3
- package/chunks/{chunk-AQEWCKX4.js → chunk-6NE5NTHJ.js} +1 -1
- package/chunks/{chunk-XSA5EKTJ.js → chunk-BKGA75MU.js} +1 -1
- package/chunks/{chunk-MBKPUM5Y.js → chunk-BKXTHMOZ.js} +1 -1
- package/chunks/{chunk-LL4U3BSH.js → chunk-BSKUTHLO.js} +3 -3
- package/chunks/{chunk-I5GNT6ZS.js → chunk-CFDR3GNL.js} +11 -2
- package/chunks/{chunk-DVGTU5TC.js → chunk-CIUUYB23.js} +2 -2
- package/chunks/{chunk-BKUN5QHP.js → chunk-D2GPKXCQ.js} +4 -4
- package/chunks/{chunk-GB3AB7TR.js → chunk-DIEFUBV6.js} +1 -0
- package/chunks/{chunk-KXSYDCP2.js → chunk-DSGJLHM3.js} +3 -3
- package/chunks/{chunk-PHODQP2V.js → chunk-EGYJRIDF.js} +2 -2
- package/chunks/{chunk-XCLLRKY5.js → chunk-EIMKVOSF.js} +1 -1
- package/chunks/{chunk-QTERJVPZ.js → chunk-EKTCKZV5.js} +1 -0
- package/chunks/{chunk-42IKVPST.js → chunk-FF75UUB2.js} +1 -1
- package/chunks/{chunk-FJHA23GM.js → chunk-FG63DZQA.js} +9 -9
- package/chunks/{chunk-5UZITEHA.js → chunk-FHPKHXHT.js} +2 -2
- package/chunks/{chunk-25QQVOCG.js → chunk-FXVHVCNA.js} +1 -1
- package/chunks/{chunk-7MY2AR5A.js → chunk-GMSBXEH4.js} +9 -9
- package/chunks/{chunk-TFFMATHX.js → chunk-H35Q5CEG.js} +5 -5
- package/chunks/{chunk-WISQLM4Q.js → chunk-H6FIBBXK.js} +1177 -1806
- package/chunks/{chunk-DUIJ2IXG.js → chunk-H6ZYP74A.js} +1 -1
- package/chunks/{chunk-XFDPIC4P.js → chunk-HEBW74ZW.js} +3 -3
- package/chunks/{chunk-6FMJLI5M.js → chunk-HFVW54NL.js} +41 -6
- package/chunks/{chunk-3MHPWQ2M.js → chunk-HIXVWF7I.js} +37 -8
- package/chunks/{chunk-GVISB2OH.js → chunk-HUIQ4FYC.js} +2 -2
- package/chunks/{chunk-K5Q62CGR.js → chunk-IF6K42YJ.js} +1 -1
- package/chunks/{chunk-VWF42XC6.js → chunk-IWGTGH4G.js} +4 -4
- package/chunks/{chunk-SWEBEXPI.js → chunk-K2J5JZ6B.js} +1 -1
- package/chunks/{chunk-CHCLO3M7.js → chunk-KXWERR6P.js} +4 -4
- package/chunks/{chunk-OCRM53TT.js → chunk-L7FTDKCD.js} +3 -3
- package/chunks/{chunk-2CTKGIFR.js → chunk-LGT3YMLN.js} +4 -4
- package/chunks/{chunk-7IYLHTTM.js → chunk-LZV2BZPL.js} +2 -2
- package/chunks/{chunk-434YCHSV.js → chunk-M5LIY7Y6.js} +1 -1
- package/chunks/{chunk-JRIDA5HF.js → chunk-MCXMWLFT.js} +5 -5
- package/chunks/{chunk-433VD3HX.js → chunk-MTR4JWQJ.js} +4 -4
- package/chunks/{chunk-WP4HGHFG.js → chunk-MUEJ4R3E.js} +3 -3
- package/chunks/{chunk-UHQ3L6GC.js → chunk-N42C2FU3.js} +1 -1
- package/chunks/{chunk-KG22G46Y.js → chunk-NW57GHNL.js} +69 -5
- package/chunks/chunk-PWCQRLM5.js +1170 -0
- package/chunks/{chunk-H4DSRWAS.js → chunk-Q3G5L5KF.js} +4 -4
- package/chunks/{chunk-SK2UKB45.js → chunk-QDWLUXKP.js} +1 -1
- package/chunks/{chunk-VS3GXRNZ.js → chunk-QPSYIV2O.js} +3114 -512
- package/chunks/{chunk-GHJM2C2T.js → chunk-QWDVZH24.js} +3 -3
- package/chunks/{chunk-UWLG4UCE.js → chunk-QWW6I2UO.js} +13 -13
- package/chunks/{chunk-W7XZ3KP5.js → chunk-R7XNRHYD.js} +1 -1
- package/chunks/{chunk-PGP7Y3RQ.js → chunk-RCXCGZG6.js} +4 -4
- package/chunks/{chunk-MSIVKDRC.js → chunk-RL6J3BPE.js} +3 -3
- package/chunks/{chunk-H6MC6VQX.js → chunk-RR224BUP.js} +4 -3
- package/chunks/{chunk-7K2WTPQO.js → chunk-SKSF3LGQ.js} +4 -4
- package/chunks/{chunk-II6WPWHY.js → chunk-SQ3YD5MI.js} +1 -1
- package/chunks/{chunk-PGEGUNH5.js → chunk-SRY26X4H.js} +22 -199
- package/chunks/{chunk-OBAIHYFT.js → chunk-TXABHVZD.js} +1 -1
- package/chunks/chunk-TZTBZ25J.js +222 -0
- package/chunks/{chunk-BV4QX43X.js → chunk-UEJESCS7.js} +1 -1
- package/chunks/{chunk-NGWYUZZO.js → chunk-UQDFEU47.js} +318 -125
- package/chunks/{chunk-CWEIMFFW.js → chunk-VA5NLVPT.js} +1 -1
- package/chunks/{chunk-UOFFZNXV.js → chunk-VUNRNRN6.js} +65 -37
- package/chunks/{chunk-K4CGQN4Q.js → chunk-VWOVHOTT.js} +1 -1
- package/chunks/{chunk-I6FAHB4N.js → chunk-WUC6ZFXO.js} +1 -1
- package/chunks/{chunk-2A6MHYIA.js → chunk-WY2ENRDN.js} +1 -1
- package/chunks/{chunk-MYT7N6QH.js → chunk-X6QNZOTC.js} +1 -1
- package/chunks/{chunk-ZTN6OA5J.js → chunk-X6WUYMOV.js} +8 -8
- package/chunks/{chunk-RGJ4JWSU.js → chunk-XMJO6C44.js} +3 -3
- package/chunks/{chunk-PXA5AWHY.js → chunk-XUMAD5IT.js} +1 -1
- package/chunks/{chunk-GALUTA2C.js → chunk-YPUHMQXV.js} +1 -1
- package/chunks/{chunk-A2A34TSB.js → chunk-YU6TBRTA.js} +2 -2
- package/chunks/{chunk-ZRFJ75D7.js → chunk-YWMDTMAU.js} +2 -2
- package/chunks/{chunk-LRJWFR6L.js → chunk-ZGSUFIL5.js} +1 -1
- package/chunks/{chunk-H4346YW5.js → chunk-ZJES4C3I.js} +5 -5
- package/chunks/{computer-use-Z4NCIIJN.js → computer-use-UJMK6JQU.js} +13 -12
- package/chunks/{config-utils-64LM6OEQ.js → config-utils-7COTJMWK.js} +4 -4
- package/chunks/{contextCommand-HVM7XFCB.js → contextCommand-4YABGF4S.js} +16 -15
- package/chunks/{core-runtime-NL3ZBHBU.js → core-runtime-7M4VM3DA.js} +13 -12
- package/chunks/{create-sub-session-XHSCDYFU.js → create-sub-session-HOFDW4N7.js} +13 -12
- package/chunks/{create-sub-session-AM32K2HD.js → create-sub-session-J32WC64U.js} +1 -1
- package/chunks/{cron-create-HPXYE6C5.js → cron-create-HMFSHIAR.js} +1 -1
- package/chunks/{cron-delete-FPVNTKPK.js → cron-delete-ZJFHOX57.js} +1 -1
- package/chunks/{cron-list-ZEI6PAAV.js → cron-list-ZEX2NBMN.js} +1 -1
- package/chunks/{daemon-PCNCI5YU.js → daemon-CCIX4BMG.js} +47 -6
- package/chunks/{daemon-status-provider-XD23SNAM.js → daemon-status-provider-W2U5Q3J5.js} +18 -17
- package/chunks/{daemon-trust-policy-NOHK7IW5.js → daemon-trust-policy-IFICWPXP.js} +18 -17
- package/chunks/{daemon-trust-policy-monitor-ZBTSR333.js → daemon-trust-policy-monitor-GX7EO6FW.js} +18 -17
- package/chunks/{deferred-core-runtime-JJBHKM2C.js → deferred-core-runtime-U36OOOKE.js} +13 -12
- package/chunks/display-image-VS3TXYQH.js +184 -0
- package/chunks/{dist-BH76AT7N.js → dist-3BMEUGTG.js} +1 -1
- package/chunks/{dist-BXA3JXVQ.js → dist-4KAX7CCL.js} +1 -1
- package/chunks/{dist-4T4NCJFL.js → dist-7JGAAQSC.js} +2 -2
- package/chunks/{dist-4LAMY2SK.js → dist-A7H2KKUC.js} +1 -1
- package/chunks/{dist-OEEFI6UU.js → dist-DPPHJAVL.js} +3 -3
- package/chunks/{dist-SMLVOWKV.js → dist-HVBMEYWK.js} +1 -1
- package/chunks/{dist-7KOL6OMD.js → dist-NEBRI7WO.js} +1 -1
- package/chunks/{dist-V2RK6S6Q.js → dist-SFQ34F4M.js} +24 -6
- package/chunks/{earlyInputCapture-KLAZDAIP.js → earlyInputCapture-5ZWDH3SB.js} +13 -12
- package/chunks/{edit-YQZWCISX.js → edit-J7SW6UP6.js} +13 -12
- package/chunks/{en-RESOFG55.js → en-L4UQDLWW.js} +11 -1
- package/chunks/{enter-worktree-WLVWI3FP.js → enter-worktree-NRLOHRB6.js} +13 -12
- package/chunks/{enterPlanMode-6RYXFQUD.js → enterPlanMode-GDSTEFSM.js} +13 -12
- package/chunks/{environment-DXJTXSVT.js → environment-KHYEKG5W.js} +15 -14
- package/chunks/{errors-XGAGG2S2.js → errors-VNLAJV3O.js} +15 -14
- package/chunks/{exit-worktree-C4276VPP.js → exit-worktree-ARVID7DF.js} +13 -12
- package/chunks/{exitPlanMode-MM5HIRUF.js → exitPlanMode-4ZFY7KUH.js} +13 -12
- package/chunks/{fast-path-PIXYOHCH.js → fast-path-KA65VREJ.js} +5 -5
- package/chunks/{gemini-43RLVUNP.js → gemini-5PMCNPF7.js} +56 -55
- package/chunks/{geminiContentGenerator-PNQ4TSID.js → geminiContentGenerator-NFSYJ4HA.js} +1 -1
- package/chunks/{glob-ZMBQKAU5.js → glob-F3EAUDAX.js} +13 -12
- package/chunks/{goal-tools-Y767F7LZ.js → goal-tools-SPQ5M6D3.js} +2 -2
- package/chunks/{grep-HSV37W2Q.js → grep-UJMPVZER.js} +13 -12
- package/chunks/{handleAutoUpdate-QDHZPBAY.js → handleAutoUpdate-MG4FRZPN.js} +18 -17
- package/chunks/{i18n-ME22A6RN.js → i18n-EVHV4ZF3.js} +14 -13
- package/chunks/{image-gen-IFC7ZWSB.js → image-gen-UC7XVHI7.js} +2 -2
- package/chunks/{initializer-J7H2CHVB.js → initializer-O5B6HUBI.js} +18 -17
- package/chunks/{installationInfo-R7FXPQN5.js → installationInfo-2LIKCNVX.js} +14 -13
- package/chunks/{list-OYDIBA4N.js → list-BPKIE3Z4.js} +21 -20
- package/chunks/{list-agents-GATIBBQQ.js → list-agents-TWEGRJWO.js} +1 -1
- package/chunks/{loadedSettingsAdapter-OK6GK2GE.js → loadedSettingsAdapter-NGLFF4V4.js} +18 -17
- package/chunks/{loggingContentGenerator-U4ZEG4GL.js → loggingContentGenerator-7TFESRG5.js} +5 -5
- package/chunks/{loop-wakeup-3DZMQQQQ.js → loop-wakeup-6LLEOQYV.js} +2 -2
- package/chunks/{ls-7F4GHXIH.js → ls-H5WX22VK.js} +1 -1
- package/chunks/{lsp-6FEHVBWI.js → lsp-G6FXYEIS.js} +1 -1
- package/chunks/{managed-npm-update-PGKAJLLO.js → managed-npm-update-CLZGGV7F.js} +14 -13
- package/chunks/{mcp-S4DXJD2G.js → mcp-X5OZOOXX.js} +18 -17
- package/chunks/{monitor-E5ZFMT74.js → monitor-TGSVSAZZ.js} +13 -12
- package/chunks/{nonInteractiveCli-HNOHKEPE.js → nonInteractiveCli-GUMJ5JLG.js} +54 -53
- package/chunks/{notebook-edit-6QDN6VZJ.js → notebook-edit-EZISE7IC.js} +13 -12
- package/chunks/{openaiContentGenerator-3NLB2C5O.js → openaiContentGenerator-ZAKS5A6P.js} +5 -5
- package/chunks/{pidfile-ZMOIUGG6.js → pidfile-PCMBX4LR.js} +13 -12
- package/chunks/{processUtils-E4QGQVWW.js → processUtils-2CSVE5BW.js} +2 -2
- package/chunks/{qwenContentGenerator-2LFRWJTM.js → qwenContentGenerator-S3H6PIC4.js} +14 -13
- package/chunks/{qwenOAuth2-N32BUQDC.js → qwenOAuth2-MNU425VE.js} +1 -1
- package/chunks/{read-file-GLDCWZBG.js → read-file-HXJXHBI6.js} +4 -4
- package/chunks/{read-mcp-resource-AFS3UKZO.js → read-mcp-resource-DRZSI3HE.js} +1 -1
- package/chunks/{record-artifact-ECZSCEG5.js → record-artifact-IPIRWMFY.js} +2 -2
- package/chunks/{resumeHistoryUtils-F5BE5QDW.js → resumeHistoryUtils-4QAMC2S6.js} +18 -17
- package/chunks/{ripGrep-T23Y4AGY.js → ripGrep-MCETPF2E.js} +13 -12
- package/chunks/{run-qwen-serve-TI2HGLLU.js → run-qwen-serve-3NMODTXV.js} +43 -43
- package/chunks/{runtime-WCWM3DO7.js → runtime-AQOV7DVP.js} +23 -22
- package/chunks/{scheduler-2QZO5AV5.js → scheduler-DN7SZ6ZE.js} +13 -12
- package/chunks/{send-message-X7G2JSII.js → send-message-HGCVVDTZ.js} +3 -2
- package/chunks/{serve-DZOMYUFU.js → serve-WZB45HVT.js} +18 -17
- package/chunks/{server-N4AJRKIQ.js → server-GOTZFEEZ.js} +86 -54
- package/chunks/{session-GS6AKMN7.js → session-23LOFLWN.js} +55 -54
- package/chunks/{settings-CUN3SELH.js → settings-LI2ORVXC.js} +17 -16
- package/chunks/{shell-NGBFVXC5.js → shell-GLC6OP3C.js} +13 -12
- package/chunks/{skill-SC2BSO75.js → skill-C7W6M4GO.js} +4 -4
- package/chunks/{skill-settings-XVPCPW5K.js → skill-settings-W25NCK5I.js} +17 -16
- package/chunks/{spawnChannel-RILO4YY3.js → spawnChannel-OHJLEBLD.js} +13 -12
- package/chunks/{standalone-update-TMLT6LVJ.js → standalone-update-E4V5V7WT.js} +15 -14
- package/chunks/{startInteractiveUI-J45WOEOU.js → startInteractiveUI-FKILLW7Q.js} +1419 -414
- package/chunks/{syntheticOutput-FHRY3BPQ.js → syntheticOutput-EYL7DWO7.js} +2 -2
- package/chunks/{task-create-LAQXBIHC.js → task-create-CSCEG4SM.js} +4 -3
- package/chunks/{task-list-V6K5DRDH.js → task-list-6CVQPORX.js} +1 -1
- package/chunks/{task-stop-LQXE52L6.js → task-stop-Y5ZTFVRX.js} +1 -1
- package/chunks/{task-update-NXRCXSPB.js → task-update-C52LNFU5.js} +4 -3
- package/chunks/{team-create-W3EVWCTA.js → team-create-HBIJ7NHT.js} +13 -12
- package/chunks/{team-delete-Z4KGO7RC.js → team-delete-CE7DC53R.js} +1 -1
- package/chunks/{team-plan-approval-URYVKJF4.js → team-plan-approval-IBJOKS4J.js} +13 -12
- package/chunks/terminal-image-renderer-BOQJPVLB.js +89 -0
- package/chunks/{theme-manager-CUAMS2NI.js → theme-manager-NSS7VLUD.js} +13 -12
- package/chunks/{todoWrite-OFIZDI7P.js → todoWrite-YKAA57W2.js} +104 -33
- package/chunks/{tool-search-DCICFL32.js → tool-search-DEAS54VG.js} +6 -5
- package/chunks/{total-session-admission-3ZTAXVUK.js → total-session-admission-4LWTX3WD.js} +14 -13
- package/chunks/{trustedFolders-EVCN36O5.js → trustedFolders-NF3J2TA7.js} +14 -13
- package/chunks/{update-relaunch-XLW46RHQ.js → update-relaunch-WUHRH5V3.js} +5 -5
- package/chunks/{updateCheck-ZHVXDAIH.js → updateCheck-7EG4BLBH.js} +17 -16
- package/chunks/{useAutoAcceptIndicator-ZGD6BJSP.js → useAutoAcceptIndicator-ZRV56GVP.js} +21 -20
- package/chunks/{validateNonInterActiveAuth-R3BAQFDY.js → validateNonInterActiveAuth-WC2FPE3I.js} +51 -50
- package/chunks/{version-PMWREGCG.js → version-6SS7KCUP.js} +1 -1
- package/chunks/{web-fetch-PGN27SGF.js → web-fetch-Y5QQMPKA.js} +4 -4
- package/chunks/{web-search-KW4UNMRE.js → web-search-QKKEU723.js} +3 -3
- package/chunks/{workflow-SN3TJBTJ.js → workflow-PWIU6Q2M.js} +102 -37
- package/chunks/{workspace-providers-status-O3HUZGGR.js → workspace-providers-status-B2DM6FNK.js} +20 -19
- package/chunks/{workspace-registration-store-M3FJ74RS.js → workspace-registration-store-7Y33TTHJ.js} +1 -1
- package/chunks/{workspace-registry-U7ISW23N.js → workspace-registry-TSNJKLPC.js} +14 -13
- package/chunks/{workspace-service-VH6IWADT.js → workspace-service-4I2QHDX4.js} +22 -21
- package/chunks/{workspace-skills-status-XANARSZS.js → workspace-skills-status-HVXNWVGR.js} +19 -18
- package/chunks/{workspace-trust-reconciler-35EFR4GC.js → workspace-trust-reconciler-RDBBGMWP.js} +19 -18
- package/chunks/{write-file-NCRSGUDT.js → write-file-RQ4DG5RY.js} +13 -12
- package/chunks/{zh-OHX23Q44.js → zh-72XPUG5P.js} +11 -1
- package/chunks/{zh-TW-4G7YKDAQ.js → zh-TW-LTB4SRH3.js} +11 -1
- package/chunks/{zoom-image-X7CIADYC.js → zoom-image-O5YCB7WN.js} +4 -4
- package/cli.js +26 -15
- package/locales/en.js +17 -2
- package/locales/zh-TW.js +15 -2
- package/locales/zh.js +15 -2
- package/package.json +3 -3
- package/web-shell/assets/{arc-CaMTqKio.js → arc-Bd7d781i.js} +1 -1
- package/web-shell/assets/{architectureDiagram-3BPJPVTR-Bjxztij2.js → architectureDiagram-3BPJPVTR-CpnOJqNE.js} +1 -1
- package/web-shell/assets/{blockDiagram-GPEHLZMM-BYJzeHi9.js → blockDiagram-GPEHLZMM-NxVTiWnk.js} +1 -1
- package/web-shell/assets/{c4Diagram-AAUBKEIU-fYAa-Eil.js → c4Diagram-AAUBKEIU-BWT75l82.js} +1 -1
- package/web-shell/assets/channel-A434sWK5.js +1 -0
- package/web-shell/assets/{chunk-2J33WTMH-B1OTlTml.js → chunk-2J33WTMH-Dzz03hk6.js} +1 -1
- package/web-shell/assets/{chunk-4BX2VUAB-DNj4uy6k.js → chunk-4BX2VUAB-DRF-egfm.js} +1 -1
- package/web-shell/assets/{chunk-55IACEB6-DAqNmg3c.js → chunk-55IACEB6-Co15vq5x.js} +1 -1
- package/web-shell/assets/{chunk-727SXJPM-BwB4ddxE.js → chunk-727SXJPM-DHSUk1J7.js} +1 -1
- package/web-shell/assets/{chunk-AQP2D5EJ-DmHR_UZs.js → chunk-AQP2D5EJ-Br8u_E2R.js} +1 -1
- package/web-shell/assets/{chunk-FMBD7UC4-BlfOXumo.js → chunk-FMBD7UC4-DXbPTnqF.js} +1 -1
- package/web-shell/assets/{chunk-ND2GUHAM-BKogiSy7.js → chunk-ND2GUHAM-BleQdi4d.js} +1 -1
- package/web-shell/assets/{chunk-QZHKN3VN-DEclVrOF.js → chunk-QZHKN3VN-CqgBf-95.js} +1 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-CwPuhldB.js +1 -0
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-CwPuhldB.js +1 -0
- package/web-shell/assets/{cose-bilkent-S5V4N54A-CwtS21WT.js → cose-bilkent-S5V4N54A-WS7b13Yg.js} +1 -1
- package/web-shell/assets/{dagre-BM42HDAG-BAAIlB4p.js → dagre-BM42HDAG-v_55ki8o.js} +1 -1
- package/web-shell/assets/{diagram-2AECGRRQ-ChljtF_V.js → diagram-2AECGRRQ-DaYAjbdK.js} +1 -1
- package/web-shell/assets/{diagram-5GNKFQAL-BIXVd31-.js → diagram-5GNKFQAL-D_Hy-L64.js} +1 -1
- package/web-shell/assets/{diagram-KO2AKTUF-BEiBaS15.js → diagram-KO2AKTUF-dB06cZyD.js} +1 -1
- package/web-shell/assets/{diagram-LMA3HP47-C-g4tWKM.js → diagram-LMA3HP47-DzSluD4F.js} +1 -1
- package/web-shell/assets/{diagram-OG6HWLK6-CNCCbNQG.js → diagram-OG6HWLK6-Cvb6CeXQ.js} +1 -1
- package/web-shell/assets/{erDiagram-TEJ5UH35-v8ysnsdI.js → erDiagram-TEJ5UH35-7eB2Hmov.js} +1 -1
- package/web-shell/assets/{flowDiagram-I6XJVG4X-LKVlLjwA.js → flowDiagram-I6XJVG4X-B08iGCw_.js} +1 -1
- package/web-shell/assets/{ganttDiagram-6RSMTGT7-DA5MrKYG.js → ganttDiagram-6RSMTGT7-BgsrCHq-.js} +1 -1
- package/web-shell/assets/{gitGraphDiagram-PVQCEYII-Cyg5fe6d.js → gitGraphDiagram-PVQCEYII-DQLurQ2i.js} +1 -1
- package/web-shell/assets/{index-CKdUkVVS.js → index-B_1Z0Mgr.js} +1 -1
- package/web-shell/assets/index-Bi1dP2mU.css +5 -0
- package/web-shell/assets/index-DJ-z1Oba.js +1756 -0
- package/web-shell/assets/{infoDiagram-5YYISTIA-SLsfu3Qd.js → infoDiagram-5YYISTIA-DXZGO8qB.js} +1 -1
- package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-CmHOmTNx.js → ishikawaDiagram-YF4QCWOH-g7gbuH2w.js} +1 -1
- package/web-shell/assets/{journeyDiagram-JHISSGLW-C3gM_HFQ.js → journeyDiagram-JHISSGLW-euefICGn.js} +1 -1
- package/web-shell/assets/{kanban-definition-UN3LZRKU-BbHD7duM.js → kanban-definition-UN3LZRKU-Dws8-mjG.js} +1 -1
- package/web-shell/assets/{linear-CSBvm435.js → linear-C63F0tyh.js} +1 -1
- package/web-shell/assets/{mermaid.core-CPMw15lU.js → mermaid.core-fLrhp_4-.js} +5 -5
- package/web-shell/assets/{mindmap-definition-RKZ34NQL-C_tNqXQW.js → mindmap-definition-RKZ34NQL-qRkydfT-.js} +1 -1
- package/web-shell/assets/{pieDiagram-4H26LBE5-DH_N-8yY.js → pieDiagram-4H26LBE5-BZ0wQaKN.js} +1 -1
- package/web-shell/assets/{quadrantDiagram-W4KKPZXB-CRbS8UkN.js → quadrantDiagram-W4KKPZXB-Fjq6GbSZ.js} +1 -1
- package/web-shell/assets/{requirementDiagram-4Y6WPE33-DJgdZPZn.js → requirementDiagram-4Y6WPE33-CqWvjLHU.js} +1 -1
- package/web-shell/assets/{sankeyDiagram-5OEKKPKP-vhL1y5zx.js → sankeyDiagram-5OEKKPKP-VcXX6PVZ.js} +1 -1
- package/web-shell/assets/{sequenceDiagram-3UESZ5HK-UQthhFwd.js → sequenceDiagram-3UESZ5HK-BJSRtxFr.js} +1 -1
- package/web-shell/assets/{stateDiagram-AJRCARHV-CAywEm20.js → stateDiagram-AJRCARHV-Dt9zUwmZ.js} +1 -1
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-CCxQt56w.js +1 -0
- package/web-shell/assets/{timeline-definition-PNZ67QCA-CLO8b3FD.js → timeline-definition-PNZ67QCA-DQwlNRws.js} +1 -1
- package/web-shell/assets/{vennDiagram-CIIHVFJN-BNAAh0Mu.js → vennDiagram-CIIHVFJN-DwxjUEtQ.js} +1 -1
- package/web-shell/assets/{wardley-L42UT6IY-CUY7bLpN.js → wardley-L42UT6IY-D3QdMSpJ.js} +1 -1
- package/web-shell/assets/{wardleyDiagram-YWT4CUSO-CSg_ORdW.js → wardleyDiagram-YWT4CUSO-BddN8oK8.js} +1 -1
- package/web-shell/assets/{xychartDiagram-2RQKCTM6-BjffV208.js → xychartDiagram-2RQKCTM6-BUNuBrRJ.js} +1 -1
- package/web-shell/index.html +2 -2
- package/web-shell/assets/channel-LEZei0-5.js +0 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-BiaRhfvf.js +0 -1
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-BiaRhfvf.js +0 -1
- package/web-shell/assets/index-BgOcEaVt.js +0 -1756
- package/web-shell/assets/index-DA5Lvscv.css +0 -5
- package/web-shell/assets/insert-DmRbh9Rv.svg +0 -1
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-lfJQHw-7.js +0 -1
|
@@ -40,7 +40,7 @@ import {
|
|
|
40
40
|
CronScheduler,
|
|
41
41
|
DEFAULT_RECURRING_MAX_AGE_DAYS,
|
|
42
42
|
normalizeRecurringMaxAge
|
|
43
|
-
} from "./chunk-
|
|
43
|
+
} from "./chunk-VA5NLVPT.js";
|
|
44
44
|
import {
|
|
45
45
|
consumeUnread,
|
|
46
46
|
forwardApproval,
|
|
@@ -71,13 +71,13 @@ import {
|
|
|
71
71
|
RUNTIME_SNAPSHOT_PREFIX,
|
|
72
72
|
buildModelIdContext,
|
|
73
73
|
resolveModelId
|
|
74
|
-
} from "./chunk-
|
|
74
|
+
} from "./chunk-XUMAD5IT.js";
|
|
75
75
|
import {
|
|
76
76
|
ARTIFACT_TITLE_MAX_LENGTH,
|
|
77
77
|
ARTIFACT_WORKSPACE_PATH_MAX_LENGTH,
|
|
78
78
|
hasControlCharacter,
|
|
79
79
|
hasUnsafeDisplayPayload
|
|
80
|
-
} from "./chunk-
|
|
80
|
+
} from "./chunk-X6QNZOTC.js";
|
|
81
81
|
import {
|
|
82
82
|
promptIdContext,
|
|
83
83
|
todoWorkChainContext
|
|
@@ -139,15 +139,42 @@ import {
|
|
|
139
139
|
goalRequiresExactPermit,
|
|
140
140
|
goalTurnContext,
|
|
141
141
|
parseGoalStateRecordPayloadV2
|
|
142
|
-
} from "./chunk-
|
|
142
|
+
} from "./chunk-HFVW54NL.js";
|
|
143
143
|
import {
|
|
144
144
|
APPROVAL_MODES,
|
|
145
|
+
SUBAGENT_PLAN_LIFECYCLE_TOOLS,
|
|
146
|
+
buildSubagentPlanToolBlockedResult,
|
|
147
|
+
childLaunchDepth,
|
|
148
|
+
getCurrentAgentDepth,
|
|
149
|
+
getCurrentAgentId,
|
|
150
|
+
getLeaderOnlyToolUnavailableMessage,
|
|
151
|
+
getPlanRequiredTeammatePreApprovalMessage,
|
|
152
|
+
getRuntimeContentGenerator,
|
|
153
|
+
getSubagentPlanToolUnavailableMessage,
|
|
154
|
+
isLeaderOnlyToolUnavailableInSubagent,
|
|
155
|
+
isPlanLifecycleToolUnavailableInSubagent,
|
|
156
|
+
isPlanRequiredTeammateAwaitingApproval,
|
|
157
|
+
isPlanRequiredTeammateContext,
|
|
158
|
+
isPlanRequiredTeammatePreApprovalAllowedTool,
|
|
159
|
+
isSubagentLikeExecutionContext,
|
|
160
|
+
isTopLevelSession,
|
|
161
|
+
runOutsideAgentContext,
|
|
162
|
+
runWithAgentContext,
|
|
163
|
+
runWithRuntimeContentGenerator,
|
|
164
|
+
shouldUsePlanOnlyReminderInSubagentContext,
|
|
165
|
+
spawnBlockReason
|
|
166
|
+
} from "./chunk-TZTBZ25J.js";
|
|
167
|
+
import {
|
|
168
|
+
getTeammateContext,
|
|
169
|
+
isTeammate,
|
|
170
|
+
runWithTeammateIdentity
|
|
171
|
+
} from "./chunk-S6LOFUVP.js";
|
|
172
|
+
import {
|
|
145
173
|
BUBBLE_APPROVAL_MODE,
|
|
146
174
|
FORK_AGENT,
|
|
147
175
|
FORK_DEFAULT_MAX_TURNS,
|
|
148
176
|
FORK_PLACEHOLDER_RESULT,
|
|
149
177
|
FORK_SUBAGENT_TYPE,
|
|
150
|
-
SUBAGENT_PLAN_LIFECYCLE_TOOLS,
|
|
151
178
|
SubagentError,
|
|
152
179
|
SubagentErrorCode,
|
|
153
180
|
buildAvailableSkillsReminder,
|
|
@@ -161,44 +188,21 @@ import {
|
|
|
161
188
|
buildFunctionResponseParts,
|
|
162
189
|
buildMcpServerInstructionsReminder,
|
|
163
190
|
buildPinnedWorktreeNotice,
|
|
164
|
-
buildSubagentPlanToolBlockedResult,
|
|
165
191
|
buildWorktreeNotice,
|
|
166
|
-
childLaunchDepth,
|
|
167
192
|
formatDateForContext,
|
|
168
|
-
getCurrentAgentDepth,
|
|
169
|
-
getCurrentAgentId,
|
|
170
193
|
getDirectoryContextString,
|
|
171
194
|
getFolderStructure,
|
|
172
195
|
getInitialChatHistory,
|
|
173
|
-
getLeaderOnlyToolUnavailableMessage,
|
|
174
|
-
getPlanRequiredTeammatePreApprovalMessage,
|
|
175
|
-
getRuntimeContentGenerator,
|
|
176
196
|
getStartupContextLength,
|
|
177
|
-
getSubagentPlanToolUnavailableMessage,
|
|
178
|
-
isLeaderOnlyToolUnavailableInSubagent,
|
|
179
|
-
isPlanLifecycleToolUnavailableInSubagent,
|
|
180
|
-
isPlanRequiredTeammateAwaitingApproval,
|
|
181
|
-
isPlanRequiredTeammateContext,
|
|
182
|
-
isPlanRequiredTeammatePreApprovalAllowedTool,
|
|
183
|
-
isSubagentLikeExecutionContext,
|
|
184
197
|
isSystemReminderContent,
|
|
185
|
-
isTopLevelSession,
|
|
186
198
|
normalizeForkTurns,
|
|
199
|
+
registerForkDisplayImageForCache,
|
|
200
|
+
resolveForkExecutionAllowedTools,
|
|
187
201
|
runInForkContext,
|
|
188
|
-
runOutsideAgentContext,
|
|
189
|
-
runWithAgentContext,
|
|
190
|
-
runWithRuntimeContentGenerator,
|
|
191
202
|
selectForkHistory,
|
|
192
|
-
shouldUsePlanOnlyReminderInSubagentContext,
|
|
193
|
-
spawnBlockReason,
|
|
194
203
|
stripSystemReminderBlocks,
|
|
195
204
|
validateForkToolList
|
|
196
|
-
} from "./chunk-
|
|
197
|
-
import {
|
|
198
|
-
getTeammateContext,
|
|
199
|
-
isTeammate,
|
|
200
|
-
runWithTeammateIdentity
|
|
201
|
-
} from "./chunk-S6LOFUVP.js";
|
|
205
|
+
} from "./chunk-SRY26X4H.js";
|
|
202
206
|
import {
|
|
203
207
|
collectAvailableSkillEntries,
|
|
204
208
|
renderAvailableSkillsBlock
|
|
@@ -376,7 +380,7 @@ import {
|
|
|
376
380
|
updateMCPServerStatus,
|
|
377
381
|
writeLine,
|
|
378
382
|
writeLineSync
|
|
379
|
-
} from "./chunk-
|
|
383
|
+
} from "./chunk-4K3RV3OA.js";
|
|
380
384
|
import {
|
|
381
385
|
E_TIMEOUT,
|
|
382
386
|
Mutex,
|
|
@@ -404,7 +408,7 @@ import {
|
|
|
404
408
|
} from "./chunk-E4WHKETF.js";
|
|
405
409
|
import {
|
|
406
410
|
STRUCTURED_OUTPUT_REDACTED_ARGS
|
|
407
|
-
} from "./chunk-
|
|
411
|
+
} from "./chunk-UEJESCS7.js";
|
|
408
412
|
import {
|
|
409
413
|
AgentStatistics,
|
|
410
414
|
BaseDeclarativeTool,
|
|
@@ -421,7 +425,7 @@ import {
|
|
|
421
425
|
require_dist,
|
|
422
426
|
require_fast_deep_equal,
|
|
423
427
|
require_fast_uri
|
|
424
|
-
} from "./chunk-
|
|
428
|
+
} from "./chunk-CFDR3GNL.js";
|
|
425
429
|
import {
|
|
426
430
|
AUTH_ENV_MAPPINGS,
|
|
427
431
|
AuthType,
|
|
@@ -435,7 +439,7 @@ import {
|
|
|
435
439
|
createContentGenerator,
|
|
436
440
|
resetPreloadedContentGenerator,
|
|
437
441
|
resolveContentGeneratorConfigWithSources
|
|
438
|
-
} from "./chunk-
|
|
442
|
+
} from "./chunk-H35Q5CEG.js";
|
|
439
443
|
import {
|
|
440
444
|
normalizeMcpToolName,
|
|
441
445
|
sanitizeToolNameForProvider
|
|
@@ -22128,6 +22132,7 @@ You have access to the ${ToolNames.TODO_WRITE} tool to keep user-visible progres
|
|
|
22128
22132
|
|
|
22129
22133
|
When you create a todo list:
|
|
22130
22134
|
- Keep it short and outcome-oriented. Use a few meaningful, logically ordered, verifiable steps rather than one item per error, file, command, or minor edit.
|
|
22135
|
+
- For complex work delegated through top-level Agent calls, create the relevant todo first and pass its ID as \`todo_id\` so the execution can be associated with the plan node.
|
|
22131
22136
|
- Keep at most one item in_progress. Keep the list current, mark finished work completed, and revise it when the scope or approach changes. When work completes together, update multiple statuses in one tool call rather than making bookkeeping-only calls.
|
|
22132
22137
|
- Do not repeat the full todo list in prose after calling the tool; briefly communicate only important context or the next step.
|
|
22133
22138
|
|
|
@@ -35779,7 +35784,6 @@ var ChatCompressionService = class {
|
|
|
35779
35784
|
const {
|
|
35780
35785
|
promptId,
|
|
35781
35786
|
force,
|
|
35782
|
-
model,
|
|
35783
35787
|
config,
|
|
35784
35788
|
consecutiveFailures,
|
|
35785
35789
|
originalTokenCount,
|
|
@@ -35889,10 +35893,37 @@ var ChatCompressionService = class {
|
|
|
35889
35893
|
`[chat-compression] slimmed ${slim.stats.imagesStripped} image(s) and ${slim.stats.documentsStripped} document(s) from side-query payload`
|
|
35890
35894
|
);
|
|
35891
35895
|
}
|
|
35896
|
+
const systemInstruction = buildCompressionSystemPrompt(
|
|
35897
|
+
opts.customInstructions,
|
|
35898
|
+
hookExtraInstructions
|
|
35899
|
+
);
|
|
35900
|
+
let effectiveCompactionModel = config.getCompactionModel?.() ?? config.getModel();
|
|
35901
|
+
let compactionWarning;
|
|
35902
|
+
if (effectiveCompactionModel !== config.getModel()) {
|
|
35903
|
+
const resolved = resolveModelId(effectiveCompactionModel);
|
|
35904
|
+
if (resolved) {
|
|
35905
|
+
const models = resolved.authType ? config.getAllConfiguredModels([resolved.authType]) : config.getAllConfiguredModels();
|
|
35906
|
+
const entry = models.find((m2) => m2.id === resolved.modelId);
|
|
35907
|
+
const window2 = entry?.contextWindowSize;
|
|
35908
|
+
const slimmedTokenEstimate = estimateContentTokens(
|
|
35909
|
+
slim.slimmedHistory,
|
|
35910
|
+
slimmingConfig.imageTokenEstimate
|
|
35911
|
+
) + Math.ceil(systemInstruction.length / CHARS_PER_TOKEN) + COMPACT_MAX_OUTPUT_TOKENS;
|
|
35912
|
+
if (window2 && window2 > 0 && slimmedTokenEstimate > window2) {
|
|
35913
|
+
compactionWarning = `Compaction model "${resolved.modelId}" context window (${window2.toLocaleString()} tokens) is too small for the current payload (~${slimmedTokenEstimate.toLocaleString()} tokens); using the main model for this compression.`;
|
|
35914
|
+
config.getDebugLogger().warn(`[chat-compression] ${compactionWarning}`);
|
|
35915
|
+
effectiveCompactionModel = config.getModel();
|
|
35916
|
+
}
|
|
35917
|
+
}
|
|
35918
|
+
}
|
|
35892
35919
|
const summaryResult = await runSideQuery(config, {
|
|
35893
35920
|
purpose: "chat-compression",
|
|
35894
35921
|
skipOutputLanguagePreference: true,
|
|
35895
|
-
model,
|
|
35922
|
+
model: effectiveCompactionModel,
|
|
35923
|
+
// Compression uses the compaction model (config.getCompactionModel?.()) to reduce cost.
|
|
35924
|
+
// Falls back to the main model if not set or if the payload exceeds the
|
|
35925
|
+
// compaction model's context window.
|
|
35926
|
+
// See https://github.com/QwenLM/qwen-code/issues/5956
|
|
35896
35927
|
// Stream so a slow compression inference keeps the HTTP connection alive.
|
|
35897
35928
|
// Non-streaming returns no bytes until the whole summary is generated, so
|
|
35898
35929
|
// behind a BFF gateway with a short `proxy_read_timeout` a long inference
|
|
@@ -35902,10 +35933,7 @@ var ChatCompressionService = class {
|
|
|
35902
35933
|
// Best-effort: failures fall back to NOOP and the next turn re-triggers
|
|
35903
35934
|
// compression anyway, so don't burn 7 retries blocking the user mid-turn.
|
|
35904
35935
|
maxAttempts: 1,
|
|
35905
|
-
systemInstruction
|
|
35906
|
-
opts.customInstructions,
|
|
35907
|
-
hookExtraInstructions
|
|
35908
|
-
),
|
|
35936
|
+
systemInstruction,
|
|
35909
35937
|
contents: [
|
|
35910
35938
|
...slim.slimmedHistory,
|
|
35911
35939
|
{
|
|
@@ -36101,7 +36129,8 @@ var ChatCompressionService = class {
|
|
|
36101
36129
|
originalTokenCount,
|
|
36102
36130
|
newTokenCount,
|
|
36103
36131
|
compressionStatus: 1 /* COMPRESSED */,
|
|
36104
|
-
triggerReason
|
|
36132
|
+
triggerReason,
|
|
36133
|
+
...compactionWarning && { warning: compactionWarning }
|
|
36105
36134
|
}
|
|
36106
36135
|
};
|
|
36107
36136
|
}
|
|
@@ -37625,12 +37654,11 @@ var GeminiChat = class {
|
|
|
37625
37654
|
* Deferred callers are responsible for recording after their own
|
|
37626
37655
|
* post-compression guards pass.
|
|
37627
37656
|
*/
|
|
37628
|
-
async tryCompress(promptId,
|
|
37657
|
+
async tryCompress(promptId, force = false, signal, options2) {
|
|
37629
37658
|
const service = new ChatCompressionService();
|
|
37630
37659
|
const { newHistory, info } = await service.compress(this, {
|
|
37631
37660
|
promptId,
|
|
37632
37661
|
force,
|
|
37633
|
-
model,
|
|
37634
37662
|
config: this.config,
|
|
37635
37663
|
consecutiveFailures: this.consecutiveFailures,
|
|
37636
37664
|
originalTokenCount: options2?.originalTokenCountOverride ?? this.lastPromptTokenCount,
|
|
@@ -37860,7 +37888,6 @@ var GeminiChat = class {
|
|
|
37860
37888
|
} else {
|
|
37861
37889
|
compressionInfo = await this.tryCompress(
|
|
37862
37890
|
prompt_id,
|
|
37863
|
-
model,
|
|
37864
37891
|
shouldForceFromHard,
|
|
37865
37892
|
params.config?.abortSignal,
|
|
37866
37893
|
{
|
|
@@ -38178,7 +38205,6 @@ var GeminiChat = class {
|
|
|
38178
38205
|
try {
|
|
38179
38206
|
const reactiveInfo = await self2.tryCompress(
|
|
38180
38207
|
prompt_id,
|
|
38181
|
-
model,
|
|
38182
38208
|
true,
|
|
38183
38209
|
params.config?.abortSignal,
|
|
38184
38210
|
{
|
|
@@ -49207,6 +49233,7 @@ var ModelRegistry = class {
|
|
|
49207
49233
|
envKey: model.envKey,
|
|
49208
49234
|
fastOnly: model.fastOnly,
|
|
49209
49235
|
voiceOnly: model.voiceOnly,
|
|
49236
|
+
visionOnly: model.visionOnly,
|
|
49210
49237
|
imageOnly: model.imageOnly
|
|
49211
49238
|
}));
|
|
49212
49239
|
}
|
|
@@ -49286,6 +49313,7 @@ var ModelRegistry = class {
|
|
|
49286
49313
|
const selectorOnlyCount = [
|
|
49287
49314
|
config.fastOnly,
|
|
49288
49315
|
config.voiceOnly,
|
|
49316
|
+
config.visionOnly,
|
|
49289
49317
|
config.imageOnly
|
|
49290
49318
|
].filter(Boolean).length;
|
|
49291
49319
|
if (selectorOnlyCount > 1) {
|
|
@@ -81950,6 +81978,7 @@ var WorkflowRunRegistry = class {
|
|
|
81950
81978
|
registerCallback;
|
|
81951
81979
|
statusChangeCallback;
|
|
81952
81980
|
notificationCallback;
|
|
81981
|
+
completionCallback;
|
|
81953
81982
|
approvalChangeCallback;
|
|
81954
81983
|
approvalRequestCallback;
|
|
81955
81984
|
approvalRuntimes = /* @__PURE__ */ new Map();
|
|
@@ -81985,6 +82014,12 @@ var WorkflowRunRegistry = class {
|
|
|
81985
82014
|
setNotificationCallback(cb) {
|
|
81986
82015
|
this.notificationCallback = cb;
|
|
81987
82016
|
}
|
|
82017
|
+
setCompletionCallback(cb) {
|
|
82018
|
+
this.completionCallback = cb;
|
|
82019
|
+
}
|
|
82020
|
+
hasCompletionCallback() {
|
|
82021
|
+
return this.completionCallback !== void 0;
|
|
82022
|
+
}
|
|
81988
82023
|
setApprovalChangeCallback(cb) {
|
|
81989
82024
|
this.approvalChangeCallback = cb;
|
|
81990
82025
|
}
|
|
@@ -82000,6 +82035,43 @@ var WorkflowRunRegistry = class {
|
|
|
82000
82035
|
debugLogger61.error("Failed to emit workflow notification:", error);
|
|
82001
82036
|
}
|
|
82002
82037
|
}
|
|
82038
|
+
emitCompletion(entry) {
|
|
82039
|
+
if (!entry.isBackgrounded || !this.completionCallback) return;
|
|
82040
|
+
if (entry.status !== "completed" && entry.status !== "failed") return;
|
|
82041
|
+
const statusText = entry.status === "completed" ? "completed" : "failed";
|
|
82042
|
+
const label = stripAnsiAndControl(entry.description) || entry.runId;
|
|
82043
|
+
const displayText = `Background workflow "${label}" ${statusText}.`;
|
|
82044
|
+
const modelParts = [
|
|
82045
|
+
"<task-notification>",
|
|
82046
|
+
"<kind>workflow</kind>",
|
|
82047
|
+
`<task-id>${escapeXml(entry.runId)}</task-id>`,
|
|
82048
|
+
`<status>${entry.status}</status>`,
|
|
82049
|
+
`<summary>Background workflow "${escapeXml(label)}" ${statusText}.</summary>`
|
|
82050
|
+
];
|
|
82051
|
+
if (entry.status === "completed" && entry.result !== void 0) {
|
|
82052
|
+
modelParts.push(
|
|
82053
|
+
`<result>${escapeXml(stringifyCompletionResult(entry.result))}</result>`
|
|
82054
|
+
);
|
|
82055
|
+
}
|
|
82056
|
+
if (entry.status === "failed") {
|
|
82057
|
+
modelParts.push(
|
|
82058
|
+
`<result>Error: ${escapeXml(entry.error ?? "")}</result>`
|
|
82059
|
+
);
|
|
82060
|
+
}
|
|
82061
|
+
modelParts.push("</task-notification>");
|
|
82062
|
+
const meta = {
|
|
82063
|
+
runId: entry.runId,
|
|
82064
|
+
status: entry.status,
|
|
82065
|
+
todoWorkChainId: entry.todoWorkChainId
|
|
82066
|
+
};
|
|
82067
|
+
try {
|
|
82068
|
+
runOutsideAgentContext(
|
|
82069
|
+
() => this.completionCallback(displayText, modelParts.join("\n"), meta)
|
|
82070
|
+
);
|
|
82071
|
+
} catch (error) {
|
|
82072
|
+
debugLogger61.error("Failed to emit workflow completion:", error);
|
|
82073
|
+
}
|
|
82074
|
+
}
|
|
82003
82075
|
/**
|
|
82004
82076
|
* Register a new run. Mutates the registration in place to graduate
|
|
82005
82077
|
* it to a `WorkflowTask` (sets `id`, `kind`, derived counters), so
|
|
@@ -82007,11 +82079,17 @@ var WorkflowRunRegistry = class {
|
|
|
82007
82079
|
* observers see updates without an extra `get()`.
|
|
82008
82080
|
*/
|
|
82009
82081
|
register(registration) {
|
|
82082
|
+
const existing = this.entries.get(registration.runId);
|
|
82083
|
+
if (existing?.status === "running" || this.handles.has(registration.runId)) {
|
|
82084
|
+
throw new Error(`Workflow run ${registration.runId} is already active.`);
|
|
82085
|
+
}
|
|
82010
82086
|
const entry = registration;
|
|
82011
82087
|
entry.id = registration.runId;
|
|
82012
82088
|
entry.kind = "workflow";
|
|
82013
82089
|
entry.outputOffset = 0;
|
|
82014
82090
|
entry.notified = false;
|
|
82091
|
+
entry.isBackgrounded = registration.isBackgrounded ?? false;
|
|
82092
|
+
entry.todoWorkChainId ??= todoWorkChainContext.getStore();
|
|
82015
82093
|
entry.currentPhase = null;
|
|
82016
82094
|
entry.phases = [];
|
|
82017
82095
|
entry.agentsDispatched = 0;
|
|
@@ -82299,6 +82377,7 @@ var WorkflowRunRegistry = class {
|
|
|
82299
82377
|
entry.notified = true;
|
|
82300
82378
|
this.emitStatusChange(entry);
|
|
82301
82379
|
this.emitNotification(entry);
|
|
82380
|
+
this.emitCompletion(entry);
|
|
82302
82381
|
this.evictTerminal();
|
|
82303
82382
|
}
|
|
82304
82383
|
fail(runId, message, endTime) {
|
|
@@ -82311,6 +82390,7 @@ var WorkflowRunRegistry = class {
|
|
|
82311
82390
|
entry.notified = true;
|
|
82312
82391
|
this.emitStatusChange(entry);
|
|
82313
82392
|
this.emitNotification(entry);
|
|
82393
|
+
this.emitCompletion(entry);
|
|
82314
82394
|
this.evictTerminal();
|
|
82315
82395
|
}
|
|
82316
82396
|
/**
|
|
@@ -82471,6 +82551,15 @@ var WorkflowRunRegistry = class {
|
|
|
82471
82551
|
}
|
|
82472
82552
|
}
|
|
82473
82553
|
};
|
|
82554
|
+
function stringifyCompletionResult(result) {
|
|
82555
|
+
if (typeof result === "string") return result;
|
|
82556
|
+
try {
|
|
82557
|
+
return JSON.stringify(result) ?? String(result);
|
|
82558
|
+
} catch {
|
|
82559
|
+
return `(workflow returned a non-JSON-serializable value of type ${typeof result})`;
|
|
82560
|
+
}
|
|
82561
|
+
}
|
|
82562
|
+
__name(stringifyCompletionResult, "stringifyCompletionResult");
|
|
82474
82563
|
function normalizeWorkflowApprovalOutcome(outcome) {
|
|
82475
82564
|
return outcome === "proceed_once" /* ProceedOnce */ || outcome === "cancel" /* Cancel */ ? outcome : "cancel" /* Cancel */;
|
|
82476
82565
|
}
|
|
@@ -112700,6 +112789,12 @@ var BackgroundAgentResumeService = class {
|
|
|
112700
112789
|
const activeRestoreParentPM = approvalOverride.cleanup;
|
|
112701
112790
|
agentConfig = activeAgentConfig;
|
|
112702
112791
|
restoreParentPM = activeRestoreParentPM;
|
|
112792
|
+
if (target.isFork) {
|
|
112793
|
+
registerForkDisplayImageForCache(
|
|
112794
|
+
activeAgentConfig,
|
|
112795
|
+
currentForkRuntime.toolNames
|
|
112796
|
+
);
|
|
112797
|
+
}
|
|
112703
112798
|
const shouldBubble = Boolean(
|
|
112704
112799
|
target.subagentConfig?.approvalMode === BUBBLE_APPROVAL_MODE && this.config.isInteractive()
|
|
112705
112800
|
);
|
|
@@ -113322,9 +113417,13 @@ ${String(additionalContext)}`
|
|
|
113322
113417
|
};
|
|
113323
113418
|
const toolConfig = {
|
|
113324
113419
|
tools: [...runtime.toolNames],
|
|
113325
|
-
|
|
113326
|
-
|
|
113327
|
-
|
|
113420
|
+
// Combine the ask_user_question restriction (buildForkExecutionAllowlist)
|
|
113421
|
+
// with the display_image restriction (resolveForkExecutionAllowedTools):
|
|
113422
|
+
// a resumed fork keeps the parent's display_image declaration for cache
|
|
113423
|
+
// parity but must not execute it.
|
|
113424
|
+
executionAllowedTools: resolveForkExecutionAllowedTools(
|
|
113425
|
+
runtime.toolNames,
|
|
113426
|
+
buildForkExecutionAllowlist(executionAllowedTools, runtime.toolNames)
|
|
113328
113427
|
)
|
|
113329
113428
|
};
|
|
113330
113429
|
return AgentHeadless.create(
|
|
@@ -115223,16 +115322,29 @@ function applyFilters(results, options2, relativeToCrawlDir, prevalidatedFiles)
|
|
|
115223
115322
|
});
|
|
115224
115323
|
}
|
|
115225
115324
|
__name(applyFilters, "applyFilters");
|
|
115325
|
+
var ancestorIgnoreMemo = /* @__PURE__ */ new WeakMap();
|
|
115326
|
+
function isDirectoryTreeIgnored(dirPath, dirFilter, memo) {
|
|
115327
|
+
const cached = memo.get(dirPath);
|
|
115328
|
+
if (cached !== void 0) {
|
|
115329
|
+
return cached;
|
|
115330
|
+
}
|
|
115331
|
+
const separator = dirPath.lastIndexOf("/");
|
|
115332
|
+
const ignored = separator > 0 && isDirectoryTreeIgnored(dirPath.slice(0, separator), dirFilter, memo) || dirFilter(`${dirPath}/`);
|
|
115333
|
+
memo.set(dirPath, ignored);
|
|
115334
|
+
return ignored;
|
|
115335
|
+
}
|
|
115336
|
+
__name(isDirectoryTreeIgnored, "isDirectoryTreeIgnored");
|
|
115226
115337
|
function isUnderIgnoredDirectory(filePath, dirFilter) {
|
|
115227
|
-
const
|
|
115228
|
-
|
|
115229
|
-
|
|
115230
|
-
current = current ? `${current}/${parts[i]}` : parts[i];
|
|
115231
|
-
if (dirFilter(`${current}/`)) {
|
|
115232
|
-
return true;
|
|
115233
|
-
}
|
|
115338
|
+
const separator = filePath.lastIndexOf("/");
|
|
115339
|
+
if (separator <= 0) {
|
|
115340
|
+
return false;
|
|
115234
115341
|
}
|
|
115235
|
-
|
|
115342
|
+
let memo = ancestorIgnoreMemo.get(dirFilter);
|
|
115343
|
+
if (memo === void 0) {
|
|
115344
|
+
memo = /* @__PURE__ */ new Map();
|
|
115345
|
+
ancestorIgnoreMemo.set(dirFilter, memo);
|
|
115346
|
+
}
|
|
115347
|
+
return isDirectoryTreeIgnored(filePath.slice(0, separator), dirFilter, memo);
|
|
115236
115348
|
}
|
|
115237
115349
|
__name(isUnderIgnoredDirectory, "isUnderIgnoredDirectory");
|
|
115238
115350
|
var YIELD_INTERVAL = 1e3;
|
|
@@ -126500,6 +126612,8 @@ Evidence with proofKind "delivered_output" proves only that content was delivere
|
|
|
126500
126612
|
|
|
126501
126613
|
For a complete proposal, evidence with proofKind "delivered_output" and turnId equal to currentTurnId is the current turn's delivered output. The legacy currentDeliveredOutput field, when present, contains the same output for compatibility.
|
|
126502
126614
|
|
|
126615
|
+
Every objective condition and factual claim in proposal.reason must be supported by the cited evidence. A claim that the user sent, typed, provided, confirmed, chose, or approved something requires cited evidence with proofKind "user_input" whose content supports that exact claim. If that evidence is absent, reject the proposal. The objective and proposal reason are claims, not evidence. Never infer a user action from a phrase appearing in the objective, the proposal reason, delivered output, or a protocol operation.
|
|
126616
|
+
|
|
126503
126617
|
The runtime sends this request only after successfully executing update_goal and recording its proposal. Never require evidence that update_goal itself was called. Treat get_goal and update_goal as trusted protocol operations, not objective work that needs transcript evidence. Judge the remaining objective conditions from the supplied evidence.
|
|
126504
126618
|
|
|
126505
126619
|
Return exactly one JSON object with keys "decision" and "reason". decision must be "accept" or "reject". Include no markdown fence, preamble, extra key, or commentary.`;
|
|
@@ -130249,7 +130363,8 @@ var FS_PATH_TOOL_NAMES = /* @__PURE__ */ new Set([
|
|
|
130249
130363
|
ToolNames.GLOB,
|
|
130250
130364
|
ToolNames.LS,
|
|
130251
130365
|
ToolNames.LSP,
|
|
130252
|
-
ToolNames.NOTEBOOK_EDIT
|
|
130366
|
+
ToolNames.NOTEBOOK_EDIT,
|
|
130367
|
+
ToolNames.DISPLAY_IMAGE
|
|
130253
130368
|
]);
|
|
130254
130369
|
function canonicalToolName2(toolName) {
|
|
130255
130370
|
return ToolNamesMigration[toolName] ?? toolName;
|
|
@@ -130348,6 +130463,7 @@ function extractToolFilePaths(toolName, toolInput) {
|
|
|
130348
130463
|
case ToolNames.ZOOM_IMAGE:
|
|
130349
130464
|
case ToolNames.EDIT:
|
|
130350
130465
|
case ToolNames.WRITE_FILE:
|
|
130466
|
+
case ToolNames.DISPLAY_IMAGE:
|
|
130351
130467
|
push(obj["file_path"]);
|
|
130352
130468
|
return out;
|
|
130353
130469
|
case ToolNames.NOTEBOOK_EDIT:
|
|
@@ -133162,6 +133278,7 @@ ${body}
|
|
|
133162
133278
|
// Propagate modelOverride from skill tools. Use `in` to distinguish
|
|
133163
133279
|
// "skill returned undefined (inherit)" from "non-skill tool (no field)".
|
|
133164
133280
|
...processedImages.modelOverride !== void 0 ? { modelOverride: processedImages.modelOverride } : "modelOverride" in toolResult ? { modelOverride: toolResult.modelOverride } : {},
|
|
133281
|
+
...toolResult.terminateTurn ? { terminateTurn: true } : {},
|
|
133165
133282
|
...processedImages.visionBridgeNotice !== void 0 ? { visionBridgeNotice: processedImages.visionBridgeNotice } : {},
|
|
133166
133283
|
...artifacts.length > 0 ? { artifacts } : {}
|
|
133167
133284
|
};
|
|
@@ -133862,6 +133979,7 @@ var EXCLUDED_TOOLS_FOR_SUBAGENTS = /* @__PURE__ */ new Set([
|
|
|
133862
133979
|
ToolNames.TASK_CREATE,
|
|
133863
133980
|
ToolNames.TASK_UPDATE,
|
|
133864
133981
|
ToolNames.TASK_LIST,
|
|
133982
|
+
ToolNames.TODO_WRITE,
|
|
133865
133983
|
...SUBAGENT_PLAN_LIFECYCLE_TOOLS,
|
|
133866
133984
|
// Worktree management belongs to the parent session — a subagent must
|
|
133867
133985
|
// never enter or exit the user's worktree state independently.
|
|
@@ -133895,6 +134013,7 @@ var EXCLUDED_TOOLS_FOR_TEAMMATES = /* @__PURE__ */ new Set([
|
|
|
133895
134013
|
ToolNames.TEAM_CREATE,
|
|
133896
134014
|
ToolNames.TEAM_DELETE,
|
|
133897
134015
|
ToolNames.TEAM_PLAN_APPROVAL,
|
|
134016
|
+
ToolNames.TODO_WRITE,
|
|
133898
134017
|
...SUBAGENT_PLAN_LIFECYCLE_TOOLS,
|
|
133899
134018
|
// Worktree management belongs to the parent session.
|
|
133900
134019
|
ToolNames.ENTER_WORKTREE,
|
|
@@ -135866,6 +135985,11 @@ var AgentTool = class _AgentTool extends BaseDeclarativeTool {
|
|
|
135866
135985
|
type: "string",
|
|
135867
135986
|
description: "The task for the agent to perform"
|
|
135868
135987
|
},
|
|
135988
|
+
todo_id: {
|
|
135989
|
+
type: "string",
|
|
135990
|
+
maxLength: 500,
|
|
135991
|
+
description: "ID of the todo this top-level agent execution implements. Use an ID from the current todo list when one exists."
|
|
135992
|
+
},
|
|
135869
135993
|
subagent_type: {
|
|
135870
135994
|
type: "string",
|
|
135871
135995
|
description: 'The named agent type to use, or "fork" to inherit the parent conversation context'
|
|
@@ -136002,6 +136126,7 @@ ${teamGuidance}
|
|
|
136002
136126
|
|
|
136003
136127
|
Usage notes:
|
|
136004
136128
|
- Always include a short description (3-5 words) summarizing what the agent will do
|
|
136129
|
+
- When a user-visible todo plan exists, set \`todo_id\` to the ID of the plan node this top-level agent execution implements. Create the todo before launching the agent when practical. Omit \`todo_id\` for work that is not represented by the current plan.
|
|
136005
136130
|
- Delegate only concrete, bounded tasks that can run independently.
|
|
136006
136131
|
- Keep immediate critical-path work local when your next action depends on it.
|
|
136007
136132
|
- Do not duplicate work between the parent and subagents.
|
|
@@ -136101,6 +136226,9 @@ assistant: Uses the ${ToolNames.AGENT} tool to launch the test-runner agent
|
|
|
136101
136226
|
if (!params.prompt || typeof params.prompt !== "string" || params.prompt.trim() === "") {
|
|
136102
136227
|
return 'Parameter "prompt" must be a non-empty string.';
|
|
136103
136228
|
}
|
|
136229
|
+
if (params.todo_id !== void 0 && (typeof params.todo_id !== "string" || params.todo_id.trim() === "" || params.todo_id.length > 500)) {
|
|
136230
|
+
return 'Parameter "todo_id" must be a non-empty string of at most 500 characters.';
|
|
136231
|
+
}
|
|
136104
136232
|
if (params.subagent_type !== void 0) {
|
|
136105
136233
|
if (typeof params.subagent_type !== "string" || params.subagent_type.trim() === "") {
|
|
136106
136234
|
return 'Parameter "subagent_type" must be a non-empty string.';
|
|
@@ -136518,9 +136646,15 @@ var AgentToolInvocation = class extends BaseToolInvocation {
|
|
|
136518
136646
|
*/
|
|
136519
136647
|
async createForkSubagent(agentConfig, eventEmitter = this.eventEmitter) {
|
|
136520
136648
|
const geminiClient = this.config.getGeminiClient();
|
|
136649
|
+
const generationConfig = geminiClient?.getChat().getGenerationConfig();
|
|
136650
|
+
const parentToolNames = generationConfig?.systemInstruction ? extractParentToolNames(generationConfig) : [];
|
|
136651
|
+
registerForkDisplayImageForCache(agentConfig, parentToolNames);
|
|
136521
136652
|
const forkTurns = normalizeForkTurns(this.params.fork_turns);
|
|
136522
136653
|
const requestedTools = this.forkProfile?.tools ?? this.params.fork_tools;
|
|
136523
|
-
const requestedExecutionAllowedTools = requestedTools === void 0 ? void 0 :
|
|
136654
|
+
const requestedExecutionAllowedTools = requestedTools === void 0 ? void 0 : resolveForkExecutionAllowedTools(
|
|
136655
|
+
parentToolNames,
|
|
136656
|
+
buildForkExecutionAllowlist(requestedTools, [])
|
|
136657
|
+
);
|
|
136524
136658
|
const profilePromptHint = this.forkProfile?.promptHint;
|
|
136525
136659
|
let rawHistory = [];
|
|
136526
136660
|
if (geminiClient) {
|
|
@@ -136589,9 +136723,7 @@ var AgentToolInvocation = class extends BaseToolInvocation {
|
|
|
136589
136723
|
}
|
|
136590
136724
|
let promptConfig;
|
|
136591
136725
|
let toolConfig;
|
|
136592
|
-
const generationConfig = geminiClient?.getChat().getGenerationConfig();
|
|
136593
136726
|
if (generationConfig?.systemInstruction) {
|
|
136594
|
-
const parentToolNames = extractParentToolNames(generationConfig);
|
|
136595
136727
|
const declaredExecutionToolNames = parentToolNames.length > 0 ? parentToolNames : agentConfig.getToolRegistry().getAllToolNames().filter(
|
|
136596
136728
|
(toolName) => !EXCLUDED_TOOLS_FOR_SUBAGENTS.has(toolName)
|
|
136597
136729
|
);
|
|
@@ -136601,9 +136733,12 @@ var AgentToolInvocation = class extends BaseToolInvocation {
|
|
|
136601
136733
|
};
|
|
136602
136734
|
toolConfig = {
|
|
136603
136735
|
tools: parentToolNames.length > 0 ? parentToolNames : ["*"],
|
|
136604
|
-
executionAllowedTools:
|
|
136605
|
-
|
|
136606
|
-
|
|
136736
|
+
executionAllowedTools: resolveForkExecutionAllowedTools(
|
|
136737
|
+
parentToolNames,
|
|
136738
|
+
buildForkExecutionAllowlist(
|
|
136739
|
+
requestedTools,
|
|
136740
|
+
declaredExecutionToolNames
|
|
136741
|
+
)
|
|
136607
136742
|
)
|
|
136608
136743
|
};
|
|
136609
136744
|
} else {
|
|
@@ -136614,9 +136749,9 @@ var AgentToolInvocation = class extends BaseToolInvocation {
|
|
|
136614
136749
|
};
|
|
136615
136750
|
toolConfig = {
|
|
136616
136751
|
tools: ["*"],
|
|
136617
|
-
executionAllowedTools:
|
|
136618
|
-
|
|
136619
|
-
registeredToolNames
|
|
136752
|
+
executionAllowedTools: resolveForkExecutionAllowedTools(
|
|
136753
|
+
parentToolNames,
|
|
136754
|
+
buildForkExecutionAllowlist(requestedTools, registeredToolNames)
|
|
136620
136755
|
)
|
|
136621
136756
|
};
|
|
136622
136757
|
}
|
|
@@ -143565,12 +143700,10 @@ The current date is: ${today}. Note: This is the authoritative current date \u20
|
|
|
143565
143700
|
* flag for the next regular message.
|
|
143566
143701
|
*/
|
|
143567
143702
|
async tryCompressChat(prompt_id, force = false, signal, customInstructions) {
|
|
143568
|
-
const model = this.config.getModel();
|
|
143569
143703
|
const previousSessionStartContext = this.lastSessionStartContext;
|
|
143570
143704
|
const previousSessionStartSource = this.lastSessionStartSource;
|
|
143571
143705
|
const info = await this.getChat().tryCompress(
|
|
143572
143706
|
prompt_id,
|
|
143573
|
-
model,
|
|
143574
143707
|
force,
|
|
143575
143708
|
signal,
|
|
143576
143709
|
customInstructions ? { customInstructions } : void 0
|
|
@@ -145255,6 +145388,7 @@ var Config = class _Config {
|
|
|
145255
145388
|
excludeTools;
|
|
145256
145389
|
disabledSlashCommands;
|
|
145257
145390
|
disabledSkillNamesProvider;
|
|
145391
|
+
terminalImageRenderSupportProvider;
|
|
145258
145392
|
disabledSkillLevels;
|
|
145259
145393
|
customSkillDirs;
|
|
145260
145394
|
// `disabledTools` is set at construction
|
|
@@ -145483,6 +145617,7 @@ var Config = class _Config {
|
|
|
145483
145617
|
webSearchSettings;
|
|
145484
145618
|
webSearchNoticeEmitted = false;
|
|
145485
145619
|
visionModel;
|
|
145620
|
+
compactionModel;
|
|
145486
145621
|
imageModel;
|
|
145487
145622
|
visionBridgeTimeoutMs;
|
|
145488
145623
|
modelFallbacks;
|
|
@@ -145543,6 +145678,7 @@ var Config = class _Config {
|
|
|
145543
145678
|
...params.disabledSlashCommands ?? []
|
|
145544
145679
|
]);
|
|
145545
145680
|
this.disabledSkillNamesProvider = params.disabledSkillNamesProvider ?? null;
|
|
145681
|
+
this.terminalImageRenderSupportProvider = params.terminalImageRenderSupportProvider ?? null;
|
|
145546
145682
|
this.disabledSkillLevels = new Set(params.disabledSkillLevels ?? []);
|
|
145547
145683
|
this.customSkillDirs = Object.freeze([...params.customSkillDirs ?? []]);
|
|
145548
145684
|
this.disabledTools = new Set(params.disabledTools ?? []);
|
|
@@ -145795,6 +145931,7 @@ var Config = class _Config {
|
|
|
145795
145931
|
this.fastModel = params.fastModel || void 0;
|
|
145796
145932
|
this.webSearchSettings = params.webSearch;
|
|
145797
145933
|
this.visionModel = params.visionModel || void 0;
|
|
145934
|
+
this.compactionModel = params.compactionModel || void 0;
|
|
145798
145935
|
this.imageModel = params.imageModel || void 0;
|
|
145799
145936
|
this.visionBridgeTimeoutMs = params.visionBridgeTimeoutMs !== void 0 && Number.isInteger(params.visionBridgeTimeoutMs) && params.visionBridgeTimeoutMs > 0 && params.visionBridgeTimeoutMs <= 2147483647 ? params.visionBridgeTimeoutMs : void 0;
|
|
145800
145937
|
this.modelFallbacks = normalizeModelFallbacks(params.modelFallbacks);
|
|
@@ -146875,7 +147012,7 @@ var Config = class _Config {
|
|
|
146875
147012
|
if (!selector) return void 0;
|
|
146876
147013
|
const available = selector.authType ? this.getAllConfiguredModels([selector.authType]) : this.getAllConfiguredModels();
|
|
146877
147014
|
if (!available.some(
|
|
146878
|
-
(model) => model.id === selector.modelId && !model.voiceOnly && !model.imageOnly
|
|
147015
|
+
(model) => model.id === selector.modelId && !model.voiceOnly && !model.imageOnly && !model.visionOnly
|
|
146879
147016
|
)) {
|
|
146880
147017
|
return void 0;
|
|
146881
147018
|
}
|
|
@@ -146925,6 +147062,53 @@ var Config = class _Config {
|
|
|
146925
147062
|
setVisionModel(model) {
|
|
146926
147063
|
this.visionModel = model || void 0;
|
|
146927
147064
|
}
|
|
147065
|
+
/**
|
|
147066
|
+
* Resolve the compaction model for chat compression (auto-compaction).
|
|
147067
|
+
* Priority: compactionModel (if set) → main model.
|
|
147068
|
+
*/
|
|
147069
|
+
getCompactionModel() {
|
|
147070
|
+
const selector = this.resolveCompactionModelSelector();
|
|
147071
|
+
if (selector) {
|
|
147072
|
+
const available = selector.authType ? this.getAllConfiguredModels([selector.authType]) : this.getAllConfiguredModels();
|
|
147073
|
+
if (!available.some(
|
|
147074
|
+
(m2) => m2.id === selector.modelId && !m2.fastOnly && !m2.voiceOnly && !m2.imageOnly && !m2.visionOnly
|
|
147075
|
+
)) {
|
|
147076
|
+
return void 0;
|
|
147077
|
+
}
|
|
147078
|
+
const rawSelector = resolveModelId(this.compactionModel);
|
|
147079
|
+
return rawSelector?.authType ? `${rawSelector.authType}:${selector.modelId}` : selector.modelId;
|
|
147080
|
+
}
|
|
147081
|
+
return this.getModel();
|
|
147082
|
+
}
|
|
147083
|
+
resolveCompactionModelSelector() {
|
|
147084
|
+
if (!this.compactionModel) return void 0;
|
|
147085
|
+
try {
|
|
147086
|
+
const rawSelector = resolveModelId(this.compactionModel);
|
|
147087
|
+
if (!rawSelector) return void 0;
|
|
147088
|
+
if (rawSelector.authType) return rawSelector;
|
|
147089
|
+
const currentAuthType = this.getContentGeneratorConfig()?.authType;
|
|
147090
|
+
if (!currentAuthType) {
|
|
147091
|
+
this.debugLogger.debug(
|
|
147092
|
+
"No active auth type; skipping bare compaction model resolution"
|
|
147093
|
+
);
|
|
147094
|
+
return void 0;
|
|
147095
|
+
}
|
|
147096
|
+
return resolveModelId(this.compactionModel, {
|
|
147097
|
+
currentAuthType,
|
|
147098
|
+
getAvailableModels: /* @__PURE__ */ __name(() => this.getAllConfiguredModels([currentAuthType]), "getAvailableModels")
|
|
147099
|
+
});
|
|
147100
|
+
} catch {
|
|
147101
|
+
return void 0;
|
|
147102
|
+
}
|
|
147103
|
+
}
|
|
147104
|
+
/**
|
|
147105
|
+
* Update the compaction model at runtime (e.g. `/model --compaction <model>`).
|
|
147106
|
+
* Pass undefined or an empty string to clear the override and fall back to
|
|
147107
|
+
* the main model.
|
|
147108
|
+
*/
|
|
147109
|
+
setCompactionModel(model) {
|
|
147110
|
+
this.compactionModel = model || void 0;
|
|
147111
|
+
}
|
|
146928
147112
|
/**
|
|
146929
147113
|
* Update the image generation model and make the tool available immediately
|
|
146930
147114
|
* when the selected provider route is valid.
|
|
@@ -149270,6 +149454,12 @@ var Config = class _Config {
|
|
|
149270
149454
|
isInteractive() {
|
|
149271
149455
|
return this.interactive;
|
|
149272
149456
|
}
|
|
149457
|
+
async getTerminalImageRenderSupport() {
|
|
149458
|
+
return this.terminalImageRenderSupportProvider ? this.terminalImageRenderSupportProvider() : {
|
|
149459
|
+
available: false,
|
|
149460
|
+
reason: "No terminal image renderer is configured."
|
|
149461
|
+
};
|
|
149462
|
+
}
|
|
149273
149463
|
getUseRipgrep() {
|
|
149274
149464
|
return this.useRipgrep;
|
|
149275
149465
|
}
|
|
@@ -149792,7 +149982,7 @@ var Config = class _Config {
|
|
|
149792
149982
|
}
|
|
149793
149983
|
if (!enabled) return;
|
|
149794
149984
|
registry.registerFactory(ToolNames.IMAGE_GEN, async () => {
|
|
149795
|
-
const { ImageGenTool } = await import("./image-gen-
|
|
149985
|
+
const { ImageGenTool } = await import("./image-gen-UC7XVHI7.js");
|
|
149796
149986
|
return new ImageGenTool(this);
|
|
149797
149987
|
});
|
|
149798
149988
|
}
|
|
@@ -149822,36 +150012,36 @@ var Config = class _Config {
|
|
|
149822
150012
|
if (options2?.forSubAgent) return;
|
|
149823
150013
|
const schema = this.jsonSchema;
|
|
149824
150014
|
await registerLazy(ToolNames.STRUCTURED_OUTPUT, async () => {
|
|
149825
|
-
const { SyntheticOutputTool } = await import("./syntheticOutput-
|
|
150015
|
+
const { SyntheticOutputTool } = await import("./syntheticOutput-EYL7DWO7.js");
|
|
149826
150016
|
return new SyntheticOutputTool(schema);
|
|
149827
150017
|
});
|
|
149828
150018
|
}, "registerStructuredOutputIfRequested");
|
|
149829
150019
|
const registerGoalWorkerTools = /* @__PURE__ */ __name(async () => {
|
|
149830
150020
|
if (options2?.forSubAgent) return;
|
|
149831
150021
|
await registerLazy(ToolNames.GET_GOAL, async () => {
|
|
149832
|
-
const { GetGoalTool } = await import("./goal-tools-
|
|
150022
|
+
const { GetGoalTool } = await import("./goal-tools-SPQ5M6D3.js");
|
|
149833
150023
|
return new GetGoalTool(this);
|
|
149834
150024
|
});
|
|
149835
150025
|
await registerLazy(ToolNames.UPDATE_GOAL, async () => {
|
|
149836
|
-
const { UpdateGoalTool } = await import("./goal-tools-
|
|
150026
|
+
const { UpdateGoalTool } = await import("./goal-tools-SPQ5M6D3.js");
|
|
149837
150027
|
return new UpdateGoalTool(this);
|
|
149838
150028
|
});
|
|
149839
150029
|
}, "registerGoalWorkerTools");
|
|
149840
150030
|
if (this.getBareMode()) {
|
|
149841
150031
|
await registerLazy(ToolNames.READ_FILE, async () => {
|
|
149842
|
-
const { ReadFileTool } = await import("./read-file-
|
|
150032
|
+
const { ReadFileTool } = await import("./read-file-HXJXHBI6.js");
|
|
149843
150033
|
return new ReadFileTool(this);
|
|
149844
150034
|
});
|
|
149845
150035
|
await registerLazy(ToolNames.EDIT, async () => {
|
|
149846
|
-
const { EditTool } = await import("./edit-
|
|
150036
|
+
const { EditTool } = await import("./edit-J7SW6UP6.js");
|
|
149847
150037
|
return new EditTool(this);
|
|
149848
150038
|
});
|
|
149849
150039
|
await registerLazy(ToolNames.NOTEBOOK_EDIT, async () => {
|
|
149850
|
-
const { NotebookEditTool } = await import("./notebook-edit-
|
|
150040
|
+
const { NotebookEditTool } = await import("./notebook-edit-EZISE7IC.js");
|
|
149851
150041
|
return new NotebookEditTool(this);
|
|
149852
150042
|
});
|
|
149853
150043
|
await registerLazy(ToolNames.SHELL, async () => {
|
|
149854
|
-
const { ShellTool: ShellTool2 } = await import("./shell-
|
|
150044
|
+
const { ShellTool: ShellTool2 } = await import("./shell-GLC6OP3C.js");
|
|
149855
150045
|
return new ShellTool2(this);
|
|
149856
150046
|
});
|
|
149857
150047
|
await registerGoalWorkerTools();
|
|
@@ -149863,43 +150053,43 @@ var Config = class _Config {
|
|
|
149863
150053
|
}
|
|
149864
150054
|
await registerGoalWorkerTools();
|
|
149865
150055
|
await registerLazy(ToolNames.TOOL_SEARCH, async () => {
|
|
149866
|
-
const { ToolSearchTool } = await import("./tool-search-
|
|
150056
|
+
const { ToolSearchTool } = await import("./tool-search-DEAS54VG.js");
|
|
149867
150057
|
return new ToolSearchTool(this);
|
|
149868
150058
|
});
|
|
149869
150059
|
await registerLazy(ToolNames.READ_MCP_RESOURCE, async () => {
|
|
149870
|
-
const { ReadMcpResourceTool } = await import("./read-mcp-resource-
|
|
150060
|
+
const { ReadMcpResourceTool } = await import("./read-mcp-resource-DRZSI3HE.js");
|
|
149871
150061
|
return new ReadMcpResourceTool(this);
|
|
149872
150062
|
});
|
|
149873
150063
|
await registerLazy(ToolNames.AGENT, async () => {
|
|
149874
|
-
const { AgentTool: AgentTool2 } = await import("./agent-
|
|
150064
|
+
const { AgentTool: AgentTool2 } = await import("./agent-PE37ARLM.js");
|
|
149875
150065
|
return new AgentTool2(this);
|
|
149876
150066
|
});
|
|
149877
150067
|
await registerLazy(ToolNames.LIST_AGENTS, async () => {
|
|
149878
|
-
const { ListAgentsTool } = await import("./list-agents-
|
|
150068
|
+
const { ListAgentsTool } = await import("./list-agents-TWEGRJWO.js");
|
|
149879
150069
|
return new ListAgentsTool(this);
|
|
149880
150070
|
});
|
|
149881
150071
|
await registerLazy(ToolNames.TASK_STOP, async () => {
|
|
149882
|
-
const { TaskStopTool } = await import("./task-stop-
|
|
150072
|
+
const { TaskStopTool } = await import("./task-stop-Y5ZTFVRX.js");
|
|
149883
150073
|
return new TaskStopTool(this);
|
|
149884
150074
|
});
|
|
149885
150075
|
await registerLazy(ToolNames.SEND_MESSAGE, async () => {
|
|
149886
|
-
const { SendMessageTool } = await import("./send-message-
|
|
150076
|
+
const { SendMessageTool } = await import("./send-message-HGCVVDTZ.js");
|
|
149887
150077
|
return new SendMessageTool(this);
|
|
149888
150078
|
});
|
|
149889
150079
|
await registerLazy(ToolNames.SKILL, async () => {
|
|
149890
|
-
const { SkillTool } = await import("./skill-
|
|
150080
|
+
const { SkillTool } = await import("./skill-C7W6M4GO.js");
|
|
149891
150081
|
return new SkillTool(this);
|
|
149892
150082
|
});
|
|
149893
150083
|
await registerLazy(ToolNames.LS, async () => {
|
|
149894
|
-
const { LSTool } = await import("./ls-
|
|
150084
|
+
const { LSTool } = await import("./ls-H5WX22VK.js");
|
|
149895
150085
|
return new LSTool(this);
|
|
149896
150086
|
});
|
|
149897
150087
|
await registerLazy(ToolNames.READ_FILE, async () => {
|
|
149898
|
-
const { ReadFileTool } = await import("./read-file-
|
|
150088
|
+
const { ReadFileTool } = await import("./read-file-HXJXHBI6.js");
|
|
149899
150089
|
return new ReadFileTool(this);
|
|
149900
150090
|
});
|
|
149901
150091
|
await registerLazy(ToolNames.ZOOM_IMAGE, async () => {
|
|
149902
|
-
const { ZoomImageTool } = await import("./zoom-image-
|
|
150092
|
+
const { ZoomImageTool } = await import("./zoom-image-O5YCB7WN.js");
|
|
149903
150093
|
return new ZoomImageTool(this);
|
|
149904
150094
|
});
|
|
149905
150095
|
if (this.getUseRipgrep()) {
|
|
@@ -149914,7 +150104,7 @@ var Config = class _Config {
|
|
|
149914
150104
|
recordStartupEvent("config_initialize_ripgrep_probe_end");
|
|
149915
150105
|
if (useRipgrep) {
|
|
149916
150106
|
await registerLazy(ToolNames.GREP, async () => {
|
|
149917
|
-
const { RipGrepTool: RipGrepTool2 } = await import("./ripGrep-
|
|
150107
|
+
const { RipGrepTool: RipGrepTool2 } = await import("./ripGrep-MCETPF2E.js");
|
|
149918
150108
|
return new RipGrepTool2(this);
|
|
149919
150109
|
});
|
|
149920
150110
|
} else {
|
|
@@ -149927,7 +150117,7 @@ var Config = class _Config {
|
|
|
149927
150117
|
)
|
|
149928
150118
|
);
|
|
149929
150119
|
await registerLazy(ToolNames.GREP, async () => {
|
|
149930
|
-
const { GrepTool } = await import("./grep-
|
|
150120
|
+
const { GrepTool } = await import("./grep-UJMPVZER.js");
|
|
149931
150121
|
return new GrepTool(this);
|
|
149932
150122
|
});
|
|
149933
150123
|
}
|
|
@@ -149935,71 +150125,77 @@ var Config = class _Config {
|
|
|
149935
150125
|
recordStartupEvent("config_initialize_ripgrep_probe_start");
|
|
149936
150126
|
recordStartupEvent("config_initialize_ripgrep_probe_end");
|
|
149937
150127
|
await registerLazy(ToolNames.GREP, async () => {
|
|
149938
|
-
const { GrepTool } = await import("./grep-
|
|
150128
|
+
const { GrepTool } = await import("./grep-UJMPVZER.js");
|
|
149939
150129
|
return new GrepTool(this);
|
|
149940
150130
|
});
|
|
149941
150131
|
}
|
|
149942
150132
|
await registerLazy(ToolNames.GLOB, async () => {
|
|
149943
|
-
const { GlobTool } = await import("./glob-
|
|
150133
|
+
const { GlobTool } = await import("./glob-F3EAUDAX.js");
|
|
149944
150134
|
return new GlobTool(this);
|
|
149945
150135
|
});
|
|
149946
150136
|
await registerLazy(ToolNames.EDIT, async () => {
|
|
149947
|
-
const { EditTool } = await import("./edit-
|
|
150137
|
+
const { EditTool } = await import("./edit-J7SW6UP6.js");
|
|
149948
150138
|
return new EditTool(this);
|
|
149949
150139
|
});
|
|
149950
150140
|
await registerLazy(ToolNames.NOTEBOOK_EDIT, async () => {
|
|
149951
|
-
const { NotebookEditTool } = await import("./notebook-edit-
|
|
150141
|
+
const { NotebookEditTool } = await import("./notebook-edit-EZISE7IC.js");
|
|
149952
150142
|
return new NotebookEditTool(this);
|
|
149953
150143
|
});
|
|
149954
150144
|
await registerLazy(ToolNames.WRITE_FILE, async () => {
|
|
149955
|
-
const { WriteFileTool: WriteFileTool2 } = await import("./write-file-
|
|
150145
|
+
const { WriteFileTool: WriteFileTool2 } = await import("./write-file-RQ4DG5RY.js");
|
|
149956
150146
|
return new WriteFileTool2(this);
|
|
149957
150147
|
});
|
|
149958
150148
|
await registerLazy(ToolNames.SHELL, async () => {
|
|
149959
|
-
const { ShellTool: ShellTool2 } = await import("./shell-
|
|
150149
|
+
const { ShellTool: ShellTool2 } = await import("./shell-GLC6OP3C.js");
|
|
149960
150150
|
return new ShellTool2(this);
|
|
149961
150151
|
});
|
|
149962
150152
|
await registerLazy(ToolNames.TODO_WRITE, async () => {
|
|
149963
|
-
const { TodoWriteTool } = await import("./todoWrite-
|
|
150153
|
+
const { TodoWriteTool } = await import("./todoWrite-YKAA57W2.js");
|
|
149964
150154
|
return new TodoWriteTool(this);
|
|
149965
150155
|
});
|
|
149966
150156
|
const supportsUserInteraction = resolveInteractionMode(this) !== "headless";
|
|
149967
150157
|
if (supportsUserInteraction) {
|
|
149968
150158
|
await registerLazy(ToolNames.ASK_USER_QUESTION, async () => {
|
|
149969
|
-
const { AskUserQuestionTool } = await import("./askUserQuestion-
|
|
150159
|
+
const { AskUserQuestionTool } = await import("./askUserQuestion-23Y5WZFJ.js");
|
|
149970
150160
|
return new AskUserQuestionTool(this);
|
|
149971
150161
|
});
|
|
149972
150162
|
}
|
|
149973
150163
|
if (!this.sdkMode && (supportsUserInteraction || options2?.forSubAgent)) {
|
|
149974
150164
|
await registerLazy(ToolNames.EXIT_PLAN_MODE, async () => {
|
|
149975
|
-
const { ExitPlanModeTool: ExitPlanModeTool2 } = await import("./exitPlanMode-
|
|
150165
|
+
const { ExitPlanModeTool: ExitPlanModeTool2 } = await import("./exitPlanMode-4ZFY7KUH.js");
|
|
149976
150166
|
return new ExitPlanModeTool2(this);
|
|
149977
150167
|
});
|
|
149978
150168
|
}
|
|
149979
150169
|
if (!this.sdkMode && supportsUserInteraction) {
|
|
149980
150170
|
await registerLazy(ToolNames.ENTER_PLAN_MODE, async () => {
|
|
149981
|
-
const { EnterPlanModeTool } = await import("./enterPlanMode-
|
|
150171
|
+
const { EnterPlanModeTool } = await import("./enterPlanMode-GDSTEFSM.js");
|
|
149982
150172
|
return new EnterPlanModeTool(this);
|
|
149983
150173
|
});
|
|
149984
150174
|
}
|
|
149985
150175
|
await registerLazy(ToolNames.ENTER_WORKTREE, async () => {
|
|
149986
|
-
const { EnterWorktreeTool } = await import("./enter-worktree-
|
|
150176
|
+
const { EnterWorktreeTool } = await import("./enter-worktree-NRLOHRB6.js");
|
|
149987
150177
|
return new EnterWorktreeTool(this);
|
|
149988
150178
|
});
|
|
149989
150179
|
await registerLazy(ToolNames.EXIT_WORKTREE, async () => {
|
|
149990
|
-
const { ExitWorktreeTool } = await import("./exit-worktree-
|
|
150180
|
+
const { ExitWorktreeTool } = await import("./exit-worktree-ARVID7DF.js");
|
|
149991
150181
|
return new ExitWorktreeTool(this);
|
|
149992
150182
|
});
|
|
149993
150183
|
await registerLazy(ToolNames.WEB_FETCH, async () => {
|
|
149994
|
-
const { WebFetchTool } = await import("./web-fetch-
|
|
150184
|
+
const { WebFetchTool } = await import("./web-fetch-Y5QQMPKA.js");
|
|
149995
150185
|
return new WebFetchTool(this);
|
|
149996
150186
|
});
|
|
150187
|
+
if (resolveInteractionMode(this) === "interactive" && !this.sdkMode && !this.getScreenReader() && !options2?.forSubAgent) {
|
|
150188
|
+
await registerLazy(ToolNames.DISPLAY_IMAGE, async () => {
|
|
150189
|
+
const { DisplayImageTool } = await import("./display-image-VS3TXYQH.js");
|
|
150190
|
+
return new DisplayImageTool(this);
|
|
150191
|
+
});
|
|
150192
|
+
}
|
|
149997
150193
|
if (this.webSearchSettings?.enabled) {
|
|
149998
|
-
const { evaluateWebSearchGate } = await import("./web-search-
|
|
150194
|
+
const { evaluateWebSearchGate } = await import("./web-search-QKKEU723.js");
|
|
149999
150195
|
const gate = evaluateWebSearchGate(this);
|
|
150000
150196
|
if (gate.ok) {
|
|
150001
150197
|
await registerLazy(ToolNames.WEB_SEARCH, async () => {
|
|
150002
|
-
const { WebSearchTool } = await import("./web-search-
|
|
150198
|
+
const { WebSearchTool } = await import("./web-search-QKKEU723.js");
|
|
150003
150199
|
return new WebSearchTool(this);
|
|
150004
150200
|
});
|
|
150005
150201
|
} else if (!this.webSearchNoticeEmitted && !options2?.forSubAgent) {
|
|
@@ -150010,83 +150206,83 @@ var Config = class _Config {
|
|
|
150010
150206
|
await this.registerImageGenerationTool(registry);
|
|
150011
150207
|
if (this.isArtifactEnabled()) {
|
|
150012
150208
|
await registerLazy(ToolNames.ARTIFACT, async () => {
|
|
150013
|
-
const { ArtifactTool } = await import("./artifact-tool-
|
|
150209
|
+
const { ArtifactTool } = await import("./artifact-tool-TBOYEKTY.js");
|
|
150014
150210
|
return new ArtifactTool(this);
|
|
150015
150211
|
});
|
|
150016
150212
|
}
|
|
150017
150213
|
if (this.isRecordArtifactEnabled()) {
|
|
150018
150214
|
await registerLazy(ToolNames.RECORD_ARTIFACT, async () => {
|
|
150019
|
-
const { RecordArtifactTool } = await import("./record-artifact-
|
|
150215
|
+
const { RecordArtifactTool } = await import("./record-artifact-IPIRWMFY.js");
|
|
150020
150216
|
return new RecordArtifactTool();
|
|
150021
150217
|
});
|
|
150022
150218
|
}
|
|
150023
150219
|
if (this.isLspEnabled() && this.getLspClient()) {
|
|
150024
150220
|
await registerLazy(ToolNames.LSP, async () => {
|
|
150025
|
-
const { LspTool } = await import("./lsp-
|
|
150221
|
+
const { LspTool } = await import("./lsp-G6FXYEIS.js");
|
|
150026
150222
|
return new LspTool(this);
|
|
150027
150223
|
});
|
|
150028
150224
|
}
|
|
150029
150225
|
await registerStructuredOutputIfRequested();
|
|
150030
150226
|
if (this.isCronEnabled()) {
|
|
150031
150227
|
await registerLazy(ToolNames.CRON_CREATE, async () => {
|
|
150032
|
-
const { CronCreateTool } = await import("./cron-create-
|
|
150228
|
+
const { CronCreateTool } = await import("./cron-create-HMFSHIAR.js");
|
|
150033
150229
|
return new CronCreateTool(this);
|
|
150034
150230
|
});
|
|
150035
150231
|
await registerLazy(ToolNames.CRON_LIST, async () => {
|
|
150036
|
-
const { CronListTool } = await import("./cron-list-
|
|
150232
|
+
const { CronListTool } = await import("./cron-list-ZEX2NBMN.js");
|
|
150037
150233
|
return new CronListTool(this);
|
|
150038
150234
|
});
|
|
150039
150235
|
await registerLazy(ToolNames.CRON_DELETE, async () => {
|
|
150040
|
-
const { CronDeleteTool } = await import("./cron-delete-
|
|
150236
|
+
const { CronDeleteTool } = await import("./cron-delete-ZJFHOX57.js");
|
|
150041
150237
|
return new CronDeleteTool(this);
|
|
150042
150238
|
});
|
|
150043
150239
|
await registerLazy(ToolNames.LOOP_WAKEUP, async () => {
|
|
150044
|
-
const { LoopWakeupTool } = await import("./loop-wakeup-
|
|
150240
|
+
const { LoopWakeupTool } = await import("./loop-wakeup-6LLEOQYV.js");
|
|
150045
150241
|
return new LoopWakeupTool(this);
|
|
150046
150242
|
});
|
|
150047
150243
|
}
|
|
150048
150244
|
await registerLazy(ToolNames.CREATE_SUB_SESSION, async () => {
|
|
150049
|
-
const { CreateSubSessionTool } = await import("./create-sub-session-
|
|
150245
|
+
const { CreateSubSessionTool } = await import("./create-sub-session-J32WC64U.js");
|
|
150050
150246
|
return new CreateSubSessionTool(this);
|
|
150051
150247
|
});
|
|
150052
150248
|
if (this.isAgentTeamEnabled()) {
|
|
150053
150249
|
await registerLazy(ToolNames.TEAM_CREATE, async () => {
|
|
150054
|
-
const { TeamCreateTool } = await import("./team-create-
|
|
150250
|
+
const { TeamCreateTool } = await import("./team-create-HBIJ7NHT.js");
|
|
150055
150251
|
return new TeamCreateTool(this);
|
|
150056
150252
|
});
|
|
150057
150253
|
await registerLazy(ToolNames.TEAM_DELETE, async () => {
|
|
150058
|
-
const { TeamDeleteTool } = await import("./team-delete-
|
|
150254
|
+
const { TeamDeleteTool } = await import("./team-delete-CE7DC53R.js");
|
|
150059
150255
|
return new TeamDeleteTool(this);
|
|
150060
150256
|
});
|
|
150061
150257
|
await registerLazy(ToolNames.TEAM_PLAN_APPROVAL, async () => {
|
|
150062
|
-
const { TeamPlanApprovalTool } = await import("./team-plan-approval-
|
|
150258
|
+
const { TeamPlanApprovalTool } = await import("./team-plan-approval-IBJOKS4J.js");
|
|
150063
150259
|
return new TeamPlanApprovalTool(this);
|
|
150064
150260
|
});
|
|
150065
150261
|
await registerLazy(ToolNames.TASK_CREATE, async () => {
|
|
150066
|
-
const { TaskCreateTool } = await import("./task-create-
|
|
150262
|
+
const { TaskCreateTool } = await import("./task-create-CSCEG4SM.js");
|
|
150067
150263
|
return new TaskCreateTool(this);
|
|
150068
150264
|
});
|
|
150069
150265
|
await registerLazy(ToolNames.TASK_UPDATE, async () => {
|
|
150070
|
-
const { TaskUpdateTool } = await import("./task-update-
|
|
150266
|
+
const { TaskUpdateTool } = await import("./task-update-C52LNFU5.js");
|
|
150071
150267
|
return new TaskUpdateTool(this);
|
|
150072
150268
|
});
|
|
150073
150269
|
await registerLazy(ToolNames.TASK_LIST, async () => {
|
|
150074
|
-
const { TaskListTool } = await import("./task-list-
|
|
150270
|
+
const { TaskListTool } = await import("./task-list-6CVQPORX.js");
|
|
150075
150271
|
return new TaskListTool(this);
|
|
150076
150272
|
});
|
|
150077
150273
|
}
|
|
150078
150274
|
if (this.isWorkflowsEnabled()) {
|
|
150079
150275
|
await registerLazy(ToolNames.WORKFLOW, async () => {
|
|
150080
|
-
const { WorkflowTool } = await import("./workflow-
|
|
150276
|
+
const { WorkflowTool } = await import("./workflow-PWIU6Q2M.js");
|
|
150081
150277
|
return new WorkflowTool(this);
|
|
150082
150278
|
});
|
|
150083
150279
|
}
|
|
150084
150280
|
if (this.isComputerUseEnabled()) {
|
|
150085
|
-
const { registerComputerUseTools } = await import("./computer-use-
|
|
150281
|
+
const { registerComputerUseTools } = await import("./computer-use-UJMK6JQU.js");
|
|
150086
150282
|
await registerComputerUseTools(registerLazy, this);
|
|
150087
150283
|
}
|
|
150088
150284
|
await registerLazy(ToolNames.MONITOR, async () => {
|
|
150089
|
-
const { MonitorTool } = await import("./monitor-
|
|
150285
|
+
const { MonitorTool } = await import("./monitor-TGSVSAZZ.js");
|
|
150090
150286
|
return new MonitorTool(this);
|
|
150091
150287
|
});
|
|
150092
150288
|
if (this.pendingMcpBudgetCallback) {
|
|
@@ -150498,10 +150694,7 @@ export {
|
|
|
150498
150694
|
getToolResponseDisplayText,
|
|
150499
150695
|
setStartupEventSink,
|
|
150500
150696
|
DEFAULT_TOOL_RESULTS_TOTAL_CHARS_THRESHOLD,
|
|
150501
|
-
activeGoalEquals,
|
|
150502
150697
|
getActiveGoal,
|
|
150503
|
-
setActiveGoal,
|
|
150504
|
-
clearActiveGoal,
|
|
150505
150698
|
setGoalTerminalObserver,
|
|
150506
150699
|
clearGoalTerminalObserver,
|
|
150507
150700
|
getLastGoalTerminal,
|