@qwen-code/qwen-code 0.19.9 → 0.19.10-nightly.20260715.c538bd70d

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 +8 -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-LOOBDOTZ.js} +31 -31
  13. package/chunks/{StandaloneSessionPicker-WS4GXYOG.js → StandaloneSessionPicker-76CLZSH2.js} +51 -49
  14. package/chunks/{acpAgent-5FWSOZL5.js → acpAgent-DFJOK7EB.js} +567 -482
  15. package/chunks/{agent-HOLHB3RT.js → agent-OJQWXNHP.js} +26 -26
  16. package/chunks/{agent-headless-SXL6H56A.js → agent-headless-ND7GOORY.js} +26 -26
  17. package/chunks/{anthropicContentGenerator-L73TO3DB.js → anthropicContentGenerator-56U3YCP2.js} +5 -5
  18. package/chunks/{artifact-tool-U7IRTLIV.js → artifact-tool-MIZLXBLF.js} +2 -2
  19. package/chunks/{askUserQuestion-2DLUUZZG.js → askUserQuestion-XMJVPNWM.js} +2 -2
  20. package/chunks/{bridge-BCJQ7BBB.js → bridge-SNJK2JLK.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-YSFB4HUU.js +418 -0
  24. package/chunks/channel-worker-supervisor-QCKIOYZD.js +20 -0
  25. package/chunks/{chunk-CCDMCZPP.js → chunk-26UABK2C.js} +1 -1
  26. package/chunks/{chunk-LXNEJD34.js → chunk-2FO5GFKZ.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-CLFKOZEK.js → chunk-3XULHBC7.js} +1 -1
  31. package/chunks/chunk-4QZADKJS.js +34 -0
  32. package/chunks/{chunk-E2IY465S.js → chunk-4UDHAJFV.js} +10 -10
  33. package/chunks/{chunk-5U27BZ72.js → chunk-55SAYASQ.js} +190 -77
  34. package/chunks/chunk-5HBA2Z7V.js +28 -0
  35. package/chunks/{chunk-ZJE7NSL3.js → chunk-5M6IDOMF.js} +34 -97
  36. package/chunks/{chunk-HVY356M2.js → chunk-5SQ55XJZ.js} +3 -3
  37. package/chunks/{chunk-EAXLGSFP.js → chunk-6GRAQNTY.js} +8 -8
  38. package/chunks/{chunk-K434OPES.js → chunk-6WPJRYLZ.js} +3 -3
  39. package/chunks/{chunk-VWPVHAMO.js → chunk-7DXHIMXL.js} +5 -1
  40. package/chunks/{chunk-J4TSQ5EQ.js → chunk-7NFB7LBQ.js} +8 -1
  41. package/chunks/{chunk-5SFOMFG4.js → chunk-7R4DPSRA.js} +36 -2
  42. package/chunks/{chunk-W2UIXQDL.js → chunk-7STBROEV.js} +1 -1
  43. package/chunks/{chunk-BMGVRZN4.js → chunk-AETEZU4U.js} +1 -1
  44. package/chunks/{chunk-HPDUL5MF.js → chunk-AGZWN4WV.js} +1 -1
  45. package/chunks/{chunk-RDJSGHZE.js → chunk-ALGGS7UH.js} +1 -38
  46. package/chunks/{chunk-GWHYEOV2.js → chunk-ARKANCNX.js} +2 -1
  47. package/chunks/{chunk-34Z3U5RQ.js → chunk-AU4R7ACM.js} +518 -114
  48. package/chunks/{channel-worker-supervisor-WSOAAYUO.js → chunk-B7MFJBKE.js} +67 -35
  49. package/chunks/{chunk-524RQP4Q.js → chunk-B7NUUEXC.js} +10 -4
  50. package/chunks/{chunk-MC23XKFE.js → chunk-BLPMRN4B.js} +3 -3
  51. package/chunks/{chunk-A3XKDTSH.js → chunk-BRRKAUGR.js} +4 -4
  52. package/chunks/{chunk-W3JHSWRP.js → chunk-BUPLOPUA.js} +4 -4
  53. package/chunks/{chunk-3VAGG5T5.js → chunk-BYOOK22F.js} +121 -16
  54. package/chunks/{chunk-EMDMPBJ4.js → chunk-C47ENMZJ.js} +3 -3
  55. package/chunks/{chunk-3AHXV67U.js → chunk-C5TVXLJZ.js} +1 -1
  56. package/chunks/{chunk-X6TJ3YZV.js → chunk-CGT5TQIZ.js} +159 -57
  57. package/chunks/{chunk-4C5BQ2D2.js → chunk-CQQD7MDG.js} +82 -12
  58. package/chunks/{chunk-KKNMOEZH.js → chunk-E2UVIFI2.js} +185 -398
  59. package/chunks/{chunk-P67PFTUT.js → chunk-EPY4ZEU6.js} +4 -4
  60. package/chunks/{chunk-6PESIEKJ.js → chunk-EZSRHWGS.js} +68 -6
  61. package/chunks/{chunk-4GORAUCN.js → chunk-F333XEAU.js} +1 -1
  62. package/chunks/{chunk-YLV3XXFB.js → chunk-FBU7WRZI.js} +17 -1
  63. package/chunks/{chunk-Q6I5QHMH.js → chunk-FGTCZJOD.js} +1 -1
  64. package/chunks/{chunk-LK7KUE55.js → chunk-FSA7ERJ2.js} +1 -1
  65. package/chunks/{chunk-B4G2WOFA.js → chunk-FTU55ZZ7.js} +3 -3
  66. package/chunks/{chunk-EGYZ275M.js → chunk-GCD7PEDZ.js} +4 -4
  67. package/chunks/{chunk-SJHDYNHF.js → chunk-GDQQRV43.js} +3 -3
  68. package/chunks/{chunk-3BTRNWWD.js → chunk-GOXKNSDZ.js} +1 -64
  69. package/chunks/{chunk-GZRTYZ2R.js → chunk-GQKWT45X.js} +154 -1
  70. package/chunks/chunk-GYTKQYDB.js +23 -0
  71. package/chunks/{chunk-YVEDCAUE.js → chunk-HGT6JR3U.js} +19 -0
  72. package/chunks/{chunk-N3EMS75V.js → chunk-HKM2TEF7.js} +1268 -1233
  73. package/chunks/chunk-IDS7MSUP.js +74 -0
  74. package/chunks/{chunk-PVZM22CK.js → chunk-INKAZNYC.js} +5 -5
  75. package/chunks/{chunk-3G7CIHVV.js → chunk-IOQ75R4R.js} +4 -4
  76. package/chunks/{chunk-AURZZYMD.js → chunk-IQOOJSPR.js} +4 -4
  77. package/chunks/{chunk-AKIVHSJR.js → chunk-J4UQXGVL.js} +111 -93
  78. package/chunks/{chunk-VTU57BWZ.js → chunk-JEKOCLRN.js} +1 -1
  79. package/chunks/{chunk-B5ORX3FG.js → chunk-JGUT3LWZ.js} +6 -1
  80. package/chunks/{chunk-PDZ7MBDG.js → chunk-JIQHT2O6.js} +27 -6
  81. package/chunks/{chunk-XUOOWUZS.js → chunk-JPAH76WA.js} +1 -1
  82. package/chunks/{chunk-BAPGSC7U.js → chunk-K4LG6TVJ.js} +23 -9
  83. package/chunks/chunk-KET3M4K4.js +493 -0
  84. package/chunks/{chunk-ORBGV7NJ.js → chunk-KKRTYONM.js} +6 -4
  85. package/chunks/{chunk-SCGXUJBT.js → chunk-KPA5QGN2.js} +3 -3
  86. package/chunks/{chunk-IAVB3HM3.js → chunk-KSO42X3Z.js} +13 -0
  87. package/chunks/{chunk-4QLQE5WJ.js → chunk-L5U3ELZX.js} +1 -1
  88. package/chunks/{chunk-77XJ3SWN.js → chunk-LIUEXYPL.js} +5 -5
  89. package/chunks/{chunk-4ZVWQHEQ.js → chunk-LQIDP6K5.js} +1 -1
  90. package/chunks/{chunk-34MW4KTI.js → chunk-LT5CRUA5.js} +2 -2
  91. package/chunks/{chunk-DC5Z3DU6.js → chunk-LXLTBIDP.js} +43 -6
  92. package/chunks/{chunk-VA4KQY6V.js → chunk-MEK7CQJR.js} +3 -3
  93. package/chunks/{chunk-KHUQZZJ6.js → chunk-MO7O5722.js} +370 -36
  94. package/chunks/chunk-MR3PXB6E.js +48 -0
  95. package/chunks/{chunk-PODM4SZ4.js → chunk-MV52C5MA.js} +5 -5
  96. package/chunks/{chunk-WL4L7EZH.js → chunk-OA4JVLSA.js} +27 -1
  97. package/chunks/{chunk-X4NKFGFJ.js → chunk-OJAMDVF5.js} +0 -15
  98. package/chunks/{chunk-BZIFY5TF.js → chunk-OKAIGAYW.js} +3 -3
  99. package/chunks/{chunk-ECNYL4AA.js → chunk-OPNPGO6D.js} +1 -1
  100. package/chunks/{chunk-3SJSQXNS.js → chunk-PEJWA3QQ.js} +12 -8
  101. package/chunks/{chunk-MXL5UP4X.js → chunk-Q6TUALBE.js} +1 -1
  102. package/chunks/{chunk-QYMQSECS.js → chunk-QAW7PIHT.js} +2 -2
  103. package/chunks/{chunk-5HOMWMCL.js → chunk-QEDYXCLG.js} +4167 -1338
  104. package/chunks/chunk-QNNTA7IX.js +91 -0
  105. package/chunks/{chunk-D2GFWEXB.js → chunk-QNT5T4Q2.js} +6 -6
  106. package/chunks/{chunk-CUMMSHH6.js → chunk-R5XLNDE2.js} +1 -1
  107. package/chunks/{chunk-LUODI7WD.js → chunk-RCEEXIOO.js} +6 -4
  108. package/chunks/{chunk-WQUQVGTF.js → chunk-RQWDLG6Z.js} +183 -96
  109. package/chunks/{chunk-XYQSMABS.js → chunk-SLCVZX6F.js} +4 -4
  110. package/chunks/{chunk-CEA3E3JB.js → chunk-SPJQO2CE.js} +2 -2
  111. package/chunks/{chunk-JSG7ZSBC.js → chunk-TQBODCFD.js} +1 -1
  112. package/chunks/chunk-TV6K2FB4.js +224 -0
  113. package/chunks/{chunk-5XUCZNSY.js → chunk-TYLOFD2U.js} +1 -1
  114. package/chunks/{chunk-CNEIYWSA.js → chunk-UKWAQ7AV.js} +5 -5
  115. package/chunks/{chunk-7PU4FYLG.js → chunk-US4YQT62.js} +4 -4
  116. package/chunks/{chunk-Q4YQW46J.js → chunk-UYPPCIJQ.js} +36 -18
  117. package/chunks/{chunk-YAUFFXDS.js → chunk-UZKG7HFG.js} +12 -11
  118. package/chunks/{chunk-GWLSNBG4.js → chunk-VQLRHJKL.js} +30 -26
  119. package/chunks/{chunk-L6P4KPHR.js → chunk-VRUHAVZS.js} +59 -39
  120. package/chunks/{chunk-HKMAENAO.js → chunk-W2U4RJJU.js} +8 -6
  121. package/chunks/{chunk-ATAKVRIF.js → chunk-WDSCTLAB.js} +7 -7
  122. package/chunks/{chunk-ZLXQN2QS.js → chunk-WIEO4CWB.js} +1 -1
  123. package/chunks/{chunk-OQ4DRIOA.js → chunk-WJOC24IW.js} +2 -2
  124. package/chunks/{chunk-J3JA76CF.js → chunk-WTNZ6DXB.js} +1 -1
  125. package/chunks/{chunk-NVYTCB5Z.js → chunk-XCR44EEA.js} +14589 -13980
  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-D5SKC4YG.js → chunk-ZBAROUR6.js} +41 -13
  129. package/chunks/{chunk-U2NNEY4R.js → chunk-ZEEVKDO7.js} +1 -1
  130. package/chunks/{chunk-5VXNZWGF.js → chunk-ZLOHB76C.js} +1 -1
  131. package/chunks/{chunk-JZETEN3Z.js → chunk-ZNCLTRNU.js} +3 -3
  132. package/chunks/{chunk-TO6QE22P.js → chunk-ZP4ZZJJG.js} +26 -22
  133. package/chunks/{chunk-UOZWKTQG.js → chunk-ZPAHLFZU.js} +2 -2
  134. package/chunks/{chunk-XLA62MYB.js → chunk-ZTXZ7FM4.js} +2 -2
  135. package/chunks/{computer-use-HM37RX6A.js → computer-use-DRETHEQF.js} +26 -26
  136. package/chunks/{config-utils-NV2SVGPB.js → config-utils-XSHOMMK4.js} +3 -2
  137. package/chunks/{contextCommand-OF5SFGH2.js → contextCommand-7YJUW23J.js} +28 -28
  138. package/chunks/{create-sub-session-INX7TXJI.js → create-sub-session-EAB2U5XW.js} +2 -2
  139. package/chunks/{create-sub-session-KPRT7ECJ.js → create-sub-session-L5HOZAEL.js} +26 -26
  140. package/chunks/{cron-create-AMBKGZX6.js → cron-create-GMVKSXZT.js} +4 -4
  141. package/chunks/{cron-delete-LRU4OJYG.js → cron-delete-VDZKUAVK.js} +4 -4
  142. package/chunks/{cron-list-WVP2JXER.js → cron-list-UG7C7RAR.js} +4 -4
  143. package/chunks/{daemon-ARHTSTXP.js → daemon-MI5HF26N.js} +603 -62
  144. package/chunks/{daemon-status-provider-B2UTZUJ2.js → daemon-status-provider-2D47GOJT.js} +36 -36
  145. package/chunks/{de-EBJN3OVN.js → de-2VCDRDGU.js} +4 -1
  146. package/chunks/{dist-WKPOYU7O.js → dist-IEXZC5ZR.js} +1 -1
  147. package/chunks/{dist-XKU3ABM5.js → dist-PQK4GCKA.js} +1 -1
  148. package/chunks/{dist-VHV4EVHG.js → dist-U75JK3PF.js} +1 -1
  149. package/chunks/{dist-R7LN5AZE.js → dist-VXO7QBON.js} +2 -2
  150. package/chunks/{dist-PNVLTKTL.js → dist-WH4TZSH3.js} +158 -4
  151. package/chunks/{dist-QYCAEZIT.js → dist-X2ABIW5R.js} +5 -1
  152. package/chunks/{earlyInputCapture-3VTHRC4C.js → earlyInputCapture-OJQPGCSX.js} +27 -27
  153. package/chunks/{edit-VNI4NJ73.js → edit-LZOAFLT2.js} +27 -27
  154. package/chunks/{en-5A6LA7RK.js → en-NJCA3TAA.js} +5 -1
  155. package/chunks/{enter-worktree-IYYBKPZT.js → enter-worktree-VL2TCGI5.js} +26 -26
  156. package/chunks/{enterPlanMode-GMC5FD5A.js → enterPlanMode-QGHBHZWI.js} +42 -27
  157. package/chunks/{environment-5HSSRMJ7.js → environment-2G5IC2EU.js} +30 -29
  158. package/chunks/{errors-HMFCJJ7P.js → errors-7QNQDNI2.js} +28 -28
  159. package/chunks/{exit-worktree-6BHCMP5G.js → exit-worktree-5V3X2MRH.js} +26 -26
  160. package/chunks/{exitPlanMode-CJW7G74W.js → exitPlanMode-XDPNQB4H.js} +26 -26
  161. package/chunks/{fast-path-FRDMDVHG.js → fast-path-NNSD4BVZ.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-RKDUWGXJ.js} +139 -76
  165. package/chunks/{geminiContentGenerator-J7YNZDYP.js → geminiContentGenerator-V7QGHXVF.js} +4 -4
  166. package/chunks/{glob-BRCSGFOT.js → glob-ZNQUUOTS.js} +28 -27
  167. package/chunks/{grep-EE2DUOSY.js → grep-NYIGLM7R.js} +26 -26
  168. package/chunks/{handleAutoUpdate-5NWTLR67.js → handleAutoUpdate-UBQ4IQXY.js} +30 -30
  169. package/chunks/{i18n-BASPENNQ.js → i18n-5T3S6SGP.js} +27 -27
  170. package/chunks/initializer-TJED246Q.js +73 -0
  171. package/chunks/{installationInfo-W6V4DT7W.js → installationInfo-OTEU7FKR.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-6OHS7MFJ.js +76 -0
  175. package/chunks/loadedSettingsAdapter-5456XIYG.js +70 -0
  176. package/chunks/{loop-wakeup-WX7BLWWP.js → loop-wakeup-C4EXLYVA.js} +5 -5
  177. package/chunks/{ls-ZB2BDP6T.js → ls-2OUTG3IZ.js} +4 -4
  178. package/chunks/{lsp-V5DN4YUJ.js → lsp-4VMNXZW6.js} +2 -2
  179. package/chunks/mcp-NOWRPFKY.js +70 -0
  180. package/chunks/{monitor-X5Z3H4FY.js → monitor-CVDZO3IZ.js} +26 -26
  181. package/chunks/nonInteractiveCli-UGI7Y43E.js +129 -0
  182. package/chunks/{notebook-edit-TRM2QIJK.js → notebook-edit-NWIA5TEJ.js} +27 -27
  183. package/chunks/{openaiContentGenerator-AAYONPMF.js → openaiContentGenerator-KJONBBJO.js} +12 -12
  184. package/chunks/{pidfile-D4I4FTVA.js → pidfile-L3TGXMTF.js} +27 -27
  185. package/chunks/{pt-2C6YCSHL.js → pt-TFZO5Y6T.js} +4 -1
  186. package/chunks/{qwenContentGenerator-K3HZ2H76.js → qwenContentGenerator-GXUZB5SJ.js} +28 -28
  187. package/chunks/{qwenOAuth2-PJQ27GSO.js → qwenOAuth2-LEYOU7RU.js} +5 -5
  188. package/chunks/{read-file-7SZSIZOL.js → read-file-I4OUZXTA.js} +8 -8
  189. package/chunks/{read-mcp-resource-SM5DA4RG.js → read-mcp-resource-JUFHCKSC.js} +2 -2
  190. package/chunks/{record-artifact-4XKZX3UW.js → record-artifact-DWSMBXYY.js} +2 -2
  191. package/chunks/{ripGrep-YNPFVCZP.js → ripGrep-XLCXANIO.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-R6SBP6YS.js} +1232 -371
  194. package/chunks/{runtime-57WWRVHN.js → runtime-U3S33YUQ.js} +42 -37
  195. package/chunks/{scheduler-YBLGWSIL.js → scheduler-65QCIELP.js} +26 -26
  196. package/chunks/{send-message-F36YD6KQ.js → send-message-JZ752NWD.js} +3 -3
  197. package/chunks/{serve-R63NK3CV.js → serve-PSPOFCOD.js} +36 -34
  198. package/chunks/{server-Z22GCAXP.js → server-6P5ZB56O.js} +5561 -1377
  199. package/chunks/{session-HKAAI7BN.js → session-ILLOYW75.js} +298 -98
  200. package/chunks/{settings-3EYN66GK.js → settings-RMUJGYIK.js} +34 -32
  201. package/chunks/{shell-6YXINTWJ.js → shell-65GTAN5Q.js} +28 -26
  202. package/chunks/{skill-OO57P4X6.js → skill-L76U3YCX.js} +10 -10
  203. package/chunks/{spawnChannel-JD7G4VU6.js → spawnChannel-LXIGZ4EM.js} +28 -28
  204. package/chunks/{src-G5UPLZSZ.js → src-DWZT2X3Z.js} +87 -27
  205. package/chunks/{standalone-update-OB7F4JPZ.js → standalone-update-F6SRKPSD.js} +28 -28
  206. package/chunks/{startInteractiveUI-73EGLIIH.js → startInteractiveUI-UEJQP7S3.js} +730 -397
  207. package/chunks/{syntheticOutput-34H7LGA7.js → syntheticOutput-LELY6HAI.js} +3 -3
  208. package/chunks/{task-create-FRGOEIKY.js → task-create-QY3BIMNM.js} +8 -7
  209. package/chunks/{task-list-OW766BXZ.js → task-list-D2U47WBJ.js} +6 -5
  210. package/chunks/{task-stop-SIR5SNBN.js → task-stop-N6E5IYLH.js} +2 -2
  211. package/chunks/{task-update-YRA532MT.js → task-update-HJCQILLB.js} +8 -7
  212. package/chunks/{team-create-PECAAPXK.js → team-create-4QBZVOGN.js} +26 -26
  213. package/chunks/{team-delete-6OSECUZC.js → team-delete-RCWYDRF4.js} +6 -5
  214. package/chunks/{team-plan-approval-L6F434RY.js → team-plan-approval-BK4CIOFV.js} +26 -26
  215. package/chunks/{theme-manager-ZG4RY6GU.js → theme-manager-5F2IGW6E.js} +27 -27
  216. package/chunks/{todoWrite-YDMFEV4G.js → todoWrite-FKCGATPJ.js} +4 -4
  217. package/chunks/{tool-search-THVIWAPB.js → tool-search-J2ESO33H.js} +9 -9
  218. package/chunks/{total-session-admission-JOKNRIIA.js → total-session-admission-U4LZ5QTQ.js} +33 -33
  219. package/chunks/tree-sitter-YJVE2ZUK.js +2980 -0
  220. package/chunks/{trustedFolders-EOGT3UVS.js → trustedFolders-TIDOXCJA.js} +29 -28
  221. package/chunks/types-ML3TRJQ5.js +16 -0
  222. package/chunks/{updateCheck-2KYEYVSB.js → updateCheck-VRVR26FI.js} +29 -29
  223. package/chunks/{validateNonInterActiveAuth-EN6ZQSR2.js → validateNonInterActiveAuth-UGKYAVLG.js} +75 -71
  224. package/chunks/{version-3UEA6ZIR.js → version-7HR6VZAT.js} +1 -1
  225. package/chunks/{web-fetch-PAAEQKBW.js → web-fetch-QGODBB6S.js} +5 -5
  226. package/chunks/{workflow-QCCCMYP3.js → workflow-EDQAITEW.js} +27 -27
  227. package/chunks/workspace-providers-status-27UGAK77.js +73 -0
  228. package/chunks/workspace-registration-store-5H7577YQ.js +27 -0
  229. package/chunks/{workspace-registry-24QFLQYH.js → workspace-registry-F3THGAXC.js} +33 -33
  230. package/chunks/workspace-service-4JSAQAHP.js +86 -0
  231. package/chunks/workspace-skills-status-5JTWZHZU.js +72 -0
  232. package/chunks/{write-file-I3MUDRIE.js → write-file-UY6XCZZM.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-CObt_TK9.js} +1 -1
  247. package/web-shell/assets/{architectureDiagram-3BPJPVTR-B-At37J_.js → architectureDiagram-3BPJPVTR-B7aiJ6CK.js} +1 -1
  248. package/web-shell/assets/{blockDiagram-GPEHLZMM-B51wjcU7.js → blockDiagram-GPEHLZMM-BSK2CrID.js} +1 -1
  249. package/web-shell/assets/{c4Diagram-AAUBKEIU-xBK7BAwN.js → c4Diagram-AAUBKEIU-Bhx2p7T_.js} +1 -1
  250. package/web-shell/assets/channel-BBaLq8MV.js +1 -0
  251. package/web-shell/assets/{chunk-2J33WTMH-xKmLg7Yr.js → chunk-2J33WTMH-c3Hzv0Ni.js} +1 -1
  252. package/web-shell/assets/{chunk-4BX2VUAB-BfkdKZCM.js → chunk-4BX2VUAB-DNXaK7ZF.js} +1 -1
  253. package/web-shell/assets/{chunk-55IACEB6-DT713sZf.js → chunk-55IACEB6-BXjvDj_i.js} +1 -1
  254. package/web-shell/assets/{chunk-727SXJPM-CYEeAamv.js → chunk-727SXJPM-B6CaKFp-.js} +1 -1
  255. package/web-shell/assets/{chunk-AQP2D5EJ-DBN-5CFd.js → chunk-AQP2D5EJ-tij6Mz9B.js} +1 -1
  256. package/web-shell/assets/{chunk-FMBD7UC4-CGZKk4PH.js → chunk-FMBD7UC4-DdlsGk2h.js} +1 -1
  257. package/web-shell/assets/{chunk-ND2GUHAM-qQbC2O-y.js → chunk-ND2GUHAM-CdgGZSHE.js} +1 -1
  258. package/web-shell/assets/{chunk-QZHKN3VN-B3zeXwsX.js → chunk-QZHKN3VN-D8oJn1C0.js} +1 -1
  259. package/web-shell/assets/classDiagram-4FO5ZUOK-B2ZK6sWE.js +1 -0
  260. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-B2ZK6sWE.js +1 -0
  261. package/web-shell/assets/{cose-bilkent-S5V4N54A-BKsl1Wvy.js → cose-bilkent-S5V4N54A-BUVmNp1Y.js} +1 -1
  262. package/web-shell/assets/{dagre-BM42HDAG-CuuuLiBK.js → dagre-BM42HDAG-CO4q310O.js} +1 -1
  263. package/web-shell/assets/{diagram-2AECGRRQ-CG4_eKiV.js → diagram-2AECGRRQ-C6gFvWkg.js} +1 -1
  264. package/web-shell/assets/{diagram-5GNKFQAL-DSFTmZB1.js → diagram-5GNKFQAL-NG2I_c0h.js} +1 -1
  265. package/web-shell/assets/{diagram-KO2AKTUF-BxwlEHn8.js → diagram-KO2AKTUF-DFKMS6I9.js} +1 -1
  266. package/web-shell/assets/{diagram-LMA3HP47-BUAg-jMG.js → diagram-LMA3HP47-BiElfsfP.js} +1 -1
  267. package/web-shell/assets/{diagram-OG6HWLK6-BFM2jlO5.js → diagram-OG6HWLK6-zLWDYUqu.js} +1 -1
  268. package/web-shell/assets/{erDiagram-TEJ5UH35-CerbFPa2.js → erDiagram-TEJ5UH35-DoVaazhK.js} +1 -1
  269. package/web-shell/assets/{flowDiagram-I6XJVG4X-BNeZz5Zz.js → flowDiagram-I6XJVG4X-0RLz-mXg.js} +1 -1
  270. package/web-shell/assets/{ganttDiagram-6RSMTGT7-CTOogLaM.js → ganttDiagram-6RSMTGT7-C-eX1A39.js} +3 -3
  271. package/web-shell/assets/{gitGraphDiagram-PVQCEYII-yxSFkXPj.js → gitGraphDiagram-PVQCEYII-BauQu1Bu.js} +1 -1
  272. package/web-shell/assets/index-3uAT3ehO.css +5 -0
  273. package/web-shell/assets/index-CVHa2QH7.js +3 -0
  274. package/web-shell/assets/index-D1KigWat.js +1128 -0
  275. package/web-shell/assets/{infoDiagram-5YYISTIA-DYdAUevm.js → infoDiagram-5YYISTIA-C800cFvZ.js} +1 -1
  276. package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-CNuijZ90.js → ishikawaDiagram-YF4QCWOH-CFK1Jk6e.js} +1 -1
  277. package/web-shell/assets/{journeyDiagram-JHISSGLW-BTyiuonf.js → journeyDiagram-JHISSGLW-Cjx0WAC4.js} +1 -1
  278. package/web-shell/assets/{kanban-definition-UN3LZRKU-DPJo0Uow.js → kanban-definition-UN3LZRKU-DWMDHbiv.js} +1 -1
  279. package/web-shell/assets/{linear-C8wKCbIC.js → linear-vpW4FrZs.js} +1 -1
  280. package/web-shell/assets/{mermaid.core-BV5o7nW5.js → mermaid.core-DsHRUnDd.js} +5 -5
  281. package/web-shell/assets/{mindmap-definition-RKZ34NQL-BtLcBmSt.js → mindmap-definition-RKZ34NQL-D3Eb1cAK.js} +1 -1
  282. package/web-shell/assets/{pieDiagram-4H26LBE5-C22J7A9Q.js → pieDiagram-4H26LBE5-Cr2-6sWt.js} +1 -1
  283. package/web-shell/assets/{quadrantDiagram-W4KKPZXB-DSL10wiL.js → quadrantDiagram-W4KKPZXB-Yd7yUgVp.js} +1 -1
  284. package/web-shell/assets/{requirementDiagram-4Y6WPE33-feqh0UpX.js → requirementDiagram-4Y6WPE33-BE6SprL8.js} +1 -1
  285. package/web-shell/assets/{sankeyDiagram-5OEKKPKP-Z4OVaWaZ.js → sankeyDiagram-5OEKKPKP-DzkuMK8d.js} +1 -1
  286. package/web-shell/assets/{sequenceDiagram-3UESZ5HK-DIluIcb1.js → sequenceDiagram-3UESZ5HK-wD9A3Dhi.js} +1 -1
  287. package/web-shell/assets/{stateDiagram-AJRCARHV-hlhnuoYH.js → stateDiagram-AJRCARHV-BOp5q1Nm.js} +1 -1
  288. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-BDsWUmPG.js +1 -0
  289. package/web-shell/assets/{timeline-definition-PNZ67QCA-Dqf_CqgL.js → timeline-definition-PNZ67QCA-Btc08sUA.js} +1 -1
  290. package/web-shell/assets/{vennDiagram-CIIHVFJN-DD2QhaTX.js → vennDiagram-CIIHVFJN-Bv6upsOA.js} +1 -1
  291. package/web-shell/assets/{wardley-L42UT6IY-B2uI85U_.js → wardley-L42UT6IY-D-XamnCK.js} +1 -1
  292. package/web-shell/assets/{wardleyDiagram-YWT4CUSO-U1aJX71g.js → wardleyDiagram-YWT4CUSO-BbP_5Wfp.js} +1 -1
  293. package/web-shell/assets/{xychartDiagram-2RQKCTM6-C0ODHUee.js → xychartDiagram-2RQKCTM6-CO5Hh28b.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
@@ -0,0 +1,224 @@
1
+ // Force strict mode and setup for ESM
2
+ "use strict";
3
+ import {
4
+ INBOXES_DIR,
5
+ LEADER_NAME,
6
+ TASKS_DIR,
7
+ TEAMMATE_COLORS,
8
+ TEAMS_DIR,
9
+ TEAM_CONFIG_FILENAME
10
+ } from "./chunk-CPBF7KYF.js";
11
+ import {
12
+ atomicWriteJSON
13
+ } from "./chunk-WIEO4CWB.js";
14
+ import {
15
+ Storage,
16
+ isNodeError
17
+ } from "./chunk-7NFB7LBQ.js";
18
+ import {
19
+ init_esbuild_shims
20
+ } from "./chunk-5O2XNYP6.js";
21
+ import {
22
+ __name
23
+ } from "./chunk-J2S4EL5Y.js";
24
+
25
+ // packages/core/src/agents/team/teamHelpers.ts
26
+ init_esbuild_shims();
27
+ import * as fs from "node:fs/promises";
28
+ import * as path from "node:path";
29
+ function getTeamsRootDir() {
30
+ return path.join(Storage.getGlobalQwenDir(), TEAMS_DIR);
31
+ }
32
+ __name(getTeamsRootDir, "getTeamsRootDir");
33
+ function getTeamDir(teamName) {
34
+ return path.join(getTeamsRootDir(), teamName);
35
+ }
36
+ __name(getTeamDir, "getTeamDir");
37
+ function getTeamFilePath(teamName) {
38
+ return path.join(getTeamDir(teamName), TEAM_CONFIG_FILENAME);
39
+ }
40
+ __name(getTeamFilePath, "getTeamFilePath");
41
+ function getInboxesDir(teamName) {
42
+ return path.join(getTeamDir(teamName), INBOXES_DIR);
43
+ }
44
+ __name(getInboxesDir, "getInboxesDir");
45
+ function getTasksDir(teamName) {
46
+ return path.join(Storage.getGlobalQwenDir(), TASKS_DIR, teamName);
47
+ }
48
+ __name(getTasksDir, "getTasksDir");
49
+ function sanitizeName(name) {
50
+ return name.toLowerCase().replace(/[^a-z0-9-]/g, "-").replace(/-+/g, "-").replace(/^-|-$/g, "");
51
+ }
52
+ __name(sanitizeName, "sanitizeName");
53
+ function formatAgentId(name, teamName) {
54
+ return `${sanitizeName(name)}@${sanitizeName(teamName)}`;
55
+ }
56
+ __name(formatAgentId, "formatAgentId");
57
+ function generateUniqueTeammateName(baseName, existingMembers) {
58
+ const sanitized = sanitizeName(baseName);
59
+ if (!sanitized) {
60
+ throw new Error(
61
+ `Teammate name "${baseName}" sanitizes to an empty string. Choose a name with at least one alphanumeric character.`
62
+ );
63
+ }
64
+ if (sanitized === LEADER_NAME) {
65
+ throw new Error(
66
+ `"${LEADER_NAME}" is reserved for the team leader. Choose a different teammate name.`
67
+ );
68
+ }
69
+ const existingNames = new Set(existingMembers.map((m) => m.name));
70
+ if (existingNames.has(sanitized)) {
71
+ const existingList = [...existingNames].join(", ") || "<none>";
72
+ throw new Error(
73
+ `A teammate named "${sanitized}" already exists in this team (existing: ${existingList}). Choose a different name.`
74
+ );
75
+ }
76
+ return sanitized;
77
+ }
78
+ __name(generateUniqueTeammateName, "generateUniqueTeammateName");
79
+ function assignTeammateColor(existingMembers) {
80
+ const usedColors = new Set(
81
+ existingMembers.map((m) => m.color).filter((c) => c !== void 0)
82
+ );
83
+ for (const color of TEAMMATE_COLORS) {
84
+ if (!usedColors.has(color)) {
85
+ return color;
86
+ }
87
+ }
88
+ return TEAMMATE_COLORS[existingMembers.length % TEAMMATE_COLORS.length];
89
+ }
90
+ __name(assignTeammateColor, "assignTeammateColor");
91
+ function clearTeammateColors(members) {
92
+ return members.map((m) => {
93
+ const { color: _, ...rest } = m;
94
+ return rest;
95
+ });
96
+ }
97
+ __name(clearTeammateColors, "clearTeammateColors");
98
+ function setMemberActive(members, agentId, isActive) {
99
+ return members.map((m) => m.agentId === agentId ? { ...m, isActive } : m);
100
+ }
101
+ __name(setMemberActive, "setMemberActive");
102
+ function findMemberById(members, agentId) {
103
+ return members.find((m) => m.agentId === agentId);
104
+ }
105
+ __name(findMemberById, "findMemberById");
106
+ function findMemberByName(members, name) {
107
+ const sanitized = sanitizeName(name);
108
+ return members.find((m) => m.name === sanitized);
109
+ }
110
+ __name(findMemberByName, "findMemberByName");
111
+ function classifyShutdownResponse(message) {
112
+ const trimmed = message.trimStart();
113
+ if (/^shutdown_approved\b/i.test(trimmed)) return "shutdown_approved";
114
+ if (/^shutdown_rejected\b/i.test(trimmed)) return "shutdown_rejected";
115
+ return void 0;
116
+ }
117
+ __name(classifyShutdownResponse, "classifyShutdownResponse");
118
+ async function readTeamFile(teamName) {
119
+ const filePath = getTeamFilePath(teamName);
120
+ try {
121
+ const raw = await fs.readFile(filePath, "utf-8");
122
+ return JSON.parse(raw);
123
+ } catch (err) {
124
+ if (isNodeError(err) && err.code === "ENOENT") {
125
+ return void 0;
126
+ }
127
+ throw err;
128
+ }
129
+ }
130
+ __name(readTeamFile, "readTeamFile");
131
+ async function writeTeamFile(teamName, teamFile) {
132
+ const filePath = getTeamFilePath(teamName);
133
+ await fs.mkdir(path.dirname(filePath), { recursive: true });
134
+ await atomicWriteJSON(filePath, teamFile);
135
+ }
136
+ __name(writeTeamFile, "writeTeamFile");
137
+ async function createTeamFile(teamName, teamFile) {
138
+ const filePath = getTeamFilePath(teamName);
139
+ await fs.mkdir(path.dirname(filePath), { recursive: true });
140
+ await fs.writeFile(filePath, JSON.stringify(teamFile, null, 2) + "\n", {
141
+ encoding: "utf-8",
142
+ flag: "wx"
143
+ });
144
+ }
145
+ __name(createTeamFile, "createTeamFile");
146
+ function isPidAlive(pid) {
147
+ try {
148
+ process.kill(pid, 0);
149
+ return true;
150
+ } catch (err) {
151
+ return isNodeError(err) && err.code === "EPERM";
152
+ }
153
+ }
154
+ __name(isPidAlive, "isPidAlive");
155
+ async function tryReclaimStaleTeam(teamName) {
156
+ let existing;
157
+ try {
158
+ existing = await readTeamFile(teamName);
159
+ } catch {
160
+ return false;
161
+ }
162
+ if (!existing) {
163
+ await deleteTeamDirs(teamName);
164
+ return true;
165
+ }
166
+ if (typeof existing.leadPid !== "number" || existing.leadPid <= 0) {
167
+ return false;
168
+ }
169
+ if (existing.leadPid !== process.pid && isPidAlive(existing.leadPid)) {
170
+ return false;
171
+ }
172
+ await deleteTeamDirs(teamName);
173
+ return true;
174
+ }
175
+ __name(tryReclaimStaleTeam, "tryReclaimStaleTeam");
176
+ async function deleteTeamDirs(teamName) {
177
+ const teamDir = getTeamDir(teamName);
178
+ const tasksDir = getTasksDir(teamName);
179
+ await Promise.allSettled([
180
+ fs.rm(teamDir, { recursive: true, force: true }),
181
+ fs.rm(tasksDir, { recursive: true, force: true })
182
+ ]);
183
+ }
184
+ __name(deleteTeamDirs, "deleteTeamDirs");
185
+ async function listTeamNames() {
186
+ const teamsRoot = getTeamsRootDir();
187
+ try {
188
+ const entries = await fs.readdir(teamsRoot, {
189
+ withFileTypes: true
190
+ });
191
+ return entries.filter((e) => e.isDirectory()).map((e) => e.name);
192
+ } catch {
193
+ return [];
194
+ }
195
+ }
196
+ __name(listTeamNames, "listTeamNames");
197
+
198
+ export {
199
+ getTeamsRootDir,
200
+ getTeamDir,
201
+ getTeamFilePath,
202
+ getInboxesDir,
203
+ getTasksDir,
204
+ sanitizeName,
205
+ formatAgentId,
206
+ generateUniqueTeammateName,
207
+ assignTeammateColor,
208
+ clearTeammateColors,
209
+ setMemberActive,
210
+ findMemberById,
211
+ findMemberByName,
212
+ classifyShutdownResponse,
213
+ readTeamFile,
214
+ writeTeamFile,
215
+ createTeamFile,
216
+ tryReclaimStaleTeam,
217
+ deleteTeamDirs,
218
+ listTeamNames
219
+ };
220
+ /**
221
+ * @license
222
+ * Copyright 2025 Qwen
223
+ * SPDX-License-Identifier: Apache-2.0
224
+ */
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  createDebugLogger
5
- } from "./chunk-J4TSQ5EQ.js";
5
+ } from "./chunk-7NFB7LBQ.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";
@@ -1,14 +1,14 @@
1
1
  // Force strict mode and setup for ESM
