@qwen-code/web-shell 0.25.2 → 0.25.3-nightly.20261020.82bd240ad0

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 (387) hide show
  1. package/NOTICES.txt +1272 -0
  2. package/README.md +92 -30
  3. package/dist/{PierreFilePreview-Dk1ZVwYX.js → PierreFilePreview-DbJyUSpR.js} +3218 -5181
  4. package/dist/{SpreadsheetPreview-Cfub7Cau.js → SpreadsheetPreview-CQGPYcLQ.js} +2 -2
  5. package/dist/WorkspaceFileBrowser-CBvTlBuz.js +9102 -0
  6. package/dist/{agents-route-By3UwziU.js → agents-route-Bo9fr292.js} +2 -2
  7. package/dist/{cpp-Bb6c2fiE.js → cpp-C0xArK63.js} +12 -8
  8. package/dist/daemon-react-sdk.js +1 -1
  9. package/dist/docx-preview-BucJeYCm.js +5570 -0
  10. package/dist/{index-1CTTJPhC.js → index-DmU0i0mi.js} +57719 -52504
  11. package/dist/index.js +22 -22
  12. package/dist/ruby-vDzP41xB.js +41 -0
  13. package/dist/sw.js +1 -1
  14. package/dist/transcript.js +11249 -10493
  15. package/dist/types/App.d.ts +9 -3
  16. package/dist/types/adapters/messageTypes.d.ts +3 -0
  17. package/dist/types/adapters/transcriptToMessages.d.ts +3 -1
  18. package/dist/types/components/ChatContextHeader.d.ts +3 -1
  19. package/dist/types/components/ChatEditor.d.ts +9 -0
  20. package/dist/types/components/ChatPane.d.ts +2 -1
  21. package/dist/types/components/ContextUsagePopover.d.ts +2 -1
  22. package/dist/types/components/MessageDeletionToolbar.d.ts +4 -0
  23. package/dist/types/components/MessageItem.d.ts +2 -0
  24. package/dist/types/components/MessageList.d.ts +2 -0
  25. package/dist/types/components/MessageTimestamp.d.ts +5 -2
  26. package/dist/types/components/ModelRefreshControl.d.ts +5 -0
  27. package/dist/types/components/SplitView.d.ts +2 -1
  28. package/dist/types/components/StreamingStatus.d.ts +2 -1
  29. package/dist/types/components/artifacts/ArtifactPanel.d.ts +6 -1
  30. package/dist/types/components/artifacts/CodeReviewArtifactDetail.d.ts +5 -0
  31. package/dist/types/components/artifacts/DocxPreview.d.ts +8 -0
  32. package/dist/types/components/artifacts/TrajectoryExecutions.d.ts +15 -0
  33. package/dist/types/components/artifacts/TrajectoryInspector.d.ts +5 -1
  34. package/dist/types/components/artifacts/TrajectoryOverview.d.ts +2 -0
  35. package/dist/types/components/artifacts/TrajectorySummaryBar.d.ts +35 -0
  36. package/dist/types/components/artifacts/TrajectoryToolbar.d.ts +24 -0
  37. package/dist/types/components/artifacts/artifactUtils.d.ts +7 -0
  38. package/dist/types/components/artifacts/file-name-display.d.ts +1 -0
  39. package/dist/types/components/artifacts/files-messages.d.ts +30 -0
  40. package/dist/types/components/artifacts/token-usage-messages.d.ts +9 -0
  41. package/dist/types/components/artifacts/token-usage-messages.transcript-stub.d.ts +7 -0
  42. package/dist/types/components/artifacts/useArtifactWorkspaceTarget.d.ts +6 -2
  43. package/dist/types/components/channels/channel-platform.d.ts +1 -1
  44. package/dist/types/components/dialogs/AddWorkspaceDialog.d.ts +3 -1
  45. package/dist/types/components/dialogs/ApprovalModeDialog.d.ts +3 -1
  46. package/dist/types/components/dialogs/ModelDialog.d.ts +3 -1
  47. package/dist/types/components/managed/ManagedSessionsPage.d.ts +4 -1
  48. package/dist/types/components/managed/RemoteWorkspaceRegistration.d.ts +9 -0
  49. package/dist/types/components/managed/WorkspaceBindingCreator.d.ts +2 -1
  50. package/dist/types/components/managed/generated/managed-agent-api.d.ts +1436 -278
  51. package/dist/types/components/managed/java-managed-agent-client.d.ts +61 -0
  52. package/dist/types/components/managed/managed-agent-provider.d.ts +118 -0
  53. package/dist/types/components/managed/managed-input.d.ts +7 -0
  54. package/dist/types/components/managed/managed-pending-storage.d.ts +2 -0
  55. package/dist/types/components/managed/managed-session-messages.d.ts +1 -0
  56. package/dist/types/components/managed/managed-session-storage.d.ts +1 -1
  57. package/dist/types/components/managed/managed-workspace-messages.d.ts +7 -0
  58. package/dist/types/components/managed/managed-workspace-messages.transcript-stub.d.ts +7 -0
  59. package/dist/types/components/managed/use-managed-approval-change.d.ts +25 -0
  60. package/dist/types/components/managed/use-managed-file-references.d.ts +19 -0
  61. package/dist/types/components/managed/use-managed-mcp.d.ts +3 -0
  62. package/dist/types/components/managed/use-managed-model-change.d.ts +23 -0
  63. package/dist/types/components/managed/use-managed-skills.d.ts +12 -0
  64. package/dist/types/components/managed/use-managed-tasks.d.ts +1 -0
  65. package/dist/types/components/message-deletion-messages.d.ts +7 -0
  66. package/dist/types/components/message-deletion-messages.transcript-stub.d.ts +7 -0
  67. package/dist/types/components/messages/TasksStatusMessage.d.ts +6 -0
  68. package/dist/types/components/messages/toolFormatting.d.ts +1 -0
  69. package/dist/types/components/messages/tools/ToolDetailsContext.d.ts +13 -0
  70. package/dist/types/components/sidebar/WebShellSidebar.d.ts +4 -1
  71. package/dist/types/components/ui/alert.d.ts +1 -1
  72. package/dist/types/components/ui/drawer.d.ts +1 -1
  73. package/dist/types/constants/sessions.d.ts +1 -0
  74. package/dist/types/customization.d.ts +4 -1
  75. package/dist/types/daemon/session/actions.d.ts +10 -2
  76. package/dist/types/daemon/session/types.d.ts +9 -2
  77. package/dist/types/hooks/useApprovalModes.d.ts +2 -0
  78. package/dist/types/hooks/useAtMentionSources.d.ts +5 -0
  79. package/dist/types/hooks/useComposerCore.d.ts +2 -2
  80. package/dist/types/hooks/useInputHistory.d.ts +0 -4
  81. package/dist/types/hooks/useMessageDeletion.d.ts +33 -0
  82. package/dist/types/hooks/useModelRefresh.d.ts +6 -0
  83. package/dist/types/index.d.ts +2 -1
  84. package/dist/types/trajectory/execution-messages.d.ts +9 -0
  85. package/dist/types/trajectory/execution-messages.transcript-stub.d.ts +7 -0
  86. package/dist/types/trajectory/project-trajectory-executions.d.ts +23 -0
  87. package/dist/types/trajectory/summarizeTrajectory.d.ts +5 -0
  88. package/dist/types/trajectory/trajectory-status.d.ts +51 -0
  89. package/dist/types/trajectory/useTrajectoryWindow.d.ts +2 -0
  90. package/dist/types/transcript.d.ts +2 -2
  91. package/dist/types/utils/composerTag.d.ts +1 -0
  92. package/dist/types/utils/dom.d.ts +1 -0
  93. package/dist/types/utils/message-deletion.d.ts +20 -0
  94. package/dist/types/utils/planMode.d.ts +5 -1
  95. package/dist/types/utils/plural.d.ts +7 -0
  96. package/dist/types/voice/voice-workspace-target.d.ts +2 -0
  97. package/dist/{useDaemonMidTurnInjected-ClQx7vwI.js → useDaemonMidTurnInjected-ctHWTA_N.js} +6183 -5515
  98. package/dist/{vue-d9VL4uFG.js → vue-IHw0KG71.js} +23 -21
  99. package/package.json +9 -4
  100. package/dist/WorkspaceFileBrowser-BF1_WOlE.js +0 -11389
  101. package/dist/abap-Y8Dl9g_6.js +0 -6
  102. package/dist/actionscript-3-BaF0d0xQ.js +0 -6
  103. package/dist/ada-BF2KzuNn.js +0 -6
  104. package/dist/ahk-B-WqUgDL.js +0 -6
  105. package/dist/ahk2-SbcCPlaJ.js +0 -6
  106. package/dist/andromeeda-BbmzSJq1.js +0 -4
  107. package/dist/angular-html-rmyRipUB.js +0 -32
  108. package/dist/angular-ts-gqGZGIqw.js +0 -21
  109. package/dist/apache-BUjz-sD2.js +0 -6
  110. package/dist/apex-DvkHwMsp.js +0 -6
  111. package/dist/apl-9WGfvSCD.js +0 -16
  112. package/dist/applescript-BPx7YFFu.js +0 -6
  113. package/dist/ara-Z2fSOxSw.js +0 -6
  114. package/dist/asciidoc-BiIPQCNW.js +0 -6
  115. package/dist/asm-BTWLY5ym.js +0 -6
  116. package/dist/astro-B3VnZ88h.js +0 -18
  117. package/dist/aurora-x-BwoVEUWZ.js +0 -4
  118. package/dist/awk-Fb0P9dkn.js +0 -6
  119. package/dist/ayu-dark-DJoqd4M9.js +0 -4
  120. package/dist/ayu-light-BzXEJRJ-.js +0 -4
  121. package/dist/ayu-mirage-BJ2oZGzi.js +0 -4
  122. package/dist/ballerina-oZK-YekG.js +0 -6
  123. package/dist/bat-ydjv7YKs.js +0 -6
  124. package/dist/beancount-B97e4I_p.js +0 -6
  125. package/dist/berry-DODBq_Ff.js +0 -6
  126. package/dist/bibtex-EULQRLY5.js +0 -6
  127. package/dist/bicep-BorU73w0.js +0 -6
  128. package/dist/bird2-pg9hCHlc.js +0 -6
  129. package/dist/blade-C1Ndts_b.js +0 -20
  130. package/dist/bsl-D_YKmA0K.js +0 -8
  131. package/dist/c3-CFUossGW.js +0 -6
  132. package/dist/cadence-02UX7mW8.js +0 -6
  133. package/dist/cairo-DM6WF2e3.js +0 -8
  134. package/dist/catppuccin-frappe-DUuBHM65.js +0 -4
  135. package/dist/catppuccin-latte-BNGb0x5j.js +0 -4
  136. package/dist/catppuccin-macchiato-BxrBWMCk.js +0 -4
  137. package/dist/catppuccin-mocha-CuiVuFkm.js +0 -4
  138. package/dist/chapel-eL5CQ0M-.js +0 -8
  139. package/dist/clarity-9DleLt1s.js +0 -6
  140. package/dist/clojure-CXJfHrL3.js +0 -6
  141. package/dist/cmake-BJz8BOTU.js +0 -6
  142. package/dist/cobol-Dl6_7gJe.js +0 -10
  143. package/dist/codeowners-Bt9yU6NX.js +0 -6
  144. package/dist/codeql-DHkodjjI.js +0 -6
  145. package/dist/coffee-DGBR_nr_.js +0 -8
  146. package/dist/common-lisp-EVqT9Zhp.js +0 -6
  147. package/dist/coq-5TmQn6M5.js +0 -6
  148. package/dist/crystal-Bfb0oPlr.js +0 -18
  149. package/dist/csv-CmYOceLb.js +0 -6
  150. package/dist/cue-ZzumE7IT.js +0 -6
  151. package/dist/cypher-jpdmjtA6.js +0 -6
  152. package/dist/d-CBagWSwH.js +0 -6
  153. package/dist/dark-plus-pUHDTVV0.js +0 -4
  154. package/dist/dart-K6TBxHBr.js +0 -6
  155. package/dist/dax-CcDT-8dH.js +0 -6
  156. package/dist/desktop-B93p9R9O.js +0 -6
  157. package/dist/dotenv-To_iU2bW.js +0 -6
  158. package/dist/dracula-BtZx2Kac.js +0 -4
  159. package/dist/dracula-soft-BKa-aqBv.js +0 -4
  160. package/dist/dream-maker-PAx17jaB.js +0 -6
  161. package/dist/edge-Qug5O-Uv.js +0 -12
  162. package/dist/elixir-jJSGlzPp.js +0 -8
  163. package/dist/elm-BtNbw_Cd.js +0 -8
  164. package/dist/emacs-lisp--TAIYkU3.js +0 -6
  165. package/dist/erb-B9A6WGNp.js +0 -10
  166. package/dist/erlang-DNcDT8Hi.js +0 -8
  167. package/dist/everforest-dark-DMCBqXCK.js +0 -4
  168. package/dist/everforest-light-BbXl82Em.js +0 -4
  169. package/dist/fennel-N4WcXuKx.js +0 -6
  170. package/dist/fish-BTDEUgqH.js +0 -6
  171. package/dist/fluent-BMXUxfv1.js +0 -6
  172. package/dist/fortran-fixed-form-B67KFkXH.js +0 -8
  173. package/dist/fortran-free-form-CwqYvCLJ.js +0 -6
  174. package/dist/fsharp-CYOiIVNx.js +0 -8
  175. package/dist/gdresource-B6Cnl39M.js +0 -10
  176. package/dist/gdscript-BWeFgEe_.js +0 -6
  177. package/dist/gdshader-Bk8fF6yr.js +0 -6
  178. package/dist/genie-DzUvd7U9.js +0 -6
  179. package/dist/gherkin-DHRaV0YP.js +0 -6
  180. package/dist/git-commit-Bd32YZ0K.js +0 -8
  181. package/dist/git-rebase-ZWUFO_T4.js +0 -8
  182. package/dist/github-dark-default-BJPUVz4H.js +0 -4
  183. package/dist/github-dark-dimmed-DUshB20C.js +0 -4
  184. package/dist/github-dark-high-contrast-D3aGCnF8.js +0 -4
  185. package/dist/github-light-default-D99KPAby.js +0 -4
  186. package/dist/github-light-high-contrast-BbmZE-Mp.js +0 -4
  187. package/dist/gleam-Bv284lvN.js +0 -6
  188. package/dist/glimmer-js-B-ut3b08.js +0 -14
  189. package/dist/glimmer-ts-CDiMEfki.js +0 -14
  190. package/dist/glsl-CkUcVZNK.js +0 -8
  191. package/dist/gn-B0BSgybI.js +0 -6
  192. package/dist/gnuplot-yPG9-sE_.js +0 -6
  193. package/dist/graphql-CBu2ehBn.js +0 -14
  194. package/dist/groovy-CJQTphOW.js +0 -6
  195. package/dist/gruvbox-dark-hard-C5HOtKIh.js +0 -4
  196. package/dist/gruvbox-dark-medium-FVgwJHuz.js +0 -4
  197. package/dist/gruvbox-dark-soft-B46F314v.js +0 -4
  198. package/dist/gruvbox-light-hard-CJD38wDZ.js +0 -4
  199. package/dist/gruvbox-light-medium-BlIhMYTA.js +0 -4
  200. package/dist/gruvbox-light-soft-DoPHyLVZ.js +0 -4
  201. package/dist/hack-p63ac3SB.js +0 -10
  202. package/dist/haml-CM7CpQHU.js +0 -10
  203. package/dist/handlebars-DfCj1TEO.js +0 -14
  204. package/dist/haskell-WeIwNIP6.js +0 -6
  205. package/dist/haxe-CfMPOItY.js +0 -6
  206. package/dist/hcl-D438OF-I.js +0 -6
  207. package/dist/hjson-DYBUbqOl.js +0 -6
  208. package/dist/hlsl-Bk8TCZNL.js +0 -6
  209. package/dist/horizon-CJQ10nlf.js +0 -4
  210. package/dist/horizon-bright-2WzHy-Vo.js +0 -4
  211. package/dist/houston-BDYrDoDW.js +0 -4
  212. package/dist/html-derivative-DG8ajaXt.js +0 -8
  213. package/dist/http-DLvAkeD-.js +0 -14
  214. package/dist/hurl-CgkFN90t.js +0 -12
  215. package/dist/hxml-DV49tgRk.js +0 -8
  216. package/dist/hy-Brt5EZ7-.js +0 -6
  217. package/dist/imba-CimUv-Uh.js +0 -6
  218. package/dist/jinja-BHOV3ePe.js +0 -11
  219. package/dist/jison-DdreslRX.js +0 -8
  220. package/dist/json5-BT4Fjg39.js +0 -6
  221. package/dist/jsonl-BGuvDmy9.js +0 -6
  222. package/dist/jsonnet-Bx2cfsXg.js +0 -6
  223. package/dist/jssm-BcADi6EI.js +0 -6
  224. package/dist/julia-BxeXMQSJ.js +0 -16
  225. package/dist/just-CJ4EVsJK.js +0 -18
  226. package/dist/kanagawa-dragon-CQySOoTe.js +0 -4
  227. package/dist/kanagawa-lotus-CJRfph3t.js +0 -4
  228. package/dist/kanagawa-wave-Cu5PDRcJ.js +0 -4
  229. package/dist/kdl-BNOv9TC3.js +0 -6
  230. package/dist/kusto-BlqsQffZ.js +0 -6
  231. package/dist/laserwave-6a00oqik.js +0 -4
  232. package/dist/latex-BfhWTgWa.js +0 -8
  233. package/dist/lean-BnVxaZxY.js +0 -6
  234. package/dist/less-B1GLI2Di.js +0 -6
  235. package/dist/light-plus-CZuVqSLX.js +0 -4
  236. package/dist/liquid-D7d9j__1.js +0 -14
  237. package/dist/llvm-DMgfhPsy.js +0 -6
  238. package/dist/log-Al8wyEFV.js +0 -6
  239. package/dist/logo-DBa4JDzV.js +0 -6
  240. package/dist/luau-1oy8yWWo.js +0 -6
  241. package/dist/marko-D0HGUaN1.js +0 -14
  242. package/dist/material-theme-D6KBX41T.js +0 -4
  243. package/dist/material-theme-darker-CkRroheE.js +0 -4
  244. package/dist/material-theme-lighter-BUBw43Yz.js +0 -4
  245. package/dist/material-theme-ocean-ClGX14Ja.js +0 -4
  246. package/dist/material-theme-palenight-C1RVm8K1.js +0 -4
  247. package/dist/matlab-BOAaUVP0.js +0 -6
  248. package/dist/mdc-BI6stFvl.js +0 -12
  249. package/dist/mdx-BOhZZUJ8.js +0 -6
  250. package/dist/mermaid-xImSC5pG.js +0 -6
  251. package/dist/min-dark-C7ak0t6c.js +0 -4
  252. package/dist/min-light-CKFxVcPp.js +0 -4
  253. package/dist/mipsasm-CTx18fBl.js +0 -6
  254. package/dist/mojo-DjLViMAF.js +0 -6
  255. package/dist/monokai-B1aFr0iD.js +0 -4
  256. package/dist/moonbit-qkz9oK4f.js +0 -6
  257. package/dist/move-DoIXlL5f.js +0 -6
  258. package/dist/narrat-DmhDCBs-.js +0 -6
  259. package/dist/nextflow-BTRbEaxp.js +0 -8
  260. package/dist/nextflow-groovy-BJmbcwBu.js +0 -6
  261. package/dist/nginx-D7O4WoB1.js +0 -8
  262. package/dist/night-owl-Bm2rzalh.js +0 -4
  263. package/dist/night-owl-light-CBI5u5kw.js +0 -4
  264. package/dist/nim-DG7jk4Ht.js +0 -20
  265. package/dist/nix-fTRXMGic.js +0 -9
  266. package/dist/nord-CC5OiUXg.js +0 -4
  267. package/dist/nsis-CtKAvjMM.js +0 -6
  268. package/dist/nushell-CgtwSlO3.js +0 -6
  269. package/dist/objective-c-Itk8tzmv.js +0 -6
  270. package/dist/ocaml-eSVK32Eg.js +0 -6
  271. package/dist/odin-BItnF517.js +0 -6
  272. package/dist/one-dark-pro-C5d58L87.js +0 -4
  273. package/dist/one-light-LkMrt1Cf.js +0 -4
  274. package/dist/openscad-Sp5uZ6f2.js +0 -6
  275. package/dist/org-C5S6WgHQ.js +0 -100
  276. package/dist/pascal-xy8pJNns.js +0 -6
  277. package/dist/perl-vJzCkjjH.js +0 -16
  278. package/dist/pierre-dark-D52vmD1t.js +0 -4
  279. package/dist/pierre-dark-protanopia-deuteranopia-Coza2ydH.js +0 -4
  280. package/dist/pierre-dark-soft-D0o08Lfm.js +0 -4
  281. package/dist/pierre-dark-tritanopia-BP-A_WyN.js +0 -4
  282. package/dist/pierre-dark-vibrant-BjUzbiGn.js +0 -4
  283. package/dist/pierre-light-CzM3AfLn.js +0 -4
  284. package/dist/pierre-light-protanopia-deuteranopia-DFclCKch.js +0 -4
  285. package/dist/pierre-light-soft-m3tr_5b6.js +0 -4
  286. package/dist/pierre-light-tritanopia-Dh0MAsTp.js +0 -4
  287. package/dist/pierre-light-vibrant-BZSORskK.js +0 -4
  288. package/dist/pkl-C-zSNmaA.js +0 -6
  289. package/dist/plastic-CSTz3KZp.js +0 -4
  290. package/dist/plsql-pVbGZfOv.js +0 -6
  291. package/dist/po-BNfHvqmm.js +0 -6
  292. package/dist/poimandres-C-VADXHD.js +0 -4
  293. package/dist/polar-CAZahv3u.js +0 -6
  294. package/dist/postcss-05aHdL-n.js +0 -6
  295. package/dist/powerquery-DI9HkTvs.js +0 -6
  296. package/dist/powershell-DwQB8F1X.js +0 -6
  297. package/dist/prisma-K8HipzoA.js +0 -6
  298. package/dist/prolog-C5-yg4TO.js +0 -6
  299. package/dist/proto-C7QgialS.js +0 -6
  300. package/dist/pug-DWY5n4I0.js +0 -12
  301. package/dist/puppet-CUJHmnxV.js +0 -6
  302. package/dist/purescript-rUfGld-4.js +0 -6
  303. package/dist/qml-rTNXsquU.js +0 -8
  304. package/dist/qmldir-BInDYbpo.js +0 -6
  305. package/dist/qss-AeJTysr_.js +0 -6
  306. package/dist/r-BPg6DDVi.js +0 -6
  307. package/dist/racket-B83wSAja.js +0 -6
  308. package/dist/raku-nEQ4ZJJ7.js +0 -6
  309. package/dist/razor-DfCpierF.js +0 -10
  310. package/dist/rbs-CssrqYJT.js +0 -6
  311. package/dist/red-ZH55KNtO.js +0 -4
  312. package/dist/reg-m_s_Kiip.js +0 -6
  313. package/dist/regexp-BazyLpPg.js +0 -6
  314. package/dist/rel-BcRfyd6Q.js +0 -6
  315. package/dist/riscv-Ce8MAQLP.js +0 -6
  316. package/dist/ron-DCEEQypA.js +0 -6
  317. package/dist/rose-pine-CBkWCxr6.js +0 -4
  318. package/dist/rose-pine-dawn-B6ai6aO_.js +0 -4
  319. package/dist/rose-pine-moon-c2UTtcmd.js +0 -4
  320. package/dist/rosmsg-Cz0w1km8.js +0 -6
  321. package/dist/rst-DLMli9w9.js +0 -22
  322. package/dist/ruby-CbJ15R3t.js +0 -30
  323. package/dist/sas-CPEc4gxJ.js +0 -8
  324. package/dist/sass-DxHp5rTx.js +0 -6
  325. package/dist/scala-B_IFinKC.js +0 -6
  326. package/dist/scheme-BCRWuEm4.js +0 -6
  327. package/dist/scss-BoS_aSJ3.js +0 -8
  328. package/dist/sdbl-B7T8abf4.js +0 -6
  329. package/dist/shaderlab-Cr62-Wb4.js +0 -8
  330. package/dist/shellsession-DiDJNQdy.js +0 -8
  331. package/dist/slack-dark-i7wN4OET.js +0 -4
  332. package/dist/slack-ochin-ndHf0LoP.js +0 -4
  333. package/dist/smalltalk-4m7fIk5G.js +0 -6
  334. package/dist/smithy-BqBKlq_3.js +0 -6
  335. package/dist/snazzy-light-BlSJXAu4.js +0 -4
  336. package/dist/solarized-dark-DkqKcBES.js +0 -4
  337. package/dist/solarized-light-PzVcYh5f.js +0 -4
  338. package/dist/solidity-CA32r_X5.js +0 -6
  339. package/dist/soy-zKSLgLn7.js +0 -8
  340. package/dist/sparql-B0KWFEri.js +0 -8
  341. package/dist/splunk-CRXR8A9s.js +0 -6
  342. package/dist/ssh-config-DP-hNVbF.js +0 -6
  343. package/dist/stata-CfG8pWjZ.js +0 -8
  344. package/dist/stylus-CyKEU1Ej.js +0 -6
  345. package/dist/surrealql-C-LAJEpk.js +0 -8
  346. package/dist/svelte-DwQZuWui.js +0 -14
  347. package/dist/synthwave-84-NU3C_KFZ.js +0 -4
  348. package/dist/system-verilog-CT3NeZzU.js +0 -6
  349. package/dist/systemd-C-4qm6XH.js +0 -6
  350. package/dist/talonscript-CFF3LF_O.js +0 -6
  351. package/dist/tasl-Cg_WBUAe.js +0 -6
  352. package/dist/tcl-DN7buRTF.js +0 -6
  353. package/dist/templ-kEkd0dRE.js +0 -12
  354. package/dist/terraform-DGvcn9zM.js +0 -6
  355. package/dist/tex-CXAy09re.js +0 -8
  356. package/dist/tokyo-night-DP4TmcQl.js +0 -4
  357. package/dist/ts-tags-CheYVw2x.js +0 -41
  358. package/dist/tsv-BtvSkaG0.js +0 -6
  359. package/dist/turtle-_H59FV7D.js +0 -6
  360. package/dist/twig-CDICZk1J.js +0 -18
  361. package/dist/types/components/artifacts/TrajectoryFilters.d.ts +0 -15
  362. package/dist/typespec-ClIfKiQP.js +0 -6
  363. package/dist/typst-E3pfxOv6.js +0 -120
  364. package/dist/v-CxJbuWik.js +0 -6
  365. package/dist/vala-uxaPR7d1.js +0 -6
  366. package/dist/vb-BD2YOVbP.js +0 -6
  367. package/dist/verilog-BHj4jYdq.js +0 -6
  368. package/dist/vesper-DIoW1cuD.js +0 -4
  369. package/dist/vhdl-CUlNa8ac.js +0 -6
  370. package/dist/viml-DsfA-sWm.js +0 -6
  371. package/dist/vitesse-black-BoGvW84i.js +0 -4
  372. package/dist/vitesse-dark-Cym-eLtO.js +0 -4
  373. package/dist/vitesse-light-CcmG315c.js +0 -4
  374. package/dist/vue-html-j9xNEdu3.js +0 -8
  375. package/dist/vue-vine-Hkz8HiFl.js +0 -18
  376. package/dist/vyper-CPQuu50u.js +0 -6
  377. package/dist/wasm-BBXxrAl7.js +0 -6
  378. package/dist/wenyan-pbVjoM9_.js +0 -6
  379. package/dist/wgsl-DY4iK1q1.js +0 -6
  380. package/dist/wikitext-Z-MoUasO.js +0 -6
  381. package/dist/wit-CQMQOlTg.js +0 -6
  382. package/dist/wolfram-Dz4KXISs.js +0 -6
  383. package/dist/xsl-BmSZphgC.js +0 -8
  384. package/dist/zenscript-CxBjpf9c.js +0 -6
  385. package/dist/zig-Vm0PO9wB.js +0 -6
  386. /package/dist/{docker-CsHqm9tx.js → dockerfile-CsHqm9tx.js} +0 -0
  387. /package/dist/{make-CsMclxtr.js → makefile-CsMclxtr.js} +0 -0
