@qwen-code/qwen-code 0.18.5 → 0.19.1

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 (145) hide show
  1. package/bundled/qc-helper/docs/configuration/qwen-ignore.md +31 -15
  2. package/bundled/qc-helper/docs/configuration/settings.md +15 -14
  3. package/bundled/qc-helper/docs/extension/introduction.md +24 -6
  4. package/bundled/qc-helper/docs/features/mcp.md +15 -8
  5. package/chunks/{agent-2TEY55UD.js → agent-7CZOLKXM.js} +24 -22
  6. package/chunks/{agent-headless-SCUAXEEE.js → agent-headless-K37PBQK5.js} +24 -22
  7. package/chunks/{anthropicContentGenerator-5S4OMMNL.js → anthropicContentGenerator-6MCH4X6S.js} +12 -11
  8. package/chunks/artifact-tool-PBX64YTT.js +675 -0
  9. package/chunks/{askUserQuestion-WHVYL2S2.js → askUserQuestion-5ZQOWSRT.js} +20 -7
  10. package/chunks/chunk-22IFUCVR.js +291 -0
  11. package/chunks/{chunk-XGU3ETVO.js → chunk-255L5QYW.js} +3 -3
  12. package/chunks/{chunk-26ZYKTYZ.js → chunk-2BIF2NVV.js} +2 -2
  13. package/chunks/{chunk-VECKCOH6.js → chunk-2X2WXY6L.js} +6104 -4673
  14. package/chunks/{chunk-LTN3VYMZ.js → chunk-3UALQ56H.js} +1 -1
  15. package/chunks/{chunk-2O3NAOJG.js → chunk-57XRIZVC.js} +1 -1
  16. package/chunks/{chunk-MSJ2MXJ6.js → chunk-BGUDAULQ.js} +11 -290
  17. package/chunks/{chunk-FH4P6RQA.js → chunk-BNXANYLH.js} +1 -1
  18. package/chunks/{chunk-WE6TNQJU.js → chunk-C4K3FEQ2.js} +36 -0
  19. package/chunks/{chunk-G4BUMVEY.js → chunk-CGEGHF2C.js} +2 -217
  20. package/chunks/chunk-EEEZIVFJ.js +908 -0
  21. package/chunks/chunk-EJYJYJZ2.js +3703 -0
  22. package/chunks/{chunk-ATLUHLZE.js → chunk-EW6C27XX.js} +1 -1
  23. package/chunks/{chunk-SIJKWK35.js → chunk-FXT37TZS.js} +6 -6
  24. package/chunks/{chunk-C6MI2ASN.js → chunk-GZCJS5WH.js} +2 -2
  25. package/chunks/{chunk-KGV3F6UF.js → chunk-HGNSRCRB.js} +1 -1
  26. package/chunks/{chunk-42HGOMED.js → chunk-JDV3VBPY.js} +216 -1
  27. package/chunks/{chunk-CX3SGIPK.js → chunk-JRVB4QUY.js} +2 -2
  28. package/chunks/{chunk-C7JA3XCX.js → chunk-NQDRRVJD.js} +5 -5
  29. package/chunks/{chunk-F5E6IKYN.js → chunk-OJMCOR55.js} +560 -18
  30. package/chunks/{chunk-ID533GA3.js → chunk-OTBK43JR.js} +1 -1
  31. package/chunks/{chunk-GOMVJKBL.js → chunk-PLY4F7QW.js} +5 -3
  32. package/chunks/{chunk-KZGQ3G3Q.js → chunk-PNT7QCLK.js} +80 -83
  33. package/chunks/{chunk-VKILGMZQ.js → chunk-PO5LVPK3.js} +1 -1
  34. package/chunks/{chunk-AE6RQU6F.js → chunk-PRYMDRBV.js} +1 -1
  35. package/chunks/{chunk-GBN55AWZ.js → chunk-QKUAGMGE.js} +2 -2
  36. package/chunks/{chunk-KQIKOTQJ.js → chunk-RYLJU2DY.js} +60 -5
  37. package/chunks/{chunk-CTHZVIMD.js → chunk-T2VDEFUU.js} +2 -2
  38. package/chunks/{chunk-LF6BKGZT.js → chunk-TXVGVZYR.js} +3 -3
  39. package/chunks/{chunk-XU7BKR3B.js → chunk-XU5P23GN.js} +3 -3
  40. package/chunks/{chunk-2CNO5W47.js → chunk-YMBWB67C.js} +146 -5005
  41. package/chunks/{computer-use-OB3C5QG2.js → computer-use-AY6HODX4.js} +24 -22
  42. package/chunks/contextCommand-KVKJ63NZ.js +56 -0
  43. package/chunks/{cron-create-THNDTYXU.js → cron-create-NHRAAWT5.js} +12 -9
  44. package/chunks/{cron-delete-BS5H6TFJ.js → cron-delete-WGO4PZTF.js} +4 -4
  45. package/chunks/{cron-list-7OBVHT7K.js → cron-list-EY7D3ZUC.js} +4 -4
  46. package/chunks/{dist-GKRNVFBH.js → dist-ZBX7LPJZ.js} +2 -1
  47. package/chunks/{edit-GNCLIF67.js → edit-OXD4P5YK.js} +24 -22
  48. package/chunks/{en-S3OQBISC.js → en-7OGNWWME.js} +48 -0
  49. package/chunks/{enter-worktree-E7BNZOGT.js → enter-worktree-NKNFTLNO.js} +24 -22
  50. package/chunks/{enterPlanMode-IA42A5EU.js → enterPlanMode-7W2FCILY.js} +27 -23
  51. package/chunks/{exit-worktree-QJ2K74UT.js → exit-worktree-NCRZ52XD.js} +24 -22
  52. package/chunks/{exitPlanMode-UKKHBUYJ.js → exitPlanMode-AZIUQQHA.js} +36 -28
  53. package/chunks/{geminiContentGenerator-ICSDM37U.js → geminiContentGenerator-5HKVP4JF.js} +4 -4
  54. package/chunks/{glob-IGD7LWYX.js → glob-VCPO3AQO.js} +26 -23
  55. package/chunks/{grep-IZM3IVND.js → grep-R3W7SG6T.js} +24 -22
  56. package/chunks/{keychain-token-storage-YHXIWXIB.js → keychain-token-storage-CSYMNRPP.js} +2 -2
  57. package/chunks/{loop-wakeup-SSBWZ64K.js → loop-wakeup-XVSDE7QR.js} +5 -5
  58. package/chunks/{ls-YPFUHZRQ.js → ls-LPY3ATQQ.js} +6 -6
  59. package/chunks/{lsp-FD6DNVAF.js → lsp-ZT3AAXIF.js} +2 -2
  60. package/chunks/{monitor-ALJNE3R4.js → monitor-TQCZALTB.js} +24 -22
  61. package/chunks/{notebook-edit-7XRZX55T.js → notebook-edit-RYYGIJTA.js} +25 -23
  62. package/chunks/{openaiContentGenerator-FWKITDFJ.js → openaiContentGenerator-2AUZ47JU.js} +12 -15
  63. package/chunks/{qwenContentGenerator-5RPGQZ63.js → qwenContentGenerator-QM6ENWSO.js} +26 -24
  64. package/chunks/{qwenOAuth2-WZ54YZ4J.js → qwenOAuth2-K4AASPCV.js} +5 -4
  65. package/chunks/{read-file-4WN2DT5N.js → read-file-ZSIMNYPB.js} +9 -8
  66. package/chunks/{ripGrep-4ZKT6KBQ.js → ripGrep-LONCTNP3.js} +24 -22
  67. package/chunks/{scheduler-O2E65VDK.js → scheduler-FMNCHQQH.js} +73 -27
  68. package/chunks/{send-message-FWFTX62Q.js → send-message-447W6NH6.js} +24 -4
  69. package/chunks/{serve-3DM6CRGD.js → serve-XLPTFQOQ.js} +458 -77
  70. package/chunks/{shell-ARVZK6RF.js → shell-G2CEO7D7.js} +24 -22
  71. package/chunks/{skill-BFUBGA4I.js → skill-E5YLTHY3.js} +11 -10
  72. package/chunks/{src-5YMCDSII.js → src-GCZS2DES.js} +112 -67
  73. package/chunks/{syntheticOutput-JY5NEDTV.js → syntheticOutput-GQRDRLGR.js} +3 -3
  74. package/chunks/{task-create-IGILDV25.js → task-create-66DDSTVI.js} +6 -6
  75. package/chunks/{task-list-KBEJVAAG.js → task-list-GOPXRSHG.js} +5 -5
  76. package/chunks/{task-stop-WFTMQ6AC.js → task-stop-M7NKGFX2.js} +2 -2
  77. package/chunks/{task-update-UIVX7ZEV.js → task-update-M5TBHLZV.js} +6 -6
  78. package/chunks/{team-create-HRBV5ATK.js → team-create-RQCITTFK.js} +28 -26
  79. package/chunks/{team-delete-LPOXDPVB.js → team-delete-DKKDS65W.js} +5 -5
  80. package/chunks/{todoWrite-R4RIJKOD.js → todoWrite-4VX7X44D.js} +4 -4
  81. package/chunks/{tool-search-67HI54YA.js → tool-search-2COFGD5N.js} +9 -8
  82. package/chunks/{web-fetch-JU7SS6KE.js → web-fetch-YPP3V4FJ.js} +4 -4
  83. package/chunks/{workflow-W4SCLWLU.js → workflow-A5VAXYUS.js} +557 -97
  84. package/chunks/{write-file-TLNXC2NR.js → write-file-P2RNFLJR.js} +24 -22
  85. package/chunks/{zh-QXLZV2PX.js → zh-3RMSEO5M.js} +48 -0
  86. package/chunks/{zh-TW-3OKU7LDA.js → zh-TW-R7WRLTJS.js} +48 -0
  87. package/cli.js +8200 -4981
  88. package/locales/en.js +69 -0
  89. package/locales/zh-TW.js +66 -0
  90. package/locales/zh.js +66 -0
  91. package/package.json +3 -2
  92. package/web-shell/assets/{arc-CRFN10gD.js → arc-pxOt9B72.js} +1 -1
  93. package/web-shell/assets/{architectureDiagram-3BPJPVTR-IRlu1CpH.js → architectureDiagram-3BPJPVTR-B9XuYYOT.js} +1 -1
  94. package/web-shell/assets/{blockDiagram-GPEHLZMM-htIZ6iw8.js → blockDiagram-GPEHLZMM-5yK68iu4.js} +1 -1
  95. package/web-shell/assets/{c4Diagram-AAUBKEIU-A2GoRq3O.js → c4Diagram-AAUBKEIU-B1LY-qNI.js} +1 -1
  96. package/web-shell/assets/channel-Cx7egbSX.js +1 -0
  97. package/web-shell/assets/{chunk-2J33WTMH-CdP2AC6u.js → chunk-2J33WTMH-DkgXg7cM.js} +1 -1
  98. package/web-shell/assets/{chunk-4BX2VUAB-DrA07nW2.js → chunk-4BX2VUAB-DdM45KFM.js} +1 -1
  99. package/web-shell/assets/{chunk-55IACEB6-CFGnVU2f.js → chunk-55IACEB6-CmdsDjD4.js} +1 -1
  100. package/web-shell/assets/{chunk-727SXJPM-BTMkq3Tk.js → chunk-727SXJPM-CQ4pJ5GH.js} +1 -1
  101. package/web-shell/assets/{chunk-AQP2D5EJ-C9sYg04Z.js → chunk-AQP2D5EJ-Dy6UWz37.js} +1 -1
  102. package/web-shell/assets/{chunk-FMBD7UC4-Cag-cj6I.js → chunk-FMBD7UC4-CC8nFqap.js} +1 -1
  103. package/web-shell/assets/{chunk-ND2GUHAM-CDSTFoR7.js → chunk-ND2GUHAM-CkmS7lx7.js} +1 -1
  104. package/web-shell/assets/{chunk-QZHKN3VN-CN9Z6oOs.js → chunk-QZHKN3VN-DynyqleZ.js} +1 -1
  105. package/web-shell/assets/classDiagram-4FO5ZUOK-CwH_F8cH.js +1 -0
  106. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-CwH_F8cH.js +1 -0
  107. package/web-shell/assets/{cose-bilkent-S5V4N54A-DuN9j8Du.js → cose-bilkent-S5V4N54A-DA0fzCsY.js} +1 -1
  108. package/web-shell/assets/{dagre-BM42HDAG-ByCWe45f.js → dagre-BM42HDAG-DHYXRqCo.js} +1 -1
  109. package/web-shell/assets/{diagram-2AECGRRQ-eWyU_pKZ.js → diagram-2AECGRRQ-DWD6BcPs.js} +1 -1
  110. package/web-shell/assets/{diagram-5GNKFQAL-0Bfu3Fq5.js → diagram-5GNKFQAL-CX9wnqVc.js} +1 -1
  111. package/web-shell/assets/{diagram-KO2AKTUF-B6KBKkQP.js → diagram-KO2AKTUF-BpE8Kbt8.js} +1 -1
  112. package/web-shell/assets/{diagram-LMA3HP47-TToDmeA_.js → diagram-LMA3HP47-DLPcrP0C.js} +1 -1
  113. package/web-shell/assets/{diagram-OG6HWLK6-CQCkC2Yx.js → diagram-OG6HWLK6-CSUCBsCe.js} +1 -1
  114. package/web-shell/assets/{erDiagram-TEJ5UH35-Cm9ls1iB.js → erDiagram-TEJ5UH35-d3Z0uMXS.js} +1 -1
  115. package/web-shell/assets/{flowDiagram-I6XJVG4X-Dyoz80Pv.js → flowDiagram-I6XJVG4X-C7vj5FX3.js} +1 -1
  116. package/web-shell/assets/{ganttDiagram-6RSMTGT7-Cfut9yaU.js → ganttDiagram-6RSMTGT7-BV9UvDV_.js} +1 -1
  117. package/web-shell/assets/{gitGraphDiagram-PVQCEYII-BCuJdlfD.js → gitGraphDiagram-PVQCEYII-CoWp0mW4.js} +1 -1
  118. package/web-shell/assets/index-CjTH6cLP.js +516 -0
  119. package/web-shell/assets/{infoDiagram-5YYISTIA-CXKxF2VL.js → infoDiagram-5YYISTIA-DUswfJHA.js} +1 -1
  120. package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-DE7HWSU8.js → ishikawaDiagram-YF4QCWOH-WidEKukx.js} +1 -1
  121. package/web-shell/assets/{journeyDiagram-JHISSGLW-D__YUfds.js → journeyDiagram-JHISSGLW-D7IRK3VN.js} +1 -1
  122. package/web-shell/assets/{kanban-definition-UN3LZRKU-D82R169M.js → kanban-definition-UN3LZRKU-CwFJ6Cja.js} +1 -1
  123. package/web-shell/assets/{linear-DpyMbKqT.js → linear-BQ8GvDRY.js} +1 -1
  124. package/web-shell/assets/{mermaid.core-D1KEFDhn.js → mermaid.core-CwF8A_xO.js} +5 -5
  125. package/web-shell/assets/{mindmap-definition-RKZ34NQL-BwVUFGFE.js → mindmap-definition-RKZ34NQL-TR1s0iZi.js} +1 -1
  126. package/web-shell/assets/{pieDiagram-4H26LBE5-BO_qoEGx.js → pieDiagram-4H26LBE5-Cd91pMl9.js} +1 -1
  127. package/web-shell/assets/{quadrantDiagram-W4KKPZXB-Cx0ZaWPo.js → quadrantDiagram-W4KKPZXB-BGxGDNMl.js} +1 -1
  128. package/web-shell/assets/{requirementDiagram-4Y6WPE33-BJPXejOA.js → requirementDiagram-4Y6WPE33-Cq3fWmYz.js} +1 -1
  129. package/web-shell/assets/{sankeyDiagram-5OEKKPKP-C1xeIL9i.js → sankeyDiagram-5OEKKPKP-ChLyGdq0.js} +1 -1
  130. package/web-shell/assets/{sequenceDiagram-3UESZ5HK-CSYKQUjf.js → sequenceDiagram-3UESZ5HK-tazy79aB.js} +1 -1
  131. package/web-shell/assets/{stateDiagram-AJRCARHV-d9hiHlAW.js → stateDiagram-AJRCARHV-dIYLUNSf.js} +1 -1
  132. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-luL7KTiX.js +1 -0
  133. package/web-shell/assets/{timeline-definition-PNZ67QCA-BhCBkq8k.js → timeline-definition-PNZ67QCA-BuENhrC2.js} +1 -1
  134. package/web-shell/assets/{vennDiagram-CIIHVFJN-DPPFWp_y.js → vennDiagram-CIIHVFJN-DLtum9dF.js} +1 -1
  135. package/web-shell/assets/{wardley-L42UT6IY-CcOUIgXY.js → wardley-L42UT6IY-Bf7OSF3y.js} +1 -1
  136. package/web-shell/assets/{wardleyDiagram-YWT4CUSO-p7oR5X7r.js → wardleyDiagram-YWT4CUSO-slMw3OB3.js} +1 -1
  137. package/web-shell/assets/{xychartDiagram-2RQKCTM6-Dfr7-SEy.js → xychartDiagram-2RQKCTM6-CdxOm8oC.js} +1 -1
  138. package/web-shell/index.html +1 -1
  139. package/chunks/chunk-77WXWU44.js +0 -26
  140. package/chunks/contextCommand-3327KUC4.js +0 -54
  141. package/web-shell/assets/channel-WwImfsc7.js +0 -1
  142. package/web-shell/assets/classDiagram-4FO5ZUOK-CJKQYFeJ.js +0 -1
  143. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-CJKQYFeJ.js +0 -1
  144. package/web-shell/assets/index-DaebdpHq.js +0 -516
  145. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-DgReoybQ.js +0 -1
