@qwen-code/qwen-code 0.19.8 → 0.19.9-preview.0

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 (451) 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 +68 -51
  5. package/bundled/qc-helper/docs/features/_meta.ts +1 -0
  6. package/bundled/qc-helper/docs/features/channels/dingtalk.md +12 -2
  7. package/bundled/qc-helper/docs/features/channels/overview.md +82 -7
  8. package/bundled/qc-helper/docs/features/channels/wecom.md +6 -0
  9. package/bundled/qc-helper/docs/features/code-review.md +109 -41
  10. package/bundled/qc-helper/docs/features/commands.md +45 -44
  11. package/bundled/qc-helper/docs/features/computer-use.md +77 -0
  12. package/bundled/qc-helper/docs/features/hooks.md +29 -0
  13. package/bundled/qc-helper/docs/features/sub-agents.md +21 -0
  14. package/bundled/qc-helper/docs/features/tool-use-summaries.md +19 -23
  15. package/bundled/qc-helper/docs/integration-vscode.md +2 -2
  16. package/bundled/qc-helper/docs/qwen-serve.md +66 -23
  17. package/bundled/qc-helper/docs/reference/keyboard-shortcuts.md +2 -2
  18. package/bundled/review/DESIGN.md +303 -46
  19. package/bundled/review/SKILL.md +670 -165
  20. package/chunks/MaxSizedBox-BEVSAWZ6.js +70 -0
  21. package/chunks/{StandaloneSessionPicker-EYRGH6PJ.js → StandaloneSessionPicker-2DA2MDDE.js} +81 -79
  22. package/chunks/{acpAgent-GRFTTRHW.js → acpAgent-G3WJU3PS.js} +1318 -465
  23. package/chunks/agent-DD3WSHXE.js +68 -0
  24. package/chunks/agent-headless-MHI7U2CU.js +62 -0
  25. package/chunks/{anthropicContentGenerator-CPF22MA7.js → anthropicContentGenerator-56U3YCP2.js} +187 -31
  26. package/chunks/{artifact-tool-D233YJFH.js → artifact-tool-MIZLXBLF.js} +5 -5
  27. package/chunks/{askUserQuestion-MKL5ZTMC.js → askUserQuestion-XMJVPNWM.js} +6 -6
  28. package/chunks/bridge-HKEWPNB5.js +78 -0
  29. package/chunks/{ca-MKD32FQL.js → ca-C2JTT2N5.js} +68 -6
  30. package/chunks/channel-worker-group-K7QKH6IG.js +13 -0
  31. package/chunks/channel-worker-manager-YSFB4HUU.js +418 -0
  32. package/chunks/channel-worker-supervisor-QCKIOYZD.js +20 -0
  33. package/chunks/chunk-2FMQQXMM.js +38 -0
  34. package/chunks/{chunk-CSOTA7KX.js → chunk-2FO5GFKZ.js} +2 -2
  35. package/chunks/{chunk-QQDPRDVW.js → chunk-2HRYPZT5.js} +1 -1
  36. package/chunks/{chunk-UXEW557D.js → chunk-2J4ZWME4.js} +3 -3
  37. package/chunks/{chunk-P3XEEI3X.js → chunk-2TQXXQMI.js} +36 -7
  38. package/chunks/{chunk-GSHQYYIV.js → chunk-2UW5RFRP.js} +6 -26
  39. package/chunks/{chunk-6IAWPIQ6.js → chunk-2W3OOD4W.js} +5 -3
  40. package/chunks/{chunk-2PSWA5ID.js → chunk-2X56YUSZ.js} +1 -1
  41. package/chunks/{chunk-NQKLOAVJ.js → chunk-2Z5UX4KI.js} +2 -2
  42. package/chunks/chunk-3MX7D6QN.js +516 -0
  43. package/chunks/{chunk-EEN2TKST.js → chunk-43RXPU5Q.js} +2 -2
  44. package/chunks/{chunk-55ZMG67I.js → chunk-4LD5APFL.js} +4 -4
  45. package/chunks/{chunk-WF4FAXDL.js → chunk-4QZ3XHWE.js} +62 -62
  46. package/chunks/chunk-4QZADKJS.js +34 -0
  47. package/chunks/{chunk-UIDXQNMV.js → chunk-4WGODMVR.js} +1 -1
  48. package/chunks/{chunk-E6US47KI.js → chunk-4WKAA4KS.js} +1 -1
  49. package/chunks/{chunk-TI3BWD4D.js → chunk-54UZQ57N.js} +39 -19
  50. package/chunks/{chunk-3GONHQOA.js → chunk-57OAHC2Y.js} +1 -1
  51. package/chunks/{chunk-JZSY4WP3.js → chunk-5DTTYNB7.js} +1 -1
  52. package/chunks/chunk-5HBA2Z7V.js +28 -0
  53. package/chunks/{chunk-SKAZWEV5.js → chunk-5M6IDOMF.js} +35 -98
  54. package/chunks/{chunk-A4BMJM77.js → chunk-5O2XNYP6.js} +1 -0
  55. package/chunks/{chunk-FQNC62B2.js → chunk-5VHASII5.js} +11 -11
  56. package/chunks/{chunk-GO6LNQXT.js → chunk-6AM5D4ME.js} +1 -1
  57. package/chunks/{chunk-BJBWRCSK.js → chunk-6H67XLET.js} +1 -1
  58. package/chunks/{chunk-O7FIRWJV.js → chunk-6JPDCEDB.js} +3 -3
  59. package/chunks/{chunk-3UP777ZS.js → chunk-6RLROE6G.js} +1 -1
  60. package/chunks/{chunk-GN3F6PIU.js → chunk-6WPJRYLZ.js} +5 -5
  61. package/chunks/{chunk-ZERZSAZL.js → chunk-75DOP5OR.js} +2 -2
  62. package/chunks/chunk-7DKX4A5Z.js +91 -0
  63. package/chunks/{chunk-M7S4GK5Z.js → chunk-7IDCQ35Q.js} +147 -30
  64. package/chunks/{chunk-22MNNNXE.js → chunk-7NFB7LBQ.js} +11 -3
  65. package/chunks/{chunk-ZL5HN75Q.js → chunk-7R4DPSRA.js} +37 -3
  66. package/chunks/{chunk-VZ7HY3YU.js → chunk-7STBROEV.js} +3 -3
  67. package/chunks/{chunk-SAIILPQ3.js → chunk-7X7TEQNX.js} +5 -3
  68. package/chunks/{chunk-RMLZAUWH.js → chunk-A3U2TQUL.js} +10 -12
  69. package/chunks/{chunk-IRJWHZWU.js → chunk-A4UCTEB5.js} +2 -2
  70. package/chunks/{chunk-BOBRZZKD.js → chunk-A7W4GQRW.js} +5 -5
  71. package/chunks/{chunk-O33TBKDC.js → chunk-AAUZBE5Y.js} +155 -19
  72. package/chunks/{chunk-SQ2UATK7.js → chunk-ADLYZJYZ.js} +11 -11
  73. package/chunks/{chunk-QYUE6W3T.js → chunk-ALGGS7UH.js} +2 -39
  74. package/chunks/{chunk-WMPVYQ4P.js → chunk-ARKANCNX.js} +3 -2
  75. package/chunks/{chunk-IBY3Q3HG.js → chunk-AU4R7ACM.js} +967 -181
  76. package/chunks/{channel-worker-supervisor-NZQUOEFJ.js → chunk-B7MFJBKE.js} +190 -34
  77. package/chunks/{chunk-HW4N45EE.js → chunk-B7NUUEXC.js} +38 -11
  78. package/chunks/{chunk-3B26UVCX.js → chunk-BLPMRN4B.js} +39 -10
  79. package/chunks/{chunk-ZN5T4BHI.js → chunk-BPZALHVR.js} +2 -2
  80. package/chunks/{chunk-BVYU3ZTI.js → chunk-BXT6PQ73.js} +1020 -942
  81. package/chunks/{chunk-OFEVLU4C.js → chunk-CARU2RR2.js} +1 -1
  82. package/chunks/{chunk-HDOH3QYE.js → chunk-CEGKYZDB.js} +2 -2
  83. package/chunks/{chunk-GLE2YUPU.js → chunk-COH43MRJ.js} +1 -1
  84. package/chunks/{chunk-E5A7LHNN.js → chunk-CPBF7KYF.js} +1 -1
  85. package/chunks/{chunk-UWCTAVOD.js → chunk-CR3C7WXL.js} +1 -1
  86. package/chunks/{chunk-IWKSG2AR.js → chunk-CXAOG665.js} +1 -1
  87. package/chunks/{chunk-64WXLC72.js → chunk-DJ2GSRLV.js} +1 -1
  88. package/chunks/{chunk-QN5NZ3UQ.js → chunk-DMTGGOSA.js} +2 -2
  89. package/chunks/{chunk-27BHARDE.js → chunk-DMVA55W5.js} +2124 -30
  90. package/chunks/{chunk-JPALE3PA.js → chunk-DQCCLVQK.js} +6 -6
  91. package/chunks/{chunk-X2XNQQJI.js → chunk-E2UVIFI2.js} +186 -399
  92. package/chunks/{chunk-KHDZHZMH.js → chunk-E5Z2AVNV.js} +1 -1
  93. package/chunks/{chunk-E7EMCSUG.js → chunk-EAHMOXLL.js} +64 -42
  94. package/chunks/{chunk-VGGOPZUL.js → chunk-EJ3KGYWL.js} +36 -8
  95. package/chunks/{chunk-DIWVZ3VM.js → chunk-ERTHKDKN.js} +5 -5
  96. package/chunks/{chunk-UX6OTBVD.js → chunk-EX5OULP3.js} +2 -2
  97. package/chunks/{chunk-5MBO76SL.js → chunk-F333XEAU.js} +3 -3
  98. package/chunks/{chunk-OACJLMLD.js → chunk-FBU7WRZI.js} +18 -2
  99. package/chunks/{chunk-5IFG2VC4.js → chunk-FCMNKVXT.js} +1 -1
  100. package/chunks/chunk-FEOBU3FA.js +253 -0
  101. package/chunks/{chunk-LAXNEOBG.js → chunk-FI2WSOWX.js} +19 -3
  102. package/chunks/{chunk-E7KNELIZ.js → chunk-FSA7ERJ2.js} +2 -2
  103. package/chunks/{chunk-44NROQYV.js → chunk-GDQQRV43.js} +4 -4
  104. package/chunks/{chunk-ZE6E424U.js → chunk-GN5HJJBO.js} +2 -2
  105. package/chunks/{chunk-O2YT7VB4.js → chunk-GOXKNSDZ.js} +2 -65
  106. package/chunks/{chunk-V35MD7KN.js → chunk-GRC5HGPI.js} +1 -1
  107. package/chunks/{chunk-ON3JA3RU.js → chunk-GTENQOEJ.js} +7 -9
  108. package/chunks/{chunk-S6RLAIUR.js → chunk-GYTKQYDB.js} +1 -1
  109. package/chunks/{chunk-A2X3KLC3.js → chunk-GZXCZHCT.js} +3 -3
  110. package/chunks/{chunk-K5PGHDBN.js → chunk-H6XPXXMH.js} +1 -1
  111. package/chunks/{chunk-PMFULMLX.js → chunk-HCJTURZD.js} +2262 -384
  112. package/chunks/chunk-HGG2RRXD.js +445 -0
  113. package/chunks/{chunk-II73RK2S.js → chunk-HGT6JR3U.js} +20 -1
  114. package/chunks/{chunk-DICGXFAI.js → chunk-HJCVNZLQ.js} +11 -9
  115. package/chunks/{chunk-3GNOQZDC.js → chunk-HJUDVNCO.js} +17663 -14877
  116. package/chunks/{chunk-AYNCLGTW.js → chunk-HRUGYOJN.js} +8 -51
  117. package/chunks/{chunk-KYMBIKIW.js → chunk-HTHUX2T5.js} +1 -1
  118. package/chunks/{chunk-LQ7TMOCE.js → chunk-HTO4JFDZ.js} +1 -1
  119. package/chunks/{chunk-BUZ6HGL4.js → chunk-HWTL6MPR.js} +357 -59
  120. package/chunks/chunk-IDS7MSUP.js +74 -0
  121. package/chunks/{chunk-4CGOWHKM.js → chunk-J4MOFEOK.js} +2 -2
  122. package/chunks/chunk-JCD4FM7K.js +296 -0
  123. package/chunks/{chunk-22IFUCVR.js → chunk-JESCGQM3.js} +1 -1
  124. package/chunks/{chunk-JZHIQJOE.js → chunk-JGO6RFI2.js} +6 -6
  125. package/chunks/{chunk-X3YGAX7V.js → chunk-JGUT3LWZ.js} +9 -2
  126. package/chunks/{chunk-JRQ7EVGE.js → chunk-JW7OOJC6.js} +2 -2
  127. package/chunks/{chunk-OQXDAMKY.js → chunk-KF5MMGG4.js} +8 -8
  128. package/chunks/{chunk-42XGFRJS.js → chunk-KKRTYONM.js} +8 -6
  129. package/chunks/{chunk-GGQQA4JW.js → chunk-KSO42X3Z.js} +15 -2
  130. package/chunks/{chunk-MRO43B25.js → chunk-KW7NOTN6.js} +1 -1
  131. package/chunks/{chunk-54YZOP7P.js → chunk-L573Z2QZ.js} +11894 -5190
  132. package/chunks/{chunk-TLWA7TPR.js → chunk-L5U3ELZX.js} +2 -2
  133. package/chunks/{chunk-YHKAK72D.js → chunk-LHEOLOXU.js} +251 -63
  134. package/chunks/{chunk-H6EMK6QK.js → chunk-LQIDP6K5.js} +11913 -5207
  135. package/chunks/{chunk-I6WGFJJ3.js → chunk-LSEJG6AM.js} +73 -19
  136. package/chunks/{chunk-MZ7BABX3.js → chunk-LXLTBIDP.js} +44 -7
  137. package/chunks/{chunk-HLKG6CZN.js → chunk-M5GB774H.js} +1 -1
  138. package/chunks/{chunk-JCH35JB3.js → chunk-MKK4XGLF.js} +2 -2
  139. package/chunks/{chunk-YKZIAK7C.js → chunk-MO7O5722.js} +424 -40
  140. package/chunks/chunk-MR3PXB6E.js +48 -0
  141. package/chunks/{chunk-A5JOJ77H.js → chunk-MRYWYBQ4.js} +38 -15
  142. package/chunks/{chunk-332PWN27.js → chunk-NHDKSOEY.js} +1 -1
  143. package/chunks/{chunk-TSPB77TG.js → chunk-NRAFASYX.js} +1016 -2967
  144. package/chunks/{chunk-BMFMJINR.js → chunk-OA4JVLSA.js} +28 -2
  145. package/chunks/{chunk-P7M4GA57.js → chunk-OCPBI7J5.js} +1 -1
  146. package/chunks/chunk-OJAMDVF5.js +66 -0
  147. package/chunks/{chunk-IJRL2S3D.js → chunk-OKAIGAYW.js} +6 -6
  148. package/chunks/{chunk-FBET5XZ2.js → chunk-PEJWA3QQ.js} +29 -10
  149. package/chunks/{chunk-L4AMBVQG.js → chunk-PMKW35AT.js} +54 -22
  150. package/chunks/{chunk-AGHU5VRK.js → chunk-PZL23GTM.js} +1 -1
  151. package/chunks/{chunk-PC4ZXHU2.js → chunk-Q6TUALBE.js} +3 -3
  152. package/chunks/{chunk-FXGLL2HL.js → chunk-Q7YDKOGY.js} +1 -1
  153. package/chunks/{chunk-XOHNA2S6.js → chunk-QAW7PIHT.js} +3 -3
  154. package/chunks/{chunk-XYR5RUA5.js → chunk-QE2WJ7FS.js} +10 -3
  155. package/chunks/{chunk-LGFAYIKX.js → chunk-QHTIBUWB.js} +1 -1
  156. package/chunks/{chunk-P3MYAZBY.js → chunk-QMGX2KO2.js} +1 -1
  157. package/chunks/{chunk-Z3I3QJK3.js → chunk-QRUIS3DN.js} +1 -1
  158. package/chunks/{chunk-ITOGNELQ.js → chunk-QSWDGAIC.js} +2 -2
  159. package/chunks/{chunk-PUVCVELY.js → chunk-QUJOI7SR.js} +70 -8
  160. package/chunks/{chunk-GHOTR7HL.js → chunk-QUPXZXLV.js} +1 -1
  161. package/chunks/{chunk-6VK6FIMQ.js → chunk-R5D5JOAM.js} +415 -379
  162. package/chunks/{chunk-CD6USWHZ.js → chunk-R5XLNDE2.js} +2 -2
  163. package/chunks/{chunk-W7EEOR7D.js → chunk-RCEEXIOO.js} +8 -6
  164. package/chunks/{chunk-TLRYABYP.js → chunk-RKUWKYED.js} +1 -1
  165. package/chunks/{chunk-RNBYOUGV.js → chunk-RXFQM6FQ.js} +1 -1
  166. package/chunks/{chunk-QXPI7FEC.js → chunk-S3TWXGKA.js} +4 -4
  167. package/chunks/{chunk-2EM7ECZD.js → chunk-SMSFWUFY.js} +309 -80
  168. package/chunks/{chunk-FV7425LN.js → chunk-SPJQO2CE.js} +18 -5
  169. package/chunks/{chunk-MLZQVCF3.js → chunk-SZRN75WQ.js} +1 -1
  170. package/chunks/{chunk-7RYW5LQV.js → chunk-T2NCM2ET.js} +2 -2
  171. package/chunks/{chunk-Z2Z3GUXZ.js → chunk-TB6UDU4T.js} +1 -1
  172. package/chunks/{chunk-EXPMGZZV.js → chunk-TEGEBB2I.js} +1 -1
  173. package/chunks/{chunk-MX2YXRER.js → chunk-TJTKSVIV.js} +1 -1
  174. package/chunks/{chunk-CCGOFQV3.js → chunk-TQBODCFD.js} +8 -7
  175. package/chunks/chunk-TV6K2FB4.js +224 -0
  176. package/chunks/{chunk-H6BD2ELD.js → chunk-TYAMGABM.js} +2 -2
  177. package/chunks/{chunk-QYNNN7BK.js → chunk-TYLOFD2U.js} +2 -2
  178. package/chunks/{chunk-VRDMOSQS.js → chunk-UDXSXLER.js} +2 -2
  179. package/chunks/{chunk-DHOLNQLC.js → chunk-UFDX27PL.js} +60 -40
  180. package/chunks/{chunk-WHJQ3JUS.js → chunk-UGN6CTNZ.js} +10 -10
  181. package/chunks/{chunk-CHB5SLZZ.js → chunk-UNLRKDMW.js} +4 -4
  182. package/chunks/{chunk-CJCKDMWO.js → chunk-URK542T4.js} +1 -1
  183. package/chunks/{chunk-AHNXYU4O.js → chunk-V6WHFGST.js} +1 -1
  184. package/chunks/{chunk-ZTQ26VBE.js → chunk-VDDGDZMA.js} +1 -1
  185. package/chunks/{chunk-BOBOCR5H.js → chunk-VEETSXYX.js} +4 -4
  186. package/chunks/{chunk-OMX7CUOE.js → chunk-VGC4I5JJ.js} +1 -1
  187. package/chunks/{chunk-43W4YSO6.js → chunk-VJNBRRZG.js} +2 -2
  188. package/chunks/{chunk-WQTHLB5T.js → chunk-VKS7EIOA.js} +7 -7
  189. package/chunks/{chunk-J7RCB6N5.js → chunk-VVDNGM6X.js} +2 -2
  190. package/chunks/{chunk-ER3BKOLB.js → chunk-W7FJ3N32.js} +1 -1
  191. package/chunks/{chunk-3HX5LZ6R.js → chunk-WBL3FJEU.js} +2 -2
  192. package/chunks/{chunk-7LTB54MK.js → chunk-WIEO4CWB.js} +2 -2
  193. package/chunks/chunk-WMC6HH7Y.js +493 -0
  194. package/chunks/{chunk-FEJ2FZ3U.js → chunk-WTNZ6DXB.js} +2 -2
  195. package/chunks/{chunk-L46XKEGM.js → chunk-X6ODDESK.js} +5 -8
  196. package/chunks/chunk-XDPYM5DE.js +71 -0
  197. package/chunks/{chunk-3RW4AZJV.js → chunk-XFSFZCM5.js} +1 -1
  198. package/chunks/{chunk-2MPVVENX.js → chunk-XU457J4V.js} +2 -2
  199. package/chunks/{chunk-SIUQ3YYX.js → chunk-XVNQMZ2I.js} +1 -1
  200. package/chunks/{chunk-SYCJMSIJ.js → chunk-XWRJCPHC.js} +1 -1
  201. package/chunks/{chunk-SUAKHHK7.js → chunk-Y66VOBRP.js} +3 -3
  202. package/chunks/chunk-YAF2MQZ6.js +19 -0
  203. package/chunks/chunk-YHN5SUIJ.js +219 -0
  204. package/chunks/{chunk-BR4QREVK.js → chunk-YQ3U5MUC.js} +1 -1
  205. package/chunks/{chunk-Y6Z2O3WR.js → chunk-YUZI3WAC.js} +1 -1
  206. package/chunks/{chunk-YDOXPLYL.js → chunk-ZA74ZTQU.js} +4564 -1326
  207. package/chunks/{chunk-DCZWC4PF.js → chunk-ZGE3222J.js} +5 -5
  208. package/chunks/chunk-ZP4ZZJJG.js +448 -0
  209. package/chunks/{chunk-AHNJGLFV.js → chunk-ZPAHLFZU.js} +3 -3
  210. package/chunks/cli-entry-path-4VJ3Y6T2.js +10 -0
  211. package/chunks/{computer-use-WMY3UOBX.js → computer-use-SHA6C3ES.js} +50 -50
  212. package/chunks/config-utils-XSHOMMK4.js +24 -0
  213. package/chunks/contextCommand-HOAF5LUC.js +68 -0
  214. package/chunks/create-sub-session-EAB2U5XW.js +207 -0
  215. package/chunks/create-sub-session-WJOWBFEP.js +375 -0
  216. package/chunks/{cron-create-JSXEIPVS.js → cron-create-GMVKSXZT.js} +9 -9
  217. package/chunks/{cron-delete-OIFVEPGU.js → cron-delete-VDZKUAVK.js} +7 -7
  218. package/chunks/{cron-list-D4ZX4IOE.js → cron-list-UG7C7RAR.js} +14 -10
  219. package/chunks/{daemon-WPAENEBW.js → daemon-MI5HF26N.js} +1074 -61
  220. package/chunks/daemon-status-provider-KFL3LRTP.js +76 -0
  221. package/chunks/{de-ZFPPQVSF.js → de-2VCDRDGU.js} +68 -6
  222. package/chunks/{devtools-FM6GJPYG.js → devtools-4QFYJT6U.js} +3 -3
  223. package/chunks/{dist-O2IRTRPP.js → dist-IEXZC5ZR.js} +10 -10
  224. package/chunks/{dist-SCFLLYMK.js → dist-PQK4GCKA.js} +12 -11
  225. package/chunks/{dist-63IS3ZMI.js → dist-PZV5RKM6.js} +4 -4
  226. package/chunks/{dist-E6UANPIM.js → dist-U75JK3PF.js} +1011 -197
  227. package/chunks/{dist-H2AEJCZ5.js → dist-VXO7QBON.js} +5 -5
  228. package/chunks/{dist-Z34QPAQW.js → dist-WH4TZSH3.js} +529 -79
  229. package/chunks/{dist-BEXOZXLQ.js → dist-X2ABIW5R.js} +36 -15
  230. package/chunks/earlyInputCapture-PKAQJMIP.js +69 -0
  231. package/chunks/{edit-OTYWAXGP.js → edit-6TXLYHJ2.js} +51 -51
  232. package/chunks/{en-N4EPZAQI.js → en-NJCA3TAA.js} +78 -6
  233. package/chunks/{enter-worktree-HNYBDVCX.js → enter-worktree-ZTILGPJX.js} +50 -50
  234. package/chunks/{enterPlanMode-CJCNGT63.js → enterPlanMode-62HRAMCH.js} +66 -51
  235. package/chunks/environment-OYA3ZVEL.js +89 -0
  236. package/chunks/errors-BFXOUUUR.js +75 -0
  237. package/chunks/{exit-worktree-DUUKOE3X.js → exit-worktree-HHJ5M6MV.js} +50 -50
  238. package/chunks/{exitPlanMode-AMMSXOAJ.js → exitPlanMode-M3SWHCL7.js} +51 -51
  239. package/chunks/{fast-path-OV6NIP3K.js → fast-path-3VMPLM74.js} +8 -8
  240. package/chunks/{fast-path-settings-7RIFI3PK.js → fast-path-settings-DAOVFADC.js} +8 -6
  241. package/chunks/{fileFromPath-IBEHA3CO.js → fileFromPath-UDALK7FM.js} +3 -3
  242. package/chunks/{fr-5WWMY53B.js → fr-5F3E7WKD.js} +68 -6
  243. package/chunks/{gemini-NQ3WWBKB.js → gemini-ZCGVYOJL.js} +181 -110
  244. package/chunks/{geminiContentGenerator-CDUNEJQE.js → geminiContentGenerator-XBYBAIDQ.js} +9 -9
  245. package/chunks/{getMachineId-bsd-4CASPIU4.js → getMachineId-bsd-EXV7SWPA.js} +3 -3
  246. package/chunks/{getMachineId-darwin-HPQPEMZR.js → getMachineId-darwin-IUOMFXU3.js} +3 -3
  247. package/chunks/{getMachineId-linux-AUARKYHL.js → getMachineId-linux-K7XJYFHL.js} +2 -2
  248. package/chunks/{getMachineId-unsupported-S32ZDA2T.js → getMachineId-unsupported-EA5FDRJ6.js} +2 -2
  249. package/chunks/{getMachineId-win-4EFLHYIJ.js → getMachineId-win-KBA6RAI5.js} +3 -3
  250. package/chunks/{glob-ROV3YS4R.js → glob-UOEYQNHN.js} +97 -75
  251. package/chunks/{grep-NRITKDCD.js → grep-OQM3CH7W.js} +50 -50
  252. package/chunks/handleAutoUpdate-ORBYVJHZ.js +69 -0
  253. package/chunks/i18n-NBP574CO.js +84 -0
  254. package/chunks/initializer-CWD7TCCD.js +73 -0
  255. package/chunks/installationInfo-CHPDUPWC.js +65 -0
  256. package/chunks/{ja-CUHZOLEJ.js → ja-66J6B53L.js} +69 -7
  257. package/chunks/{keychain-token-storage-UJV5XP4Z.js → keychain-token-storage-AU22CQI6.js} +4 -4
  258. package/chunks/{kittyProtocolDetector-OJRCJLIU.js → kittyProtocolDetector-HCNNKJTI.js} +2 -2
  259. package/chunks/list-ZTTO362W.js +76 -0
  260. package/chunks/loadedSettingsAdapter-V4ZTRKUO.js +70 -0
  261. package/chunks/{loop-wakeup-OHWEMFP5.js → loop-wakeup-C4EXLYVA.js} +10 -10
  262. package/chunks/{lowlight-FYAAUU5J.js → lowlight-J2OZNPCA.js} +1 -1
  263. package/chunks/{ls-7MFU2QYW.js → ls-2OUTG3IZ.js} +6 -6
  264. package/chunks/{lsp-XHDTPTGV.js → lsp-4VMNXZW6.js} +4 -4
  265. package/chunks/mcp-UH5PSGIK.js +70 -0
  266. package/chunks/{monitor-FL2ZO33W.js → monitor-F4NYEU5J.js} +50 -50
  267. package/chunks/{multipart-parser-AJ4WASWR.js → multipart-parser-AWZKXSQN.js} +3 -3
  268. package/chunks/nonInteractiveCli-7IHPXVNH.js +129 -0
  269. package/chunks/{notebook-edit-6PULTHL5.js → notebook-edit-HPDXNGQH.js} +51 -51
  270. package/chunks/openaiContentGenerator-OBDNNOE2.js +56 -0
  271. package/chunks/pidfile-AUMGYIOK.js +73 -0
  272. package/chunks/{pt-OLYN42DS.js → pt-TFZO5Y6T.js} +68 -6
  273. package/chunks/{qwenContentGenerator-NX2E7PB7.js → qwenContentGenerator-LH2U2YRG.js} +52 -52
  274. package/chunks/{qwenOAuth2-ZV7YLMND.js → qwenOAuth2-LEYOU7RU.js} +9 -9
  275. package/chunks/read-file-HUUFBLEO.js +30 -0
  276. package/chunks/{read-mcp-resource-CNQHBSJM.js → read-mcp-resource-JUFHCKSC.js} +5 -5
  277. package/chunks/{read-package-up-ER5OJUGP.js → read-package-up-TCM6I7S2.js} +2 -2
  278. package/chunks/{record-artifact-SQ2OKRJW.js → record-artifact-DWSMBXYY.js} +4 -4
  279. package/chunks/ripGrep-C7X33LU6.js +60 -0
  280. package/chunks/{ru-LDM3GWVQ.js → ru-4L4LFHIT.js} +68 -6
  281. package/chunks/{run-qwen-serve-JK2DL7PI.js → run-qwen-serve-DGW5AFDJ.js} +1465 -283
  282. package/chunks/runtime-NYUSLBEZ.js +99 -0
  283. package/chunks/{scheduler-O4IGVZKK.js → scheduler-5VKDXULT.js} +51 -51
  284. package/chunks/{send-message-76GT3JMC.js → send-message-JZ752NWD.js} +7 -7
  285. package/chunks/serve-UTAHSFXH.js +76 -0
  286. package/chunks/{server-SGNPKX2O.js → server-VUHSYSUV.js} +9088 -1817
  287. package/chunks/{session-5BNM25EZ.js → session-QSGSSNFB.js} +340 -135
  288. package/chunks/settings-X24RYEED.js +120 -0
  289. package/chunks/shell-4MSI2R4O.js +70 -0
  290. package/chunks/{skill-I22QK5XS.js → skill-JR3GTNVZ.js} +24 -24
  291. package/chunks/spawnChannel-RFAAO44J.js +70 -0
  292. package/chunks/{src-7XL4G4DC.js → src-VLI3TKEY.js} +4 -4
  293. package/chunks/{src-BBQSM46M.js → src-YDBNMIIM.js} +183 -53
  294. package/chunks/standalone-update-4CY4HKGC.js +79 -0
  295. package/chunks/{startInteractiveUI-JII36UGN.js → startInteractiveUI-FOD7MMVB.js} +2368 -1923
  296. package/chunks/stdioHelpers-UMY72QRP.js +14 -0
  297. package/chunks/{syntheticOutput-F7LSDCAR.js → syntheticOutput-LELY6HAI.js} +5 -5
  298. package/chunks/task-create-QY3BIMNM.js +23 -0
  299. package/chunks/{task-list-TGGJX7EA.js → task-list-D2U47WBJ.js} +11 -10
  300. package/chunks/{task-stop-W7NGTMYQ.js → task-stop-N6E5IYLH.js} +4 -4
  301. package/chunks/{task-update-XYWMHJGJ.js → task-update-HJCQILLB.js} +13 -12
  302. package/chunks/{team-create-A7NUU5AQ.js → team-create-ZLQSU2E3.js} +50 -50
  303. package/chunks/{team-delete-UHQQ2QQX.js → team-delete-RCWYDRF4.js} +11 -10
  304. package/chunks/{team-plan-approval-TOQRJ2KI.js → team-plan-approval-YUAYBYLS.js} +50 -50
  305. package/chunks/theme-manager-SKNEBMOG.js +64 -0
  306. package/chunks/{todoWrite-C4ZAMSR3.js → todoWrite-FKCGATPJ.js} +6 -6
  307. package/chunks/{tool-search-SZ4EFS2T.js → tool-search-V5J3TGWY.js} +24 -24
  308. package/chunks/total-session-admission-2WIH72I3.js +72 -0
  309. package/chunks/tree-sitter-YJVE2ZUK.js +2980 -0
  310. package/chunks/trustedFolders-JF265CRI.js +80 -0
  311. package/chunks/types-ML3TRJQ5.js +16 -0
  312. package/chunks/updateCheck-AMXNPBP6.js +69 -0
  313. package/chunks/updateEventEmitter-5MKC7BLQ.js +10 -0
  314. package/chunks/validateNonInterActiveAuth-6YHQO7PD.js +194 -0
  315. package/chunks/{version-NO2XSNNP.js → version-UEJJK7PE.js} +3 -3
  316. package/chunks/{web-fetch-UYGMOHW4.js → web-fetch-QGODBB6S.js} +8 -8
  317. package/chunks/{workflow-WO2H6NRI.js → workflow-5YFA5V4M.js} +51 -51
  318. package/chunks/workspace-providers-status-LMBLBNR7.js +73 -0
  319. package/chunks/workspace-registration-store-VV2S4MSV.js +27 -0
  320. package/chunks/workspace-registry-BVMPYRLN.js +76 -0
  321. package/chunks/workspace-service-PUYIZ3J4.js +86 -0
  322. package/chunks/workspace-skills-status-CJ7J2KPP.js +72 -0
  323. package/chunks/{write-file-PX2Z7IBE.js → write-file-OV77M6X7.js} +51 -51
  324. package/chunks/{yargs-B64EYTCF.js → yargs-6H2AUULL.js} +2 -2
  325. package/chunks/{zh-J4F6QWQV.js → zh-FSAH32JB.js} +79 -7
  326. package/chunks/{zh-TW-XVDWOLSW.js → zh-TW-D2YIE2LO.js} +79 -7
  327. package/cli.js +18 -17
  328. package/locales/ca.js +91 -7
  329. package/locales/de.js +90 -7
  330. package/locales/en.js +109 -7
  331. package/locales/fr.js +91 -7
  332. package/locales/ja.js +93 -7
  333. package/locales/pt.js +90 -7
  334. package/locales/ru.js +90 -7
  335. package/locales/zh-TW.js +106 -7
  336. package/locales/zh.js +106 -7
  337. package/package.json +3 -6
  338. package/web-shell/assets/{arc-BWyoJpY2.js → arc-CObt_TK9.js} +1 -1
  339. package/web-shell/assets/{architectureDiagram-3BPJPVTR-BT0mGrz2.js → architectureDiagram-3BPJPVTR-B7aiJ6CK.js} +1 -1
  340. package/web-shell/assets/{blockDiagram-GPEHLZMM-BLgUWvyf.js → blockDiagram-GPEHLZMM-BSK2CrID.js} +1 -1
  341. package/web-shell/assets/{c4Diagram-AAUBKEIU-DYx9M7oU.js → c4Diagram-AAUBKEIU-Bhx2p7T_.js} +1 -1
  342. package/web-shell/assets/channel-BBaLq8MV.js +1 -0
  343. package/web-shell/assets/{chunk-2J33WTMH-CfMHWbuZ.js → chunk-2J33WTMH-c3Hzv0Ni.js} +1 -1
  344. package/web-shell/assets/{chunk-4BX2VUAB-B1URoqEV.js → chunk-4BX2VUAB-DNXaK7ZF.js} +1 -1
  345. package/web-shell/assets/{chunk-55IACEB6-DAIaM4QF.js → chunk-55IACEB6-BXjvDj_i.js} +1 -1
  346. package/web-shell/assets/{chunk-727SXJPM-B2X34knw.js → chunk-727SXJPM-B6CaKFp-.js} +1 -1
  347. package/web-shell/assets/{chunk-AQP2D5EJ-Cif-zLTQ.js → chunk-AQP2D5EJ-tij6Mz9B.js} +1 -1
  348. package/web-shell/assets/{chunk-FMBD7UC4-H18WCXdY.js → chunk-FMBD7UC4-DdlsGk2h.js} +1 -1
  349. package/web-shell/assets/{chunk-ND2GUHAM-YFtetHi0.js → chunk-ND2GUHAM-CdgGZSHE.js} +1 -1
  350. package/web-shell/assets/{chunk-QZHKN3VN-By2hiH3r.js → chunk-QZHKN3VN-D8oJn1C0.js} +1 -1
  351. package/web-shell/assets/classDiagram-4FO5ZUOK-B2ZK6sWE.js +1 -0
  352. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-B2ZK6sWE.js +1 -0
  353. package/web-shell/assets/{cose-bilkent-S5V4N54A-VrcnnLZu.js → cose-bilkent-S5V4N54A-BUVmNp1Y.js} +1 -1
  354. package/web-shell/assets/{dagre-BM42HDAG-CGo-IaVV.js → dagre-BM42HDAG-CO4q310O.js} +1 -1
  355. package/web-shell/assets/{diagram-2AECGRRQ-Dl4QjzIB.js → diagram-2AECGRRQ-C6gFvWkg.js} +1 -1
  356. package/web-shell/assets/{diagram-5GNKFQAL-qMLmsO0u.js → diagram-5GNKFQAL-NG2I_c0h.js} +1 -1
  357. package/web-shell/assets/{diagram-KO2AKTUF-CHlmuxPI.js → diagram-KO2AKTUF-DFKMS6I9.js} +1 -1
  358. package/web-shell/assets/{diagram-LMA3HP47-BUwU3GwT.js → diagram-LMA3HP47-BiElfsfP.js} +1 -1
  359. package/web-shell/assets/{diagram-OG6HWLK6-HEhwPDUM.js → diagram-OG6HWLK6-zLWDYUqu.js} +1 -1
  360. package/web-shell/assets/{erDiagram-TEJ5UH35-1n0llBmM.js → erDiagram-TEJ5UH35-DoVaazhK.js} +1 -1
  361. package/web-shell/assets/{flowDiagram-I6XJVG4X-BN74uMnt.js → flowDiagram-I6XJVG4X-0RLz-mXg.js} +1 -1
  362. package/web-shell/assets/{ganttDiagram-6RSMTGT7-BoOq78i3.js → ganttDiagram-6RSMTGT7-C-eX1A39.js} +3 -3
  363. package/web-shell/assets/{gitGraphDiagram-PVQCEYII-CN8b00c8.js → gitGraphDiagram-PVQCEYII-BauQu1Bu.js} +1 -1
  364. package/web-shell/assets/index-3uAT3ehO.css +5 -0
  365. package/web-shell/assets/index-CVHa2QH7.js +3 -0
  366. package/web-shell/assets/index-D1KigWat.js +1128 -0
  367. package/web-shell/assets/{infoDiagram-5YYISTIA-CCurnIna.js → infoDiagram-5YYISTIA-C800cFvZ.js} +1 -1
  368. package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-AwuRqdUP.js → ishikawaDiagram-YF4QCWOH-CFK1Jk6e.js} +1 -1
  369. package/web-shell/assets/{journeyDiagram-JHISSGLW-B7IICk-E.js → journeyDiagram-JHISSGLW-Cjx0WAC4.js} +1 -1
  370. package/web-shell/assets/{kanban-definition-UN3LZRKU-BYF0OKhx.js → kanban-definition-UN3LZRKU-DWMDHbiv.js} +1 -1
  371. package/web-shell/assets/{linear-GWWguGfD.js → linear-vpW4FrZs.js} +1 -1
  372. package/web-shell/assets/{mermaid.core-JqtkxvCl.js → mermaid.core-DsHRUnDd.js} +5 -5
  373. package/web-shell/assets/{mindmap-definition-RKZ34NQL-B0MmHsZ6.js → mindmap-definition-RKZ34NQL-D3Eb1cAK.js} +1 -1
  374. package/web-shell/assets/{pieDiagram-4H26LBE5-DhImUZLQ.js → pieDiagram-4H26LBE5-Cr2-6sWt.js} +1 -1
  375. package/web-shell/assets/{quadrantDiagram-W4KKPZXB-DGeSC3DT.js → quadrantDiagram-W4KKPZXB-Yd7yUgVp.js} +1 -1
  376. package/web-shell/assets/{requirementDiagram-4Y6WPE33-DkspY6Re.js → requirementDiagram-4Y6WPE33-BE6SprL8.js} +1 -1
  377. package/web-shell/assets/{sankeyDiagram-5OEKKPKP-CaOofS2x.js → sankeyDiagram-5OEKKPKP-DzkuMK8d.js} +1 -1
  378. package/web-shell/assets/{sequenceDiagram-3UESZ5HK-DFQ_kFnN.js → sequenceDiagram-3UESZ5HK-wD9A3Dhi.js} +1 -1
  379. package/web-shell/assets/{stateDiagram-AJRCARHV-D3snw0Tz.js → stateDiagram-AJRCARHV-BOp5q1Nm.js} +1 -1
  380. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-BDsWUmPG.js +1 -0
  381. package/web-shell/assets/{timeline-definition-PNZ67QCA-l4zH8nLM.js → timeline-definition-PNZ67QCA-Btc08sUA.js} +1 -1
  382. package/web-shell/assets/{vennDiagram-CIIHVFJN-BnRlA98M.js → vennDiagram-CIIHVFJN-Bv6upsOA.js} +1 -1
  383. package/web-shell/assets/{wardley-L42UT6IY-BS0xUdmd.js → wardley-L42UT6IY-D-XamnCK.js} +1 -1
  384. package/web-shell/assets/{wardleyDiagram-YWT4CUSO-DKGBUWyQ.js → wardleyDiagram-YWT4CUSO-BbP_5Wfp.js} +1 -1
  385. package/web-shell/assets/{xychartDiagram-2RQKCTM6-DVb2HuOB.js → xychartDiagram-2RQKCTM6-CO5Hh28b.js} +1 -1
  386. package/web-shell/index.html +16 -4
  387. package/chunks/MaxSizedBox-5DT2SD7B.js +0 -71
  388. package/chunks/agent-H2DGKS77.js +0 -68
  389. package/chunks/agent-headless-KFMFIT6J.js +0 -62
  390. package/chunks/bridge-NA3ZQQKJ.js +0 -78
  391. package/chunks/chunk-5P5XGNYH.js +0 -93
  392. package/chunks/chunk-6SHO7WFF.js +0 -79
  393. package/chunks/chunk-IFEWJXFS.js +0 -37
  394. package/chunks/chunk-XNXVCNAT.js +0 -88
  395. package/chunks/contextCommand-LXFZRP4L.js +0 -68
  396. package/chunks/daemon-status-provider-GJRXY5EN.js +0 -76
  397. package/chunks/earlyInputCapture-KNOYZ4MJ.js +0 -69
  398. package/chunks/environment-ATFTYMLZ.js +0 -88
  399. package/chunks/errors-A54HAADA.js +0 -75
  400. package/chunks/handleAutoUpdate-CEZJAARW.js +0 -65
  401. package/chunks/initializer-BRFJKRRX.js +0 -71
  402. package/chunks/list-KVHF7O4X.js +0 -73
  403. package/chunks/loadedSettingsAdapter-LL5PSFKX.js +0 -68
  404. package/chunks/mcp-3GCXRTOQ.js +0 -68
  405. package/chunks/nonInteractiveCli-PTQI3DV6.js +0 -119
  406. package/chunks/openaiContentGenerator-YE42PKCY.js +0 -56
  407. package/chunks/pidfile-NZYSCFRK.js +0 -73
  408. package/chunks/read-file-33XGP5HF.js +0 -30
  409. package/chunks/ripGrep-QWZLGTAN.js +0 -60
  410. package/chunks/serve-JTMIGANH.js +0 -74
  411. package/chunks/settings-3MI4XXP6.js +0 -118
  412. package/chunks/shell-YJKBE67T.js +0 -68
  413. package/chunks/spawnChannel-UNV6W4DU.js +0 -70
  414. package/chunks/task-create-WCHTB435.js +0 -22
  415. package/chunks/theme-manager-WZ4RRMMB.js +0 -64
  416. package/chunks/total-session-admission-ULXJWXFV.js +0 -72
  417. package/chunks/trustedFolders-LAZZPZ3D.js +0 -79
  418. package/chunks/types-QX5C3CHJ.js +0 -12
  419. package/chunks/updateCheck-KONLM73X.js +0 -65
  420. package/chunks/validateNonInterActiveAuth-MPKSRCXD.js +0 -184
  421. package/chunks/workspace-providers-status-3W7E7DFW.js +0 -71
  422. package/chunks/workspace-registry-SXJZNN3O.js +0 -74
  423. package/chunks/workspace-service-CZRQZ4Q4.js +0 -80
  424. package/chunks/workspace-skills-status-K7WFREPD.js +0 -70
  425. package/node_modules/@qwen-code/audio-capture/dist/index.d.ts +0 -35
  426. package/node_modules/@qwen-code/audio-capture/dist/index.js +0 -48
  427. package/node_modules/@qwen-code/audio-capture/dist/index.js.map +0 -1
  428. package/node_modules/@qwen-code/audio-capture/dist/platform.d.ts +0 -7
  429. package/node_modules/@qwen-code/audio-capture/dist/platform.js +0 -18
  430. package/node_modules/@qwen-code/audio-capture/dist/platform.js.map +0 -1
  431. package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/LICENSE +0 -21
  432. package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/README.md +0 -58
  433. package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/SECURITY.md +0 -5
  434. package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/bin.js +0 -84
  435. package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/build-test.js +0 -19
  436. package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/index.js +0 -6
  437. package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/node-gyp-build.js +0 -207
  438. package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/optional.js +0 -7
  439. package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/package.json +0 -43
  440. package/node_modules/@qwen-code/audio-capture/package.json +0 -30
  441. package/node_modules/@qwen-code/audio-capture/prebuilds/darwin-arm64/@qwen-code+audio-capture.node +0 -0
  442. package/node_modules/@qwen-code/audio-capture/prebuilds/darwin-x64/@qwen-code+audio-capture.node +0 -0
  443. package/node_modules/@qwen-code/audio-capture/prebuilds/linux-arm64/@qwen-code+audio-capture.node +0 -0
  444. package/node_modules/@qwen-code/audio-capture/prebuilds/linux-x64/@qwen-code+audio-capture.node +0 -0
  445. package/node_modules/@qwen-code/audio-capture/prebuilds/win32-x64/@qwen-code+audio-capture.node +0 -0
  446. package/web-shell/assets/channel-wmPUGHtg.js +0 -1
  447. package/web-shell/assets/classDiagram-4FO5ZUOK-BA2ljEjW.js +0 -1
  448. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-BA2ljEjW.js +0 -1
  449. package/web-shell/assets/index-CNwoO1Cn.js +0 -783
  450. package/web-shell/assets/index-CWQ0z6kZ.css +0 -5
  451. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-BbSm_9d0.js +0 -1
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  init_esbuild_shims
5
- } from "./chunk-A4BMJM77.js";
5
+ } from "./chunk-5O2XNYP6.js";
6
6
  import {
7
7
  __name
8
8
  } from "./chunk-J2S4EL5Y.js";
