@qwen-code/qwen-code 0.19.11-nightly.20260718.767a32484 → 0.19.11
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/model-providers.md +0 -11
- package/bundled/qc-helper/docs/configuration/settings.md +9 -9
- package/bundled/qc-helper/docs/features/channels/overview.md +11 -24
- package/bundled/qc-helper/docs/qwen-serve-deploy-local.md +7 -42
- package/bundled/qc-helper/docs/qwen-serve.md +40 -66
- package/bundled/qc-helper/docs/reference/keyboard-shortcuts.md +1 -1
- package/chunks/{MaxSizedBox-ZFHA4QEQ.js → MaxSizedBox-L6TGYDM3.js} +27 -27
- package/chunks/{StandaloneSessionPicker-YRWOQVQA.js → StandaloneSessionPicker-AKEQHU5P.js} +39 -39
- package/chunks/{acpAgent-U2P2IESZ.js → acpAgent-PTNBGJDN.js} +228 -501
- package/chunks/{agent-GQXX6X5Y.js → agent-AJOMOZPJ.js} +24 -24
- package/chunks/{agent-headless-3572NBCK.js → agent-headless-CYKOMAXS.js} +24 -24
- package/chunks/{anthropicContentGenerator-Y65DMM64.js → anthropicContentGenerator-HBRXJSP4.js} +6 -29
- package/chunks/{artifact-tool-WR7I2XON.js → artifact-tool-MIZLXBLF.js} +2 -2
- package/chunks/{askUserQuestion-B4FUTPHD.js → askUserQuestion-XMJVPNWM.js} +44 -2
- package/chunks/{bridge-N5RMGD7G.js → bridge-QKISWPCI.js} +29 -29
- package/chunks/{ca-M3GQQ26D.js → ca-CODEN7TD.js} +2 -2
- package/chunks/{channel-worker-group-HZVJKLGX.js → channel-worker-group-SOUWTFHC.js} +4 -4
- package/chunks/{channel-worker-manager-3WDK4HNS.js → channel-worker-manager-LOVSV3WW.js} +4 -4
- package/chunks/{channel-worker-supervisor-U2W6Q5F7.js → channel-worker-supervisor-XW6MHJBQ.js} +3 -3
- package/chunks/{chunk-3DJY4IFO.js → chunk-2FO5GFKZ.js} +1 -1
- package/chunks/chunk-2HRYPZT5.js +25 -0
- package/chunks/{chunk-LSFVUGXT.js → chunk-2OG646IN.js} +3 -3
- package/chunks/{chunk-OSSDHJDU.js → chunk-2Z5UX4KI.js} +1 -1
- package/chunks/{chunk-O2K6BLPZ.js → chunk-3AYLDB6B.js} +1 -1
- package/chunks/{chunk-MI2V6IWU.js → chunk-3DWIFU7L.js} +1 -1
- package/chunks/{chunk-AEKYFMYE.js → chunk-3M75MSVA.js} +1 -1
- package/chunks/{chunk-HIMIG6PI.js → chunk-4AGTGMCQ.js} +11 -11
- package/chunks/{chunk-V2FRLYHN.js → chunk-4BJVSIS3.js} +2 -2
- package/chunks/{chunk-64XGKNSI.js → chunk-4HUDDSO5.js} +3 -3
- package/chunks/{chunk-FSJGBUQI.js → chunk-4IJMTYCB.js} +28 -817
- package/chunks/{chunk-TYQMGACW.js → chunk-4LD5APFL.js} +0 -1
- package/chunks/{chunk-2XRGFF5K.js → chunk-4ROQY23C.js} +6 -6
- package/chunks/{chunk-KEVDWH3U.js → chunk-574PTLMU.js} +55 -207
- package/chunks/{chunk-Y72B36CP.js → chunk-5CNYZ7TN.js} +7 -7
- package/chunks/{chunk-DPSHAB47.js → chunk-5VWYKIMW.js} +1 -1
- package/chunks/{chunk-OXOEOOQU.js → chunk-5Z452MMD.js} +37 -64
- package/chunks/{chunk-U6OPT4H2.js → chunk-6EDDYPI3.js} +4 -4
- package/chunks/{chunk-XA7OKDWM.js → chunk-6WGZDD67.js} +2 -2
- package/chunks/{chunk-IENO2YAT.js → chunk-6WPJRYLZ.js} +3 -3
- package/chunks/{chunk-PWYLF7SS.js → chunk-6Y6ORE2G.js} +10 -7
- package/chunks/{chunk-UE5TZ55T.js → chunk-7NFB7LBQ.js} +0 -8
- package/chunks/{chunk-3CL5SEDT.js → chunk-7NMU22Q3.js} +6 -6
- package/chunks/{chunk-ECZFTRTP.js → chunk-7ZYHLN67.js} +75 -26
- package/chunks/{chunk-LKR7QQ63.js → chunk-A2HWMJVO.js} +3 -3
- package/chunks/{chunk-SGPFJMRP.js → chunk-ARKANCNX.js} +1 -1
- package/chunks/{chunk-5QRK2VZG.js → chunk-AU3MFJPL.js} +8 -8
- package/chunks/{chunk-R3VWUU2E.js → chunk-AVEOWVOM.js} +1 -1
- package/chunks/{chunk-6ITLKEOZ.js → chunk-BUAXJVNP.js} +3 -3
- package/chunks/{chunk-U4FJ26D2.js → chunk-BXBDC476.js} +2 -2
- package/chunks/{chunk-ZTSDZQZO.js → chunk-BYB3GF2T.js} +3 -130
- package/chunks/{chunk-4JBTZBCW.js → chunk-BYH2JRK3.js} +5 -5
- package/chunks/{chunk-4HCYNDMG.js → chunk-CAHY5ABC.js} +1 -1
- package/chunks/{chunk-JBAQ5BYX.js → chunk-CF5VJRGC.js} +1 -1
- package/chunks/{chunk-3NWYQ7FX.js → chunk-CH2XVB47.js} +2 -2
- package/chunks/{chunk-FHUXCRAF.js → chunk-CITWNIXJ.js} +4 -4
- package/chunks/{chunk-6YIRYY3P.js → chunk-CPFIQVZJ.js} +1 -1
- package/chunks/{chunk-EKG3BHQY.js → chunk-DOPUYNXO.js} +3 -3
- package/chunks/{chunk-VNN3JNYT.js → chunk-F333XEAU.js} +1 -1
- package/chunks/{chunk-FUTHTZVV.js → chunk-FBU7WRZI.js} +1 -1
- package/chunks/{chunk-OBYAX5QZ.js → chunk-FMNYGWOD.js} +6 -6
- package/chunks/{chunk-FZRES4GK.js → chunk-FNX3LGAK.js} +1 -1
- package/chunks/{chunk-F2RR4HO2.js → chunk-FSA7ERJ2.js} +1 -1
- package/chunks/{chunk-OPVIKLKK.js → chunk-FXKOAEXP.js} +14 -14
- package/chunks/{chunk-U2XBPBO3.js → chunk-FYQ22K62.js} +3 -4
- package/chunks/{chunk-KTKETHMY.js → chunk-GLNHPRZT.js} +1 -1
- package/chunks/{chunk-C5NSOSF4.js → chunk-GNBBAQ6J.js} +13 -30
- package/chunks/{chunk-GAQOQMHY.js → chunk-HASK4LMI.js} +6 -6
- package/chunks/{chunk-GG6RSNWS.js → chunk-JD44PNGJ.js} +4 -9
- package/chunks/{chunk-ANRANWVE.js → chunk-JGUT3LWZ.js} +1 -4
- package/chunks/{chunk-336KPNNV.js → chunk-JWICTOXS.js} +2 -2
- package/chunks/{chunk-57RWF6R7.js → chunk-K7VD4XLT.js} +1 -1
- package/chunks/{chunk-XSPFQQRE.js → chunk-KKRTYONM.js} +3 -3
- package/chunks/{chunk-JDIUK2Y3.js → chunk-KSZKSE23.js} +1 -1
- package/chunks/{chunk-HQXQCIT2.js → chunk-KXYJPRT5.js} +5 -25
- package/chunks/{chunk-X6YQWCIJ.js → chunk-L4Y55KIS.js} +1 -1
- package/chunks/{chunk-335ECZTA.js → chunk-L5U3ELZX.js} +1 -1
- package/chunks/{chunk-4CHDYDG3.js → chunk-LQIDP6K5.js} +1 -1
- package/chunks/{chunk-5O34IMY5.js → chunk-LS56TX3M.js} +1 -1
- package/chunks/{chunk-HCCR43AY.js → chunk-LXLTBIDP.js} +1 -1
- package/chunks/{chunk-66IT3EY2.js → chunk-MQOVXZAF.js} +48 -164
- package/chunks/{chunk-JUVTV4NF.js → chunk-N5VIZTND.js} +1 -1
- package/chunks/{chunk-3YJZ6WNY.js → chunk-NJOFRXTM.js} +593 -1317
- package/chunks/{chunk-CZSAIBUB.js → chunk-NVTQZXR7.js} +7 -7
- package/chunks/{chunk-G274ETR6.js → chunk-OKAIGAYW.js} +3 -3
- package/chunks/{chunk-TVYM3Q3J.js → chunk-OWT2CAEQ.js} +7 -100
- package/chunks/{chunk-T3W4SDRB.js → chunk-PZL23GTM.js} +0 -2
- package/chunks/{chunk-XAAEDML2.js → chunk-Q6TUALBE.js} +1 -1
- package/chunks/chunk-QAW7PIHT.js +168 -0
- package/chunks/{chunk-HT7L5FCZ.js → chunk-QDJ2R4CM.js} +3 -3
- package/chunks/{chunk-IX7O5WI3.js → chunk-QOTQH4CB.js} +8 -23
- package/chunks/{chunk-S4N3G4BB.js → chunk-QYG4BY6Q.js} +1 -1
- package/chunks/{chunk-4XCVGEEX.js → chunk-RCEEXIOO.js} +3 -3
- package/chunks/{chunk-IK5TYYVR.js → chunk-RP5R7MB6.js} +12 -12
- package/chunks/{chunk-U2LNTX56.js → chunk-RTV5TUYB.js} +1 -1
- package/chunks/{chunk-K2GBHL73.js → chunk-S63Z5V42.js} +4 -4
- package/chunks/{chunk-J2MKYJKZ.js → chunk-SPJQO2CE.js} +2 -2
- package/chunks/{chunk-LTD3CHGS.js → chunk-SQ5BK3GO.js} +1 -1
- package/chunks/{chunk-W7H223ZZ.js → chunk-STZQCNN3.js} +1 -1
- package/chunks/{chunk-2YSZE74N.js → chunk-SY7NEYX4.js} +2 -2
- package/chunks/{chunk-GA3WUOO7.js → chunk-T76DGHGG.js} +5 -5
- package/chunks/{chunk-QPRDXJIC.js → chunk-THXDQSTA.js} +29 -30
- package/chunks/{chunk-DASWPKXR.js → chunk-TIOE2OPE.js} +2 -2
- package/chunks/{chunk-F5XYN5VF.js → chunk-TL4R5TRK.js} +2 -2
- package/chunks/{chunk-4RPARQ5D.js → chunk-TV6K2FB4.js} +2 -2
- package/chunks/{chunk-JCJPZMJV.js → chunk-TYLOFD2U.js} +1 -1
- package/chunks/{chunk-632KROVU.js → chunk-V2DXTLUE.js} +3 -3
- package/chunks/{chunk-URP6O2PP.js → chunk-VFX7EZIR.js} +1 -1
- package/chunks/{chunk-CMVFTMRD.js → chunk-VRR65QYW.js} +1 -1
- package/chunks/{chunk-VAJS2E2D.js → chunk-WIEO4CWB.js} +1 -1
- package/chunks/{chunk-OCQ2QTFJ.js → chunk-WMNXXRGL.js} +25 -25
- package/chunks/{chunk-WEPXQKGP.js → chunk-WTNZ6DXB.js} +1 -1
- package/chunks/{chunk-LGY7PG7Q.js → chunk-Y3KFTWVX.js} +5 -5
- package/chunks/{chunk-4CA4WUMS.js → chunk-Y66VOBRP.js} +2 -2
- package/chunks/{chunk-IVKLDHU6.js → chunk-YFVO2HOR.js} +4 -4
- package/chunks/{chunk-GUNTLALV.js → chunk-YGYSMY2R.js} +47 -61
- package/chunks/{chunk-3X2CFOUM.js → chunk-YLSSEUAM.js} +274 -345
- package/chunks/{chunk-6Z5NRZVU.js → chunk-ZIXOTAPZ.js} +3 -92
- package/chunks/{chunk-Z2LBNX3R.js → chunk-ZPAHLFZU.js} +2 -2
- package/chunks/{chunk-ATJ7H5AS.js → chunk-ZQIYGQCG.js} +84 -230
- package/chunks/{computer-use-UIFBH25Y.js → computer-use-VZZMJEQ7.js} +24 -24
- package/chunks/{config-utils-2LHI7JXU.js → config-utils-IQQT3GCI.js} +3 -3
- package/chunks/{contextCommand-VGZHKEH2.js → contextCommand-PORKIZSY.js} +26 -26
- package/chunks/{create-sub-session-DIJOV6HV.js → create-sub-session-EAB2U5XW.js} +2 -2
- package/chunks/{create-sub-session-OFVI4H6I.js → create-sub-session-XVFKHAFW.js} +24 -24
- package/chunks/{cron-create-34GVLSW5.js → cron-create-GMVKSXZT.js} +4 -4
- package/chunks/{cron-delete-NMVKUL45.js → cron-delete-VDZKUAVK.js} +4 -4
- package/chunks/{cron-list-277ZOR7L.js → cron-list-UG7C7RAR.js} +4 -4
- package/chunks/{daemon-72MEV3TY.js → daemon-IHR6WSPB.js} +14 -59
- package/chunks/{daemon-status-provider-ZJJ6AOG2.js → daemon-status-provider-ABLBA3UJ.js} +33 -33
- package/chunks/{de-56TMDIKS.js → de-NOXPCSYN.js} +2 -2
- package/chunks/{dist-ILVRL322.js → dist-4WCQEZIN.js} +1 -1
- package/chunks/{dist-SVHAGOLN.js → dist-DOPL5LSQ.js} +1 -1
- package/chunks/{dist-LQHDHBPP.js → dist-GXJVCOS7.js} +1 -1
- package/chunks/{dist-KEZ5JWH4.js → dist-PX2ERZ6I.js} +2 -2
- package/chunks/{dist-G6QCGO2K.js → dist-V2YVLYOW.js} +1 -1
- package/chunks/{dist-4W3UGU2A.js → dist-VYWUKURL.js} +1 -1
- package/chunks/{earlyInputCapture-NPF4PVUE.js → earlyInputCapture-DJCU5SPU.js} +25 -25
- package/chunks/{edit-F7CT6NZH.js → edit-O4VV5AO6.js} +25 -25
- package/chunks/{en-AXS2N62H.js → en-JFVULHTB.js} +3 -6
- package/chunks/{enter-worktree-Z4ET3MZL.js → enter-worktree-XQYDDI2I.js} +24 -24
- package/chunks/{enterPlanMode-VYR7T5NX.js → enterPlanMode-CESVMQBV.js} +27 -25
- package/chunks/{environment-MBTXL57Q.js → environment-5KXOLZNR.js} +26 -26
- package/chunks/{errors-HN36J4FR.js → errors-EBUTCBAQ.js} +26 -26
- package/chunks/{exit-worktree-RU7JYFMF.js → exit-worktree-MWGNSPNX.js} +24 -24
- package/chunks/exitPlanMode-HYQL4XMB.js +909 -0
- package/chunks/{fast-path-RFT3CDNZ.js → fast-path-6V73F2T2.js} +2 -2
- package/chunks/{fr-ZJPE5OVN.js → fr-HVFNU42H.js} +2 -2
- package/chunks/{gemini-37NTNKZF.js → gemini-TEFJZCIZ.js} +70 -98
- package/chunks/{geminiContentGenerator-76HNOYNQ.js → geminiContentGenerator-M56BEXWI.js} +5 -5
- package/chunks/{glob-DWD7JCZE.js → glob-DMYFEEAZ.js} +25 -30
- package/chunks/{grep-NJRXFV5C.js → grep-GYE47MD4.js} +25 -30
- package/chunks/{handleAutoUpdate-7GBDXW6U.js → handleAutoUpdate-OLUY4L7L.js} +28 -28
- package/chunks/{i18n-MYD5VGED.js → i18n-462JC7IY.js} +25 -25
- package/chunks/{initializer-4DHPNAZG.js → initializer-Y7WD4D2I.js} +30 -30
- package/chunks/{installationInfo-RWOW6BZO.js → installationInfo-I2Z3BKCE.js} +25 -25
- package/chunks/{ja-57GG4QSL.js → ja-PY5AF544.js} +2 -2
- package/chunks/{keychain-token-storage-K23CFKGN.js → keychain-token-storage-AU22CQI6.js} +2 -2
- package/chunks/{list-MMCNNHE7.js → list-XQ5MSAXP.js} +32 -32
- package/chunks/{loadedSettingsAdapter-UK4JWPYU.js → loadedSettingsAdapter-TQOWYE7C.js} +29 -29
- package/chunks/{loop-wakeup-KCLY4XQM.js → loop-wakeup-QXWZSCYM.js} +5 -5
- package/chunks/{ls-UNI4LAJ3.js → ls-2OUTG3IZ.js} +4 -4
- package/chunks/{lsp-HPACPJAN.js → lsp-4VMNXZW6.js} +2 -2
- package/chunks/{mcp-AFCVA4UV.js → mcp-22LLEEVM.js} +29 -29
- package/chunks/{monitor-RK637BNO.js → monitor-VKG324X3.js} +24 -24
- package/chunks/nonInteractiveCli-UMYUT643.js +129 -0
- package/chunks/{notebook-edit-LY2X3CMF.js → notebook-edit-FJJRBQ3S.js} +25 -25
- package/chunks/{openaiContentGenerator-MDYDW7IA.js → openaiContentGenerator-4T2OGTR5.js} +13 -13
- package/chunks/{pidfile-2NUYRLKB.js → pidfile-XL3MDCBM.js} +25 -25
- package/chunks/{processUtils-7QH3VBVN.js → processUtils-7UCFN34D.js} +2 -2
- package/chunks/{pt-MCGZ3RZ4.js → pt-A3PRQXMU.js} +2 -2
- package/chunks/{qwenContentGenerator-3HT4TVDL.js → qwenContentGenerator-PQUXJDIZ.js} +26 -26
- package/chunks/{qwenOAuth2-3A4TJVZT.js → qwenOAuth2-LEYOU7RU.js} +5 -5
- package/chunks/{read-file-NE4FREFR.js → read-file-3EYQML7E.js} +10 -10
- package/chunks/{read-mcp-resource-C6NT52T6.js → read-mcp-resource-JUFHCKSC.js} +2 -2
- package/chunks/{record-artifact-ENCU7QCL.js → record-artifact-DWSMBXYY.js} +2 -2
- package/chunks/{ripGrep-DBLXWQCJ.js → ripGrep-S6WPGQNA.js} +24 -24
- package/chunks/{ru-GA3NZW5Q.js → ru-IBCWUTOC.js} +2 -2
- package/chunks/{run-qwen-serve-3NOCI6IL.js → run-qwen-serve-NSKBT3HU.js} +36 -52
- package/chunks/{runtime-ZI7DSZSS.js → runtime-LG5ZZ3VH.js} +33 -33
- package/chunks/{scheduler-SOVEP5K7.js → scheduler-PLX3VVTB.js} +24 -24
- package/chunks/{send-message-5IFPZTPE.js → send-message-JZ752NWD.js} +3 -3
- package/chunks/{serve-DB6OCXIA.js → serve-S2ZLRZZR.js} +29 -29
- package/chunks/{server-LDY4YVU4.js → server-5ECMV4TM.js} +679 -1413
- package/chunks/{session-D6OG5SKX.js → session-ILSONWG4.js} +66 -93
- package/chunks/{settings-L52ZV5LO.js → settings-BOE7WWSA.js} +28 -28
- package/chunks/{shell-IU27OY3Q.js → shell-VW664JIZ.js} +24 -24
- package/chunks/{skill-BSOJT7LE.js → skill-COHV6625.js} +12 -12
- package/chunks/{spawnChannel-HQAM25DD.js → spawnChannel-5UUR5XOZ.js} +26 -26
- package/chunks/{src-7ZBIMTJZ.js → src-XPKFZ3RN.js} +25 -43
- package/chunks/{standalone-update-77457VVK.js → standalone-update-IOOJ2NZQ.js} +26 -26
- package/chunks/{startInteractiveUI-S7WC6EZG.js → startInteractiveUI-3NGJGXXS.js} +1733 -2194
- package/chunks/{syntheticOutput-ULOVVLY4.js → syntheticOutput-LELY6HAI.js} +3 -3
- package/chunks/{task-create-V2DCDSET.js → task-create-QY3BIMNM.js} +7 -7
- package/chunks/{task-list-DPL5ZN55.js → task-list-D2U47WBJ.js} +5 -5
- package/chunks/{task-stop-CPEQWOT6.js → task-stop-N6E5IYLH.js} +2 -2
- package/chunks/{task-update-ZR45M5Q7.js → task-update-HJCQILLB.js} +7 -7
- package/chunks/{team-create-CO7HSUON.js → team-create-UPLVZQFX.js} +24 -24
- package/chunks/{team-delete-HIWXCWJU.js → team-delete-RCWYDRF4.js} +5 -5
- package/chunks/{team-plan-approval-QDZF5YZY.js → team-plan-approval-F5F432RO.js} +24 -24
- package/chunks/{theme-manager-UTUT3I4P.js → theme-manager-JJE4BJ67.js} +25 -25
- package/chunks/todoWrite-FKCGATPJ.js +531 -0
- package/chunks/{tool-search-2UUORA35.js → tool-search-LRXI4JLZ.js} +11 -11
- package/chunks/{total-session-admission-NTWG6G3F.js → total-session-admission-I4DHN6UP.js} +30 -30
- package/chunks/{trustedFolders-YF37ZCN5.js → trustedFolders-SEH7LNX2.js} +25 -25
- package/chunks/{update-relaunch-QFNHPMZZ.js → update-relaunch-T6ZKBUA6.js} +5 -5
- package/chunks/{updateCheck-B6O42VMD.js → updateCheck-FWLXZPRO.js} +26 -26
- package/chunks/{validateNonInterActiveAuth-SCIWJ4CX.js → validateNonInterActiveAuth-X6K2VWYT.js} +59 -59
- package/chunks/{version-7DA6LAI3.js → version-LIFSOGSE.js} +1 -1
- package/chunks/{web-fetch-B62SJXM2.js → web-fetch-CFCWTCAP.js} +5 -5
- package/chunks/{workflow-Q5WG4THP.js → workflow-NX2DFWGD.js} +25 -25
- package/chunks/{workspace-providers-status-WWLAGWQW.js → workspace-providers-status-VYD6M2NE.js} +32 -32
- package/chunks/{workspace-registration-store-BVYQVY2H.js → workspace-registration-store-2Y6PWOEL.js} +1 -1
- package/chunks/{workspace-registry-OD7ACADD.js → workspace-registry-PKBDBWCA.js} +30 -30
- package/chunks/{workspace-service-4LYJWS63.js → workspace-service-HHORUHTS.js} +35 -35
- package/chunks/{workspace-skills-status-P2AQLZZS.js → workspace-skills-status-O5Q26LIY.js} +30 -30
- package/chunks/{write-file-TEPGXNM3.js → write-file-NVAEZ3J2.js} +25 -58
- package/chunks/{zh-E34DZ2S3.js → zh-PAUNIMHQ.js} +3 -6
- package/chunks/{zh-TW-PEI2ZWUR.js → zh-TW-GNEUIUFF.js} +3 -6
- package/cli.js +11 -11
- package/locales/ca.js +2 -2
- package/locales/de.js +2 -2
- package/locales/en.js +5 -9
- package/locales/fr.js +2 -2
- package/locales/ja.js +2 -2
- package/locales/pt.js +2 -2
- package/locales/ru.js +2 -2
- package/locales/zh-TW.js +3 -8
- package/locales/zh.js +3 -8
- package/package.json +3 -3
- package/web-shell/assets/{arc-Dh-N5oEG.js → arc-H74fE8UR.js} +1 -1
- package/web-shell/assets/{architectureDiagram-3BPJPVTR-DBOQgtfF.js → architectureDiagram-3BPJPVTR-DN3kEq-I.js} +1 -1
- package/web-shell/assets/{blockDiagram-GPEHLZMM-Dyxbuyju.js → blockDiagram-GPEHLZMM-BrqbsFUF.js} +1 -1
- package/web-shell/assets/{c4Diagram-AAUBKEIU-DCJR5HPT.js → c4Diagram-AAUBKEIU-ClFhU1P-.js} +1 -1
- package/web-shell/assets/channel-NFC5ADAa.js +1 -0
- package/web-shell/assets/{chunk-2J33WTMH-BkMUcy3O.js → chunk-2J33WTMH-jCIcG0_M.js} +1 -1
- package/web-shell/assets/{chunk-4BX2VUAB-BSm4pLQk.js → chunk-4BX2VUAB-DSkGe62-.js} +1 -1
- package/web-shell/assets/{chunk-55IACEB6-CuRr-XgW.js → chunk-55IACEB6-BxBHOGTd.js} +1 -1
- package/web-shell/assets/{chunk-727SXJPM-CLv7-w3t.js → chunk-727SXJPM-v_DS7dH7.js} +1 -1
- package/web-shell/assets/{chunk-AQP2D5EJ-Cz_n3-JW.js → chunk-AQP2D5EJ-1RzEKRPq.js} +1 -1
- package/web-shell/assets/{chunk-FMBD7UC4-CFT_62Hq.js → chunk-FMBD7UC4-DyrSbLOX.js} +1 -1
- package/web-shell/assets/{chunk-ND2GUHAM-DWz6DOZ6.js → chunk-ND2GUHAM-BCmdsZiy.js} +1 -1
- package/web-shell/assets/{chunk-QZHKN3VN-C-mRhUzw.js → chunk-QZHKN3VN-CphHGW2D.js} +1 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-DHgwjz3X.js +1 -0
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-DHgwjz3X.js +1 -0
- package/web-shell/assets/{cose-bilkent-S5V4N54A-BqCZS3i1.js → cose-bilkent-S5V4N54A-D5kRC7Fi.js} +1 -1
- package/web-shell/assets/{dagre-BM42HDAG-BGasdP8i.js → dagre-BM42HDAG-DIiyJJ0U.js} +1 -1
- package/web-shell/assets/{diagram-2AECGRRQ-BSyLDkMy.js → diagram-2AECGRRQ-BOcuB8xU.js} +1 -1
- package/web-shell/assets/{diagram-5GNKFQAL-CM-ZJxWC.js → diagram-5GNKFQAL-CMgiZ4d3.js} +1 -1
- package/web-shell/assets/{diagram-KO2AKTUF-wJdzt_C5.js → diagram-KO2AKTUF-Ctx8pfN0.js} +1 -1
- package/web-shell/assets/{diagram-LMA3HP47-DiH2fhpL.js → diagram-LMA3HP47-BT5REAWC.js} +1 -1
- package/web-shell/assets/{diagram-OG6HWLK6-BZ9z1ZBl.js → diagram-OG6HWLK6-CJkUqXcp.js} +1 -1
- package/web-shell/assets/{erDiagram-TEJ5UH35-BsyWDziR.js → erDiagram-TEJ5UH35-DyvNNX6v.js} +1 -1
- package/web-shell/assets/{flowDiagram-I6XJVG4X-CzdkxIrq.js → flowDiagram-I6XJVG4X-VBf8_My8.js} +1 -1
- package/web-shell/assets/{ganttDiagram-6RSMTGT7-javIv2r2.js → ganttDiagram-6RSMTGT7-CviJnR7B.js} +1 -1
- package/web-shell/assets/{gitGraphDiagram-PVQCEYII-CjHstylC.js → gitGraphDiagram-PVQCEYII-BY66_Oze.js} +1 -1
- package/web-shell/assets/index-8xIBbHV3.js +1143 -0
- package/web-shell/assets/index-DLyhlZZO.css +5 -0
- package/web-shell/assets/{index-BnJGxpah.js → index-DhYuvi3j.js} +1 -1
- package/web-shell/assets/{infoDiagram-5YYISTIA-yXuQsomo.js → infoDiagram-5YYISTIA-D2jaewWZ.js} +1 -1
- package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-a85JhE6F.js → ishikawaDiagram-YF4QCWOH-BpnNTyi5.js} +1 -1
- package/web-shell/assets/{journeyDiagram-JHISSGLW-Dak_4BVj.js → journeyDiagram-JHISSGLW-CA55GNZF.js} +1 -1
- package/web-shell/assets/{kanban-definition-UN3LZRKU-COA-LuCV.js → kanban-definition-UN3LZRKU-DyiSl_Ts.js} +1 -1
- package/web-shell/assets/{linear-DNAAAQWq.js → linear-B-sN3dkV.js} +1 -1
- package/web-shell/assets/{mermaid.core-7Ff3aIUD.js → mermaid.core-xf9SXDdb.js} +5 -5
- package/web-shell/assets/{mindmap-definition-RKZ34NQL-_rCOIODU.js → mindmap-definition-RKZ34NQL-DXhr2kRk.js} +1 -1
- package/web-shell/assets/{pieDiagram-4H26LBE5-C9QCQ8EW.js → pieDiagram-4H26LBE5-DUXpbfGQ.js} +1 -1
- package/web-shell/assets/{quadrantDiagram-W4KKPZXB-CsaE4FA8.js → quadrantDiagram-W4KKPZXB-NeDQYeWw.js} +1 -1
- package/web-shell/assets/{requirementDiagram-4Y6WPE33-tV78naTg.js → requirementDiagram-4Y6WPE33-BSbFRL1A.js} +1 -1
- package/web-shell/assets/{sankeyDiagram-5OEKKPKP-Dk3Rw7BZ.js → sankeyDiagram-5OEKKPKP-gg27cAaN.js} +1 -1
- package/web-shell/assets/{sequenceDiagram-3UESZ5HK-BGsAWcMX.js → sequenceDiagram-3UESZ5HK-Bi_1TSs4.js} +1 -1
- package/web-shell/assets/{stateDiagram-AJRCARHV-zSxdtdoB.js → stateDiagram-AJRCARHV-CboCCRaf.js} +1 -1
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-CXRqms6P.js +1 -0
- package/web-shell/assets/{timeline-definition-PNZ67QCA-j0BQh9Go.js → timeline-definition-PNZ67QCA-DrGpF_jn.js} +1 -1
- package/web-shell/assets/{vennDiagram-CIIHVFJN-CRaUFFIu.js → vennDiagram-CIIHVFJN-DCaJU67x.js} +1 -1
- package/web-shell/assets/{wardley-L42UT6IY-D7Py_ofm.js → wardley-L42UT6IY-p0QcW1aP.js} +1 -1
- package/web-shell/assets/{wardleyDiagram-YWT4CUSO-BrDIAZcp.js → wardleyDiagram-YWT4CUSO-DiEVxj1W.js} +1 -1
- package/web-shell/assets/{xychartDiagram-2RQKCTM6-Cecdw-w2.js → xychartDiagram-2RQKCTM6-iQB8nSlA.js} +1 -1
- package/web-shell/index.html +2 -2
- package/chunks/chunk-QFEY6OXH.js +0 -45
- package/chunks/exitPlanMode-LUBAWMZQ.js +0 -390
- package/chunks/nonInteractiveCli-OUGWLHNV.js +0 -129
- package/chunks/todoWrite-HK6B3RHJ.js +0 -358
- package/web-shell/assets/channel-DY0fkcKT.js +0 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-DBvJ6PZo.js +0 -1
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-DBvJ6PZo.js +0 -1
- package/web-shell/assets/index-DhXB9nTa.js +0 -1161
- package/web-shell/assets/index-vYHgZ7bL.css +0 -5
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-vLEEtDpO.js +0 -1
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
// Force strict mode and setup for ESM
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
|
-
classifyApiError
|
|
5
|
-
|
|
4
|
+
classifyApiError,
|
|
5
|
+
prefixMidTurnUserMessageParts
|
|
6
|
+
} from "./chunk-YLSSEUAM.js";
|
|
6
7
|
import {
|
|
7
8
|
EXTENSION_CONTEXT_BUDGET,
|
|
8
9
|
buildExtensionMentionContext,
|
|
@@ -11,47 +12,47 @@ import {
|
|
|
11
12
|
matchMcpServerByRef,
|
|
12
13
|
parseExtensionRef,
|
|
13
14
|
parseMcpServerRef
|
|
14
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-HASK4LMI.js";
|
|
15
16
|
import {
|
|
16
17
|
getAvailableCommands,
|
|
17
18
|
handleSlashCommand,
|
|
18
19
|
insertAfterFunctionResponses,
|
|
19
20
|
isSlashCommand,
|
|
20
21
|
normalizePartList
|
|
21
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-THXDQSTA.js";
|
|
22
23
|
import {
|
|
23
24
|
collectContextData,
|
|
24
25
|
formatContextUsageText
|
|
25
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-FMNYGWOD.js";
|
|
26
27
|
import {
|
|
27
28
|
recomputeMcpGating
|
|
28
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-BYH2JRK3.js";
|
|
29
30
|
import {
|
|
30
31
|
appEvents,
|
|
31
32
|
buildDisabledSkillNamesProvider,
|
|
32
33
|
loadCliConfig,
|
|
33
34
|
normalizeDisabledToolList
|
|
34
|
-
} from "./chunk-
|
|
35
|
+
} from "./chunk-YGYSMY2R.js";
|
|
35
36
|
import {
|
|
36
37
|
getCommandSubcommandNames
|
|
37
|
-
} from "./chunk-
|
|
38
|
-
import "./chunk-
|
|
38
|
+
} from "./chunk-BYB3GF2T.js";
|
|
39
|
+
import "./chunk-FYQ22K62.js";
|
|
39
40
|
import {
|
|
40
41
|
getEffectiveSupportedModes
|
|
41
|
-
} from "./chunk-
|
|
42
|
+
} from "./chunk-NVTQZXR7.js";
|
|
42
43
|
import "./chunk-4WGODMVR.js";
|
|
43
44
|
import "./chunk-KW7NOTN6.js";
|
|
44
|
-
import "./chunk-
|
|
45
|
+
import "./chunk-OWT2CAEQ.js";
|
|
45
46
|
import "./chunk-5DTTYNB7.js";
|
|
46
47
|
import "./chunk-NHDKSOEY.js";
|
|
47
48
|
import {
|
|
48
49
|
isTerminalGoalStatusKind
|
|
49
50
|
} from "./chunk-7X7TEQNX.js";
|
|
50
51
|
import "./chunk-HTHUX2T5.js";
|
|
51
|
-
import "./chunk-
|
|
52
|
-
import "./chunk-
|
|
52
|
+
import "./chunk-TL4R5TRK.js";
|
|
53
|
+
import "./chunk-V2DXTLUE.js";
|
|
53
54
|
import "./chunk-YAF2MQZ6.js";
|
|
54
|
-
import "./chunk-
|
|
55
|
+
import "./chunk-Q6TUALBE.js";
|
|
55
56
|
import {
|
|
56
57
|
GENERATION_MAX_PROMPT_BYTES,
|
|
57
58
|
GENERATION_TIMEOUT_MS,
|
|
@@ -70,14 +71,14 @@ import {
|
|
|
70
71
|
shouldSuppressRememberErrorDetails,
|
|
71
72
|
workspaceMemoryFailureCode,
|
|
72
73
|
workspaceMemoryFailureDiagnostics
|
|
73
|
-
} from "./chunk-
|
|
74
|
+
} from "./chunk-QOTQH4CB.js";
|
|
74
75
|
import {
|
|
75
76
|
HistoryReplayer,
|
|
76
77
|
MessageEmitter,
|
|
77
78
|
PlanEmitter,
|
|
78
79
|
ToolCallEmitter
|
|
79
|
-
} from "./chunk-
|
|
80
|
-
import "./chunk-
|
|
80
|
+
} from "./chunk-6Y6ORE2G.js";
|
|
81
|
+
import "./chunk-CF5VJRGC.js";
|
|
81
82
|
import "./chunk-SUARMD4Q.js";
|
|
82
83
|
import "./chunk-QHTIBUWB.js";
|
|
83
84
|
import "./chunk-L573Z2QZ.js";
|
|
@@ -85,22 +86,19 @@ import {
|
|
|
85
86
|
computeCpuPercent
|
|
86
87
|
} from "./chunk-HGT6JR3U.js";
|
|
87
88
|
import "./chunk-RXFQM6FQ.js";
|
|
88
|
-
import "./chunk-
|
|
89
|
+
import "./chunk-Y3KFTWVX.js";
|
|
89
90
|
import "./chunk-6H67XLET.js";
|
|
90
|
-
import "./chunk-
|
|
91
|
-
import "./chunk-
|
|
91
|
+
import "./chunk-CITWNIXJ.js";
|
|
92
|
+
import "./chunk-4HUDDSO5.js";
|
|
92
93
|
import "./chunk-LXXMOYPL.js";
|
|
93
|
-
import "./chunk-
|
|
94
|
+
import "./chunk-S63Z5V42.js";
|
|
94
95
|
import "./chunk-E5Z2AVNV.js";
|
|
95
96
|
import {
|
|
96
|
-
|
|
97
|
-
buildAcpModelOptions,
|
|
98
|
-
getCurrentAcpModelId,
|
|
97
|
+
formatAcpModelId,
|
|
99
98
|
parseAcpBaseModelId,
|
|
100
99
|
parseAcpModelOption,
|
|
101
|
-
resolveAcpModelOption,
|
|
102
100
|
sanitizeProviderBaseUrl
|
|
103
|
-
} from "./chunk-
|
|
101
|
+
} from "./chunk-ZIXOTAPZ.js";
|
|
104
102
|
import {
|
|
105
103
|
mapSkillConfigToStatus
|
|
106
104
|
} from "./chunk-2W3OOD4W.js";
|
|
@@ -110,45 +108,44 @@ import {
|
|
|
110
108
|
buildPermissionSettings,
|
|
111
109
|
normalizePermissionRules,
|
|
112
110
|
readPermissionRuleSet
|
|
113
|
-
} from "./chunk-
|
|
111
|
+
} from "./chunk-K7VD4XLT.js";
|
|
114
112
|
import {
|
|
115
113
|
MAX_AUDIO_BYTES,
|
|
116
114
|
sanitizeVoiceErrorMessage,
|
|
117
115
|
transcribeVoiceAudio
|
|
118
|
-
} from "./chunk-
|
|
116
|
+
} from "./chunk-BUAXJVNP.js";
|
|
119
117
|
import {
|
|
120
118
|
readVoiceModel
|
|
121
|
-
} from "./chunk-
|
|
122
|
-
import "./chunk-
|
|
119
|
+
} from "./chunk-3M75MSVA.js";
|
|
120
|
+
import "./chunk-FSA7ERJ2.js";
|
|
123
121
|
import {
|
|
124
122
|
parseSessionSource
|
|
125
|
-
} from "./chunk-
|
|
123
|
+
} from "./chunk-574PTLMU.js";
|
|
126
124
|
import {
|
|
127
125
|
CLIENT_MCP_OVER_WS_CONFIG_FLAG,
|
|
128
126
|
LOAD_REPLAY_BULK_MODE,
|
|
129
127
|
LOAD_REPLAY_META_KEY,
|
|
130
128
|
LOAD_REPLAY_MODE_META_KEY,
|
|
131
|
-
LOAD_REPLAY_PAGE_SIZE_META_KEY,
|
|
132
129
|
LOAD_REPLAY_VERSION,
|
|
133
130
|
MID_TURN_QUEUE_DRAIN_METHOD
|
|
134
|
-
} from "./chunk-
|
|
131
|
+
} from "./chunk-PZL23GTM.js";
|
|
135
132
|
import "./chunk-6RLROE6G.js";
|
|
136
133
|
import "./chunk-COH43MRJ.js";
|
|
137
134
|
import {
|
|
138
135
|
NOT_CURRENTLY_GENERATING_CANCEL_MESSAGE
|
|
139
|
-
} from "./chunk-
|
|
140
|
-
import "./chunk-
|
|
141
|
-
import "./chunk-
|
|
136
|
+
} from "./chunk-L4Y55KIS.js";
|
|
137
|
+
import "./chunk-7NMU22Q3.js";
|
|
138
|
+
import "./chunk-YFVO2HOR.js";
|
|
142
139
|
import "./chunk-57OAHC2Y.js";
|
|
143
|
-
import "./chunk-
|
|
144
|
-
import "./chunk-
|
|
140
|
+
import "./chunk-5CNYZ7TN.js";
|
|
141
|
+
import "./chunk-FNX3LGAK.js";
|
|
145
142
|
import "./chunk-V6WHFGST.js";
|
|
146
143
|
import {
|
|
147
144
|
createLoadedSettingsAdapter
|
|
148
|
-
} from "./chunk-
|
|
145
|
+
} from "./chunk-SQ5BK3GO.js";
|
|
149
146
|
import {
|
|
150
147
|
ndJsonStream
|
|
151
|
-
} from "./chunk-
|
|
148
|
+
} from "./chunk-3AYLDB6B.js";
|
|
152
149
|
import {
|
|
153
150
|
ACP_PREFLIGHT_KINDS,
|
|
154
151
|
IDLE_HOOK_EVENTS,
|
|
@@ -156,14 +153,14 @@ import {
|
|
|
156
153
|
SERVE_STATUS_EXT_METHODS,
|
|
157
154
|
STATUS_SCHEMA_VERSION,
|
|
158
155
|
mapDomainErrorToErrorKind
|
|
159
|
-
} from "./chunk-
|
|
156
|
+
} from "./chunk-VFX7EZIR.js";
|
|
160
157
|
import "./chunk-W7FJ3N32.js";
|
|
161
|
-
import "./chunk-
|
|
158
|
+
import "./chunk-KSZKSE23.js";
|
|
162
159
|
import "./chunk-TJTKSVIV.js";
|
|
163
160
|
import "./chunk-M5GB774H.js";
|
|
164
|
-
import "./chunk-
|
|
165
|
-
import "./chunk-
|
|
166
|
-
import "./chunk-
|
|
161
|
+
import "./chunk-LXLTBIDP.js";
|
|
162
|
+
import "./chunk-3DWIFU7L.js";
|
|
163
|
+
import "./chunk-ZQIYGQCG.js";
|
|
167
164
|
import {
|
|
168
165
|
AgentSideConnection,
|
|
169
166
|
PROTOCOL_VERSION,
|
|
@@ -172,7 +169,7 @@ import {
|
|
|
172
169
|
import {
|
|
173
170
|
assembleMcpServers,
|
|
174
171
|
loadMcpApprovals
|
|
175
|
-
} from "./chunk-
|
|
172
|
+
} from "./chunk-4ROQY23C.js";
|
|
176
173
|
import {
|
|
177
174
|
OUTPUT_LANGUAGE_AUTO,
|
|
178
175
|
getOutputLanguageFilePath,
|
|
@@ -183,18 +180,18 @@ import {
|
|
|
183
180
|
resolveOutputLanguage,
|
|
184
181
|
updateOutputLanguageFile,
|
|
185
182
|
writeOutputLanguageAndRegisterPath
|
|
186
|
-
} from "./chunk-
|
|
183
|
+
} from "./chunk-GNBBAQ6J.js";
|
|
187
184
|
import "./chunk-RKUWKYED.js";
|
|
188
185
|
import {
|
|
189
186
|
SUPPORTED_LANGUAGES,
|
|
190
187
|
getCurrentLanguage,
|
|
191
188
|
setLanguageAsync
|
|
192
|
-
} from "./chunk-
|
|
189
|
+
} from "./chunk-4AGTGMCQ.js";
|
|
193
190
|
import {
|
|
194
191
|
findEnvFiles,
|
|
195
192
|
preResolveHomeEnvOverrides,
|
|
196
193
|
reloadEnvironment
|
|
197
|
-
} from "./chunk-
|
|
194
|
+
} from "./chunk-JWICTOXS.js";
|
|
198
195
|
import "./chunk-GOXKNSDZ.js";
|
|
199
196
|
import {
|
|
200
197
|
getSystemDefaultsPath,
|
|
@@ -205,14 +202,14 @@ import {
|
|
|
205
202
|
isFolderTrustEnabled,
|
|
206
203
|
isWorkspaceTrusted,
|
|
207
204
|
loadTrustedFolders
|
|
208
|
-
} from "./chunk-
|
|
205
|
+
} from "./chunk-2OG646IN.js";
|
|
209
206
|
import "./chunk-ALGGS7UH.js";
|
|
210
207
|
import "./chunk-MR3PXB6E.js";
|
|
211
208
|
import {
|
|
212
209
|
writeStderrLine
|
|
213
210
|
} from "./chunk-YUZI3WAC.js";
|
|
214
211
|
import "./chunk-XFSFZCM5.js";
|
|
215
|
-
import "./chunk-
|
|
212
|
+
import "./chunk-GLNHPRZT.js";
|
|
216
213
|
import "./chunk-VJNBRRZG.js";
|
|
217
214
|
import {
|
|
218
215
|
ALL_PROVIDERS,
|
|
@@ -236,9 +233,7 @@ import {
|
|
|
236
233
|
SESSION_ARTIFACT_PERSISTENCE_VERSION,
|
|
237
234
|
SESSION_TITLE_MAX_LENGTH,
|
|
238
235
|
SESSION_TRANSCRIPT_MAX_LIMIT,
|
|
239
|
-
SESSION_TRANSCRIPT_MAX_PAGE_BYTES,
|
|
240
236
|
SessionService,
|
|
241
|
-
SessionTranscriptPageTooLargeError,
|
|
242
237
|
SessionTranscriptReader,
|
|
243
238
|
SessionTranscriptSnapshotUnavailableError,
|
|
244
239
|
SessionTranscriptTooLargeError,
|
|
@@ -326,36 +321,35 @@ import {
|
|
|
326
321
|
subagentGenerator,
|
|
327
322
|
unregisterGoalHook,
|
|
328
323
|
updateSetting
|
|
329
|
-
} from "./chunk-
|
|
324
|
+
} from "./chunk-NJOFRXTM.js";
|
|
330
325
|
import "./chunk-T4TZQJ7W.js";
|
|
331
326
|
import {
|
|
332
327
|
external_exports
|
|
333
328
|
} from "./chunk-H6XPXXMH.js";
|
|
334
329
|
import "./chunk-5M6IDOMF.js";
|
|
335
|
-
import "./chunk-
|
|
336
|
-
import "./chunk-
|
|
337
|
-
import "./chunk-
|
|
338
|
-
import "./chunk-
|
|
330
|
+
import "./chunk-A2HWMJVO.js";
|
|
331
|
+
import "./chunk-RCEEXIOO.js";
|
|
332
|
+
import "./chunk-KKRTYONM.js";
|
|
333
|
+
import "./chunk-TV6K2FB4.js";
|
|
339
334
|
import "./chunk-E2UVIFI2.js";
|
|
340
335
|
import "./chunk-XU457J4V.js";
|
|
341
336
|
import "./chunk-VDDGDZMA.js";
|
|
342
|
-
import "./chunk-
|
|
337
|
+
import "./chunk-SPJQO2CE.js";
|
|
343
338
|
import "./chunk-SZRN75WQ.js";
|
|
344
339
|
import "./chunk-HTO4JFDZ.js";
|
|
345
340
|
import "./chunk-CPBF7KYF.js";
|
|
346
341
|
import {
|
|
347
342
|
APPROVAL_MODES,
|
|
348
|
-
FORK_SUBAGENT_TYPE
|
|
349
|
-
|
|
350
|
-
} from "./chunk-VNN3JNYT.js";
|
|
343
|
+
FORK_SUBAGENT_TYPE
|
|
344
|
+
} from "./chunk-F333XEAU.js";
|
|
351
345
|
import "./chunk-6AM5D4ME.js";
|
|
352
|
-
import "./chunk-
|
|
346
|
+
import "./chunk-2Z5UX4KI.js";
|
|
353
347
|
import {
|
|
354
348
|
HookEventName,
|
|
355
349
|
createHookOutput
|
|
356
|
-
} from "./chunk-
|
|
357
|
-
import "./chunk-
|
|
358
|
-
import "./chunk-
|
|
350
|
+
} from "./chunk-ARKANCNX.js";
|
|
351
|
+
import "./chunk-L5U3ELZX.js";
|
|
352
|
+
import "./chunk-TYLOFD2U.js";
|
|
359
353
|
import {
|
|
360
354
|
AuthType,
|
|
361
355
|
ConversationFinishedEvent,
|
|
@@ -366,10 +360,8 @@ import {
|
|
|
366
360
|
endToolExecutionSpan,
|
|
367
361
|
endToolSpan,
|
|
368
362
|
extractDaemonTraceContext,
|
|
369
|
-
formatFullTurnVisionNotice,
|
|
370
363
|
formatVisionBridgeNotice,
|
|
371
364
|
getAllGeminiMdFilenames,
|
|
372
|
-
getFullTurnVisionModelSelector,
|
|
373
365
|
getMCPServerStatus,
|
|
374
366
|
hasImageParts,
|
|
375
367
|
logConversationFinishedEvent,
|
|
@@ -387,58 +379,57 @@ import {
|
|
|
387
379
|
startToolExecutionSpan,
|
|
388
380
|
startToolSpan,
|
|
389
381
|
uiTelemetryService,
|
|
390
|
-
withDaemonSpan,
|
|
391
382
|
withInteractionSpan
|
|
392
|
-
} from "./chunk-
|
|
383
|
+
} from "./chunk-MQOVXZAF.js";
|
|
393
384
|
import "./chunk-4WKAA4KS.js";
|
|
394
385
|
import "./chunk-CR3C7WXL.js";
|
|
395
386
|
import {
|
|
396
387
|
runSideQuery
|
|
397
|
-
} from "./chunk-
|
|
388
|
+
} from "./chunk-RTV5TUYB.js";
|
|
398
389
|
import "./chunk-VGC4I5JJ.js";
|
|
399
390
|
import {
|
|
400
391
|
getAutoMemoryRoot,
|
|
401
392
|
getUserAutoMemoryRoot
|
|
402
|
-
} from "./chunk-
|
|
403
|
-
import "./chunk-
|
|
404
|
-
import "./chunk-
|
|
393
|
+
} from "./chunk-FBU7WRZI.js";
|
|
394
|
+
import "./chunk-Y66VOBRP.js";
|
|
395
|
+
import "./chunk-WTNZ6DXB.js";
|
|
405
396
|
import {
|
|
406
397
|
ToolConfirmationOutcome,
|
|
407
398
|
ToolNames,
|
|
408
399
|
isShellProgressData
|
|
409
|
-
} from "./chunk-
|
|
400
|
+
} from "./chunk-JGUT3LWZ.js";
|
|
410
401
|
import {
|
|
411
402
|
clearCachedCredentialFile,
|
|
412
403
|
qwenOAuth2Events
|
|
413
|
-
} from "./chunk-
|
|
414
|
-
import "./chunk-
|
|
404
|
+
} from "./chunk-OKAIGAYW.js";
|
|
405
|
+
import "./chunk-ZPAHLFZU.js";
|
|
415
406
|
import "./chunk-JESCGQM3.js";
|
|
416
|
-
import "./chunk-
|
|
407
|
+
import "./chunk-WIEO4CWB.js";
|
|
417
408
|
import "./chunk-XVNQMZ2I.js";
|
|
418
409
|
import "./chunk-FEOZBUMT.js";
|
|
419
410
|
import {
|
|
420
411
|
DEFAULT_TOKEN_LIMIT,
|
|
421
412
|
getToolCallPreparations,
|
|
422
413
|
tokenLimit
|
|
423
|
-
} from "./chunk-
|
|
414
|
+
} from "./chunk-VRR65QYW.js";
|
|
424
415
|
import "./chunk-A4UCTEB5.js";
|
|
425
416
|
import "./chunk-XWRJCPHC.js";
|
|
426
|
-
import "./chunk-
|
|
417
|
+
import "./chunk-4LD5APFL.js";
|
|
427
418
|
import "./chunk-TYAMGABM.js";
|
|
428
419
|
import "./chunk-FCMNKVXT.js";
|
|
429
420
|
import "./chunk-DJ2GSRLV.js";
|
|
430
|
-
import "./chunk-
|
|
421
|
+
import "./chunk-LQIDP6K5.js";
|
|
431
422
|
import {
|
|
432
423
|
Storage,
|
|
433
424
|
createDebugLogger,
|
|
434
425
|
getErrorMessage,
|
|
435
426
|
getErrorStatus,
|
|
436
427
|
isSubpath
|
|
437
|
-
} from "./chunk-
|
|
438
|
-
import "./chunk-
|
|
428
|
+
} from "./chunk-7NFB7LBQ.js";
|
|
429
|
+
import "./chunk-QYG4BY6Q.js";
|
|
439
430
|
import {
|
|
440
431
|
runExitCleanup
|
|
441
|
-
} from "./chunk-
|
|
432
|
+
} from "./chunk-CAHY5ABC.js";
|
|
442
433
|
import "./chunk-75DOP5OR.js";
|
|
443
434
|
import "./chunk-DMTGGOSA.js";
|
|
444
435
|
import "./chunk-YQ3U5MUC.js";
|
|
@@ -453,7 +444,6 @@ import {
|
|
|
453
444
|
// packages/cli/src/acp-integration/acpAgent.ts
|
|
454
445
|
init_esbuild_shims();
|
|
455
446
|
import { randomUUID } from "node:crypto";
|
|
456
|
-
import { performance } from "node:perf_hooks";
|
|
457
447
|
|
|
458
448
|
// packages/cli/src/acp-integration/authMethods.ts
|
|
459
449
|
init_esbuild_shims();
|
|
@@ -833,31 +823,6 @@ import { Buffer as Buffer2 } from "node:buffer";
|
|
|
833
823
|
import * as os2 from "node:os";
|
|
834
824
|
import * as path3 from "node:path";
|
|
835
825
|
|
|
836
|
-
// packages/cli/src/utils/midTurnUserMessage.ts
|
|
837
|
-
init_esbuild_shims();
|
|
838
|
-
var MID_TURN_USER_MESSAGE_PREFIX = "\n[User message received during tool execution]: ";
|
|
839
|
-
function prefixMidTurnUserMessageParts(parts, displayText) {
|
|
840
|
-
const partArray = normalizePartList(parts);
|
|
841
|
-
if (partArray.length === 0) {
|
|
842
|
-
return [{ text: `${MID_TURN_USER_MESSAGE_PREFIX}${displayText}` }];
|
|
843
|
-
}
|
|
844
|
-
const [firstPart, ...rest] = partArray;
|
|
845
|
-
if ("text" in firstPart && typeof firstPart.text === "string") {
|
|
846
|
-
return [
|
|
847
|
-
{
|
|
848
|
-
...firstPart,
|
|
849
|
-
text: `${MID_TURN_USER_MESSAGE_PREFIX}${firstPart.text}`
|
|
850
|
-
},
|
|
851
|
-
...rest
|
|
852
|
-
];
|
|
853
|
-
}
|
|
854
|
-
return [
|
|
855
|
-
{ text: `${MID_TURN_USER_MESSAGE_PREFIX}${displayText}` },
|
|
856
|
-
...partArray
|
|
857
|
-
];
|
|
858
|
-
}
|
|
859
|
-
__name(prefixMidTurnUserMessageParts, "prefixMidTurnUserMessageParts");
|
|
860
|
-
|
|
861
826
|
// packages/cli/src/acp-integration/session/tool-call-preparation-tracker.ts
|
|
862
827
|
init_esbuild_shims();
|
|
863
828
|
var ToolCallPreparationTracker = class {
|
|
@@ -2721,14 +2686,6 @@ var Session = class {
|
|
|
2721
2686
|
);
|
|
2722
2687
|
const inputText = firstTextBlock?.text || "";
|
|
2723
2688
|
let parts;
|
|
2724
|
-
let fullTurnModelOverride;
|
|
2725
|
-
const onFullTurnModel = /* @__PURE__ */ __name((model) => {
|
|
2726
|
-
if (fullTurnModelOverride) {
|
|
2727
|
-
return false;
|
|
2728
|
-
}
|
|
2729
|
-
fullTurnModelOverride = model;
|
|
2730
|
-
return true;
|
|
2731
|
-
}, "onFullTurnModel");
|
|
2732
2689
|
if (isContinue) {
|
|
2733
2690
|
parts = continuationParts;
|
|
2734
2691
|
} else if (isSlashCommand(inputText)) {
|
|
@@ -2740,9 +2697,7 @@ var Session = class {
|
|
|
2740
2697
|
);
|
|
2741
2698
|
parts = await this.#processSlashCommandResult(
|
|
2742
2699
|
slashCommandResult,
|
|
2743
|
-
params.prompt
|
|
2744
|
-
pendingSend.signal,
|
|
2745
|
-
onFullTurnModel
|
|
2700
|
+
params.prompt
|
|
2746
2701
|
);
|
|
2747
2702
|
if (parts === null) {
|
|
2748
2703
|
return { stopReason: "end_turn" };
|
|
@@ -2751,7 +2706,7 @@ var Session = class {
|
|
|
2751
2706
|
parts = await this.#resolvePrompt(
|
|
2752
2707
|
params.prompt,
|
|
2753
2708
|
pendingSend.signal,
|
|
2754
|
-
{ promptLast: true
|
|
2709
|
+
{ promptLast: true }
|
|
2755
2710
|
);
|
|
2756
2711
|
}
|
|
2757
2712
|
const hooksEnabled = !this.config.getDisableAllHooks?.();
|
|
@@ -2838,8 +2793,7 @@ ${this.pendingWorktreeNotice}
|
|
|
2838
2793
|
const sendResult = await this.#sendMessageStreamWithAutoCompression(
|
|
2839
2794
|
promptId,
|
|
2840
2795
|
nextMessage?.parts ?? [],
|
|
2841
|
-
pendingSend.signal
|
|
2842
|
-
{ modelOverride: fullTurnModelOverride }
|
|
2796
|
+
pendingSend.signal
|
|
2843
2797
|
);
|
|
2844
2798
|
if (!sendResult.responseStream) {
|
|
2845
2799
|
this.#preserveUnsentMessageHistory(
|
|
@@ -2947,14 +2901,11 @@ ${this.pendingWorktreeNotice}
|
|
|
2947
2901
|
);
|
|
2948
2902
|
}
|
|
2949
2903
|
if (functionCalls.length > 0) {
|
|
2950
|
-
const toolRun = await this
|
|
2951
|
-
|
|
2952
|
-
|
|
2953
|
-
|
|
2954
|
-
|
|
2955
|
-
functionCalls,
|
|
2956
|
-
toolLoopState
|
|
2957
|
-
)
|
|
2904
|
+
const toolRun = await this.runToolCalls(
|
|
2905
|
+
pendingSend.signal,
|
|
2906
|
+
promptId,
|
|
2907
|
+
functionCalls,
|
|
2908
|
+
toolLoopState
|
|
2958
2909
|
);
|
|
2959
2910
|
if (toolRun.stopAfterPermissionCancel) {
|
|
2960
2911
|
await this.#preserveStoppedToolRun(
|
|
@@ -2965,8 +2916,7 @@ ${this.pendingWorktreeNotice}
|
|
|
2965
2916
|
}
|
|
2966
2917
|
nextMessage = await this.#buildNextMessageAfterToolRun(
|
|
2967
2918
|
toolRun,
|
|
2968
|
-
pendingSend.signal
|
|
2969
|
-
onFullTurnModel
|
|
2919
|
+
pendingSend.signal
|
|
2970
2920
|
);
|
|
2971
2921
|
if (toolRun.loopDetected) {
|
|
2972
2922
|
await this.#preserveStoppedToolRun(
|
|
@@ -2984,8 +2934,7 @@ ${this.pendingWorktreeNotice}
|
|
|
2984
2934
|
pendingSend,
|
|
2985
2935
|
promptId,
|
|
2986
2936
|
hooksEnabled,
|
|
2987
|
-
messageBus
|
|
2988
|
-
fullTurnModelOverride
|
|
2937
|
+
messageBus
|
|
2989
2938
|
);
|
|
2990
2939
|
} finally {
|
|
2991
2940
|
logConversationFinishedEvent(
|
|
@@ -3014,17 +2963,10 @@ ${this.pendingWorktreeNotice}
|
|
|
3014
2963
|
* @param messageBus - The MessageBus for hook communication (may be undefined)
|
|
3015
2964
|
* @returns The ACP stop reason for the prompt.
|
|
3016
2965
|
*/
|
|
3017
|
-
async #handleStopHookLoop(pendingSend, promptId, hooksEnabled, messageBus
|
|
2966
|
+
async #handleStopHookLoop(pendingSend, promptId, hooksEnabled, messageBus) {
|
|
3018
2967
|
const stopHookBlockingCap = this.config.getStopHookBlockingCap();
|
|
3019
2968
|
let stopHookIterationCount = 0;
|
|
3020
2969
|
let stopHookReasons = [];
|
|
3021
|
-
const onFullTurnModel = /* @__PURE__ */ __name((model) => {
|
|
3022
|
-
if (modelOverride) {
|
|
3023
|
-
return false;
|
|
3024
|
-
}
|
|
3025
|
-
modelOverride = model;
|
|
3026
|
-
return true;
|
|
3027
|
-
}, "onFullTurnModel");
|
|
3028
2970
|
while (stopHookIterationCount < stopHookBlockingCap) {
|
|
3029
2971
|
if (!hooksEnabled || !messageBus || pendingSend.signal.aborted || !this.config.hasHooksForEvent?.("Stop")) {
|
|
3030
2972
|
return { stopReason: "end_turn" };
|
|
@@ -3104,10 +3046,7 @@ ${this.pendingWorktreeNotice}
|
|
|
3104
3046
|
promptId + "_stop_hook_" + stopHookIterationCount,
|
|
3105
3047
|
nextMessage?.parts ?? [],
|
|
3106
3048
|
pendingSend.signal,
|
|
3107
|
-
{
|
|
3108
|
-
skipCompression: stopHookIterationCount > 1,
|
|
3109
|
-
modelOverride
|
|
3110
|
-
}
|
|
3049
|
+
{ skipCompression: stopHookIterationCount > 1 }
|
|
3111
3050
|
);
|
|
3112
3051
|
if (!continueSendResult.responseStream) {
|
|
3113
3052
|
this.#preserveUnsentMessageHistory(
|
|
@@ -3201,14 +3140,11 @@ ${this.pendingWorktreeNotice}
|
|
|
3201
3140
|
);
|
|
3202
3141
|
}
|
|
3203
3142
|
if (functionCalls.length > 0) {
|
|
3204
|
-
const toolRun = await this
|
|
3205
|
-
|
|
3206
|
-
|
|
3207
|
-
|
|
3208
|
-
|
|
3209
|
-
functionCalls,
|
|
3210
|
-
toolLoopState
|
|
3211
|
-
)
|
|
3143
|
+
const toolRun = await this.runToolCalls(
|
|
3144
|
+
pendingSend.signal,
|
|
3145
|
+
promptId,
|
|
3146
|
+
functionCalls,
|
|
3147
|
+
toolLoopState
|
|
3212
3148
|
);
|
|
3213
3149
|
if (toolRun.stopAfterPermissionCancel) {
|
|
3214
3150
|
await this.#preserveStoppedToolRun(toolRun, pendingSend.signal);
|
|
@@ -3216,8 +3152,7 @@ ${this.pendingWorktreeNotice}
|
|
|
3216
3152
|
}
|
|
3217
3153
|
nextMessage = await this.#buildNextMessageAfterToolRun(
|
|
3218
3154
|
toolRun,
|
|
3219
|
-
pendingSend.signal
|
|
3220
|
-
onFullTurnModel
|
|
3155
|
+
pendingSend.signal
|
|
3221
3156
|
);
|
|
3222
3157
|
if (toolRun.loopDetected) {
|
|
3223
3158
|
await this.#preserveStoppedToolRun(toolRun, pendingSend.signal);
|
|
@@ -3241,13 +3176,6 @@ ${this.pendingWorktreeNotice}
|
|
|
3241
3176
|
#getCurrentChat() {
|
|
3242
3177
|
return this.config.getGeminiClient().getChat();
|
|
3243
3178
|
}
|
|
3244
|
-
async #runWithFullTurnModel(modelOverride, fn) {
|
|
3245
|
-
if (!modelOverride?.endsWith("\0")) {
|
|
3246
|
-
return fn();
|
|
3247
|
-
}
|
|
3248
|
-
const runtimeView = await this.config.getBaseLlmClient().resolveForModel(modelOverride.slice(0, -1), { failClosed: true });
|
|
3249
|
-
return runWithRuntimeContentGenerator(runtimeView, fn);
|
|
3250
|
-
}
|
|
3251
3179
|
/**
|
|
3252
3180
|
* Mirrors the core send path for ACP model sends.
|
|
3253
3181
|
*
|
|
@@ -3282,7 +3210,7 @@ ${this.pendingWorktreeNotice}
|
|
|
3282
3210
|
const geminiClient = this.config.getGeminiClient();
|
|
3283
3211
|
let compressionDiagnostic = null;
|
|
3284
3212
|
let compressionInfo = null;
|
|
3285
|
-
if (!options.skipCompression
|
|
3213
|
+
if (!options.skipCompression) {
|
|
3286
3214
|
try {
|
|
3287
3215
|
const compressed = await geminiClient.tryCompressChat(
|
|
3288
3216
|
promptId,
|
|
@@ -3340,7 +3268,7 @@ ${this.pendingWorktreeNotice}
|
|
|
3340
3268
|
return { responseStream: null, stopReason: "cancelled" };
|
|
3341
3269
|
}
|
|
3342
3270
|
const responseStream = await this.#getCurrentChat().sendMessageStream(
|
|
3343
|
-
|
|
3271
|
+
this.config.getModel(),
|
|
3344
3272
|
{
|
|
3345
3273
|
message,
|
|
3346
3274
|
config: {
|
|
@@ -3387,7 +3315,7 @@ ${this.pendingWorktreeNotice}
|
|
|
3387
3315
|
);
|
|
3388
3316
|
await this.messageRewriter?.waitForPendingRewrites();
|
|
3389
3317
|
}
|
|
3390
|
-
async #buildNextMessageAfterToolRun(toolRun, abortSignal
|
|
3318
|
+
async #buildNextMessageAfterToolRun(toolRun, abortSignal) {
|
|
3391
3319
|
if (toolRun.loopDetected) {
|
|
3392
3320
|
debugLogger6.debug("Stopping ACP turn after daemon loop detection.");
|
|
3393
3321
|
return null;
|
|
@@ -3400,7 +3328,7 @@ ${this.pendingWorktreeNotice}
|
|
|
3400
3328
|
}
|
|
3401
3329
|
const parts = [
|
|
3402
3330
|
...toolRun.parts,
|
|
3403
|
-
...await this.#drainMidTurnUserMessages(abortSignal
|
|
3331
|
+
...await this.#drainMidTurnUserMessages(abortSignal)
|
|
3404
3332
|
];
|
|
3405
3333
|
return { role: "user", parts };
|
|
3406
3334
|
}
|
|
@@ -3480,10 +3408,10 @@ ${this.pendingWorktreeNotice}
|
|
|
3480
3408
|
content: { type: "text", text }
|
|
3481
3409
|
});
|
|
3482
3410
|
}
|
|
3483
|
-
async #drainMidTurnUserMessages(abortSignal
|
|
3411
|
+
async #drainMidTurnUserMessages(abortSignal) {
|
|
3484
3412
|
const recovered = this.#takeRecoveredMidTurnMessages();
|
|
3485
3413
|
if (this.midTurnDrainUnavailable) {
|
|
3486
|
-
return this.#buildMidTurnParts(recovered, abortSignal
|
|
3414
|
+
return this.#buildMidTurnParts(recovered, abortSignal);
|
|
3487
3415
|
}
|
|
3488
3416
|
let drainPromise;
|
|
3489
3417
|
try {
|
|
@@ -3506,8 +3434,7 @@ ${this.pendingWorktreeNotice}
|
|
|
3506
3434
|
this.midTurnDrainTimeoutStrikes = 0;
|
|
3507
3435
|
return this.#buildMidTurnParts(
|
|
3508
3436
|
[...recovered, ...parseMidTurnDrainResponse(response)],
|
|
3509
|
-
abortSignal
|
|
3510
|
-
onFullTurnModel
|
|
3437
|
+
abortSignal
|
|
3511
3438
|
);
|
|
3512
3439
|
} catch (error) {
|
|
3513
3440
|
const errorMessage = error instanceof Error ? error.message : error && typeof error === "object" && "message" in error ? String(error.message) : String(error);
|
|
@@ -3524,7 +3451,7 @@ ${this.pendingWorktreeNotice}
|
|
|
3524
3451
|
debugLogger6.warn(
|
|
3525
3452
|
`Mid-turn queue drain ${isPermanentError ? "permanently " : ""}unavailable [session ${this.sessionId}]: ${errorMessage}`
|
|
3526
3453
|
);
|
|
3527
|
-
return this.#buildMidTurnParts(recovered, abortSignal
|
|
3454
|
+
return this.#buildMidTurnParts(recovered, abortSignal);
|
|
3528
3455
|
}
|
|
3529
3456
|
}
|
|
3530
3457
|
/** Read and clear the buffer of messages recovered from a timed-out drain. */
|
|
@@ -3582,7 +3509,7 @@ ${this.pendingWorktreeNotice}
|
|
|
3582
3509
|
* happens on injection (here), so a message recovered from an earlier
|
|
3583
3510
|
* timed-out drain is still recorded exactly once.
|
|
3584
3511
|
*/
|
|
3585
|
-
async #buildMidTurnParts(messages, abortSignal
|
|
3512
|
+
async #buildMidTurnParts(messages, abortSignal) {
|
|
3586
3513
|
const parts = [];
|
|
3587
3514
|
for (const message of messages) {
|
|
3588
3515
|
const displayText = message.kind === "text" ? message.message : message.displayText;
|
|
@@ -3591,9 +3518,7 @@ ${this.pendingWorktreeNotice}
|
|
|
3591
3518
|
rawParts = message.kind === "text" ? [{ text: message.message }] : await withTimeoutSignal(
|
|
3592
3519
|
abortSignal,
|
|
3593
3520
|
MID_TURN_QUEUE_RESOLVE_TIMEOUT_MS,
|
|
3594
|
-
(signal) => this.#resolvePrompt(message.content, signal
|
|
3595
|
-
onFullTurnModel
|
|
3596
|
-
})
|
|
3521
|
+
(signal) => this.#resolvePrompt(message.content, signal)
|
|
3597
3522
|
);
|
|
3598
3523
|
} catch (messageError) {
|
|
3599
3524
|
if (abortSignal.aborted) return parts;
|
|
@@ -4359,17 +4284,7 @@ ${this.pendingWorktreeNotice}
|
|
|
4359
4284
|
if (!rawModelId) {
|
|
4360
4285
|
throw RequestError.invalidParams(void 0, "modelId cannot be empty");
|
|
4361
4286
|
}
|
|
4362
|
-
const
|
|
4363
|
-
rawModelId,
|
|
4364
|
-
this.config.getAllConfiguredModels()
|
|
4365
|
-
);
|
|
4366
|
-
if (!resolvedRoute && rawModelId.startsWith(ACP_ROUTE_ID_PREFIX)) {
|
|
4367
|
-
throw RequestError.invalidParams(
|
|
4368
|
-
void 0,
|
|
4369
|
-
`Unknown or stale model route: "${rawModelId}"`
|
|
4370
|
-
);
|
|
4371
|
-
}
|
|
4372
|
-
const parsed = resolvedRoute ?? parseAcpModelOption(rawModelId);
|
|
4287
|
+
const parsed = parseAcpModelOption(rawModelId);
|
|
4373
4288
|
const previousAuthType = this.config.getAuthType?.();
|
|
4374
4289
|
const selectedAuthType = parsed.authType ?? previousAuthType;
|
|
4375
4290
|
if (!selectedAuthType) {
|
|
@@ -4378,49 +4293,29 @@ ${this.pendingWorktreeNotice}
|
|
|
4378
4293
|
`authType cannot be determined for modelId "${parsed.modelId}"`
|
|
4379
4294
|
);
|
|
4380
4295
|
}
|
|
4381
|
-
const requireCachedCredentials = selectedAuthType !== previousAuthType && selectedAuthType === "qwen-oauth" /* QWEN_OAUTH */;
|
|
4382
|
-
const switchOptions = resolvedRoute?.baseUrl !== void 0 || requireCachedCredentials ? {
|
|
4383
|
-
...resolvedRoute?.baseUrl !== void 0 ? { baseUrl: resolvedRoute.baseUrl } : {},
|
|
4384
|
-
...requireCachedCredentials ? { requireCachedCredentials: true } : {}
|
|
4385
|
-
} : void 0;
|
|
4386
4296
|
await this.config.switchModel(
|
|
4387
4297
|
selectedAuthType,
|
|
4388
4298
|
parsed.modelId,
|
|
4389
|
-
|
|
4299
|
+
selectedAuthType !== previousAuthType && selectedAuthType === "qwen-oauth" /* QWEN_OAUTH */ ? { requireCachedCredentials: true } : void 0
|
|
4390
4300
|
);
|
|
4391
4301
|
const after = this.config.getContentGeneratorConfig?.();
|
|
4392
4302
|
const effectiveAuthType = after?.authType ?? selectedAuthType;
|
|
4393
4303
|
const effectiveModelId = after?.model ?? parsed.modelId;
|
|
4394
|
-
const activeRuntimeSnapshot = this.config.getActiveRuntimeModelSnapshot?.();
|
|
4395
|
-
const currentAcpModelId = getCurrentAcpModelId(
|
|
4396
|
-
buildAcpModelOptions(this.config.getAllConfiguredModels()),
|
|
4397
|
-
activeRuntimeSnapshot?.id ?? effectiveModelId,
|
|
4398
|
-
activeRuntimeSnapshot?.authType ?? effectiveAuthType,
|
|
4399
|
-
activeRuntimeSnapshot ? void 0 : resolvedRoute ? resolvedRoute.registryBaseUrl : this.config.getCurrentModelRegistryBaseUrl?.()
|
|
4400
|
-
);
|
|
4401
4304
|
void this.client.extNotification("qwen/notify/session/model-update", {
|
|
4402
4305
|
v: 1,
|
|
4403
4306
|
sessionId: this.sessionId,
|
|
4404
|
-
currentModelId:
|
|
4307
|
+
currentModelId: effectiveModelId
|
|
4405
4308
|
}).catch((error) => {
|
|
4406
4309
|
debugLogger6.debug("model-update extNotification failed", error);
|
|
4407
4310
|
});
|
|
4408
4311
|
if (options.persistDefault ?? true) {
|
|
4409
4312
|
const persistScope = getPersistScopeForModelSelection(this.settings);
|
|
4410
|
-
this.settings.setValue(
|
|
4411
|
-
|
|
4412
|
-
"model.name",
|
|
4413
|
-
resolvedRoute?.isRuntime ? resolvedRoute.modelId : effectiveModelId
|
|
4414
|
-
);
|
|
4415
|
-
this.settings.setValue(
|
|
4416
|
-
persistScope,
|
|
4417
|
-
"model.baseUrl",
|
|
4418
|
-
resolvedRoute && !resolvedRoute.isRuntime ? resolvedRoute.baseUrl ?? "" : ""
|
|
4419
|
-
);
|
|
4313
|
+
this.settings.setValue(persistScope, "model.name", parsed.modelId);
|
|
4314
|
+
this.settings.setValue(persistScope, "model.baseUrl", "");
|
|
4420
4315
|
this.settings.setValue(
|
|
4421
4316
|
persistScope,
|
|
4422
4317
|
"security.auth.selectedType",
|
|
4423
|
-
|
|
4318
|
+
selectedAuthType
|
|
4424
4319
|
);
|
|
4425
4320
|
}
|
|
4426
4321
|
return {
|
|
@@ -4430,7 +4325,7 @@ ${this.pendingWorktreeNotice}
|
|
|
4430
4325
|
modelId: effectiveModelId,
|
|
4431
4326
|
baseUrl: after?.baseUrl ?? "(default)",
|
|
4432
4327
|
apiKey: maskApiKeyForDisplay(after?.apiKey),
|
|
4433
|
-
isRuntime:
|
|
4328
|
+
isRuntime: rawModelId.startsWith("$runtime|")
|
|
4434
4329
|
}
|
|
4435
4330
|
}
|
|
4436
4331
|
};
|
|
@@ -4439,29 +4334,33 @@ ${this.pendingWorktreeNotice}
|
|
|
4439
4334
|
* Sends a current_mode_update notification to the client.
|
|
4440
4335
|
* Called after the agent switches modes (e.g., from exit_plan_mode tool).
|
|
4441
4336
|
*/
|
|
4442
|
-
async sendCurrentModeUpdateNotification() {
|
|
4443
|
-
|
|
4337
|
+
async sendCurrentModeUpdateNotification(outcome) {
|
|
4338
|
+
let newModeId;
|
|
4339
|
+
switch (outcome) {
|
|
4340
|
+
case "proceed_always" /* ProceedAlways */:
|
|
4341
|
+
newModeId = "auto-edit";
|
|
4342
|
+
break;
|
|
4343
|
+
case "restore_previous" /* RestorePrevious */:
|
|
4344
|
+
newModeId = this.config.getApprovalMode();
|
|
4345
|
+
break;
|
|
4346
|
+
case "proceed_once" /* ProceedOnce */:
|
|
4347
|
+
default:
|
|
4348
|
+
newModeId = "default";
|
|
4349
|
+
break;
|
|
4350
|
+
}
|
|
4444
4351
|
const update = {
|
|
4445
4352
|
sessionUpdate: "current_mode_update",
|
|
4446
4353
|
currentModeId: newModeId
|
|
4447
4354
|
};
|
|
4448
|
-
|
|
4449
|
-
|
|
4450
|
-
|
|
4451
|
-
|
|
4452
|
-
|
|
4453
|
-
|
|
4454
|
-
}
|
|
4455
|
-
try {
|
|
4456
|
-
await this.client.extNotification("qwen/notify/session/mode-update", {
|
|
4457
|
-
v: 1,
|
|
4458
|
-
sessionId: this.sessionId,
|
|
4459
|
-
currentModeId: newModeId,
|
|
4460
|
-
legacyFrameSent
|
|
4461
|
-
});
|
|
4462
|
-
} catch (error) {
|
|
4355
|
+
await this.sendUpdate(update);
|
|
4356
|
+
void this.client.extNotification("qwen/notify/session/mode-update", {
|
|
4357
|
+
v: 1,
|
|
4358
|
+
sessionId: this.sessionId,
|
|
4359
|
+
currentModeId: newModeId,
|
|
4360
|
+
legacyFrameSent: true
|
|
4361
|
+
}).catch((error) => {
|
|
4463
4362
|
debugLogger6.debug("mode-update extNotification failed", error);
|
|
4464
|
-
}
|
|
4363
|
+
});
|
|
4465
4364
|
}
|
|
4466
4365
|
/**
|
|
4467
4366
|
* Execute a batch of model-returned tool calls, running Agent calls
|
|
@@ -5069,13 +4968,7 @@ ${this.pendingWorktreeNotice}
|
|
|
5069
4968
|
toolName,
|
|
5070
4969
|
toolParams
|
|
5071
4970
|
);
|
|
5072
|
-
const {
|
|
5073
|
-
finalPermission,
|
|
5074
|
-
pmForcedAsk,
|
|
5075
|
-
pmCtx,
|
|
5076
|
-
denyMessage,
|
|
5077
|
-
requiresUserInteraction
|
|
5078
|
-
} = flowResult;
|
|
4971
|
+
const { finalPermission, pmForcedAsk, pmCtx, denyMessage } = flowResult;
|
|
5079
4972
|
const isPlanMode = approvalMode === "plan" /* PLAN */;
|
|
5080
4973
|
if (finalPermission === "deny") {
|
|
5081
4974
|
return earlyErrorResponse(
|
|
@@ -5100,7 +4993,7 @@ ${this.pendingWorktreeNotice}
|
|
|
5100
4993
|
);
|
|
5101
4994
|
}
|
|
5102
4995
|
let wasAutoModeDenialFallback = false;
|
|
5103
|
-
if (!autoModeAllowed &&
|
|
4996
|
+
if (!autoModeAllowed && shouldRunAutoModeForCall(approvalMode, toolName)) {
|
|
5104
4997
|
const denialState = this.config.getAutoModeDenialState();
|
|
5105
4998
|
const fallback = shouldFallback(denialState);
|
|
5106
4999
|
const messages = this.config.getGeminiClient?.()?.getHistoryTail(MAX_TRANSCRIPT_MESSAGES, false) ?? [];
|
|
@@ -5173,12 +5066,7 @@ ${this.pendingWorktreeNotice}
|
|
|
5173
5066
|
this.config.setAutoModeDenialState(after);
|
|
5174
5067
|
}
|
|
5175
5068
|
}, "recordAutoModeFallbackResolution");
|
|
5176
|
-
if (!autoModeAllowed && needsConfirmation(
|
|
5177
|
-
confirmationPermission,
|
|
5178
|
-
approvalMode,
|
|
5179
|
-
toolName,
|
|
5180
|
-
requiresUserInteraction
|
|
5181
|
-
)) {
|
|
5069
|
+
if (!autoModeAllowed && needsConfirmation(confirmationPermission, approvalMode, toolName)) {
|
|
5182
5070
|
confirmationDetails = await invocation.getConfirmationDetails(abortSignal);
|
|
5183
5071
|
injectPermissionRulesIfMissing(confirmationDetails, pmCtx);
|
|
5184
5072
|
if (isPlanModeBlocked(
|
|
@@ -5205,7 +5093,7 @@ ${this.pendingWorktreeNotice}
|
|
|
5205
5093
|
args,
|
|
5206
5094
|
String(approvalMode)
|
|
5207
5095
|
);
|
|
5208
|
-
if (hookResult.hasDecision
|
|
5096
|
+
if (hookResult.hasDecision) {
|
|
5209
5097
|
hookHandled = true;
|
|
5210
5098
|
if (hookResult.shouldAllow) {
|
|
5211
5099
|
if (hookResult.updatedInput) {
|
|
@@ -5228,7 +5116,7 @@ ${this.pendingWorktreeNotice}
|
|
|
5228
5116
|
}
|
|
5229
5117
|
}
|
|
5230
5118
|
}
|
|
5231
|
-
if (
|
|
5119
|
+
if (approvalMode === "auto-edit" /* AUTO_EDIT */ && (confirmationDetails.type === "edit" || confirmationDetails.type === "info")) {
|
|
5232
5120
|
} else if (!hookHandled) {
|
|
5233
5121
|
didRequestPermission = true;
|
|
5234
5122
|
const content = buildPermissionRequestContent(confirmationDetails);
|
|
@@ -5296,11 +5184,12 @@ ${this.pendingWorktreeNotice}
|
|
|
5296
5184
|
);
|
|
5297
5185
|
}
|
|
5298
5186
|
onStopAfterPermissionCancel?.();
|
|
5299
|
-
const permissionFailureMessage = isExitPlanModeTool ? "The host could not present plan-exit approval. Plan mode remains active; use the host mode selector or /plan exit to leave plan mode." : `Permission request failed for "${toolName}": ${this.#formatError(
|
|
5300
|
-
error
|
|
5301
|
-
)}`;
|
|
5302
5187
|
return earlyErrorResponse(
|
|
5303
|
-
new Error(
|
|
5188
|
+
new Error(
|
|
5189
|
+
`Permission request failed for "${toolName}": ${this.#formatError(
|
|
5190
|
+
error
|
|
5191
|
+
)}`
|
|
5192
|
+
),
|
|
5304
5193
|
toolName,
|
|
5305
5194
|
{ stopAfterPermissionCancel: true }
|
|
5306
5195
|
);
|
|
@@ -5329,8 +5218,11 @@ ${this.pendingWorktreeNotice}
|
|
|
5329
5218
|
{ answers: output.answers }
|
|
5330
5219
|
);
|
|
5331
5220
|
}
|
|
5221
|
+
if (isExitPlanModeTool && outcome !== "cancel" /* Cancel */) {
|
|
5222
|
+
await this.sendCurrentModeUpdateNotification(outcome);
|
|
5223
|
+
}
|
|
5332
5224
|
if (confirmationDetails.type === "edit" && outcome === "proceed_always" /* ProceedAlways */) {
|
|
5333
|
-
await this.sendCurrentModeUpdateNotification();
|
|
5225
|
+
await this.sendCurrentModeUpdateNotification(outcome);
|
|
5334
5226
|
}
|
|
5335
5227
|
switch (outcome) {
|
|
5336
5228
|
case "cancel" /* Cancel */:
|
|
@@ -5450,8 +5342,11 @@ ${this.pendingWorktreeNotice}
|
|
|
5450
5342
|
throw execError;
|
|
5451
5343
|
}
|
|
5452
5344
|
cleanupAgentToolResources();
|
|
5453
|
-
if ((isEnterPlanModeTool || isExitPlanModeTool) && !toolResult.error && this.config.getApprovalMode() !== approvalMode) {
|
|
5454
|
-
await this.
|
|
5345
|
+
if ((isEnterPlanModeTool || isExitPlanModeTool) && !didRequestPermission && !toolResult.error && this.config.getApprovalMode() !== approvalMode) {
|
|
5346
|
+
await this.sendUpdate({
|
|
5347
|
+
sessionUpdate: "current_mode_update",
|
|
5348
|
+
currentModeId: this.config.getApprovalMode()
|
|
5349
|
+
});
|
|
5455
5350
|
}
|
|
5456
5351
|
const responseParts = toolResult.error ? convertToFunctionErrorResponse(
|
|
5457
5352
|
toolName,
|
|
@@ -5690,15 +5585,11 @@ ${this.pendingWorktreeNotice}
|
|
|
5690
5585
|
* @param originalPrompt The original prompt blocks
|
|
5691
5586
|
* @returns Parts to use for the prompt, or null if command was handled without needing model interaction
|
|
5692
5587
|
*/
|
|
5693
|
-
async #processSlashCommandResult(result, originalPrompt
|
|
5588
|
+
async #processSlashCommandResult(result, originalPrompt) {
|
|
5694
5589
|
this.#emitGoalStatusItems(result);
|
|
5695
5590
|
switch (result.type) {
|
|
5696
5591
|
case "submit_prompt":
|
|
5697
|
-
return
|
|
5698
|
-
normalizePartList(result.content),
|
|
5699
|
-
abortSignal,
|
|
5700
|
-
onFullTurnModel
|
|
5701
|
-
);
|
|
5592
|
+
return normalizePartList(result.content);
|
|
5702
5593
|
case "message": {
|
|
5703
5594
|
if (result.messageType === "error") {
|
|
5704
5595
|
throw new Error(result.content || "Slash command failed.");
|
|
@@ -5741,10 +5632,11 @@ ${this.pendingWorktreeNotice}
|
|
|
5741
5632
|
throw new Error(unsupportedError);
|
|
5742
5633
|
}
|
|
5743
5634
|
case "no_command":
|
|
5744
|
-
return this.#resolvePrompt(
|
|
5745
|
-
|
|
5746
|
-
|
|
5747
|
-
|
|
5635
|
+
return this.#resolvePrompt(
|
|
5636
|
+
originalPrompt,
|
|
5637
|
+
new AbortController().signal,
|
|
5638
|
+
{ promptLast: true }
|
|
5639
|
+
);
|
|
5748
5640
|
default: {
|
|
5749
5641
|
const _exhaustive = result;
|
|
5750
5642
|
const unknownError = `Unknown slash command result type: ${_exhaustive.type}`;
|
|
@@ -5818,17 +5710,12 @@ ${this.pendingWorktreeNotice}
|
|
|
5818
5710
|
);
|
|
5819
5711
|
const mcpServerParts = this.#resolveMcpServerMentionParts(mcpServerMentions);
|
|
5820
5712
|
if (atPathCommandParts.length === 0 && embeddedContext.length === 0 && extensionParts.length === 0 && mcpServerParts.length === 0) {
|
|
5821
|
-
return this.#applyBridgeConversionsIfNeeded(
|
|
5822
|
-
parts,
|
|
5823
|
-
abortSignal,
|
|
5824
|
-
options.onFullTurnModel
|
|
5825
|
-
);
|
|
5713
|
+
return this.#applyBridgeConversionsIfNeeded(parts, abortSignal);
|
|
5826
5714
|
}
|
|
5827
5715
|
if (atPathCommandParts.length === 0 && embeddedContext.length === 0) {
|
|
5828
5716
|
return this.#applyBridgeConversionsIfNeeded(
|
|
5829
5717
|
[...parts, ...extensionParts, ...mcpServerParts],
|
|
5830
|
-
abortSignal
|
|
5831
|
-
options.onFullTurnModel
|
|
5718
|
+
abortSignal
|
|
5832
5719
|
);
|
|
5833
5720
|
}
|
|
5834
5721
|
const pathSpecsToRead = atPathCommandParts.map(
|
|
@@ -5889,11 +5776,10 @@ ${contextPart.text}`
|
|
|
5889
5776
|
const processedQueryParts = options.promptLast ? [...referenceParts, promptPart] : [promptPart, ...referenceParts];
|
|
5890
5777
|
return this.#applyBridgeConversionsIfNeeded(
|
|
5891
5778
|
processedQueryParts,
|
|
5892
|
-
abortSignal
|
|
5893
|
-
options.onFullTurnModel
|
|
5779
|
+
abortSignal
|
|
5894
5780
|
);
|
|
5895
5781
|
}
|
|
5896
|
-
async #applyBridgeConversionsIfNeeded(originalParts, abortSignal
|
|
5782
|
+
async #applyBridgeConversionsIfNeeded(originalParts, abortSignal) {
|
|
5897
5783
|
const parts = await this.#applyVoiceBridgeIfNeeded(
|
|
5898
5784
|
originalParts,
|
|
5899
5785
|
abortSignal
|
|
@@ -5901,28 +5787,6 @@ ${contextPart.text}`
|
|
|
5901
5787
|
if (!hasImageParts(parts) || !shouldRunVisionBridge(this.config)) {
|
|
5902
5788
|
return parts;
|
|
5903
5789
|
}
|
|
5904
|
-
const fullTurnModel = this.config.getDefaultVisionBridgeModel();
|
|
5905
|
-
if (onFullTurnModel && fullTurnModel?.agentCapable) {
|
|
5906
|
-
const fullTurnParts = parts.map((part) => clampInlineMediaPart(part));
|
|
5907
|
-
if (!hasImageParts(fullTurnParts)) {
|
|
5908
|
-
return fullTurnParts;
|
|
5909
|
-
}
|
|
5910
|
-
const selected = onFullTurnModel(
|
|
5911
|
-
getFullTurnVisionModelSelector(fullTurnModel)
|
|
5912
|
-
);
|
|
5913
|
-
if (selected) {
|
|
5914
|
-
try {
|
|
5915
|
-
await this.messageEmitter.emitAgentMessage(
|
|
5916
|
-
formatFullTurnVisionNotice(fullTurnModel)
|
|
5917
|
-
);
|
|
5918
|
-
} catch (error) {
|
|
5919
|
-
debugLogger6.debug(
|
|
5920
|
-
`full-turn vision: failed to emit notice; continuing error=${error instanceof Error ? error.message : String(error)}`
|
|
5921
|
-
);
|
|
5922
|
-
}
|
|
5923
|
-
}
|
|
5924
|
-
return fullTurnParts;
|
|
5925
|
-
}
|
|
5926
5790
|
let bridgeResult;
|
|
5927
5791
|
try {
|
|
5928
5792
|
debugLogger6.debug("vision bridge: gate matched, running conversion");
|
|
@@ -6262,56 +6126,6 @@ var POSIX_TMP_LOCAL_READ_ROOT = "/tmp";
|
|
|
6262
6126
|
var BTW_CHILD_TIMEOUT_MS = 55e3;
|
|
6263
6127
|
var MCP_OAUTH_START_TIMEOUT_MS = 3e4;
|
|
6264
6128
|
var WORKSPACE_MEMORY_REMEMBER_CHILD_TIMEOUT_MS = 295e3;
|
|
6265
|
-
function createAcpSessionStartProfiler(span) {
|
|
6266
|
-
let failedStage;
|
|
6267
|
-
const setAttribute = /* @__PURE__ */ __name((name, value) => {
|
|
6268
|
-
try {
|
|
6269
|
-
span?.setAttribute(name, value);
|
|
6270
|
-
} catch {
|
|
6271
|
-
}
|
|
6272
|
-
}, "setAttribute");
|
|
6273
|
-
const recordStage = /* @__PURE__ */ __name((stage, start) => {
|
|
6274
|
-
const durationMs = Math.round((performance.now() - start) * 100) / 100;
|
|
6275
|
-
if (Number.isFinite(durationMs) && durationMs >= 0) {
|
|
6276
|
-
setAttribute(`qwen-code.daemon.session_start.${stage}_ms`, durationMs);
|
|
6277
|
-
}
|
|
6278
|
-
}, "recordStage");
|
|
6279
|
-
const recordFailure = /* @__PURE__ */ __name((stage) => {
|
|
6280
|
-
if (failedStage !== void 0) return;
|
|
6281
|
-
failedStage = stage;
|
|
6282
|
-
setAttribute("qwen-code.daemon.session_start.failed_stage", stage);
|
|
6283
|
-
}, "recordFailure");
|
|
6284
|
-
return {
|
|
6285
|
-
async time(stage, fn) {
|
|
6286
|
-
if (!span) return await fn();
|
|
6287
|
-
const start = performance.now();
|
|
6288
|
-
try {
|
|
6289
|
-
return await fn();
|
|
6290
|
-
} catch (error) {
|
|
6291
|
-
recordFailure(stage);
|
|
6292
|
-
throw error;
|
|
6293
|
-
} finally {
|
|
6294
|
-
recordStage(stage, start);
|
|
6295
|
-
}
|
|
6296
|
-
},
|
|
6297
|
-
timeSync(stage, fn) {
|
|
6298
|
-
if (!span) return fn();
|
|
6299
|
-
const start = performance.now();
|
|
6300
|
-
try {
|
|
6301
|
-
return fn();
|
|
6302
|
-
} catch (error) {
|
|
6303
|
-
recordFailure(stage);
|
|
6304
|
-
throw error;
|
|
6305
|
-
} finally {
|
|
6306
|
-
recordStage(stage, start);
|
|
6307
|
-
}
|
|
6308
|
-
},
|
|
6309
|
-
setSessionId(sessionId) {
|
|
6310
|
-
setAttribute("session.id", sessionId);
|
|
6311
|
-
}
|
|
6312
|
-
};
|
|
6313
|
-
}
|
|
6314
|
-
__name(createAcpSessionStartProfiler, "createAcpSessionStartProfiler");
|
|
6315
6129
|
function workspaceMemoryErrorData(code, diagnostics) {
|
|
6316
6130
|
return {
|
|
6317
6131
|
errorKind: code,
|
|
@@ -6392,40 +6206,6 @@ function isBulkLoadReplayRequest(params) {
|
|
|
6392
6206
|
return meta?.[LOAD_REPLAY_MODE_META_KEY] === LOAD_REPLAY_BULK_MODE;
|
|
6393
6207
|
}
|
|
6394
6208
|
__name(isBulkLoadReplayRequest, "isBulkLoadReplayRequest");
|
|
6395
|
-
function getLoadReplayPageSize(params) {
|
|
6396
|
-
const meta = isObjectRecord(params._meta) ? params._meta : void 0;
|
|
6397
|
-
const value = meta?.[LOAD_REPLAY_PAGE_SIZE_META_KEY];
|
|
6398
|
-
if (value === void 0) return void 0;
|
|
6399
|
-
if (!Number.isSafeInteger(value) || value < 1 || value > SESSION_TRANSCRIPT_MAX_LIMIT) {
|
|
6400
|
-
throw RequestError.invalidParams(
|
|
6401
|
-
void 0,
|
|
6402
|
-
`Invalid load replay page size; expected 1..${SESSION_TRANSCRIPT_MAX_LIMIT}`
|
|
6403
|
-
);
|
|
6404
|
-
}
|
|
6405
|
-
return value;
|
|
6406
|
-
}
|
|
6407
|
-
__name(getLoadReplayPageSize, "getLoadReplayPageSize");
|
|
6408
|
-
function isHistoryTurnStart(record) {
|
|
6409
|
-
return record.type === "user" && record.subtype !== "mid_turn_user_message";
|
|
6410
|
-
}
|
|
6411
|
-
__name(isHistoryTurnStart, "isHistoryTurnStart");
|
|
6412
|
-
function selectRecentHistoryRecords(records, pageSize) {
|
|
6413
|
-
if (pageSize === void 0 || records.length <= pageSize) {
|
|
6414
|
-
return { records, hasMore: false };
|
|
6415
|
-
}
|
|
6416
|
-
let start = records.length - pageSize;
|
|
6417
|
-
for (let i = start; i < records.length; i++) {
|
|
6418
|
-
if (isHistoryTurnStart(records[i])) {
|
|
6419
|
-
start = i;
|
|
6420
|
-
break;
|
|
6421
|
-
}
|
|
6422
|
-
}
|
|
6423
|
-
while (start > 0 && !isHistoryTurnStart(records[start])) {
|
|
6424
|
-
start--;
|
|
6425
|
-
}
|
|
6426
|
-
return { records: records.slice(start), hasMore: start > 0 };
|
|
6427
|
-
}
|
|
6428
|
-
__name(selectRecentHistoryRecords, "selectRecentHistoryRecords");
|
|
6429
6209
|
function createHiddenWorkspaceMemoryConfig(config) {
|
|
6430
6210
|
return new Proxy(config, {
|
|
6431
6211
|
get(target, prop) {
|
|
@@ -8434,7 +8214,7 @@ var QwenAgent = class {
|
|
|
8434
8214
|
async initialize(args) {
|
|
8435
8215
|
this.clientCapabilities = args.clientCapabilities;
|
|
8436
8216
|
const authMethods = buildAuthMethods();
|
|
8437
|
-
const version = "0.19.11
|
|
8217
|
+
const version = "0.19.11";
|
|
8438
8218
|
return {
|
|
8439
8219
|
protocolVersion: PROTOCOL_VERSION,
|
|
8440
8220
|
agentInfo: {
|
|
@@ -8490,42 +8270,25 @@ var QwenAgent = class {
|
|
|
8490
8270
|
}
|
|
8491
8271
|
}
|
|
8492
8272
|
}
|
|
8493
|
-
async newSession(
|
|
8494
|
-
|
|
8495
|
-
|
|
8496
|
-
|
|
8497
|
-
|
|
8498
|
-
|
|
8499
|
-
|
|
8500
|
-
|
|
8501
|
-
|
|
8502
|
-
|
|
8503
|
-
|
|
8504
|
-
|
|
8505
|
-
|
|
8506
|
-
|
|
8507
|
-
|
|
8508
|
-
|
|
8509
|
-
|
|
8510
|
-
|
|
8511
|
-
|
|
8512
|
-
"file_system_setup",
|
|
8513
|
-
() => this.setupFileSystem(config)
|
|
8514
|
-
);
|
|
8515
|
-
const session = await profiler.time(
|
|
8516
|
-
"session_register",
|
|
8517
|
-
() => this.createAndStoreSession(config, settings)
|
|
8518
|
-
);
|
|
8519
|
-
profiler.setSessionId(session.getId());
|
|
8520
|
-
return profiler.timeSync("response_build", () => ({
|
|
8521
|
-
sessionId: session.getId(),
|
|
8522
|
-
models: this.buildAvailableModels(config),
|
|
8523
|
-
modes: this.buildModesData(config),
|
|
8524
|
-
configOptions: this.buildConfigOptions(config)
|
|
8525
|
-
}));
|
|
8526
|
-
},
|
|
8527
|
-
parentContext ? { parentContext } : {}
|
|
8528
|
-
);
|
|
8273
|
+
async newSession({
|
|
8274
|
+
cwd,
|
|
8275
|
+
mcpServers
|
|
8276
|
+
}) {
|
|
8277
|
+
const settings = loadSettingsCached(cwd);
|
|
8278
|
+
this.settings = settings;
|
|
8279
|
+
const config = await this.newSessionConfig(cwd, mcpServers, settings);
|
|
8280
|
+
await this.ensureAuthenticated(config);
|
|
8281
|
+
this.setupFileSystem(config);
|
|
8282
|
+
const session = await this.createAndStoreSession(config, settings);
|
|
8283
|
+
const availableModels = this.buildAvailableModels(config);
|
|
8284
|
+
const modesData = this.buildModesData(config);
|
|
8285
|
+
const configOptions = this.buildConfigOptions(config);
|
|
8286
|
+
return {
|
|
8287
|
+
sessionId: session.getId(),
|
|
8288
|
+
models: availableModels,
|
|
8289
|
+
modes: modesData,
|
|
8290
|
+
configOptions
|
|
8291
|
+
};
|
|
8529
8292
|
}
|
|
8530
8293
|
async loadSession(params) {
|
|
8531
8294
|
const settings = loadSettingsCached(params.cwd);
|
|
@@ -8556,7 +8319,6 @@ var QwenAgent = class {
|
|
|
8556
8319
|
this.setupFileSystem(config);
|
|
8557
8320
|
const sessionData = config.getResumedSessionData();
|
|
8558
8321
|
const bulkReplay = isBulkLoadReplayRequest(params);
|
|
8559
|
-
const replayPageSize = bulkReplay ? getLoadReplayPageSize(params) : void 0;
|
|
8560
8322
|
const session = await this.createAndStoreSession(
|
|
8561
8323
|
config,
|
|
8562
8324
|
settings,
|
|
@@ -8570,15 +8332,11 @@ var QwenAgent = class {
|
|
|
8570
8332
|
let replayUpdates = [];
|
|
8571
8333
|
if (records) {
|
|
8572
8334
|
session.primeTurnFromHistory(records);
|
|
8573
|
-
const replayPage = selectRecentHistoryRecords(
|
|
8574
|
-
records,
|
|
8575
|
-
replayPageSize
|
|
8576
|
-
);
|
|
8577
8335
|
const replayUsage = createReplayCumulativeUsage();
|
|
8578
8336
|
const replay = await collectHistoryReplayUpdates({
|
|
8579
8337
|
sessionId: params.sessionId,
|
|
8580
8338
|
config,
|
|
8581
|
-
records
|
|
8339
|
+
records,
|
|
8582
8340
|
gaps: sessionData?.historyGaps,
|
|
8583
8341
|
cumulativeUsage: replayUsage,
|
|
8584
8342
|
logger: debugLogger7
|
|
@@ -8590,15 +8348,9 @@ var QwenAgent = class {
|
|
|
8590
8348
|
v: LOAD_REPLAY_VERSION,
|
|
8591
8349
|
updates: replayUpdates,
|
|
8592
8350
|
partial: true,
|
|
8593
|
-
replayError: replay.replayError
|
|
8594
|
-
...replayPage.hasMore ? { hasMore: true } : {}
|
|
8351
|
+
replayError: replay.replayError
|
|
8595
8352
|
};
|
|
8596
8353
|
}
|
|
8597
|
-
replayEnvelope ??= {
|
|
8598
|
-
v: LOAD_REPLAY_VERSION,
|
|
8599
|
-
updates: replayUpdates,
|
|
8600
|
-
...replayPage.hasMore ? { hasMore: true } : {}
|
|
8601
|
-
};
|
|
8602
8354
|
}
|
|
8603
8355
|
replayEnvelope ??= {
|
|
8604
8356
|
v: LOAD_REPLAY_VERSION,
|
|
@@ -9546,18 +9298,9 @@ var QwenAgent = class {
|
|
|
9546
9298
|
const currentModelId = activeRuntimeSnapshot ? activeRuntimeSnapshot.id : (config.getModel() || "").trim();
|
|
9547
9299
|
const hasCurrentModel = currentModelId.length > 0;
|
|
9548
9300
|
const currentAuth = activeRuntimeSnapshot?.authType ?? currentAuthType;
|
|
9549
|
-
const
|
|
9550
|
-
config.getAllConfiguredModels()
|
|
9551
|
-
);
|
|
9552
|
-
const currentAcpModelId = hasCurrentModel ? getCurrentAcpModelId(
|
|
9553
|
-
modelOptions,
|
|
9554
|
-
currentModelId,
|
|
9555
|
-
currentAuth,
|
|
9556
|
-
activeRuntimeSnapshot ? void 0 : config.getCurrentModelRegistryBaseUrl?.()
|
|
9557
|
-
) : void 0;
|
|
9301
|
+
const currentAcpModelId = hasCurrentModel && currentAuth ? formatAcpModelId(currentModelId, currentAuth) : currentModelId || void 0;
|
|
9558
9302
|
const providers = /* @__PURE__ */ new Map();
|
|
9559
|
-
for (const
|
|
9560
|
-
const { model, effectiveModelId, modelId } = option;
|
|
9303
|
+
for (const model of config.getAllConfiguredModels().filter(isMainSelectableModel)) {
|
|
9561
9304
|
const authType = String(model.authType);
|
|
9562
9305
|
let provider = providers.get(authType);
|
|
9563
9306
|
if (!provider) {
|
|
@@ -9570,7 +9313,9 @@ var QwenAgent = class {
|
|
|
9570
9313
|
};
|
|
9571
9314
|
providers.set(authType, provider);
|
|
9572
9315
|
}
|
|
9573
|
-
const
|
|
9316
|
+
const effectiveModelId = model.isRuntimeModel && model.runtimeSnapshotId ? model.runtimeSnapshotId : model.id;
|
|
9317
|
+
const modelId = formatAcpModelId(effectiveModelId, model.authType);
|
|
9318
|
+
const isCurrent = currentAuth === model.authType && hasCurrentModel && (currentModelId === effectiveModelId || currentModelId === model.id || currentAcpModelId === modelId);
|
|
9574
9319
|
const providerModel = {
|
|
9575
9320
|
modelId,
|
|
9576
9321
|
baseModelId: parseAcpBaseModelId(effectiveModelId),
|
|
@@ -10771,19 +10516,6 @@ var QwenAgent = class {
|
|
|
10771
10516
|
"Invalid transcript cursor"
|
|
10772
10517
|
);
|
|
10773
10518
|
}
|
|
10774
|
-
const rawBeforeRecordId = params["beforeRecordId"];
|
|
10775
|
-
if (rawBeforeRecordId !== void 0 && (typeof rawBeforeRecordId !== "string" || rawBeforeRecordId.length === 0)) {
|
|
10776
|
-
throw RequestError.invalidParams(
|
|
10777
|
-
void 0,
|
|
10778
|
-
"Invalid transcript record boundary"
|
|
10779
|
-
);
|
|
10780
|
-
}
|
|
10781
|
-
if (rawCursor !== void 0 && rawBeforeRecordId !== void 0) {
|
|
10782
|
-
throw RequestError.invalidParams(
|
|
10783
|
-
void 0,
|
|
10784
|
-
"Transcript cursor and record boundary are mutually exclusive"
|
|
10785
|
-
);
|
|
10786
|
-
}
|
|
10787
10519
|
const rawLimit = params["limit"];
|
|
10788
10520
|
if (rawLimit !== void 0 && (!Number.isSafeInteger(rawLimit) || rawLimit < 1 || rawLimit > SESSION_TRANSCRIPT_MAX_LIMIT)) {
|
|
10789
10521
|
throw RequestError.invalidParams(
|
|
@@ -10797,9 +10529,7 @@ var QwenAgent = class {
|
|
|
10797
10529
|
const reader = new SessionTranscriptReader(cwd);
|
|
10798
10530
|
const page = await reader.readPage(sessionId, {
|
|
10799
10531
|
...typeof rawCursor === "string" ? { cursor: rawCursor } : {},
|
|
10800
|
-
...typeof
|
|
10801
|
-
...typeof rawLimit === "number" ? { limit: rawLimit } : {},
|
|
10802
|
-
maxBytes: SESSION_TRANSCRIPT_MAX_PAGE_BYTES
|
|
10532
|
+
...typeof rawLimit === "number" ? { limit: rawLimit } : {}
|
|
10803
10533
|
});
|
|
10804
10534
|
const config = await this.getTranscriptReplayConfig(cwd, settings);
|
|
10805
10535
|
const replay = await replayTranscriptRecordPage({
|
|
@@ -10848,14 +10578,6 @@ var QwenAgent = class {
|
|
|
10848
10578
|
maxBytes: error.maxBytes
|
|
10849
10579
|
});
|
|
10850
10580
|
}
|
|
10851
|
-
if (error instanceof SessionTranscriptPageTooLargeError) {
|
|
10852
|
-
throw new RequestError(-32012, error.message, {
|
|
10853
|
-
errorKind: "transcript_page_too_large",
|
|
10854
|
-
sessionId,
|
|
10855
|
-
pageBytes: error.pageBytes,
|
|
10856
|
-
maxBytes: error.maxBytes
|
|
10857
|
-
});
|
|
10858
|
-
}
|
|
10859
10581
|
if (error.code === "ENOENT") {
|
|
10860
10582
|
if (typeof rawCursor === "string") {
|
|
10861
10583
|
throw new RequestError(
|
|
@@ -13457,22 +13179,23 @@ ${outputText}
|
|
|
13457
13179
|
buildAvailableModels(config) {
|
|
13458
13180
|
const rawCurrentModelId = (config.getModel() || this.config.getModel() || "").trim();
|
|
13459
13181
|
const currentAuthType = config.getAuthType();
|
|
13460
|
-
const
|
|
13182
|
+
const allConfiguredModels = config.getAllConfiguredModels().filter(isMainSelectableModel);
|
|
13461
13183
|
const activeRuntimeSnapshot = config.getActiveRuntimeModelSnapshot?.();
|
|
13462
|
-
const currentModelId =
|
|
13463
|
-
|
|
13464
|
-
activeRuntimeSnapshot
|
|
13465
|
-
|
|
13466
|
-
|
|
13467
|
-
|
|
13468
|
-
|
|
13469
|
-
|
|
13470
|
-
|
|
13471
|
-
|
|
13472
|
-
|
|
13473
|
-
|
|
13474
|
-
|
|
13475
|
-
|
|
13184
|
+
const currentModelId = activeRuntimeSnapshot ? formatAcpModelId(
|
|
13185
|
+
activeRuntimeSnapshot.id,
|
|
13186
|
+
activeRuntimeSnapshot.authType
|
|
13187
|
+
) : this.formatCurrentModelId(rawCurrentModelId, currentAuthType);
|
|
13188
|
+
const mappedAvailableModels = allConfiguredModels.map((model) => {
|
|
13189
|
+
const effectiveModelId = model.isRuntimeModel && model.runtimeSnapshotId ? model.runtimeSnapshotId : model.id;
|
|
13190
|
+
return {
|
|
13191
|
+
modelId: formatAcpModelId(effectiveModelId, model.authType),
|
|
13192
|
+
name: model.label,
|
|
13193
|
+
description: model.description ?? null,
|
|
13194
|
+
_meta: {
|
|
13195
|
+
contextLimit: model.contextWindowSize ?? tokenLimit(model.id)
|
|
13196
|
+
}
|
|
13197
|
+
};
|
|
13198
|
+
});
|
|
13476
13199
|
return {
|
|
13477
13200
|
currentModelId,
|
|
13478
13201
|
availableModels: mappedAvailableModels
|
|
@@ -13492,16 +13215,14 @@ ${outputText}
|
|
|
13492
13215
|
}
|
|
13493
13216
|
buildConfigOptions(config) {
|
|
13494
13217
|
const currentApprovalMode = config.getApprovalMode();
|
|
13495
|
-
const
|
|
13218
|
+
const allConfiguredModels = config.getAllConfiguredModels().filter(isMainSelectableModel);
|
|
13496
13219
|
const rawCurrentModelId = (config.getModel() || "").trim();
|
|
13497
13220
|
const currentAuthType = config.getAuthType?.();
|
|
13498
13221
|
const activeRuntimeSnapshot = config.getActiveRuntimeModelSnapshot?.();
|
|
13499
|
-
const currentModelId =
|
|
13500
|
-
|
|
13501
|
-
activeRuntimeSnapshot
|
|
13502
|
-
|
|
13503
|
-
activeRuntimeSnapshot ? void 0 : config.getCurrentModelRegistryBaseUrl?.()
|
|
13504
|
-
);
|
|
13222
|
+
const currentModelId = activeRuntimeSnapshot ? formatAcpModelId(
|
|
13223
|
+
activeRuntimeSnapshot.id,
|
|
13224
|
+
activeRuntimeSnapshot.authType
|
|
13225
|
+
) : this.formatCurrentModelId(rawCurrentModelId, currentAuthType);
|
|
13505
13226
|
const modeOptions = APPROVAL_MODES.map((mode) => ({
|
|
13506
13227
|
value: mode,
|
|
13507
13228
|
name: APPROVAL_MODE_INFO[mode].name,
|
|
@@ -13516,11 +13237,14 @@ ${outputText}
|
|
|
13516
13237
|
currentValue: currentApprovalMode,
|
|
13517
13238
|
options: modeOptions
|
|
13518
13239
|
};
|
|
13519
|
-
const
|
|
13520
|
-
|
|
13521
|
-
|
|
13522
|
-
|
|
13523
|
-
|
|
13240
|
+
const modelOptions = allConfiguredModels.map((model) => {
|
|
13241
|
+
const effectiveModelId = model.isRuntimeModel && model.runtimeSnapshotId ? model.runtimeSnapshotId : model.id;
|
|
13242
|
+
return {
|
|
13243
|
+
value: formatAcpModelId(effectiveModelId, model.authType),
|
|
13244
|
+
name: model.label,
|
|
13245
|
+
description: model.description ?? ""
|
|
13246
|
+
};
|
|
13247
|
+
});
|
|
13524
13248
|
const modelConfigOption = {
|
|
13525
13249
|
id: "model",
|
|
13526
13250
|
name: "Model",
|
|
@@ -13528,11 +13252,19 @@ ${outputText}
|
|
|
13528
13252
|
category: "model",
|
|
13529
13253
|
type: "select",
|
|
13530
13254
|
currentValue: currentModelId,
|
|
13531
|
-
options:
|
|
13255
|
+
options: modelOptions
|
|
13532
13256
|
};
|
|
13533
13257
|
return [modeConfigOption, modelConfigOption];
|
|
13534
13258
|
}
|
|
13259
|
+
formatCurrentModelId(baseModelId, authType) {
|
|
13260
|
+
if (!baseModelId) return baseModelId;
|
|
13261
|
+
return authType ? formatAcpModelId(baseModelId, authType) : baseModelId;
|
|
13262
|
+
}
|
|
13535
13263
|
};
|
|
13264
|
+
function isMainSelectableModel(model) {
|
|
13265
|
+
return model.fastOnly !== true && model.voiceOnly !== true;
|
|
13266
|
+
}
|
|
13267
|
+
__name(isMainSelectableModel, "isMainSelectableModel");
|
|
13536
13268
|
function diffSettingsKeys(oldMerged, newMerged) {
|
|
13537
13269
|
const changed = /* @__PURE__ */ new Set();
|
|
13538
13270
|
const allKeys = /* @__PURE__ */ new Set([
|
|
@@ -13565,11 +13297,6 @@ export {
|
|
|
13565
13297
|
* Copyright 2025 Qwen Team
|
|
13566
13298
|
* SPDX-License-Identifier: Apache-2.0
|
|
13567
13299
|
*/
|
|
13568
|
-
/**
|
|
13569
|
-
* @license
|
|
13570
|
-
* Copyright 2026 Qwen
|
|
13571
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
13572
|
-
*/
|
|
13573
13300
|
/**
|
|
13574
13301
|
* @license
|
|
13575
13302
|
* Copyright 2025 Qwen
|