@qwen-code/qwen-code 0.19.7 → 0.19.8-nightly.20260710.205430235

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 (292) hide show
  1. package/bundled/qc-helper/SKILL.md +1 -0
  2. package/bundled/qc-helper/docs/configuration/auth.md +40 -55
  3. package/bundled/qc-helper/docs/configuration/model-providers.md +224 -218
  4. package/bundled/qc-helper/docs/configuration/settings.md +43 -36
  5. package/bundled/qc-helper/docs/features/_meta.ts +1 -0
  6. package/bundled/qc-helper/docs/features/channels/overview.md +20 -12
  7. package/bundled/qc-helper/docs/features/channels/plugins.md +1 -0
  8. package/bundled/qc-helper/docs/features/code-review.md +2 -1
  9. package/bundled/qc-helper/docs/features/commands.md +39 -38
  10. package/bundled/qc-helper/docs/features/computer-use.md +77 -0
  11. package/bundled/qc-helper/docs/features/hooks.md +36 -34
  12. package/bundled/qc-helper/docs/features/memory.md +1 -1
  13. package/bundled/qc-helper/docs/features/tool-use-summaries.md +19 -23
  14. package/bundled/qc-helper/docs/qwen-serve.md +22 -12
  15. package/bundled/qc-helper/docs/reference/keyboard-shortcuts.md +1 -1
  16. package/bundled/review/DESIGN.md +14 -13
  17. package/bundled/review/SKILL.md +38 -61
  18. package/chunks/{MaxSizedBox-XY5LIO5O.js → MaxSizedBox-LOFYQFYJ.js} +13 -14
  19. package/chunks/{StandaloneSessionPicker-APISIRJZ.js → StandaloneSessionPicker-U5OQBGEB.js} +31 -29
  20. package/chunks/{acpAgent-MMOSC2YA.js → acpAgent-SDIFRIED.js} +637 -131
  21. package/chunks/{agent-TKIBLLQT.js → agent-JIBBVHNQ.js} +10 -10
  22. package/chunks/{agent-headless-VLX4C7KX.js → agent-headless-6LGZYJYU.js} +10 -10
  23. package/chunks/{anthropicContentGenerator-AKYPSZIV.js → anthropicContentGenerator-55REPTTF.js} +30 -3
  24. package/chunks/{artifact-tool-D233YJFH.js → artifact-tool-EIN46DPM.js} +1 -1
  25. package/chunks/{askUserQuestion-MKL5ZTMC.js → askUserQuestion-6YX6ZRX7.js} +1 -1
  26. package/chunks/{bridge-BCU73DZO.js → bridge-HVPFYNM4.js} +17 -16
  27. package/chunks/{ca-HCMB2I54.js → ca-MULEGDVS.js} +89 -5
  28. package/chunks/{channel-worker-supervisor-CRCVYQIE.js → channel-worker-supervisor-OPXXT4JK.js} +20 -3
  29. package/chunks/{chunk-DGHJTO2K.js → chunk-2AF26HVM.js} +31 -2
  30. package/chunks/{chunk-3B26UVCX.js → chunk-2GUVUHJY.js} +6 -4
  31. package/chunks/{chunk-FV7425LN.js → chunk-2SZOMGOR.js} +4 -1
  32. package/chunks/{chunk-CNSF3WO5.js → chunk-32KS5XSX.js} +3 -3
  33. package/chunks/{chunk-4UCTWSTP.js → chunk-34UUM3IN.js} +1 -1
  34. package/chunks/{chunk-G7ZG7CA6.js → chunk-3UP777ZS.js} +8 -7
  35. package/chunks/{chunk-MIG5SQNL.js → chunk-4CSVIZLT.js} +4 -4
  36. package/chunks/{chunk-GD236YPV.js → chunk-4ONWIT5C.js} +1 -1
  37. package/chunks/{chunk-4ZJIPVPB.js → chunk-4XK7TNBP.js} +8 -8
  38. package/chunks/{chunk-I4A4K72C.js → chunk-5F2H3PXG.js} +446 -232
  39. package/chunks/chunk-5HOF2K5U.js +19 -0
  40. package/chunks/{chunk-GMOWQOQQ.js → chunk-5ZVIYNLN.js} +228 -36
  41. package/chunks/chunk-6O6Z2I5Q.js +292 -0
  42. package/chunks/{chunk-RYFZCUJO.js → chunk-6QKT5VNZ.js} +14 -6
  43. package/chunks/{chunk-SD4N3QJ2.js → chunk-6ZPSVWLF.js} +61 -17
  44. package/chunks/{chunk-X265R5C6.js → chunk-7YGSDQ5J.js} +2 -2
  45. package/chunks/{chunk-PRDFOIZF.js → chunk-A6KEUFJO.js} +32 -5
  46. package/chunks/{chunk-OWVIH4HY.js → chunk-B5OAMPJ5.js} +389 -87
  47. package/chunks/{chunk-ME3YSROJ.js → chunk-CV2AT2WJ.js} +22 -10
  48. package/chunks/{chunk-U4FRHCLA.js → chunk-DDKUYKHA.js} +1912 -201
  49. package/chunks/{chunk-YDSYD7UI.js → chunk-E3SA2LY4.js} +2 -2
  50. package/chunks/{chunk-6IAWPIQ6.js → chunk-EDM5O3SX.js} +2 -2
  51. package/chunks/{chunk-CISB3IQF.js → chunk-FONJQQWI.js} +65 -6
  52. package/chunks/{chunk-FRFFNYUY.js → chunk-G3WIMNL4.js} +3 -3
  53. package/chunks/{chunk-B34OV7K2.js → chunk-GGQQA4JW.js} +13 -0
  54. package/chunks/chunk-GLE2YUPU.js +34 -0
  55. package/chunks/{chunk-MJI36HER.js → chunk-GOTMC3BX.js} +1 -1
  56. package/chunks/{chunk-RFIL6REB.js → chunk-GRB4QSBD.js} +168 -31
  57. package/chunks/chunk-GVVY7GSP.js +38 -0
  58. package/chunks/{chunk-7JGISHHZ.js → chunk-HDEUQRAR.js} +14 -156
  59. package/chunks/{chunk-NZEGNV4V.js → chunk-HPRI22FZ.js} +6 -6
  60. package/chunks/{chunk-STAZRKOT.js → chunk-I34IHZFJ.js} +117 -459
  61. package/chunks/{chunk-JF7DFPQ5.js → chunk-I3MBKL6Z.js} +12 -2
  62. package/chunks/{chunk-DNV4FSN5.js → chunk-I5XN6KDI.js} +21 -4
  63. package/chunks/{chunk-VZ7HY3YU.js → chunk-IAMRWMFU.js} +1 -1
  64. package/chunks/{chunk-44NROQYV.js → chunk-JOQMY62N.js} +1 -1
  65. package/chunks/{chunk-VQWAZSXN.js → chunk-JW4IKIZ2.js} +57 -35
  66. package/chunks/{chunk-SAIILPQ3.js → chunk-KJMYXFUR.js} +3 -1
  67. package/chunks/{chunk-AFOLR6YL.js → chunk-KQ6MKCFE.js} +102 -16
  68. package/chunks/{chunk-X3YGAX7V.js → chunk-KS2FRTYI.js} +2 -0
  69. package/chunks/{chunk-IUE7YWC3.js → chunk-LE7EF36E.js} +7 -7
  70. package/chunks/{chunk-B4U2M63D.js → chunk-LRY7HD3Q.js} +2101 -11
  71. package/chunks/{chunk-PUQLHSQ2.js → chunk-ME7E6WZB.js} +6 -8
  72. package/chunks/{chunk-LEIJKM7Q.js → chunk-MEK7ZRJ3.js} +1 -1
  73. package/chunks/{chunk-AJBEAUIS.js → chunk-MG2TNCRX.js} +4 -3
  74. package/chunks/{chunk-GL5TV7B5.js → chunk-MSMQURDV.js} +21 -5
  75. package/chunks/{chunk-6BN7NZ5Z.js → chunk-NXDJLKKX.js} +4 -6
  76. package/chunks/{chunk-FEJ2FZ3U.js → chunk-NY2ZOFMM.js} +1 -1
  77. package/chunks/{chunk-QZF5U5KA.js → chunk-NY5BE643.js} +8 -8
  78. package/chunks/{chunk-4RQIB5UZ.js → chunk-O2YT7VB4.js} +0 -34
  79. package/chunks/{chunk-4KJ2BPIT.js → chunk-OACJLMLD.js} +2 -38
  80. package/chunks/chunk-PCWSPWXZ.js +168 -0
  81. package/chunks/{chunk-XPJH4PKR.js → chunk-PJ74K3DH.js} +1 -1
  82. package/chunks/{chunk-FTFXDZYI.js → chunk-PW7VWRLX.js} +45 -29
  83. package/chunks/chunk-R3SLDK6Y.js +468 -0
  84. package/chunks/{chunk-4O344UEE.js → chunk-SDJOZOYY.js} +38 -18
  85. package/chunks/{chunk-ALZ75L2X.js → chunk-SMYIBRAA.js} +412 -376
  86. package/chunks/{chunk-CCGOFQV3.js → chunk-SS5P6JM6.js} +6 -5
  87. package/chunks/{chunk-AIY5UTFI.js → chunk-T3XHYGMG.js} +925 -2872
  88. package/chunks/{chunk-Q6OEPOOC.js → chunk-TB6GWNV4.js} +1 -1
  89. package/chunks/{chunk-24XYI5EI.js → chunk-TERKDCOZ.js} +3 -3
  90. package/chunks/chunk-TVO5C767.js +159 -0
  91. package/chunks/{chunk-TBAZMRW3.js → chunk-TVW53EK7.js} +1 -1
  92. package/chunks/chunk-TX5QZYK6.js +296 -0
  93. package/chunks/{chunk-JD33UY7E.js → chunk-TZRVTPJ6.js} +15 -9
  94. package/chunks/{chunk-65CFHNSE.js → chunk-UAFB2DNB.js} +59 -59
  95. package/chunks/{chunk-QAKFYMJI.js → chunk-UOXLB2LY.js} +152 -17
  96. package/chunks/chunk-V35MD7KN.js +13 -0
  97. package/chunks/{chunk-XSAFNANZ.js → chunk-VWDJHVXM.js} +12 -12
  98. package/chunks/{chunk-XISQIIT7.js → chunk-W77ZLCSX.js} +1 -1
  99. package/chunks/{chunk-BWVQN2HV.js → chunk-WTEIUA2V.js} +4 -4
  100. package/chunks/{chunk-TDGF35EN.js → chunk-XOHNA2S6.js} +1 -1
  101. package/chunks/{chunk-HJ3GX3Y3.js → chunk-XZVUZSDG.js} +25 -11
  102. package/chunks/{chunk-ADZG46HR.js → chunk-YHGCTQG3.js} +1 -1
  103. package/chunks/{chunk-2NPS2UDH.js → chunk-YUNPEB3Q.js} +478 -43
  104. package/chunks/chunk-Z3I3QJK3.js +47 -0
  105. package/chunks/{chunk-P7I3D7FM.js → chunk-Z466FBSA.js} +1 -1
  106. package/chunks/{chunk-YEGT55NW.js → chunk-ZDAZSR2O.js} +3009 -1220
  107. package/chunks/{chunk-VEB3NYSO.js → chunk-ZJQBTFJ6.js} +6 -1
  108. package/chunks/chunk-ZL5HN75Q.js +61 -0
  109. package/chunks/{computer-use-X4KUU3NM.js → computer-use-IW5XBECT.js} +10 -10
  110. package/chunks/{contextCommand-LAYJZF7H.js → contextCommand-4QPLK2SH.js} +14 -14
  111. package/chunks/create-sub-session-7JK3EYWA.js +212 -0
  112. package/chunks/create-sub-session-EVYZYAE3.js +364 -0
  113. package/chunks/{cron-create-JSXEIPVS.js → cron-create-2CCO2PW6.js} +2 -2
  114. package/chunks/{cron-delete-OIFVEPGU.js → cron-delete-ETVTP5IV.js} +2 -2
  115. package/chunks/{cron-list-D4ZX4IOE.js → cron-list-FS3KWOY5.js} +2 -2
  116. package/chunks/{daemon-F3I2RXP6.js → daemon-NNUYIBWA.js} +461 -0
  117. package/chunks/{daemon-status-provider-XSAFKVDS.js → daemon-status-provider-3EPG6BXX.js} +21 -19
  118. package/chunks/{de-PLLFDERI.js → de-QRG6J2CM.js} +89 -5
  119. package/chunks/{dist-YTRKAVUB.js → dist-3EIIFOJV.js} +1 -1
  120. package/chunks/{dist-PKFTNUHO.js → dist-7F5GWZDZ.js} +2 -1
  121. package/chunks/{dist-FQ5WRJPL.js → dist-CBJ7OJ5R.js} +2 -2
  122. package/chunks/{dist-OT7G2WNM.js → dist-LIFJ2YAI.js} +1 -1
  123. package/chunks/{dist-573HNSVO.js → dist-OKXOQ63L.js} +2 -1
  124. package/chunks/{dist-IMFFBMAT.js → dist-SU5LY5R4.js} +3 -1
  125. package/chunks/{earlyInputCapture-AERYYGXE.js → earlyInputCapture-HP5XAS7A.js} +10 -10
  126. package/chunks/{edit-WZTZDGCI.js → edit-MDICC6KH.js} +11 -11
  127. package/chunks/{en-GA2RMXY5.js → en-HF3KFWZG.js} +91 -5
  128. package/chunks/{enter-worktree-DEPXBJEL.js → enter-worktree-JWTRNEN4.js} +10 -10
  129. package/chunks/{enterPlanMode-JFGXZHHJ.js → enterPlanMode-GMRZMTBQ.js} +10 -10
  130. package/chunks/environment-2CJAFOFN.js +88 -0
  131. package/chunks/{errors-GMZL4QV7.js → errors-UZOVFD2U.js} +13 -13
  132. package/chunks/{exit-worktree-Y7XBK3VV.js → exit-worktree-QQGEG343.js} +10 -10
  133. package/chunks/{exitPlanMode-WQQER65F.js → exitPlanMode-YK2JVAAB.js} +10 -10
  134. package/chunks/{fast-path-W2U6XDNO.js → fast-path-6SD4JNQW.js} +12 -3
  135. package/chunks/{fast-path-settings-RCRXH2JG.js → fast-path-settings-RAQGCIT7.js} +3 -2
  136. package/chunks/{fr-GWNQG4XH.js → fr-RSCO6HHD.js} +89 -5
  137. package/chunks/{gemini-T4WX6SRW.js → gemini-TFQXPUZB.js} +436 -140
  138. package/chunks/{geminiContentGenerator-MKQACXEJ.js → geminiContentGenerator-LJ2BNXHX.js} +1 -1
  139. package/chunks/{glob-4KKSHZDF.js → glob-3IJ6JR5W.js} +10 -10
  140. package/chunks/{grep-GHRYXSLZ.js → grep-UFZ2RFQZ.js} +10 -10
  141. package/chunks/{handleAutoUpdate-HN7ZOSXY.js → handleAutoUpdate-TEZC5ZIR.js} +17 -13
  142. package/chunks/i18n-5QEODTJV.js +84 -0
  143. package/chunks/{initializer-SRN3IM42.js → initializer-222MPCLQ.js} +18 -16
  144. package/chunks/installationInfo-OZ62OHZ2.js +65 -0
  145. package/chunks/{ja-2HOTA47X.js → ja-RRFGG2DC.js} +89 -5
  146. package/chunks/{list-INTVXUPA.js → list-BN5VBIIE.js} +20 -18
  147. package/chunks/{loadedSettingsAdapter-QVHHQPGM.js → loadedSettingsAdapter-EHTUJRFB.js} +18 -16
  148. package/chunks/{loop-wakeup-OHWEMFP5.js → loop-wakeup-SR2KWT4B.js} +3 -3
  149. package/chunks/{ls-L654WOAT.js → ls-RUBQK5Q2.js} +2 -2
  150. package/chunks/{lsp-M35KE54Y.js → lsp-DUTVY2ZA.js} +3 -5
  151. package/chunks/{mcp-7V4T46RG.js → mcp-OPGHD26Y.js} +18 -16
  152. package/chunks/{monitor-464OY2UE.js → monitor-WXBDVYYV.js} +10 -10
  153. package/chunks/{nonInteractiveCli-LJEEODU2.js → nonInteractiveCli-CWIBGJ4U.js} +54 -49
  154. package/chunks/{notebook-edit-BLJYCNDO.js → notebook-edit-T7P7M73F.js} +11 -11
  155. package/chunks/{openaiContentGenerator-PFF6HYB2.js → openaiContentGenerator-OES264C3.js} +7 -7
  156. package/chunks/{pidfile-LIBUENIV.js → pidfile-LJ3NLS2P.js} +10 -10
  157. package/chunks/{pt-2THT3YHA.js → pt-D4CG46JM.js} +89 -5
  158. package/chunks/{qwenContentGenerator-SUUHZ6CR.js → qwenContentGenerator-QJ67LAJ5.js} +12 -12
  159. package/chunks/{read-file-L7TBQVX7.js → read-file-KZD7TLU7.js} +5 -5
  160. package/chunks/{read-mcp-resource-CNQHBSJM.js → read-mcp-resource-Q56IMYOH.js} +1 -1
  161. package/chunks/{record-artifact-PP3LKHTS.js → record-artifact-GZ5D5HZX.js} +4 -4
  162. package/chunks/{ripGrep-CKKX3GRB.js → ripGrep-KUJLX75U.js} +10 -10
  163. package/chunks/{ru-Z67YJHBG.js → ru-O2QUEL22.js} +89 -5
  164. package/chunks/{run-qwen-serve-5OKADVLE.js → run-qwen-serve-M52KVRGI.js} +664 -153
  165. package/chunks/{scheduler-ZRW3AIDU.js → scheduler-FFATTAYZ.js} +10 -10
  166. package/chunks/{send-message-OA6MV4EU.js → send-message-HAGK3VTV.js} +2 -2
  167. package/chunks/{serve-36WS32W6.js → serve-B5S32524.js} +21 -18
  168. package/chunks/{server-M372UENX.js → server-6HK5FJMR.js} +3301 -665
  169. package/chunks/{session-F5KSNP2N.js → session-3WB76VTQ.js} +55 -50
  170. package/chunks/{settings-WFLNS3WT.js → settings-W3IX7NHK.js} +27 -23
  171. package/chunks/{shell-DEDSWN56.js → shell-HZIU2ZG7.js} +10 -10
  172. package/chunks/{skill-A2TL2NPC.js → skill-34OUFB65.js} +5 -5
  173. package/chunks/{spawnChannel-RQHUWTCL.js → spawnChannel-FTZJ3I5O.js} +12 -12
  174. package/chunks/{src-XKZMNHXS.js → src-NELBIIGI.js} +48 -10
  175. package/chunks/standalone-update-LICI2VSK.js +79 -0
  176. package/chunks/{startInteractiveUI-REKSTOHU.js → startInteractiveUI-LZEV5YI2.js} +2203 -1764
  177. package/chunks/stdioHelpers-CA7MG65Z.js +14 -0
  178. package/chunks/{syntheticOutput-F7LSDCAR.js → syntheticOutput-XFFJVCGV.js} +2 -2
  179. package/chunks/{task-create-RPFZNB4B.js → task-create-VINUSVBF.js} +3 -3
  180. package/chunks/{task-list-TGGJX7EA.js → task-list-YZ2AWQEG.js} +1 -1
  181. package/chunks/{task-stop-W7NGTMYQ.js → task-stop-PEXPKUW3.js} +1 -1
  182. package/chunks/{task-update-5WUG5MVQ.js → task-update-BHIX57YH.js} +3 -3
  183. package/chunks/{team-create-TBQVWAG7.js → team-create-2JS2OYSF.js} +10 -10
  184. package/chunks/{team-delete-UHQQ2QQX.js → team-delete-2OHXSBVS.js} +1 -1
  185. package/chunks/{team-plan-approval-FZPGUSHJ.js → team-plan-approval-PHLGYUY7.js} +10 -10
  186. package/chunks/{theme-manager-DQZVNSOC.js → theme-manager-UYXLX37P.js} +10 -10
  187. package/chunks/{todoWrite-C4ZAMSR3.js → todoWrite-7Q4ELT4F.js} +1 -1
  188. package/chunks/{tool-search-FDQ3SLNJ.js → tool-search-2MWA3GWE.js} +6 -6
  189. package/chunks/total-session-admission-PRZK35X4.js +72 -0
  190. package/chunks/{trustedFolders-Z475EIHL.js → trustedFolders-IT4JBNPG.js} +12 -12
  191. package/chunks/{updateCheck-E2ZX7RL7.js → updateCheck-X3ZWDO3Z.js} +17 -13
  192. package/chunks/updateEventEmitter-NXWTRHXY.js +10 -0
  193. package/chunks/{validateNonInterActiveAuth-O4ECBHQL.js → validateNonInterActiveAuth-IAOL7CM3.js} +51 -45
  194. package/chunks/{version-CEDD6ZZR.js → version-25QF6A5H.js} +1 -1
  195. package/chunks/{web-fetch-UYGMOHW4.js → web-fetch-I7FOWHGA.js} +2 -2
  196. package/chunks/{workflow-CQQ4J4I6.js → workflow-LZZ5U3IT.js} +11 -11
  197. package/chunks/{workspace-providers-status-MVYXMYDG.js → workspace-providers-status-7DTOAWEL.js} +21 -18
  198. package/chunks/workspace-registry-BBIPESIZ.js +76 -0
  199. package/chunks/{workspace-service-OMBR6ZLG.js → workspace-service-SY3P3FUY.js} +25 -23
  200. package/chunks/{workspace-skills-status-IMMQ7CAY.js → workspace-skills-status-GTT2A4WN.js} +20 -18
  201. package/chunks/{write-file-VWGY7AJP.js → write-file-M6IHNW3V.js} +11 -11
  202. package/chunks/{zh-7XVVRTDH.js → zh-K2EH6BDD.js} +91 -5
  203. package/chunks/{zh-TW-DPH554OG.js → zh-TW-4GPXJ7ZY.js} +91 -5
  204. package/cli.js +13 -12
  205. package/locales/ca.js +115 -7
  206. package/locales/de.js +114 -7
  207. package/locales/en.js +118 -7
  208. package/locales/fr.js +115 -7
  209. package/locales/ja.js +116 -6
  210. package/locales/pt.js +114 -7
  211. package/locales/ru.js +114 -7
  212. package/locales/zh-TW.js +114 -6
  213. package/locales/zh.js +114 -6
  214. package/package.json +3 -6
  215. package/web-shell/assets/{arc-C7hjaa7g.js → arc-G3HZaqaL.js} +1 -1
  216. package/web-shell/assets/{architectureDiagram-3BPJPVTR-pm9KtMZY.js → architectureDiagram-3BPJPVTR-DhBrwwch.js} +1 -1
  217. package/web-shell/assets/{blockDiagram-GPEHLZMM-CApElKsU.js → blockDiagram-GPEHLZMM-16JbbF0N.js} +1 -1
  218. package/web-shell/assets/{c4Diagram-AAUBKEIU-BeDe0-9N.js → c4Diagram-AAUBKEIU-DQ3-pKgc.js} +1 -1
  219. package/web-shell/assets/channel-CX7ZHuuL.js +1 -0
  220. package/web-shell/assets/{chunk-2J33WTMH-DJEkmLdl.js → chunk-2J33WTMH-ERCn30sp.js} +1 -1
  221. package/web-shell/assets/{chunk-4BX2VUAB-DXX8gdpe.js → chunk-4BX2VUAB-DTysfbFi.js} +1 -1
  222. package/web-shell/assets/{chunk-55IACEB6-DORmk1kQ.js → chunk-55IACEB6-BFGrbTBi.js} +1 -1
  223. package/web-shell/assets/{chunk-727SXJPM-DWmO4mCZ.js → chunk-727SXJPM-DCX4Oar-.js} +1 -1
  224. package/web-shell/assets/{chunk-AQP2D5EJ-C7LRaYw2.js → chunk-AQP2D5EJ-CgT6sBr3.js} +1 -1
  225. package/web-shell/assets/{chunk-FMBD7UC4-CCdXgyC5.js → chunk-FMBD7UC4-C1Uuk1KV.js} +1 -1
  226. package/web-shell/assets/{chunk-ND2GUHAM-SyL_xvWc.js → chunk-ND2GUHAM-DajgESiu.js} +1 -1
  227. package/web-shell/assets/{chunk-QZHKN3VN-BzOuCKxa.js → chunk-QZHKN3VN-DLJSvy9X.js} +1 -1
  228. package/web-shell/assets/classDiagram-4FO5ZUOK-B-oT3UI8.js +1 -0
  229. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-B-oT3UI8.js +1 -0
  230. package/web-shell/assets/{cose-bilkent-S5V4N54A-BMPWyDKc.js → cose-bilkent-S5V4N54A-CH3w3qs7.js} +1 -1
  231. package/web-shell/assets/{dagre-BM42HDAG-B_GnPWik.js → dagre-BM42HDAG-BloXan9B.js} +1 -1
  232. package/web-shell/assets/{diagram-2AECGRRQ-fJqMc3S_.js → diagram-2AECGRRQ-BbZiGcmK.js} +1 -1
  233. package/web-shell/assets/{diagram-5GNKFQAL-ximV3O9D.js → diagram-5GNKFQAL-GQlYvLJv.js} +1 -1
  234. package/web-shell/assets/{diagram-KO2AKTUF-2vVyjzqw.js → diagram-KO2AKTUF-CtIBvVq3.js} +1 -1
  235. package/web-shell/assets/{diagram-LMA3HP47-Dckcx1sT.js → diagram-LMA3HP47-D5TBo9a2.js} +1 -1
  236. package/web-shell/assets/{diagram-OG6HWLK6-BAVv47ga.js → diagram-OG6HWLK6-N0gQhw6R.js} +1 -1
  237. package/web-shell/assets/{erDiagram-TEJ5UH35-Bn3nf5J0.js → erDiagram-TEJ5UH35-zab9vDj3.js} +1 -1
  238. package/web-shell/assets/{flowDiagram-I6XJVG4X-BIbGF9JT.js → flowDiagram-I6XJVG4X-BnnjtWJa.js} +1 -1
  239. package/web-shell/assets/{ganttDiagram-6RSMTGT7-CDbhb3AH.js → ganttDiagram-6RSMTGT7-2T0SQU4f.js} +1 -1
  240. package/web-shell/assets/{gitGraphDiagram-PVQCEYII-CbKG1a_w.js → gitGraphDiagram-PVQCEYII-DAD6_que.js} +1 -1
  241. package/web-shell/assets/index-XLkWfLja.css +5 -0
  242. package/web-shell/assets/index-srlTR1Jg.js +786 -0
  243. package/web-shell/assets/{infoDiagram-5YYISTIA-DUFxTy8m.js → infoDiagram-5YYISTIA-C-j8d0xO.js} +1 -1
  244. package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-D69hrBG8.js → ishikawaDiagram-YF4QCWOH-D97bAKoT.js} +1 -1
  245. package/web-shell/assets/{journeyDiagram-JHISSGLW-DsvEw51Y.js → journeyDiagram-JHISSGLW-BJAHfJmm.js} +1 -1
  246. package/web-shell/assets/{kanban-definition-UN3LZRKU-lFFjZEYd.js → kanban-definition-UN3LZRKU-CZgR5aac.js} +1 -1
  247. package/web-shell/assets/{linear-Bo5bWzvo.js → linear-DOd4kYhA.js} +1 -1
  248. package/web-shell/assets/{mermaid.core-C_HKMJx5.js → mermaid.core-BBaplnXA.js} +5 -5
  249. package/web-shell/assets/{mindmap-definition-RKZ34NQL-DlV-NUTs.js → mindmap-definition-RKZ34NQL-IhBF_BR5.js} +1 -1
  250. package/web-shell/assets/{pieDiagram-4H26LBE5-B2e6FH2a.js → pieDiagram-4H26LBE5-B4R4sYyH.js} +1 -1
  251. package/web-shell/assets/{quadrantDiagram-W4KKPZXB-D75kSk-b.js → quadrantDiagram-W4KKPZXB-DKd1SJ61.js} +1 -1
  252. package/web-shell/assets/{requirementDiagram-4Y6WPE33-CQ6xakhM.js → requirementDiagram-4Y6WPE33-Cw96V0Xb.js} +1 -1
  253. package/web-shell/assets/{sankeyDiagram-5OEKKPKP-J_XTKrcY.js → sankeyDiagram-5OEKKPKP-C6ne_yWi.js} +1 -1
  254. package/web-shell/assets/{sequenceDiagram-3UESZ5HK-D7jTcBtf.js → sequenceDiagram-3UESZ5HK-CCyp4PDp.js} +1 -1
  255. package/web-shell/assets/{stateDiagram-AJRCARHV-CrlM_OT3.js → stateDiagram-AJRCARHV-DHvIqTmx.js} +1 -1
  256. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-DvFhmpwA.js +1 -0
  257. package/web-shell/assets/{timeline-definition-PNZ67QCA-5oZi76Ef.js → timeline-definition-PNZ67QCA-amb3n9zH.js} +1 -1
  258. package/web-shell/assets/{vennDiagram-CIIHVFJN-DO5YptPK.js → vennDiagram-CIIHVFJN-Abf2qRFJ.js} +1 -1
  259. package/web-shell/assets/{wardley-L42UT6IY-4t1eJDvM.js → wardley-L42UT6IY-BBlOp1av.js} +1 -1
  260. package/web-shell/assets/{wardleyDiagram-YWT4CUSO-DKZc661S.js → wardleyDiagram-YWT4CUSO-gE_sZ0Ak.js} +1 -1
  261. package/web-shell/assets/{xychartDiagram-2RQKCTM6-su9hp08G.js → xychartDiagram-2RQKCTM6-BwOni53i.js} +1 -1
  262. package/web-shell/index.html +16 -4
  263. package/chunks/chunk-6SHO7WFF.js +0 -79
  264. package/chunks/chunk-IFEWJXFS.js +0 -37
  265. package/node_modules/@qwen-code/audio-capture/dist/index.d.ts +0 -35
  266. package/node_modules/@qwen-code/audio-capture/dist/index.js +0 -48
  267. package/node_modules/@qwen-code/audio-capture/dist/index.js.map +0 -1
  268. package/node_modules/@qwen-code/audio-capture/dist/platform.d.ts +0 -7
  269. package/node_modules/@qwen-code/audio-capture/dist/platform.js +0 -18
  270. package/node_modules/@qwen-code/audio-capture/dist/platform.js.map +0 -1
  271. package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/LICENSE +0 -21
  272. package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/README.md +0 -58
  273. package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/SECURITY.md +0 -5
  274. package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/bin.js +0 -84
  275. package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/build-test.js +0 -19
  276. package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/index.js +0 -6
  277. package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/node-gyp-build.js +0 -207
  278. package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/optional.js +0 -7
  279. package/node_modules/@qwen-code/audio-capture/node_modules/node-gyp-build/package.json +0 -43
  280. package/node_modules/@qwen-code/audio-capture/package.json +0 -30
  281. package/node_modules/@qwen-code/audio-capture/prebuilds/darwin-arm64/@qwen-code+audio-capture.node +0 -0
  282. package/node_modules/@qwen-code/audio-capture/prebuilds/darwin-x64/@qwen-code+audio-capture.node +0 -0
  283. package/node_modules/@qwen-code/audio-capture/prebuilds/linux-arm64/@qwen-code+audio-capture.node +0 -0
  284. package/node_modules/@qwen-code/audio-capture/prebuilds/linux-x64/@qwen-code+audio-capture.node +0 -0
  285. package/node_modules/@qwen-code/audio-capture/prebuilds/win32-x64/@qwen-code+audio-capture.node +0 -0
  286. package/web-shell/assets/channel-BNf1dW-j.js +0 -1
  287. package/web-shell/assets/classDiagram-4FO5ZUOK-uOIGlzgi.js +0 -1
  288. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-uOIGlzgi.js +0 -1
  289. package/web-shell/assets/index-CnE2ur2L.js +0 -779
  290. package/web-shell/assets/index-hSKXrlSE.css +0 -5
  291. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-Bs4TK_84.js +0 -1
  292. /package/chunks/{chunk-Y6Z2O3WR.js → chunk-JM7BYJO5.js} +0 -0
