@qwen-code/qwen-code 0.21.4 → 0.21.5-nightly.20260805.32e274157

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.
Files changed (260) hide show
  1. package/bundled/qc-helper/docs/configuration/model-providers.md +8 -7
  2. package/bundled/qc-helper/docs/configuration/settings.md +16 -16
  3. package/bundled/qc-helper/docs/features/code-review.md +4 -0
  4. package/bundled/qc-helper/docs/features/headless.md +31 -0
  5. package/bundled/qc-helper/docs/features/mcp.md +11 -3
  6. package/bundled/qc-helper/docs/qwen-serve.md +75 -0
  7. package/bundled/review/SKILL.md +90 -52
  8. package/chunks/{MaxSizedBox-5XDFQHTQ.js → MaxSizedBox-H44SGRP7.js} +17 -16
  9. package/chunks/{StandaloneSessionPicker-DLADA54K.js → StandaloneSessionPicker-T5FQMYD3.js} +31 -30
  10. package/chunks/{acpAgent-MVEFZSBS.js → acpAgent-J474KXVM.js} +849 -313
  11. package/chunks/{agent-RB6LCRZX.js → agent-SC23IV5L.js} +17 -16
  12. package/chunks/{agent-headless-272ZACJV.js → agent-headless-2CHR5WJP.js} +17 -16
  13. package/chunks/{artifact-tool-TBOYEKTY.js → artifact-tool-RROCCJDA.js} +1 -1
  14. package/chunks/{askUserQuestion-23Y5WZFJ.js → askUserQuestion-2EPPBPUZ.js} +1 -1
  15. package/chunks/{bridge-GXUXFSHK.js → bridge-BLHYPCCR.js} +21 -19
  16. package/chunks/{channel-settings-store-5UA2SABE.js → channel-settings-store-CDOZ7GCP.js} +22 -21
  17. package/chunks/{channel-worker-group-NDG4WOOZ.js → channel-worker-group-SVGPDH2C.js} +3 -2
  18. package/chunks/{channel-worker-manager-ZCW6UW34.js → channel-worker-manager-72ZK2GTS.js} +3 -2
  19. package/chunks/{channel-worker-supervisor-ATGFTZRN.js → channel-worker-supervisor-NUEDVHX4.js} +2 -1
  20. package/chunks/{chunk-PWCQRLM5.js → chunk-2AGOQ7QO.js} +1 -1
  21. package/chunks/{chunk-AFJSRJTO.js → chunk-2B6FBVWE.js} +1 -1
  22. package/chunks/{chunk-XPAY4EMH.js → chunk-2OSE7Q5O.js} +3 -3
  23. package/chunks/{chunk-DHNFB7NC.js → chunk-2QOLRESU.js} +5 -5
  24. package/chunks/{chunk-UWSXFI6E.js → chunk-2U7GPHA6.js} +6 -2
  25. package/chunks/{chunk-CIUUYB23.js → chunk-3DTM3RPU.js} +1 -1
  26. package/chunks/{chunk-X6QNZOTC.js → chunk-3PRJYMXC.js} +2 -2
  27. package/chunks/{chunk-6KQUOXT5.js → chunk-3XDH6PZM.js} +7 -7
  28. package/chunks/{chunk-DJA7YBLJ.js → chunk-56MC5OM7.js} +2 -2
  29. package/chunks/{chunk-B3EBXISV.js → chunk-5DVP76WL.js} +90 -7
  30. package/chunks/{chunk-2T3RYG4L.js → chunk-5KDLX7ER.js} +919 -323
  31. package/chunks/{chunk-O2ZYHG33.js → chunk-5L6CQ4ZU.js} +131 -67
  32. package/chunks/{chunk-E2SYUEIA.js → chunk-5OAMVWFL.js} +874 -375
  33. package/chunks/{chunk-LPLMUGIM.js → chunk-5X76FZLI.js} +5 -5
  34. package/chunks/{chunk-M2L4TMH3.js → chunk-6HTEECQY.js} +3 -3
  35. package/chunks/{chunk-KHSJSMFS.js → chunk-6I6WUVYI.js} +1 -1
  36. package/chunks/{chunk-LLMGP5IC.js → chunk-6WBWIPBF.js} +2 -2
  37. package/chunks/{chunk-PQ5JFCNL.js → chunk-762UTZQZ.js} +3 -3
  38. package/chunks/{chunk-HBCKZF2A.js → chunk-7EW7CYLA.js} +1 -1
  39. package/chunks/{chunk-4PZ7SPD5.js → chunk-7FKLLD4X.js} +1 -1
  40. package/chunks/{chunk-XSOAW7FC.js → chunk-AE7AKP3E.js} +6 -6
  41. package/chunks/{chunk-UATJZOAJ.js → chunk-ASS3UQB5.js} +3 -3
  42. package/chunks/{chunk-XGA6XHH3.js → chunk-AXOFMDZC.js} +3 -3
  43. package/chunks/chunk-BKHCW2BI.js +41 -0
  44. package/chunks/{chunk-DZPOYHBT.js → chunk-D6FISK43.js} +1 -1
  45. package/chunks/{chunk-CFDR3GNL.js → chunk-D7D7RXIJ.js} +11 -0
  46. package/chunks/{chunk-FPPVCCAH.js → chunk-DNPP267F.js} +1 -1
  47. package/chunks/{chunk-I32URQI7.js → chunk-EA2CKB6L.js} +5 -5
  48. package/chunks/{chunk-C5YFS6VR.js → chunk-EL4W7MGQ.js} +4 -4
  49. package/chunks/{chunk-QXTGHZCX.js → chunk-FDLXWNCE.js} +3 -3
  50. package/chunks/{chunk-PCVMRBLN.js → chunk-FFCSRU3F.js} +1 -1
  51. package/chunks/{chunk-SV5X2EUV.js → chunk-FMU2QVA5.js} +1 -1
  52. package/chunks/{chunk-2ON2O4MD.js → chunk-FV2JYSWS.js} +28 -3
  53. package/chunks/{chunk-KB6VSG2U.js → chunk-GXP44JOS.js} +7 -7
  54. package/chunks/{chunk-BC4LTKEG.js → chunk-HP6MKLWU.js} +1 -1
  55. package/chunks/{chunk-YXEVDA66.js → chunk-HU5TUALO.js} +110 -22
  56. package/chunks/{chunk-2JN5V3I7.js → chunk-ITZK3L4S.js} +1 -1
  57. package/chunks/{chunk-5XGI4IPK.js → chunk-JEVHOCCA.js} +4 -4
  58. package/chunks/{chunk-6ME3PVMM.js → chunk-JNFWMBG6.js} +5 -5
  59. package/chunks/{chunk-3PHUGFPH.js → chunk-JXPOBM4B.js} +1 -1
  60. package/chunks/{chunk-TXZDRD36.js → chunk-LCCBAGRT.js} +5 -5
  61. package/chunks/{chunk-G7XXKQYS.js → chunk-LKRMNRSN.js} +27 -1
  62. package/chunks/{chunk-DOCBJIBL.js → chunk-MB3ILUB7.js} +1 -1
  63. package/chunks/{chunk-HFVW54NL.js → chunk-MBEMTXQT.js} +9 -2
  64. package/chunks/{chunk-RNKGMZEW.js → chunk-MFTOMYE2.js} +1 -1
  65. package/chunks/{chunk-RPYYTL7E.js → chunk-MGSSJT27.js} +2 -2
  66. package/chunks/{chunk-URVJ4AZC.js → chunk-MKMUBBEX.js} +1 -1
  67. package/chunks/{chunk-RL2NPV5E.js → chunk-N5QPOGRQ.js} +1 -1
  68. package/chunks/{chunk-2CCUHZP5.js → chunk-N7PF4KZR.js} +2 -2
  69. package/chunks/{chunk-JDJ7SC4E.js → chunk-NMBDPO63.js} +255 -197
  70. package/chunks/{chunk-M6RNMBUO.js → chunk-NQZ5IVLH.js} +4 -4
  71. package/chunks/{chunk-FV4TUUDE.js → chunk-O4WOWHMZ.js} +1 -1
  72. package/chunks/{chunk-GDREW3U5.js → chunk-OIVG6IHL.js} +2 -2
  73. package/chunks/{chunk-IMGNGOGC.js → chunk-PQ2J56BJ.js} +3 -3
  74. package/chunks/{chunk-EJXATV5R.js → chunk-PWFDZA5A.js} +2 -2
  75. package/chunks/{chunk-OOPFAIWP.js → chunk-Q7EXR3W2.js} +1 -1
  76. package/chunks/{chunk-4CTV3FZH.js → chunk-QJL2AQZI.js} +23 -19
  77. package/chunks/{chunk-SBBHZ3YT.js → chunk-QKWPXGW4.js} +1 -1
  78. package/chunks/{chunk-HI4YGRJD.js → chunk-RDICVTQC.js} +3 -3
  79. package/chunks/{chunk-ZRQY5BBS.js → chunk-REAWLQAU.js} +10 -10
  80. package/chunks/{chunk-BOWKLLWA.js → chunk-SOBA6GIW.js} +3 -3
  81. package/chunks/{chunk-WDLQGFWP.js → chunk-TYWI5NXY.js} +27 -27
  82. package/chunks/{chunk-A7PONO5G.js → chunk-URJHXOSO.js} +2 -2
  83. package/chunks/{chunk-C6FU76AA.js → chunk-V3BNVUFI.js} +1 -1
  84. package/chunks/{chunk-G6KI6B5L.js → chunk-VF6WPN4R.js} +1 -1
  85. package/chunks/{chunk-AWTLFUVN.js → chunk-VT27B2XS.js} +13 -13
  86. package/chunks/{chunk-O4IWFYUW.js → chunk-VY4TEQQ6.js} +4 -4
  87. package/chunks/{chunk-EIAPOG76.js → chunk-WECYW5EE.js} +4 -4
  88. package/chunks/{chunk-PDDYAXL2.js → chunk-WIRAPZ62.js} +7 -0
  89. package/chunks/chunk-WOJZWRAZ.js +123 -0
  90. package/chunks/{chunk-7UXI6P72.js → chunk-WVAESIM6.js} +2 -2
  91. package/chunks/{chunk-P5UJMCVS.js → chunk-XIDYVC4P.js} +4 -4
  92. package/chunks/{chunk-THLV7YGY.js → chunk-XIKKANF4.js} +2 -2
  93. package/chunks/{chunk-FHPKHXHT.js → chunk-XNZBXQCG.js} +4 -0
  94. package/chunks/{chunk-ZLJQIGCH.js → chunk-XZCMQUOF.js} +8 -0
  95. package/chunks/{chunk-PQEIKQXN.js → chunk-YJMFRTLV.js} +24 -6
  96. package/chunks/{chunk-QZQ72YF6.js → chunk-Z26UXKZE.js} +1 -1
  97. package/chunks/{chunk-VA5NLVPT.js → chunk-Z7JILXGX.js} +1 -1
  98. package/chunks/{chunk-UEJESCS7.js → chunk-ZPPP6VCL.js} +1 -1
  99. package/chunks/{computer-use-MDOMIVTL.js → computer-use-ENYMKQAI.js} +17 -16
  100. package/chunks/{config-utils-E3ZQTHGM.js → config-utils-LIRO7NSU.js} +2 -2
  101. package/chunks/{contextCommand-FCK3CB37.js → contextCommand-E7XMHU6M.js} +19 -18
  102. package/chunks/{core-runtime-UHRHHU2O.js → core-runtime-KDIRQ63A.js} +17 -16
  103. package/chunks/{create-sub-session-J32WC64U.js → create-sub-session-6EWLAZD5.js} +1 -1
  104. package/chunks/{create-sub-session-MIXUVLWW.js → create-sub-session-VVEL77UF.js} +17 -16
  105. package/chunks/{cron-create-HMFSHIAR.js → cron-create-CCRIULJE.js} +1 -1
  106. package/chunks/{cron-delete-ZJFHOX57.js → cron-delete-FCFW6BGP.js} +1 -1
  107. package/chunks/{cron-list-ZEX2NBMN.js → cron-list-QDBVCHRF.js} +1 -1
  108. package/chunks/{daemon-status-provider-6LC7LUNR.js → daemon-status-provider-4LMCSLZ4.js} +25 -23
  109. package/chunks/{daemon-trust-policy-Y36HGRAM.js → daemon-trust-policy-XLONWB2C.js} +22 -21
  110. package/chunks/{daemon-trust-policy-monitor-ROTBBDOH.js → daemon-trust-policy-monitor-FHFZ3NNG.js} +22 -21
  111. package/chunks/{deferred-core-runtime-ZQ4JIAJD.js → deferred-core-runtime-QNEBJ3DP.js} +17 -16
  112. package/chunks/{display-image-2WOG27DY.js → display-image-GUJA352B.js} +2 -2
  113. package/chunks/{earlyInputCapture-GPRUNXTP.js → earlyInputCapture-OG5IUF4R.js} +17 -16
  114. package/chunks/{edit-YK3UP6D2.js → edit-E2WNOITJ.js} +18 -17
  115. package/chunks/{enter-worktree-QMVQW7UG.js → enter-worktree-RMCBAAA2.js} +17 -16
  116. package/chunks/{enterPlanMode-TZAYQ5MP.js → enterPlanMode-GISFJA3O.js} +17 -16
  117. package/chunks/{environment-3UQURCZG.js → environment-JXTQGYDN.js} +19 -18
  118. package/chunks/{errors-VBIMTNNI.js → errors-2AYTYCQ3.js} +19 -18
  119. package/chunks/{exit-worktree-4EC7LBBC.js → exit-worktree-HORS3V7Z.js} +17 -16
  120. package/chunks/{exitPlanMode-K5Y3REU2.js → exitPlanMode-V75Y36HJ.js} +17 -16
  121. package/chunks/external-tool-guard-provider-5HTGOPGU.js +273 -0
  122. package/chunks/{fast-path-KS6IE7YR.js → fast-path-HURC6JUT.js} +5 -5
  123. package/chunks/{gemini-LTUCUOJH.js → gemini-WHMD4RGY.js} +70 -55
  124. package/chunks/{geminiContentGenerator-M3HJTHKR.js → geminiContentGenerator-DZB3GPNQ.js} +1 -1
  125. package/chunks/{glob-SKUYGTF2.js → glob-IGTV723M.js} +17 -16
  126. package/chunks/{goal-tools-SPQ5M6D3.js → goal-tools-3AZKX5WQ.js} +2 -18
  127. package/chunks/{grep-SQ7RD7SV.js → grep-SJ2NYUCD.js} +17 -16
  128. package/chunks/{handleAutoUpdate-OK7OX23A.js → handleAutoUpdate-NPBKROGA.js} +21 -20
  129. package/chunks/{i18n-P77YBKY4.js → i18n-CBSMJZ3Z.js} +18 -17
  130. package/chunks/{image-gen-2ZWPS42A.js → image-gen-KNKDTUEN.js} +2 -2
  131. package/chunks/{initializer-PIOYXVW7.js → initializer-JT5P3IQF.js} +22 -21
  132. package/chunks/{installationInfo-IWMM6DPV.js → installationInfo-CZVCKPPZ.js} +18 -17
  133. package/chunks/{list-3DCR4TRI.js → list-MT7T6JVH.js} +25 -24
  134. package/chunks/{list-agents-TWEGRJWO.js → list-agents-GC4BRET7.js} +1 -1
  135. package/chunks/{loadedSettingsAdapter-EJC6CU5N.js → loadedSettingsAdapter-D4JFGYYQ.js} +22 -21
  136. package/chunks/{loggingContentGenerator-2JEFU25T.js → loggingContentGenerator-SFT5CMPU.js} +9 -8
  137. package/chunks/{loop-wakeup-6LLEOQYV.js → loop-wakeup-SQQSBMEY.js} +2 -2
  138. package/chunks/{ls-H5WX22VK.js → ls-63CC3NNX.js} +1 -1
  139. package/chunks/{lsp-G6FXYEIS.js → lsp-P6NVJVNT.js} +1 -1
  140. package/chunks/{managed-npm-update-EGVQPSBR.js → managed-npm-update-YHJW6SGD.js} +18 -17
  141. package/chunks/{mcp-KFFH2MBV.js → mcp-53X2M7XL.js} +22 -21
  142. package/chunks/{monitor-6Y3NDMTI.js → monitor-I43P3MNV.js} +17 -16
  143. package/chunks/{nonInteractiveCli-426IQDPE.js → nonInteractiveCli-UADCDERF.js} +50 -48
  144. package/chunks/{notebook-edit-373IQQLE.js → notebook-edit-WKZUONWV.js} +18 -17
  145. package/chunks/{openaiContentGenerator-PGFSOMIQ.js → openaiContentGenerator-YHF3FIYI.js} +9 -8
  146. package/chunks/{pidfile-Y4INDMHG.js → pidfile-VU37FJS4.js} +17 -16
  147. package/chunks/{processUtils-6BCPCJZW.js → processUtils-VIQVTDWH.js} +2 -2
  148. package/chunks/{qwenContentGenerator-QC3KSHSX.js → qwenContentGenerator-46476NL4.js} +18 -17
  149. package/chunks/{qwenOAuth2-IOAXKJ3L.js → qwenOAuth2-D62OJZFU.js} +1 -1
  150. package/chunks/{read-file-2T54FYZV.js → read-file-6PSNROKB.js} +7 -6
  151. package/chunks/{read-mcp-resource-DRZSI3HE.js → read-mcp-resource-RTSSEER5.js} +1 -1
  152. package/chunks/{record-artifact-IPIRWMFY.js → record-artifact-E6AWQU2Z.js} +2 -2
  153. package/chunks/{resumeHistoryUtils-O62RDCZ3.js → resumeHistoryUtils-QFD6LB7N.js} +20 -19
  154. package/chunks/{ripGrep-3H72KY7S.js → ripGrep-4WZJEOGB.js} +17 -16
  155. package/chunks/{run-qwen-serve-3AIDNNHO.js → run-qwen-serve-SEL3TISE.js} +72 -36
  156. package/chunks/{runtime-AZ4EHHFV.js → runtime-T6JAS7GL.js} +25 -24
  157. package/chunks/{scheduler-L4UUCU4Z.js → scheduler-ZCTDMJJV.js} +17 -16
  158. package/chunks/{sdk-exporters-http-IKNWQJNV.js → sdk-exporters-http-IL2346MJ.js} +6 -2
  159. package/chunks/{sdk-impl-7CUUMQDB.js → sdk-impl-SYKGVWOZ.js} +2 -2
  160. package/chunks/{send-message-LHJLVWFD.js → send-message-TL6FIMMN.js} +3 -3
  161. package/chunks/{serve-CLXGSYOE.js → serve-A7B6VWK7.js} +23 -21
  162. package/chunks/{server-MEAE3WMM.js → server-6CCTTLO4.js} +170 -63
  163. package/chunks/{session-OSLD2LT5.js → session-3YYXW6MZ.js} +51 -49
  164. package/chunks/{settings-ILWAOKA4.js → settings-KWYWA3BS.js} +21 -20
  165. package/chunks/{shell-RT5DBH6B.js → shell-6SUYJURL.js} +17 -16
  166. package/chunks/{skill-LVGA3ATZ.js → skill-ZIQFS6YD.js} +8 -7
  167. package/chunks/{skill-settings-WTZE7EPE.js → skill-settings-23IFV7S3.js} +21 -20
  168. package/chunks/{spawnChannel-BOBS7DVM.js → spawnChannel-AI7QA35U.js} +20 -18
  169. package/chunks/{standalone-update-Y5JB4S2K.js → standalone-update-WNXRFLEA.js} +19 -18
  170. package/chunks/{startInteractiveUI-ZV25CD2S.js → startInteractiveUI-NPZU6YXV.js} +76 -71
  171. package/chunks/{syntheticOutput-EYL7DWO7.js → syntheticOutput-BN7E626U.js} +2 -2
  172. package/chunks/{task-create-4ALZMGP5.js → task-create-2X4UP4F3.js} +4 -4
  173. package/chunks/{task-list-6CVQPORX.js → task-list-WOLJPZ64.js} +1 -1
  174. package/chunks/{task-stop-Y5ZTFVRX.js → task-stop-TNXRNAL2.js} +1 -1
  175. package/chunks/{task-update-IKCEEWJ6.js → task-update-VDUSN36E.js} +4 -4
  176. package/chunks/{team-create-ZVPQIXCP.js → team-create-CMF2RRF2.js} +17 -16
  177. package/chunks/{team-delete-CE7DC53R.js → team-delete-D2VMSDOT.js} +1 -1
  178. package/chunks/{team-plan-approval-5UHUBY3W.js → team-plan-approval-5EET4S3I.js} +17 -16
  179. package/chunks/{terminal-image-renderer-NWC2RALG.js → terminal-image-renderer-TCEAHDFE.js} +18 -17
  180. package/chunks/{theme-manager-5KICSBOB.js → theme-manager-RPYRQJLX.js} +17 -16
  181. package/chunks/{todoWrite-FTZWQRZH.js → todoWrite-MHWHO5UO.js} +1 -1
  182. package/chunks/{tool-search-2AOU77H4.js → tool-search-HJN53LCN.js} +9 -8
  183. package/chunks/{total-session-admission-FR7RMHVL.js → total-session-admission-4FZK4PCR.js} +21 -19
  184. package/chunks/{trustedFolders-V7UUPQXO.js → trustedFolders-RIYUQQJC.js} +18 -17
  185. package/chunks/{update-relaunch-TBWRMQD6.js → update-relaunch-3HVSJU2T.js} +5 -5
  186. package/chunks/{updateCheck-42SPCLH7.js → updateCheck-EE2XXQNJ.js} +20 -19
  187. package/chunks/{useAutoAcceptIndicator-4C2KM345.js → useAutoAcceptIndicator-RRV7MW47.js} +23 -22
  188. package/chunks/{validateNonInterActiveAuth-UVFRXV3Z.js → validateNonInterActiveAuth-3QRII2BS.js} +47 -45
  189. package/chunks/{version-HKTV6TPN.js → version-4KUHPDAC.js} +1 -1
  190. package/chunks/{web-fetch-ZRXSV5AN.js → web-fetch-MXA6HQ42.js} +7 -6
  191. package/chunks/{web-search-WOLV3L6T.js → web-search-YENHOBMC.js} +5 -4
  192. package/chunks/{workflow-F63ES3OB.js → workflow-RYEVBM4L.js} +18 -17
  193. package/chunks/{workspace-providers-status-PJMGMYMC.js → workspace-providers-status-SBTU5TWO.js} +25 -24
  194. package/chunks/{workspace-registration-store-LNBOX5TJ.js → workspace-registration-store-VUMOTODR.js} +1 -1
  195. package/chunks/{workspace-registry-4PR7VDQ3.js → workspace-registry-OZ5ZUBJ6.js} +21 -19
  196. package/chunks/{workspace-service-PVI3VUNQ.js → workspace-service-Y3IGAN4K.js} +26 -25
  197. package/chunks/{workspace-skills-status-2Q5ZISO6.js → workspace-skills-status-FXOIDGOS.js} +23 -22
  198. package/chunks/{workspace-trust-reconciler-NOILUH3C.js → workspace-trust-reconciler-DQI7MYJS.js} +26 -24
  199. package/chunks/{write-file-MOM4JDHG.js → write-file-NK4C3GFC.js} +17 -16
  200. package/chunks/{zoom-image-E3VHRCFU.js → zoom-image-4Y6Y6DAX.js} +7 -6
  201. package/cli-entry.js +14 -0
  202. package/cli.js +16 -12
  203. package/package.json +3 -3
  204. package/web-shell/assets/{arc-GpdmhIxr.js → arc-DtI1rZcQ.js} +1 -1
  205. package/web-shell/assets/{architectureDiagram-3BPJPVTR-C-LhCgH_.js → architectureDiagram-3BPJPVTR-BPZwSVct.js} +1 -1
  206. package/web-shell/assets/{blockDiagram-GPEHLZMM-CzNdTCm-.js → blockDiagram-GPEHLZMM-BIQ03j4C.js} +1 -1
  207. package/web-shell/assets/{c4Diagram-AAUBKEIU-Ce7hbrRM.js → c4Diagram-AAUBKEIU-CB0RyFGm.js} +1 -1
  208. package/web-shell/assets/channel-vfbVFuM1.js +1 -0
  209. package/web-shell/assets/{chunk-2J33WTMH-BBSEn1PK.js → chunk-2J33WTMH-B3WoS-4H.js} +1 -1
  210. package/web-shell/assets/{chunk-4BX2VUAB-_llgjfe5.js → chunk-4BX2VUAB-C98xYZ1X.js} +1 -1
  211. package/web-shell/assets/{chunk-55IACEB6-9fJZ_oZE.js → chunk-55IACEB6-CbTIWRwQ.js} +1 -1
  212. package/web-shell/assets/{chunk-727SXJPM-DgEzQWOu.js → chunk-727SXJPM-DWGnKTPu.js} +1 -1
  213. package/web-shell/assets/{chunk-AQP2D5EJ-B4RthUTc.js → chunk-AQP2D5EJ-4__QyCEX.js} +1 -1
  214. package/web-shell/assets/{chunk-FMBD7UC4-CDI-emMW.js → chunk-FMBD7UC4-DFtG1YCW.js} +1 -1
  215. package/web-shell/assets/{chunk-ND2GUHAM-jM2-yOd8.js → chunk-ND2GUHAM-rvAhW51N.js} +1 -1
  216. package/web-shell/assets/{chunk-QZHKN3VN-XGZHlKPF.js → chunk-QZHKN3VN-DfiU9pwZ.js} +1 -1
  217. package/web-shell/assets/classDiagram-4FO5ZUOK-Cvr8atq3.js +1 -0
  218. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-Cvr8atq3.js +1 -0
  219. package/web-shell/assets/{cose-bilkent-S5V4N54A-90nbW1xQ.js → cose-bilkent-S5V4N54A-Cc4EIdxu.js} +1 -1
  220. package/web-shell/assets/{dagre-BM42HDAG-BtzlyqZ9.js → dagre-BM42HDAG-CZNj4dGW.js} +1 -1
  221. package/web-shell/assets/{diagram-2AECGRRQ-DAaqGWaH.js → diagram-2AECGRRQ-D5tiqQCr.js} +1 -1
  222. package/web-shell/assets/{diagram-5GNKFQAL-CxlzSIFa.js → diagram-5GNKFQAL-pwzw0jVO.js} +1 -1
  223. package/web-shell/assets/{diagram-KO2AKTUF-8kj-1H6u.js → diagram-KO2AKTUF-4CWiM00x.js} +1 -1
  224. package/web-shell/assets/{diagram-LMA3HP47-6NhjFwRF.js → diagram-LMA3HP47-Dd7rc7Qf.js} +1 -1
  225. package/web-shell/assets/{diagram-OG6HWLK6-Bn9kvInz.js → diagram-OG6HWLK6-_vzV52ml.js} +1 -1
  226. package/web-shell/assets/{erDiagram-TEJ5UH35-CaRoGsAt.js → erDiagram-TEJ5UH35-CqbE2bx_.js} +1 -1
  227. package/web-shell/assets/{flowDiagram-I6XJVG4X-TkLweHdf.js → flowDiagram-I6XJVG4X-CaxNr7w4.js} +1 -1
  228. package/web-shell/assets/{ganttDiagram-6RSMTGT7-ruwhCKBl.js → ganttDiagram-6RSMTGT7-AGjrtfUA.js} +1 -1
  229. package/web-shell/assets/{gitGraphDiagram-PVQCEYII-DNI_PxoU.js → gitGraphDiagram-PVQCEYII-ADG2zSkc.js} +1 -1
  230. package/web-shell/assets/{index-p1gz-sxE.js → index-BOryKCqt.js} +1 -1
  231. package/web-shell/assets/index-Cb1LjsCv.css +5 -0
  232. package/web-shell/assets/{index-T4KluHvu.js → index-CvJDaIy8.js} +329 -329
  233. package/web-shell/assets/{infoDiagram-5YYISTIA-DarXq1-A.js → infoDiagram-5YYISTIA-CE3B_IoZ.js} +1 -1
  234. package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-GxDaDlT0.js → ishikawaDiagram-YF4QCWOH-CN-Frhoi.js} +1 -1
  235. package/web-shell/assets/{journeyDiagram-JHISSGLW-mDEoGBzY.js → journeyDiagram-JHISSGLW-CGgezS93.js} +1 -1
  236. package/web-shell/assets/{kanban-definition-UN3LZRKU-Ds0t-Mup.js → kanban-definition-UN3LZRKU-BqWijky5.js} +1 -1
  237. package/web-shell/assets/{linear-05nJ0xZ7.js → linear-D8sfpZf6.js} +1 -1
  238. package/web-shell/assets/{mermaid.core-Bua24ThM.js → mermaid.core-3PA4QrzM.js} +5 -5
  239. package/web-shell/assets/{mindmap-definition-RKZ34NQL-D_zRdvUS.js → mindmap-definition-RKZ34NQL-D9QxwiCY.js} +1 -1
  240. package/web-shell/assets/{pieDiagram-4H26LBE5-DZHr1x16.js → pieDiagram-4H26LBE5-Bioaf6uE.js} +1 -1
  241. package/web-shell/assets/{quadrantDiagram-W4KKPZXB-HA06Wf0h.js → quadrantDiagram-W4KKPZXB-DBb2AS73.js} +1 -1
  242. package/web-shell/assets/{requirementDiagram-4Y6WPE33-DH3urmJf.js → requirementDiagram-4Y6WPE33-DXOvZ3KB.js} +1 -1
  243. package/web-shell/assets/{sankeyDiagram-5OEKKPKP-C4xgz0TT.js → sankeyDiagram-5OEKKPKP-D9qg09Dm.js} +1 -1
  244. package/web-shell/assets/{sequenceDiagram-3UESZ5HK-DAUoZWgv.js → sequenceDiagram-3UESZ5HK-DSAUIfpw.js} +1 -1
  245. package/web-shell/assets/{stateDiagram-AJRCARHV-v7NzXy4l.js → stateDiagram-AJRCARHV-BPZkzfQ3.js} +1 -1
  246. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-DInOqnhZ.js +1 -0
  247. package/web-shell/assets/{timeline-definition-PNZ67QCA-B3GTYR2W.js → timeline-definition-PNZ67QCA-UDaQp9sP.js} +1 -1
  248. package/web-shell/assets/{vennDiagram-CIIHVFJN-BWHjSPAq.js → vennDiagram-CIIHVFJN-2ouhAnHO.js} +1 -1
  249. package/web-shell/assets/{wardley-L42UT6IY-m9r6IUBC.js → wardley-L42UT6IY-Cq_WEvTK.js} +1 -1
  250. package/web-shell/assets/{wardleyDiagram-YWT4CUSO-kT0FkVfK.js → wardleyDiagram-YWT4CUSO-Dt24aXOM.js} +1 -1
  251. package/web-shell/assets/{xychartDiagram-2RQKCTM6-CYRm10z5.js → xychartDiagram-2RQKCTM6-A5Xk2WCH.js} +1 -1
  252. package/web-shell/index.html +2 -2
  253. package/bundled/review/DESIGN.md +0 -724
  254. package/web-shell/assets/channel-95y6Rcp3.js +0 -1
  255. package/web-shell/assets/classDiagram-4FO5ZUOK-pfzVkmjQ.js +0 -1
  256. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-pfzVkmjQ.js +0 -1
  257. package/web-shell/assets/index-WxSvj2tI.css +0 -5
  258. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-CtdFexEf.js +0 -1
  259. package/chunks/{channel-management-service-UHX56NBO.js → channel-management-service-5XPPTWUQ.js} +3 -3
  260. package/chunks/{chunk-LEZFUYPM.js → chunk-7GYP5COR.js} +3 -3