2
2
  "use strict";
3
+ import {
4
+ is_in_ci_default
5
+ } from "./chunk-NHDKSOEY.js";
3
6
  import {
4
7
  require_react
5
8
  } from "./chunk-HTHUX2T5.js";
6
9
  import {
7
10
  themeManager
8
- } from "./chunk-MXL5UP4X.js";
9
- import {
10
- is_in_ci_default
11
- } from "./chunk-NHDKSOEY.js";
11
+ } from "./chunk-Q6TUALBE.js";
12
12
  import {
13
13
  eastAsianWidth,
14
14
  isFullWidth,
@@ -16,7 +16,7 @@ import {
16
16
  } from "./chunk-QHTIBUWB.js";
17
17
  import {
18
18
  stripAnsi
19
- } from "./chunk-NVYTCB5Z.js";
19
+ } from "./chunk-XCR44EEA.js";
20
20
  import {
21
21
  init_esbuild_shims
22
22
  } from "./chunk-5O2XNYP6.js";
@@ -3,17 +3,17 @@
3
3
  import {
4
4
  getGitVersion,
5
5
  getNpmVersion
6
- } from "./chunk-W3JHSWRP.js";
6
+ } from "./chunk-BUPLOPUA.js";
7
7
  import {
8
8
  buildEnvStatusFromEnv,
9
9
  snapshotProcessEnv
10
- } from "./chunk-XLA62MYB.js";
10
+ } from "./chunk-ZTXZ7FM4.js";
11
11
  import {
12
12
  mapDomainErrorToErrorKind
13
- } from "./chunk-VWPVHAMO.js";
13
+ } from "./chunk-7DXHIMXL.js";
14
14
  import {
15
15
  canUseRipgrep
16
- } from "./chunk-NVYTCB5Z.js";
16
+ } from "./chunk-XCR44EEA.js";
17
17
  import {
18
18
  init_esbuild_shims
19
19
  } from "./chunk-5O2XNYP6.js";
