@qwen-code/qwen-code 0.19.10 → 0.19.11-nightly.20260718.767a32484

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 (307) hide show
  1. package/bundled/qc-helper/docs/configuration/model-providers.md +11 -0
  2. package/bundled/qc-helper/docs/configuration/settings.md +15 -14
  3. package/bundled/qc-helper/docs/features/approval-mode.md +2 -2
  4. package/bundled/qc-helper/docs/features/channels/dingtalk.md +30 -0
  5. package/bundled/qc-helper/docs/features/channels/overview.md +66 -17
  6. package/bundled/qc-helper/docs/features/channels/wecom.md +8 -7
  7. package/bundled/qc-helper/docs/features/sandbox.md +2 -0
  8. package/bundled/qc-helper/docs/qwen-serve-deploy-local.md +42 -7
  9. package/bundled/qc-helper/docs/qwen-serve.md +77 -46
  10. package/bundled/qc-helper/docs/reference/keyboard-shortcuts.md +1 -1
  11. package/bundled/review/SKILL.md +163 -403
  12. package/chunks/{MaxSizedBox-67ODZ4SZ.js → MaxSizedBox-ZFHA4QEQ.js} +30 -30
  13. package/chunks/{StandaloneSessionPicker-SIPBQT5Z.js → StandaloneSessionPicker-YRWOQVQA.js} +44 -44
  14. package/chunks/{acpAgent-VPZJXLFX.js → acpAgent-U2P2IESZ.js} +1423 -487
  15. package/chunks/{agent-Z7NWL6XL.js → agent-GQXX6X5Y.js} +26 -26
  16. package/chunks/{agent-headless-73HZ6ROQ.js → agent-headless-3572NBCK.js} +26 -26
  17. package/chunks/{anthropicContentGenerator-56U3YCP2.js → anthropicContentGenerator-Y65DMM64.js} +103 -18
  18. package/chunks/{artifact-tool-BWZZJ42H.js → artifact-tool-WR7I2XON.js} +2 -2
  19. package/chunks/{askUserQuestion-WU3S5A5T.js → askUserQuestion-B4FUTPHD.js} +2 -44
  20. package/chunks/{bridge-XFKW6S7Q.js → bridge-N5RMGD7G.js} +31 -33
  21. package/chunks/{ca-C2JTT2N5.js → ca-M3GQQ26D.js} +7 -2
  22. package/chunks/channel-worker-group-HZVJKLGX.js +21 -0
  23. package/chunks/{channel-worker-manager-5RWKSGEU.js → channel-worker-manager-3WDK4HNS.js} +34 -10
  24. package/chunks/{channel-worker-supervisor-PCDAZN4D.js → channel-worker-supervisor-U2W6Q5F7.js} +6 -4
  25. package/chunks/{chunk-YYPXHMWO.js → chunk-2XRGFF5K.js} +6 -6
  26. package/chunks/{chunk-ZKMGAFYV.js → chunk-2YSZE74N.js} +2 -2
  27. package/chunks/{chunk-L5U3ELZX.js → chunk-335ECZTA.js} +1 -1
  28. package/chunks/{chunk-5EBKKSBX.js → chunk-336KPNNV.js} +2 -2
  29. package/chunks/{chunk-Q5GLXH5Q.js → chunk-3CL5SEDT.js} +6 -6
  30. package/chunks/{chunk-2FO5GFKZ.js → chunk-3DJY4IFO.js} +1 -1
  31. package/chunks/{chunk-CJFNEBYB.js → chunk-3NWYQ7FX.js} +2 -2
  32. package/chunks/{chunk-WIASPMLX.js → chunk-3X2CFOUM.js} +358 -298
  33. package/chunks/{chunk-K7CRWKOE.js → chunk-3YJZ6WNY.js} +5812 -4520
  34. package/chunks/{chunk-Y66VOBRP.js → chunk-4CA4WUMS.js} +2 -2
  35. package/chunks/{chunk-LQIDP6K5.js → chunk-4CHDYDG3.js} +1 -1
  36. package/chunks/{chunk-TISZXPAX.js → chunk-4HCYNDMG.js} +1 -1
  37. package/chunks/chunk-4JBTZBCW.js +140 -0
  38. package/chunks/{chunk-TV6K2FB4.js → chunk-4RPARQ5D.js} +2 -2
  39. package/chunks/{chunk-RCEEXIOO.js → chunk-4XCVGEEX.js} +3 -3
  40. package/chunks/{chunk-N6FXRR6P.js → chunk-57RWF6R7.js} +1 -1
  41. package/chunks/chunk-5O34IMY5.js +59 -0
  42. package/chunks/{chunk-5LROA5W4.js → chunk-5QRK2VZG.js} +8 -8
  43. package/chunks/{chunk-7L4XBYVW.js → chunk-632KROVU.js} +10 -3
  44. package/chunks/{chunk-65N2J6V2.js → chunk-64XGKNSI.js} +3 -3
  45. package/chunks/{chunk-P6LART6G.js → chunk-66IT3EY2.js} +1059 -129
  46. package/chunks/{chunk-FXMC7SL2.js → chunk-6ITLKEOZ.js} +3 -3
  47. package/chunks/{chunk-F7NXQH4Y.js → chunk-6YIRYY3P.js} +1 -1
  48. package/chunks/{chunk-GGJII3FM.js → chunk-6Z5NRZVU.js} +92 -3
  49. package/chunks/{chunk-DPFBNG72.js → chunk-AEKYFMYE.js} +1 -1
  50. package/chunks/{chunk-2UUAIFQO.js → chunk-ANRANWVE.js} +9 -1
  51. package/chunks/{chunk-SXU3KKNI.js → chunk-ATJ7H5AS.js} +419 -76
  52. package/chunks/{chunk-6GETGQWP.js → chunk-C5NSOSF4.js} +64 -18
  53. package/chunks/{chunk-TQBODCFD.js → chunk-CMVFTMRD.js} +251 -3
  54. package/chunks/{chunk-DK33QJ3V.js → chunk-CZSAIBUB.js} +733 -14
  55. package/chunks/{chunk-3MX7D6QN.js → chunk-DASWPKXR.js} +32 -4
  56. package/chunks/{chunk-JSJFKYWT.js → chunk-DPSHAB47.js} +2 -2
  57. package/chunks/{chunk-7MJAZMXK.js → chunk-ECZFTRTP.js} +29 -78
  58. package/chunks/{chunk-H3FQOPPS.js → chunk-EKG3BHQY.js} +4 -4
  59. package/chunks/{chunk-FSA7ERJ2.js → chunk-F2RR4HO2.js} +1 -1
  60. package/chunks/{chunk-EQY6POVO.js → chunk-F5XYN5VF.js} +2 -2
  61. package/chunks/chunk-FEOZBUMT.js +77 -0
  62. package/chunks/{chunk-L62SEJWY.js → chunk-FHUXCRAF.js} +4 -4
  63. package/chunks/{chunk-OFEVHGVU.js → chunk-FSJGBUQI.js} +818 -31
  64. package/chunks/{chunk-FBU7WRZI.js → chunk-FUTHTZVV.js} +1 -1
  65. package/chunks/{chunk-ZRKBI3DP.js → chunk-FZRES4GK.js} +1 -1
  66. package/chunks/{chunk-OKAIGAYW.js → chunk-G274ETR6.js} +3 -3
  67. package/chunks/{chunk-6GKMJPOC.js → chunk-GA3WUOO7.js} +5 -5
  68. package/chunks/{chunk-X362TMXZ.js → chunk-GAQOQMHY.js} +8 -6
  69. package/chunks/{chunk-WLXYAKV7.js → chunk-GG6RSNWS.js} +9 -4
  70. package/chunks/{chunk-CEW4HDPK.js → chunk-GUNTLALV.js} +2484 -362
  71. package/chunks/{chunk-LXLTBIDP.js → chunk-HCCR43AY.js} +1 -1
  72. package/chunks/{chunk-RDRVMDWV.js → chunk-HIMIG6PI.js} +11 -11
  73. package/chunks/{chunk-MO7O5722.js → chunk-HQXQCIT2.js} +45 -5
  74. package/chunks/{chunk-LTNI523B.js → chunk-HT7L5FCZ.js} +28 -5
  75. package/chunks/{chunk-7NAWTFVY.js → chunk-IENO2YAT.js} +3 -3
  76. package/chunks/{chunk-3XJFUTNM.js → chunk-IK5TYYVR.js} +59 -12
  77. package/chunks/{chunk-AAR5SGMD.js → chunk-IVKLDHU6.js} +7 -5
  78. package/chunks/{chunk-6W6DI34P.js → chunk-IX7O5WI3.js} +180 -8
  79. package/chunks/{chunk-SPJQO2CE.js → chunk-J2MKYJKZ.js} +2 -2
  80. package/chunks/{chunk-SPUYQB4T.js → chunk-JBAQ5BYX.js} +1 -1
  81. package/chunks/{chunk-TYLOFD2U.js → chunk-JCJPZMJV.js} +1 -1
  82. package/chunks/chunk-JDIUK2Y3.js +226 -0
  83. package/chunks/{chunk-L37RC7MQ.js → chunk-JUVTV4NF.js} +1 -1
  84. package/chunks/{chunk-WDWJ4OQJ.js → chunk-K2GBHL73.js} +4 -4
  85. package/chunks/{chunk-HHEFI4RP.js → chunk-KEVDWH3U.js} +857 -137
  86. package/chunks/{chunk-YU56QGXX.js → chunk-KTKETHMY.js} +1 -1
  87. package/chunks/{chunk-WDW64OW3.js → chunk-LGY7PG7Q.js} +5 -5
  88. package/chunks/{chunk-E67NFMF4.js → chunk-LKR7QQ63.js} +37 -3
  89. package/chunks/{chunk-4YWLED2A.js → chunk-LSFVUGXT.js} +9 -6
  90. package/chunks/{chunk-W34A5MJH.js → chunk-LTD3CHGS.js} +1 -1
  91. package/chunks/chunk-LXXMOYPL.js +22 -0
  92. package/chunks/{chunk-BBNVFRGD.js → chunk-MI2V6IWU.js} +1 -1
  93. package/chunks/{chunk-UFOKA4PR.js → chunk-O2K6BLPZ.js} +114 -4
  94. package/chunks/{chunk-B5I2IIWY.js → chunk-OBYAX5QZ.js} +6 -6
  95. package/chunks/{chunk-V7EQTZYR.js → chunk-OCQ2QTFJ.js} +203 -47
  96. package/chunks/{chunk-VBRRNQB7.js → chunk-OPVIKLKK.js} +112 -25
  97. package/chunks/{chunk-2Z5UX4KI.js → chunk-OSSDHJDU.js} +1 -1
  98. package/chunks/{chunk-TTUO4DNG.js → chunk-OXOEOOQU.js} +126 -734
  99. package/chunks/{chunk-4FMG7EDJ.js → chunk-PWYLF7SS.js} +79 -16
  100. package/chunks/chunk-QFEY6OXH.js +45 -0
  101. package/chunks/{chunk-YX4LLZ3D.js → chunk-QPRDXJIC.js} +115 -40
  102. package/chunks/{chunk-7R4DPSRA.js → chunk-R3VWUU2E.js} +1 -1
  103. package/chunks/{chunk-XLIRF7IK.js → chunk-S4N3G4BB.js} +1 -1
  104. package/chunks/{chunk-ARKANCNX.js → chunk-SGPFJMRP.js} +1 -1
  105. package/chunks/{chunk-WTSXKLG5.js → chunk-SUARMD4Q.js} +1 -1
  106. package/chunks/{chunk-PZL23GTM.js → chunk-T3W4SDRB.js} +2 -0
  107. package/chunks/chunk-T4TZQJ7W.js +48 -0
  108. package/chunks/{chunk-K4PZ5F5T.js → chunk-TVYM3Q3J.js} +101 -8
  109. package/chunks/{chunk-4LD5APFL.js → chunk-TYQMGACW.js} +1 -0
  110. package/chunks/{chunk-6OATMEYN.js → chunk-U2LNTX56.js} +12 -4
  111. package/chunks/{chunk-422XAKCK.js → chunk-U2XBPBO3.js} +4 -3
  112. package/chunks/{chunk-LNUXFLLJ.js → chunk-U4FJ26D2.js} +54 -6
  113. package/chunks/{chunk-ZQTZXVHP.js → chunk-U6OPT4H2.js} +4 -18
  114. package/chunks/{chunk-7NFB7LBQ.js → chunk-UE5TZ55T.js} +8 -0
  115. package/chunks/{chunk-CUUXANEQ.js → chunk-URP6O2PP.js} +6 -1
  116. package/chunks/{chunk-GDQQRV43.js → chunk-V2FRLYHN.js} +3 -3
  117. package/chunks/{chunk-WIEO4CWB.js → chunk-VAJS2E2D.js} +1 -1
  118. package/chunks/{chunk-TXY2C3D2.js → chunk-VNN3JNYT.js} +1 -1
  119. package/chunks/{chunk-YHN5SUIJ.js → chunk-W7H223ZZ.js} +1 -1
  120. package/chunks/{chunk-WX6SD4IQ.js → chunk-WEPXQKGP.js} +1 -1
  121. package/chunks/{chunk-KSO42X3Z.js → chunk-X6YQWCIJ.js} +21 -2
  122. package/chunks/{chunk-URU5UEK6.js → chunk-XA7OKDWM.js} +135 -68
  123. package/chunks/{chunk-Q6TUALBE.js → chunk-XAAEDML2.js} +1 -1
  124. package/chunks/{chunk-KKRTYONM.js → chunk-XSPFQQRE.js} +3 -3
  125. package/chunks/{chunk-OATTJGPJ.js → chunk-Y72B36CP.js} +7 -7
  126. package/chunks/{chunk-ZPAHLFZU.js → chunk-Z2LBNX3R.js} +2 -2
  127. package/chunks/{chunk-XXJKGHZV.js → chunk-ZTSDZQZO.js} +131 -4
  128. package/chunks/{computer-use-IYTX45WA.js → computer-use-UIFBH25Y.js} +26 -26
  129. package/chunks/{config-utils-CFT33LTP.js → config-utils-2LHI7JXU.js} +3 -3
  130. package/chunks/{contextCommand-272V77WU.js → contextCommand-VGZHKEH2.js} +28 -28
  131. package/chunks/{create-sub-session-WNX2OQVX.js → create-sub-session-DIJOV6HV.js} +2 -2
  132. package/chunks/{create-sub-session-CBJMQLYP.js → create-sub-session-OFVI4H6I.js} +26 -26
  133. package/chunks/{cron-create-36TIFKRT.js → cron-create-34GVLSW5.js} +4 -4
  134. package/chunks/{cron-delete-OQD3WULU.js → cron-delete-NMVKUL45.js} +4 -4
  135. package/chunks/{cron-list-4533T2FH.js → cron-list-277ZOR7L.js} +4 -4
  136. package/chunks/{daemon-RNGFPMAB.js → daemon-72MEV3TY.js} +361 -84
  137. package/chunks/daemon-status-provider-ZJJ6AOG2.js +75 -0
  138. package/chunks/{de-2VCDRDGU.js → de-56TMDIKS.js} +7 -2
  139. package/chunks/{dist-3V3ZV6ML.js → dist-4W3UGU2A.js} +1 -1
  140. package/chunks/{dist-HNN7DR2L.js → dist-G6QCGO2K.js} +58 -30
  141. package/chunks/{dist-ERCPDVA6.js → dist-ILVRL322.js} +4 -51
  142. package/chunks/{dist-PHEPJLXD.js → dist-KEZ5JWH4.js} +2 -2
  143. package/chunks/{dist-JZE7F6YR.js → dist-LQHDHBPP.js} +1 -1
  144. package/chunks/{dist-MOEC47TR.js → dist-SVHAGOLN.js} +1 -1
  145. package/chunks/{earlyInputCapture-EN4BRREQ.js → earlyInputCapture-NPF4PVUE.js} +27 -27
  146. package/chunks/{edit-OMAF2QDR.js → edit-F7CT6NZH.js} +27 -27
  147. package/chunks/{en-NJCA3TAA.js → en-AXS2N62H.js} +12 -3
  148. package/chunks/{enter-worktree-BBZX52HG.js → enter-worktree-Z4ET3MZL.js} +26 -26
  149. package/chunks/{enterPlanMode-5NNFMBUY.js → enterPlanMode-VYR7T5NX.js} +27 -29
  150. package/chunks/{environment-7TEWMJYN.js → environment-MBTXL57Q.js} +28 -28
  151. package/chunks/{errors-I4VKVX3F.js → errors-HN36J4FR.js} +28 -28
  152. package/chunks/{exit-worktree-FUWRJI33.js → exit-worktree-RU7JYFMF.js} +26 -26
  153. package/chunks/exitPlanMode-LUBAWMZQ.js +390 -0
  154. package/chunks/{fast-path-ZA57TOH4.js → fast-path-RFT3CDNZ.js} +2 -2
  155. package/chunks/{fr-5F3E7WKD.js → fr-ZJPE5OVN.js} +7 -2
  156. package/chunks/{gemini-UOAKVXBG.js → gemini-37NTNKZF.js} +215 -231
  157. package/chunks/{geminiContentGenerator-G6UCE6MW.js → geminiContentGenerator-76HNOYNQ.js} +5 -5
  158. package/chunks/{glob-4GJQ2UFF.js → glob-DWD7JCZE.js} +32 -27
  159. package/chunks/{grep-5QSYXF2E.js → grep-NJRXFV5C.js} +32 -27
  160. package/chunks/{handleAutoUpdate-ULHNWL6R.js → handleAutoUpdate-7GBDXW6U.js} +30 -30
  161. package/chunks/{i18n-CYDUTF6F.js → i18n-MYD5VGED.js} +27 -27
  162. package/chunks/{initializer-NRFKUGIO.js → initializer-4DHPNAZG.js} +32 -32
  163. package/chunks/{installationInfo-WELKRHHE.js → installationInfo-RWOW6BZO.js} +27 -27
  164. package/chunks/{ja-66J6B53L.js → ja-57GG4QSL.js} +7 -2
  165. package/chunks/{keychain-token-storage-AU22CQI6.js → keychain-token-storage-K23CFKGN.js} +2 -2
  166. package/chunks/{list-JVDXEG2E.js → list-MMCNNHE7.js} +34 -34
  167. package/chunks/{loadedSettingsAdapter-WAM4VUTG.js → loadedSettingsAdapter-UK4JWPYU.js} +31 -31
  168. package/chunks/{loop-wakeup-MVUKDVCP.js → loop-wakeup-KCLY4XQM.js} +5 -5
  169. package/chunks/{ls-RXNIAQDE.js → ls-UNI4LAJ3.js} +4 -4
  170. package/chunks/{lsp-HB5LM5IL.js → lsp-HPACPJAN.js} +2 -2
  171. package/chunks/{mcp-YHOZN3ZM.js → mcp-AFCVA4UV.js} +31 -31
  172. package/chunks/{monitor-R7XZPJHQ.js → monitor-RK637BNO.js} +28 -27
  173. package/chunks/nonInteractiveCli-OUGWLHNV.js +129 -0
  174. package/chunks/{notebook-edit-6RNKE2L2.js → notebook-edit-LY2X3CMF.js} +27 -27
  175. package/chunks/{openaiContentGenerator-XNS5S64I.js → openaiContentGenerator-MDYDW7IA.js} +14 -14
  176. package/chunks/{pidfile-XE4RRR2P.js → pidfile-2NUYRLKB.js} +27 -27
  177. package/chunks/processUtils-7QH3VBVN.js +29 -0
  178. package/chunks/{pt-TFZO5Y6T.js → pt-MCGZ3RZ4.js} +7 -2
  179. package/chunks/{qwenContentGenerator-APDPJ3VN.js → qwenContentGenerator-3HT4TVDL.js} +28 -28
  180. package/chunks/{qwenOAuth2-LEYOU7RU.js → qwenOAuth2-3A4TJVZT.js} +5 -5
  181. package/chunks/{read-file-XSUWXSR7.js → read-file-NE4FREFR.js} +10 -10
  182. package/chunks/{read-mcp-resource-6LRTZKXI.js → read-mcp-resource-C6NT52T6.js} +2 -2
  183. package/chunks/{record-artifact-PMDTY4OS.js → record-artifact-ENCU7QCL.js} +2 -2
  184. package/chunks/{ripGrep-APB3CDMU.js → ripGrep-DBLXWQCJ.js} +26 -26
  185. package/chunks/{ru-4L4LFHIT.js → ru-GA3NZW5Q.js} +7 -2
  186. package/chunks/{run-qwen-serve-NWTGPERT.js → run-qwen-serve-3NOCI6IL.js} +63 -39
  187. package/chunks/{runtime-EIO3NQKR.js → runtime-ZI7DSZSS.js} +35 -35
  188. package/chunks/{scheduler-JJDZBDRN.js → scheduler-SOVEP5K7.js} +26 -26
  189. package/chunks/{send-message-SR4WSXP2.js → send-message-5IFPZTPE.js} +3 -3
  190. package/chunks/{serve-WTIPB3EI.js → serve-DB6OCXIA.js} +31 -31
  191. package/chunks/{server-NJPHQHLH.js → server-LDY4YVU4.js} +2257 -648
  192. package/chunks/{session-O4AO7FTS.js → session-D6OG5SKX.js} +99 -72
  193. package/chunks/{settings-HQNDK7TG.js → settings-L52ZV5LO.js} +30 -30
  194. package/chunks/{shell-UIXM6PWG.js → shell-IU27OY3Q.js} +28 -26
  195. package/chunks/{skill-3XMB4ULV.js → skill-BSOJT7LE.js} +12 -12
  196. package/chunks/{spawnChannel-3R632QRM.js → spawnChannel-HQAM25DD.js} +28 -29
  197. package/chunks/{src-USZKPUOC.js → src-7ZBIMTJZ.js} +130 -51
  198. package/chunks/{standalone-update-L5XW3D7K.js → standalone-update-77457VVK.js} +28 -28
  199. package/chunks/{startInteractiveUI-CPZOL2WB.js → startInteractiveUI-S7WC6EZG.js} +2310 -1835
  200. package/chunks/{syntheticOutput-YKFNUQZD.js → syntheticOutput-ULOVVLY4.js} +3 -3
  201. package/chunks/{task-create-NUFOHU53.js → task-create-V2DCDSET.js} +7 -7
  202. package/chunks/{task-list-Z2IKQY3S.js → task-list-DPL5ZN55.js} +5 -5
  203. package/chunks/{task-stop-KQFIVQTJ.js → task-stop-CPEQWOT6.js} +2 -2
  204. package/chunks/{task-update-HKADXSTD.js → task-update-ZR45M5Q7.js} +7 -7
  205. package/chunks/{team-create-XXPRF3IQ.js → team-create-CO7HSUON.js} +26 -26
  206. package/chunks/{team-delete-SDNTGZLG.js → team-delete-HIWXCWJU.js} +5 -5
  207. package/chunks/{team-plan-approval-EOTTKHDW.js → team-plan-approval-QDZF5YZY.js} +26 -26
  208. package/chunks/{theme-manager-P6UITO2L.js → theme-manager-UTUT3I4P.js} +27 -27
  209. package/chunks/todoWrite-HK6B3RHJ.js +358 -0
  210. package/chunks/{tool-search-DDNGK2LR.js → tool-search-2UUORA35.js} +11 -11
  211. package/chunks/{total-session-admission-PL5N7DNY.js → total-session-admission-NTWG6G3F.js} +32 -34
  212. package/chunks/{trustedFolders-C5LMF3UR.js → trustedFolders-YF37ZCN5.js} +27 -27
  213. package/chunks/update-relaunch-QFNHPMZZ.js +87 -0
  214. package/chunks/{updateCheck-QTVVISH7.js → updateCheck-B6O42VMD.js} +30 -28
  215. package/chunks/{validateNonInterActiveAuth-RY4RKBQG.js → validateNonInterActiveAuth-SCIWJ4CX.js} +65 -65
  216. package/chunks/{version-U45RYOSD.js → version-7DA6LAI3.js} +1 -1
  217. package/chunks/{web-fetch-ZSPR3PRR.js → web-fetch-B62SJXM2.js} +5 -6
  218. package/chunks/{workflow-TCIAQYOA.js → workflow-Q5WG4THP.js} +27 -27
  219. package/chunks/{workspace-providers-status-I3G2HYLY.js → workspace-providers-status-WWLAGWQW.js} +34 -34
  220. package/chunks/{workspace-registration-store-IH5GLZ6Y.js → workspace-registration-store-BVYQVY2H.js} +1 -1
  221. package/chunks/{workspace-registry-QEKBELIX.js → workspace-registry-OD7ACADD.js} +32 -34
  222. package/chunks/{workspace-service-ORKHGLP3.js → workspace-service-4LYJWS63.js} +37 -38
  223. package/chunks/{workspace-skills-status-D7QCNDYY.js → workspace-skills-status-P2AQLZZS.js} +32 -32
  224. package/chunks/{write-file-JGRQR5VM.js → write-file-TEPGXNM3.js} +60 -27
  225. package/chunks/{zh-FSAH32JB.js → zh-E34DZ2S3.js} +12 -3
  226. package/chunks/{zh-TW-D2YIE2LO.js → zh-TW-PEI2ZWUR.js} +12 -3
  227. package/cli-entry.js +92 -8
  228. package/cli.js +11 -11
  229. package/locales/ca.js +12 -2
  230. package/locales/de.js +12 -2
  231. package/locales/en.js +20 -5
  232. package/locales/fr.js +12 -2
  233. package/locales/ja.js +12 -2
  234. package/locales/pt.js +12 -2
  235. package/locales/ru.js +12 -2
  236. package/locales/zh-TW.js +19 -3
  237. package/locales/zh.js +19 -3
  238. package/package.json +3 -3
  239. package/web-shell/assets/{arc-CUeDlxvE.js → arc-Dh-N5oEG.js} +1 -1
  240. package/web-shell/assets/{architectureDiagram-3BPJPVTR-PiUszkQA.js → architectureDiagram-3BPJPVTR-DBOQgtfF.js} +1 -1
  241. package/web-shell/assets/{blockDiagram-GPEHLZMM-s2wYSO7e.js → blockDiagram-GPEHLZMM-Dyxbuyju.js} +1 -1
  242. package/web-shell/assets/{c4Diagram-AAUBKEIU-DyLxZoz9.js → c4Diagram-AAUBKEIU-DCJR5HPT.js} +1 -1
  243. package/web-shell/assets/channel-DY0fkcKT.js +1 -0
  244. package/web-shell/assets/{chunk-2J33WTMH-Dsdai7Tk.js → chunk-2J33WTMH-BkMUcy3O.js} +1 -1
  245. package/web-shell/assets/{chunk-4BX2VUAB-DEosOjV7.js → chunk-4BX2VUAB-BSm4pLQk.js} +1 -1
  246. package/web-shell/assets/{chunk-55IACEB6-sNsRLTXf.js → chunk-55IACEB6-CuRr-XgW.js} +1 -1
  247. package/web-shell/assets/{chunk-727SXJPM-DkRNZzmh.js → chunk-727SXJPM-CLv7-w3t.js} +1 -1
  248. package/web-shell/assets/{chunk-AQP2D5EJ-BrsRNpzd.js → chunk-AQP2D5EJ-Cz_n3-JW.js} +1 -1
  249. package/web-shell/assets/{chunk-FMBD7UC4-CI039lpl.js → chunk-FMBD7UC4-CFT_62Hq.js} +1 -1
  250. package/web-shell/assets/{chunk-ND2GUHAM-M-pkeIfu.js → chunk-ND2GUHAM-DWz6DOZ6.js} +1 -1
  251. package/web-shell/assets/{chunk-QZHKN3VN-C4ckGNbH.js → chunk-QZHKN3VN-C-mRhUzw.js} +1 -1
  252. package/web-shell/assets/classDiagram-4FO5ZUOK-DBvJ6PZo.js +1 -0
  253. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-DBvJ6PZo.js +1 -0
  254. package/web-shell/assets/{cose-bilkent-S5V4N54A-BciKUAFq.js → cose-bilkent-S5V4N54A-BqCZS3i1.js} +1 -1
  255. package/web-shell/assets/{dagre-BM42HDAG-C1nTSgU6.js → dagre-BM42HDAG-BGasdP8i.js} +1 -1
  256. package/web-shell/assets/{diagram-2AECGRRQ-BDPNWr1m.js → diagram-2AECGRRQ-BSyLDkMy.js} +1 -1
  257. package/web-shell/assets/{diagram-5GNKFQAL-CNFhTszL.js → diagram-5GNKFQAL-CM-ZJxWC.js} +1 -1
  258. package/web-shell/assets/{diagram-KO2AKTUF-CjPa4p5a.js → diagram-KO2AKTUF-wJdzt_C5.js} +1 -1
  259. package/web-shell/assets/{diagram-LMA3HP47-ZzPykSyG.js → diagram-LMA3HP47-DiH2fhpL.js} +1 -1
  260. package/web-shell/assets/{diagram-OG6HWLK6-0UVtZ9A4.js → diagram-OG6HWLK6-BZ9z1ZBl.js} +1 -1
  261. package/web-shell/assets/{erDiagram-TEJ5UH35-CajDZCat.js → erDiagram-TEJ5UH35-BsyWDziR.js} +1 -1
  262. package/web-shell/assets/{flowDiagram-I6XJVG4X-BRuFBIvL.js → flowDiagram-I6XJVG4X-CzdkxIrq.js} +1 -1
  263. package/web-shell/assets/{ganttDiagram-6RSMTGT7-BevGmJqG.js → ganttDiagram-6RSMTGT7-javIv2r2.js} +1 -1
  264. package/web-shell/assets/{gitGraphDiagram-PVQCEYII-DvPMpBMb.js → gitGraphDiagram-PVQCEYII-CjHstylC.js} +1 -1
  265. package/web-shell/assets/{index-DzHwQkQq.js → index-BnJGxpah.js} +1 -1
  266. package/web-shell/assets/index-DhXB9nTa.js +1161 -0
  267. package/web-shell/assets/index-vYHgZ7bL.css +5 -0
  268. package/web-shell/assets/{infoDiagram-5YYISTIA-Oixn7tA9.js → infoDiagram-5YYISTIA-yXuQsomo.js} +1 -1
  269. package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-BgKpeg-j.js → ishikawaDiagram-YF4QCWOH-a85JhE6F.js} +1 -1
  270. package/web-shell/assets/{journeyDiagram-JHISSGLW-74mwxIaA.js → journeyDiagram-JHISSGLW-Dak_4BVj.js} +1 -1
  271. package/web-shell/assets/{kanban-definition-UN3LZRKU-D4D6cEqA.js → kanban-definition-UN3LZRKU-COA-LuCV.js} +1 -1
  272. package/web-shell/assets/{linear-atZRE_L2.js → linear-DNAAAQWq.js} +1 -1
  273. package/web-shell/assets/{mermaid.core-KKudX-JC.js → mermaid.core-7Ff3aIUD.js} +5 -5
  274. package/web-shell/assets/{mindmap-definition-RKZ34NQL-CMCej9yG.js → mindmap-definition-RKZ34NQL-_rCOIODU.js} +1 -1
  275. package/web-shell/assets/{pieDiagram-4H26LBE5-nhx40X7q.js → pieDiagram-4H26LBE5-C9QCQ8EW.js} +1 -1
  276. package/web-shell/assets/{quadrantDiagram-W4KKPZXB-CUmVcN3M.js → quadrantDiagram-W4KKPZXB-CsaE4FA8.js} +1 -1
  277. package/web-shell/assets/{requirementDiagram-4Y6WPE33-C_vyEwyy.js → requirementDiagram-4Y6WPE33-tV78naTg.js} +1 -1
  278. package/web-shell/assets/{sankeyDiagram-5OEKKPKP-DU6G4VWR.js → sankeyDiagram-5OEKKPKP-Dk3Rw7BZ.js} +1 -1
  279. package/web-shell/assets/{sequenceDiagram-3UESZ5HK-DdeRR_KJ.js → sequenceDiagram-3UESZ5HK-BGsAWcMX.js} +1 -1
  280. package/web-shell/assets/{stateDiagram-AJRCARHV-C6iCI8ps.js → stateDiagram-AJRCARHV-zSxdtdoB.js} +1 -1
  281. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-vLEEtDpO.js +1 -0
  282. package/web-shell/assets/{timeline-definition-PNZ67QCA-B_Ea8Cb7.js → timeline-definition-PNZ67QCA-j0BQh9Go.js} +1 -1
  283. package/web-shell/assets/{vennDiagram-CIIHVFJN-BPUVZEJA.js → vennDiagram-CIIHVFJN-CRaUFFIu.js} +1 -1
  284. package/web-shell/assets/{wardley-L42UT6IY-BWEj0lKY.js → wardley-L42UT6IY-D7Py_ofm.js} +1 -1
  285. package/web-shell/assets/{wardleyDiagram-YWT4CUSO-BvDsdIQw.js → wardleyDiagram-YWT4CUSO-BrDIAZcp.js} +1 -1
  286. package/web-shell/assets/{xychartDiagram-2RQKCTM6-crz0QhF_.js → xychartDiagram-2RQKCTM6-Cecdw-w2.js} +1 -1
  287. package/web-shell/index.html +2 -2
  288. package/chunks/channel-worker-group-K7QKH6IG.js +0 -13
  289. package/chunks/chunk-2HRYPZT5.js +0 -25
  290. package/chunks/chunk-B7NUUEXC.js +0 -311
  291. package/chunks/chunk-CARU2RR2.js +0 -24
  292. package/chunks/chunk-GYTKQYDB.js +0 -23
  293. package/chunks/chunk-LQU7EVFA.js +0 -30
  294. package/chunks/chunk-OCPBI7J5.js +0 -18
  295. package/chunks/chunk-OJAMDVF5.js +0 -66
  296. package/chunks/chunk-QAW7PIHT.js +0 -168
  297. package/chunks/chunk-TEGEBB2I.js +0 -122
  298. package/chunks/daemon-status-provider-L4STG5VO.js +0 -76
  299. package/chunks/exitPlanMode-IHCJ5EEI.js +0 -909
  300. package/chunks/nonInteractiveCli-NSOB6D74.js +0 -129
  301. package/chunks/todoWrite-YNXB27GB.js +0 -531
  302. package/web-shell/assets/channel-DkuJJ0qd.js +0 -1
  303. package/web-shell/assets/classDiagram-4FO5ZUOK-CwqHc0TB.js +0 -1
  304. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-CwqHc0TB.js +0 -1
  305. package/web-shell/assets/index-Cnvv4VcI.css +0 -5
  306. package/web-shell/assets/index-D1Uyklxa.js +0 -1088
  307. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-C0_6nR6C.js +0 -1
