@qwen-code/qwen-code 0.21.10 → 0.21.11

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 (367) hide show
  1. package/bundled/coordinate/SKILL.md +52 -0
  2. package/bundled/qc-helper/docs/configuration/model-providers.md +10 -8
  3. package/bundled/qc-helper/docs/extension/_meta.ts +1 -0
  4. package/bundled/qc-helper/docs/extension/agent-plugins.md +50 -0
  5. package/bundled/qc-helper/docs/extension/extension-releasing.md +3 -3
  6. package/bundled/qc-helper/docs/extension/introduction.md +17 -3
  7. package/bundled/qc-helper/docs/features/_meta.ts +1 -0
  8. package/bundled/qc-helper/docs/features/arena.md +4 -3
  9. package/bundled/qc-helper/docs/features/commands.md +7 -6
  10. package/bundled/qc-helper/docs/features/dual-output.md +5 -0
  11. package/bundled/qc-helper/docs/features/headless.md +8 -0
  12. package/bundled/qc-helper/docs/features/multi-agent-coordination.md +30 -0
  13. package/bundled/qc-helper/docs/qwen-serve.md +7 -7
  14. package/bundled/review/SKILL.md +17 -7
  15. package/chunks/{MaxSizedBox-FKXYULMW.js → MaxSizedBox-G7QPSZTF.js} +45 -44
  16. package/chunks/{StandaloneSessionPicker-OQS3M7AY.js → StandaloneSessionPicker-3CTEPV7S.js} +65 -64
  17. package/chunks/{acp-startup-profiler-VNTFWYAC.js → acp-startup-profiler-JMJBZDVO.js} +2 -2
  18. package/chunks/{acpAgent-AGS6HLQQ.js → acpAgent-43JURWOW.js} +1107 -285
  19. package/chunks/{agent-4NCVO27U.js → agent-MIY4LJJJ.js} +42 -41
  20. package/chunks/agent-headless-LWVA6GR5.js +87 -0
  21. package/chunks/{anthropicContentGenerator-D3Y4RFT4.js → anthropicContentGenerator-7HEP7Q5D.js} +8 -8
  22. package/chunks/{artifact-tool-N652YE4L.js → artifact-tool-M7UAJ5NT.js} +2 -2
  23. package/chunks/{askUserQuestion-ONW74PKJ.js → askUserQuestion-7G3LI3IZ.js} +2 -2
  24. package/chunks/{bridge-FHINXZMN.js → bridge-PTTJEBNP.js} +47 -46
  25. package/chunks/{ca-ZLKAB4K3.js → ca-4CQ6MYNQ.js} +2 -1
  26. package/chunks/{channel-management-service-PHELKOW2.js → channel-management-service-PQ6SU56M.js} +6 -6
  27. package/chunks/channel-settings-store-IKK34GMH.js +102 -0
  28. package/chunks/{channel-worker-group-WQP4RCDO.js → channel-worker-group-WBRE33ZV.js} +8 -7
  29. package/chunks/{channel-worker-manager-MRDFAKIM.js → channel-worker-manager-V4LYVTPH.js} +8 -7
  30. package/chunks/{channel-worker-supervisor-IVSDIMI4.js → channel-worker-supervisor-YDAGW2RP.js} +6 -5
  31. package/chunks/{chunk-2PLNY5TN.js → chunk-23GFHEM3.js} +4 -4
  32. package/chunks/{chunk-IIJEYBNH.js → chunk-25OFRBH2.js} +188 -58
  33. package/chunks/{chunk-F24A2JBM.js → chunk-2AAFGCWP.js} +690 -151
  34. package/chunks/{chunk-J6SZID63.js → chunk-2AZMF6G5.js} +2 -2
  35. package/chunks/{chunk-6LP743KE.js → chunk-2R2HYSUQ.js} +21 -102
  36. package/chunks/{chunk-DZUO626D.js → chunk-2XZWO53E.js} +3 -3
  37. package/chunks/{chunk-VKJ4KTPJ.js → chunk-3GCU5O2E.js} +1 -1
  38. package/chunks/{chunk-AQAJJMRR.js → chunk-3LHYTQ2R.js} +1 -1
  39. package/chunks/{chunk-QJMOAMXT.js → chunk-3SOTXJNO.js} +8 -8
  40. package/chunks/{chunk-URKIBIFC.js → chunk-45HPDU3F.js} +3 -3
  41. package/chunks/{chunk-OWMAZHIX.js → chunk-47FQVRCO.js} +1 -1
  42. package/chunks/{chunk-Z4JX4NSH.js → chunk-4C4QSXE3.js} +23 -23
  43. package/chunks/{chunk-IRZ2ZH72.js → chunk-4EX3DBFH.js} +4 -4
  44. package/chunks/{chunk-MFDYOYZZ.js → chunk-4MHDNGAV.js} +25 -2
  45. package/chunks/{chunk-ABVRJU3D.js → chunk-4PFKN7CQ.js} +7 -7
  46. package/chunks/{chunk-HV76SFIA.js → chunk-5HBFERG5.js} +3 -3
  47. package/chunks/{chunk-WAUGQKUU.js → chunk-6LYDH7VT.js} +9 -5
  48. package/chunks/{chunk-S6HYI3MF.js → chunk-6S52N6PG.js} +2 -2
  49. package/chunks/{chunk-FVKHVJZQ.js → chunk-732MOPEM.js} +1 -1
  50. package/chunks/{chunk-OCSFNUU4.js → chunk-7QE3QFU3.js} +8 -8
  51. package/chunks/{chunk-WCG5O7IP.js → chunk-7SUQZ7QH.js} +2 -2
  52. package/chunks/{chunk-QG3FFJYU.js → chunk-AAOONL5N.js} +1 -1
  53. package/chunks/{chunk-VSFKIRRW.js → chunk-AKLY5M2C.js} +4 -4
  54. package/chunks/{chunk-UVX4Y6IN.js → chunk-AQHNAA7E.js} +1 -1
  55. package/chunks/{chunk-IBUGFUXC.js → chunk-BIXG46YI.js} +12 -12
  56. package/chunks/{chunk-4TRQPFDP.js → chunk-BJKREW56.js} +6 -8
  57. package/chunks/{chunk-D27I6YJT.js → chunk-BNRNVMOT.js} +27 -18
  58. package/chunks/{chunk-IWTMYQ32.js → chunk-BR6TUEKJ.js} +9 -8
  59. package/chunks/{chunk-Q3JQ7OSU.js → chunk-BTYS2JAY.js} +1 -1
  60. package/chunks/{chunk-H6XPXXMH.js → chunk-CQ35AJ4Z.js} +252 -254
  61. package/chunks/{chunk-COBO5EBO.js → chunk-CTQE2NB2.js} +1 -1
  62. package/chunks/{chunk-P3BJLFSZ.js → chunk-DEKY5Y7V.js} +3 -3
  63. package/chunks/{chunk-Y3OVRWRY.js → chunk-DM4C3OX5.js} +1 -1
  64. package/chunks/{chunk-YWPSGJFI.js → chunk-DSKLWQHC.js} +2 -2
  65. package/chunks/{chunk-KKBPOU75.js → chunk-EFIMD5VA.js} +1 -1
  66. package/chunks/{chunk-CTJLZLB5.js → chunk-EN2J77G7.js} +1 -1
  67. package/chunks/{chunk-67EWJE77.js → chunk-ENEEQMGM.js} +1 -1
  68. package/chunks/{chunk-AEL7KN2O.js → chunk-EOBM4T2Z.js} +1 -1
  69. package/chunks/{chunk-NDU63YLI.js → chunk-ESVSQKPY.js} +4 -4
  70. package/chunks/{chunk-CPG6P4GG.js → chunk-EYS3GGM3.js} +1 -1
  71. package/chunks/{chunk-4PYCZH2V.js → chunk-EYW54TBD.js} +3 -3
  72. package/chunks/{chunk-EBZ6BJTF.js → chunk-F4T5J34H.js} +1 -1
  73. package/chunks/{chunk-FOGU3LJX.js → chunk-F6AOBFUN.js} +1 -1
  74. package/chunks/{chunk-ZBVS26BY.js → chunk-FPGTNKCP.js} +7 -5
  75. package/chunks/{chunk-YF5MALI4.js → chunk-G64M7R2Y.js} +5 -5
  76. package/chunks/{chunk-EI3HZX6C.js → chunk-GJJQV4PY.js} +1 -1
  77. package/chunks/{chunk-CKASRHZI.js → chunk-GLWWPFTW.js} +1 -1
  78. package/chunks/{chunk-GM463R2B.js → chunk-GZGDJ4E6.js} +1 -1
  79. package/chunks/{chunk-W5UC37EE.js → chunk-HHGQGTJQ.js} +2 -0
  80. package/chunks/chunk-HHJLM3WQ.js +41 -0
  81. package/chunks/{chunk-ZRBMO3C7.js → chunk-HMCSRTDY.js} +1 -1
  82. package/chunks/{chunk-L2AFWWJE.js → chunk-HUE2M6VI.js} +50 -5
  83. package/chunks/{chunk-LLCWZQCU.js → chunk-HZV75ET2.js} +3 -3
  84. package/chunks/{chunk-6ZRFAKXK.js → chunk-IEP44U2R.js} +1 -1
  85. package/chunks/{chunk-AOHJKPKL.js → chunk-IQFYO5BF.js} +1 -1
  86. package/chunks/{chunk-UDXSXLER.js → chunk-IW6RQPQB.js} +14 -4
  87. package/chunks/{chunk-XCWO3SMQ.js → chunk-IX7CFQGA.js} +3 -3
  88. package/chunks/{chunk-O3EU6GMH.js → chunk-J4EVBAB3.js} +27 -4
  89. package/chunks/{chunk-ZZCWJWTF.js → chunk-JHMFKJEP.js} +1 -1
  90. package/chunks/{chunk-XVHYA33G.js → chunk-JKEO6OQY.js} +4 -4
  91. package/chunks/{chunk-6Q5ABMTU.js → chunk-JLYYGKRN.js} +23 -19
  92. package/chunks/{chunk-KID7K6H2.js → chunk-JOXXPM3X.js} +6 -6
  93. package/chunks/{chunk-E2FPSSKP.js → chunk-JPA7IDTE.js} +57 -13
  94. package/chunks/{chunk-OQTXYMKW.js → chunk-JS4Q5NG5.js} +3 -3
  95. package/chunks/{chunk-PBRVUF5B.js → chunk-K7JW6V5O.js} +1 -1
  96. package/chunks/{chunk-3P2LV43B.js → chunk-KCCODSAA.js} +3 -3
  97. package/chunks/{chunk-DREZZAZM.js → chunk-KCDQGIHS.js} +13 -5
  98. package/chunks/{chunk-UEOKWYGY.js → chunk-KFCTC5IJ.js} +11 -11
  99. package/chunks/{chunk-M6HMMKVG.js → chunk-KPVVWKF3.js} +1 -1
  100. package/chunks/{chunk-MVUQRLOH.js → chunk-KT4OWAAZ.js} +3 -3
  101. package/chunks/{chunk-W4RQUHY3.js → chunk-L2GTEEEU.js} +142 -23
  102. package/chunks/{chunk-Q3AL4JQ3.js → chunk-LA3FF7RO.js} +2 -2
  103. package/chunks/{chunk-DX3RGJMS.js → chunk-LT532KF4.js} +71 -12
  104. package/chunks/{chunk-JT7XS4YW.js → chunk-M2NMFAFR.js} +1 -1
  105. package/chunks/{chunk-YTFDX4PR.js → chunk-M6NDLY2T.js} +1 -1
  106. package/chunks/{chunk-MIKXJYZB.js → chunk-MCHGE3EC.js} +305 -291
  107. package/chunks/{chunk-Y4R47ZUH.js → chunk-MDQSCFAZ.js} +7 -7
  108. package/chunks/{chunk-EKPKKXY2.js → chunk-MLZCPGDX.js} +1 -1
  109. package/chunks/{chunk-OIVKILPI.js → chunk-MPBRV3UU.js} +3 -0
  110. package/chunks/{chunk-VFMASYQA.js → chunk-MS7GNABG.js} +3 -0
  111. package/chunks/{chunk-2FRY5CRX.js → chunk-MWZYNOCG.js} +3 -3
  112. package/chunks/{chunk-ONSZH6VM.js → chunk-MZQ4I4AP.js} +2 -2
  113. package/chunks/{chunk-UMD7WQTR.js → chunk-N3ZWGKXN.js} +10 -8
  114. package/chunks/{chunk-7MH4J33A.js → chunk-N7NBMAMW.js} +2 -2
  115. package/chunks/{chunk-EUNWC2VS.js → chunk-NC4O6UE6.js} +2 -2
  116. package/chunks/{chunk-A7XMDZRI.js → chunk-NFSSQDB5.js} +5 -5
  117. package/chunks/{chunk-DCZEPFB4.js → chunk-NM3E6GGL.js} +3 -3
  118. package/chunks/{chunk-26CXSA6V.js → chunk-NQPYPDOY.js} +2 -2
  119. package/chunks/{chunk-HUWENAHO.js → chunk-NWPO6I7V.js} +1 -1
  120. package/chunks/{chunk-SR7RZ4MS.js → chunk-O4BBDP2G.js} +2 -2
  121. package/chunks/{chunk-ECWR5LQR.js → chunk-OC5SKSNX.js} +3 -3
  122. package/chunks/{chunk-VWKER4ZH.js → chunk-OGQERNHD.js} +3 -3
  123. package/chunks/{chunk-DA4HRSBW.js → chunk-OPBATTFQ.js} +1 -1
  124. package/chunks/{chunk-OONWZLFK.js → chunk-P7KCJGBR.js} +4 -4
  125. package/chunks/{chunk-OJUQF2PL.js → chunk-PBYVS6QT.js} +3 -3
  126. package/chunks/{chunk-VNNWAZSI.js → chunk-QG2IEE2E.js} +3 -3
  127. package/chunks/{chunk-KZ22NXBY.js → chunk-QGZN4RYB.js} +4 -4
  128. package/chunks/{chunk-2UUMVNYT.js → chunk-QTI7SRXI.js} +3 -3
  129. package/chunks/{chunk-B2GJNDTV.js → chunk-QUESTNOP.js} +1 -1
  130. package/chunks/{chunk-AAE6SR4Q.js → chunk-RUKNJEJO.js} +1 -1
  131. package/chunks/{chunk-NV65ZUVM.js → chunk-RUVZZKDH.js} +1 -1
  132. package/chunks/{chunk-QUI267ZP.js → chunk-SAQHDAUJ.js} +42 -8
  133. package/chunks/{chunk-4MKXUHXY.js → chunk-SUTP6CZA.js} +5 -5
  134. package/chunks/{chunk-UBX6NL47.js → chunk-T4576UW4.js} +3 -3
  135. package/chunks/{chunk-TZEZYNYD.js → chunk-T4FTABSW.js} +1 -1
  136. package/chunks/{chunk-SEZ556DZ.js → chunk-T6W4KACQ.js} +1 -1
  137. package/chunks/chunk-TKAEODJR.js +1279 -0
  138. package/chunks/{chunk-NV3F44FL.js → chunk-TNQLAI6I.js} +2 -2
  139. package/chunks/{chunk-F6WDTQ3M.js → chunk-TNS2M7VL.js} +5 -5
  140. package/chunks/{chunk-7GTMV7UE.js → chunk-TTB6GBJ6.js} +8323 -2227
  141. package/chunks/{chunk-YGT2AUJ7.js → chunk-U2JLICUY.js} +33 -16
  142. package/chunks/{chunk-NEOXOWYH.js → chunk-U7QUDFPD.js} +7 -7
  143. package/chunks/{chunk-QGNOFE5E.js → chunk-UEUE6LJX.js} +1 -1
  144. package/chunks/{chunk-EI3NWELG.js → chunk-UIZGNLBP.js} +4427 -3806
  145. package/chunks/{chunk-ZJ4W6SUY.js → chunk-UM57UTTV.js} +3 -3
  146. package/chunks/{chunk-EQL65XGA.js → chunk-V3LXMASR.js} +47 -21
  147. package/chunks/{chunk-LHEC5V6G.js → chunk-VRWOMUZM.js} +2 -2
  148. package/chunks/{chunk-5MZCSWI4.js → chunk-W2ITCESM.js} +176 -477
  149. package/chunks/{chunk-KONVMRK7.js → chunk-W2PNY24B.js} +1 -1
  150. package/chunks/{chunk-4WL6SY4F.js → chunk-X5GLCWPX.js} +1 -1
  151. package/chunks/{chunk-BSI645OU.js → chunk-XBLYC4MI.js} +3 -3
  152. package/chunks/{chunk-GNPNYXJB.js → chunk-XLQS3VI6.js} +2 -2
  153. package/chunks/{chunk-TRRF5BSP.js → chunk-XT6TGJFD.js} +1 -1
  154. package/chunks/{chunk-PYQADEFD.js → chunk-XTH2OMDS.js} +1 -1
  155. package/chunks/{chunk-47PEPJO7.js → chunk-XUMBOJC2.js} +3 -3
  156. package/chunks/{chunk-GWVUR3QZ.js → chunk-YIKMBYMT.js} +3 -3
  157. package/chunks/{chunk-WOJZWRAZ.js → chunk-YRLW2MSX.js} +1 -1
  158. package/chunks/{chunk-NRLFZWCT.js → chunk-YVVIFFU4.js} +3 -3
  159. package/chunks/chunk-Z7B6SRPM.js +32 -0
  160. package/chunks/{chunk-IA7TGCN2.js → chunk-ZV4XVYL3.js} +4 -4
  161. package/chunks/{chunk-PJRW65JO.js → chunk-ZWPWQEF5.js} +1 -1
  162. package/chunks/{computer-use-WQFK33Z3.js → computer-use-7TIKEXBX.js} +42 -41
  163. package/chunks/{config-utils-ULCSRMWD.js → config-utils-6MVJ54TY.js} +6 -6
  164. package/chunks/{contextCommand-7EOZND7C.js → contextCommand-5QKI7MRY.js} +44 -43
  165. package/chunks/{core-runtime-FGMQRM6E.js → core-runtime-USS7ZF3H.js} +42 -41
  166. package/chunks/{create-sub-session-QIDZUOPU.js → create-sub-session-Y4WYDZGC.js} +2 -2
  167. package/chunks/{create-sub-session-QM2K5HLZ.js → create-sub-session-ZD2F3BH2.js} +42 -41
  168. package/chunks/{cron-create-VONA5JYY.js → cron-create-ZOVA3CC2.js} +4 -4
  169. package/chunks/{cron-delete-5JXSP2MI.js → cron-delete-7Z3H4LJY.js} +4 -4
  170. package/chunks/{cron-list-KE4F2CIR.js → cron-list-UHGX3IQG.js} +4 -4
  171. package/chunks/{daemon-GWD7BT6E.js → daemon-Y3NOHFKQ.js} +38 -7
  172. package/chunks/daemon-status-provider-PMP4J7BC.js +103 -0
  173. package/chunks/daemon-trust-policy-2252VKXI.js +99 -0
  174. package/chunks/{daemon-trust-policy-monitor-6UKEABN5.js → daemon-trust-policy-monitor-OSGGKJXT.js} +49 -48
  175. package/chunks/{de-LIW4XVLN.js → de-UBEBKG6V.js} +2 -1
  176. package/chunks/{deferred-core-runtime-67GJXHXS.js → deferred-core-runtime-3VD4V6YZ.js} +42 -41
  177. package/chunks/{display-image-NQRSIBXM.js → display-image-ZE3GZNIK.js} +4 -4
  178. package/chunks/{dist-Z3CS4OVP.js → dist-AVUYBK7L.js} +11 -5
  179. package/chunks/{dist-6BMOAE3Z.js → dist-BNWP6IZL.js} +4 -4
  180. package/chunks/{dist-3NTTUAHT.js → dist-EFJILGIS.js} +3 -3
  181. package/chunks/{dist-EZE3V3Q7.js → dist-MAIUUIWN.js} +3 -3
  182. package/chunks/{dist-B2CGTW6T.js → dist-NPS52B2V.js} +3 -3
  183. package/chunks/{dist-J47AXBZC.js → dist-PKSRQAR2.js} +3 -3
  184. package/chunks/{dist-OTUO3AS2.js → dist-Q2WJ2IZU.js} +13 -5
  185. package/chunks/{dist-EWW3J4HQ.js → dist-ZWDH5HLS.js} +3 -3
  186. package/chunks/{earlyInputCapture-IWMYR6OB.js → earlyInputCapture-ER4HGLJN.js} +43 -42
  187. package/chunks/{edit-ZFGROCAF.js → edit-B3MT7O53.js} +42 -41
  188. package/chunks/{en-SY5GTIGX.js → en-X6YV7GME.js} +2 -1
  189. package/chunks/{enter-worktree-TZZZCDM5.js → enter-worktree-WVIYVSDJ.js} +42 -41
  190. package/chunks/{enterPlanMode-U77BI3R6.js → enterPlanMode-DDCIM6HA.js} +42 -41
  191. package/chunks/{environment-HC37DS2I.js → environment-LITGMOUP.js} +45 -44
  192. package/chunks/{errors-6AG54JPD.js → errors-E5CIOR2I.js} +44 -43
  193. package/chunks/{exit-worktree-UYYWFPNK.js → exit-worktree-NQ2A6URE.js} +42 -41
  194. package/chunks/exitPlanMode-YXSWN4D3.js +85 -0
  195. package/chunks/{fast-path-F5FSZ3O7.js → fast-path-PH3DBS6X.js} +3 -3
  196. package/chunks/{fast-path-settings-RPAVBD7P.js → fast-path-settings-LNOFM2YP.js} +2 -2
  197. package/chunks/{fr-RQFO7U4P.js → fr-VENTC2BS.js} +2 -1
  198. package/chunks/{gemini-NKQHYM36.js → gemini-4YPO4ADY.js} +88 -87
  199. package/chunks/{geminiContentGenerator-HCWZOUX3.js → geminiContentGenerator-GMSVVXOU.js} +6 -6
  200. package/chunks/{glob-3PDXKBAO.js → glob-3Y3VHLM2.js} +42 -41
  201. package/chunks/{goal-tools-SWNB6GP4.js → goal-tools-JDK2SNMV.js} +4 -4
  202. package/chunks/{grep-5HZKZYVD.js → grep-VUHUDZYG.js} +42 -41
  203. package/chunks/handleAutoUpdate-OBFFPWSJ.js +94 -0
  204. package/chunks/{i18n-Q27KKNDL.js → i18n-4PJA5KKU.js} +43 -42
  205. package/chunks/{image-gen-2Z2RJ6W7.js → image-gen-4IFV4HES.js} +10 -10
  206. package/chunks/initializer-ZTY3VSWL.js +100 -0
  207. package/chunks/{installationInfo-XXB75T7O.js → installationInfo-6USRNCD2.js} +43 -42
  208. package/chunks/{ja-KOZKHJHZ.js → ja-QHT4EQTO.js} +2 -1
  209. package/chunks/{keychain-token-storage-TVAMTNP7.js → keychain-token-storage-JTWUYFU7.js} +2 -2
  210. package/chunks/list-U2ZDKYWN.js +103 -0
  211. package/chunks/{list-agents-Z4WABFDZ.js → list-agents-4GQ2XNEU.js} +2 -2
  212. package/chunks/loadedSettingsAdapter-WW4HIVLO.js +97 -0
  213. package/chunks/{loggingContentGenerator-6NTFBM7Q.js → loggingContentGenerator-XXG6YWUE.js} +46 -27
  214. package/chunks/{loop-wakeup-UZ5RL5Y2.js → loop-wakeup-HOQI3K5D.js} +5 -5
  215. package/chunks/{ls-TVHDGIES.js → ls-O4VBQRG7.js} +4 -4
  216. package/chunks/{lsp-CVN6OQPI.js → lsp-APQJ5ZEZ.js} +2 -2
  217. package/chunks/{managed-npm-update-SPHYQUWZ.js → managed-npm-update-7GM2LPLL.js} +43 -42
  218. package/chunks/mcp-7KZW2T5P.js +97 -0
  219. package/chunks/{monitor-ZBBPAA54.js → monitor-RQROQHLD.js} +42 -41
  220. package/chunks/nonInteractiveCli-U7JNJGS6.js +163 -0
  221. package/chunks/{notebook-edit-5W3FW7Z2.js → notebook-edit-XQA6YCH2.js} +42 -41
  222. package/chunks/{openaiContentGenerator-TQANPEVZ.js → openaiContentGenerator-BZW2IB42.js} +29 -29
  223. package/chunks/{pidfile-EQOBLH4E.js → pidfile-NX5VZ3IK.js} +43 -42
  224. package/chunks/{processUtils-7XQG7EHS.js → processUtils-M635AD23.js} +2 -2
  225. package/chunks/{pt-U6AOCTMF.js → pt-VL3I5RNY.js} +2 -1
  226. package/chunks/{qwenContentGenerator-BKCPHHXU.js → qwenContentGenerator-KHJ73E2C.js} +48 -48
  227. package/chunks/{qwenOAuth2-BJ6PQKE6.js → qwenOAuth2-QMK25XO7.js} +9 -9
  228. package/chunks/read-file-6LKIKKXD.js +32 -0
  229. package/chunks/{read-mcp-resource-PZ4ZF6YL.js → read-mcp-resource-TJSJRH4F.js} +2 -2
  230. package/chunks/{record-artifact-P4HFMS7X.js → record-artifact-FXF5LHPE.js} +3 -3
  231. package/chunks/{resumeHistoryUtils-6N6XGJJW.js → resumeHistoryUtils-RR2KEVH5.js} +49 -48
  232. package/chunks/ripGrep-CF2WRBYV.js +85 -0
  233. package/chunks/{ru-CMX4UMYP.js → ru-4RCKL4PY.js} +2 -1
  234. package/chunks/{run-qwen-serve-BCKBCAMX.js → run-qwen-serve-L5TF57J4.js} +61 -50
  235. package/chunks/{runtime-E2437YKL.js → runtime-3RE3BPR4.js} +55 -54
  236. package/chunks/{scheduler-K3D5Z655.js → scheduler-LXQZAMYT.js} +44 -43
  237. package/chunks/{sdk-exporters-http-XVTZQRCE.js → sdk-exporters-http-7SYSCGEO.js} +3 -3
  238. package/chunks/{sdk-impl-7W7AKCS4.js → sdk-impl-VZI6M6EH.js} +6 -6
  239. package/chunks/{send-message-CAMSLG2L.js → send-message-RBYLV5NY.js} +6 -6
  240. package/chunks/{serve-IH4XR5IL.js → serve-5D4S7GIA.js} +49 -48
  241. package/chunks/{server-UD6INW7J.js → server-ILZB6TTC.js} +403 -178
  242. package/chunks/{session-GR4ZEVW4.js → session-SXCZITZ4.js} +114 -94
  243. package/chunks/{settings-5O24D3OJ.js → settings-4RQB3OVF.js} +48 -47
  244. package/chunks/{shell-UTLWLG5G.js → shell-FCTR3OI2.js} +42 -41
  245. package/chunks/{skill-QQAZL4VO.js → skill-IAKHPD5H.js} +19 -19
  246. package/chunks/{skill-settings-P3YHJVBZ.js → skill-settings-SOR23NOP.js} +48 -47
  247. package/chunks/spawnChannel-I6VAWYQJ.js +98 -0
  248. package/chunks/{standalone-update-QP742MGP.js → standalone-update-5NN3MTYH.js} +44 -43
  249. package/chunks/{startInteractiveUI-YCS6AEPN.js → startInteractiveUI-OYGL3NZJ.js} +590 -329
  250. package/chunks/{syntheticOutput-PEBJQYJV.js → syntheticOutput-D3Z64LJC.js} +3 -3
  251. package/chunks/{task-create-5NWCQSJF.js → task-create-URFZ5EUX.js} +10 -10
  252. package/chunks/{task-list-53265TRZ.js → task-list-6JDFMPUW.js} +5 -5
  253. package/chunks/{task-stop-FPCOIRYX.js → task-stop-HHUGCD25.js} +2 -2
  254. package/chunks/{task-update-5HN577LS.js → task-update-LCJM3EYG.js} +10 -10
  255. package/chunks/{team-create-WFH7OCDQ.js → team-create-J4JP6AXN.js} +44 -43
  256. package/chunks/{team-delete-MMQB4OSC.js → team-delete-PZGGBQLM.js} +5 -5
  257. package/chunks/{team-plan-approval-EGTT53MV.js → team-plan-approval-7BEAIR2H.js} +42 -41
  258. package/chunks/{terminal-image-renderer-BWRESAQ7.js → terminal-image-renderer-SGGTG5LN.js} +44 -43
  259. package/chunks/theme-manager-67TSB7LH.js +89 -0
  260. package/chunks/{todoWrite-JGV6VLOX.js → todoWrite-WINAZSZI.js} +4 -4
  261. package/chunks/{tool-search-TI5PTIBF.js → tool-search-XPOFDWOX.js} +19 -19
  262. package/chunks/{total-session-admission-66UDSOHO.js → total-session-admission-SZJFAM25.js} +47 -46
  263. package/chunks/{trustedFolders-4KYHA4IG.js → trustedFolders-44NTYYV4.js} +43 -42
  264. package/chunks/{update-relaunch-WB6LGIF2.js → update-relaunch-K33Q3WEH.js} +5 -5
  265. package/chunks/{updateCheck-LOS5GYFC.js → updateCheck-VBRNPLS4.js} +45 -44
  266. package/chunks/{useAutoAcceptIndicator-MHAPY52L.js → useAutoAcceptIndicator-AUNRB5S7.js} +52 -51
  267. package/chunks/{validateNonInterActiveAuth-QV22HNQU.js → validateNonInterActiveAuth-WTO36MTA.js} +83 -82
  268. package/chunks/{version-DALWZHKQ.js → version-JZA6HYPI.js} +1 -1
  269. package/chunks/{web-fetch-JMJVMYFE.js → web-fetch-LLHPV2IR.js} +19 -19
  270. package/chunks/{web-search-DNDUIPU5.js → web-search-4HCHRZ3U.js} +11 -11
  271. package/chunks/{workflow-JGNN64PM.js → workflow-YI74QTWW.js} +43 -42
  272. package/chunks/workspace-providers-status-CI3AO2BH.js +100 -0
  273. package/chunks/{workspace-registration-store-LRJG7QA4.js → workspace-registration-store-KPIKXDHA.js} +1 -1
  274. package/chunks/{workspace-registry-KVXIFM36.js → workspace-registry-XE22QDE6.js} +47 -46
  275. package/chunks/{workspace-service-PO4AAKKT.js → workspace-service-WI2FD72A.js} +54 -53
  276. package/chunks/workspace-skills-status-FFZU6FXL.js +100 -0
  277. package/chunks/{workspace-trust-reconciler-DOZPCVHG.js → workspace-trust-reconciler-GJLNXR2U.js} +54 -53
  278. package/chunks/write-file-IEAC3XC3.js +87 -0
  279. package/chunks/{zh-AGL2FVBI.js → zh-LMSTK4WD.js} +2 -1
  280. package/chunks/{zh-TW-KI66MHQY.js → zh-TW-SQ4HTSCW.js} +2 -1
  281. package/chunks/{zoom-image-CNC77ZMA.js → zoom-image-GTVVT25J.js} +15 -15
  282. package/cli.js +13 -13
  283. package/locales/ca.js +1 -0
  284. package/locales/de.js +1 -0
  285. package/locales/en.js +1 -0
  286. package/locales/fr.js +1 -0
  287. package/locales/ja.js +1 -0
  288. package/locales/pt.js +1 -0
  289. package/locales/ru.js +1 -0
  290. package/locales/zh-TW.js +1 -0
  291. package/locales/zh.js +1 -0
  292. package/package.json +3 -3
  293. package/web-shell/assets/{arc-CDk0d60K.js → arc-B13-S0Yo.js} +1 -1
  294. package/web-shell/assets/{architectureDiagram-3BPJPVTR-h-W3I2lP.js → architectureDiagram-3BPJPVTR-CHvWNlVW.js} +1 -1
  295. package/web-shell/assets/{blockDiagram-GPEHLZMM-D1pvSmZg.js → blockDiagram-GPEHLZMM-CXebOlXF.js} +1 -1
  296. package/web-shell/assets/{c4Diagram-AAUBKEIU-ByAm5ZNf.js → c4Diagram-AAUBKEIU-BQpx4y3Q.js} +1 -1
  297. package/web-shell/assets/channel-BB_Hm8Rf.js +1 -0
  298. package/web-shell/assets/{chunk-2J33WTMH-VrGPPOGV.js → chunk-2J33WTMH-Cak1exSv.js} +1 -1
  299. package/web-shell/assets/{chunk-4BX2VUAB-B7hTowgG.js → chunk-4BX2VUAB-BIc8BV5_.js} +1 -1
  300. package/web-shell/assets/{chunk-55IACEB6-j1Fq8DpE.js → chunk-55IACEB6-DoeJ5BL1.js} +1 -1
  301. package/web-shell/assets/{chunk-727SXJPM-UjABYpF2.js → chunk-727SXJPM-BDR_wYSu.js} +1 -1
  302. package/web-shell/assets/{chunk-AQP2D5EJ-D4uBItrs.js → chunk-AQP2D5EJ-BhRRGRq1.js} +1 -1
  303. package/web-shell/assets/{chunk-FMBD7UC4-DeFbKlb8.js → chunk-FMBD7UC4-BJGAwVXr.js} +1 -1
  304. package/web-shell/assets/{chunk-ND2GUHAM-rQJ8TIgT.js → chunk-ND2GUHAM-vhE73bsD.js} +1 -1
  305. package/web-shell/assets/{chunk-QZHKN3VN-DAGcRxvq.js → chunk-QZHKN3VN-BuTBZsdR.js} +1 -1
  306. package/web-shell/assets/classDiagram-4FO5ZUOK-B_hFK54Y.js +1 -0
  307. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-B_hFK54Y.js +1 -0
  308. package/web-shell/assets/{cose-bilkent-S5V4N54A-MaE7MJSt.js → cose-bilkent-S5V4N54A-CVHKipHP.js} +1 -1
  309. package/web-shell/assets/{dagre-BM42HDAG-DzijYGSb.js → dagre-BM42HDAG-C1DPa8SV.js} +1 -1
  310. package/web-shell/assets/{diagram-2AECGRRQ-WdbG7WnX.js → diagram-2AECGRRQ-BYP_QxkT.js} +1 -1
  311. package/web-shell/assets/{diagram-5GNKFQAL-NYutsBnw.js → diagram-5GNKFQAL-Cray7ruQ.js} +1 -1
  312. package/web-shell/assets/{diagram-KO2AKTUF-Dqg0eBY0.js → diagram-KO2AKTUF-Ds4vJANi.js} +1 -1
  313. package/web-shell/assets/{diagram-LMA3HP47-C7vRP2Lb.js → diagram-LMA3HP47-DxFrDykH.js} +1 -1
  314. package/web-shell/assets/{diagram-OG6HWLK6-B2sEPpPt.js → diagram-OG6HWLK6-BdIO-pF_.js} +1 -1
  315. package/web-shell/assets/{erDiagram-TEJ5UH35-a4zIbzm8.js → erDiagram-TEJ5UH35-5JA8KDYV.js} +1 -1
  316. package/web-shell/assets/{flowDiagram-I6XJVG4X-BK9y89ya.js → flowDiagram-I6XJVG4X-DL4drKro.js} +1 -1
  317. package/web-shell/assets/{ganttDiagram-6RSMTGT7-wUQTSNvV.js → ganttDiagram-6RSMTGT7-ijX2DD6_.js} +1 -1
  318. package/web-shell/assets/{gitGraphDiagram-PVQCEYII-Dnzt4SAi.js → gitGraphDiagram-PVQCEYII-_lPsFLFF.js} +1 -1
  319. package/web-shell/assets/index-BTwNYZkp.js +1785 -0
  320. package/web-shell/assets/{index-BA3wUcKL.js → index-C-YoqYbs.js} +1 -1
  321. package/web-shell/assets/index-dHAFxPHb.css +5 -0
  322. package/web-shell/assets/{infoDiagram-5YYISTIA-DcaoToij.js → infoDiagram-5YYISTIA-COFClLab.js} +1 -1
  323. package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-DzduqhP2.js → ishikawaDiagram-YF4QCWOH-Div9KOgO.js} +1 -1
  324. package/web-shell/assets/{journeyDiagram-JHISSGLW-BvviZR_O.js → journeyDiagram-JHISSGLW-VAw5u0wc.js} +1 -1
  325. package/web-shell/assets/{kanban-definition-UN3LZRKU-Efm2JxY3.js → kanban-definition-UN3LZRKU-CncCn8Nl.js} +1 -1
  326. package/web-shell/assets/{linear-DtY3IbOs.js → linear-D6ad7e_k.js} +1 -1
  327. package/web-shell/assets/{mermaid.core-PzpFqoMe.js → mermaid.core-BV1IECGb.js} +5 -5
  328. package/web-shell/assets/{mindmap-definition-RKZ34NQL-BLlTkHS0.js → mindmap-definition-RKZ34NQL-a3jeNgPr.js} +1 -1
  329. package/web-shell/assets/{pieDiagram-4H26LBE5-D-mKF-jE.js → pieDiagram-4H26LBE5-DsVRY5BW.js} +1 -1
  330. package/web-shell/assets/{quadrantDiagram-W4KKPZXB-DYCzslGm.js → quadrantDiagram-W4KKPZXB-D6zgexJK.js} +1 -1
  331. package/web-shell/assets/{requirementDiagram-4Y6WPE33-Dfpxlk7R.js → requirementDiagram-4Y6WPE33-VEpSwJjn.js} +1 -1
  332. package/web-shell/assets/{sankeyDiagram-5OEKKPKP-D5cRaaxh.js → sankeyDiagram-5OEKKPKP-CYEuOFne.js} +1 -1
  333. package/web-shell/assets/{sequenceDiagram-3UESZ5HK-s04DReiS.js → sequenceDiagram-3UESZ5HK-CCg0lI-9.js} +1 -1
  334. package/web-shell/assets/{stateDiagram-AJRCARHV-01UNFgnb.js → stateDiagram-AJRCARHV-BHXPsL0B.js} +1 -1
  335. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-eTG8D0QT.js +1 -0
  336. package/web-shell/assets/{timeline-definition-PNZ67QCA-DX8_wZBC.js → timeline-definition-PNZ67QCA-gqTf9a0k.js} +1 -1
  337. package/web-shell/assets/{vennDiagram-CIIHVFJN-BK0FlBme.js → vennDiagram-CIIHVFJN-C4DXXkBh.js} +1 -1
  338. package/web-shell/assets/{wardley-L42UT6IY-DkPc9UlD.js → wardley-L42UT6IY-CMK46EiX.js} +1 -1
  339. package/web-shell/assets/{wardleyDiagram-YWT4CUSO-DNKkpDAo.js → wardleyDiagram-YWT4CUSO-DTk1Gzt9.js} +1 -1
  340. package/web-shell/assets/{xychartDiagram-2RQKCTM6-CiPwg8QG.js → xychartDiagram-2RQKCTM6-BcJsM1dH.js} +1 -1
  341. package/web-shell/index.html +2 -2
  342. package/chunks/agent-headless-HYEHZFH6.js +0 -86
  343. package/chunks/channel-settings-store-OXYG5S5X.js +0 -101
  344. package/chunks/chunk-I5VM3SKY.js +0 -451
  345. package/chunks/chunk-PDPFQ2FO.js +0 -156
  346. package/chunks/daemon-status-provider-L3J6GKCT.js +0 -102
  347. package/chunks/daemon-trust-policy-4PHPY23S.js +0 -98
  348. package/chunks/exitPlanMode-RWJR2KGB.js +0 -84
  349. package/chunks/handleAutoUpdate-NHFSGYTF.js +0 -93
  350. package/chunks/initializer-Y5DJLT43.js +0 -99
  351. package/chunks/list-YHNQ32CS.js +0 -102
  352. package/chunks/loadedSettingsAdapter-GHUQK7H4.js +0 -96
  353. package/chunks/mcp-EA3KO6FS.js +0 -96
  354. package/chunks/nonInteractiveCli-NNOR56HU.js +0 -162
  355. package/chunks/read-file-KKTXGIZD.js +0 -32
  356. package/chunks/ripGrep-SJVAAYDV.js +0 -84
  357. package/chunks/spawnChannel-UAQMH6Y6.js +0 -94
  358. package/chunks/theme-manager-ZNDGAHJN.js +0 -88
  359. package/chunks/workspace-providers-status-K22B3Z6B.js +0 -99
  360. package/chunks/workspace-skills-status-DDYCBVSH.js +0 -99
  361. package/chunks/write-file-TT6MWIKC.js +0 -86
  362. package/web-shell/assets/channel-DPFUV4oi.js +0 -1
  363. package/web-shell/assets/classDiagram-4FO5ZUOK-CLm0hVvw.js +0 -1
  364. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-CLm0hVvw.js +0 -1
  365. package/web-shell/assets/index-BjC3yjjL.css +0 -5
  366. package/web-shell/assets/index-QzFq6w7o.js +0 -1775
  367. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-DXb5olqv.js +0 -1
