@qwen-code/qwen-code 0.19.9 → 0.19.10

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 (310) hide show
  1. package/bundled/qc-helper/docs/configuration/settings.md +7 -0
  2. package/bundled/qc-helper/docs/features/channels/dingtalk.md +3 -0
  3. package/bundled/qc-helper/docs/features/channels/overview.md +11 -3
  4. package/bundled/qc-helper/docs/features/code-review.md +88 -44
  5. package/bundled/qc-helper/docs/features/commands.md +6 -6
  6. package/bundled/qc-helper/docs/features/hooks.md +29 -0
  7. package/bundled/qc-helper/docs/features/sub-agents.md +21 -0
  8. package/bundled/qc-helper/docs/qwen-serve.md +46 -20
  9. package/bundled/qc-helper/docs/reference/keyboard-shortcuts.md +1 -1
  10. package/bundled/review/DESIGN.md +219 -33
  11. package/bundled/review/SKILL.md +449 -153
  12. package/chunks/{MaxSizedBox-6HYJ3ZPJ.js → MaxSizedBox-67ODZ4SZ.js} +31 -31
  13. package/chunks/{StandaloneSessionPicker-WS4GXYOG.js → StandaloneSessionPicker-SIPBQT5Z.js} +51 -49
  14. package/chunks/{acpAgent-5FWSOZL5.js → acpAgent-VPZJXLFX.js} +528 -478
  15. package/chunks/{agent-HOLHB3RT.js → agent-Z7NWL6XL.js} +26 -26
  16. package/chunks/{agent-headless-SXL6H56A.js → agent-headless-73HZ6ROQ.js} +26 -26
  17. package/chunks/{anthropicContentGenerator-L73TO3DB.js → anthropicContentGenerator-56U3YCP2.js} +5 -5
  18. package/chunks/{artifact-tool-U7IRTLIV.js → artifact-tool-BWZZJ42H.js} +2 -2
  19. package/chunks/{askUserQuestion-2DLUUZZG.js → askUserQuestion-WU3S5A5T.js} +2 -2
  20. package/chunks/{bridge-BCJQ7BBB.js → bridge-XFKW6S7Q.js} +32 -32
  21. package/chunks/{ca-UJ6HC4H2.js → ca-C2JTT2N5.js} +4 -1
  22. package/chunks/channel-worker-group-K7QKH6IG.js +13 -0
  23. package/chunks/channel-worker-manager-5RWKSGEU.js +418 -0
  24. package/chunks/channel-worker-supervisor-PCDAZN4D.js +20 -0
  25. package/chunks/{chunk-LXNEJD34.js → chunk-2FO5GFKZ.js} +1 -1
  26. package/chunks/{chunk-B5ORX3FG.js → chunk-2UUAIFQO.js} +1 -1
  27. package/chunks/{chunk-L36P3NBD.js → chunk-2W3OOD4W.js} +2 -0
  28. package/chunks/{chunk-7R3CZA3Q.js → chunk-2Z5UX4KI.js} +1 -1
  29. package/chunks/chunk-3MX7D6QN.js +516 -0
  30. package/chunks/{chunk-E2IY465S.js → chunk-3XJFUTNM.js} +10 -10
  31. package/chunks/{chunk-JZETEN3Z.js → chunk-422XAKCK.js} +3 -3
  32. package/chunks/{chunk-N3EMS75V.js → chunk-4FMG7EDJ.js} +1268 -1233
  33. package/chunks/{chunk-HKMAENAO.js → chunk-4YWLED2A.js} +8 -6
  34. package/chunks/{chunk-SCGXUJBT.js → chunk-5EBKKSBX.js} +3 -3
  35. package/chunks/chunk-5HBA2Z7V.js +28 -0
  36. package/chunks/{chunk-XYQSMABS.js → chunk-5LROA5W4.js} +4 -4
  37. package/chunks/{chunk-ZJE7NSL3.js → chunk-5M6IDOMF.js} +34 -97
  38. package/chunks/{chunk-VA4KQY6V.js → chunk-65N2J6V2.js} +3 -3
  39. package/chunks/{chunk-4C5BQ2D2.js → chunk-6GETGQWP.js} +71 -12
  40. package/chunks/{chunk-PVZM22CK.js → chunk-6GKMJPOC.js} +5 -5
  41. package/chunks/{chunk-W2UIXQDL.js → chunk-6OATMEYN.js} +1 -1
  42. package/chunks/{chunk-GZRTYZ2R.js → chunk-6W6DI34P.js} +154 -1
  43. package/chunks/{chunk-EMDMPBJ4.js → chunk-7L4XBYVW.js} +3 -3
  44. package/chunks/{chunk-EAXLGSFP.js → chunk-7MJAZMXK.js} +8 -8
  45. package/chunks/{chunk-K434OPES.js → chunk-7NAWTFVY.js} +3 -3
  46. package/chunks/{chunk-J4TSQ5EQ.js → chunk-7NFB7LBQ.js} +8 -1
  47. package/chunks/{chunk-5SFOMFG4.js → chunk-7R4DPSRA.js} +36 -2
  48. package/chunks/{chunk-P67PFTUT.js → chunk-AAR5SGMD.js} +4 -4
  49. package/chunks/{chunk-RDJSGHZE.js → chunk-ALGGS7UH.js} +1 -38
  50. package/chunks/{chunk-GWHYEOV2.js → chunk-ARKANCNX.js} +2 -1
  51. package/chunks/{chunk-D2GFWEXB.js → chunk-B5I2IIWY.js} +6 -6
  52. package/chunks/{chunk-524RQP4Q.js → chunk-B7NUUEXC.js} +10 -4
  53. package/chunks/{chunk-CUMMSHH6.js → chunk-BBNVFRGD.js} +1 -1
  54. package/chunks/{chunk-5HOMWMCL.js → chunk-CEW4HDPK.js} +4166 -1338
  55. package/chunks/chunk-CJFNEBYB.js +91 -0
  56. package/chunks/{chunk-VWPVHAMO.js → chunk-CUUXANEQ.js} +5 -1
  57. package/chunks/{chunk-GWLSNBG4.js → chunk-DK33QJ3V.js} +30 -26
  58. package/chunks/{chunk-HPDUL5MF.js → chunk-DPFBNG72.js} +1 -1
  59. package/chunks/{chunk-KKNMOEZH.js → chunk-E2UVIFI2.js} +185 -398
  60. package/chunks/{chunk-MC23XKFE.js → chunk-E67NFMF4.js} +3 -3
  61. package/chunks/{chunk-OQ4DRIOA.js → chunk-EQY6POVO.js} +2 -2
  62. package/chunks/{chunk-XUOOWUZS.js → chunk-F7NXQH4Y.js} +1 -1
  63. package/chunks/{chunk-YLV3XXFB.js → chunk-FBU7WRZI.js} +17 -1
  64. package/chunks/{chunk-LK7KUE55.js → chunk-FSA7ERJ2.js} +1 -1
  65. package/chunks/{chunk-PDZ7MBDG.js → chunk-FXMC7SL2.js} +27 -6
  66. package/chunks/{chunk-SJHDYNHF.js → chunk-GDQQRV43.js} +3 -3
  67. package/chunks/{chunk-34MW4KTI.js → chunk-GGJII3FM.js} +2 -2
  68. package/chunks/{chunk-3BTRNWWD.js → chunk-GOXKNSDZ.js} +1 -64
  69. package/chunks/chunk-GYTKQYDB.js +23 -0
  70. package/chunks/{chunk-HVY356M2.js → chunk-H3FQOPPS.js} +3 -3
  71. package/chunks/{chunk-YVEDCAUE.js → chunk-HGT6JR3U.js} +19 -0
  72. package/chunks/{chunk-WQUQVGTF.js → chunk-HHEFI4RP.js} +183 -96
  73. package/chunks/chunk-IDS7MSUP.js +74 -0
  74. package/chunks/{chunk-6PESIEKJ.js → chunk-JSJFKYWT.js} +68 -6
  75. package/chunks/{chunk-CNEIYWSA.js → chunk-K4PZ5F5T.js} +5 -5
  76. package/chunks/{chunk-NVYTCB5Z.js → chunk-K7CRWKOE.js} +14534 -13980
  77. package/chunks/{chunk-ORBGV7NJ.js → chunk-KKRTYONM.js} +6 -4
  78. package/chunks/{chunk-IAVB3HM3.js → chunk-KSO42X3Z.js} +13 -0
  79. package/chunks/chunk-L37RC7MQ.js +493 -0
  80. package/chunks/{chunk-4QLQE5WJ.js → chunk-L5U3ELZX.js} +1 -1
  81. package/chunks/{chunk-3G7CIHVV.js → chunk-L62SEJWY.js} +4 -4
  82. package/chunks/{chunk-EGYZ275M.js → chunk-LNUXFLLJ.js} +4 -4
  83. package/chunks/{chunk-4ZVWQHEQ.js → chunk-LQIDP6K5.js} +1 -1
  84. package/chunks/{chunk-VTU57BWZ.js → chunk-LQU7EVFA.js} +1 -1
  85. package/chunks/{chunk-B4G2WOFA.js → chunk-LTNI523B.js} +2 -2
  86. package/chunks/{chunk-DC5Z3DU6.js → chunk-LXLTBIDP.js} +43 -6
  87. package/chunks/{chunk-KHUQZZJ6.js → chunk-MO7O5722.js} +370 -36
  88. package/chunks/chunk-MR3PXB6E.js +48 -0
  89. package/chunks/{chunk-5VXNZWGF.js → chunk-N6FXRR6P.js} +1 -1
  90. package/chunks/{chunk-WL4L7EZH.js → chunk-OA4JVLSA.js} +27 -1
  91. package/chunks/{chunk-TO6QE22P.js → chunk-OATTJGPJ.js} +26 -22
  92. package/chunks/{chunk-X6TJ3YZV.js → chunk-OFEVHGVU.js} +159 -57
  93. package/chunks/{chunk-X4NKFGFJ.js → chunk-OJAMDVF5.js} +0 -15
  94. package/chunks/{chunk-BZIFY5TF.js → chunk-OKAIGAYW.js} +3 -3
  95. package/chunks/{chunk-3VAGG5T5.js → chunk-P6LART6G.js} +116 -15
  96. package/chunks/{chunk-3SJSQXNS.js → chunk-PEJWA3QQ.js} +12 -8
  97. package/chunks/{chunk-BAPGSC7U.js → chunk-Q5GLXH5Q.js} +23 -9
  98. package/chunks/{chunk-MXL5UP4X.js → chunk-Q6TUALBE.js} +1 -1
  99. package/chunks/{chunk-QYMQSECS.js → chunk-QAW7PIHT.js} +2 -2
  100. package/chunks/{chunk-LUODI7WD.js → chunk-RCEEXIOO.js} +6 -4
  101. package/chunks/{chunk-YAUFFXDS.js → chunk-RDRVMDWV.js} +12 -11
  102. package/chunks/{chunk-CEA3E3JB.js → chunk-SPJQO2CE.js} +2 -2
  103. package/chunks/{chunk-U2NNEY4R.js → chunk-SPUYQB4T.js} +1 -1
  104. package/chunks/{chunk-34Z3U5RQ.js → chunk-SXU3KKNI.js} +514 -114
  105. package/chunks/{chunk-ECNYL4AA.js → chunk-TISZXPAX.js} +1 -1
  106. package/chunks/{chunk-JSG7ZSBC.js → chunk-TQBODCFD.js} +1 -1
  107. package/chunks/{chunk-AKIVHSJR.js → chunk-TTUO4DNG.js} +111 -93
  108. package/chunks/chunk-TV6K2FB4.js +224 -0
  109. package/chunks/{chunk-4GORAUCN.js → chunk-TXY2C3D2.js} +1 -1
  110. package/chunks/{chunk-5XUCZNSY.js → chunk-TYLOFD2U.js} +1 -1
  111. package/chunks/{chunk-CLFKOZEK.js → chunk-UFOKA4PR.js} +1 -1
  112. package/chunks/{channel-worker-supervisor-WSOAAYUO.js → chunk-URU5UEK6.js} +67 -35
  113. package/chunks/{chunk-D5SKC4YG.js → chunk-V7EQTZYR.js} +41 -13
  114. package/chunks/{chunk-L6P4KPHR.js → chunk-VBRRNQB7.js} +59 -39
  115. package/chunks/{chunk-BMGVRZN4.js → chunk-W34A5MJH.js} +1 -1
  116. package/chunks/{chunk-PODM4SZ4.js → chunk-WDW64OW3.js} +5 -5
  117. package/chunks/{chunk-W3JHSWRP.js → chunk-WDWJ4OQJ.js} +4 -4
  118. package/chunks/{chunk-Q4YQW46J.js → chunk-WIASPMLX.js} +31 -17
  119. package/chunks/{chunk-ZLXQN2QS.js → chunk-WIEO4CWB.js} +1 -1
  120. package/chunks/{chunk-A3XKDTSH.js → chunk-WLXYAKV7.js} +4 -4
  121. package/chunks/{chunk-Q6I5QHMH.js → chunk-WTSXKLG5.js} +1 -1
  122. package/chunks/{chunk-J3JA76CF.js → chunk-WX6SD4IQ.js} +1 -1
  123. package/chunks/{chunk-77XJ3SWN.js → chunk-X362TMXZ.js} +5 -5
  124. package/chunks/{chunk-CCDMCZPP.js → chunk-XLIRF7IK.js} +1 -1
  125. package/chunks/{chunk-AURZZYMD.js → chunk-XXJKGHZV.js} +4 -4
  126. package/chunks/{chunk-TDEXZKMT.js → chunk-Y66VOBRP.js} +2 -2
  127. package/chunks/{chunk-CC2ITGCF.js → chunk-YHN5SUIJ.js} +49 -6
  128. package/chunks/{chunk-3AHXV67U.js → chunk-YU56QGXX.js} +1 -1
  129. package/chunks/{chunk-5U27BZ72.js → chunk-YX4LLZ3D.js} +187 -75
  130. package/chunks/{chunk-ATAKVRIF.js → chunk-YYPXHMWO.js} +7 -7
  131. package/chunks/{chunk-XLA62MYB.js → chunk-ZKMGAFYV.js} +2 -2
  132. package/chunks/{chunk-UOZWKTQG.js → chunk-ZPAHLFZU.js} +2 -2
  133. package/chunks/{chunk-7PU4FYLG.js → chunk-ZQTZXVHP.js} +4 -4
  134. package/chunks/chunk-ZRKBI3DP.js +34 -0
  135. package/chunks/{computer-use-HM37RX6A.js → computer-use-IYTX45WA.js} +26 -26
  136. package/chunks/{config-utils-NV2SVGPB.js → config-utils-CFT33LTP.js} +3 -2
  137. package/chunks/{contextCommand-OF5SFGH2.js → contextCommand-272V77WU.js} +28 -28
  138. package/chunks/{create-sub-session-KPRT7ECJ.js → create-sub-session-CBJMQLYP.js} +26 -26
  139. package/chunks/{create-sub-session-INX7TXJI.js → create-sub-session-WNX2OQVX.js} +2 -2
  140. package/chunks/{cron-create-AMBKGZX6.js → cron-create-36TIFKRT.js} +4 -4
  141. package/chunks/{cron-delete-LRU4OJYG.js → cron-delete-OQD3WULU.js} +4 -4
  142. package/chunks/{cron-list-WVP2JXER.js → cron-list-4533T2FH.js} +4 -4
  143. package/chunks/{daemon-ARHTSTXP.js → daemon-RNGFPMAB.js} +575 -58
  144. package/chunks/{daemon-status-provider-B2UTZUJ2.js → daemon-status-provider-L4STG5VO.js} +36 -36
  145. package/chunks/{de-EBJN3OVN.js → de-2VCDRDGU.js} +4 -1
  146. package/chunks/{dist-VHV4EVHG.js → dist-3V3ZV6ML.js} +1 -1
  147. package/chunks/{dist-XKU3ABM5.js → dist-ERCPDVA6.js} +1 -1
  148. package/chunks/{dist-PNVLTKTL.js → dist-HNN7DR2L.js} +158 -4
  149. package/chunks/{dist-WKPOYU7O.js → dist-JZE7F6YR.js} +1 -1
  150. package/chunks/{dist-QYCAEZIT.js → dist-MOEC47TR.js} +5 -1
  151. package/chunks/{dist-R7LN5AZE.js → dist-PHEPJLXD.js} +2 -2
  152. package/chunks/{earlyInputCapture-3VTHRC4C.js → earlyInputCapture-EN4BRREQ.js} +27 -27
  153. package/chunks/{edit-VNI4NJ73.js → edit-OMAF2QDR.js} +27 -27
  154. package/chunks/{en-5A6LA7RK.js → en-NJCA3TAA.js} +5 -1
  155. package/chunks/{enter-worktree-IYYBKPZT.js → enter-worktree-BBZX52HG.js} +26 -26
  156. package/chunks/{enterPlanMode-GMC5FD5A.js → enterPlanMode-5NNFMBUY.js} +42 -27
  157. package/chunks/{environment-5HSSRMJ7.js → environment-7TEWMJYN.js} +30 -29
  158. package/chunks/{errors-HMFCJJ7P.js → errors-I4VKVX3F.js} +28 -28
  159. package/chunks/{exit-worktree-6BHCMP5G.js → exit-worktree-FUWRJI33.js} +26 -26
  160. package/chunks/{exitPlanMode-CJW7G74W.js → exitPlanMode-IHCJ5EEI.js} +26 -26
  161. package/chunks/{fast-path-FRDMDVHG.js → fast-path-ZA57TOH4.js} +3 -3
  162. package/chunks/{fast-path-settings-5QZE64HR.js → fast-path-settings-DAOVFADC.js} +6 -4
  163. package/chunks/{fr-YXRABLYZ.js → fr-5F3E7WKD.js} +4 -1
  164. package/chunks/{gemini-QYSEGHAX.js → gemini-UOAKVXBG.js} +139 -76
  165. package/chunks/{geminiContentGenerator-J7YNZDYP.js → geminiContentGenerator-G6UCE6MW.js} +4 -4
  166. package/chunks/{glob-BRCSGFOT.js → glob-4GJQ2UFF.js} +28 -27
  167. package/chunks/{grep-EE2DUOSY.js → grep-5QSYXF2E.js} +26 -26
  168. package/chunks/{handleAutoUpdate-5NWTLR67.js → handleAutoUpdate-ULHNWL6R.js} +30 -30
  169. package/chunks/{i18n-BASPENNQ.js → i18n-CYDUTF6F.js} +27 -27
  170. package/chunks/initializer-NRFKUGIO.js +73 -0
  171. package/chunks/{installationInfo-W6V4DT7W.js → installationInfo-WELKRHHE.js} +27 -27
  172. package/chunks/{ja-7VQOANVG.js → ja-66J6B53L.js} +5 -2
  173. package/chunks/{keychain-token-storage-VKUBNCP4.js → keychain-token-storage-AU22CQI6.js} +2 -2
  174. package/chunks/list-JVDXEG2E.js +76 -0
  175. package/chunks/loadedSettingsAdapter-WAM4VUTG.js +70 -0
  176. package/chunks/{loop-wakeup-WX7BLWWP.js → loop-wakeup-MVUKDVCP.js} +5 -5
  177. package/chunks/{ls-ZB2BDP6T.js → ls-RXNIAQDE.js} +4 -4
  178. package/chunks/{lsp-V5DN4YUJ.js → lsp-HB5LM5IL.js} +2 -2
  179. package/chunks/mcp-YHOZN3ZM.js +70 -0
  180. package/chunks/{monitor-X5Z3H4FY.js → monitor-R7XZPJHQ.js} +26 -26
  181. package/chunks/nonInteractiveCli-NSOB6D74.js +129 -0
  182. package/chunks/{notebook-edit-TRM2QIJK.js → notebook-edit-6RNKE2L2.js} +27 -27
  183. package/chunks/{openaiContentGenerator-AAYONPMF.js → openaiContentGenerator-XNS5S64I.js} +12 -12
  184. package/chunks/{pidfile-D4I4FTVA.js → pidfile-XE4RRR2P.js} +27 -27
  185. package/chunks/{pt-2C6YCSHL.js → pt-TFZO5Y6T.js} +4 -1
  186. package/chunks/{qwenContentGenerator-K3HZ2H76.js → qwenContentGenerator-APDPJ3VN.js} +28 -28
  187. package/chunks/{qwenOAuth2-PJQ27GSO.js → qwenOAuth2-LEYOU7RU.js} +5 -5
  188. package/chunks/{read-file-7SZSIZOL.js → read-file-XSUWXSR7.js} +8 -8
  189. package/chunks/{read-mcp-resource-SM5DA4RG.js → read-mcp-resource-6LRTZKXI.js} +2 -2
  190. package/chunks/{record-artifact-4XKZX3UW.js → record-artifact-PMDTY4OS.js} +2 -2
  191. package/chunks/{ripGrep-YNPFVCZP.js → ripGrep-APB3CDMU.js} +26 -26
  192. package/chunks/{ru-6BBHVZZV.js → ru-4L4LFHIT.js} +4 -1
  193. package/chunks/{run-qwen-serve-DMWV5N6L.js → run-qwen-serve-NWTGPERT.js} +1232 -371
  194. package/chunks/{runtime-57WWRVHN.js → runtime-EIO3NQKR.js} +42 -37
  195. package/chunks/{scheduler-YBLGWSIL.js → scheduler-JJDZBDRN.js} +26 -26
  196. package/chunks/{send-message-F36YD6KQ.js → send-message-SR4WSXP2.js} +3 -3
  197. package/chunks/{serve-R63NK3CV.js → serve-WTIPB3EI.js} +36 -34
  198. package/chunks/{server-Z22GCAXP.js → server-NJPHQHLH.js} +5238 -1328
  199. package/chunks/{session-HKAAI7BN.js → session-O4AO7FTS.js} +298 -98
  200. package/chunks/{settings-3EYN66GK.js → settings-HQNDK7TG.js} +34 -32
  201. package/chunks/{shell-6YXINTWJ.js → shell-UIXM6PWG.js} +26 -26
  202. package/chunks/{skill-OO57P4X6.js → skill-3XMB4ULV.js} +10 -10
  203. package/chunks/{spawnChannel-JD7G4VU6.js → spawnChannel-3R632QRM.js} +28 -28
  204. package/chunks/{src-G5UPLZSZ.js → src-USZKPUOC.js} +85 -27
  205. package/chunks/{standalone-update-OB7F4JPZ.js → standalone-update-L5XW3D7K.js} +28 -28
  206. package/chunks/{startInteractiveUI-73EGLIIH.js → startInteractiveUI-CPZOL2WB.js} +730 -397
  207. package/chunks/{syntheticOutput-34H7LGA7.js → syntheticOutput-YKFNUQZD.js} +3 -3
  208. package/chunks/{task-create-FRGOEIKY.js → task-create-NUFOHU53.js} +8 -7
  209. package/chunks/{task-list-OW766BXZ.js → task-list-Z2IKQY3S.js} +6 -5
  210. package/chunks/{task-stop-SIR5SNBN.js → task-stop-KQFIVQTJ.js} +2 -2
  211. package/chunks/{task-update-YRA532MT.js → task-update-HKADXSTD.js} +8 -7
  212. package/chunks/{team-create-PECAAPXK.js → team-create-XXPRF3IQ.js} +26 -26
  213. package/chunks/{team-delete-6OSECUZC.js → team-delete-SDNTGZLG.js} +6 -5
  214. package/chunks/{team-plan-approval-L6F434RY.js → team-plan-approval-EOTTKHDW.js} +26 -26
  215. package/chunks/{theme-manager-ZG4RY6GU.js → theme-manager-P6UITO2L.js} +27 -27
  216. package/chunks/{todoWrite-YDMFEV4G.js → todoWrite-YNXB27GB.js} +4 -4
  217. package/chunks/{tool-search-THVIWAPB.js → tool-search-DDNGK2LR.js} +9 -9
  218. package/chunks/{total-session-admission-JOKNRIIA.js → total-session-admission-PL5N7DNY.js} +33 -33
  219. package/chunks/tree-sitter-YJVE2ZUK.js +2980 -0
  220. package/chunks/{trustedFolders-EOGT3UVS.js → trustedFolders-C5LMF3UR.js} +29 -28
  221. package/chunks/types-ML3TRJQ5.js +16 -0
  222. package/chunks/{updateCheck-2KYEYVSB.js → updateCheck-QTVVISH7.js} +29 -29
  223. package/chunks/{validateNonInterActiveAuth-EN6ZQSR2.js → validateNonInterActiveAuth-RY4RKBQG.js} +75 -71
  224. package/chunks/{version-3UEA6ZIR.js → version-U45RYOSD.js} +1 -1
  225. package/chunks/{web-fetch-PAAEQKBW.js → web-fetch-ZSPR3PRR.js} +5 -5
  226. package/chunks/{workflow-QCCCMYP3.js → workflow-TCIAQYOA.js} +27 -27
  227. package/chunks/workspace-providers-status-I3G2HYLY.js +73 -0
  228. package/chunks/workspace-registration-store-IH5GLZ6Y.js +27 -0
  229. package/chunks/{workspace-registry-24QFLQYH.js → workspace-registry-QEKBELIX.js} +33 -33
  230. package/chunks/workspace-service-ORKHGLP3.js +86 -0
  231. package/chunks/workspace-skills-status-D7QCNDYY.js +72 -0
  232. package/chunks/{write-file-I3MUDRIE.js → write-file-JGRQR5VM.js} +27 -27
  233. package/chunks/{zh-RQE7I22T.js → zh-FSAH32JB.js} +6 -2
  234. package/chunks/{zh-TW-TBPQGHKH.js → zh-TW-D2YIE2LO.js} +6 -2
  235. package/cli.js +11 -11
  236. package/locales/ca.js +6 -0
  237. package/locales/de.js +6 -0
  238. package/locales/en.js +8 -0
  239. package/locales/fr.js +6 -0
  240. package/locales/ja.js +7 -1
  241. package/locales/pt.js +6 -0
  242. package/locales/ru.js +6 -0
  243. package/locales/zh-TW.js +9 -1
  244. package/locales/zh.js +9 -1
  245. package/package.json +3 -3
  246. package/web-shell/assets/{arc-C15hqnJe.js → arc-CUeDlxvE.js} +1 -1
  247. package/web-shell/assets/{architectureDiagram-3BPJPVTR-B-At37J_.js → architectureDiagram-3BPJPVTR-PiUszkQA.js} +1 -1
  248. package/web-shell/assets/{blockDiagram-GPEHLZMM-B51wjcU7.js → blockDiagram-GPEHLZMM-s2wYSO7e.js} +1 -1
  249. package/web-shell/assets/{c4Diagram-AAUBKEIU-xBK7BAwN.js → c4Diagram-AAUBKEIU-DyLxZoz9.js} +1 -1
  250. package/web-shell/assets/channel-DkuJJ0qd.js +1 -0
  251. package/web-shell/assets/{chunk-2J33WTMH-xKmLg7Yr.js → chunk-2J33WTMH-Dsdai7Tk.js} +1 -1
  252. package/web-shell/assets/{chunk-4BX2VUAB-BfkdKZCM.js → chunk-4BX2VUAB-DEosOjV7.js} +1 -1
  253. package/web-shell/assets/{chunk-55IACEB6-DT713sZf.js → chunk-55IACEB6-sNsRLTXf.js} +1 -1
  254. package/web-shell/assets/{chunk-727SXJPM-CYEeAamv.js → chunk-727SXJPM-DkRNZzmh.js} +1 -1
  255. package/web-shell/assets/{chunk-AQP2D5EJ-DBN-5CFd.js → chunk-AQP2D5EJ-BrsRNpzd.js} +1 -1
  256. package/web-shell/assets/{chunk-FMBD7UC4-CGZKk4PH.js → chunk-FMBD7UC4-CI039lpl.js} +1 -1
  257. package/web-shell/assets/{chunk-ND2GUHAM-qQbC2O-y.js → chunk-ND2GUHAM-M-pkeIfu.js} +1 -1
  258. package/web-shell/assets/{chunk-QZHKN3VN-B3zeXwsX.js → chunk-QZHKN3VN-C4ckGNbH.js} +1 -1
  259. package/web-shell/assets/classDiagram-4FO5ZUOK-CwqHc0TB.js +1 -0
  260. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-CwqHc0TB.js +1 -0
  261. package/web-shell/assets/{cose-bilkent-S5V4N54A-BKsl1Wvy.js → cose-bilkent-S5V4N54A-BciKUAFq.js} +1 -1
  262. package/web-shell/assets/{dagre-BM42HDAG-CuuuLiBK.js → dagre-BM42HDAG-C1nTSgU6.js} +1 -1
  263. package/web-shell/assets/{diagram-2AECGRRQ-CG4_eKiV.js → diagram-2AECGRRQ-BDPNWr1m.js} +1 -1
  264. package/web-shell/assets/{diagram-5GNKFQAL-DSFTmZB1.js → diagram-5GNKFQAL-CNFhTszL.js} +1 -1
  265. package/web-shell/assets/{diagram-KO2AKTUF-BxwlEHn8.js → diagram-KO2AKTUF-CjPa4p5a.js} +1 -1
  266. package/web-shell/assets/{diagram-LMA3HP47-BUAg-jMG.js → diagram-LMA3HP47-ZzPykSyG.js} +1 -1
  267. package/web-shell/assets/{diagram-OG6HWLK6-BFM2jlO5.js → diagram-OG6HWLK6-0UVtZ9A4.js} +1 -1
  268. package/web-shell/assets/{erDiagram-TEJ5UH35-CerbFPa2.js → erDiagram-TEJ5UH35-CajDZCat.js} +1 -1
  269. package/web-shell/assets/{flowDiagram-I6XJVG4X-BNeZz5Zz.js → flowDiagram-I6XJVG4X-BRuFBIvL.js} +1 -1
  270. package/web-shell/assets/{ganttDiagram-6RSMTGT7-CTOogLaM.js → ganttDiagram-6RSMTGT7-BevGmJqG.js} +3 -3
  271. package/web-shell/assets/{gitGraphDiagram-PVQCEYII-yxSFkXPj.js → gitGraphDiagram-PVQCEYII-DvPMpBMb.js} +1 -1
  272. package/web-shell/assets/index-Cnvv4VcI.css +5 -0
  273. package/web-shell/assets/index-D1Uyklxa.js +1088 -0
  274. package/web-shell/assets/index-DzHwQkQq.js +3 -0
  275. package/web-shell/assets/{infoDiagram-5YYISTIA-DYdAUevm.js → infoDiagram-5YYISTIA-Oixn7tA9.js} +1 -1
  276. package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-CNuijZ90.js → ishikawaDiagram-YF4QCWOH-BgKpeg-j.js} +1 -1
  277. package/web-shell/assets/{journeyDiagram-JHISSGLW-BTyiuonf.js → journeyDiagram-JHISSGLW-74mwxIaA.js} +1 -1
  278. package/web-shell/assets/{kanban-definition-UN3LZRKU-DPJo0Uow.js → kanban-definition-UN3LZRKU-D4D6cEqA.js} +1 -1
  279. package/web-shell/assets/{linear-C8wKCbIC.js → linear-atZRE_L2.js} +1 -1
  280. package/web-shell/assets/{mermaid.core-BV5o7nW5.js → mermaid.core-KKudX-JC.js} +5 -5
  281. package/web-shell/assets/{mindmap-definition-RKZ34NQL-BtLcBmSt.js → mindmap-definition-RKZ34NQL-CMCej9yG.js} +1 -1
  282. package/web-shell/assets/{pieDiagram-4H26LBE5-C22J7A9Q.js → pieDiagram-4H26LBE5-nhx40X7q.js} +1 -1
  283. package/web-shell/assets/{quadrantDiagram-W4KKPZXB-DSL10wiL.js → quadrantDiagram-W4KKPZXB-CUmVcN3M.js} +1 -1
  284. package/web-shell/assets/{requirementDiagram-4Y6WPE33-feqh0UpX.js → requirementDiagram-4Y6WPE33-C_vyEwyy.js} +1 -1
  285. package/web-shell/assets/{sankeyDiagram-5OEKKPKP-Z4OVaWaZ.js → sankeyDiagram-5OEKKPKP-DU6G4VWR.js} +1 -1
  286. package/web-shell/assets/{sequenceDiagram-3UESZ5HK-DIluIcb1.js → sequenceDiagram-3UESZ5HK-DdeRR_KJ.js} +1 -1
  287. package/web-shell/assets/{stateDiagram-AJRCARHV-hlhnuoYH.js → stateDiagram-AJRCARHV-C6iCI8ps.js} +1 -1
  288. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-C0_6nR6C.js +1 -0
  289. package/web-shell/assets/{timeline-definition-PNZ67QCA-Dqf_CqgL.js → timeline-definition-PNZ67QCA-B_Ea8Cb7.js} +1 -1
  290. package/web-shell/assets/{vennDiagram-CIIHVFJN-DD2QhaTX.js → vennDiagram-CIIHVFJN-BPUVZEJA.js} +1 -1
  291. package/web-shell/assets/{wardley-L42UT6IY-B2uI85U_.js → wardley-L42UT6IY-BWEj0lKY.js} +1 -1
  292. package/web-shell/assets/{wardleyDiagram-YWT4CUSO-U1aJX71g.js → wardleyDiagram-YWT4CUSO-BvDsdIQw.js} +1 -1
  293. package/web-shell/assets/{xychartDiagram-2RQKCTM6-C0ODHUee.js → xychartDiagram-2RQKCTM6-crz0QhF_.js} +1 -1
  294. package/web-shell/index.html +2 -2
  295. package/chunks/chunk-CU3L64TP.js +0 -93
  296. package/chunks/initializer-UTQ7FB7G.js +0 -71
  297. package/chunks/list-DEICDL65.js +0 -74
  298. package/chunks/loadedSettingsAdapter-NOWEGDYJ.js +0 -68
  299. package/chunks/mcp-L5JXEEIA.js +0 -68
  300. package/chunks/nonInteractiveCli-LS2K4X6A.js +0 -124
  301. package/chunks/types-JNKGKUJT.js +0 -12
  302. package/chunks/workspace-providers-status-4KMGETOJ.js +0 -71
  303. package/chunks/workspace-service-RVLBMSMZ.js +0 -80
  304. package/chunks/workspace-skills-status-DS4ZVFTO.js +0 -70
  305. package/web-shell/assets/channel-CLiQD50f.js +0 -1
  306. package/web-shell/assets/classDiagram-4FO5ZUOK-D3sYqow5.js +0 -1
  307. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-D3sYqow5.js +0 -1
  308. package/web-shell/assets/index-D5IWFVk1.css +0 -5
  309. package/web-shell/assets/index-KFJRDhX7.js +0 -783
  310. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-BhQMwgpl.js +0 -1
