@qwen-code/qwen-code 0.23.3 → 0.23.4-dev.codemode-responses.20260914.87437db784

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 (464) hide show
  1. package/bundled/computer-use/SKILL.md +46 -198
  2. package/bundled/computer-use/references/macos.md +208 -0
  3. package/bundled/computer-use/references/windows-linux.md +247 -0
  4. package/bundled/goal-draft/SKILL.md +10 -10
  5. package/bundled/qc-helper/docs/configuration/settings.md +81 -71
  6. package/bundled/qc-helper/docs/extension/getting-started-extensions.md +2 -0
  7. package/bundled/qc-helper/docs/extension/introduction.md +9 -3
  8. package/bundled/qc-helper/docs/features/_meta.ts +1 -0
  9. package/bundled/qc-helper/docs/features/agent-board.md +89 -0
  10. package/bundled/qc-helper/docs/features/channels/dingtalk.md +3 -21
  11. package/bundled/qc-helper/docs/features/channels/dws.md +5 -1
  12. package/bundled/qc-helper/docs/features/channels/overview.md +5 -6
  13. package/bundled/qc-helper/docs/features/code-review.md +18 -4
  14. package/bundled/qc-helper/docs/features/commands.md +9 -0
  15. package/bundled/qc-helper/docs/features/computer-use.md +26 -8
  16. package/bundled/qc-helper/docs/features/cross-session-protocol.md +23 -5
  17. package/bundled/qc-helper/docs/features/followup-suggestions.md +17 -5
  18. package/bundled/qc-helper/docs/features/goals.md +22 -18
  19. package/bundled/qc-helper/docs/features/hooks.md +48 -37
  20. package/bundled/qc-helper/docs/features/skills.md +33 -3
  21. package/bundled/qc-helper/docs/features/status-line.md +2 -0
  22. package/bundled/qc-helper/docs/features/sub-agents.md +27 -0
  23. package/bundled/qc-helper/docs/qwen-serve.md +7 -3
  24. package/bundled/review/SKILL.md +20 -10
  25. package/bundled/review/references/persistence.md +2 -0
  26. package/bundled/workflow-authoring/SKILL.md +442 -0
  27. package/bundled/workflow-creator/SKILL.md +1 -1
  28. package/chunks/{MaxSizedBox-D4LW7RZZ.js → MaxSizedBox-CSMC6NNQ.js} +59 -55
  29. package/chunks/{StandaloneSessionPicker-ALTTRWUP.js → StandaloneSessionPicker-5G46NROB.js} +83 -79
  30. package/chunks/{acp-startup-profiler-KEU6VAYR.js → acp-startup-profiler-RUQNTNU5.js} +2 -2
  31. package/chunks/acp-subagent-executor-4JLSF7SA.js +141 -0
  32. package/chunks/{acpAgent-BBSW7XZG.js → acpAgent-WJ45JV2S.js} +1026 -355
  33. package/chunks/{agent-SQ6OY3QD.js → agent-KWNOVXAD.js} +43 -39
  34. package/chunks/{agent-headless-RI2THRQ7.js → agent-headless-TU5N3GFF.js} +43 -39
  35. package/chunks/{anthropicContentGenerator-JSKMKS6V.js → anthropicContentGenerator-H5YPXIDE.js} +37 -15
  36. package/chunks/{artifact-tool-PMYZCYNH.js → artifact-tool-MFGORTWZ.js} +59 -109
  37. package/chunks/{askUserQuestion-4M4YYIB4.js → askUserQuestion-WS4GUT7C.js} +3 -3
  38. package/chunks/{bridge-DAFMI72L.js → bridge-PF7UX6MH.js} +63 -58
  39. package/chunks/{build-63BIOYWK.js → build-5KWQBWEQ.js} +1 -1
  40. package/chunks/{ca-KC2AISNS.js → ca-GZ4FDJU2.js} +3 -3
  41. package/chunks/{channel-management-service-OWDXVL7R.js → channel-management-service-AFVIT4VH.js} +8 -8
  42. package/chunks/{channel-settings-store-4I6JONT7.js → channel-settings-store-3OVAGIC2.js} +68 -64
  43. package/chunks/{channel-worker-group-F2ZZMLNS.js → channel-worker-group-JR6JOELM.js} +8 -8
  44. package/chunks/{channel-worker-manager-2SZLJJSJ.js → channel-worker-manager-AVKJEZFL.js} +8 -8
  45. package/chunks/{channel-worker-supervisor-ZFNWMG6D.js → channel-worker-supervisor-OOYY7BAQ.js} +5 -5
  46. package/chunks/{chunk-6JACAGYH.js → chunk-2S2WIGCM.js} +1 -1
  47. package/chunks/{chunk-NRXWJXJ4.js → chunk-2YGR3VN6.js} +15 -15
  48. package/chunks/{chunk-IUVIBDKU.js → chunk-2YMRRI2C.js} +9 -10
  49. package/chunks/{chunk-3BTSSIJO.js → chunk-3DOAKZYD.js} +99 -14
  50. package/chunks/{chunk-F53KKZUD.js → chunk-3LMDSCLU.js} +158 -10
  51. package/chunks/{chunk-2ZN3O5FT.js → chunk-457DR2MC.js} +6 -6
  52. package/chunks/{chunk-WG7BL3FY.js → chunk-473RJLIH.js} +1 -1
  53. package/chunks/{chunk-W5ZQMAEM.js → chunk-4Y2I3CI3.js} +1 -1
  54. package/chunks/{chunk-HGEUHUEV.js → chunk-54B2LTKP.js} +1 -1
  55. package/chunks/{chunk-IRH27ZC2.js → chunk-5EZRLTLQ.js} +4 -4
  56. package/chunks/{chunk-DLH7YIX6.js → chunk-5FK4MSHB.js} +3 -3
  57. package/chunks/{chunk-CUEXOHQH.js → chunk-5ODRE7E5.js} +9 -15
  58. package/chunks/{chunk-532WHF4F.js → chunk-5VQR2DD7.js} +2 -2
  59. package/chunks/{chunk-3KQBQ6FM.js → chunk-63WKMKVD.js} +190 -28
  60. package/chunks/{chunk-YBUMTY7B.js → chunk-66N6C4EH.js} +1 -1
  61. package/chunks/{chunk-MLQNSPRZ.js → chunk-6MLDTOHU.js} +15 -5
  62. package/chunks/{chunk-SBRX4BDI.js → chunk-6NKDU7YL.js} +2 -2
  63. package/chunks/{chunk-3UXUOFO6.js → chunk-6TMXX4Z4.js} +9 -10
  64. package/chunks/{chunk-Y2MYW47X.js → chunk-6WXVEDT2.js} +9 -2
  65. package/chunks/{chunk-ZHKTKHMO.js → chunk-7MIBD3LG.js} +1 -1
  66. package/chunks/{chunk-EVTNACMT.js → chunk-A6QMKS5S.js} +12 -12
  67. package/chunks/{chunk-NOAG7N22.js → chunk-A6YU6R5N.js} +2 -2
  68. package/chunks/{chunk-76RGWKLS.js → chunk-ABNX6E6K.js} +1 -1
  69. package/chunks/chunk-ACHCT36C.js +28 -0
  70. package/chunks/{chunk-NE624IVP.js → chunk-ADQUK6WA.js} +1 -1
  71. package/chunks/{chunk-PLLIWEM3.js → chunk-AEWCOE64.js} +2 -2
  72. package/chunks/{chunk-3FPYT6QC.js → chunk-ARDHE6MM.js} +23 -0
  73. package/chunks/{chunk-LILGKQ4B.js → chunk-AXZMWAJV.js} +156 -26
  74. package/chunks/{chunk-SYLECP23.js → chunk-B776VKDA.js} +4 -4
  75. package/chunks/{chunk-AC6KDLH3.js → chunk-BNYQHLPR.js} +1 -1
  76. package/chunks/{chunk-BZM5U74J.js → chunk-BS7ON54G.js} +724 -468
  77. package/chunks/{chunk-TPKQIA7G.js → chunk-BSIOCNDK.js} +1 -1
  78. package/chunks/{chunk-U7O65WKL.js → chunk-BW2SMO6L.js} +1 -1
  79. package/chunks/{chunk-POC3YMHG.js → chunk-BY6CE34S.js} +4 -4
  80. package/chunks/{chunk-RLLRJJDR.js → chunk-C3VNHDWJ.js} +2 -2
  81. package/chunks/{chunk-WBCPROWX.js → chunk-C4HBZQNH.js} +1 -1
  82. package/chunks/{chunk-MSNHNAQZ.js → chunk-C5ABXOC2.js} +3 -3
  83. package/chunks/{chunk-NOO4QFXM.js → chunk-C75BXMPM.js} +1 -3
  84. package/chunks/chunk-CCWWPFZJ.js +191 -0
  85. package/chunks/chunk-CFMZLE3L.js +75 -0
  86. package/chunks/{chunk-N7VWZDWW.js → chunk-CFSBWJBB.js} +4462 -3840
  87. package/chunks/{chunk-KOKPXIAN.js → chunk-CL7JONZN.js} +3 -3
  88. package/chunks/{chunk-AXTFYDXT.js → chunk-CXXAZ2LZ.js} +1 -1
  89. package/chunks/{chunk-JYKWOREU.js → chunk-DBUOMHLZ.js} +13 -3
  90. package/chunks/{chunk-R4Q2PEFV.js → chunk-DLJBYORJ.js} +1 -1
  91. package/chunks/{chunk-DT75RKNH.js → chunk-DNVA2MQ2.js} +3 -3
  92. package/chunks/{chunk-J3TJH52D.js → chunk-DOTF2PF2.js} +1 -1
  93. package/chunks/{chunk-HGAELO7B.js → chunk-DQMBQCTY.js} +2 -2
  94. package/chunks/{chunk-2ALXPGB4.js → chunk-E6IR653O.js} +1 -1
  95. package/chunks/{chunk-ZKYR7QS4.js → chunk-EDB556X7.js} +2 -2
  96. package/chunks/chunk-EKJXDLDD.js +32 -0
  97. package/chunks/{chunk-NUQVB25K.js → chunk-EKMJR7M3.js} +2 -2
  98. package/chunks/{chunk-7QYWGTHB.js → chunk-EPVEPTI3.js} +44 -151
  99. package/chunks/{chunk-GCDXVPFK.js → chunk-EZSSJSKR.js} +31 -7
  100. package/chunks/{chunk-S6Q6Q4P2.js → chunk-FBDHP23D.js} +1 -1
  101. package/chunks/{chunk-UKZ45TJL.js → chunk-FFBP5POK.js} +420 -219
  102. package/chunks/{chunk-3I7W2POO.js → chunk-FGROOEKM.js} +5 -40
  103. package/chunks/{chunk-HNLMYDQE.js → chunk-FMLBBXHB.js} +13 -9
  104. package/chunks/{chunk-SSGAAWLY.js → chunk-GCV4NOHV.js} +95 -73
  105. package/chunks/{chunk-ALMR3E6Q.js → chunk-GDWE23OR.js} +3 -3
  106. package/chunks/{chunk-XBZTAGB7.js → chunk-GMN73IMT.js} +1 -1
  107. package/chunks/{chunk-IAEXTMED.js → chunk-GNV2SFO7.js} +173 -7
  108. package/chunks/{chunk-CXTPVBFA.js → chunk-GSS4SZNG.js} +100 -17
  109. package/chunks/chunk-GXN7DWZZ.js +154 -0
  110. package/chunks/{chunk-SODMFNAR.js → chunk-H23UWPF7.js} +5 -5
  111. package/chunks/{chunk-6HUXPLB5.js → chunk-HEOH7JZY.js} +5 -5
  112. package/chunks/{chunk-DTNV6UZY.js → chunk-HFJSQ4GL.js} +10 -24
  113. package/chunks/{chunk-GOXQL4YH.js → chunk-HWRXJQ6B.js} +2 -2
  114. package/chunks/{chunk-VZUCTJ2P.js → chunk-I6YJZGHS.js} +10 -10
  115. package/chunks/{chunk-RZHU3K6M.js → chunk-IAS753HG.js} +2 -20
  116. package/chunks/{chunk-EDMXGXAK.js → chunk-IBRQG2MP.js} +10 -13
  117. package/chunks/chunk-INGBUYL6.js +230 -0
  118. package/chunks/{chunk-7BXXIQG4.js → chunk-J73WJIMT.js} +36 -72
  119. package/chunks/{chunk-XGYHNWL3.js → chunk-J7LBAKDH.js} +3 -3
  120. package/chunks/{chunk-Z3GF56ME.js → chunk-JAYWZWZF.js} +3 -3
  121. package/chunks/{chunk-DYFOSJHU.js → chunk-JBFC2644.js} +2756 -1153
  122. package/chunks/{chunk-Q5BD56BW.js → chunk-JPCYCFYG.js} +7 -7
  123. package/chunks/{chunk-LG5Y4OWO.js → chunk-JRHKM3YQ.js} +2 -2
  124. package/chunks/{chunk-NHCZJQE4.js → chunk-JZKBMADP.js} +6 -6
  125. package/chunks/{chunk-MF6E7FSA.js → chunk-K7CQWBLT.js} +8 -201
  126. package/chunks/{chunk-K2OJUPOE.js → chunk-KP2FHIFR.js} +12 -0
  127. package/chunks/{chunk-ZU47FBOC.js → chunk-KSIOXYVX.js} +126 -12
  128. package/chunks/{chunk-IV7GDNKC.js → chunk-KZCK5JUN.js} +4 -4
  129. package/chunks/{chunk-3XLK2QMY.js → chunk-L3S2Y2FF.js} +59 -16
  130. package/chunks/{chunk-ZW2EUO2A.js → chunk-L6DIANLD.js} +1 -1
  131. package/chunks/{chunk-6W4HBUA2.js → chunk-LATAUG2M.js} +1 -1
  132. package/chunks/{chunk-RWVD5RRY.js → chunk-LBDASOPR.js} +3 -3
  133. package/chunks/{chunk-OX7IZ2G5.js → chunk-LF5AD7PY.js} +4 -4
  134. package/chunks/{chunk-NMRCXKQ5.js → chunk-LKCNETDW.js} +3 -3
  135. package/chunks/chunk-LMJSPC55.js +260 -0
  136. package/chunks/{chunk-X6K77VHC.js → chunk-LWWRJRCD.js} +1 -1
  137. package/chunks/{chunk-UXEO7E3V.js → chunk-LYD3T3H7.js} +1 -0
  138. package/chunks/{chunk-KFZYGSJN.js → chunk-M3YNPR56.js} +3 -3
  139. package/chunks/{chunk-HBQ2NXOU.js → chunk-MDG6GKSE.js} +2 -2
  140. package/chunks/{chunk-E4UEO3XM.js → chunk-ME4JBHSB.js} +324 -2
  141. package/chunks/{chunk-BV6Q5HMY.js → chunk-MJHLKWGJ.js} +8 -7
  142. package/chunks/{chunk-NFYEQRLG.js → chunk-MQRLLBMQ.js} +1 -1
  143. package/chunks/{chunk-O4KNCAX4.js → chunk-NCPFOLM2.js} +11 -0
  144. package/chunks/{chunk-2SZH22YO.js → chunk-NJ2OFVUX.js} +115 -97
  145. package/chunks/{chunk-DAWWT2ID.js → chunk-NN4EC2WO.js} +1374 -2164
  146. package/chunks/{chunk-6MBXY6WM.js → chunk-NRQI3PGS.js} +1 -1
  147. package/chunks/{chunk-HBU7EKY4.js → chunk-NRUKL236.js} +45 -15
  148. package/chunks/{chunk-53GWJOLP.js → chunk-NTCFKGQF.js} +3 -1
  149. package/chunks/{chunk-3CZ2BQV6.js → chunk-NXUZFW3G.js} +49 -19
  150. package/chunks/{chunk-X7UJKOHZ.js → chunk-OMDXAHCT.js} +4 -6
  151. package/chunks/{chunk-5GLDOLNQ.js → chunk-OWUAZXXN.js} +4 -3
  152. package/chunks/{chunk-2UWQX4FP.js → chunk-OZEV3R3S.js} +1 -1
  153. package/chunks/{acp-subagent-executor-LEUN3N7N.js → chunk-PAPBT3WP.js} +11 -110
  154. package/chunks/{chunk-7ICHPMBQ.js → chunk-PHSQVB6D.js} +4 -4
  155. package/chunks/{chunk-FCQJLMA2.js → chunk-Q3TFRP5G.js} +178 -8
  156. package/chunks/{chunk-YQHLFCPU.js → chunk-Q5CCYZD3.js} +32 -24
  157. package/chunks/chunk-QQL5BFOL.js +1416 -0
  158. package/chunks/{chunk-ZKZHSB5W.js → chunk-QR4Q425T.js} +9 -9
  159. package/chunks/{chunk-J6MB5ZHZ.js → chunk-QZW6WRB7.js} +2 -1
  160. package/chunks/{chunk-TP6FYVQT.js → chunk-RSWBT7AZ.js} +33 -1
  161. package/chunks/{chunk-2PJRI3EH.js → chunk-RVOD66ID.js} +218 -43
  162. package/chunks/{chunk-W5FIP7FC.js → chunk-S3PU3CNW.js} +5 -5
  163. package/chunks/chunk-S7UQ3V2H.js +87 -0
  164. package/chunks/{chunk-N6VQ37ZZ.js → chunk-SFL6U7U7.js} +1 -1
  165. package/chunks/{chunk-MOS5OAOG.js → chunk-SROLVJFY.js} +6 -6
  166. package/chunks/{chunk-HUXPEUFL.js → chunk-SYROIHU7.js} +1 -1
  167. package/chunks/{chunk-E7LB57MB.js → chunk-T3LUMYFP.js} +6 -6
  168. package/chunks/{chunk-PSPAM24S.js → chunk-TBSCTWKF.js} +6 -0
  169. package/chunks/{chunk-5KI7ZDTB.js → chunk-TV5WDW7R.js} +24 -12
  170. package/chunks/{chunk-NMCDMLHL.js → chunk-TXUJOKVR.js} +50 -35
  171. package/chunks/{chunk-NHJKAR6E.js → chunk-TYWLBEL2.js} +972 -18
  172. package/chunks/chunk-U6H3XTFA.js +95 -0
  173. package/chunks/{chunk-GSILBZLN.js → chunk-U7RWQBGZ.js} +2 -2
  174. package/chunks/{chunk-7APZIRH3.js → chunk-V3CMBOQ6.js} +5 -5
  175. package/chunks/{chunk-JXNIF2O5.js → chunk-V545KI73.js} +1 -1
  176. package/chunks/chunk-VGY2RGXL.js +100 -0
  177. package/chunks/{chunk-TBEXLLAO.js → chunk-VRQZESKP.js} +1 -1
  178. package/chunks/{chunk-FN3JNDRU.js → chunk-VVI7MK3V.js} +3 -3
  179. package/chunks/{chunk-EUURTIV6.js → chunk-WBSJ6VPZ.js} +10 -2
  180. package/chunks/{chunk-NLNQNBZ2.js → chunk-WD6YQI5M.js} +1 -1
  181. package/chunks/chunk-WFNEY5G7.js +347 -0
  182. package/chunks/{chunk-XKBFYTCD.js → chunk-WK6DEH3Q.js} +46 -0
  183. package/chunks/{chunk-36HCNKDS.js → chunk-WKVZES7O.js} +65 -14
  184. package/chunks/{chunk-BWAMMKIS.js → chunk-WLLRNQVT.js} +135 -6
  185. package/chunks/{chunk-MHAADZOZ.js → chunk-WMSP3XZK.js} +3 -3
  186. package/chunks/{chunk-IL5M5NYD.js → chunk-WUTXSXPP.js} +11 -9
  187. package/chunks/{chunk-NJQTG2G3.js → chunk-XE5ZFBVD.js} +11 -11
  188. package/chunks/{chunk-OLTN767L.js → chunk-XO3Z27IL.js} +2 -2
  189. package/chunks/{chunk-VX63RJXE.js → chunk-XX5HQLCZ.js} +7 -0
  190. package/chunks/{chunk-2Z3T52OC.js → chunk-Y5TM7SBV.js} +7 -2
  191. package/chunks/{chunk-V2P3DOQR.js → chunk-YDFOHRS5.js} +1 -1
  192. package/chunks/{chunk-QMUYLYT5.js → chunk-YGFJ6BRT.js} +1 -1
  193. package/chunks/{chunk-LK2WUCDQ.js → chunk-YM6KUQ2S.js} +1 -1
  194. package/chunks/{chunk-F42YYSCK.js → chunk-YVF4PKCV.js} +8 -8
  195. package/chunks/{chunk-LDVNJZGH.js → chunk-Z2H5HQS3.js} +17 -8
  196. package/chunks/chunk-Z72PLR74.js +36 -0
  197. package/chunks/{chunk-BWQLXU37.js → chunk-ZDHXRKRG.js} +381 -86
  198. package/chunks/{chunk-BHTYRHJF.js → chunk-ZJ7JQUGY.js} +4 -1
  199. package/chunks/{chunk-4ALNJDHL.js → chunk-ZKIAGIGH.js} +87 -4
  200. package/chunks/{chunk-VG3Q2NC4.js → chunk-ZNI3YJHS.js} +32 -12
  201. package/chunks/chunk-ZRZZLM37.js +2780 -0
  202. package/chunks/{chunk-Q2LVVIKF.js → chunk-ZZUXUBEB.js} +29 -12
  203. package/chunks/codex-subagent-executor-SM3TUSBA.js +586 -0
  204. package/chunks/{config-utils-L6KLDYIV.js → config-utils-JHKHFOG6.js} +60 -56
  205. package/chunks/{contextCommand-UYEH7NIU.js → contextCommand-XE4NDYQW.js} +58 -54
  206. package/chunks/{core-runtime-NVHT3Z3V.js → core-runtime-PNCWH3RE.js} +58 -55
  207. package/chunks/{create-sub-session-TIGCFGCS.js → create-sub-session-MSGNIM37.js} +5 -2
  208. package/chunks/{create-sub-session-YWASE5VH.js → create-sub-session-P7E5Y3HY.js} +169 -89
  209. package/chunks/{cron-create-AKWX67FO.js → cron-create-U2JJ5CCF.js} +3 -3
  210. package/chunks/{cron-delete-XPB6IYZJ.js → cron-delete-7DM4LJWD.js} +2 -2
  211. package/chunks/{cron-list-XBKO4WU5.js → cron-list-VCUSZK2Y.js} +2 -2
  212. package/chunks/{daemon-G5TYKZD6.js → daemon-NJB4PWZ7.js} +3 -1
  213. package/chunks/{daemon-git-worktree-guard-FOW4RQSK.js → daemon-git-worktree-guard-JFD5VZRN.js} +58 -54
  214. package/chunks/{daemon-status-provider-O5KQZYMP.js → daemon-status-provider-A3VFVFWW.js} +68 -63
  215. package/chunks/{daemon-trust-policy-3ATXEON7.js → daemon-trust-policy-NPZ47MZH.js} +64 -60
  216. package/chunks/{daemon-trust-policy-monitor-7MCNDNEC.js → daemon-trust-policy-monitor-XG2CHL3Z.js} +64 -60
  217. package/chunks/{de-UU2YTO37.js → de-VGY3VNBU.js} +3 -3
  218. package/chunks/{deferred-core-runtime-JK5IXL5K.js → deferred-core-runtime-V42EMU27.js} +56 -52
  219. package/chunks/{discovery-XP4RMDUM.js → discovery-5KUEPR65.js} +2 -2
  220. package/chunks/{display-image-NAH3AZ63.js → display-image-QTHALY6N.js} +3 -3
  221. package/chunks/{dist-KLZ7XGEQ.js → dist-2QYIVNS6.js} +1 -4
  222. package/chunks/{dist-AHJYPSJL.js → dist-GUB7QRYA.js} +2 -5
  223. package/chunks/{dist-ZXTZTE54.js → dist-MPUZZOG5.js} +4 -17
  224. package/chunks/{dist-F2DVGTL3.js → dist-NIOJXMGY.js} +111 -101
  225. package/chunks/{dist-KJGRVIGJ.js → dist-PA7WPFVE.js} +5 -36
  226. package/chunks/{dist-AIKC5E5P.js → dist-SE4J6Z4O.js} +43 -669
  227. package/chunks/{dist-H6G3K26N.js → dist-T6DDPDLQ.js} +14 -34
  228. package/chunks/{dist-GWNQVPZT.js → dist-TFGETXFN.js} +10 -33
  229. package/chunks/{dist-ZA52JXAS.js → dist-VDLSBCLM.js} +1 -5
  230. package/chunks/{edit-SY35KYIE.js → edit-E2ZGJDBJ.js} +46 -42
  231. package/chunks/{en-CAJHTIQT.js → en-E5ZO5TZW.js} +5 -3
  232. package/chunks/{enter-worktree-54L5QJ3N.js → enter-worktree-CAARFWBI.js} +6 -5
  233. package/chunks/{enterPlanMode-HXX6KQJR.js → enterPlanMode-442YAAZB.js} +43 -39
  234. package/chunks/{environment-DKXHG4HB.js → environment-DCJ5FVHM.js} +59 -55
  235. package/chunks/{errors-ADY7LQJJ.js → errors-ZWTDW2NJ.js} +58 -54
  236. package/chunks/exec-RPKEY6HP.js +505 -0
  237. package/chunks/{exit-worktree-EORJDKDS.js → exit-worktree-JXGGUOBP.js} +6 -5
  238. package/chunks/{exitPlanMode-HSK2CQI6.js → exitPlanMode-4PLQOFOO.js} +43 -39
  239. package/chunks/{fast-path-U636VWN2.js → fast-path-DBSGDGB3.js} +10 -10
  240. package/chunks/{fast-path-settings-V7MI7EZJ.js → fast-path-settings-XDYX7X5Z.js} +2 -2
  241. package/chunks/{fr-HKNWVXRJ.js → fr-UAZJJH5N.js} +3 -3
  242. package/chunks/{glob-GUGGTH5L.js → glob-VWOE4W7K.js} +43 -39
  243. package/chunks/{goal-tools-PXYRSQGX.js → goal-tools-K6SIBXMB.js} +49 -41
  244. package/chunks/{grep-3PKFKLCA.js → grep-H2I33VAO.js} +8 -3
  245. package/chunks/{handleAutoUpdate-5KHS4HIN.js → handleAutoUpdate-NCC3XELY.js} +61 -57
  246. package/chunks/{i18n-KSGKMUPT.js → i18n-GO7JI4PT.js} +57 -53
  247. package/chunks/{image-gen-OCCR2WWU.js → image-gen-5G2TQ3DY.js} +6 -5
  248. package/chunks/{initializer-YYT5XEZF.js → initializer-BXKAW5A6.js} +64 -60
  249. package/chunks/{installationInfo-UNSBPYW2.js → installationInfo-5JONIX62.js} +57 -53
  250. package/chunks/{ja-GJS5RZGU.js → ja-2RITCMAJ.js} +3 -3
  251. package/chunks/list-QW74LCLS.js +133 -0
  252. package/chunks/{list-agents-QLDXS5OD.js → list-agents-EWDCEPIW.js} +3 -3
  253. package/chunks/{llm-XGGLBGPH.js → llm-FJHSMJTM.js} +161 -125
  254. package/chunks/{llm-content-generator-ZHQQT5W7.js → llm-content-generator-3VLLPQS4.js} +14 -7
  255. package/chunks/{loadedSettingsAdapter-3DXLASK7.js → loadedSettingsAdapter-OLMQSKVC.js} +64 -60
  256. package/chunks/{loggingContentGenerator-V72OCCJO.js → loggingContentGenerator-IMLIJULY.js} +47 -43
  257. package/chunks/{loop-wakeup-HHMYIC7Z.js → loop-wakeup-VG6CGBQA.js} +4 -4
  258. package/chunks/{ls-N7ABR6HI.js → ls-6ZB3BEIR.js} +1 -1
  259. package/chunks/{lsp-LTOFWG5P.js → lsp-M54FQARP.js} +5 -1
  260. package/chunks/{managed-npm-update-HV5LPZH2.js → managed-npm-update-LXLBWCNA.js} +57 -53
  261. package/chunks/mcp-FOXA3372.js +127 -0
  262. package/chunks/model-configuration-SCOI2KPF.js +140 -0
  263. package/chunks/modelConfigUtils-EA44S64C.js +119 -0
  264. package/chunks/{monitor-TLBNM4MV.js → monitor-TJAHYCCY.js} +43 -39
  265. package/chunks/{nonInteractiveCli-LSJSQ2W4.js → nonInteractiveCli-QH2HABWC.js} +112 -107
  266. package/chunks/{notebook-edit-OSPOLZP6.js → notebook-edit-WEMSBUBS.js} +45 -41
  267. package/chunks/{openaiContentGenerator-BE4S5TRD.js → openaiContentGenerator-WD5DWYOA.js} +24 -19
  268. package/chunks/{openaiResponsesContentGenerator-RTCAJ5V5.js → openaiResponsesContentGenerator-AWRYZLJU.js} +110 -19
  269. package/chunks/{pidfile-H32FEPWA.js → pidfile-TQL2LCEG.js} +56 -52
  270. package/chunks/{processUtils-SSLIPDEA.js → processUtils-6ZU56DCI.js} +2 -2
  271. package/chunks/{prompt-terminal-ledger-I5SLL6UF.js → prompt-terminal-ledger-3HAKHXFV.js} +57 -53
  272. package/chunks/{pt-FXMYXEUV.js → pt-5ZF7ZQUV.js} +3 -3
  273. package/chunks/{qwenContentGenerator-TMQC623Z.js → qwenContentGenerator-3OIZQZLC.js} +47 -43
  274. package/chunks/{qwenOAuth2-3ZRQHHTC.js → qwenOAuth2-WIEUEFEY.js} +5 -4
  275. package/chunks/{read-file-T2QAIZE2.js → read-file-2PWWL6J2.js} +9 -8
  276. package/chunks/{read-mcp-resource-B37WANAQ.js → read-mcp-resource-LPSWXVOD.js} +1 -1
  277. package/chunks/{record-artifact-OAXWXZ5D.js → record-artifact-PXMNP7GZ.js} +3 -3
  278. package/chunks/{record-source-D7R7X3GT.js → record-source-2GSY5JD5.js} +6 -6
  279. package/chunks/{report-findings-AR3VC6EQ.js → report-findings-W6GR7SYZ.js} +4 -4
  280. package/chunks/{request-shutdown-IKNWTX5M.js → request-shutdown-53SNYGVR.js} +5 -5
  281. package/chunks/{resumeHistoryUtils-QLKDH5GY.js → resumeHistoryUtils-S4TEUTKE.js} +63 -59
  282. package/chunks/{ripGrep-YGWL7KCV.js → ripGrep-5NMGLMLX.js} +13 -11
  283. package/chunks/{ru-RMHURE5U.js → ru-7BNZFQKG.js} +3 -3
  284. package/chunks/{run-qwen-serve-26KZDECC.js → run-qwen-serve-6MGYRK4V.js} +314 -127
  285. package/chunks/{runtime-BMEIVDDG.js → runtime-ZJYUQCPP.js} +69 -65
  286. package/chunks/{scheduled-tasks-NCFPP6VQ.js → scheduled-tasks-5MKF4EV3.js} +66 -60
  287. package/chunks/{scheduler-47TVMUVN.js → scheduler-72DZWRH5.js} +58 -54
  288. package/chunks/{sdk-exporters-http-VWTF4W6K.js → sdk-exporters-http-3R2TRQHE.js} +2 -1
  289. package/chunks/{sdk-impl-G6FVTBQZ.js → sdk-impl-4WF3VZ2F.js} +3 -3
  290. package/chunks/{send-message-TWOGWCBG.js → send-message-UMJKN27Q.js} +7 -7
  291. package/chunks/{serve-KL3G6LQQ.js → serve-7ZDMMA7I.js} +66 -62
  292. package/chunks/{server-LBPYXZ5G.js → server-ONK5RTEV.js} +783 -350
  293. package/chunks/{session-YG6742LO.js → session-XQW2LM4S.js} +117 -112
  294. package/chunks/{session-attachments-root-OUBQDYC4.js → session-attachments-root-Q5IUCMQV.js} +56 -52
  295. package/chunks/{session-pr-refresh-EKGMYNAW.js → session-pr-refresh-MVECWT3W.js} +66 -60
  296. package/chunks/{settings-DDNHJX2L.js → settings-DL6K2HQ3.js} +67 -63
  297. package/chunks/{shell-KUCXWITU.js → shell-BLP25QJU.js} +43 -39
  298. package/chunks/{skill-JQLKPNWZ.js → skill-7KURUNLD.js} +128 -23
  299. package/chunks/{skill-settings-XERQCUXZ.js → skill-settings-MY76LM46.js} +72 -60
  300. package/chunks/{spawnChannel-GQ45QFGB.js → spawnChannel-IJLH3Z74.js} +60 -55
  301. package/chunks/{standalone-update-PRF3ILGZ.js → standalone-update-YQKN7VNO.js} +58 -54
  302. package/chunks/{start-opentui-ui-JDSOZE3N.js → start-opentui-ui-ORNGKZTG.js} +2693 -2160
  303. package/chunks/{startInteractiveUI-RRW3JVHN.js → startInteractiveUI-PRLIKB4U.js} +1610 -1773
  304. package/chunks/{syntheticOutput-F6F27JMK.js → syntheticOutput-EX5L5GYI.js} +2 -2
  305. package/chunks/{task-create-Y623TBHB.js → task-create-75HVPEAH.js} +7 -7
  306. package/chunks/{task-list-FCPEEGWL.js → task-list-ZLJSMRFA.js} +2 -2
  307. package/chunks/{task-stop-QTKZXLPH.js → task-stop-MD7P6QGK.js} +1 -1
  308. package/chunks/{task-update-YLSXF25N.js → task-update-RI7QNVDP.js} +20 -13
  309. package/chunks/{team-create-5DRLOLOE.js → team-create-ANLKOQ44.js} +43 -39
  310. package/chunks/{team-delete-S7TLHZCF.js → team-delete-RIDINW6I.js} +1 -1
  311. package/chunks/{team-plan-approval-MWSGAL5T.js → team-plan-approval-EFUENI6Y.js} +43 -39
  312. package/chunks/{terminal-image-renderer-H7PD4FQW.js → terminal-image-renderer-CXMFIWKC.js} +58 -54
  313. package/chunks/{theme-manager-7AV73D6R.js → theme-manager-JUFYQDQQ.js} +56 -52
  314. package/chunks/{todoWrite-5QI2H2FW.js → todoWrite-XSTG2VT5.js} +6 -3
  315. package/chunks/{tool-search-UGYTBLUV.js → tool-search-SNCEA4VA.js} +17 -12
  316. package/chunks/{total-session-admission-JIHSTJ5S.js → total-session-admission-UHYNUO3L.js} +63 -58
  317. package/chunks/{tree-sitter-4D7QS7F6.js → tree-sitter-NZ3QACD7.js} +1 -1
  318. package/chunks/{tree-sitter-bash-VEJGF5XF.js → tree-sitter-bash-WXHLMORC.js} +1 -1
  319. package/chunks/{trustedFolders-5VCBXFOP.js → trustedFolders-YBR5URPG.js} +57 -53
  320. package/chunks/{update-relaunch-4LF3APCV.js → update-relaunch-L6MTSN76.js} +5 -5
  321. package/chunks/{updateCheck-4T3WUE5F.js → updateCheck-Z3SPZXHC.js} +60 -56
  322. package/chunks/{useAutoAcceptIndicator-UMGB64Z6.js → useAutoAcceptIndicator-PR5XGMO6.js} +68 -64
  323. package/chunks/{validateNonInterActiveAuth-GFJ72U2C.js → validateNonInterActiveAuth-KFLTWEYW.js} +109 -104
  324. package/chunks/{version-EAAZN4T2.js → version-NGAKFVUF.js} +1 -1
  325. package/chunks/{web-fetch-VRU3A2NI.js → web-fetch-WPGTHGU5.js} +15 -13
  326. package/chunks/web-search-JT63IJJV.js +39 -0
  327. package/chunks/{web-shell-static-CCN4JZEE.js → web-shell-static-T7UGLVE4.js} +2 -7
  328. package/chunks/{workflow-UHPFALVZ.js → workflow-EB63BAL4.js} +179 -79
  329. package/chunks/workspace-providers-status-NEPR67D2.js +133 -0
  330. package/chunks/{workspace-registration-store-A7RGKW62.js → workspace-registration-store-CFWXOMGH.js} +2 -2
  331. package/chunks/{workspace-registry-C2NGE6SD.js → workspace-registry-6KRZXOGB.js} +63 -58
  332. package/chunks/{workspace-runtime-coordinator-QKMZ24YF.js → workspace-runtime-coordinator-SP4X3UVH.js} +66 -59
  333. package/chunks/{workspace-service-RQTTAGGC.js → workspace-service-PRMYJTTV.js} +70 -65
  334. package/chunks/workspace-skills-status-VYTZJ5MB.js +130 -0
  335. package/chunks/{workspace-trust-reconciler-KFWATZUU.js → workspace-trust-reconciler-B4QMGDMI.js} +73 -68
  336. package/chunks/{write-file-DPVB2SBQ.js → write-file-EGBMW7TS.js} +45 -41
  337. package/chunks/{zh-TW-2K2WRFPY.js → zh-TW-7PRVUGLW.js} +5 -3
  338. package/chunks/{zh-S5V3Z5CR.js → zh-V2EYTYJP.js} +5 -3
  339. package/chunks/{zoom-image-S7AWLAPC.js → zoom-image-UR6K2LDR.js} +11 -10
  340. package/cli.js +18 -17
  341. package/codeModeHost.js +4425 -0
  342. package/export-transcript-document.css +1 -1
  343. package/export-transcript-document.js +151 -151
  344. package/locales/ca.js +5 -6
  345. package/locales/de.js +5 -6
  346. package/locales/en.js +7 -6
  347. package/locales/fr.js +6 -6
  348. package/locales/ja.js +5 -6
  349. package/locales/pt.js +5 -6
  350. package/locales/ru.js +6 -6
  351. package/locales/zh-TW.js +7 -6
  352. package/locales/zh.js +7 -6
  353. package/package.json +4 -3
  354. package/web-shell/assets/{abnfDiagram-VCTEODGH-nU24rpIE.js → abnfDiagram-VCTEODGH-S_JCiANq.js} +1 -1
  355. package/web-shell/assets/{arc-D1hTu8QI.js → arc-DP-839Xn.js} +1 -1
  356. package/web-shell/assets/architectureDiagram-5GKGNRK7-C8rCd2KK.js +36 -0
  357. package/web-shell/assets/blockDiagram-NRAW4CY4-DQR82jwr.js +129 -0
  358. package/web-shell/assets/{c4Diagram-UCG6FXSJ-kEFoC1ei.js → c4Diagram-UCG6FXSJ-D21PNMRP.js} +4 -4
  359. package/web-shell/assets/channel-BgGrpX_z.js +1 -0
  360. package/web-shell/assets/{chunk-2Q5K7J3B-DbT9wS7j.js → chunk-2Q5K7J3B-KdDInGLi.js} +1 -1
  361. package/web-shell/assets/{chunk-5VM5RSS4-CNbULt6O.js → chunk-5VM5RSS4-ltb7zRmH.js} +1 -1
  362. package/web-shell/assets/{chunk-F27PBJKO-CbQRy4Tb.js → chunk-F27PBJKO-DcpQA0Ng.js} +1 -1
  363. package/web-shell/assets/chunk-G27WJ6UU-C8NDZxcy.js +231 -0
  364. package/web-shell/assets/chunk-JWPE2WC7-hXhhHTs1.js +1 -0
  365. package/web-shell/assets/chunk-LCL6LL3I-CLaOR-Hl.js +206 -0
  366. package/web-shell/assets/chunk-POPQ4Y6H-Y5_qlB1N.js +1 -0
  367. package/web-shell/assets/{chunk-SVP7TREG-DyBb2Axj.js → chunk-SVP7TREG-BWX2Voh7.js} +4 -4
  368. package/web-shell/assets/{chunk-XXDRQBXY-BIA0eb5B.js → chunk-XXDRQBXY-1wmj_kXI.js} +1 -1
  369. package/web-shell/assets/classDiagram-DTDB5LWJ-jUH7ADYs.js +1 -0
  370. package/web-shell/assets/classDiagram-v2-JRS7N3AN-jUH7ADYs.js +1 -0
  371. package/web-shell/assets/cose-bilkent-JH36ORCC-DpLc-cdd.js +1 -0
  372. package/web-shell/assets/cynefin-OW5HDTMX-DhxGiPZW.js +178 -0
  373. package/web-shell/assets/{cynefinDiagram-5FMLGOSQ-LENf_IUy.js → cynefinDiagram-5FMLGOSQ-Dl3jfBry.js} +1 -1
  374. package/web-shell/assets/{cytoscape.esm-CUqq0XTU.js → cytoscape.esm-DJK6lGiH.js} +3 -3
  375. package/web-shell/assets/dagre-3AP2YEHR-C8FA8vJk.js +4 -0
  376. package/web-shell/assets/diagram-S7CK7UJ4-D-quIUtW.js +30 -0
  377. package/web-shell/assets/diagram-UQ7AKVKN-Bjo09Uts.js +41 -0
  378. package/web-shell/assets/diagram-VSXAHHWV-IoI3ttq4.js +3 -0
  379. package/web-shell/assets/diagram-VX7I27RA-BKyOZ5SO.js +24 -0
  380. package/web-shell/assets/diagram-Z3DM3KII-Cu_OHEhw.js +24 -0
  381. package/web-shell/assets/{ebnfDiagram-PWID7BFC-BGpiquRm.js → ebnfDiagram-PWID7BFC-UVB-bbPg.js} +1 -1
  382. package/web-shell/assets/{erDiagram-SSCWMZ5O-D0besu_U.js → erDiagram-SSCWMZ5O-l8drddto.js} +13 -13
  383. package/web-shell/assets/flowDiagram-A5DVABFB-DU1I_VAI.js +168 -0
  384. package/web-shell/assets/{ganttDiagram-EL5Y4UJY-CNlsAeNr.js → ganttDiagram-EL5Y4UJY-BLRH05uB.js} +1 -1
  385. package/web-shell/assets/gitGraphDiagram-WWUBYQGX-Czg_BkRE.js +106 -0
  386. package/web-shell/assets/index-CmMV8Jla.js +3 -0
  387. package/web-shell/assets/{index-CGT341lL.js → index-DohPy72Z.js} +1 -1
  388. package/web-shell/assets/index-DyMtNYuu.js +2207 -0
  389. package/web-shell/assets/index-n6N-2a3v.css +36 -0
  390. package/web-shell/assets/{infoDiagram-RXCK75RN-Bpai64Ll.js → infoDiagram-RXCK75RN-BpBvjkro.js} +1 -1
  391. package/web-shell/assets/ishikawaDiagram-5VMMS53U-phy1l3jm.js +70 -0
  392. package/web-shell/assets/{journeyDiagram-EYS64GPL-iz_DKgFX.js → journeyDiagram-EYS64GPL-oY-9LgVS.js} +1 -1
  393. package/web-shell/assets/kanban-definition-3QL26DDD-slZoy-sc.js +89 -0
  394. package/web-shell/assets/{layout-qEvKgnvU.js → layout-0hnn_P9l.js} +1 -1
  395. package/web-shell/assets/{linear-C6lklGdq.js → linear-7Wqe8DRy.js} +1 -1
  396. package/web-shell/assets/mermaid.core-BaK8n0bq.js +312 -0
  397. package/web-shell/assets/mindmap-definition-FBJOCRG2-BedUdy_E.js +96 -0
  398. package/web-shell/assets/{pegDiagram-XKGWAZYB-BhD0q0i6.js → pegDiagram-XKGWAZYB-DQLRdmxq.js} +1 -1
  399. package/web-shell/assets/pieDiagram-E7YTZNPT-UC20w9-5.js +39 -0
  400. package/web-shell/assets/quadrantDiagram-AXDQQJYC-CQx2Hmk3.js +7 -0
  401. package/web-shell/assets/qwen-code-notification-BRVagufF.png +0 -0
  402. package/web-shell/assets/{railroadDiagram-O6MQD6OU-E1g2KIFK.js → railroadDiagram-O6MQD6OU-2UEJe_y-.js} +1 -1
  403. package/web-shell/assets/{requirementDiagram-EFPCY7ZU-CuerYJOe.js → requirementDiagram-EFPCY7ZU-DOAJggB4.js} +13 -13
  404. package/web-shell/assets/{sankeyDiagram-P5KCCOFB-CqWyCZGA.js → sankeyDiagram-P5KCCOFB-DnQ_qJo7.js} +7 -7
  405. package/web-shell/assets/{sequenceDiagram-WJ2MYXX4-B-YWb8x4.js → sequenceDiagram-WJ2MYXX4-DZrZUoCo.js} +16 -16
  406. package/web-shell/assets/sizeCapture-X5ZJPWSS-B5G4GDQB.js +1 -0
  407. package/web-shell/assets/{stateDiagram-HBIQ2CUA-C8LDpNHS.js → stateDiagram-HBIQ2CUA-Bn1cT0qF.js} +1 -1
  408. package/web-shell/assets/stateDiagram-v2-4QOOHH4V-BF3xtNvJ.js +1 -0
  409. package/web-shell/assets/swimlanes-XN3QIQJK-Bzhcdn87.js +1 -0
  410. package/web-shell/assets/swimlanesDiagram-VK2B7HYN-B753mA3E.js +8 -0
  411. package/web-shell/assets/timeline-definition-24CTP7MA-BqZ_3D10.js +120 -0
  412. package/web-shell/assets/vennDiagram-4TSXK5OY-z9kw1kmm.js +34 -0
  413. package/web-shell/assets/wardleyDiagram-VM6X3IG4-Cydp1zJW.js +78 -0
  414. package/web-shell/assets/{xychartDiagram-S5SC5T6Z-ruD2Wjhg.js → xychartDiagram-S5SC5T6Z-j4X1lQKo.js} +1 -1
  415. package/web-shell/index.html +2 -2
  416. package/chunks/chunk-7Q2AXRDJ.js +0 -114
  417. package/chunks/chunk-AEY27Z35.js +0 -1411
  418. package/chunks/chunk-CFKIH3D3.js +0 -50
  419. package/chunks/chunk-HWVUSYSN.js +0 -126
  420. package/chunks/chunk-QHMLYMMS.js +0 -32
  421. package/chunks/chunk-SAH4BD2J.js +0 -92
  422. package/chunks/chunk-TWUKBNWM.js +0 -86
  423. package/chunks/chunk-ZTTC7T4X.js +0 -126
  424. package/chunks/list-YL6LDQKQ.js +0 -129
  425. package/chunks/mcp-IYVSIW6O.js +0 -123
  426. package/chunks/web-search-NEGYQNDJ.js +0 -912
  427. package/chunks/workspace-providers-status-AEYISSU2.js +0 -127
  428. package/chunks/workspace-skills-status-5HWZU3HX.js +0 -126
  429. package/web-shell/assets/architectureDiagram-5GKGNRK7-B_fgkKe7.js +0 -36
  430. package/web-shell/assets/blockDiagram-NRAW4CY4-C3pddUNg.js +0 -129
  431. package/web-shell/assets/channel-Blod4z1X.js +0 -1
  432. package/web-shell/assets/chunk-G27WJ6UU-CVbXTxYk.js +0 -231
  433. package/web-shell/assets/chunk-JWPE2WC7-D89c_BXy.js +0 -1
  434. package/web-shell/assets/chunk-LCL6LL3I-B7-I_9KB.js +0 -206
  435. package/web-shell/assets/chunk-POPQ4Y6H-DcLQFzS4.js +0 -1
  436. package/web-shell/assets/classDiagram-DTDB5LWJ-D6hFDMqb.js +0 -1
  437. package/web-shell/assets/classDiagram-v2-JRS7N3AN-D6hFDMqb.js +0 -1
  438. package/web-shell/assets/cose-bilkent-JH36ORCC-Db2FYN85.js +0 -1
  439. package/web-shell/assets/cynefin-OW5HDTMX-i4GwmBVy.js +0 -178
  440. package/web-shell/assets/dagre-3AP2YEHR-CF9XVrD9.js +0 -4
  441. package/web-shell/assets/diagram-S7CK7UJ4-DD5PJfSm.js +0 -30
  442. package/web-shell/assets/diagram-UQ7AKVKN-CjD_sBMj.js +0 -41
  443. package/web-shell/assets/diagram-VSXAHHWV-U5WwMqyA.js +0 -3
  444. package/web-shell/assets/diagram-VX7I27RA-BujpHJJf.js +0 -24
  445. package/web-shell/assets/diagram-Z3DM3KII-3ZLtKEXo.js +0 -24
  446. package/web-shell/assets/flowDiagram-A5DVABFB-9DwDuIyr.js +0 -168
  447. package/web-shell/assets/gitGraphDiagram-WWUBYQGX-C_pPFiTR.js +0 -106
  448. package/web-shell/assets/index-BYWs4JWq.js +0 -3
  449. package/web-shell/assets/index-D3YS6KuJ.js +0 -2173
  450. package/web-shell/assets/index-eBxK3rs2.css +0 -36
  451. package/web-shell/assets/ishikawaDiagram-5VMMS53U-ktpJFq4r.js +0 -70
  452. package/web-shell/assets/kanban-definition-3QL26DDD-m_gG00Yt.js +0 -89
  453. package/web-shell/assets/mermaid.core-DSCYB_2P.js +0 -312
  454. package/web-shell/assets/mindmap-definition-FBJOCRG2-DRQbT8w-.js +0 -96
  455. package/web-shell/assets/pieDiagram-E7YTZNPT-BvIGQCSd.js +0 -39
  456. package/web-shell/assets/quadrantDiagram-AXDQQJYC-BDQtfpU-.js +0 -7
  457. package/web-shell/assets/sizeCapture-X5ZJPWSS-BB7YY4Tl.js +0 -1
  458. package/web-shell/assets/stateDiagram-v2-4QOOHH4V-C4CbdvGa.js +0 -1
  459. package/web-shell/assets/swimlanes-XN3QIQJK-D94vOoxZ.js +0 -1
  460. package/web-shell/assets/swimlanesDiagram-VK2B7HYN--QNSIOC8.js +0 -8
  461. package/web-shell/assets/timeline-definition-24CTP7MA-C9C8uEYm.js +0 -120
  462. package/web-shell/assets/vennDiagram-4TSXK5OY-CYzMHbVW.js +0 -34
  463. package/web-shell/assets/wardleyDiagram-VM6X3IG4-G9nhtLES.js +0 -78
  464. package/chunks/{open-with-auth-6MVIHMXB.js → open-with-auth-XFCCJOO6.js} +3 -3
