@qwen-code/qwen-code 0.19.9-nightly.20260714.9dd8389eb → 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 (194) hide show
  1. package/bundled/qc-helper/docs/configuration/settings.md +6 -0
  2. package/bundled/qc-helper/docs/features/sub-agents.md +21 -0
  3. package/bundled/qc-helper/docs/qwen-serve.md +7 -2
  4. package/bundled/review/SKILL.md +23 -11
  5. package/chunks/{MaxSizedBox-QAYHOC4F.js → MaxSizedBox-67ODZ4SZ.js} +5 -6
  6. package/chunks/{StandaloneSessionPicker-D3R6YYX3.js → StandaloneSessionPicker-SIPBQT5Z.js} +17 -18
  7. package/chunks/{acpAgent-ENHBW72A.js → acpAgent-VPZJXLFX.js} +141 -80
  8. package/chunks/{agent-57LX4KMG.js → agent-Z7NWL6XL.js} +2 -3
  9. package/chunks/{agent-headless-AC6EVNAP.js → agent-headless-73HZ6ROQ.js} +2 -3
  10. package/chunks/{bridge-4OZH44MK.js → bridge-XFKW6S7Q.js} +5 -6
  11. package/chunks/{chunk-DPSWJWZI.js → chunk-2W3OOD4W.js} +1 -0
  12. package/chunks/{chunk-FDL4PB5H.js → chunk-3XJFUTNM.js} +8 -8
  13. package/chunks/{chunk-AAS2Q2TV.js → chunk-422XAKCK.js} +2 -2
  14. package/chunks/{chunk-7U7UIO5W.js → chunk-4FMG7EDJ.js} +19 -4
  15. package/chunks/{chunk-X7EBAABW.js → chunk-4YWLED2A.js} +1 -1
  16. package/chunks/{chunk-WN4D7YCI.js → chunk-5EBKKSBX.js} +1 -1
  17. package/chunks/{chunk-G6QTKQN4.js → chunk-5LROA5W4.js} +3 -3
  18. package/chunks/{chunk-SUWGUGAD.js → chunk-65N2J6V2.js} +2 -2
  19. package/chunks/{chunk-T2L6SGQY.js → chunk-6GETGQWP.js} +26 -6
  20. package/chunks/{chunk-T5C2OUCI.js → chunk-6GKMJPOC.js} +3 -3
  21. package/chunks/{chunk-K3PPUB46.js → chunk-6W6DI34P.js} +1 -1
  22. package/chunks/{chunk-WM5HY72H.js → chunk-7L4XBYVW.js} +2 -2
  23. package/chunks/{chunk-CLTWL6HD.js → chunk-7MJAZMXK.js} +5 -5
  24. package/chunks/{chunk-6HHAADP2.js → chunk-AAR5SGMD.js} +4 -4
  25. package/chunks/{chunk-P3S67A5R.js → chunk-B5I2IIWY.js} +3 -3
  26. package/chunks/{chunk-4DYYRLIE.js → chunk-CEW4HDPK.js} +639 -317
  27. package/chunks/{chunk-JR63TOV4.js → chunk-CJFNEBYB.js} +1 -1
  28. package/chunks/{chunk-PMRH4YYW.js → chunk-CUUXANEQ.js} +2 -1
  29. package/chunks/{chunk-Z56JO4JZ.js → chunk-DK33QJ3V.js} +6 -6
  30. package/chunks/{chunk-N7FCSERB.js → chunk-DPFBNG72.js} +1 -1
  31. package/chunks/{chunk-HZYUNZDQ.js → chunk-EQY6POVO.js} +1 -1
  32. package/chunks/{chunk-MBJ3D6SF.js → chunk-F7NXQH4Y.js} +1 -1
  33. package/chunks/{chunk-C4CXFRKY.js → chunk-FXMC7SL2.js} +25 -4
  34. package/chunks/{chunk-CSACSGAW.js → chunk-GGJII3FM.js} +2 -2
  35. package/chunks/{chunk-EU3U7USF.js → chunk-H3FQOPPS.js} +2 -2
  36. package/chunks/{chunk-YVEDCAUE.js → chunk-HGT6JR3U.js} +19 -0
  37. package/chunks/{chunk-MBP3K324.js → chunk-HHEFI4RP.js} +32 -11
  38. package/chunks/{chunk-B6ABUBYY.js → chunk-JSJFKYWT.js} +67 -5
  39. package/chunks/{chunk-QABSSDQH.js → chunk-K4PZ5F5T.js} +1 -1
  40. package/chunks/{chunk-SSFDPGFN.js → chunk-K7CRWKOE.js} +7879 -5472
  41. package/chunks/{chunk-J2TDDOSM.js → chunk-L37RC7MQ.js} +1 -1
  42. package/chunks/{chunk-V75IOTWF.js → chunk-L62SEJWY.js} +4 -4
  43. package/chunks/{chunk-HE54PGVI.js → chunk-LNUXFLLJ.js} +2 -2
  44. package/chunks/{chunk-PHYCWSDG.js → chunk-LQU7EVFA.js} +1 -1
  45. package/chunks/{chunk-AUGSSJX3.js → chunk-LTNI523B.js} +2 -2
  46. package/chunks/{chunk-4LJNI7MU.js → chunk-MO7O5722.js} +262 -7
  47. package/chunks/{chunk-S2QXYLUB.js → chunk-N6FXRR6P.js} +1 -1
  48. package/chunks/{chunk-WL4L7EZH.js → chunk-OA4JVLSA.js} +27 -1
  49. package/chunks/{chunk-XHW5VUIQ.js → chunk-OFEVHGVU.js} +157 -55
  50. package/chunks/{chunk-T7FSRWQ5.js → chunk-P6LART6G.js} +107 -6
  51. package/chunks/{chunk-GYGGUR4Q.js → chunk-Q5GLXH5Q.js} +3 -3
  52. package/chunks/{chunk-SE74CIZD.js → chunk-RDRVMDWV.js} +1 -1
  53. package/chunks/{chunk-DKXW66XA.js → chunk-SPUYQB4T.js} +1 -1
  54. package/chunks/{chunk-AGBFWLA5.js → chunk-TISZXPAX.js} +1 -1
  55. package/chunks/{chunk-ZLM3KXBT.js → chunk-TTUO4DNG.js} +14 -13
  56. package/chunks/{chunk-4QOPEEL2.js → chunk-UFOKA4PR.js} +1 -1
  57. package/chunks/{chunk-2MF6ICOL.js → chunk-V7EQTZYR.js} +36 -8
  58. package/chunks/{chunk-WWQ3QIJS.js → chunk-VBRRNQB7.js} +10 -10
  59. package/chunks/{chunk-OCC3UTWA.js → chunk-W34A5MJH.js} +1 -1
  60. package/chunks/{chunk-LAM6CGP5.js → chunk-WDW64OW3.js} +3 -3
  61. package/chunks/{chunk-DMTQY5GY.js → chunk-WDWJ4OQJ.js} +3 -3
  62. package/chunks/{chunk-B6KHOCU7.js → chunk-WIASPMLX.js} +8 -8
  63. package/chunks/{chunk-4FPUAYTT.js → chunk-WLXYAKV7.js} +4 -4
  64. package/chunks/{chunk-YWUK7OS7.js → chunk-WTSXKLG5.js} +1 -1
  65. package/chunks/{chunk-7BIZARI2.js → chunk-X362TMXZ.js} +4 -4
  66. package/chunks/{chunk-ASVORVFT.js → chunk-XLIRF7IK.js} +1 -1
  67. package/chunks/{chunk-DNKX35GS.js → chunk-XXJKGHZV.js} +4 -4
  68. package/chunks/{chunk-UI3W56WF.js → chunk-YU56QGXX.js} +1 -1
  69. package/chunks/{chunk-RJL5T4WJ.js → chunk-YX4LLZ3D.js} +47 -35
  70. package/chunks/{chunk-YH4J5XI3.js → chunk-YYPXHMWO.js} +4 -4
  71. package/chunks/{chunk-AAWKZ5R7.js → chunk-ZKMGAFYV.js} +1 -1
  72. package/chunks/{chunk-EUNRLYJG.js → chunk-ZQTZXVHP.js} +4 -4
  73. package/chunks/{computer-use-DIP5BWXP.js → computer-use-IYTX45WA.js} +2 -3
  74. package/chunks/{contextCommand-QU4GJWWD.js → contextCommand-272V77WU.js} +4 -5
  75. package/chunks/{create-sub-session-TCLIYVGR.js → create-sub-session-CBJMQLYP.js} +2 -3
  76. package/chunks/{daemon-CEZ27OH4.js → daemon-RNGFPMAB.js} +315 -36
  77. package/chunks/{daemon-status-provider-SIBFMLBQ.js → daemon-status-provider-L4STG5VO.js} +9 -10
  78. package/chunks/{earlyInputCapture-L66BEG2C.js → earlyInputCapture-EN4BRREQ.js} +2 -3
  79. package/chunks/{edit-Y5LAJSST.js → edit-OMAF2QDR.js} +2 -3
  80. package/chunks/{enter-worktree-X5LML7T4.js → enter-worktree-BBZX52HG.js} +2 -3
  81. package/chunks/{enterPlanMode-XWF32QOW.js → enterPlanMode-5NNFMBUY.js} +2 -3
  82. package/chunks/{environment-YVMA5F4I.js → environment-7TEWMJYN.js} +4 -5
  83. package/chunks/{errors-4Y5SUAOC.js → errors-I4VKVX3F.js} +4 -5
  84. package/chunks/{exit-worktree-SFHU7XYC.js → exit-worktree-FUWRJI33.js} +2 -3
  85. package/chunks/{exitPlanMode-FP3NAN6E.js → exitPlanMode-IHCJ5EEI.js} +2 -3
  86. package/chunks/{fast-path-ZJNFFCBM.js → fast-path-ZA57TOH4.js} +2 -2
  87. package/chunks/{gemini-5CAB22BI.js → gemini-UOAKVXBG.js} +91 -33
  88. package/chunks/{geminiContentGenerator-GE3HPIFB.js → geminiContentGenerator-G6UCE6MW.js} +1 -1
  89. package/chunks/{glob-YPACZAEL.js → glob-4GJQ2UFF.js} +2 -3
  90. package/chunks/{grep-IPR4XW37.js → grep-5QSYXF2E.js} +2 -3
  91. package/chunks/{handleAutoUpdate-P2KEP56V.js → handleAutoUpdate-ULHNWL6R.js} +6 -7
  92. package/chunks/{i18n-BRCT66AA.js → i18n-CYDUTF6F.js} +3 -4
  93. package/chunks/{initializer-34HXSK3A.js → initializer-NRFKUGIO.js} +7 -8
  94. package/chunks/{installationInfo-WOTDQMSC.js → installationInfo-WELKRHHE.js} +3 -4
  95. package/chunks/{list-XOGP7UPP.js → list-JVDXEG2E.js} +10 -11
  96. package/chunks/{loadedSettingsAdapter-L4YKGU6F.js → loadedSettingsAdapter-WAM4VUTG.js} +7 -8
  97. package/chunks/{mcp-HH7DIP7Y.js → mcp-YHOZN3ZM.js} +7 -8
  98. package/chunks/{monitor-25DEBT6U.js → monitor-R7XZPJHQ.js} +2 -3
  99. package/chunks/{nonInteractiveCli-CT3VSSLK.js → nonInteractiveCli-NSOB6D74.js} +34 -35
  100. package/chunks/{notebook-edit-TAVXSWQ6.js → notebook-edit-6RNKE2L2.js} +2 -3
  101. package/chunks/{openaiContentGenerator-6I7DKUAN.js → openaiContentGenerator-XNS5S64I.js} +2 -2
  102. package/chunks/{pidfile-SIQGCFLZ.js → pidfile-XE4RRR2P.js} +2 -3
  103. package/chunks/{qwenContentGenerator-5DDIXI2N.js → qwenContentGenerator-APDPJ3VN.js} +3 -4
  104. package/chunks/{read-file-WDOAYRFU.js → read-file-XSUWXSR7.js} +1 -1
  105. package/chunks/{ripGrep-MI7PHN3Q.js → ripGrep-APB3CDMU.js} +2 -3
  106. package/chunks/{run-qwen-serve-PNTYF3RE.js → run-qwen-serve-NWTGPERT.js} +224 -75
  107. package/chunks/{runtime-V3FBMUTG.js → runtime-EIO3NQKR.js} +8 -9
  108. package/chunks/{scheduler-4TAUIJBM.js → scheduler-JJDZBDRN.js} +2 -3
  109. package/chunks/{serve-WB2TR7XM.js → serve-WTIPB3EI.js} +7 -8
  110. package/chunks/{server-AF6LNFPK.js → server-NJPHQHLH.js} +2458 -755
  111. package/chunks/{session-BIGK4NRW.js → session-O4AO7FTS.js} +35 -36
  112. package/chunks/{settings-IXF5FIQO.js → settings-HQNDK7TG.js} +6 -7
  113. package/chunks/{shell-5VWJ2PPG.js → shell-UIXM6PWG.js} +2 -3
  114. package/chunks/{skill-SI667Y3B.js → skill-3XMB4ULV.js} +1 -1
  115. package/chunks/{spawnChannel-IKX6DD7J.js → spawnChannel-3R632QRM.js} +4 -5
  116. package/chunks/{src-55DZWDAK.js → src-USZKPUOC.js} +33 -4
  117. package/chunks/{standalone-update-MHLSFHE6.js → standalone-update-L5XW3D7K.js} +4 -5
  118. package/chunks/{startInteractiveUI-V2EDWLAX.js → startInteractiveUI-CPZOL2WB.js} +174 -122
  119. package/chunks/{team-create-IZAMLBJS.js → team-create-XXPRF3IQ.js} +2 -3
  120. package/chunks/{team-plan-approval-3R4RCKCP.js → team-plan-approval-EOTTKHDW.js} +2 -3
  121. package/chunks/{theme-manager-LCOXZ5DO.js → theme-manager-P6UITO2L.js} +2 -3
  122. package/chunks/{tool-search-NYNCD5LF.js → tool-search-DDNGK2LR.js} +1 -1
  123. package/chunks/{total-session-admission-PJWGOMQE.js → total-session-admission-PL5N7DNY.js} +5 -6
  124. package/chunks/{trustedFolders-DOJDHNYP.js → trustedFolders-C5LMF3UR.js} +3 -4
  125. package/chunks/types-ML3TRJQ5.js +16 -0
  126. package/chunks/{updateCheck-ZXL66KIG.js → updateCheck-QTVVISH7.js} +4 -5
  127. package/chunks/{validateNonInterActiveAuth-JSNJZCYY.js → validateNonInterActiveAuth-RY4RKBQG.js} +30 -31
  128. package/chunks/{version-3NLBENG5.js → version-U45RYOSD.js} +1 -1
  129. package/chunks/{workflow-BQYLF7XP.js → workflow-TCIAQYOA.js} +3 -4
  130. package/chunks/{workspace-providers-status-FA2DGEZW.js → workspace-providers-status-I3G2HYLY.js} +10 -11
  131. package/chunks/{workspace-registration-store-TARTAGMI.js → workspace-registration-store-IH5GLZ6Y.js} +1 -1
  132. package/chunks/{workspace-registry-AGE7WAXX.js → workspace-registry-QEKBELIX.js} +5 -6
  133. package/chunks/{workspace-service-ERC5VR2B.js → workspace-service-ORKHGLP3.js} +17 -14
  134. package/chunks/{workspace-skills-status-FKYWGNCN.js → workspace-skills-status-D7QCNDYY.js} +9 -10
  135. package/chunks/{write-file-S47KSK7Z.js → write-file-JGRQR5VM.js} +2 -3
  136. package/cli.js +11 -11
  137. package/package.json +3 -3
  138. package/web-shell/assets/{arc-Zj4EkBUY.js → arc-CUeDlxvE.js} +1 -1
  139. package/web-shell/assets/{architectureDiagram-3BPJPVTR-DAk1Ua3Y.js → architectureDiagram-3BPJPVTR-PiUszkQA.js} +1 -1
  140. package/web-shell/assets/{blockDiagram-GPEHLZMM-DBNqUthM.js → blockDiagram-GPEHLZMM-s2wYSO7e.js} +1 -1
  141. package/web-shell/assets/{c4Diagram-AAUBKEIU-Dq5QGJ53.js → c4Diagram-AAUBKEIU-DyLxZoz9.js} +1 -1
  142. package/web-shell/assets/channel-DkuJJ0qd.js +1 -0
  143. package/web-shell/assets/{chunk-2J33WTMH-DY0AeGru.js → chunk-2J33WTMH-Dsdai7Tk.js} +1 -1
  144. package/web-shell/assets/{chunk-4BX2VUAB-COX3OyIi.js → chunk-4BX2VUAB-DEosOjV7.js} +1 -1
  145. package/web-shell/assets/{chunk-55IACEB6-Csoyddbh.js → chunk-55IACEB6-sNsRLTXf.js} +1 -1
  146. package/web-shell/assets/{chunk-727SXJPM-BJPONdxX.js → chunk-727SXJPM-DkRNZzmh.js} +1 -1
  147. package/web-shell/assets/{chunk-AQP2D5EJ-syLVH6fg.js → chunk-AQP2D5EJ-BrsRNpzd.js} +1 -1
  148. package/web-shell/assets/{chunk-FMBD7UC4-Cfm59Nhw.js → chunk-FMBD7UC4-CI039lpl.js} +1 -1
  149. package/web-shell/assets/{chunk-ND2GUHAM-DZf6tAqS.js → chunk-ND2GUHAM-M-pkeIfu.js} +1 -1
  150. package/web-shell/assets/{chunk-QZHKN3VN-DKBp_v5q.js → chunk-QZHKN3VN-C4ckGNbH.js} +1 -1
  151. package/web-shell/assets/classDiagram-4FO5ZUOK-CwqHc0TB.js +1 -0
  152. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-CwqHc0TB.js +1 -0
  153. package/web-shell/assets/{cose-bilkent-S5V4N54A-DUU3mMQ5.js → cose-bilkent-S5V4N54A-BciKUAFq.js} +1 -1
  154. package/web-shell/assets/{dagre-BM42HDAG-BUgNfbh-.js → dagre-BM42HDAG-C1nTSgU6.js} +1 -1
  155. package/web-shell/assets/{diagram-2AECGRRQ-DT7MVfAg.js → diagram-2AECGRRQ-BDPNWr1m.js} +1 -1
  156. package/web-shell/assets/{diagram-5GNKFQAL-Cv4YG-ec.js → diagram-5GNKFQAL-CNFhTszL.js} +1 -1
  157. package/web-shell/assets/{diagram-KO2AKTUF-BAe9LLkn.js → diagram-KO2AKTUF-CjPa4p5a.js} +1 -1
  158. package/web-shell/assets/{diagram-LMA3HP47-DW8wqTIP.js → diagram-LMA3HP47-ZzPykSyG.js} +1 -1
  159. package/web-shell/assets/{diagram-OG6HWLK6-CmkuWbaK.js → diagram-OG6HWLK6-0UVtZ9A4.js} +1 -1
  160. package/web-shell/assets/{erDiagram-TEJ5UH35-DwvdHjZ9.js → erDiagram-TEJ5UH35-CajDZCat.js} +1 -1
  161. package/web-shell/assets/{flowDiagram-I6XJVG4X-CSsXrhW_.js → flowDiagram-I6XJVG4X-BRuFBIvL.js} +1 -1
  162. package/web-shell/assets/{ganttDiagram-6RSMTGT7-BtuznCdi.js → ganttDiagram-6RSMTGT7-BevGmJqG.js} +1 -1
  163. package/web-shell/assets/{gitGraphDiagram-PVQCEYII-DGmAm06g.js → gitGraphDiagram-PVQCEYII-DvPMpBMb.js} +1 -1
  164. package/web-shell/assets/index-Cnvv4VcI.css +5 -0
  165. package/web-shell/assets/index-D1Uyklxa.js +1088 -0
  166. package/web-shell/assets/{index-BEtz1cvN.js → index-DzHwQkQq.js} +1 -1
  167. package/web-shell/assets/{infoDiagram-5YYISTIA-OAiZ1q0K.js → infoDiagram-5YYISTIA-Oixn7tA9.js} +1 -1
  168. package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-DyK0KTIT.js → ishikawaDiagram-YF4QCWOH-BgKpeg-j.js} +1 -1
  169. package/web-shell/assets/{journeyDiagram-JHISSGLW-DzYJlwfO.js → journeyDiagram-JHISSGLW-74mwxIaA.js} +1 -1
  170. package/web-shell/assets/{kanban-definition-UN3LZRKU-CU_tcDwi.js → kanban-definition-UN3LZRKU-D4D6cEqA.js} +1 -1
  171. package/web-shell/assets/{linear-DvZXjF17.js → linear-atZRE_L2.js} +1 -1
  172. package/web-shell/assets/{mermaid.core-_ZFEQlOl.js → mermaid.core-KKudX-JC.js} +5 -5
  173. package/web-shell/assets/{mindmap-definition-RKZ34NQL-Or4p64HB.js → mindmap-definition-RKZ34NQL-CMCej9yG.js} +1 -1
  174. package/web-shell/assets/{pieDiagram-4H26LBE5-lXE-zZ6b.js → pieDiagram-4H26LBE5-nhx40X7q.js} +1 -1
  175. package/web-shell/assets/{quadrantDiagram-W4KKPZXB-DUXb9mUV.js → quadrantDiagram-W4KKPZXB-CUmVcN3M.js} +1 -1
  176. package/web-shell/assets/{requirementDiagram-4Y6WPE33-D_10uHfo.js → requirementDiagram-4Y6WPE33-C_vyEwyy.js} +1 -1
  177. package/web-shell/assets/{sankeyDiagram-5OEKKPKP-E8c0fPqe.js → sankeyDiagram-5OEKKPKP-DU6G4VWR.js} +1 -1
  178. package/web-shell/assets/{sequenceDiagram-3UESZ5HK-CJMtFttK.js → sequenceDiagram-3UESZ5HK-DdeRR_KJ.js} +1 -1
  179. package/web-shell/assets/{stateDiagram-AJRCARHV-DhbviRbB.js → stateDiagram-AJRCARHV-C6iCI8ps.js} +1 -1
  180. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-C0_6nR6C.js +1 -0
  181. package/web-shell/assets/{timeline-definition-PNZ67QCA-CM5yMkFK.js → timeline-definition-PNZ67QCA-B_Ea8Cb7.js} +1 -1
  182. package/web-shell/assets/{vennDiagram-CIIHVFJN-BCi-zWNN.js → vennDiagram-CIIHVFJN-BPUVZEJA.js} +1 -1
  183. package/web-shell/assets/{wardley-L42UT6IY-BJ_yJNjJ.js → wardley-L42UT6IY-BWEj0lKY.js} +1 -1
  184. package/web-shell/assets/{wardleyDiagram-YWT4CUSO-TjtLk-qN.js → wardleyDiagram-YWT4CUSO-BvDsdIQw.js} +1 -1
  185. package/web-shell/assets/{xychartDiagram-2RQKCTM6-D1TjyoQ3.js → xychartDiagram-2RQKCTM6-crz0QhF_.js} +1 -1
  186. package/web-shell/index.html +2 -2
  187. package/chunks/chunk-CU3L64TP.js +0 -93
  188. package/chunks/types-JNKGKUJT.js +0 -12
  189. package/web-shell/assets/channel-DWfYijFS.js +0 -1
  190. package/web-shell/assets/classDiagram-4FO5ZUOK-DDht-78J.js +0 -1
  191. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-DDht-78J.js +0 -1
  192. package/web-shell/assets/index-B9Xwf4OS.css +0 -5
  193. package/web-shell/assets/index-BUkM4ZXX.js +0 -1088
  194. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-CntljfwW.js +0 -1
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  t
5
- } from "./chunk-SE74CIZD.js";
5
+ } from "./chunk-RDRVMDWV.js";
6
6
  import {
7
7
  writeStderrLine
8
8
  } from "./chunk-YUZI3WAC.js";
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  SkillError
5
- } from "./chunk-SSFDPGFN.js";
5
+ } from "./chunk-K7CRWKOE.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";
@@ -100,6 +100,7 @@ var SERVE_CONTROL_EXT_METHODS = {
100
100
  workspaceMcpRuntimeAdd: "qwen/control/workspace/mcp/runtime-add",
101
101
  workspaceMcpRuntimeRemove: "qwen/control/workspace/mcp/runtime-remove",
102
102
  workspaceReload: "qwen/control/workspace/reload",
103
+ workspaceSkillsRefresh: "qwen/control/workspace/skills/refresh",
103
104
  workspaceExtensionsRefresh: "qwen/control/workspace/extensions/refresh",
104
105
  /**
105
106
  * Reverse tool channel (issue #5626, Phase 2). Unlike every other entry
@@ -8,7 +8,7 @@ import {
8
8
  use_is_screen_reader_enabled_default,
9
9
  use_stdin_default,
10
10
  use_stdout_default
11
- } from "./chunk-QABSSDQH.js";
11
+ } from "./chunk-K4PZ5F5T.js";
12
12
  import {
13
13
  require_react
14
14
  } from "./chunk-HTHUX2T5.js";
@@ -18,26 +18,26 @@ import {
18
18
  import {
19
19
  formatHistoryGapNotice,
20
20
  indexGapsByChild
21
- } from "./chunk-DKXW66XA.js";
21
+ } from "./chunk-SPUYQB4T.js";
22
22
  import {
23
23
  sanitizeFilenameForDisplay
24
- } from "./chunk-YWUK7OS7.js";
24
+ } from "./chunk-WTSXKLG5.js";
25
25
  import {
26
26
  formatDuration
27
27
  } from "./chunk-E5Z2AVNV.js";
28
28
  import {
29
29
  t
30
- } from "./chunk-SE74CIZD.js";
30
+ } from "./chunk-RDRVMDWV.js";
31
31
  import {
32
32
  fetchGitDiff,
33
33
  findProviderByCredentials,
34
34
  getToolResponseDisplayText,
35
35
  resolveMetadataKey
36
- } from "./chunk-SSFDPGFN.js";
36
+ } from "./chunk-K7CRWKOE.js";
37
37
  import {
38
38
  KittySequenceOverflowEvent,
39
39
  logKittySequenceOverflow
40
- } from "./chunk-T7FSRWQ5.js";
40
+ } from "./chunk-P6LART6G.js";
41
41
  import {
42
42
  ToolDisplayNames
43
43
  } from "./chunk-2UUAIFQO.js";
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  t
5
- } from "./chunk-SE74CIZD.js";
5
+ } from "./chunk-RDRVMDWV.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  isGitRepository
5
- } from "./chunk-SSFDPGFN.js";
5
+ } from "./chunk-K7CRWKOE.js";
6
6
  import {
7
7
  createDebugLogger
8
8
  } from "./chunk-7NFB7LBQ.js";
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  BaseJsonOutputAdapter
5
- } from "./chunk-AUGSSJX3.js";
5
+ } from "./chunk-LTNI523B.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";
@@ -5,7 +5,7 @@ import {
5
5
  isTranscribableVoiceModel,
6
6
  readVoiceLanguage,
7
7
  resolveVoiceTransport
8
- } from "./chunk-N7FCSERB.js";
8
+ } from "./chunk-DPFBNG72.js";
9
9
  import {
10
10
  resolvePath
11
11
  } from "./chunk-FSA7ERJ2.js";
@@ -339,7 +339,7 @@ async function defaultLookupHost(hostname) {
339
339
  return dnsLookup(hostname, { all: true });
340
340
  }
341
341
  __name(defaultLookupHost, "defaultLookupHost");
342
- async function assertVoiceBaseUrlNetworkAllowed(voiceConfig, lookupHost) {
342
+ async function assertVoiceBaseUrlNetworkAllowed(voiceConfig, lookupHost, abortSignal) {
343
343
  const hostname = normalizeHostname(new URL(voiceConfig.baseUrl).hostname);
344
344
  if (isLoopbackHost(hostname)) {
345
345
  return;
@@ -353,12 +353,29 @@ async function assertVoiceBaseUrlNetworkAllowed(voiceConfig, lookupHost) {
353
353
  return;
354
354
  }
355
355
  let result;
356
+ let onAbort;
356
357
  try {
357
- result = await (lookupHost ?? defaultLookupHost)(hostname);
358
+ if (abortSignal?.aborted) {
359
+ throw abortSignal.reason;
360
+ }
361
+ const lookup = (lookupHost ?? defaultLookupHost)(hostname);
362
+ result = abortSignal ? await Promise.race([
363
+ lookup,
364
+ new Promise((_resolve, reject) => {
365
+ onAbort = /* @__PURE__ */ __name(() => reject(abortSignal.reason), "onAbort");
366
+ if (abortSignal.aborted) onAbort();
367
+ else abortSignal.addEventListener("abort", onAbort, { once: true });
368
+ })
369
+ ]) : await lookup;
358
370
  } catch {
371
+ if (abortSignal?.aborted) {
372
+ throw abortSignal.reason instanceof Error ? abortSignal.reason : new Error("Voice request was aborted.");
373
+ }
359
374
  throw new Error(
360
375
  `Voice model '${voiceConfig.model}': DNS lookup failed for ${hostname}. Cannot verify network safety.`
361
376
  );
377
+ } finally {
378
+ if (onAbort) abortSignal?.removeEventListener("abort", onAbort);
362
379
  }