@@ -2,10 +2,11 @@ import { type WebShellModelManagementOptions } from './modelManagement';
2
2
  import './styles/globals.css';
3
3
  import { type WebShellMessageNavigationRequest, type WebShellMessageNavigationResult } from './hooks/useMessageNavigation';
4
4
  import { type DaemonProductSessionContext, type DaemonStreamingState } from '@qwen-code/web-shell/daemon-react-sdk';
5
- import type { DaemonAgentTrace, DaemonSessionAgentTaskStatus, DaemonTranscriptBlock, DaemonSessionMonitorTaskStatus, DaemonSessionTaskWithWorkflowStatus, DaemonWorkspaceCapability } from '@qwen-code/sdk/daemon';
5
+ import type { DaemonAgentTrace, DaemonSessionAgentTaskStatus, DaemonTranscriptBlock, DaemonSessionMonitorTaskStatus, DaemonSessionTaskWithWorkflowStatus, DaemonSessionSummary, DaemonWorkspaceCapability } from '@qwen-code/sdk/daemon';
6
6
  import { type ComposerToolbarAction } from './components/ChatEditor';
7
7
  import { type ToastTone } from './components/ToastHost';
8
8
  import { type EnvironmentAgentTask } from './components/panels/EnvironmentPanel';
9
+ import { type WebShellApprovalMode } from './utils/planMode';
9
10
  import { type ModelDialogModel } from './components/dialogs/ModelDialog';