@@ -23,29 +23,29 @@ import {
23
23
  } from "./chunk-VGC4I5JJ.js";
24
24
  import {
25
25
  isAnyAutoMemPath
26
- } from "./chunk-YLV3XXFB.js";
26
+ } from "./chunk-FBU7WRZI.js";
27
27
  import {
28
28
  InstallationManager
29
- } from "./chunk-TDEXZKMT.js";
29
+ } from "./chunk-Y66VOBRP.js";
30
30
  import {
31
31
  STRUCTURED_OUTPUT_REDACTED_ARGS
32
- } from "./chunk-J3JA76CF.js";
32
+ } from "./chunk-WX6SD4IQ.js";
33
33
  import {
34
34
  BaseDeclarativeTool,
35
35
  BaseToolInvocation,
36
36
  ToolDisplayNames,
37
37
  ToolNames
38
- } from "./chunk-B5ORX3FG.js";
38
+ } from "./chunk-2UUAIFQO.js";
39
39
  import {
40
40
  atomicWriteFile,
41
41
  atomicWriteFileSync
42
- } from "./chunk-ZLXQN2QS.js";
42
+ } from "./chunk-WIEO4CWB.js";
43
43
  import {
44
44
  convertSchema,
45
45
  estimateTextTokens,
46
46
  runtimeDiagnostics,
47
47
  safeJsonParse
48
- } from "./chunk-JSG7ZSBC.js";
48
+ } from "./chunk-TQBODCFD.js";
49
49
  import {
50
50
  require_lib
51
51
  } from "./chunk-A4UCTEB5.js";