@@ -3,49 +3,51 @@
3
3
  import {
4
4
  DashScopeOpenAICompatibleProvider,
5
5
  OpenAIContentGenerator
6
- } from "./chunk-KZGQ3G3Q.js";
7
- import "./chunk-CX3SGIPK.js";
8
- import "./chunk-VECKCOH6.js";
6
+ } from "./chunk-PNT7QCLK.js";
7
+ import "./chunk-JRVB4QUY.js";
8
+ import "./chunk-2X2WXY6L.js";
9
9
  import "./chunk-K5PGHDBN.js";
10
- import "./chunk-XU7BKR3B.js";
11
- import "./chunk-2O3NAOJG.js";
12
- import "./chunk-XGU3ETVO.js";
10
+ import "./chunk-TXVGVZYR.js";
11
+ import "./chunk-XU5P23GN.js";
12
+ import "./chunk-2BIF2NVV.js";
13
+ import "./chunk-57XRIZVC.js";
14
+ import "./chunk-255L5QYW.js";
13
15
  import "./chunk-2MPVVENX.js";
14
16
  import "./chunk-ZTQ26VBE.js";
15
- import "./chunk-C6MI2ASN.js";
16
- import "./chunk-LF6BKGZT.js";
17
- import "./chunk-26ZYKTYZ.js";
17
+ import "./chunk-GZCJS5WH.js";
18
18
  import "./chunk-MLZQVCF3.js";