@@ -5,14 +5,14 @@ import {
5
5
  enableMouseEvents,
6
6
  useKeypress,
7
7
  useKeypressContext
8
- } from "./chunk-OOPFAIWP.js";
8
+ } from "./chunk-Q7EXR3W2.js";
9
9
  import {
10
10
  formatSupportedModes,
11
11
  getCommandDisplayName,
12
12
  getCommandSourceBadge,
13
13
  getCommandSourceGroup,
14
14
  getCommandSubcommandNames
15
- } from "./chunk-QZQ72YF6.js";
15
+ } from "./chunk-Z26UXKZE.js";
16
16
  import {
17
17
  INLINE_CODE_SPAN_PATTERN_SOURCE,
18
18
  calculateAverageLatency,
@@ -27,7 +27,7 @@ import {
27
27
  readInlineMathSpanAt,
28
28
  unescapeMarkdownBeforeMath,
29
29
  unescapeMarkdownDollars
30
- } from "./chunk-DJA7YBLJ.js";
30
+ } from "./chunk-56MC5OM7.js";
31
31
  import {
32
32
  MINIMUM_MAX_HEIGHT,
33
33
  MaxSizedBox
@@ -47,7 +47,7 @@ import {
47
47
  estimateCompactToolGroupHeight,
48
48
  isCollapsibleTool,
49
49
  wrapAnsi
50
- } from "./chunk-LPLMUGIM.js";
50
+ } from "./chunk-5X76FZLI.js";
51
51
  import {
52
52
  theme
53
53
  } from "./chunk-U25CMJYY.js";