@@ -1,9 +1,10 @@
1
1
  // Force strict mode and setup for ESM
2
2
  "use strict";
3
3
  import {
4
+ ExtensionRefreshState,
4
5
  isValidSessionId,
5
6
  validateAuthMethod
6
- } from "./chunk-I4A4K72C.js";
7
+ } from "./chunk-5F2H3PXG.js";
7
8
  import {
8
9
  VSCODE_SHIFT_ENTER_SEQUENCE,
9
10
  calculateCost,
@@ -15,32 +16,34 @@ import {
15
16
  levelLabel,
16
17
  useKeypress,
17
18
  writeOsc52
18
- } from "./chunk-B4U2M63D.js";
19
+ } from "./chunk-LRY7HD3Q.js";
19
20
  import {
20
21
  Text
21
- } from "./chunk-DGHJTO2K.js";
22
+ } from "./chunk-2AF26HVM.js";
22
23
  import {
23
24
  isKittyProtocolEnabled
24
25
  } from "./chunk-JZSY4WP3.js";
25
26
  import {
26
27
  contextCommand
27
- } from "./chunk-BWVQN2HV.js";
28
- import {
29
- getInstallationInfo,
30
- rollbackStandaloneUpdate
31
- } from "./chunk-ALZ75L2X.js";
28
+ } from "./chunk-WTEIUA2V.js";
32
29
  import {
33
30
  isTerminalGoalStatusKind
34
- } from "./chunk-SAIILPQ3.js";
31
+ } from "./chunk-KJMYXFUR.js";
35
32
  import {
36
33
  require_react
37
34
  } from "./chunk-KYMBIKIW.js";