19
19
  import "./chunk-LD2XBG6Z.js";
20
- import "./chunk-ID533GA3.js";
21
- import "./chunk-KGV3F6UF.js";
22
- import "./chunk-77WXWU44.js";
23
- import "./chunk-AE6RQU6F.js";
24
- import "./chunk-2CNO5W47.js";
20
+ import "./chunk-OTBK43JR.js";
21
+ import "./chunk-HGNSRCRB.js";
22
+ import "./chunk-EEEZIVFJ.js";
23
+ import "./chunk-PRYMDRBV.js";
24
+ import "./chunk-YMBWB67C.js";
25
25
  import "./chunk-3PJXIDKI.js";
26
26
  import "./chunk-UWCTAVOD.js";
27
27
  import "./chunk-OFEVLU4C.js";
28
28
  import "./chunk-OMX7CUOE.js";
29
- import "./chunk-FH4P6RQA.js";
30
- import "./chunk-CTHZVIMD.js";
31
- import "./chunk-VKILGMZQ.js";
32
- import "./chunk-GOMVJKBL.js";
29
+ import "./chunk-BNXANYLH.js";
30
+ import "./chunk-T2VDEFUU.js";
31
+ import "./chunk-PO5LVPK3.js";
32
+ import "./chunk-PLY4F7QW.js";
33
33
  import {
34
34
  SharedTokenManager
35
- } from "./chunk-MSJ2MXJ6.js";
36
- import "./chunk-ATLUHLZE.js";
35
+ } from "./chunk-BGUDAULQ.js";
36
+ import "./chunk-EW6C27XX.js";
37
+ import "./chunk-22IFUCVR.js";
37
38
  import "./chunk-64WXLC72.js";
