@qwen-code/qwen-code 0.19.9 → 0.19.10-nightly.20260715.c538bd70d
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 +8 -0
- package/bundled/qc-helper/docs/features/channels/dingtalk.md +3 -0
- package/bundled/qc-helper/docs/features/channels/overview.md +11 -3
- package/bundled/qc-helper/docs/features/code-review.md +88 -44
- package/bundled/qc-helper/docs/features/commands.md +6 -6
- package/bundled/qc-helper/docs/features/hooks.md +29 -0
- package/bundled/qc-helper/docs/features/sub-agents.md +21 -0
- package/bundled/qc-helper/docs/qwen-serve.md +46 -20
- package/bundled/qc-helper/docs/reference/keyboard-shortcuts.md +1 -1
- package/bundled/review/DESIGN.md +219 -33
- package/bundled/review/SKILL.md +449 -153
- package/chunks/{MaxSizedBox-6HYJ3ZPJ.js → MaxSizedBox-LOOBDOTZ.js} +31 -31
- package/chunks/{StandaloneSessionPicker-WS4GXYOG.js → StandaloneSessionPicker-76CLZSH2.js} +51 -49
- package/chunks/{acpAgent-5FWSOZL5.js → acpAgent-DFJOK7EB.js} +567 -482
- package/chunks/{agent-HOLHB3RT.js → agent-OJQWXNHP.js} +26 -26
- package/chunks/{agent-headless-SXL6H56A.js → agent-headless-ND7GOORY.js} +26 -26
- package/chunks/{anthropicContentGenerator-L73TO3DB.js → anthropicContentGenerator-56U3YCP2.js} +5 -5
- package/chunks/{artifact-tool-U7IRTLIV.js → artifact-tool-MIZLXBLF.js} +2 -2
- package/chunks/{askUserQuestion-2DLUUZZG.js → askUserQuestion-XMJVPNWM.js} +2 -2
- package/chunks/{bridge-BCJQ7BBB.js → bridge-SNJK2JLK.js} +32 -32
- package/chunks/{ca-UJ6HC4H2.js → ca-C2JTT2N5.js} +4 -1
- package/chunks/channel-worker-group-K7QKH6IG.js +13 -0
- package/chunks/channel-worker-manager-YSFB4HUU.js +418 -0
- package/chunks/channel-worker-supervisor-QCKIOYZD.js +20 -0
- package/chunks/{chunk-CCDMCZPP.js → chunk-26UABK2C.js} +1 -1
- package/chunks/{chunk-LXNEJD34.js → chunk-2FO5GFKZ.js} +1 -1
- package/chunks/{chunk-L36P3NBD.js → chunk-2W3OOD4W.js} +2 -0
- package/chunks/{chunk-7R3CZA3Q.js → chunk-2Z5UX4KI.js} +1 -1
- package/chunks/chunk-3MX7D6QN.js +516 -0
- package/chunks/{chunk-CLFKOZEK.js → chunk-3XULHBC7.js} +1 -1
- package/chunks/chunk-4QZADKJS.js +34 -0
- package/chunks/{chunk-E2IY465S.js → chunk-4UDHAJFV.js} +10 -10
- package/chunks/{chunk-5U27BZ72.js → chunk-55SAYASQ.js} +190 -77
- package/chunks/chunk-5HBA2Z7V.js +28 -0
- package/chunks/{chunk-ZJE7NSL3.js → chunk-5M6IDOMF.js} +34 -97
- package/chunks/{chunk-HVY356M2.js → chunk-5SQ55XJZ.js} +3 -3
- package/chunks/{chunk-EAXLGSFP.js → chunk-6GRAQNTY.js} +8 -8
- package/chunks/{chunk-K434OPES.js → chunk-6WPJRYLZ.js} +3 -3
- package/chunks/{chunk-VWPVHAMO.js → chunk-7DXHIMXL.js} +5 -1
- package/chunks/{chunk-J4TSQ5EQ.js → chunk-7NFB7LBQ.js} +8 -1
- package/chunks/{chunk-5SFOMFG4.js → chunk-7R4DPSRA.js} +36 -2
- package/chunks/{chunk-W2UIXQDL.js → chunk-7STBROEV.js} +1 -1
- package/chunks/{chunk-BMGVRZN4.js → chunk-AETEZU4U.js} +1 -1
- package/chunks/{chunk-HPDUL5MF.js → chunk-AGZWN4WV.js} +1 -1
- package/chunks/{chunk-RDJSGHZE.js → chunk-ALGGS7UH.js} +1 -38
- package/chunks/{chunk-GWHYEOV2.js → chunk-ARKANCNX.js} +2 -1
- package/chunks/{chunk-34Z3U5RQ.js → chunk-AU4R7ACM.js} +518 -114
- package/chunks/{channel-worker-supervisor-WSOAAYUO.js → chunk-B7MFJBKE.js} +67 -35
- package/chunks/{chunk-524RQP4Q.js → chunk-B7NUUEXC.js} +10 -4
- package/chunks/{chunk-MC23XKFE.js → chunk-BLPMRN4B.js} +3 -3
- package/chunks/{chunk-A3XKDTSH.js → chunk-BRRKAUGR.js} +4 -4
- package/chunks/{chunk-W3JHSWRP.js → chunk-BUPLOPUA.js} +4 -4
- package/chunks/{chunk-3VAGG5T5.js → chunk-BYOOK22F.js} +121 -16
- package/chunks/{chunk-EMDMPBJ4.js → chunk-C47ENMZJ.js} +3 -3
- package/chunks/{chunk-3AHXV67U.js → chunk-C5TVXLJZ.js} +1 -1
- package/chunks/{chunk-X6TJ3YZV.js → chunk-CGT5TQIZ.js} +159 -57
- package/chunks/{chunk-4C5BQ2D2.js → chunk-CQQD7MDG.js} +82 -12
- package/chunks/{chunk-KKNMOEZH.js → chunk-E2UVIFI2.js} +185 -398
- package/chunks/{chunk-P67PFTUT.js → chunk-EPY4ZEU6.js} +4 -4
- package/chunks/{chunk-6PESIEKJ.js → chunk-EZSRHWGS.js} +68 -6
- package/chunks/{chunk-4GORAUCN.js → chunk-F333XEAU.js} +1 -1
- package/chunks/{chunk-YLV3XXFB.js → chunk-FBU7WRZI.js} +17 -1
- package/chunks/{chunk-Q6I5QHMH.js → chunk-FGTCZJOD.js} +1 -1
- package/chunks/{chunk-LK7KUE55.js → chunk-FSA7ERJ2.js} +1 -1
- package/chunks/{chunk-B4G2WOFA.js → chunk-FTU55ZZ7.js} +3 -3
- package/chunks/{chunk-EGYZ275M.js → chunk-GCD7PEDZ.js} +4 -4
- package/chunks/{chunk-SJHDYNHF.js → chunk-GDQQRV43.js} +3 -3
- package/chunks/{chunk-3BTRNWWD.js → chunk-GOXKNSDZ.js} +1 -64
- package/chunks/{chunk-GZRTYZ2R.js → chunk-GQKWT45X.js} +154 -1
- package/chunks/chunk-GYTKQYDB.js +23 -0
- package/chunks/{chunk-YVEDCAUE.js → chunk-HGT6JR3U.js} +19 -0
- package/chunks/{chunk-N3EMS75V.js → chunk-HKM2TEF7.js} +1268 -1233
- package/chunks/chunk-IDS7MSUP.js +74 -0
- package/chunks/{chunk-PVZM22CK.js → chunk-INKAZNYC.js} +5 -5
- package/chunks/{chunk-3G7CIHVV.js → chunk-IOQ75R4R.js} +4 -4
- package/chunks/{chunk-AURZZYMD.js → chunk-IQOOJSPR.js} +4 -4
- package/chunks/{chunk-AKIVHSJR.js → chunk-J4UQXGVL.js} +111 -93
- package/chunks/{chunk-VTU57BWZ.js → chunk-JEKOCLRN.js} +1 -1
- package/chunks/{chunk-B5ORX3FG.js → chunk-JGUT3LWZ.js} +6 -1
- package/chunks/{chunk-PDZ7MBDG.js → chunk-JIQHT2O6.js} +27 -6
- package/chunks/{chunk-XUOOWUZS.js → chunk-JPAH76WA.js} +1 -1
- package/chunks/{chunk-BAPGSC7U.js → chunk-K4LG6TVJ.js} +23 -9
- package/chunks/chunk-KET3M4K4.js +493 -0
- package/chunks/{chunk-ORBGV7NJ.js → chunk-KKRTYONM.js} +6 -4
- package/chunks/{chunk-SCGXUJBT.js → chunk-KPA5QGN2.js} +3 -3
- package/chunks/{chunk-IAVB3HM3.js → chunk-KSO42X3Z.js} +13 -0
- package/chunks/{chunk-4QLQE5WJ.js → chunk-L5U3ELZX.js} +1 -1
- package/chunks/{chunk-77XJ3SWN.js → chunk-LIUEXYPL.js} +5 -5
- package/chunks/{chunk-4ZVWQHEQ.js → chunk-LQIDP6K5.js} +1 -1
- package/chunks/{chunk-34MW4KTI.js → chunk-LT5CRUA5.js} +2 -2
- package/chunks/{chunk-DC5Z3DU6.js → chunk-LXLTBIDP.js} +43 -6
- package/chunks/{chunk-VA4KQY6V.js → chunk-MEK7CQJR.js} +3 -3
- package/chunks/{chunk-KHUQZZJ6.js → chunk-MO7O5722.js} +370 -36
- package/chunks/chunk-MR3PXB6E.js +48 -0
- package/chunks/{chunk-PODM4SZ4.js → chunk-MV52C5MA.js} +5 -5
- package/chunks/{chunk-WL4L7EZH.js → chunk-OA4JVLSA.js} +27 -1
- package/chunks/{chunk-X4NKFGFJ.js → chunk-OJAMDVF5.js} +0 -15
- package/chunks/{chunk-BZIFY5TF.js → chunk-OKAIGAYW.js} +3 -3
- package/chunks/{chunk-ECNYL4AA.js → chunk-OPNPGO6D.js} +1 -1
- package/chunks/{chunk-3SJSQXNS.js → chunk-PEJWA3QQ.js} +12 -8
- package/chunks/{chunk-MXL5UP4X.js → chunk-Q6TUALBE.js} +1 -1
- package/chunks/{chunk-QYMQSECS.js → chunk-QAW7PIHT.js} +2 -2
- package/chunks/{chunk-5HOMWMCL.js → chunk-QEDYXCLG.js} +4167 -1338
- package/chunks/chunk-QNNTA7IX.js +91 -0
- package/chunks/{chunk-D2GFWEXB.js → chunk-QNT5T4Q2.js} +6 -6
- package/chunks/{chunk-CUMMSHH6.js → chunk-R5XLNDE2.js} +1 -1
- package/chunks/{chunk-LUODI7WD.js → chunk-RCEEXIOO.js} +6 -4
- package/chunks/{chunk-WQUQVGTF.js → chunk-RQWDLG6Z.js} +183 -96
- package/chunks/{chunk-XYQSMABS.js → chunk-SLCVZX6F.js} +4 -4
- package/chunks/{chunk-CEA3E3JB.js → chunk-SPJQO2CE.js} +2 -2
- package/chunks/{chunk-JSG7ZSBC.js → chunk-TQBODCFD.js} +1 -1
- package/chunks/chunk-TV6K2FB4.js +224 -0
- package/chunks/{chunk-5XUCZNSY.js → chunk-TYLOFD2U.js} +1 -1
- package/chunks/{chunk-CNEIYWSA.js → chunk-UKWAQ7AV.js} +5 -5
- package/chunks/{chunk-7PU4FYLG.js → chunk-US4YQT62.js} +4 -4
- package/chunks/{chunk-Q4YQW46J.js → chunk-UYPPCIJQ.js} +36 -18
- package/chunks/{chunk-YAUFFXDS.js → chunk-UZKG7HFG.js} +12 -11
- package/chunks/{chunk-GWLSNBG4.js → chunk-VQLRHJKL.js} +30 -26
- package/chunks/{chunk-L6P4KPHR.js → chunk-VRUHAVZS.js} +59 -39
- package/chunks/{chunk-HKMAENAO.js → chunk-W2U4RJJU.js} +8 -6
- package/chunks/{chunk-ATAKVRIF.js → chunk-WDSCTLAB.js} +7 -7
- package/chunks/{chunk-ZLXQN2QS.js → chunk-WIEO4CWB.js} +1 -1
- package/chunks/{chunk-OQ4DRIOA.js → chunk-WJOC24IW.js} +2 -2
- package/chunks/{chunk-J3JA76CF.js → chunk-WTNZ6DXB.js} +1 -1
- package/chunks/{chunk-NVYTCB5Z.js → chunk-XCR44EEA.js} +14589 -13980
- package/chunks/{chunk-TDEXZKMT.js → chunk-Y66VOBRP.js} +2 -2
- package/chunks/{chunk-CC2ITGCF.js → chunk-YHN5SUIJ.js} +49 -6
- package/chunks/{chunk-D5SKC4YG.js → chunk-ZBAROUR6.js} +41 -13
- package/chunks/{chunk-U2NNEY4R.js → chunk-ZEEVKDO7.js} +1 -1
- package/chunks/{chunk-5VXNZWGF.js → chunk-ZLOHB76C.js} +1 -1
- package/chunks/{chunk-JZETEN3Z.js → chunk-ZNCLTRNU.js} +3 -3
- package/chunks/{chunk-TO6QE22P.js → chunk-ZP4ZZJJG.js} +26 -22
- package/chunks/{chunk-UOZWKTQG.js → chunk-ZPAHLFZU.js} +2 -2
- package/chunks/{chunk-XLA62MYB.js → chunk-ZTXZ7FM4.js} +2 -2
- package/chunks/{computer-use-HM37RX6A.js → computer-use-DRETHEQF.js} +26 -26
- package/chunks/{config-utils-NV2SVGPB.js → config-utils-XSHOMMK4.js} +3 -2
- package/chunks/{contextCommand-OF5SFGH2.js → contextCommand-7YJUW23J.js} +28 -28
- package/chunks/{create-sub-session-INX7TXJI.js → create-sub-session-EAB2U5XW.js} +2 -2
- package/chunks/{create-sub-session-KPRT7ECJ.js → create-sub-session-L5HOZAEL.js} +26 -26
- package/chunks/{cron-create-AMBKGZX6.js → cron-create-GMVKSXZT.js} +4 -4
- package/chunks/{cron-delete-LRU4OJYG.js → cron-delete-VDZKUAVK.js} +4 -4
- package/chunks/{cron-list-WVP2JXER.js → cron-list-UG7C7RAR.js} +4 -4
- package/chunks/{daemon-ARHTSTXP.js → daemon-MI5HF26N.js} +603 -62
- package/chunks/{daemon-status-provider-B2UTZUJ2.js → daemon-status-provider-2D47GOJT.js} +36 -36
- package/chunks/{de-EBJN3OVN.js → de-2VCDRDGU.js} +4 -1
- package/chunks/{dist-WKPOYU7O.js → dist-IEXZC5ZR.js} +1 -1
- package/chunks/{dist-XKU3ABM5.js → dist-PQK4GCKA.js} +1 -1
- package/chunks/{dist-VHV4EVHG.js → dist-U75JK3PF.js} +1 -1
- package/chunks/{dist-R7LN5AZE.js → dist-VXO7QBON.js} +2 -2
- package/chunks/{dist-PNVLTKTL.js → dist-WH4TZSH3.js} +158 -4
- package/chunks/{dist-QYCAEZIT.js → dist-X2ABIW5R.js} +5 -1
- package/chunks/{earlyInputCapture-3VTHRC4C.js → earlyInputCapture-OJQPGCSX.js} +27 -27
- package/chunks/{edit-VNI4NJ73.js → edit-LZOAFLT2.js} +27 -27
- package/chunks/{en-5A6LA7RK.js → en-NJCA3TAA.js} +5 -1
- package/chunks/{enter-worktree-IYYBKPZT.js → enter-worktree-VL2TCGI5.js} +26 -26
- package/chunks/{enterPlanMode-GMC5FD5A.js → enterPlanMode-QGHBHZWI.js} +42 -27
- package/chunks/{environment-5HSSRMJ7.js → environment-2G5IC2EU.js} +30 -29
- package/chunks/{errors-HMFCJJ7P.js → errors-7QNQDNI2.js} +28 -28
- package/chunks/{exit-worktree-6BHCMP5G.js → exit-worktree-5V3X2MRH.js} +26 -26
- package/chunks/{exitPlanMode-CJW7G74W.js → exitPlanMode-XDPNQB4H.js} +26 -26
- package/chunks/{fast-path-FRDMDVHG.js → fast-path-NNSD4BVZ.js} +3 -3
- package/chunks/{fast-path-settings-5QZE64HR.js → fast-path-settings-DAOVFADC.js} +6 -4
- package/chunks/{fr-YXRABLYZ.js → fr-5F3E7WKD.js} +4 -1
- package/chunks/{gemini-QYSEGHAX.js → gemini-RKDUWGXJ.js} +139 -76
- package/chunks/{geminiContentGenerator-J7YNZDYP.js → geminiContentGenerator-V7QGHXVF.js} +4 -4
- package/chunks/{glob-BRCSGFOT.js → glob-ZNQUUOTS.js} +28 -27
- package/chunks/{grep-EE2DUOSY.js → grep-NYIGLM7R.js} +26 -26
- package/chunks/{handleAutoUpdate-5NWTLR67.js → handleAutoUpdate-UBQ4IQXY.js} +30 -30
- package/chunks/{i18n-BASPENNQ.js → i18n-5T3S6SGP.js} +27 -27
- package/chunks/initializer-TJED246Q.js +73 -0
- package/chunks/{installationInfo-W6V4DT7W.js → installationInfo-OTEU7FKR.js} +27 -27
- package/chunks/{ja-7VQOANVG.js → ja-66J6B53L.js} +5 -2
- package/chunks/{keychain-token-storage-VKUBNCP4.js → keychain-token-storage-AU22CQI6.js} +2 -2
- package/chunks/list-6OHS7MFJ.js +76 -0
- package/chunks/loadedSettingsAdapter-5456XIYG.js +70 -0
- package/chunks/{loop-wakeup-WX7BLWWP.js → loop-wakeup-C4EXLYVA.js} +5 -5
- package/chunks/{ls-ZB2BDP6T.js → ls-2OUTG3IZ.js} +4 -4
- package/chunks/{lsp-V5DN4YUJ.js → lsp-4VMNXZW6.js} +2 -2
- package/chunks/mcp-NOWRPFKY.js +70 -0
- package/chunks/{monitor-X5Z3H4FY.js → monitor-CVDZO3IZ.js} +26 -26
- package/chunks/nonInteractiveCli-UGI7Y43E.js +129 -0
- package/chunks/{notebook-edit-TRM2QIJK.js → notebook-edit-NWIA5TEJ.js} +27 -27
- package/chunks/{openaiContentGenerator-AAYONPMF.js → openaiContentGenerator-KJONBBJO.js} +12 -12
- package/chunks/{pidfile-D4I4FTVA.js → pidfile-L3TGXMTF.js} +27 -27
- package/chunks/{pt-2C6YCSHL.js → pt-TFZO5Y6T.js} +4 -1
- package/chunks/{qwenContentGenerator-K3HZ2H76.js → qwenContentGenerator-GXUZB5SJ.js} +28 -28
- package/chunks/{qwenOAuth2-PJQ27GSO.js → qwenOAuth2-LEYOU7RU.js} +5 -5
- package/chunks/{read-file-7SZSIZOL.js → read-file-I4OUZXTA.js} +8 -8
- package/chunks/{read-mcp-resource-SM5DA4RG.js → read-mcp-resource-JUFHCKSC.js} +2 -2
- package/chunks/{record-artifact-4XKZX3UW.js → record-artifact-DWSMBXYY.js} +2 -2
- package/chunks/{ripGrep-YNPFVCZP.js → ripGrep-XLCXANIO.js} +26 -26
- package/chunks/{ru-6BBHVZZV.js → ru-4L4LFHIT.js} +4 -1
- package/chunks/{run-qwen-serve-DMWV5N6L.js → run-qwen-serve-R6SBP6YS.js} +1232 -371
- package/chunks/{runtime-57WWRVHN.js → runtime-U3S33YUQ.js} +42 -37
- package/chunks/{scheduler-YBLGWSIL.js → scheduler-65QCIELP.js} +26 -26
- package/chunks/{send-message-F36YD6KQ.js → send-message-JZ752NWD.js} +3 -3
- package/chunks/{serve-R63NK3CV.js → serve-PSPOFCOD.js} +36 -34
- package/chunks/{server-Z22GCAXP.js → server-6P5ZB56O.js} +5561 -1377
- package/chunks/{session-HKAAI7BN.js → session-ILLOYW75.js} +298 -98
- package/chunks/{settings-3EYN66GK.js → settings-RMUJGYIK.js} +34 -32
- package/chunks/{shell-6YXINTWJ.js → shell-65GTAN5Q.js} +28 -26
- package/chunks/{skill-OO57P4X6.js → skill-L76U3YCX.js} +10 -10
- package/chunks/{spawnChannel-JD7G4VU6.js → spawnChannel-LXIGZ4EM.js} +28 -28
- package/chunks/{src-G5UPLZSZ.js → src-DWZT2X3Z.js} +87 -27
- package/chunks/{standalone-update-OB7F4JPZ.js → standalone-update-F6SRKPSD.js} +28 -28
- package/chunks/{startInteractiveUI-73EGLIIH.js → startInteractiveUI-UEJQP7S3.js} +730 -397
- package/chunks/{syntheticOutput-34H7LGA7.js → syntheticOutput-LELY6HAI.js} +3 -3
- package/chunks/{task-create-FRGOEIKY.js → task-create-QY3BIMNM.js} +8 -7
- package/chunks/{task-list-OW766BXZ.js → task-list-D2U47WBJ.js} +6 -5
- package/chunks/{task-stop-SIR5SNBN.js → task-stop-N6E5IYLH.js} +2 -2
- package/chunks/{task-update-YRA532MT.js → task-update-HJCQILLB.js} +8 -7
- package/chunks/{team-create-PECAAPXK.js → team-create-4QBZVOGN.js} +26 -26
- package/chunks/{team-delete-6OSECUZC.js → team-delete-RCWYDRF4.js} +6 -5
- package/chunks/{team-plan-approval-L6F434RY.js → team-plan-approval-BK4CIOFV.js} +26 -26
- package/chunks/{theme-manager-ZG4RY6GU.js → theme-manager-5F2IGW6E.js} +27 -27
- package/chunks/{todoWrite-YDMFEV4G.js → todoWrite-FKCGATPJ.js} +4 -4
- package/chunks/{tool-search-THVIWAPB.js → tool-search-J2ESO33H.js} +9 -9
- package/chunks/{total-session-admission-JOKNRIIA.js → total-session-admission-U4LZ5QTQ.js} +33 -33
- package/chunks/tree-sitter-YJVE2ZUK.js +2980 -0
- package/chunks/{trustedFolders-EOGT3UVS.js → trustedFolders-TIDOXCJA.js} +29 -28
- package/chunks/types-ML3TRJQ5.js +16 -0
- package/chunks/{updateCheck-2KYEYVSB.js → updateCheck-VRVR26FI.js} +29 -29
- package/chunks/{validateNonInterActiveAuth-EN6ZQSR2.js → validateNonInterActiveAuth-UGKYAVLG.js} +75 -71
- package/chunks/{version-3UEA6ZIR.js → version-7HR6VZAT.js} +1 -1
- package/chunks/{web-fetch-PAAEQKBW.js → web-fetch-QGODBB6S.js} +5 -5
- package/chunks/{workflow-QCCCMYP3.js → workflow-EDQAITEW.js} +27 -27
- package/chunks/workspace-providers-status-27UGAK77.js +73 -0
- package/chunks/workspace-registration-store-5H7577YQ.js +27 -0
- package/chunks/{workspace-registry-24QFLQYH.js → workspace-registry-F3THGAXC.js} +33 -33
- package/chunks/workspace-service-4JSAQAHP.js +86 -0
- package/chunks/workspace-skills-status-5JTWZHZU.js +72 -0
- package/chunks/{write-file-I3MUDRIE.js → write-file-UY6XCZZM.js} +27 -27
- package/chunks/{zh-RQE7I22T.js → zh-FSAH32JB.js} +6 -2
- package/chunks/{zh-TW-TBPQGHKH.js → zh-TW-D2YIE2LO.js} +6 -2
- package/cli.js +11 -11
- package/locales/ca.js +6 -0
- package/locales/de.js +6 -0
- package/locales/en.js +8 -0
- package/locales/fr.js +6 -0
- package/locales/ja.js +7 -1
- package/locales/pt.js +6 -0
- package/locales/ru.js +6 -0
- package/locales/zh-TW.js +9 -1
- package/locales/zh.js +9 -1
- package/package.json +3 -3
- package/web-shell/assets/{arc-C15hqnJe.js → arc-CObt_TK9.js} +1 -1
- package/web-shell/assets/{architectureDiagram-3BPJPVTR-B-At37J_.js → architectureDiagram-3BPJPVTR-B7aiJ6CK.js} +1 -1
- package/web-shell/assets/{blockDiagram-GPEHLZMM-B51wjcU7.js → blockDiagram-GPEHLZMM-BSK2CrID.js} +1 -1
- package/web-shell/assets/{c4Diagram-AAUBKEIU-xBK7BAwN.js → c4Diagram-AAUBKEIU-Bhx2p7T_.js} +1 -1
- package/web-shell/assets/channel-BBaLq8MV.js +1 -0
- package/web-shell/assets/{chunk-2J33WTMH-xKmLg7Yr.js → chunk-2J33WTMH-c3Hzv0Ni.js} +1 -1
- package/web-shell/assets/{chunk-4BX2VUAB-BfkdKZCM.js → chunk-4BX2VUAB-DNXaK7ZF.js} +1 -1
- package/web-shell/assets/{chunk-55IACEB6-DT713sZf.js → chunk-55IACEB6-BXjvDj_i.js} +1 -1
- package/web-shell/assets/{chunk-727SXJPM-CYEeAamv.js → chunk-727SXJPM-B6CaKFp-.js} +1 -1
- package/web-shell/assets/{chunk-AQP2D5EJ-DBN-5CFd.js → chunk-AQP2D5EJ-tij6Mz9B.js} +1 -1
- package/web-shell/assets/{chunk-FMBD7UC4-CGZKk4PH.js → chunk-FMBD7UC4-DdlsGk2h.js} +1 -1
- package/web-shell/assets/{chunk-ND2GUHAM-qQbC2O-y.js → chunk-ND2GUHAM-CdgGZSHE.js} +1 -1
- package/web-shell/assets/{chunk-QZHKN3VN-B3zeXwsX.js → chunk-QZHKN3VN-D8oJn1C0.js} +1 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-B2ZK6sWE.js +1 -0
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-B2ZK6sWE.js +1 -0
- package/web-shell/assets/{cose-bilkent-S5V4N54A-BKsl1Wvy.js → cose-bilkent-S5V4N54A-BUVmNp1Y.js} +1 -1
- package/web-shell/assets/{dagre-BM42HDAG-CuuuLiBK.js → dagre-BM42HDAG-CO4q310O.js} +1 -1
- package/web-shell/assets/{diagram-2AECGRRQ-CG4_eKiV.js → diagram-2AECGRRQ-C6gFvWkg.js} +1 -1
- package/web-shell/assets/{diagram-5GNKFQAL-DSFTmZB1.js → diagram-5GNKFQAL-NG2I_c0h.js} +1 -1
- package/web-shell/assets/{diagram-KO2AKTUF-BxwlEHn8.js → diagram-KO2AKTUF-DFKMS6I9.js} +1 -1
- package/web-shell/assets/{diagram-LMA3HP47-BUAg-jMG.js → diagram-LMA3HP47-BiElfsfP.js} +1 -1
- package/web-shell/assets/{diagram-OG6HWLK6-BFM2jlO5.js → diagram-OG6HWLK6-zLWDYUqu.js} +1 -1
- package/web-shell/assets/{erDiagram-TEJ5UH35-CerbFPa2.js → erDiagram-TEJ5UH35-DoVaazhK.js} +1 -1
- package/web-shell/assets/{flowDiagram-I6XJVG4X-BNeZz5Zz.js → flowDiagram-I6XJVG4X-0RLz-mXg.js} +1 -1
- package/web-shell/assets/{ganttDiagram-6RSMTGT7-CTOogLaM.js → ganttDiagram-6RSMTGT7-C-eX1A39.js} +3 -3
- package/web-shell/assets/{gitGraphDiagram-PVQCEYII-yxSFkXPj.js → gitGraphDiagram-PVQCEYII-BauQu1Bu.js} +1 -1
- package/web-shell/assets/index-3uAT3ehO.css +5 -0
- package/web-shell/assets/index-CVHa2QH7.js +3 -0
- package/web-shell/assets/index-D1KigWat.js +1128 -0
- package/web-shell/assets/{infoDiagram-5YYISTIA-DYdAUevm.js → infoDiagram-5YYISTIA-C800cFvZ.js} +1 -1
- package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-CNuijZ90.js → ishikawaDiagram-YF4QCWOH-CFK1Jk6e.js} +1 -1
- package/web-shell/assets/{journeyDiagram-JHISSGLW-BTyiuonf.js → journeyDiagram-JHISSGLW-Cjx0WAC4.js} +1 -1
- package/web-shell/assets/{kanban-definition-UN3LZRKU-DPJo0Uow.js → kanban-definition-UN3LZRKU-DWMDHbiv.js} +1 -1
- package/web-shell/assets/{linear-C8wKCbIC.js → linear-vpW4FrZs.js} +1 -1
- package/web-shell/assets/{mermaid.core-BV5o7nW5.js → mermaid.core-DsHRUnDd.js} +5 -5
- package/web-shell/assets/{mindmap-definition-RKZ34NQL-BtLcBmSt.js → mindmap-definition-RKZ34NQL-D3Eb1cAK.js} +1 -1
- package/web-shell/assets/{pieDiagram-4H26LBE5-C22J7A9Q.js → pieDiagram-4H26LBE5-Cr2-6sWt.js} +1 -1
- package/web-shell/assets/{quadrantDiagram-W4KKPZXB-DSL10wiL.js → quadrantDiagram-W4KKPZXB-Yd7yUgVp.js} +1 -1
- package/web-shell/assets/{requirementDiagram-4Y6WPE33-feqh0UpX.js → requirementDiagram-4Y6WPE33-BE6SprL8.js} +1 -1
- package/web-shell/assets/{sankeyDiagram-5OEKKPKP-Z4OVaWaZ.js → sankeyDiagram-5OEKKPKP-DzkuMK8d.js} +1 -1
- package/web-shell/assets/{sequenceDiagram-3UESZ5HK-DIluIcb1.js → sequenceDiagram-3UESZ5HK-wD9A3Dhi.js} +1 -1
- package/web-shell/assets/{stateDiagram-AJRCARHV-hlhnuoYH.js → stateDiagram-AJRCARHV-BOp5q1Nm.js} +1 -1
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-BDsWUmPG.js +1 -0
- package/web-shell/assets/{timeline-definition-PNZ67QCA-Dqf_CqgL.js → timeline-definition-PNZ67QCA-Btc08sUA.js} +1 -1
- package/web-shell/assets/{vennDiagram-CIIHVFJN-DD2QhaTX.js → vennDiagram-CIIHVFJN-Bv6upsOA.js} +1 -1
- package/web-shell/assets/{wardley-L42UT6IY-B2uI85U_.js → wardley-L42UT6IY-D-XamnCK.js} +1 -1
- package/web-shell/assets/{wardleyDiagram-YWT4CUSO-U1aJX71g.js → wardleyDiagram-YWT4CUSO-BbP_5Wfp.js} +1 -1
- package/web-shell/assets/{xychartDiagram-2RQKCTM6-C0ODHUee.js → xychartDiagram-2RQKCTM6-CO5Hh28b.js} +1 -1
- package/web-shell/index.html +2 -2
- package/chunks/chunk-CU3L64TP.js +0 -93
- package/chunks/initializer-UTQ7FB7G.js +0 -71
- package/chunks/list-DEICDL65.js +0 -74
- package/chunks/loadedSettingsAdapter-NOWEGDYJ.js +0 -68
- package/chunks/mcp-L5JXEEIA.js +0 -68
- package/chunks/nonInteractiveCli-LS2K4X6A.js +0 -124
- package/chunks/types-JNKGKUJT.js +0 -12
- package/chunks/workspace-providers-status-4KMGETOJ.js +0 -71
- package/chunks/workspace-service-RVLBMSMZ.js +0 -80
- package/chunks/workspace-skills-status-DS4ZVFTO.js +0 -70
- package/web-shell/assets/channel-CLiQD50f.js +0 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-D3sYqow5.js +0 -1
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-D3sYqow5.js +0 -1
- package/web-shell/assets/index-D5IWFVk1.css +0 -5
- package/web-shell/assets/index-KFJRDhX7.js +0 -783
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-BhQMwgpl.js +0 -1
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
// Force strict mode and setup for ESM
|
|
2
|
+
"use strict";
|
|
3
|
+
import {
|
|
4
|
+
init_esbuild_shims
|
|
5
|
+
} from "./chunk-5O2XNYP6.js";
|
|
6
|
+
import {
|
|
7
|
+
__name
|
|
8
|
+
} from "./chunk-J2S4EL5Y.js";
|
|
9
|
+
|
|
10
|
+
// packages/cli/src/config/storage-paths-lite.ts
|
|
11
|
+
init_esbuild_shims();
|
|
12
|
+
import * as os from "node:os";
|
|
13
|
+
import * as path from "node:path";
|
|
14
|
+
var SETTINGS_DIRECTORY_NAME = ".qwen";
|
|
15
|
+
function resolveConfigPathLite(dir, cwd) {
|
|
16
|
+
let resolved = dir;
|
|
17
|
+
if (resolved === "~" || resolved.startsWith("~/") || resolved.startsWith("~\\")) {
|
|
18
|
+
const relativeSegments = resolved === "~" ? [] : resolved.slice(2).split(/[/\\]+/).filter(Boolean);
|
|
19
|
+
resolved = path.join(os.homedir(), ...relativeSegments);
|
|
20
|
+
}
|
|
21
|
+
if (!path.isAbsolute(resolved)) {
|
|
22
|
+
resolved = path.resolve(cwd || process.cwd(), resolved);
|
|
23
|
+
}
|
|
24
|
+
return resolved;
|
|
25
|
+
}
|
|
26
|
+
__name(resolveConfigPathLite, "resolveConfigPathLite");
|
|
27
|
+
function getGlobalQwenDirLite() {
|
|
28
|
+
const envDir = process.env["QWEN_HOME"];
|
|
29
|
+
if (envDir) {
|
|
30
|
+
return resolveConfigPathLite(envDir);
|
|
31
|
+
}
|
|
32
|
+
const homeDir = os.homedir();
|
|
33
|
+
if (!homeDir) {
|
|
34
|
+
return path.join(os.tmpdir(), SETTINGS_DIRECTORY_NAME);
|
|
35
|
+
}
|
|
36
|
+
return path.join(homeDir, SETTINGS_DIRECTORY_NAME);
|
|
37
|
+
}
|
|
38
|
+
__name(getGlobalQwenDirLite, "getGlobalQwenDirLite");
|
|
39
|
+
function getSystemSettingsPath() {
|
|
40
|
+
if (process.env["QWEN_CODE_SYSTEM_SETTINGS_PATH"]) {
|
|
41
|
+
return process.env["QWEN_CODE_SYSTEM_SETTINGS_PATH"];
|
|
42
|
+
}
|
|
43
|
+
if (os.platform() === "darwin") {
|
|
44
|
+
return "/Library/Application Support/QwenCode/settings.json";
|
|
45
|
+
}
|
|
46
|
+
if (os.platform() === "win32") {
|
|
47
|
+
return "C:\\ProgramData\\qwen-code\\settings.json";
|
|
48
|
+
}
|
|
49
|
+
return "/etc/qwen-code/settings.json";
|
|
50
|
+
}
|
|
51
|
+
__name(getSystemSettingsPath, "getSystemSettingsPath");
|
|
52
|
+
function getSystemDefaultsPath() {
|
|
53
|
+
if (process.env["QWEN_CODE_SYSTEM_DEFAULTS_PATH"]) {
|
|
54
|
+
return process.env["QWEN_CODE_SYSTEM_DEFAULTS_PATH"];
|
|
55
|
+
}
|
|
56
|
+
return path.join(
|
|
57
|
+
path.dirname(getSystemSettingsPath()),
|
|
58
|
+
"system-defaults.json"
|
|
59
|
+
);
|
|
60
|
+
}
|
|
61
|
+
__name(getSystemDefaultsPath, "getSystemDefaultsPath");
|
|
62
|
+
|
|
63
|
+
export {
|
|
64
|
+
SETTINGS_DIRECTORY_NAME,
|
|
65
|
+
resolveConfigPathLite,
|
|
66
|
+
getGlobalQwenDirLite,
|
|
67
|
+
getSystemSettingsPath,
|
|
68
|
+
getSystemDefaultsPath
|
|
69
|
+
};
|
|
70
|
+
/**
|
|
71
|
+
* @license
|
|
72
|
+
* Copyright 2025 Qwen Team
|
|
73
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
74
|
+
*/
|
|
@@ -3,24 +3,24 @@
|
|
|
3
3
|
import {
|
|
4
4
|
AUTO_THEME_NAME,
|
|
5
5
|
themeManager
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-Q6TUALBE.js";
|
|
7
7
|
import {
|
|
8
8
|
initializeI18n,
|
|
9
9
|
resolveLanguageSetting,
|
|
10
10
|
t
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-UZKG7HFG.js";
|
|
12
12
|
import {
|
|
13
13
|
IdeClient
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-XCR44EEA.js";
|
|
15
15
|
import {
|
|
16
16
|
AuthEvent,
|
|
17
17
|
IdeConnectionEvent,
|
|
18
18
|
logAuth,
|
|
19
19
|
logIdeConnection
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-BYOOK22F.js";
|
|
21
21
|
import {
|
|
22
22
|
getErrorMessage
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-7NFB7LBQ.js";
|
|
24
24
|
import {
|
|
25
25
|
init_esbuild_shims
|
|
26
26
|
} from "./chunk-5O2XNYP6.js";
|
|
@@ -2,19 +2,19 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
getErrorMessage
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-MEK7CQJR.js";
|
|
6
6
|
import {
|
|
7
7
|
extensionToOutputString,
|
|
8
8
|
getExtensionManager
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-EPY4ZEU6.js";
|
|
10
10
|
import {
|
|
11
11
|
loadSettings
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-CQQD7MDG.js";
|
|
13
13
|
import {
|
|
14
14
|
initializeI18n,
|
|
15
15
|
resolveLanguageSetting,
|
|
16
16
|
t
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-UZKG7HFG.js";
|
|
18
18
|
import {
|
|
19
19
|
writeStderrLine,
|
|
20
20
|
writeStdoutLine
|
|
@@ -2,19 +2,19 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
getEffectiveSupportedModes
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-VQLRHJKL.js";
|
|
6
6
|
import {
|
|
7
7
|
require_jsx_runtime
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-UKWAQ7AV.js";
|
|
9
9
|
import {
|
|
10
10
|
require_react
|
|
11
11
|
} from "./chunk-HTHUX2T5.js";
|
|
12
12
|
import {
|
|
13
13
|
getCachedStringWidth
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-FGTCZJOD.js";
|
|
15
15
|
import {
|
|
16
16
|
uiTelemetryService
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-BYOOK22F.js";
|
|
18
18
|
import {
|
|
19
19
|
init_esbuild_shims
|
|
20
20
|
} from "./chunk-5O2XNYP6.js";
|
|
@@ -2,7 +2,11 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
relaunchApp
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-JEKOCLRN.js";
|
|
6
|
+
import {
|
|
7
|
+
MINIMUM_MAX_HEIGHT,
|
|
8
|
+
MaxSizedBox
|
|
9
|
+
} from "./chunk-5SQ55XJZ.js";
|
|
6
10
|
import {
|
|
7
11
|
CODE_FENCE_RE,
|
|
8
12
|
TABLE_MAX_ROW_LINES,
|
|
@@ -16,7 +20,7 @@ import {
|
|
|
16
20
|
getCommandSubcommandNames,
|
|
17
21
|
splitMarkdownTableRow,
|
|
18
22
|
useSessionStats
|
|
19
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-IQOOJSPR.js";
|
|
20
24
|
import {
|
|
21
25
|
Colors,
|
|
22
26
|
RowMouseController,
|
|
@@ -25,7 +29,7 @@ import {
|
|
|
25
29
|
useMouseEvents,
|
|
26
30
|
useSettings,
|
|
27
31
|
useTerminalSize
|
|
28
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-ZNCLTRNU.js";
|
|
29
33
|
import {
|
|
30
34
|
CompactToolGroupDisplay,
|
|
31
35
|
SCREEN_READER_MODEL_PREFIX,
|
|
@@ -48,14 +52,7 @@ import {
|
|
|
48
52
|
levelLabel,
|
|
49
53
|
useKeypress,
|
|
50
54
|
wrapForMultiplexer
|
|
51
|
-
} from "./chunk-
|
|
52
|
-
import {
|
|
53
|
-
isTerminalGoalStatusKind
|
|
54
|
-
} from "./chunk-7X7TEQNX.js";
|
|
55
|
-
import {
|
|
56
|
-
MINIMUM_MAX_HEIGHT,
|
|
57
|
-
MaxSizedBox
|
|
58
|
-
} from "./chunk-HVY356M2.js";
|
|
55
|
+
} from "./chunk-VQLRHJKL.js";
|
|
59
56
|
import {
|
|
60
57
|
Box_default,
|
|
61
58
|
Static,
|
|
@@ -65,53 +62,57 @@ import {
|
|
|
65
62
|
theme,
|
|
66
63
|
use_is_screen_reader_enabled_default,
|
|
67
64
|
use_stdin_default
|
|
68
|
-
} from "./chunk-
|
|
65
|
+
} from "./chunk-UKWAQ7AV.js";
|
|
66
|
+
import {
|
|
67
|
+
isTerminalGoalStatusKind
|
|
68
|
+
} from "./chunk-7X7TEQNX.js";
|
|
69
69
|
import {
|
|
70
70
|
require_react
|
|
71
71
|
} from "./chunk-HTHUX2T5.js";
|
|
72
72
|
import {
|
|
73
73
|
resolveColor,
|
|
74
74
|
themeManager
|
|
75
|
-
} from "./chunk-
|
|
75
|
+
} from "./chunk-Q6TUALBE.js";
|
|
76
76
|
import {
|
|
77
77
|
cpLen,
|
|
78
78
|
cpSlice,
|
|
79
79
|
escapeAnsiCtrlCodes,
|
|
80
80
|
getCachedStringWidth,
|
|
81
|
+
sanitizeMultilineForDisplay,
|
|
81
82
|
sanitizeSensitiveText,
|
|
82
83
|
sanitizeTerminalText,
|
|
83
84
|
stringWidth,
|
|
84
85
|
stripUnsafeCharacters,
|
|
85
86
|
toCodePoints,
|
|
86
87
|
wrapToVisualLines
|
|
87
|
-
} from "./chunk-
|
|
88
|
+
} from "./chunk-FGTCZJOD.js";
|
|
88
89
|
import {
|
|
89
90
|
eastAsianWidth
|
|
90
91
|
} from "./chunk-QHTIBUWB.js";
|
|
91
|
-
import {
|
|
92
|
-
require_has_flag,
|
|
93
|
-
require_source
|
|
94
|
-
} from "./chunk-57OAHC2Y.js";
|
|
95
92
|
import {
|
|
96
93
|
formatDuration,
|
|
97
94
|
formatMemoryUsage,
|
|
98
95
|
formatRelativeTime,
|
|
99
96
|
formatTokenCount
|
|
100
97
|
} from "./chunk-E5Z2AVNV.js";
|
|
98
|
+
import {
|
|
99
|
+
require_has_flag,
|
|
100
|
+
require_source
|
|
101
|
+
} from "./chunk-57OAHC2Y.js";
|
|
101
102
|
import {
|
|
102
103
|
createLoadedSettingsAdapter
|
|
103
|
-
} from "./chunk-
|
|
104
|
+
} from "./chunk-AETEZU4U.js";
|
|
104
105
|
import {
|
|
105
106
|
getPersistScopeForModelSelection
|
|
106
|
-
} from "./chunk-
|
|
107
|
+
} from "./chunk-CQQD7MDG.js";
|
|
107
108
|
import {
|
|
108
109
|
getCurrentLanguage,
|
|
109
110
|
localizeToolDisplayName,
|
|
110
111
|
t
|
|
111
|
-
} from "./chunk-
|
|
112
|
+
} from "./chunk-UZKG7HFG.js";
|
|
112
113
|
import {
|
|
113
114
|
isWorkspaceTrusted
|
|
114
|
-
} from "./chunk-
|
|
115
|
+
} from "./chunk-W2U4RJJU.js";
|
|
115
116
|
import {
|
|
116
117
|
ALL_PROVIDERS,
|
|
117
118
|
IdeClient,
|
|
@@ -132,21 +133,21 @@ import {
|
|
|
132
133
|
resolveMetadataKey,
|
|
133
134
|
resolveOwnsModel,
|
|
134
135
|
stripAnsi
|
|
135
|
-
} from "./chunk-
|
|
136
|
+
} from "./chunk-XCR44EEA.js";
|
|
136
137
|
import {
|
|
137
138
|
MAIN_SOURCE,
|
|
138
139
|
getMCPServerStatus
|
|
139
|
-
} from "./chunk-
|
|
140
|
+
} from "./chunk-BYOOK22F.js";
|
|
140
141
|
import {
|
|
141
142
|
ToolDisplayNames,
|
|
142
143
|
ToolNames,
|
|
143
144
|
ToolNamesMigration
|
|
144
|
-
} from "./chunk-
|
|
145
|
+
} from "./chunk-JGUT3LWZ.js";
|
|
145
146
|
import {
|
|
146
147
|
createDebugLogger,
|
|
147
148
|
escapePath,
|
|
148
149
|
unescapePath
|
|
149
|
-
} from "./chunk-
|
|
150
|
+
} from "./chunk-7NFB7LBQ.js";
|
|
150
151
|
import {
|
|
151
152
|
init_esbuild_shims
|
|
152
153
|
} from "./chunk-5O2XNYP6.js";
|
|
@@ -7356,6 +7357,7 @@ var AssistantMessageContent = /* @__PURE__ */ __name(({
|
|
|
7356
7357
|
}
|
|
7357
7358
|
), "AssistantMessageContent");
|
|
7358
7359
|
var MAX_STREAMING_THINKING_VISUAL_LINES = 4;
|
|
7360
|
+
var BRIEF_THOUGHT_THRESHOLD_MS = 1e3;
|
|
7359
7361
|
function tailVisualLines(text, width, maxLines) {
|
|
7360
7362
|
const charBudget = maxLines * width * 2;
|
|
7361
7363
|
let sliceStart = Math.max(0, text.length - charBudget);
|
|
@@ -7369,6 +7371,31 @@ function tailVisualLines(text, width, maxLines) {
|
|
|
7369
7371
|
return lines.slice(-maxLines).join("\n");
|
|
7370
7372
|
}
|
|
7371
7373
|
__name(tailVisualLines, "tailVisualLines");
|
|
7374
|
+
var ThinkBody = /* @__PURE__ */ __name(({ text, isPending, expanded, availableTerminalHeight, contentWidth }) => {
|
|
7375
|
+
if (!isPending && !expanded) return null;
|
|
7376
|
+
if (isPending && !expanded) {
|
|
7377
|
+
const innerWidth = Math.max(contentWidth - 2, 20);
|
|
7378
|
+
const maxLines = availableTerminalHeight != null ? Math.max(
|
|
7379
|
+
1,
|
|
7380
|
+
Math.min(
|
|
7381
|
+
MAX_STREAMING_THINKING_VISUAL_LINES,
|
|
7382
|
+
Math.floor(availableTerminalHeight / 3)
|
|
7383
|
+
)
|
|
7384
|
+
) : MAX_STREAMING_THINKING_VISUAL_LINES;
|
|
7385
|
+
const display = tailVisualLines(text, innerWidth, maxLines);
|
|
7386
|
+
return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(Box_default, { paddingLeft: 2, children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(Text, { dimColor: true, wrap: "truncate", children: display }) });
|
|
7387
|
+
}
|
|
7388
|
+
return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(Box_default, { paddingLeft: 2, flexDirection: "column", children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
|
|
7389
|
+
MarkdownDisplay,
|
|
7390
|
+
{
|
|
7391
|
+
text,
|
|
7392
|
+
isPending,
|
|
7393
|
+
availableTerminalHeight,
|
|
7394
|
+
contentWidth: contentWidth - 2,
|
|
7395
|
+
textColor: theme.text.secondary
|
|
7396
|
+
}
|
|
7397
|
+
) });
|
|
7398
|
+
}, "ThinkBody");
|
|
7372
7399
|
var ThinkMessage = /* @__PURE__ */ __name(({
|
|
7373
7400
|
text,
|
|
7374
7401
|
isPending,
|
|
@@ -7379,54 +7406,35 @@ var ThinkMessage = /* @__PURE__ */ __name(({
|
|
|
7379
7406
|
clickable = false
|
|
7380
7407
|
}) => {
|
|
7381
7408
|
const durationSuffix = durationMs != null ? ` ${formatDuration2(durationMs)}` : "";
|
|
7409
|
+
const completedLabel = durationMs == null ? null : durationMs < BRIEF_THOUGHT_THRESHOLD_MS ? t("Thought briefly") : `${t("Thought for")} ${formatDuration2(durationMs)}`;
|
|
7382
7410
|
if (!isPending && !expanded) {
|
|
7383
|
-
const
|
|
7411
|
+
const label2 = completedLabel ?? t("Thinking");
|
|
7384
7412
|
const hint = clickable ? t("(click or {{keyHint}} to expand)", { keyHint: toggleKeyHint }) : t("({{keyHint}} to expand)", { keyHint: toggleKeyHint });
|
|
7385
7413
|
return /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(Text, { dimColor: true, italic: true, children: [
|
|
7386
7414
|
THINKING_ICON,
|
|
7387
|
-
|
|
7415
|
+
label2,
|
|
7388
7416
|
" ",
|
|
7389
7417
|
hint
|
|
7390
7418
|
] });
|
|
7391
7419
|
}
|
|
7392
|
-
|
|
7393
|
-
|
|
7394
|
-
const maxLines = availableTerminalHeight != null ? Math.max(
|
|
7395
|
-
1,
|
|
7396
|
-
Math.min(
|
|
7397
|
-
MAX_STREAMING_THINKING_VISUAL_LINES,
|
|
7398
|
-
Math.floor(availableTerminalHeight / 3)
|
|
7399
|
-
)
|
|
7400
|
-
) : MAX_STREAMING_THINKING_VISUAL_LINES;
|
|
7401
|
-
const display = tailVisualLines(text, innerWidth, maxLines);
|
|
7402
|
-
return /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(Box_default, { flexDirection: "column", children: [
|
|
7403
|
-
/* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(Text, { dimColor: true, italic: true, children: [
|
|
7404
|
-
THINKING_ICON_PENDING,
|
|
7405
|
-
t("Thinking"),
|
|
7406
|
-
"\u2026",
|
|
7407
|
-
durationSuffix
|
|
7408
|
-
] }),
|
|
7409
|
-
/* @__PURE__ */ (0, import_jsx_runtime7.jsx)(Box_default, { paddingLeft: 2, children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(Text, { dimColor: true, wrap: "truncate", children: display }) })
|
|
7410
|
-
] });
|
|
7411
|
-
}
|
|
7412
|
-
const expandedLabel = durationMs != null ? `${t("Thought for")} ${formatDuration2(durationMs)}` : `${t("Thinking")}\u2026`;
|
|
7420
|
+
const label = isPending ? `${t("Thinking")}\u2026${durationSuffix}` : completedLabel ?? `${t("Thinking")}\u2026`;
|
|
7421
|
+
const collapseHint = !isPending && expanded ? ` ${t("({{keyHint}} to collapse)", { keyHint: toggleKeyHint })}` : "";
|
|
7413
7422
|
return /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(Box_default, { flexDirection: "column", children: [
|
|
7414
7423
|
/* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(Text, { dimColor: true, italic: true, children: [
|
|
7415
|
-
THINKING_ICON,
|
|
7416
|
-
|
|
7417
|
-
|
|
7418
|
-
t("({{keyHint}} to collapse)", { keyHint: toggleKeyHint })
|
|
7424
|
+
isPending ? THINKING_ICON_PENDING : THINKING_ICON,
|
|
7425
|
+
label,
|
|
7426
|
+
collapseHint
|
|
7419
7427
|
] }),
|
|
7420
|
-
/* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
|
|
7421
|
-
|
|
7428
|
+
/* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
|
|
7429
|
+
ThinkBody,
|
|
7422
7430
|
{
|
|
7423
7431
|
text,
|
|
7424
|
-
isPending
|
|
7432
|
+
isPending,
|
|
7433
|
+
expanded,
|
|
7425
7434
|
availableTerminalHeight,
|
|
7426
|
-
contentWidth
|
|
7427
|
-
textColor: theme.text.secondary
|
|
7435
|
+
contentWidth
|
|
7428
7436
|
}
|
|
7429
|
-
)
|
|
7437
|
+
)
|
|
7430
7438
|
] });
|
|
7431
7439
|
}, "ThinkMessage");
|
|
7432
7440
|
var ThinkMessageContent = /* @__PURE__ */ __name(({
|
|
@@ -7435,33 +7443,16 @@ var ThinkMessageContent = /* @__PURE__ */ __name(({
|
|
|
7435
7443
|
expanded = false,
|
|
7436
7444
|
availableTerminalHeight,
|
|
7437
7445
|
contentWidth
|
|
7438
|
-
}) =>
|
|
7439
|
-
|
|
7440
|
-
|
|
7441
|
-
|
|
7442
|
-
|
|
7443
|
-
|
|
7444
|
-
|
|
7445
|
-
|
|
7446
|
-
Math.min(
|
|
7447
|
-
MAX_STREAMING_THINKING_VISUAL_LINES,
|
|
7448
|
-
Math.floor(availableTerminalHeight / 3)
|
|
7449
|
-
)
|
|
7450
|
-
) : MAX_STREAMING_THINKING_VISUAL_LINES;
|
|
7451
|
-
const display = tailVisualLines(text, innerWidth, maxLines);
|
|
7452
|
-
return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(Box_default, { paddingLeft: 2, children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(Text, { dimColor: true, wrap: "truncate", children: display }) });
|
|
7446
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
|
|
7447
|
+
ThinkBody,
|
|
7448
|
+
{
|
|
7449
|
+
text,
|
|
7450
|
+
isPending,
|
|
7451
|
+
expanded,
|
|
7452
|
+
availableTerminalHeight,
|
|
7453
|
+
contentWidth
|
|
7453
7454
|
}
|
|
7454
|
-
|
|
7455
|
-
MarkdownDisplay,
|
|
7456
|
-
{
|
|
7457
|
-
text,
|
|
7458
|
-
isPending: false,
|
|
7459
|
-
availableTerminalHeight,
|
|
7460
|
-
contentWidth: contentWidth - 2,
|
|
7461
|
-
textColor: theme.text.secondary
|
|
7462
|
-
}
|
|
7463
|
-
) });
|
|
7464
|
-
}, "ThinkMessageContent");
|
|
7455
|
+
), "ThinkMessageContent");
|
|
7465
7456
|
|
|
7466
7457
|
// packages/cli/src/ui/components/messages/ToolGroupMessage.tsx
|
|
7467
7458
|
init_esbuild_shims();
|
|
@@ -12307,12 +12298,22 @@ var ShellInputPrompt = /* @__PURE__ */ __name(({
|
|
|
12307
12298
|
return null;
|
|
12308
12299
|
}, "ShellInputPrompt");
|
|
12309
12300
|
|
|
12301
|
+
// packages/cli/src/ui/utils/tool-display-map.ts
|
|
12302
|
+
init_esbuild_shims();
|
|
12303
|
+
var TOOL_DISPLAY_BY_NAME = Object.fromEntries(
|
|
12304
|
+
Object.keys(ToolNames).map((key) => [
|
|
12305
|
+
ToolNames[key],
|
|
12306
|
+
ToolDisplayNames[key]
|
|
12307
|
+
])
|
|
12308
|
+
);
|
|
12309
|
+
|
|
12310
12310
|
// packages/cli/src/ui/components/messages/ToolMessage.tsx
|
|
12311
12311
|
var import_jsx_runtime17 = __toESM(require_jsx_runtime(), 1);
|
|
12312
12312
|
var AGENT_TOOL_NAMES = /* @__PURE__ */ new Set([
|
|
12313
12313
|
ToolNames.AGENT,
|
|
12314
12314
|
...Object.entries(ToolNamesMigration).filter(([, canonical]) => canonical === ToolNames.AGENT).map(([legacy]) => legacy)
|
|
12315
12315
|
]);
|
|
12316
|
+
var APPROVAL_CONTEXT_CALLS = 3;
|
|
12316
12317
|
var STATIC_HEIGHT = 1;
|
|
12317
12318
|
var RESERVED_LINE_COUNT = 5;
|
|
12318
12319
|
var MIN_LINES_SHOWN = 2;
|
|
@@ -12431,21 +12432,42 @@ var PlanResultRenderer = /* @__PURE__ */ __name(({ data, availableHeight, childW
|
|
|
12431
12432
|
childWidth
|
|
12432
12433
|
}
|
|
12433
12434
|
), "PlanResultRenderer");
|
|
12435
|
+
var priorApprovalCalls = /* @__PURE__ */ __name((data) => (data.toolCalls ?? []).filter((call) => call.status !== "awaiting_approval").slice(-APPROVAL_CONTEXT_CALLS), "priorApprovalCalls");
|
|
12436
|
+
var SubagentApprovalContext = /* @__PURE__ */ __name(({ data }) => {
|
|
12437
|
+
const priorCalls = priorApprovalCalls(data);
|
|
12438
|
+
if (priorCalls.length === 0) return null;
|
|
12439
|
+
return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Box_default, { flexDirection: "column", children: priorCalls.map((call) => {
|
|
12440
|
+
const glyph = call.status === "failed" ? "\u2716" : call.status === "success" ? "\u2714" : "\u25CB";
|
|
12441
|
+
const displayName = localizeToolDisplayName(
|
|
12442
|
+
TOOL_DISPLAY_BY_NAME[call.name] ?? call.name
|
|
12443
|
+
);
|
|
12444
|
+
const desc = (call.description ?? "").replace(/\s*\n\s*/g, " ").trim();
|
|
12445
|
+
const label = desc ? `${displayName} ${desc}` : displayName;
|
|
12446
|
+
return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Box_default, { children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Text, { color: theme.text.secondary, wrap: "truncate-end", children: ` ${glyph} ${sanitizeMultilineForDisplay(label)}` }) }, call.callId);
|
|
12447
|
+
}) });
|
|
12448
|
+
}, "SubagentApprovalContext");
|
|
12434
12449
|
var SubagentExecutionRenderer = /* @__PURE__ */ __name(({ data, availableHeight, childWidth, config, isFocused }) => {
|
|
12435
12450
|
if (data.pendingConfirmation && isFocused) {
|
|
12436
12451
|
const agentLabel = escapeAnsiCtrlCodes(data.subagentName || "agent");
|
|
12452
|
+
const HEADER_LINES = 1;
|
|
12453
|
+
const contextLines = priorApprovalCalls(data).length;
|
|
12454
|
+
const confirmationHeight = availableHeight !== void 0 ? Math.max(
|
|
12455
|
+
MINIMUM_MAX_HEIGHT,
|
|
12456
|
+
availableHeight - contextLines - HEADER_LINES
|
|
12457
|
+
) : availableHeight;
|
|
12437
12458
|
return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(Box_default, { flexDirection: "column", paddingLeft: 1, children: [
|
|
12438
12459
|
/* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(Box_default, { children: [
|
|
12439
12460
|
/* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Text, { color: theme.text.secondary, children: "Approval requested by " }),
|
|
12440
12461
|
/* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Text, { bold: true, color: theme.text.accent, children: agentLabel }),
|
|
12441
12462
|
/* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Text, { color: theme.text.secondary, children: ":" })
|
|
12442
12463
|
] }),
|
|
12464
|
+
/* @__PURE__ */ (0, import_jsx_runtime17.jsx)(SubagentApprovalContext, { data }),
|
|
12443
12465
|
/* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
|
|
12444
12466
|
ToolConfirmationMessage,
|
|
12445
12467
|
{
|
|
12446
12468
|
confirmationDetails: data.pendingConfirmation,
|
|
12447
12469
|
isFocused,
|
|
12448
|
-
availableTerminalHeight:
|
|
12470
|
+
availableTerminalHeight: confirmationHeight,
|
|
12449
12471
|
contentWidth: childWidth - 2,
|
|
12450
12472
|
compactMode: true,
|
|
12451
12473
|
config
|
|
@@ -12774,12 +12796,6 @@ function isAgentResult(rd) {
|
|
|
12774
12796
|
return typeof rd === "object" && rd !== null && "type" in rd && rd.type === "task_execution";
|
|
12775
12797
|
}
|
|
12776
12798
|
__name(isAgentResult, "isAgentResult");
|
|
12777
|
-
var TOOL_DISPLAY_BY_NAME = Object.fromEntries(
|
|
12778
|
-
Object.keys(ToolNames).map((key) => [
|
|
12779
|
-
ToolNames[key],
|
|
12780
|
-
ToolDisplayNames[key]
|
|
12781
|
-
])
|
|
12782
|
-
);
|
|
12783
12799
|
function activityLabel(row) {
|
|
12784
12800
|
const last = row.recentActivity;
|
|
12785
12801
|
if (!last) return "";
|
|
@@ -12906,7 +12922,7 @@ var AgentRow = /* @__PURE__ */ __name(({ row, now }) => {
|
|
|
12906
12922
|
const { glyph, color } = statusGlyph(row.status);
|
|
12907
12923
|
const safeName = escapeAnsiCtrlCodes(row.name);
|
|
12908
12924
|
const displayName = truncateMiddle(safeName, NAME_COL_WIDTH);
|
|
12909
|
-
const activity =
|
|
12925
|
+
const activity = sanitizeMultilineForDisplay(activityLabel(row));
|
|
12910
12926
|
const elapsed = elapsedLabel(row, now);
|
|
12911
12927
|
const tokens = row.tokenCount && row.tokenCount > 0 ? formatTokenCount(row.tokenCount) : "";
|
|
12912
12928
|
const trailingParts = [];
|
|
@@ -15564,6 +15580,7 @@ var ExtensionsList = /* @__PURE__ */ __name(() => {
|
|
|
15564
15580
|
break;
|
|
15565
15581
|
case "update available" /* UPDATE_AVAILABLE */:
|
|
15566
15582
|
case "updated, needs restart" /* UPDATED_NEEDS_RESTART */:
|
|
15583
|
+
case "updated with warnings" /* UPDATED_WITH_WARNINGS */:
|
|
15567
15584
|
stateColor = "yellow";
|
|
15568
15585
|
break;
|
|
15569
15586
|
case "error" /* ERROR */:
|
|
@@ -17646,6 +17663,7 @@ export {
|
|
|
17646
17663
|
renderSoftwareCursor,
|
|
17647
17664
|
TextInput,
|
|
17648
17665
|
ToolConfirmationMessage,
|
|
17666
|
+
TOOL_DISPLAY_BY_NAME,
|
|
17649
17667
|
dist_default,
|
|
17650
17668
|
AboutBox,
|
|
17651
17669
|
dist_default2,
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
createDebugLogger
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-7NFB7LBQ.js";
|
|
6
6
|
import {
|
|
7
7
|
init_esbuild_shims
|
|
8
8
|
} from "./chunk-5O2XNYP6.js";
|
|
@@ -15562,6 +15562,10 @@ function hasCycleInSchema(schema) {
|
|
|
15562
15562
|
return traverse(schema, /* @__PURE__ */ new Set(), /* @__PURE__ */ new Set());
|
|
15563
15563
|
}
|
|
15564
15564
|
__name(hasCycleInSchema, "hasCycleInSchema");
|
|
15565
|
+
function isShellProgressData(display) {
|
|
15566
|
+
return typeof display === "object" && display !== null && "type" in display && display.type === "shell_progress";
|
|
15567
|
+
}
|
|
15568
|
+
__name(isShellProgressData, "isShellProgressData");
|
|
15565
15569
|
var ToolConfirmationOutcome = /* @__PURE__ */ ((ToolConfirmationOutcome2) => {
|
|
15566
15570
|
ToolConfirmationOutcome2["ProceedOnce"] = "proceed_once";
|
|
15567
15571
|
ToolConfirmationOutcome2["ProceedAlways"] = "proceed_always";
|
|
@@ -15723,6 +15727,7 @@ export {
|
|
|
15723
15727
|
BaseDeclarativeTool,
|
|
15724
15728
|
isTool,
|
|
15725
15729
|
hasCycleInSchema,
|
|
15730
|
+
isShellProgressData,
|
|
15726
15731
|
ToolConfirmationOutcome,
|
|
15727
15732
|
Kind,
|
|
15728
15733
|
MUTATOR_KINDS,
|
|
@@ -5,14 +5,14 @@ import {
|
|
|
5
5
|
isTranscribableVoiceModel,
|
|
6
6
|
readVoiceLanguage,
|
|
7
7
|
resolveVoiceTransport
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-AGZWN4WV.js";
|
|
9
9
|
import {
|
|
10
10
|
resolvePath
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-FSA7ERJ2.js";
|
|
12
12
|
import {
|
|
13
13
|
createDebugLogger,
|
|
14
14
|
isSubpath
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-7NFB7LBQ.js";
|
|
16
16
|
import {
|
|
17
17
|
init_esbuild_shims
|
|
18
18
|
} from "./chunk-5O2XNYP6.js";
|
|
@@ -339,7 +339,7 @@ async function defaultLookupHost(hostname) {
|
|
|
339
339
|
return dnsLookup(hostname, { all: true });
|
|
340
340
|
}
|
|
341
341
|
__name(defaultLookupHost, "defaultLookupHost");
|
|
342
|
-
async function assertVoiceBaseUrlNetworkAllowed(voiceConfig, lookupHost) {
|
|
342
|
+
async function assertVoiceBaseUrlNetworkAllowed(voiceConfig, lookupHost, abortSignal) {
|
|
343
343
|
const hostname = normalizeHostname(new URL(voiceConfig.baseUrl).hostname);
|
|
344
344
|
if (isLoopbackHost(hostname)) {
|
|
345
345
|
return;
|
|
@@ -353,12 +353,29 @@ async function assertVoiceBaseUrlNetworkAllowed(voiceConfig, lookupHost) {
|
|
|
353
353
|
return;
|
|
354
354
|
}
|
|
355
355
|
let result;
|
|
356
|
+
let onAbort;
|
|
356
357
|
try {
|
|
357
|
-
|
|
358
|
+
if (abortSignal?.aborted) {
|
|
359
|
+
throw abortSignal.reason;
|
|
360
|
+
}
|
|
361
|
+
const lookup = (lookupHost ?? defaultLookupHost)(hostname);
|
|
362
|
+
result = abortSignal ? await Promise.race([
|
|
363
|
+
lookup,
|
|
364
|
+
new Promise((_resolve, reject) => {
|
|
365
|
+
onAbort = /* @__PURE__ */ __name(() => reject(abortSignal.reason), "onAbort");
|
|
366
|
+
if (abortSignal.aborted) onAbort();
|
|
367
|
+
else abortSignal.addEventListener("abort", onAbort, { once: true });
|
|
368
|
+
})
|
|
369
|
+
]) : await lookup;
|
|
358
370
|
} catch {
|
|
371
|
+
if (abortSignal?.aborted) {
|
|
372
|
+
throw abortSignal.reason instanceof Error ? abortSignal.reason : new Error("Voice request was aborted.");
|
|
373
|
+
}
|
|
359
374
|
throw new Error(
|
|
360
375
|
`Voice model '${voiceConfig.model}': DNS lookup failed for ${hostname}. Cannot verify network safety.`
|
|
361
376
|
);
|
|
377
|
+
} finally {
|
|
378
|
+
if (onAbort) abortSignal?.removeEventListener("abort", onAbort);
|
|
362
379
|
}
|
|
363
380
|
const records = Array.isArray(result) ? result : [result];
|
|
364
381
|
if (records.some((record) => isPrivateNetworkIp(record.address))) {
|
|
@@ -649,7 +666,11 @@ async function transcribeViaQwenAsr(audio, voiceConfig, options, fetchFn) {
|
|
|
649
666
|
__name(transcribeViaQwenAsr, "transcribeViaQwenAsr");
|
|
650
667
|
async function transcribeVoiceAudio(audio, args) {
|
|
651
668
|
const voiceConfig = resolveVoiceTranscriptionConfig(args);
|
|
652
|
-
await assertVoiceBaseUrlNetworkAllowed(
|
|
669
|
+
await assertVoiceBaseUrlNetworkAllowed(
|
|
670
|
+
voiceConfig,
|
|
671
|
+
args.lookupHost,
|
|
672
|
+
args.abortSignal
|
|
673
|
+
);
|
|
653
674
|
const fetchFn = args.fetchFn ?? fetch;
|
|
654
675
|
const language = resolveLanguageCode(readVoiceLanguage(args.settings));
|
|
655
676
|
const keytermsContext = buildKeytermsContext(args.settings);
|