@qwen-code/web-shell 0.25.1-preview.2 → 0.25.2-preview.0

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 (392) hide show
  1. package/NOTICES.txt +2435 -0
  2. package/README.md +36 -7
  3. package/dist/PierreFilePreview-NBjy3yqe.js +15087 -0
  4. package/dist/SpreadsheetPreview-BlorwcU1.js +379 -0
  5. package/dist/WorkspaceFileBrowser-B5lzmIet.js +11270 -0
  6. package/dist/abap-Y8Dl9g_6.js +6 -0
  7. package/dist/actionscript-3-BaF0d0xQ.js +6 -0
  8. package/dist/ada-BF2KzuNn.js +6 -0
  9. package/dist/{agents-route-B3FonPY-.js → agents-route-DG5XKI_W.js} +35 -35
  10. package/dist/ahk-B-WqUgDL.js +6 -0
  11. package/dist/ahk2-SbcCPlaJ.js +6 -0
  12. package/dist/andromeeda-BbmzSJq1.js +4 -0
  13. package/dist/angular-html-rmyRipUB.js +32 -0
  14. package/dist/angular-ts-gqGZGIqw.js +21 -0
  15. package/dist/apache-BUjz-sD2.js +6 -0
  16. package/dist/apex-DvkHwMsp.js +6 -0
  17. package/dist/apl-9WGfvSCD.js +16 -0
  18. package/dist/applescript-BPx7YFFu.js +6 -0
  19. package/dist/ara-Z2fSOxSw.js +6 -0
  20. package/dist/asciidoc-BiIPQCNW.js +6 -0
  21. package/dist/asm-BTWLY5ym.js +6 -0
  22. package/dist/astro-B3VnZ88h.js +18 -0
  23. package/dist/aurora-x-BwoVEUWZ.js +4 -0
  24. package/dist/awk-Fb0P9dkn.js +6 -0
  25. package/dist/ayu-dark-DJoqd4M9.js +4 -0
  26. package/dist/ayu-light-BzXEJRJ-.js +4 -0
  27. package/dist/ayu-mirage-BJ2oZGzi.js +4 -0
  28. package/dist/ballerina-oZK-YekG.js +6 -0
  29. package/dist/bat-ydjv7YKs.js +6 -0
  30. package/dist/beancount-B97e4I_p.js +6 -0
  31. package/dist/berry-DODBq_Ff.js +6 -0
  32. package/dist/bibtex-EULQRLY5.js +6 -0
  33. package/dist/bicep-BorU73w0.js +6 -0
  34. package/dist/bird2-pg9hCHlc.js +6 -0
  35. package/dist/blade-C1Ndts_b.js +20 -0
  36. package/dist/bsl-D_YKmA0K.js +8 -0
  37. package/dist/c-eeMepfLm.js +6 -0
  38. package/dist/c3-CFUossGW.js +6 -0
  39. package/dist/cadence-02UX7mW8.js +6 -0
  40. package/dist/cairo-DM6WF2e3.js +8 -0
  41. package/dist/catppuccin-frappe-DUuBHM65.js +4 -0
  42. package/dist/catppuccin-latte-BNGb0x5j.js +4 -0
  43. package/dist/catppuccin-macchiato-BxrBWMCk.js +4 -0
  44. package/dist/catppuccin-mocha-CuiVuFkm.js +4 -0
  45. package/dist/chapel-eL5CQ0M-.js +8 -0
  46. package/dist/clarity-9DleLt1s.js +6 -0
  47. package/dist/clojure-CXJfHrL3.js +6 -0
  48. package/dist/cmake-BJz8BOTU.js +6 -0
  49. package/dist/cobol-Dl6_7gJe.js +10 -0
  50. package/dist/codeowners-Bt9yU6NX.js +6 -0
  51. package/dist/codeql-DHkodjjI.js +6 -0
  52. package/dist/coffee-DGBR_nr_.js +8 -0
  53. package/dist/common-lisp-EVqT9Zhp.js +6 -0
  54. package/dist/coq-5TmQn6M5.js +6 -0
  55. package/dist/cpp-Bb6c2fiE.js +15 -0
  56. package/dist/crystal-Bfb0oPlr.js +18 -0
  57. package/dist/csharp-B2h9rwLg.js +6 -0
  58. package/dist/css-D8kMf1Az.js +6 -0
  59. package/dist/csv-CmYOceLb.js +6 -0
  60. package/dist/cue-ZzumE7IT.js +6 -0
  61. package/dist/cypher-jpdmjtA6.js +6 -0
  62. package/dist/d-CBagWSwH.js +6 -0
  63. package/dist/daemon-react-sdk.js +1 -1
  64. package/dist/dark-plus-pUHDTVV0.js +4 -0
  65. package/dist/dart-K6TBxHBr.js +6 -0
  66. package/dist/dax-CcDT-8dH.js +6 -0
  67. package/dist/desktop-B93p9R9O.js +6 -0
  68. package/dist/diff-BxzP2J8R.js +6 -0
  69. package/dist/docker-CsHqm9tx.js +6 -0
  70. package/dist/dotenv-To_iU2bW.js +6 -0
  71. package/dist/dracula-BtZx2Kac.js +4 -0
  72. package/dist/dracula-soft-BKa-aqBv.js +4 -0
  73. package/dist/dream-maker-PAx17jaB.js +6 -0
  74. package/dist/edge-Qug5O-Uv.js +12 -0
  75. package/dist/elixir-jJSGlzPp.js +8 -0
  76. package/dist/elm-BtNbw_Cd.js +8 -0
  77. package/dist/emacs-lisp--TAIYkU3.js +6 -0
  78. package/dist/erb-B9A6WGNp.js +10 -0
  79. package/dist/erlang-DNcDT8Hi.js +8 -0
  80. package/dist/everforest-dark-DMCBqXCK.js +4 -0
  81. package/dist/everforest-light-BbXl82Em.js +4 -0
  82. package/dist/fennel-N4WcXuKx.js +6 -0
  83. package/dist/fish-BTDEUgqH.js +6 -0
  84. package/dist/fluent-BMXUxfv1.js +6 -0
  85. package/dist/fortran-fixed-form-B67KFkXH.js +8 -0
  86. package/dist/fortran-free-form-CwqYvCLJ.js +6 -0
  87. package/dist/fsharp-CYOiIVNx.js +8 -0
  88. package/dist/gdresource-B6Cnl39M.js +10 -0
  89. package/dist/gdscript-BWeFgEe_.js +6 -0
  90. package/dist/gdshader-Bk8fF6yr.js +6 -0
  91. package/dist/genie-DzUvd7U9.js +6 -0
  92. package/dist/gherkin-DHRaV0YP.js +6 -0
  93. package/dist/git-commit-Bd32YZ0K.js +8 -0
  94. package/dist/git-rebase-ZWUFO_T4.js +8 -0
  95. package/dist/github-dark-DenFmJkN.js +4 -0
  96. package/dist/github-dark-default-BJPUVz4H.js +4 -0
  97. package/dist/github-dark-dimmed-DUshB20C.js +4 -0
  98. package/dist/github-dark-high-contrast-D3aGCnF8.js +4 -0
  99. package/dist/github-light-JYsPkUQd.js +4 -0
  100. package/dist/github-light-default-D99KPAby.js +4 -0
  101. package/dist/github-light-high-contrast-BbmZE-Mp.js +4 -0
  102. package/dist/gleam-Bv284lvN.js +6 -0
  103. package/dist/glimmer-js-B-ut3b08.js +14 -0
  104. package/dist/glimmer-ts-CDiMEfki.js +14 -0
  105. package/dist/glsl-CkUcVZNK.js +8 -0
  106. package/dist/gn-B0BSgybI.js +6 -0
  107. package/dist/gnuplot-yPG9-sE_.js +6 -0
  108. package/dist/go-EbF93JXO.js +6 -0
  109. package/dist/graphql-CBu2ehBn.js +14 -0
  110. package/dist/groovy-CJQTphOW.js +6 -0
  111. package/dist/gruvbox-dark-hard-C5HOtKIh.js +4 -0
  112. package/dist/gruvbox-dark-medium-FVgwJHuz.js +4 -0
  113. package/dist/gruvbox-dark-soft-B46F314v.js +4 -0
  114. package/dist/gruvbox-light-hard-CJD38wDZ.js +4 -0
  115. package/dist/gruvbox-light-medium-BlIhMYTA.js +4 -0
  116. package/dist/gruvbox-light-soft-DoPHyLVZ.js +4 -0
  117. package/dist/hack-p63ac3SB.js +10 -0
  118. package/dist/haml-CM7CpQHU.js +10 -0
  119. package/dist/handlebars-DfCj1TEO.js +14 -0
  120. package/dist/haskell-WeIwNIP6.js +6 -0
  121. package/dist/haxe-CfMPOItY.js +6 -0
  122. package/dist/hcl-D438OF-I.js +6 -0
  123. package/dist/hjson-DYBUbqOl.js +6 -0
  124. package/dist/hlsl-Bk8TCZNL.js +6 -0
  125. package/dist/horizon-CJQ10nlf.js +4 -0
  126. package/dist/horizon-bright-2WzHy-Vo.js +4 -0
  127. package/dist/houston-BDYrDoDW.js +4 -0
  128. package/dist/html-Wr5yTrgx.js +10 -0
  129. package/dist/html-derivative-DG8ajaXt.js +8 -0
  130. package/dist/http-DLvAkeD-.js +14 -0
  131. package/dist/hurl-CgkFN90t.js +12 -0
  132. package/dist/hxml-DV49tgRk.js +8 -0
  133. package/dist/hy-Brt5EZ7-.js +6 -0
  134. package/dist/imba-CimUv-Uh.js +6 -0
  135. package/dist/{index-BPRuZpl-.js → index-TQMx4ZTn.js} +51994 -48732
  136. package/dist/index.js +22 -22
  137. package/dist/ini-BZIuRIvJ.js +6 -0
  138. package/dist/java-DY6VlHhP.js +6 -0
  139. package/dist/javascript-C25yR2R2.js +6 -0
  140. package/dist/jinja-BHOV3ePe.js +11 -0
  141. package/dist/jison-DdreslRX.js +8 -0
  142. package/dist/json-DxJze_jm.js +6 -0
  143. package/dist/json5-BT4Fjg39.js +6 -0
  144. package/dist/jsonc-CHjZD8gR.js +6 -0
  145. package/dist/jsonl-BGuvDmy9.js +6 -0
  146. package/dist/jsonnet-Bx2cfsXg.js +6 -0
  147. package/dist/jssm-BcADi6EI.js +6 -0
  148. package/dist/jsx-BtKADgXT.js +6 -0
  149. package/dist/julia-BxeXMQSJ.js +16 -0
  150. package/dist/just-CJ4EVsJK.js +18 -0
  151. package/dist/kanagawa-dragon-CQySOoTe.js +4 -0
  152. package/dist/kanagawa-lotus-CJRfph3t.js +4 -0
  153. package/dist/kanagawa-wave-Cu5PDRcJ.js +4 -0
  154. package/dist/kdl-BNOv9TC3.js +6 -0
  155. package/dist/kotlin-ByBMgTeR.js +6 -0
  156. package/dist/kusto-BlqsQffZ.js +6 -0
  157. package/dist/laserwave-6a00oqik.js +4 -0
  158. package/dist/latex-BfhWTgWa.js +8 -0
  159. package/dist/lean-BnVxaZxY.js +6 -0
  160. package/dist/less-B1GLI2Di.js +6 -0
  161. package/dist/light-plus-CZuVqSLX.js +4 -0
  162. package/dist/liquid-D7d9j__1.js +14 -0
  163. package/dist/llvm-DMgfhPsy.js +6 -0
  164. package/dist/log-Al8wyEFV.js +6 -0
  165. package/dist/logo-DBa4JDzV.js +6 -0
  166. package/dist/lua-Bp3IRv7I.js +8 -0
  167. package/dist/luau-1oy8yWWo.js +6 -0
  168. package/dist/make-CsMclxtr.js +6 -0
  169. package/dist/markdown-CrScaQ96.js +6 -0
  170. package/dist/marko-D0HGUaN1.js +14 -0
  171. package/dist/material-theme-D6KBX41T.js +4 -0
  172. package/dist/material-theme-darker-CkRroheE.js +4 -0
  173. package/dist/material-theme-lighter-BUBw43Yz.js +4 -0
  174. package/dist/material-theme-ocean-ClGX14Ja.js +4 -0
  175. package/dist/material-theme-palenight-C1RVm8K1.js +4 -0
  176. package/dist/matlab-BOAaUVP0.js +6 -0
  177. package/dist/mdc-BI6stFvl.js +12 -0
  178. package/dist/mdx-BOhZZUJ8.js +6 -0
  179. package/dist/mermaid-xImSC5pG.js +6 -0
  180. package/dist/min-dark-C7ak0t6c.js +4 -0
  181. package/dist/min-light-CKFxVcPp.js +4 -0
  182. package/dist/mipsasm-CTx18fBl.js +6 -0
  183. package/dist/mojo-DjLViMAF.js +6 -0
  184. package/dist/monokai-B1aFr0iD.js +4 -0
  185. package/dist/moonbit-qkz9oK4f.js +6 -0
  186. package/dist/move-DoIXlL5f.js +6 -0
  187. package/dist/narrat-DmhDCBs-.js +6 -0
  188. package/dist/nextflow-BTRbEaxp.js +8 -0
  189. package/dist/nextflow-groovy-BJmbcwBu.js +6 -0
  190. package/dist/nginx-D7O4WoB1.js +8 -0
  191. package/dist/night-owl-Bm2rzalh.js +4 -0
  192. package/dist/night-owl-light-CBI5u5kw.js +4 -0
  193. package/dist/nim-DG7jk4Ht.js +20 -0
  194. package/dist/nix-fTRXMGic.js +9 -0
  195. package/dist/nord-CC5OiUXg.js +4 -0
  196. package/dist/nsis-CtKAvjMM.js +6 -0
  197. package/dist/nushell-CgtwSlO3.js +6 -0
  198. package/dist/objective-c-Itk8tzmv.js +6 -0
  199. package/dist/objective-cpp-DGt5UKRO.js +6 -0
  200. package/dist/ocaml-eSVK32Eg.js +6 -0
  201. package/dist/odin-BItnF517.js +6 -0
  202. package/dist/one-dark-pro-C5d58L87.js +4 -0
  203. package/dist/one-light-LkMrt1Cf.js +4 -0
  204. package/dist/openscad-Sp5uZ6f2.js +6 -0
  205. package/dist/org-C5S6WgHQ.js +100 -0
  206. package/dist/pascal-xy8pJNns.js +6 -0
  207. package/dist/perl-vJzCkjjH.js +16 -0
  208. package/dist/php-DBsTw_pP.js +18 -0
  209. package/dist/pierre-dark-D52vmD1t.js +4 -0
  210. package/dist/pierre-dark-protanopia-deuteranopia-Coza2ydH.js +4 -0
  211. package/dist/pierre-dark-soft-D0o08Lfm.js +4 -0
  212. package/dist/pierre-dark-tritanopia-BP-A_WyN.js +4 -0
  213. package/dist/pierre-dark-vibrant-BjUzbiGn.js +4 -0
  214. package/dist/pierre-light-CzM3AfLn.js +4 -0
  215. package/dist/pierre-light-protanopia-deuteranopia-DFclCKch.js +4 -0
  216. package/dist/pierre-light-soft-m3tr_5b6.js +4 -0
  217. package/dist/pierre-light-tritanopia-Dh0MAsTp.js +4 -0
  218. package/dist/pierre-light-vibrant-BZSORskK.js +4 -0
  219. package/dist/pkl-C-zSNmaA.js +6 -0
  220. package/dist/plastic-CSTz3KZp.js +4 -0
  221. package/dist/plsql-pVbGZfOv.js +6 -0
  222. package/dist/po-BNfHvqmm.js +6 -0
  223. package/dist/poimandres-C-VADXHD.js +4 -0
  224. package/dist/polar-CAZahv3u.js +6 -0
  225. package/dist/postcss-05aHdL-n.js +6 -0
  226. package/dist/powerquery-DI9HkTvs.js +6 -0
  227. package/dist/powershell-DwQB8F1X.js +6 -0
  228. package/dist/prisma-K8HipzoA.js +6 -0
  229. package/dist/prolog-C5-yg4TO.js +6 -0
  230. package/dist/proto-C7QgialS.js +6 -0
  231. package/dist/pug-DWY5n4I0.js +12 -0
  232. package/dist/puppet-CUJHmnxV.js +6 -0
  233. package/dist/purescript-rUfGld-4.js +6 -0
  234. package/dist/python-BFNSHbwJ.js +6 -0
  235. package/dist/qml-rTNXsquU.js +8 -0
  236. package/dist/qmldir-BInDYbpo.js +6 -0
  237. package/dist/qss-AeJTysr_.js +6 -0
  238. package/dist/r-BPg6DDVi.js +6 -0
  239. package/dist/racket-B83wSAja.js +6 -0
  240. package/dist/raku-nEQ4ZJJ7.js +6 -0
  241. package/dist/razor-DfCpierF.js +10 -0
  242. package/dist/rbs-CssrqYJT.js +6 -0
  243. package/dist/red-ZH55KNtO.js +4 -0
  244. package/dist/reg-m_s_Kiip.js +6 -0
  245. package/dist/regexp-BazyLpPg.js +6 -0
  246. package/dist/rel-BcRfyd6Q.js +6 -0
  247. package/dist/riscv-Ce8MAQLP.js +6 -0
  248. package/dist/ron-DCEEQypA.js +6 -0
  249. package/dist/rose-pine-CBkWCxr6.js +4 -0
  250. package/dist/rose-pine-dawn-B6ai6aO_.js +4 -0
  251. package/dist/rose-pine-moon-c2UTtcmd.js +4 -0
  252. package/dist/rosmsg-Cz0w1km8.js +6 -0
  253. package/dist/rst-DLMli9w9.js +22 -0
  254. package/dist/ruby-CbJ15R3t.js +30 -0
  255. package/dist/rust-BMMJSOUe.js +6 -0
  256. package/dist/sas-CPEc4gxJ.js +8 -0
  257. package/dist/sass-DxHp5rTx.js +6 -0
  258. package/dist/scala-B_IFinKC.js +6 -0
  259. package/dist/scheme-BCRWuEm4.js +6 -0
  260. package/dist/scss-BoS_aSJ3.js +8 -0
  261. package/dist/sdbl-B7T8abf4.js +6 -0
  262. package/dist/shaderlab-Cr62-Wb4.js +8 -0
  263. package/dist/shellscript-InADTalH.js +6 -0
  264. package/dist/shellsession-DiDJNQdy.js +8 -0
  265. package/dist/slack-dark-i7wN4OET.js +4 -0
  266. package/dist/slack-ochin-ndHf0LoP.js +4 -0
  267. package/dist/smalltalk-4m7fIk5G.js +6 -0
  268. package/dist/smithy-BqBKlq_3.js +6 -0
  269. package/dist/snazzy-light-BlSJXAu4.js +4 -0
  270. package/dist/solarized-dark-DkqKcBES.js +4 -0
  271. package/dist/solarized-light-PzVcYh5f.js +4 -0
  272. package/dist/solidity-CA32r_X5.js +6 -0
  273. package/dist/soy-zKSLgLn7.js +8 -0
  274. package/dist/sparql-B0KWFEri.js +8 -0
  275. package/dist/splunk-CRXR8A9s.js +6 -0
  276. package/dist/sql-CZBvVSLl.js +6 -0
  277. package/dist/ssh-config-DP-hNVbF.js +6 -0
  278. package/dist/stata-CfG8pWjZ.js +8 -0
  279. package/dist/stylus-CyKEU1Ej.js +6 -0
  280. package/dist/surrealql-C-LAJEpk.js +8 -0
  281. package/dist/svelte-DwQZuWui.js +14 -0
  282. package/dist/sw.js +1 -1
  283. package/dist/swift-DOmCYlRt.js +6 -0
  284. package/dist/synthwave-84-NU3C_KFZ.js +4 -0
  285. package/dist/system-verilog-CT3NeZzU.js +6 -0
  286. package/dist/systemd-C-4qm6XH.js +6 -0
  287. package/dist/talonscript-CFF3LF_O.js +6 -0
  288. package/dist/tasl-Cg_WBUAe.js +6 -0
  289. package/dist/tcl-DN7buRTF.js +6 -0
  290. package/dist/templ-kEkd0dRE.js +12 -0
  291. package/dist/terraform-DGvcn9zM.js +6 -0
  292. package/dist/tex-CXAy09re.js +8 -0
  293. package/dist/tokyo-night-DP4TmcQl.js +4 -0
  294. package/dist/toml-DY62mUL_.js +6 -0
  295. package/dist/transcript.js +4279 -4134
  296. package/dist/ts-tags-CheYVw2x.js +41 -0
  297. package/dist/tsv-BtvSkaG0.js +6 -0
  298. package/dist/tsx-B8rCNbgL.js +6 -0
  299. package/dist/turtle-_H59FV7D.js +6 -0
  300. package/dist/twig-CDICZk1J.js +18 -0
  301. package/dist/types/adapters/transcriptAdapter.d.ts +1 -1
  302. package/dist/types/browser-turn-notifications.d.ts +2 -1
  303. package/dist/types/components/ChatContextHeader.d.ts +3 -1
  304. package/dist/types/components/ChatEditor.d.ts +3 -0
  305. package/dist/types/components/QueuedPromptDisplay.d.ts +4 -1
  306. package/dist/types/components/WorkspaceSelector.d.ts +2 -1
  307. package/dist/types/components/artifacts/ArtifactPanel.d.ts +12 -3
  308. package/dist/types/components/artifacts/PierreFilePreview.d.ts +4 -0
  309. package/dist/types/components/artifacts/SpreadsheetPreview.d.ts +7 -0
  310. package/dist/types/components/artifacts/TrajectoryInspector.d.ts +3 -1
  311. package/dist/types/components/artifacts/TrajectoryPanel.d.ts +2 -1
  312. package/dist/types/components/artifacts/WorkspaceFileBrowser.d.ts +11 -0
  313. package/dist/types/components/artifacts/artifactUtils.d.ts +1 -0
  314. package/dist/types/components/artifacts/excel-preview-parser.d.ts +5 -0
  315. package/dist/types/components/artifacts/excel-preview-types.d.ts +44 -0
  316. package/dist/types/components/artifacts/excel-preview.worker.d.ts +1 -0
  317. package/dist/types/components/artifacts/files-messages.d.ts +34 -0
  318. package/dist/types/components/artifacts/files-messages.transcript-stub.d.ts +2 -0
  319. package/dist/types/components/artifacts/useArtifactWorkspaceTarget.d.ts +1 -1
  320. package/dist/types/components/managed/ManagedSessionCwdControl.d.ts +9 -0
  321. package/dist/types/components/managed/ManagedTaskPanel.d.ts +15 -0
  322. package/dist/types/components/managed/ManagedToolResultPanel.d.ts +6 -1
  323. package/dist/types/components/managed/WorkspaceBindingCreator.d.ts +2 -1
  324. package/dist/types/components/managed/generated/managed-agent-api.d.ts +20 -11
  325. package/dist/types/components/managed/java-managed-agent-client.d.ts +39 -1
  326. package/dist/types/components/managed/java-managed-agent-provider.d.ts +4 -0
  327. package/dist/types/components/managed/managed-agent-provider.d.ts +55 -1
  328. package/dist/types/components/managed/managed-development-options.d.ts +7 -0
  329. package/dist/types/components/managed/managed-request-error.d.ts +6 -0
  330. package/dist/types/components/managed/managed-task-messages.d.ts +9 -0
  331. package/dist/types/components/managed/managed-task-messages.transcript-stub.d.ts +7 -0
  332. package/dist/types/components/managed/managed-task.test-fixtures.d.ts +4 -0
  333. package/dist/types/components/managed/use-managed-cwd-change.d.ts +21 -0
  334. package/dist/types/components/managed/use-managed-session.d.ts +15 -1
  335. package/dist/types/components/managed/use-managed-task-cancel.d.ts +12 -0
  336. package/dist/types/components/managed/use-managed-tasks.d.ts +49 -0
  337. package/dist/types/components/messages/BrowserNotificationControl.d.ts +1 -0
  338. package/dist/types/components/messages/SelectionCopyMenu.d.ts +8 -0
  339. package/dist/types/components/messages/SelectionCopyMenu.transcript-stub.d.ts +2 -0
  340. package/dist/types/components/messages/ToolApproval.d.ts +2 -1
  341. package/dist/types/components/messages/toolFormatting.d.ts +3 -3
  342. package/dist/types/components/panels/EnvironmentPanel.d.ts +5 -0
  343. package/dist/types/components/ui/alert.d.ts +1 -1
  344. package/dist/types/components/ui/resizable.d.ts +5 -0
  345. package/dist/types/constants/toolNames.d.ts +1 -0
  346. package/dist/types/customization.d.ts +1 -1
  347. package/dist/types/daemon/session/turn-notification-context.d.ts +2 -1
  348. package/dist/types/daemon/session/types.d.ts +9 -1
  349. package/dist/types/hooks/useComposerCore.d.ts +3 -0
  350. package/dist/types/hooks/useQueuedPrompts.d.ts +2 -0
  351. package/dist/types/trajectory/project-trajectory-lifecycle.d.ts +27 -0
  352. package/dist/types/trajectory/trajectory-live-context.d.ts +3 -0
  353. package/dist/types/trajectory/trajectory-live-store.d.ts +36 -0
  354. package/dist/types/trajectory/transcriptPageLoader.d.ts +5 -1
  355. package/dist/types/trajectory/useTrajectoryWindow.d.ts +2 -0
  356. package/dist/types/utils/askUserPermission.d.ts +1 -1
  357. package/dist/types/utils/composerModels.d.ts +18 -0
  358. package/dist/types/utils/selectionClipboard.d.ts +5 -0
  359. package/dist/types/voice/messages.d.ts +9 -0
  360. package/dist/types/voice/messages.transcript-stub.d.ts +7 -0
  361. package/dist/types/voice/voice-error.d.ts +7 -0
  362. package/dist/typescript-RycA9KXf.js +6 -0
  363. package/dist/typespec-ClIfKiQP.js +6 -0
  364. package/dist/typst-E3pfxOv6.js +120 -0
  365. package/dist/{toolNames-CusX912Z.js → useDaemonMidTurnInjected-DP58ZvKF.js} +5627 -4984
  366. package/dist/v-CxJbuWik.js +6 -0
  367. package/dist/vala-uxaPR7d1.js +6 -0
  368. package/dist/vb-BD2YOVbP.js +6 -0
  369. package/dist/verilog-BHj4jYdq.js +6 -0
  370. package/dist/vesper-DIoW1cuD.js +4 -0
  371. package/dist/vhdl-CUlNa8ac.js +6 -0
  372. package/dist/viml-DsfA-sWm.js +6 -0
  373. package/dist/vitesse-black-BoGvW84i.js +4 -0
  374. package/dist/vitesse-dark-Cym-eLtO.js +4 -0
  375. package/dist/vitesse-light-CcmG315c.js +4 -0
  376. package/dist/vue-d9VL4uFG.js +31 -0
  377. package/dist/vue-html-j9xNEdu3.js +8 -0
  378. package/dist/vue-vine-Hkz8HiFl.js +18 -0
  379. package/dist/vyper-CPQuu50u.js +6 -0
  380. package/dist/wasm-BBXxrAl7.js +6 -0
  381. package/dist/wasm-DQxwEHae.js +7 -0
  382. package/dist/wenyan-pbVjoM9_.js +6 -0
  383. package/dist/wgsl-DY4iK1q1.js +6 -0
  384. package/dist/wikitext-Z-MoUasO.js +6 -0
  385. package/dist/wit-CQMQOlTg.js +6 -0
  386. package/dist/wolfram-Dz4KXISs.js +6 -0
  387. package/dist/xml-C2J0sS9M.js +8 -0
  388. package/dist/xsl-BmSZphgC.js +8 -0
  389. package/dist/yaml-DaO7k5B1.js +6 -0
  390. package/dist/zenscript-CxBjpf9c.js +6 -0
  391. package/dist/zig-Vm0PO9wB.js +6 -0
  392. package/package.json +16 -2