38
- import "./chunk-LTN3VYMZ.js";
39
- import "./chunk-42HGOMED.js";
39
+ import "./chunk-3UALQ56H.js";
40
40
  import {
41
41
  DEFAULT_DASHSCOPE_BASE_URL
42
- } from "./chunk-G4BUMVEY.js";
42
+ } from "./chunk-JDV3VBPY.js";
43
+ import "./chunk-CGEGHF2C.js";
44
+ import "./chunk-EJYJYJZ2.js";
43
45
  import "./chunk-55ZMG67I.js";
44
46
  import "./chunk-H6BD2ELD.js";
45
47
  import "./chunk-5IFG2VC4.js";
46
48
  import {
47
49
  createDebugLogger
48
- } from "./chunk-WE6TNQJU.js";
50
+ } from "./chunk-C4K3FEQ2.js";
49
51
  import "./chunk-ZERZSAZL.js";
50
52
  import "./chunk-QN5NZ3UQ.js";
51
53
  import "./chunk-BR4QREVK.js";
@@ -18,11 +18,12 @@ import {
18
18
  isDeviceTokenSuccess,
19
19
  isErrorResponse,
20
20
  qwenOAuth2Events
21
- } from "./chunk-MSJ2MXJ6.js";
22
- import "./chunk-ATLUHLZE.js";
21
+ } from "./chunk-BGUDAULQ.js";
22
+ import "./chunk-EW6C27XX.js";
23
+ import "./chunk-22IFUCVR.js";
23
24
  import "./chunk-64WXLC72.js";
