@qwen-code/qwen-code 0.19.7 → 0.19.8-nightly.20260710.205430235

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 (292) hide show
  1. package/bundled/qc-helper/SKILL.md +1 -0
  2. package/bundled/qc-helper/docs/configuration/auth.md +40 -55
  3. package/bundled/qc-helper/docs/configuration/model-providers.md +224 -218
  4. package/bundled/qc-helper/docs/configuration/settings.md +43 -36
  5. package/bundled/qc-helper/docs/features/_meta.ts +1 -0
  6. package/bundled/qc-helper/docs/features/channels/overview.md +20 -12
  7. package/bundled/qc-helper/docs/features/channels/plugins.md +1 -0
  8. package/bundled/qc-helper/docs/features/code-review.md +2 -1
  9. package/bundled/qc-helper/docs/features/commands.md +39 -38
  10. package/bundled/qc-helper/docs/features/computer-use.md +77 -0
  11. package/bundled/qc-helper/docs/features/hooks.md +36 -34
  12. package/bundled/qc-helper/docs/features/memory.md +1 -1
  13. package/bundled/qc-helper/docs/features/tool-use-summaries.md +19 -23
  14. package/bundled/qc-helper/docs/qwen-serve.md +22 -12
  15. package/bundled/qc-helper/docs/reference/keyboard-shortcuts.md +1 -1
  16. package/bundled/review/DESIGN.md +14 -13
  17. package/bundled/review/SKILL.md +38 -61
  18. package/chunks/{MaxSizedBox-XY5LIO5O.js → MaxSizedBox-LOFYQFYJ.js} +13 -14
  19. package/chunks/{StandaloneSessionPicker-APISIRJZ.js → StandaloneSessionPicker-U5OQBGEB.js} +31 -29
  20. package/chunks/{acpAgent-MMOSC2YA.js → acpAgent-SDIFRIED.js} +637 -131
  21. package/chunks/{agent-TKIBLLQT.js → agent-JIBBVHNQ.js} +10 -10
  22. package/chunks/{agent-headless-VLX4C7KX.js → agent-headless-6LGZYJYU.js} +10 -10
  23. package/chunks/{anthropicContentGenerator-AKYPSZIV.js → anthropicContentGenerator-55REPTTF.js} +30 -3
  24. package/chunks/{artifact-tool-D233YJFH.js → artifact-tool-EIN46DPM.js} +1 -1
  25. package/chunks/{askUserQuestion-MKL5ZTMC.js → askUserQuestion-6YX6ZRX7.js} +1 -1
  26. package/chunks/{bridge-BCU73DZO.js → bridge-HVPFYNM4.js} +17 -16
  27. package/chunks/{ca-HCMB2I54.js → ca-MULEGDVS.js} +89 -5
  28. package/chunks/{channel-worker-supervisor-CRCVYQIE.js → channel-worker-supervisor-OPXXT4JK.js} +20 -3
  29. package/chunks/{chunk-DGHJTO2K.js → chunk-2AF26HVM.js} +31 -2
  30. package/chunks/{chunk-3B26UVCX.js → chunk-2GUVUHJY.js} +6 -4
  31. package/chunks/{chunk-FV7425LN.js → chunk-2SZOMGOR.js} +4 -1
  32. package/chunks/{chunk-CNSF3WO5.js → chunk-32KS5XSX.js} +3 -3
  33. package/chunks/{chunk-4UCTWSTP.js → chunk-34UUM3IN.js} +1 -1
  34. package/chunks/{chunk-G7ZG7CA6.js → chunk-3UP777ZS.js} +8 -7
  35. package/chunks/{chunk-MIG5SQNL.js → chunk-4CSVIZLT.js} +4 -4
  36. package/chunks/{chunk-GD236YPV.js → chunk-4ONWIT5C.js} +1 -1
  37. package/chunks/{chunk-4ZJIPVPB.js → chunk-4XK7TNBP.js} +8 -8
  38. package/chunks/{chunk-I4A4K72C.js → chunk-5F2H3PXG.js} +446 -232
  39. package/chunks/chunk-5HOF2K5U.js +19 -0
  40. package/chunks/{chunk-GMOWQOQQ.js → chunk-5ZVIYNLN.js} +228 -36
  41. package/chunks/chunk-6O6Z2I5Q.js +292 -0
  42. package/chunks/{chunk-RYFZCUJO.js → chunk-6QKT5VNZ.js} +14 -6
  43. package/chunks/{chunk-SD4N3QJ2.js → chunk-6ZPSVWLF.js} +61 -17
  44. package/chunks/{chunk-X265R5C6.js → chunk-7YGSDQ5J.js} +2 -2
  45. package/chunks/{chunk-PRDFOIZF.js → chunk-A6KEUFJO.js} +32 -5
  46. package/chunks/{chunk-OWVIH4HY.js → chunk-B5OAMPJ5.js} +389 -87
  47. package/chunks/{chunk-ME3YSROJ.js → chunk-CV2AT2WJ.js} +22 -10
  48. package/chunks/{chunk-U4FRHCLA.js → chunk-DDKUYKHA.js} +1912 -201
  49. package/chunks/{chunk-YDSYD7UI.js → chunk-E3SA2LY4.js} +2 -2
  50. package/chunks/{chunk-6IAWPIQ6.js → chunk-EDM5O3SX.js} +2 -2
  51. package/chunks/{chunk-CISB3IQF.js → chunk-FONJQQWI.js} +65 -6
  52. package/chunks/{chunk-FRFFNYUY.js → chunk-G3WIMNL4.js} +3 -3
  53. package/chunks/{chunk-B34OV7K2.js → chunk-GGQQA4JW.js} +13 -0
  54. package/chunks/chunk-GLE2YUPU.js +34 -0
  55. package/chunks/{chunk-MJI36HER.js → chunk-GOTMC3BX.js} +1 -1
  56. package/chunks/{chunk-RFIL6REB.js → chunk-GRB4QSBD.js} +168 -31
  57. package/chunks/chunk-GVVY7GSP.js +38 -0
  58. package/chunks/{chunk-7JGISHHZ.js → chunk-HDEUQRAR.js} +14 -156
  59. package/chunks/{chunk-NZEGNV4V.js → chunk-HPRI22FZ.js} +6 -6
  60. package/chunks/{chunk-STAZRKOT.js → chunk-I34IHZFJ.js} +117 -459
  61. package/chunks/{chunk-JF7DFPQ5.js → chunk-I3MBKL6Z.js} +12 -2
  62. package/chunks/{chunk-DNV4FSN5.js → chunk-I5XN6KDI.js} +21 -4
  63. package/chunks/{chunk-VZ7HY3YU.js → chunk-IAMRWMFU.js} +1 -1
  64. package/chunks/{chunk-44NROQYV.js → chunk-JOQMY62N.js} +1 -1
  65. package/chunks/{chunk-VQWAZSXN.js → chunk-JW4IKIZ2.js} +57 -35
  66. package/chunks/{chunk-SAIILPQ3.js → chunk-KJMYXFUR.js} +3 -1
  67. package/chunks/{chunk-AFOLR6YL.js → chunk-KQ6MKCFE.js} +102 -16
  68. package/chunks/{chunk-X3YGAX7V.js → chunk-KS2FRTYI.js} +2 -0
  69. package/chunks/{chunk-IUE7YWC3.js → chunk-LE7EF36E.js} +7 -7
  70. package/chunks/{chunk-B4U2M63D.js → chunk-LRY7HD3Q.js} +2101 -11
  71. package/chunks/{chunk-PUQLHSQ2.js → chunk-ME7E6WZB.js} +6 -8
  72. package/chunks/{chunk-LEIJKM7Q.js → chunk-MEK7ZRJ3.js} +1 -1
  73. package/chunks/{chunk-AJBEAUIS.js → chunk-MG2TNCRX.js} +4 -3
  74. package/chunks/{chunk-GL5TV7B5.js → chunk-MSMQURDV.js} +21 -5
  75. package/chunks/{chunk-6BN7NZ5Z.js → chunk-NXDJLKKX.js} +4 -6
  76. package/chunks/{chunk-FEJ2FZ3U.js → chunk-NY2ZOFMM.js} +1 -1
  77. package/chunks/{chunk-QZF5U5KA.js → chunk-NY5BE643.js} +8 -8
  78. package/chunks/{chunk-4RQIB5UZ.js → chunk-O2YT7VB4.js} +0 -34
  79. package/chunks/{chunk-4KJ2BPIT.js → chunk-OACJLMLD.js} +2 -38
  80. package/chunks/chunk-PCWSPWXZ.js +168 -0
  81. package/chunks/{chunk-XPJH4PKR.js → chunk-PJ74K3DH.js} +1 -1
  82. package/chunks/{chunk-FTFXDZYI.js → chunk-PW7VWRLX.js} +45 -29
  83. package/chunks/chunk-R3SLDK6Y.js +468 -0
  84. package/chunks/{chunk-4O344UEE.js → chunk-SDJOZOYY.js} +38 -18
  85. package/chunks/{chunk-ALZ75L2X.js → chunk-SMYIBRAA.js} +412 -376
  86. package/chunks/{chunk-CCGOFQV3.js → chunk-SS5P6JM6.js} +6 -5
  87. package/chunks/{chunk-AIY5UTFI.js → chunk-T3XHYGMG.js} +925 -2872
  88. package/chunks/{chunk-Q6OEPOOC.js → chunk-TB6GWNV4.js} +1 -1
  89. package/chunks/{chunk-24XYI5EI.js → chunk-TERKDCOZ.js} +3 -3
  90. package/chunks/chunk-TVO5C767.js +159 -0
  91. package/chunks/{chunk-TBAZMRW3.js → chunk-TVW53EK7.js} +1 -1
  92. package/chunks/chunk-TX5QZYK6.js +296 -0
  93. package/chunks/{chunk-JD33UY7E.js → chunk-TZRVTPJ6.js} +15 -9
  94. package/chunks/{chunk-65CFHNSE.js → chunk-UAFB2DNB.js} +59 -59
  95. package/chunks/{chunk-QAKFYMJI.js → chunk-UOXLB2LY.js} +152 -17
  96. package/chunks/chunk-V35MD7KN.js +13 -0
  97. package/chunks/{chunk-XSAFNANZ.js → chunk-VWDJHVXM.js} +12 -12
  98. package/chunks/{chunk-XISQIIT7.js → chunk-W77ZLCSX.js} +1 -1
  99. package/chunks/{chunk-BWVQN2HV.js → chunk-WTEIUA2V.js} +4 -4
  100. package/chunks/{chunk-TDGF35EN.js → chunk-XOHNA2S6.js} +1 -1
  101. package/chunks/{chunk-HJ3GX3Y3.js → chunk-XZVUZSDG.js} +25 -11
  102. package/chunks/{chunk-ADZG46HR.js → chunk-YHGCTQG3.js} +1 -1
  103. package/chunks/{chunk-2NPS2UDH.js → chunk-YUNPEB3Q.js} +478 -43
  104. package/chunks/chunk-Z3I3QJK3.js +47 -0
  105. package/chunks/{chunk-P7I3D7FM.js → chunk-Z466FBSA.js} +1 -1
  106. package/chunks/{chunk-YEGT55NW.js → chunk-ZDAZSR2O.js} +3009 -1220
  107. package/chunks/{chunk-VEB3NYSO.js → chunk-ZJQBTFJ6.js} +6 -1
  108. package/chunks/chunk-ZL5HN75Q.js +61 -0
  109. package/chunks/{computer-use-X4KUU3NM.js → computer-use-IW5XBECT.js} +10 -10
  110. package/chunks/{contextCommand-LAYJZF7H.js → contextCommand-4QPLK2SH.js} +14 -14
  111. package/chunks/create-sub-session-7JK3EYWA.js +212 -0
  112. package/chunks/create-sub-session-EVYZYAE3.js +364 -0
  113. package/chunks/{cron-create-JSXEIPVS.js → cron-create-2CCO2PW6.js} +2 -2
  114. package/chunks/{cron-delete-OIFVEPGU.js → cron-delete-ETVTP5IV.js} +2 -2
  115. package/chunks/{cron-list-D4ZX4IOE.js → cron-list-FS3KWOY5.js} +2 -2
  116. package/chunks/{daemon-F3I2RXP6.js → daemon-NNUYIBWA.js} +461 -0
  117. package/chunks/{daemon-status-provider-XSAFKVDS.js → daemon-status-provider-3EPG6BXX.js} +21 -19
  118. package/chunks/{de-PLLFDERI.js → de-QRG6J2CM.js} +89 -5
  119. package/chunks/{dist-YTRKAVUB.js → dist-3EIIFOJV.js} +1 -1
  120. package/chunks/{dist-PKFTNUHO.js → dist-7F5GWZDZ.js} +2 -1
  121. package/chunks/{dist-FQ5WRJPL.js → dist-CBJ7OJ5R.js} +2 -2
  122. package/chunks/{dist-OT7G2WNM.js → dist-LIFJ2YAI.js} +1 -1
  123. package/chunks/{dist-573HNSVO.js → dist-OKXOQ63L.js} +2 -1
  124. package/chunks/{dist-IMFFBMAT.js → dist-SU5LY5R4.js} +3 -1
  125. package/chunks/{earlyInputCapture-AERYYGXE.js → earlyInputCapture-HP5XAS7A.js} +10 -10
  126. package/chunks/{edit-WZTZDGCI.js → edit-MDICC6KH.js} +11 -11
  127. package/chunks/{en-GA2RMXY5.js → en-HF3KFWZG.js} +91 -5
  128. package/chunks/{enter-worktree-DEPXBJEL.js → enter-worktree-JWTRNEN4.js} +10 -10
  129. package/chunks/{enterPlanMode-JFGXZHHJ.js → enterPlanMode-GMRZMTBQ.js} +10 -10
  130. package/chunks/environment-2CJAFOFN.js +88 -0
  131. package/chunks/{errors-GMZL4QV7.js → errors-UZOVFD2U.js} +13 -13
  132. package/chunks/{exit-worktree-Y7XBK3VV.js → exit-worktree-QQGEG343.js} +10 -10
  133. package/chunks/{exitPlanMode-WQQER65F.js → exitPlanMode-YK2JVAAB.js} +10 -10
  134. package/chunks/{fast-path-W2U6XDNO.js → fast-path-6SD4JNQW.js} +12 -3
  135. package/chunks/{fast-path-settings-RCRXH2JG.js → fast-path-settings-RAQGCIT7.js} +3 -2
  136. package/chunks/{fr-GWNQG4XH.js → fr-RSCO6HHD.js} +89 -5
  137. package/chunks/{gemini-T4WX6SRW.js → gemini-TFQXPUZB.js} +436 -140
  138. package/chunks/{geminiContentGenerator-MKQACXEJ.js → geminiContentGenerator-LJ2BNXHX.js} +1 -1
  139. package/chunks/{glob-4KKSHZDF.js → glob-3IJ6JR5W.js} +10 -10
  140. package/chunks/{grep-GHRYXSLZ.js → grep-UFZ2RFQZ.js} +10 -10
  141. package/chunks/{handleAutoUpdate-HN7ZOSXY.js → handleAutoUpdate-TEZC5ZIR.js} +17 -13
  142. package/chunks/i18n-5QEODTJV.js +84 -0
  143. package/chunks/{initializer-SRN3IM42.js → initializer-222MPCLQ.js} +18 -16
  144. package/chunks/installationInfo-OZ62OHZ2.js +65 -0
  145. package/chunks/{ja-2HOTA47X.js → ja-RRFGG2DC.js} +89 -5
  146. package/chunks/{list-INTVXUPA.js → list-BN5VBIIE.js} +20 -18
  147. package/chunks/{loadedSettingsAdapter-QVHHQPGM.js → loadedSettingsAdapter-EHTUJRFB.js} +18 -16
  148. package/chunks/{loop-wakeup-OHWEMFP5.js → loop-wakeup-SR2KWT4B.js} +3 -3
  149. package/chunks/{ls-L654WOAT.js → ls-RUBQK5Q2.js} +2 -2
  150. package/chunks/{lsp-M35KE54Y.js → lsp-DUTVY2ZA.js} +3 -5
  151. package/chunks/{mcp-7V4T46RG.js → mcp-OPGHD26Y.js} +18 -16
  152. package/chunks/{monitor-464OY2UE.js → monitor-WXBDVYYV.js} +10 -10
  153. package/chunks/{nonInteractiveCli-LJEEODU2.js → nonInteractiveCli-CWIBGJ4U.js} +54 -49
  154. package/chunks/{notebook-edit-BLJYCNDO.js → notebook-edit-T7P7M73F.js} +11 -11
  155. package/chunks/{openaiContentGenerator-PFF6HYB2.js → openaiContentGenerator-OES264C3.js} +7 -7
  156. package/chunks/{pidfile-LIBUENIV.js → pidfile-LJ3NLS2P.js} +10 -10
  157. package/chunks/{pt-2THT3YHA.js → pt-D4CG46JM.js} +89 -5
  158. package/chunks/{qwenContentGenerator-SUUHZ6CR.js → qwenContentGenerator-QJ67LAJ5.js} +12 -12
  159. package/chunks/{read-file-L7TBQVX7.js → read-file-KZD7TLU7.js} +5 -5
  160. package/chunks/{read-mcp-resource-CNQHBSJM.js → read-mcp-resource-Q56IMYOH.js} +1 -1
  161. package/chunks/{record-artifact-PP3LKHTS.js → record-artifact-GZ5D5HZX.js} +4 -4
  162. package/chunks/{ripGrep-CKKX3GRB.js → ripGrep-KUJLX75U.js} +10 -10
  163. package/chunks/{ru-Z67YJHBG.js → ru-O2QUEL22.js} +89 -5
  164. package/chunks/{run-qwen-serve-5OKADVLE.js → run-qwen-serve-M52KVRGI.js} +664 -153
  165. package/chunks/{scheduler-ZRW3AIDU.js → scheduler-FFATTAYZ.js} +10 -10
  166. package/chunks/{send-message-OA6MV4EU.js → send-message-HAGK3VTV.js} +2 -2
  167. package/chunks/{serve-36WS32W6.js → serve-B5S32524.js} +21 -18
  168. package/chunks/{server-M372UENX.js → server-6HK5FJMR.js} +3301 -665
  169. package/chunks/{session-F5KSNP2N.js → session-3WB76VTQ.js} +55 -50
  170. package/chunks/{settings-WFLNS3WT.js → settings-W3IX7NHK.js} +27 -23
  171. package/chunks/{shell-DEDSWN56.js → shell-HZIU2ZG7.js} +10 -10
  172. package/chunks/{skill-A2TL2NPC.js → skill-34OUFB65.js} +5 -5
  173. package/chunks/{spawnChannel-RQHUWTCL.js → spawnChannel-FTZJ3I5O.js} +12 -12
  174. package/chunks/{src-XKZMNHXS.js → src-NELBIIGI.js} +48 -10
  175. package/chunks/standalone-update-LICI2VSK.js +79 -0
  176. package/chunks/{startInteractiveUI-REKSTOHU.js → startInteractiveUI-LZEV5YI2.js} +2203 -1764
  177. package/chunks/stdioHelpers-CA7MG65Z.js +14 -0
  178. package/chunks/{syntheticOutput-F7LSDCAR.js → syntheticOutput-XFFJVCGV.js} +2 -2
  179. package/chunks/{task-create-RPFZNB4B.js → task-create-VINUSVBF.js} +3 -3
  180. package/chunks/{task-list-TGGJX7EA.js → task-list-YZ2AWQEG.js} +1 -1
  181. package/chunks/{task-stop-W7NGTMYQ.js → task-stop-PEXPKUW3.js} +1 -1
  182. package/chunks/{task-update-5WUG5MVQ.js → task-update-BHIX57YH.js} +3 -3
  183. package/chunks/{team-create-TBQVWAG7.js → team-create-2JS2OYSF.js} +10 -10
  184. package/chunks/{team-delete-UHQQ2QQX.js → team-delete-2OHXSBVS.js} +1 -1
  185. package/chunks/{team-plan-approval-FZPGUSHJ.js → team-plan-approval-PHLGYUY7.js} +10 -10
  186. package/chunks/{theme-manager-DQZVNSOC.js → theme-manager-UYXLX37P.js} +10 -10
  187. package/chunks/{todoWrite-C4ZAMSR3.js → todoWrite-7Q4ELT4F.js} +1 -1
  188. package/chunks/{tool-search-FDQ3SLNJ.js → tool-search-2MWA3GWE.js} +6 -6
  189. package/chunks/total-session-admission-PRZK35X4.js +72 -0
  190. package/chunks/{trustedFolders-Z475EIHL.js → trustedFolders-IT4JBNPG.js} +12 -12
  191. package/chunks/{updateCheck-E2ZX7RL7.js → updateCheck-X3ZWDO3Z.js} +17 -13
  192. package/chunks/updateEventEmitter-NXWTRHXY.js +10 -0
  193. package/chunks/{validateNonInterActiveAuth-O4ECBHQL.js → validateNonInterActiveAuth-IAOL7CM3.js} +51 -45
  194. package/chunks/{version-CEDD6ZZR.js → version-25QF6A5H.js} +1 -1
  195. package/chunks/{web-fetch-UYGMOHW4.js → web-fetch-I7FOWHGA.js} +2 -2
  196. package/chunks/{workflow-CQQ4J4I6.js → workflow-LZZ5U3IT.js} +11 -11
  197. package/chunks/{workspace-providers-status-MVYXMYDG.js → workspace-providers-status-7DTOAWEL.js} +21 -18
  198. package/chunks/workspace-registry-BBIPESIZ.js +76 -0
  199. package/chunks/{workspace-service-OMBR6ZLG.js → workspace-service-SY3P3FUY.js} +25 -23
  200. package/chunks/{workspace-skills-status-IMMQ7CAY.js → workspace-skills-status-GTT2A4WN.js} +20 -18
  201. package/chunks/{write-file-VWGY7AJP.js → write-file-M6IHNW3V.js} +11 -11
  202. package/chunks/{zh-7XVVRTDH.js → zh-K2EH6BDD.js} +91 -5
  203. package/chunks/{zh-TW-DPH554OG.js → zh-TW-4GPXJ7ZY.js} +91 -5
  204. package/cli.js +13 -12
  205. package/locales/ca.js +115 -7
  206. package/locales/de.js +114 -7
  207. package/locales/en.js +118 -7
  208. package/locales/fr.js +115 -7
  209. package/locales/ja.js +116 -6
  210. package/locales/pt.js +114 -7
  211. package/locales/ru.js +114 -7
  212. package/locales/zh-TW.js +114 -6
  213. package/locales/zh.js +114 -6
  214. package/package.json +3 -6
  215. package/web-shell/assets/{arc-C7hjaa7g.js → arc-G3HZaqaL.js} +1 -1
  216. package/web-shell/assets/{architectureDiagram-3BPJPVTR-pm9KtMZY.js → architectureDiagram-3BPJPVTR-DhBrwwch.js} +1 -1
  217. package/web-shell/assets/{blockDiagram-GPEHLZMM-CApElKsU.js → blockDiagram-GPEHLZMM-16JbbF0N.js} +1 -1
  218. package/web-shell/assets/{c4Diagram-AAUBKEIU-BeDe0-9N.js → c4Diagram-AAUBKEIU-DQ3-pKgc.js} +1 -1
  219. package/web-shell/assets/channel-CX7ZHuuL.js +1 -0
  220. package/web-shell/assets/{chunk-2J33WTMH-DJEkmLdl.js → chunk-2J33WTMH-ERCn30sp.js} +1 -1
  221. package/web-shell/assets/{chunk-4BX2VUAB-DXX8gdpe.js → chunk-4BX2VUAB-DTysfbFi.js} +1 -1
  222. package/web-shell/assets/{chunk-55IACEB6-DORmk1kQ.js → chunk-55IACEB6-BFGrbTBi.js} +1 -1
  223. package/web-shell/assets/{chunk-727SXJPM-DWmO4mCZ.js → chunk-727SXJPM-DCX4Oar-.js} +1 -1
  224. package/web-shell/assets/{chunk-AQP2D5EJ-C7LRaYw2.js → chunk-AQP2D5EJ-CgT6sBr3.js} +1 -1
  225. package/web-shell/assets/{chunk-FMBD7UC4-CCdXgyC5.js → chunk-FMBD7UC4-C1Uuk1KV.js} +1 -1
  226. package/web-shell/assets/{chunk-ND2GUHAM-SyL_xvWc.js → chunk-ND2GUHAM-DajgESiu.js} +1 -1
  227. package/web-shell/assets/{chunk-QZHKN3VN-BzOuCKxa.js → chunk-QZHKN3VN-DLJSvy9X.js} +1 -1
  228. package/web-shell/assets/classDiagram-4FO5ZUOK-B-oT3UI8.js +1 -0
  229. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-B-oT3UI8.js +1 -0
  230. package/web-shell/assets/{cose-bilkent-S5V4N54A-BMPWyDKc.js → cose-bilkent-S5V4N54A-CH3w3qs7.js} +1 -1
  231. package/web-shell/assets/{dagre-BM42HDAG-B_GnPWik.js → dagre-BM42HDAG-BloXan9B.js} +1 -1
  232. package/web-shell/assets/{diagram-2AECGRRQ-fJqMc3S_.js → diagram-2AECGRRQ-BbZiGcmK.js} +1 -1
  233. package/web-shell/assets/{diagram-5GNKFQAL-ximV3O9D.js → diagram-5GNKFQAL-GQlYvLJv.js} +1 -1
  234. package/web-shell/assets/{diagram-KO2AKTUF-2vVyjzqw.js → diagram-KO2AKTUF-CtIBvVq3.js} +1 -1
  235. package/web-shell/assets/{diagram-LMA3HP47-Dckcx1sT.js → diagram-LMA3HP47-D5TBo9a2.js} +1 -1
  236. package/web-shell/assets/{diagram-OG6HWLK6-BAVv47ga.js → diagram-OG6HWLK6-N0gQhw6R.js} +1 -1
  237. package/web-shell/assets/{erDiagram-TEJ5UH35-Bn3nf5J0.js → erDiagram-TEJ5UH35-zab9vDj3.js} +1 -1
  238. package/web-shell/assets/{flowDiagram-I6XJVG4X-BIbGF9JT.js → flowDiagram-I6XJVG4X-BnnjtWJa.js} +1 -1
  239. package/web-shell/assets/{ganttDiagram-6RSMTGT7-CDbhb3AH.js → ganttDiagram-6RSMTGT7-2T0SQU4f.js} +1 -1
  240. package/web-shell/assets/{gitGraphDiagram-PVQCEYII-CbKG1a_w.js → gitGraphDiagram-PVQCEYII-DAD6_que.js} +1 -1
  241. package/web-shell/assets/index-XLkWfLja.css +5 -0
  242. package/web-shell/assets/index-srlTR1Jg.js +786 -0
  243. package/web-shell/assets/{infoDiagram-5YYISTIA-DUFxTy8m.js → infoDiagram-5YYISTIA-C-j8d0xO.js} +1 -1
  244. package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-D69hrBG8.js → ishikawaDiagram-YF4QCWOH-D97bAKoT.js} +1 -1
  245. package/web-shell/assets/{journeyDiagram-JHISSGLW-DsvEw51Y.js → journeyDiagram-JHISSGLW-BJAHfJmm.js} +1 -1
  246. package/web-shell/assets/{kanban-definition-UN3LZRKU-lFFjZEYd.js → kanban-definition-UN3LZRKU-CZgR5aac.js} +1 -1
  247. package/web-shell/assets/{linear-Bo5bWzvo.js → linear-DOd4kYhA.js} +1 -1
  248. package/web-shell/assets/{mermaid.core-C_HKMJx5.js → mermaid.core-BBaplnXA.js} +5 -5
  249. package/web-shell/assets/{mindmap-definition-RKZ34NQL-DlV-NUTs.js → mindmap-definition-RKZ34NQL-IhBF_BR5.js} +1 -1
  250. package/web-shell/assets/{pieDiagram-4H26LBE5-B2e6FH2a.js → pieDiagram-4H26LBE5-B4R4sYyH.js} +1 -1
  251. package/web-shell/assets/{quadrantDiagram-W4KKPZXB-D75kSk-b.js → quadrantDiagram-W4KKPZXB-DKd1SJ61.js} +1 -1
  252. package/web-shell/assets/{requirementDiagram-4Y6WPE33-CQ6xakhM.js → requirementDiagram-4Y6WPE33-Cw96V0Xb.js} +1 -1
  253. package/web-shell/assets/{sankeyDiagram-5OEKKPKP-J_XTKrcY.js → sankeyDiagram-5OEKKPKP-C6ne_yWi.js} +1 -1
  254. package/web-shell/assets/{sequenceDiagram-3UESZ5HK-D7jTcBtf.js → sequenceDiagram-3UESZ5HK-CCyp4PDp.js} +1 -1
  255. package/web-shell/assets/{stateDiagram-AJRCARHV-CrlM_OT3.js → stateDiagram-AJRCARHV-DHvIqTmx.js} +1 -1
  256. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-DvFhmpwA.js +1 -0
  257. package/web-shell/assets/{timeline-definition-PNZ67QCA-5oZi76Ef.js → timeline-definition-PNZ67QCA-amb3n9zH.js} +1 -1
  258. package/web-shell/assets/{vennDiagram-CIIHVFJN-DO5YptPK.js → vennDiagram-CIIHVFJN-Abf2qRFJ.js} +1 -1
  259. package/web-shell/assets/{wardley-L42UT6IY-4t1eJDvM.js → wardley-L42UT6IY-BBlOp1av.js} +1 -1
  260. package/web-shell/assets/{wardleyDiagram-YWT4CUSO-DKZc661S.js → wardleyDiagram-YWT4CUSO-gE_sZ0Ak.js} +1 -1
  261. package/web-shell/assets/{xychartDiagram-2RQKCTM6-su9hp08G.js → xychartDiagram-2RQKCTM6-BwOni53i.js} +1 -1
  262. package/web-shell/index.html +16 -4
  263. package/chunks/chunk-6SHO7WFF.js +0 -79
  264. package/chunks/chunk-IFEWJXFS.js +0 -37
  265. package/node_modules/@qwen-code/audio-capture/dist/index.d.ts +0 -35
  266. package/node_modules/@qwen-code/audio-capture/dist/index.js +0 -48
  267. package/node_modules/@qwen-code/audio-capture/dist/index.js.map +0 -1
  268. package/node_modules/@qwen-code/audio-capture/dist/platform.d.ts +0 -7
  269. package/node_modules/@qwen-code/audio-capture/dist/platform.js +0 -18
  270. package/node_modules/@qwen-code/audio-capture/dist/platform.js.map +0 -1
  271. package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/LICENSE +0 -21
  272. package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/README.md +0 -58
  273. package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/SECURITY.md +0 -5
  274. package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/bin.js +0 -84
  275. package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/build-test.js +0 -19
  276. package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/index.js +0 -6
  277. package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/node-gyp-build.js +0 -207
  278. package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/optional.js +0 -7
  279. package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/package.json +0 -43
  280. package/node_modules/@qwen-code/audio-capture/package.json +0 -30
  281. package/node_modules/@qwen-code/audio-capture/prebuilds/darwin-arm64/@qwen-code+audio-capture.node +0 -0
  282. package/node_modules/@qwen-code/audio-capture/prebuilds/darwin-x64/@qwen-code+audio-capture.node +0 -0
  283. package/node_modules/@qwen-code/audio-capture/prebuilds/linux-arm64/@qwen-code+audio-capture.node +0 -0
  284. package/node_modules/@qwen-code/audio-capture/prebuilds/linux-x64/@qwen-code+audio-capture.node +0 -0
  285. package/node_modules/@qwen-code/audio-capture/prebuilds/win32-x64/@qwen-code+audio-capture.node +0 -0
  286. package/web-shell/assets/channel-BNf1dW-j.js +0 -1
  287. package/web-shell/assets/classDiagram-4FO5ZUOK-uOIGlzgi.js +0 -1
  288. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-uOIGlzgi.js +0 -1
  289. package/web-shell/assets/index-CnE2ur2L.js +0 -779
  290. package/web-shell/assets/index-hSKXrlSE.css +0 -5
  291. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-Bs4TK_84.js +0 -1
  292. /package/chunks/{chunk-Y6Z2O3WR.js → chunk-JM7BYJO5.js} +0 -0