@@ -57,9 +57,47 @@ export declare class JavaManagedAgentClient {
57
57
  submitTurn(request: Schemas['WebShellSubmitRequest'], signal?: AbortSignal): Promise<JavaAgentCommandAdmission>;
58
58
  cancelTurn(request: Schemas['WebShellCancelRequest'], signal?: AbortSignal): Promise<JavaAgentCommandAdmission>;
59
59
  queryActions(request: Schemas['WebShellActionQueryRequest'], signal?: AbortSignal): Promise<JavaAgentActionPage>;
60
+ listTasks(request: Schemas['WebShellTaskQueryRequest'], signal?: AbortSignal): Promise<{
61
+ data: components["schemas"]["WebShellTask"][];
62
+ hasMore: boolean;
63
+ nextCursor?: string | null;
64
+ }>;
65
+ getTask(request: Schemas['WebShellTaskGetRequest'], signal?: AbortSignal): Promise<{
66
+ taskId: string;
67
+ sessionId: string;
68
+ kind: components["schemas"]["TaskKind"];
69
+ state: components["schemas"]["TaskState"];
70
+ definitionRevision?: number;
71
+ runtimeState?: components["schemas"]["TaskRuntimeState"];
72
+ createdAt: number;
73
+ startedAt?: number;
74
+ settledAt?: number;
75
+ outputCursor?: string;
76
+ artifactRefs: string[];
77
+ actionCapabilities: components["schemas"]["TaskActionCapability"][];
78
+ }>;
79
+ listTaskEvents(request: Schemas['WebShellTaskEventQueryRequest'], signal?: AbortSignal): Promise<{
80
+ data: components["schemas"]["WebShellTaskEvent"][];
81
+ hasMore: boolean;
82
+ nextCursor: string;
83
+ }>;
84
+ cancelTask(request: Schemas['WebShellTaskCancelRequest'], signal?: AbortSignal): Promise<{
85
+ operationId: string;
86
+ sessionId: string;
87
+ type: "create_session" | "submit_input" | "cancel" | "action_response" | "close" | "archive" | "delete" | "task_cancel";
88
+ taskId?: string;
89
+ status: "pending" | "running" | "completed" | "failed" | "cancelled" | "recovery_blocked";
90
+ admissionStage: "java_durable" | "harness_confirmed";
91
+ deliveryState: "pending" | "leased" | "confirmed" | "blocked";
92
+ receiptId?: string;
93
+ actionResolution?: components["schemas"]["WebShellActionResolution"];
94
+ failureCode?: string;
95
+ replayed: boolean;
96
+ }>;
60
97
  respondAction(request: Schemas['WebShellActionRespondRequest'], signal?: AbortSignal): Promise<Schemas['WebShellCommandOperation']>;
61
98
  /** Reads an operation's latest durable status; polling is not a replay. */
62
99
  queryOperation(request: Schemas['WebShellOperationRequest'], signal?: AbortSignal): Promise<Schemas['WebShellOperation']>;
100
+ changeCwd(request: Schemas['WebShellChangeCwdRequest'], signal?: AbortSignal): Promise<Schemas['WebShellCwdOperation']>;
63
101
  getToolResult(sessionId: string, itemId: string, signal?: AbortSignal): Promise<{
64
102
  result: components["schemas"]["PublicToolResult"];
65
103
  access: components["schemas"]["ArtifactAccess"];
@@ -80,7 +118,7 @@ export declare class JavaManagedAgentClient {
80
118
  readArtifactRange(artifact: ManagedArtifact, offset: number, length: number, signal?: AbortSignal): Promise<Uint8Array>;
81
119
  openArtifactStream(artifact: ManagedArtifact, signal?: AbortSignal): Promise<ReadableStream<Uint8Array>>;
82
120
  private artifactContent;
83
- streamEvents(request: Schemas['WebShellStreamRequest'], signal?: AbortSignal, onOpen?: () => void): AsyncGenerator<JavaAgentEvent | JavaAgentResyncRequired>;
121
+ streamEvents(request: Schemas['WebShellStreamRequest'], signal?: AbortSignal, onOpen?: () => void, onAlive?: () => void): AsyncGenerator<JavaAgentEvent | JavaAgentResyncRequired>;
84
122
  private post;
85
123
  private request;
86
124
  }
@@ -7,6 +7,10 @@ export interface JavaManagedAgentProviderOptions extends JavaManagedAgentClientO
7
7
  /** Include tenant and actor identity; replace this scope/provider when either changes. Token refresh alone can use getHeaders. */
8
8
  productScope?: string;
9
9
  enableWorkspaceBinding?: boolean;
10
+ modelPresets?: readonly {
11
+ agentId: string;
12
+ label: string;
13
+ }[];
10
14
  /** Acquire a streaming save target during the user gesture, then call openStream. */
11
15
  saveArtifact?: ManagedArtifactSave;
12
16
  }
@@ -4,12 +4,15 @@ export type ManagedAgentSessionPhase = 'created' | 'admitted' | 'runtime_startin
4
4
  export type ManagedAgentRuntimeState = 'unknown' | 'starting' | 'ready' | 'failed';
5
5
  export interface ManagedAgentSessionSummary {
6
6
  sessionId: string;
7
+ agentId?: string;
7
8
  activeTurnId?: string;
8
9
  title: string;
9
10
  workspaceCwd?: string;
10
11
  workspace?: {
11
12
  workspaceId: string;
12
13
  cwdRelative: string;
14
+ contextRevision?: number;
15
+ state?: 'ready' | 'changing' | 'recovery_blocked';
13
16
  };
14
17
  createdAt: number;
15
18
  admittedAt: number;
@@ -21,16 +24,18 @@ export interface ManagedAgentSessionSummary {
21
24
  canSend: boolean;
22
25
  canCancel: boolean;
23
26
  actions?: boolean;
27
+ tasks?: boolean;
24
28
  artifacts?: boolean;
25
29
  /** The caller may submit later Turns to this Workspace-bound Session. */
26
30
  workspaceTurns?: boolean;
31
+ cwdChange?: boolean;
27
32
  };
28
33
  failure?: {
29
34
  code: string;
30
35
  message: string;
31
36
  };
32
37
  }
33
- export type ManagedAgentSessionEventType = 'accepted' | 'runtime_starting' | 'runtime_ready' | 'runtime_failed' | 'runtime_released' | 'agent_started' | 'assistant_thought' | 'assistant_delta' | 'tool_requested' | 'tool_started' | 'tool_completed' | 'tool_result_updated' | 'completed' | 'failed' | 'cancelling' | 'cancelled' | 'action_updated' | 'stream_gap';
38
+ export type ManagedAgentSessionEventType = 'accepted' | 'runtime_starting' | 'runtime_ready' | 'runtime_failed' | 'runtime_released' | 'agent_started' | 'assistant_thought' | 'assistant_delta' | 'tool_requested' | 'tool_started' | 'tool_completed' | 'tool_result_updated' | 'completed' | 'failed' | 'cancelling' | 'cancelled' | 'action_updated' | 'context_changed' | 'stream_gap';
34
39
  export interface ManagedAgentSessionEvent {
35
40
  id: number;
36
41
  at: number;
@@ -61,6 +66,14 @@ export interface ManagedAgentRequestOptions {
61
66
  export interface ManagedAgentCommandOptions extends ManagedAgentRequestOptions {
62
67
  idempotencyKey: string;
63
68
  }
69
+ export type ManagedCwdOperation = components['schemas']['WebShellCwdOperation'];
70
+ export type ManagedTask = components['schemas']['WebShellTask'];
71
+ export type ManagedTaskPage = components['schemas']['WebShellTaskPage'];
72
+ export type ManagedTaskEvent = components['schemas']['WebShellTaskEvent'];
73
+ export type ManagedTaskEventPage = components['schemas']['WebShellTaskEventPage'];
74
+ export type ManagedTaskCancelOperation = components['schemas']['WebShellCommandOperation'] & {
75
+ type: 'task_cancel';
76
+ };
64
77
  /** A Hosted tool approval waiting for the Session owner's answer. */
65
78
  export interface ManagedAgentPendingAction {
66
79
  actionId: string;
@@ -89,8 +102,35 @@ export interface ManagedAgentProvider {
89
102
  respond(action: ManagedAgentPendingAction, optionId: string, options: ManagedAgentCommandOptions): Promise<void>;
90
103
  };
91
104
  readonly toolResults?: ManagedToolResultReader;
105
+ readonly tasks?: {
106
+ list(sessionId: string, options: ManagedAgentRequestOptions & {
107
+ cursor?: string;
108
+ limit?: number;
109
+ }): Promise<ManagedTaskPage>;
110
+ get(sessionId: string, taskId: string, options: ManagedAgentRequestOptions): Promise<ManagedTask>;
111
+ listEvents(sessionId: string, taskId: string, options: ManagedAgentRequestOptions & {
112
+ after?: string;
113
+ limit?: number;
114
+ }): Promise<ManagedTaskEventPage>;
115
+ readonly cancel?: {
116
+ submit(sessionId: string, taskId: string, options: ManagedAgentCommandOptions): Promise<ManagedTaskCancelOperation>;
117
+ query(sessionId: string, taskId: string, operationId: string, options: ManagedAgentRequestOptions): Promise<ManagedTaskCancelOperation>;
118
+ };
119
+ };
120
+ readonly cwdChange?: {
121
+ submit(sessionId: string, request: {
122
+ cwdRelative: string;
123
+ expectedContextRevision: number;
124
+ }, options: ManagedAgentCommandOptions): Promise<ManagedCwdOperation>;
125
+ query(sessionId: string, operationId: string, options: ManagedAgentRequestOptions): Promise<ManagedCwdOperation>;
126
+ };
92
127
  readonly workspaceBinding?: {
93
128
  readonly agentId: string;
129
+ /** Host-published model-specific AgentDefinitions available for new Sessions. */
130
+ readonly modelPresets?: readonly {
131
+ agentId: string;
132
+ label: string;
133
+ }[];
94
134
  list(options: ManagedAgentRequestOptions & {
95
135
  cursor?: string;
96
136
  limit?: number;
@@ -108,6 +148,14 @@ export interface ManagedAgentProvider {
108
148
  }, options: ManagedAgentCommandOptions): Promise<{
109
149
  sessionId: string;
110
150
  }>;
151
+ createSession?(request: {
152
+ agentId: string;
153
+ workspaceId: string;
154
+ cwdRelative: string;
155
+ text: string;
156
+ }, options: ManagedAgentCommandOptions): Promise<{
157
+ sessionId: string;
158
+ }>;
111
159
  };
112
160
  listSessions(options: ManagedAgentRequestOptions & {
113
161
  workspaceCwd?: string;
@@ -139,6 +187,12 @@ export interface ManagedAgentProvider {
139
187
  * depend on stream activity.
140
188
  */
141
189
  onEstablished?(): void;
190
+ /**
191
+ * Called for each complete heartbeat or comment frame the stream
192
+ * delivers. Heartbeats never decode into events, so on an idle
193
+ * Session this is the only sign of life an established stream gives.
194
+ */
195
+ onAlive?(): void;
142
196
  }): AsyncIterable<ManagedAgentSessionEvent>;
143
197
  }
144
198
  export interface ManagedAgentWorkspace {
@@ -0,0 +1,7 @@
1
+ import type { JavaManagedAgentProviderOptions } from './java-managed-agent-provider';
2
+ /** Local Vite configuration; the production host supplies these provider options directly. */
3
+ export declare function managedDevelopmentOptions(params: URLSearchParams, env: {
4
+ VITE_MANAGED_AGENT_ACTOR_ID?: string;
5
+ VITE_MANAGED_AGENT_MODEL_PRESETS?: string;
6
+ VITE_MANAGED_AGENT_WORKSPACE_BINDING?: string;
7
+ }): Pick<JavaManagedAgentProviderOptions, 'productScope' | 'getHeaders' | 'enableWorkspaceBinding' | 'modelPresets'>;
@@ -12,3 +12,9 @@
12
12
  * are worth another attempt.
13
13
  */
14
14
  export declare function isNonRetryableClientError(error: unknown): boolean;
15
+ /**
16
+ * A 401/403. This client re-derives its credentials on every request, so an
17
+ * expired short-lived token gets a fresh answer on the very next attempt
18
+ * once the host refreshes — never a terminal condition.
19
+ */
20
+ export declare function isAuthFailure(error: unknown): boolean;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Qwen Team
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ type ManagedTaskMessage = string | ((vars?: Record<string, string | number>) => string);
7
+ export declare const MANAGED_TASK_MESSAGES_EN: Record<string, ManagedTaskMessage>;
8
+ export declare const MANAGED_TASK_MESSAGES_ZH: Record<string, ManagedTaskMessage>;
9
+ export {};
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Qwen Team
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ export declare const MANAGED_TASK_MESSAGES_EN: {};
7
+ export declare const MANAGED_TASK_MESSAGES_ZH: {};
@@ -0,0 +1,4 @@
1
+ import type { ManagedTask, ManagedTaskCancelOperation, ManagedTaskEvent } from './managed-agent-provider';
2
+ export declare const task: ManagedTask;
3
+ export declare const taskOperation: ManagedTaskCancelOperation;
4
+ export declare function taskEvent(cursor: string, type?: string): ManagedTaskEvent;
@@ -0,0 +1,21 @@
1
+ import type { ManagedAgentProvider, ManagedAgentSessionSummary } from './managed-agent-provider';
2
+ interface CwdIntent {
3
+ sessionId: string;
4
+ workspaceId: string;
5
+ cwdRelative: string;
6
+ expectedContextRevision: number;
7
+ idempotencyKey: string;
8
+ operationId?: string;
9
+ }
10
+ export declare function useManagedCwdChange(provider: ManagedAgentProvider, clientId: string, sessionId: string | undefined, summary: ManagedAgentSessionSummary | undefined, refreshSummary: (signal?: AbortSignal) => Promise<ManagedAgentSessionSummary | undefined>): {
11
+ blocked: boolean;
12
+ submit: (cwdRelative: string, expectedContextRevision: number) => Promise<true | undefined>;
13
+ confirm: () => Promise<void>;
14
+ isBlocked: () => boolean;
15
+ key: string;
16
+ pending?: CwdIntent;
17
+ busy: boolean;
18
+ errorCode?: string;
19
+ target?: string;
20
+ };
21
+ export {};
@@ -1,12 +1,26 @@
1
1
  import type { ManagedAgentProvider, ManagedAgentSessionEvent, ManagedAgentSessionSummary } from './managed-agent-provider';
2
+ type SignalLeg = 'session' | 'transcript' | 'stream';
3
+ interface SignalEntry {
4
+ readonly message: string;
5
+ readonly final: boolean;
6
+ readonly seq: number;
7
+ readonly leg: SignalLeg;
8
+ readonly stall?: boolean;
9
+ }
10
+ export declare function failureRetryDelayMs(failures: number): number;
2
11
  export declare function useManagedSession(provider: ManagedAgentProvider, clientId: string, sessionId: string | undefined): {
12
+ stoppedReason: string | undefined;
13
+ stoppedLeg: SignalLeg | undefined;
14
+ error: string | undefined;
3
15
  loadingOlder: boolean;
4
16
  loadOlder: () => Promise<void>;
5
17
  reload: () => void;
18
+ refreshSummary: (signal?: AbortSignal) => Promise<ManagedAgentSessionSummary | undefined>;
6
19
  sessionId?: string;
7
20
  summary?: ManagedAgentSessionSummary;
8
21
  events: ManagedAgentSessionEvent[];
9
22
  olderCursor?: string;
10
23
  loading: boolean;
11
- error?: string;
24
+ signals?: Partial<Record<SignalLeg, SignalEntry>>;
12
25
  };
26
+ export {};
@@ -0,0 +1,12 @@
1
+ import type { ManagedAgentProvider, ManagedTask } from './managed-agent-provider';
2
+ export interface ManagedTaskCancelState {
3
+ status: 'submitting' | 'stopping' | 'unconfirmed' | 'failed';
4
+ busy: boolean;
5
+ code?: string;
6
+ }
7
+ export declare function useManagedTaskCancel(provider: ManagedAgentProvider, clientId: string, sessionId: string | undefined, snapshots: readonly ManagedTask[], refreshTasks: () => void, applySnapshot: (task: ManagedTask) => void): {
8
+ states: Record<string, ManagedTaskCancelState>;
9
+ pendingTaskIds: string[];
10
+ submit(task: ManagedTask): Promise<void>;
11
+ resume(taskId: string): Promise<void>;
12
+ };
@@ -0,0 +1,49 @@
1
+ import type { ManagedAgentProvider, ManagedTask } from './managed-agent-provider';
2
+ export declare function isManagedTaskTerminal(task: ManagedTask): boolean;
3
+ export declare function useManagedTasks(provider: ManagedAgentProvider, clientId: string, sessionId: string | undefined, open: boolean): {
4
+ page: {
5
+ data: import("./generated/managed-agent-api").components["schemas"]["WebShellTask"][];
6
+ hasMore: boolean;
7
+ nextCursor?: string | null;
8
+ };
9
+ task: {
10
+ taskId: string;
11
+ sessionId: string;
12
+ kind: import("./generated/managed-agent-api").components["schemas"]["TaskKind"];
13
+ state: import("./generated/managed-agent-api").components["schemas"]["TaskState"];
14
+ definitionRevision?: number;
15
+ runtimeState?: import("./generated/managed-agent-api").components["schemas"]["TaskRuntimeState"];
16
+ createdAt: number;
17
+ startedAt?: number;
18
+ settledAt?: number;
19
+ outputCursor?: string;
20
+ artifactRefs: string[];
21
+ actionCapabilities: import("./generated/managed-agent-api").components["schemas"]["TaskActionCapability"][];
22
+ } | undefined;
23
+ selectedId: string | undefined;
24
+ events: {
25
+ schemaVersion: number;
26
+ projectionVersion: number;
27
+ taskId: string;
28
+ sessionId: string;
29
+ type: import("./generated/managed-agent-api").components["schemas"]["TaskEventType"];
30
+ cursor: string;
31
+ createdAt: number;
32
+ state?: import("./generated/managed-agent-api").components["schemas"]["TaskState"];
33
+ runtimeState?: import("./generated/managed-agent-api").components["schemas"]["TaskRuntimeState"];
34
+ text?: string;
35
+ truncated?: boolean;
36
+ artifactId?: string;
37
+ }[];
38
+ moreEvents: boolean;
39
+ historyGap: boolean;
40
+ loading: boolean;
41
+ error: unknown;
42
+ hasPrevious: boolean;
43
+ refresh: () => void;
44
+ apply: (task: ManagedTask) => void;
45
+ select: (taskId?: string) => void;
46
+ next: () => void;
47
+ previous: () => void;
48
+ loadMoreEvents: () => void;
49
+ };
@@ -0,0 +1 @@
1
+ export declare function BrowserNotificationControl(): import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,8 @@
1
+ import { type ReactNode } from 'react';
2
+ export interface SelectionCopyMenuProps {
3
+ children: ReactNode;
4
+ className: string;
5
+ content: string;
6
+ enabled: boolean;
7
+ }
8
+ export declare function SelectionCopyMenu({ children, className, content, enabled, }: SelectionCopyMenuProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import type { SelectionCopyMenuProps } from './SelectionCopyMenu';
2
+ export declare function SelectionCopyMenu({ children, className, }: SelectionCopyMenuProps): import("react/jsx-runtime").JSX.Element;
@@ -5,6 +5,7 @@ interface ToolApprovalProps {
5
5
  onConfirm: (id: string, selectedOption: string) => void | Promise<void>;
6
6
  variant?: 'inline' | 'floating';
7
7
  disabled?: boolean;
8
+ showBrowserNotifications?: boolean;
8
9
  /**
9
10
  * Whether this approval should pull keyboard focus to its safe-default option
10
11
  * when it becomes the topmost (visible) one — on appearance, or when a panel/
@@ -32,5 +33,5 @@ export declare function parseTitle(title?: string): {
32
33
  toolName: string;
33
34
  description: string;
34
35
  };
35
- export declare function ToolApproval({ request, onConfirm, variant, disabled, keyboardActive, extraDescriptionId, planTodos, planExecutionMode, generateContent, }: ToolApprovalProps): import("react/jsx-runtime").JSX.Element;
36
+ export declare function ToolApproval({ request, onConfirm, variant, disabled, showBrowserNotifications, keyboardActive, extraDescriptionId, planTodos, planExecutionMode, generateContent, }: ToolApprovalProps): import("react/jsx-runtime").JSX.Element;
36
37
  export {};
@@ -1,5 +1,6 @@
1
- import type { ACPToolCall } from '../../adapters/types';
2
- export { isActiveToolStatus } from '../../adapters/toolClassification';
1
+ import type { ACPToolCall } from '../../adapters/types.js';
2
+ export { isAskUserQuestionToolName } from '../../constants/toolNames.js';
3
+ export { isActiveToolStatus } from '../../adapters/toolClassification.js';
3
4
  /**
4
5
  * Internal-tool-name → display-name lookup. This is a standalone copy of
5
6
  * core's `ToolDisplayNames` (mapped to wire names, as the CLI's shared
@@ -19,7 +20,6 @@ export declare function formatToolDisplayName(toolName: string): string;
19
20
  * English {@link formatToolDisplayName}. Pass the `t` from `useI18n()`.
20
21
  */
21
22
  export declare function localizeToolDisplayName(toolName: string, t: (key: string, vars?: Record<string, string | number>) => string): string;
22
- export declare function isAskUserQuestionToolName(toolName: string): boolean;
23
23
  export declare function isAdvisorToolName(toolName: string): boolean;
24
24
  export declare function isCompletedAskUserQuestion(tool: ACPToolCall): boolean;
25
25
  export declare function getQuestionAnswerResult(tool: ACPToolCall): {
@@ -44,5 +44,10 @@ export type EnvironmentAgentTask = DaemonSessionAgentTaskStatus & {
44
44
  color?: string;
45
45
  lineageState?: 'complete' | 'orphaned' | 'cycle';
46
46
  };
47
+ /**
48
+ * Statuses this panel renders with a spinner. The header's activity dot keys
49
+ * off the same set, so the dot cannot promise a row the panel shows settled.
50
+ */
51
+ export declare function isTaskInProgress(status: DaemonSessionTaskWithWorkflowStatus['status']): boolean;
47
52
  export declare function EnvironmentPanel({ sources, onOpenSource, retrySourceRegistration, floating, hidden, workspaceCwd, gitWorkspaceCwd, gitCwd, gitSessionId, branch, gitStatus, tasks, agentTasks, attachments, attachmentsLoading, attachmentsError, onRetryAttachments, artifacts, artifactsLoading, items, onOpenGitDiff, onOpenGitCommit, onOpenGitWorktrees, onOpenGitLog, onOpenAgent, onOpenAgentWorkflow, onOpenTask, onReadImage, onImagePreview, onAttachmentPreview, onAttachmentPreviewError, onOpenArtifact, onDismiss, }: EnvironmentPanelProps): import("react/jsx-runtime").JSX.Element;
48
53
  export {};
@@ -1,7 +1,7 @@
1
1
  import type * as React from 'react';
2
2
  import { type VariantProps } from 'class-variance-authority';
3
3
  declare const alertVariants: (props?: ({
4
- variant?: "default" | "destructive" | "success" | null | undefined;
4
+ variant?: "success" | "default" | "destructive" | null | undefined;
5
5
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
6
6
  declare function Alert({ className, variant, ...props }: React.ComponentProps<'div'> & VariantProps<typeof alertVariants>): import("react/jsx-runtime").JSX.Element;
7
7
  declare function AlertTitle({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,5 @@
1
+ import * as ResizablePrimitive from 'react-resizable-panels';
2
+ declare const ResizablePanelGroup: import("react").ForwardRefExoticComponent<Omit<ResizablePrimitive.GroupProps, "elementRef"> & import("react").RefAttributes<HTMLDivElement>>;
3
+ declare const ResizablePanel: import("react").ForwardRefExoticComponent<Omit<ResizablePrimitive.PanelProps, "elementRef"> & import("react").RefAttributes<HTMLDivElement>>;
4
+ declare const ResizableHandle: import("react").ForwardRefExoticComponent<Omit<ResizablePrimitive.SeparatorProps, "elementRef"> & import("react").RefAttributes<HTMLDivElement>>;
5
+ export { ResizableHandle, ResizablePanel, ResizablePanelGroup };
@@ -7,3 +7,4 @@
7
7
  export declare const AGENT_TOOL_NAME = "agent";
8
8
  /** Whether a tool name identifies the Agent (sub-agent) tool. */
9
9
  export declare function isAgentTool(toolName: string | undefined): boolean;
10
+ export declare function isAskUserQuestionToolName(toolName: string): boolean;
@@ -136,7 +136,7 @@ export interface WebShellChatHeaderOptions {
136
136
  /** Built-in header actions to show. Token and context usage are opt-in. */
137
137
  items?: readonly WebShellChatHeaderItem[];
138
138
  }
139
- export type WebShellRightPanelItem = 'review' | 'sideTask' | 'terminal' | 'webPreview' | 'trajectory';
139
+ export type WebShellRightPanelItem = 'files' | 'review' | 'sideTask' | 'terminal' | 'webPreview' | 'trajectory';
140
140
  export interface WebShellRightPanelOptions {
141
141
  /** Empty-state actions to show. Defaults to review and sideTask. */
142
142
  items?: readonly WebShellRightPanelItem[];
@@ -15,10 +15,11 @@ export interface TurnNotificationContent {
15
15
  sessionTitle?: string;
16
16
  promptText?: string;
17
17
  responseText?: string;
18
+ attention?: 'approval' | 'question';
18
19
  }
19
20
  export interface TurnNotification extends TurnNotificationContent {
20
21
  key: string;
21
- outcome: 'completed' | 'failed' | 'ended' | 'cancelled';
22
+ outcome: 'completed' | 'failed' | 'ended' | 'cancelled' | 'approval' | 'question';
22
23
  }
23
24
  export interface TurnNotificationObserver {
24
25
  retain(scope: string): () => void;
@@ -4,7 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import type { ReactNode } from 'react';
7
- import type { CreateSessionRequest, DaemonBranchSessionRequest, DaemonCapabilities, DaemonBackgroundTurn, DaemonEvent, DaemonApprovalMode, DaemonApprovalModeResult, DaemonAvailableCommand, DaemonForkSessionResult, DaemonInputAnnotation, DaemonSessionBtwResult, DaemonSessionGenerationEvent, DaemonSessionAttachmentReference, DaemonSessionAttachmentData, DaemonMidTurnMessageResult, DaemonMidTurnMessagesResult, DaemonRemoveMidTurnMessageResult, DaemonPendingPromptsResult, DaemonRemovePendingPromptResult, DaemonSessionContextStatus, DaemonSessionSavedWorkflowDetail, DaemonSessionContextUsageStatus, DaemonSessionRecapResult, DaemonRewindResult, DaemonRewindSnapshotInfo, DaemonSession, DaemonSessionSummary, DaemonSessionSupportedCommandsStatus, DaemonSessionTaskWithWorkflowStatus, DaemonSessionTasksStatus, DaemonSessionWorkflowTaskStatus, DaemonSessionWorkflowTasksStatus, DaemonSessionStatsStatus, DaemonSessionArtifactsEnvelope, DaemonSessionArtifactInput, DaemonSessionArtifactMutationResult, SessionSourceInput, SessionSourcesResult, SessionSourceUpsertResult, SessionSourceRemoveResult, DaemonSkillToggleMutation, DaemonShellCommandResult, DaemonTranscriptBlock, DaemonTranscriptStore, DaemonWorkspaceGitStatus, DaemonWorkspaceProvidersStatus, DaemonStandaloneCreationRecovery, DaemonStandaloneWorkingDirectory, HeartbeatResult, GoalControlRequest, GoalSnapshotV2, GoalStateResponse, PermissionResponse, PromptContentBlock, PromptResult, ReasoningSelection, SessionMetadataResult, SetModelResult } from '@qwen-code/sdk/daemon';
7
+ import type { CreateSessionRequest, DaemonBranchSessionRequest, DaemonCapabilities, DaemonBackgroundTurn, DaemonEvent, DaemonApprovalMode, DaemonApprovalModeResult, DaemonAvailableCommand, DaemonForkSessionResult, DaemonInputAnnotation, DaemonSessionBtwResult, DaemonSessionGenerationEvent, DaemonSessionAttachmentReference, DaemonSessionAttachmentData, DaemonMidTurnMessageResult, DaemonMidTurnMessagesResult, DaemonRemoveMidTurnMessageResult, DaemonSendMidTurnMessagesNowResult, DaemonPendingPromptsResult, DaemonRemovePendingPromptResult, DaemonSessionContextStatus, DaemonSessionSavedWorkflowDetail, DaemonSessionContextUsageStatus, DaemonSessionRecapResult, DaemonRewindResult, DaemonRewindSnapshotInfo, DaemonSession, DaemonSessionSummary, DaemonSessionSupportedCommandsStatus, DaemonSessionTaskWithWorkflowStatus, DaemonSessionTasksStatus, DaemonSessionWorkflowTaskStatus, DaemonSessionWorkflowTasksStatus, DaemonSessionStatsStatus, DaemonSessionArtifactsEnvelope, DaemonSessionArtifactInput, DaemonSessionArtifactMutationResult, SessionSourceInput, SessionSourcesResult, SessionSourceUpsertResult, SessionSourceRemoveResult, DaemonSkillToggleMutation, DaemonShellCommandResult, DaemonTranscriptBlock, DaemonTranscriptStore, DaemonWorkspaceGitStatus, DaemonWorkspaceProvidersStatus, DaemonStandaloneCreationRecovery, DaemonStandaloneWorkingDirectory, HeartbeatResult, GoalControlRequest, GoalSnapshotV2, GoalStateResponse, PermissionResponse, PromptContentBlock, PromptResult, ReasoningSelection, SessionMetadataResult, SetModelResult } from '@qwen-code/sdk/daemon';
8
8
  export type DaemonConnectionStatus = 'idle' | 'connecting' | 'connected' | 'disconnected' | 'error';
9
9
  export interface DaemonSessionOwnerSnapshot {
10
10
  isCurrent(): boolean;
@@ -489,6 +489,14 @@ export interface DaemonSessionActions {
489
489
  onAdmissionStarted?: () => void;
490
490
  }): Promise<DaemonMidTurnMessageResult>;
491
491
  removeMidTurnMessage(messageId: string, opts?: PendingPromptActionOptions): Promise<DaemonRemoveMidTurnMessageResult>;
492
+ /**
493
+ * Ask the daemon to deliver the queued mid-turn messages now, cutting short
494
+ * a model response that a foreground turn is streaming, unless it has
495
+ * started a tool call.
496
+ * Pre-flight the daemon's `session_mid_turn_send_now` capability: older
497
+ * daemons lack the route.
498
+ */
499
+ sendMidTurnMessagesNow(opts?: PendingPromptActionOptions): Promise<DaemonSendMidTurnMessagesNowResult>;
492
500
  /**
493
501
  * Best-effort reconciliation snapshot (queue + delivery-state rings) from the
494
502
  * daemon. Resolves `undefined` (never throws/raises a notice) when there
@@ -98,6 +98,7 @@ export interface UseComposerCoreOptions {
98
98
  atWorkspaceCwd?: string;
99
99
  composerScopeKey?: string;
100
100
  disableLegacyHistoryFallback?: boolean;
101
+ shellModeEnabled?: boolean;
101
102
  attachmentsEnabled?: boolean;
102
103
  workspaceFeaturesEnabled?: boolean;
103
104
  composerTagIcons?: WebShellComposerTagIconMap;
@@ -124,6 +125,8 @@ export interface UseComposerCoreOptions {
124
125
  /** CodeMirror theme extension for the editor view. Each variant provides its own. */
125
126
  editorTheme: Parameters<typeof EditorView.theme>[0];
126
127
  }
128
+ export declare function getComposerDraftStorageKey(sessionId: string | undefined, workspaceCwd: string | undefined): string | undefined;
129
+ export declare function clearComposerDraftIfMatches(storageKey: string | undefined, text: string): void;
127
130
  export interface SearchState {
128
131
  searchMode: boolean;
129
132
  searchQuery: string;
@@ -70,6 +70,8 @@ export interface UseQueuedPromptsResult {
70
70
  enqueuePrompt: (text: string, images?: PromptImage[], files?: PromptFile[], onComplete?: () => void, inputAnnotations?: DaemonInputAnnotation[], onAdmitted?: () => void, submittedPrompt?: string) => boolean;
71
71
  removeQueuedPrompt: (id: number) => void;
72
72
  insertQueuedPrompt: (id: number) => Promise<void>;
73
+ /** Ask the daemon to deliver the queued mid-turn messages now. */
74
+ sendQueuedPromptNow: (id: number) => Promise<void>;
73
75
  editQueuedPrompt: (id: number) => Promise<void>;
74
76
  editLastQueuedPrompt: () => boolean;
75
77
  clearQueuedPrompts: () => boolean;
@@ -0,0 +1,27 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Qwen Team
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { type DaemonEvent, type ExecutionLifecycleEntry, type ToolLifecycleEntry } from '@qwen-code/sdk/daemon';
7
+ import type { Trajectory } from './types';
8
+ import type { TrajectoryLiveSnapshot } from './trajectory-live-store';
9
+ export type TrajectoryLifecycleEntry = ExecutionLifecycleEntry | ToolLifecycleEntry;
10
+ export interface TrajectoryLifecycleProjection {
11
+ byRowKey: ReadonlyMap<string, TrajectoryLifecycleEntry>;
12
+ byExecution: ReadonlyMap<string, TrajectoryLifecycleEntry>;
13
+ outsideWindow: readonly TrajectoryLifecycleEntry[];
14
+ status: TrajectoryLiveSnapshot['status'];
15
+ incomplete: boolean;
16
+ truncated: boolean;
17
+ }
18
+ export declare function projectHistoricalLifecycle(events: readonly DaemonEvent[]): {
19
+ requests: import("@qwen-code/sdk/daemon").ExecutionLifecycleState;
20
+ tools: import("@qwen-code/sdk/daemon").ToolLifecycleState;
21
+ truncated: boolean;
22
+ incomplete: boolean;
23
+ };
24
+ export declare function projectTrajectoryLifecycle(history: ReturnType<typeof projectHistoricalLifecycle>, trajectory: Trajectory | undefined, identity: {
25
+ sessionId: string;
26
+ scope?: string;
27
+ } | undefined, live: TrajectoryLiveSnapshot): TrajectoryLifecycleProjection;
@@ -0,0 +1,3 @@
1
+ import type { TrajectoryLiveSnapshot, TrajectoryLiveStore } from './trajectory-live-store.js';
2
+ export declare const TrajectoryLiveContext: import("react").Context<TrajectoryLiveStore | null>;
3
+ export declare function useTrajectoryLiveSnapshot(): TrajectoryLiveSnapshot;
@@ -0,0 +1,36 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Qwen Team
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { type DaemonEvent, type ExecutionLifecycleState, type ToolLifecycleState } from '@qwen-code/sdk/daemon';
7
+ export interface TrajectoryLiveSnapshot {
8
+ readonly sessionId?: string;
9
+ readonly scope?: string;
10
+ readonly epoch?: string;
11
+ readonly lastEventId?: number;
12
+ readonly status: 'catching-up' | 'live' | 'stale' | 'unavailable';
13
+ readonly reason?: string;
14
+ readonly requests: ExecutionLifecycleState;
15
+ readonly tools: ToolLifecycleState;
16
+ readonly incomplete: boolean;
17
+ readonly truncated: boolean;
18
+ }
19
+ export interface TrajectoryLiveInput {
20
+ sessionId: string;
21
+ scope: string;
22
+ epoch?: string;
23
+ lastEventId?: number;
24
+ events: readonly DaemonEvent[];
25
+ incomplete: boolean;
26
+ }
27
+ export interface TrajectoryLiveStore {
28
+ getSnapshot(): TrajectoryLiveSnapshot;
29
+ subscribe(listener: () => void): () => void;
30
+ begin(owner: object, input: TrajectoryLiveInput): void;
31
+ reconnect(owner: object, liveOnly?: boolean): void;
32
+ ingest(owner: object, event: DaemonEvent, epoch?: string): void;
33
+ invalidate(owner: object, reason: string): void;
34
+ clear(): void;
35
+ }
36
+ export declare function createTrajectoryLiveStore(): TrajectoryLiveStore;
@@ -15,6 +15,10 @@ export interface TrajectoryTranscriptClient {
15
15
  cursor?: string;
16
16
  }): Promise<TrajectoryPageResult>;
17
17
  }
18
+ export declare function trajectoryLoaderIdentity(loader: TrajectoryPageLoader | undefined): {
19
+ sessionId: string;
20
+ scope?: string;
21
+ } | undefined;
18
22
  /**
19
23
  * A page loader for one session, stable per (client, session).
20
24
  *
@@ -30,4 +34,4 @@ export interface TrajectoryTranscriptClient {
30
34
  * `summary` projection, which rewrites the event stream the timing frames sit
31
35
  * in.
32
36
  */
33
- export declare function createTrajectoryPageLoader(client: TrajectoryTranscriptClient, sessionId: string): TrajectoryPageLoader;
37
+ export declare function createTrajectoryPageLoader(client: TrajectoryTranscriptClient, sessionId: string, scope?: string): TrajectoryPageLoader;
@@ -5,6 +5,7 @@
5
5
  */
6
6
  import type { DaemonEvent } from '@qwen-code/sdk/daemon';
7
7
  import type { Trajectory } from './types';
8
+ import { type TrajectoryLifecycleProjection } from './project-trajectory-lifecycle';
8
9
  /**
9
10
  * Records asked for per read. The daemon caps a page at 500 records and at
10
11
  * 4 MB, whichever binds first, so a session whose tools wrote a lot comes back
@@ -65,6 +66,7 @@ export type TrajectoryWindowFailure = {
65
66
  export declare const TRAJECTORY_BOOKMARK_LIMIT = 64;
66
67
  export declare const TRAJECTORY_CURSOR_BUDGET: number;
67
68
  export interface TrajectoryWindow {
69
+ lifecycle: TrajectoryLifecycleProjection;
68
70
  trajectory: Trajectory | undefined;
69
71
  status: 'idle' | 'loading' | 'ready' | 'error';
70
72
  error?: TrajectoryWindowFailure;
@@ -3,7 +3,7 @@
3
3
  * Copyright 2025 Qwen Team
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import type { PermissionRequest } from '../adapters/types';
6
+ import type { PermissionRequest } from '../adapters/types.js';
7
7
  /**
8
8
  * True when a pending permission is an AskUserQuestion prompt (it carries a
9
9
  * `questions` array, and either no tool name or the AskUserQuestion tool name)