@@ -580,6 +580,7 @@ var PERMISSION_MODES = [
580
580
 
581
581
  // packages/sdk-typescript/src/daemon/types.ts
582
582
  var GOAL_PAUSE_REASON_COMMAND = "Paused with /goal pause.";
583
+ var GOAL_CHECKPOINT_STALL_LIMIT = 3;
583
584
  var DaemonCapabilityMissingError = class extends Error {
584
585
  static {
585
586
  __name(this, "DaemonCapabilityMissingError");
@@ -1042,6 +1043,7 @@ function parseSessionGenerationEvent(value) {
1042
1043
  __name(parseSessionGenerationEvent, "parseSessionGenerationEvent");
1043
1044
  var DEFAULT_SESSION_LIST_PAGE_SIZE = 20;
1044
1045
  var DEFAULT_FETCH_TIMEOUT_MS = 3e4;
1046
+ var CAPABILITY_PREFLIGHT_TTL_MS = 6e4;
1045
1047
  var DEFAULT_PROVIDER_MUTATION_TIMEOUT_MS = 0;
1046
1048
  var DEFAULT_SESSION_RESTORE_TIMEOUT_MS = 7e4;
1047
1049
  var SESSION_RESTORE_TIMEOUT_HEADROOM_MS = 1e4;
@@ -1104,6 +1106,20 @@ function stripTrailingSlashes(url) {
1104
1106
  return end === url.length ? url : url.slice(0, end);
1105
1107
  }
1106
1108
  __name(stripTrailingSlashes, "stripTrailingSlashes");
1109
+ function createStandaloneSessionId() {
1110
+ if (typeof globalThis.crypto.randomUUID === "function") {
1111
+ return globalThis.crypto.randomUUID();
1112
+ }
1113
+ const bytes = globalThis.crypto.getRandomValues(new Uint8Array(16));
1114
+ bytes[6] = bytes[6] & 15 | 64;
1115
+ bytes[8] = bytes[8] & 63 | 128;
1116
+ const hex = Array.from(
1117
+ bytes,
1118
+ (byte) => byte.toString(16).padStart(2, "0")
1119
+ ).join("");
1120
+ return `${hex.slice(0, 8)}-${hex.slice(8, 12)}-${hex.slice(12, 16)}-${hex.slice(16, 20)}-${hex.slice(20)}`;
1121
+ }
1122
+ __name(createStandaloneSessionId, "createStandaloneSessionId");
1107
1123
  function readTokenFromEnv() {
1108
1124
  try {
1109
1125
  const proc = globalThis.process;
@@ -1160,6 +1176,10 @@ var DaemonClient = class {
1160
1176
  fetchTimeoutMs;
1161
1177
  hasExplicitFetchTimeout;
1162
1178
  cachedSessionRestoreTimeoutMs;
1179
+ capabilityFeatures;
1180
+ capabilitiesRequest;
1181
+ capabilitiesGeneration = 0;
1182
+ restoreBudgetGeneration = 0;
1163
1183
  promptLimit;
1164
1184
  promptCounts = /* @__PURE__ */ Object.create(null);
1165
1185
  /**
@@ -1403,7 +1423,9 @@ var DaemonClient = class {
1403
1423
  );
1404
1424
  }
1405
1425
  async capabilities() {
1406
- const capabilities = await this.fetchWithTimeout(
1426
+ const generation = ++this.capabilitiesGeneration;
1427
+ this.capabilityFeatures = void 0;
1428
+ const request = this.fetchWithTimeout(
1407
1429
  `${this.baseUrl}/capabilities`,
1408
1430
  { headers: this.headers() },
1409
1431
  async (res) => {
@@ -1411,9 +1433,28 @@ var DaemonClient = class {
1411
1433
  return await res.json();
1412
1434
  }
1413
1435
  );
1414
- const restoreTimeoutMs = capabilities.limits?.sessionRestoreTimeoutMs;
1415
- this.cachedSessionRestoreTimeoutMs = typeof restoreTimeoutMs === "number" && Number.isInteger(restoreTimeoutMs) && restoreTimeoutMs > 0 && restoreTimeoutMs <= MAX_TIMER_DELAY_MS ? restoreTimeoutMs : void 0;
1416
- return capabilities;
1436
+ this.capabilitiesRequest = request;
1437
+ try {
1438
+ const capabilities = await request;
1439
+ if (generation === this.capabilitiesGeneration) {
1440
+ this.capabilityFeatures = {
1441
+ features: new Set(
1442
+ Array.isArray(capabilities.features) ? capabilities.features : []
1443
+ ),
1444
+ expiresAt: Date.now() + CAPABILITY_PREFLIGHT_TTL_MS
1445
+ };
1446
+ }
1447
+ if (generation > this.restoreBudgetGeneration) {
1448
+ this.restoreBudgetGeneration = generation;
1449
+ const restoreTimeoutMs = capabilities.limits?.sessionRestoreTimeoutMs;
1450
+ this.cachedSessionRestoreTimeoutMs = typeof restoreTimeoutMs === "number" && Number.isInteger(restoreTimeoutMs) && restoreTimeoutMs > 0 && restoreTimeoutMs <= MAX_TIMER_DELAY_MS ? restoreTimeoutMs : void 0;
1451
+ }
1452
+ return capabilities;
1453
+ } finally {
1454
+ if (generation === this.capabilitiesGeneration) {
1455
+ this.capabilitiesRequest = void 0;
1456
+ }
1457
+ }
1417
1458
  }
1418
1459
  /**
1419
1460
  * The Web Shell's product name and logo, resolved by the daemon from the
@@ -1457,8 +1498,23 @@ var DaemonClient = class {
1457
1498
  );
1458
1499
  }
1459
1500
  async requireCapability(capability) {
1460
- const caps = await this.capabilities();
1461
- if (!Array.isArray(caps.features) || !caps.features.includes(capability)) {
1501
+ let supported;
1502
+ if (capability === "session_source_metadata") {
1503
+ while (this.capabilitiesRequest || !this.capabilityFeatures || this.capabilityFeatures.expiresAt <= Date.now()) {
1504
+ const request = this.capabilitiesRequest ?? this.capabilities();
1505
+ const generation = this.capabilitiesGeneration;
1506
+ try {
1507
+ await request;
1508
+ } catch (error) {
1509
+ if (generation === this.capabilitiesGeneration) throw error;
1510
+ }
1511
+ }
1512
+ supported = this.capabilityFeatures.features.has(capability);
1513
+ } else {
1514
+ const caps = await this.capabilities();
1515
+ supported = Array.isArray(caps.features) && caps.features.includes(capability);
1516
+ }
1517
+ if (!supported) {
1462
1518
  throw new DaemonCapabilityMissingError(
1463
1519
  capability,
1464
1520
  `daemon does not advertise the ${capability} feature`
@@ -2653,7 +2709,7 @@ var DaemonClient = class {
2653
2709
  async createStandaloneSession(options = {}) {
2654
2710
  await this.requireCapability(STANDALONE_SESSIONS_CAPABILITY);
2655
2711
  const { sessionId: requestedSessionId, ...request } = options;
2656
- const sessionId = (requestedSessionId ?? globalThis.crypto.randomUUID()).toLowerCase();
2712
+ const sessionId = (requestedSessionId ?? createStandaloneSessionId()).toLowerCase();
2657
2713
  try {
2658
2714
  const response = await this.jsonRequest(
2659
2715
  "/standalone/sessions",
@@ -3031,6 +3087,20 @@ var DaemonClient = class {
3031
3087
  { clientId, mode: "rest", method: "POST" }
3032
3088
  );
3033
3089
  }
3090
+ /** Admit an interrupted turn without adding a user message. */
3091
+ async continueSession(sessionId, opts = {}) {
3092
+ opts.signal?.throwIfAborted();
3093
+ return await this.jsonRequest(
3094
+ `/session/${urlEncode(sessionId)}/continue`,
3095
+ "POST /session/:id/continue",
3096
+ {
3097
+ method: "POST",
3098
+ clientId: opts.clientId,
3099
+ signal: opts.signal,
3100
+ mode: "rest"
3101
+ }
3102
+ );
3103
+ }
3034
3104
  async resumeSession(sessionId, req = {}, clientId) {
3035
3105
  return this.restoreSession("resume", sessionId, req, clientId);
3036
3106
  }
@@ -3569,6 +3639,25 @@ var DaemonClient = class {
3569
3639
  }
3570
3640
  );
3571
3641
  }
3642
+ async readSessionArtifactContent(sessionId, artifactId, opts) {
3643
+ return await this.fetchWithTimeout(
3644
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/artifacts/${urlEncode(artifactId)}/content`,
3645
+ {
3646
+ method: "GET",
3647
+ headers: this.headers({}, opts?.clientId),
3648
+ signal: opts?.signal
3649
+ },
3650
+ async (res) => {
3651
+ if (!res.ok) {
3652
+ throw await this.failOnError(
3653
+ res,
3654
+ "GET /session/:id/artifacts/:artifactId/content"
3655
+ );
3656
+ }
3657
+ return await res.text();
3658
+ }
3659
+ );
3660
+ }
3572
3661
  async readSessionAttachment(sessionId, attachmentId, opts) {
3573
3662
  return await this.fetchWithTimeout(
3574
3663
  `${this.baseUrl}/session/${urlEncode(sessionId)}/attachments/${urlEncode(attachmentId)}`,
@@ -3943,6 +4032,25 @@ var DaemonClient = class {
3943
4032
  }
3944
4033
  );
3945
4034
  }
4035
+ async modelConfigurations() {
4036
+ return this.jsonRequest("/workspace/models", "GET /workspace/models");
4037
+ }
4038
+ async updateModelContextWindow(key, contextWindowSize) {
4039
+ return this.fetchWithTimeout(
4040
+ `${this.baseUrl}/workspace/models`,
4041
+ {
4042
+ method: "PATCH",
4043
+ headers: this.headers({ "Content-Type": "application/json" }),
4044
+ body: JSON.stringify({ key, contextWindowSize })
4045
+ },
4046
+ async (res) => {
4047
+ if (!res.ok)
4048
+ throw await this.failOnError(res, "PATCH /workspace/models");
4049
+ return await res.json();
4050
+ },
4051
+ this.hasExplicitFetchTimeout ? void 0 : DEFAULT_PROVIDER_MUTATION_TIMEOUT_MS
4052
+ );
4053
+ }
3946
4054
  async deleteModel(target, opts) {
3947
4055
  return await this.fetchWithTimeout(
3948
4056
  `${this.baseUrl}/workspace/models`,
@@ -5146,6 +5254,9 @@ var DaemonClient = class {
5146
5254
  * on the underlying transport throw `DaemonTransportClosedError`.
5147
5255
  */
5148
5256
  dispose() {
5257
+ this.restoreBudgetGeneration = ++this.capabilitiesGeneration;
5258
+ this.capabilitiesRequest = void 0;
5259
+ this.capabilityFeatures = void 0;
5149
5260
  this.transport.dispose();
5150
5261
  }
5151
5262
  listSessionSources(sessionId, clientId) {
@@ -6726,6 +6837,16 @@ var DaemonSessionClient = class _DaemonSessionClient {
6726
6837
  }
6727
6838
  return accepted;
6728
6839
  }
6840
+ /** Return continuation admission; terminal results arrive on the event stream. */
6841
+ async continueSession(signal) {
6842
+ signal?.throwIfAborted();
6843
+ return await this.withClientIdSelfHeal(
6844
+ () => this.client.continueSession(this.sessionId, {
6845
+ clientId: this.clientId,
6846
+ signal
6847
+ })
6848
+ );
6849
+ }
6729
6850
  async uploadAttachment(data, name, mimeType, signal) {
6730
6851
  return await this.withClientIdSelfHeal(
6731
6852
  () => this.client.uploadSessionAttachment(
@@ -9598,6 +9719,11 @@ function normalizeDaemonEvent(event, opts = {}) {
9598
9719
  { ...base, type: "prompt.cancelled", ...reason ? { reason } : {} }
9599
9720
  ];
9600
9721
  }
9722
+ case "turn_complete":
9723
+ return getString2(event.data, "stopReason") === "cancelled" ? normalizePromptCancellation(
9724
+ isRecord2(event.data) ? event.data["promptCancelled"] : void 0,
9725
+ base
9726
+ ) : [];
9601
9727
  case "followup_suggestion":
9602
9728
  return normalizeFollowupSuggestion(event, base);
9603
9729
  case "mid_turn_message_injected":
@@ -10044,6 +10170,9 @@ function normalizeSessionUpdate(event, base, opts) {
10044
10170
  const parentToolCallId = extractParentToolCallId(update);
10045
10171
  const meta = extractUpdateMeta(update);
10046
10172
  const events = [];
10173
+ if (!parentToolCallId && meta?.["promptCancelled"] !== void 0) {
10174
+ return normalizePromptCancellation(meta["promptCancelled"], base);
10175
+ }
10047
10176
  if (text) {
10048
10177
  events.push({
10049
10178
  ...base,
@@ -10920,6 +11049,23 @@ function normalizeAuthDeviceFlowCancelled(event, base) {
10920
11049
  return [{ ...base, type: "auth.device_flow.cancelled", deviceFlowId }];
10921
11050
  }
10922
11051
  __name(normalizeAuthDeviceFlowCancelled, "normalizeAuthDeviceFlowCancelled");
11052
+ function normalizePromptCancellation(value, base) {
11053
+ const elapsedMs = numberField(value, "elapsedMs");
11054
+ const cancelledAt = numberField(value, "cancelledAt");
11055
+ const promptId = stringField(value, "promptId") ?? base.promptId;
11056
+ if (!promptId || elapsedMs === void 0 || elapsedMs < 0 || cancelledAt === void 0)
11057
+ return [];
11058
+ return [
11059
+ {
11060
+ ...base,
11061
+ type: "prompt.cancelled",
11062
+ promptId,
11063
+ elapsedMs,
11064
+ serverTimestamp: cancelledAt
11065
+ }
11066
+ ];
11067
+ }
11068
+ __name(normalizePromptCancellation, "normalizePromptCancellation");
10923
11069
  function numberField(value, key) {
10924
11070
  if (!isRecord2(value)) return void 0;
10925
11071
  const v = value[key];
@@ -12001,12 +12147,32 @@ function appendStatusBlock(state, kind, text, event, opts = {}) {
12001
12147
  }
12002
12148
  __name(appendStatusBlock, "appendStatusBlock");
12003
12149
  function appendPromptCancelledBlock(state, event) {
12150
+ const existing = event.promptId ? state.blocks.find(
12151
+ (block2) => block2.kind === "prompt_cancelled" && block2.promptId === event.promptId
12152
+ ) : void 0;
12153
+ if (existing) {
12154
+ if (event.elapsedMs === void 0) return;
12155
+ const block2 = getWritableBlockById(state, existing.id);
12156
+ if (block2?.kind !== "prompt_cancelled") return;
12157
+ const bytesBefore = estimateBlockBytes(block2);
12158
+ block2.elapsedMs = event.elapsedMs;
12159
+ if (event.serverTimestamp !== void 0) {
12160
+ block2.serverTimestamp = event.serverTimestamp;
12161
+ }
12162
+ if (event.sourceRecordIds) block2.sourceRecordIds = event.sourceRecordIds;
12163
+ block2.updatedAt = state.now;
12164
+ state.retainedBytes += estimateBlockBytes(block2) - bytesBefore;
12165
+ return;
12166
+ }
12004
12167
  const block = {
12005
12168
  id: allocateBlockId(state, "prompt_cancelled"),
12006
12169
  kind: "prompt_cancelled",
12007
12170
  clientReceivedAt: state.now,
12008
12171
  createdAt: state.now,
12009
12172
  updatedAt: state.now,
12173
+ ...event.promptId ? { promptId: event.promptId } : {},
12174
+ ...event.elapsedMs !== void 0 ? { elapsedMs: event.elapsedMs } : {},
12175
+ ...event.sourceRecordIds ? { sourceRecordIds: event.sourceRecordIds } : {},
12010
12176
  ...event.reason ? { reason: event.reason } : {},
12011
12177
  ...event.eventId !== void 0 ? { eventId: event.eventId } : {},
12012
12178
  ...event.serverTimestamp !== void 0 ? { serverTimestamp: event.serverTimestamp } : {},
@@ -12234,7 +12400,10 @@ function rewindTranscriptToUserTurn(state, targetTurnIndex) {
12234
12400
  let userTurnIndex = 0;
12235
12401
  let lastUserIndex = -1;
12236
12402
  for (let index = 0; index < state.blocks.length; index += 1) {
12237
- if (state.blocks[index]?.kind !== "user") continue;
12403
+ const block = state.blocks[index];
12404
+ if (block?.kind !== "user" || block.meta?.["source"] === "background_notification") {
12405
+ continue;
12406
+ }
12238
12407
  lastUserIndex = index;
12239
12408
  if (userTurnIndex === targetTurnIndex) {
12240
12409
  truncateTranscriptBeforeBlock(state, index);
@@ -13999,6 +14168,7 @@ export {
13999
14168
  SseFramingError,
14000
14169
  parseSseStream,
14001
14170
  GOAL_PAUSE_REASON_COMMAND,
14171
+ GOAL_CHECKPOINT_STALL_LIMIT,
14002
14172
  DaemonCapabilityMissingError,
14003
14173
  requireWorkspaceCwd,
14004
14174
  DAEMON_ERROR_KINDS,
@@ -17,6 +17,9 @@ import {
17
17
  normalizeSessionIdForLookup,
18
18
  parseCallerSuppliedSessionId
19
19
  } from "./chunk-ZEZKIS2K.js";
20
+ import {
21
+ createSessionOrganizationService
22
+ } from "./chunk-EKJXDLDD.js";
20
23
  import {
21
24
  SessionArchivedError,
22
25
  SessionArchivingError,
@@ -27,13 +30,12 @@ import {
27
30
  import {
28
31
  readWorktreeSession,
29
32
  readWorktreeSessionStrict
30
- } from "./chunk-ZKZHSB5W.js";
33
+ } from "./chunk-QR4Q425T.js";
31
34
  import {
32
35
  SESSION_PR_LIST_LIMIT,
33
36
  SESSION_PR_URL_MAX_LENGTH,
34
37
  SessionIdCaseConflictError,
35
38
  SessionOrganizationError,
36
- SessionOrganizationService,
37
39
  SessionService,
38
40
  SessionTranscriptChangedError,
39
41
  SessionWriterUnavailableError,
@@ -41,21 +43,24 @@ import {
41
43
  gitEnv,
42
44
  readSessionPrs,
43
45
  toSessionPrInfo
44
- } from "./chunk-N7VWZDWW.js";
46
+ } from "./chunk-CFSBWJBB.js";
45
47
  import {
48
+ cronTaskSessionDeletionId,
49
+ getCronFilePath,
46
50
  updateCronTasks
47
- } from "./chunk-F53KKZUD.js";
51
+ } from "./chunk-3LMDSCLU.js";
48
52
  import {
49
53
  GitWorktreeService,
50
54
  WORKTREE_SESSION_FILE,
51
55
  readWorktreeSessionMarkerStrict
52
- } from "./chunk-36HCNKDS.js";
56
+ } from "./chunk-WKVZES7O.js";
53
57
  import {
58
+ NO_EXEC_CONFIG,
54
59
  findGitRoot
55
- } from "./chunk-3CZ2BQV6.js";
60
+ } from "./chunk-NXUZFW3G.js";
56
61
  import {
57
62
  addDaemonRequestAttribute
58
- } from "./chunk-ZW2EUO2A.js";
63
+ } from "./chunk-L6DIANLD.js";
59
64
  import {
60
65
  Storage
61
66
  } from "./chunk-ZAFYHRVY.js";
@@ -72,15 +77,6 @@ import {
72
77
  // packages/cli/src/serve/server/session-list.ts
73
78
  init_esbuild_shims();
74
79
 
75
- // packages/cli/src/serve/session-organization-helpers.ts
76
- init_esbuild_shims();
77
- function createSessionOrganizationService(workspaceCwd) {
78
- return new SessionOrganizationService(workspaceCwd, (message) => {
79
- writeStderrLine(`qwen serve: session-org: ${message}`);
80
- });
81
- }
82
- __name(createSessionOrganizationService, "createSessionOrganizationService");
83
-
84
80
  // packages/cli/src/serve/server/persisted-session-list-cache.ts
85
81
  init_esbuild_shims();
86
82
  import path from "node:path";
@@ -1332,6 +1328,7 @@ import fs2 from "node:fs";
1332
1328
 
1333
1329
  // packages/cli/src/serve/scheduled-task-session-lifecycle.ts
1334
1330
  init_esbuild_shims();
1331
+ import { access } from "node:fs/promises";
1335
1332
  function isBoundTask(task) {
1336
1333
  return typeof task.sessionId === "string" && task.sessionId.length > 0;
1337
1334
  }
@@ -1387,16 +1384,26 @@ async function enableTasksForSessions(projectRoot, sessionIds, now = Date.now(),
1387
1384
  __name(enableTasksForSessions, "enableTasksForSessions");
1388
1385
  async function removeTasksForSessions(projectRoot, sessionIds, options = {}) {
1389
1386
  if (sessionIds.length === 0) return;
1390
- const targets = new Set(sessionIds);
1387
+ try {
1388
+ await access(getCronFilePath(projectRoot));
1389
+ } catch (error) {
1390
+ if (error.code === "ENOENT") return;
1391
+ throw error;
1392
+ }
1393
+ const targets = new Set(sessionIds.map(cronTaskSessionDeletionId));
1394
+ const removedIds = [];
1391
1395
  await updateCronTasks(
1392
1396
  projectRoot,
1393
1397
  (tasks) => {
1394
- const next = tasks.filter(
1395
- (task) => !isBoundTask(task) || !targets.has(task.sessionId)
1396
- );
1398
+ const next = tasks.filter((task) => {
1399
+ if (!isBoundTask(task) || !targets.has(cronTaskSessionDeletionId(task.sessionId)))
1400
+ return true;
1401
+ removedIds.push(task.id);
1402
+ return false;
1403
+ });
1397
1404
  return next.length === tasks.length ? tasks : next;
1398
1405
  },
1399
- options
1406
+ { ...options, deletionIds: /* @__PURE__ */ __name(() => [...removedIds, ...targets], "deletionIds") }
1400
1407
  );
1401
1408
  }
1402
1409
  __name(removeTasksForSessions, "removeTasksForSessions");
@@ -1451,6 +1458,8 @@ async function checkoutHasWork(worktreePath) {
1451
1458
  const { stdout } = await execFileAsync(
1452
1459
  "git",
1453
1460
  [
1461
+ ...NO_EXEC_CONFIG,
1462
+ "--no-optional-locks",
1454
1463
  "status",
1455
1464
  "--porcelain",
1456
1465
  "--untracked-files=normal",
@@ -2908,7 +2917,6 @@ var defaultAoneMrBackend = {
2908
2917
  };
2909
2918
 
2910
2919
  export {
2911
- createSessionOrganizationService,
2912
2920
  laterActivityTimestamp,
2913
2921
  invalidateWorkspaceSessionListCache,
2914
2922
  InvalidCursorError,
@@ -2938,11 +2946,11 @@ export {
2938
2946
  };
2939
2947
  /**
2940
2948
  * @license
2941
- * Copyright 2025 Qwen Team
2949
+ * Copyright 2026 Qwen Team
2942
2950
  * SPDX-License-Identifier: Apache-2.0
2943
2951
  */
2944
2952
  /**
2945
2953
  * @license
2946
- * Copyright 2026 Qwen Team
2954
+ * Copyright 2025 Qwen Team
2947
2955
  * SPDX-License-Identifier: Apache-2.0
2948
2956
  */