@qwen-code/qwen-code 0.19.6-nightly.20260707.bcdb44c5d → 0.19.6-preview.0
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/features/channels/_meta.ts +1 -0
- package/bundled/qc-helper/docs/features/channels/overview.md +17 -9
- package/bundled/qc-helper/docs/features/channels/wecom.md +111 -0
- package/bundled/qc-helper/docs/features/code-review.md +0 -4
- package/bundled/review/DESIGN.md +0 -4
- package/bundled/review/SKILL.md +2 -29
- package/chunks/{MaxSizedBox-EFDCCPYQ.js → MaxSizedBox-2JOX4MMR.js} +11 -9
- package/chunks/{StandaloneSessionPicker-5TQG34MY.js → StandaloneSessionPicker-Z2G37ETA.js} +24 -21
- package/chunks/{acpAgent-KQT52XWB.js → acpAgent-MQJT2H4Y.js} +74 -49
- package/chunks/{agent-RL2YOM2V.js → agent-HEVJ76EO.js} +6 -6
- package/chunks/{agent-headless-SCVFLRZ3.js → agent-headless-UNB5SWYC.js} +6 -6
- package/chunks/{anthropicContentGenerator-PPPLABT5.js → anthropicContentGenerator-AKYPSZIV.js} +3 -3
- package/chunks/{artifact-tool-H2TNPNP5.js → artifact-tool-D233YJFH.js} +25 -6
- package/chunks/{bridge-G3LFYH2D.js → bridge-GX2LGQDS.js} +11 -9
- package/chunks/{channel-worker-supervisor-B7MSMB5K.js → channel-worker-supervisor-CRCVYQIE.js} +1 -1
- package/chunks/{chunk-XUYYEFCM.js → chunk-27QGW3BK.js} +5 -5
- package/chunks/{chunk-HLJMZYTD.js → chunk-2D5Q33PT.js} +3 -3
- package/chunks/{chunk-TNIZ2HCQ.js → chunk-2MDHTI6A.js} +2 -2
- package/chunks/{chunk-VCKMHAEZ.js → chunk-2MJAXDFK.js} +6 -6
- package/chunks/{chunk-WSVZFWN4.js → chunk-2NPS2UDH.js} +305 -97
- package/chunks/{chunk-WAVK7GV6.js → chunk-2X3ZVAAT.js} +2 -2
- package/chunks/chunk-332PWN27.js +19 -0
- package/chunks/{chunk-FVMWEHWU.js → chunk-3B26UVCX.js} +114 -12
- package/chunks/{chunk-XZ2LJL4O.js → chunk-43W4YSO6.js} +1 -12
- package/chunks/{chunk-DLHOIROF.js → chunk-44NROQYV.js} +4 -2
- package/chunks/{chunk-65P5ZXUE.js → chunk-4XV2MRNK.js} +1 -1
- package/chunks/{chunk-DS6NG7SB.js → chunk-5HMMLTUD.js} +11 -11
- package/chunks/{chunk-A2CS67WK.js → chunk-5IGNZP2J.js} +1 -1
- package/chunks/{chunk-N7BUPX4V.js → chunk-6GHEZDDX.js} +1 -1
- package/chunks/{chunk-QU6OLW25.js → chunk-7O6DD2ES.js} +1 -1
- package/chunks/{chunk-RXDYWLOG.js → chunk-7R62CLMI.js} +4 -4
- package/chunks/{chunk-2BJWUJCW.js → chunk-7SAH6M3Y.js} +3 -3
- package/chunks/{chunk-OGAC66WF.js → chunk-7VCI24VZ.js} +4 -107
- package/chunks/chunk-A2X3KLC3.js +3807 -0
- package/chunks/chunk-A3ZQMFO6.js +949 -0
- package/chunks/{chunk-AY7CP32Q.js → chunk-A7UKINBT.js} +7 -7
- package/chunks/{chunk-72DDO73Z.js → chunk-ADO6IDOZ.js} +8 -8
- package/chunks/{chunk-UOGOM4NJ.js → chunk-AJ3CEJRJ.js} +10 -5
- package/chunks/{chunk-NCFY7PWS.js → chunk-CCGOFQV3.js} +51 -2
- package/chunks/{chunk-YFE4YEDW.js → chunk-DB7CZERZ.js} +1 -1
- package/chunks/{chunk-UECJ7AG2.js → chunk-DF74IL3R.js} +4 -4
- package/chunks/{chunk-7YLLBKDB.js → chunk-FCEHOKYP.js} +5 -5
- package/chunks/{chunk-JO6RDLLE.js → chunk-FRR5I3SQ.js} +1 -1
- package/chunks/{chunk-2NL7ED5Q.js → chunk-FV7425LN.js} +22 -1
- package/chunks/{chunk-NCOLCOA6.js → chunk-GPLKAQUX.js} +8 -8
- package/chunks/{chunk-AKGA72ZM.js → chunk-GV2S4F6Q.js} +5 -3
- package/chunks/{chunk-V63Q7BVE.js → chunk-GW67O5SO.js} +1 -1
- package/chunks/{chunk-2A6XOMBQ.js → chunk-HW4N45EE.js} +0 -44
- package/chunks/{chunk-S6PM5JQZ.js → chunk-IFDJAMJW.js} +484 -1222
- package/chunks/{chunk-B2FUQ22Z.js → chunk-ILFQAFWH.js} +1 -1
- package/chunks/chunk-JYFZFWSL.js +167 -0
- package/chunks/{chunk-CA373SPN.js → chunk-K56RTEBN.js} +1 -1
- package/chunks/chunk-LGFAYIKX.js +115 -0
- package/chunks/{chunk-6JESGXWU.js → chunk-LLTFLVFK.js} +4 -4
- package/chunks/{chunk-3A4MUHRP.js → chunk-MZWODTEA.js} +5 -13
- package/chunks/{chunk-IPKM25FZ.js → chunk-N33JAGJ7.js} +505 -62
- package/chunks/{chunk-B2NCNYBK.js → chunk-NVQVIJMO.js} +112 -42
- package/chunks/{chunk-INNPK6XG.js → chunk-O6T7PBUM.js} +30 -6
- package/chunks/{chunk-RN36CE4M.js → chunk-P452E6XF.js} +2 -2
- package/chunks/chunk-PS2NG7KU.js +262 -0
- package/chunks/{chunk-FTEFJT6V.js → chunk-QM4FKX7H.js} +2 -2
- package/chunks/chunk-RODQXLGZ.js +28 -0
- package/chunks/{chunk-KSPVDFE4.js → chunk-SAIILPQ3.js} +0 -3
- package/chunks/{chunk-EKDTGEX4.js → chunk-SJ3QRPN2.js} +14 -8
- package/chunks/{chunk-R57UD732.js → chunk-SKO6VJHG.js} +16 -4
- package/chunks/{chunk-66KNL43D.js → chunk-TBAZMRW3.js} +1 -1
- package/chunks/{chunk-H2UZO2II.js → chunk-TPTG52XG.js} +1 -1
- package/chunks/chunk-UIDXQNMV.js +13 -0
- package/chunks/chunk-VP2FB7OC.js +8223 -0
- package/chunks/{chunk-32KIF557.js → chunk-WKBA74DD.js} +1 -1
- package/chunks/{chunk-IEFMDFCG.js → chunk-WKTLDGD6.js} +1 -1
- package/chunks/{chunk-HT553O4R.js → chunk-WRLMLPWI.js} +3 -3
- package/chunks/{chunk-CYXPEKVN.js → chunk-XXICIIS5.js} +5 -5
- package/chunks/{chunk-5GSUPP7K.js → chunk-Y3QQV7WE.js} +2 -2
- package/chunks/{chunk-CKBRK552.js → chunk-ZKX7IBXU.js} +4 -4
- package/chunks/{chunk-CCPKBMZ4.js → chunk-ZOSL7K3L.js} +203 -38
- package/chunks/{chunk-KD4KV6XW.js → chunk-ZWFS7YCB.js} +4505 -3850
- package/chunks/{computer-use-NKJX6RTG.js → computer-use-IQ46C3YP.js} +6 -6
- package/chunks/{contextCommand-BCABFW4A.js → contextCommand-TTT6AP2W.js} +10 -9
- package/chunks/{cron-create-DDYU4DIR.js → cron-create-JSXEIPVS.js} +1 -1
- package/chunks/{cron-delete-DFKOUZWN.js → cron-delete-OIFVEPGU.js} +1 -1
- package/chunks/{cron-list-ME5QGAR5.js → cron-list-D4ZX4IOE.js} +1 -1
- package/chunks/{daemon-XWG2EGFX.js → daemon-F3I2RXP6.js} +23 -3
- package/chunks/{daemon-status-provider-V7BMA4EH.js → daemon-status-provider-5GAWK65R.js} +13 -12
- package/chunks/dist-573HNSVO.js +3217 -0
- package/chunks/{dist-VHBP2PIG.js → dist-FQ5WRJPL.js} +2 -2
- package/chunks/{dist-LPVU3L2M.js → dist-IMFFBMAT.js} +6 -3792
- package/chunks/{dist-7GU63KI5.js → dist-OT7G2WNM.js} +1 -1
- package/chunks/{dist-H4HHZYCI.js → dist-PKFTNUHO.js} +2 -2
- package/chunks/{dist-3UDX5T4T.js → dist-YTRKAVUB.js} +1 -1
- package/chunks/{earlyInputCapture-TVECMHWI.js → earlyInputCapture-LAGZUGGV.js} +6 -6
- package/chunks/{edit-VKUCEX2N.js → edit-Q5BUQC2S.js} +6 -6
- package/chunks/{en-AXARKOWO.js → en-GA2RMXY5.js} +5 -1
- package/chunks/{enter-worktree-TF6N7GA7.js → enter-worktree-DC4FHMVF.js} +6 -6
- package/chunks/{enterPlanMode-XXQGZP5T.js → enterPlanMode-5BGJBWIY.js} +6 -6
- package/chunks/{errors-LLC2B5D6.js → errors-EGX5DECS.js} +8 -8
- package/chunks/{exit-worktree-YBOMMZLI.js → exit-worktree-2EOSZNZI.js} +6 -6
- package/chunks/{exitPlanMode-74D7EOBH.js → exitPlanMode-JAQ35ELJ.js} +6 -6
- package/chunks/{fast-path-OGY4P74O.js → fast-path-QEWDA6O6.js} +5 -2
- package/chunks/{fr-MBMNQSQ6.js → fr-GWNQG4XH.js} +4 -0
- package/chunks/{gemini-IL6H4VNW.js → gemini-TQ5XANRS.js} +64 -187
- package/chunks/{geminiContentGenerator-O7OCAUQU.js → geminiContentGenerator-DCM2XGDQ.js} +1 -1
- package/chunks/{glob-X5XFJTAC.js → glob-7JLTQ4IQ.js} +6 -6
- package/chunks/{grep-53GLRSNS.js → grep-CAUXEO7Q.js} +6 -6
- package/chunks/handleAutoUpdate-XKXULZQX.js +65 -0
- package/chunks/{initializer-YBUEYP6D.js → initializer-3NRWU5JV.js} +12 -10
- package/chunks/{ja-HFV5QCHR.js → ja-2HOTA47X.js} +4 -0
- package/chunks/{list-2F3FSN46.js → list-NWO6QBDQ.js} +12 -12
- package/chunks/{loadedSettingsAdapter-AJBE627U.js → loadedSettingsAdapter-PJ77LGFS.js} +10 -10
- package/chunks/{loop-wakeup-ZW5P6VPY.js → loop-wakeup-OHWEMFP5.js} +2 -2
- package/chunks/{mcp-SEE2Z7TA.js → mcp-VFEHVF5A.js} +10 -10
- package/chunks/{monitor-YQW2M3DL.js → monitor-FY2ITVSC.js} +14 -9
- package/chunks/{nonInteractiveCli-TGWJDY47.js → nonInteractiveCli-KPCXTVWY.js} +41 -36
- package/chunks/{notebook-edit-O5G3EBYN.js → notebook-edit-BSJMXIWX.js} +6 -6
- package/chunks/{openaiContentGenerator-WAO7PPR6.js → openaiContentGenerator-BA6NWY4S.js} +5 -5
- package/chunks/{pidfile-XMDB2SF7.js → pidfile-WXMRN6QF.js} +6 -6
- package/chunks/{qwenContentGenerator-5NZ5EHRA.js → qwenContentGenerator-U4ZSLGFN.js} +8 -8
- package/chunks/{read-file-KJTMBLFF.js → read-file-VMVHNOMA.js} +2 -2
- package/chunks/{ripGrep-BCDYVQQR.js → ripGrep-NC6MUWXN.js} +6 -6
- package/chunks/{run-qwen-serve-LIWM3CMV.js → run-qwen-serve-NQH6LQTH.js} +124 -31
- package/chunks/{scheduler-VETDW3HX.js → scheduler-35T3E2UQ.js} +6 -6
- package/chunks/{serve-XKFTUZET.js → serve-C36LOB5N.js} +10 -10
- package/chunks/{server-W64GXOEJ.js → server-TDFPIDC3.js} +858 -105
- package/chunks/{session-GXNRZGVF.js → session-STHNQGRJ.js} +42 -37
- package/chunks/{settings-TIQCDHBZ.js → settings-GIE22AYF.js} +9 -9
- package/chunks/{shell-3ZZLLA35.js → shell-JD52AIMU.js} +6 -6
- package/chunks/{skill-TOX5QGBX.js → skill-L4IFKRQ5.js} +14 -4
- package/chunks/{spawnChannel-JBLAIP7L.js → spawnChannel-HGMOEPM7.js} +8 -8
- package/chunks/{src-Q7BIRWUP.js → src-3SNF3G3V.js} +15 -7
- package/chunks/{startInteractiveUI-PP72WI64.js → startInteractiveUI-C7DCDHGF.js} +4981 -13173
- package/chunks/{team-create-S44Z3N62.js → team-create-NYL7KAMA.js} +6 -6
- package/chunks/{team-plan-approval-2YPLSLO5.js → team-plan-approval-LH65JBEH.js} +6 -6
- package/chunks/{theme-manager-4MJVYHPB.js → theme-manager-ANKQO5DR.js} +6 -6
- package/chunks/{tool-search-4LSRQ24Z.js → tool-search-WZEGJFO4.js} +4 -21
- package/chunks/{trustedFolders-XMKLRQDH.js → trustedFolders-HECAG3S3.js} +7 -7
- package/chunks/updateCheck-72BBAE5V.js +65 -0
- package/chunks/{validateNonInterActiveAuth-MMMRF6WS.js → validateNonInterActiveAuth-PDQCPSNA.js} +38 -33
- package/chunks/{version-6HMEMR4K.js → version-VSEUTPNM.js} +2 -1
- package/chunks/{workflow-VYBLLOLC.js → workflow-DPF2CL7U.js} +7 -7
- package/chunks/{workspace-providers-status-5LSCQPWQ.js → workspace-providers-status-TQ23DQ2D.js} +12 -12
- package/chunks/{workspace-service-HBMBWJ4K.js → workspace-service-D34UDMEY.js} +14 -14
- package/chunks/{workspace-skills-status-TLBAQWKQ.js → workspace-skills-status-4DR5UNNC.js} +11 -11
- package/chunks/{write-file-QMAWLWCT.js → write-file-VFNAKGYM.js} +6 -6
- package/chunks/{zh-RS3HZHFH.js → zh-7XVVRTDH.js} +5 -1
- package/chunks/{zh-TW-L5GRQ4S4.js → zh-TW-DPH554OG.js} +5 -1
- package/cli.js +11 -11
- package/locales/en.js +8 -2
- package/locales/fr.js +6 -0
- package/locales/ja.js +6 -0
- package/locales/zh-TW.js +8 -2
- package/locales/zh.js +8 -2
- package/node_modules/@qwen-code/audio-capture/package.json +1 -1
- package/node_modules/@qwen-code/audio-capture/prebuilds/darwin-arm64/@qwen-code+audio-capture.node +0 -0
- package/node_modules/@qwen-code/audio-capture/prebuilds/darwin-x64/@qwen-code+audio-capture.node +0 -0
- package/node_modules/@qwen-code/audio-capture/prebuilds/win32-x64/@qwen-code+audio-capture.node +0 -0
- package/package.json +3 -3
- package/web-shell/assets/{arc-CqwzD3ok.js → arc-C7hjaa7g.js} +1 -1
- package/web-shell/assets/{architectureDiagram-3BPJPVTR-BfA-P0-O.js → architectureDiagram-3BPJPVTR-pm9KtMZY.js} +1 -1
- package/web-shell/assets/{blockDiagram-GPEHLZMM-DNTzkXRp.js → blockDiagram-GPEHLZMM-CApElKsU.js} +1 -1
- package/web-shell/assets/{c4Diagram-AAUBKEIU-D5axQoXQ.js → c4Diagram-AAUBKEIU-BeDe0-9N.js} +1 -1
- package/web-shell/assets/channel-BNf1dW-j.js +1 -0
- package/web-shell/assets/{chunk-2J33WTMH-CV0P48eN.js → chunk-2J33WTMH-DJEkmLdl.js} +1 -1
- package/web-shell/assets/{chunk-4BX2VUAB-CghJNPCS.js → chunk-4BX2VUAB-DXX8gdpe.js} +1 -1
- package/web-shell/assets/{chunk-55IACEB6-BrD-776x.js → chunk-55IACEB6-DORmk1kQ.js} +1 -1
- package/web-shell/assets/{chunk-727SXJPM-DLKkI5Yu.js → chunk-727SXJPM-DWmO4mCZ.js} +1 -1
- package/web-shell/assets/{chunk-AQP2D5EJ-C0HWhZNK.js → chunk-AQP2D5EJ-C7LRaYw2.js} +1 -1
- package/web-shell/assets/{chunk-FMBD7UC4-Cg6PsiNL.js → chunk-FMBD7UC4-CCdXgyC5.js} +1 -1
- package/web-shell/assets/{chunk-ND2GUHAM-B1pCuSlf.js → chunk-ND2GUHAM-SyL_xvWc.js} +1 -1
- package/web-shell/assets/{chunk-QZHKN3VN-CkE8llI2.js → chunk-QZHKN3VN-BzOuCKxa.js} +1 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-uOIGlzgi.js +1 -0
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-uOIGlzgi.js +1 -0
- package/web-shell/assets/{cose-bilkent-S5V4N54A-Btr-W-vN.js → cose-bilkent-S5V4N54A-BMPWyDKc.js} +1 -1
- package/web-shell/assets/{dagre-BM42HDAG-CAhjVa5L.js → dagre-BM42HDAG-B_GnPWik.js} +1 -1
- package/web-shell/assets/{diagram-2AECGRRQ-eUQodUXw.js → diagram-2AECGRRQ-fJqMc3S_.js} +1 -1
- package/web-shell/assets/{diagram-5GNKFQAL-BiPKbH6E.js → diagram-5GNKFQAL-ximV3O9D.js} +1 -1
- package/web-shell/assets/{diagram-KO2AKTUF-DxuwR-Pu.js → diagram-KO2AKTUF-2vVyjzqw.js} +1 -1
- package/web-shell/assets/{diagram-LMA3HP47-nz9SQ3Az.js → diagram-LMA3HP47-Dckcx1sT.js} +1 -1
- package/web-shell/assets/{diagram-OG6HWLK6-UBbYk-Jq.js → diagram-OG6HWLK6-BAVv47ga.js} +1 -1
- package/web-shell/assets/{erDiagram-TEJ5UH35-BLpRQmgi.js → erDiagram-TEJ5UH35-Bn3nf5J0.js} +1 -1
- package/web-shell/assets/{flowDiagram-I6XJVG4X-C5Qqg1hx.js → flowDiagram-I6XJVG4X-BIbGF9JT.js} +1 -1
- package/web-shell/assets/{ganttDiagram-6RSMTGT7-BMdf3kjL.js → ganttDiagram-6RSMTGT7-CDbhb3AH.js} +1 -1
- package/web-shell/assets/{gitGraphDiagram-PVQCEYII-D9qG7BKD.js → gitGraphDiagram-PVQCEYII-CbKG1a_w.js} +1 -1
- package/web-shell/assets/index-CnE2ur2L.js +779 -0
- package/web-shell/assets/index-hSKXrlSE.css +5 -0
- package/web-shell/assets/{infoDiagram-5YYISTIA-CtDBPJM8.js → infoDiagram-5YYISTIA-DUFxTy8m.js} +1 -1
- package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-BQaS7H3_.js → ishikawaDiagram-YF4QCWOH-D69hrBG8.js} +1 -1
- package/web-shell/assets/{journeyDiagram-JHISSGLW-CEEujCNX.js → journeyDiagram-JHISSGLW-DsvEw51Y.js} +1 -1
- package/web-shell/assets/{kanban-definition-UN3LZRKU-B3QqyyNi.js → kanban-definition-UN3LZRKU-lFFjZEYd.js} +1 -1
- package/web-shell/assets/{linear-DC2Azd_6.js → linear-Bo5bWzvo.js} +1 -1
- package/web-shell/assets/{mermaid.core-DL5PRmh-.js → mermaid.core-C_HKMJx5.js} +5 -5
- package/web-shell/assets/{mindmap-definition-RKZ34NQL-DGlkd_fb.js → mindmap-definition-RKZ34NQL-DlV-NUTs.js} +1 -1
- package/web-shell/assets/{pieDiagram-4H26LBE5-Dew4R8DT.js → pieDiagram-4H26LBE5-B2e6FH2a.js} +1 -1
- package/web-shell/assets/{quadrantDiagram-W4KKPZXB-Bk02Tejc.js → quadrantDiagram-W4KKPZXB-D75kSk-b.js} +1 -1
- package/web-shell/assets/{requirementDiagram-4Y6WPE33-BkWJE-6M.js → requirementDiagram-4Y6WPE33-CQ6xakhM.js} +1 -1
- package/web-shell/assets/{sankeyDiagram-5OEKKPKP-BM9bZAuM.js → sankeyDiagram-5OEKKPKP-J_XTKrcY.js} +1 -1
- package/web-shell/assets/{sequenceDiagram-3UESZ5HK-IaE2rOTu.js → sequenceDiagram-3UESZ5HK-D7jTcBtf.js} +1 -1
- package/web-shell/assets/{stateDiagram-AJRCARHV-CQH-ENFJ.js → stateDiagram-AJRCARHV-CrlM_OT3.js} +1 -1
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-Bs4TK_84.js +1 -0
- package/web-shell/assets/{timeline-definition-PNZ67QCA-DVH5FaeF.js → timeline-definition-PNZ67QCA-5oZi76Ef.js} +1 -1
- package/web-shell/assets/{vennDiagram-CIIHVFJN-ChT6J8JT.js → vennDiagram-CIIHVFJN-DO5YptPK.js} +1 -1
- package/web-shell/assets/{wardley-L42UT6IY-D9W5AEjE.js → wardley-L42UT6IY-4t1eJDvM.js} +1 -1
- package/web-shell/assets/{wardleyDiagram-YWT4CUSO-cNYKmuIA.js → wardleyDiagram-YWT4CUSO-DKZc661S.js} +1 -1
- package/web-shell/assets/{xychartDiagram-2RQKCTM6-BleLm4BJ.js → xychartDiagram-2RQKCTM6-su9hp08G.js} +1 -1
- package/web-shell/index.html +2 -2
- package/web-shell/assets/channel-EyH7BS8F.js +0 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-CPWvwYMM.js +0 -1
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-CPWvwYMM.js +0 -1
- package/web-shell/assets/index-CgttHpqB.js +0 -763
- package/web-shell/assets/index-sVELoa_9.css +0 -5
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-CFqBlFdE.js +0 -1
|
@@ -2,7 +2,11 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
relaunchApp
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-FRR5I3SQ.js";
|
|
6
|
+
import {
|
|
7
|
+
MINIMUM_MAX_HEIGHT,
|
|
8
|
+
MaxSizedBox
|
|
9
|
+
} from "./chunk-Y3QQV7WE.js";
|
|
6
10
|
import {
|
|
7
11
|
CODE_FENCE_RE,
|
|
8
12
|
SHELL_COMMAND_NAME,
|
|
@@ -18,7 +22,7 @@ import {
|
|
|
18
22
|
getCommandSubcommandNames,
|
|
19
23
|
splitMarkdownTableRow,
|
|
20
24
|
useSessionStats
|
|
21
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-7R62CLMI.js";
|
|
22
26
|
import {
|
|
23
27
|
Colors,
|
|
24
28
|
RowMouseController,
|
|
@@ -27,7 +31,7 @@ import {
|
|
|
27
31
|
useMouseEvents,
|
|
28
32
|
useSettings,
|
|
29
33
|
useTerminalSize
|
|
30
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-P452E6XF.js";
|
|
31
35
|
import {
|
|
32
36
|
buildResumedHistoryItems,
|
|
33
37
|
calculateAverageLatency,
|
|
@@ -40,14 +44,7 @@ import {
|
|
|
40
44
|
levelLabel,
|
|
41
45
|
useKeypress,
|
|
42
46
|
wrapForMultiplexer
|
|
43
|
-
} from "./chunk-
|
|
44
|
-
import {
|
|
45
|
-
isTerminalGoalStatusKind
|
|
46
|
-
} from "./chunk-KSPVDFE4.js";
|
|
47
|
-
import {
|
|
48
|
-
MINIMUM_MAX_HEIGHT,
|
|
49
|
-
MaxSizedBox
|
|
50
|
-
} from "./chunk-5GSUPP7K.js";
|
|
47
|
+
} from "./chunk-GPLKAQUX.js";
|
|
51
48
|
import {
|
|
52
49
|
theme
|
|
53
50
|
} from "./chunk-IFEWJXFS.js";
|
|
@@ -59,7 +56,10 @@ import {
|
|
|
59
56
|
require_jsx_runtime,
|
|
60
57
|
use_is_screen_reader_enabled_default,
|
|
61
58
|
use_stdin_default
|
|
62
|
-
} from "./chunk-
|
|
59
|
+
} from "./chunk-MZWODTEA.js";
|
|
60
|
+
import {
|
|
61
|
+
isTerminalGoalStatusKind
|
|
62
|
+
} from "./chunk-SAIILPQ3.js";
|
|
63
63
|
import {
|
|
64
64
|
require_react
|
|
65
65
|
} from "./chunk-KYMBIKIW.js";
|
|
@@ -74,7 +74,6 @@ import {
|
|
|
74
74
|
import {
|
|
75
75
|
cpLen,
|
|
76
76
|
cpSlice,
|
|
77
|
-
eastAsianWidth,
|
|
78
77
|
escapeAnsiCtrlCodes,
|
|
79
78
|
getCachedStringWidth,
|
|
80
79
|
sanitizeSensitiveText,
|
|
@@ -82,7 +81,10 @@ import {
|
|
|
82
81
|
stripUnsafeCharacters,
|
|
83
82
|
toCodePoints,
|
|
84
83
|
wrapToVisualLines
|
|
85
|
-
} from "./chunk-
|
|
84
|
+
} from "./chunk-7VCI24VZ.js";
|
|
85
|
+
import {
|
|
86
|
+
eastAsianWidth
|
|
87
|
+
} from "./chunk-LGFAYIKX.js";
|
|
86
88
|
import {
|
|
87
89
|
formatDuration,
|
|
88
90
|
formatMemoryUsage,
|
|
@@ -91,18 +93,18 @@ import {
|
|
|
91
93
|
} from "./chunk-KHDZHZMH.js";
|
|
92
94
|
import {
|
|
93
95
|
createLoadedSettingsAdapter
|
|
94
|
-
} from "./chunk-
|
|
96
|
+
} from "./chunk-K56RTEBN.js";
|
|
95
97
|
import {
|
|
96
98
|
getPersistScopeForModelSelection
|
|
97
|
-
} from "./chunk-
|
|
99
|
+
} from "./chunk-O6T7PBUM.js";
|
|
98
100
|
import {
|
|
99
101
|
getCurrentLanguage,
|
|
100
102
|
localizeToolDisplayName,
|
|
101
103
|
t
|
|
102
|
-
} from "./chunk-
|
|
104
|
+
} from "./chunk-2MJAXDFK.js";
|
|
103
105
|
import {
|
|
104
106
|
isWorkspaceTrusted
|
|
105
|
-
} from "./chunk-
|
|
107
|
+
} from "./chunk-WKBA74DD.js";
|
|
106
108
|
import {
|
|
107
109
|
ALL_PROVIDERS,
|
|
108
110
|
IdeClient,
|
|
@@ -123,11 +125,11 @@ import {
|
|
|
123
125
|
resolveMetadataKey,
|
|
124
126
|
resolveOwnsModel,
|
|
125
127
|
stripAnsi
|
|
126
|
-
} from "./chunk-
|
|
128
|
+
} from "./chunk-ZWFS7YCB.js";
|
|
127
129
|
import {
|
|
128
130
|
MAIN_SOURCE,
|
|
129
131
|
getMCPServerStatus
|
|
130
|
-
} from "./chunk-
|
|
132
|
+
} from "./chunk-N33JAGJ7.js";
|
|
131
133
|
import {
|
|
132
134
|
ToolDisplayNames,
|
|
133
135
|
ToolNames,
|
|
@@ -5496,6 +5498,7 @@ var TableRenderer = /* @__PURE__ */ __name(({
|
|
|
5496
5498
|
contentWidth,
|
|
5497
5499
|
aligns,
|
|
5498
5500
|
enableInlineMath = false,
|
|
5501
|
+
isStreaming = false,
|
|
5499
5502
|
maxHeight
|
|
5500
5503
|
}) => {
|
|
5501
5504
|
const colCount = headers.length;
|
|
@@ -5584,18 +5587,23 @@ var TableRenderer = /* @__PURE__ */ __name(({
|
|
|
5584
5587
|
}
|
|
5585
5588
|
function calculateMaxRowLines() {
|
|
5586
5589
|
let maxLines = 1;
|
|
5590
|
+
const rowsToMeasure = isStreaming ? rowMetrics.slice(0, 1) : rowMetrics;
|
|
5587
5591
|
for (let i = 0; i < colCount; i++) {
|
|
5588
|
-
const
|
|
5589
|
-
|
|
5590
|
-
|
|
5591
|
-
|
|
5592
|
+
const headerWrapped = wrapText(
|
|
5593
|
+
headerMetrics[i].rendered,
|
|
5594
|
+
columnWidths[i],
|
|
5595
|
+
{
|
|
5596
|
+
hard: needsHardWrap
|
|
5597
|
+
}
|
|
5598
|
+
);
|
|
5599
|
+
maxLines = Math.max(maxLines, headerWrapped.length);
|
|
5592
5600
|
}
|
|
5593
|
-
for (const row of
|
|
5601
|
+
for (const row of rowsToMeasure) {
|
|
5594
5602
|
for (let i = 0; i < colCount; i++) {
|
|
5595
|
-
const
|
|
5603
|
+
const cellWrapped = wrapText(row[i].rendered, columnWidths[i], {
|
|
5596
5604
|
hard: needsHardWrap
|
|
5597
5605
|
});
|
|
5598
|
-
maxLines = Math.max(maxLines,
|
|
5606
|
+
maxLines = Math.max(maxLines, cellWrapped.length);
|
|
5599
5607
|
}
|
|
5600
5608
|
}
|
|
5601
5609
|
return maxLines;
|
|
@@ -5606,7 +5614,7 @@ var TableRenderer = /* @__PURE__ */ __name(({
|
|
|
5606
5614
|
ABSOLUTE_MIN_HORIZONTAL_TABLE_WIDTH,
|
|
5607
5615
|
colCount * MIN_COLUMN_WIDTH + borderOverhead + SAFETY_MARGIN
|
|
5608
5616
|
);
|
|
5609
|
-
const useVerticalFormat = contentWidth < minHorizontalTableWidth || maxRowLines > MAX_ROW_LINES;
|
|
5617
|
+
const useVerticalFormat = rowMetrics.length > 0 && (contentWidth < minHorizontalTableWidth || maxRowLines > MAX_ROW_LINES);
|
|
5610
5618
|
const getAlign = /* @__PURE__ */ __name((colIndex) => aligns?.[colIndex] ?? "left", "getAlign");
|
|
5611
5619
|
function renderBorderLine(type) {
|
|
5612
5620
|
const [left, mid, cross, right] = {
|
|
@@ -5695,23 +5703,25 @@ var TableRenderer = /* @__PURE__ */ __name(({
|
|
|
5695
5703
|
const tableLines = [];
|
|
5696
5704
|
tableLines.push(renderBorderLine("top"));
|
|
5697
5705
|
tableLines.push(...renderRowLines(headerRendered, true));
|
|
5698
|
-
|
|
5699
|
-
|
|
5700
|
-
|
|
5701
|
-
|
|
5702
|
-
|
|
5703
|
-
|
|
5704
|
-
|
|
5705
|
-
|
|
5706
|
-
|
|
5707
|
-
|
|
5708
|
-
|
|
5709
|
-
|
|
5706
|
+
if (rowMetrics.length > 0) {
|
|
5707
|
+
tableLines.push(renderBorderLine("middle"));
|
|
5708
|
+
rowMetrics.forEach((row, rowIndex) => {
|
|
5709
|
+
tableLines.push(
|
|
5710
|
+
...renderRowLines(
|
|
5711
|
+
row.map((m) => m.rendered),
|
|
5712
|
+
false
|
|
5713
|
+
)
|
|
5714
|
+
);
|
|
5715
|
+
if (rowIndex < rows.length - 1) {
|
|
5716
|
+
tableLines.push(renderBorderLine("middle"));
|
|
5717
|
+
}
|
|
5718
|
+
});
|
|
5719
|
+
}
|
|
5710
5720
|
tableLines.push(renderBorderLine("bottom"));
|
|
5711
5721
|
const maxLineWidth = Math.max(
|
|
5712
5722
|
...tableLines.map((line) => getCachedStringWidth(stripAnsi(line)))
|
|
5713
5723
|
);
|
|
5714
|
-
if (maxLineWidth > contentWidth - SAFETY_MARGIN) {
|
|
5724
|
+
if (rowMetrics.length > 0 && maxLineWidth > contentWidth - SAFETY_MARGIN) {
|
|
5715
5725
|
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Box_default, { marginY: 1, children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Text, { children: clampToMaxHeight(renderVerticalFormat()) }) });
|
|
5716
5726
|
}
|
|
5717
5727
|
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Box_default, { flexDirection: "column", marginY: 1, children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Text, { children: clampToMaxHeight(tableLines.join("\n")) }) });
|
|
@@ -8139,6 +8149,62 @@ var MarkdownDisplayInternal = /* @__PURE__ */ __name(({
|
|
|
8139
8149
|
lines = allLines.slice(0, keptLines);
|
|
8140
8150
|
}
|
|
8141
8151
|
}
|
|
8152
|
+
if (isPending && renderVisualBlocks && lines.length > 0) {
|
|
8153
|
+
let start = lines.length;
|
|
8154
|
+
while (start > 0 && /^\s*\|/.test(lines[start - 1])) start--;
|
|
8155
|
+
if (start < lines.length) {
|
|
8156
|
+
let activeCodeFence = "";
|
|
8157
|
+
let insideMathBlock = false;
|
|
8158
|
+
for (let i = 0; i < start; i++) {
|
|
8159
|
+
const line = lines[i];
|
|
8160
|
+
if (activeCodeFence) {
|
|
8161
|
+
const fenceMatch2 = line.match(codeFenceRegex);
|
|
8162
|
+
if (fenceMatch2 && fenceMatch2[1].startsWith(activeCodeFence[0]) && fenceMatch2[1].length >= activeCodeFence.length) {
|
|
8163
|
+
activeCodeFence = "";
|
|
8164
|
+
}
|
|
8165
|
+
continue;
|
|
8166
|
+
}
|
|
8167
|
+
if (insideMathBlock) {
|
|
8168
|
+
if (mathFenceRegex.test(line)) insideMathBlock = false;
|
|
8169
|
+
continue;
|
|
8170
|
+
}
|
|
8171
|
+
const fenceMatch = line.match(codeFenceRegex);
|
|
8172
|
+
if (fenceMatch) {
|
|
8173
|
+
activeCodeFence = fenceMatch[1];
|
|
8174
|
+
} else if (mathFenceRegex.test(line)) {
|
|
8175
|
+
insideMathBlock = true;
|
|
8176
|
+
}
|
|
8177
|
+
}
|
|
8178
|
+
const insideCodeFence = activeCodeFence !== "";
|
|
8179
|
+
let headerCells = 0;
|
|
8180
|
+
if (!insideCodeFence && !insideMathBlock) {
|
|
8181
|
+
let hdr = lines[start].replace(/^\s*\|/, "");
|
|
8182
|
+
if (/\|\s*$/.test(hdr)) hdr = hdr.replace(/\|\s*$/, "");
|
|
8183
|
+
headerCells = splitMarkdownTableRow(hdr).length;
|
|
8184
|
+
}
|
|
8185
|
+
if (headerCells >= 2) {
|
|
8186
|
+
const rest = lines.slice(start + 1);
|
|
8187
|
+
const hasMatchingSeparator = rest.some((l) => {
|
|
8188
|
+
if (!tableSeparatorRegex.test(l)) return false;
|
|
8189
|
+
const cols = splitMarkdownTableRow(l).filter(
|
|
8190
|
+
(c) => c.length > 0
|
|
8191
|
+
).length;
|
|
8192
|
+
return cols === headerCells;
|
|
8193
|
+
});
|
|
8194
|
+
const lineAfterHeader = rest[0];
|
|
8195
|
+
let couldStillBeTable = lineAfterHeader === void 0 || tableSeparatorRegex.test(lineAfterHeader);
|
|
8196
|
+
if (couldStillBeTable && lineAfterHeader !== void 0 && /\|\s*$/.test(lineAfterHeader)) {
|
|
8197
|
+
const sepCols = splitMarkdownTableRow(lineAfterHeader).filter(
|
|
8198
|
+
(c) => c.length > 0
|
|
8199
|
+
).length;
|
|
8200
|
+
if (sepCols !== headerCells) couldStillBeTable = false;
|
|
8201
|
+
}
|
|
8202
|
+
if (!hasMatchingSeparator && couldStillBeTable) {
|
|
8203
|
+
lines = lines.slice(0, start);
|
|
8204
|
+
}
|
|
8205
|
+
}
|
|
8206
|
+
}
|
|
8207
|
+
}
|
|
8142
8208
|
const parseTableAligns = /* @__PURE__ */ __name((line) => splitMarkdownTableRow(line).filter((cell) => cell.length > 0).map((cell) => {
|
|
8143
8209
|
const startsWithColon = cell.startsWith(":");
|
|
8144
8210
|
const endsWithColon = cell.endsWith(":");
|
|
@@ -8278,6 +8344,7 @@ var MarkdownDisplayInternal = /* @__PURE__ */ __name(({
|
|
|
8278
8344
|
}
|
|
8279
8345
|
} else if (inTable && tableSeparatorMatch) {
|
|
8280
8346
|
tableAligns = parseTableAligns(line);
|
|
8347
|
+
} else if (isPending && inTable && index === lines.length - 1 && tableHeaders.length > 0 && /^\s*\|/.test(line) && (!tableRowMatch || splitMarkdownTableRow(tableRowMatch[1]).length < tableHeaders.length)) {
|
|
8281
8348
|
} else if (inTable && tableRowMatch) {
|
|
8282
8349
|
const cells = splitMarkdownTableRow(tableRowMatch[1]);
|
|
8283
8350
|
while (cells.length < tableHeaders.length) {
|
|
@@ -8287,7 +8354,6 @@ var MarkdownDisplayInternal = /* @__PURE__ */ __name(({
|
|
|
8287
8354
|
cells.length = tableHeaders.length;
|
|
8288
8355
|
}
|
|
8289
8356
|
tableRows.push(cells);
|
|
8290
|
-
} else if (isPending && inTable && !tableRowMatch && index === lines.length - 1 && tableHeaders.length > 0 && /^\s*\|/.test(line)) {
|
|
8291
8357
|
} else if (inTable && !tableRowMatch) {
|
|
8292
8358
|
if (tableHeaders.length > 0 && tableRows.length > 0) {
|
|
8293
8359
|
addContentBlock(
|
|
@@ -8300,6 +8366,7 @@ var MarkdownDisplayInternal = /* @__PURE__ */ __name(({
|
|
|
8300
8366
|
aligns: tableAligns,
|
|
8301
8367
|
enableInlineMath: renderVisualBlocks,
|
|
8302
8368
|
isPending,
|
|
8369
|
+
isFrontier: false,
|
|
8303
8370
|
availableTerminalHeight
|
|
8304
8371
|
},
|
|
8305
8372
|
`table-${contentBlocks.length}`
|
|
@@ -8496,6 +8563,7 @@ var MarkdownDisplayInternal = /* @__PURE__ */ __name(({
|
|
|
8496
8563
|
aligns: tableAligns,
|
|
8497
8564
|
enableInlineMath: renderVisualBlocks,
|
|
8498
8565
|
isPending,
|
|
8566
|
+
isFrontier: true,
|
|
8499
8567
|
availableTerminalHeight
|
|
8500
8568
|
},
|
|
8501
8569
|
`table-${contentBlocks.length}`
|
|
@@ -8709,6 +8777,7 @@ var RenderTableInternal = /* @__PURE__ */ __name(({
|
|
|
8709
8777
|
aligns,
|
|
8710
8778
|
enableInlineMath = false,
|
|
8711
8779
|
isPending = false,
|
|
8780
|
+
isFrontier = true,
|
|
8712
8781
|
availableTerminalHeight
|
|
8713
8782
|
}) => {
|
|
8714
8783
|
const maxHeight = isPending && availableTerminalHeight !== void 0 ? Math.max(2, availableTerminalHeight - TABLE_PENDING_RESERVED_ROWS) : void 0;
|
|
@@ -8720,6 +8789,7 @@ var RenderTableInternal = /* @__PURE__ */ __name(({
|
|
|
8720
8789
|
contentWidth,
|
|
8721
8790
|
aligns,
|
|
8722
8791
|
enableInlineMath,
|
|
8792
|
+
isStreaming: isPending && isFrontier,
|
|
8723
8793
|
maxHeight
|
|
8724
8794
|
}
|
|
8725
8795
|
);
|
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
getLanguageNameFromLocale,
|
|
7
7
|
getLanguageSettingsOptions,
|
|
8
8
|
t
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-2MJAXDFK.js";
|
|
10
10
|
import {
|
|
11
11
|
DEFAULT_DARK_THEME_NAME,
|
|
12
12
|
DEFAULT_LIGHT_THEME_NAME
|
|
@@ -29,7 +29,7 @@ import {
|
|
|
29
29
|
import {
|
|
30
30
|
isWorkspaceTrusted,
|
|
31
31
|
updateSettingsFilePreservingFormat
|
|
32
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-WKBA74DD.js";
|
|
33
33
|
import {
|
|
34
34
|
require_strip_json_comments
|
|
35
35
|
} from "./chunk-QYUE6W3T.js";
|
|
@@ -42,7 +42,7 @@ import {
|
|
|
42
42
|
DEFAULT_TRUNCATE_TOOL_OUTPUT_LINES,
|
|
43
43
|
DEFAULT_TRUNCATE_TOOL_OUTPUT_THRESHOLD,
|
|
44
44
|
stripRuntimeSnapshotPrefix
|
|
45
|
-
} from "./chunk-
|
|
45
|
+
} from "./chunk-ZWFS7YCB.js";
|
|
46
46
|
import {
|
|
47
47
|
require_main
|
|
48
48
|
} from "./chunk-SKAZWEV5.js";
|
|
@@ -52,7 +52,7 @@ import {
|
|
|
52
52
|
import {
|
|
53
53
|
DEFAULT_SENSITIVE_SPAN_ATTRIBUTE_MAX_LENGTH,
|
|
54
54
|
SENSITIVE_SPAN_ATTRIBUTE_MAX_LENGTH_LIMIT
|
|
55
|
-
} from "./chunk-
|
|
55
|
+
} from "./chunk-N33JAGJ7.js";
|
|
56
56
|
import {
|
|
57
57
|
FatalConfigError,
|
|
58
58
|
QWEN_DIR,
|
|
@@ -1905,8 +1905,8 @@ var SETTINGS_SCHEMA = {
|
|
|
1905
1905
|
label: "Pager",
|
|
1906
1906
|
category: "Tools",
|
|
1907
1907
|
requiresRestart: false,
|
|
1908
|
-
default:
|
|
1909
|
-
description: "The pager command to use for shell output. Defaults to `cat
|
|
1908
|
+
default: void 0,
|
|
1909
|
+
description: "The pager command to use for shell output. Defaults to `cat` on non-Windows platforms and unset on Windows. Set to an empty string to disable pager environment variables.",
|
|
1910
1910
|
showInDialog: false
|
|
1911
1911
|
},
|
|
1912
1912
|
showColor: {
|
|
@@ -1960,6 +1960,16 @@ var SETTINGS_SCHEMA = {
|
|
|
1960
1960
|
showInDialog: false,
|
|
1961
1961
|
mergeStrategy: "union" /* UNION */
|
|
1962
1962
|
},
|
|
1963
|
+
visible: {
|
|
1964
|
+
type: "array",
|
|
1965
|
+
label: "Visible Deferred Tools",
|
|
1966
|
+
category: "Tools",
|
|
1967
|
+
requiresRestart: true,
|
|
1968
|
+
default: void 0,
|
|
1969
|
+
description: "Deferred tool names made visible at startup without requiring tool_search. Listed tools appear alongside core tools in the initial session.",
|
|
1970
|
+
showInDialog: false,
|
|
1971
|
+
mergeStrategy: "union" /* UNION */
|
|
1972
|
+
},
|
|
1963
1973
|
approvalMode: {
|
|
1964
1974
|
type: "enum",
|
|
1965
1975
|
label: "Tool Approval Mode",
|
|
@@ -2362,6 +2372,20 @@ var SETTINGS_SCHEMA = {
|
|
|
2362
2372
|
description: "Settings for multi-agent collaboration features (Arena, Team, Swarm).",
|
|
2363
2373
|
showInDialog: false,
|
|
2364
2374
|
properties: {
|
|
2375
|
+
maxParallelAgents: {
|
|
2376
|
+
type: "number",
|
|
2377
|
+
label: "Max Parallel Agents",
|
|
2378
|
+
category: "Advanced",
|
|
2379
|
+
requiresRestart: true,
|
|
2380
|
+
default: void 0,
|
|
2381
|
+
minimum: 1,
|
|
2382
|
+
description: "Global maximum number of background sub-agents that can run concurrently. Additional background agents wait in a queue until a slot is available. Per-model limits are not supported yet.",
|
|
2383
|
+
showInDialog: false,
|
|
2384
|
+
jsonSchemaOverride: {
|
|
2385
|
+
type: "integer",
|
|
2386
|
+
minimum: 1
|
|
2387
|
+
}
|
|
2388
|
+
},
|
|
2365
2389
|
displayMode: {
|
|
2366
2390
|
type: "enum",
|
|
2367
2391
|
label: "Display Mode",
|
|
@@ -4,11 +4,11 @@ import {
|
|
|
4
4
|
disableMouseEvents,
|
|
5
5
|
enableMouseEvents,
|
|
6
6
|
useKeypressContext
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-GPLKAQUX.js";
|
|
8
8
|
import {
|
|
9
9
|
use_stdin_default,
|
|
10
10
|
use_stdout_default
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-MZWODTEA.js";
|
|
12
12
|
import {
|
|
13
13
|
require_react
|
|
14
14
|
} from "./chunk-KYMBIKIW.js";
|
|
@@ -0,0 +1,262 @@
|
|
|
1
|
+
// Force strict mode and setup for ESM
|
|
2
|
+
"use strict";
|
|
3
|
+
import {
|
|
4
|
+
appEvents
|
|
5
|
+
} from "./chunk-ZOSL7K3L.js";
|
|
6
|
+
import {
|
|
7
|
+
require_undici
|
|
8
|
+
} from "./chunk-54YZOP7P.js";
|
|
9
|
+
import {
|
|
10
|
+
getAllProviderBaseUrls
|
|
11
|
+
} from "./chunk-ZWFS7YCB.js";
|
|
12
|
+
import {
|
|
13
|
+
initializeTelemetry
|
|
14
|
+
} from "./chunk-N33JAGJ7.js";
|
|
15
|
+
import {
|
|
16
|
+
detectRuntime,
|
|
17
|
+
getOrCreateSharedDispatcher,
|
|
18
|
+
redactProxyCredentials
|
|
19
|
+
} from "./chunk-H6EMK6QK.js";
|
|
20
|
+
import {
|
|
21
|
+
createDebugLogger
|
|
22
|
+
} from "./chunk-22MNNNXE.js";
|
|
23
|
+
import {
|
|
24
|
+
recordStartupEvent
|
|
25
|
+
} from "./chunk-ITOGNELQ.js";
|
|
26
|
+
import {
|
|
27
|
+
init_esbuild_shims
|
|
28
|
+
} from "./chunk-A4BMJM77.js";
|
|
29
|
+
import {
|
|
30
|
+
__name,
|
|
31
|
+
__toESM
|
|
32
|
+
} from "./chunk-J2S4EL5Y.js";
|
|
33
|
+
|
|
34
|
+
// packages/cli/src/startup/startup-prefetch.ts
|
|
35
|
+
init_esbuild_shims();
|
|
36
|
+
|
|
37
|
+
// packages/cli/src/utils/apiPreconnect.ts
|
|
38
|
+
init_esbuild_shims();
|
|
39
|
+
var import_undici = __toESM(require_undici(), 1);
|
|
40
|
+
var debugLogger = createDebugLogger("PRECONNECT");
|
|
41
|
+
var preconnectFired = false;
|
|
42
|
+
var DEFAULT_BASE_URLS = {
|
|
43
|
+
openai: "https://api.openai.com",
|
|
44
|
+
"qwen-oauth": "https://coding.dashscope.aliyuncs.com",
|
|
45
|
+
anthropic: "https://api.anthropic.com",
|
|
46
|
+
dashscope: "https://dashscope.aliyuncs.com"
|
|
47
|
+
};
|
|
48
|
+
var ALL_DEFAULT_URLS = [
|
|
49
|
+
...Object.values(DEFAULT_BASE_URLS),
|
|
50
|
+
...getAllProviderBaseUrls()
|
|
51
|
+
];
|
|
52
|
+
function shouldSkipPreconnect() {
|
|
53
|
+
if (process.env["NODE_EXTRA_CA_CERTS"]) {
|
|
54
|
+
debugLogger.debug("Skipping preconnect: custom CA certificate configured");
|
|
55
|
+
return true;
|
|
56
|
+
}
|
|
57
|
+
return false;
|
|
58
|
+
}
|
|
59
|
+
__name(shouldSkipPreconnect, "shouldSkipPreconnect");
|
|
60
|
+
function isInSandboxMode() {
|
|
61
|
+
return process.env["SANDBOX"] !== void 0;
|
|
62
|
+
}
|
|
63
|
+
__name(isInSandboxMode, "isInSandboxMode");
|
|
64
|
+
function isDefaultBaseUrl(baseUrl) {
|
|
65
|
+
const normalizedInput = baseUrl.toLowerCase().replace(/^https?:\/\//, "").replace(/\/+$/, "");
|
|
66
|
+
return ALL_DEFAULT_URLS.some((defaultUrl) => {
|
|
67
|
+
const normalizedDefault = defaultUrl.toLowerCase().replace(/^https?:\/\//, "").replace(/\/+$/, "");
|
|
68
|
+
return normalizedInput === normalizedDefault || normalizedInput.startsWith(normalizedDefault + "/");
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
__name(isDefaultBaseUrl, "isDefaultBaseUrl");
|
|
72
|
+
function getPreconnectTargetUrl(authType, resolvedBaseUrl) {
|
|
73
|
+
if (resolvedBaseUrl && /^https?:\/\//i.test(resolvedBaseUrl)) {
|
|
74
|
+
if (isDefaultBaseUrl(resolvedBaseUrl)) {
|
|
75
|
+
return resolvedBaseUrl;
|
|
76
|
+
}
|
|
77
|
+
debugLogger.debug(
|
|
78
|
+
"Skipping preconnect: resolved baseUrl is not a default URL"
|
|
79
|
+
);
|
|
80
|
+
return void 0;
|
|
81
|
+
}
|
|
82
|
+
if (authType && DEFAULT_BASE_URLS[authType]) {
|
|
83
|
+
return DEFAULT_BASE_URLS[authType];
|
|
84
|
+
}
|
|
85
|
+
return void 0;
|
|
86
|
+
}
|
|
87
|
+
__name(getPreconnectTargetUrl, "getPreconnectTargetUrl");
|
|
88
|
+
function preconnectApi(authType, options = {}) {
|
|
89
|
+
if (preconnectFired) {
|
|
90
|
+
return;
|
|
91
|
+
}
|
|
92
|
+
if (process.env["QWEN_CODE_DISABLE_PRECONNECT"] === "1") {
|
|
93
|
+
debugLogger.debug("Preconnect disabled by environment variable");
|
|
94
|
+
preconnectFired = true;
|
|
95
|
+
return;
|
|
96
|
+
}
|
|
97
|
+
if (isInSandboxMode()) {
|
|
98
|
+
debugLogger.debug("Skipping preconnect: sandbox mode detected");
|
|
99
|
+
preconnectFired = true;
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
if (shouldSkipPreconnect()) {
|
|
103
|
+
preconnectFired = true;
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
if (detectRuntime() !== "node") {
|
|
107
|
+
debugLogger.debug("Skipping preconnect: unsupported runtime");
|
|
108
|
+
preconnectFired = true;
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
if (!options.proxy) {
|
|
112
|
+
debugLogger.debug("Skipping preconnect dispatcher: no proxy configured");
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
115
|
+
const proxy = options.proxy;
|
|
116
|
+
const targetUrl = getPreconnectTargetUrl(authType, options.resolvedBaseUrl);
|
|
117
|
+
if (!targetUrl) {
|
|
118
|
+
debugLogger.debug("No target URL for preconnect");
|
|
119
|
+
return;
|
|
120
|
+
}
|
|
121
|
+
preconnectFired = true;
|
|
122
|
+
debugLogger.debug(`Preconnecting to: ${targetUrl}`);
|
|
123
|
+
try {
|
|
124
|
+
const dispatcher = getOrCreateSharedDispatcher(proxy);
|
|
125
|
+
(0, import_undici.fetch)(targetUrl, {
|
|
126
|
+
method: "HEAD",
|
|
127
|
+
signal: AbortSignal.timeout(5e3),
|
|
128
|
+
headers: {
|
|
129
|
+
"User-Agent": "QwenCode-Preconnect/1.0"
|
|
130
|
+
},
|
|
131
|
+
dispatcher
|
|
132
|
+
}).then(() => {
|
|
133
|
+
debugLogger.debug("Preconnect completed");
|
|
134
|
+
}).catch((error) => {
|
|
135
|
+
const redactedError = redactProxyCredentials(String(error));
|
|
136
|
+
debugLogger.debug(`Preconnect failed (ignored): ${redactedError}`);
|
|
137
|
+
});
|
|
138
|
+
} catch (error) {
|
|
139
|
+
const redactedError = redactProxyCredentials(String(error));
|
|
140
|
+
debugLogger.debug(`Preconnect failed (ignored): ${redactedError}`);
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
__name(preconnectApi, "preconnectApi");
|
|
144
|
+
|
|
145
|
+
// packages/cli/src/startup/startup-prefetch.ts
|
|
146
|
+
var debugLogger2 = createDebugLogger("STARTUP_PREFETCH");
|
|
147
|
+
var DEFERRED_IDE_CONNECT_TIMEOUT_MS = 1e4;
|
|
148
|
+
var earlyStarted = /* @__PURE__ */ new WeakSet();
|
|
149
|
+
var postRenderStarted = /* @__PURE__ */ new WeakSet();
|
|
150
|
+
function withTimeout(promise, name, timeoutMs) {
|
|
151
|
+
let timeoutId;
|
|
152
|
+
let timedOut = false;
|
|
153
|
+
const timeout = new Promise((_, reject) => {
|
|
154
|
+
timeoutId = setTimeout(() => {
|
|
155
|
+
timedOut = true;
|
|
156
|
+
reject(new Error(`${name} timed out after ${timeoutMs}ms`));
|
|
157
|
+
}, timeoutMs);
|
|
158
|
+
timeoutId.unref?.();
|
|
159
|
+
});
|
|
160
|
+
promise.catch((err) => {
|
|
161
|
+
if (timedOut) {
|
|
162
|
+
debugLogger2.debug(`${name} underlying error after timeout:`, err);
|
|
163
|
+
}
|
|
164
|
+
});
|
|
165
|
+
return Promise.race([promise, timeout]).finally(() => {
|
|
166
|
+
if (timeoutId) {
|
|
167
|
+
clearTimeout(timeoutId);
|
|
168
|
+
}
|
|
169
|
+
});
|
|
170
|
+
}
|
|
171
|
+
__name(withTimeout, "withTimeout");
|
|
172
|
+
function runDeferredTask(name, task) {
|
|
173
|
+
recordStartupEvent("startup_prefetch_started", { name });
|
|
174
|
+
void Promise.resolve().then(task).then(() => {
|
|
175
|
+
recordStartupEvent("startup_prefetch_completed", { name });
|
|
176
|
+
}).catch((err) => {
|
|
177
|
+
recordStartupEvent("startup_prefetch_failed", { name });
|
|
178
|
+
debugLogger2.warn(`${name} failed:`, err);
|
|
179
|
+
});
|
|
180
|
+
}
|
|
181
|
+
__name(runDeferredTask, "runDeferredTask");
|
|
182
|
+
function startEarlyStartupPrefetches(config) {
|
|
183
|
+
if (earlyStarted.has(config)) return;
|
|
184
|
+
earlyStarted.add(config);
|
|
185
|
+
try {
|
|
186
|
+
const modelsConfig = config.getModelsConfig();
|
|
187
|
+
const authType = modelsConfig.getCurrentAuthType();
|
|
188
|
+
const resolvedBaseUrl = modelsConfig.getGenerationConfig().baseUrl;
|
|
189
|
+
const proxy = config.getProxy();
|
|
190
|
+
preconnectApi(authType, { resolvedBaseUrl, proxy });
|
|
191
|
+
} catch (error) {
|
|
192
|
+
debugLogger2.debug(
|
|
193
|
+
`Preconnect skipped due to error getting authType: ${error}`
|
|
194
|
+
);
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
__name(startEarlyStartupPrefetches, "startEarlyStartupPrefetches");
|
|
198
|
+
function startPostRenderPrefetches(config, settings, options = {}) {
|
|
199
|
+
if (postRenderStarted.has(config)) return;
|
|
200
|
+
postRenderStarted.add(config);
|
|
201
|
+
if (settings.merged.general?.enableAutoUpdate !== false) {
|
|
202
|
+
runDeferredTask("update_check", async () => {
|
|
203
|
+
const [{ checkForUpdates }, { handleAutoUpdate }] = await Promise.all([
|
|
204
|
+
import("./updateCheck-72BBAE5V.js"),
|
|
205
|
+
import("./handleAutoUpdate-XKXULZQX.js")
|
|
206
|
+
]);
|
|
207
|
+
const info = await checkForUpdates();
|
|
208
|
+
handleAutoUpdate(info, settings, config.getProjectRoot());
|
|
209
|
+
});
|
|
210
|
+
}
|
|
211
|
+
if (options.connectIde && config.getIdeMode()) {
|
|
212
|
+
runDeferredTask("ide_connect", async () => {
|
|
213
|
+
appEvents.emit("startup-ide-connection-status-changed" /* StartupIdeConnectionStatusChanged */, {
|
|
214
|
+
state: "connecting"
|
|
215
|
+
});
|
|
216
|
+
try {
|
|
217
|
+
const { connectIdeForStartup } = await import("./initializer-3NRWU5JV.js");
|
|
218
|
+
await withTimeout(
|
|
219
|
+
connectIdeForStartup(config),
|
|
220
|
+
"ide_connect",
|
|
221
|
+
DEFERRED_IDE_CONNECT_TIMEOUT_MS
|
|
222
|
+
);
|
|
223
|
+
appEvents.emit("startup-ide-connection-status-changed" /* StartupIdeConnectionStatusChanged */, {
|
|
224
|
+
state: "connected"
|
|
225
|
+
});
|
|
226
|
+
} catch (err) {
|
|
227
|
+
appEvents.emit("startup-ide-connection-status-changed" /* StartupIdeConnectionStatusChanged */, {
|
|
228
|
+
state: "failed",
|
|
229
|
+
message: err instanceof Error ? err.message : String(err)
|
|
230
|
+
});
|
|
231
|
+
throw err;
|
|
232
|
+
}
|
|
233
|
+
});
|
|
234
|
+
}
|
|
235
|
+
if (options.initializeTelemetry) {
|
|
236
|
+
runDeferredTask("telemetry_init", () => {
|
|
237
|
+
initializeTelemetry(config);
|
|
238
|
+
});
|
|
239
|
+
}
|
|
240
|
+
if (config.isInteractive()) {
|
|
241
|
+
runDeferredTask("background_housekeeping", async () => {
|
|
242
|
+
const { startBackgroundHousekeeping } = await import("./scheduler-35T3E2UQ.js");
|
|
243
|
+
startBackgroundHousekeeping(config, settings);
|
|
244
|
+
});
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
__name(startPostRenderPrefetches, "startPostRenderPrefetches");
|
|
248
|
+
|
|
249
|
+
export {
|
|
250
|
+
startEarlyStartupPrefetches,
|
|
251
|
+
startPostRenderPrefetches
|
|
252
|
+
};
|
|
253
|
+
/**
|
|
254
|
+
* @license
|
|
255
|
+
* Copyright 2026 Qwen Team
|
|
256
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
257
|
+
*/
|
|
258
|
+
/**
|
|
259
|
+
* @license
|
|
260
|
+
* Copyright 2026 Qwen Code
|
|
261
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
262
|
+
*/
|
|
@@ -4,14 +4,14 @@ import {
|
|
|
4
4
|
resolveModelConfig,
|
|
5
5
|
resolveProviderProtocol,
|
|
6
6
|
stripRuntimeSnapshotPrefix
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-ZWFS7YCB.js";
|
|
8
8
|
import {
|
|
9
9
|
external_exports
|
|
10
10
|
} from "./chunk-K5PGHDBN.js";
|
|
11
11
|
import {
|
|
12
12
|
AuthType,
|
|
13
13
|
MODEL_GENERATION_CONFIG_FIELDS
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-N33JAGJ7.js";
|
|
15
15
|
import {
|
|
16
16
|
REASONING_EFFORT_TIERS,
|
|
17
17
|
normalizeReasoningEffort
|