24
- import "./chunk-LTN3VYMZ.js";
25
- import "./chunk-WE6TNQJU.js";
25
+ import "./chunk-3UALQ56H.js";
26
+ import "./chunk-C4K3FEQ2.js";
26
27
  import "./chunk-Z2Z3GUXZ.js";
27
28
  import "./chunk-A4BMJM77.js";
28
29
  import "./chunk-J2S4EL5Y.js";
@@ -2,21 +2,22 @@
2
2
  "use strict";
3
3
  import {
4
4
  ReadFileTool
5
- } from "./chunk-2CNO5W47.js";
5
+ } from "./chunk-YMBWB67C.js";
6
6
  import "./chunk-3PJXIDKI.js";
7
7
  import "./chunk-UWCTAVOD.js";
8
8
  import "./chunk-OFEVLU4C.js";
9
9
  import "./chunk-OMX7CUOE.js";
10
- import "./chunk-FH4P6RQA.js";
11
- import "./chunk-CTHZVIMD.js";
12
- import "./chunk-VKILGMZQ.js";
13
- import "./chunk-GOMVJKBL.js";
14
- import "./chunk-LTN3VYMZ.js";
15
- import "./chunk-G4BUMVEY.js";
10
+ import "./chunk-BNXANYLH.js";
11
+ import "./chunk-T2VDEFUU.js";
12
+ import "./chunk-PO5LVPK3.js";
13
+ import "./chunk-PLY4F7QW.js";
14
+ import "./chunk-3UALQ56H.js";
15
+ import "./chunk-CGEGHF2C.js";
16
+ import "./chunk-EJYJYJZ2.js";
16
17
  import "./chunk-55ZMG67I.js";
17
18
  import "./chunk-H6BD2ELD.js";
18
19
  import "./chunk-5IFG2VC4.js";
19
- import "./chunk-WE6TNQJU.js";
20
+ import "./chunk-C4K3FEQ2.js";
20
21
  import "./chunk-ZERZSAZL.js";
21
22
  import "./chunk-QN5NZ3UQ.js";
22
23
  import "./chunk-BR4QREVK.js";
@@ -3,41 +3,43 @@
3
3
  import {
4
4
  RipGrepTool,
5
5
  _resetRipGrepCachesForTest
6
- } from "./chunk-VECKCOH6.js";
6
+ } from "./chunk-2X2WXY6L.js";
7
7
  import "./chunk-K5PGHDBN.js";
8
- import "./chunk-XU7BKR3B.js";
9
- import "./chunk-2O3NAOJG.js";
10
- import "./chunk-XGU3ETVO.js";
8
+ import "./chunk-TXVGVZYR.js";
9
+ import "./chunk-XU5P23GN.js";
10
+ import "./chunk-2BIF2NVV.js";
11
+ import "./chunk-57XRIZVC.js";
12
+ import "./chunk-255L5QYW.js";
11
13
  import "./chunk-2MPVVENX.js";
12
14
  import "./chunk-ZTQ26VBE.js";