@@ -4,37 +4,37 @@ import {
4
4
  handleAtCommand,
5
5
  resolveAtCommandQuery,
6
6
  sanitizeDisplayText
7
- } from "./chunk-77XJ3SWN.js";
7
+ } from "./chunk-LIUEXYPL.js";
8
8
  import {
9
9
  isAtCommand,
10
10
  isBtwCommand,
11
11
  isSlashCommand,
12
12
  normalizePartList,
13
13
  recordGoalStatusItem
14
- } from "./chunk-5U27BZ72.js";
14
+ } from "./chunk-55SAYASQ.js";
15
15
  import {
16
16
  fitPendingSlice,
17
17
  useSessionStats
18
- } from "./chunk-AURZZYMD.js";
18
+ } from "./chunk-IQOOJSPR.js";
19
19
  import {
20
20
  SHELL_COMMAND_NAME,
21
21
  isCollapsibleTool
22
- } from "./chunk-GWLSNBG4.js";
22
+ } from "./chunk-VQLRHJKL.js";
23
23
  import {
24
24
  require_react
25
25
  } from "./chunk-HTHUX2T5.js";
26
26
  import {
27
27
  themeManager
28
- } from "./chunk-MXL5UP4X.js";
28
+ } from "./chunk-Q6TUALBE.js";
29
29
  import {
30
30
  formatMemoryUsage
31
31
  } from "./chunk-E5Z2AVNV.js";