@@ -71,7 +71,7 @@ import {
71
71
  setShellTracePropagation,
72
72
  shortenPath,
73
73
  unescapePath
74
- } from "./chunk-J4TSQ5EQ.js";
74
+ } from "./chunk-7NFB7LBQ.js";
75
75
  import {
76
76
  require_dist
77
77
  } from "./chunk-75DOP5OR.js";
@@ -61936,7 +61936,7 @@ function getLanguageFromFilePath(filePath) {
61936
61936
  return extensionToLanguageMap[extension];
61937
61937
  }
61938
61938
  const filename = path3.basename(filePath).toLowerCase();
61939
- return extensionToLanguageMap[`.${filename}`];
61939
+ return extensionToLanguageMap[filename] ?? extensionToLanguageMap[`.${filename}`];
61940
61940
  }
61941
61941
  __name(getLanguageFromFilePath, "getLanguageFromFilePath");
61942
61942
 
@@ -64174,6 +64174,20 @@ function parseTaggedThinkingText(text) {
64174
64174
  }
64175
64175
  __name(parseTaggedThinkingText, "parseTaggedThinkingText");
64176
64176
 
64177
+ // packages/core/src/core/invalid-stream-error.ts
64178
+ init_esbuild_shims();
64179
+ var InvalidStreamError = class extends Error {
64180
+ static {
64181
+ __name(this, "InvalidStreamError");
64182
+ }
64183
+ type;
64184
+ constructor(message, type) {
64185
+ super(message);
64186
+ this.name = "InvalidStreamError";
64187
+ this.type = type;
64188
+ }
64189
+ };
64190
+
64177
64191
  // packages/core/src/core/openaiContentGenerator/converter.ts