@@ -133,6 +133,12 @@ __name(assertManagementField, "assertManagementField");
133
133
  function assertManagementDescriptor(plugin) {
134
134
  const management = plugin.management;
135
135
  if (management === void 0) return;
136
+ const defaultSessionScope = plugin.defaultSessionScope ?? "user";
137
+ if (!SESSION_SCOPE_OPTIONS.some(
138
+ (option) => option.value === defaultSessionScope
139
+ )) {
140
+ throw new Error("Channel defaultSessionScope is invalid.");
141
+ }
136
142
  if (management.validateConfig !== void 0 && (typeof management.validateConfig !== "function" || management.validateConfig.constructor.name === "AsyncFunction")) {
137
143
  throw new Error(
138
144
  "Channel management metadata must declare validateConfig as a synchronous function."
@@ -142,20 +148,41 @@ function assertManagementDescriptor(plugin) {
142
148
  throw new Error("Channel management metadata must declare a fields array.");
143
149
  }
144
150
  assertManagementFields(management.fields);
151
+ const sessionScopeField = management.fields.find(
152
+ (field) => field.key === "sessionScope"
153
+ );
154
+ if (sessionScopeField) {
155
+ if (sessionScopeField.kind !== "enum") {
156
+ throw new Error('Channel field "sessionScope" must be an enum.');
157
+ }
158
+ if (!sessionScopeField.options?.some(
159
+ (option) => option.value === defaultSessionScope
160
+ )) {
161
+ throw new Error(
162
+ 'Channel field "sessionScope" must include the channel defaultSessionScope.'
163
+ );
164
+ }
165
+ }
145
166
  }
146
167
  __name(assertManagementDescriptor, "assertManagementDescriptor");
168
+ var SESSION_SCOPE_OPTIONS = [
169
+ { value: "user", label: "Per user and chat" },
170
+ { value: "thread", label: "Per thread" },
171
+ { value: "chat_thread", label: "Per chat and thread" },
172
+ { value: "single", label: "One shared session" }
173
+ ];
147
174
  function ensureBuiltins() {
148
175
  if (!builtinsPromise) {
149
176
  builtinsPromise = (async () => {
150
177
  const labelled = [
151
- { name: "telegram", promise: import("./dist-B2CGTW6T.js") },
152
- { name: "weixin", promise: import("./dist-6BMOAE3Z.js") },
153
- { name: "dingtalk", promise: import("./dist-EZE3V3Q7.js") },
154
- { name: "wecom", promise: import("./dist-3NTTUAHT.js") },
155
- { name: "feishu", promise: import("./dist-J47AXBZC.js") },
156
- { name: "qqbot", promise: import("./dist-OTUO3AS2.js") },
157
- { name: "github", promise: import("./dist-Z3CS4OVP.js") },
158
- { name: "gitlab", promise: import("./dist-EWW3J4HQ.js") }
178
+ { name: "telegram", promise: import("./dist-NPS52B2V.js") },
179
+ { name: "weixin", promise: import("./dist-BNWP6IZL.js") },
180
+ { name: "dingtalk", promise: import("./dist-MAIUUIWN.js") },
181
+ { name: "wecom", promise: import("./dist-EFJILGIS.js") },
182
+ { name: "feishu", promise: import("./dist-PKSRQAR2.js") },
183
+ { name: "qqbot", promise: import("./dist-Q2WJ2IZU.js") },
184
+ { name: "github", promise: import("./dist-AVUYBK7L.js") },
185
+ { name: "gitlab", promise: import("./dist-ZWDH5HLS.js") }
159
186
  ];
160
187
  const results = await Promise.allSettled(labelled.map((l) => l.promise));
161
188
  for (let i = 0; i < results.length; i++) {
@@ -224,14 +251,31 @@ async function supportedTypes() {
224
251
  __name(supportedTypes, "supportedTypes");
225
252
  async function supportedChannelCatalog() {
226
253
  await ensureBuiltins();
227
- return [...registry.values()].map(
228
- ({ channelType, displayName, management }) => ({
254
+ return [...registry.values()].map((plugin) => {
255
+ const { channelType, displayName, management } = plugin;
256
+ const fields = management?.fields ?? [];
257
+ const defaultSessionScope = plugin.defaultSessionScope ?? "user";
258
+ const normalizedFields = fields.map(
259
+ (field) => field.key === "sessionScope" && field.default === void 0 ? { ...field, default: defaultSessionScope } : field
260
+ );
261
+ return {
229
262
  type: channelType,
230
263
  displayName,
231
264
  manageable: management !== void 0,
232
- fields: management?.fields ?? []
233
- })
234
- );
265
+ fields: management && !fields.some((field) => field.key === "sessionScope") ? [
266
+ ...normalizedFields,
267
+ {
268
+ key: "sessionScope",
269
+ label: "Session scope",
270
+ kind: "enum",
271
+ required: true,
272
+ default: defaultSessionScope,
273
+ description: "Controls which incoming conversations share one agent session.",
274
+ options: SESSION_SCOPE_OPTIONS
275
+ }
276
+ ] : normalizedFields
277
+ };
278
+ });
235
279
  }
236
280
  __name(supportedChannelCatalog, "supportedChannelCatalog");
237
281
 
@@ -2,11 +2,11 @@
2
2
  "use strict";
3
3
  import {
4
4
  createTask
5
- } from "./chunk-XCWO3SMQ.js";
5
+ } from "./chunk-IX7CFQGA.js";
6
6
  import {
7
7
  getPlanRequiredTeammatePreApprovalMessage,
8
8
  isPlanRequiredTeammateAwaitingApproval
9
- } from "./chunk-WAUGQKUU.js";
9
+ } from "./chunk-6LYDH7VT.js";
10
10
  import {
11
11
  resolveActiveTeamName
12
12
  } from "./chunk-S6LOFUVP.js";
@@ -15,7 +15,7 @@ import {
15
15
  BaseToolInvocation,
16
16
  ToolDisplayNames,
17
17
  ToolNames
18
- } from "./chunk-PYQADEFD.js";
18
+ } from "./chunk-XTH2OMDS.js";
19
19
  import {
20
20
  init_esbuild_shims
21
21
  } from "./chunk-5O2XNYP6.js";
@@ -5,7 +5,7 @@ import {
5
5
  } from "./chunk-M5GB774H.js";
6
6
  import {
7
7
  sanitizeLogText
8
- } from "./chunk-DX3RGJMS.js";
8
+ } from "./chunk-LT532KF4.js";
9
9
  import {
10
10
  stripAnsi
11
11
  } from "./chunk-TWPJO254.js";
@@ -5,17 +5,17 @@ import {
5
5
  } from "./chunk-NAVJD2PQ.js";
6
6
  import {
7
7
  formatFetchErrorForUser
8
- } from "./chunk-HV76SFIA.js";
8
+ } from "./chunk-5HBFERG5.js";
9
9
  import {
10
10
  combineAbortSignals
11
11
  } from "./chunk-DJ2GSRLV.js";
12
12
  import {
13
13
  atomicWriteFile
14
- } from "./chunk-FOGU3LJX.js";
14
+ } from "./chunk-F6AOBFUN.js";
15
15
  import {
16
16
  Storage,
17
17
  createDebugLogger
18
- } from "./chunk-OIVKILPI.js";
18
+ } from "./chunk-MPBRV3UU.js";
19
19
  import {
20
20
  init_esbuild_shims
21
21
  } from "./chunk-5O2XNYP6.js";
@@ -9,7 +9,7 @@ import {
9
9
  relaxSchemaForFunctionCalling,
10
10
  safeJsonParse,
11
11
  setGenAiUsageProvenance
12
- } from "./chunk-CKASRHZI.js";
12
+ } from "./chunk-GLWWPFTW.js";
13
13
  import {
14
14
  setToolCallPreparations
15
15
  } from "./chunk-GLCZKT5V.js";