@@ -2,14 +2,14 @@
2
2
  "use strict";
3
3
  import {
4
4
  STATUS_SCHEMA_VERSION
5
- } from "./chunk-LAXNEOBG.js";
5
+ } from "./chunk-FI2WSOWX.js";
6
6
  import {
7
7
  detectRuntime,
8
8
  redactProxyCredentials
9
- } from "./chunk-H6EMK6QK.js";
9
+ } from "./chunk-LQIDP6K5.js";
10
10
  import {
11
11
  init_esbuild_shims
12
- } from "./chunk-A4BMJM77.js";
12
+ } from "./chunk-5O2XNYP6.js";
13
13
  import {
14
14
  __name
15
15
  } from "./chunk-J2S4EL5Y.js";
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  init_esbuild_shims
5
- } from "./chunk-A4BMJM77.js";
5
+ } from "./chunk-5O2XNYP6.js";
6
6
  import {
7
7
  __name
8
8
  } from "./chunk-J2S4EL5Y.js";
@@ -2,23 +2,23 @@
2
2
  "use strict";
3
3
  import {
4
4
  createTask
5
- } from "./chunk-42XGFRJS.js";
5
+ } from "./chunk-KKRTYONM.js";
6
6
  import {
7
7
  getPlanRequiredTeammatePreApprovalMessage,
8
8
  isPlanRequiredTeammateAwaitingApproval
9
- } from "./chunk-5MBO76SL.js";
9
+ } from "./chunk-F333XEAU.js";
10
10
  import {
11
11
  resolveActiveTeamName
12
- } from "./chunk-GO6LNQXT.js";
12
+ } from "./chunk-6AM5D4ME.js";
13
13
  import {
14
14
  BaseDeclarativeTool,
15
15
  BaseToolInvocation,
16
16
  ToolDisplayNames,
17
17
  ToolNames
18
- } from "./chunk-X3YGAX7V.js";
18
+ } from "./chunk-JGUT3LWZ.js";
19
19
  import {
20
20
  init_esbuild_shims
21
- } from "./chunk-A4BMJM77.js";
21
+ } from "./chunk-5O2XNYP6.js";
22
22
  import {
23
23
  __name
24
24
  } from "./chunk-J2S4EL5Y.js";