13
- import "./chunk-C6MI2ASN.js";
14
- import "./chunk-LF6BKGZT.js";
15
- import "./chunk-26ZYKTYZ.js";
15
+ import "./chunk-GZCJS5WH.js";
16
16
  import "./chunk-MLZQVCF3.js";
17
17
  import "./chunk-LD2XBG6Z.js";
18
- import "./chunk-ID533GA3.js";
19
- import "./chunk-KGV3F6UF.js";
20
- import "./chunk-77WXWU44.js";
21
- import "./chunk-AE6RQU6F.js";
22
- import "./chunk-2CNO5W47.js";
18
+ import "./chunk-OTBK43JR.js";
19
+ import "./chunk-HGNSRCRB.js";
20
+ import "./chunk-EEEZIVFJ.js";
21
+ import "./chunk-PRYMDRBV.js";
22
+ import "./chunk-YMBWB67C.js";
23
23
  import "./chunk-3PJXIDKI.js";
24
24
  import "./chunk-UWCTAVOD.js";
25
25
  import "./chunk-OFEVLU4C.js";
26
26
  import "./chunk-OMX7CUOE.js";
27
- import "./chunk-FH4P6RQA.js";
28
- import "./chunk-CTHZVIMD.js";
29
- import "./chunk-VKILGMZQ.js";
30
- import "./chunk-GOMVJKBL.js";
31
- import "./chunk-MSJ2MXJ6.js";
32
- import "./chunk-ATLUHLZE.js";
27
+ import "./chunk-BNXANYLH.js";
28
+ import "./chunk-T2VDEFUU.js";
29
+ import "./chunk-PO5LVPK3.js";
30
+ import "./chunk-PLY4F7QW.js";
31
+ import "./chunk-BGUDAULQ.js";
32
+ import "./chunk-EW6C27XX.js";
33
+ import "./chunk-22IFUCVR.js";
33
34
  import "./chunk-64WXLC72.js";
34
- import "./chunk-LTN3VYMZ.js";
35
- import "./chunk-42HGOMED.js";
36
- import "./chunk-G4BUMVEY.js";
35
+ import "./chunk-3UALQ56H.js";
36
+ import "./chunk-JDV3VBPY.js";
37
+ import "./chunk-CGEGHF2C.js";
38
+ import "./chunk-EJYJYJZ2.js";
37
39
  import "./chunk-55ZMG67I.js";
38
40
  import "./chunk-H6BD2ELD.js";
39
41
  import "./chunk-5IFG2VC4.js";
40
- import "./chunk-WE6TNQJU.js";
42
+ import "./chunk-C4K3FEQ2.js";
41
43
  import "./chunk-ZERZSAZL.js";
42
44
  import "./chunk-QN5NZ3UQ.js";
43
45
  import "./chunk-BR4QREVK.js";
@@ -4,45 +4,48 @@ import {
4
4
  msSinceLastInteraction
5
5
  } from "./chunk-MRO43B25.js";
6
6
  import {
7
- FILE_HISTORY_DIR
8
- } from "./chunk-VECKCOH6.js";
7
+ FILE_HISTORY_DIR,
8
+ getSubagentsRootDir
9
+ } from "./chunk-2X2WXY6L.js";
9
10
  import "./chunk-K5PGHDBN.js";
10
- import "./chunk-XU7BKR3B.js";
11
- import "./chunk-2O3NAOJG.js";
12
- import "./chunk-XGU3ETVO.js";
11
+ import "./chunk-TXVGVZYR.js";
12
+ import "./chunk-XU5P23GN.js";
13
+ import "./chunk-2BIF2NVV.js";
14
+ import "./chunk-57XRIZVC.js";
15
+ import "./chunk-255L5QYW.js";
13
16
  import "./chunk-2MPVVENX.js";
14
17
  import "./chunk-ZTQ26VBE.js";
15
- import "./chunk-C6MI2ASN.js";
16
- import "./chunk-LF6BKGZT.js";
17
- import "./chunk-26ZYKTYZ.js";
18
+ import "./chunk-GZCJS5WH.js";
18
19
  import "./chunk-MLZQVCF3.js";
19
20
  import "./chunk-LD2XBG6Z.js";
20
- import "./chunk-ID533GA3.js";
21
- import "./chunk-KGV3F6UF.js";
22
- import "./chunk-77WXWU44.js";
23
- import "./chunk-AE6RQU6F.js";
24
- import "./chunk-2CNO5W47.js";
21
+ import "./chunk-OTBK43JR.js";
22
+ import "./chunk-HGNSRCRB.js";
23
+ import "./chunk-EEEZIVFJ.js";
24
+ import "./chunk-PRYMDRBV.js";
25
+ import "./chunk-YMBWB67C.js";
25
26
  import "./chunk-3PJXIDKI.js";
26
27
  import "./chunk-UWCTAVOD.js";
27
28
  import "./chunk-OFEVLU4C.js";
28
29
  import "./chunk-OMX7CUOE.js";