@@ -71,10 +71,10 @@ import {
71
71
  renderMermaidImageAsync,
72
72
  renderTerminalImage,
73
73
  wasKittyImageWritten
74
- } from "./chunk-PWCQRLM5.js";
74
+ } from "./chunk-2AGOQ7QO.js";
75
75
  import {
76
76
  relaunchApp
77
- } from "./chunk-PCVMRBLN.js";
77
+ } from "./chunk-FFCSRU3F.js";
78
78
  import {
79
79
  resolveColor,
80
80
  themeManager
@@ -104,7 +104,7 @@ import {
104
104
  } from "./chunk-57OAHC2Y.js";
105
105
  import {
106
106
  createLoadedSettingsAdapter
107
- } from "./chunk-C6FU76AA.js";
107
+ } from "./chunk-V3BNVUFI.js";
108
108
  import {
109
109
  formatDuration,
110
110
  formatRelativeTime,
@@ -112,15 +112,15 @@ import {
112
112
  } from "./chunk-3SH53ANB.js";
113
113
  import {
114
114
  getPersistScopeForModelSelection
115
- } from "./chunk-KB6VSG2U.js";
115
+ } from "./chunk-GXP44JOS.js";
116
116
  import {
117
117
  getCurrentLanguage,
118
118
  localizeToolDisplayName,
119
119
  t
120
- } from "./chunk-FV4TUUDE.js";
120
+ } from "./chunk-O4WOWHMZ.js";
121
121
  import {
122
122
  isWorkspaceTrusted
123
- } from "./chunk-URVJ4AZC.js";
123
+ } from "./chunk-MKMUBBEX.js";
124
124
  import {
125
125
  ALL_PROVIDERS,
126
126
  IdeClient,
@@ -143,7 +143,7 @@ import {
143
143
  resolveBaseUrl,
144
144
  resolveMetadataKey,
145
145
  resolveOwnsModel
146
- } from "./chunk-E2SYUEIA.js";
146
+ } from "./chunk-5OAMVWFL.js";
147
147
  import {
148
148
  stripAnsi
149
149
  } from "./chunk-TWPJO254.js";
