@qwen-code/web-shell 0.24.1-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 (413) hide show
  1. package/README.md +651 -0
  2. package/dist/daemon-react-sdk.js +53 -0
  3. package/dist/index.js +109094 -0
  4. package/dist/sw.js +9 -0
  5. package/dist/toolNames-DgCpmhML.js +17992 -0
  6. package/dist/transcript.js +31609 -0
  7. package/dist/types/App.d.ts +419 -0
  8. package/dist/types/WebShellContexts.d.ts +31 -0
  9. package/dist/types/adapters/localizedMessages.d.ts +24 -0
  10. package/dist/types/adapters/messageTypes.d.ts +194 -0
  11. package/dist/types/adapters/parallelAgentGrouping.d.ts +18 -0
  12. package/dist/types/adapters/promptTypes.d.ts +12 -0
  13. package/dist/types/adapters/toolClassification.d.ts +10 -0
  14. package/dist/types/adapters/transcriptAdapter.d.ts +3 -0
  15. package/dist/types/adapters/transcriptToMessages.d.ts +41 -0
  16. package/dist/types/adapters/types.d.ts +123 -0
  17. package/dist/types/brandContext.d.ts +44 -0
  18. package/dist/types/browser-turn-notifications.d.ts +36 -0
  19. package/dist/types/completions/slashCompletion.d.ts +35 -0
  20. package/dist/types/components/AtMentionPanel.d.ts +13 -0
  21. package/dist/types/components/BranchPickerPopover.d.ts +73 -0
  22. package/dist/types/components/ChatContextHeader.d.ts +18 -0
  23. package/dist/types/components/ChatEditor.d.ts +134 -0
  24. package/dist/types/components/ChatPane.d.ts +93 -0
  25. package/dist/types/components/ContextCompressionFeedback.d.ts +5 -0
  26. package/dist/types/components/ContextUsagePopover.d.ts +10 -0
  27. package/dist/types/components/ErrorBoundary.d.ts +40 -0
  28. package/dist/types/components/FileAttachmentContent.d.ts +4 -0
  29. package/dist/types/components/FileTypeIcon.d.ts +6 -0
  30. package/dist/types/components/GitBranchIndicator.d.ts +66 -0
  31. package/dist/types/components/GitModePopover.d.ts +23 -0
  32. package/dist/types/components/GlobalTurnNavigation.d.ts +16 -0
  33. package/dist/types/components/GoalStatusStrip.d.ts +13 -0
  34. package/dist/types/components/InsightProgress.d.ts +12 -0
  35. package/dist/types/components/InsightReady.d.ts +6 -0
  36. package/dist/types/components/LocalControlQrButton.d.ts +12 -0
  37. package/dist/types/components/LocalFilesControl.d.ts +74 -0
  38. package/dist/types/components/MessageItem.d.ts +43 -0
  39. package/dist/types/components/MessageList.d.ts +222 -0
  40. package/dist/types/components/MessageTimestamp.d.ts +32 -0
  41. package/dist/types/components/ModeIcon.d.ts +3 -0
  42. package/dist/types/components/MonitorIcon.d.ts +2 -0
  43. package/dist/types/components/PaneHeaderActions.d.ts +23 -0
  44. package/dist/types/components/PromptChevron.d.ts +7 -0
  45. package/dist/types/components/QueuedPromptDisplay.d.ts +57 -0
  46. package/dist/types/components/RootErrorFallback.d.ts +21 -0
  47. package/dist/types/components/SessionOverviewPanel.d.ts +46 -0
  48. package/dist/types/components/SessionPrBadge.d.ts +24 -0
  49. package/dist/types/components/SessionPrStateIcon.d.ts +32 -0
  50. package/dist/types/components/SessionRecoveryBanner.d.ts +3 -0
  51. package/dist/types/components/ShadowDomBoundary.d.ts +11 -0
  52. package/dist/types/components/SplitView.d.ts +69 -0
  53. package/dist/types/components/StandaloneAuth.d.ts +17 -0
  54. package/dist/types/components/StatusBar.d.ts +26 -0
  55. package/dist/types/components/StreamingStatus.d.ts +20 -0
  56. package/dist/types/components/Tips.d.ts +1 -0
  57. package/dist/types/components/ToastHost.d.ts +25 -0
  58. package/dist/types/components/TranscriptViewport.d.ts +17 -0
  59. package/dist/types/components/WebShellTranscript.d.ts +38 -0
  60. package/dist/types/components/WelcomeHeader.d.ts +8 -0
  61. package/dist/types/components/WorkspaceIndicator.d.ts +27 -0
  62. package/dist/types/components/WorkspaceSelector.d.ts +29 -0
  63. package/dist/types/components/WorkspaceSessionProvider.d.ts +19 -0
  64. package/dist/types/components/WorkspaceUnavailableState.d.ts +11 -0
  65. package/dist/types/components/agents/AgentCreatePage.d.ts +9 -0
  66. package/dist/types/components/agents/AgentsManagerPage.d.ts +8 -0
  67. package/dist/types/components/agents/agent-tool-options.d.ts +9 -0
  68. package/dist/types/components/agents/agents-manager-logic.d.ts +8 -0
  69. package/dist/types/components/artifacts/AgentWorkflow.d.ts +7 -0
  70. package/dist/types/components/artifacts/ArtifactIcon.d.ts +9 -0
  71. package/dist/types/components/artifacts/ArtifactPanel.d.ts +229 -0
  72. package/dist/types/components/artifacts/CodeReviewArtifactDetail.d.ts +63 -0
  73. package/dist/types/components/artifacts/ContextUsagePanel.d.ts +7 -0
  74. package/dist/types/components/artifacts/LineStats.d.ts +12 -0
  75. package/dist/types/components/artifacts/SideTaskPanel.d.ts +24 -0
  76. package/dist/types/components/artifacts/SubagentDetail.d.ts +14 -0
  77. package/dist/types/components/artifacts/TokenUsagePanel.d.ts +7 -0
  78. package/dist/types/components/artifacts/TurnOutputs.d.ts +121 -0
  79. package/dist/types/components/artifacts/artifactUtils.d.ts +37 -0
  80. package/dist/types/components/artifacts/turnOutputSelectors.d.ts +7 -0
  81. package/dist/types/components/artifacts/useArtifactWorkspaceTarget.d.ts +16 -0
  82. package/dist/types/components/channels/ChannelEditorDialog.d.ts +25 -0
  83. package/dist/types/components/channels/ChannelPairingRequests.d.ts +15 -0
  84. package/dist/types/components/channels/ChannelsManagerPage.d.ts +12 -0
  85. package/dist/types/components/channels/channel-editor-state.d.ts +25 -0
  86. package/dist/types/components/channels/channel-platform.d.ts +9 -0
  87. package/dist/types/components/composer/AddMenu.d.ts +20 -0
  88. package/dist/types/components/composer/prependSkillInvocation.d.ts +12 -0
  89. package/dist/types/components/dialogs/AddWorkspaceDialog.d.ts +24 -0
  90. package/dist/types/components/dialogs/ApprovalModeDialog.d.ts +7 -0
  91. package/dist/types/components/dialogs/DaemonStatusDialog.d.ts +3 -0
  92. package/dist/types/components/dialogs/DeleteSessionDialog.d.ts +8 -0
  93. package/dist/types/components/dialogs/DialogShell.d.ts +15 -0
  94. package/dist/types/components/dialogs/GitDialog.d.ts +14 -0
  95. package/dist/types/components/dialogs/GitDiffDialog.d.ts +14 -0
  96. package/dist/types/components/dialogs/GitHubPrsDialog.d.ts +9 -0
  97. package/dist/types/components/dialogs/GitLogDialog.d.ts +14 -0
  98. package/dist/types/components/dialogs/GoalEditDialog.d.ts +9 -0
  99. package/dist/types/components/dialogs/GoalsDialog.d.ts +16 -0
  100. package/dist/types/components/dialogs/HelpDialog.d.ts +6 -0
  101. package/dist/types/components/dialogs/ModelDialog.d.ts +28 -0
  102. package/dist/types/components/dialogs/ModelFallbacksDialog.d.ts +14 -0
  103. package/dist/types/components/dialogs/ReleaseSessionDialog.d.ts +8 -0
  104. package/dist/types/components/dialogs/ResumeDialog.d.ts +7 -0
  105. package/dist/types/components/dialogs/RewindDialog.d.ts +12 -0
  106. package/dist/types/components/dialogs/ScheduledTasksDialog.d.ts +30 -0
  107. package/dist/types/components/dialogs/SessionRow.d.ts +46 -0
  108. package/dist/types/components/dialogs/SvgLineChart.d.ts +35 -0
  109. package/dist/types/components/dialogs/ThemeDialog.d.ts +8 -0
  110. package/dist/types/components/dialogs/TokenHeatmap.d.ts +18 -0
  111. package/dist/types/components/dialogs/ToolsDialog.d.ts +1 -0
  112. package/dist/types/components/dialogs/UsageDashboardTab.d.ts +13 -0
  113. package/dist/types/components/dialogs/dialogStyles.d.ts +2 -0
  114. package/dist/types/components/dialogs/scheduledTasksSchedule.d.ts +62 -0
  115. package/dist/types/components/extensions/ExtensionsManagerPage.d.ts +9 -0
  116. package/dist/types/components/extensions/extensions-manager-logic.d.ts +3 -0
  117. package/dist/types/components/local-control-api.d.ts +30 -0
  118. package/dist/types/components/mcp/McpManagerPage.d.ts +12 -0
  119. package/dist/types/components/messages/AskUserQuestion.d.ts +18 -0
  120. package/dist/types/components/messages/AssistantMessage.d.ts +40 -0
  121. package/dist/types/components/messages/AuthMessage.d.ts +6 -0
  122. package/dist/types/components/messages/BtwMessage.d.ts +7 -0
  123. package/dist/types/components/messages/ContextUsageMessage.d.ts +9 -0
  124. package/dist/types/components/messages/EnhancedMarkdownTable.d.ts +31 -0
  125. package/dist/types/components/messages/FootnoteCard.d.ts +11 -0
  126. package/dist/types/components/messages/FootnotePreviewContent.d.ts +9 -0
  127. package/dist/types/components/messages/GoalApprovalContent.d.ts +5 -0
  128. package/dist/types/components/messages/GoalStatusMessage.d.ts +15 -0
  129. package/dist/types/components/messages/LinkifiedText.d.ts +8 -0
  130. package/dist/types/components/messages/LocalControlSettingsCard.d.ts +1 -0
  131. package/dist/types/components/messages/Markdown.d.ts +38 -0
  132. package/dist/types/components/messages/MarkdownChartRenderer.d.ts +65 -0
  133. package/dist/types/components/messages/McpApp.d.ts +21 -0
  134. package/dist/types/components/messages/McpStatusMessage.d.ts +22 -0
  135. package/dist/types/components/messages/MemoryMessage.d.ts +9 -0
  136. package/dist/types/components/messages/ModelManagementSection.d.ts +23 -0
  137. package/dist/types/components/messages/PlanExecutionView.d.ts +91 -0
  138. package/dist/types/components/messages/PlanMessage.d.ts +8 -0
  139. package/dist/types/components/messages/QuestionAnswerMessage.d.ts +7 -0
  140. package/dist/types/components/messages/SettingsMessage.d.ts +46 -0
  141. package/dist/types/components/messages/StatsMessage.d.ts +14 -0
  142. package/dist/types/components/messages/StatusMessage.d.ts +18 -0
  143. package/dist/types/components/messages/SystemMessage.d.ts +29 -0
  144. package/dist/types/components/messages/TasksStatusMessage.d.ts +38 -0
  145. package/dist/types/components/messages/TodoView.d.ts +17 -0
  146. package/dist/types/components/messages/ToolApproval.d.ts +28 -0
  147. package/dist/types/components/messages/ToolFilePreviewButton.d.ts +7 -0
  148. package/dist/types/components/messages/ToolGroup.d.ts +50 -0
  149. package/dist/types/components/messages/UserMessage.d.ts +46 -0
  150. package/dist/types/components/messages/UserShellMessage.d.ts +6 -0
  151. package/dist/types/components/messages/WorkflowExecutionView.d.ts +48 -0
  152. package/dist/types/components/messages/agentForest.d.ts +96 -0
  153. package/dist/types/components/messages/codeHighlighter.d.ts +25 -0
  154. package/dist/types/components/messages/rehype-footnote-cards.d.ts +22 -0
  155. package/dist/types/components/messages/toolFormatting.d.ts +63 -0
  156. package/dist/types/components/messages/tools/DiffView.d.ts +5 -0
  157. package/dist/types/components/messages/tools/ParallelAgentsGroup.d.ts +12 -0
  158. package/dist/types/components/messages/tools/SubAgentPanel.d.ts +10 -0
  159. package/dist/types/components/messages/tools/toolDisplay.d.ts +7 -0
  160. package/dist/types/components/panels/EnvironmentPanel.d.ts +45 -0
  161. package/dist/types/components/panels/SourcesSection.d.ts +25 -0
  162. package/dist/types/components/panels/TodoPanel.d.ts +11 -0
  163. package/dist/types/components/plugins/PluginManagerPage.d.ts +8 -0
  164. package/dist/types/components/plugins/manager-page.d.ts +4 -0
  165. package/dist/types/components/preview/SavedWebPreview.d.ts +5 -0
  166. package/dist/types/components/preview/WebPreviewPanel.d.ts +5 -0
  167. package/dist/types/components/preview/web-preview.d.ts +7 -0
  168. package/dist/types/components/sidebar/SessionDetailsTooltip.d.ts +17 -0
  169. package/dist/types/components/sidebar/SessionGroupSection.d.ts +19 -0
  170. package/dist/types/components/sidebar/StandaloneRecents.d.ts +33 -0
  171. package/dist/types/components/sidebar/WebShellSidebar.d.ts +139 -0
  172. package/dist/types/components/sidebar/WorkspaceDetailsTooltip.d.ts +49 -0
  173. package/dist/types/components/sidebar/WorkspaceMenu.d.ts +41 -0
  174. package/dist/types/components/sidebar/WorkspaceRenameDialog.d.ts +18 -0
  175. package/dist/types/components/sidebar/WorkspaceSection.d.ts +112 -0
  176. package/dist/types/components/sidebar/channelSessionGroups.d.ts +7 -0
  177. package/dist/types/components/sidebar/collapsedSessionSections.d.ts +25 -0
  178. package/dist/types/components/sidebar/scheduled-task-session-groups.d.ts +12 -0
  179. package/dist/types/components/sidebar/sessionDetailsCollisionBoundary.d.ts +1 -0
  180. package/dist/types/components/sidebar/sessionSearch.d.ts +28 -0
  181. package/dist/types/components/sidebar/sessionTitleScroll.d.ts +7 -0
  182. package/dist/types/components/sidebar/sidebarToggleShortcut.d.ts +18 -0
  183. package/dist/types/components/sidebar/useSessionContentSearch.d.ts +20 -0
  184. package/dist/types/components/sidebar/useWorkspaceOverview.d.ts +40 -0
  185. package/dist/types/components/sidebar/workspaceExpansion.d.ts +4 -0
  186. package/dist/types/components/sidebar/workspaceOverviewModel.d.ts +123 -0
  187. package/dist/types/components/skills/SkillInstallDialog.d.ts +8 -0
  188. package/dist/types/components/skills/SkillsManagerPage.d.ts +11 -0
  189. package/dist/types/components/skills/skills-manager-logic.d.ts +6 -0
  190. package/dist/types/components/sources/SourceList.d.ts +5 -0
  191. package/dist/types/components/sources/TurnSources.d.ts +5 -0
  192. package/dist/types/components/sources/sourceEntries.d.ts +8 -0
  193. package/dist/types/components/summaryRunId.d.ts +9 -0
  194. package/dist/types/components/terminal/TerminalPanel.d.ts +17 -0
  195. package/dist/types/components/toolbarDropdown.d.ts +39 -0
  196. package/dist/types/components/ui/alert-dialog.d.ts +19 -0
  197. package/dist/types/components/ui/alert.d.ts +10 -0
  198. package/dist/types/components/ui/badge.d.ts +9 -0
  199. package/dist/types/components/ui/breadcrumb.d.ts +11 -0
  200. package/dist/types/components/ui/button.d.ts +11 -0
  201. package/dist/types/components/ui/card.d.ts +11 -0
  202. package/dist/types/components/ui/checkbox.d.ts +4 -0
  203. package/dist/types/components/ui/data-table.d.ts +31 -0
  204. package/dist/types/components/ui/dialog.d.ts +19 -0
  205. package/dist/types/components/ui/drawer.d.ts +16 -0
  206. package/dist/types/components/ui/dropdown-menu.d.ts +29 -0
  207. package/dist/types/components/ui/empty.d.ts +11 -0
  208. package/dist/types/components/ui/field.d.ts +24 -0
  209. package/dist/types/components/ui/input.d.ts +3 -0
  210. package/dist/types/components/ui/label.d.ts +4 -0
  211. package/dist/types/components/ui/management-notice.d.ts +12 -0
  212. package/dist/types/components/ui/popover.d.ts +13 -0
  213. package/dist/types/components/ui/radio-group.d.ts +5 -0
  214. package/dist/types/components/ui/scroll-area.d.ts +5 -0
  215. package/dist/types/components/ui/select.d.ts +16 -0
  216. package/dist/types/components/ui/separator.d.ts +4 -0
  217. package/dist/types/components/ui/skeleton.d.ts +2 -0
  218. package/dist/types/components/ui/spinner.d.ts +2 -0
  219. package/dist/types/components/ui/switch.d.ts +6 -0
  220. package/dist/types/components/ui/table.d.ts +10 -0
  221. package/dist/types/components/ui/tabs.d.ts +13 -0
  222. package/dist/types/components/ui/textarea.d.ts +3 -0
  223. package/dist/types/components/ui/toggle-group.d.ts +10 -0
  224. package/dist/types/components/ui/toggle.d.ts +9 -0
  225. package/dist/types/components/ui/tooltip.d.ts +7 -0
  226. package/dist/types/components/workflow/SessionWorkflowCockpit.d.ts +17 -0
  227. package/dist/types/components/workflow/SessionWorkflowInspector.d.ts +15 -0
  228. package/dist/types/components/workflow/session-workflow-model.d.ts +32 -0
  229. package/dist/types/components/workflows/WorkflowRunsPage.d.ts +6 -0
  230. package/dist/types/components/workspaces/WorkspaceRemovalDialog.d.ts +20 -0
  231. package/dist/types/components/workspaces/WorkspacesOverviewPanel.d.ts +21 -0
  232. package/dist/types/components/workspaces/useWorkspaceRemoval.d.ts +47 -0
  233. package/dist/types/config/daemon.d.ts +41 -0
  234. package/dist/types/config/standalone.d.ts +1 -0
  235. package/dist/types/constants/loadingPhrases.d.ts +4 -0
  236. package/dist/types/constants/localCommands.d.ts +27 -0
  237. package/dist/types/constants/sessions.d.ts +43 -0
  238. package/dist/types/constants/toolNames.d.ts +9 -0
  239. package/dist/types/customization.d.ts +508 -0
  240. package/dist/types/daemon/followupSidechannel.d.ts +11 -0
  241. package/dist/types/daemon/index.d.ts +14 -0
  242. package/dist/types/daemon/midTurnInjectedSidechannel.d.ts +37 -0
  243. package/dist/types/daemon/pendingPromptVersion.d.ts +19 -0
  244. package/dist/types/daemon/session/DaemonSessionProvider.d.ts +45 -0
  245. package/dist/types/daemon/session/actions.d.ts +100 -0
  246. package/dist/types/daemon/session/clientLifecycle.d.ts +21 -0
  247. package/dist/types/daemon/session/httpErrors.d.ts +9 -0
  248. package/dist/types/daemon/session/index.d.ts +15 -0
  249. package/dist/types/daemon/session/live-journal-repair.d.ts +19 -0
  250. package/dist/types/daemon/session/mappers.d.ts +71 -0
  251. package/dist/types/daemon/session/promptContent.d.ts +11 -0
  252. package/dist/types/daemon/session/selectors.d.ts +21 -0
  253. package/dist/types/daemon/session/session-context.d.ts +16 -0
  254. package/dist/types/daemon/session/status.d.ts +12 -0
  255. package/dist/types/daemon/session/transcript-page-table.d.ts +147 -0
  256. package/dist/types/daemon/session/turn-navigation-store.d.ts +117 -0
  257. package/dist/types/daemon/session/turn-notification-context.d.ts +43 -0
  258. package/dist/types/daemon/session/types.d.ts +568 -0
  259. package/dist/types/daemon/timing.d.ts +14 -0
  260. package/dist/types/daemon/useDaemonFollowupSuggestion.d.ts +77 -0
  261. package/dist/types/daemon/useDaemonMidTurnInjected.d.ts +30 -0
  262. package/dist/types/daemon/workspace/DaemonWorkspaceProvider.d.ts +21 -0
  263. package/dist/types/daemon/workspace/actions.d.ts +14 -0
  264. package/dist/types/daemon/workspace/hooks/index.d.ts +21 -0
  265. package/dist/types/daemon/workspace/hooks/useDaemonAgents.d.ts +22 -0
  266. package/dist/types/daemon/workspace/hooks/useDaemonAuth.d.ts +24 -0
  267. package/dist/types/daemon/workspace/hooks/useDaemonChannels.d.ts +33 -0
  268. package/dist/types/daemon/workspace/hooks/useDaemonDiagnostics.d.ts +10 -0
  269. package/dist/types/daemon/workspace/hooks/useDaemonFiles.d.ts +10 -0
  270. package/dist/types/daemon/workspace/hooks/useDaemonGlob.d.ts +8 -0
  271. package/dist/types/daemon/workspace/hooks/useDaemonMcp.d.ts +31 -0
  272. package/dist/types/daemon/workspace/hooks/useDaemonMemory.d.ts +16 -0
  273. package/dist/types/daemon/workspace/hooks/useDaemonProviders.d.ts +20 -0
  274. package/dist/types/daemon/workspace/hooks/useDaemonResource.d.ts +7 -0
  275. package/dist/types/daemon/workspace/hooks/useDaemonSessions.d.ts +48 -0
  276. package/dist/types/daemon/workspace/hooks/useDaemonSettings.d.ts +20 -0
  277. package/dist/types/daemon/workspace/hooks/useDaemonSkills.d.ts +30 -0
  278. package/dist/types/daemon/workspace/hooks/useDaemonStatusReport.d.ts +18 -0
  279. package/dist/types/daemon/workspace/hooks/useDaemonTools.d.ts +16 -0
  280. package/dist/types/daemon/workspace/hooks/useDaemonUsageDashboard.d.ts +27 -0
  281. package/dist/types/daemon/workspace/hooks/useWorkspaceEventReload.d.ts +6 -0
  282. package/dist/types/daemon/workspace/index.d.ts +10 -0
  283. package/dist/types/daemon/workspace/load-ready-skills.d.ts +7 -0
  284. package/dist/types/daemon/workspace/types.d.ts +415 -0
  285. package/dist/types/daemon-react-sdk.d.ts +319 -0
  286. package/dist/types/extensions/inputHighlight.d.ts +10 -0
  287. package/dist/types/hooks/daemonSessionMappers.d.ts +2 -0
  288. package/dist/types/hooks/useAnimationFrameTranscriptBlocks.d.ts +10 -0
  289. package/dist/types/hooks/useAnimationFrameValue.d.ts +1 -0
  290. package/dist/types/hooks/useAtMentionMenu.d.ts +72 -0
  291. package/dist/types/hooks/useAtMentionSources.d.ts +113 -0
  292. package/dist/types/hooks/useBackgroundTasks.d.ts +8 -0
  293. package/dist/types/hooks/useChatNavigationVisible.d.ts +2 -0
  294. package/dist/types/hooks/useComposerCore.d.ts +226 -0
  295. package/dist/types/hooks/useContextUsageControls.d.ts +26 -0
  296. package/dist/types/hooks/useCopiedFlash.d.ts +15 -0
  297. package/dist/types/hooks/useDelayedGlobalKeyDown.d.ts +1 -0
  298. package/dist/types/hooks/useExternalLinkOpener.d.ts +11 -0
  299. package/dist/types/hooks/useFileUpload.d.ts +62 -0
  300. package/dist/types/hooks/useFilterInput.d.ts +27 -0
  301. package/dist/types/hooks/useInputHistory.d.ts +17 -0
  302. package/dist/types/hooks/useIsLargeScreen.d.ts +20 -0
  303. package/dist/types/hooks/useIsTouchComposer.d.ts +36 -0
  304. package/dist/types/hooks/useListboxKeyboard.d.ts +42 -0
  305. package/dist/types/hooks/useMessages.d.ts +20 -0
  306. package/dist/types/hooks/useModelConfigurations.d.ts +11 -0
  307. package/dist/types/hooks/useNewSessionSuggestion.d.ts +26 -0
  308. package/dist/types/hooks/useOtherWorkspaceSessions.d.ts +11 -0
  309. package/dist/types/hooks/usePrefersReducedMotion.d.ts +1 -0
  310. package/dist/types/hooks/useQueuedPrompts.d.ts +74 -0
  311. package/dist/types/hooks/useScopedSessions.d.ts +65 -0
  312. package/dist/types/hooks/useSessionArtifacts.d.ts +10 -0
  313. package/dist/types/hooks/useSessionArtifactsChange.d.ts +12 -0
  314. package/dist/types/hooks/useSessionSources.d.ts +13 -0
  315. package/dist/types/hooks/useShallowMemo.d.ts +2 -0
  316. package/dist/types/hooks/useSharedNow.d.ts +1 -0
  317. package/dist/types/hooks/useStreamingLoadingMetrics.d.ts +19 -0
  318. package/dist/types/hooks/useTranscriptViewport.d.ts +31 -0
  319. package/dist/types/i18n.d.ts +14 -0
  320. package/dist/types/index.d.ts +69 -0
  321. package/dist/types/interactionBlockContext.d.ts +3 -0
  322. package/dist/types/lib/utils.d.ts +2 -0
  323. package/dist/types/live/HotkeySetter.d.ts +16 -0
  324. package/dist/types/live/LiveVoiceButton.d.ts +7 -0
  325. package/dist/types/live/LiveVoiceSettingsCard.d.ts +9 -0
  326. package/dist/types/live/useLiveVoice.d.ts +17 -0
  327. package/dist/types/live/useLiveVoiceSetup.d.ts +19 -0
  328. package/dist/types/local-files/bridge-client.d.ts +207 -0
  329. package/dist/types/local-files/capabilities.d.ts +33 -0
  330. package/dist/types/local-files/directory-handle-store.d.ts +15 -0
  331. package/dist/types/local-files/local-directory.d.ts +130 -0
  332. package/dist/types/local-files/mcp-server.d.ts +57 -0
  333. package/dist/types/local-files/pick-directory.d.ts +49 -0
  334. package/dist/types/local-files/useLocalFilesBridge.d.ts +64 -0
  335. package/dist/types/main.d.ts +6 -0
  336. package/dist/types/mcpAppHostContext.d.ts +1 -0
  337. package/dist/types/midTurnDedup.d.ts +52 -0
  338. package/dist/types/monitorDetailsContext.d.ts +12 -0
  339. package/dist/types/notification-text.d.ts +8 -0
  340. package/dist/types/portalRoot.d.ts +2 -0
  341. package/dist/types/pwa-registration.d.ts +10 -0
  342. package/dist/types/session-catalog/session-catalog-hooks.d.ts +121 -0
  343. package/dist/types/session-catalog/session-catalog-store.d.ts +143 -0
  344. package/dist/types/session-catalog/session-live-state-poll-interval.d.ts +2 -0
  345. package/dist/types/session-catalog/workspace-session-live-state.d.ts +20 -0
  346. package/dist/types/settings.d.ts +70 -0
  347. package/dist/types/shadowDom.d.ts +17 -0
  348. package/dist/types/subagentDetailsContext.d.ts +15 -0
  349. package/dist/types/themeContext.d.ts +12 -0
  350. package/dist/types/transcript.d.ts +33 -0
  351. package/dist/types/transcriptRenderMode.d.ts +5 -0
  352. package/dist/types/utils/ansi.d.ts +9 -0
  353. package/dist/types/utils/askUserPermission.d.ts +13 -0
  354. package/dist/types/utils/base64.d.ts +1 -0
  355. package/dist/types/utils/bounded-map.d.ts +11 -0
  356. package/dist/types/utils/clipboard.d.ts +31 -0
  357. package/dist/types/utils/commandDisplay.d.ts +7 -0
  358. package/dist/types/utils/composerInputState.d.ts +19 -0
  359. package/dist/types/utils/composerModels.d.ts +28 -0
  360. package/dist/types/utils/composerTag.d.ts +42 -0
  361. package/dist/types/utils/composerTasks.d.ts +16 -0
  362. package/dist/types/utils/contextUsage.d.ts +9 -0
  363. package/dist/types/utils/copyCommand.d.ts +18 -0
  364. package/dist/types/utils/cssUrlVar.d.ts +3 -0
  365. package/dist/types/utils/dialogLabels.d.ts +1 -0
  366. package/dist/types/utils/dom.d.ts +2 -0
  367. package/dist/types/utils/errorDetail.d.ts +1 -0
  368. package/dist/types/utils/escapeIntent.d.ts +29 -0
  369. package/dist/types/utils/externalOpen.d.ts +15 -0
  370. package/dist/types/utils/formatDateTime.d.ts +7 -0
  371. package/dist/types/utils/formatRelativeTime.d.ts +4 -0
  372. package/dist/types/utils/formatRuntime.d.ts +1 -0
  373. package/dist/types/utils/formatTokenCount.d.ts +13 -0
  374. package/dist/types/utils/gitModeIntent.d.ts +22 -0
  375. package/dist/types/utils/goalCondition.d.ts +43 -0
  376. package/dist/types/utils/goalControlRequest.d.ts +20 -0
  377. package/dist/types/utils/goalGate.d.ts +39 -0
  378. package/dist/types/utils/imageIngestion.d.ts +47 -0
  379. package/dist/types/utils/largePaste.d.ts +44 -0
  380. package/dist/types/utils/linkify.d.ts +19 -0
  381. package/dist/types/utils/localCommandQueue.d.ts +47 -0
  382. package/dist/types/utils/modelDisplay.d.ts +1 -0
  383. package/dist/types/utils/modelEncoding.d.ts +15 -0
  384. package/dist/types/utils/modelSwitchMessages.d.ts +4 -0
  385. package/dist/types/utils/monitorTasks.d.ts +3 -0
  386. package/dist/types/utils/planMode.d.ts +5 -0
  387. package/dist/types/utils/promptAdmission.d.ts +1 -0
  388. package/dist/types/utils/queueDrain.d.ts +21 -0
  389. package/dist/types/utils/remote-name-skeleton.d.ts +1 -0
  390. package/dist/types/utils/sentinelMessage.d.ts +4 -0
  391. package/dist/types/utils/sessionErrors.d.ts +2 -0
  392. package/dist/types/utils/sessionPath.d.ts +19 -0
  393. package/dist/types/utils/sessionPreparation.d.ts +77 -0
  394. package/dist/types/utils/slash-command-action.d.ts +3 -0
  395. package/dist/types/utils/slashSectionPlan.d.ts +26 -0
  396. package/dist/types/utils/splitUrl.d.ts +37 -0
  397. package/dist/types/utils/standalone-session-routing.d.ts +2 -0
  398. package/dist/types/utils/systemInfo.d.ts +26 -0
  399. package/dist/types/utils/taskActivity.d.ts +18 -0
  400. package/dist/types/utils/timeAgo.d.ts +10 -0
  401. package/dist/types/utils/todos.d.ts +165 -0
  402. package/dist/types/utils/unicodeConfusables.d.ts +1 -0
  403. package/dist/types/utils/unifiedDiff.d.ts +12 -0
  404. package/dist/types/utils/workflowTasks.d.ts +3 -0
  405. package/dist/types/utils/workspace.d.ts +34 -0
  406. package/dist/types/utils/workspaceColor.d.ts +15 -0
  407. package/dist/types/voice/VoiceButton.d.ts +16 -0
  408. package/dist/types/voice/use-voice-workspace-settings.d.ts +13 -0
  409. package/dist/types/voice/useVoiceCapture.d.ts +42 -0
  410. package/dist/types/voice/voice-workspace-target.d.ts +45 -0
  411. package/dist/types/voice/voiceModels.d.ts +23 -0
  412. package/dist/types/workflowDetailsContext.d.ts +11 -0
  413. package/package.json +102 -0