35
+ import {
36
+ getInstallationInfo
37
+ } from "./chunk-TX5QZYK6.js";
38
+ import {
39
+ rollbackStandaloneUpdate
40
+ } from "./chunk-SMYIBRAA.js";
38
41
  import {
39
42
  themeManager
40
43
  } from "./chunk-PC4ZXHU2.js";
41
44
  import {
42
45
  getErrorMessage as getErrorMessage2
43
- } from "./chunk-FRFFNYUY.js";
46
+ } from "./chunk-G3WIMNL4.js";
44
47
  import {
45
48
  GITHUB_WORKFLOW_PATHS,
46
49
  INSIGHT_CSS,
@@ -53,16 +56,24 @@ import {
53
56
  toJson,
54
57
  toJsonl,
55
58
  toMarkdown
56
- } from "./chunk-PRDFOIZF.js";
59
+ } from "./chunk-A6KEUFJO.js";
57
60
  import {
58
61
  stripUnsafeCharacters,
59
62
  toCodePoints
60
- } from "./chunk-GL5TV7B5.js";
63
+ } from "./chunk-MSMQURDV.js";
64
+ import {
65
+ formatUnsupportedVoiceModelMessage,
66
+ getVoiceSettingsScope,
67
+ isSelectableVoiceModel,
68
+ isVoiceEnabled,
69
+ readVoiceMode,
70
+ readVoiceModel
71
+ } from "./chunk-YHGCTQG3.js";
61
72
  import {
62
73
  getExtendedSystemInfo,
63
74
  getGitVersion,
64
75
  getNpmVersion
65
- } from "./chunk-24XYI5EI.js";
76
+ } from "./chunk-TERKDCOZ.js";
66
77
  import {
67
78
  formatDuration,
68
79
  formatMemoryUsage,
@@ -71,15 +82,7 @@ import {
71
82
  import {
72
83
  isInlineModelOverrideAllowed,
73
84
  parseAcpModelOption
74
- } from "./chunk-4ZJIPVPB.js";
75
- import {
76
- formatUnsupportedVoiceModelMessage,
77
- getVoiceSettingsScope,
78
- isSelectableVoiceModel,
79
- isVoiceEnabled,
80
- readVoiceMode,
81
- readVoiceModel
82
- } from "./chunk-ADZG46HR.js";
85
+ } from "./chunk-4XK7TNBP.js";
83
86
  import {
84
87
  OUTPUT_LANGUAGE_AUTO,
85
88
  getAllSettingKeys,
@@ -91,7 +94,7 @@ import {
91
94
  resolveOutputLanguage,
92
95
  validateSettingValue,
93
96
  writeOutputLanguageAndRegisterPath
94
- } from "./chunk-STAZRKOT.js";
97
+ } from "./chunk-I34IHZFJ.js";
95
98
  import {
96
99
  SUPPORTED_LANGUAGES,
97
100
  getCurrentLanguage,
@@ -99,11 +102,11 @@ import {
99
102
  resolveSupportedLanguage,
100
103
  setLanguageAsync,
101
104
  t
102
- } from "./chunk-QAKFYMJI.js";
105
+ } from "./chunk-UOXLB2LY.js";
103
106
  import {
104
107
  isFolderTrustEnabled,
105
108
  loadTrustedFolders
106
- } from "./chunk-MIG5SQNL.js";
109
+ } from "./chunk-4CSVIZLT.js";
107
110
  import {
108
111
  require_strip_json_comments
109
112
  } from "./chunk-QYUE6W3T.js";