@@ -158,13 +158,13 @@ import {
158
158
  getMCPServerStatus,
159
159
  isVisionBridgeNoticeDisplay,
160
160
  uiTelemetryService
161
- } from "./chunk-JDJ7SC4E.js";
161
+ } from "./chunk-NMBDPO63.js";
162
162
  import {
163
163
  ToolDisplayNames,
164
164
  ToolNames,
165
165
  ToolNamesMigration,
166
166
  isTerminalImageDisplay
167
- } from "./chunk-CFDR3GNL.js";
167
+ } from "./chunk-D7D7RXIJ.js";
168
168
  import {
169
169
  createDebugLogger,
170
170
  escapePath,
@@ -5,21 +5,21 @@ import {
5
5
  } from "./chunk-57OAHC2Y.js";
6
6
  import {
7
7
  loadSettings
8
- } from "./chunk-KB6VSG2U.js";
8
+ } from "./chunk-GXP44JOS.js";
9
9
  import {
10
10
  getCurrentLanguage,
11
11
  t
12
- } from "./chunk-FV4TUUDE.js";
12
+ } from "./chunk-O4WOWHMZ.js";
13
13
  import {
14
14
  isWorkspaceTrusted
15
- } from "./chunk-URVJ4AZC.js";
15
+ } from "./chunk-MKMUBBEX.js";
16
16
  import {
17
17
  ExtensionManager,
18
18
  getExtensionDescription,
19
19
  getExtensionDisplayName,
20
20
  redactUrlCredentials,
21
21
  require_prompts
22
- } from "./chunk-E2SYUEIA.js";
22
+ } from "./chunk-5OAMVWFL.js";
23
23
  import {
24
24
  stripAnsi
25
25
  } from "./chunk-TWPJO254.js";