@@ -3,7 +3,10 @@
3
3
  import {
4
4
  formatHistoryGapNotice,
5
5
  indexGapsByChild
6
- } from "./chunk-SPUYQB4T.js";
6
+ } from "./chunk-JBAQ5BYX.js";
7
+ import {
8
+ sanitizeTerminalText
9
+ } from "./chunk-SUARMD4Q.js";
7
10
  import {
8
11
  require_undici
9
12
  } from "./chunk-L573Z2QZ.js";
@@ -12,16 +15,18 @@ import {
12
15
  } from "./chunk-YUZI3WAC.js";
13
16
  import {
14
17
  getActiveGoal
15
- } from "./chunk-K7CRWKOE.js";
18
+ } from "./chunk-3YJZ6WNY.js";
16
19
  import {
17
- apiActivityTracker
18
- } from "./chunk-P6LART6G.js";
20
+ apiActivityTracker,
21
+ formatVisionBridgeNoticeDisplay,
22
+ isVisionBridgeNoticeDisplay
23
+ } from "./chunk-66IT3EY2.js";
19
24
  import {
20
25
  ToolNames
21
- } from "./chunk-2UUAIFQO.js";
26
+ } from "./chunk-ANRANWVE.js";
22
27
  import {
23
28
  createDebugLogger
24
- } from "./chunk-7NFB7LBQ.js";
29
+ } from "./chunk-UE5TZ55T.js";
25
30
  import {
26
31
  init_esbuild_shims
27
32
  } from "./chunk-5O2XNYP6.js";