10
11
  import type { ManagedAgentProvider } from './components/managed/managed-agent-provider';
11
12
  import type { PaneHeaderActionsRenderer } from './components/ChatPane';
@@ -19,7 +20,7 @@ import { type ComposerPlaceholderState } from './utils/composerInputState';
19
20
  import type { CommandInfo, Message } from './adapters/types';
20
21
  import { type WebShellBrand, type WebShellResolvedBrand } from './brandContext';
21
22
  import { type WebShellTheme } from './themeContext';
22
- import { type WebShellAssistantFeedbackOptions, type WebShellComposerApi, type WebShellComposerInput, type WebShellMarkdownCustomization, type WebShellSourceIconResolver, type WebShellSourceReference, type ToolHeaderExtraRenderer, type UserMessageContentRenderer, type UserMessageContentParser, type AssistantTurnFooterRenderer, type WebShellArtifactCustomization, type WelcomeHeaderRenderer, type WelcomeFooterRenderer, type ComposerToolbarStartRenderer, type ComposerToolbarEndRenderer, type ComposerToolbarRightRenderer, type ComposerHeaderRenderer, type ComposerFooterRenderer, type ChatHeaderRenderer, type WebShellChatHeaderOptions, type WebShellRightPanelOptions, type WebShellEnvironmentPanelOptions, type FooterRenderer, type LoadingPhrasesResolver, type MarkdownTableMode, type WebShellAtProvider, type WebShellBuiltinAtProvidersConfig, type ComposerTagClickHandler, type ComposerTagRenderer, type WebShellComposerTagIconMap, type WebShellBottomStatusItem, type WebShellPreparedSubmit, type WebShellSubmitSnapshot, type WebShellAssistantTurnSettledEvent, type WebShellSessionArtifactsChange } from './customization';
23
+ import { type WebShellCustomization, type WebShellAssistantFeedbackOptions, type WebShellComposerApi, type WebShellComposerInput, type WebShellMarkdownCustomization, type WebShellSourceIconResolver, type WebShellSourceReference, type ToolHeaderExtraRenderer, type UserMessageContentRenderer, type UserMessageContentParser, type AssistantTurnFooterRenderer, type WebShellArtifactCustomization, type WelcomeHeaderRenderer, type WelcomeFooterRenderer, type ComposerToolbarStartRenderer, type ComposerToolbarEndRenderer, type ComposerToolbarRightRenderer, type ComposerHeaderRenderer, type ComposerFooterRenderer, type ChatHeaderRenderer, type WebShellChatHeaderOptions, type WebShellRightPanelOptions, type WebShellEnvironmentPanelOptions, type FooterRenderer, type LoadingPhrasesResolver, type MarkdownTableMode, type WebShellAtProvider, type WebShellBuiltinAtProvidersConfig, type ComposerTagClickHandler, type ComposerTagRenderer, type WebShellComposerTagIconMap, type WebShellBottomStatusItem, type WebShellPreparedSubmit, type WebShellSubmitSnapshot, type WebShellAssistantTurnSettledEvent, type WebShellSessionArtifactsChange } from './customization';
23
24
  import type { CommandDisplayCategoryOrder } from './utils/commandDisplay';