64178
64192
  var debugLogger6 = createDebugLogger("CONVERTER");
64179
64193
  var SPLIT_TOOL_MEDIA_TEXT = "(attached media from previous tool call)";
@@ -64830,6 +64844,10 @@ function hasThoughtPart(parts) {
64830
64844
  return parts.some((part) => part.thought === true);
64831
64845
  }
64832
64846
  __name(hasThoughtPart, "hasThoughtPart");
64847
+ var THINKING_TAG_PATTERN = /<\/?think(?:ing)?\s*>/i;
64848
+ var CLOSING_THINKING_TAG_PATTERN = /\n[^\S\r\n]*<\/think(?:ing)?[^\S\r\n]*>/i;
64849
+ var LEADING_CLOSING_THINKING_TAG_PATTERN = /^[^\S\r\n]*<\/think(?:ing)?[^\S\r\n]*>/i;
64850
+ var LEADING_THINKING_TAG_PATTERN = /^\s*<\/?think(?:ing)?\s*>/i;
64833
64851
  function convertOpenAIResponseToGemini(openaiResponse, requestContext) {
64834
64852
  const choice = openaiResponse.choices?.[0];
64835
64853
  const response = new GenerateContentResponse();
@@ -64913,7 +64931,7 @@ function convertOpenAIChunkToGemini(chunk, requestContext) {
64913
64931
  );
64914
64932
  }