@@ -826,6 +831,7 @@ var ToolCallEmitter = class _ToolCallEmitter extends BaseEmitter {
826
831
  __name(this, "ToolCallEmitter");
827
832
  }
828
833
  planEmitter;
834
+ preparedCallIds = /* @__PURE__ */ new Set();
829
835
  constructor(ctx) {
830
836
  super(ctx);
831
837
  this.planEmitter = new PlanEmitter(ctx);
@@ -840,6 +846,9 @@ var ToolCallEmitter = class _ToolCallEmitter extends BaseEmitter {
840
846
  if (this.isTodoWriteTool(params.toolName)) {
841
847
  return false;
842
848
  }
849
+ if (params.phase === "preparing" && this.preparedCallIds.has(params.callId)) {
850
+ return false;
851
+ }
843
852
  const { title, locations, kind } = this.resolveToolMetadata(
844
853
  params.toolName,
845
854
  params.args
@@ -848,8 +857,8 @@ var ToolCallEmitter = class _ToolCallEmitter extends BaseEmitter {
848
857
  params.toolName,
849
858
  params.subagentMeta
850
859
  );
851
- await this.sendUpdate({
852
- sessionUpdate: "tool_call",
860
+ const updatesPreparedCall = params.phase !== "preparing" && this.preparedCallIds.delete(params.callId);
861
+ const update = {
853
862
  toolCallId: params.callId,
854
863
  status: params.status || "pending",
855
864
  title,
@@ -859,6 +868,7 @@ var ToolCallEmitter = class _ToolCallEmitter extends BaseEmitter {
859
868
  rawInput: params.args ?? {},
860
869
  _meta: {
861
870
  toolName: params.toolName,
871
+ ...params.phase ? { phase: params.phase } : {},
862
872
  ...params.subagentMeta,
863
873
  provenance: provenance.provenance,
864
874
  ...provenance.serverId ? { serverId: provenance.serverId } : {},
@@ -866,9 +876,40 @@ var ToolCallEmitter = class _ToolCallEmitter extends BaseEmitter {
866
876
  timestamp: BaseEmitter.toEpochMs(params.timestamp)
867
877
  }
868
878
  }
869
- });
879
+ };
880
+ await this.sendUpdate(
881
+ updatesPreparedCall ? { sessionUpdate: "tool_call_update", ...update } : { sessionUpdate: "tool_call", ...update }
882
+ );
883
+ if (params.phase === "preparing") {
884
+ this.preparedCallIds.add(params.callId);
885
+ }
870
886
  return true;
871
887
  }
888
+ /**
889
+ * Emits a terminal frame when a prepared tool call is discarded before
890
+ * execution. TodoWrite remains represented exclusively by plan updates.
891
+ *
892
+ * @param callId - ID of the prepared tool call
893
+ * @param toolName - Name of the prepared tool
894
+ */
895
+ async emitPreparationDiscarded(callId, toolName) {
896
+ if (this.isTodoWriteTool(toolName)) return;
897
+ this.preparedCallIds.delete(callId);
898
+ const provenance = _ToolCallEmitter.resolveToolProvenance(toolName);
899
+ await this.sendUpdate({
900
+ sessionUpdate: "tool_call_update",
901
+ toolCallId: callId,
902
+ status: "failed",
903
+ content: [],
904
+ _meta: {
905
+ toolName,
906
+ phase: "preparing",
907
+ preparationDiscarded: true,
908
+ provenance: provenance.provenance,
909
+ ...provenance.serverId ? { serverId: provenance.serverId } : {}
910
+ }
911
+ });
912
+ }
872
913
  /**
873
914
  * Emits a tool call result event.
874
915
  * Handles TodoWriteTool specially by routing to plan updates.
@@ -888,6 +929,7 @@ var ToolCallEmitter = class _ToolCallEmitter extends BaseEmitter {
888
929
  }
889
930
  return;
890
931
  }
932
+ this.preparedCallIds.delete(params.callId);
891
933
  let contentArray = [];
892
934
  const diffContent = this.extractDiffContent(params.resultDisplay);
893
935
  if (diffContent) {
@@ -902,6 +944,17 @@ var ToolCallEmitter = class _ToolCallEmitter extends BaseEmitter {
902
944
  } else {
903
945
  contentArray = this.transformPartsToToolCallContent(params.message);
904
946
  }
947
+ if (isVisionBridgeNoticeDisplay(params.resultDisplay)) {
948
+ contentArray.unshift({
949
+ type: "content",
950
+ content: {
951
+ type: "text",
952
+ text: sanitizeTerminalText(
953
+ formatVisionBridgeNoticeDisplay(params.resultDisplay)
954
+ )
955
+ }
956
+ });
957
+ }
905
958
  const provenance = _ToolCallEmitter.resolveToolProvenance(
906
959
  params.toolName,
907
960
  params.subagentMeta
@@ -937,6 +990,7 @@ var ToolCallEmitter = class _ToolCallEmitter extends BaseEmitter {
937
990
  * @param subagentMeta - Optional subagent metadata
938
991
  */
939
992
  async emitError(callId, toolName, error, subagentMeta) {
993
+ this.preparedCallIds.delete(callId);
940
994
  const provenance = _ToolCallEmitter.resolveToolProvenance(
941
995
  toolName,
942
996
  subagentMeta
@@ -1384,7 +1438,7 @@ var HistoryReplayer = class {
1384
1438
  await this.toolCallEmitter.emitResult({
1385
1439
  toolName,
1386
1440
  callId,
1387
- success: !result?.error,
1441
+ success: result?.status === void 0 ? !result?.error : result.status === "success" && !result.error,
1388
1442
  message: record.message.parts,
1389
1443
  resultDisplay: result?.resultDisplay,
1390
1444
  artifacts: result?.artifacts,
@@ -1485,10 +1539,7 @@ var HistoryReplayer = class {
1485
1539
  return "";
1486
1540
  }
1487
1541
  setActiveRecordId(recordId, timestamp) {
1488
- const context = this.ctx;
1489
- if (typeof context.setActiveRecordId === "function") {
1490
- context.setActiveRecordId(recordId, timestamp);
1491
- }
1542
+ this.ctx.setActiveRecordId?.(recordId, timestamp);
1492
1543
  }
1493
1544
  };
1494
1545
 
@@ -1681,7 +1732,7 @@ async function extractMetadata(conversation, config) {
1681
1732
  const gitBranch = firstRecord?.gitBranch;
1682
1733
  let gitRepo;
1683
1734
  if (cwd) {
1684
- const { getGitRepoName } = await import("./src-USZKPUOC.js");
1735
+ const { getGitRepoName } = await import("./src-7ZBIMTJZ.js");
1685
1736
  gitRepo = getGitRepoName(cwd);
1686
1737
  }
1687
1738
  let model;
@@ -1996,7 +2047,19 @@ function buildToolCallMessageFromResult(record, config) {
1996
2047
  const rawInput = normalizeRawInput(
1997
2048
  functionCallArgs ?? toolCallResult?.args
1998
2049
  );
1999
- const content = extractDiffContent(toolCallResult?.resultDisplay) ?? transformPartsToToolCallContent(record.message?.parts ?? []);
2050
+ const resultContent = extractDiffContent(toolCallResult?.resultDisplay) ?? transformPartsToToolCallContent(record.message?.parts ?? []);
2051
+ const content = isVisionBridgeNoticeDisplay(toolCallResult?.resultDisplay) ? [
2052
+ {
2053
+ type: "content",
2054
+ content: {
2055
+ type: "text",
2056
+ text: sanitizeTerminalText(
2057
+ formatVisionBridgeNoticeDisplay(toolCallResult.resultDisplay)
2058
+ )
2059
+ }
2060
+ },
2061
+ ...resultContent
2062
+ ] : resultContent;
2000
2063
  return {
2001
2064
  uuid: record.uuid,
2002
2065
  parentUuid: record.parentUuid,
@@ -0,0 +1,45 @@
1
+ // Force strict mode and setup for ESM
2
+ "use strict";
3
+ import {
4
+ scanForSecrets
5
+ } from "./chunk-3YJZ6WNY.js";
6
+ import {
7
+ isTeamAutoMemPath
8
+ } from "./chunk-FUTHTZVV.js";
9
+ import {
10
+ createDebugLogger
11
+ } from "./chunk-UE5TZ55T.js";
12
+ import {
13
+ init_esbuild_shims
14
+ } from "./chunk-5O2XNYP6.js";
15
+ import {
16
+ __name
17
+ } from "./chunk-J2S4EL5Y.js";
18
+
19
+ // packages/core/src/memory/team-memory-secret-guard.ts
20
+ init_esbuild_shims();
21
+ var debugLogger = createDebugLogger("TEAM_MEMORY_SECRET_GUARD");
22
+ function checkTeamMemorySecrets(filePath, content, projectRoot) {
23
+ if (!isTeamAutoMemPath(filePath, projectRoot)) {
24
+ return null;
25
+ }
26
+ const matches = scanForSecrets(content);
27
+ if (matches.length === 0) {
28
+ return null;
29
+ }
30
+ debugLogger.debug(
31
+ `Blocked team-memory write; matched rules: ${matches.map((m) => m.ruleId).join(", ")}`
32
+ );
33
+ const labels = matches.map((m) => m.label).join(", ");
34
+ return `Content contains potential secrets (${labels}) and cannot be written to team memory. Team memory is shared with all repository collaborators. Remove the sensitive content and try again.`;
35
+ }
36
+ __name(checkTeamMemorySecrets, "checkTeamMemorySecrets");
37
+
38
+ export {
39
+ checkTeamMemorySecrets
40
+ };
41
+ /**
42
+ * @license
43
+ * Copyright 2025 Google LLC
44
+ * SPDX-License-Identifier: Apache-2.0
45
+ */
@@ -1,5 +1,8 @@
1
1
  // Force strict mode and setup for ESM
2
2
  "use strict";
3
+ import {
4
+ contextCommand
5
+ } from "./chunk-OBYAX5QZ.js";
3
6
  import {
4
7
  ExtensionRefreshState,
5
8
  clearSkillArgs,
@@ -9,7 +12,7 @@ import {
9
12
  staleArgsWarning,
10
13
  validateAuthMethod,
11
14
  writeSkillArgs
12
- } from "./chunk-CEW4HDPK.js";
15
+ } from "./chunk-GUNTLALV.js";
13
16
  import {
14
17
  VSCODE_SHIFT_ENTER_SEQUENCE,
15
18
  calculateCost,
@@ -21,16 +24,13 @@ import {
21
24
  levelLabel,
22
25
  useKeypress,
23
26
  writeOsc52
24
- } from "./chunk-DK33QJ3V.js";
27
+ } from "./chunk-CZSAIBUB.js";
25
28
  import {
26
29
  Text
27
- } from "./chunk-K4PZ5F5T.js";
30
+ } from "./chunk-TVYM3Q3J.js";
28
31
  import {
29
32
  isKittyProtocolEnabled
30
33
  } from "./chunk-5DTTYNB7.js";
31
- import {
32
- contextCommand
33
- } from "./chunk-B5I2IIWY.js";
34
34
  import {
35
35
  isTerminalGoalStatusKind
36
36
  } from "./chunk-7X7TEQNX.js";
@@ -39,13 +39,13 @@ import {
39
39
  } from "./chunk-HTHUX2T5.js";
40
40
  import {
41
41
  getInstallationInfo
42
- } from "./chunk-EQY6POVO.js";
42
+ } from "./chunk-F5XYN5VF.js";
43
43
  import {
44
44
  rollbackStandaloneUpdate
45
- } from "./chunk-7L4XBYVW.js";
45
+ } from "./chunk-632KROVU.js";
46
46
  import {
47
47
  themeManager
48
- } from "./chunk-Q6TUALBE.js";
48
+ } from "./chunk-XAAEDML2.js";
49
49
  import {
50
50
  GITHUB_WORKFLOW_PATHS,
51
51
  INSIGHT_CSS,
@@ -58,19 +58,19 @@ import {
58
58
  toJson,
59
59
  toJsonl,
60
60
  toMarkdown
61
- } from "./chunk-4FMG7EDJ.js";
61
+ } from "./chunk-PWYLF7SS.js";
62
62
  import {
63
63
  stripUnsafeCharacters,
64
64
  toCodePoints
65
- } from "./chunk-WTSXKLG5.js";
65
+ } from "./chunk-SUARMD4Q.js";
66
66
  import {
67
67
  getErrorMessage as getErrorMessage2
68
- } from "./chunk-65N2J6V2.js";
68
+ } from "./chunk-64XGKNSI.js";
69
69
  import {
70
70
  getExtendedSystemInfo,
71
71
  getGitVersion,
72
72
  getNpmVersion
73
- } from "./chunk-WDWJ4OQJ.js";
73
+ } from "./chunk-K2GBHL73.js";
74
74
  import {
75
75
  formatDuration,
76
76
  formatMemoryUsage,
@@ -79,7 +79,7 @@ import {
79
79
  import {
80
80
  isInlineModelOverrideAllowed,
81
81
  parseAcpModelOption
82
- } from "./chunk-GGJII3FM.js";
82
+ } from "./chunk-6Z5NRZVU.js";
83
83
  import {
84
84
  formatUnsupportedVoiceModelMessage,
85
85
  getVoiceSettingsScope,
@@ -87,7 +87,7 @@ import {
87
87
  isVoiceEnabled,
88
88
  readVoiceMode,
89
89
  readVoiceModel
90
- } from "./chunk-DPFBNG72.js";
90
+ } from "./chunk-AEKYFMYE.js";
91
91
  import {
92
92
  OUTPUT_LANGUAGE_AUTO,
93
93
  getAllSettingKeys,
@@ -99,7 +99,7 @@ import {
99
99
  resolveOutputLanguage,
100
100
  validateSettingValue,
101
101
  writeOutputLanguageAndRegisterPath
102
- } from "./chunk-6GETGQWP.js";
102
+ } from "./chunk-C5NSOSF4.js";
103
103
  import {
104
104
  SUPPORTED_LANGUAGES,
105
105
  getCurrentLanguage,
@@ -107,11 +107,11 @@ import {
107
107
  resolveSupportedLanguage,
108
108
  setLanguageAsync,
109
109
  t
110
- } from "./chunk-RDRVMDWV.js";
110
+ } from "./chunk-HIMIG6PI.js";
111
111
  import {
112
112
  isFolderTrustEnabled,
113
113
  loadTrustedFolders
114
- } from "./chunk-4YWLED2A.js";
114
+ } from "./chunk-LSFVUGXT.js";
115
115
  import {
116
116
  require_strip_json_comments
117
117
  } from "./chunk-ALGGS7UH.js";
@@ -132,6 +132,7 @@ import {
132
132
  buildBareRememberPrompt,
133
133
  buildBtwCacheSafeParams,
134
134
  buildBtwPrompt,
135
+ buildLearnSkillPrompt,
135
136
  buildManagedRememberPrompt,
136
137
  canUseRipgrep,
137
138
  checkArgumentSafety,
@@ -159,7 +160,6 @@ import {
159
160
  hookEventSupportsMatcher,
160
161
  ideContextStore,
161
162
  isExtensionCommittedWithWarningsError,
162
- isImageCapable,
163
163
  isSuccessStatus,
164
164
  isTerminalStatus,
165
165
  listSavedWorkflows,
@@ -184,44 +184,46 @@ import {
184
184
  stripStartupContext,
185
185
  tryGenerateSessionTitle,
186
186
  unregisterGoalHook
187
- } from "./chunk-K7CRWKOE.js";
187
+ } from "./chunk-3YJZ6WNY.js";
188
188
  import {
189
189
  external_exports
190
190
  } from "./chunk-H6XPXXMH.js";
191
- import {
192
- runSideQuery
193
- } from "./chunk-6OATMEYN.js";
194
191
  import {
195
192
  APPROVAL_MODES,
196
193
  FORK_SUBAGENT_TYPE
197
- } from "./chunk-TXY2C3D2.js";
194
+ } from "./chunk-VNN3JNYT.js";
198
195
  import {
199
196
  applySkillAllowedTools,
200
197
  buildSkillLlmContent
201
- } from "./chunk-2Z5UX4KI.js";
198
+ } from "./chunk-OSSDHJDU.js";
202
199
  import {
203
200
  HookEventName,
204
201
  sanitizeUserPromptExpansionAdditionalContext
205
- } from "./chunk-ARKANCNX.js";
202
+ } from "./chunk-SGPFJMRP.js";
206
203
  import {
207
204
  IdeConnectionEvent,
208
205
  formatTokenUsageSummaryAsCsv,
209
206
  formatTokenUsageSummaryAsJson,
210
207
  getCurrentGeminiMdFilename,
211
208
  getMCPServerStatus,
209
+ isImageCapable,
212
210
  logIdeConnection,
213
211
  queryTokenUsage,
214
212
  read,
215
213
  recordSkillInvocation,
216
214
  resolveOpenAILogDir,
217
215
  uiTelemetryService
218
- } from "./chunk-P6LART6G.js";
216
+ } from "./chunk-66IT3EY2.js";
217
+ import {
218
+ runSideQuery
219
+ } from "./chunk-U2LNTX56.js";
219
220
  import {
220
221
  getAutoMemoryRoot
221
- } from "./chunk-FBU7WRZI.js";
222
+ } from "./chunk-FUTHTZVV.js";
222
223
  import {
223
- ToolNames
224
- } from "./chunk-2UUAIFQO.js";
224
+ ToolNames,
225
+ isShellProgressData
226
+ } from "./chunk-ANRANWVE.js";
225
227
  import {
226
228
  openBrowserSecurely
227
229
  } from "./chunk-JESCGQM3.js";