24
25
  export interface BugReportInfo {
25
26
  title: string;
@@ -97,6 +98,8 @@ export interface WebShellSlashCommand {
97
98
  }
98
99
  export type WebShellSlashCommandHandler = (command: WebShellSlashCommand) => boolean | void;
99
100
  export interface WebShellProps {
101
+ /** Refresh and persist the host catalog before Qwen reloads models. No return data is required. */
102
+ onRefreshModels?: WebShellCustomization['onRefreshModels'];
100
103
  /** Native settings-page presentation. Does not restrict commands or daemon access. */
101
104
  settings?: WebShellSettingsOptions;
102
105
  /** Model add/delete interactions across WebShell. Not a backend permission policy. */
@@ -210,6 +213,8 @@ export interface WebShellProps {
210
213
  * needs them. Plan must be explicitly included.
211
214
  */
212
215
  composerToolbarActions?: readonly ComposerToolbarAction[];
216
+ /** Execution mode choices. Overrides ui.allowedApprovalModes; [] offers none. Presentation only. */
217
+ allowedApprovalModes?: readonly WebShellApprovalMode[];
213
218
  /** Optionally filter main-model entries without changing shared defaults. */
214
219
  mainModelFilter?: (model: ModelDialogModel) => boolean;
215
220
  /** Stack completion details vertically for narrow embedded hosts. */
@@ -441,7 +446,8 @@ interface SideTaskCatalogState {
441
446
  items: SideTaskListItem[];
442
447
  loaded: boolean;
443
448
  }
449
+ export declare function canArchiveSideTaskSummary(session: Pick<DaemonSessionSummary, 'activeWorkState' | 'hasActivePrompt' | 'hasRunningBackgroundTasks'>): boolean;
444
450
  export declare function mergeSideTaskCatalog(catalog: SideTaskCatalogState, parentSessionId: string, listedItems: SideTaskListItem[], optimisticIds: ReadonlySet<string>): SideTaskCatalogState;
445
451
  export declare function getEnvironmentAgentTasks(messages: readonly Message[], sessionTasks: readonly DaemonSessionTaskWithWorkflowStatus[]): EnvironmentAgentTask[];
446
452
  export declare function mergeAgentTrace(liveAgents: readonly EnvironmentAgentTask[], trace: DaemonAgentTrace | undefined, now?: number): EnvironmentAgentTask[];
447
- export declare function App({ askUserFreeTextLabel, onSessionIdChange, onSessionInfoChange, onSessionCreated, managedAgentProvider, theme: providedTheme, onThemeChange, onThemeResolved, language: providedLanguage, onLanguageChange, onLanguageResolved, brand: providedBrand, onBrandResolved, className: externalClassName, style: externalStyle, shadowDom, onConnectionChange, onStreamingStateChange, onError, onBugReport, hiddenSlashCommands, slashCommandCategoryOrder, onSlashCommand, builtinAtProviders, atProviders, composerTagIcons, fileUploadEnabled, fileUploadDirectory, artifact, fileDropAction, renderToolHeaderExtra, renderWelcomeHeader, renderWelcomeFooter, mobileWelcomeFooterMiddle, parseUserMessageContent, renderUserMessageContent, renderComposerTag, renderComposerTagTooltip, onComposerTagClick, renderAssistantTurnFooter, assistantFeedback, getAssistantSourcesIcon, sourceReferences, renderComposerToolbarStart, renderComposerToolbarEnd, renderComposerToolbarRight, renderComposerHeader, renderComposerFooter, renderChatHeader, renderFooter, bottomStatusItems, chatMaxWidth, sidebar, settings: settingsPresentation, modelManagement, header, rightPanel, showToolCalls, environmentPanel, splitSessionIds: externalSplitSessionIds, onSplitSessionIdsChange, renderPaneHeaderActions, onRightPanelOpen, onFileReviewOpen, onWorkspaceFileOpen, onInsightReportOpen, onContextUsageOpen, messageTurnOutputs, filterArtifact, shellRef, composerToolbarActions, mainModelFilter, compactComposerOverlays, autoSubmitSlashCommands, additionalSlashCommands, contextUsageAlwaysVisible, userMessageEditing, onUserMessageEditRequest, cycleModeOnTab, sessionSourceType, composerToolbarAdditionalActions, composerPlaceholders, compactThinking, hostOwnsEditDiffPreview, collapseCompletedTurns, markdownTableMode, virtualScrollThreshold, conversationSearchThreshold, markdown, loadingPhrases, onAgentTasksChange, onTranscriptChange, onSessionArtifactsChange, onToast, composerRef, onComposerReady, composerInput, composerInputVersion, onSessionChange, onAssistantTurnSettled, prepareSubmit, onSubmitBefore, restartSseOnPrompt, historyPageSize, initialSelectedWorkspaceCwd, lockedWorkspaceCwd, lockedWorkspaceCapability, }?: AppProps): import("react/jsx-runtime").JSX.Element;
453
+ export declare function App({ onRefreshModels, askUserFreeTextLabel, onSessionIdChange, onSessionInfoChange, onSessionCreated, managedAgentProvider, theme: providedTheme, onThemeChange, onThemeResolved, language: providedLanguage, onLanguageChange, onLanguageResolved, brand: providedBrand, onBrandResolved, className: externalClassName, style: externalStyle, shadowDom, onConnectionChange, onStreamingStateChange, onError, onBugReport, hiddenSlashCommands, slashCommandCategoryOrder, onSlashCommand, builtinAtProviders, atProviders, composerTagIcons, fileUploadEnabled, fileUploadDirectory, artifact, fileDropAction, renderToolHeaderExtra, renderWelcomeHeader, renderWelcomeFooter, mobileWelcomeFooterMiddle, parseUserMessageContent, renderUserMessageContent, renderComposerTag, renderComposerTagTooltip, onComposerTagClick, renderAssistantTurnFooter, assistantFeedback, getAssistantSourcesIcon, sourceReferences, renderComposerToolbarStart, renderComposerToolbarEnd, renderComposerToolbarRight, renderComposerHeader, renderComposerFooter, renderChatHeader, renderFooter, bottomStatusItems, chatMaxWidth, sidebar, settings: settingsPresentation, modelManagement, header, rightPanel, showToolCalls, environmentPanel, splitSessionIds: externalSplitSessionIds, onSplitSessionIdsChange, renderPaneHeaderActions, onRightPanelOpen, onFileReviewOpen, onWorkspaceFileOpen, onInsightReportOpen, onContextUsageOpen, messageTurnOutputs, filterArtifact, shellRef, composerToolbarActions, allowedApprovalModes: allowedApprovalModesProp, mainModelFilter, compactComposerOverlays, autoSubmitSlashCommands, additionalSlashCommands, contextUsageAlwaysVisible, userMessageEditing, onUserMessageEditRequest, cycleModeOnTab, sessionSourceType, composerToolbarAdditionalActions, composerPlaceholders, compactThinking, hostOwnsEditDiffPreview, collapseCompletedTurns, markdownTableMode, virtualScrollThreshold, conversationSearchThreshold, markdown, loadingPhrases, onAgentTasksChange, onTranscriptChange, onSessionArtifactsChange, onToast, composerRef, onComposerReady, composerInput, composerInputVersion, onSessionChange, onAssistantTurnSettled, prepareSubmit, onSubmitBefore, restartSseOnPrompt, historyPageSize, initialSelectedWorkspaceCwd, lockedWorkspaceCwd, lockedWorkspaceCapability, }?: AppProps): import("react/jsx-runtime").JSX.Element;
@@ -46,6 +46,7 @@ export interface DaemonMessageToolCall {
46
46
  content?: readonly DaemonMessageToolCallContent[];
47
47
  rawOutput?: unknown;
48
48
  toolResult?: components['schemas']['PublicToolResult'];
49
+ toolDetailsRevision?: number;
49
50
  locations?: DaemonMessageToolCallLocation[];
50
51
  kind?: DaemonMessageToolKind;
51
52
  startTime?: number;
@@ -78,6 +79,8 @@ export interface DaemonMessageAuthor {
78
79
  * cross-cutting field is declared once rather than on each role.
79
80
  */
80
81
  export interface DaemonMessageMeta {
82
+ sourceRecordIds?: string[];
83
+ localCommandId?: string;
81
84
  backgroundTurn?: DaemonBackgroundTurn;
82
85
  /**
83
86
  * Admitted prompt this message belongs to, copied from the daemon-stamped
@@ -3,13 +3,15 @@
3
3
  * Copyright 2025 Qwen Team
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import type { DaemonTranscriptBlock, DaemonToolTranscriptBlock } from '@qwen-code/sdk/daemon';
6
+ import type { DaemonLoopStop, DaemonTranscriptBlock, DaemonToolTranscriptBlock } from '@qwen-code/sdk/daemon';
7
7
  import type { DaemonMessage, DaemonMessageToolCall } from './messageTypes.js';
8
8
  interface TranscriptMessageLabels {
9
9
  promptCancelled?: string;
10
10
  branchSuccess?: (name: string) => string;
11
11
  modelStreamInterrupted?: string;
12
12
  loopDetected?: string;
13
+ /** Text for a loop stop whose cause is known; undefined falls back. */
14
+ loopDetectedFor?: (loop: DaemonLoopStop) => string | undefined;
13
15
  }
14
16
  interface TranscriptMessageOptions {
15
17
  labels?: TranscriptMessageLabels;
@@ -25,6 +25,8 @@ interface ChatContextHeaderProps {
25
25
  rightPanelAvailable: boolean;
26
26
  onToggleEnvironment: () => void;
27
27
  onToggleRightPanel: () => void;
28
+ /** Opens the current workspace file tree; informational when omitted. */
29
+ onOpenFiles?: () => void;
28
30
  /** Opens the session token-usage panel; hidden when omitted. */
29
31
  onOpenTokenUsage?: () => void;
30
32
  /** Opens the session context panel; hidden when omitted. */
@@ -32,5 +34,5 @@ interface ChatContextHeaderProps {
32
34
  /** Shows the Local Control QR entry; hidden when omitted. */
33
35
  onOpenLocalControlSettings?: () => void;
34
36
  }
35
- export declare function ChatContextHeader({ content, location, workspaceName, workspacePath, hideWorkspaceIcon, environmentOpen, environmentAvailable, environmentRunning, rightPanelOpen, rightPanelAvailable, onToggleEnvironment, onToggleRightPanel, onOpenTokenUsage, onOpenContextUsage, onOpenLocalControlSettings, }: ChatContextHeaderProps): import("react/jsx-runtime").JSX.Element;
37
+ export declare function ChatContextHeader({ content, location, workspaceName, workspacePath, hideWorkspaceIcon, environmentOpen, environmentAvailable, environmentRunning, rightPanelOpen, rightPanelAvailable, onToggleEnvironment, onToggleRightPanel, onOpenFiles, onOpenTokenUsage, onOpenContextUsage, onOpenLocalControlSettings, }: ChatContextHeaderProps): import("react/jsx-runtime").JSX.Element;
36
38
  export {};
@@ -1,4 +1,6 @@
1
+ import { type ModelRefreshState } from './ModelRefreshControl';
1
2
  import type { CommandInfo } from '../adapters/types';
3
+ import type { AtMentionWorkspaceActions } from '../hooks/useAtMentionSources';
2
4
  import type { AttachmentPreviewRequest } from '../adapters/messageTypes';
3
5
  import type { UseDaemonFollowupSuggestionReturn } from '@qwen-code/web-shell/daemon-react-sdk';
4
6
  import type { DaemonSessionGroupPresetColor, DaemonWorkspaceGitStatus, ReasoningSelection } from '@qwen-code/sdk/daemon';
@@ -39,11 +41,13 @@ interface ChatEditorProps {
39
41
  onPopQueuedMessages?: () => boolean;
40
42
  onClearQueuedMessages?: () => boolean;
41
43
  currentMode?: string;
44
+ availableModes?: readonly string[];
42
45
  planMode?: boolean;
43
46
  modeControlsDisabled?: boolean;
44
47
  onTogglePlan?: () => void;
45
48
  sessionWorkflowEnabled?: boolean;
46
49
  currentModel?: string;
50
+ modelControlsDisabled?: boolean;
47
51
  gitBranch?: string;
48
52
  /** Whether the session is in a worktree (styles the git chip purple). */
49
53
  gitWorktree?: boolean;
@@ -90,10 +94,13 @@ interface ChatEditorProps {
90
94
  contextWindow?: number;
91
95
  /** Keep Context Usage available before a restored session reports usage. */
92
96
  contextUsageAlwaysVisible?: boolean;
97
+ /** Explicit observation state permits zero; omission keeps legacy inference. */
98
+ contextUsageKnown?: boolean;
93
99
  /** Show the context-usage breakdown, exactly like typing /context. */
94
100
  onShowContextUsage?: () => void;
95
101
  onOpenContextUsage?: () => void;
96
102
  contextUsageControls?: ContextUsageControls;
103
+ modelRefresh?: ModelRefreshState;
97
104
  availableModels?: Array<{
98
105
  id: string;
99
106
  label?: string;
@@ -122,6 +129,8 @@ interface ChatEditorProps {
122
129
  disableLegacyHistoryFallback?: boolean;
123
130
  shellModeEnabled?: boolean;
124
131
  workspaceFeaturesEnabled?: boolean;
132
+ fileReferenceActions?: AtMentionWorkspaceActions;
133
+ persistFileReferences?: boolean;
125
134
  attachmentsEnabled?: boolean;
126
135
  onChatWidthModeChange?: (mode: '1000' | 'wide') => void;
127
136
  onFocusFooter?: () => boolean;
@@ -83,6 +83,7 @@ export interface ChatPaneProps {
83
83
  voiceWorkspaces?: readonly DaemonWorkspaceCapability[];
84
84
  /** Enable the app-scoped experimental Session Workflow presentation. */
85
85
  sessionWorkflowEnabled?: boolean;
86
+ showResponseTokensPerSecond?: boolean;
86
87
  planControlVisible?: boolean;
87
88
  }
88
89
  /**
@@ -92,4 +93,4 @@ export interface ChatPaneProps {
92
93
  * state, approvals, and composer, and the browser scopes keyboard focus to the
93
94
  * pane the user clicks into — so there is no cross-pane approval arbitration.
94
95
  */
95
- export declare function ChatPane({ title, sessionSummary, isActive, onApprovalChange, workspaceCwd, renderHeaderActions, onClose, onToggleMaximize, isMaximized, onError, onImageIngestionNotice, onSlashCommand, modelManagement, onOpenGoals, onRightPanelOpen, onOpenMonitor, onPaneArtifactsChange, registerContextUsageControls, onBeforeContextCompress, onOpenContextUsage, messageTurnOutputs, embedded, onFirstPromptAdmitted, reportCatalogTurnCompletion, hidden, voiceUserRevision, voiceWorkspaceRevisions, voiceWorkspaces, sessionWorkflowEnabled, planControlVisible, }: ChatPaneProps): import("react/jsx-runtime").JSX.Element;
96
+ export declare function ChatPane({ title, sessionSummary, isActive, onApprovalChange, workspaceCwd, renderHeaderActions, onClose, onToggleMaximize, isMaximized, onError, onImageIngestionNotice, onSlashCommand, modelManagement, onOpenGoals, onRightPanelOpen, onOpenMonitor, onPaneArtifactsChange, registerContextUsageControls, onBeforeContextCompress, onOpenContextUsage, messageTurnOutputs, embedded, onFirstPromptAdmitted, reportCatalogTurnCompletion, hidden, voiceUserRevision, voiceWorkspaceRevisions, voiceWorkspaces, sessionWorkflowEnabled, showResponseTokensPerSecond, planControlVisible, }: ChatPaneProps): import("react/jsx-runtime").JSX.Element;
@@ -1,8 +1,9 @@
1
1
  import { type ReactElement } from 'react';
2
2
  import type { ContextUsageControls } from '../hooks/useContextUsageControls';
3
- export declare function ContextUsagePopover({ tokenCount, contextWindow, controls, onOpenDetails, showSnapshotHint, children, }: {
3
+ export declare function ContextUsagePopover({ tokenCount, contextWindow, known: observedKnown, controls, onOpenDetails, showSnapshotHint, children, }: {
4
4
  tokenCount: number;
5
5
  contextWindow: number;
6
+ known?: boolean;
6
7
  controls?: Pick<ContextUsageControls, 'canCompress' | 'compressing' | 'result' | 'compress'>;
7
8
  onOpenDetails?: () => void;
8
9
  showSnapshotHint: boolean;
@@ -0,0 +1,4 @@
1
+ import type { MessageDeletionControls } from '../hooks/useMessageDeletion';
2
+ export declare function MessageDeletionToolbar({ controls, }: {
3
+ controls: MessageDeletionControls;
4
+ }): import("react/jsx-runtime").JSX.Element | null;
@@ -25,6 +25,8 @@ interface MessageItemProps {
25
25
  * owns the edit lifecycle — then the inline editor stays closed.
26
26
  */
27
27
  onEditUserMessage?: () => boolean | void;
28
+ onDeleteMessage?: () => void;
29
+ deleteMessageDisabled?: boolean;
28
30
  /**
29
31
  * Send the text the user confirmed in the inline editor. Resolves `false`
30
32
  * when the resend was refused or failed; the editor stays open then.
@@ -4,10 +4,12 @@ import type { Message, TurnCollapseHead } from '../adapters/types';
4
4
  import type { PermissionRequest } from '../adapters/types';
5
5
  import { type ParallelAgentDisplayItem } from '../adapters/parallelAgentGrouping';
6
6
  import { type WebShellSource } from '../customization';
7
+ import type { MessageDeletionControls } from '../hooks/useMessageDeletion';
7
8
  import type { SessionContentGenerator } from './messages/AssistantMessage';
8
9
  import { type TurnOutputFileChange, type TurnOutputOpenRequest, type TurnOutputScheduledTask } from './artifacts/TurnOutputs';
9
10
  import type { AttachmentPreviewRequest } from '../adapters/messageTypes';
10
11
  export interface MessageListProps {
12
+ deletion?: MessageDeletionControls;
11
13
  messages: Message[];
12
14
  frozenViewport?: boolean;
13
15
  terminalBackgroundShellTaskIds?: ReadonlySet<string>;
@@ -10,9 +10,12 @@ interface MessageTimestampProps {
10
10
  toolGroupSpacing?: boolean;
11
11
  copyText?: string;
12
12
  copyTitle?: string;
13
- /** When set, render an edit action after the copy button. */
13
+ /** When set, include an edit action in the overflow menu. */
14
14
  onEdit?: () => void;
15
15
  editTitle?: string;
16
+ onDelete?: () => void;
17
+ deleteDisabled?: boolean;
18
+ deleteTitle?: string;
16
19
  /** When set, render an action that opens this turn's tool-call list. */
17
20
  onOpenTurnCalls?: () => void;
18
21
  turnCallsTitle?: string;
@@ -21,7 +24,7 @@ interface MessageTimestampProps {
21
24
  * Wraps a rendered history message and reveals its wall-clock time as a
22
25
  * CSS-only tooltip on hover.
23
26
  */
24
- export declare function MessageTimestamp({ timestamp, hideTimestamp, children, chatMode, toolGroupSpacing, copyText, copyTitle, onEdit, editTitle, onOpenTurnCalls, turnCallsTitle, }: MessageTimestampProps): import("react/jsx-runtime").JSX.Element;
27
+ export declare function MessageTimestamp({ timestamp, hideTimestamp, children, chatMode, toolGroupSpacing, copyText, copyTitle, onEdit, editTitle, onDelete, deleteDisabled, deleteTitle, onOpenTurnCalls, turnCallsTitle, }: MessageTimestampProps): import("react/jsx-runtime").JSX.Element;
25
28
  /**
26
29
  * Local-time clock, dropping the date only for same-day timestamps:
27
30
  * - same day → `HH:mm:ss`
@@ -0,0 +1,5 @@
1
+ import type { useModelRefresh } from '../hooks/useModelRefresh';
2
+ export type ModelRefreshState = ReturnType<typeof useModelRefresh>;
3
+ export declare function ModelRefreshControl({ state }: {
4
+ state?: ModelRefreshState;
5
+ }): import("react/jsx-runtime").JSX.Element | null;
@@ -12,6 +12,7 @@ import { type PaneHeaderActionsRenderer } from './ChatPane';
12
12
  import type { TurnOutputKind, TurnOutputOpenRequest } from './artifacts/TurnOutputs';
13
13
  import type { WebShellAssistantTurnSettledEvent } from '../customization';
14
14
  export interface SplitViewProps {
15
+ showResponseTokensPerSecond?: boolean;
15
16
  /** Sessions to show in the split view. */
16
17
  sessionIds?: string[];
17
18
  /** Respect the host's session-details action allowlist. */
@@ -70,4 +71,4 @@ export interface SplitViewProps {
70
71
  * naturally scopes the keyboard to the pane the user clicks into, so panes never
71
72
  * fight over which session an approval or Enter belongs to.
72
73
  */
73
- export declare function SplitView({ sessionIds, showSessionDetails, onPanesChange, onAssistantTurnSettled, onPendingPanesChange, onExit, onError, onImageIngestionNotice, onSlashCommand, modelManagement, onOpenGoals, onRightPanelOpen, onOpenMonitor, onPaneArtifactsChange, registerContextUsageControls, onBeforeContextCompress, onOpenContextUsage, messageTurnOutputs, renderPaneHeaderActions, includeOtherWorkspaces, workspaceCwd, restartSseOnPrompt, historyPageSize, voiceUserRevision, voiceWorkspaceRevisions, voiceWorkspaces, sessionWorkflowEnabled, planControlVisible, }: SplitViewProps): import("react/jsx-runtime").JSX.Element;
74
+ export declare function SplitView({ sessionIds, showSessionDetails, onPanesChange, onAssistantTurnSettled, onPendingPanesChange, onExit, onError, onImageIngestionNotice, onSlashCommand, modelManagement, onOpenGoals, onRightPanelOpen, onOpenMonitor, onPaneArtifactsChange, registerContextUsageControls, onBeforeContextCompress, onOpenContextUsage, messageTurnOutputs, renderPaneHeaderActions, includeOtherWorkspaces, workspaceCwd, restartSseOnPrompt, historyPageSize, voiceUserRevision, voiceWorkspaceRevisions, voiceWorkspaces, sessionWorkflowEnabled, showResponseTokensPerSecond, planControlVisible, }: SplitViewProps): import("react/jsx-runtime").JSX.Element;
@@ -15,6 +15,7 @@ interface StreamingStatusProps {
15
15
  * (#9487). The daemon's session live state is the authoritative source.
16
16
  */
17
17
  hasActivePrompt?: boolean;
18
+ showResponseTokensPerSecond?: boolean;
18
19
  }
19
- export declare function StreamingStatus({ startedAt, backgroundLabel, showPhrase, hasActivePrompt, }: StreamingStatusProps): import("react/jsx-runtime").JSX.Element | null;
20
+ export declare function StreamingStatus({ startedAt, backgroundLabel, showPhrase, hasActivePrompt, showResponseTokensPerSecond, }: StreamingStatusProps): import("react/jsx-runtime").JSX.Element | null;
20
21
  export {};
@@ -194,6 +194,7 @@ export interface SideTaskListItem {
194
194
  title: string;
195
195
  workspaceCwd?: string;
196
196
  updatedAt?: string;
197
+ archivable?: boolean;
197
198
  }
198
199
  interface ArtifactPanelProps {
199
200
  contextUsageControls?: Readonly<Record<string, ContextUsageControls>>;
@@ -231,9 +232,13 @@ interface ArtifactPanelProps {
231
232
  items?: readonly WebShellRightPanelItem[];
232
233
  sideTaskAvailable?: boolean;
233
234
  sideTasks?: readonly SideTaskListItem[];
235
+ archivedSideTasks?: readonly SideTaskListItem[];
234
236
  sideTasksLoading?: boolean;
235
237
  onCreateSideTask?: () => void;
236
238
  onOpenSideTask?: (sideTask: SideTaskListItem) => void;
239
+ onArchiveSideTasks?: (sideTasks: readonly SideTaskListItem[]) => void | Promise<void>;
240
+ onUnarchiveSideTasks?: (sideTasks: readonly SideTaskListItem[]) => void | Promise<void>;
241
+ onSideTaskMenuOpen?: () => void;
237
242
  onCreateSideTaskSession?: (tabId: string, parentSessionId: string, title: string) => Promise<{
238
243
  sessionId: string;
239
244
  displayName?: string;
@@ -272,5 +277,5 @@ interface ArtifactPanelProps {
272
277
  fullscreen?: boolean;
273
278
  onToggleFullscreen?: () => void;
274
279
  }
275
- export declare function ArtifactPanel({ contextUsageControls, artifacts, tabs, activeTabId, reviewChanges, selectedReviewPath, panelWidth, workspaceCwd, loading, restoring, error, onSelectTab, onSelectTurnCallsPrompt, onCloseTab, onOpenFilePreview, latestReviewAvailable, onOpenLatestReview, onOpenTerminal, onOpenTrajectory, trajectoryTabId, onOpenFiles, onReferenceFile, onOpenWebPreview, onWebPreviewChange, items, sideTaskAvailable, sideTasks, sideTasksLoading, onCreateSideTask, onOpenSideTask, onCreateSideTaskSession, onSideTaskCreated, onSideTaskTitleChange, onSideTaskInitialPromptRefused, onNestedRightPanelOpen, onNestedArtifactsChange, onOpenNestedSubagent, agentTasks, agentTraceLoading, agentTraceError, onOpenWorkflowAgent, onError, sessionWorkflowEnabled, modelManagement, workflow, onImageIngestionNotice, deferSubagentMount, onClose, variant, fullscreen, onToggleFullscreen, }: ArtifactPanelProps): import("react/jsx-runtime").JSX.Element;
280
+ export declare function ArtifactPanel({ contextUsageControls, artifacts, tabs, activeTabId, reviewChanges, selectedReviewPath, panelWidth, workspaceCwd, loading, restoring, error, onSelectTab, onSelectTurnCallsPrompt, onCloseTab, onOpenFilePreview, latestReviewAvailable, onOpenLatestReview, onOpenTerminal, onOpenTrajectory, trajectoryTabId, onOpenFiles, onReferenceFile, onOpenWebPreview, onWebPreviewChange, items, sideTaskAvailable, sideTasks, archivedSideTasks, sideTasksLoading, onCreateSideTask, onOpenSideTask, onArchiveSideTasks, onUnarchiveSideTasks, onSideTaskMenuOpen, onCreateSideTaskSession, onSideTaskCreated, onSideTaskTitleChange, onSideTaskInitialPromptRefused, onNestedRightPanelOpen, onNestedArtifactsChange, onOpenNestedSubagent, agentTasks, agentTraceLoading, agentTraceError, onOpenWorkflowAgent, onError, sessionWorkflowEnabled, modelManagement, workflow, onImageIngestionNotice, deferSubagentMount, onClose, variant, fullscreen, onToggleFullscreen, }: ArtifactPanelProps): import("react/jsx-runtime").JSX.Element;
276
281
  export {};
@@ -23,6 +23,11 @@ interface ReviewFinding {
23
23
  /** The executed evidence that settled the verdict, or its `not run` line. */
24
24
  witness?: string;
25
25
  suggestedFix?: string;
26
+ /**
27
+ * The acceptance criterion the suggested fix owes: the test that must go
28
+ * red if the fix is removed.
29
+ */
30
+ fixWitness?: string;
26
31
  category?: string;
27
32
  locations: FindingLocation[];
28
33
  /** Local evidence paths; rendered as workspace images where possible. */
@@ -0,0 +1,8 @@
1
+ import type { ArtifactWorkspaceActions } from './useArtifactWorkspaceTarget';
2
+ export default function DocxPreview({ workspacePath, workspaceActions, data, artifactVersion, downloadName, }: {
3
+ workspacePath: string;
4
+ workspaceActions?: Pick<ArtifactWorkspaceActions, 'readFileBytes' | 'stat'>;
5
+ data?: Blob;
6
+ artifactVersion?: string;
7
+ downloadName?: string;
8
+ }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,15 @@
1
+ import type { TrajectoryExecutionRow } from '../../trajectory/project-trajectory-executions';
2
+ import type { TrajectoryLifecycleProjection } from '../../trajectory/project-trajectory-lifecycle';
3
+ export declare function TrajectoryExecutions({ rows, selectedKey, onSelect, following, liveStatus, historySnapshot, onPause, onUpdatedChange, onFocusLost, }: {
4
+ rows: readonly TrajectoryExecutionRow[];
5
+ selectedKey?: string;
6
+ onSelect: (key: string) => void;
7
+ following: boolean;
8
+ liveStatus: TrajectoryLifecycleProjection['status'];
9
+ historySnapshot: object | undefined;
10
+ onPause: () => void;
11
+ /** New executions arrived while the reader was not following. */
12
+ onUpdatedChange?: (updated: boolean) => void;
13
+ /** The focused grid went away with nothing of the strip left to take it. */
14
+ onFocusLost?: () => void;
15
+ }): import("react/jsx-runtime").JSX.Element | null;
@@ -4,10 +4,13 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import type { TrajectoryLifecycleEntry } from '../../trajectory/project-trajectory-lifecycle';
7
+ import type { TrajectoryExecutionRow } from '../../trajectory/project-trajectory-executions';
7
8
  import type { TrajectoryRow } from '../../trajectory/types';
8
- export declare function TrajectoryInspector({ row, lifecycle, title, stale, turnSelected, hiddenByRange, hiddenByCollapse, hiddenByFilter, onClearFilter, onReveal, onClearRange, onClose, }: {
9
+ export declare function TrajectoryInspector({ row, lifecycle, execution, onLocateExecution, title, stale, turnSelected, hiddenByRange, hiddenByCollapse, hiddenByFilter, onClearFilter, onReveal, onClearRange, onClose, onFocusedUnmount, }: {
9
10
  row?: TrajectoryRow;
10
11
  lifecycle?: TrajectoryLifecycleEntry;
12
+ execution?: TrajectoryExecutionRow;
13
+ onLocateExecution?: () => void;
11
14
  title?: string;
12
15
  stale?: boolean;
13
16
  turnSelected?: boolean;
@@ -18,4 +21,5 @@ export declare function TrajectoryInspector({ row, lifecycle, title, stale, turn
18
21
  onReveal: () => void;
19
22
  onClearRange: () => void;
20
23
  onClose: () => void;
24
+ onFocusedUnmount?: () => void;
21
25
  }): import("react/jsx-runtime").JSX.Element;
@@ -70,4 +70,6 @@ export declare function formatWindowTime(ms: number, windowMs: number): string;
70
70
  * milliseconds.
71
71
  */
72
72
  export declare function formatClockTime(epochMs: number, windowMs: number, language: string): string;
73
+ /** A point on the axis, as the model's mode names one. */
74
+ export declare function formatTimelinePoint(model: Pick<TimelineModel, 'mode' | 'originMs'> | undefined, ms: number, windowMs: number, language: string): string;
73
75
  export declare function TrajectoryOverview({ model, viewportControl, notice, selectedKey, onSelect, describe, range, onRangeChange, onModeChange, }: TrajectoryOverviewProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,35 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Qwen Team
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { TrajectorySummary } from '../../trajectory/summarizeTrajectory';
7
+ import { type TrajectoryPillState, type TrajectoryWarning } from '../../trajectory/trajectory-status';
8
+ /** Same rounding as the table: 999,950 tokens already reads as `1.0M`. */
9
+ export declare function compactTokens(value: number): string;
10
+ export interface TrajectoryAboutInfo {
11
+ pages: number;
12
+ searchExcluded: number;
13
+ executionsOmitted: number;
14
+ executionsOutside: number;
15
+ }
16
+ /**
17
+ * One line above the strip: what the loaded records add up to, whether the
18
+ * panel is following the session, and anything that needs attention. Every
19
+ * caveat about scope lives behind the About button rather than on screen.
20
+ */
21
+ export declare function TrajectorySummaryBar({ summary, pill, onPill, warnings, onRetry, onRefresh, onReturnToLatest, canRefresh, history, failuresOn, onToggleFailures, about, }: {
22
+ summary?: TrajectorySummary;
23
+ pill: TrajectoryPillState;
24
+ onPill: () => void;
25
+ warnings: readonly TrajectoryWarning[];
26
+ onRetry: () => void;
27
+ onRefresh: () => void;
28
+ onReturnToLatest: () => void;
29
+ canRefresh: boolean;
30
+ /** An earlier window is on screen: a refresh would leave it for the latest. */
31
+ history: boolean;
32
+ failuresOn: boolean;
33
+ onToggleFailures: () => void;
34
+ about: TrajectoryAboutInfo;
35
+ }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,24 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Qwen Team
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { TrajectoryFilter } from '../../trajectory/filterTrajectory';
7
+ /**
8
+ * Search, the type and status facets, and the selected time range, in one
9
+ * row. Matching rules live in `filterTrajectory`; this only edits the filter.
10
+ */
11
+ export declare function TrajectoryToolbar({ value, onChange, onNavigate, onClear, count, position, truncatedCount, range, onClearRange, status, }: {
12
+ value: TrajectoryFilter;
13
+ onChange: (filter: TrajectoryFilter) => void;
14
+ onNavigate: (direction: 1 | -1, filter?: TrajectoryFilter) => void;
15
+ onClear: () => void;
16
+ count: number;
17
+ position: number;
18
+ truncatedCount: number;
19
+ /** Label of the selected time range, when there is one. */
20
+ range?: string;
21
+ onClearRange: () => void;
22
+ /** How many records the current filters leave visible; announced only. */
23
+ status?: string;
24
+ }): import("react/jsx-runtime").JSX.Element;
@@ -3,6 +3,13 @@ import type { DaemonWorkspaceActions } from '@qwen-code/web-shell/daemon-react-s
3
3
  export declare function artifactKindLabel(kind: string, workspacePath?: string): string;
4
4
  export declare function isOfficeDocumentPath(workspacePath?: string): boolean;
5
5
  export declare function isExcelFile(workspacePath?: string, mimeType?: string): boolean;
6
+ export declare const DOCX_MIME_TYPE = "application/vnd.openxmlformats-officedocument.wordprocessingml.document";
7
+ export declare function isDocxFile(workspacePath?: string, mimeType?: string): boolean;
8
+ export declare function isPdfArtifact(artifact: {
9
+ kind?: string;
10
+ workspacePath?: string;
11
+ mimeType?: string;
12
+ }): boolean;
6
13
  export declare function isDownloadOnlyWorkspaceArtifact(artifact: {
7
14
  kind?: string;
8
15
  workspacePath?: string;
@@ -0,0 +1 @@
1
+ export declare function formatFileName(name: string): string;
@@ -1,14 +1,29 @@
1
1
  export declare const FILES_MESSAGES_EN: {
2
+ 'files.delete': string;
3
+ 'files.deleteTitle': string;
4
+ 'files.deleteWarning': string;
2
5
  'files.copyRelativePath': string;
3
6
  'files.copyAbsolutePath': string;
4
7
  'files.reference': string;
5
8
  'files.title': string;
9
+ 'files.newFile': string;
10
+ 'files.newFolder': string;
11
+ 'files.deleteMenu': string;
12
+ 'files.deleteFolderTitle': string;
13
+ 'files.deleteFolderWarning': string;
14
+ 'files.deleting': string;
15
+ 'files.name': string;
16
+ 'files.create': string;
17
+ 'files.creating': string;
18
+ 'files.destination': string;
19
+ 'files.invalidName': string;
6
20
  'files.uploadTo': string;
7
21
  'files.description': string;
8
22
  'files.filter': string;
9
23
  'files.noMatches': string;
10
24
  'files.resizeTree': string;
11
25
  'files.toggleTree': string;
26
+ 'files.closePreview': string;
12
27
  'files.emptyDirectory': string;
13
28
  'files.truncated': string;
14
29
  'files.loadFailed': string;
@@ -17,16 +32,31 @@ export declare const FILES_MESSAGES_EN: {
17
32
  'files.sourceTooLarge': string;
18
33
  };
19
34
  export declare const FILES_MESSAGES_ZH: {
35
+ 'files.delete': string;
36
+ 'files.deleteTitle': string;
37
+ 'files.deleteWarning': string;
20
38
  'files.copyRelativePath': string;
21
39
  'files.copyAbsolutePath': string;
22
40
  'files.reference': string;
23
41
  'files.title': string;
42
+ 'files.newFile': string;
43
+ 'files.newFolder': string;
44
+ 'files.deleteMenu': string;
45
+ 'files.deleteFolderTitle': string;
46
+ 'files.deleteFolderWarning': string;
47
+ 'files.deleting': string;
48
+ 'files.name': string;
49
+ 'files.create': string;
50
+ 'files.creating': string;
51
+ 'files.destination': string;
52
+ 'files.invalidName': string;
24
53
  'files.uploadTo': string;
25
54
  'files.description': string;
26
55
  'files.filter': string;
27
56
  'files.noMatches': string;
28
57
  'files.resizeTree': string;
29
58
  'files.toggleTree': string;
59
+ 'files.closePreview': string;
30
60
  'files.emptyDirectory': string;
31
61
  'files.truncated': string;
32
62
  'files.loadFailed': string;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Qwen Team
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ type TokenUsageMessage = string | ((vars?: Record<string, string | number>) => string);
7
+ export declare const TOKEN_USAGE_MESSAGES_EN: Record<string, TokenUsageMessage>;
8
+ export declare const TOKEN_USAGE_MESSAGES_ZH: Record<string, TokenUsageMessage>;
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 TOKEN_USAGE_MESSAGES_EN: {};
7
+ export declare const TOKEN_USAGE_MESSAGES_ZH: {};
@@ -1,7 +1,11 @@
1
- import type { DaemonCapabilities } from '@qwen-code/sdk/daemon';
1
+ import type { DaemonCapabilities, WorkspaceDaemonClient } from '@qwen-code/sdk/daemon';
2
2
  import { type DaemonWorkspaceActions } from '@qwen-code/web-shell/daemon-react-sdk';
3
3
  import type { FileUploadClient } from '../../hooks/useFileUpload';
4
- export type ArtifactWorkspaceActions = Pick<DaemonWorkspaceActions, 'readWorkspaceFile' | 'readFileBytes' | 'stat' | 'listDirectory' | 'listScheduledTasks' | 'updateScheduledTask' | 'deleteScheduledTask'> & Partial<FileUploadClient>;
4
+ export type ArtifactWorkspaceActions = Pick<DaemonWorkspaceActions, 'readWorkspaceFile' | 'readFileBytes' | 'stat' | 'listDirectory' | 'listScheduledTasks' | 'updateScheduledTask' | 'deleteScheduledTask'> & Partial<Pick<WorkspaceDaemonClient, 'deleteWorkspaceFile'>> & Partial<FileUploadClient> & {
5
+ createFile?(path: string): Promise<void>;
6
+ createDirectory?(path: string): Promise<void>;
7
+ deleteDirectory?(path: string): Promise<void>;
8
+ };
5
9
  interface ArtifactWorkspaceOwner {
6
10
  cwd: string;
7
11
  id?: string;
@@ -5,5 +5,5 @@
5
5
  */
6
6
  import type { DaemonChannelTypeDescriptor } from '@qwen-code/sdk/daemon';
7
7
  export declare const PLATFORM_MARKS: Record<string, string>;
8
- export declare function isSupportedChannelType(type: unknown): type is 'dingtalk' | 'dws' | 'wecom' | 'feishu' | 'github' | 'gitlab';
8
+ export declare function isSupportedChannelType(type: unknown): type is 'dingtalk' | 'dws' | 'wecom' | 'wecom-callback' | 'feishu' | 'github' | 'gitlab';
9
9
  export declare function isChannelPlatformAvailable(descriptor: DaemonChannelTypeDescriptor): boolean;
@@ -16,6 +16,8 @@ export interface WorkspaceLocationOption {
16
16
  interface AddWorkspaceDialogProps {
17
17
  browseDirectories?: boolean;
18
18
  initialPath?: string;
19
+ pathHint?: string;
20
+ pathPlaceholder?: string;
19
21
  onClose: () => void;
20
22
  onAdd: (cwd: string, persist: boolean, displayName?: string) => Promise<void>;
21
23
  displayNameEnabled?: boolean;
@@ -30,5 +32,5 @@ interface AddWorkspaceDialogProps {
30
32
  onPick?: () => Promise<string | undefined>;
31
33
  persistenceSupported?: boolean;
32
34
  }
33
- export declare function AddWorkspaceDialog({ browseDirectories, initialPath, onClose, onAdd, displayNameEnabled, locations, selectedLocation, onLocationChange, onSuggest, onPick, persistenceSupported, }: AddWorkspaceDialogProps): import("react/jsx-runtime").JSX.Element;
35
+ export declare function AddWorkspaceDialog({ browseDirectories, initialPath, pathHint, pathPlaceholder, onClose, onAdd, displayNameEnabled, locations, selectedLocation, onLocationChange, onSuggest, onPick, persistenceSupported, }: AddWorkspaceDialogProps): import("react/jsx-runtime").JSX.Element;
34
36
  export {};
@@ -1,7 +1,9 @@
1
+ import { type WebShellApprovalMode } from '../../utils/planMode';
1
2
  interface ApprovalModeDialogProps {
2
3
  currentMode: string;
4
+ availableModes?: readonly WebShellApprovalMode[];
3
5
  sessionWorkflowEnabled?: boolean;
4
6
  onSelect: (modeId: string) => void;
5
7
  }
6
- export declare function ApprovalModeDialog({ currentMode, onSelect, }: ApprovalModeDialogProps): import("react/jsx-runtime").JSX.Element;
8
+ export declare function ApprovalModeDialog({ currentMode, availableModes, onSelect, }: ApprovalModeDialogProps): import("react/jsx-runtime").JSX.Element;
7
9
  export {};
@@ -1,5 +1,7 @@
1
+ import { type ModelRefreshState } from '../ModelRefreshControl';
1
2
  export type ModelDialogMode = 'main' | 'fast' | 'voice' | 'vision' | 'advisor' | 'image';
2
3
  interface ModelDialogProps {
4
+ modelRefresh?: ModelRefreshState;
3
5
  mode?: ModelDialogMode;
4
6
  loading?: boolean;
5
7
  error?: Error;
@@ -24,5 +26,5 @@ export interface ModelDialogModel {
24
26
  envKey?: string;
25
27
  isRuntime?: boolean;
26
28
  }
27
- export declare function ModelDialog({ mode, loading, error, onSelect, models, currentModelId, filterModel, }: ModelDialogProps): import("react/jsx-runtime").JSX.Element;
29
+ export declare function ModelDialog({ modelRefresh, mode, loading, error, onSelect, models, currentModelId, filterModel, }: ModelDialogProps): import("react/jsx-runtime").JSX.Element;
28
30
  export {};
@@ -1,7 +1,10 @@
1
1
  import type { ManagedAgentProvider } from './managed-agent-provider';
2
- export declare function ManagedSessionsPage({ sessionId, onSelectSession, workspaceCwd, managedAgentProvider, }: {
2
+ export declare function ManagedSessionsPage({ sessionId, onSelectSession, workspaceCwd, managedAgentProvider, navigationTarget, interactive, }: {
3
3
  sessionId?: string;
4
4
  onSelectSession: (sessionId: string | undefined) => void;
5
5
  workspaceCwd?: string;
6
6
  managedAgentProvider?: ManagedAgentProvider;
7
+ /** Null keeps home layout while its sidebar slot is temporarily unmounted. */
8
+ navigationTarget?: HTMLElement | null;
9
+ interactive?: boolean;
7
10
  }): import("react/jsx-runtime").JSX.Element;