@@ -3,26 +3,24 @@
3
3
  import {
4
4
  Colors,
5
5
  RowMouseController
6
- } from "./chunk-65CFHNSE.js";
7
- import {
8
- theme
9
- } from "./chunk-IFEWJXFS.js";
6
+ } from "./chunk-UAFB2DNB.js";
10
7
  import {
11
8
  Box_default,
12
9
  Text,
13
- require_jsx_runtime
14
- } from "./chunk-DGHJTO2K.js";
10
+ require_jsx_runtime,
11
+ theme
12
+ } from "./chunk-2AF26HVM.js";
15
13
  import {
16
14
  require_react
17
15
  } from "./chunk-KYMBIKIW.js";
18
16
  import {
19
17
  t
20
- } from "./chunk-QAKFYMJI.js";
18
+ } from "./chunk-UOXLB2LY.js";
21
19
  import {
22
20
  readManyFiles,
23
21
  shouldRunVisionBridge,
24
22
  stripTerminalControlSequences
25
- } from "./chunk-YEGT55NW.js";
23
+ } from "./chunk-ZDAZSR2O.js";
26
24
  import {
27
25
  emptyMcpResourceText,
28
26
  formatMcpResourceContents,
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  runExitCleanup
5
- } from "./chunk-4UCTWSTP.js";
5
+ } from "./chunk-34UUM3IN.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-A4BMJM77.js";
@@ -5,7 +5,7 @@ import {
5
5
  } from "./chunk-EXPMGZZV.js";