@@ -3,17 +3,17 @@
3
3
  import {
4
4
  getGitVersion,
5
5
  getNpmVersion
6
- } from "./chunk-XPAY4EMH.js";
6
+ } from "./chunk-2OSE7Q5O.js";
7
7
  import {
8
8
  buildEnvStatusFromEnv,
9
9
  snapshotProcessEnv
10
- } from "./chunk-GDREW3U5.js";
10
+ } from "./chunk-OIVG6IHL.js";
11
11
  import {
12
12
  mapDomainErrorToErrorKind
13
- } from "./chunk-PDDYAXL2.js";
13
+ } from "./chunk-WIRAPZ62.js";
14
14
  import {
15
15
  canUseRipgrep
16
- } from "./chunk-E2SYUEIA.js";
16
+ } from "./chunk-5OAMVWFL.js";
17
17
  import {
18
18
  init_esbuild_shims
19
19
  } from "./chunk-5O2XNYP6.js";
@@ -130,6 +130,13 @@ var SERVE_CONTROL_EXT_METHODS = {
130
130
  * result: `{ payload }`.
131
131
  */
132
132
  clientMcpMessage: "qwen/control/client_mcp/message",
133
+ /**
134
+ * Called by a private ACP CHILD immediately before a tool executor. The
135
+ * parent validates the runtime-owned session/prompt identity, invokes its
136
+ * configured external provider once, and returns allow/deny. Unavailable
137
+ * unless the daemon explicitly enabled required external guarding.
138
+ */
139
+ externalToolGuardPrepare: "qwen/control/external_tool_guard/prepare",
133
140
  sessionCd: "qwen/control/session/cd",
134
141
  /**
135
142
  * Also called by the CHILD UP into the parent (like `clientMcpMessage`): the
@@ -0,0 +1,123 @@
1
+ // Force strict mode and setup for ESM
2
+ "use strict";
3
+ import {
4
+ normalize
5
+ } from "./chunk-ZBVS26BY.js";
6
+ import {
7
+ init_esbuild_shims
8
+ } from "./chunk-5O2XNYP6.js";
9
+ import {
10
+ __name
11
+ } from "./chunk-J2S4EL5Y.js";
12
+
13
+ // packages/core/src/core/modalityDefaults.ts
14
+ init_esbuild_shims();
15
+ var FULL_MULTIMODAL = {
16
+ image: true,
17
+ pdf: true,
18
+ audio: true,
19
+ video: true
20
+ };
21
+ var MODALITY_PATTERNS = [
22
+ // -------------------
23
+ // Google Gemini — full multimodal
24
+ // -------------------
25
+ [/^gemini-3/, FULL_MULTIMODAL],
26
+ [/^gemini-/, FULL_MULTIMODAL],
27
+ // -------------------
28
+ // OpenAI — image by default for all gpt/o-series models
29
+ // -------------------
30
+ [/^gpt-5/, { image: true }],
31
+ [/^gpt-/, { image: true }],
32
+ [/^o\d/, { image: true }],
33
+ // -------------------
34
+ // Anthropic Claude — image + pdf
35
+ // -------------------
36
+ [/^claude-/, { image: true, pdf: true }],
37
+ // -------------------
38
+ // Alibaba / Qwen
39
+ // -------------------
40
+ // Qwen Plus models: image + video support
41
+ [/^qwen3\.5-plus/, { image: true, video: true }],
42
+ [/^qwen3\.6-plus/, { image: true, video: true }],
43
+ [/^qwen3\.7-plus/, { image: true, video: true }],
44
+ // Qwen Max models (3.8+): image support
45
+ [/^qwen3\.8-max/, { image: true }],
46
+ [/^coder-model$/, { image: true, video: true }],
47
+ // Qwen VL (vision-language) models: image + video
48
+ [/^qwen-vl-/, { image: true, video: true }],
49
+ [/^qwen3-vl-/, { image: true, video: true }],
50
+ // Qwen coder / text models: text-only
51
+ [/^qwen3-coder-/, {}],
52
+ // Qwen3.6-35B-A3B (local quant variants) — image + video
53
+ [/^qwen3\.6-35b/, { image: true, video: true }],
54
+ [/^qwen/, {}],
55
+ // -------------------
56
+ // DeepSeek — text-only
57
+ // -------------------
58
+ [/^deepseek/, {}],
59
+ // -------------------
60
+ // Zhipu GLM
61
+ // -------------------
62
+ [/^glm-4\.5v/, { image: true }],
63
+ [/^glm-5(?:-|$)/, {}],
64
+ [/^glm-/, {}],
65
+ // -------------------
66
+ // MiniMax — M3 supports image + video input; older models default to text-only
67
+ // -------------------
68
+ [/^minimax-m3/i, { image: true, video: true }],
69
+ [/^minimax-/, {}],
70
+ // -------------------
71
+ // Moonshot / Kimi
72
+ // -------------------
73
+ [/^kimi-k3/, { image: true, video: true }],
74
+ [/^kimi-k2\./, { image: true, video: true }],
75
+ [/^kimi-/, {}],
76
+ // -------------------
77
+ // ByteDance Doubao — Seed-series and *-vision / *-vl models accept image
78
+ // input; other Doubao models (pro / lite / text) are text-only.
79
+ // (QwenLM/qwen-code#4876)
80
+ // -------------------
81
+ // seedance (text→video) and seedream (text→image) are generation models with
82
+ // text-only input — exclude them before the multimodal Seed chat series.
83
+ [/^doubao-seed(ance|ream)/, {}],
84
+ [/^doubao-seed/, { image: true }],
85
+ [/^doubao-.*(vision|vl)/, { image: true }],
86
+ [/^doubao/, {}]
87
+ ];
88
+ function defaultModalities(model) {
89
+ const norm = normalize(model);
90
+ for (const [regex, modalities] of MODALITY_PATTERNS) {
91
+ if (regex.test(norm)) {
92
+ return { ...modalities };
93
+ }
94
+ }
95
+ return {};
96
+ }
97
+ __name(defaultModalities, "defaultModalities");
98
+ function isQwenFamilyWireModel(model) {
99
+ if (!model) {
100
+ return false;
101
+ }
102
+ const normalized = model.toLowerCase();
103
+ return normalized.startsWith("qwen") || normalized === "coder-model";
104
+ }
105
+ __name(isQwenFamilyWireModel, "isQwenFamilyWireModel");
106
+ function isTieredEffortWireModel(model) {
107
+ if (!model) {
108
+ return false;
109
+ }
110
+ return model.toLowerCase().startsWith("qwen3.8-max");
111
+ }
112
+ __name(isTieredEffortWireModel, "isTieredEffortWireModel");
113
+
114
+ export {
115
+ defaultModalities,
116
+ isQwenFamilyWireModel,
117
+ isTieredEffortWireModel
118
+ };
119
+ /**
120
+ * @license
121
+ * Copyright 2025 Qwen Team
122
+ * SPDX-License-Identifier: Apache-2.0
123
+ */
@@ -12,7 +12,7 @@ import {
12
12
  } from "./chunk-432XCUHF.js";
13
13
  import {
14
14
  ToolNames
15
- } from "./chunk-CFDR3GNL.js";
15
+ } from "./chunk-D7D7RXIJ.js";
16
16
  import {
17
17
  createDebugLogger,
18
18
  getErrorMessage,
@@ -692,7 +692,7 @@ __name(resolveForkExecutionAllowedTools, "resolveForkExecutionAllowedTools");
692
692
  function registerForkDisplayImageForCache(config, advertisedToolNames) {
693
693
  if (!advertisedToolNames.includes(ToolNames.DISPLAY_IMAGE)) return;
694
694
  config.getToolRegistry().registerFactory(ToolNames.DISPLAY_IMAGE, async () => {
695
- const { DisplayImageTool } = await import("./display-image-2WOG27DY.js");
695
+ const { DisplayImageTool } = await import("./display-image-GUJA352B.js");
696
696
  return new DisplayImageTool(config);
697
697
  });
698
698
  }
@@ -2,19 +2,19 @@
2
2
  "use strict";
3
3
  import {
4
4
  getErrorMessage
5
- } from "./chunk-EJXATV5R.js";
5
+ } from "./chunk-PWFDZA5A.js";
6
6
  import {
7
7
  extensionToOutputString,
8
8
  getExtensionManager
9
- } from "./chunk-O4IWFYUW.js";
9
+ } from "./chunk-VY4TEQQ6.js";
10
10
  import {
11
11
  loadSettings
12
- } from "./chunk-KB6VSG2U.js";
12
+ } from "./chunk-GXP44JOS.js";
13
13
  import {
14
14
  initializeI18n,
15
15
  resolveLanguageSetting,
16
16
  t
17
- } from "./chunk-FV4TUUDE.js";
17
+ } from "./chunk-O4WOWHMZ.js";
18
18
  import {
19
19
  writeStderrLine,
20
20
  writeStdoutLine
@@ -8,10 +8,10 @@ import {
8
8
  } from "./chunk-3Z43GZUQ.js";
9
9
  import {
10
10
  t
11
- } from "./chunk-FV4TUUDE.js";
11
+ } from "./chunk-O4WOWHMZ.js";
12
12
  import {
13
13
  So
14
- } from "./chunk-E2SYUEIA.js";
14
+ } from "./chunk-5OAMVWFL.js";
15
15
  import {
16
16
  createDebugLogger
17
17
  } from "./chunk-3RXUYQJI.js";
