@qwen-code/qwen-code 0.21.7 → 0.21.8
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/README.md +2 -0
- package/bundled/qc-helper/docs/configuration/settings.md +43 -30
- package/bundled/qc-helper/docs/features/channels/dingtalk.md +40 -2
- package/bundled/qc-helper/docs/features/channels/feishu.md +13 -2
- package/bundled/qc-helper/docs/features/channels/github.md +13 -11
- package/bundled/qc-helper/docs/features/channels/gitlab.md +13 -11
- package/bundled/qc-helper/docs/features/channels/overview.md +49 -31
- package/bundled/qc-helper/docs/features/channels/plugins.md +2 -2
- package/bundled/qc-helper/docs/features/channels/qqbot.md +4 -2
- package/bundled/qc-helper/docs/features/channels/telegram.md +4 -2
- package/bundled/qc-helper/docs/features/channels/wecom.md +1 -1
- package/bundled/qc-helper/docs/features/code-review.md +4 -0
- package/bundled/qc-helper/docs/features/commands.md +1 -1
- package/bundled/qc-helper/docs/features/hooks.md +52 -0
- package/bundled/qc-helper/docs/integration-jetbrains.md +1 -0
- package/bundled/qc-helper/docs/qwen-serve.md +4 -1
- package/bundled/qc-helper/docs/reference/keyboard-shortcuts.md +50 -36
- package/bundled/review/SKILL.md +28 -5
- package/chunks/{MaxSizedBox-ANWZBPTS.js → MaxSizedBox-7PM6BGJ5.js} +26 -22
- package/chunks/{StandaloneSessionPicker-XKS3VU3A.js → StandaloneSessionPicker-3UQHM7GV.js} +44 -40
- package/chunks/{acp-startup-profiler-ORIQ2CCQ.js → acp-startup-profiler-B5BYAMYQ.js} +2 -2
- package/chunks/{acpAgent-KUAZ3GCZ.js → acpAgent-5UWLFV6V.js} +534 -262
- package/chunks/{agent-T6PTGX5R.js → agent-624T2BLO.js} +26 -22
- package/chunks/{agent-headless-PR7YCB7S.js → agent-headless-2EE5J2KX.js} +26 -22
- package/chunks/{artifact-tool-U4VOZIK5.js → artifact-tool-N652YE4L.js} +1 -1
- package/chunks/{askUserQuestion-XOBQLPFA.js → askUserQuestion-ONW74PKJ.js} +1 -1
- package/chunks/{bridge-NU6YEEHK.js → bridge-JENKGFFP.js} +29 -25
- package/chunks/{ca-NYKNH222.js → ca-ZLKAB4K3.js} +6 -0
- package/chunks/{channel-management-service-FSQ7SHYI.js → channel-management-service-DDWUPHMU.js} +19 -10
- package/chunks/{channel-settings-store-35VQVUVV.js → channel-settings-store-SA6JZSPH.js} +34 -30
- package/chunks/{channel-worker-group-JWQK224X.js → channel-worker-group-E67EN3RV.js} +5 -5
- package/chunks/{channel-worker-manager-77E3OXRQ.js → channel-worker-manager-SW4C45CF.js} +5 -5
- package/chunks/{channel-worker-supervisor-62YWUGP2.js → channel-worker-supervisor-5SRD24FG.js} +3 -3
- package/chunks/{chunk-CJXIIILK.js → chunk-2FRY5CRX.js} +1 -1
- package/chunks/{chunk-ZJ3VGYHK.js → chunk-2ILAOM2I.js} +34 -17
- package/chunks/{chunk-6XJMFJ4D.js → chunk-2M4K4KYS.js} +177 -120
- package/chunks/{chunk-CNIID3TV.js → chunk-2UUMVNYT.js} +1 -1
- package/chunks/{chunk-22NBYCPD.js → chunk-3P2LV43B.js} +1 -1
- package/chunks/{chunk-2U3WZGZG.js → chunk-3PY4LPJF.js} +19 -131
- package/chunks/{chunk-SPMY6CX6.js → chunk-3SE7J4DR.js} +3 -3
- package/chunks/{chunk-6UWFTUQL.js → chunk-3WNQOYHQ.js} +66 -22
- package/chunks/{chunk-KXSDEOFU.js → chunk-4ALIARFY.js} +1 -1
- package/chunks/{chunk-D3UEZIQH.js → chunk-4DU3NCHG.js} +48 -55
- package/chunks/{chunk-BGG4MBYD.js → chunk-4PYCZH2V.js} +4 -187
- package/chunks/{chunk-H2UQ2M5Z.js → chunk-4WU6NY7F.js} +96 -22
- package/chunks/{chunk-TLV2IMHR.js → chunk-5ZGR6RKJ.js} +3 -3
- package/chunks/{chunk-3K7FH2KQ.js → chunk-67N6HB5H.js} +1310 -171
- package/chunks/{chunk-EORNAQDT.js → chunk-6TR7CFXH.js} +1 -1
- package/chunks/{chunk-NG2R4N5O.js → chunk-6ZRFAKXK.js} +1 -1
- package/chunks/{chunk-P2AJ7FTI.js → chunk-757GB46F.js} +1 -1
- package/chunks/{chunk-72LNFGUY.js → chunk-77QVBFCU.js} +3 -3
- package/chunks/{chunk-OH2VKQXH.js → chunk-7DVT4LVV.js} +37 -30
- package/chunks/{chunk-KKJJB5X6.js → chunk-7VUERJHS.js} +1503 -815
- package/chunks/{chunk-VOARQPTA.js → chunk-B52AWKBB.js} +65 -21
- package/chunks/{chunk-Y4EWSQF7.js → chunk-BF224XHL.js} +2 -2
- package/chunks/{chunk-PJOBIWUG.js → chunk-BF52U4XJ.js} +1 -1
- package/chunks/{chunk-55LYDVPU.js → chunk-C5VWPTGT.js} +1 -1
- package/chunks/{chunk-W7U4ESW2.js → chunk-CG3WBKJK.js} +1 -1
- package/chunks/chunk-COBO5EBO.js +135 -0
- package/chunks/chunk-CPG6P4GG.js +82 -0
- package/chunks/{chunk-DIEFUBV6.js → chunk-DIWZNWZT.js} +205 -35
- package/chunks/{chunk-AE77C5ZU.js → chunk-DQSDACD2.js} +1 -1
- package/chunks/{chunk-P3LEG54R.js → chunk-DX5W5AON.js} +2 -2
- package/chunks/{chunk-EUQTXRKZ.js → chunk-E4ZBKMSF.js} +5 -5
- package/chunks/{chunk-FPM27XN4.js → chunk-EIVICVHM.js} +4 -4
- package/chunks/{chunk-YHEEE624.js → chunk-EN2TKTFH.js} +1 -1
- package/chunks/chunk-F6WFNA7U.js +22 -0
- package/chunks/{chunk-FZBZSYKU.js → chunk-FN6YXJOP.js} +1 -1
- package/chunks/{chunk-KR4ZSC7K.js → chunk-FWBXMANW.js} +3 -3
- package/chunks/{chunk-LA7YLSR6.js → chunk-FYAXKJK7.js} +327 -67
- package/chunks/{chunk-CSZEXZBE.js → chunk-GBDINRIL.js} +3 -3
- package/chunks/{chunk-SCI7K3GM.js → chunk-GOEVOFQI.js} +19 -10
- package/chunks/{chunk-LEMXGVEP.js → chunk-GQCEQPYQ.js} +3 -3
- package/chunks/{chunk-Y7E5LNLO.js → chunk-GXSNGY5M.js} +1027 -876
- package/chunks/{chunk-6XU3PH66.js → chunk-HA3SAB64.js} +22 -69
- package/chunks/{chunk-Y4NGLFGJ.js → chunk-HUWENAHO.js} +1 -1
- package/chunks/{chunk-3ULCB3NE.js → chunk-HV76SFIA.js} +1 -1
- package/chunks/{chunk-CB2464BK.js → chunk-HWX5HPUG.js} +14 -4
- package/chunks/{chunk-LZC3B5N2.js → chunk-IA7TGCN2.js} +2 -2
- package/chunks/{chunk-RERATVSK.js → chunk-IBYULW65.js} +6 -6
- package/chunks/{chunk-HYRDKNUY.js → chunk-IUQ52YJK.js} +1 -1
- package/chunks/{chunk-TDXGKHDN.js → chunk-IYES5WOT.js} +2 -2
- package/chunks/{chunk-RGSBTHSU.js → chunk-KAQCJO6Y.js} +131 -4
- package/chunks/{chunk-VWOVHOTT.js → chunk-KJZ26VBX.js} +1 -1
- package/chunks/{chunk-6GONZVLS.js → chunk-KKDVZLGL.js} +1 -1
- package/chunks/{chunk-MKVZE4ZJ.js → chunk-KTJFU7RT.js} +3 -2
- package/chunks/{chunk-R574ATRM.js → chunk-M2PNLYGY.js} +41 -0
- package/chunks/{chunk-6EOI4HOK.js → chunk-M3STHEMM.js} +12 -17
- package/chunks/chunk-NGYI5EF5.js +244 -0
- package/chunks/{chunk-ALGGS7UH.js → chunk-NPQ5ZKRP.js} +82 -1
- package/chunks/{chunk-HQB2KUAN.js → chunk-NPUXXRJI.js} +1 -1
- package/chunks/{chunk-QETYKPMG.js → chunk-NVRDQFCX.js} +1 -1
- package/chunks/{chunk-PQBHU2IA.js → chunk-OHKJVAKG.js} +10 -10
- package/chunks/{chunk-CYR3HI5X.js → chunk-OQTXYMKW.js} +2 -2
- package/chunks/{chunk-DBOFL3LQ.js → chunk-PG62DFWD.js} +10 -10
- package/chunks/{chunk-2VSTGY6M.js → chunk-PJRW65JO.js} +1 -1
- package/chunks/{chunk-33ACCIIY.js → chunk-PLFATELK.js} +1 -1
- package/chunks/{chunk-IC4Z6LX6.js → chunk-PYQADEFD.js} +5 -0
- package/chunks/{chunk-MAJS7AT4.js → chunk-QGHSP65Z.js} +2 -2
- package/chunks/{chunk-OHJLEW5J.js → chunk-QQWD7LZV.js} +4 -4
- package/chunks/{chunk-ZXU5UHMI.js → chunk-QXVSWG66.js} +2 -2
- package/chunks/{chunk-E33LOKRA.js → chunk-RPWVIXDB.js} +18 -1
- package/chunks/{chunk-TYKC75AX.js → chunk-S3Y3GBFD.js} +1 -1
- package/chunks/{chunk-7UFKAV7Y.js → chunk-S6HYI3MF.js} +2 -2
- package/chunks/chunk-SAH4BD2J.js +92 -0
- package/chunks/{chunk-OMKQH5C5.js → chunk-SNRT2TJJ.js} +6 -23
- package/chunks/chunk-SR7RZ4MS.js +202 -0
- package/chunks/{chunk-CXE7E23H.js → chunk-TE3ZAJE7.js} +45 -17
- package/chunks/{chunk-S7CV4KO6.js → chunk-TKSZJ5BV.js} +3 -3
- package/chunks/{chunk-3NB7TSE2.js → chunk-U5SLIG7E.js} +1 -1
- package/chunks/chunk-UA5H3DS2.js +203 -0
- package/chunks/{chunk-24ER7UV4.js → chunk-UFALT4LK.js} +1 -1
- package/chunks/{chunk-YJQCUTT2.js → chunk-VWMUDKLC.js} +3 -3
- package/chunks/{chunk-RMH5OWLD.js → chunk-VXZ5HAOV.js} +1 -1
- package/chunks/{chunk-BVWVWGLE.js → chunk-WAUGQKUU.js} +4 -64
- package/chunks/{chunk-SHZYHGQH.js → chunk-WG6542MA.js} +1 -1
- package/chunks/{chunk-5KH532V7.js → chunk-WV5J6Q6N.js} +1 -1
- package/chunks/{chunk-RNVQB725.js → chunk-XHD7CRP2.js} +2 -2
- package/chunks/{chunk-W4B7UBUS.js → chunk-XZKQT2B2.js} +5 -5
- package/chunks/{chunk-6HVUFDS2.js → chunk-Y4TETC74.js} +22 -13
- package/chunks/{chunk-RZHU3ILK.js → chunk-YEF7XEO2.js} +4 -4
- package/chunks/{chunk-RUL4S3K3.js → chunk-YHJFF7KH.js} +146 -45
- package/chunks/{chunk-23RZCH76.js → chunk-YOM7DEGB.js} +3 -3
- package/chunks/{chunk-OFI7IGST.js → chunk-ZCLLJARV.js} +9 -9
- package/chunks/{chunk-GSS34377.js → chunk-ZHA242R4.js} +2 -2
- package/chunks/{chunk-TRLYP7OF.js → chunk-ZPLALRXZ.js} +17 -9
- package/chunks/{chunk-WUC6ZFXO.js → chunk-ZWBUH5UP.js} +1 -1
- package/chunks/{computer-use-KEAPATUY.js → computer-use-ESQYJ3JY.js} +26 -22
- package/chunks/{config-utils-K7SCOWHD.js → config-utils-XQHBJP7G.js} +4 -4
- package/chunks/{contextCommand-ZJA6A5K5.js → contextCommand-CX3YF4ZE.js} +28 -24
- package/chunks/{core-runtime-QMJPWHCI.js → core-runtime-DIAU7JMG.js} +30 -26
- package/chunks/{create-sub-session-DJE6XICH.js → create-sub-session-HDPD6HOA.js} +26 -22
- package/chunks/{create-sub-session-E4PBYXV5.js → create-sub-session-QIDZUOPU.js} +1 -1
- package/chunks/{cron-create-GRBWYMIJ.js → cron-create-VONA5JYY.js} +1 -1
- package/chunks/{cron-delete-4CMKBR2M.js → cron-delete-5JXSP2MI.js} +1 -1
- package/chunks/{cron-list-W7K4ASOA.js → cron-list-KE4F2CIR.js} +1 -1
- package/chunks/{daemon-SCTQMM7Z.js → daemon-VZBGJUNL.js} +30 -0
- package/chunks/{daemon-status-provider-FSWDPE2G.js → daemon-status-provider-H6O4UQ4F.js} +33 -29
- package/chunks/{daemon-trust-policy-P5L5VFAY.js → daemon-trust-policy-BNUXG6MT.js} +33 -29
- package/chunks/{daemon-trust-policy-monitor-73JYN6ET.js → daemon-trust-policy-monitor-E4EQ7GF4.js} +33 -29
- package/chunks/{de-VL76CPLV.js → de-LIW4XVLN.js} +5 -0
- package/chunks/{deferred-core-runtime-BWRCCFTE.js → deferred-core-runtime-CBMSHPAU.js} +26 -22
- package/chunks/{display-image-O2XFPQTC.js → display-image-NQRSIBXM.js} +2 -2
- package/chunks/{dist-DPPHJAVL.js → dist-EEEQGCZA.js} +918 -142
- package/chunks/{dist-K4WWQBHS.js → dist-HIACTZEK.js} +55 -15
- package/chunks/{dist-3BMEUGTG.js → dist-IRL7WA5Z.js} +1 -1
- package/chunks/{dist-HVBMEYWK.js → dist-KVISB2O2.js} +1 -1
- package/chunks/{dist-KS4O2NKE.js → dist-MBF3I5MX.js} +14 -8
- package/chunks/{dist-SFQ34F4M.js → dist-MKX5OSFF.js} +5 -4
- package/chunks/{dist-7JGAAQSC.js → dist-RCH3I7SS.js} +2 -2
- package/chunks/{dist-C5U4LJKW.js → dist-TUSWNE2I.js} +5 -4
- package/chunks/{earlyInputCapture-L5ST23A6.js → earlyInputCapture-UIOP7OIN.js} +26 -22
- package/chunks/{edit-LHHRFNFK.js → edit-ITMZYFKA.js} +26 -22
- package/chunks/{en-IRJ2WN5T.js → en-SY5GTIGX.js} +6 -0
- package/chunks/{enter-worktree-6NXCRZPF.js → enter-worktree-S4PL5UV6.js} +26 -22
- package/chunks/{enterPlanMode-ZVQT4U7D.js → enterPlanMode-YV52NNJT.js} +26 -22
- package/chunks/{environment-GJ2HWJOS.js → environment-NGOWPRZV.js} +30 -26
- package/chunks/{errors-6RLH3XXC.js → errors-BU26DTDX.js} +28 -24
- package/chunks/{exit-worktree-I2YLUHHY.js → exit-worktree-XRM6LH5F.js} +26 -22
- package/chunks/{exitPlanMode-7CCWKO7I.js → exitPlanMode-ZLI5F7KR.js} +26 -22
- package/chunks/{fast-path-DVFD4HQD.js → fast-path-UJWORIED.js} +23 -3
- package/chunks/{fast-path-settings-WQJU2LAT.js → fast-path-settings-37WQD5B2.js} +6 -3
- package/chunks/{fr-GK3HQYVB.js → fr-RQFO7U4P.js} +5 -0
- package/chunks/{gemini-7FWGOYD4.js → gemini-ZSKNDUMU.js} +77 -65
- package/chunks/{geminiContentGenerator-V2WVLIXU.js → geminiContentGenerator-YGEXOEKD.js} +1 -1
- package/chunks/{glob-3N6GGI75.js → glob-7KZG44BR.js} +26 -22
- package/chunks/{goal-tools-APOW6UXL.js → goal-tools-PXWN5VK3.js} +4 -2
- package/chunks/{grep-V43ILZVX.js → grep-6ZFC7RJ5.js} +26 -22
- package/chunks/{handleAutoUpdate-A5WFVWIA.js → handleAutoUpdate-KSEL3TQS.js} +30 -26
- package/chunks/{i18n-PLVQ4FBZ.js → i18n-ZIUXBW5V.js} +27 -23
- package/chunks/{image-gen-7C6IK6DC.js → image-gen-AUIZJJNK.js} +7 -5
- package/chunks/{initializer-CVAIKZYL.js → initializer-7AHY3N6Q.js} +33 -29
- package/chunks/{installationInfo-J6QDHNTK.js → installationInfo-VGBXMYLY.js} +27 -23
- package/chunks/{ja-3FA46IKD.js → ja-KOZKHJHZ.js} +5 -0
- package/chunks/{list-ZZ4OUUWV.js → list-PSFKQHLB.js} +36 -32
- package/chunks/{list-agents-KFFIIS2G.js → list-agents-Z4WABFDZ.js} +1 -1
- package/chunks/{loadedSettingsAdapter-QRYRJSWL.js → loadedSettingsAdapter-FTMRCTOF.js} +33 -29
- package/chunks/{loggingContentGenerator-OJCO75HM.js → loggingContentGenerator-MZAN52UV.js} +7 -5
- package/chunks/{loop-wakeup-TLMJPMMP.js → loop-wakeup-UZ5RL5Y2.js} +2 -2
- package/chunks/{ls-UVVE2XGE.js → ls-TVHDGIES.js} +1 -1
- package/chunks/{lsp-QMEA2VLB.js → lsp-CVN6OQPI.js} +1 -1
- package/chunks/{managed-npm-update-PCOSCP2N.js → managed-npm-update-O4NHK45X.js} +27 -23
- package/chunks/{mcp-M3WKKWKY.js → mcp-6CFP2AYQ.js} +33 -29
- package/chunks/{monitor-GN24FH6C.js → monitor-DAKD6OU4.js} +26 -22
- package/chunks/{nonInteractiveCli-KPTU3VSQ.js → nonInteractiveCli-RC7VIUZL.js} +66 -60
- package/chunks/{notebook-edit-4YM65BBO.js → notebook-edit-474DPMRL.js} +34 -22
- package/chunks/{openaiContentGenerator-EDQT6GTV.js → openaiContentGenerator-2NFY2MWO.js} +19 -9
- package/chunks/{pidfile-JOIIRN2C.js → pidfile-KBFVDNQP.js} +26 -22
- package/chunks/{process-registry-2CHQBXH5.js → process-registry-PMJOA5CO.js} +15 -0
- package/chunks/{processUtils-5SV4MX3Q.js → processUtils-6GRYH4Y3.js} +2 -2
- package/chunks/{pt-3AOBKPIJ.js → pt-U6AOCTMF.js} +5 -0
- package/chunks/{qwenContentGenerator-ODRJSUGR.js → qwenContentGenerator-KAHU6IZY.js} +33 -28
- package/chunks/{qwenOAuth2-NESCMZ47.js → qwenOAuth2-RRQTCP4W.js} +7 -5
- package/chunks/{read-file-HPSODLPK.js → read-file-3M6WXDXP.js} +6 -4
- package/chunks/{read-mcp-resource-2TNSJTC3.js → read-mcp-resource-PZ4ZF6YL.js} +1 -1
- package/chunks/{record-artifact-RAON52FC.js → record-artifact-P4HFMS7X.js} +2 -2
- package/chunks/{resumeHistoryUtils-TXCOFFMQ.js → resumeHistoryUtils-D6TAY3HX.js} +30 -26
- package/chunks/{ripGrep-ZKQGTQAO.js → ripGrep-PLPENT3E.js} +26 -22
- package/chunks/{ru-VJRAMC4W.js → ru-CMX4UMYP.js} +5 -0
- package/chunks/{run-qwen-serve-ZPKPKECF.js → run-qwen-serve-ZAFIJKJC.js} +168 -54
- package/chunks/{runtime-2FLNNM36.js → runtime-ZED7CYOZ.js} +38 -34
- package/chunks/{scheduler-365PJHNR.js → scheduler-MD3AL2W5.js} +26 -22
- package/chunks/{send-message-ZM7MRUGP.js → send-message-CAMSLG2L.js} +4 -3
- package/chunks/{serve-QD2RNLKJ.js → serve-E3VUDRZN.js} +33 -29
- package/chunks/{server-XLJVLTYM.js → server-OWMEMAKR.js} +450 -231
- package/chunks/{session-3VTUHH4Q.js → session-HZ57QK7K.js} +158 -97
- package/chunks/{settings-KULVPCQC.js → settings-V7BR3RKP.js} +32 -28
- package/chunks/{shell-3SWW22MH.js → shell-23OMNMW6.js} +26 -22
- package/chunks/{skill-KDHWYS7W.js → skill-6HBDYZRS.js} +7 -5
- package/chunks/{skill-settings-NMY4JEJC.js → skill-settings-HWJLTU7M.js} +32 -28
- package/chunks/{spawnChannel-ZKS4Q5OU.js → spawnChannel-N6KKUW5B.js} +27 -23
- package/chunks/{standalone-update-7CXPGAQ4.js → standalone-update-QGIKHATD.js} +28 -24
- package/chunks/{startInteractiveUI-2QQLEKM6.js → startInteractiveUI-GX2CRL42.js} +365 -155
- package/chunks/{syntheticOutput-ZLCUTKO2.js → syntheticOutput-PEBJQYJV.js} +2 -2
- package/chunks/{task-create-CQP5UEA3.js → task-create-5NWCQSJF.js} +5 -4
- package/chunks/{task-list-XLEZOJXP.js → task-list-53265TRZ.js} +1 -1
- package/chunks/{task-stop-7ZQM5CFF.js → task-stop-FPCOIRYX.js} +1 -1
- package/chunks/{task-update-JA75U2SN.js → task-update-5HN577LS.js} +5 -4
- package/chunks/{team-create-2WTNGAOX.js → team-create-CFFKU7KL.js} +26 -22
- package/chunks/{team-delete-MHY3UZGY.js → team-delete-MMQB4OSC.js} +1 -1
- package/chunks/{team-plan-approval-LZTYLEG4.js → team-plan-approval-6EFOKR6A.js} +26 -22
- package/chunks/{terminal-image-renderer-R5HHAFJN.js → terminal-image-renderer-TLDNACQY.js} +28 -24
- package/chunks/{theme-manager-PAUCSJFF.js → theme-manager-5LJ3H7VO.js} +26 -22
- package/chunks/{todoWrite-UPVOHYGD.js → todoWrite-JGV6VLOX.js} +1 -1
- package/chunks/{tool-search-2BFCGLI6.js → tool-search-UJV3A24H.js} +9 -6
- package/chunks/{total-session-admission-MK4SINFK.js → total-session-admission-D63QYXGO.js} +29 -25
- package/chunks/{trustedFolders-TJ5S26N7.js → trustedFolders-KZCOB53W.js} +30 -24
- package/chunks/{update-relaunch-N7AYLARF.js → update-relaunch-IFILM3SA.js} +5 -5
- package/chunks/{updateCheck-QRZ3DVT5.js → updateCheck-YZ2CRCFC.js} +29 -25
- package/chunks/{useAutoAcceptIndicator-DBJ7Y5AF.js → useAutoAcceptIndicator-AXEVNA3Q.js} +35 -31
- package/chunks/{validateNonInterActiveAuth-6ZQWUDS3.js → validateNonInterActiveAuth-3WTOJFWA.js} +61 -57
- package/chunks/{version-AJQGQWXC.js → version-GXK7OHZY.js} +1 -1
- package/chunks/{web-fetch-QWJYRXFL.js → web-fetch-ILB4GAVR.js} +12 -8
- package/chunks/{web-search-2AOXJGHU.js → web-search-HKRPGPZZ.js} +8 -6
- package/chunks/{workflow-ERH3SJG2.js → workflow-FXIPRQQA.js} +750 -147
- package/chunks/{workspace-providers-status-HZ474RA4.js → workspace-providers-status-NYHC7HSR.js} +35 -31
- package/chunks/{workspace-registration-store-6EUP4JXG.js → workspace-registration-store-AKEB7OMW.js} +1 -1
- package/chunks/{workspace-registry-R4APRRNC.js → workspace-registry-CDAS5TVZ.js} +29 -25
- package/chunks/{workspace-service-HFIFDMU7.js → workspace-service-PAMUKMAV.js} +36 -32
- package/chunks/{workspace-skills-status-HAHEIHGK.js → workspace-skills-status-YQSHCCMS.js} +33 -29
- package/chunks/{workspace-trust-reconciler-65GTAGDK.js → workspace-trust-reconciler-RPTXOIY2.js} +36 -32
- package/chunks/{write-file-B34CDELV.js → write-file-CGS57TS4.js} +26 -22
- package/chunks/{zh-ARWDLDLR.js → zh-AGL2FVBI.js} +6 -0
- package/chunks/{zh-TW-Y4RGI3P7.js → zh-TW-KI66MHQY.js} +6 -0
- package/chunks/{zoom-image-HPRBZHSS.js → zoom-image-E7D72GYV.js} +6 -4
- package/cli.js +13 -13
- package/locales/ca.js +10 -0
- package/locales/de.js +9 -0
- package/locales/en.js +10 -0
- package/locales/fr.js +9 -0
- package/locales/ja.js +9 -0
- package/locales/pt.js +9 -0
- package/locales/ru.js +9 -0
- package/locales/zh-TW.js +10 -0
- package/locales/zh.js +10 -0
- package/package.json +3 -3
- package/web-shell/assets/{arc-Ip-FFDJ0.js → arc-DybZaz32.js} +1 -1
- package/web-shell/assets/{architectureDiagram-3BPJPVTR-CChqgwIb.js → architectureDiagram-3BPJPVTR-jN3qBd19.js} +1 -1
- package/web-shell/assets/{blockDiagram-GPEHLZMM-BHN-Tfss.js → blockDiagram-GPEHLZMM-Ct5DZPrj.js} +1 -1
- package/web-shell/assets/{c4Diagram-AAUBKEIU-BhyjzDjN.js → c4Diagram-AAUBKEIU-CUAFMlUG.js} +1 -1
- package/web-shell/assets/channel-BMwLrwLW.js +1 -0
- package/web-shell/assets/{chunk-2J33WTMH-BB9eyHrx.js → chunk-2J33WTMH-CuV8n90B.js} +1 -1
- package/web-shell/assets/{chunk-4BX2VUAB-BeV7ce_J.js → chunk-4BX2VUAB-BUzl_kls.js} +1 -1
- package/web-shell/assets/{chunk-55IACEB6-DO7kXDiV.js → chunk-55IACEB6-BnDBLX6A.js} +1 -1
- package/web-shell/assets/{chunk-727SXJPM-B27MPznD.js → chunk-727SXJPM-B83uTOjm.js} +1 -1
- package/web-shell/assets/{chunk-AQP2D5EJ-DHIjqjD_.js → chunk-AQP2D5EJ-DM3HLgpT.js} +1 -1
- package/web-shell/assets/{chunk-FMBD7UC4-DabMqyN2.js → chunk-FMBD7UC4-CSQ5hgyb.js} +1 -1
- package/web-shell/assets/{chunk-ND2GUHAM-Dw7Nnnxc.js → chunk-ND2GUHAM-BWOF4SxX.js} +1 -1
- package/web-shell/assets/{chunk-QZHKN3VN-DdaZew1Q.js → chunk-QZHKN3VN-BsOH9LMi.js} +1 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-BGDv98jY.js +1 -0
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-BGDv98jY.js +1 -0
- package/web-shell/assets/{cose-bilkent-S5V4N54A-CgBpCYH5.js → cose-bilkent-S5V4N54A-IENqH2iJ.js} +1 -1
- package/web-shell/assets/{dagre-BM42HDAG-BB4IU8G0.js → dagre-BM42HDAG--dyzDTGo.js} +1 -1
- package/web-shell/assets/{diagram-2AECGRRQ-BcUTHU37.js → diagram-2AECGRRQ-BE7Dcqof.js} +1 -1
- package/web-shell/assets/{diagram-5GNKFQAL-B6Lyihyv.js → diagram-5GNKFQAL-Cr8-5OTj.js} +1 -1
- package/web-shell/assets/{diagram-KO2AKTUF-CRIJOjpG.js → diagram-KO2AKTUF-Bzey3uAY.js} +1 -1
- package/web-shell/assets/{diagram-LMA3HP47-DdNiwWWT.js → diagram-LMA3HP47-sErl28Xb.js} +1 -1
- package/web-shell/assets/{diagram-OG6HWLK6-Dz4b32Do.js → diagram-OG6HWLK6-Dq30ATIo.js} +1 -1
- package/web-shell/assets/{erDiagram-TEJ5UH35-D-8NGw77.js → erDiagram-TEJ5UH35-BkCoEfVW.js} +1 -1
- package/web-shell/assets/{flowDiagram-I6XJVG4X-Dun26LyM.js → flowDiagram-I6XJVG4X-DHwO0rrI.js} +1 -1
- package/web-shell/assets/{ganttDiagram-6RSMTGT7-F10Hu1Gc.js → ganttDiagram-6RSMTGT7-s7vAPxWq.js} +1 -1
- package/web-shell/assets/{gitGraphDiagram-PVQCEYII-Bf8Ez6-D.js → gitGraphDiagram-PVQCEYII-CQxhwPOU.js} +1 -1
- package/web-shell/assets/index-Bckpjr-I.css +5 -0
- package/web-shell/assets/{index-BXqw-nGq.js → index-CF4wApWp.js} +1 -1
- package/web-shell/assets/index-DwEr9HEW.js +1768 -0
- package/web-shell/assets/{infoDiagram-5YYISTIA-DVgTMLvj.js → infoDiagram-5YYISTIA-BnFrD0bq.js} +1 -1
- package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-uT-KepvK.js → ishikawaDiagram-YF4QCWOH-Bf9zK5NK.js} +1 -1
- package/web-shell/assets/{journeyDiagram-JHISSGLW-Vg_XadQf.js → journeyDiagram-JHISSGLW-CyGAhsxi.js} +1 -1
- package/web-shell/assets/{kanban-definition-UN3LZRKU-Dyv1ESBE.js → kanban-definition-UN3LZRKU-CbsK5akB.js} +1 -1
- package/web-shell/assets/{linear-BMIepYX3.js → linear-cQsF4P8D.js} +1 -1
- package/web-shell/assets/{mermaid.core-zA8pJ9ag.js → mermaid.core-Z4HVqrKY.js} +5 -5
- package/web-shell/assets/{mindmap-definition-RKZ34NQL-BCW_BZ_5.js → mindmap-definition-RKZ34NQL-CYnrBo_f.js} +1 -1
- package/web-shell/assets/{pieDiagram-4H26LBE5-DseNEGp2.js → pieDiagram-4H26LBE5-CBzOfhrs.js} +1 -1
- package/web-shell/assets/{quadrantDiagram-W4KKPZXB-6Z7wr1Fi.js → quadrantDiagram-W4KKPZXB-D4LK1Ebn.js} +1 -1
- package/web-shell/assets/{requirementDiagram-4Y6WPE33-CVOlCRPf.js → requirementDiagram-4Y6WPE33-Bzti2Lcj.js} +1 -1
- package/web-shell/assets/{sankeyDiagram-5OEKKPKP-CGhgrUJZ.js → sankeyDiagram-5OEKKPKP-yTBw5Z2s.js} +1 -1
- package/web-shell/assets/{sequenceDiagram-3UESZ5HK-dlqmpLuQ.js → sequenceDiagram-3UESZ5HK-D07UVRiZ.js} +1 -1
- package/web-shell/assets/{stateDiagram-AJRCARHV-B9EW10Xb.js → stateDiagram-AJRCARHV-UE_lHsTn.js} +1 -1
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-DC6xgXjX.js +1 -0
- package/web-shell/assets/{timeline-definition-PNZ67QCA-BBRh0mgZ.js → timeline-definition-PNZ67QCA-DRvYdiTs.js} +1 -1
- package/web-shell/assets/{vennDiagram-CIIHVFJN-B8Gs-REP.js → vennDiagram-CIIHVFJN-CQLIXs0u.js} +1 -1
- package/web-shell/assets/{wardley-L42UT6IY-D_y80Ur7.js → wardley-L42UT6IY-JZz_Xqse.js} +1 -1
- package/web-shell/assets/{wardleyDiagram-YWT4CUSO-D-CNfHJ-.js → wardleyDiagram-YWT4CUSO--i7BiJwB.js} +1 -1
- package/web-shell/assets/{xychartDiagram-2RQKCTM6-DQ5CvELo.js → xychartDiagram-2RQKCTM6-Bkc-bW0S.js} +1 -1
- package/web-shell/index.html +2 -2
- package/chunks/chunk-6PEXNQTX.js +0 -68
- package/chunks/chunk-IUFV6FYU.js +0 -81
- package/web-shell/assets/channel-Cu8qd6OB.js +0 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-BI3KrXhq.js +0 -1
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-BI3KrXhq.js +0 -1
- package/web-shell/assets/index-QQlUCJGg.css +0 -5
- package/web-shell/assets/index-hcgjV7vS.js +0 -1768
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-CJTZJJ5X.js +0 -1
- package/chunks/{anthropicContentGenerator-DTMVEL5M.js → anthropicContentGenerator-SSFE2753.js} +9 -9
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
// Force strict mode and setup for ESM
|
|
2
|
+
"use strict";
|
|
3
|
+
import {
|
|
4
|
+
writeStderrLineSafe
|
|
5
|
+
} from "./chunk-KGJGEEVR.js";
|
|
6
|
+
import {
|
|
7
|
+
init_esbuild_shims
|
|
8
|
+
} from "./chunk-5O2XNYP6.js";
|
|
9
|
+
import {
|
|
10
|
+
__name
|
|
11
|
+
} from "./chunk-J2S4EL5Y.js";
|
|
12
|
+
|
|
13
|
+
// packages/cli/src/config/acp-channel-fallback.ts
|
|
14
|
+
init_esbuild_shims();
|
|
15
|
+
var QWEN_CODE_SERVE_ENV = "QWEN_CODE_SERVE";
|
|
16
|
+
var QWEN_CODE_DESKTOP_ENV = "QWEN_CODE_DESKTOP";
|
|
17
|
+
function resolveAcpChannelFallback(env = process.env) {
|
|
18
|
+
if (env[QWEN_CODE_DESKTOP_ENV]) {
|
|
19
|
+
return "desktop";
|
|
20
|
+
}
|
|
21
|
+
if (env[QWEN_CODE_SERVE_ENV]) {
|
|
22
|
+
return "daemon";
|
|
23
|
+
}
|
|
24
|
+
return "ACP";
|
|
25
|
+
}
|
|
26
|
+
__name(resolveAcpChannelFallback, "resolveAcpChannelFallback");
|
|
27
|
+
|
|
28
|
+
// packages/cli/src/config/shared-env-keys.ts
|
|
29
|
+
init_esbuild_shims();
|
|
30
|
+
var DEFAULT_EXCLUDED_ENV_VARS = ["DEBUG", "DEBUG_MODE"];
|
|
31
|
+
var ENV_CORRUPTED_PATH = "QWEN_CODE_SETTINGS_CORRUPTED_PATH";
|
|
32
|
+
var ENV_WAS_RECOVERED = "QWEN_CODE_SETTINGS_WAS_RECOVERED";
|
|
33
|
+
var PROJECT_ENV_HARDCODED_EXCLUSIONS = [
|
|
34
|
+
"QWEN_HOME",
|
|
35
|
+
"QWEN_RUNTIME_DIR",
|
|
36
|
+
"QWEN_CODE_MCP_APPROVALS_PATH",
|
|
37
|
+
"QWEN_CODE_TRUSTED_FOLDERS_PATH",
|
|
38
|
+
// Runtime attribution markers are stamped by trusted launchers. A project
|
|
39
|
+
// `.env` must not spoof client channel telemetry.
|
|
40
|
+
QWEN_CODE_SERVE_ENV,
|
|
41
|
+
QWEN_CODE_DESKTOP_ENV,
|
|
42
|
+
ENV_CORRUPTED_PATH,
|
|
43
|
+
ENV_WAS_RECOVERED,
|
|
44
|
+
// QWEN_TLS_INSECURE (and NODE_TLS_REJECT_UNAUTHORIZED, which it mirrors)
|
|
45
|
+
// disable TLS certificate verification for all outbound API connections. A
|
|
46
|
+
// project `.env` must never enable either — that would let an untrusted repo
|
|
47
|
+
// silently turn off MITM protection. Opt-in stays with the user via the
|
|
48
|
+
// `--insecure` flag, the shell environment, or a home `.env`. The initial
|
|
49
|
+
// `.env` load only consults this list, so both keys must be here (not just
|
|
50
|
+
// RELOAD_EXCLUDED_KEYS, which only applies on reload).
|
|
51
|
+
"QWEN_TLS_INSECURE",
|
|
52
|
+
"NODE_TLS_REJECT_UNAUTHORIZED",
|
|
53
|
+
// NODE_EXTRA_CA_CERTS reaches the same outcome by adding a TLS trust
|
|
54
|
+
// anchor instead of disabling verification.
|
|
55
|
+
"NODE_EXTRA_CA_CERTS",
|
|
56
|
+
// QWEN_CLI_ENTRY is the script path daemon-spawned session processes run.
|
|
57
|
+
// A project `.env` or settings.env fixing it turns
|
|
58
|
+
// `cd <untrusted repo> && qwen serve` into code execution as the daemon
|
|
59
|
+
// via an attacker-chosen ACP entrypoint, for every workspace's sessions.
|
|
60
|
+
"QWEN_CLI_ENTRY",
|
|
61
|
+
// DEV gates the daemon's inherited-loader-env scrub (run-qwen-serve.ts);
|
|
62
|
+
// only the dev harness (scripts/dev.js) stamps it into the launch env. A
|
|
63
|
+
// project file setting it would silently keep loader vars in the base env
|
|
64
|
+
// distributed to every workspace's session children — reopening the #8653
|
|
65
|
+
// vector for any repo whose .env happens to carry DEV=true.
|
|
66
|
+
"DEV"
|
|
67
|
+
];
|
|
68
|
+
var HARDCODED_PROJECT_ENV_EXCLUSIONS = new Set(
|
|
69
|
+
PROJECT_ENV_HARDCODED_EXCLUSIONS.map((key) => key.toLowerCase())
|
|
70
|
+
);
|
|
71
|
+
function isHardcodedProjectEnvExclusion(key) {
|
|
72
|
+
return HARDCODED_PROJECT_ENV_EXCLUSIONS.has(key.toLowerCase());
|
|
73
|
+
}
|
|
74
|
+
__name(isHardcodedProjectEnvExclusion, "isHardcodedProjectEnvExclusion");
|
|
75
|
+
var HOME_ENV_BOOTSTRAP_KEYS = [
|
|
76
|
+
"QWEN_HOME",
|
|
77
|
+
"QWEN_RUNTIME_DIR",
|
|
78
|
+
"QWEN_CODE_MCP_APPROVALS_PATH",
|
|
79
|
+
"QWEN_CODE_TRUSTED_FOLDERS_PATH"
|
|
80
|
+
];
|
|
81
|
+
var INHERITED_LOADER_ENV_KEYS = [
|
|
82
|
+
"NODE_OPTIONS",
|
|
83
|
+
// npm maps its `node-options` config onto npm_config_node_options in the
|
|
84
|
+
// environment, and `npm run` lifecycle scripts apply it like NODE_OPTIONS —
|
|
85
|
+
// the same hijack through an adjacent key. The config-file keys are the
|
|
86
|
+
// same hijack one level up: they point npm at an attacker-chosen .npmrc
|
|
87
|
+
// that can itself set node-options/script-shell/ignore-scripts, and `npm
|
|
88
|
+
// run` itself exports them into the script environment.
|
|
89
|
+
"npm_config_node_options",
|
|
90
|
+
"npm_config_userconfig",
|
|
91
|
+
"npm_config_globalconfig",
|
|
92
|
+
"npm_config_script_shell",
|
|
93
|
+
"npm_config_prefix",
|
|
94
|
+
"NODE_PATH",
|
|
95
|
+
"LD_PRELOAD",
|
|
96
|
+
"LD_AUDIT",
|
|
97
|
+
"DYLD_INSERT_LIBRARIES",
|
|
98
|
+
"BASH_ENV",
|
|
99
|
+
// zsh sources $ZDOTDIR/.zshenv on every invocation, including
|
|
100
|
+
// non-interactive `zsh -c` — the zsh analogue of BASH_ENV.
|
|
101
|
+
"ZDOTDIR"
|
|
102
|
+
// BASH_FUNC_* exported-function definitions are bash's other env-driven
|
|
103
|
+
// code-import channel (non-interactive `bash -c` still imports them);
|
|
104
|
+
// matched by prefix in isLoaderEnvKey, not listed here.
|
|
105
|
+
];
|
|
106
|
+
var canonicalLoaderKey = /* @__PURE__ */ __name((key) => key.toLowerCase().replace(/_/gu, "-"), "canonicalLoaderKey");
|
|
107
|
+
var LOADER_ENV_KEYS = new Set(
|
|
108
|
+
INHERITED_LOADER_ENV_KEYS.map(canonicalLoaderKey)
|
|
109
|
+
);
|
|
110
|
+
function isLoaderEnvKey(key) {
|
|
111
|
+
const canonical = canonicalLoaderKey(key);
|
|
112
|
+
return canonical.startsWith("bash-func-") || LOADER_ENV_KEYS.has(canonical);
|
|
113
|
+
}
|
|
114
|
+
__name(isLoaderEnvKey, "isLoaderEnvKey");
|
|
115
|
+
function scrubInheritedLoaderEnv(env) {
|
|
116
|
+
const removedKeys = [];
|
|
117
|
+
for (const key of Object.keys(env)) {
|
|
118
|
+
if (isLoaderEnvKey(key)) {
|
|
119
|
+
delete env[key];
|
|
120
|
+
removedKeys.push(key);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
return removedKeys;
|
|
124
|
+
}
|
|
125
|
+
__name(scrubInheritedLoaderEnv, "scrubInheritedLoaderEnv");
|
|
126
|
+
function scrubAndReportInheritedLoaderEnv(env, commandLabel, processLabel) {
|
|
127
|
+
const removedKeys = scrubInheritedLoaderEnv(env);
|
|
128
|
+
if (removedKeys.length > 0) {
|
|
129
|
+
writeStderrLineSafe(
|
|
130
|
+
`${commandLabel}: scrubbed inherited loader env vars from the ${processLabel} process; session subprocesses will not inherit them: ${removedKeys.join(", ")}`
|
|
131
|
+
);
|
|
132
|
+
}
|
|
133
|
+
return removedKeys;
|
|
134
|
+
}
|
|
135
|
+
__name(scrubAndReportInheritedLoaderEnv, "scrubAndReportInheritedLoaderEnv");
|
|
136
|
+
var reportedLoaderKeyRejections = /* @__PURE__ */ new Map();
|
|
137
|
+
var loaderKeyRejectionReporter;
|
|
138
|
+
function setLoaderKeyRejectionReporter(reporter) {
|
|
139
|
+
loaderKeyRejectionReporter = reporter;
|
|
140
|
+
}
|
|
141
|
+
__name(setLoaderKeyRejectionReporter, "setLoaderKeyRejectionReporter");
|
|
142
|
+
function reportRejectedLoaderKeys(source, candidateKeys) {
|
|
143
|
+
const rejectedKeys = candidateKeys.filter(isLoaderEnvKey);
|
|
144
|
+
const warnedKeys = reportedLoaderKeyRejections.get(source) ?? /* @__PURE__ */ new Set();
|
|
145
|
+
const freshKeys = rejectedKeys.filter((key) => !warnedKeys.has(key));
|
|
146
|
+
if (freshKeys.length === 0) return rejectedKeys;
|
|
147
|
+
for (const key of freshKeys) warnedKeys.add(key);
|
|
148
|
+
reportedLoaderKeyRejections.set(source, warnedKeys);
|
|
149
|
+
if (loaderKeyRejectionReporter) {
|
|
150
|
+
loaderKeyRejectionReporter(source, freshKeys);
|
|
151
|
+
} else {
|
|
152
|
+
writeStderrLineSafe(
|
|
153
|
+
`qwen: ${source} cannot set loader-affecting env vars; ignored: ` + freshKeys.join(", ")
|
|
154
|
+
);
|
|
155
|
+
}
|
|
156
|
+
return rejectedKeys;
|
|
157
|
+
}
|
|
158
|
+
__name(reportRejectedLoaderKeys, "reportRejectedLoaderKeys");
|
|
159
|
+
function resetLoaderKeyRejectionReportingForTesting() {
|
|
160
|
+
reportedLoaderKeyRejections.clear();
|
|
161
|
+
}
|
|
162
|
+
__name(resetLoaderKeyRejectionReportingForTesting, "resetLoaderKeyRejectionReportingForTesting");
|
|
163
|
+
|
|
164
|
+
// packages/cli/src/config/compile-cache.ts
|
|
165
|
+
init_esbuild_shims();
|
|
166
|
+
var PENDING_COMPILE_CACHE_ENV = "QWEN_CODE_PENDING_COMPILE_CACHE";
|
|
167
|
+
function publishPendingCompileCache(env = process.env) {
|
|
168
|
+
const pendingDirectory = env[PENDING_COMPILE_CACHE_ENV];
|
|
169
|
+
delete env[PENDING_COMPILE_CACHE_ENV];
|
|
170
|
+
if (pendingDirectory && !env["NODE_COMPILE_CACHE"] && env["NODE_DISABLE_COMPILE_CACHE"] !== "1") {
|
|
171
|
+
env["NODE_COMPILE_CACHE"] = pendingDirectory;
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
__name(publishPendingCompileCache, "publishPendingCompileCache");
|
|
175
|
+
|
|
176
|
+
export {
|
|
177
|
+
QWEN_CODE_SERVE_ENV,
|
|
178
|
+
QWEN_CODE_DESKTOP_ENV,
|
|
179
|
+
resolveAcpChannelFallback,
|
|
180
|
+
DEFAULT_EXCLUDED_ENV_VARS,
|
|
181
|
+
ENV_CORRUPTED_PATH,
|
|
182
|
+
ENV_WAS_RECOVERED,
|
|
183
|
+
PROJECT_ENV_HARDCODED_EXCLUSIONS,
|
|
184
|
+
isHardcodedProjectEnvExclusion,
|
|
185
|
+
HOME_ENV_BOOTSTRAP_KEYS,
|
|
186
|
+
isLoaderEnvKey,
|
|
187
|
+
scrubInheritedLoaderEnv,
|
|
188
|
+
scrubAndReportInheritedLoaderEnv,
|
|
189
|
+
setLoaderKeyRejectionReporter,
|
|
190
|
+
reportRejectedLoaderKeys,
|
|
191
|
+
resetLoaderKeyRejectionReportingForTesting,
|
|
192
|
+
publishPendingCompileCache
|
|
193
|
+
};
|
|
194
|
+
/**
|
|
195
|
+
* @license
|
|
196
|
+
* Copyright 2026 Qwen Team
|
|
197
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
198
|
+
*/
|
|
199
|
+
/**
|
|
200
|
+
* @license
|
|
201
|
+
* Copyright 2025 Qwen Team
|
|
202
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
203
|
+
*/
|
|
@@ -3,17 +3,17 @@
|
|
|
3
3
|
import {
|
|
4
4
|
getGitVersion,
|
|
5
5
|
getNpmVersion
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-3SE7J4DR.js";
|
|
7
7
|
import {
|
|
8
8
|
buildEnvStatusFromEnv,
|
|
9
9
|
snapshotProcessEnv
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-S3Y3GBFD.js";
|
|
11
11
|
import {
|
|
12
12
|
mapDomainErrorToErrorKind
|
|
13
13
|
} from "./chunk-NLREQJFK.js";
|
|
14
14
|
import {
|
|
15
15
|
canUseRipgrep
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-GXSNGY5M.js";
|
|
17
17
|
import {
|
|
18
18
|
init_esbuild_shims
|
|
19
19
|
} from "./chunk-5O2XNYP6.js";
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
// Force strict mode and setup for ESM
|
|
2
2
|
"use strict";
|
|
3
|
+
import {
|
|
4
|
+
getCurrentAgentId
|
|
5
|
+
} from "./chunk-CPG6P4GG.js";
|
|
3
6
|
import {
|
|
4
7
|
getTeammateContext,
|
|
5
8
|
isTeammate
|
|
6
9
|
} from "./chunk-S6LOFUVP.js";
|
|
7
|
-
import {
|
|
8
|
-
isInForkExecution
|
|
9
|
-
} from "./chunk-LZC3B5N2.js";
|
|
10
10
|
import {
|
|
11
11
|
ToolNames
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-PYQADEFD.js";
|
|
13
13
|
import {
|
|
14
14
|
init_esbuild_shims
|
|
15
15
|
} from "./chunk-5O2XNYP6.js";
|
|
@@ -29,57 +29,6 @@ var ApprovalMode = /* @__PURE__ */ ((ApprovalMode2) => {
|
|
|
29
29
|
})(ApprovalMode || {});
|
|
30
30
|
var APPROVAL_MODES = Object.values(ApprovalMode);
|
|
31
31
|
|
|
32
|
-
// packages/core/src/agents/runtime/agent-context.ts
|
|
33
|
-
init_esbuild_shims();
|
|
34
|
-
import { AsyncLocalStorage } from "node:async_hooks";
|
|
35
|
-
var storage = new AsyncLocalStorage();
|
|
36
|
-
function runWithAgentContext(agentId, fn, depthOverride) {
|
|
37
|
-
const current = storage.getStore() ?? {};
|
|
38
|
-
const depth = depthOverride ?? (current.depth ?? -1) + 1;
|
|
39
|
-
return storage.run({ ...current, agentId, depth }, fn);
|
|
40
|
-
}
|
|
41
|
-
__name(runWithAgentContext, "runWithAgentContext");
|
|
42
|
-
function runWithRuntimeContentGenerator(view, fn) {
|
|
43
|
-
const current = storage.getStore() ?? {};
|
|
44
|
-
return storage.run({ ...current, runtimeView: view }, fn);
|
|
45
|
-
}
|
|
46
|
-
__name(runWithRuntimeContentGenerator, "runWithRuntimeContentGenerator");
|
|
47
|
-
function getCurrentAgentId() {
|
|
48
|
-
return storage.getStore()?.agentId ?? null;
|
|
49
|
-
}
|
|
50
|
-
__name(getCurrentAgentId, "getCurrentAgentId");
|
|
51
|
-
function getCurrentAgentDepth() {
|
|
52
|
-
return storage.getStore()?.depth ?? 0;
|
|
53
|
-
}
|
|
54
|
-
__name(getCurrentAgentDepth, "getCurrentAgentDepth");
|
|
55
|
-
function getRuntimeContentGenerator() {
|
|
56
|
-
return storage.getStore()?.runtimeView;
|
|
57
|
-
}
|
|
58
|
-
__name(getRuntimeContentGenerator, "getRuntimeContentGenerator");
|
|
59
|
-
function runOutsideAgentContext(fn) {
|
|
60
|
-
return storage.exit(fn);
|
|
61
|
-
}
|
|
62
|
-
__name(runOutsideAgentContext, "runOutsideAgentContext");
|
|
63
|
-
function isTopLevelSession() {
|
|
64
|
-
return getCurrentAgentId() === null;
|
|
65
|
-
}
|
|
66
|
-
__name(isTopLevelSession, "isTopLevelSession");
|
|
67
|
-
function childLaunchDepth() {
|
|
68
|
-
return getCurrentAgentId() !== null ? getCurrentAgentDepth() + 1 : 0;
|
|
69
|
-
}
|
|
70
|
-
__name(childLaunchDepth, "childLaunchDepth");
|
|
71
|
-
function canSpawnNestedAgent(maxDepth) {
|
|
72
|
-
return childLaunchDepth() + 1 <= maxDepth;
|
|
73
|
-
}
|
|
74
|
-
__name(canSpawnNestedAgent, "canSpawnNestedAgent");
|
|
75
|
-
function spawnBlockReason(maxDepth) {
|
|
76
|
-
if (!canSpawnNestedAgent(maxDepth)) return "depth";
|
|
77
|
-
if (isTeammate()) return "teammate";
|
|
78
|
-
if (isInForkExecution()) return "fork";
|
|
79
|
-
return null;
|
|
80
|
-
}
|
|
81
|
-
__name(spawnBlockReason, "spawnBlockReason");
|
|
82
|
-
|
|
83
32
|
// packages/core/src/agents/runtime/subagent-plan-tool-policy.ts
|
|
84
33
|
init_esbuild_shims();
|
|
85
34
|
var SUBAGENT_PLAN_LIFECYCLE_TOOLS = /* @__PURE__ */ new Set([
|
|
@@ -188,15 +137,6 @@ __name(buildSubagentPlanToolBlockedResult, "buildSubagentPlanToolBlockedResult")
|
|
|
188
137
|
|
|
189
138
|
export {
|
|
190
139
|
APPROVAL_MODES,
|
|
191
|
-
runWithAgentContext,
|
|
192
|
-
runWithRuntimeContentGenerator,
|
|
193
|
-
getCurrentAgentId,
|
|
194
|
-
getCurrentAgentDepth,
|
|
195
|
-
getRuntimeContentGenerator,
|
|
196
|
-
runOutsideAgentContext,
|
|
197
|
-
isTopLevelSession,
|
|
198
|
-
childLaunchDepth,
|
|
199
|
-
spawnBlockReason,
|
|
200
140
|
SUBAGENT_PLAN_LIFECYCLE_TOOLS,
|
|
201
141
|
isSubagentLikeExecutionContext,
|
|
202
142
|
isPlanRequiredTeammateContext,
|
|
@@ -5,12 +5,12 @@ import {
|
|
|
5
5
|
} from "./chunk-4NFY2S7N.js";
|
|
6
6
|
import {
|
|
7
7
|
t
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-PG62DFWD.js";
|
|
9
9
|
import {
|
|
10
10
|
fetchGitDiff,
|
|
11
11
|
findProviderByCredentials,
|
|
12
12
|
resolveMetadataKey
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-GXSNGY5M.js";
|
|
14
14
|
import {
|
|
15
15
|
init_esbuild_shims
|
|
16
16
|
} from "./chunk-5O2XNYP6.js";
|
|
@@ -7,22 +7,22 @@ import {
|
|
|
7
7
|
parseAcpBaseModelId,
|
|
8
8
|
resolveCliGenerationConfig,
|
|
9
9
|
sanitizeProviderBaseUrl
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-GBDINRIL.js";
|
|
11
11
|
import {
|
|
12
12
|
snapshotProcessEnv
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-S3Y3GBFD.js";
|
|
14
14
|
import {
|
|
15
15
|
STATUS_SCHEMA_VERSION
|
|
16
16
|
} from "./chunk-NLREQJFK.js";
|
|
17
17
|
import {
|
|
18
18
|
loadSettings
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-OHKJVAKG.js";
|
|
20
20
|
import {
|
|
21
21
|
ModelsConfig
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-GXSNGY5M.js";
|
|
23
23
|
import {
|
|
24
24
|
APPROVAL_MODES
|
|
25
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-WAUGQKUU.js";
|
|
26
26
|
import {
|
|
27
27
|
tokenLimit
|
|
28
28
|
} from "./chunk-ZBVS26BY.js";
|
|
@@ -2,16 +2,16 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
loadSettings
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-OHKJVAKG.js";
|
|
6
6
|
import {
|
|
7
7
|
getCurrentLanguage
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-PG62DFWD.js";
|
|
9
9
|
import {
|
|
10
10
|
isWorkspaceTrusted
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-HA3SAB64.js";
|
|
12
12
|
import {
|
|
13
13
|
require_strip_json_comments
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-NPQ5ZKRP.js";
|
|
15
15
|
import {
|
|
16
16
|
Client,
|
|
17
17
|
Config,
|
|
@@ -21,8 +21,9 @@ import {
|
|
|
21
21
|
createTransport,
|
|
22
22
|
hashMcpServerConfig,
|
|
23
23
|
isGatedMcpScope,
|
|
24
|
-
normalizeClaudeMcpServer
|
|
25
|
-
|
|
24
|
+
normalizeClaudeMcpServer,
|
|
25
|
+
runWithTimeout
|
|
26
|
+
} from "./chunk-GXSNGY5M.js";
|
|
26
27
|
import {
|
|
27
28
|
atomicWriteFile
|
|
28
29
|
} from "./chunk-FOGU3LJX.js";
|
|
@@ -556,6 +557,7 @@ var COLOR_GREEN = "\x1B[32m";
|
|
|
556
557
|
var COLOR_YELLOW = "\x1B[33m";
|
|
557
558
|
var COLOR_RED = "\x1B[31m";
|
|
558
559
|
var RESET_COLOR = "\x1B[0m";
|
|
560
|
+
var MCP_CONNECT_TIMEOUT_MS = 5e3;
|
|
559
561
|
async function getMcpServersFromConfig() {
|
|
560
562
|
const settings = loadSettings();
|
|
561
563
|
const extensionManager = new ExtensionManager({
|
|
@@ -597,16 +599,23 @@ async function testMCPConnection(serverName, config) {
|
|
|
597
599
|
transport = await createTransport(serverName, config, false);
|
|
598
600
|
} catch (_error) {
|
|
599
601
|
await client.close();
|
|
600
|
-
return "disconnected" /* DISCONNECTED
|
|
602
|
+
return { status: "disconnected" /* DISCONNECTED */, timedOut: false };
|
|
601
603
|
}
|
|
602
604
|
try {
|
|
603
|
-
await
|
|
605
|
+
await runWithTimeout(
|
|
606
|
+
client.connect(transport, { timeout: MCP_CONNECT_TIMEOUT_MS }),
|
|
607
|
+
MCP_CONNECT_TIMEOUT_MS,
|
|
608
|
+
`MCP connection for ${serverName}`
|
|
609
|
+
);
|
|
604
610
|
await client.ping();
|
|
605
611
|
await client.close();
|
|
606
|
-
return "connected" /* CONNECTED
|
|
607
|
-
} catch (
|
|
612
|
+
return { status: "connected" /* CONNECTED */, timedOut: false };
|
|
613
|
+
} catch (error) {
|
|
608
614
|
await transport.close();
|
|
609
|
-
return
|
|
615
|
+
return {
|
|
616
|
+
status: "disconnected" /* DISCONNECTED */,
|
|
617
|
+
timedOut: error instanceof Error && error.message.startsWith("Timed out after ")
|
|
618
|
+
};
|
|
610
619
|
}
|
|
611
620
|
}
|
|
612
621
|
__name(testMCPConnection, "testMCPConnection");
|
|
@@ -645,7 +654,7 @@ async function listMcpServers() {
|
|
|
645
654
|
continue;
|
|
646
655
|
}
|
|
647
656
|
}
|
|
648
|
-
const status = await getServerStatus(serverName, server);
|
|
657
|
+
const { status, timedOut } = await getServerStatus(serverName, server);
|
|
649
658
|
let statusIndicator = "";
|
|
650
659
|
let statusText = "";
|
|
651
660
|
switch (status) {
|
|
@@ -660,7 +669,7 @@ async function listMcpServers() {
|
|
|
660
669
|
case "disconnected" /* DISCONNECTED */:
|
|
661
670
|
default:
|
|
662
671
|
statusIndicator = COLOR_RED + "\u2717" + RESET_COLOR;
|
|
663
|
-
statusText = "Disconnected";
|
|
672
|
+
statusText = timedOut ? `Disconnected (timed out after ${MCP_CONNECT_TIMEOUT_MS}ms)` : "Disconnected";
|
|
664
673
|
break;
|
|
665
674
|
}
|
|
666
675
|
writeStdoutLine(`${statusIndicator} ${serverInfo} - ${statusText}`);
|
|
@@ -2,18 +2,18 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
appEvents
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-7VUERJHS.js";
|
|
6
6
|
import {
|
|
7
7
|
assembleMcpServers,
|
|
8
8
|
getPendingGatedMcpServers,
|
|
9
9
|
getPromptableMcpServers
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-Y4TETC74.js";
|
|
11
11
|
import {
|
|
12
12
|
getMCPServerStatus
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-3PY4LPJF.js";
|
|
14
14
|
import {
|
|
15
15
|
require_fast_deep_equal
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-PYQADEFD.js";
|
|
17
17
|
import {
|
|
18
18
|
createDebugLogger
|
|
19
19
|
} from "./chunk-OIVKILPI.js";
|