@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,568 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Qwen Team
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { ReactNode } from 'react';
7
+ import type { CreateSessionRequest, DaemonCapabilities, DaemonBackgroundTurn, DaemonEvent, DaemonApprovalMode, DaemonApprovalModeResult, DaemonAvailableCommand, DaemonForkSessionResult, DaemonInputAnnotation, DaemonSessionBtwResult, DaemonSessionGenerationEvent, DaemonSessionAttachmentReference, DaemonSessionAttachmentData, DaemonMidTurnMessageResult, DaemonMidTurnMessagesResult, DaemonRemoveMidTurnMessageResult, DaemonPendingPromptsResult, DaemonRemovePendingPromptResult, DaemonSessionContextStatus, DaemonSessionSavedWorkflowDetail, DaemonSessionContextUsageStatus, DaemonSessionRecapResult, DaemonRewindResult, DaemonRewindSnapshotInfo, DaemonSession, DaemonSessionSummary, DaemonSessionSupportedCommandsStatus, DaemonSessionTaskWithWorkflowStatus, DaemonSessionTasksStatus, DaemonSessionWorkflowTaskStatus, DaemonSessionWorkflowTasksStatus, DaemonSessionStatsStatus, DaemonSessionArtifactsEnvelope, SessionSourceInput, SessionSourcesResult, SessionSourceUpsertResult, SessionSourceRemoveResult, DaemonSkillToggleMutation, DaemonShellCommandResult, DaemonTranscriptBlock, DaemonTranscriptStore, DaemonWorkspaceGitStatus, DaemonWorkspaceProvidersStatus, DaemonStandaloneCreationRecovery, DaemonStandaloneWorkingDirectory, HeartbeatResult, GoalControlRequest, GoalSnapshotV2, GoalStateResponse, PermissionResponse, PromptContentBlock, PromptResult, ReasoningSelection, SessionMetadataResult, SetModelResult } from '@qwen-code/sdk/daemon';
8
+ export type DaemonConnectionStatus = 'idle' | 'connecting' | 'connected' | 'disconnected' | 'error';
9
+ export interface DaemonSessionOwnerSnapshot {
10
+ isCurrent(): boolean;
11
+ }
12
+ export interface DaemonSessionOwnerGuard {
13
+ capture(options?: {
14
+ includeRecovery?: boolean;
15
+ }): DaemonSessionOwnerSnapshot;
16
+ }
17
+ export type DaemonProductSessionContext = {
18
+ kind: 'workspace';
19
+ cwd: string;
20
+ } | {
21
+ kind: 'standalone';
22
+ } | {
23
+ kind: 'live';
24
+ };
25
+ export interface DaemonStandaloneConnectionState {
26
+ projectlessOutputDirectory?: string;
27
+ workingDirectory?: DaemonStandaloneWorkingDirectory;
28
+ creationRecovery?: DaemonStandaloneCreationRecovery;
29
+ errorCode?: string;
30
+ }
31
+ export interface DaemonConnectionState {
32
+ status: DaemonConnectionStatus;
33
+ sessionId?: string;
34
+ /**
35
+ * Daemon-confirmed client identity bound to this session (the value sent as
36
+ * `X-Qwen-Client-Id`). Consumers use it to recognize their OWN
37
+ * originator-stamped legacy frames. Stable-id mid-turn queues are shared by
38
+ * the session and do not use this id as an ownership boundary.
39
+ */
40
+ clientId?: string;
41
+ /** Explicit product and restore context for the current or pending session. */
42
+ sessionContext?: DaemonProductSessionContext;
43
+ /** Product workspace cwd. Always absent for standalone and Live contexts. */
44
+ workspaceCwd?: string;
45
+ /** Standalone-only working-directory and outcome recovery state. */
46
+ standaloneSession?: DaemonStandaloneConnectionState;
47
+ /** Current Git branch, short detached-HEAD hash, or undefined outside Git. */
48
+ gitBranch?: string;
49
+ /**
50
+ * Last enriched working-tree summary for the current workspace, pushed by
51
+ * the daemon via `git_status_changed` (only set when the event's
52
+ * workspaceCwd matches this connection's workspace).
53
+ */
54
+ gitStatus?: DaemonWorkspaceGitStatus;
55
+ commands?: DaemonCommandInfo[];
56
+ skills?: string[];
57
+ models?: DaemonModelInfo[];
58
+ currentModel?: string;
59
+ reasoning?: DaemonReasoningControls;
60
+ currentMode?: string;
61
+ planExecutionMode?: string;
62
+ displayName?: string;
63
+ titleSource?: 'manual' | 'auto';
64
+ /** Latest main-conversation model usage event. */
65
+ tokenUsage?: DaemonTokenUsage;
66
+ /** Authoritative Goal v2 state for the current session. */
67
+ goalState?: GoalSnapshotV2;
68
+ backgroundTurn?: DaemonBackgroundTurn;
69
+ /** Stops a lagging live-state snapshot from reviving the finished execution. */
70
+ finishedBackgroundTurnId?: string;
71
+ /** Local monotonic time; orders background events against live-state requests. */
72
+ backgroundTurnObservedAt?: number;
73
+ /** Current context-window occupancy, used with contextWindow for percentages. */
74
+ tokenCount?: number;
75
+ contextWindow?: number;
76
+ providers?: DaemonWorkspaceProvidersStatus;
77
+ supportedCommands?: DaemonSessionSupportedCommandsStatus;
78
+ context?: DaemonSessionContextStatus;
79
+ capabilities?: DaemonCapabilities;
80
+ /** True while the current session transcript is being loaded. */
81
+ loadingTranscript?: boolean;
82
+ /** True while replaying buffered events after a reconnect. */
83
+ catchingUp?: boolean;
84
+ error?: string;
85
+ /** Latest HTTP error status kept for diagnostics; use missingSession for UI. */
86
+ errorStatus?: number;
87
+ /** True only when the server confirmed the current session is missing. */
88
+ missingSession?: boolean;
89
+ }
90
+ export interface DaemonReasoningControls {
91
+ enabled: boolean;
92
+ effort: ReasoningSelection;
93
+ efforts: Array<Exclude<ReasoningSelection, 'none' | 'default'>>;
94
+ /** The model default when the daemon advertises one. */
95
+ defaultEffort?: Exclude<ReasoningSelection, 'none' | 'default'>;
96
+ enableValue?: 'default';
97
+ canEnable?: false;
98
+ /** Defaults to true. False means effort is mutable but thinking is required. */
99
+ canDisable?: boolean;
100
+ }
101
+ export interface DaemonTokenUsage {
102
+ inputTokens?: number;
103
+ outputTokens?: number;
104
+ totalTokens?: number;
105
+ thoughtTokens?: number;
106
+ cachedReadTokens?: number;
107
+ }
108
+ export interface DaemonSessionProviderProps {
109
+ /** Daemon base URL. Optional when nested inside DaemonWorkspaceProvider (inherited). */
110
+ baseUrl?: string;
111
+ /** Bearer token. Optional when nested inside DaemonWorkspaceProvider (inherited). */
112
+ token?: string;
113
+ /** Legacy workspace context. Do not combine with standalone or Live context. */
114
+ workspaceCwd?: string;
115
+ /** Explicit product context. Legacy callers may continue using workspaceCwd. */
116
+ sessionContext?: DaemonProductSessionContext;
117
+ /** Session id to load. Undefined keeps the page empty until a prompt creates one. */
118
+ sessionId?: string;
119
+ /** Stable client identity to reuse for session-scoped daemon requests. */
120
+ clientId?: string;
121
+ /**
122
+ * Creator attribution forwarded on workspace session load/resume. The
123
+ * daemon applies it only when the restored session has no persisted source,
124
+ * so a host (e.g. the VS Code companion) reclaims its pre-attribution
125
+ * sessions on first open without ever overwriting existing attribution.
126
+ */
127
+ sessionSourceType?: string;
128
+ /** Extra create-session options, excluding workspaceCwd which is owned by the provider. */
129
+ createSessionRequest?: Omit<CreateSessionRequest, 'workspaceCwd'>;
130
+ /** Maximum queued SSE events requested from the daemon per subscription. */
131
+ maxQueued?: number;
132
+ /** Maximum normalized transcript blocks retained in memory. */
133
+ maxBlocks?: number;
134
+ /**
135
+ * Maximum estimated bytes of transcript blocks retained in memory.
136
+ * Trimming evicts oldest blocks until the estimate is back under this
137
+ * budget; a block-count window alone is not a memory ceiling because
138
+ * blocks can carry large raw tool payloads. Defaults to the transcript
139
+ * store's built-in budget.
140
+ */
141
+ maxRetainedBytes?: number;
142
+ /** Latest persisted records requested during an existing-session load. */
143
+ historyPageSize?: number;
144
+ /** Keep the full subagent transcript, or retain only bounded root summaries. */
145
+ subagentTranscriptMode?: 'full' | 'summary';
146
+ /** Hide this client's own user prompt echo when the daemon replays events. */
147
+ suppressOwnUserEcho?: boolean;
148
+ /** Attach raw daemon events to normalized transcript blocks for debugging. */
149
+ includeRawEvent?: boolean;
150
+ /**
151
+ * Fetch the branch during initialization and session loading. Defaults to
152
+ * true; disable when the UI owns Git status loading. Changing this option
153
+ * reconnects the session.
154
+ */
155
+ prefetchGitBranch?: boolean;
156
+ /**
157
+ * Preload sessionless Skills. Defaults to true; disable when the UI loads
158
+ * Skills on demand. Changing this option reconnects the session.
159
+ */
160
+ prefetchSkills?: boolean;
161
+ /** Connect to the daemon automatically on mount. */
162
+ autoConnect?: boolean;
163
+ /** Reconnect automatically after recoverable daemon/session failures. */
164
+ autoReconnect?: boolean;
165
+ /**
166
+ * Restart a live SSE event stream after each accepted prompt. A stream that
167
+ * is already down is always rebuilt immediately on prompt admission,
168
+ * regardless of this flag.
169
+ */
170
+ restartEventStreamOnPrompt?: boolean;
171
+ /** Initial reconnect delay in milliseconds. */
172
+ reconnectDelayMs?: number;
173
+ /** Maximum reconnect delay in milliseconds after backoff. */
174
+ maxReconnectDelayMs?: number;
175
+ /** Interval in milliseconds for client heartbeat checks. */
176
+ heartbeatIntervalMs?: number;
177
+ /** Consecutive heartbeat failures before marking the session disconnected. */
178
+ heartbeatFailureThreshold?: number;
179
+ /** Optional user-facing fallback warnings for partial session load failures. */
180
+ loadWarnings?: {
181
+ /** Warning shown when model/provider status cannot be loaded. */
182
+ models?: string;
183
+ /** Warning shown when supported command metadata cannot be loaded. */
184
+ commands?: string;
185
+ /** Warning shown when session context metadata cannot be loaded. */
186
+ context?: string;
187
+ };
188
+ /** React children rendered inside the daemon session contexts. */
189
+ children: ReactNode;
190
+ }
191
+ export type DaemonPromptStatus = 'idle' | 'waiting' | 'streaming';
192
+ export type DaemonNoticeSeverity = 'info' | 'warning' | 'error';
193
+ export type DaemonNoticeCategory = 'validation' | 'user_action' | 'connection' | 'protocol' | 'lifecycle' | 'system';
194
+ export type DaemonNoticeOperation = 'send_prompt' | 'continue_session' | 'send_shell_command' | 'switch_model' | 'set_reasoning_effort' | 'set_approval_mode' | 'submit_permission' | 'cancel_prompt' | 'attach_session' | 'load_session' | 'resume_session' | 'create_session' | 'close_session' | 'rename_session' | 'release_session' | 'list_sessions' | 'load_context' | 'load_context_usage' | 'load_tasks' | 'load_artifacts' | 'read_attachment' | 'remove_attachment' | 'cancel_task' | 'control_workflow' | 'run_saved_workflow' | 'read_saved_workflow' | 'load_goal' | 'control_goal' | 'clear_goal' | 'load_stats' | 'rewind_snapshots' | 'rewind_session' | 'refresh_commands' | 'recap_session' | 'generate_session_content' | 'btw_session' | 'branch_session' | 'fork_session' | 'record_session' | 'stream' | 'normalize_event';
195
+ export interface DaemonSessionNotice {
196
+ id: string;
197
+ severity: DaemonNoticeSeverity;
198
+ category: DaemonNoticeCategory;
199
+ operation?: DaemonNoticeOperation;
200
+ code: string;
201
+ message: string;
202
+ debugMessage?: string;
203
+ recoverable?: boolean;
204
+ sourceRetry?: () => Promise<void>;
205
+ createdAt: number;
206
+ }
207
+ type AddDaemonSessionNoticeInput = Omit<DaemonSessionNotice, 'id' | 'createdAt'> & {
208
+ id?: string;
209
+ createdAt?: number;
210
+ };
211
+ export type AddDaemonSessionNotice = (notice: AddDaemonSessionNoticeInput) => DaemonSessionNotice;
212
+ export interface DaemonModelInfo {
213
+ id: string;
214
+ baseModelId?: string;
215
+ label: string;
216
+ authType?: string;
217
+ contextWindow?: number;
218
+ modalities?: {
219
+ image?: boolean;
220
+ pdf?: boolean;
221
+ audio?: boolean;
222
+ video?: boolean;
223
+ };
224
+ baseUrl?: string;
225
+ envKey?: string;
226
+ isRuntime?: boolean;
227
+ reasoningPreview?: DaemonReasoningControls;
228
+ }
229
+ export interface DaemonCommandInfo {
230
+ name: string;
231
+ description: string;
232
+ argumentHint?: string;
233
+ autoSubmit?: boolean;
234
+ source?: string;
235
+ altNames?: string[];
236
+ raw: DaemonAvailableCommand;
237
+ }
238
+ export interface SendPromptOptions {
239
+ /** Original text declared at the user submission boundary, before host preparation. */
240
+ submittedPrompt?: string;
241
+ optimisticUserMessage?: boolean;
242
+ images?: DaemonPromptImage[];
243
+ files?: DaemonPromptFile[];
244
+ inputAnnotations?: DaemonInputAnnotation[];
245
+ /**
246
+ * When true, the daemon strips orphaned user entries from the chat
247
+ * history before re-sending, and skips recording a duplicate user
248
+ * message in the JSONL transcript. Used by Ctrl+Y retry.
249
+ */
250
+ retry?: boolean;
251
+ /** Fired after local validation, immediately before dispatch to the daemon. */
252
+ onAdmissionStarted?: () => void;
253
+ /**
254
+ * Fired once the daemon has ACCEPTED the prompt (admission), before the turn
255
+ * runs to completion. Lets a caller act on "the prompt reached the session"
256
+ * without waiting for the whole turn — e.g. the scheduled-tasks "run now",
257
+ * which records the run at admission so a long/stalled turn or a closed tab
258
+ * can't lose the record.
259
+ */
260
+ onAdmitted?: () => void;
261
+ }
262
+ export interface SubmitPromptOptions extends SendPromptOptions {
263
+ sessionId?: string;
264
+ signal?: AbortSignal;
265
+ }
266
+ export interface PendingPromptActionOptions {
267
+ sessionId?: string;
268
+ }
269
+ export interface GetTasksActionOptions {
270
+ silent?: boolean;
271
+ }
272
+ export interface DaemonPromptImage {
273
+ data: string;
274
+ mimeType?: string;
275
+ mediaType?: string;
276
+ media_type?: string;
277
+ }
278
+ export interface DaemonPromptFile {
279
+ name: string;
280
+ data?: Blob;
281
+ text?: string;
282
+ mimeType?: string;
283
+ mediaType?: string;
284
+ media_type?: string;
285
+ }
286
+ export type DaemonTodoStatus = 'pending' | 'in_progress' | 'completed';
287
+ export type DaemonTodoPriority = 'low' | 'medium' | 'high';
288
+ export interface DaemonTodoItem {
289
+ id: string;
290
+ content: string;
291
+ status: DaemonTodoStatus;
292
+ priority?: DaemonTodoPriority;
293
+ blockedBy?: string[];
294
+ }
295
+ export interface DaemonTodoList {
296
+ blockId: string;
297
+ toolCallId: string;
298
+ title: string;
299
+ status: string;
300
+ planId?: string;
301
+ sourceCallId?: string;
302
+ items: DaemonTodoItem[];
303
+ raw: Extract<DaemonTranscriptBlock, {
304
+ kind: 'tool';
305
+ }>;
306
+ }
307
+ export interface SubmitPromptResult {
308
+ promptId: string;
309
+ removedAfterAbort?: true;
310
+ }
311
+ export interface DaemonActivePromptState {
312
+ active: boolean | undefined;
313
+ workspaceCwd: string | undefined;
314
+ sessionId: string | undefined;
315
+ }
316
+ export interface DaemonSessionActions {
317
+ /**
318
+ * Publish the daemon's authoritative "this session has a prompt in flight"
319
+ * state for the identified session, or `undefined` when it cannot be known
320
+ * (a daemon without `workspace_session_live_state`, or a workspace nothing
321
+ * polls live state for).
322
+ *
323
+ * The event stream alone cannot tell a long silent tool call apart from a
324
+ * finished turn, so without this the pane settles a still-running turn to
325
+ * `idle` after a few seconds of silence and the loading indicator drops
326
+ * mid-turn (#9487). While this reports `true`, silence-based settling is
327
+ * suppressed. A fresh `false` settles a restored prompt, and losing a known
328
+ * `true` settles an observed turn when its terminal event never arrives.
329
+ */
330
+ setDaemonActivePrompt(active: boolean | undefined, owner?: Pick<DaemonActivePromptState, 'workspaceCwd' | 'sessionId'>, backgroundTurn?: DaemonBackgroundTurn, requestStartedAt?: number): void;
331
+ sendPrompt(text: string, options?: SendPromptOptions): Promise<PromptResult>;
332
+ continueSession(): Promise<void>;
333
+ /**
334
+ * Non-blocking prompt submission. POSTs to the daemon and returns
335
+ * immediately with the `promptId`. The daemon queues the prompt in its
336
+ * FIFO if a turn is already running. Use this during streaming to
337
+ * enqueue prompts without waiting for the current turn to complete.
338
+ */
339
+ submitPrompt(text: string, options?: SubmitPromptOptions): Promise<SubmitPromptResult>;
340
+ cancel(): Promise<void>;
341
+ setModel(modelId: string): Promise<SetModelResult>;
342
+ setReasoningEffort(value: ReasoningSelection, opts?: {
343
+ persist?: boolean;
344
+ }): Promise<void>;
345
+ setApprovalMode(mode: DaemonApprovalMode, opts?: {
346
+ persist?: boolean;
347
+ planMode?: boolean;
348
+ }): Promise<DaemonApprovalModeResult>;
349
+ respondToPermission(requestId: string, response: PermissionResponse): Promise<boolean>;
350
+ respondToGlobalPermission(requestId: string, response: PermissionResponse): Promise<boolean>;
351
+ submitPermission(requestId: string, optionId?: string, answers?: Record<string, string>): Promise<boolean>;
352
+ heartbeat(): Promise<HeartbeatResult | undefined>;
353
+ listSessions(options?: {
354
+ pageSize?: number;
355
+ }): Promise<DaemonSessionSummary[]>;
356
+ loadSession(sessionId: string, options?: {
357
+ workspaceCwd?: string;
358
+ sessionContext?: DaemonProductSessionContext;
359
+ }): Promise<void>;
360
+ /** `memory` replay is reserved for the provider's live-journal repair. */
361
+ reloadSession(signal: AbortSignal, options?: {
362
+ replaySource?: 'configured' | 'memory';
363
+ }): Promise<void>;
364
+ resumeSession(sessionId: string, options?: {
365
+ workspaceCwd?: string;
366
+ sessionContext?: DaemonProductSessionContext;
367
+ }): Promise<void>;
368
+ /**
369
+ * Create a daemon session and update local session state. Callers that need
370
+ * transcript/event streaming must follow with `attachSession()`.
371
+ *
372
+ * `options.sessionContext` selects the exact product context. The legacy
373
+ * `options.workspaceCwd` form targets a registered workspace runtime only.
374
+ * Omit both to keep the provider's active context / legacy primary fallback.
375
+ * Standalone creation is not automatically retried; Live creation is not
376
+ * supported.
377
+ *
378
+ * `options.approvalMode` seeds the session's approval mode in the create
379
+ * request itself, so the daemon applies it atomically at spawn instead of
380
+ * requiring a follow-up `setApprovalMode` call.
381
+ * `options.modelServiceId` is a standalone-only atomic create override.
382
+ *
383
+ * `options.sourceType` records immutable creator attribution.
384
+ */
385
+ createSession(options?: {
386
+ workspaceCwd?: string;
387
+ sessionContext?: DaemonProductSessionContext;
388
+ modelServiceId?: string;
389
+ approvalMode?: DaemonApprovalMode;
390
+ sourceType?: string;
391
+ worktree?: {
392
+ slug?: string;
393
+ };
394
+ branch?: {
395
+ name: string;
396
+ };
397
+ }): Promise<DaemonSession>;
398
+ attachSession(): Promise<void>;
399
+ clearSession(): Promise<void>;
400
+ newSession(): Promise<void>;
401
+ releaseSession(sessionId: string): Promise<void>;
402
+ closeSession(): Promise<void>;
403
+ refreshCommands(): Promise<void>;
404
+ getContext(): Promise<DaemonSessionContextStatus>;
405
+ getContextUsage(opts?: {
406
+ detail?: boolean;
407
+ /** Reconcile composer counters after compression, without changing billing usage. */
408
+ syncCounters?: boolean;
409
+ /** Rethrow transient failures raw instead of recording a notice; for
410
+ * surfaces that re-collect automatically and report failures inline. */
411
+ silent?: boolean;
412
+ }): Promise<DaemonSessionContextUsageStatus>;
413
+ renameSession(displayName: string): Promise<SessionMetadataResult>;
414
+ recapSession(): Promise<DaemonSessionRecapResult>;
415
+ generateSessionContent(prompt: string, opts?: {
416
+ signal?: AbortSignal;
417
+ }): AsyncGenerator<DaemonSessionGenerationEvent>;
418
+ getRewindSnapshots(): Promise<{
419
+ snapshots: DaemonRewindSnapshotInfo[];
420
+ }>;
421
+ rewindSession(promptId: string, opts?: {
422
+ rewindFiles?: boolean;
423
+ }): Promise<DaemonRewindResult>;
424
+ btwSession(question: string, opts?: {
425
+ signal?: AbortSignal;
426
+ }): Promise<DaemonSessionBtwResult>;
427
+ uploadAttachment(attachment: DaemonPromptImage | DaemonPromptFile, opts?: {
428
+ signal?: AbortSignal;
429
+ sessionId?: string;
430
+ }): Promise<DaemonSessionAttachmentReference>;
431
+ readAttachment(attachmentId: string): Promise<DaemonSessionAttachmentData>;
432
+ /** List every attachment currently stored for the session, upload order. */
433
+ listAttachments(): Promise<DaemonSessionAttachmentReference[]>;
434
+ removeAttachment(attachmentId: string, opts?: {
435
+ sessionId?: string;
436
+ }): Promise<boolean>;
437
+ /**
438
+ * Queue a message typed while a turn is running. Calls without an id support
439
+ * old daemons and are best-effort; calls with a stable `messageId` may reject
440
+ * on an ambiguous transport failure so the caller can reconcile. `content`
441
+ * carries attachment blocks — pre-flight the daemon's
442
+ * `session_attachments` capability before attaching references.
443
+ */
444
+ enqueueMidTurnMessage(message: string, opts?: {
445
+ signal?: AbortSignal;
446
+ messageId?: string;
447
+ content?: PromptContentBlock[];
448
+ onAdmissionStarted?: () => void;
449
+ }): Promise<DaemonMidTurnMessageResult>;
450
+ removeMidTurnMessage(messageId: string, opts?: PendingPromptActionOptions): Promise<DaemonRemoveMidTurnMessageResult>;
451
+ /**
452
+ * Best-effort reconciliation snapshot (queue + delivery-state rings) from the
453
+ * daemon. Resolves `undefined` (never throws/raises a notice) when there
454
+ * is no session or the query fails — callers preserve current state.
455
+ * Pre-flight the
456
+ * `session_mid_turn_message_query` capability before relying on it: older
457
+ * daemons lack the route.
458
+ */
459
+ getMidTurnMessages(opts?: {
460
+ signal?: AbortSignal;
461
+ }): Promise<DaemonMidTurnMessagesResult | undefined>;
462
+ getPendingPrompts(opts?: PendingPromptActionOptions): Promise<DaemonPendingPromptsResult>;
463
+ removePendingPrompt(promptId: string, opts?: PendingPromptActionOptions): Promise<DaemonRemovePendingPromptResult>;
464
+ sendShellCommand(command: string): Promise<DaemonShellCommandResult>;
465
+ getTasks(opts?: GetTasksActionOptions): Promise<DaemonSessionTasksStatus>;
466
+ getWorkflowTasks(opts?: GetTasksActionOptions): Promise<DaemonSessionWorkflowTasksStatus>;
467
+ cancelTask(taskId: string, kind: DaemonSessionTaskWithWorkflowStatus['kind']): Promise<{
468
+ cancelled: boolean;
469
+ }>;
470
+ controlWorkflowTask(taskId: string, action: 'pause' | 'resume' | 'retry' | 'rerun' | 'delete-history'): Promise<{
471
+ changed: boolean;
472
+ status?: DaemonSessionWorkflowTaskStatus['status'];
473
+ taskId?: string;
474
+ }>;
475
+ runSavedWorkflow(name: string): Promise<{
476
+ started: boolean;
477
+ status?: DaemonSessionWorkflowTaskStatus['status'];
478
+ taskId?: string;
479
+ }>;
480
+ /**
481
+ * Read one saved workflow definition (script + parsed meta). Resolves to
482
+ * null when the name is unknown or Workflow controls are unavailable.
483
+ */
484
+ readSavedWorkflow(name: string): Promise<DaemonSessionSavedWorkflowDetail | null>;
485
+ getGoal(): Promise<GoalStateResponse>;
486
+ controlGoal(request: GoalControlRequest): Promise<GoalStateResponse>;
487
+ /**
488
+ * Install a Goal snapshot obtained outside the session action layer — a
489
+ * workspace-scoped control against the session this connection is attached
490
+ * to — reconciled like any other snapshot. A no-op once the connection has
491
+ * moved to another session.
492
+ */
493
+ applyGoalSnapshot(sessionId: string, snapshot: GoalSnapshotV2): void;
494
+ clearGoal(): Promise<{
495
+ cleared: boolean;
496
+ condition?: string;
497
+ }>;
498
+ getStats(): Promise<DaemonSessionStatsStatus>;
499
+ loadArtifacts(): Promise<DaemonSessionArtifactsEnvelope>;
500
+ listSources(): Promise<SessionSourcesResult>;
501
+ upsertSource(source: SessionSourceInput): Promise<SessionSourceUpsertResult>;
502
+ removeSource(sourceId: string): Promise<SessionSourceRemoveResult>;
503
+ branchSession(name?: string, atRecordId?: string): Promise<{
504
+ sessionId: string;
505
+ displayName: string;
506
+ switchStarted: boolean;
507
+ sourceWarnings?: string[];
508
+ }>;
509
+ forkSession(directive: string): Promise<DaemonForkSessionResult>;
510
+ }
511
+ export interface DaemonSessionContextValue {
512
+ store: DaemonTranscriptStore;
513
+ connection: DaemonConnectionState;
514
+ promptStatus: DaemonPromptStatus;
515
+ actions: DaemonSessionActions;
516
+ }
517
+ export interface DaemonWorkspaceEventSignals {
518
+ memoryVersion: number;
519
+ agentsVersion: number;
520
+ toolsVersion: number;
521
+ settingsVersion: number;
522
+ skillsVersion: number;
523
+ lastSkillMutation?: DaemonSkillToggleMutation;
524
+ skillMutationsByCwd?: Record<string, DaemonSkillToggleMutation[]>;
525
+ mcpVersion: number;
526
+ extensionsVersion: number;
527
+ artifactsVersion: number;
528
+ sourcesVersion?: number;
529
+ lastExtensionChange?: {
530
+ status?: 'installed' | 'enabled' | 'disabled' | 'updated' | 'uninstalled' | 'failed';
531
+ source?: string;
532
+ name?: string;
533
+ version?: string;
534
+ error?: string;
535
+ refreshed: number;
536
+ failed: number;
537
+ };
538
+ initVersion: number;
539
+ authVersion: number;
540
+ }
541
+ export interface ActivePrompt {
542
+ controller: AbortController;
543
+ promptId?: string;
544
+ replayedTurnEvents?: Map<string, DaemonEvent>;
545
+ resolve?: (result: PromptResult) => void;
546
+ reject?: (error: unknown) => void;
547
+ }
548
+ export type SettledPrompt = {
549
+ status: 'resolved';
550
+ result: PromptResult;
551
+ } | {
552
+ status: 'rejected';
553
+ error: unknown;
554
+ };
555
+ export interface PendingSessionLoad {
556
+ id: number;
557
+ sessionId: string;
558
+ mode: 'load' | 'resume' | 'attach';
559
+ sessionContext?: DaemonProductSessionContext;
560
+ timeout?: ReturnType<typeof setTimeout>;
561
+ /** SDK timeout for load/resume; `0` disables its timer. */
562
+ requestTimeoutMs?: number;
563
+ resolve: () => void;
564
+ reject: (error: unknown) => void;
565
+ signal?: AbortSignal;
566
+ replaySource?: 'configured' | 'memory';
567
+ }
568
+ export {};
@@ -0,0 +1,14 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Qwen Team
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { DaemonTranscriptStore } from '@qwen-code/sdk/daemon';
7
+ export interface TimerRef {
8
+ current: ReturnType<typeof setTimeout> | undefined;
9
+ }
10
+ export declare function getReconnectDelayMs(attempt: number, reconnectDelayMs: number, maxReconnectDelayMs: number): number;
11
+ export declare function withActionTimeout<T>(promise: Promise<T>, message: string, timeoutMs?: number): Promise<T>;
12
+ export declare function delay(delayMs: number, signal: AbortSignal): Promise<void>;
13
+ export declare function clearPassiveAssistantDoneTimer(timerRef: TimerRef): void;
14
+ export declare function schedulePassiveAssistantDone(store: DaemonTranscriptStore, timerRef: TimerRef, reason?: string, delayMs?: number, onDone?: () => void): void;
@@ -0,0 +1,77 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Qwen Team
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ export interface FollowupState {
7
+ suggestion: string | null;
8
+ isVisible: boolean;
9
+ shownAt: number;
10
+ }
11
+ export interface UseDaemonFollowupSuggestionOptions {
12
+ enabled?: boolean;
13
+ onAccept?: (suggestion: string) => void;
14
+ onOutcome?: (params: {
15
+ outcome: 'accepted' | 'ignored';
16
+ accept_method?: 'tab' | 'enter' | 'right';
17
+ time_ms: number;
18
+ suggestion_length: number;
19
+ }) => void;
20
+ }
21
+ export interface UseDaemonFollowupSuggestionReturn {
22
+ /**
23
+ * Current follow-up suggestion display state — pass directly to
24
+ * `<ChatEditor followupState={...} />`. Reflects the controller's
25
+ * post-debounce visible state, not the raw daemon push.
26
+ */
27
+ followupState: FollowupState;
28
+ /**
29
+ * Accept the visible suggestion. Wire to
30
+ * `<ChatEditor onAcceptFollowup={...} />`.
31
+ * Calls the underlying controller's accept (which invokes the
32
+ * consumer-provided `onAccept` from options) AND clears the daemon
33
+ * store's `lastFollowupSuggestion` so the same suggestion does not
34
+ * re-push into the controller on the next render.
35
+ */
36
+ onAcceptFollowup: (method?: 'tab' | 'enter' | 'right', options?: {
37
+ skipOnAccept?: boolean;
38
+ }) => void;
39
+ /**
40
+ * Dismiss the visible suggestion. Wire to
41
+ * `<ChatEditor onDismissFollowup={...} />`.
42
+ * Same store-clear semantics as `onAcceptFollowup`.
43
+ */
44
+ onDismissFollowup: () => void;
45
+ /**
46
+ * Explicit invalidation hook. Adapters call this just before invoking
47
+ * `actions.sendPrompt(...)` so the prior turn's ghost-text disappears
48
+ * synchronously — no wire round-trip needed (the daemon does not
49
+ * emit a "suggestion cleared" event on prompt boundaries; clients
50
+ * self-invalidate).
51
+ */
52
+ clear: () => void;
53
+ }
54
+ /**
55
+ * Wire the daemon's server-pushed `followup_suggestion` event into the
56
+ * Web Shell's composer. Consumers:
57
+ *
58
+ * 1. Render `<ChatEditor followupState={...} onAcceptFollowup={...}
59
+ * onDismissFollowup={...} />` with the three values returned here.
60
+ * `ChatEditor` declares exactly these three props, typed from this
61
+ * interface; `ChatPane` and `App` are the two in-tree hosts that call
62
+ * this hook and thread them down.
63
+ * 2. Call `clear()` from the hook just before `actions.sendPrompt(...)`
64
+ * so the prior turn's ghost-text disappears immediately.
65
+ *
66
+ * The hook subscribes to daemon follow-up sidechannels and drives a
67
+ * daemon-local accept/dismiss controller. The controller is the source
68
+ * of truth for what the input renders; the store/sidechannel is the
69
+ * source of truth for what the daemon last sent for this session.
70
+ *
71
+ * Wiring `onAccept` and `onOutcome` propagates straight to the
72
+ * daemon-local controller.
73
+ *
74
+ * Must be called within a `<DaemonSessionProvider>` — throws via
75
+ * `useDaemonTranscriptStore` otherwise.
76
+ */
77
+ export declare function useDaemonFollowupSuggestion(opts?: UseDaemonFollowupSuggestionOptions): UseDaemonFollowupSuggestionReturn;