@@ -175,17 +178,17 @@ import {
175
178
  stripStartupContext,
176
179
  tryGenerateSessionTitle,
177
180
  unregisterGoalHook
178
- } from "./chunk-YEGT55NW.js";
181
+ } from "./chunk-ZDAZSR2O.js";
179
182
  import {
180
183
  external_exports
181
184
  } from "./chunk-K5PGHDBN.js";
182
185
  import {
183
186
  runSideQuery
184
- } from "./chunk-VZ7HY3YU.js";
187
+ } from "./chunk-IAMRWMFU.js";
185
188
  import {
186
189
  APPROVAL_MODES,
187
190
  FORK_SUBAGENT_TYPE
188
- } from "./chunk-VEB3NYSO.js";
191
+ } from "./chunk-ZJQBTFJ6.js";
189
192
  import {
190
193
  applySkillAllowedTools,
191
194
  buildSkillLlmContent
@@ -206,13 +209,13 @@ import {
206
209
  recordSkillInvocation,
207
210
  resolveOpenAILogDir,
208
211
  uiTelemetryService
209
- } from "./chunk-GMOWQOQQ.js";
212
+ } from "./chunk-5ZVIYNLN.js";
210
213
  import {
211
214
  getAutoMemoryRoot
212
- } from "./chunk-4KJ2BPIT.js";
215
+ } from "./chunk-OACJLMLD.js";
213
216
  import {
214
217
  ToolNames
215
- } from "./chunk-X3YGAX7V.js";
218
+ } from "./chunk-KS2FRTYI.js";
216
219
  import {
217
220
  openBrowserSecurely
218
221
  } from "./chunk-22IFUCVR.js";