363
380
  const records = Array.isArray(result) ? result : [result];
364
381
  if (records.some((record) => isPrivateNetworkIp(record.address))) {
@@ -649,7 +666,11 @@ async function transcribeViaQwenAsr(audio, voiceConfig, options, fetchFn) {
649
666
  __name(transcribeViaQwenAsr, "transcribeViaQwenAsr");
650
667
  async function transcribeVoiceAudio(audio, args) {
651
668
  const voiceConfig = resolveVoiceTranscriptionConfig(args);
652
- await assertVoiceBaseUrlNetworkAllowed(voiceConfig, args.lookupHost);
669
+ await assertVoiceBaseUrlNetworkAllowed(
670
+ voiceConfig,
671
+ args.lookupHost,
672
+ args.abortSignal
673
+ );
653
674
  const fetchFn = args.fetchFn ?? fetch;
654
675
  const language = resolveLanguageCode(readVoiceLanguage(args.settings));
655
676
  const keytermsContext = buildKeytermsContext(args.settings);
@@ -4,14 +4,14 @@ import {
4
4
  resolveModelConfig,
5
5
  resolveProviderProtocol,
6
6
  stripRuntimeSnapshotPrefix
7
- } from "./chunk-SSFDPGFN.js";
7
+ } from "./chunk-K7CRWKOE.js";
8
8
  import {
9
9
  external_exports
10
10
  } from "./chunk-H6XPXXMH.js";
11
11
  import {
12
12
  AuthType,
13
13
  MODEL_GENERATION_CONFIG_FIELDS
14
- } from "./chunk-T7FSRWQ5.js";
14
+ } from "./chunk-P6LART6G.js";
15
15
  import {
16
16
  REASONING_EFFORT_TIERS,
17
17
  normalizeReasoningEffort
@@ -5,14 +5,14 @@ import {
5
5
  Text,
6
6
  require_jsx_runtime,
7
7
  theme
8
- } from "./chunk-QABSSDQH.js";
8
+ } from "./chunk-K4PZ5F5T.js";
9
9
  import {
10
10
  require_react
11
11
  } from "./chunk-HTHUX2T5.js";
12
12
  import {
13
13
  stringWidth,
14
14
  toCodePoints
15
- } from "./chunk-YWUK7OS7.js";
15
+ } from "./chunk-WTSXKLG5.js";
16
16
  import {
17
17
  createDebugLogger
18
18
  } from "./chunk-7NFB7LBQ.js";