32
32
  import {
33
33
  isInlineModelOverrideAllowed
34
- } from "./chunk-34MW4KTI.js";
34
+ } from "./chunk-LT5CRUA5.js";
35
35
  import {
36
36
  t
37
- } from "./chunk-YAUFFXDS.js";
37
+ } from "./chunk-UZKG7HFG.js";
38
38
  import {
39
39
  AutonomousLoopTickResolver,
40
40
  CoreToolScheduler,
@@ -53,11 +53,12 @@ import {
53
53
  markDuplicateProviderToolCallResponseSent,
54
54
  parseAndFormatApiError,
55
55
  promptIdContext,
56
+ refreshMemoryAfterManagedWrite,
56
57
  runVisionBridge,
57
58
  setActiveGoal,
58
59
  shouldRunVisionBridge,
59
60
  splitImageParts
60
- } from "./chunk-NVYTCB5Z.js";
61
+ } from "./chunk-XCR44EEA.js";
61
62
  import {
62
63
  ApiCancelEvent,
63
64
  ConversationFinishedEvent,
@@ -67,17 +68,18 @@ import {
67
68
  logConversationFinishedEvent,
68
69
  logUserPrompt,
69
70
  logUserRetry
70
- } from "./chunk-3VAGG5T5.js";
71
+ } from "./chunk-BYOOK22F.js";
71
72
  import {
72
73
  isAnyAutoMemPath
73
- } from "./chunk-YLV3XXFB.js";
74
+ } from "./chunk-FBU7WRZI.js";
74
75
  import {
75
- ToolNames
76
- } from "./chunk-B5ORX3FG.js";
76
+ ToolNames,
77
+ isShellProgressData
78
+ } from "./chunk-JGUT3LWZ.js";
77
79
  import {
78
80
  getUnsupportedImageFormatWarning,
79
81
  isSupportedImageMimeType
80
- } from "./chunk-524RQP4Q.js";
82
+ } from "./chunk-B7NUUEXC.js";
81
83
  import {
82
84
  FinishReason
83
85
  } from "./chunk-4LD5APFL.js";