@@ -233,7 +236,7 @@ import {
233
236
  isCpuProfileRecording,
234
237
  startCpuProfile,
235
238
  stopCpuProfile
236
- } from "./chunk-MJI36HER.js";
239
+ } from "./chunk-GOTMC3BX.js";
237
240
  import {
238
241
  init_esbuild_shims
239
242
  } from "./chunk-A4BMJM77.js";
@@ -2696,11 +2699,19 @@ init_esbuild_shims();
2696
2699
  // packages/cli/src/ui/utils/backgroundWorkUtils.ts
2697
2700
  init_esbuild_shims();
2698
2701
  function hasBlockingBackgroundWork(config) {
2699
- return config.getBackgroundTaskRegistry().hasUnfinalizedTasks() || config.getMonitorRegistry().getRunning().length > 0 || config.getBackgroundShellRegistry().hasRunningEntries() || // R7 (wenshao): the WorkflowRunRegistry is a 4th sibling that the
2700
- // earlier P4b commit forgot to wire here. Without this OR clause,
2701
- // /clear and session-resume happily ran while a workflow was
2702
- // mid-run, orphaning the dispatch loop.
2703
- config.getWorkflowRunRegistry().hasRunningEntries();
2702
+ return (
2703
+ // hasRunningTasks, not hasUnfinalizedTasks: a cancelled task whose
2704
+ // finalize callback hasn't fired yet must not block /clear or
2705
+ // session resume — both abort-and-reset the registry right after
2706
+ // this gate, suppressing the pending notification anyway. Gating on
2707
+ // the unfinalized set made /new silently no-op when typed in the
2708
+ // window between cancel and finalize (issue #5949).
2709
+ config.getBackgroundTaskRegistry().hasRunningTasks() || config.getMonitorRegistry().getRunning().length > 0 || config.getBackgroundShellRegistry().hasRunningEntries() || // R7 (wenshao): the WorkflowRunRegistry is a 4th sibling that the
2710
+ // earlier P4b commit forgot to wire here. Without this OR clause,
2711
+ // /clear and session-resume happily ran while a workflow was
2712
+ // mid-run, orphaning the dispatch loop.
2713
+ config.getWorkflowRunRegistry().hasRunningEntries()
2714
+ );
2704
2715
  }
2705
2716
  __name(hasBlockingBackgroundWork, "hasBlockingBackgroundWork");