6
6
  import {
7
7
  MissingCliEntryError
8
- } from "./chunk-JF7DFPQ5.js";
8
+ } from "./chunk-I3MBKL6Z.js";
9
9
  import {
10
10
  redactLogCredentials
11
11
  } from "./chunk-HLKG6CZN.js";
@@ -75,12 +75,13 @@ function createStderrForwarder(opts) {
75
75
  __name(createStderrForwarder, "createStderrForwarder");
76
76
  function createSpawnChannelFactory(options = {}) {
77
77
  return async (workspaceCwd, childEnvOverrides) => {
78
- const cliEntry = process.env["QWEN_CLI_ENTRY"] || process.argv[1];
78
+ const sourceEnv = options.sourceEnv ?? process.env;
79
+ const cliEntry = sourceEnv["QWEN_CLI_ENTRY"] || process.argv[1];
79
80
  if (!cliEntry) {
80
81
  throw new MissingCliEntryError();
81
82
  }
82
83
  const childEnv = scrubChildEnv(
83
- process.env,
84
+ sourceEnv,
84
85
  SCRUBBED_CHILD_ENV_KEYS,
85
86
  childEnvOverrides
86
87
  );
@@ -7,7 +7,7 @@ import {
7
7
  ansiRegex,
8
8
  init_ansi_regex,
9
9
  stripAnsi
10
- } from "./chunk-YEGT55NW.js";
10
+ } from "./chunk-ZDAZSR2O.js";
11
11
  import {
12
12
  init_esbuild_shims
13
13
  } from "./chunk-A4BMJM77.js";
@@ -182,6 +182,12 @@ function wrapToVisualLines(text, width) {
182
182
  }
183
183
  __name(wrapToVisualLines, "wrapToVisualLines");
184
184
  var regex = ansiRegex();
185
+ var BARE_C0_CONTROL_CHARS_REGEX = /[\x00-\x08\x0b-\x1f\x7f-\x9f]/g;
186
+ var BIDI_OVERRIDE_CHARS_REGEX = /[\u200e\u200f\u202a-\u202e\u2066-\u2069]/g;
187
+ function sanitizeTerminalText(value) {
188
+ return escapeAnsiCtrlCodes(value).replace(BARE_C0_CONTROL_CHARS_REGEX, "").replace(BIDI_OVERRIDE_CHARS_REGEX, "");
189
+ }
190
+ __name(sanitizeTerminalText, "sanitizeTerminalText");
185
191
  function escapeAnsiCtrlCodes(obj) {
186
192
  if (typeof obj === "string") {
187
193
  if (obj.search(regex) === -1) {
@@ -280,7 +286,8 @@ function sanitizeSensitiveText(text, maxLength = 200) {
280
286
  }
281
287
  __name(sanitizeSensitiveText, "sanitizeSensitiveText");
282
288
  var FILENAME_CONTROL_CHARS_REGEX = /[\x00-\x1f\x7f-\x9f]/g;
283
- function escapeFilenameControlChar(ch) {
289
+ var MULTILINE_CONTROL_CHARS_REGEX = /[\x00-\x08\x0b-\x1f\x7f-\x9f]/g;
290
+ function escapeControlChar(ch) {
284
291
  switch (ch) {
285
292
  case "\b":
286
293
  return "\\b";
@@ -298,14 +305,21 @@ function escapeFilenameControlChar(ch) {
298
305
  }
299
306
  }
300
307
  }
301
- __name(escapeFilenameControlChar, "escapeFilenameControlChar");
308
+ __name(escapeControlChar, "escapeControlChar");
302
309
  function sanitizeFilenameForDisplay(name) {
303
310
  return escapeAnsiCtrlCodes(name).replace(
304
311
  FILENAME_CONTROL_CHARS_REGEX,
305
- escapeFilenameControlChar
312
+ escapeControlChar
306
313
  );
307
314
  }
308
315
  __name(sanitizeFilenameForDisplay, "sanitizeFilenameForDisplay");
316
+ function sanitizeMultilineForDisplay(text) {
317
+ return escapeAnsiCtrlCodes(text).replace(
318
+ MULTILINE_CONTROL_CHARS_REGEX,
319
+ escapeControlChar
320
+ );
321
+ }
322
+ __name(sanitizeMultilineForDisplay, "sanitizeMultilineForDisplay");
309
323
 
310
324
  export {
311
325
  stringWidth,
@@ -316,9 +330,11 @@ export {
316
330
  stripUnsafeCharacters,
317
331
  getCachedStringWidth,
318
332
  wrapToVisualLines,
333
+ sanitizeTerminalText,
319
334
  escapeAnsiCtrlCodes,
320
335
  sanitizeSensitiveText,
321
- sanitizeFilenameForDisplay
336
+ sanitizeFilenameForDisplay,
337
+ sanitizeMultilineForDisplay
322
338
  };
323
339
  /**
324
340
  * @license
@@ -1,20 +1,18 @@
1
1
  // Force strict mode and setup for ESM
2
2
  "use strict";
3
- import {
4
- theme
5
- } from "./chunk-IFEWJXFS.js";
6
3
  import {
7
4
  Box_default,
8
5
  Text,
9
- require_jsx_runtime
10
- } from "./chunk-DGHJTO2K.js";
6
+ require_jsx_runtime,
7
+ theme
8
+ } from "./chunk-2AF26HVM.js";
11
9
  import {
12
10
  require_react
13
11
  } from "./chunk-KYMBIKIW.js";
14
12
  import {
15
13
  stringWidth,
16
14
  toCodePoints
17
- } from "./chunk-GL5TV7B5.js";
15
+ } from "./chunk-MSMQURDV.js";
18
16
  import {
19
17
  createDebugLogger
20
18
  } from "./chunk-22MNNNXE.js";
@@ -5,7 +5,7 @@ import {
5
5
  BaseToolInvocation,
6
6
  ToolDisplayNames,
7
7
  ToolNames
8
- } from "./chunk-X3YGAX7V.js";
8
+ } from "./chunk-KS2FRTYI.js";
9
9
  import {
10
10
  init_esbuild_shims
11
11
  } from "./chunk-A4BMJM77.js";
@@ -2,20 +2,20 @@
2
2
  "use strict";
3
3
  import {
4
4
  loadSettings
5
- } from "./chunk-STAZRKOT.js";
5
+ } from "./chunk-I34IHZFJ.js";
6
6
  import {
7
7
  getCurrentLanguage
8
- } from "./chunk-QAKFYMJI.js";
8
+ } from "./chunk-UOXLB2LY.js";
9
9
  import {
10
10
  isWorkspaceTrusted
11
- } from "./chunk-MIG5SQNL.js";
12
- import {
13
- writeStderrLine,
14
- writeStdoutLine
15
- } from "./chunk-Y6Z2O3WR.js";
11
+ } from "./chunk-4CSVIZLT.js";
16
12
  import {
17
13
  require_strip_json_comments
18
14
  } from "./chunk-QYUE6W3T.js";
15
+ import {
16
+ writeStderrLine,
17
+ writeStdoutLine
18
+ } from "./chunk-JM7BYJO5.js";
19
19
  import {
20
20
  Client,
21
21
  Config,
@@ -26,7 +26,7 @@ import {
26
26
  hashMcpServerConfig,
27
27
  isGatedMcpScope,
28
28
  normalizeClaudeMcpServer
29
- } from "./chunk-YEGT55NW.js";
29
+ } from "./chunk-ZDAZSR2O.js";
30
30
  import {
31
31
  atomicWriteFile
32
32
  } from "./chunk-7LTB54MK.js";
@@ -221,35 +221,6 @@ var V1_INDICATOR_KEYS = [
221
221
  "disableCacheControl"
222
222
  ];
223
223
 
224
- // packages/cli/src/config/shared-env-keys.ts
225
- init_esbuild_shims();
226
- var DEFAULT_EXCLUDED_ENV_VARS = ["DEBUG", "DEBUG_MODE"];
227
- var ENV_CORRUPTED_PATH = "QWEN_CODE_SETTINGS_CORRUPTED_PATH";
228
- var ENV_WAS_RECOVERED = "QWEN_CODE_SETTINGS_WAS_RECOVERED";
229
- var PROJECT_ENV_HARDCODED_EXCLUSIONS = [
230
- "QWEN_HOME",
231
- "QWEN_RUNTIME_DIR",
232
- "QWEN_CODE_MCP_APPROVALS_PATH",
233
- "QWEN_CODE_TRUSTED_FOLDERS_PATH",
234
- ENV_CORRUPTED_PATH,
235
- ENV_WAS_RECOVERED,
236
- // QWEN_TLS_INSECURE (and NODE_TLS_REJECT_UNAUTHORIZED, which it mirrors)
237
- // disable TLS certificate verification for all outbound API connections. A
238
- // project `.env` must never enable either — that would let an untrusted repo
239
- // silently turn off MITM protection. Opt-in stays with the user via the
240
- // `--insecure` flag, the shell environment, or a home `.env`. The initial
241
- // `.env` load only consults this list, so both keys must be here (not just
242
- // RELOAD_EXCLUDED_KEYS, which only applies on reload).
243
- "QWEN_TLS_INSECURE",
244
- "NODE_TLS_REJECT_UNAUTHORIZED"
245
- ];
246
- var HOME_ENV_BOOTSTRAP_KEYS = [
247
- "QWEN_HOME",
248
- "QWEN_RUNTIME_DIR",
249
- "QWEN_CODE_MCP_APPROVALS_PATH",
250
- "QWEN_CODE_TRUSTED_FOLDERS_PATH"
251
- ];
252
-
253
224
  // packages/cli/src/config/storage-paths-lite.ts
254
225
  init_esbuild_shims();
255
226
  import * as os from "node:os";
@@ -310,11 +281,6 @@ export {
310
281
  V1_TO_V2_PRESERVE_DISABLE_MAP,
311
282
  CONSOLIDATED_DISABLE_KEYS,
312
283
  V1_INDICATOR_KEYS,
313
- DEFAULT_EXCLUDED_ENV_VARS,
314
- ENV_CORRUPTED_PATH,
315
- ENV_WAS_RECOVERED,
316
- PROJECT_ENV_HARDCODED_EXCLUSIONS,
317
- HOME_ENV_BOOTSTRAP_KEYS,
318
284
  SETTINGS_DIRECTORY_NAME,
319
285
  resolveConfigPathLite,
320
286
  getGlobalQwenDirLite,
@@ -39,42 +39,6 @@ function findGitRoot(startPath) {
39
39
  }
40
40
  }
41
41
  __name(findGitRoot, "findGitRoot");
42
- function findCanonicalGitRoot(startPath) {
43
- const gitRoot = findGitRoot(startPath);
44
- if (!gitRoot) {
45
- return null;
46
- }
47
- try {
48
- const gitContent = fs.readFileSync(path.join(gitRoot, ".git"), "utf-8").trim();
49
- if (!gitContent.startsWith("gitdir:")) {
50
- return gitRoot;
51
- }
52
- const worktreeGitDir = path.resolve(
53
- gitRoot,
54
- gitContent.slice("gitdir:".length).trim()
55
- );
56
- const commonDir = path.resolve(
57
- worktreeGitDir,
58
- fs.readFileSync(path.join(worktreeGitDir, "commondir"), "utf-8").trim()
59
- );
60
- if (path.resolve(path.dirname(worktreeGitDir)) !== path.join(commonDir, "worktrees")) {
61
- return gitRoot;
62
- }
63
- const backlink = fs.realpathSync(
64
- fs.readFileSync(path.join(worktreeGitDir, "gitdir"), "utf-8").trim()
65
- );
66
- if (backlink !== path.join(fs.realpathSync(gitRoot), ".git")) {
67
- return gitRoot;
68
- }
69
- if (path.basename(commonDir) !== ".git") {
70
- return commonDir.normalize("NFC");
71
- }
72
- return path.dirname(commonDir).normalize("NFC");
73
- } catch {
74
- return gitRoot;
75
- }
76
- }
77
- __name(findCanonicalGitRoot, "findCanonicalGitRoot");
78
42
  function getMemoryBaseDir() {
79
43
  if (process.env["QWEN_CODE_MEMORY_BASE_DIR"]) {
80
44
  return resolvePath(void 0, process.env["QWEN_CODE_MEMORY_BASE_DIR"]);
@@ -94,11 +58,11 @@ function getAutoMemoryRoot(projectRoot) {
94
58
  if (useLocalMemory) {
95
59
  result = path.join(projectRoot, QWEN_DIR, AUTO_MEMORY_DIRNAME);
96
60
  } else {
97
- const canonicalRoot = findCanonicalGitRoot(projectRoot) ?? path.resolve(projectRoot);
61
+ const gitRoot = findGitRoot(projectRoot) ?? path.resolve(projectRoot);
98
62
  result = path.join(
99
63
  memoryBaseDir,
100
64
  "projects",
101
- sanitizeCwd(canonicalRoot),
65
+ sanitizeCwd(gitRoot),
102
66
  AUTO_MEMORY_DIRNAME
103
67
  );
104
68
  }
@@ -0,0 +1,168 @@
1
+ // Force strict mode and setup for ESM
2
+ "use strict";
3
+ import {
4
+ STATUS_SCHEMA_VERSION
5
+ } from "./chunk-I3MBKL6Z.js";
6
+ import {
7
+ detectRuntime,
8
+ redactProxyCredentials
9
+ } from "./chunk-H6EMK6QK.js";
10
+ import {
11
+ init_esbuild_shims
12
+ } from "./chunk-A4BMJM77.js";
13
+ import {
14
+ __name
15
+ } from "./chunk-J2S4EL5Y.js";
16
+
17
+ // packages/cli/src/serve/env-snapshot.ts
18
+ init_esbuild_shims();
19
+ import os from "node:os";
20
+ function formatMemoryUsage(bytes) {
21
+ const gb = bytes / (1024 * 1024 * 1024);
22
+ if (bytes < 1024 * 1024) {
23
+ return `${(bytes / 1024).toFixed(1)} KB`;
24
+ }
25
+ if (bytes < 1024 * 1024 * 1024) {
26
+ return `${(bytes / (1024 * 1024)).toFixed(1)} MB`;
27
+ }
28
+ return `${gb.toFixed(2)} GB`;
29
+ }
30
+ __name(formatMemoryUsage, "formatMemoryUsage");
31
+ var SECRET_ENV_VARS = [
32
+ "OPENAI_API_KEY",
33
+ "ANTHROPIC_API_KEY",
34
+ "GEMINI_API_KEY",
35
+ "GOOGLE_API_KEY",
36
+ "DASHSCOPE_API_KEY",
37
+ "OPENROUTER_API_KEY",
38
+ "QWEN_SERVER_TOKEN"
39
+ ];
40
+ var NONSECRET_ENV_VARS = [
41
+ "OPENAI_BASE_URL",
42
+ "ANTHROPIC_BASE_URL",
43
+ "OPENAI_API_BASE",
44
+ "NODE_EXTRA_CA_CERTS",
45
+ "TZ",
46
+ "LANG",
47
+ "LC_ALL",
48
+ "TERM",
49
+ "QWEN_CLI_ENTRY"
50
+ ];
51
+ var PROXY_VARS = [
52
+ "HTTP_PROXY",
53
+ "HTTPS_PROXY",
54
+ "NO_PROXY",
55
+ "ALL_PROXY"
56
+ ];
57
+ function snapshotProcessEnv() {
58
+ return { ...process.env };
59
+ }
60
+ __name(snapshotProcessEnv, "snapshotProcessEnv");
61
+ function readProxyVar(env, name) {
62
+ return env[name] ?? env[name.toLowerCase()];
63
+ }
64
+ __name(readProxyVar, "readProxyVar");
65
+ function safeProxyValue(name, raw) {
66
+ if (name === "NO_PROXY") return redactProxyCredentials(raw);
67
+ try {
68
+ const host = new URL(raw).host;
69
+ if (host) return host;
70
+ } catch {
71
+ }
72
+ try {
73
+ const host = new URL(`http://${raw}`).host;
74
+ if (host) return host;
75
+ } catch {
76
+ }
77
+ const stripped = raw.replace(/^[^@/?#]*@/, "").split(/[/?#]/)[0] ?? "";
78
+ return stripped || "<unparseable>";
79
+ }
80
+ __name(safeProxyValue, "safeProxyValue");
81
+ function buildEnvStatusFromEnv(workspaceCwd, acpChannelLive, sourceEnv) {
82
+ const env = { ...sourceEnv };
83
+ const cells = [];
84
+ const runtime = detectRuntime();
85
+ const runtimeVersion = runtime === "bun" ? process.versions["bun"] ?? process.versions.node : process.versions.node;
86
+ cells.push({
87
+ kind: "runtime",
88
+ name: runtime,
89
+ status: "ok",
90
+ value: runtimeVersion
91
+ });
92
+ cells.push({
93
+ kind: "platform",
94
+ name: process.platform,
95
+ status: "ok",
96
+ value: `${process.arch} (${os.release()})`
97
+ });
98
+ cells.push({
99
+ kind: "memory",
100
+ name: "rss",
101
+ status: "ok",
102
+ value: formatMemoryUsage(process.memoryUsage().rss)
103
+ });
104
+ const sandboxName = env["SANDBOX"];
105
+ cells.push({
106
+ kind: "sandbox",
107
+ name: "SANDBOX",
108
+ status: sandboxName ? "ok" : "disabled",
109
+ present: Boolean(sandboxName),
110
+ ...sandboxName ? { value: sandboxName } : {}
111
+ });
112
+ const seatbelt = env["SEATBELT_PROFILE"];
113
+ if (seatbelt) {
114
+ cells.push({
115
+ kind: "sandbox",
116
+ name: "SEATBELT_PROFILE",
117
+ status: "ok",
118
+ present: true,
119
+ value: seatbelt
120
+ });
121
+ }
122
+ for (const name of PROXY_VARS) {
123
+ const raw = readProxyVar(env, name);
124
+ if (raw) {
125
+ cells.push({
126
+ kind: "proxy",
127
+ name,
128
+ status: "ok",
129
+ present: true,
130
+ value: safeProxyValue(name, raw)
131
+ });
132
+ } else {
133
+ cells.push({
134
+ kind: "proxy",
135
+ name,
136
+ status: "disabled",
137
+ present: false
138
+ });
139
+ }
140
+ }
141
+ for (const name of [...SECRET_ENV_VARS, ...NONSECRET_ENV_VARS]) {
142
+ const present = Boolean(env[name]);
143
+ cells.push({
144
+ kind: "env_var",
145
+ name,
146
+ status: present ? "ok" : "disabled",
147
+ present
148
+ });
149
+ }
150
+ return {
151
+ v: STATUS_SCHEMA_VERSION,
152
+ workspaceCwd,
153
+ initialized: true,
154
+ acpChannelLive,
155
+ cells
156
+ };
157
+ }
158
+ __name(buildEnvStatusFromEnv, "buildEnvStatusFromEnv");
159
+
160
+ export {
161
+ snapshotProcessEnv,
162
+ buildEnvStatusFromEnv
163
+ };
164
+ /**
165
+ * @license
166
+ * Copyright 2025 Qwen Team
167
+ * SPDX-License-Identifier: Apache-2.0
168
+ */
@@ -6,7 +6,7 @@ import {
6
6
  getNestedProperty,
7
7
  getPersistScopeForModelSelection,
8
8
  restoreSettingsFromBackup
9
- } from "./chunk-STAZRKOT.js";
9
+ } from "./chunk-I34IHZFJ.js";
10
10
  import {
11
11
  init_esbuild_shims
12
12
  } from "./chunk-A4BMJM77.js";
@@ -2,19 +2,19 @@
2
2
  "use strict";
3
3
  import {
4
4
  getEffectiveSupportedModes
5
- } from "./chunk-B4U2M63D.js";
5
+ } from "./chunk-LRY7HD3Q.js";
6
6
  import {
7
7
  require_jsx_runtime
8
- } from "./chunk-DGHJTO2K.js";
8
+ } from "./chunk-2AF26HVM.js";
9
9
  import {
10
10
  require_react
11
11
  } from "./chunk-KYMBIKIW.js";
12
12
  import {
13
13
  getCachedStringWidth
14
- } from "./chunk-GL5TV7B5.js";
14
+ } from "./chunk-MSMQURDV.js";
15
15
  import {
16
16
  uiTelemetryService
17
- } from "./chunk-GMOWQOQQ.js";
17
+ } from "./chunk-5ZVIYNLN.js";
18
18
  import {
19
19
  init_esbuild_shims
20
20
  } from "./chunk-A4BMJM77.js";
@@ -376,6 +376,7 @@ __name(getCommandSubcommandNames, "getCommandSubcommandNames");
376
376
  // packages/cli/src/ui/utils/pending-rendered-height.ts
377
377
  init_esbuild_shims();
378
378
  var TABLE_CHROME_ROWS = 5;
379
+ var TABLE_MAX_ROW_LINES = 4;
379
380
  var TABLE_ROW_RE = /^\s*\|(.+)\|\s*$/;
380
381
  var TABLE_SEPARATOR_RE = /^(?=.*\|)\s*\|?\s*(:?-+:?)\s*(\|\s*(:?-+:?)\s*)*\|?\s*$/;
381
382
  var CODE_FENCE_RE = /^ *(`{3,}|~{3,}) *([^`]*)$/;
@@ -490,13 +491,47 @@ function fitPendingSlice(allLines, contentWidth, budget, tableClampRows) {
490
491
  let j = i + 2;
491
492
  while (j < allLines.length && TABLE_ROW_RE.test(allLines[j])) j++;
492
493
  const dataRows = j - (i + 2);
493
- const colCount = splitMarkdownTableRow(
494
+ const headerCells = splitMarkdownTableRow(
494
495
  TABLE_ROW_RE.exec(allLines[i])[1]
495
- ).length;
496
+ );
497
+ const colCount = headerCells.length;
496
498
  const minHorizontalWidth = Math.max(24, 6 * colCount + 5);
497
- const usesVertical = contentWidth < minHorizontalWidth;
498
- const rows = usesVertical ? dataRows * colCount + Math.max(0, dataRows - 1) + 2 : 2 * dataRows + TABLE_CHROME_ROWS;
499
- const cost = Math.min(rows, tableClampRows);
499
+ const perColWidth = Math.max(
500
+ 3,
501
+ Math.floor((contentWidth - (1 + 3 * colCount) - 4) / colCount)
502
+ );
503
+ let contentRows = 0;
504
+ let verticalRows = 0;
505
+ let maxRowLines = 1;
506
+ for (const label of headerCells) {
507
+ maxRowLines = Math.max(
508
+ maxRowLines,
509
+ estimateWrappedRows(label, perColWidth)
510
+ );
511
+ }
512
+ contentRows += maxRowLines;
513
+ for (let r = i + 2; r < j; r++) {
514
+ const cells = splitMarkdownTableRow(
515
+ TABLE_ROW_RE.exec(allLines[r])[1]
516
+ );
517
+ let rowMax = 1;
518
+ for (let colIdx = 0; colIdx < cells.length; colIdx++) {
519
+ const value = cells[colIdx];
520
+ rowMax = Math.max(rowMax, estimateWrappedRows(value, perColWidth));
521
+ const label = headerCells[colIdx] ?? "";
522
+ verticalRows += estimateWrappedRows(
523
+ label ? `${label}: ${value}` : value,
524
+ contentWidth
525
+ );
526
+ }
527
+ contentRows += rowMax;
528
+ if (r === i + 2) {
529
+ maxRowLines = Math.max(maxRowLines, rowMax);
530
+ }
531
+ }
532
+ const usesVertical = dataRows > 0 && (contentWidth < minHorizontalWidth || maxRowLines > TABLE_MAX_ROW_LINES);
533
+ const rows = usesVertical ? verticalRows + Math.max(0, dataRows - 1) + 2 : contentRows + Math.max(0, dataRows - 1) + TABLE_CHROME_ROWS;
534
+ const cost = Math.min(rows, tableClampRows + 2);
500
535
  if (rendered + cost > budget && i > 0) {
501
536
  kept = i;
502
537
  break;
@@ -520,32 +555,13 @@ function fitPendingSlice(allLines, contentWidth, budget, tableClampRows) {
520
555
  }
521
556
  __name(fitPendingSlice, "fitPendingSlice");
522
557
 
523
- // packages/cli/src/ui/constants.ts
524
- init_esbuild_shims();
525
- var EstimatedArtWidth = 59;
526
- var BoxBorderWidth = 1;
527
- var BOX_PADDING_X = 1;
528
- var UI_WIDTH = EstimatedArtWidth + BOX_PADDING_X * 2 + BoxBorderWidth * 2;
529
- var SHELL_COMMAND_NAME = "Shell Command";
530
- var SHELL_NAME = "Shell";
531
- var TOOL_STATUS = {
532
- SUCCESS: "\u2713",
533
- PENDING: "o",
534
- EXECUTING: "\u22B7",
535
- CONFIRMING: "?",
536
- CANCELED: "-",
537
- ERROR: "x"
538
- };
539
-
540
558
  export {
559
+ TABLE_MAX_ROW_LINES,
541
560
  TABLE_ROW_RE,
542
561
  TABLE_SEPARATOR_RE,
543
562
  CODE_FENCE_RE,
544
563
  splitMarkdownTableRow,
545
564
  fitPendingSlice,
546
- SHELL_COMMAND_NAME,
547
- SHELL_NAME,
548
- TOOL_STATUS,
549
565
  SessionStatsProvider,
550
566
  useSessionStats,
551
567
  getCommandSourceBadge,