64915
64933
  if (choice) {
64916
- const parts = [];
64934
+ let parts = [];
64917
64935
  let contentParts = [];
64918
64936
  const reasoningText = choice.delta?.reasoning_content ?? choice.delta?.reasoning;
64919
64937
  if (typeof choice.delta?.content === "string") {
@@ -64958,6 +64976,12 @@ function convertOpenAIChunkToGemini(chunk, requestContext) {
64958
64976
  cumulativeMode: false
64959
64977
  }
64960
64978
  );
64979
+ if (normalizedReasoningText) {
64980
+ requestContext.hasStructuredReasoningContent = true;
64981
+ if (THINKING_TAG_PATTERN.test(normalizedReasoningText)) {
64982
+ requestContext.hasThinkingTagInReasoning = true;
64983
+ }
64984
+ }
64961
64985
  if (normalizedReasoningText && !requestContext.responseParsingOptions?.taggedThinkingTags) {
64962
64986
  parts.push(createOpenAIReasoningThoughtPart(normalizedReasoningText));
64963
64987
  } else if (normalizedReasoningText && !requestContext.hasTaggedThinkingThought) {
@@ -65015,10 +65039,45 @@ function convertOpenAIChunkToGemini(chunk, requestContext) {
65015
65039
  }
65016
65040
  }
65017
65041
  }