2706
2717
  function resetBackgroundStateForSessionSwitch(config) {
@@ -2734,14 +2745,11 @@ var clearCommand = {
2734
2745
  if (hasBlockingBackgroundWork(config)) {
2735
2746
  const content = "Stop the current session's running background tasks before starting a new session.";
2736
2747
  context.ui.setDebugMessage(content);
2737
- if (context.executionMode !== "interactive") {
2738
- return {
2739
- type: "message",
2740
- messageType: "error",
2741
- content
2742
- };
2743
- }
2744
- return;
2748
+ return {
2749
+ type: "message",
2750
+ messageType: "error",
2751
+ content
2752
+ };
2745
2753
  }
2746
2754
  config.getHookSystem()?.fireSessionEndEvent("clear" /* Clear */).catch((err) => {
2747
2755
  config.getDebugLogger().warn(`SessionEnd hook failed: ${err}`);
@@ -2888,11 +2896,13 @@ function coerceValue(def, rawValue) {
2888
2896
  })
2889
2897
  };
2890
2898
  }
2891
- case "number": {
2899
+ case "number":
2900
+ case "integer": {
2892
2901
  if (!rawValue || rawValue.trim() === "") {
2893
2902
  return {
2894
2903
  value: void 0,
2895
- error: t('Invalid number value: "{{value}}".', {
2904
+ error: t('Invalid {{type}} value: "{{value}}".', {
2905
+ type: def.type,
2896
2906
  value: String(rawValue)
2897
2907
  })
2898
2908
  };
@@ -2901,7 +2911,8 @@ function coerceValue(def, rawValue) {
2901
2911
  if (Number.isNaN(parsed) || !Number.isFinite(parsed)) {
2902
2912
  return {
2903
2913
  value: void 0,
2904
- error: t('Invalid number value: "{{value}}".', {
2914
+ error: t('Invalid {{type}} value: "{{value}}".', {
2915
+ type: def.type,
2905
2916
  value: String(rawValue)
2906
2917
  })
2907
2918
  };
@@ -8267,7 +8278,6 @@ var memoryCommand = {
8267
8278
  get description() {
8268
8279
  return t("Open the memory manager.");
8269
8280
  },
8270
- argumentHint: "show|add|refresh",
8271
8281
  kind: "built-in" /* BUILT_IN */,
8272
8282
  supportedModes: ["interactive"],
8273
8283
  action: /* @__PURE__ */ __name(async () => ({
@@ -9114,6 +9124,178 @@ var recapCommand = {
9114
9124
  }, "action")
9115
9125
  };
9116
9126
 
9127
+ // packages/cli/src/ui/commands/reload-plugins-command.ts
9128
+ init_esbuild_shims();
9129
+
9130
+ // packages/cli/src/config/extension-runtime-reload.ts
9131
+ init_esbuild_shims();
9132
+ var debugLogger10 = createDebugLogger("EXTENSION_RUNTIME_RELOAD");
9133
+ async function reloadPluginsRuntime(options) {
9134
+ if (options.config.isSafeMode()) {
9135
+ throw new Error("Extension reload is disabled in safe mode.");
9136
+ }
9137
+ const manager = options.config.getExtensionManager();
9138
+ await manager.refreshCache();
9139
+ await manager.refreshTools();
9140
+ await options.reloadCommands?.();
9141
+ return summarizeExtensions(options.config.getActiveExtensions());
9142
+ }
9143
+ __name(reloadPluginsRuntime, "reloadPluginsRuntime");
9144
+ async function refreshExtensionContentRuntime(options) {
9145
+ if (options.config.isSafeMode()) return;
9146
+ const manager = options.config.getExtensionManager();
9147
+ const errors = [];
9148
+ try {
9149
+ await manager.refreshCache();
9150
+ } catch (error) {
9151
+ errors.push(error);
9152
+ debugLogger10.warn(
9153
+ "refreshExtensionContentRuntime: refreshCache failed:",
9154
+ error
9155
+ );
9156
+ }
9157
+ const settled = await Promise.allSettled([
9158
+ options.config.getSkillManager()?.refreshCache(),
9159
+ options.config.getSubagentManager()?.refreshCache(),
9160
+ options.reloadCommands?.()
9161
+ ]);
9162
+ for (const result of settled) {
9163
+ if (result.status === "rejected") {
9164
+ errors.push(result.reason);
9165
+ debugLogger10.warn(
9166
+ "refreshExtensionContentRuntime: a refresh leg failed:",
9167
+ result.reason
9168
+ );
9169
+ }
9170
+ }
9171
+ if (errors.length > 0) {
9172
+ throw new Error(
9173
+ errors.map(
9174
+ (error) => error instanceof Error ? error.message : String(error)
9175
+ ).join("; ")
9176
+ );
9177
+ }
9178
+ }
9179
+ __name(refreshExtensionContentRuntime, "refreshExtensionContentRuntime");
9180
+ function summarizeExtensions(extensions) {
9181
+ return extensions.reduce(
9182
+ (summary, extension) => {
9183
+ summary.extensionCount++;
9184
+ summary.commandCount += extension.commands?.length ?? 0;
9185
+ summary.skillCount += extension.skills?.length ?? 0;
9186
+ summary.agentCount += extension.agents?.length ?? 0;
9187
+ summary.hookCount += countHooks(extension);
9188
+ summary.mcpServerCount += Object.keys(extension.mcpServers ?? {}).length;
9189
+ summary.lspServerCount += countLspServers(extension);
9190
+ return summary;
9191
+ },
9192
+ {
9193
+ extensionCount: 0,
9194
+ commandCount: 0,
9195
+ skillCount: 0,
9196
+ agentCount: 0,
9197
+ hookCount: 0,
9198
+ mcpServerCount: 0,
9199
+ lspServerCount: 0
9200
+ }
9201
+ );
9202
+ }
9203
+ __name(summarizeExtensions, "summarizeExtensions");
9204
+ function countHooks(extension) {
9205
+ return Object.values(extension.hooks ?? {}).reduce(
9206
+ (sum, definitions) => sum + (definitions ?? []).reduce(
9207
+ (innerSum, definition) => innerSum + (definition.hooks?.length ?? 0),
9208
+ 0
9209
+ ),
9210
+ 0
9211
+ );
9212
+ }
9213
+ __name(countHooks, "countHooks");
9214
+ function countLspServers(extension) {
9215
+ const lspServers = extension.config.lspServers;
9216
+ if (!lspServers) return 0;
9217
+ if (typeof lspServers === "string") return 1;
9218
+ return Object.keys(lspServers).length;
9219
+ }
9220
+ __name(countLspServers, "countLspServers");
9221
+
9222
+ // packages/cli/src/ui/commands/reload-plugins-command.ts
9223
+ function summaryCountTerm(count, singularKey, pluralKey) {
9224
+ return t(count === 1 ? singularKey : pluralKey, {
9225
+ count: String(count)
9226
+ });
9227
+ }
9228
+ __name(summaryCountTerm, "summaryCountTerm");
9229
+ function formatReloadPluginsSummary(summary) {
9230
+ return [
9231
+ summaryCountTerm(
9232
+ summary.extensionCount,
9233
+ "{{count}} extension",
9234
+ "{{count}} extensions"
9235
+ ),
9236
+ summaryCountTerm(
9237
+ summary.commandCount,
9238
+ "{{count}} command",
9239
+ "{{count}} commands"
9240
+ ),
9241
+ summaryCountTerm(summary.skillCount, "{{count}} skill", "{{count}} skills"),
9242
+ summaryCountTerm(summary.agentCount, "{{count}} agent", "{{count}} agents"),
9243
+ summaryCountTerm(summary.hookCount, "{{count}} hook", "{{count}} hooks"),
9244
+ summaryCountTerm(
9245
+ summary.mcpServerCount,
9246
+ "{{count}} extension MCP server",
9247
+ "{{count}} extension MCP servers"
9248
+ ),
9249
+ summaryCountTerm(
9250
+ summary.lspServerCount,
9251
+ "{{count}} extension LSP server",
9252
+ "{{count}} extension LSP servers"
9253
+ )
9254
+ ].join(" \xB7 ");
9255
+ }
9256
+ __name(formatReloadPluginsSummary, "formatReloadPluginsSummary");
9257
+ var reloadPluginsCommand = {
9258
+ name: "reload-plugins",
9259
+ get description() {
9260
+ return t("Reload extension changes from disk");
9261
+ },
9262
+ kind: "built-in" /* BUILT_IN */,
9263
+ supportedModes: ["interactive"],
9264
+ action: /* @__PURE__ */ __name(async (context) => {
9265
+ const config = context.services.config;
9266
+ if (!config) {
9267
+ return {
9268
+ type: "message",
9269
+ messageType: "error",
9270
+ content: t("Config not loaded.")
9271
+ };
9272
+ }
9273
+ const extensionRefreshState = context.services.extensionRefreshState ?? new ExtensionRefreshState();
9274
+ try {
9275
+ extensionRefreshState.notifyExtensionsReloadStarted();
9276
+ const summary = await reloadPluginsRuntime({
9277
+ config,
9278
+ reloadCommands: context.ui.reloadCommands
9279
+ });
9280
+ extensionRefreshState.clearExtensionsChanged();
9281
+ return {
9282
+ type: "message",
9283
+ messageType: "info",
9284
+ content: t("Reloaded extensions: {{summary}}", {
9285
+ summary: formatReloadPluginsSummary(summary)
9286
+ })
9287
+ };
9288
+ } catch (error) {
9289
+ extensionRefreshState.markExtensionsReloadFailed();
9290
+ return {
9291
+ type: "message",
9292
+ messageType: "error",
9293
+ content: error instanceof Error ? t("Reload failed: {{message}}", { message: error.message }) : t("Reload failed.")
9294
+ };
9295
+ }
9296
+ }, "action")
9297
+ };
9298
+
9117
9299
  // packages/cli/src/ui/commands/renameCommand.ts
9118
9300
  init_esbuild_shims();
9119
9301
  var MAX_TITLE_LENGTH = SESSION_TITLE_MAX_LENGTH;
@@ -10611,7 +10793,7 @@ import * as os4 from "node:os";
10611
10793
  import * as path13 from "node:path";
10612
10794
  import { exec } from "node:child_process";
10613
10795
  import { promisify } from "node:util";
10614
- var debugLogger10 = createDebugLogger("TERMINAL_SETUP");
10796
+ var debugLogger11 = createDebugLogger("TERMINAL_SETUP");
10615
10797
  var execAsync = promisify(exec);
10616
10798
  function stripJsonComments2(content) {
10617
10799
  return content.replace(/^\s*\/\/.*$/gm, "");
@@ -10644,7 +10826,7 @@ async function detectTerminal() {
10644
10826
  if (parentName.includes("trae") || parentName.includes("Trae"))
10645
10827
  return "trae";
10646
10828
  } catch (error) {
10647
- debugLogger10.debug("Parent process detection failed:", error);
10829
+ debugLogger11.debug("Parent process detection failed:", error);
10648
10830
  }
10649
10831
  }
10650
10832
  return null;
@@ -10656,7 +10838,7 @@ async function backupFile(filePath) {
10656
10838
  const backupPath = `${filePath}.backup.${timestamp}`;
10657
10839
  await fs10.copyFile(filePath, backupPath);
10658
10840
  } catch (error) {
10659
- debugLogger10.warn(`Failed to create backup of ${filePath}:`, error);
10841
+ debugLogger11.warn(`Failed to create backup of ${filePath}:`, error);
10660
10842
  }
10661
10843
  }
10662
10844
  __name(backupFile, "backupFile");
@@ -12821,6 +13003,117 @@ var lspCommand = {
12821
13003
  }, "action")
12822
13004
  };
12823
13005
 
13006
+ // packages/cli/src/ui/commands/update-command.ts
13007
+ init_esbuild_shims();
13008
+ var updateCommand = {
13009
+ name: "update",
13010
+ get description() {
13011
+ return t("Check for Qwen Code updates and install if available");
13012
+ },
13013
+ kind: "built-in" /* BUILT_IN */,
13014
+ supportedModes: ["interactive", "non_interactive", "acp"],
13015
+ action: /* @__PURE__ */ __name(async (context) => {
13016
+ const [
13017
+ { checkForUpdatesDetailed },
13018
+ { handleAutoUpdate },
13019
+ { performStandaloneUpdate },
13020
+ installationInfo
13021
+ ] = await Promise.all([
13022
+ import("./updateCheck-X3ZWDO3Z.js"),
13023
+ import("./handleAutoUpdate-TEZC5ZIR.js"),
13024
+ import("./standalone-update-LICI2VSK.js"),
13025
+ import("./installationInfo-OZ62OHZ2.js")
13026
+ ]);
13027
+ const { formatUpdateInstructions, getInstallationInfo: getInstallationInfo2 } = installationInfo;
13028
+ const settings = context.services.settings;
13029
+ const projectRoot = context.services.config?.getProjectRoot();
13030
+ const updateCheck = await checkForUpdatesDetailed();
13031
+ if (updateCheck.status === "up-to-date") {
13032
+ const msg = t("Qwen Code {{version}} is up to date!", {
13033
+ version: updateCheck.currentVersion
13034
+ });
13035
+ return {
13036
+ type: "message",
13037
+ messageType: "info",
13038
+ content: msg
13039
+ };
13040
+ }
13041
+ if (updateCheck.status === "error") {
13042
+ return {
13043
+ type: "message",
13044
+ messageType: "error",
13045
+ content: t(
13046
+ "Failed to check for updates. Please check your network or registry configuration."
13047
+ )
13048
+ };
13049
+ }
13050
+ if (updateCheck.status === "skipped") {
13051
+ return {
13052
+ type: "message",
13053
+ messageType: "error",
13054
+ content: t("Unable to check for updates: {{reason}}", {
13055
+ reason: updateCheck.reason
13056
+ })
13057
+ };
13058
+ }
13059
+ const info = updateCheck.info;
13060
+ const installInfo = getInstallationInfo2(projectRoot || process.cwd(), true);
13061
+ const manualInstructions = /* @__PURE__ */ __name(() => {
13062
+ const lines = [
13063
+ info.message,
13064
+ ...formatUpdateInstructions(installInfo, info.update.latest).map(
13065
+ (line) => t(line)
13066
+ )
13067
+ ];
13068
+ return {
13069
+ type: "message",
13070
+ messageType: "info",
13071
+ content: lines.join("\n")
13072
+ };
13073
+ }, "manualInstructions");
13074
+ if (context.executionMode === "interactive" && projectRoot) {
13075
+ const isAutoUpdateEnabled = settings.merged.general?.enableAutoUpdate !== false;
13076
+ const canAutoUpdate = installInfo.updateCommand || installInfo.isStandalone && installInfo.standaloneDir;
13077
+ if (isAutoUpdateEnabled && canAutoUpdate) {
13078
+ handleAutoUpdate(info, settings, projectRoot);
13079
+ return;
13080
+ }
13081
+ return manualInstructions();
13082
+ }
13083
+ if (installInfo.isStandalone && installInfo.standaloneDir) {
13084
+ try {
13085
+ const result = await performStandaloneUpdate(
13086
+ installInfo.standaloneDir,
13087
+ info.update.latest
13088
+ );
13089
+ const message = result === "done" ? t(
13090
+ "Update successful! The new version will be used on your next run."
13091
+ ) : t(
13092
+ "Update downloaded. It will be applied after you exit this session."
13093
+ );
13094
+ return {
13095
+ type: "message",
13096
+ messageType: "info",
13097
+ content: `${info.message}
13098
+ ${t("Downloading update...")}
13099
+ ${message}`
13100
+ };
13101
+ } catch (err) {
13102
+ const message = t("Update failed: {{error}}", {
13103
+ error: err instanceof Error ? err.message : String(err)
13104
+ });
13105
+ return {
13106
+ type: "message",
13107
+ messageType: "error",
13108
+ content: `${info.message}
13109
+ ${message}`
13110
+ };
13111
+ }
13112
+ }
13113
+ return manualInstructions();
13114
+ }, "action")
13115
+ };
13116
+
12824
13117
  // packages/cli/src/services/BuiltinCommandLoader.ts
12825
13118
  var builtinDebugLogger = createDebugLogger("BUILTIN_COMMAND_LOADER");
12826
13119
  var BuiltinCommandLoader = class {
@@ -12898,6 +13191,7 @@ var BuiltinCommandLoader = class {
12898
13191
  ...this.config?.getFolderTrust() ? [trustCommand] : [],
12899
13192
  quitCommand,
12900
13193
  recapCommand,
13194
+ reloadPluginsCommand,
12901
13195
  renameCommand,
12902
13196
  restoreCommand(this.config),
12903
13197
  resumeCommand,
@@ -12909,6 +13203,7 @@ var BuiltinCommandLoader = class {
12909
13203
  toolsCommand,
12910
13204
  settingsCommand,
12911
13205
  vimCommand,
13206
+ updateCommand,
12912
13207
  voiceCommand,
12913
13208
  setupGithubCommand,
12914
13209
  terminalSetupCommand,
@@ -12929,7 +13224,7 @@ var BuiltinCommandLoader = class {
12929
13224
  // packages/cli/src/services/BundledSkillLoader.ts
12930
13225
  init_esbuild_shims();
12931
13226
  import { dirname as dirname2 } from "node:path";
12932
- var debugLogger11 = createDebugLogger("BUNDLED_SKILL_LOADER");
13227
+ var debugLogger12 = createDebugLogger("BUNDLED_SKILL_LOADER");
12933
13228
  var BundledSkillLoader = class {
12934
13229
  constructor(config) {
12935
13230
  this.config = config;
@@ -12939,12 +13234,12 @@ var BundledSkillLoader = class {
12939
13234
  }
12940
13235
  async loadCommands(_signal) {
12941
13236
  if (this.config?.getBareMode?.()) {
12942
- debugLogger11.debug("Bare mode enabled, skipping bundled skills");
13237
+ debugLogger12.debug("Bare mode enabled, skipping bundled skills");
12943
13238
  return [];
12944
13239
  }
12945
13240
  const skillManager = this.config?.getSkillManager();
12946
13241
  if (!skillManager) {
12947
- debugLogger11.debug("SkillManager not available, skipping bundled skills");
13242
+ debugLogger12.debug("SkillManager not available, skipping bundled skills");
12948
13243
  return [];
12949
13244
  }
12950
13245
  try {
@@ -12952,7 +13247,7 @@ var BundledSkillLoader = class {
12952
13247
  const cronEnabled = this.config?.isCronEnabled() ?? false;
12953
13248
  const cronVisible = allSkills.filter((skill) => {
12954
13249
  if (!cronEnabled && skill.allowedTools?.some((t2) => t2.startsWith("cron_"))) {
12955
- debugLogger11.debug(
13250
+ debugLogger12.debug(
12956
13251
  `Hiding skill "${skill.name}" because cron is not enabled`
12957
13252
  );
12958
13253
  return false;
@@ -12963,7 +13258,7 @@ var BundledSkillLoader = class {
12963
13258
  const skills = cronVisible.filter(
12964
13259
  (skill) => !disabled.has(skill.name.toLowerCase())
12965
13260
  );
12966
- debugLogger11.debug(
13261
+ debugLogger12.debug(
12967
13262
  `Loaded ${skills.length} bundled skill(s) as slash commands; ${cronVisible.length - skills.length} hidden by skills.disabled`
12968
13263
  );
12969
13264
  return skills.map((skill) => ({
@@ -13014,7 +13309,7 @@ ${body}`;
13014
13309
  }, "action")
13015
13310
  }));
13016
13311
  } catch (error) {
13017
- debugLogger11.error("Failed to load bundled skills:", error);
13312
+ debugLogger12.error("Failed to load bundled skills:", error);
13018
13313
  return [];
13019
13314
  }
13020
13315
  }
@@ -13294,7 +13589,7 @@ var ShellProcessor = class {
13294
13589
 
13295
13590
  // packages/cli/src/services/prompt-processors/atFileProcessor.ts
13296
13591
  init_esbuild_shims();
13297
- var debugLogger12 = createDebugLogger("AT_FILE_PROCESSOR");
13592
+ var debugLogger13 = createDebugLogger("AT_FILE_PROCESSOR");
13298
13593
  var AtFileProcessor = class {
13299
13594
  constructor(commandName) {
13300
13595
  this.commandName = commandName;
@@ -13340,7 +13635,7 @@ var AtFileProcessor = class {
13340
13635
  } catch (error) {
13341
13636
  const message = error instanceof Error ? error.message : String(error);
13342
13637
  const uiMessage = `Failed to inject content for '@{${pathStr}}': ${message}`;
13343
- debugLogger12.error(
13638
+ debugLogger13.error(
13344
13639
  `[AtFileProcessor] ${uiMessage}. Leaving placeholder in prompt.`
13345
13640
  );
13346
13641
  context.ui.addItem(
@@ -13365,7 +13660,7 @@ var AtFileProcessor = class {
13365
13660
  };
13366
13661
 
13367
13662
  // packages/cli/src/services/command-factory.ts
13368
- var debugLogger13 = createDebugLogger("COMMAND_FACTORY");
13663
+ var debugLogger14 = createDebugLogger("COMMAND_FACTORY");
13369
13664
  function createSlashCommandFromDefinition(filePath, baseDir, definition, extensionName, fileExtension) {
13370
13665
  const relativePathWithExt = path16.relative(baseDir, filePath);
13371
13666
  const relativePath = relativePathWithExt.substring(
@@ -13409,7 +13704,7 @@ function createSlashCommandFromDefinition(filePath, baseDir, definition, extensi
13409
13704
  whenToUse: definition.whenToUse,
13410
13705
  action: /* @__PURE__ */ __name(async (context, _args) => {
13411
13706
  if (!context.invocation) {
13412
- debugLogger13.error(
13707
+ debugLogger14.error(
13413
13708
  `[FileCommandLoader] Critical error: Command '${baseCommandName}' was executed without invocation context.`
13414
13709
  );
13415
13710
  return {
@@ -13447,7 +13742,7 @@ function createSlashCommandFromDefinition(filePath, baseDir, definition, extensi
13447
13742
  __name(createSlashCommandFromDefinition, "createSlashCommandFromDefinition");
13448
13743
 
13449
13744
  // packages/cli/src/services/FileCommandLoader.ts
13450
- var debugLogger14 = createDebugLogger("FILE_COMMAND_LOADER");
13745
+ var debugLogger15 = createDebugLogger("FILE_COMMAND_LOADER");
13451
13746
  var TomlCommandDefSchema = external_exports.object({
13452
13747
  prompt: external_exports.string({
13453
13748
  required_error: "The 'prompt' field is required.",
@@ -13481,7 +13776,7 @@ var FileCommandLoader = class {
13481
13776
  */
13482
13777
  async loadCommands(signal) {
13483
13778
  if (this.config?.getBareMode?.()) {
13484
- debugLogger14.debug("Bare mode enabled, skipping auto-discovered commands");
13779
+ debugLogger15.debug("Bare mode enabled, skipping auto-discovered commands");
13485
13780
  return [];
13486
13781
  }
13487
13782
  const allCommands = [];
@@ -13525,7 +13820,7 @@ var FileCommandLoader = class {
13525
13820
  const isEnoent = error.code === "ENOENT";
13526
13821
  const isAbortError = error instanceof Error && error.name === "AbortError";
13527
13822
  if (!isEnoent && !isAbortError) {
13528
- debugLogger14.error(
13823
+ debugLogger15.error(
13529
13824
  `[FileCommandLoader] Error loading commands from ${dirInfo.path}:`,
13530
13825
  error
13531
13826
  );
@@ -13582,7 +13877,7 @@ var FileCommandLoader = class {
13582
13877
  }
13583
13878
  }
13584
13879
  } catch (error) {
13585
- debugLogger14.warn(
13880
+ debugLogger15.warn(
13586
13881
  `Failed to read extension config for ${ext.name}:`,
13587
13882
  error
13588
13883
  );
@@ -13608,7 +13903,7 @@ var FileCommandLoader = class {
13608
13903
  try {
13609
13904
  fileContent = await fs13.readFile(filePath, "utf-8");
13610
13905
  } catch (error) {
13611
- debugLogger14.error(
13906
+ debugLogger15.error(
13612
13907
  `[FileCommandLoader] Failed to read file ${filePath}:`,
13613
13908
  error instanceof Error ? error.message : String(error)
13614
13909
  );
@@ -13618,7 +13913,7 @@ var FileCommandLoader = class {
13618
13913
  try {
13619
13914
  parsed = import_toml.default.parse(fileContent);
13620
13915
  } catch (error) {
13621
- debugLogger14.error(
13916
+ debugLogger15.error(
13622
13917
  `[FileCommandLoader] Failed to parse TOML file ${filePath}:`,
13623
13918
  error instanceof Error ? error.message : String(error)
13624
13919
  );
@@ -13626,7 +13921,7 @@ var FileCommandLoader = class {
13626
13921
  }
13627
13922
  const validationResult = TomlCommandDefSchema.safeParse(parsed);
13628
13923
  if (!validationResult.success) {
13629
- debugLogger14.error(
13924
+ debugLogger15.error(
13630
13925
  `[FileCommandLoader] Skipping invalid command file: ${filePath}. Validation errors:`,
13631
13926
  validationResult.error.flatten()
13632
13927
  );
@@ -13653,7 +13948,7 @@ var FileCommandLoader = class {
13653
13948
  try {
13654
13949
  fileContent = await fs13.readFile(filePath, "utf-8");
13655
13950
  } catch (error) {
13656
- debugLogger14.error(
13951
+ debugLogger15.error(
13657
13952
  `[FileCommandLoader] Failed to read file ${filePath}:`,
13658
13953
  error instanceof Error ? error.message : String(error)
13659
13954
  );
@@ -13663,7 +13958,7 @@ var FileCommandLoader = class {
13663
13958
  try {
13664
13959
  parsed = parseMarkdownCommand(fileContent);
13665
13960
  } catch (error) {
13666
- debugLogger14.error(
13961
+ debugLogger15.error(
13667
13962
  `[FileCommandLoader] Failed to parse Markdown file ${filePath}:`,
13668
13963
  error instanceof Error ? error.message : String(error)
13669
13964
  );
@@ -13671,7 +13966,7 @@ var FileCommandLoader = class {
13671
13966
  }
13672
13967
  const validationResult = MarkdownCommandDefSchema.safeParse(parsed);
13673
13968
  if (!validationResult.success) {
13674
- debugLogger14.error(
13969
+ debugLogger15.error(
13675
13970
  `[FileCommandLoader] Skipping invalid command file: ${filePath}. Validation errors:`,
13676
13971
  validationResult.error.flatten()
13677
13972
  );
@@ -13697,7 +13992,7 @@ var FileCommandLoader = class {
13697
13992
 
13698
13993
  // packages/cli/src/services/saved-workflow-loader.ts
13699
13994
  init_esbuild_shims();
13700
- var debugLogger15 = createDebugLogger("SavedWorkflowLoader");
13995
+ var debugLogger16 = createDebugLogger("SavedWorkflowLoader");
13701
13996
  var SavedWorkflowLoader = class {
13702
13997
  constructor(config) {
13703
13998
  this.config = config;
@@ -13716,7 +14011,7 @@ var SavedWorkflowLoader = class {
13716
14011
  try {
13717
14012
  entries = await listSavedWorkflows(this.config);
13718
14013
  } catch (e) {
13719
- debugLogger15.debug(`listSavedWorkflows failed: ${e}`);
14014
+ debugLogger16.debug(`listSavedWorkflows failed: ${e}`);
13720
14015
  return [];
13721
14016
  }
13722
14017
  if (signal.aborted) return [];
@@ -13813,7 +14108,7 @@ var McpPromptLoader = class {
13813
14108
  return {
13814
14109
  type: "message",
13815
14110
  messageType: "info",
13816
- content: `Prompt "${prompt.name}" has no arguments.`
14111
+ content: `Prompt "${prompt.name}" has no declared arguments. Any text you provide will be forwarded as-is (e.g., /${prompt.name} some text sends { input: "some text" }).`
13817
14112
  };
13818
14113
  }
13819
14114
  let helpMessage = `Arguments for "${prompt.name}":
@@ -13980,7 +14275,12 @@ var McpPromptLoader = class {
13980
14275
  while ((match = positionalArgRegex.exec(positionalArgsString)) !== null) {
13981
14276
  positionalArgs.push((match[1] ?? match[2]).replace(/\\(.)/g, "$1"));
13982
14277
  }
13983
- if (!promptArgs) {
14278
+ if (!promptArgs || promptArgs.length === 0) {
14279
+ Object.assign(promptInputs, argValues);
14280
+ const positionalInput = positionalArgs.join(" ");
14281
+ if (positionalInput && !Object.hasOwn(argValues, "input")) {
14282
+ promptInputs["input"] = positionalInput;
14283
+ }
13984
14284
  return promptInputs;
13985
14285
  }
13986
14286
  for (const arg of promptArgs) {
@@ -14014,7 +14314,7 @@ var McpPromptLoader = class {
14014
14314
  // packages/cli/src/services/SkillCommandLoader.ts
14015
14315
  init_esbuild_shims();
14016
14316
  import { dirname as dirname3 } from "node:path";
14017
- var debugLogger16 = createDebugLogger("SKILL_COMMAND_LOADER");
14317
+ var debugLogger17 = createDebugLogger("SKILL_COMMAND_LOADER");
14018
14318
  var SkillCommandLoader = class {
14019
14319
  constructor(config) {
14020
14320
  this.config = config;
@@ -14024,12 +14324,12 @@ var SkillCommandLoader = class {
14024
14324
  }
14025
14325
  async loadCommands(_signal) {
14026
14326
  if (this.config?.getBareMode?.()) {
14027
- debugLogger16.debug("Bare mode enabled, skipping skill commands");
14327
+ debugLogger17.debug("Bare mode enabled, skipping skill commands");
14028
14328
  return [];
14029
14329
  }
14030
14330
  const skillManager = this.config?.getSkillManager();
14031
14331
  if (!skillManager) {
14032
- debugLogger16.debug("SkillManager not available, skipping skill commands");
14332
+ debugLogger17.debug("SkillManager not available, skipping skill commands");
14033
14333
  return [];
14034
14334
  }
14035
14335
  try {
@@ -14046,7 +14346,7 @@ var SkillCommandLoader = class {
14046
14346
  const nonUserInvocableCount = visibleSkills.filter(
14047
14347
  (skill) => skill.userInvocable === false
14048
14348
  ).length;
14049
- debugLogger16.debug(
14349
+ debugLogger17.debug(
14050
14350
  `Loaded ${userSkills.length} user + ${projectSkills.length} project + ${extensionSkills.length} extension skill(s) as slash commands; ${allSkills.length - visibleSkills.length} hidden by skills.disabled; ${nonUserInvocableCount} marked non-user-invocable`
14051
14351
  );
14052
14352
  return visibleSkills.map((skill) => {
@@ -14069,7 +14369,8 @@ var SkillCommandLoader = class {
14069
14369
  name: skill.name,
14070
14370
  description: skill.description,
14071
14371
  body: skill.body,
14072
- level: skill.level
14372
+ level: skill.level,
14373
+ ...isExtension && skill.extensionName ? { extensionName: skill.extensionName } : {}
14073
14374
  },
14074
14375
  action: /* @__PURE__ */ __name(async (context, _args) => {
14075
14376
  applySkillAllowedTools(
@@ -14089,7 +14390,7 @@ var SkillCommandLoader = class {
14089
14390
  };
14090
14391
  });
14091
14392
  } catch (error) {
14092
- debugLogger16.error("Failed to load skill commands:", error);
14393
+ debugLogger17.error("Failed to load skill commands:", error);
14093
14394
  return [];
14094
14395
  }
14095
14396
  }
@@ -14164,7 +14465,7 @@ function formatUserPromptExpansionBlockedMessage(reason) {
14164
14465
  __name(formatUserPromptExpansionBlockedMessage, "formatUserPromptExpansionBlockedMessage");
14165
14466
 
14166
14467
  // packages/cli/src/nonInteractiveCliCommands.ts
14167
- var debugLogger17 = createDebugLogger("NON_INTERACTIVE_COMMANDS");
14468
+ var debugLogger18 = createDebugLogger("NON_INTERACTIVE_COMMANDS");
14168
14469
  function getSkillCommandName(command) {
14169
14470
  return command.skillDetail?.name ?? command.name;
14170
14471
  }
@@ -14567,14 +14868,14 @@ var getAvailableCommands = /* @__PURE__ */ __name(async (config, abortSignal, mo
14567
14868
  );
14568
14869
  return commandService.getCommandsForMode(mode);
14569
14870
  } catch (error) {
14570
- debugLogger17.error("Error loading available commands:", error);
14871
+ debugLogger18.error("Error loading available commands:", error);
14571
14872
  return [];
14572
14873
  }
14573
14874
  }, "getAvailableCommands");
14574
14875
 
14575
14876
  // packages/cli/src/utils/nonInteractiveHelpers.ts
14576
14877
  init_esbuild_shims();
14577
- var debugLogger18 = createDebugLogger("NON_INTERACTIVE");
14878
+ var debugLogger19 = createDebugLogger("NON_INTERACTIVE");
14578
14879
  function normalizePartList(parts) {
14579
14880
  if (!parts) {
14580
14881
  return [];
@@ -14672,7 +14973,7 @@ async function loadSlashCommandNames(config) {
14672
14973
  );
14673
14974
  return commands.map((cmd) => cmd.name).sort();
14674
14975
  } catch (error) {
14675
- debugLogger18.error(
14976
+ debugLogger19.error(
14676
14977
  "[buildSystemMessage] Failed to load slash commands:",
14677
14978
  error
14678
14979
  );
@@ -14697,7 +14998,7 @@ async function buildSystemMessage(config, sessionId, permissionMode) {
14697
14998
  const subagents = await subagentManager.listSubagents();
14698
14999
  agentNames = subagents.map((subagent) => subagent.name);
14699
15000
  } catch (error) {
14700
- debugLogger18.error("[buildSystemMessage] Failed to load subagents:", error);
15001
+ debugLogger19.error("[buildSystemMessage] Failed to load subagents:", error);
14701
15002
  }
14702
15003
  const systemMessage = {
14703
15004
  type: "system",
@@ -14883,6 +15184,7 @@ export {
14883
15184
  createEmptyHookEventInfo,
14884
15185
  addConfigToMatcherGroup,
14885
15186
  getAllConfigs,
15187
+ refreshExtensionContentRuntime,
14886
15188
  BuiltinCommandLoader,
14887
15189
  BundledSkillLoader,
14888
15190
  FileCommandLoader,