@@ -0,0 +1,91 @@
1
+ import type { DaemonSessionAgentTaskStatus, DaemonSessionTaskStatus } from '@qwen-code/sdk/daemon';
2
+ import type { ACPToolCall, TodoItem } from '../../adapters/types';
3
+ export type PlanNodeStatus = 'running' | 'paused' | 'completed' | 'blocked' | 'in_progress' | 'ready';
4
+ /**
5
+ * Status is carried by a glyph as well as a colour so the graph survives
6
+ * colour-blindness, high-contrast mode, and a greyscale screenshot. Every
7
+ * surface showing plan status uses the same glyph for the same status.
8
+ */
9
+ export declare const PLAN_STATUS_GLYPH: Record<PlanNodeStatus, string>;
10
+ export declare function layerPlanTodos(todos: readonly TodoItem[]): TodoItem[][];
11
+ export interface TaskExecutionIndex {
12
+ rootByToolCallId: ReadonlyMap<string, DaemonSessionAgentTaskStatus>;
13
+ childrenByParentId: ReadonlyMap<string, DaemonSessionAgentTaskStatus[]>;
14
+ nestedByRootId: Map<string, Array<{
15
+ task: DaemonSessionAgentTaskStatus;
16
+ depth: number;
17
+ }>>;
18
+ }
19
+ export declare function createTaskExecutionIndex(tasks: readonly DaemonSessionTaskStatus[]): TaskExecutionIndex;
20
+ export declare function nestedTasksFromIndex(tool: ACPToolCall, taskIndex: TaskExecutionIndex): Array<{
21
+ task: DaemonSessionAgentTaskStatus;
22
+ depth: number;
23
+ }>;
24
+ export declare function nestedTasksForTool(tool: ACPToolCall, tasks: readonly DaemonSessionTaskStatus[]): Array<{
25
+ task: DaemonSessionAgentTaskStatus;
26
+ depth: number;
27
+ }>;
28
+ /**
29
+ * Deliberately uncached. Keying on the tool object would be wrong the moment
30
+ * a reused object gains a sub-tool — `appendSubTool` mutates `subTools` in
31
+ * place — and the only thing standing between that and a stale render is
32
+ * `useMessages`' prefix-reuse rule in another module. The callers' own
33
+ * derivations are memoized, so the repetition this would remove is bounded to
34
+ * a single derivation; a silent wrong subtree is not worth that.
35
+ */
36
+ export declare function nestedAgentToolsForTool(tool: ACPToolCall): Array<{
37
+ tool: ACPToolCall;
38
+ depth: number;
39
+ }>;
40
+ /**
41
+ * Same agent-status walk as {@link attentionAgentStatuses}, for callers that
42
+ * hold the raw task list instead of a prebuilt index (the cockpit's stats
43
+ * strip, which must tally exactly what the attention queue shows).
44
+ */
45
+ export declare function getAttentionAgentStatuses(tool: ACPToolCall, tasks: readonly DaemonSessionTaskStatus[]): string[];
46
+ /**
47
+ * One entry per agent the overview strip reports as active, and the single
48
+ * source the workflow inspector summary counts: the live daemon task when
49
+ * one exists, otherwise a transcript-derived stand-in for an in-flight tool
50
+ * call with no live task (the replay shape). The walk mirrors the node
51
+ * badges (executionStatus), so the strip, the badges, and the inspector can
52
+ * never contradict each other. An agent observed through BOTH a live task
53
+ * and a persisted transcript tool counts once (dedup by toolUseId).
54
+ */
55
+ export declare function getActiveAgents(tools: readonly ACPToolCall[], tasks: readonly DaemonSessionTaskStatus[]): DaemonSessionAgentTaskStatus[];
56
+ /**
57
+ * {@link getActiveAgents} for callers that already hold an index. Building the
58
+ * index is O(tasks); doing it per todo and per tool — as the workflow
59
+ * projection used to — makes the walk O((todos + tools) x tasks) for a result
60
+ * that never varies with the todo or the tool.
61
+ */
62
+ export declare function getActiveAgentsFromIndex(tools: readonly ACPToolCall[], taskIndex: TaskExecutionIndex): DaemonSessionAgentTaskStatus[];
63
+ export declare function getPlanNodeStateFromIndex(todo: TodoItem, todosById: ReadonlyMap<string, TodoItem>, tools: readonly ACPToolCall[], taskIndex: TaskExecutionIndex): {
64
+ status: PlanNodeStatus;
65
+ attention: boolean;
66
+ };
67
+ export declare function getPlanNodeState(todo: TodoItem, todosById: ReadonlyMap<string, TodoItem>, tools: readonly ACPToolCall[], tasks: readonly DaemonSessionTaskStatus[]): {
68
+ status: PlanNodeStatus;
69
+ attention: boolean;
70
+ };
71
+ /** The plan step a tool call was issued for, when it declares one. */
72
+ export declare function todoIdOf(tool: ACPToolCall): string | undefined;
73
+ export declare function getAttentionAgentTool(tool: ACPToolCall, tasks: readonly DaemonSessionTaskStatus[]): ACPToolCall | undefined;
74
+ export declare function PlanExecutionView({ todos, tools, tasks, onOpenSubagent, hideTitle, selection, showStepDetails, }: {
75
+ todos: readonly TodoItem[];
76
+ tools: readonly ACPToolCall[];
77
+ tasks: readonly DaemonSessionTaskStatus[];
78
+ onOpenSubagent?: (tool: ACPToolCall) => void;
79
+ /**
80
+ * Drop the "Plan execution" caption when the host already titles the region.
81
+ * The locate control stays either way — it is an action, not a label.
82
+ */
83
+ hideTitle?: boolean;
84
+ /** Lets a larger host keep graph selection in sync with an adjacent detail surface. */
85
+ selection?: {
86
+ value: string | undefined;
87
+ onChange: (todoId: string | undefined) => void;
88
+ };
89
+ /** The full Workflow canvas renders selected-step detail in the right panel. */
90
+ showStepDetails?: boolean;
91
+ }): import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,8 @@
1
+ import type { TodoItem } from '../../adapters/types';
2
+ interface PlanMessageProps {
3
+ id: string;
4
+ todos: TodoItem[];
5
+ isLocateFlashing?: boolean;
6
+ }
7
+ export declare const PlanMessage: import("react").NamedExoticComponent<PlanMessageProps>;
8
+ export {};
@@ -0,0 +1,7 @@
1
+ import type { ACPToolCall } from '../../adapters/types';
2
+ import type { getQuestionAnswerResult } from './toolFormatting';
3
+ export declare function QuestionAnswerMessage({ tool, result, isLocateFlashing, }: {
4
+ tool: ACPToolCall;
5
+ result: NonNullable<ReturnType<typeof getQuestionAnswerResult>>;
6
+ isLocateFlashing?: boolean;
7
+ }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,46 @@
1
+ import type { DaemonSettingDescriptor, DaemonSettingUpdateResult, DaemonWorkspaceSettingsStatus } from '@qwen-code/web-shell/daemon-react-sdk';
2
+ import { type WebShellLanguage } from '../../i18n';
3
+ import type { UseLiveVoiceSetupResult } from '../../live/useLiveVoiceSetup';
4
+ import { type WebShellTheme } from '../../themeContext';
5
+ import { type ModelManagementProps } from './ModelManagementSection';
6
+ import { type WebShellSettingsOptions } from '../../settings';
7
+ type ChatWidthMode = '1000' | 'wide';
8
+ interface SettingsMessageProps {
9
+ settingsState: SettingsMessageSettingsState;
10
+ presentation?: WebShellSettingsOptions;
11
+ onLanguageChange: (language: WebShellLanguage, scope: Scope) => void;
12
+ onSubDialog: (settingKey: string, scope: Scope) => void;
13
+ onThemeChange: (theme: WebShellTheme) => void;
14
+ chatWidthMode: ChatWidthMode;
15
+ onChatWidthModeChange: (mode: ChatWidthMode) => void;
16
+ /** Model list/add/delete/select, rendered inside the Model category. */
17
+ modelManagement?: ModelManagementProps;
18
+ embedded?: boolean;
19
+ /** Category to select on open (deep link, e.g. 'Daemon'). */
20
+ initialCategory?: string;
21
+ }
22
+ export interface SettingsMessageSettingsState {
23
+ status: DaemonWorkspaceSettingsStatus | undefined;
24
+ settings: DaemonSettingDescriptor[];
25
+ loading: boolean;
26
+ error: Error | undefined;
27
+ reload: () => Promise<DaemonWorkspaceSettingsStatus | undefined>;
28
+ setValue: (scope: 'workspace' | 'user', key: string, value: unknown) => Promise<DaemonSettingUpdateResult>;
29
+ liveSetup?: UseLiveVoiceSetupResult;
30
+ }
31
+ type Scope = 'user' | 'workspace';
32
+ type Translator = (key: string, vars?: Record<string, string | number>) => string;
33
+ export declare function formatSettingLabel(setting: DaemonSettingDescriptor, t: Translator): string;
34
+ export type FlatRow = {
35
+ type: 'header';
36
+ category: string;
37
+ } | {
38
+ type: 'setting';
39
+ setting: DaemonSettingDescriptor;
40
+ } | {
41
+ type: 'local';
42
+ localKey: 'chatWidth' | 'browserNotifications';
43
+ };
44
+ export declare function nextSettingIdx(rows: FlatRow[], current: number, dir: 1 | -1): number;
45
+ export declare function SettingsMessage({ settingsState, presentation, onLanguageChange, onSubDialog, onThemeChange, chatWidthMode, onChatWidthModeChange, modelManagement, embedded, initialCategory, }: SettingsMessageProps): import("react/jsx-runtime").JSX.Element;
46
+ export {};
@@ -0,0 +1,14 @@
1
+ import type { DaemonSessionStatsStatus } from '@qwen-code/web-shell/daemon-react-sdk';
2
+ export type StatsView = 'overview' | 'model' | 'tools';
3
+ interface ParsedStats {
4
+ view: StatsView;
5
+ status: DaemonSessionStatsStatus;
6
+ }
7
+ export declare function serializeStatsMessage(status: DaemonSessionStatsStatus, view?: StatsView): string;
8
+ export declare function parseStatsMessage(content: string): ParsedStats | null;
9
+ export declare function formatDuration(ms: number): string;
10
+ export declare function StatsMessage({ view, status, }: {
11
+ view: StatsView;
12
+ status: DaemonSessionStatsStatus;
13
+ }): import("react/jsx-runtime").JSX.Element;
14
+ export {};
@@ -0,0 +1,18 @@
1
+ export interface StatusInfo {
2
+ cliVersion: string;
3
+ runtime: string;
4
+ platform: string;
5
+ auth: string;
6
+ baseUrl: string;
7
+ model: string;
8
+ fastModel: string;
9
+ sessionId: string;
10
+ sandbox: string;
11
+ proxy: string;
12
+ memoryUsage: string;
13
+ }
14
+ declare const serializeStatusMessage: (data: StatusInfo) => string, parseStatusMessage: (content: string) => StatusInfo | null;
15
+ export { serializeStatusMessage, parseStatusMessage };
16
+ export declare function StatusMessage({ info }: {
17
+ info: StatusInfo;
18
+ }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,29 @@
1
+ interface SystemMessageProps {
2
+ content: string;
3
+ variant: 'info' | 'error' | 'warning';
4
+ source?: string;
5
+ data?: unknown;
6
+ images?: Array<{
7
+ data: string;
8
+ mimeType: string;
9
+ }>;
10
+ files?: Array<{
11
+ name: string;
12
+ mimeType: string;
13
+ attachmentId?: string;
14
+ }>;
15
+ /** Run /context detail, exactly like typing it (context-usage panels). */
16
+ onShowContextDetail?: () => void;
17
+ onLocateBackgroundSource?: (messageId: string, callId?: string) => boolean;
18
+ /** Click an image to preview it in the right panel. */
19
+ onImagePreview?: (src: string, alt?: string) => void;
20
+ onAttachmentPreview?: (file: {
21
+ name: string;
22
+ mimeType?: string;
23
+ attachmentId?: string;
24
+ }) => void;
25
+ showRetryHint?: boolean;
26
+ onRetryClick?: () => void;
27
+ }
28
+ export declare const SystemMessage: import("react").NamedExoticComponent<SystemMessageProps>;
29
+ export {};
@@ -0,0 +1,38 @@
1
+ import type { DaemonSessionMonitorTaskStatus, DaemonSessionShellTaskStatus, DaemonSessionWorkflowTasksStatus } from '@qwen-code/sdk/daemon';
2
+ import { type DaemonSessionActions } from '@qwen-code/web-shell/daemon-react-sdk';
3
+ import type { ACPToolCall, TodoItem } from '../../adapters/types';
4
+ declare const ACTIVE_EVENT = "web-shell:tasks-panel-active";
5
+ type DaemonSessionTasksStatus = DaemonSessionWorkflowTasksStatus;
6
+ export interface SerializedTasksMessage {
7
+ snapshot: DaemonSessionTasksStatus;
8
+ }
9
+ export type TasksStatusView = 'all' | 'workflow-active' | 'workflow-history';
10
+ declare const serializeTasksStatusMessage: (data: SerializedTasksMessage) => string;
11
+ declare function parseTasksStatusMessage(content: string): SerializedTasksMessage | null;
12
+ export { serializeTasksStatusMessage, parseTasksStatusMessage };
13
+ export declare function TasksStatusMessage({ message, embedded, manageActiveEvent, keyboardShortcuts, syncSnapshot, includeWorkflows, taskView, emptyLabel, onWorkflowRunStarted, onTasksChange, onClose, planTodos, agentTools, onOpenSubagent, onOpenMonitor, }: {
14
+ message: SerializedTasksMessage;
15
+ embedded?: boolean;
16
+ manageActiveEvent?: boolean;
17
+ keyboardShortcuts?: boolean;
18
+ syncSnapshot?: boolean;
19
+ includeWorkflows?: boolean;
20
+ taskView?: TasksStatusView;
21
+ emptyLabel?: string;
22
+ onWorkflowRunStarted?: () => void;
23
+ onTasksChange?: (snapshot: DaemonSessionTasksStatus) => void;
24
+ onClose?: () => void;
25
+ planTodos?: readonly TodoItem[];
26
+ agentTools?: readonly ACPToolCall[];
27
+ onOpenSubagent?: (tool: ACPToolCall) => void;
28
+ onOpenMonitor?: (task: DaemonSessionMonitorTaskStatus) => void;
29
+ }): import("react/jsx-runtime").JSX.Element | null;
30
+ export declare function MonitorTaskDetail({ task, actions: providedActions, }: {
31
+ task: DaemonSessionMonitorTaskStatus;
32
+ actions?: DaemonSessionActions;
33
+ }): import("react/jsx-runtime").JSX.Element;
34
+ export declare function ShellTaskDetail({ task, actions: providedActions, }: {
35
+ task: DaemonSessionShellTaskStatus;
36
+ actions?: DaemonSessionActions;
37
+ }): import("react/jsx-runtime").JSX.Element;
38
+ export { ACTIVE_EVENT as TASKS_STATUS_ACTIVE_EVENT };
@@ -0,0 +1,17 @@
1
+ import type { TodoItem } from '../../adapters/types';
2
+ import { type TodoEvent } from '../../utils/todos';
3
+ /**
4
+ * Collapsed view: the change a single snapshot introduced — items that just
5
+ * completed and items that just started. With no tracked change (an unchanged
6
+ * re-emit, or a snapshot rendered without a timeline) it falls back to the
7
+ * current focus item so the row is never empty.
8
+ */
9
+ export declare function TodoEventSummary({ todos, events, }: {
10
+ todos: TodoItem[];
11
+ events: readonly TodoEvent[];
12
+ }): import("react/jsx-runtime").JSX.Element | null;
13
+ /** Expanded view: the full list. `numbered` adds the 1. 2. 3. index column. */
14
+ export declare function TodoFullList({ todos, numbered, }: {
15
+ todos: TodoItem[];
16
+ numbered?: boolean;
17
+ }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,28 @@
1
+ import type { PermissionRequest, TodoItem } from '../../adapters/types';
2
+ import { type SessionContentGenerator } from './AssistantMessage';
3
+ interface ToolApprovalProps {
4
+ request: PermissionRequest;
5
+ onConfirm: (id: string, selectedOption: string) => void | Promise<void>;
6
+ variant?: 'inline' | 'floating';
7
+ disabled?: boolean;
8
+ /**
9
+ * Whether this approval should pull keyboard focus to its safe-default option
10
+ * when it becomes the topmost (visible) one — on appearance, or when a panel/
11
+ * dialog that was covering it closes. Defaults to true. Split-view panes pass
12
+ * false: each pane's approval stays visible side-by-side, so auto-focusing one
13
+ * would steal focus from the pane the user is working in. Keyboard handling
14
+ * itself is focus-scoped (an onKeyDown on the panel), so a keyboardActive=false
15
+ * approval is still fully operable by keyboard once the user tabs/clicks into
16
+ * it — it just never grabs focus on its own.
17
+ */
18
+ keyboardActive?: boolean;
19
+ planTodos?: readonly TodoItem[];
20
+ planExecutionMode?: string;
21
+ generateContent?: SessionContentGenerator;
22
+ }
23
+ export declare function parseTitle(title?: string): {
24
+ toolName: string;
25
+ description: string;
26
+ };
27
+ export declare function ToolApproval({ request, onConfirm, variant, disabled, keyboardActive, planTodos, planExecutionMode, generateContent, }: ToolApprovalProps): import("react/jsx-runtime").JSX.Element;
28
+ export {};
@@ -0,0 +1,7 @@
1
+ import type { ACPToolCall } from '../../adapters/types';
2
+ import type { TurnOutputOpenRequest } from '../artifacts/TurnOutputs';
3
+ export declare function ToolFilePreviewButton({ tool, workspaceCwd, onOpen, }: {
4
+ tool: ACPToolCall;
5
+ workspaceCwd?: string;
6
+ onOpen?: (request: TurnOutputOpenRequest) => void;
7
+ }): import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,50 @@
1
+ import type { ACPToolCall, PermissionRequest } from '../../adapters/types';
2
+ import type { SessionContentGenerator } from './AssistantMessage';
3
+ import { useI18n } from '../../i18n';
4
+ import { type ToolHeaderKind } from '../../customization';
5
+ import type { TurnOutputOpenRequest } from '../artifacts/TurnOutputs';
6
+ interface ToolGroupProps {
7
+ tools: ACPToolCall[];
8
+ compactSummary?: boolean;
9
+ /**
10
+ * Thinking aggregated with the tools in this summary (compact mode), in
11
+ * the original order. Streaming entries drive the "Thinking…" summary;
12
+ * each entry renders as a click-to-expand row.
13
+ */
14
+ thoughts?: Array<{
15
+ content: string;
16
+ isStreaming?: boolean;
17
+ beforeToolCallId?: string;
18
+ }>;
19
+ pendingApproval?: PermissionRequest | null;
20
+ workspaceCwd?: string;
21
+ onTurnOutputOpen?: (request: TurnOutputOpenRequest) => void;
22
+ isLocateFlashing?: boolean;
23
+ /** Powers the translate action on completed thinking rows (zh-CN). */
24
+ generateContent?: SessionContentGenerator;
25
+ }
26
+ export declare function extractDiff(tool: ACPToolCall): string;
27
+ export declare function getRawFileDiff(tool: ACPToolCall): string;
28
+ export declare function buildUnifiedDiff(oldText: string, newText: string): string;
29
+ export declare function languageForPath(filePath: string): string;
30
+ export declare function fencedCodeBlock(language: string, code: string): string;
31
+ interface ToolLineProps {
32
+ tool: ACPToolCall;
33
+ approval?: PermissionRequest | null;
34
+ workspaceCwd?: string;
35
+ onTurnOutputOpen?: (request: TurnOutputOpenRequest) => void;
36
+ summaryOnly?: boolean;
37
+ forceExpanded?: boolean;
38
+ detailsVisible?: boolean;
39
+ hideHeader?: boolean;
40
+ hideCollapsedOutput?: boolean;
41
+ }
42
+ export declare function shouldAutoExpand(tool: ACPToolCall): boolean;
43
+ export declare function getToolHeaderKind(tool: ACPToolCall): ToolHeaderKind;
44
+ export declare function getActiveTool(tools: ACPToolCall[]): ACPToolCall;
45
+ export declare function formatToolGroupSummary(tools: ACPToolCall[], t: ReturnType<typeof useI18n>['t'], workspaceCwd?: string, summarizeAgents?: boolean): string;
46
+ export declare function formatSingleToolSummary(tool: ACPToolCall, t: ReturnType<typeof useI18n>['t'], workspaceCwd?: string): string;
47
+ export declare function isWebFetchToolName(toolName: string): boolean;
48
+ export declare const ToolLine: import("react").NamedExoticComponent<ToolLineProps>;
49
+ export declare const ToolGroup: import("react").NamedExoticComponent<ToolGroupProps>;
50
+ export {};
@@ -0,0 +1,46 @@
1
+ import type { DaemonInputAnnotation } from '@qwen-code/sdk/daemon';
2
+ import type { ComposerTagClickHandler, ComposerTagRenderer, WebShellComposerTag, WebShellComposerTagIconMap } from '../../customization';
3
+ import type { AttachmentPreviewRequest } from '../../adapters/messageTypes';
4
+ import type { ImageTabSource } from '../artifacts/ArtifactPanel';
5
+ interface UserMessageImage {
6
+ data: string;
7
+ mimeType: string;
8
+ attachmentId?: string;
9
+ }
10
+ interface UserMessageFile {
11
+ name: string;
12
+ mimeType: string;
13
+ data?: Blob;
14
+ text?: string;
15
+ attachmentId?: string;
16
+ }
17
+ interface UserMessageProps {
18
+ content: string;
19
+ images?: UserMessageImage[];
20
+ files?: UserMessageFile[];
21
+ inputAnnotations?: readonly DaemonInputAnnotation[];
22
+ isLocateFlashing?: boolean;
23
+ sendFailed?: boolean;
24
+ onRetrySend?: () => void;
25
+ /** Render the message as an in-place editor instead of rendered content. */
26
+ editing?: boolean;
27
+ /** The edited text is being sent; the editor stays open and inert. */
28
+ submittingEdit?: boolean;
29
+ /** Submit trimmed text; attachment-only messages may have empty text. */
30
+ onEditSubmit?: (content: string) => void;
31
+ onEditCancel?: () => void;
32
+ /** Click an uploaded image to preview it in the right panel. */
33
+ onImagePreview?: (src: string, alt?: string, source?: ImageTabSource) => void;
34
+ onAttachmentPreview?: (file: AttachmentPreviewRequest) => void;
35
+ }
36
+ export declare const UserMessage: import("react").NamedExoticComponent<UserMessageProps>;
37
+ export declare function ReadonlyComposerTag({ tag, composerTagIcons, renderComposerTag, renderComposerTagTooltip, onComposerTagClick, title, preserveCustomKindLabel, }: {
38
+ tag: WebShellComposerTag;
39
+ composerTagIcons: WebShellComposerTagIconMap | undefined;
40
+ renderComposerTag: ComposerTagRenderer | undefined;
41
+ renderComposerTagTooltip: ComposerTagRenderer | undefined;
42
+ onComposerTagClick: ComposerTagClickHandler | undefined;
43
+ title?: string;
44
+ preserveCustomKindLabel?: boolean;
45
+ }): import("react/jsx-runtime").JSX.Element;
46
+ export {};
@@ -0,0 +1,6 @@
1
+ interface UserShellMessageProps {
2
+ command: string;
3
+ output: string;
4
+ }
5
+ export declare const UserShellMessage: import("react").NamedExoticComponent<UserShellMessageProps>;
6
+ export {};
@@ -0,0 +1,48 @@
1
+ import { type ReactNode } from 'react';
2
+ import type { DaemonSessionWorkflowTaskStatus, DaemonWorkflowDispatchStatus, DaemonWorkflowDispatchStatusEntry } from '@qwen-code/sdk/daemon';
3
+ export declare const WORKFLOW_GRAPH_RENDER_LIMITS: {
4
+ readonly lanes: 64;
5
+ readonly nodes: 240;
6
+ readonly edges: 400;
7
+ };
8
+ interface WorkflowGraphNode {
9
+ dispatch: DaemonWorkflowDispatchStatusEntry;
10
+ x: number;
11
+ y: number;
12
+ }
13
+ interface WorkflowGraphEdge {
14
+ from: string;
15
+ to: string;
16
+ d: string;
17
+ }
18
+ export interface WorkflowGraphLayout {
19
+ width: number;
20
+ height: number;
21
+ laneWidth: number;
22
+ nodeWidth: number;
23
+ lanes: Array<{
24
+ id: string | null;
25
+ title: string;
26
+ index: number;
27
+ }>;
28
+ nodes: WorkflowGraphNode[];
29
+ edges: WorkflowGraphEdge[];
30
+ dispatchCountByLaneId: ReadonlyMap<string | null, number>;
31
+ dispatchStatusById: ReadonlyMap<string, DaemonWorkflowDispatchStatus>;
32
+ omittedLanes: number;
33
+ omittedNodes: number;
34
+ omittedEdges: number;
35
+ }
36
+ export declare function buildWorkflowGraphLayout(task: DaemonSessionWorkflowTaskStatus, options?: {
37
+ laneWidth?: number;
38
+ }): WorkflowGraphLayout;
39
+ export declare function WorkflowExecutionView({ task, sourceTask, historyTasks, historyActionBusy, onDeleteHistory, actions, }: {
40
+ task: DaemonSessionWorkflowTaskStatus;
41
+ sourceTask?: DaemonSessionWorkflowTaskStatus;
42
+ historyTasks?: readonly DaemonSessionWorkflowTaskStatus[];
43
+ historyActionBusy?: boolean;
44
+ onDeleteHistory?: (runId: string) => void;
45
+ /** Run controls (pause / stop / rerun …) shown at the end of the metrics strip. */
46
+ actions?: ReactNode;
47
+ }): import("react/jsx-runtime").JSX.Element;
48
+ export {};
@@ -0,0 +1,96 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Qwen Team
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * agentForest — pure helpers for rendering nested sub-agents as a tree
8
+ * in the tasks panel.
9
+ *
10
+ * Sub-agents may spawn sub-agents (bounded by `maxSubagentDepth`), and every
11
+ * agent in the tree appears in the same flat tasks snapshot
12
+ * (`DaemonSessionTasksStatus`, polled from `GET /session/:id/tasks`). These
13
+ * helpers turn that flat roster into a parent-grouped display order plus
14
+ * per-row tree metadata, without assuming the full tree is visible: entries
15
+ * appear and leave the snapshot independently (foreground agents unregister
16
+ * on completion, registries cap retained terminal entries), so every function
17
+ * here treats a missing parent as a normal case, not an error.
18
+ *
19
+ * The reorder is a post-pass over an already-sorted list on purpose: the
20
+ * panel sorts active-then-terminal, and a tree can span those buckets — a
21
+ * running parent with a just-completed child, or vice versa. Grouping
22
+ * children under whichever position their parent already earned preserves
23
+ * the sort semantics for roots while keeping trees contiguous.
24
+ *
25
+ * Focused port of the TUI's helpers
26
+ * (`packages/cli/src/ui/components/background-view/agent-forest.ts`); no
27
+ * package importable from both surfaces exists, so the two files share
28
+ * semantics via their collocated tests. Keep behavior changes in sync.
29
+ */
30
+ /**
31
+ * Minimal structural view of a task entry — satisfied by
32
+ * `DaemonSessionTaskStatus` union members, so the helpers stay decoupled
33
+ * from the SDK types. For agent tasks `id` IS the agent id (the daemon
34
+ * serializer guarantees it), which is what `parentAgentId` references.
35
+ */
36
+ export interface AgentForestNode {
37
+ kind: string;
38
+ id?: string;
39
+ parentAgentId?: string | null;
40
+ isBackgrounded?: boolean;
41
+ }
42
+ /** Per-agent tree metadata for row rendering. */
43
+ export interface AgentTreeInfo {
44
+ /**
45
+ * Structural depth among the *visible* entries (0 = rendered at root
46
+ * level). An agent whose ancestors left the snapshot renders closer to
47
+ * the root than its launch depth — the tree indents only what the user
48
+ * can actually see, so connectors never dangle.
49
+ */
50
+ visibleDepth: number;
51
+ /**
52
+ * True when the entry claims a parent (`parentAgentId` set) that is not
53
+ * in the visible set — the row is promoted to root level and annotated
54
+ * ("from <parent>") instead of indented under nothing.
55
+ */
56
+ orphaned: boolean;
57
+ }
58
+ export declare const TREE_INDENT_MAX_LEVELS = 3;
59
+ /**
60
+ * Regroups agent entries so each agent renders directly beneath its parent
61
+ * (depth-first), while every non-agent entry keeps its exact position: the
62
+ * k-th agent slot in the input is filled by the k-th agent of the grouped
63
+ * order. Agents whose parent is absent (top-level, departed parent, or a
64
+ * parent-cycle) keep their original relative order as roots; siblings keep
65
+ * their original relative order under their parent.
66
+ */
67
+ export declare function reorderChildrenUnderParents<T extends AgentForestNode>(entries: readonly T[]): T[];
68
+ /** How an ancestor walk ended — see {@link ancestorChain}. */
69
+ export type AncestorTermination = 'root' | 'missing' | 'cycle';
70
+ /**
71
+ * Walks `node`'s parent chain through `lookup`, collecting the ancestors
72
+ * that are actually present (immediate parent first). The walk stops —
73
+ * without error, per the module contract — at a top-level ancestor
74
+ * (`'root'`), at a departed/unknown parent id (`'missing'`), or on a
75
+ * repeated id (`'cycle'`). Single home of the eviction/cycle policy shared
76
+ * by tree depth and the `[blocking]` verdict.
77
+ */
78
+ export declare function ancestorChain<T extends AgentForestNode>(node: AgentForestNode, lookup: (id: string) => T | undefined): {
79
+ chain: T[];
80
+ terminatedBy: AncestorTermination;
81
+ };
82
+ /**
83
+ * Computes {@link AgentTreeInfo} for every agent entry in the visible set.
84
+ * Depth is the length of the parent chain that is actually present.
85
+ */
86
+ export declare function computeAgentTreeInfo(entries: readonly AgentForestNode[]): Map<string, AgentTreeInfo>;
87
+ /**
88
+ * The agent ids whose cancellation would end the USER's current turn — a
89
+ * foreground entry whose entire ancestor chain is foreground up to the
90
+ * top-level session. A foreground child awaited by a *background* parent
91
+ * blocks that parent, not the user, so it is not tagged; the `[blocking]`
92
+ * warning exists solely to flag "cancelling this ends your turn". When the
93
+ * chain cannot be proven (departed ancestor, cycle), the entry is not
94
+ * tagged — a missing warning is a milder failure than a wrong one.
95
+ */
96
+ export declare function computeUserBlockingIds(entries: readonly AgentForestNode[]): Set<string>;
@@ -0,0 +1,25 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Qwen Team
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { type Highlighter } from 'shiki';
7
+ export declare const SHIKI_CACHE_MAX = 128;
8
+ /** Returns previously-highlighted HTML for this exact code/lang/theme, or null. */
9
+ export declare function getCachedHtml(code: string, lang: string, theme: string): string | null;
10
+ /** Returns the shared highlighter with `lang` loaded (lazily, cached). */
11
+ export declare function getCodeHighlighter(lang: string): Promise<Highlighter>;
12
+ export declare const MAX_HIGHLIGHT_TOTAL_CHARS = 100000;
13
+ export declare const MAX_HIGHLIGHT_LINE_CHARS = 20000;
14
+ export declare function isTooLargeToHighlight(code: string): boolean;
15
+ /**
16
+ * Synchronously highlights code to HTML *iff* the highlighter and language are
17
+ * already warm (e.g. right after a streaming block settles). Returns null
18
+ * otherwise, so the caller can fall back to the async path (or plain text).
19
+ *
20
+ * The size policy (isTooLargeToHighlight) lives at the caller, which already
21
+ * gates before reaching this function — so it is not re-checked here.
22
+ */
23
+ export declare function highlightToHtmlSync(code: string, lang: string, theme: string, persist?: boolean): string | null;
24
+ /** Resets all module-level highlighter state (incl. the HTML cache). Tests only. */
25
+ export declare function __resetForTesting(): void;
@@ -0,0 +1,22 @@
1
+ import type { Element, Root } from 'hast';
2
+ import type { WebShellFootnote } from '../../customization';
3
+ export interface FootnotePreview extends WebShellFootnote {
4
+ linkNode?: Element;
5
+ }
6
+ export interface FootnoteElement extends Element {
7
+ data?: Element['data'] & {
8
+ footnoteCards?: FootnotePreview[];
9
+ hasVisibleFootnotes?: boolean;
10
+ };
11
+ }
12
+ interface FootnoteOptions {
13
+ prefix: string;
14
+ group: boolean;
15
+ safeHref: (url: string) => boolean;
16
+ safeImage: (url: string) => boolean;
17
+ transformUrl: (url: string) => string;
18
+ }
19
+ export declare function rehypeFootnoteCards(options: FootnoteOptions): (tree: Root, file: {
20
+ value: unknown;
21
+ }) => void;
22
+ export {};