65042
+ const visibleText = parts.map(
65043
+ (part) => part.thought !== true && typeof part.text === "string" ? part.text : ""
65044
+ ).join("");
65045
+ const leakedThinkingTag = requestContext.hasStructuredReasoningContent === true && (requestContext.hasVisibleContent !== true && LEADING_THINKING_TAG_PATTERN.test(visibleText) || requestContext.hasThinkingTagInReasoning === true && (CLOSING_THINKING_TAG_PATTERN.test(visibleText) || requestContext.atVisibleLineStart === true && LEADING_CLOSING_THINKING_TAG_PATTERN.test(visibleText)));
65046
+ if (/\S/.test(visibleText)) {
65047
+ requestContext.hasVisibleContent = true;
65048
+ }
65049
+ if (visibleText && requestContext.hasThinkingTagInReasoning === true) {
65050
+ const lastLineBreak = visibleText.lastIndexOf("\n");
65051
+ const lineSuffix = visibleText.slice(lastLineBreak + 1);
65052
+ requestContext.atVisibleLineStart = (lastLineBreak >= 0 || requestContext.atVisibleLineStart === true) && /^[^\S\r\n]*$/.test(lineSuffix);
65053
+ }
65054
+ if (leakedThinkingTag) {
65055
+ requestContext.pendingUntrustedResponseParts = void 0;
65056
+ throw new InvalidStreamError(
65057
+ "Model response leaked thinking tags.",
65058
+ "PROTOCOL_TAG_LEAK"
65059
+ );
65060
+ }
65061
+ const toolCallWithoutName = toolCallParser.hasNamelessToolCall();
65062
+ const completedToolCalls = choice.finish_reason ? toolCallParser.getCompletedToolCalls() : [];
65063
+ if (choice.finish_reason && (toolCallWithoutName || choice.finish_reason === "tool_calls" && completedToolCalls.length === 0)) {
65064
+ requestContext.pendingUntrustedResponseParts = void 0;
65065
+ throw new InvalidStreamError(
65066
+ "Model response contained a malformed tool call.",
65067
+ "MALFORMED_TOOL_CALL"
65068
+ );
65069
+ }
65070
+ const shouldHoldParts = !choice.finish_reason && (toolCallWithoutName || requestContext.hasThinkingTagInReasoning === true);
65071
+ if (shouldHoldParts) {
65072
+ (requestContext.pendingUntrustedResponseParts ??= []).push(...parts);
65073
+ parts.length = 0;
65074
+ } else if (requestContext.pendingUntrustedResponseParts) {
65075
+ parts = requestContext.pendingUntrustedResponseParts.concat(parts);
65076
+ requestContext.pendingUntrustedResponseParts = void 0;
65077
+ }
65018
65078
  let toolCallsTruncated = false;