@@ -237,12 +239,12 @@ import {
237
239
  isSubpath,
238
240
  resolvePath,
239
241
  updateSymlink
240
- } from "./chunk-7NFB7LBQ.js";
242
+ } from "./chunk-UE5TZ55T.js";
241
243
  import {
242
244
  isCpuProfileRecording,
243
245
  startCpuProfile,
244
246
  stopCpuProfile
245
- } from "./chunk-XLIRF7IK.js";
247
+ } from "./chunk-S4N3G4BB.js";
246
248
  import {
247
249
  init_esbuild_shims
248
250
  } from "./chunk-5O2XNYP6.js";
@@ -12978,6 +12980,45 @@ var insightCommand = {
12978
12980
  }, "action")
12979
12981
  };
12980
12982
 
12983
+ // packages/cli/src/ui/commands/learn-command.ts
12984
+ init_esbuild_shims();
12985
+ var learnCommand = {
12986
+ name: "learn",
12987
+ get description() {
12988
+ return t(
12989
+ "Create a reusable skill from a knowledge source (file, URL, conversation, or text)."
12990
+ );
12991
+ },
12992
+ kind: "built-in" /* BUILT_IN */,
12993
+ supportedModes: ["interactive", "acp"],
12994
+ argumentHint: "<path|URL|text>",
12995
+ action: /* @__PURE__ */ __name(async (context, args) => {
12996
+ const rawInput = args.trim();
12997
+ if (!rawInput) {
12998
+ return {
12999
+ type: "message",
13000
+ messageType: "error",
13001
+ content: t(
13002
+ "Usage: /learn <path|URL|text>\nExamples:\n /learn https://docs.example.com/api\n /learn ~/projects/acme-sdk\n /learn Our deploy process: ssh to prod, run migrate, restart"
13003
+ )
13004
+ };
13005
+ }
13006
+ const config = context.services.config;
13007
+ if (!config) {
13008
+ return {
13009
+ type: "message",
13010
+ messageType: "error",
13011
+ content: t("Config not loaded.")
13012
+ };
13013
+ }
13014
+ const projectRoot = config.getProjectRoot();
13015
+ return {
13016
+ type: "submit_prompt",
13017
+ content: await buildLearnSkillPrompt(rawInput, projectRoot)
13018
+ };
13019
+ }, "action")
13020
+ };
13021
+
12981
13022
  // packages/cli/src/ui/commands/statuslineCommand.ts