@@ -21,7 +21,7 @@ import {
21
21
  } from "./chunk-46UV252V.js";
22
22
  import {
23
23
  createDebugLogger
24
- } from "./chunk-OIVKILPI.js";
24
+ } from "./chunk-MPBRV3UU.js";
25
25
  import {
26
26
  FinishReason,
27
27
  GenerateContentResponse
@@ -810,8 +810,15 @@ function classifyContentOnlyThinkingTagPrefix(text, streamFinished) {
810
810
  for (const closing of [false, true, false]) {
811
811
  const tagLength = consumeTag(rest, closing);
812
812
  if (tagLength === null) return "pending";
813
- if (tagLength === void 0) return "clean";
813
+ if (tagLength === void 0) {
814
+ if (!closing) return "clean";
815
+ break;
816
+ }
814
817
  rest = rest.slice(tagLength).trimStart();
818
+ if (closing && !rest) return "clean";
819
+ if (closing === false && /\S/.test(rest) && !/<\/think(?:ing)?\s*>/i.test(rest)) {
820
+ return streamFinished ? "leaked" : "pending";
821
+ }
815
822
  }
816
823
  let depth = 1;
817
824
  let hasNestedOpening = false;
@@ -1078,7 +1085,8 @@ function convertOpenAIChunkToGemini(chunk, requestContext) {
1078
1085
  );
1079
1086
  const isPossibleTag = canBeStandaloneThinkingTagPrefix(combinedCandidateText) || contentOnlyThinkingState === "pending" || contentOnlyThinkingState === "suspicious";
1080
1087
  const finishedWhitespaceCandidate = Boolean(choice.finish_reason) && !closingTagName && !/\S/.test(combinedCandidateText);
1081
- const releaseContentOnlyCandidate = contentOnlyThinkingState === "pending" && (Boolean(choice.finish_reason) || combinedCandidateText.trimStart().length > MAX_THINKING_TAG_CANDIDATE_LENGTH);
1088
+ const confirmedOpeningTagCandidate = LEADING_THINKING_TAG_PATTERN.test(combinedCandidateText) && !combinedCandidateText.trimStart().startsWith("</");
1089
+ const releaseContentOnlyCandidate = contentOnlyThinkingState === "pending" && !confirmedOpeningTagCandidate && (Boolean(choice.finish_reason) || combinedCandidateText.trimStart().length > MAX_THINKING_TAG_CANDIDATE_LENGTH);
1082
1090
  if (contentOnlyThinkingState === "leaked") {
1083
1091
  throwProtocolTagLeak(requestContext);
1084
1092
  }
@@ -1096,7 +1104,7 @@ function convertOpenAIChunkToGemini(chunk, requestContext) {
1096
1104
  visibleText = combinedCandidateText;
1097
1105
  requestContext.pendingThinkingTagCandidate = void 0;
1098
1106
  } else if (isPossibleTag) {
1099
- if (!closingTagName && combinedCandidateText.trimStart().length > MAX_THINKING_TAG_CANDIDATE_LENGTH) {
1107
+ if (!confirmedOpeningTagCandidate && !closingTagName && combinedCandidateText.trimStart().length > MAX_THINKING_TAG_CANDIDATE_LENGTH) {
1100
1108
  throwProtocolTagLeak(requestContext);
1101
1109
  }
1102
1110
  requestContext.pendingThinkingTagCandidate = closingTagName ? { text: `</${closingTagName}>`, closingTagName } : { text: combinedCandidateText };
@@ -5,10 +5,10 @@ import {
5
5
  } from "./chunk-5EJZE3FP.js";
6
6
  import {
7
7
  resolveBundleDir
8
- } from "./chunk-EI3NWELG.js";
8
+ } from "./chunk-UIZGNLBP.js";
9
9
  import {
10
10
  Storage
11
- } from "./chunk-OIVKILPI.js";
11
+ } from "./chunk-MPBRV3UU.js";
12
12
  import {
13
13
  writeStderrLine
14
14
  } from "./chunk-KGJGEEVR.js";
@@ -156,15 +156,15 @@ var MUST_TRANSLATE_KEYS = [
156
156
 
157
157
  // import("./locales/**/*.js") in packages/cli/src/i18n/index.ts
158
158
  var globImport_locales_js = __glob({
159
- "./locales/ca.js": () => import("./ca-ZLKAB4K3.js"),
160
- "./locales/de.js": () => import("./de-LIW4XVLN.js"),
161
- "./locales/en.js": () => import("./en-SY5GTIGX.js"),
162
- "./locales/fr.js": () => import("./fr-RQFO7U4P.js"),
163
- "./locales/ja.js": () => import("./ja-KOZKHJHZ.js"),
164
- "./locales/pt.js": () => import("./pt-U6AOCTMF.js"),
165
- "./locales/ru.js": () => import("./ru-CMX4UMYP.js"),
166
- "./locales/zh-TW.js": () => import("./zh-TW-KI66MHQY.js"),
167
- "./locales/zh.js": () => import("./zh-AGL2FVBI.js")
159
+ "./locales/ca.js": () => import("./ca-4CQ6MYNQ.js"),
160
+ "./locales/de.js": () => import("./de-UBEBKG6V.js"),
161
+ "./locales/en.js": () => import("./en-X6YV7GME.js"),
162
+ "./locales/fr.js": () => import("./fr-VENTC2BS.js"),
163
+ "./locales/ja.js": () => import("./ja-QHT4EQTO.js"),
164
+ "./locales/pt.js": () => import("./pt-VL3I5RNY.js"),
165
+ "./locales/ru.js": () => import("./ru-4RCKL4PY.js"),
166
+ "./locales/zh-TW.js": () => import("./zh-TW-SQ4HTSCW.js"),
167
+ "./locales/zh.js": () => import("./zh-LMSTK4WD.js")
168
168
  });
169
169
 
170
170
  // packages/cli/src/i18n/index.ts
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  getErrorStatus
5
- } from "./chunk-OIVKILPI.js";
5
+ } from "./chunk-MPBRV3UU.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  getInboxesDir
5
- } from "./chunk-7MH4J33A.js";
5
+ } from "./chunk-N7NBMAMW.js";
6
6
  import {
7
7
  require_proper_lockfile
8
8
  } from "./chunk-KRXPRVGL.js";