@@ -2,10 +2,10 @@
2
2
  "use strict";
3
3
  import {
4
4
  require_src
5
- } from "./chunk-QN5NZ3UQ.js";
5
+ } from "./chunk-DMTGGOSA.js";
6
6
  import {
7
7
  init_esbuild_shims
8
- } from "./chunk-A4BMJM77.js";
8
+ } from "./chunk-5O2XNYP6.js";
9
9
  import {
10
10
  __commonJS,
11
11
  __name,
@@ -0,0 +1,91 @@
1
+ // Force strict mode and setup for ESM
2
+ "use strict";
3
+ import {
4
+ t
5
+ } from "./chunk-AAUZBE5Y.js";
6
+ import {
7
+ writeStderrLine
8
+ } from "./chunk-YUZI3WAC.js";
9
+ import {
10
+ createDebugLogger
11
+ } from "./chunk-7NFB7LBQ.js";
12
+ import {
13
+ init_esbuild_shims
14
+ } from "./chunk-5O2XNYP6.js";
15
+ import {
16
+ __name
17
+ } from "./chunk-J2S4EL5Y.js";
18
+
19
+ // packages/cli/src/utils/chat-recording-failure.ts
20
+ init_esbuild_shims();
21
+ import { randomUUID } from "node:crypto";
22
+ var CHAT_RECORDING_FAILURE_MESSAGE = "Session recording stopped after a write failure. New messages for the affected session will not be saved. Check disk space and permissions, then start a new session to resume recording. See the debug log for details.";
23
+ var TUI_CHAT_RECORDING_FAILURE_MESSAGE = "Session recording stopped after a write failure. New messages for the affected session will not be saved. Check disk space and permissions, then run `/clear` to start a new recorded session. See the debug log for details.";
24
+ var CHAT_RECORDING_SETTLE_TIMEOUT_MS = 2e3;
25
+ var debugLogger = createDebugLogger("CHAT_RECORDING");
26
+ function createChatRecordingFailureSystemMessage(event) {
27
+ return {
28
+ type: "system",
29
+ subtype: "session_recording_degraded",
30
+ uuid: randomUUID(),
31
+ session_id: event.sessionId,
32
+ parent_tool_use_id: null,
33
+ data: {
34
+ session_id: event.sessionId,
35
+ reason: "write_failed",
36
+ message: CHAT_RECORDING_FAILURE_MESSAGE
37
+ }
38
+ };
39
+ }
40
+ __name(createChatRecordingFailureSystemMessage, "createChatRecordingFailureSystemMessage");
41
+ function reportChatRecordingFailureToAdapter(adapter, event) {
42
+ adapter.emitMessage(createChatRecordingFailureSystemMessage(event));
43
+ }
44
+ __name(reportChatRecordingFailureToAdapter, "reportChatRecordingFailureToAdapter");
45
+ function subscribeToHeadlessChatRecordingFailures(config, adapter) {
46
+ if (typeof config.onChatRecordingFailure !== "function") return () => {
47
+ };
48
+ return config.onChatRecordingFailure((event) => {
49
+ if (config.getOutputFormat() === "text" /* TEXT */) {
50
+ writeStderrLine(`Warning: ${t(CHAT_RECORDING_FAILURE_MESSAGE)}`);
51
+ return;
52
+ }
53
+ reportChatRecordingFailureToAdapter(adapter, event);
54
+ });
55
+ }
56
+ __name(subscribeToHeadlessChatRecordingFailures, "subscribeToHeadlessChatRecordingFailures");
57
+ async function settleChatRecording(config, options) {
58
+ if (typeof config.getChatRecordingService !== "function") return "settled";
59
+ const recorder = config.getChatRecordingService();
60
+ if (!recorder) return "settled";
61
+ if (options.finalize) recorder.finalize();
62
+ let timer;
63
+ const timeout = new Promise((resolve) => {
64
+ timer = setTimeout(() => {
65
+ debugLogger.debug("Timed out waiting for chat recording to flush");
66
+ resolve("timeout");
67
+ }, CHAT_RECORDING_SETTLE_TIMEOUT_MS);
68
+ });
69
+ const settled = recorder.flush().then(
70
+ () => "settled",
71
+ () => "settled"
72
+ );
73
+ try {
74
+ return await Promise.race([settled, timeout]);
75
+ } finally {
76
+ if (timer) clearTimeout(timer);
77
+ }
78
+ }
79
+ __name(settleChatRecording, "settleChatRecording");
80
+
81
+ export {
82
+ TUI_CHAT_RECORDING_FAILURE_MESSAGE,
83
+ reportChatRecordingFailureToAdapter,
84
+ subscribeToHeadlessChatRecordingFailures,
85
+ settleChatRecording
86
+ };
87
+ /**
88
+ * @license
89
+ * Copyright 2025 Qwen Team
90
+ * SPDX-License-Identifier: Apache-2.0
91
+ */
@@ -1,42 +1,44 @@
1
1
  // Force strict mode and setup for ESM
2
2
  "use strict";
3
+ import {
4
+ DEFAULT_DARK_THEME_NAME,
5
+ DEFAULT_LIGHT_THEME_NAME
6
+ } from "./chunk-RKUWKYED.js";
3
7
  import {
4
8
  SUPPORTED_LANGUAGES,
5
9
  detectSystemLanguage,
6
10
  getLanguageNameFromLocale,
7
11
  getLanguageSettingsOptions,
8
12
  t
9
- } from "./chunk-O33TBKDC.js";
10
- import {
11
- DEFAULT_DARK_THEME_NAME,
12
- DEFAULT_LIGHT_THEME_NAME
13
- } from "./chunk-TLRYABYP.js";
13
+ } from "./chunk-AAUZBE5Y.js";
14
14
  import {
15
15
  getHomeEnvFallbackVars,
16
16
  loadEnvironment,
17
17
  preResolveHomeEnvOverrides
18
- } from "./chunk-BOBRZZKD.js";
18
+ } from "./chunk-A7W4GQRW.js";
19
19
  import {
20
20
  CONSOLIDATED_DISABLE_KEYS,
21
21
  V1_INDICATOR_KEYS,
22
22
  V1_TO_V2_MIGRATION_MAP,
23
23
  V1_TO_V2_PRESERVE_DISABLE_MAP,
24
24
  V2_CONTAINER_KEYS,
25
- getSystemDefaultsPath,
26
- getSystemSettingsPath,
27
25
  resolveEnvVarsInObject
28
- } from "./chunk-O2YT7VB4.js";
26
+ } from "./chunk-GOXKNSDZ.js";
27
+ import {
28
+ getSystemDefaultsPath,
29
+ getSystemSettingsPath
30
+ } from "./chunk-IDS7MSUP.js";
29
31
  import {
30
32
  ENV_CORRUPTED_PATH,
31
33
  ENV_WAS_RECOVERED
32
- } from "./chunk-Z3I3QJK3.js";
34
+ } from "./chunk-QRUIS3DN.js";
33
35
  import {
34
36
  isWorkspaceTrusted,
35
37
  updateSettingsFilePreservingFormat
36
- } from "./chunk-DICGXFAI.js";
38
+ } from "./chunk-HJCVNZLQ.js";
37
39
  import {
38
40
  require_strip_json_comments
39
- } from "./chunk-QYUE6W3T.js";
41
+ } from "./chunk-ALGGS7UH.js";
40
42
  import {
41
43
  DEFAULT_MAX_SUBAGENT_DEPTH,
42
44
  DEFAULT_MAX_TOOL_CALLS_PER_TURN,
@@ -46,23 +48,23 @@ import {
46
48
  DEFAULT_TRUNCATE_TOOL_OUTPUT_LINES,
47
49
  DEFAULT_TRUNCATE_TOOL_OUTPUT_THRESHOLD,
48
50
  stripRuntimeSnapshotPrefix
49
- } from "./chunk-3GNOQZDC.js";
51
+ } from "./chunk-HJUDVNCO.js";
50
52
  import {
51
53
  DEFAULT_QWEN_CUSTOM_IGNORE_FILE_NAMES
52
- } from "./chunk-TLWA7TPR.js";
54
+ } from "./chunk-L5U3ELZX.js";
53
55
  import {
54
56
  DEFAULT_SENSITIVE_SPAN_ATTRIBUTE_MAX_LENGTH,
55
57
  SENSITIVE_SPAN_ATTRIBUTE_MAX_LENGTH_LIMIT
56
- } from "./chunk-BUZ6HGL4.js";
58
+ } from "./chunk-HWTL6MPR.js";
57
59
  import {
58
60
  FatalConfigError,
59
61
  Storage,
60
62
  createDebugLogger,
61
63
  getErrorMessage
62
- } from "./chunk-22MNNNXE.js";
64
+ } from "./chunk-7NFB7LBQ.js";
63
65
  import {
64
66
  init_esbuild_shims
65
- } from "./chunk-A4BMJM77.js";
67
+ } from "./chunk-5O2XNYP6.js";
66
68
  import {
67
69
  __name,
68
70
  __toESM
@@ -100,6 +102,18 @@ function getPersistScopeForModelSelection(settings) {
100
102
  return getModelProvidersOwnerScope(settings) ?? "User" /* User */;
101
103
  }
102
104
  __name(getPersistScopeForModelSelection, "getPersistScopeForModelSelection");
105
+ function getWritableScopes(settings) {
106
+ return settings.isTrusted ? ["Workspace" /* Workspace */, "User" /* User */] : ["User" /* User */];
107
+ }
108
+ __name(getWritableScopes, "getWritableScopes");
109
+ function getOwnKeyScope(settings, key) {
110
+ for (const scope of getWritableScopes(settings)) {
111
+ const obj = settings.forScope(scope).settings;
112
+ if (Object.prototype.hasOwnProperty.call(obj, key)) return scope;
113
+ }
114
+ return void 0;
115
+ }
116
+ __name(getOwnKeyScope, "getOwnKeyScope");
103
117
 
104
118
  // packages/cli/src/config/settingsSchema.ts
105
119
  init_esbuild_shims();
@@ -841,25 +855,30 @@ var SETTINGS_SCHEMA = {
841
855
  category: "UI",
842
856
  requiresRestart: false,
843
857
  default: false,
844
- description: "Hide tool output and thinking for a cleaner view (toggle with Ctrl+O).",
845
- showInDialog: true
858
+ // Retired from the TUI (compact tool output is now always-on there, and
859
+ // Ctrl+O opens the transcript instead of toggling this). Kept as a
860
+ // hidden, schema-only setting so the web shell's independent compact
861
+ // toggle can still persist via the daemon settings routes (mirrors
862
+ // `voiceModel`). Not shown in the TUI settings dialog.
863
+ description: "Compact view (web shell only; not used by the TUI).",
864
+ showInDialog: false
846
865
  },
847
- compactInline: {
866
+ useTerminalBuffer: {
848
867
  type: "boolean",
849
- label: "Compact Inline",
868
+ label: "Virtualized History (reduces flicker on long sessions)",
850
869
  category: "UI",
851
- requiresRestart: true,
870
+ requiresRestart: false,
852
871
  default: false,
853
- description: "Compact tool display within each group instead of merging across groups. Requires compactMode to be enabled.",
872
+ description: "Render conversation history in an in-app scrollable viewport instead of the terminal scrollback buffer. Recommended if you see flicker, scroll-storm, or interface freeze on long sessions, after Ctrl+O, after Ctrl+E / Ctrl+F (expand), after window resize, or when alt-tabbing back. Scroll with Shift+\u2191/\u2193 (line), PgUp/PgDn (page), Ctrl+Home/End (top/bottom), or the mouse wheel. Also enables mouse interactions: click an option in a menu/dialog to select it, hover to highlight it, and click in the prompt to position the cursor. Does NOT use the host terminal scrollback while enabled; for native text selection, hold Shift (or Option on macOS) while dragging.",
854
873
  showInDialog: true
855
874
  },
856
- useTerminalBuffer: {
875
+ showScrollbar: {
857
876
  type: "boolean",
858
- label: "Virtualized History (reduces flicker on long sessions)",
877
+ label: "Show Scrollbar (Virtualized History)",
859
878
  category: "UI",
860
879
  requiresRestart: false,
861
- default: false,
862
- description: "Render conversation history in an in-app scrollable viewport instead of the terminal scrollback buffer. Recommended if you see flicker, scroll-storm, or interface freeze on long sessions, after Ctrl+O, after Ctrl+E / Ctrl+F (expand), after window resize, or when alt-tabbing back. Scroll with Shift+\u2191/\u2193 (line), PgUp/PgDn (page), Ctrl+Home/End (top/bottom), or the mouse wheel. Also enables mouse interactions: click an option in a menu/dialog to select it, hover to highlight it, and click in the prompt to position the cursor. Does NOT use the host terminal scrollback while enabled; for native text selection, hold Shift (or Option on macOS) while dragging.",
880
+ default: true,
881
+ description: "Show the auto-hiding scrollbar in the in-app scrollable viewport (Virtualized History). The bar appears while scrolling and fades out when idle. Disable to hide it entirely.",
863
882
  showInDialog: true
864
883
  },
865
884
  shellOutputMaxLines: {
@@ -1093,6 +1112,19 @@ var SETTINGS_SCHEMA = {
1093
1112
  description: "Image-capable model used as the vision bridge: when a text-only main model receives an image, it is transcribed by this model first. Set with /model --vision. Leave empty to auto-pick a same-provider vision model.",
1094
1113
  showInDialog: true
1095
1114
  },
1115
+ visionBridgeTimeoutMs: {
1116
+ type: "integer",
1117
+ label: "Vision Bridge Timeout (ms)",
1118
+ category: "Model",
1119
+ // Read once in the Config constructor with no setter, so a mid-session
1120
+ // change only takes effect on restart.
1121
+ requiresRestart: true,
1122
+ default: void 0,
1123
+ minimum: 1,
1124
+ maximum: 2147483647,
1125
+ description: "Per-attempt timeout in milliseconds for the vision bridge image transcription call (a positive integer up to 2147483647). Unset uses the built-in 30s. Raise for slow or proxied vision endpoints.",
1126
+ showInDialog: false
1127
+ },
1096
1128
  modelFallbacks: {
1097
1129
  type: "string",
1098
1130
  label: "Model Fallbacks",
@@ -1310,6 +1342,16 @@ var SETTINGS_SCHEMA = {
1310
1342
  parentKey: "generationConfig",
1311
1343
  showInDialog: false
1312
1344
  },
1345
+ forceGlobalCacheScope: {
1346
+ type: "boolean",
1347
+ label: "Force Global Cache Scope",
1348
+ category: "Generation Configuration",
1349
+ requiresRestart: false,
1350
+ default: false,
1351
+ description: "Force scope:'global' on Anthropic cache_control entries even when the base URL is not an Anthropic-native origin (e.g. proxy providers like Routify, OpenRouter). Requires the proxy to forward cache_control fields and the prompt-caching-scope-2026-01-05 beta.",
1352
+ parentKey: "generationConfig",
1353
+ showInDialog: false
1354
+ },
1313
1355
  splitToolMedia: {
1314
1356
  type: "boolean",
1315
1357
  label: "Split Tool Result Media",
@@ -1533,7 +1575,7 @@ var SETTINGS_SCHEMA = {
1533
1575
  category: "Context",
1534
1576
  requiresRestart: false,
1535
1577
  default: void 0,
1536
- description: "Fraction of context window at which auto-compaction triggers (greater than 0, up to 1). Default is 0.7 (70%).",
1578
+ description: "Target fraction of the context window at which auto-compaction triggers (greater than 0, up to 1). Acts as a ceiling on the trigger: on large windows this is the effective trigger (~85%); on smaller windows compaction may fire earlier to leave room to summarize. Default is 0.85 (85%).",
1537
1579
  showInDialog: false,
1538
1580
  jsonSchemaOverride: {
1539
1581
  type: "number",
@@ -1588,6 +1630,16 @@ var SETTINGS_SCHEMA = {
1588
1630
  description: "Ask for confirmation before auto-generated skills are added to the skill library. When off, auto-skills are saved immediately.",
1589
1631
  showInDialog: false
1590
1632
  },
1633
+ agentTimeoutMinutes: {
1634
+ type: "number",
1635
+ label: "Memory Agent Timeout (minutes)",
1636
+ category: "Memory",
1637
+ requiresRestart: true,
1638
+ default: void 0,
1639
+ minimum: 0,
1640
+ description: "Max runtime in minutes for background memory agents (extraction, dream, remember, skill review). Unset uses each agent's built-in default (2\u20135 minutes); 0 disables the time limit. Useful for slow local models that need longer than the defaults.",
1641
+ showInDialog: false
1642
+ },
1591
1643
  enableTeamMemory: {
1592
1644
  type: "boolean",
1593
1645
  label: "Enable Team Memory",
@@ -1917,6 +1969,28 @@ var SETTINGS_SCHEMA = {
1917
1969
  default: false,
1918
1970
  description: "Show color in shell output.",
1919
1971
  showInDialog: false
1972
+ },
1973
+ defaultTimeoutMs: {
1974
+ type: "integer",
1975
+ minimum: 0,
1976
+ maximum: 6e5,
1977
+ label: "Default Command Timeout (ms)",
1978
+ category: "Tools",
1979
+ requiresRestart: true,
1980
+ default: void 0,
1981
+ description: "Default timeout, in milliseconds, for foreground shell commands started by the agent. A per-call timeout on the shell tool overrides this. When unset, foreground commands time out after 120000 ms (2 minutes). Set to 0 to disable the timeout.",
1982
+ showInDialog: false
1983
+ },
1984
+ heartbeatIntervalMs: {
1985
+ type: "integer",
1986
+ minimum: 0,
1987
+ maximum: 6e5,
1988
+ label: "Silent Command Heartbeat Interval (ms)",
1989
+ category: "Tools",
1990
+ requiresRestart: true,
1991
+ default: void 0,
1992
+ description: "Interval, in milliseconds, between liveness heartbeats emitted while a foreground shell command produces no output. Heartbeats are forwarded to ACP clients and stream-json consumers so they can tell a silent command from a dead session. When unset, heartbeats fire every 10000 ms (10 seconds). Set to 0 to disable heartbeats.",
1993
+ showInDialog: false
1920
1994
  }
1921
1995
  }
1922
1996
  },
@@ -2369,9 +2443,29 @@ var SETTINGS_SCHEMA = {
2369
2443
  category: "Advanced",
2370
2444
  requiresRestart: false,
2371
2445
  default: {},
2372
- description: "Settings for multi-agent collaboration features (Arena, Team, Swarm).",
2446
+ description: "Settings for built-in agents and multi-agent collaboration features (Arena, Team, Swarm).",
2373
2447
  showInDialog: false,
2374
2448
  properties: {
2449
+ builtin: {
2450
+ type: "object",
2451
+ label: "Built-in Agents",
2452
+ category: "Advanced",
2453
+ requiresRestart: true,
2454
+ default: {},
2455
+ description: "Settings for built-in subagents.",
2456
+ showInDialog: false,
2457
+ properties: {
2458
+ exploreModel: {
2459
+ type: "string",
2460
+ label: "Explore Model",
2461
+ category: "Model",
2462
+ requiresRestart: true,
2463
+ default: "inherit",
2464
+ description: 'Model selector for the built-in Explore subagent. Use "inherit" for the main session model, "fast" for fastModel, a model ID, or an authType:model-id selector. Custom same-name agents are unaffected.',
2465
+ showInDialog: false
2466
+ }
2467
+ }
2468
+ },
2375
2469
  maxParallelAgents: {
2376
2470
  type: "number",
2377
2471
  label: "Max Parallel Agents",
@@ -2535,6 +2629,17 @@ var SETTINGS_SCHEMA = {
2535
2629
  mergeStrategy: "concat" /* CONCAT */,
2536
2630
  items: HOOK_DEFINITION_ITEMS
2537
2631
  },
2632
+ MessageDisplay: {
2633
+ type: "array",
2634
+ label: "Message Display Hooks",
2635
+ category: "Advanced",
2636
+ requiresRestart: false,
2637
+ default: [],
2638
+ description: "Hooks that execute repeatedly as the assistant reply streams, before the After Agent (Stop) hooks fire.",
2639
+ showInDialog: false,
2640
+ mergeStrategy: "concat" /* CONCAT */,
2641
+ items: HOOK_DEFINITION_ITEMS
2642
+ },
2538
2643
  Notification: {
2539
2644
  type: "array",
2540
2645
  label: "Notification Hooks",
@@ -2716,7 +2821,7 @@ var SETTINGS_SCHEMA = {
2716
2821
  category: "Experimental",
2717
2822
  requiresRestart: false,
2718
2823
  default: true,
2719
- description: "Generate a short LLM-based label after each tool batch completes. In compact mode the label replaces the generic `Tool \xD7 N` header; in full mode it appears as a dim `\u25CF <label>` line below the tool group. Requires a fast model to be configured; runs in parallel with the next API call so latency is hidden. Currently affects interactive CLI rendering only \u2014 SDK / non-interactive emission of the `tool_use_summary` message is not yet wired (the message factory is exported for a follow-up PR). Can be overridden with QWEN_CODE_EMIT_TOOL_USE_SUMMARIES=0 or =1.",
2824
+ description: "Generate a short LLM-based label after each tool batch completes. For a completed tool group the label replaces the generic `Tool \xD7 N` header; when the group is force-expanded it appears as a dim `\u25CF <label>` line below the tool group. Requires a fast model to be configured; runs in parallel with the next API call so latency is hidden. Currently affects interactive CLI rendering only \u2014 SDK / non-interactive emission of the `tool_use_summary` message is not yet wired (the message factory is exported for a follow-up PR). Can be overridden with QWEN_CODE_EMIT_TOOL_USE_SUMMARIES=0 or =1.",
2720
2825
  showInDialog: true
2721
2826
  }
2722
2827
  }
@@ -3130,6 +3235,15 @@ function validateSettingValue(def, value) {
3130
3235
  if (def.maximum !== void 0 && value > def.maximum)
3131
3236
  return `Value must be <= ${def.maximum}`;
3132
3237
  break;
3238
+ case "integer":
3239
+ if (typeof value !== "number" || !Number.isFinite(value))
3240
+ return "Value must be a finite integer";
3241
+ if (!Number.isInteger(value)) return "Value must be an integer";
3242
+ if (def.minimum !== void 0 && value < def.minimum)
3243
+ return `Value must be >= ${def.minimum}`;
3244
+ if (def.maximum !== void 0 && value > def.maximum)
3245
+ return `Value must be <= ${def.maximum}`;
3246
+ break;
3133
3247
  case "string":
3134
3248
  if (typeof value !== "string") return "Value must be a string";
3135
3249
  if (value.length > MAX_SETTING_STRING_VALUE_LENGTH)
@@ -4611,7 +4725,10 @@ function saveSettings(settingsFile, updates = settingsFile.originalSettings, rep
4611
4725
  __name(saveSettings, "saveSettings");
4612
4726
 
4613
4727
  export {
4728
+ getModelProvidersOwnerScope,
4614
4729
  getPersistScopeForModelSelection,
4730
+ getWritableScopes,
4731
+ getOwnKeyScope,
4615
4732
  TOGGLE_TYPES,
4616
4733
  OUTPUT_LANGUAGE_AUTO,
4617
4734
  isAutoLanguage,
@@ -4,10 +4,10 @@ import {
4
4
  init_esm,
5
5
  isSpanContextValid,
6
6
  trace
7
- } from "./chunk-Z2Z3GUXZ.js";
7
+ } from "./chunk-TB6UDU4T.js";
8
8
  import {
9
9
  init_esbuild_shims
10
- } from "./chunk-A4BMJM77.js";
10
+ } from "./chunk-5O2XNYP6.js";
11
11
  import {
12
12
  __name
13
13
  } from "./chunk-J2S4EL5Y.js";
@@ -965,7 +965,9 @@ function isDebugLogFileEnabled() {
965
965
  }
966
966
  __name(isDebugLogFileEnabled, "isDebugLogFileEnabled");
967
967
  function getActiveSession() {
968
- return sessionContext.getStore() ?? globalSession;
968
+ const contextSession = sessionContext.getStore();
969
+ if (contextSession === false) return null;
970
+ return contextSession ?? globalSession;
969
971
  }
970
972
  __name(getActiveSession, "getActiveSession");
971
973
  function ensureDebugDirExists() {
@@ -1048,6 +1050,10 @@ function runWithDebugLogSession(session, fn) {
1048
1050
  return sessionContext.run(session, fn);
1049
1051
  }
1050
1052
  __name(runWithDebugLogSession, "runWithDebugLogSession");
1053
+ function runWithoutDebugLogSession(fn) {
1054
+ return sessionContext.run(false, fn);
1055
+ }
1056
+ __name(runWithoutDebugLogSession, "runWithoutDebugLogSession");
1051
1057
  function createDebugLogger(tag) {
1052
1058
  return {
1053
1059
  isEnabled: /* @__PURE__ */ __name(() => getActiveSession() !== null, "isEnabled"),
@@ -1122,10 +1128,12 @@ export {
1122
1128
  formatTraceparent,
1123
1129
  setShellTracePropagation,
1124
1130
  isShellTracePropagationEnabled,
1131
+ isDebugLogFileEnabled,
1125
1132
  isDebugLoggingDegraded,
1126
1133
  resetDebugLoggingState,
1127
1134
  setDebugLogSession,
1128
1135
  runWithDebugLogSession,
1136
+ runWithoutDebugLogSession,
1129
1137
  createDebugLogger
1130
1138
  };
1131
1139
  /**
@@ -1,11 +1,12 @@
1
1
  // Force strict mode and setup for ESM
2
2
  "use strict";
3
3
  import {
4
- TotalSessionLimitExceededError
5
- } from "./chunk-GGQQA4JW.js";
4
+ TotalSessionLimitExceededError,
5
+ WorkspaceDrainingError
6
+ } from "./chunk-KSO42X3Z.js";
6
7
  import {
7
8
  init_esbuild_shims
8
- } from "./chunk-A4BMJM77.js";
9
+ } from "./chunk-5O2XNYP6.js";
9
10
  import {
10
11
  __name
11
12
  } from "./chunk-J2S4EL5Y.js";
@@ -17,9 +18,14 @@ function createTotalSessionAdmissionController({
17
18
  getBridges
18
19
  }) {
19
20
  let inFlight = 0;
21
+ const inFlightByWorkspace = /* @__PURE__ */ new Map();
22
+ const drainingWorkspaces = /* @__PURE__ */ new Set();
20
23
  const limit = maxTotalSessions === void 0 || maxTotalSessions === 0 || maxTotalSessions === Number.POSITIVE_INFINITY ? Number.POSITIVE_INFINITY : maxTotalSessions;
21
24
  return {
22
25
  admit(context) {
26
+ if (drainingWorkspaces.has(context.workspaceCwd)) {
27
+ throw new WorkspaceDrainingError(context.workspaceCwd);
28
+ }
23
29
  if (limit !== Number.POSITIVE_INFINITY) {
24
30
  if (getLiveCount(getBridges()) + inFlight >= limit) {
25
31
  throw Object.assign(new TotalSessionLimitExceededError(limit), {
@@ -31,17 +37,45 @@ function createTotalSessionAdmissionController({
31
37
  }
32
38
  }
33
39
  inFlight++;
40
+ inFlightByWorkspace.set(
41
+ context.workspaceCwd,
42
+ (inFlightByWorkspace.get(context.workspaceCwd) ?? 0) + 1
43
+ );
34
44
  let released = false;
35
45
  return {
36
46
  release() {
37
47
  if (released) return;
38
48
  released = true;
39
49
  inFlight--;
50
+ const workspaceInFlight = (inFlightByWorkspace.get(context.workspaceCwd) ?? 1) - 1;
51
+ if (workspaceInFlight <= 0) {
52
+ inFlightByWorkspace.delete(context.workspaceCwd);
53
+ } else {
54
+ inFlightByWorkspace.set(context.workspaceCwd, workspaceInFlight);
55
+ }
40
56
  }
41
57
  };
42
58
  },
43
59
  snapshot() {
44
60
  return { liveCount: getLiveCount(getBridges()), inFlight };
61
+ },
62
+ snapshotForWorkspace(workspaceCwd) {
63
+ return {
64
+ // Per-workspace live sessions remain bridge-owned; removal reads
65
+ // `runtime.bridge.sessionCount`. This controller only owns admission
66
+ // reservations, so the aggregate snapshot shape uses zero here.
67
+ liveCount: 0,
68
+ inFlight: inFlightByWorkspace.get(workspaceCwd) ?? 0
69
+ };
70
+ },
71
+ beginWorkspaceDrain(workspaceCwd) {
72
+ drainingWorkspaces.add(workspaceCwd);
73
+ },
74
+ cancelWorkspaceDrain(workspaceCwd) {
75
+ drainingWorkspaces.delete(workspaceCwd);
76
+ },
77
+ completeWorkspaceDrain(workspaceCwd) {
78
+ drainingWorkspaces.delete(workspaceCwd);
45
79
  }
46
80
  };
47
81
  }
@@ -2,13 +2,13 @@
2
2
  "use strict";
3
3
  import {
4
4
  DEFAULT_QWEN_MODEL
5
- } from "./chunk-OFEVLU4C.js";
5
+ } from "./chunk-CARU2RR2.js";
6
6
  import {
7
7
  SchemaValidator
8
- } from "./chunk-X3YGAX7V.js";
8
+ } from "./chunk-JGUT3LWZ.js";
9
9
  import {
10
10
  init_esbuild_shims
11
- } from "./chunk-A4BMJM77.js";
11
+ } from "./chunk-5O2XNYP6.js";
12
12
  import {
13
13
  __name
14
14
  } from "./chunk-J2S4EL5Y.js";
@@ -2,10 +2,10 @@
2
2
  "use strict";
3
3
  import {
4
4
  require_react
5
- } from "./chunk-KYMBIKIW.js";
5
+ } from "./chunk-HTHUX2T5.js";
6
6
  import {
7
7
  init_esbuild_shims
8
- } from "./chunk-A4BMJM77.js";
8
+ } from "./chunk-5O2XNYP6.js";
9
9
  import {
10
10
  __name,
11
11
  __toESM
@@ -25,9 +25,11 @@ function isTerminalGoalStatusKind(kind) {
25
25
  );
26
26
  }
27
27
  __name(isTerminalGoalStatusKind, "isTerminalGoalStatusKind");
28
+ var isHistoryItemVisibleAfterRestore = /* @__PURE__ */ __name((item) => !item.display?.suppressOnRestore, "isHistoryItemVisibleAfterRestore");
28
29
 
29
30
  export {
30
- isTerminalGoalStatusKind
31
+ isTerminalGoalStatusKind,
32
+ isHistoryItemVisibleAfterRestore
31
33
  };
32
34
  /**
33
35
  * @license