@qwen-code/qwen-code 0.21.10 → 0.21.11-nightly.20260814.45c2e73080
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/coordinate/SKILL.md +52 -0
- package/bundled/qc-helper/docs/configuration/model-providers.md +10 -8
- package/bundled/qc-helper/docs/configuration/settings.md +10 -0
- package/bundled/qc-helper/docs/extension/_meta.ts +1 -0
- package/bundled/qc-helper/docs/extension/agent-plugins.md +50 -0
- package/bundled/qc-helper/docs/extension/extension-releasing.md +3 -3
- package/bundled/qc-helper/docs/extension/introduction.md +17 -3
- package/bundled/qc-helper/docs/features/_meta.ts +1 -0
- package/bundled/qc-helper/docs/features/arena.md +4 -3
- package/bundled/qc-helper/docs/features/code-review.md +1 -1
- package/bundled/qc-helper/docs/features/commands.md +7 -6
- package/bundled/qc-helper/docs/features/dual-output.md +5 -0
- package/bundled/qc-helper/docs/features/headless.md +8 -0
- package/bundled/qc-helper/docs/features/multi-agent-coordination.md +30 -0
- package/bundled/qc-helper/docs/qwen-serve.md +40 -40
- package/bundled/review/SKILL.md +45 -23
- package/chunks/{MaxSizedBox-FKXYULMW.js → MaxSizedBox-P4Z76535.js} +45 -44
- package/chunks/{StandaloneSessionPicker-OQS3M7AY.js → StandaloneSessionPicker-TRWDBCJG.js} +65 -64
- package/chunks/{acp-startup-profiler-VNTFWYAC.js → acp-startup-profiler-TVI2OVUN.js} +2 -2
- package/chunks/{acpAgent-AGS6HLQQ.js → acpAgent-MSZHQSZ7.js} +1645 -579
- package/chunks/{agent-4NCVO27U.js → agent-TMTEYQGK.js} +42 -41
- package/chunks/agent-headless-54WWND2M.js +87 -0
- package/chunks/{anthropicContentGenerator-D3Y4RFT4.js → anthropicContentGenerator-7ZK7U65G.js} +8 -8
- package/chunks/{artifact-tool-N652YE4L.js → artifact-tool-7HVSSXYZ.js} +2 -2
- package/chunks/{askUserQuestion-ONW74PKJ.js → askUserQuestion-IQCA2SOX.js} +2 -2
- package/chunks/{bridge-FHINXZMN.js → bridge-CI2NKV64.js} +49 -48
- package/chunks/{ca-ZLKAB4K3.js → ca-4CQ6MYNQ.js} +2 -1
- package/chunks/{channel-management-service-PHELKOW2.js → channel-management-service-LNEYNMDX.js} +6 -6
- package/chunks/channel-settings-store-QU4WFXHO.js +102 -0
- package/chunks/{channel-worker-group-WQP4RCDO.js → channel-worker-group-Q5WQVOMZ.js} +8 -7
- package/chunks/{channel-worker-manager-MRDFAKIM.js → channel-worker-manager-Z3JLH72P.js} +8 -7
- package/chunks/{channel-worker-supervisor-IVSDIMI4.js → channel-worker-supervisor-CG5HHT7K.js} +6 -5
- package/chunks/{chunk-A7XMDZRI.js → chunk-2AG524A4.js} +5 -5
- package/chunks/{chunk-GM463R2B.js → chunk-2ASWIM4A.js} +1 -1
- package/chunks/{chunk-DP3IHZGG.js → chunk-2AUM35J5.js} +59 -7
- package/chunks/{chunk-TZEZYNYD.js → chunk-2N6CV4PW.js} +1 -1
- package/chunks/{chunk-BSI645OU.js → chunk-3LHSUFPE.js} +3 -3
- package/chunks/{chunk-DCZEPFB4.js → chunk-3XLWKV4S.js} +3 -3
- package/chunks/{chunk-YWPSGJFI.js → chunk-4IBNVBGJ.js} +2 -2
- package/chunks/{chunk-ZRBMO3C7.js → chunk-4IWFPTAH.js} +1 -1
- package/chunks/{chunk-B2GJNDTV.js → chunk-4JS2QK7P.js} +1 -1
- package/chunks/{chunk-5MZCSWI4.js → chunk-4NV6L4GZ.js} +1184 -1450
- package/chunks/{chunk-Y3OVRWRY.js → chunk-4QC6SUVN.js} +1 -1
- package/chunks/{chunk-AOHJKPKL.js → chunk-5KZNWF2M.js} +1 -1
- package/chunks/{chunk-UMD7WQTR.js → chunk-5XNR53C7.js} +10 -8
- package/chunks/{chunk-IIJEYBNH.js → chunk-66PLFJQ7.js} +197 -60
- package/chunks/{chunk-SEZ556DZ.js → chunk-67F2BEYW.js} +1 -1
- package/chunks/{chunk-7GTMV7UE.js → chunk-6KXHEN6M.js} +8700 -2449
- package/chunks/{chunk-FVKHVJZQ.js → chunk-6OJDN5ZT.js} +1 -1
- package/chunks/{chunk-CKASRHZI.js → chunk-6SU6OW5Z.js} +1 -1
- package/chunks/{chunk-NEOXOWYH.js → chunk-6YUEAYJ5.js} +7 -7
- package/chunks/{chunk-QGNOFE5E.js → chunk-766PXUQ3.js} +1 -1
- package/chunks/{chunk-UVX4Y6IN.js → chunk-7JL5YBSA.js} +1 -1
- package/chunks/{chunk-2PLNY5TN.js → chunk-7MAHENBD.js} +4 -4
- package/chunks/{chunk-L2AFWWJE.js → chunk-7UNST76G.js} +105 -24
- package/chunks/{chunk-HUWENAHO.js → chunk-7WUMS2UA.js} +1 -1
- package/chunks/{chunk-MVUQRLOH.js → chunk-A4BAHMJF.js} +3 -3
- package/chunks/{chunk-7MH4J33A.js → chunk-A6GQUQ7I.js} +2 -2
- package/chunks/{chunk-GNPNYXJB.js → chunk-AAZWJAPQ.js} +2 -2
- package/chunks/{chunk-DX3RGJMS.js → chunk-ADJDLEVO.js} +72 -13
- package/chunks/{chunk-IWTMYQ32.js → chunk-AN3LCBS7.js} +9 -8
- package/chunks/{chunk-LHEC5V6G.js → chunk-AXEL55JW.js} +2 -2
- package/chunks/{chunk-QUI267ZP.js → chunk-B66LYK4B.js} +492 -63
- package/chunks/{chunk-VNNWAZSI.js → chunk-BCGJZGFI.js} +3 -3
- package/chunks/{chunk-F6WDTQ3M.js → chunk-BRYHERQ6.js} +5 -5
- package/chunks/{chunk-6ZRFAKXK.js → chunk-C2DR57L6.js} +1 -1
- package/chunks/{chunk-26CXSA6V.js → chunk-CAOT4DYN.js} +2 -2
- package/chunks/{chunk-H6XPXXMH.js → chunk-CQ35AJ4Z.js} +252 -254
- package/chunks/{chunk-F24A2JBM.js → chunk-CUXI3S6E.js} +914 -175
- package/chunks/{chunk-AEL7KN2O.js → chunk-DANYMI4U.js} +2 -2
- package/chunks/{chunk-AAE6SR4Q.js → chunk-DX7V233D.js} +1 -1
- package/chunks/{chunk-PJRW65JO.js → chunk-E74YSVIN.js} +1 -1
- package/chunks/{chunk-OWMAZHIX.js → chunk-EGB2PIYM.js} +1 -1
- package/chunks/{chunk-TRRF5BSP.js → chunk-F4BUGC4Y.js} +1 -1
- package/chunks/{chunk-4MKXUHXY.js → chunk-FGQY4VOZ.js} +5 -5
- package/chunks/{chunk-ZBVS26BY.js → chunk-FPGTNKCP.js} +7 -5
- package/chunks/{chunk-SR7RZ4MS.js → chunk-FTGU6G45.js} +2 -2
- package/chunks/{chunk-IBUGFUXC.js → chunk-G2ZEKO4T.js} +12 -12
- package/chunks/{chunk-NDU63YLI.js → chunk-GN2SCYBA.js} +4 -4
- package/chunks/{chunk-NV3F44FL.js → chunk-GNRFC5UM.js} +2 -2
- package/chunks/{chunk-KKBPOU75.js → chunk-H6BFLALJ.js} +1 -1
- package/chunks/chunk-HHJLM3WQ.js +41 -0
- package/chunks/{chunk-LLCWZQCU.js → chunk-HM7TLULV.js} +3 -3
- package/chunks/{chunk-ECWR5LQR.js → chunk-I76FLAP7.js} +3 -3
- package/chunks/{chunk-Q3AL4JQ3.js → chunk-IAE7LYSB.js} +2 -2
- package/chunks/{chunk-DREZZAZM.js → chunk-IDNVCWXZ.js} +13 -5
- package/chunks/{chunk-YF5MALI4.js → chunk-IPMHLZPY.js} +20 -16
- package/chunks/{chunk-UDXSXLER.js → chunk-IW6RQPQB.js} +14 -4
- package/chunks/{chunk-UBX6NL47.js → chunk-JLT5HCGQ.js} +47 -3
- package/chunks/{chunk-COBO5EBO.js → chunk-JRTJEGSP.js} +1 -1
- package/chunks/{chunk-PBRVUF5B.js → chunk-JW5UEE3V.js} +1 -1
- package/chunks/{chunk-W4RQUHY3.js → chunk-K5IDV3PC.js} +184 -22
- package/chunks/{chunk-O3EU6GMH.js → chunk-KACBT7N7.js} +27 -4
- package/chunks/{chunk-MFDYOYZZ.js → chunk-KCGEAL2C.js} +25 -2
- package/chunks/{chunk-EI3HZX6C.js → chunk-KK3FEHPJ.js} +1 -1
- package/chunks/{chunk-OJUQF2PL.js → chunk-KRRRRU3X.js} +5 -5
- package/chunks/{chunk-J6SZID63.js → chunk-KTWUFHS4.js} +2 -2
- package/chunks/{chunk-E2FPSSKP.js → chunk-KZKEVWJW.js} +57 -13
- package/chunks/{chunk-ZJ4W6SUY.js → chunk-L6PE52MF.js} +3 -3
- package/chunks/{chunk-YGT2AUJ7.js → chunk-LAKFZU36.js} +39 -19
- package/chunks/{chunk-47PEPJO7.js → chunk-LKN5SEHD.js} +3 -3
- package/chunks/{chunk-OQTXYMKW.js → chunk-LSMCI42W.js} +3 -3
- package/chunks/{chunk-ABVRJU3D.js → chunk-LY2SB7GC.js} +7 -7
- package/chunks/{chunk-D27I6YJT.js → chunk-M53FFYQJ.js} +27 -18
- package/chunks/{chunk-YTFDX4PR.js → chunk-M6NDLY2T.js} +1 -1
- package/chunks/{chunk-3P2LV43B.js → chunk-MMEDZKWK.js} +3 -3
- package/chunks/{chunk-VFMASYQA.js → chunk-MS7GNABG.js} +3 -0
- package/chunks/{chunk-6LP743KE.js → chunk-MUTFMB5B.js} +78 -112
- package/chunks/{chunk-URK542T4.js → chunk-NF5J2WFA.js} +15 -2
- package/chunks/{chunk-VSFKIRRW.js → chunk-NH6U7L42.js} +4 -4
- package/chunks/{chunk-DA4HRSBW.js → chunk-NHZF4VCD.js} +1 -1
- package/chunks/{chunk-QG3FFJYU.js → chunk-NJE5NH5B.js} +1 -1
- package/chunks/{chunk-2UUMVNYT.js → chunk-NM33GGOM.js} +3 -3
- package/chunks/{chunk-FOGU3LJX.js → chunk-NW7SPXVG.js} +1 -1
- package/chunks/{chunk-EUNWC2VS.js → chunk-O6SLWH4X.js} +2 -2
- package/chunks/{chunk-EBZ6BJTF.js → chunk-OEVVUUYW.js} +1 -1
- package/chunks/chunk-OMVHZ7E6.js +1280 -0
- package/chunks/{chunk-KZ22NXBY.js → chunk-OT72MGHE.js} +4 -4
- package/chunks/{chunk-DZUO626D.js → chunk-OUCCIS3E.js} +3 -3
- package/chunks/{chunk-OONWZLFK.js → chunk-OYLYERMH.js} +4 -4
- package/chunks/{chunk-P3BJLFSZ.js → chunk-OYQM5XZ4.js} +3 -3
- package/chunks/{chunk-NRLFZWCT.js → chunk-PNU3TILU.js} +3 -3
- package/chunks/{chunk-M6HMMKVG.js → chunk-PSTHNTHF.js} +1 -1
- package/chunks/{chunk-4PYCZH2V.js → chunk-QEWAHAW2.js} +3 -3
- package/chunks/{chunk-QJMOAMXT.js → chunk-RG2S3GYC.js} +8 -8
- package/chunks/{chunk-CTJLZLB5.js → chunk-RQS2BGPI.js} +1 -1
- package/chunks/{chunk-Y4R47ZUH.js → chunk-RTBUTKAX.js} +7 -7
- package/chunks/{chunk-NV65ZUVM.js → chunk-RZZV6GQN.js} +1 -1
- package/chunks/{chunk-UEOKWYGY.js → chunk-SESSAEWC.js} +11 -11
- package/chunks/{chunk-CPG6P4GG.js → chunk-SKRHR6N2.js} +1 -1
- package/chunks/{chunk-WAUGQKUU.js → chunk-SNHBRO4C.js} +9 -5
- package/chunks/{chunk-KID7K6H2.js → chunk-SNPOURNX.js} +6 -6
- package/chunks/{chunk-VWKER4ZH.js → chunk-SQCTJ435.js} +3 -3
- package/chunks/{chunk-Z4JX4NSH.js → chunk-SXJ7JYQA.js} +23 -23
- package/chunks/{chunk-XVHYA33G.js → chunk-TD7JVTIA.js} +4 -4
- package/chunks/{chunk-IRZ2ZH72.js → chunk-TEFHXP7C.js} +4 -4
- package/chunks/{chunk-2FRY5CRX.js → chunk-TNETSI2A.js} +3 -3
- package/chunks/{chunk-IA7TGCN2.js → chunk-TROB4PZY.js} +4 -4
- package/chunks/{chunk-4TRQPFDP.js → chunk-U3O2EO5Y.js} +26 -20
- package/chunks/{chunk-VKJ4KTPJ.js → chunk-U7ROFHSH.js} +1 -1
- package/chunks/{chunk-Q3JQ7OSU.js → chunk-UBC6PMV7.js} +1 -1
- package/chunks/{chunk-W5UC37EE.js → chunk-UFHPAMAV.js} +6 -0
- package/chunks/{chunk-EQL65XGA.js → chunk-UHF5VBKO.js} +47 -21
- package/chunks/{chunk-S6HYI3MF.js → chunk-UQPLUR4A.js} +2 -2
- package/chunks/{chunk-HGCQ5SE7.js → chunk-UXEO7E3V.js} +21 -0
- package/chunks/{chunk-WCG5O7IP.js → chunk-V3NMFQD2.js} +2 -2
- package/chunks/{chunk-EKPKKXY2.js → chunk-V4SJMQVJ.js} +1 -1
- package/chunks/{chunk-ONSZH6VM.js → chunk-VFJVRSRK.js} +2 -2
- package/chunks/{chunk-MZSJ43WV.js → chunk-W5ZFJYUG.js} +13 -0
- package/chunks/{chunk-XCGIMOLN.js → chunk-WCCLLK7X.js} +14 -1
- package/chunks/{chunk-4WL6SY4F.js → chunk-WDSTNDEW.js} +1 -1
- package/chunks/{chunk-KONVMRK7.js → chunk-WFTBYUOR.js} +1 -1
- package/chunks/{chunk-EI3NWELG.js → chunk-WH32GXQS.js} +6233 -4342
- package/chunks/{chunk-MIKXJYZB.js → chunk-WS5TWVT6.js} +305 -291
- package/chunks/{chunk-VJNBRRZG.js → chunk-WZMH7II3.js} +1 -1
- package/chunks/{chunk-67EWJE77.js → chunk-XY7DGTIC.js} +1 -1
- package/chunks/{chunk-HV76SFIA.js → chunk-YI5G32RU.js} +3 -3
- package/chunks/{chunk-OIVKILPI.js → chunk-YMB77M76.js} +18 -0
- package/chunks/{chunk-AQAJJMRR.js → chunk-YPITLFHS.js} +1 -1
- package/chunks/{chunk-WOJZWRAZ.js → chunk-YRLW2MSX.js} +1 -1
- package/chunks/{chunk-ZZCWJWTF.js → chunk-YY23TR4M.js} +31 -11
- package/chunks/{chunk-URKIBIFC.js → chunk-YYI3Z3AO.js} +3 -3
- package/chunks/chunk-Z7B6SRPM.js +32 -0
- package/chunks/{chunk-6Q5ABMTU.js → chunk-ZGONVQ3D.js} +23 -19
- package/chunks/{chunk-GWVUR3QZ.js → chunk-ZM6LZON7.js} +3 -3
- package/chunks/{chunk-XCWO3SMQ.js → chunk-ZPZANKVP.js} +3 -3
- package/chunks/{chunk-OCSFNUU4.js → chunk-ZRD3BUEX.js} +8 -8
- package/chunks/{chunk-PYQADEFD.js → chunk-ZRT36RSF.js} +1 -1
- package/chunks/{chunk-JT7XS4YW.js → chunk-ZZ7RUTJ4.js} +1 -1
- package/chunks/{computer-use-WQFK33Z3.js → computer-use-7BMFU557.js} +42 -41
- package/chunks/{config-utils-ULCSRMWD.js → config-utils-I732W437.js} +6 -6
- package/chunks/{contextCommand-7EOZND7C.js → contextCommand-VJ6UOMM4.js} +44 -43
- package/chunks/{core-runtime-FGMQRM6E.js → core-runtime-PMRKP77C.js} +42 -41
- package/chunks/{create-sub-session-QIDZUOPU.js → create-sub-session-23ULO5PO.js} +2 -2
- package/chunks/{create-sub-session-QM2K5HLZ.js → create-sub-session-5A3MSW22.js} +42 -41
- package/chunks/{cron-create-VONA5JYY.js → cron-create-5WUTNKNF.js} +4 -4
- package/chunks/{cron-delete-5JXSP2MI.js → cron-delete-JEQ27YPS.js} +4 -4
- package/chunks/{cron-list-KE4F2CIR.js → cron-list-IXGCA7UR.js} +4 -4
- package/chunks/{daemon-GWD7BT6E.js → daemon-PXIC4ZDK.js} +186 -7
- package/chunks/daemon-status-provider-33BLPRUA.js +103 -0
- package/chunks/daemon-trust-policy-ZUV26YGP.js +99 -0
- package/chunks/{daemon-trust-policy-monitor-6UKEABN5.js → daemon-trust-policy-monitor-35WRTIMA.js} +49 -48
- package/chunks/{de-LIW4XVLN.js → de-UBEBKG6V.js} +2 -1
- package/chunks/{deferred-core-runtime-67GJXHXS.js → deferred-core-runtime-ZSLQKM7J.js} +42 -41
- package/chunks/{display-image-NQRSIBXM.js → display-image-CAD7RAUM.js} +4 -4
- package/chunks/{dist-6BMOAE3Z.js → dist-362MN6CP.js} +4 -4
- package/chunks/{dist-3NTTUAHT.js → dist-5VDE7U3A.js} +3 -3
- package/chunks/{dist-Z3CS4OVP.js → dist-6RK4U6VU.js} +11 -5
- package/chunks/{dist-B2CGTW6T.js → dist-CCUH2Z4C.js} +3 -3
- package/chunks/{dist-J47AXBZC.js → dist-EZHCZSW6.js} +3 -3
- package/chunks/{dist-EZE3V3Q7.js → dist-JIORWIDV.js} +3 -3
- package/chunks/{dist-EWW3J4HQ.js → dist-M3XMEIP2.js} +3 -3
- package/chunks/{dist-OTUO3AS2.js → dist-NN5ARGTQ.js} +13 -5
- package/chunks/{earlyInputCapture-IWMYR6OB.js → earlyInputCapture-UNMCTGJR.js} +43 -42
- package/chunks/{edit-ZFGROCAF.js → edit-TXVTSXHY.js} +42 -41
- package/chunks/{en-SY5GTIGX.js → en-X6YV7GME.js} +2 -1
- package/chunks/{enter-worktree-TZZZCDM5.js → enter-worktree-7Q3X4PW7.js} +42 -41
- package/chunks/{enterPlanMode-U77BI3R6.js → enterPlanMode-AZBU3ZB6.js} +42 -41
- package/chunks/{environment-HC37DS2I.js → environment-TGFFQISF.js} +45 -44
- package/chunks/{errors-6AG54JPD.js → errors-GVPFT7BA.js} +44 -43
- package/chunks/{exit-worktree-UYYWFPNK.js → exit-worktree-7INKYMWE.js} +42 -41
- package/chunks/exitPlanMode-5CE7CLAE.js +85 -0
- package/chunks/{fast-path-F5FSZ3O7.js → fast-path-7B6F74IR.js} +5 -5
- package/chunks/{fast-path-settings-RPAVBD7P.js → fast-path-settings-LNOFM2YP.js} +2 -2
- package/chunks/{fr-RQFO7U4P.js → fr-VENTC2BS.js} +2 -1
- package/chunks/{gemini-NKQHYM36.js → gemini-4RUYPDKT.js} +92 -91
- package/chunks/{geminiContentGenerator-HCWZOUX3.js → geminiContentGenerator-NLL52POY.js} +6 -6
- package/chunks/{glob-3PDXKBAO.js → glob-DHU3INUK.js} +42 -41
- package/chunks/{goal-tools-SWNB6GP4.js → goal-tools-LQFO4BRY.js} +4 -4
- package/chunks/{grep-5HZKZYVD.js → grep-523W6G52.js} +42 -41
- package/chunks/handleAutoUpdate-PKUQ3OQQ.js +94 -0
- package/chunks/{i18n-Q27KKNDL.js → i18n-HYL2UBJW.js} +43 -42
- package/chunks/{image-gen-2Z2RJ6W7.js → image-gen-NLIDBAKE.js} +10 -10
- package/chunks/initializer-DGH7RAJ7.js +100 -0
- package/chunks/{installationInfo-XXB75T7O.js → installationInfo-FZ4XWV7O.js} +43 -42
- package/chunks/{ja-KOZKHJHZ.js → ja-QHT4EQTO.js} +2 -1
- package/chunks/{keychain-token-storage-TVAMTNP7.js → keychain-token-storage-GU75J2T2.js} +2 -2
- package/chunks/list-RH5HGWRJ.js +103 -0
- package/chunks/{list-agents-Z4WABFDZ.js → list-agents-5PNMK2AM.js} +2 -2
- package/chunks/loadedSettingsAdapter-XMX2JDOU.js +97 -0
- package/chunks/{loggingContentGenerator-6NTFBM7Q.js → loggingContentGenerator-T3J4HZ7U.js} +139 -98
- package/chunks/{loop-wakeup-UZ5RL5Y2.js → loop-wakeup-OV65FEGR.js} +5 -5
- package/chunks/{ls-TVHDGIES.js → ls-7CETV7WV.js} +4 -4
- package/chunks/{lsp-CVN6OQPI.js → lsp-IWTJWFLT.js} +2 -2
- package/chunks/{managed-npm-update-SPHYQUWZ.js → managed-npm-update-E5ZGIGWV.js} +45 -44
- package/chunks/mcp-6LC572CW.js +97 -0
- package/chunks/{monitor-ZBBPAA54.js → monitor-HQUS4RTV.js} +42 -41
- package/chunks/nonInteractiveCli-X7HKTS5Z.js +163 -0
- package/chunks/{notebook-edit-5W3FW7Z2.js → notebook-edit-QPI3LTFM.js} +42 -41
- package/chunks/{openaiContentGenerator-TQANPEVZ.js → openaiContentGenerator-GGS72DVB.js} +29 -29
- package/chunks/{pidfile-EQOBLH4E.js → pidfile-HD3EB6GL.js} +43 -42
- package/chunks/{processUtils-7XQG7EHS.js → processUtils-2WNEPSW4.js} +2 -2
- package/chunks/{pt-U6AOCTMF.js → pt-VL3I5RNY.js} +2 -1
- package/chunks/{qwenContentGenerator-BKCPHHXU.js → qwenContentGenerator-WJYPELF3.js} +48 -48
- package/chunks/{qwenOAuth2-BJ6PQKE6.js → qwenOAuth2-RSMEBZU4.js} +9 -9
- package/chunks/read-file-URU5ALY3.js +32 -0
- package/chunks/{read-mcp-resource-PZ4ZF6YL.js → read-mcp-resource-THCSZHXO.js} +2 -2
- package/chunks/{read-package-up-TCM6I7S2.js → read-package-up-K6RKTL5D.js} +1 -1
- package/chunks/{record-artifact-P4HFMS7X.js → record-artifact-76YYQA5F.js} +3 -3
- package/chunks/{resumeHistoryUtils-6N6XGJJW.js → resumeHistoryUtils-XMC3CR2U.js} +49 -48
- package/chunks/ripGrep-6NYCUBVW.js +85 -0
- package/chunks/{ru-CMX4UMYP.js → ru-4RCKL4PY.js} +2 -1
- package/chunks/{run-qwen-serve-BCKBCAMX.js → run-qwen-serve-H4IXCJDQ.js} +165 -65
- package/chunks/{runtime-E2437YKL.js → runtime-EJHNZR7H.js} +55 -54
- package/chunks/{scheduler-K3D5Z655.js → scheduler-VVORKEEZ.js} +44 -43
- package/chunks/{sdk-exporters-http-XVTZQRCE.js → sdk-exporters-http-JYKTSCMG.js} +11 -7
- package/chunks/{sdk-impl-7W7AKCS4.js → sdk-impl-ROR54N3H.js} +13 -10
- package/chunks/{send-message-CAMSLG2L.js → send-message-P5SLP57G.js} +6 -6
- package/chunks/serve-3ULKH2KQ.js +107 -0
- package/chunks/{server-UD6INW7J.js → server-J52IQLRJ.js} +949 -303
- package/chunks/{session-GR4ZEVW4.js → session-MNWSMCC2.js} +118 -98
- package/chunks/{settings-5O24D3OJ.js → settings-WFCKUQZO.js} +48 -47
- package/chunks/{shell-UTLWLG5G.js → shell-H5DZN76B.js} +42 -41
- package/chunks/{skill-QQAZL4VO.js → skill-STSDBOIL.js} +19 -19
- package/chunks/{skill-settings-P3YHJVBZ.js → skill-settings-LTJAR2LV.js} +48 -47
- package/chunks/spawnChannel-XL27KTLE.js +98 -0
- package/chunks/{standalone-update-QP742MGP.js → standalone-update-3FUDL2R6.js} +44 -43
- package/chunks/{startInteractiveUI-YCS6AEPN.js → startInteractiveUI-5BFJCCWU.js} +596 -335
- package/chunks/{syntheticOutput-PEBJQYJV.js → syntheticOutput-SEW4NA47.js} +3 -3
- package/chunks/{task-create-5NWCQSJF.js → task-create-247EAVF7.js} +10 -10
- package/chunks/{task-list-53265TRZ.js → task-list-ZJN4QHLK.js} +5 -5
- package/chunks/{task-stop-FPCOIRYX.js → task-stop-MAYQJ42I.js} +2 -2
- package/chunks/{task-update-5HN577LS.js → task-update-CG4FALQF.js} +10 -10
- package/chunks/{team-create-WFH7OCDQ.js → team-create-FC2EYGE7.js} +44 -43
- package/chunks/{team-delete-MMQB4OSC.js → team-delete-3XVRPQBP.js} +5 -5
- package/chunks/{team-plan-approval-EGTT53MV.js → team-plan-approval-X673CRIZ.js} +42 -41
- package/chunks/{terminal-image-renderer-BWRESAQ7.js → terminal-image-renderer-MRNJ77H7.js} +44 -43
- package/chunks/theme-manager-6UMSB7DJ.js +89 -0
- package/chunks/{todoWrite-JGV6VLOX.js → todoWrite-IE2YTCK7.js} +4 -4
- package/chunks/{tool-search-TI5PTIBF.js → tool-search-7Z3PPA5O.js} +19 -19
- package/chunks/total-session-admission-NU4KV76R.js +99 -0
- package/chunks/{trustedFolders-4KYHA4IG.js → trustedFolders-SCUSHKHS.js} +43 -42
- package/chunks/{update-relaunch-WB6LGIF2.js → update-relaunch-M6BNKY4W.js} +5 -5
- package/chunks/{updateCheck-LOS5GYFC.js → updateCheck-QMZZ53S6.js} +48 -47
- package/chunks/{useAutoAcceptIndicator-MHAPY52L.js → useAutoAcceptIndicator-GAFG5PFE.js} +52 -51
- package/chunks/{validateNonInterActiveAuth-QV22HNQU.js → validateNonInterActiveAuth-V44BOAD2.js} +87 -86
- package/chunks/{version-DALWZHKQ.js → version-A4J2RQXD.js} +2 -2
- package/chunks/{web-fetch-JMJVMYFE.js → web-fetch-43TWEBWB.js} +19 -19
- package/chunks/{web-search-DNDUIPU5.js → web-search-CS3Q6JBI.js} +11 -11
- package/chunks/{workflow-JGNN64PM.js → workflow-ETQXJUPR.js} +115 -49
- package/chunks/workspace-providers-status-Y4FPKLHN.js +100 -0
- package/chunks/{workspace-registration-store-LRJG7QA4.js → workspace-registration-store-JASCK5RS.js} +1 -1
- package/chunks/{workspace-registry-KVXIFM36.js → workspace-registry-MU3VIM2D.js} +49 -48
- package/chunks/{workspace-service-PO4AAKKT.js → workspace-service-MHVHRNDX.js} +54 -53
- package/chunks/workspace-skills-status-QVQMNHGO.js +100 -0
- package/chunks/{workspace-trust-reconciler-DOZPCVHG.js → workspace-trust-reconciler-ABXDCISO.js} +56 -55
- package/chunks/write-file-YL7EPQRJ.js +87 -0
- package/chunks/{zh-AGL2FVBI.js → zh-LMSTK4WD.js} +2 -1
- package/chunks/{zh-TW-KI66MHQY.js → zh-TW-SQ4HTSCW.js} +2 -1
- package/chunks/{zoom-image-CNC77ZMA.js → zoom-image-ZQV6O2KE.js} +15 -15
- package/cli.js +13 -13
- package/locales/ca.js +1 -0
- package/locales/de.js +1 -0
- package/locales/en.js +1 -0
- package/locales/fr.js +1 -0
- package/locales/ja.js +1 -0
- package/locales/pt.js +1 -0
- package/locales/ru.js +1 -0
- package/locales/zh-TW.js +1 -0
- package/locales/zh.js +1 -0
- package/package.json +4 -4
- package/web-shell/assets/{arc-CDk0d60K.js → arc-BDKBUdHd.js} +1 -1
- package/web-shell/assets/{architectureDiagram-3BPJPVTR-h-W3I2lP.js → architectureDiagram-3BPJPVTR-DgMi5iOf.js} +1 -1
- package/web-shell/assets/{blockDiagram-GPEHLZMM-D1pvSmZg.js → blockDiagram-GPEHLZMM-DOyxD2BK.js} +1 -1
- package/web-shell/assets/{c4Diagram-AAUBKEIU-ByAm5ZNf.js → c4Diagram-AAUBKEIU-CmXzCE_n.js} +1 -1
- package/web-shell/assets/channel-BCff03Ag.js +1 -0
- package/web-shell/assets/{chunk-2J33WTMH-VrGPPOGV.js → chunk-2J33WTMH-Dr13N7PT.js} +1 -1
- package/web-shell/assets/{chunk-4BX2VUAB-B7hTowgG.js → chunk-4BX2VUAB-CIFcKNCP.js} +1 -1
- package/web-shell/assets/{chunk-55IACEB6-j1Fq8DpE.js → chunk-55IACEB6-B8jmrVPK.js} +1 -1
- package/web-shell/assets/{chunk-727SXJPM-UjABYpF2.js → chunk-727SXJPM-CQc0wjze.js} +1 -1
- package/web-shell/assets/{chunk-AQP2D5EJ-D4uBItrs.js → chunk-AQP2D5EJ-CGdZxT9s.js} +1 -1
- package/web-shell/assets/{chunk-FMBD7UC4-DeFbKlb8.js → chunk-FMBD7UC4-4iCBhCLJ.js} +1 -1
- package/web-shell/assets/{chunk-ND2GUHAM-rQJ8TIgT.js → chunk-ND2GUHAM-B0mMzZcM.js} +1 -1
- package/web-shell/assets/{chunk-QZHKN3VN-DAGcRxvq.js → chunk-QZHKN3VN-6CURQrGl.js} +1 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-DnwxH0ri.js +1 -0
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-DnwxH0ri.js +1 -0
- package/web-shell/assets/{cose-bilkent-S5V4N54A-MaE7MJSt.js → cose-bilkent-S5V4N54A-L6Fo1GN1.js} +1 -1
- package/web-shell/assets/{dagre-BM42HDAG-DzijYGSb.js → dagre-BM42HDAG-BTsGDeLA.js} +1 -1
- package/web-shell/assets/{diagram-2AECGRRQ-WdbG7WnX.js → diagram-2AECGRRQ-B4AXYZGR.js} +1 -1
- package/web-shell/assets/{diagram-5GNKFQAL-NYutsBnw.js → diagram-5GNKFQAL-C2yM5aNc.js} +1 -1
- package/web-shell/assets/{diagram-KO2AKTUF-Dqg0eBY0.js → diagram-KO2AKTUF-CrGLZmRK.js} +1 -1
- package/web-shell/assets/{diagram-LMA3HP47-C7vRP2Lb.js → diagram-LMA3HP47-rycHl4fv.js} +1 -1
- package/web-shell/assets/{diagram-OG6HWLK6-B2sEPpPt.js → diagram-OG6HWLK6-MQj80AQu.js} +1 -1
- package/web-shell/assets/{erDiagram-TEJ5UH35-a4zIbzm8.js → erDiagram-TEJ5UH35-DCgH-D0D.js} +1 -1
- package/web-shell/assets/{flowDiagram-I6XJVG4X-BK9y89ya.js → flowDiagram-I6XJVG4X-B0gnwCnt.js} +1 -1
- package/web-shell/assets/{ganttDiagram-6RSMTGT7-wUQTSNvV.js → ganttDiagram-6RSMTGT7-CB0OxXVE.js} +1 -1
- package/web-shell/assets/{gitGraphDiagram-PVQCEYII-Dnzt4SAi.js → gitGraphDiagram-PVQCEYII-xLxucse9.js} +1 -1
- package/web-shell/assets/{index-BA3wUcKL.js → index-BFFbq0E-.js} +1 -1
- package/web-shell/assets/index-D7XXR9S-.js +1789 -0
- package/web-shell/assets/index-Dk5RwPL9.css +5 -0
- package/web-shell/assets/{infoDiagram-5YYISTIA-DcaoToij.js → infoDiagram-5YYISTIA-7FCqN4qa.js} +1 -1
- package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-DzduqhP2.js → ishikawaDiagram-YF4QCWOH-BGyKlnik.js} +1 -1
- package/web-shell/assets/{journeyDiagram-JHISSGLW-BvviZR_O.js → journeyDiagram-JHISSGLW-CmgSXMLF.js} +1 -1
- package/web-shell/assets/{kanban-definition-UN3LZRKU-Efm2JxY3.js → kanban-definition-UN3LZRKU-CjT2mF6A.js} +1 -1
- package/web-shell/assets/{linear-DtY3IbOs.js → linear-CiTDGfCW.js} +1 -1
- package/web-shell/assets/{mermaid.core-PzpFqoMe.js → mermaid.core-_QnqxPRF.js} +5 -5
- package/web-shell/assets/{mindmap-definition-RKZ34NQL-BLlTkHS0.js → mindmap-definition-RKZ34NQL-B1On14ZB.js} +1 -1
- package/web-shell/assets/{pieDiagram-4H26LBE5-D-mKF-jE.js → pieDiagram-4H26LBE5-x1Pf1OG2.js} +1 -1
- package/web-shell/assets/{quadrantDiagram-W4KKPZXB-DYCzslGm.js → quadrantDiagram-W4KKPZXB-ZawmK1Q9.js} +1 -1
- package/web-shell/assets/{requirementDiagram-4Y6WPE33-Dfpxlk7R.js → requirementDiagram-4Y6WPE33-krIMX0c8.js} +1 -1
- package/web-shell/assets/{sankeyDiagram-5OEKKPKP-D5cRaaxh.js → sankeyDiagram-5OEKKPKP-aMJyxtx_.js} +1 -1
- package/web-shell/assets/{sequenceDiagram-3UESZ5HK-s04DReiS.js → sequenceDiagram-3UESZ5HK-C530-Kqz.js} +1 -1
- package/web-shell/assets/{stateDiagram-AJRCARHV-01UNFgnb.js → stateDiagram-AJRCARHV-DObd9dT_.js} +1 -1
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-Bttf9Ae9.js +1 -0
- package/web-shell/assets/{timeline-definition-PNZ67QCA-DX8_wZBC.js → timeline-definition-PNZ67QCA-D9LnwQ1O.js} +1 -1
- package/web-shell/assets/{vennDiagram-CIIHVFJN-BK0FlBme.js → vennDiagram-CIIHVFJN-B_MT_v6Y.js} +1 -1
- package/web-shell/assets/{wardley-L42UT6IY-DkPc9UlD.js → wardley-L42UT6IY-DHKPz5Hu.js} +1 -1
- package/web-shell/assets/{wardleyDiagram-YWT4CUSO-DNKkpDAo.js → wardleyDiagram-YWT4CUSO-BoyKaItA.js} +1 -1
- package/web-shell/assets/{xychartDiagram-2RQKCTM6-CiPwg8QG.js → xychartDiagram-2RQKCTM6--xBJT7Kg.js} +1 -1
- package/web-shell/index.html +2 -2
- package/chunks/agent-headless-HYEHZFH6.js +0 -86
- package/chunks/channel-settings-store-OXYG5S5X.js +0 -101
- package/chunks/chunk-I5VM3SKY.js +0 -451
- package/chunks/chunk-PDPFQ2FO.js +0 -156
- package/chunks/daemon-status-provider-L3J6GKCT.js +0 -102
- package/chunks/daemon-trust-policy-4PHPY23S.js +0 -98
- package/chunks/exitPlanMode-RWJR2KGB.js +0 -84
- package/chunks/handleAutoUpdate-NHFSGYTF.js +0 -93
- package/chunks/initializer-Y5DJLT43.js +0 -99
- package/chunks/list-YHNQ32CS.js +0 -102
- package/chunks/loadedSettingsAdapter-GHUQK7H4.js +0 -96
- package/chunks/mcp-EA3KO6FS.js +0 -96
- package/chunks/nonInteractiveCli-NNOR56HU.js +0 -162
- package/chunks/read-file-KKTXGIZD.js +0 -32
- package/chunks/ripGrep-SJVAAYDV.js +0 -84
- package/chunks/serve-IH4XR5IL.js +0 -106
- package/chunks/spawnChannel-UAQMH6Y6.js +0 -94
- package/chunks/theme-manager-ZNDGAHJN.js +0 -88
- package/chunks/total-session-admission-66UDSOHO.js +0 -98
- package/chunks/workspace-providers-status-K22B3Z6B.js +0 -99
- package/chunks/workspace-skills-status-DDYCBVSH.js +0 -99
- package/chunks/write-file-TT6MWIKC.js +0 -86
- package/web-shell/assets/channel-DPFUV4oi.js +0 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-CLm0hVvw.js +0 -1
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-CLm0hVvw.js +0 -1
- package/web-shell/assets/index-BjC3yjjL.css +0 -5
- package/web-shell/assets/index-QzFq6w7o.js +0 -1775
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-DXb5olqv.js +0 -1
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: coordinate
|
|
3
|
+
description: Coordinate up to three Qwen Code teammates with enforced read-only workers, an optional worktree-pinned writer, shared tasks, peer messages, and existing Agent View tabs. Invoke explicitly with /coordinate.
|
|
4
|
+
argument-hint: '<goal>'
|
|
5
|
+
disable-model-invocation: true
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Coordinate Qwen Code Teammates
|
|
9
|
+
|
|
10
|
+
Act as the team leader. Decompose the goal, keep task ownership clear, reconcile disagreements, and deliver the final result.
|
|
11
|
+
|
|
12
|
+
## Build one bounded team
|
|
13
|
+
|
|
14
|
+
When `team_create` is available:
|
|
15
|
+
|
|
16
|
+
1. Create one team and one self-contained task per current investigation workstream. Do not queue an implementation task while read-only teammates are idle because tasks are auto-assigned.
|
|
17
|
+
2. Spawn one to three named investigation teammates with `read_only: true`. Do not pass `model`; use the session-default model unless the selected agent definition explicitly overrides it.
|
|
18
|
+
3. Assign tasks and let teammates collaborate through `send_message` and the shared task list. Send targeted follow-ups when evidence conflicts, a task needs clarification, or a result is incomplete.
|
|
19
|
+
4. Accept or reject each result based on its evidence. Reassign rejected work instead of silently using it.
|
|
20
|
+
|
|
21
|
+
Read-only teammates have a positive execution allowlist. They cannot use shell, edit or write files, save memory, create schedules, invoke arbitrary deferred tools, or spawn agents. This is enforced by the runtime, not only by this prompt.
|
|
22
|
+
|
|
23
|
+
## Pin the only writer to a worktree
|
|
24
|
+
|
|
25
|
+
When the goal requires code changes:
|
|
26
|
+
|
|
27
|
+
1. Finish the parallel investigation first.
|
|
28
|
+
2. Send each investigation teammate a `shutdown_request`. Once shutdown is pending, they are excluded from automatic task assignment.
|
|
29
|
+
3. Call `enter_worktree` once and keep the returned path.
|
|
30
|
+
4. Create the implementation task, then spawn exactly one named writer with `subagent_type: "general-purpose"` and `working_dir: <path>`. Do not set `read_only` for this teammate.
|
|
31
|
+
5. Give the writer the accepted investigation evidence and require all changes to stay inside the worktree.
|
|
32
|
+
6. Review and verify the worktree result. The leader alone decides whether and how to integrate it into the current branch.
|
|
33
|
+
7. Do not remove the worktree until accepted changes have been integrated or deliberately discarded.
|
|
34
|
+
|
|
35
|
+
If the checkout is not a Git repository or worktree creation fails, keep all teammates read-only and let the leader make the final change in the current checkout.
|
|
36
|
+
|
|
37
|
+
After synthesis, send each still-active teammate a `shutdown_request`, then delete the team.
|
|
38
|
+
|
|
39
|
+
The existing Agent View tabs show teammate conversations, messages, status, and approvals. Do not create another roster, session manager, or terminal UI.
|
|
40
|
+
|
|
41
|
+
If the Agent Team tools are unavailable, say that `experimental.agentTeam` must be enabled and Qwen Code restarted. Ordinary subagents are an acceptable fallback for parallel research, but describe them accurately: they report only to the leader and cannot collaborate as a team.
|
|
42
|
+
|
|
43
|
+
## Keep coordination bounded
|
|
44
|
+
|
|
45
|
+
- Use one teammate for a narrow task and no more than three for this workflow.
|
|
46
|
+
- Give every task an objective, scope, completion condition, and required evidence.
|
|
47
|
+
- Default every teammate to `read_only: true`; add one worktree writer only when implementation is required.
|
|
48
|
+
- Do not use Arena: it is for competing solutions to the same task, not collaboration on different tasks.
|
|
49
|
+
- Do not claim that in-process teammates are independent PTY sessions or heterogeneous CLIs.
|
|
50
|
+
- Finish implementation before running the smallest relevant verification once.
|
|
51
|
+
|
|
52
|
+
Return the outcome, material evidence or disagreements, changes made by the leader, verification, and remaining risks.
|
|
@@ -583,14 +583,14 @@ The optional `reasoning` field under `generationConfig` controls how aggressivel
|
|
|
583
583
|
|
|
584
584
|
### Per-provider behavior
|
|
585
585
|
|
|
586
|
-
| Protocol / provider | Wire shape | Notes
|
|
587
|
-
| --------------------------------------------- | -------------------------------------------------------------------- |
|
|
588
|
-
| **OpenAI / DashScope** (`qwen3.8-max` family) | Flat `reasoning_effort: <effort>` body parameter | The five `/effort` tiers (`low`, `medium`, `high`, `xhigh`, `max`) are passed through verbatim for any model id starting with `qwen3.8-max` (including dated snapshots and `-latest` aliases); DashScope applies any model-specific mapping.
|
|
589
|
-
| **OpenAI / DeepSeek** (`api.deepseek.com`) | Flat `reasoning_effort: <effort>` body parameter | When `reasoning.effort` is set in the nested config shape, it's rewritten to flat `reasoning_effort` and `'low'`/`'medium'` are normalized to `'high'`, `'xhigh'` to `'max'` — mirroring DeepSeek's [server-side back-compat](https://api-docs.deepseek.com/zh-cn/api/create-chat-completion). Top-level `samplingParams.reasoning_effort` or `extra_body.reasoning_effort` overrides skip this normalization and ship verbatim.
|
|
590
|
-
| **OpenAI** (other compatible servers) | `reasoning: { effort, ... }` passed through verbatim | Set via `samplingParams` (e.g. `samplingParams.reasoning_effort` for GPT-5/o-series) when the provider expects a different shape.
|
|
591
|
-
| **Anthropic** (real `api.anthropic.com`) | `output_config: { effort }` plus the `effort-2025-11-24` beta header | Real Anthropic accepts `'low'`/`'medium'`/`'high'` only. `'max'` is **clamped to `'high'`** with a `debugLogger.warn` line (once per generator); if you want max effort, switch the baseURL to a DeepSeek-compatible endpoint that supports it.
|
|
592
|
-
| **Anthropic** (`api.deepseek.com/anthropic`) | Same `output_config: { effort }` + beta header | `'max'` is passed through unchanged.
|
|
593
|
-
| **Gemini** (`@google/genai`) | `thinkingConfig: { includeThoughts: true, thinkingLevel }` | `'low'` → `LOW`, `'high'`/`'max'` → `HIGH`, others → `THINKING_LEVEL_UNSPECIFIED` (Gemini has no `MAX` tier).
|
|
586
|
+
| Protocol / provider | Wire shape | Notes |
|
|
587
|
+
| --------------------------------------------- | -------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
588
|
+
| **OpenAI / DashScope** (`qwen3.8-max` family) | Flat `reasoning_effort: <effort>` body parameter | The five `/effort` tiers (`low`, `medium`, `high`, `xhigh`, `max`) are passed through verbatim for any model id starting with `qwen3.8-max` (including dated snapshots and `-latest` aliases); DashScope applies any model-specific mapping. When `reasoning_effort` and `thinking_budget` conflict, the normal `extra_body` > `samplingParams` > `reasoning` precedence keeps only the higher-priority field; an explicit same-layer pair keeps `reasoning_effort`, matching the provider's behavior before cross-layer resolution. If a static field wins, `/effort` reports that field instead of implying the requested tier is effective. When an effort tier wins, a conflicting `enable_thinking` is also dropped. An explicit `enable_thinking: false` in `extra_body` is honoured rather than dropped: it overrides the configured tier as `reasoning_effort: 'none'`, one of the few places `extra_body` does not win verbatim. Other Qwen models continue to map a selected effort to `enable_thinking: true`; a `reasoning_effort` override passes through there unless it conflicts with a `thinking_budget` (a pair DashScope rejects), in which case the inert `reasoning_effort` is dropped and both `enable_thinking` and `thinking_budget` survive. |
|
|
589
|
+
| **OpenAI / DeepSeek** (`api.deepseek.com`) | Flat `reasoning_effort: <effort>` body parameter | When `reasoning.effort` is set in the nested config shape, it's rewritten to flat `reasoning_effort` and `'low'`/`'medium'` are normalized to `'high'`, `'xhigh'` to `'max'` — mirroring DeepSeek's [server-side back-compat](https://api-docs.deepseek.com/zh-cn/api/create-chat-completion). Top-level `samplingParams.reasoning_effort` or `extra_body.reasoning_effort` overrides skip this normalization and ship verbatim. |
|
|
590
|
+
| **OpenAI** (other compatible servers) | `reasoning: { effort, ... }` passed through verbatim | Set via `samplingParams` (e.g. `samplingParams.reasoning_effort` for GPT-5/o-series) when the provider expects a different shape. |
|
|
591
|
+
| **Anthropic** (real `api.anthropic.com`) | `output_config: { effort }` plus the `effort-2025-11-24` beta header | Real Anthropic accepts `'low'`/`'medium'`/`'high'` only. `'max'` is **clamped to `'high'`** with a `debugLogger.warn` line (once per generator); if you want max effort, switch the baseURL to a DeepSeek-compatible endpoint that supports it. |
|
|
592
|
+
| **Anthropic** (`api.deepseek.com/anthropic`) | Same `output_config: { effort }` + beta header | `'max'` is passed through unchanged. |
|
|
593
|
+
| **Gemini** (`@google/genai`) | `thinkingConfig: { includeThoughts: true, thinkingLevel }` | `'low'` → `LOW`, `'high'`/`'max'` → `HIGH`, others → `THINKING_LEVEL_UNSPECIFIED` (Gemini has no `MAX` tier). |
|
|
594
594
|
|
|
595
595
|
### `reasoning: false`
|
|
596
596
|
|
|
@@ -604,6 +604,8 @@ On a `api.deepseek.com` baseURL, the OpenAI pipeline emits the explicit `thinkin
|
|
|
604
604
|
>
|
|
605
605
|
> When `generationConfig.samplingParams` is set on an OpenAI-compatible provider, the pipeline ships those keys to the wire **verbatim** and skips the separate `reasoning` injection entirely. So a config like `{ samplingParams: { temperature: 0.5 }, reasoning: { effort: 'max' } }` will silently drop the reasoning field on OpenAI/DeepSeek requests.
|
|
606
606
|
>
|
|
607
|
+
> DashScope Qwen models are an exception: their provider reads `reasoning` directly and maps it to `reasoning_effort` or `enable_thinking`. On the qwen3.8-max family, provider-specific `samplingParams` fields still take precedence when the wire parameters conflict; on older qwen hybrids, a configured effort tier collapses to `enable_thinking: true`, which overrides a `samplingParams.enable_thinking` value.
|
|
608
|
+
>
|
|
607
609
|
> If you set `samplingParams`, include the reasoning knob inside it directly — for DeepSeek that's `samplingParams.reasoning_effort`, for GPT-5/o-series it's `samplingParams.reasoning_effort` (their flat field) or `samplingParams.reasoning` (the nested object). For OpenRouter and other providers the field name varies; consult the provider docs.
|
|
608
610
|
>
|
|
609
611
|
> The Anthropic and Gemini converters are unaffected — they always read `reasoning.effort` directly regardless of `samplingParams`.
|
|
@@ -107,6 +107,16 @@ Settings are organized into categories. Most settings should be placed within th
|
|
|
107
107
|
| `output.format` | string | The format of the CLI output. | `"text"` | `"text"`, `"json"` |
|
|
108
108
|
| `output.showTimestamps` | boolean | Show an `[HH:MM:SS]` timestamp before each assistant response. | `false` | |
|
|
109
109
|
|
|
110
|
+
#### review
|
|
111
|
+
|
|
112
|
+
| Setting | Type | Description | Default |
|
|
113
|
+
| -------------------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- |
|
|
114
|
+
| `review.attribution` | boolean | Append the attribution footer naming the model and CLI version (e.g. `_— qwen3-coder via Qwen Code /review (v0.21.2)_`) to review bodies and inline comments posted by `/review`. Disable to post reviews without AI attribution. With the footer off, presubmit duplicate detection still recognizes earlier posts by the same GitHub account, but footer-less posts from other accounts escape it. | `true` |
|
|
115
|
+
| `review.effort` | enum | Default effort for `/review` when `--effort` is not given: `"low"`, `"medium"`, `"high"`, or `"auto"` (the built-in rule: high for PRs, medium for local changes). An explicit `--effort` wins; an effective `--comment` still forces high and `--fix` still floors at medium. | `"auto"` |
|
|
116
|
+
| `review.comment` | boolean | Treat every PR `/review` as if `--comment` was passed: findings are posted to the pull request without the flag. The post still binds to the PR named in the invocation. Enable only if you always want reviews published. | `false` |
|
|
117
|
+
|
|
118
|
+
These settings are read from operator scopes only (User, System, and SystemDefaults); values in a workspace `.qwen/settings.json` are ignored, so a repository cannot set review policy for its reviewers.
|
|
119
|
+
|
|
110
120
|
#### ui
|
|
111
121
|
|
|
112
122
|
| Setting | Type | Description | Default |
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# Agent Plugins v1
|
|
2
|
+
|
|
3
|
+
Qwen Code natively loads portable [Agent Plugins v1](https://agent-plugins.org/)
|
|
4
|
+
packages. The package keeps its standard `plugin.json`, `mcp.json`, and
|
|
5
|
+
`SKILL.md` files: installation does not generate `qwen-extension.json` or
|
|
6
|
+
rewrite portable files.
|
|
7
|
+
|
|
8
|
+
Use the existing extension commands with a local directory, link, archive,
|
|
9
|
+
Git repository, archive URL, or scoped npm package:
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
qwen extensions install ./my-agent-plugin
|
|
13
|
+
qwen extensions link ./my-agent-plugin
|
|
14
|
+
qwen extensions install owner/my-agent-plugin
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
The root manifest must target the canonical v1 schema:
|
|
18
|
+
|
|
19
|
+
```json
|
|
20
|
+
{
|
|
21
|
+
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
|
|
22
|
+
"name": "my-agent-plugin",
|
|
23
|
+
"version": "1.0.0"
|
|
24
|
+
}
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## Supported capabilities
|
|
28
|
+
|
|
29
|
+
| Capability | Support |
|
|
30
|
+
| ------------------------------------------ | ---------------------------------------- |
|
|
31
|
+
| Direct-child `skills/*/SKILL.md` | Yes |
|
|
32
|
+
| stdio MCP servers | Yes |
|
|
33
|
+
| Streamable HTTP MCP servers | Yes |
|
|
34
|
+
| Legacy HTTP+SSE MCP servers | No; the entry is skipped |
|
|
35
|
+
| Commands, agents, and hooks | No; these directories are ignored |
|
|
36
|
+
| Qwen context, settings, channels, and apps | No |
|
|
37
|
+
| `extensions.*` client namespaces | No; unimplemented namespaces are ignored |
|
|
38
|
+
|
|
39
|
+
Skills follow the [Agent Skills specification](https://agentskills.io/specification).
|
|
40
|
+
An invalid skill is skipped without disabling valid sibling skills. The
|
|
41
|
+
experimental `allowed-tools` field is recognized as a string but does not grant
|
|
42
|
+
pre-approved Qwen tools.
|
|
43
|
+
|
|
44
|
+
For stdio MCP servers, Qwen Code expands `${PLUGIN_ROOT}` and `${PLUGIN_DATA}`
|
|
45
|
+
once in `args`, environment values, and `cwd`. `PLUGIN_DATA` is a writable
|
|
46
|
+
per-installation directory whose contents persist across updates and reinstall.
|
|
47
|
+
Remote MCP endpoints must use HTTPS, except for loopback HTTP endpoints.
|
|
48
|
+
|
|
49
|
+
Agent Plugins v1 is a package format, not a marketplace integration. Install
|
|
50
|
+
packages through Qwen Code's existing extension sources.
|
|
@@ -73,7 +73,7 @@ To ensure Qwen Code can automatically find the correct release asset for each pl
|
|
|
73
73
|
|
|
74
74
|
#### Archive structure
|
|
75
75
|
|
|
76
|
-
Archives must be fully contained extensions and have
|
|
76
|
+
Archives must be fully contained extensions and have a supported root manifest: `qwen-extension.json` for a native Qwen extension, or `plugin.json` for an [Agent Plugins v1](./agent-plugins.md) package.
|
|
77
77
|
|
|
78
78
|
The rest of the layout should look exactly the same as a typical extension, see [introduction.md](./introduction.md).
|
|
79
79
|
|
|
@@ -131,7 +131,7 @@ You can publish Qwen Code extensions as scoped npm packages (e.g. `@your-org/my-
|
|
|
131
131
|
|
|
132
132
|
### Package requirements
|
|
133
133
|
|
|
134
|
-
Your npm package must include a
|
|
134
|
+
Your npm package must include a supported manifest at the package root: `qwen-extension.json` for a native Qwen extension, or `plugin.json` for an [Agent Plugins v1](./agent-plugins.md) package. The npm tarball is simply another delivery mechanism.
|
|
135
135
|
|
|
136
136
|
A minimal package structure looks like:
|
|
137
137
|
|
|
@@ -145,7 +145,7 @@ my-extension/
|
|
|
145
145
|
└── agents/ # optional custom subagents
|
|
146
146
|
```
|
|
147
147
|
|
|
148
|
-
Make sure
|
|
148
|
+
Make sure the selected root manifest and all referenced package files are included in your published package (i.e. not excluded by `.npmignore` or the `files` field in `package.json`).
|
|
149
149
|
|
|
150
150
|
### Publishing
|
|
151
151
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Qwen Code extensions package prompts, MCP servers, subagents, skills and custom commands into a familiar and user-friendly format. With extensions, you can expand the capabilities of Qwen Code and share those capabilities with others. They are designed to be easily installable and shareable.
|
|
4
4
|
|
|
5
|
-
Extensions and plugins from [Gemini CLI Extensions Gallery](https://geminicli.com/extensions/), [Claude Code Marketplace](https://claudemarketplaces.com/), and
|
|
5
|
+
Extensions and plugins from [Gemini CLI Extensions Gallery](https://geminicli.com/extensions/), [Claude Code Marketplace](https://claudemarketplaces.com/), Qoder, and the portable [Agent Plugins v1](./agent-plugins.md) format can be directly installed into Qwen Code. This cross-platform compatibility gives you access to a rich ecosystem of extensions and plugins, dramatically expanding Qwen Code's capabilities without requiring extension authors to maintain separate versions.
|
|
6
6
|
|
|
7
7
|
## Extension management
|
|
8
8
|
|
|
@@ -113,6 +113,18 @@ The installer converts the Qoder manifest to `qwen-extension.json` and preserves
|
|
|
113
113
|
|
|
114
114
|
When a Qoder plugin contains `system-prompt.md` at its root, Qwen Code loads it as extension context. If the plugin also contains `QWEN.md` or declares other context files, all context files are retained and deduplicated.
|
|
115
115
|
|
|
116
|
+
#### From Agent Plugins v1
|
|
117
|
+
|
|
118
|
+
Qwen Code natively loads portable Agent Plugins v1 packages without converting or rewriting `plugin.json`, `mcp.json`, or `SKILL.md` files:
|
|
119
|
+
|
|
120
|
+
```bash
|
|
121
|
+
qwen extensions install ./my-agent-plugin
|
|
122
|
+
qwen extensions link ./my-agent-plugin
|
|
123
|
+
qwen extensions install owner/my-agent-plugin
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
The portable runtime supports Agent Skills plus stdio and Streamable HTTP MCP servers. Commands, agents, hooks, client namespaces, and legacy SSE MCP are not activated. See [Agent Plugins v1](./agent-plugins.md) for the complete support matrix.
|
|
127
|
+
|
|
116
128
|
#### From npm Registry
|
|
117
129
|
|
|
118
130
|
Qwen Code supports installing extensions from npm registries using scoped package names. This is ideal for teams with private registries that already have auth, versioning, and publishing infrastructure in place.
|
|
@@ -139,7 +151,7 @@ Only scoped packages (`@scope/package-name`) are supported to avoid ambiguity wi
|
|
|
139
151
|
|
|
140
152
|
**Authentication** is handled automatically via the `NPM_TOKEN` environment variable or registry-specific `_authToken` entries in your `.npmrc` file.
|
|
141
153
|
|
|
142
|
-
> **Note:** npm extensions must include a `qwen-extension.json`
|
|
154
|
+
> **Note:** npm extensions must include either a native `qwen-extension.json` or an Agent Plugins v1 `plugin.json` at the package root. See [Extension Releasing](./extension-releasing.md#releasing-through-npm-registry) for packaging details.
|
|
143
155
|
|
|
144
156
|
#### From Git Repository
|
|
145
157
|
|
|
@@ -237,7 +249,9 @@ qwen extensions update --all
|
|
|
237
249
|
|
|
238
250
|
On startup, Qwen Code looks for extensions in `<home>/.qwen/extensions`
|
|
239
251
|
|
|
240
|
-
|
|
252
|
+
Native Qwen extensions exist as a directory that contains a `qwen-extension.json` file. Agent Plugins v1 packages instead retain their root `plugin.json`; see [Agent Plugins v1](./agent-plugins.md).
|
|
253
|
+
|
|
254
|
+
For example, a native Qwen extension is stored at:
|
|
241
255
|
|
|
242
256
|
`<home>/.qwen/extensions/my-extension/qwen-extension.json`
|
|
243
257
|
|
|
@@ -200,14 +200,14 @@ Agent Arena is experimental. Current limitations:
|
|
|
200
200
|
|
|
201
201
|
## Comparison with other multi-agent modes
|
|
202
202
|
|
|
203
|
-
Agent Arena
|
|
203
|
+
Agent Arena and the experimental Agent Team runtime serve different multi-agent workflows. Agent Swarm remains a planned mode.
|
|
204
204
|
|
|
205
|
-
| | **Agent Arena** | **Agent Team**
|
|
205
|
+
| | **Agent Arena** | **Agent Team** | **Agent Swarm** (planned) |
|
|
206
206
|
| :---------------- | :----------------------------------------------------- | :------------------------------------------------- | :------------------------------------------------------- |
|
|
207
207
|
| **Goal** | Competitive: Find the best solution to the _same_ task | Collaborative: Tackle _different_ aspects together | Batch parallel: Dynamically spawn workers for bulk tasks |
|
|
208
208
|
| **Agents** | Pre-configured models compete independently | Teammates collaborate with assigned roles | Workers spawned on-the-fly, destroyed on completion |
|
|
209
209
|
| **Communication** | No inter-agent communication | Direct peer-to-peer messaging | One-way: results aggregated by parent |
|
|
210
|
-
| **Isolation** | Full: separate Git worktrees |
|
|
210
|
+
| **Isolation** | Full: separate Git worktrees | In-process teammates with a shared task list | Lightweight ephemeral context per worker |
|
|
211
211
|
| **Output** | One selected solution applied to workspace | Synthesized results from multiple perspectives | Aggregated results from parallel processing |
|
|
212
212
|
| **Best for** | Benchmarking, choosing between model approaches | Research, complex collaboration, cross-layer work | Batch operations, data processing, map-reduce tasks |
|
|
213
213
|
|
|
@@ -216,4 +216,5 @@ Agent Arena is one of several planned multi-agent modes in Qwen Code. **Agent Te
|
|
|
216
216
|
Explore related approaches for parallel and delegated work:
|
|
217
217
|
|
|
218
218
|
- **Lightweight delegation**: [Subagents](./sub-agents.md) handle focused subtasks within your session — better when you don't need model comparison
|
|
219
|
+
- **Collaborative execution**: [Multi-Agent Coordination](./multi-agent-coordination.md) uses Agent Team for shared tasks and teammate messaging
|
|
219
220
|
- **Manual parallel sessions**: Run multiple Qwen Code sessions yourself in separate terminals with [Git worktrees](https://git-scm.com/docs/git-worktree) for full manual control
|
|
@@ -183,7 +183,7 @@ Or, after running `/review 123`, type `post comments` to publish findings withou
|
|
|
183
183
|
- Where the fix is a single localized edit, a ` ```suggestion ` block you can apply in one click
|
|
184
184
|
- For Approve/Request changes verdicts: a review summary with the verdict
|
|
185
185
|
- For Comment verdict with all inline comments posted: no separate summary (inline comments are sufficient)
|
|
186
|
-
- Model and CLI version attribution footer on each comment (e.g., _— qwen3-coder via Qwen Code /review (v0.21.2)_)
|
|
186
|
+
- Model and CLI version attribution footer on each comment (e.g., _— qwen3-coder via Qwen Code /review (v0.21.2)_); set `review.attribution` to `false` in your user or system `settings.json` (the workspace `.qwen/settings.json` is ignored for `review.*` settings) to post without it
|
|
187
187
|
|
|
188
188
|
**What stays terminal-only:**
|
|
189
189
|
|
|
@@ -139,12 +139,13 @@ Commands for managing AI tools and models.
|
|
|
139
139
|
|
|
140
140
|
These commands invoke bundled skills that provide specialized workflows.
|
|
141
141
|
|
|
142
|
-
| Command
|
|
143
|
-
|
|
|
144
|
-
| `/review`
|
|
145
|
-
| `/
|
|
146
|
-
| `/
|
|
147
|
-
| `/
|
|
142
|
+
| Command | Description | Usage Examples |
|
|
143
|
+
| ------------- | ------------------------------------------------------------- | ------------------------------------------------------------------------- |
|
|
144
|
+
| `/review` | Multi-agent code review (12 parallel agents at high effort) | `/review`, `/review 123`, `/review 123 --comment`, `/review --effort low` |
|
|
145
|
+
| `/coordinate` | Coordinate read-only workers and one optional worktree writer | `/coordinate investigate and fix the authentication regression` |
|
|
146
|
+
| `/loop` | Run a prompt on a recurring schedule | `/loop 5m check the build` |
|
|
147
|
+
| `/simplify` | Review recent changes and apply safe cleanup edits directly | `/simplify`, `/simplify focus on duplication` |
|
|
148
|
+
| `/qc-helper` | Answer questions about Qwen Code usage and configuration | `/qc-helper how do I configure MCP?` |
|
|
148
149
|
|
|
149
150
|
See [Code Review](./code-review.md) for full `/review` documentation.
|
|
150
151
|
|
|
@@ -256,6 +256,11 @@ Events are emitted as JSON Lines (one object per line). The schema is the same
|
|
|
256
256
|
one used by the non-interactive `--output-format=stream-json` mode, with
|
|
257
257
|
`includePartialMessages` always enabled.
|
|
258
258
|
|
|
259
|
+
Protocol version 2 bounds textual `tool_result.content` values to 65,536 UTF-8
|
|
260
|
+
bytes after JSON string serialization. Oversized values become deterministic
|
|
261
|
+
head/tail previews; the event type and field schema are unchanged. This is a
|
|
262
|
+
field limit, not a universal JSONL frame-size limit.
|
|
263
|
+
|
|
259
264
|
The first event on the channel is always `system` / `session_start`, emitted
|
|
260
265
|
when the bridge is constructed. Use it to correlate the channel with a
|
|
261
266
|
session id before any other event arrives.
|
|
@@ -215,6 +215,14 @@ Output (streaming as events occur):
|
|
|
215
215
|
|
|
216
216
|
When combined with `--include-partial-messages`, additional stream events are emitted in real-time (message_start, content_block_delta, etc.) for real-time UI updates.
|
|
217
217
|
|
|
218
|
+
For JSON and stream-JSON output, textual `tool_result.content` values are
|
|
219
|
+
bounded to 65,536 UTF-8 bytes after JSON string serialization. Oversized
|
|
220
|
+
values are emitted as deterministic head/tail previews. The same bound applies
|
|
221
|
+
to persistent stream-JSON sessions, SDK transports, subagent tool results, and
|
|
222
|
+
Dual Output. Text mode still prints only the final response, while retaining
|
|
223
|
+
only the bounded preview internally. This limit does not cap an entire JSON
|
|
224
|
+
session, JSONL event, tool input, or partial message.
|
|
225
|
+
|
|
218
226
|
```bash
|
|
219
227
|
qwen -p "Write a Python script" --output-format stream-json --include-partial-messages
|
|
220
228
|
```
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Multi-Agent Coordination
|
|
2
|
+
|
|
3
|
+
Qwen Code can coordinate several teammates with the experimental Agent Team runtime. Teammates receive separate tasks, share a task list, exchange messages, and appear in the existing Agent View tabs. `/coordinate` defaults investigation workers to an enforced read-only tool set and can place one writer in a leader-owned Git worktree.
|
|
4
|
+
|
|
5
|
+
## Enable Agent Team
|
|
6
|
+
|
|
7
|
+
Set `experimental.agentTeam` to `true` in Qwen Code settings and restart, or start Qwen Code with `QWEN_CODE_ENABLE_AGENT_TEAM=1`.
|
|
8
|
+
|
|
9
|
+
## Run a coordinated task
|
|
10
|
+
|
|
11
|
+
Use the bundled skill with a goal:
|
|
12
|
+
|
|
13
|
+
```text
|
|
14
|
+
/coordinate investigate the authentication regression and propose the smallest fix
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
The leader creates a team, assigns up to three independent workstreams, and uses the existing team tools for messages and task state. Teammate conversations and approvals remain visible through the existing Agent View UI. Read-only teammates cannot execute shell commands or write files. If implementation is needed, the leader can create one Git worktree and pin one writer teammate to it; the leader remains the only merge authority for the current branch.
|
|
18
|
+
|
|
19
|
+
If Agent Team is disabled, `/coordinate` can still use ordinary foreground agents for read-only parallel investigation. That fallback is delegation, not a collaborating team: the workers report only to the leader.
|
|
20
|
+
|
|
21
|
+
## Choosing the right multi-agent mode
|
|
22
|
+
|
|
23
|
+
| Mode | Use it for | Communication | Workspace behavior |
|
|
24
|
+
| ----------------------------- | --------------------------------------------------------------- | ---------------------------------- | ----------------------------------------------------------- |
|
|
25
|
+
| `/coordinate` with Agent Team | Different workstreams contributing to one result | Shared tasks and teammate messages | Enforced read-only workers; optional single worktree writer |
|
|
26
|
+
| Subagents | Small delegated tasks | Worker reports to parent | Depends on the selected agent |
|
|
27
|
+
| Arena | Several models competing on the same task | Agents do not collaborate | Isolated worktrees; one winner is selected |
|
|
28
|
+
| Herdr | Coordinating different CLI products or remote terminal sessions | External terminal-level control | Managed outside Qwen Code |
|
|
29
|
+
|
|
30
|
+
The current workflow deliberately reuses the in-process Agent Team runtime and Agent View UI. Teammates normally inherit the session model, although an agent definition can override it. Persistent independent PTY sessions, cross-vendor workers, and remote attach are separate product concerns and are not implemented by `/coordinate`.
|