@@ -23,6 +23,8 @@ var DaemonMetricsRing = class {
23
23
  curQueueWaits = [];
24
24
  curPromptDurations = [];
25
25
  curLlmDurations = [];
26
+ curLlmApiErrors = 0;
27
+ curLlmApiRetries = 0;
26
28
  curPipeInBytes = 0;
27
29
  curPipeOutBytes = 0;
28
30
  curTokensIn = 0;
@@ -49,6 +51,19 @@ var DaemonMetricsRing = class {
49
51
  recordLlmDuration(durationMs) {
50
52
  pushCapped(this.curLlmDurations, durationMs);
51
53
  }
54
+ /**
55
+ * Fold one model round's per-round model-API-error and automatic-retry
56
+ * increments (from the same token frame) into the open window. Both are
57
+ * plain counters — a burst in one window accrues exactly, past the sample
58
+ * cap that only bounds the percentile arrays. Non-finite / negative inputs
59
+ * are ignored so a malformed frame cannot poison the totals.
60
+ */
61
+ recordApiActivity(errors, retries) {
62
+ if (Number.isFinite(errors) && errors > 0) this.curLlmApiErrors += errors;
63
+ if (Number.isFinite(retries) && retries > 0) {
64
+ this.curLlmApiRetries += retries;
65
+ }
66
+ }
52
67
  /** Fold one ACP-child pipe message's payload size into the open window. */
53
68
  recordPipe(direction, bytes) {
54
69
  if (!Number.isFinite(bytes) || bytes < 0) return;
@@ -84,6 +99,8 @@ var DaemonMetricsRing = class {
84
99
  promptDurationP95Ms: percentile(this.curPromptDurations, 0.95),
85
100
  llmApiP50Ms: percentile(this.curLlmDurations, 0.5),
86
101
  llmApiP95Ms: percentile(this.curLlmDurations, 0.95),
102
+ llmApiErrors: this.curLlmApiErrors,
103
+ llmApiRetries: this.curLlmApiRetries,
87
104
  cpuPercent: finiteGauge(gauges.cpuPercent),
88
105
  rssBytes: finiteGauge(gauges.rssBytes),
89
106
  heapUsedBytes: finiteGauge(gauges.heapUsedBytes),
@@ -109,6 +126,8 @@ var DaemonMetricsRing = class {
109
126
  this.curQueueWaits.length = 0;
110
127
  this.curPromptDurations.length = 0;
111
128
  this.curLlmDurations.length = 0;
129
+ this.curLlmApiErrors = 0;
130
+ this.curLlmApiRetries = 0;
112
131
  this.curPipeInBytes = 0;
113
132
  this.curPipeOutBytes = 0;
114
133
  this.curTokensIn = 0;
@@ -41,7 +41,7 @@ import {
41
41
  } from "./chunk-KSO42X3Z.js";
42
42
  import {
43
43
  defaultSpawnChannelFactory
44
- } from "./chunk-4QOPEEL2.js";
44
+ } from "./chunk-UFOKA4PR.js";
45
45
  import {
46
46
  BridgeChannelClosedError,
47
47
  BridgeTimeoutError,
@@ -50,7 +50,7 @@ import {
50
50
  STATUS_SCHEMA_VERSION,
51
51
  createIdleWorkspaceExtensionsStatus,
52
52
  createIdleWorkspaceHooksStatus
53
- } from "./chunk-PMRH4YYW.js";
53
+ } from "./chunk-CUUXANEQ.js";
54
54
  import {
55
55
  canonicalizeWorkspace
56
56
  } from "./chunk-W7FJ3N32.js";
@@ -70,11 +70,11 @@ import {
70
70
  metadataBudgetBytes,
71
71
  normalizeSnapshotPayload,
72
72
  stableSessionArtifactId
73
- } from "./chunk-SSFDPGFN.js";
73
+ } from "./chunk-K7CRWKOE.js";
74
74
  import {
75
75
  DAEMON_TRACEPARENT_META_KEY,
76
76
  DAEMON_TRACESTATE_META_KEY
77
- } from "./chunk-T7FSRWQ5.js";
77
+ } from "./chunk-P6LART6G.js";
78
78
  import {
79
79
  init_esbuild_shims
80
80
  } from "./chunk-5O2XNYP6.js";
@@ -1588,10 +1588,14 @@ var BridgeClient = class {
1588
1588
  return;
1589
1589
  }
1590
1590
  const durationMs = updateMeta?.["durationMs"];
1591
+ const apiErrors = updateMeta?.["apiErrors"];
1592
+ const apiRetries = updateMeta?.["apiRetries"];
1591
1593
  this.onTokenUsage(
1592
1594
  typeof inputTokens === "number" ? inputTokens : 0,
1593
1595
  typeof outputTokens === "number" ? outputTokens : 0,
1594
- typeof durationMs === "number" ? durationMs : void 0
1596
+ typeof durationMs === "number" ? durationMs : void 0,
1597
+ typeof apiErrors === "number" ? apiErrors : 0,
1598
+ typeof apiRetries === "number" ? apiRetries : 0
1595
1599
  );
1596
1600
  }
1597
1601
  /**
@@ -5258,6 +5262,7 @@ function createAcpSessionBridge(opts) {
5258
5262
  const aliveChannels = /* @__PURE__ */ new Set();
5259
5263
  let inFlightChannelSpawn;
5260
5264
  const byId = /* @__PURE__ */ new Map();
5265
+ const inFlightExtensionRefreshes = /* @__PURE__ */ new Map();
5261
5266
  const toSessionSummary = /* @__PURE__ */ __name((entry) => {
5262
5267
  let isWaitingForPermission = false;
5263
5268
  let isWaitingForUserQuestion = false;
@@ -5435,10 +5440,12 @@ function createAcpSessionBridge(opts) {
5435
5440
  // at the session/update fan-in to the daemon host's metrics ring via
5436
5441
  // the telemetry seam. Optional-chained so non-daemon callers (tests,
5437
5442
  // Mode A) that wire no `tokenUsage` metric are a silent no-op.
5438
- (inputTokens, outputTokens, durationMs) => telemetry.metrics?.tokenUsage?.(
5443
+ (inputTokens, outputTokens, durationMs, apiErrors, apiRetries) => telemetry.metrics?.tokenUsage?.(
5439
5444
  inputTokens,
5440
5445
  outputTokens,
5441
- durationMs
5446
+ durationMs,
5447
+ apiErrors,
5448
+ apiRetries
5442
5449
  ),
5443
5450
  // `create_sub_session` tool: forward the request/response hook so a child
5444
5451
  // tool can ask the daemon to spawn a sub-session and (for 'first-turn')
@@ -8030,12 +8037,26 @@ function createAcpSessionBridge(opts) {
8030
8037
  return { refreshed: 0, failed: 0 };
8031
8038
  }
8032
8039
  try {
8033
- await Promise.race([
8034
- withTimeout(
8035
- entry.connection.extMethod(
8040
+ let inFlight = inFlightExtensionRefreshes.get(entry.sessionId);
8041
+ if (!inFlight || inFlight.connection !== entry.connection) {
8042
+ const promise = (async () => {
8043
+ await entry.connection.extMethod(
8036
8044
  SERVE_CONTROL_EXT_METHODS.workspaceExtensionsRefresh,
8037
8045
  { sessionId: entry.sessionId }
8038
- ),
8046
+ );
8047
+ })();
8048
+ inFlight = { connection: entry.connection, promise };
8049
+ inFlightExtensionRefreshes.set(entry.sessionId, inFlight);
8050
+ const clear = /* @__PURE__ */ __name(() => {
8051
+ if (inFlightExtensionRefreshes.get(entry.sessionId) === inFlight) {
8052
+ inFlightExtensionRefreshes.delete(entry.sessionId);
8053
+ }
8054
+ }, "clear");
8055
+ void promise.then(clear, clear);
8056
+ }
8057
+ await Promise.race([
8058
+ withTimeout(
8059
+ inFlight.promise,
8039
8060
  3e4,
8040
8061
  SERVE_CONTROL_EXT_METHODS.workspaceExtensionsRefresh
8041
8062
  ),
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  escapeAnsiCtrlCodes
5
- } from "./chunk-YWUK7OS7.js";
5
+ } from "./chunk-WTSXKLG5.js";
6
6
  import {
7
7
  wrapper_default
8
8
  } from "./chunk-TYAMGABM.js";
@@ -50,6 +50,10 @@ function openVoiceStream(config, callbacks = {}, deps = {}) {
50
50
  headers: options.headers
51
51
  }));
52
52
  return new Promise((resolve, reject) => {
53
+ if (deps.abortSignal?.aborted) {
54
+ reject(new Error("Voice stream opening was aborted."));
55
+ return;
56
+ }
53
57
  const streamUrl = deriveStreamUrl(config.baseUrl);
54
58
  const ws = createWebSocket(streamUrl, {
55
59
  headers: config.apiKey ? { Authorization: `Bearer ${config.apiKey}` } : {}
@@ -66,6 +70,12 @@ function openVoiceStream(config, callbacks = {}, deps = {}) {
66
70
  let terminalError = null;
67
71
  let finishedTranscript = null;
68
72
  let backpressureWarned = false;
73
+ let onAbort;
74
+ const removeAbortListener = /* @__PURE__ */ __name(() => {
75
+ if (!onAbort) return;
76
+ deps.abortSignal?.removeEventListener("abort", onAbort);
77
+ onAbort = void 0;
78
+ }, "removeAbortListener");
69
79
  const clearFinishTimer = /* @__PURE__ */ __name(() => {
70
80
  if (finishTimer) {
71
81
  clearTimeout(finishTimer);
@@ -81,6 +91,7 @@ function openVoiceStream(config, callbacks = {}, deps = {}) {
81
91
  const fail = /* @__PURE__ */ __name((error) => {
82
92
  if (settled) return;
83
93
  settled = true;
94
+ removeAbortListener();
84
95
  const normalized = error instanceof Error ? error : new Error(String(error));
85
96
  clearConnectTimer();
86
97
  clearFinishTimer();
@@ -101,6 +112,14 @@ function openVoiceStream(config, callbacks = {}, deps = {}) {
101
112
  }
102
113
  }
103
114
  }, "fail");
115
+ if (deps.abortSignal) {
116
+ onAbort = /* @__PURE__ */ __name(() => fail(new Error("Voice stream opening was aborted.")), "onAbort");
117
+ if (deps.abortSignal.aborted) {
118
+ onAbort();
119
+ return;
120
+ }
121
+ deps.abortSignal.addEventListener("abort", onAbort, { once: true });
122
+ }
104
123
  connectTimer = setTimeout(() => {
105
124
  if (!started) fail(new Error("Voice stream connection timed out."));
106
125
  }, CONNECT_TIMEOUT_MS);
@@ -208,6 +227,7 @@ function openVoiceStream(config, callbacks = {}, deps = {}) {
208
227
  }
209
228
  finishedTranscript = committed.trim();
210
229
  settled = true;
230
+ removeAbortListener();
211
231
  clearConnectTimer();
212
232
  clearFinishTimer();
213
233
  try {
@@ -234,6 +254,7 @@ function openVoiceStream(config, callbacks = {}, deps = {}) {
234
254
  fail(error instanceof Error ? error : new Error(String(error)));
235
255
  });
236
256
  ws.on("close", () => {
257
+ removeAbortListener();
237
258
  clearConnectTimer();
238
259
  clearFinishTimer();
239
260
  if (settled) return;
@@ -292,6 +313,10 @@ function openQwenAsrRealtimeStream(config, callbacks = {}, deps = {}) {
292
313
  headers: options.headers
293
314
  }));
294
315
  return new Promise((resolve, reject) => {
316
+ if (deps.abortSignal?.aborted) {
317
+ reject(new Error("Voice stream opening was aborted."));
318
+ return;
319
+ }
295
320
  const ws = createWebSocket(
296
321
  deriveQwenRealtimeUrl(config.baseUrl, config.model),
297
322
  {
@@ -310,6 +335,12 @@ function openQwenAsrRealtimeStream(config, callbacks = {}, deps = {}) {
310
335
  let terminalError = null;
311
336
  let failed = false;
312
337
  let backpressureWarned = false;
338
+ let onAbort;
339
+ const removeAbortListener = /* @__PURE__ */ __name(() => {
340
+ if (!onAbort) return;
341
+ deps.abortSignal?.removeEventListener("abort", onAbort);
342
+ onAbort = void 0;
343
+ }, "removeAbortListener");
313
344
  const sendJson = /* @__PURE__ */ __name((body) => {
314
345
  ws.send(JSON.stringify({ event_id: randomUUID2(), ...body }));
315
346
  }, "sendJson");
@@ -334,6 +365,7 @@ function openQwenAsrRealtimeStream(config, callbacks = {}, deps = {}) {
334
365
  const fail = /* @__PURE__ */ __name((error) => {
335
366
  if (failed) return;
336
367
  failed = true;
368
+ removeAbortListener();
337
369
  const normalized = toError(error);
338
370
  clearConnectTimer();
339
371
  clearFinishTimer();
@@ -352,6 +384,14 @@ function openQwenAsrRealtimeStream(config, callbacks = {}, deps = {}) {
352
384
  terminalError = normalized;
353
385
  callbacks.onError?.(normalized);
354
386
  }, "fail");
387
+ if (deps.abortSignal) {
388
+ onAbort = /* @__PURE__ */ __name(() => fail(new Error("Voice stream opening was aborted.")), "onAbort");
389
+ if (deps.abortSignal.aborted) {
390
+ onAbort();
391
+ return;
392
+ }
393
+ deps.abortSignal.addEventListener("abort", onAbort, { once: true });
394
+ }
355
395
  connectTimer = setTimeout(() => {
356
396
  if (!opened) fail(new Error("Qwen ASR realtime connection timed out."));
357
397
  }, CONNECT_TIMEOUT_MS2);
@@ -469,6 +509,7 @@ function openQwenAsrRealtimeStream(config, callbacks = {}, deps = {}) {
469
509
  break;
470
510
  }
471
511
  failed = true;
512
+ removeAbortListener();
472
513
  clearFinishTimer();
473
514
  finishedTranscript = committed.trim();
474
515
  finishResolve?.(finishedTranscript);
@@ -491,6 +532,7 @@ function openQwenAsrRealtimeStream(config, callbacks = {}, deps = {}) {
491
532
  });
492
533
  ws.on("error", fail);
493
534
  ws.on("close", () => {
535
+ removeAbortListener();
494
536
  clearConnectTimer();
495
537
  clearFinishTimer();
496
538
  if (failed) return;
@@ -523,8 +565,22 @@ __name(openQwenAsrRealtimeStream, "openQwenAsrRealtimeStream");
523
565
  init_esbuild_shims();
524
566
  var RETRY_DELAY_MS = 200;
525
567
  var debugLogger3 = createDebugLogger("VOICE_STREAM");
526
- function delay(ms) {
527
- return new Promise((resolve) => setTimeout(resolve, ms));
568
+ function delay(ms, abortSignal) {
569
+ return new Promise((resolve, reject) => {
570
+ if (abortSignal?.aborted) {
571
+ reject(new Error("Voice stream opening was aborted."));
572
+ return;
573
+ }
574
+ const timer = setTimeout(() => {
575
+ abortSignal?.removeEventListener("abort", onAbort);
576
+ resolve();
577
+ }, ms);
578
+ const onAbort = /* @__PURE__ */ __name(() => {
579
+ clearTimeout(timer);
580
+ reject(new Error("Voice stream opening was aborted."));
581
+ }, "onAbort");
582
+ abortSignal?.addEventListener("abort", onAbort, { once: true });
583
+ });
528
584
  }
529
585
  __name(delay, "delay");
530
586
  function isRetryable(error) {
@@ -537,7 +593,10 @@ function isRetryable(error) {
537
593
  return true;
538
594
  }
539
595
  __name(isRetryable, "isRetryable");
540
- async function openVoiceStreamWithRetry(open) {
596
+ async function openVoiceStreamWithRetry(open, opts = {}) {
597
+ if (opts.abortSignal?.aborted) {
598
+ throw new Error("Voice stream opening was aborted.");
599
+ }
541
600
  try {
542
601
  return await open();
543
602
  } catch (error) {
@@ -545,7 +604,10 @@ async function openVoiceStreamWithRetry(open) {
545
604
  throw error;
546
605
  }
547
606
  debugLogger3.debug("[voice] stream open failed, retrying:", error);
548
- await delay(RETRY_DELAY_MS);
607
+ await delay(RETRY_DELAY_MS, opts.abortSignal);
608
+ if (opts.abortSignal?.aborted) {
609
+ throw new Error("Voice stream opening was aborted.");
610
+ }
549
611
  return open();
550
612
  }
551
613
  }
@@ -16,7 +16,7 @@ import {
16
16
  } from "./chunk-QHTIBUWB.js";
17
17
  import {
18
18
  stripAnsi
19
- } from "./chunk-SSFDPGFN.js";
19
+ } from "./chunk-K7CRWKOE.js";
20
20
  import {
21
21
  init_esbuild_shims
22
22
  } from "./chunk-5O2XNYP6.js";