29
- import "./chunk-FH4P6RQA.js";
30
- import "./chunk-CTHZVIMD.js";
31
- import "./chunk-VKILGMZQ.js";
32
- import "./chunk-GOMVJKBL.js";
33
- import "./chunk-MSJ2MXJ6.js";
34
- import "./chunk-ATLUHLZE.js";
30
+ import "./chunk-BNXANYLH.js";
31
+ import "./chunk-T2VDEFUU.js";
32
+ import "./chunk-PO5LVPK3.js";
33
+ import "./chunk-PLY4F7QW.js";
34
+ import "./chunk-BGUDAULQ.js";
35
+ import "./chunk-EW6C27XX.js";
36
+ import "./chunk-22IFUCVR.js";
35
37
  import "./chunk-64WXLC72.js";
36
- import "./chunk-LTN3VYMZ.js";
37
- import "./chunk-42HGOMED.js";
38
- import "./chunk-G4BUMVEY.js";
38
+ import "./chunk-3UALQ56H.js";
39
+ import "./chunk-JDV3VBPY.js";
40
+ import "./chunk-CGEGHF2C.js";
41
+ import "./chunk-EJYJYJZ2.js";
39
42
  import "./chunk-55ZMG67I.js";
40
43
  import "./chunk-H6BD2ELD.js";
41
44
  import "./chunk-5IFG2VC4.js";
42
45
  import {
43
46
  Storage,
44
47
  createDebugLogger
45
- } from "./chunk-WE6TNQJU.js";
48
+ } from "./chunk-C4K3FEQ2.js";
46
49
  import "./chunk-ZERZSAZL.js";
47
50
  import "./chunk-QN5NZ3UQ.js";
48
51
  import "./chunk-BR4QREVK.js";
@@ -57,6 +60,7 @@ import {
57
60
  // packages/cli/src/utils/housekeeping/scheduler.ts
58
61
  init_esbuild_shims();
59
62
  import { stat as stat3 } from "node:fs/promises";
63
+ import { createHash } from "node:crypto";
60
64
  import { join as join2 } from "node:path";
61
65
 
62
66
  // packages/cli/src/utils/housekeeping/cleanup.ts
@@ -72,9 +76,8 @@ function getCutoffDate(cleanupPeriodDays) {
72
76
  return new Date(Date.now() - periodMs);
73
77
  }
74
78
  __name(getCutoffDate, "getCutoffDate");
75
- async function cleanupOldFileHistoryBackups(opts) {
79
+ async function sweepOldSessionDirs(root, opts) {
76
80
  const result = { removed: 0, errors: 0 };
77
- const root = join(Storage.getGlobalQwenDir(), FILE_HISTORY_DIR);
78
81
  const excludes = opts.excludeSessionIds ?? /* @__PURE__ */ new Set();
79
82
  let entries;
80
83
  try {
@@ -102,11 +105,27 @@ async function cleanupOldFileHistoryBackups(opts) {
102
105
  })
103
106
  );
104
107
  }
105
- await rmdir(root).catch(() => {
106
- });
108
+ if (opts.removeEmptyRoot !== false) {
109
+ await rmdir(root).catch(() => {
110
+ });
111
+ }
107
112
  return result;
108
113
  }
114
+ __name(sweepOldSessionDirs, "sweepOldSessionDirs");
115
+ async function cleanupOldFileHistoryBackups(opts) {
116
+ return sweepOldSessionDirs(
117
+ join(Storage.getGlobalQwenDir(), FILE_HISTORY_DIR),
118
+ opts
119
+ );
120
+ }
109
121
  __name(cleanupOldFileHistoryBackups, "cleanupOldFileHistoryBackups");
122
+ async function cleanupOldSubagentTranscripts(opts) {
123
+ return sweepOldSessionDirs(opts.subagentsRoot, {
124
+ ...opts,
125
+ removeEmptyRoot: false
126
+ });
127
+ }
128
+ __name(cleanupOldSubagentTranscripts, "cleanupOldSubagentTranscripts");
110
129
  function isENOENT(e) {
111
130
  return e?.code === "ENOENT";
112
131
  }
@@ -209,6 +228,7 @@ var RECENT_INTERACTION_MS = 60 * 1e3;
209
228
  var CATCHUP_THRESHOLD_MS = 7 * 24 * 60 * 60 * 1e3;
210
229
  var STARTUP_DELAY_CATCHUP_MS = 60 * 1e3;
211
230
  var FILE_HISTORY_MARKER = ".file-history-cleanup";
231
+ var SUBAGENT_MARKER = ".subagent-cleanup";
212
232
  var started = false;
213
233
  function startBackgroundHousekeeping(config, settings) {
214
234
  if (started) return;
@@ -238,6 +258,11 @@ async function needsCatchUp(markerPath) {
238
258
  }
239
259
  }
240
260
  __name(needsCatchUp, "needsCatchUp");
261
+ function getSubagentMarkerPath(qwenDir, projectDir) {
262
+ const projectKey = createHash("sha256").update(projectDir).digest("hex").slice(0, 16);
263
+ return join2(qwenDir, `${SUBAGENT_MARKER}-${projectKey}`);
264
+ }
265
+ __name(getSubagentMarkerPath, "getSubagentMarkerPath");
241
266
  async function runPass(config, settings) {
242
267
  if (msSinceLastInteraction() < RECENT_INTERACTION_MS) {
243
268
  debugLogger3.debug("user active, deferring 10 min");
@@ -285,6 +310,25 @@ async function runHousekeeping(config, settings) {
285
310
  );
286
311
  }
287
312
  );