65019
65079
  if (choice.finish_reason) {
65020
65080
  toolCallsTruncated = toolCallParser.hasIncompleteToolCalls();
65021
- const completedToolCalls = toolCallParser.getCompletedToolCalls();
65022
65081
  for (const toolCall of completedToolCalls) {
65023
65082
  if (toolCall.name) {
65024
65083
  parts.push({
@@ -68362,6 +68421,44 @@ var UiTelemetryService = class _UiTelemetryService extends EventEmitter {
68362
68421
  };
68363
68422
  var uiTelemetryService = new UiTelemetryService();
68364
68423
 
68424
+ // packages/core/src/telemetry/api-activity-tracker.ts
68425
+ init_esbuild_shims();
68426
+ var ApiActivityTracker = class {
68427
+ static {
68428
+ __name(this, "ApiActivityTracker");
68429
+ }
68430
+ #errors = 0;
68431
+ #retries = 0;
68432
+ /** Fold in one model API error (called from `logApiError`). */
68433
+ recordError() {
68434
+ this.#errors += 1;
68435
+ }
68436
+ /** Fold in one automatic retry (called from `logApiRetry`). */
68437
+ recordRetry() {
68438
+ this.#retries += 1;
68439
+ }
68440
+ /**
68441
+ * Return the counts accumulated since the last drain and reset them to zero.
68442
+ * The read+reset is synchronous (no `await` between), so a `recordError` /
68443
+ * `recordRetry` racing an in-progress drain can never be lost — it simply
68444
+ * lands in the next window.
68445
+ */
68446
+ drain() {
68447
+ const counts = {
68448
+ errors: this.#errors,
68449
+ retries: this.#retries
68450
+ };
68451
+ this.#errors = 0;
68452
+ this.#retries = 0;
68453
+ return counts;
68454
+ }
68455
+ /** Peek at the pending counts without draining (tests / diagnostics). */
68456
+ peek() {
68457
+ return { errors: this.#errors, retries: this.#retries };
68458
+ }
68459
+ };
68460
+ var apiActivityTracker = new ApiActivityTracker();
68461
+
68365
68462
  // packages/core/src/telemetry/daemon-tracing.ts
68366
68463
  init_esbuild_shims();
68367
68464
  init_esm();
@@ -70061,11 +70158,11 @@ async function createContentGenerator(generatorConfig, config, isInitialAuth) {
70061
70158
  let baseGenerator;
70062
70159
  try {
70063
70160
  if (authType === "openai" /* USE_OPENAI */) {
70064
- const { createOpenAIContentGenerator } = await import("./openaiContentGenerator-AAYONPMF.js");
70161
+ const { createOpenAIContentGenerator } = await import("./openaiContentGenerator-XNS5S64I.js");
70065
70162
  baseGenerator = createOpenAIContentGenerator(generatorConfig, config);
70066
70163
  } else if (authType === "qwen-oauth" /* QWEN_OAUTH */) {
70067
- const { getQwenOAuthClient: getQwenOauthClient } = await import("./qwenOAuth2-PJQ27GSO.js");
70068
- const { QwenContentGenerator } = await import("./qwenContentGenerator-K3HZ2H76.js");
70164
+ const { getQwenOAuthClient: getQwenOauthClient } = await import("./qwenOAuth2-LEYOU7RU.js");
70165
+ const { QwenContentGenerator } = await import("./qwenContentGenerator-APDPJ3VN.js");
70069
70166
  try {
70070
70167
  const qwenClient = await getQwenOauthClient(
70071
70168
  config,
@@ -70083,10 +70180,10 @@ async function createContentGenerator(generatorConfig, config, isInitialAuth) {
70083
70180
  throw new Error(error instanceof Error ? error.message : String(error));
70084
70181
  }
70085
70182
  } else if (authType === "anthropic" /* USE_ANTHROPIC */) {
70086
- const { createAnthropicContentGenerator } = await import("./anthropicContentGenerator-L73TO3DB.js");
70183
+ const { createAnthropicContentGenerator } = await import("./anthropicContentGenerator-56U3YCP2.js");
70087
70184
  baseGenerator = createAnthropicContentGenerator(generatorConfig, config);
70088
70185
  } else if (authType === "gemini" /* USE_GEMINI */ || authType === "vertex-ai" /* USE_VERTEX_AI */) {
70089
- const { createGeminiContentGenerator } = await import("./geminiContentGenerator-J7YNZDYP.js");
70186
+ const { createGeminiContentGenerator } = await import("./geminiContentGenerator-G6UCE6MW.js");
70090
70187
  baseGenerator = createGeminiContentGenerator(generatorConfig, config);
70091
70188
  } else {
70092
70189
  throw new Error(
@@ -71811,6 +71908,7 @@ function logApiError(config, event) {
71811
71908
  "event.timestamp": (/* @__PURE__ */ new Date()).toISOString()
71812
71909
  };
71813
71910
  uiTelemetryService.addEvent(uiEvent, config.getSessionId());
71911
+ apiActivityTracker.recordError();
71814
71912
  if (!isInternalPromptId(event.prompt_id)) {
71815
71913
  recordUiTelemetryEventToChat(config, uiEvent);
71816
71914
  }
@@ -72077,6 +72175,7 @@ function logContentRetryFailure(config, event) {
72077
72175
  }
72078
72176
  __name(logContentRetryFailure, "logContentRetryFailure");
72079
72177
  function logApiRetry(config, event) {
72178
+ apiActivityTracker.recordRetry();
72080
72179
  QwenLogger.getInstance(config)?.logApiRetryEvent(event);
72081
72180
  if (!isTelemetrySdkInitialized()) return;
72082
72181
  const attributes = {
@@ -72989,6 +73088,7 @@ export {
72989
73088
  refreshSessionContext,
72990
73089
  shutdownTelemetry,
72991
73090
  forceFlushMetrics,
73091
+ apiActivityTracker,
72992
73092
  _recoverObjectsFromLine,
72993
73093
  parseLineTolerant,
72994
73094
  readLines,
@@ -73124,6 +73224,7 @@ export {
73124
73224
  parseThought,
73125
73225
  getThoughtSummary,
73126
73226
  TaggedThinkingParser,
73227
+ InvalidStreamError,
73127
73228
  OpenAIContentConverter,
73128
73229
  openaiRequestCaptureContext,
73129
73230
  isApiError,
@@ -1,26 +1,30 @@
1
1
  // Force strict mode and setup for ESM
2
2
  "use strict";
3
3
  import {
4
- SETTINGS_DIRECTORY_NAME,
5
4
  V1_INDICATOR_KEYS,
5
+ resolveEnvVarsInObject
6
+ } from "./chunk-GOXKNSDZ.js";
7
+ import {
8
+ SETTINGS_DIRECTORY_NAME,
6
9
  getGlobalQwenDirLite,
7
10
  getSystemDefaultsPath,
8
- getSystemSettingsPath,
9
- resolveEnvVarsInObject
10
- } from "./chunk-3BTRNWWD.js";
11
+ getSystemSettingsPath
12
+ } from "./chunk-IDS7MSUP.js";
11
13
  import {
12
14
  DEFAULT_EXCLUDED_ENV_VARS,
13
15
  HOME_ENV_BOOTSTRAP_KEYS,
14
16
  PROJECT_ENV_HARDCODED_EXCLUSIONS
15
17
  } from "./chunk-QRUIS3DN.js";
16
18
  import {
17
- getPathComparisonVariants,
18
- isWithinRoot,
19
19
  require_strip_json_comments
20
- } from "./chunk-RDJSGHZE.js";
20
+ } from "./chunk-ALGGS7UH.js";
21
+ import {
22
+ getPathComparisonVariants,
23
+ isWithinRoot
24
+ } from "./chunk-MR3PXB6E.js";
21
25
  import {
22
26
  require_main
23
- } from "./chunk-ZJE7NSL3.js";
27
+ } from "./chunk-5M6IDOMF.js";
24
28
  import {
25
29
  init_esbuild_shims
26
30
  } from "./chunk-5O2XNYP6.js";
@@ -2,25 +2,28 @@
2
2
  "use strict";
3
3
  import {
4
4
  getExtensionManager
5
- } from "./chunk-P67PFTUT.js";
5
+ } from "./chunk-AAR5SGMD.js";
6
6
  import {
7
7
  getPlugin,
8
8
  parseChannelConfig,
9
9
  registerPlugin
10
- } from "./chunk-TO6QE22P.js";
11
- import {
12
- loadSettings
13
- } from "./chunk-4C5BQ2D2.js";
10
+ } from "./chunk-OATTJGPJ.js";
14
11
  import {
15
12
  sanitizeLogText
16
- } from "./chunk-34Z3U5RQ.js";
13
+ } from "./chunk-SXU3KKNI.js";
14
+ import {
15
+ loadSettings
16
+ } from "./chunk-6GETGQWP.js";
17
17
  import {
18
18
  writeStderrLine,
19
19
  writeStdoutLine
20
20
  } from "./chunk-YUZI3WAC.js";
21
+ import {
22
+ hashDaemonWorkspace
23
+ } from "./chunk-P6LART6G.js";
21
24
  import {
22
25
  Storage
23
- } from "./chunk-J4TSQ5EQ.js";
26
+ } from "./chunk-7NFB7LBQ.js";
24
27
  import {
25
28
  init_esbuild_shims
26
29
  } from "./chunk-5O2XNYP6.js";
@@ -36,6 +39,16 @@ function sessionsPath() {
36
39
  return path.join(Storage.getGlobalQwenDir(), "channels", "sessions.json");
37
40
  }
38
41
  __name(sessionsPath, "sessionsPath");
42
+ function daemonSessionRoutesPath(workspaceCwd) {
43
+ return path.join(
44
+ Storage.getGlobalQwenDir(),
45
+ "channels",
46
+ "daemon",
47
+ hashDaemonWorkspace(workspaceCwd),
48
+ "routes.json"
49
+ );
50
+ }
51
+ __name(daemonSessionRoutesPath, "daemonSessionRoutesPath");
39
52
  function channelLoopPath() {
40
53
  return path.join(Storage.getGlobalQwenDir(), "channels", "cron.json");
41
54
  }
@@ -183,14 +196,14 @@ function registerSessionCleanup(bridge, router, channels) {
183
196
  const safeId = sanitizeLogText(event.sessionId, 128);
184
197
  const safeReason = event.reason ? sanitizeLogText(event.reason, 512) : "";
185
198
  writeStderrLine(
186
- `[Channel] Session ${safeId} died${safeReason ? ` (${safeReason})` : ""}, removing routing state`
199
+ `[Channel] Session ${safeId} died${safeReason ? ` (${safeReason})` : ""}, updating routing state`
187
200
  );
188
201
  const target = router.getTarget(event.sessionId);
189
202
  const channel = target ? channels.get(target.channelName) : void 0;
190
203
  if (channel) {
191
204
  channel.onSessionDied(event.sessionId);
192
205
  } else {
193
- router.removeSessionId(event.sessionId);
206
+ router.handleSessionDied(event.sessionId);
194
207
  }
195
208
  });
196
209
  }
@@ -226,6 +239,7 @@ __name(parseConfiguredChannels, "parseConfiguredChannels");
226
239
 
227
240
  export {
228
241
  sessionsPath,
242
+ daemonSessionRoutesPath,
229
243
  channelLoopPath,
230
244
  loadChannelsConfig,
231
245
  resolveExtensionChannelEntrySpecifier,
@@ -6,7 +6,7 @@ import {
6
6
  } from "./chunk-RKUWKYED.js";
7
7
  import {
8
8
  createDebugLogger
9
- } from "./chunk-J4TSQ5EQ.js";
9
+ } from "./chunk-7NFB7LBQ.js";
10
10
  import {
11
11
  init_esbuild_shims
12
12
  } from "./chunk-5O2XNYP6.js";
@@ -2,10 +2,10 @@
2
2
  "use strict";
3
3
  import {
4
4
  isTeamAutoMemPath
5
- } from "./chunk-YLV3XXFB.js";
5
+ } from "./chunk-FBU7WRZI.js";
6
6
  import {
7
7
  createDebugLogger
8
- } from "./chunk-J4TSQ5EQ.js";
8
+ } from "./chunk-7NFB7LBQ.js";
9
9
  import {
10
10
  init_esbuild_shims
11
11
  } from "./chunk-5O2XNYP6.js";
@@ -1,19 +1,21 @@
1
1
  // Force strict mode and setup for ESM
2
2
  "use strict";
3
3
  import {
4
- getInboxesDir,
4
+ getInboxesDir
5
+ } from "./chunk-TV6K2FB4.js";
6
+ import {
5
7
  require_proper_lockfile
6
- } from "./chunk-KKNMOEZH.js";
8
+ } from "./chunk-E2UVIFI2.js";
7
9
  import {
8
10
  Mutex
9
11
  } from "./chunk-VGC4I5JJ.js";
10
12
  import {
11
13
  atomicWriteJSON
12
- } from "./chunk-ZLXQN2QS.js";
14
+ } from "./chunk-WIEO4CWB.js";
13
15
  import {
14
16
  createDebugLogger,
15
17
  isNodeError
16
- } from "./chunk-J4TSQ5EQ.js";
18
+ } from "./chunk-7NFB7LBQ.js";
17
19
  import {
18
20
  init_esbuild_shims
19
21
  } from "./chunk-5O2XNYP6.js";
@@ -5,10 +5,10 @@ import {
5
5
  } from "./chunk-YUZI3WAC.js";
6
6
  import {
7
7
  resolveBundleDir
8
- } from "./chunk-NVYTCB5Z.js";
8
+ } from "./chunk-K7CRWKOE.js";
9
9
  import {
10
10
  Storage
11
- } from "./chunk-J4TSQ5EQ.js";
11
+ } from "./chunk-7NFB7LBQ.js";
12
12
  import {
13
13
  init_esbuild_shims
14
14
  } from "./chunk-5O2XNYP6.js";