@@ -86,7 +88,7 @@ import {
86
88
  createDebugLogger,
87
89
  getErrorMessage,
88
90
  isNodeError
89
- } from "./chunk-J4TSQ5EQ.js";
91
+ } from "./chunk-7NFB7LBQ.js";
90
92
  import {
91
93
  init_esbuild_shims
92
94
  } from "./chunk-5O2XNYP6.js";
@@ -549,6 +551,9 @@ function useReactToolScheduler(onComplete, config, getPreferredEditor, onEditorC
549
551
  const [toolCallsForDisplay, setToolCallsForDisplay] = (0, import_react4.useState)([]);
550
552
  const outputUpdateHandler = (0, import_react4.useCallback)(
551
553
  (toolCallId, outputChunk) => {
554
+ if (isShellProgressData(outputChunk)) {
555
+ return;
556
+ }
552
557
  const compactOutput = compactToolResultDisplayForHistory(outputChunk);
553
558
  setToolCallsForDisplay(
554
559
  (prevCalls) => prevCalls.map((tc) => {
@@ -2597,15 +2602,28 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
2597
2602
  const newSuccessfulMemorySaves = completedAndReadyToSubmitTools.filter(
2598
2603
  (t2) => t2.request.name === "save_memory" && t2.status === "success" && !processedMemoryToolsRef.current.has(t2.request.callId)
2599
2604
  );
2605
+ const geminiTools = completedAndReadyToSubmitTools.filter(
2606
+ (t2) => !t2.request.isClientInitiated && !historyCallIdsWithResponse.has(t2.request.callId)
2607
+ );
2608
+ const didRefreshManagedMemory = await refreshMemoryAfterManagedWrite(
2609
+ config,
2610
+ completedAndReadyToSubmitTools.map((toolCall) => ({
2611
+ toolName: toolCall.request.name,
2612
+ args: toolCall.request.args,
2613
+ status: toolCall.status
2614
+ })),
2615
+ { logContext: "interactive memory tool batch" }
2616
+ );
2600
2617
  if (newSuccessfulMemorySaves.length > 0) {
2601
- void performMemoryRefresh();
2618
+ if (!didRefreshManagedMemory) {
2619
+ void performMemoryRefresh().catch((err) => {
2620
+ debugLogger3.warn(`save_memory refresh failed: ${err}`);
2621
+ });
2622
+ }
2602
2623
  newSuccessfulMemorySaves.forEach(
2603
2624
  (t2) => processedMemoryToolsRef.current.add(t2.request.callId)
2604
2625
  );
2605
2626
  }
2606
- const geminiTools = completedAndReadyToSubmitTools.filter(
2607
- (t2) => !t2.request.isClientInitiated && !historyCallIdsWithResponse.has(t2.request.callId)
2608
- );
2609
2627
  const completedCallIds = new Set(
2610
2628
  completedAndReadyToSubmitTools.map(
2611
2629
  (toolCall) => toolCall.request.callId
@@ -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-XCR44EEA.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
@@ -1,8 +1,5 @@
1
1
  // Force strict mode and setup for ESM
2
2
  "use strict";
3
- import {
4
- noteInteraction
5
- } from "./chunk-KW7NOTN6.js";
6
3
  import {
7
4
  Box_default,
8
5
  Text,
@@ -11,39 +8,42 @@ import {
11
8
  use_is_screen_reader_enabled_default,
12
9
  use_stdin_default,
13
10
  use_stdout_default
14
- } from "./chunk-CNEIYWSA.js";
11
+ } from "./chunk-UKWAQ7AV.js";
15
12
  import {
16
13
  require_react
17
14
  } from "./chunk-HTHUX2T5.js";
15
+ import {
16
+ noteInteraction
17
+ } from "./chunk-KW7NOTN6.js";
18
18
  import {
19
19
  formatHistoryGapNotice,
20
20
  indexGapsByChild
21
- } from "./chunk-U2NNEY4R.js";
21
+ } from "./chunk-ZEEVKDO7.js";
22
22
  import {
23
23
  sanitizeFilenameForDisplay
24
- } from "./chunk-Q6I5QHMH.js";
24
+ } from "./chunk-FGTCZJOD.js";
25
25
  import {
26
26
  formatDuration
27
27
  } from "./chunk-E5Z2AVNV.js";
28
28
  import {
29
29
  t
30
- } from "./chunk-YAUFFXDS.js";
30
+ } from "./chunk-UZKG7HFG.js";
31
31
  import {
32
32
  fetchGitDiff,
33
33
  findProviderByCredentials,
34
34
  getToolResponseDisplayText,
35
35
  resolveMetadataKey
36
- } from "./chunk-NVYTCB5Z.js";
36
+ } from "./chunk-XCR44EEA.js";
37
37
  import {
38
38
  KittySequenceOverflowEvent,
39
39
  logKittySequenceOverflow
40
- } from "./chunk-3VAGG5T5.js";
40
+ } from "./chunk-BYOOK22F.js";
41
41
  import {
42
42
  ToolDisplayNames
43
- } from "./chunk-B5ORX3FG.js";
43
+ } from "./chunk-JGUT3LWZ.js";
44
44
  import {
45
45
  createDebugLogger
46
- } from "./chunk-J4TSQ5EQ.js";
46
+ } from "./chunk-7NFB7LBQ.js";
47
47
  import {
48
48
  init_esbuild_shims
49
49
  } from "./chunk-5O2XNYP6.js";
@@ -1938,21 +1938,18 @@ function writeOsc52(text) {
1938
1938
  __name(writeOsc52, "writeOsc52");
1939
1939
  var linuxClipboardTool;
1940
1940
  var cachedWlPasteImageTypes = null;
1941
- var cachedClipboardModule = null;
1942
- var clipboardLoadAttempted = false;
1941
+ var clipboardModulePromise = null;
1943
1942
  async function getClipboardModule() {
1944
- if (clipboardLoadAttempted) return cachedClipboardModule;
1945
- clipboardLoadAttempted = true;
1946
- try {
1943
+ if (!clipboardModulePromise) {
1947
1944
  const modName = "@teddyzhu/clipboard";
1948
- cachedClipboardModule = await import(modName);
1949
- return cachedClipboardModule;
1950
- } catch (_e) {
1951
- debugLogger.error(
1952
- "Failed to load @teddyzhu/clipboard native module. Clipboard image features will be unavailable."
1953
- );
1954
- return null;
1945
+ clipboardModulePromise = import(modName).catch(() => {
1946
+ debugLogger.error(
1947
+ "Failed to load @teddyzhu/clipboard native module. Clipboard image features will be unavailable."
1948
+ );
1949
+ return null;
1950
+ });
1955
1951
  }
1952
+ return clipboardModulePromise;
1956
1953
  }
1957
1954
  __name(getClipboardModule, "getClipboardModule");
1958
1955
  function getLinuxClipboardTool() {
@@ -2101,7 +2098,7 @@ async function checkClipboardForImage(command, args) {
2101
2098
  });
2102
2099
  }
2103
2100
  __name(checkClipboardForImage, "checkClipboardForImage");
2104
- async function clipboardHasImage() {
2101
+ async function clipboardHasImage(onUnavailable) {
2105
2102
  cachedWlPasteImageTypes = null;
2106
2103
  if (process.platform === "linux") {
2107
2104
  try {
@@ -2125,7 +2122,10 @@ async function clipboardHasImage() {
2125
2122
  }
2126
2123
  try {
2127
2124
  const mod = await getClipboardModule();
2128
- if (!mod) return false;
2125
+ if (!mod) {
2126
+ onUnavailable?.();
2127
+ return false;
2128
+ }
2129
2129
  const clipboard = new mod.ClipboardManager();
2130
2130
  return clipboard.hasFormat("image");
2131
2131
  } catch (error) {
@@ -3010,7 +3010,10 @@ function KeypressProvider({
3010
3010
  sequence: pasteBuffer.toString()
3011
3011
  });
3012
3012
  } else {
3013
- const hasImage = await clipboardHasImage();
3013
+ let clipboardImageUnavailable = false;
3014
+ const hasImage = await clipboardHasImage(() => {
3015
+ clipboardImageUnavailable = true;
3016
+ });
3014
3017
  broadcast({
3015
3018
  name: "",
3016
3019
  ctrl: false,
@@ -3018,6 +3021,7 @@ function KeypressProvider({
3018
3021
  shift: false,
3019
3022
  paste: true,
3020
3023
  pasteImage: hasImage,
3024
+ clipboardImageUnavailable,
3021
3025
  sequence: pasteBuffer.toString()
3022
3026
  });
3023
3027
  }