313
+ const projectDir = config.storage?.getProjectDir?.();
314
+ if (projectDir) {
315
+ const markerPath = getSubagentMarkerPath(qwenDir, projectDir);
316
+ await runThrottledOnce(
317
+ {
318
+ name: "subagent-cleanup",
319
+ markerPath,
320
+ lockPath: markerPath + ".lock"
321
+ },
322
+ async () => {
323
+ const r = await cleanupOldSubagentTranscripts({
324
+ cutoffDate: cutoff,
325
+ excludeSessionIds: /* @__PURE__ */ new Set([currentSessionId]),
326
+ subagentsRoot: getSubagentsRootDir(projectDir)
327
+ });
328
+ debugLogger3.debug(`subagents: removed=${r.removed} errors=${r.errors}`);
329
+ }
330
+ );
331
+ }
288
332
  }
289
333
  __name(runHousekeeping, "runHousekeeping");
290
334
  function _resetForTesting() {
@@ -295,8 +339,10 @@ var _needsCatchUpForTesting = needsCatchUp;
295
339
  var _runHousekeepingForTesting = runHousekeeping;
296
340
  var _runPassForTesting = runPass;
297
341
  var _FILE_HISTORY_MARKER_FOR_TESTING = FILE_HISTORY_MARKER;
342
+ var _getSubagentMarkerPathForTesting = getSubagentMarkerPath;
298
343
  export {
299
344
  _FILE_HISTORY_MARKER_FOR_TESTING,
345
+ _getSubagentMarkerPathForTesting,
300
346
  _needsCatchUpForTesting,
301
347
  _resetForTesting,
302
348
  _runHousekeepingForTesting,
@@ -10,8 +10,8 @@ import {
10
10
  BaseToolInvocation,
11
11
  ToolDisplayNames,
12
12
  ToolNames
13
- } from "./chunk-GOMVJKBL.js";
14
- import "./chunk-WE6TNQJU.js";
13
+ } from "./chunk-PLY4F7QW.js";
14
+ import "./chunk-C4K3FEQ2.js";
15
15
  import "./chunk-Z2Z3GUXZ.js";
16
16
  import {
17
17
  init_esbuild_shims
@@ -83,6 +83,26 @@ var SendMessageInvocation = class extends BaseToolInvocation {
83
83
  returnDisplay: `Resumed ${entry.description}`
84
84
  };
85
85
  }
86
+ if (entry.status === "completed") {
87
+ const revived = await this.config.reviveCompletedBackgroundAgent(
88
+ this.params.task_id,
89
+ this.params.message
90
+ );
91
+ if (!revived) {
92
+ return {
93
+ llmContent: `Error: Background task "${this.params.task_id}" could not be revived.`,
94
+ returnDisplay: "Task could not be revived.",
95
+ error: {
96
+ message: `Task could not be revived: ${this.params.task_id}`,
97
+ type: "send_message_not_running" /* SEND_MESSAGE_NOT_RUNNING */
98
+ }
99
+ };
100
+ }
101
+ return {
102
+ llmContent: `Background task "${this.params.task_id}" had completed; revived it with your message as the next instruction.`,
103
+ returnDisplay: `Revived ${entry.description}`
104
+ };
105
+ }
86
106
  if (entry.status !== "running") {
87
107
  return {
88
108
  llmContent: `Error: Background task "${this.params.task_id}" is not running (status: ${entry.status}). Cannot send messages to stopped tasks.`,
@@ -160,7 +180,7 @@ var SendMessageTool = class _SendMessageTool extends BaseDeclarativeTool {
160
180
  super(
161
181
  _SendMessageTool.Name,
162
182
  ToolDisplayNames.SEND_MESSAGE,
163
- 'Send a message to a teammate (use "to") or to a running background task (use "task_id"). For teams, set "to" to a bare teammate name (no @) or "*" to broadcast. For background tasks, set "task_id" to the id from the launch response or a recovered paused task. Running tasks receive it at the next tool-round boundary; paused recovered tasks are resumed with the message as their first continuation instruction. Your text output is NOT visible to other agents \u2014 use this tool to communicate.',
183
+ 'Send a message to a teammate (use "to") or to a running background task (use "task_id"). For teams, set "to" to a bare teammate name (no @) or "*" to broadcast. For background tasks, set "task_id" to the id from the launch response, a recovered paused task, or a completed task to revive. Running tasks receive it at the next tool-round boundary; paused recovered tasks are resumed with the message as their first continuation instruction; a completed task is revived from its transcript and continued with your message. Your text output is NOT visible to other agents \u2014 use this tool to communicate.',
164
184
  "other" /* Other */,
165
185
  {
166
186
  type: "object",
@@ -171,7 +191,7 @@ var SendMessageTool = class _SendMessageTool extends BaseDeclarativeTool {
171
191
  },
172
192
  task_id: {
173
193
  type: "string",
174
- description: "The ID of the background task (from the launch response or a recovered paused task)."
194
+ description: "The ID of the background task (from the launch response, a recovered paused task, or a completed task to revive)."
175
195
  },
176
196
  message: {
177
197
  type: "string",