@@ -39,6 +39,9 @@ import {
39
39
  import {
40
40
  channelSelectionNames
41
41
  } from "./chunk-ALMR3E6Q.js";
42
+ import {
43
+ EXTERNAL_TOOL_GUARD_TOKEN_ENV
44
+ } from "./chunk-BKHCW2BI.js";
42
45
  import {
43
46
  CHANNEL_WORKER_KILL_GRACE_MS,
44
47
  CHANNEL_WORKER_STARTUP_TIMEOUT_MS,
@@ -182,6 +185,7 @@ function createWorkerEnv(opts) {
182
185
  env[QWEN_DAEMON_WORKSPACE_ENV] = opts.workspace;
183
186
  delete env[QWEN_SERVER_TOKEN_ENV];
184
187
  delete env[QWEN_DAEMON_TOKEN_ENV];
188
+ delete env[EXTERNAL_TOOL_GUARD_TOKEN_ENV];
185
189
  if (opts.daemonToken) {
186
190
  env[QWEN_DAEMON_TOKEN_ENV] = opts.daemonToken;
187
191
  }
@@ -16705,6 +16705,10 @@ var SERVE_CAPABILITY_REGISTRY = {
16705
16705
  // `mcp_budget_warning` and `mcp_child_refused_batch`. Always-on;
16706
16706
  // orthogonal to `mcp_guardrails` (the snapshot surface).
16707
16707
  mcp_guardrail_events: { since: "v1" },
16708
+ // Managed ACP invokes an authenticated external policy provider exactly once
16709
+ // at the final tool-execution boundary. Advertised only after the required
16710
+ // provider completed its startup handshake.
16711
+ external_tool_guard: { since: "v1", modes: ["required"] },
16708
16712
  // Always-on. Daemon supports runtime MCP server mutation via
16709
16713
  // `POST /workspace/mcp/servers` (add) and
16710
16714
  // `DELETE /workspace/mcp/servers/:name` (remove). SDK clients
@@ -16992,6 +16996,10 @@ var CONDITIONAL_SERVE_FEATURES = /* @__PURE__ */ new Map([
16992
16996
  ["require_auth", (toggles) => toggles.requireAuth === true],
16993
16997
  ["mcp_workspace_pool", (toggles) => toggles.mcpPoolActive === true],
16994
16998
  ["mcp_pool_restart", (toggles) => toggles.mcpPoolActive === true],
16999
+ [
17000
+ "external_tool_guard",
17001
+ (toggles) => toggles.externalToolGuardActive === true
17002
+ ],
16995
17003
  ["allow_origin", (toggles) => toggles.allowOriginActive === true],
16996
17004
  [
16997
17005
  "prompt_absolute_deadline",
@@ -3,7 +3,7 @@
3
3
  import {
4
4
  DashScopeOpenAICompatibleProvider,
5
5
  DefaultOpenAICompatibleProvider
6
- } from "./chunk-YXEVDA66.js";
6
+ } from "./chunk-HU5TUALO.js";
7
7
  import {
8
8
  RequestTokenizer
9
9
  } from "./chunk-H36SETQS.js";
@@ -41,7 +41,11 @@ import {
41
41
  import {
42
42
  ProtocolTagSanitizedEvent,
43
43
  logProtocolTagSanitized
44
- } from "./chunk-JDJ7SC4E.js";
44
+ } from "./chunk-NMBDPO63.js";
45
+ import {
46
+ isQwenFamilyWireModel,
47
+ isTieredEffortWireModel
48
+ } from "./chunk-WOJZWRAZ.js";
45
49
  import {
46
50
  reconcileMaxTokens
47
51
  } from "./chunk-ZBVS26BY.js";
@@ -1404,9 +1408,15 @@ var ContentGenerationPipeline = class {
1404
1408
  const reasoningDisabled = request.config?.thinkingConfig?.includeThoughts === false || this.contentGeneratorConfig.reasoning === false;
1405
1409
  if (reasoningDisabled) {
1406
1410
  const typed2 = providerRequest;
1407
- if (!thinkingMandatory && (model.startsWith("qwen") || model === "coder-model")) {
1411
+ if (!thinkingMandatory && isQwenFamilyWireModel(model)) {
1408
1412
  if (isDashScope) {
1409
- typed2["enable_thinking"] = false;
1413
+ if (isTieredEffortWireModel(model)) {
1414
+ delete typed2["enable_thinking"];
1415
+ delete typed2["thinking_budget"];
1416
+ typed2["reasoning_effort"] = "none";
1417
+ } else {
1418
+ typed2["enable_thinking"] = false;
1419
+ }
1410
1420
  } else {
1411
1421
  delete typed2["enable_thinking"];
1412
1422
  const existing = typed2["chat_template_kwargs"] ?? {};
@@ -1443,7 +1453,12 @@ var ContentGenerationPipeline = class {
1443
1453
  }
1444
1454
  }
1445
1455
  const typed = providerRequest;
1446
- if (isDashScope && typed["tool_choice"] === "required" && (thinkingMandatory || typed["enable_thinking"] === true)) {
1456
+ const reasoningEffort = typed["reasoning_effort"];
1457
+ if (isDashScope && typed["tool_choice"] === "required" && (thinkingMandatory || isQwenFamilyWireModel(model) && (typed["enable_thinking"] === true || typeof reasoningEffort === "string" && reasoningEffort !== "none"))) {
1458
+ debugLogger3.debug(
1459
+ "DashScope: dropping tool_choice=required while thinking is enabled",
1460
+ { model, reasoningEffort, thinkingMandatory }
1461
+ );
1447
1462
  delete typed["tool_choice"];
1448
1463
  }
1449
1464
  return providerRequest;
@@ -1532,7 +1547,10 @@ var ContentGenerationPipeline = class {
1532
1547
  const model = context.model.toLowerCase();
1533
1548
  const wireRequest = openaiRequest;
1534
1549
  const chatTemplateKwargs = wireRequest?.["chat_template_kwargs"];
1535
- if ((wireRequest?.["enable_thinking"] === false || chatTemplateKwargs?.["enable_thinking"] === false) && request.config?.abortSignal?.aborted !== true && isRequiredThinkingError(error)) {
1550
+ if ((wireRequest?.["enable_thinking"] === false || chatTemplateKwargs?.["enable_thinking"] === false || // The tier-native family's disable shape (reasoning_effort:
1551
+ // 'none') replaces enable_thinking: false on the wire; recognise
1552
+ // it so runtime learning still fires there.
1553
+ wireRequest?.["reasoning_effort"] === "none") && request.config?.abortSignal?.aborted !== true && isRequiredThinkingError(error)) {
1536
1554
  this.requiredThinkingModels.add(model);
1537
1555
  debugLogger3.warn("Retrying with required thinking enabled", {
1538
1556
  model,
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  getEffectiveSupportedModes
5
- } from "./chunk-DJA7YBLJ.js";
5
+ } from "./chunk-56MC5OM7.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";
@@ -22,7 +22,7 @@ import {
22
22
  } from "./chunk-MOHAWIAW.js";
23
23
  import {
24
24
  ToolNames
25
- } from "./chunk-CFDR3GNL.js";
25
+ } from "./chunk-D7D7RXIJ.js";
26
26
  import {
27
27
  Storage,
28
28
  createDebugLogger,
@@ -5,7 +5,7 @@ import {
5
5
  BaseToolInvocation,
6
6
  ToolDisplayNames,
7
7
  ToolNames
8
- } from "./chunk-CFDR3GNL.js";
8
+ } from "./chunk-D7D7RXIJ.js";
9
9
  import {
10
10
  init_esbuild_shims
11
11
  } from "./chunk-5O2XNYP6.js";
@@ -4,21 +4,21 @@ import {
4
4
  Client,
5
5
  So,
6
6
  StdioClientTransport
7
- } from "./chunk-E2SYUEIA.js";
7
+ } from "./chunk-5OAMVWFL.js";
8
8
  import "./chunk-GOFAQQZA.js";
9
9
  import "./chunk-5M6IDOMF.js";
10
10
  import "./chunk-TWPJO254.js";
11
11
  import "./chunk-H6XPXXMH.js";
12
- import "./chunk-VA5NLVPT.js";
12
+ import "./chunk-Z7JILXGX.js";
13
13
  import "./chunk-I7JDGNG6.js";
14
14
  import "./chunk-A6SX5TAH.js";
15
15
  import "./chunk-33FNCQSY.js";
16
16
  import "./chunk-6PVPNMXU.js";
17
- import "./chunk-DZPOYHBT.js";
17
+ import "./chunk-D6FISK43.js";
18
18
  import "./chunk-IRH27ZC2.js";
19
19
  import "./chunk-QHWCP53L.js";
20
20
  import "./chunk-MOHAWIAW.js";
21
- import "./chunk-X6QNZOTC.js";
21
+ import "./chunk-3PRJYMXC.js";
22
22
  import "./chunk-O6GEWCJA.js";
23
23
  import "./chunk-T26EAKDL.js";
24
24
  import "./chunk-ZPJWUGCS.js";
@@ -28,14 +28,14 @@ import "./chunk-KRXPRVGL.js";
28
28
  import "./chunk-A5YZ3FA2.js";
29
29
  import "./chunk-YAVY33G4.js";
30
30
  import "./chunk-2UISUFHQ.js";
31
- import "./chunk-HFVW54NL.js";
32
- import "./chunk-LLMGP5IC.js";
31
+ import "./chunk-MBEMTXQT.js";
32
+ import "./chunk-6WBWIPBF.js";
33
33
  import "./chunk-S6LOFUVP.js";
34
- import "./chunk-7UXI6P72.js";
34
+ import "./chunk-WVAESIM6.js";
35
35
  import "./chunk-K623ENWT.js";
36
36
  import "./chunk-AQ37AY7B.js";
37
37
  import "./chunk-432XCUHF.js";
38
- import "./chunk-YXEVDA66.js";
38
+ import "./chunk-HU5TUALO.js";
39
39
  import "./chunk-XC656O42.js";
40
40
  import "./chunk-NAVJD2PQ.js";
41
41
  import "./chunk-QYPT3QUD.js";
@@ -44,32 +44,33 @@ import "./chunk-DGEIYUC3.js";
44
44
  import "./chunk-MPHPFVKK.js";
45
45
  import "./chunk-GLNBDYUX.js";
46
46
  import "./chunk-DJ2GSRLV.js";
47
- import "./chunk-SBBHZ3YT.js";
48
- import "./chunk-RPYYTL7E.js";
47
+ import "./chunk-QKWPXGW4.js";
48
+ import "./chunk-MGSSJT27.js";
49
49
  import "./chunk-2J3OJGTL.js";
50
50
  import "./chunk-P3QQPMQA.js";
51
51
  import "./chunk-6O5DVH27.js";
52
52
  import "./chunk-GLCZKT5V.js";
53
53
  import "./chunk-2DNKEBXY.js";
54
- import "./chunk-JDJ7SC4E.js";
54
+ import "./chunk-NMBDPO63.js";
55
+ import "./chunk-WOJZWRAZ.js";
55
56
  import "./chunk-VGC4I5JJ.js";
56
57
  import "./chunk-E4WHKETF.js";
57
- import "./chunk-UEJESCS7.js";
58
+ import "./chunk-ZPPP6VCL.js";
58
59
  import {
59
60
  BaseDeclarativeTool,
60
61
  BaseToolInvocation
61
- } from "./chunk-CFDR3GNL.js";
62
- import "./chunk-TXZDRD36.js";
62
+ } from "./chunk-D7D7RXIJ.js";
63
+ import "./chunk-LCCBAGRT.js";
63
64
  import "./chunk-46UV252V.js";
64
65
  import "./chunk-ZBVS26BY.js";
65
66
  import "./chunk-BFHXDAR7.js";
66
67
  import "./chunk-TYERNYH4.js";
67
68
  import "./chunk-UH7Z7Y45.js";
68
- import "./chunk-O2ZYHG33.js";
69
+ import "./chunk-5L6CQ4ZU.js";
69
70
  import {
70
71
  safeJsonStringify
71
72
  } from "./chunk-W4RQUHY3.js";
72
- import "./chunk-G7XXKQYS.js";
73
+ import "./chunk-LKRMNRSN.js";
73
74
  import "./chunk-3RXUYQJI.js";
74
75
  import "./chunk-VOQXFAY5.js";
75
76
  import "./chunk-75DOP5OR.js";
@@ -5,9 +5,9 @@ import {
5
5
  parseChannelWebhookConfig,
6
6
  parseChannelWebhookConfigLenient,
7
7
  resolveEnvVars
8
- } from "./chunk-LEZFUYPM.js";
9
- import "./chunk-DTAPI453.js";
8
+ } from "./chunk-7GYP5COR.js";
10
9
  import "./chunk-VWOVHOTT.js";
10
+ import "./chunk-DTAPI453.js";
11
11
  import {
12
12
  findCliEntryPath
13
13
  } from "./chunk-V6WHFGST.js";
@@ -4,25 +4,25 @@ import {
4
4
  collectContextData,
5
5
  contextCommand,
6
6
  formatContextUsageText
7
- } from "./chunk-C5YFS6VR.js";
7
+ } from "./chunk-EL4W7MGQ.js";
8
8
  import "./chunk-4WGODMVR.js";
9
9
  import "./chunk-EKTCKZV5.js";
10
- import "./chunk-FV4TUUDE.js";
11
- import "./chunk-E2SYUEIA.js";
10
+ import "./chunk-O4WOWHMZ.js";
11
+ import "./chunk-5OAMVWFL.js";
12
12
  import "./chunk-GOFAQQZA.js";
13
13
  import "./chunk-5M6IDOMF.js";
14
14
  import "./chunk-TWPJO254.js";
15
15
  import "./chunk-H6XPXXMH.js";
16
- import "./chunk-VA5NLVPT.js";
16
+ import "./chunk-Z7JILXGX.js";
17
17
  import "./chunk-I7JDGNG6.js";
18
18
  import "./chunk-A6SX5TAH.js";
19
19
  import "./chunk-33FNCQSY.js";
20
20
  import "./chunk-6PVPNMXU.js";
21
- import "./chunk-DZPOYHBT.js";
21
+ import "./chunk-D6FISK43.js";
22
22
  import "./chunk-IRH27ZC2.js";
23
23
  import "./chunk-QHWCP53L.js";
24
24
  import "./chunk-MOHAWIAW.js";
25
- import "./chunk-X6QNZOTC.js";
25
+ import "./chunk-3PRJYMXC.js";
26
26
  import "./chunk-O6GEWCJA.js";
27
27
  import "./chunk-T26EAKDL.js";
28
28
  import "./chunk-ZPJWUGCS.js";
@@ -32,14 +32,14 @@ import "./chunk-KRXPRVGL.js";
32
32
  import "./chunk-A5YZ3FA2.js";
33
33
  import "./chunk-YAVY33G4.js";
34
34
  import "./chunk-2UISUFHQ.js";
35
- import "./chunk-HFVW54NL.js";
36
- import "./chunk-LLMGP5IC.js";
35
+ import "./chunk-MBEMTXQT.js";
36
+ import "./chunk-6WBWIPBF.js";
37
37
  import "./chunk-S6LOFUVP.js";
38
- import "./chunk-7UXI6P72.js";
38
+ import "./chunk-WVAESIM6.js";
39
39
  import "./chunk-K623ENWT.js";
40
40
  import "./chunk-AQ37AY7B.js";
41
41
  import "./chunk-432XCUHF.js";
42
- import "./chunk-YXEVDA66.js";
42
+ import "./chunk-HU5TUALO.js";
43
43
  import "./chunk-XC656O42.js";
44
44
  import "./chunk-NAVJD2PQ.js";
45
45
  import "./chunk-QYPT3QUD.js";
@@ -48,27 +48,28 @@ import "./chunk-DGEIYUC3.js";
48
48
  import "./chunk-MPHPFVKK.js";
49
49
  import "./chunk-GLNBDYUX.js";
50
50
  import "./chunk-DJ2GSRLV.js";
51
- import "./chunk-SBBHZ3YT.js";
52
- import "./chunk-RPYYTL7E.js";
51
+ import "./chunk-QKWPXGW4.js";
52
+ import "./chunk-MGSSJT27.js";
53
53
  import "./chunk-2J3OJGTL.js";
54
54
  import "./chunk-P3QQPMQA.js";
55
55
  import "./chunk-6O5DVH27.js";
56
56
  import "./chunk-GLCZKT5V.js";
57
57
  import "./chunk-2DNKEBXY.js";
58
- import "./chunk-JDJ7SC4E.js";
58
+ import "./chunk-NMBDPO63.js";
59
+ import "./chunk-WOJZWRAZ.js";
59
60
  import "./chunk-VGC4I5JJ.js";
60
61
  import "./chunk-E4WHKETF.js";
61
- import "./chunk-UEJESCS7.js";
62
- import "./chunk-CFDR3GNL.js";
63
- import "./chunk-TXZDRD36.js";
62
+ import "./chunk-ZPPP6VCL.js";
63
+ import "./chunk-D7D7RXIJ.js";
64
+ import "./chunk-LCCBAGRT.js";
64
65
  import "./chunk-46UV252V.js";
65
66
  import "./chunk-ZBVS26BY.js";
66
67
  import "./chunk-BFHXDAR7.js";
67
68
  import "./chunk-TYERNYH4.js";
68
69
  import "./chunk-UH7Z7Y45.js";
69
- import "./chunk-O2ZYHG33.js";
70
+ import "./chunk-5L6CQ4ZU.js";
70
71
  import "./chunk-W4RQUHY3.js";
71
- import "./chunk-G7XXKQYS.js";
72
+ import "./chunk-LKRMNRSN.js";
72
73
  import "./chunk-3RXUYQJI.js";
73
74
  import "./chunk-VOQXFAY5.js";
74
75
  import "./chunk-OWAK7LMW.js";