@@ -239,6 +239,7 @@ var MUST_TRANSLATE_KEYS = [
239
239
  "? for shortcuts",
240
240
  'Invalid approval mode "{{arg}}". Valid modes: {{modes}}',
241
241
  'Approval mode set to "{{mode}}"',
242
+ "auto_mode.entry_notice",
242
243
  "Set up Qwen Code's status line UI",
243
244
  "Cached (included in Input): {{tokens}}",
244
245
  "By source:",
@@ -266,15 +267,15 @@ var MUST_TRANSLATE_KEYS = [
266
267
 
267
268
  // import("./locales/**/*.js") in packages/cli/src/i18n/index.ts
268
269
  var globImport_locales_js = __glob({
269
- "./locales/ca.js": () => import("./ca-UJ6HC4H2.js"),
270
- "./locales/de.js": () => import("./de-EBJN3OVN.js"),
271
- "./locales/en.js": () => import("./en-5A6LA7RK.js"),
272
- "./locales/fr.js": () => import("./fr-YXRABLYZ.js"),
273
- "./locales/ja.js": () => import("./ja-7VQOANVG.js"),
274
- "./locales/pt.js": () => import("./pt-2C6YCSHL.js"),
275
- "./locales/ru.js": () => import("./ru-6BBHVZZV.js"),
276
- "./locales/zh-TW.js": () => import("./zh-TW-TBPQGHKH.js"),
277
- "./locales/zh.js": () => import("./zh-RQE7I22T.js")
270
+ "./locales/ca.js": () => import("./ca-C2JTT2N5.js"),
271
+ "./locales/de.js": () => import("./de-2VCDRDGU.js"),
272
+ "./locales/en.js": () => import("./en-NJCA3TAA.js"),
273
+ "./locales/fr.js": () => import("./fr-5F3E7WKD.js"),
274
+ "./locales/ja.js": () => import("./ja-66J6B53L.js"),
275
+ "./locales/pt.js": () => import("./pt-TFZO5Y6T.js"),
276
+ "./locales/ru.js": () => import("./ru-4L4LFHIT.js"),
277
+ "./locales/zh-TW.js": () => import("./zh-TW-D2YIE2LO.js"),
278
+ "./locales/zh.js": () => import("./zh-FSAH32JB.js")
278
279
  });
279
280
 
280
281
  // packages/cli/src/i18n/index.ts
@@ -5,11 +5,11 @@ import {
5
5
  } from "./chunk-VGC4I5JJ.js";
6
6
  import {
7
7
  atomicWriteJSON
8
- } from "./chunk-ZLXQN2QS.js";
8
+ } from "./chunk-WIEO4CWB.js";
9
9
  import {
10
10
  Storage,
11
11
  getProjectHash
12
- } from "./chunk-J4TSQ5EQ.js";
12
+ } from "./chunk-7NFB7LBQ.js";
13
13
  import {
14
14
  init_esbuild_shims
15
15
  } from "./chunk-5O2XNYP6.js";
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  t
5
- } from "./chunk-YAUFFXDS.js";
5
+ } from "./chunk-RDRVMDWV.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";