12982
13023
  init_esbuild_shims();
12983
13024
  var statuslineCommand = {
@@ -13100,14 +13141,18 @@ var updateCommand = {
13100
13141
  action: /* @__PURE__ */ __name(async (context) => {
13101
13142
  const [
13102
13143
  { checkForUpdatesDetailed },
13103
- { handleAutoUpdate },
13144
+ {
13145
+ CUSTOM_SANDBOX_IMAGE_ENV_VAR,
13146
+ HOST_UPDATE_RELAUNCH_ENV_VAR,
13147
+ relaunchForUpdate
13148
+ },
13104
13149
  { performStandaloneUpdate },
13105
13150
  installationInfo
13106
13151
  ] = await Promise.all([
13107
- import("./updateCheck-QTVVISH7.js"),
13108
- import("./handleAutoUpdate-ULHNWL6R.js"),
13109
- import("./standalone-update-L5XW3D7K.js"),
13110
- import("./installationInfo-WELKRHHE.js")
13152
+ import("./updateCheck-B6O42VMD.js"),
13153
+ import("./processUtils-7QH3VBVN.js"),
13154
+ import("./standalone-update-77457VVK.js"),
13155
+ import("./installationInfo-RWOW6BZO.js")
13111
13156
  ]);
13112
13157
  const { formatUpdateInstructions, getInstallationInfo: getInstallationInfo2 } = installationInfo;
13113
13158
  const settings = context.services.settings;
@@ -13157,10 +13202,37 @@ var updateCommand = {
13157
13202
  };
13158
13203
  }, "manualInstructions");
13159
13204
  if (context.executionMode === "interactive" && projectRoot) {
13205
+ const customSandboxImage = process.env[CUSTOM_SANDBOX_IMAGE_ENV_VAR];
13206
+ if (customSandboxImage) {
13207
+ return {
13208
+ type: "message",
13209
+ messageType: "info",
13210
+ content: `${info.message}
13211
+ ${t(
13212
+ "This session uses the custom sandbox image {{image}}. Update that image and restart Qwen Code.",
13213
+ { image: customSandboxImage }
13214
+ )}`
13215
+ };
13216
+ }
13217
+ const hostUpdateRelaunch = process.env[HOST_UPDATE_RELAUNCH_ENV_VAR];
13160
13218
  const isAutoUpdateEnabled = settings.merged.general?.enableAutoUpdate !== false;
13219
+ if (hostUpdateRelaunch === "true" && isAutoUpdateEnabled) {
13220
+ await relaunchForUpdate();
13221
+ return;
13222
+ }
13223
+ if (hostUpdateRelaunch !== void 0) {
13224
+ return {
13225
+ type: "message",
13226
+ messageType: "info",
13227
+ content: `${info.message}
13228
+ ${t(
13229
+ "Update Qwen Code on the host, then restart the sandbox."
13230
+ )}`
13231
+ };
13232
+ }
13161
13233
  const canAutoUpdate = installInfo.updateCommand || installInfo.isStandalone && installInfo.standaloneDir;
13162
13234
  if (isAutoUpdateEnabled && canAutoUpdate) {
13163
- handleAutoUpdate(info, settings, projectRoot);
13235
+ await relaunchForUpdate();
13164
13236
  return;
13165
13237
  }
13166
13238
  return manualInstructions();
@@ -13265,6 +13337,7 @@ var BuiltinCommandLoader = class {
13265
13337
  importConfigCommand,
13266
13338
  initCommand,
13267
13339
  languageCommand,
13340
+ learnCommand,
13268
13341
  mcpCommand,
13269
13342
  ...this.config?.isManagedMemoryAvailable() ? [dreamCommand, forgetCommand] : [],
13270
13343
  goalCommand,
@@ -15129,7 +15202,7 @@ function isMcpToolProgressData(output) {
15129
15202
  __name(isMcpToolProgressData, "isMcpToolProgressData");
15130
15203
  function createToolProgressHandler(request, adapter) {
15131
15204
  const handler = /* @__PURE__ */ __name((_callId, output) => {
15132
- if (isMcpToolProgressData(output)) {
15205
+ if (isMcpToolProgressData(output) || isShellProgressData(output)) {
15133
15206
  adapter.emitToolProgress(request, output);
15134
15207
  }
15135
15208
  }, "handler");
@@ -15256,7 +15329,8 @@ __name(createAgentToolProgressHandler, "createAgentToolProgressHandler");
15256
15329
  function functionResponsePartsToString(parts) {
15257
15330
  return parts.map((part) => {
15258
15331
  if ("functionResponse" in part) {
15259
- const content = part.functionResponse?.response?.["output"] ?? "";
15332
+ const response = part.functionResponse?.response;
15333
+ const content = response?.["output"] ?? response?.["error"] ?? "";
15260
15334
  return content;
15261
15335
  }
15262
15336
  return JSON.stringify(part);
@@ -15278,6 +15352,7 @@ export {
15278
15352
  hasSlashCommandPathSeparator,
15279
15353
  isSlashCommand,
15280
15354
  isBtwCommand,
15355
+ copyToClipboard,
15281
15356
  isMidInputCompletableCommand,
15282
15357
  findMidInputSlashCommand,
15283
15358
  getBestSlashCommandMatch,
@@ -3,7 +3,7 @@
3
3
  import {
4
4
  TotalSessionLimitExceededError,
5
5
  WorkspaceDrainingError
6
- } from "./chunk-KSO42X3Z.js";
6
+ } from "./chunk-X6YQWCIJ.js";
7
7
  import {
8
8
  init_esbuild_shims
9
9
  } from "./chunk-5O2XNYP6.js";
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  registerCleanup
5
- } from "./chunk-TISZXPAX.js";
5
+ } from "./chunk-4HCYNDMG.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
  createDebugLogger
5
- } from "./chunk-7NFB7LBQ.js";
5
+ } from "./chunk-UE5TZ55T.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";
@@ -7,7 +7,7 @@ import {
7
7
  ansiRegex,
8
8
  init_ansi_regex,
9
9
  stripAnsi
10
- } from "./chunk-K7CRWKOE.js";
10
+ } from "./chunk-T4TZQJ7W.js";
11
11
  import {
12
12
  init_esbuild_shims
13
13
  } from "./chunk-5O2XNYP6.js";
@@ -8,6 +8,7 @@ import {
8
8
  init_esbuild_shims();
9
9
  var LOAD_REPLAY_MODE_META_KEY = "qwen.session.loadReplayMode";
10
10
  var LOAD_REPLAY_META_KEY = "qwen.session.loadReplay";
11
+ var LOAD_REPLAY_PAGE_SIZE_META_KEY = "qwen.session.loadReplayPageSize";
11
12
  var LOAD_REPLAY_BULK_MODE = "bulk";
12
13
  var LOAD_REPLAY_VERSION = 1;
13
14
  var MID_TURN_QUEUE_DRAIN_METHOD = "craft/drainMidTurnQueue";
@@ -16,6 +17,7 @@ var CLIENT_MCP_OVER_WS_CONFIG_FLAG = "__clientMcpOverWs";
16
17
  export {
17
18
  LOAD_REPLAY_MODE_META_KEY,
18
19
  LOAD_REPLAY_META_KEY,
20
+ LOAD_REPLAY_PAGE_SIZE_META_KEY,
19
21
  LOAD_REPLAY_BULK_MODE,
20
22
  LOAD_REPLAY_VERSION,
21
23
  MID_TURN_QUEUE_DRAIN_METHOD,
@@ -0,0 +1,48 @@
1
+ // Force strict mode and setup for ESM
2
+ "use strict";
3
+ import {
4
+ init_esbuild_shims
5
+ } from "./chunk-5O2XNYP6.js";
6
+ import {
7
+ __esm,
8
+ __export,
9
+ __name
10
+ } from "./chunk-J2S4EL5Y.js";
11
+
12
+ // node_modules/ansi-regex/index.js
13
+ var ansi_regex_exports = {};
14
+ __export(ansi_regex_exports, {
15
+ default: () => ansiRegex
16
+ });
17
+ function ansiRegex({ onlyFirst = false } = {}) {
18
+ const ST = "(?:\\u0007|\\u001B\\u005C|\\u009C)";
19
+ const osc = `(?:\\u001B\\][\\s\\S]*?${ST})`;
20
+ const csi = "[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]";
21
+ const pattern = `${osc}|${csi}`;
22
+ return new RegExp(pattern, onlyFirst ? void 0 : "g");
23
+ }
24
+ var init_ansi_regex = __esm({
25
+ "node_modules/ansi-regex/index.js"() {
26
+ init_esbuild_shims();
27
+ __name(ansiRegex, "ansiRegex");
28
+ }
29
+ });
30
+
31
+ // node_modules/strip-ansi/index.js
32
+ init_esbuild_shims();
33
+ init_ansi_regex();
34
+ var regex = ansiRegex();
35
+ function stripAnsi(string) {
36
+ if (typeof string !== "string") {
37
+ throw new TypeError(`Expected a \`string\`, got \`${typeof string}\``);
38
+ }
39
+ return string.replace(regex, "");
40
+ }
41
+ __name(stripAnsi, "stripAnsi");
42
+
43
+ export {
44
+ ansiRegex,
45
+ ansi_regex_exports,
46
+ init_ansi_regex,
47
+ stripAnsi
48
+ };