@@ -11,11 +11,11 @@ import {
11
11
  } from "./chunk-VGC4I5JJ.js";
12
12
  import {
13
13
  atomicWriteJSON
14
- } from "./chunk-FOGU3LJX.js";
14
+ } from "./chunk-F6AOBFUN.js";
15
15
  import {
16
16
  createDebugLogger,
17
17
  isNodeError
18
- } from "./chunk-OIVKILPI.js";
18
+ } from "./chunk-MPBRV3UU.js";
19
19
  import {
20
20
  init_esbuild_shims
21
21
  } from "./chunk-5O2XNYP6.js";
@@ -322,33 +322,152 @@ var require_src = __commonJS({
322
322
  }
323
323
  });
324
324
 
325
- // packages/core/src/utils/safeJsonStringify.ts
325
+ // packages/core/src/telemetry/constants.ts
326
326
  init_esbuild_shims();
327
- function safeJsonStringify(obj, space) {
328
- const ancestors = [];
329
- return JSON.stringify(
330
- obj,
331
- function(_key, value) {
332
- if (typeof value !== "object" || value === null) {
333
- return value;
334
- }
335
- while (ancestors.length > 0 && ancestors[ancestors.length - 1] !== this) {
336
- ancestors.pop();
337
- }
338
- if (ancestors.includes(value)) {
339
- return "[Circular]";
340
- }
341
- ancestors.push(value);
342
- return value;
343
- },
344
- space
345
- );
327
+ var SERVICE_NAME = "qwen-code";
328
+ var EVENT_USER_PROMPT = "qwen-code.user_prompt";
329
+ var EVENT_USER_RETRY = "qwen-code.user_retry";
330
+ var EVENT_TOOL_CALL = "qwen-code.tool_call";
331
+ var EVENT_REPEATED_TOOL_FAILURE_GUARD = "qwen-code.repeated_tool_failure_guard";
332
+ var EVENT_API_REQUEST = "qwen-code.api_request";
333
+ var EVENT_API_ERROR = "qwen-code.api_error";
334
+ var EVENT_API_CANCEL = "qwen-code.api_cancel";
335
+ var EVENT_API_RESPONSE = "qwen-code.api_response";
336
+ var EVENT_CLI_CONFIG = "qwen-code.config";
337
+ var EVENT_SESSION_START = "session.start";
338
+ var EVENT_SESSION_END = "session.end";
339
+ var EVENT_EXTENSION_DISABLE = "qwen-code.extension_disable";
340
+ var EVENT_EXTENSION_ENABLE = "qwen-code.extension_enable";
341
+ var EVENT_EXTENSION_INSTALL = "qwen-code.extension_install";
342
+ var EVENT_EXTENSION_UNINSTALL = "qwen-code.extension_uninstall";
343
+ var EVENT_EXTENSION_UPDATE = "qwen-code.extension_update";
344
+ var EVENT_RIPGREP_FALLBACK = "qwen-code.ripgrep_fallback";
345
+ var EVENT_RIPGREP_RUNTIME_RECOVERY = "qwen-code.ripgrep_runtime_recovery";
346
+ var EVENT_NEXT_SPEAKER_CHECK = "qwen-code.next_speaker_check";
347
+ var EVENT_SLASH_COMMAND = "qwen-code.slash_command";
348
+ var EVENT_IDE_CONNECTION = "qwen-code.ide_connection";
349
+ var EVENT_CHAT_COMPRESSION = "qwen-code.chat_compression";
350
+ var EVENT_CONTENT_RETRY = "qwen-code.chat.content_retry";
351
+ var EVENT_CONTENT_RETRY_FAILURE = "qwen-code.chat.content_retry_failure";
352
+ var EVENT_PROTOCOL_TAG_SANITIZED = "qwen-code.chat.protocol_tag_sanitized";
353
+ var EVENT_API_RETRY = "qwen-code.api_retry";
354
+ var EVENT_CONVERSATION_FINISHED = "qwen-code.conversation_finished";
355
+ var EVENT_FILE_OPERATION = "qwen-code.file_operation";
356
+ var EVENT_MODEL_SLASH_COMMAND = "qwen-code.slash_command.model";
357
+ var EVENT_SUBAGENT_EXECUTION = "qwen-code.subagent_execution";
358
+ var EVENT_SKILL_LAUNCH = "qwen-code.skill_launch";
359
+ var EVENT_AUTH = "qwen-code.auth";
360
+ var EVENT_USER_FEEDBACK = "qwen-code.user_feedback";
361
+ var EVENT_TOOL_OUTPUT_TRUNCATED = "qwen-code.tool_output_truncated";
362
+ var DEFAULT_SENSITIVE_SPAN_ATTRIBUTE_MAX_LENGTH = 1024 * 1024;
363
+ var SENSITIVE_SPAN_ATTRIBUTE_MAX_LENGTH_LIMIT = 100 * 1024 * 1024;
364
+ function isValidSensitiveSpanAttributeMaxLength(value) {
365
+ return Number.isSafeInteger(value) && value >= 1 && value <= SENSITIVE_SPAN_ATTRIBUTE_MAX_LENGTH_LIMIT;
346
366
  }
347
- __name(safeJsonStringify, "safeJsonStringify");
367
+ __name(isValidSensitiveSpanAttributeMaxLength, "isValidSensitiveSpanAttributeMaxLength");
368
+ var EVENT_PROMPT_SUGGESTION = "qwen-code.prompt_suggestion";
369
+ var EVENT_SPECULATION = "qwen-code.speculation";
370
+ var EVENT_WORKFLOW_KEYWORD = "qwen-code.workflow_keyword";
371
+ var EVENT_WORKFLOW_RUN = "qwen-code.workflow_run";
372
+ var EVENT_ARENA_SESSION_STARTED = "qwen-code.arena_session_started";
373
+ var EVENT_ARENA_AGENT_COMPLETED = "qwen-code.arena_agent_completed";
374
+ var EVENT_ARENA_SESSION_ENDED = "qwen-code.arena_session_ended";
375
+ var EVENT_MEMORY_EXTRACT = "qwen-code.memory.extract";
376
+ var EVENT_MEMORY_DREAM = "qwen-code.memory.dream";
377
+ var EVENT_MEMORY_RECALL = "qwen-code.memory.recall";
378
+ var EVENT_MEMORY_RECALL_DELIVERY = "qwen-code.memory.recall.delivery";
379
+ var SPAN_INTERACTION = "qwen-code.interaction";
380
+ var SPAN_LLM_REQUEST = "qwen-code.llm_request";
381
+ var SPAN_TOOL = "qwen-code.tool";
382
+ var SPAN_TOOL_EXECUTION = "qwen-code.tool.execution";
383
+ var SPAN_TOOL_BLOCKED_ON_USER = "qwen-code.tool.blocked_on_user";
384
+ var SPAN_HOOK = "qwen-code.hook";
385
+ var SPAN_SUBAGENT = "qwen-code.subagent";
386
+ var TOOL_FAILURE_KIND_ATTRIBUTE = "tool.failure_kind";
387
+ var TOOL_FAILURE_KIND_CANCELLED = "cancelled";
388
+ var TOOL_FAILURE_KIND_PRE_HOOK_BLOCKED = "pre_hook_blocked";
389
+ var TOOL_FAILURE_KIND_INVOCATION_GUARD_DENIED = "invocation_guard_denied";
390
+ var TOOL_FAILURE_KIND_POST_HOOK_STOPPED = "post_hook_stopped";
391
+ var TOOL_FAILURE_KIND_TOOL_ERROR = "tool_error";
392
+ var TOOL_FAILURE_KIND_TOOL_EXCEPTION = "tool_exception";
393
+ var TOOL_FAILURE_KIND_PERMISSION_DENIED = "permission_denied";
394
+ var TOOL_FAILURE_KIND_PERMISSION_HOOK_DENIED = "permission_hook_denied";
395
+ var TOOL_FAILURE_KIND_PLAN_MODE_BLOCKED = "plan_mode_blocked";
396
+ var TOOL_FAILURE_KIND_NON_INTERACTIVE_DENIED = "non_interactive_denied";
397
+ var TOOL_FAILURE_KIND_BACKGROUND_AGENT_DENIED = "background_agent_denied";
398
+ var TOOL_FAILURE_KIND_TIMEOUT = "timeout";
348
399
 
349
400
  export {
350
- require_src,
351
- safeJsonStringify
401
+ SERVICE_NAME,
402
+ EVENT_USER_PROMPT,
403
+ EVENT_USER_RETRY,
404
+ EVENT_TOOL_CALL,
405
+ EVENT_REPEATED_TOOL_FAILURE_GUARD,
406
+ EVENT_API_REQUEST,
407
+ EVENT_API_ERROR,
408
+ EVENT_API_CANCEL,
409
+ EVENT_API_RESPONSE,
410
+ EVENT_CLI_CONFIG,
411
+ EVENT_SESSION_START,
412
+ EVENT_SESSION_END,
413
+ EVENT_EXTENSION_DISABLE,
414
+ EVENT_EXTENSION_ENABLE,
415
+ EVENT_EXTENSION_INSTALL,
416
+ EVENT_EXTENSION_UNINSTALL,
417
+ EVENT_EXTENSION_UPDATE,
418
+ EVENT_RIPGREP_FALLBACK,
419
+ EVENT_RIPGREP_RUNTIME_RECOVERY,
420
+ EVENT_NEXT_SPEAKER_CHECK,
421
+ EVENT_SLASH_COMMAND,
422
+ EVENT_IDE_CONNECTION,
423
+ EVENT_CHAT_COMPRESSION,
424
+ EVENT_CONTENT_RETRY,
425
+ EVENT_CONTENT_RETRY_FAILURE,
426
+ EVENT_PROTOCOL_TAG_SANITIZED,
427
+ EVENT_API_RETRY,
428
+ EVENT_CONVERSATION_FINISHED,
429
+ EVENT_FILE_OPERATION,
430
+ EVENT_MODEL_SLASH_COMMAND,
431
+ EVENT_SUBAGENT_EXECUTION,
432
+ EVENT_SKILL_LAUNCH,
433
+ EVENT_AUTH,
434
+ EVENT_USER_FEEDBACK,
435
+ EVENT_TOOL_OUTPUT_TRUNCATED,
436
+ DEFAULT_SENSITIVE_SPAN_ATTRIBUTE_MAX_LENGTH,
437
+ SENSITIVE_SPAN_ATTRIBUTE_MAX_LENGTH_LIMIT,
438
+ isValidSensitiveSpanAttributeMaxLength,
439
+ EVENT_PROMPT_SUGGESTION,
440
+ EVENT_SPECULATION,
441
+ EVENT_WORKFLOW_KEYWORD,
442
+ EVENT_WORKFLOW_RUN,
443
+ EVENT_ARENA_SESSION_STARTED,
444
+ EVENT_ARENA_AGENT_COMPLETED,
445
+ EVENT_ARENA_SESSION_ENDED,
446
+ EVENT_MEMORY_EXTRACT,
447
+ EVENT_MEMORY_DREAM,
448
+ EVENT_MEMORY_RECALL,
449
+ EVENT_MEMORY_RECALL_DELIVERY,
450
+ SPAN_INTERACTION,
451
+ SPAN_LLM_REQUEST,
452
+ SPAN_TOOL,
453
+ SPAN_TOOL_EXECUTION,
454
+ SPAN_TOOL_BLOCKED_ON_USER,
455
+ SPAN_HOOK,
456
+ SPAN_SUBAGENT,
457
+ TOOL_FAILURE_KIND_ATTRIBUTE,
458
+ TOOL_FAILURE_KIND_CANCELLED,
459
+ TOOL_FAILURE_KIND_PRE_HOOK_BLOCKED,
460
+ TOOL_FAILURE_KIND_INVOCATION_GUARD_DENIED,
461
+ TOOL_FAILURE_KIND_POST_HOOK_STOPPED,
462
+ TOOL_FAILURE_KIND_TOOL_ERROR,
463
+ TOOL_FAILURE_KIND_TOOL_EXCEPTION,
464
+ TOOL_FAILURE_KIND_PERMISSION_DENIED,
465
+ TOOL_FAILURE_KIND_PERMISSION_HOOK_DENIED,
466
+ TOOL_FAILURE_KIND_PLAN_MODE_BLOCKED,
467
+ TOOL_FAILURE_KIND_NON_INTERACTIVE_DENIED,
468
+ TOOL_FAILURE_KIND_BACKGROUND_AGENT_DENIED,
469
+ TOOL_FAILURE_KIND_TIMEOUT,
470
+ require_src
352
471
  };
353
472
  /**
354
473
  * @license
@@ -2,10 +2,10 @@
2
2
  "use strict";
3
3
  import {
4
4
  isGitRepository
5
- } from "./chunk-EI3NWELG.js";
5
+ } from "./chunk-UIZGNLBP.js";
6
6
  import {
7
7
  createDebugLogger
8
- } from "./chunk-OIVKILPI.js";
8
+ } from "./chunk-MPBRV3UU.js";
9
9
  import {
10
10
  init_esbuild_shims
11
11
  } from "./chunk-5O2XNYP6.js";