@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.
- package/README.md +651 -0
- package/dist/daemon-react-sdk.js +53 -0
- package/dist/index.js +109094 -0
- package/dist/sw.js +9 -0
- package/dist/toolNames-DgCpmhML.js +17992 -0
- package/dist/transcript.js +31609 -0
- package/dist/types/App.d.ts +419 -0
- package/dist/types/WebShellContexts.d.ts +31 -0
- package/dist/types/adapters/localizedMessages.d.ts +24 -0
- package/dist/types/adapters/messageTypes.d.ts +194 -0
- package/dist/types/adapters/parallelAgentGrouping.d.ts +18 -0
- package/dist/types/adapters/promptTypes.d.ts +12 -0
- package/dist/types/adapters/toolClassification.d.ts +10 -0
- package/dist/types/adapters/transcriptAdapter.d.ts +3 -0
- package/dist/types/adapters/transcriptToMessages.d.ts +41 -0
- package/dist/types/adapters/types.d.ts +123 -0
- package/dist/types/brandContext.d.ts +44 -0
- package/dist/types/browser-turn-notifications.d.ts +36 -0
- package/dist/types/completions/slashCompletion.d.ts +35 -0
- package/dist/types/components/AtMentionPanel.d.ts +13 -0
- package/dist/types/components/BranchPickerPopover.d.ts +73 -0
- package/dist/types/components/ChatContextHeader.d.ts +18 -0
- package/dist/types/components/ChatEditor.d.ts +134 -0
- package/dist/types/components/ChatPane.d.ts +93 -0
- package/dist/types/components/ContextCompressionFeedback.d.ts +5 -0
- package/dist/types/components/ContextUsagePopover.d.ts +10 -0
- package/dist/types/components/ErrorBoundary.d.ts +40 -0
- package/dist/types/components/FileAttachmentContent.d.ts +4 -0
- package/dist/types/components/FileTypeIcon.d.ts +6 -0
- package/dist/types/components/GitBranchIndicator.d.ts +66 -0
- package/dist/types/components/GitModePopover.d.ts +23 -0
- package/dist/types/components/GlobalTurnNavigation.d.ts +16 -0
- package/dist/types/components/GoalStatusStrip.d.ts +13 -0
- package/dist/types/components/InsightProgress.d.ts +12 -0
- package/dist/types/components/InsightReady.d.ts +6 -0
- package/dist/types/components/LocalControlQrButton.d.ts +12 -0
- package/dist/types/components/LocalFilesControl.d.ts +74 -0
- package/dist/types/components/MessageItem.d.ts +43 -0
- package/dist/types/components/MessageList.d.ts +222 -0
- package/dist/types/components/MessageTimestamp.d.ts +32 -0
- package/dist/types/components/ModeIcon.d.ts +3 -0
- package/dist/types/components/MonitorIcon.d.ts +2 -0
- package/dist/types/components/PaneHeaderActions.d.ts +23 -0
- package/dist/types/components/PromptChevron.d.ts +7 -0
- package/dist/types/components/QueuedPromptDisplay.d.ts +57 -0
- package/dist/types/components/RootErrorFallback.d.ts +21 -0
- package/dist/types/components/SessionOverviewPanel.d.ts +46 -0
- package/dist/types/components/SessionPrBadge.d.ts +24 -0
- package/dist/types/components/SessionPrStateIcon.d.ts +32 -0
- package/dist/types/components/SessionRecoveryBanner.d.ts +3 -0
- package/dist/types/components/ShadowDomBoundary.d.ts +11 -0
- package/dist/types/components/SplitView.d.ts +69 -0
- package/dist/types/components/StandaloneAuth.d.ts +17 -0
- package/dist/types/components/StatusBar.d.ts +26 -0
- package/dist/types/components/StreamingStatus.d.ts +20 -0
- package/dist/types/components/Tips.d.ts +1 -0
- package/dist/types/components/ToastHost.d.ts +25 -0
- package/dist/types/components/TranscriptViewport.d.ts +17 -0
- package/dist/types/components/WebShellTranscript.d.ts +38 -0
- package/dist/types/components/WelcomeHeader.d.ts +8 -0
- package/dist/types/components/WorkspaceIndicator.d.ts +27 -0
- package/dist/types/components/WorkspaceSelector.d.ts +29 -0
- package/dist/types/components/WorkspaceSessionProvider.d.ts +19 -0
- package/dist/types/components/WorkspaceUnavailableState.d.ts +11 -0
- package/dist/types/components/agents/AgentCreatePage.d.ts +9 -0
- package/dist/types/components/agents/AgentsManagerPage.d.ts +8 -0
- package/dist/types/components/agents/agent-tool-options.d.ts +9 -0
- package/dist/types/components/agents/agents-manager-logic.d.ts +8 -0
- package/dist/types/components/artifacts/AgentWorkflow.d.ts +7 -0
- package/dist/types/components/artifacts/ArtifactIcon.d.ts +9 -0
- package/dist/types/components/artifacts/ArtifactPanel.d.ts +229 -0
- package/dist/types/components/artifacts/CodeReviewArtifactDetail.d.ts +63 -0
- package/dist/types/components/artifacts/ContextUsagePanel.d.ts +7 -0
- package/dist/types/components/artifacts/LineStats.d.ts +12 -0
- package/dist/types/components/artifacts/SideTaskPanel.d.ts +24 -0
- package/dist/types/components/artifacts/SubagentDetail.d.ts +14 -0
- package/dist/types/components/artifacts/TokenUsagePanel.d.ts +7 -0
- package/dist/types/components/artifacts/TurnOutputs.d.ts +121 -0
- package/dist/types/components/artifacts/artifactUtils.d.ts +37 -0
- package/dist/types/components/artifacts/turnOutputSelectors.d.ts +7 -0
- package/dist/types/components/artifacts/useArtifactWorkspaceTarget.d.ts +16 -0
- package/dist/types/components/channels/ChannelEditorDialog.d.ts +25 -0
- package/dist/types/components/channels/ChannelPairingRequests.d.ts +15 -0
- package/dist/types/components/channels/ChannelsManagerPage.d.ts +12 -0
- package/dist/types/components/channels/channel-editor-state.d.ts +25 -0
- package/dist/types/components/channels/channel-platform.d.ts +9 -0
- package/dist/types/components/composer/AddMenu.d.ts +20 -0
- package/dist/types/components/composer/prependSkillInvocation.d.ts +12 -0
- package/dist/types/components/dialogs/AddWorkspaceDialog.d.ts +24 -0
- package/dist/types/components/dialogs/ApprovalModeDialog.d.ts +7 -0
- package/dist/types/components/dialogs/DaemonStatusDialog.d.ts +3 -0
- package/dist/types/components/dialogs/DeleteSessionDialog.d.ts +8 -0
- package/dist/types/components/dialogs/DialogShell.d.ts +15 -0
- package/dist/types/components/dialogs/GitDialog.d.ts +14 -0
- package/dist/types/components/dialogs/GitDiffDialog.d.ts +14 -0
- package/dist/types/components/dialogs/GitHubPrsDialog.d.ts +9 -0
- package/dist/types/components/dialogs/GitLogDialog.d.ts +14 -0
- package/dist/types/components/dialogs/GoalEditDialog.d.ts +9 -0
- package/dist/types/components/dialogs/GoalsDialog.d.ts +16 -0
- package/dist/types/components/dialogs/HelpDialog.d.ts +6 -0
- package/dist/types/components/dialogs/ModelDialog.d.ts +28 -0
- package/dist/types/components/dialogs/ModelFallbacksDialog.d.ts +14 -0
- package/dist/types/components/dialogs/ReleaseSessionDialog.d.ts +8 -0
- package/dist/types/components/dialogs/ResumeDialog.d.ts +7 -0
- package/dist/types/components/dialogs/RewindDialog.d.ts +12 -0
- package/dist/types/components/dialogs/ScheduledTasksDialog.d.ts +30 -0
- package/dist/types/components/dialogs/SessionRow.d.ts +46 -0
- package/dist/types/components/dialogs/SvgLineChart.d.ts +35 -0
- package/dist/types/components/dialogs/ThemeDialog.d.ts +8 -0
- package/dist/types/components/dialogs/TokenHeatmap.d.ts +18 -0
- package/dist/types/components/dialogs/ToolsDialog.d.ts +1 -0
- package/dist/types/components/dialogs/UsageDashboardTab.d.ts +13 -0
- package/dist/types/components/dialogs/dialogStyles.d.ts +2 -0
- package/dist/types/components/dialogs/scheduledTasksSchedule.d.ts +62 -0
- package/dist/types/components/extensions/ExtensionsManagerPage.d.ts +9 -0
- package/dist/types/components/extensions/extensions-manager-logic.d.ts +3 -0
- package/dist/types/components/local-control-api.d.ts +30 -0
- package/dist/types/components/mcp/McpManagerPage.d.ts +12 -0
- package/dist/types/components/messages/AskUserQuestion.d.ts +18 -0
- package/dist/types/components/messages/AssistantMessage.d.ts +40 -0
- package/dist/types/components/messages/AuthMessage.d.ts +6 -0
- package/dist/types/components/messages/BtwMessage.d.ts +7 -0
- package/dist/types/components/messages/ContextUsageMessage.d.ts +9 -0
- package/dist/types/components/messages/EnhancedMarkdownTable.d.ts +31 -0
- package/dist/types/components/messages/FootnoteCard.d.ts +11 -0
- package/dist/types/components/messages/FootnotePreviewContent.d.ts +9 -0
- package/dist/types/components/messages/GoalApprovalContent.d.ts +5 -0
- package/dist/types/components/messages/GoalStatusMessage.d.ts +15 -0
- package/dist/types/components/messages/LinkifiedText.d.ts +8 -0
- package/dist/types/components/messages/LocalControlSettingsCard.d.ts +1 -0
- package/dist/types/components/messages/Markdown.d.ts +38 -0
- package/dist/types/components/messages/MarkdownChartRenderer.d.ts +65 -0
- package/dist/types/components/messages/McpApp.d.ts +21 -0
- package/dist/types/components/messages/McpStatusMessage.d.ts +22 -0
- package/dist/types/components/messages/MemoryMessage.d.ts +9 -0
- package/dist/types/components/messages/ModelManagementSection.d.ts +23 -0
- package/dist/types/components/messages/PlanExecutionView.d.ts +91 -0
- package/dist/types/components/messages/PlanMessage.d.ts +8 -0
- package/dist/types/components/messages/QuestionAnswerMessage.d.ts +7 -0
- package/dist/types/components/messages/SettingsMessage.d.ts +46 -0
- package/dist/types/components/messages/StatsMessage.d.ts +14 -0
- package/dist/types/components/messages/StatusMessage.d.ts +18 -0
- package/dist/types/components/messages/SystemMessage.d.ts +29 -0
- package/dist/types/components/messages/TasksStatusMessage.d.ts +38 -0
- package/dist/types/components/messages/TodoView.d.ts +17 -0
- package/dist/types/components/messages/ToolApproval.d.ts +28 -0
- package/dist/types/components/messages/ToolFilePreviewButton.d.ts +7 -0
- package/dist/types/components/messages/ToolGroup.d.ts +50 -0
- package/dist/types/components/messages/UserMessage.d.ts +46 -0
- package/dist/types/components/messages/UserShellMessage.d.ts +6 -0
- package/dist/types/components/messages/WorkflowExecutionView.d.ts +48 -0
- package/dist/types/components/messages/agentForest.d.ts +96 -0
- package/dist/types/components/messages/codeHighlighter.d.ts +25 -0
- package/dist/types/components/messages/rehype-footnote-cards.d.ts +22 -0
- package/dist/types/components/messages/toolFormatting.d.ts +63 -0
- package/dist/types/components/messages/tools/DiffView.d.ts +5 -0
- package/dist/types/components/messages/tools/ParallelAgentsGroup.d.ts +12 -0
- package/dist/types/components/messages/tools/SubAgentPanel.d.ts +10 -0
- package/dist/types/components/messages/tools/toolDisplay.d.ts +7 -0
- package/dist/types/components/panels/EnvironmentPanel.d.ts +45 -0
- package/dist/types/components/panels/SourcesSection.d.ts +25 -0
- package/dist/types/components/panels/TodoPanel.d.ts +11 -0
- package/dist/types/components/plugins/PluginManagerPage.d.ts +8 -0
- package/dist/types/components/plugins/manager-page.d.ts +4 -0
- package/dist/types/components/preview/SavedWebPreview.d.ts +5 -0
- package/dist/types/components/preview/WebPreviewPanel.d.ts +5 -0
- package/dist/types/components/preview/web-preview.d.ts +7 -0
- package/dist/types/components/sidebar/SessionDetailsTooltip.d.ts +17 -0
- package/dist/types/components/sidebar/SessionGroupSection.d.ts +19 -0
- package/dist/types/components/sidebar/StandaloneRecents.d.ts +33 -0
- package/dist/types/components/sidebar/WebShellSidebar.d.ts +139 -0
- package/dist/types/components/sidebar/WorkspaceDetailsTooltip.d.ts +49 -0
- package/dist/types/components/sidebar/WorkspaceMenu.d.ts +41 -0
- package/dist/types/components/sidebar/WorkspaceRenameDialog.d.ts +18 -0
- package/dist/types/components/sidebar/WorkspaceSection.d.ts +112 -0
- package/dist/types/components/sidebar/channelSessionGroups.d.ts +7 -0
- package/dist/types/components/sidebar/collapsedSessionSections.d.ts +25 -0
- package/dist/types/components/sidebar/scheduled-task-session-groups.d.ts +12 -0
- package/dist/types/components/sidebar/sessionDetailsCollisionBoundary.d.ts +1 -0
- package/dist/types/components/sidebar/sessionSearch.d.ts +28 -0
- package/dist/types/components/sidebar/sessionTitleScroll.d.ts +7 -0
- package/dist/types/components/sidebar/sidebarToggleShortcut.d.ts +18 -0
- package/dist/types/components/sidebar/useSessionContentSearch.d.ts +20 -0
- package/dist/types/components/sidebar/useWorkspaceOverview.d.ts +40 -0
- package/dist/types/components/sidebar/workspaceExpansion.d.ts +4 -0
- package/dist/types/components/sidebar/workspaceOverviewModel.d.ts +123 -0
- package/dist/types/components/skills/SkillInstallDialog.d.ts +8 -0
- package/dist/types/components/skills/SkillsManagerPage.d.ts +11 -0
- package/dist/types/components/skills/skills-manager-logic.d.ts +6 -0
- package/dist/types/components/sources/SourceList.d.ts +5 -0
- package/dist/types/components/sources/TurnSources.d.ts +5 -0
- package/dist/types/components/sources/sourceEntries.d.ts +8 -0
- package/dist/types/components/summaryRunId.d.ts +9 -0
- package/dist/types/components/terminal/TerminalPanel.d.ts +17 -0
- package/dist/types/components/toolbarDropdown.d.ts +39 -0
- package/dist/types/components/ui/alert-dialog.d.ts +19 -0
- package/dist/types/components/ui/alert.d.ts +10 -0
- package/dist/types/components/ui/badge.d.ts +9 -0
- package/dist/types/components/ui/breadcrumb.d.ts +11 -0
- package/dist/types/components/ui/button.d.ts +11 -0
- package/dist/types/components/ui/card.d.ts +11 -0
- package/dist/types/components/ui/checkbox.d.ts +4 -0
- package/dist/types/components/ui/data-table.d.ts +31 -0
- package/dist/types/components/ui/dialog.d.ts +19 -0
- package/dist/types/components/ui/drawer.d.ts +16 -0
- package/dist/types/components/ui/dropdown-menu.d.ts +29 -0
- package/dist/types/components/ui/empty.d.ts +11 -0
- package/dist/types/components/ui/field.d.ts +24 -0
- package/dist/types/components/ui/input.d.ts +3 -0
- package/dist/types/components/ui/label.d.ts +4 -0
- package/dist/types/components/ui/management-notice.d.ts +12 -0
- package/dist/types/components/ui/popover.d.ts +13 -0
- package/dist/types/components/ui/radio-group.d.ts +5 -0
- package/dist/types/components/ui/scroll-area.d.ts +5 -0
- package/dist/types/components/ui/select.d.ts +16 -0
- package/dist/types/components/ui/separator.d.ts +4 -0
- package/dist/types/components/ui/skeleton.d.ts +2 -0
- package/dist/types/components/ui/spinner.d.ts +2 -0
- package/dist/types/components/ui/switch.d.ts +6 -0
- package/dist/types/components/ui/table.d.ts +10 -0
- package/dist/types/components/ui/tabs.d.ts +13 -0
- package/dist/types/components/ui/textarea.d.ts +3 -0
- package/dist/types/components/ui/toggle-group.d.ts +10 -0
- package/dist/types/components/ui/toggle.d.ts +9 -0
- package/dist/types/components/ui/tooltip.d.ts +7 -0
- package/dist/types/components/workflow/SessionWorkflowCockpit.d.ts +17 -0
- package/dist/types/components/workflow/SessionWorkflowInspector.d.ts +15 -0
- package/dist/types/components/workflow/session-workflow-model.d.ts +32 -0
- package/dist/types/components/workflows/WorkflowRunsPage.d.ts +6 -0
- package/dist/types/components/workspaces/WorkspaceRemovalDialog.d.ts +20 -0
- package/dist/types/components/workspaces/WorkspacesOverviewPanel.d.ts +21 -0
- package/dist/types/components/workspaces/useWorkspaceRemoval.d.ts +47 -0
- package/dist/types/config/daemon.d.ts +41 -0
- package/dist/types/config/standalone.d.ts +1 -0
- package/dist/types/constants/loadingPhrases.d.ts +4 -0
- package/dist/types/constants/localCommands.d.ts +27 -0
- package/dist/types/constants/sessions.d.ts +43 -0
- package/dist/types/constants/toolNames.d.ts +9 -0
- package/dist/types/customization.d.ts +508 -0
- package/dist/types/daemon/followupSidechannel.d.ts +11 -0
- package/dist/types/daemon/index.d.ts +14 -0
- package/dist/types/daemon/midTurnInjectedSidechannel.d.ts +37 -0
- package/dist/types/daemon/pendingPromptVersion.d.ts +19 -0
- package/dist/types/daemon/session/DaemonSessionProvider.d.ts +45 -0
- package/dist/types/daemon/session/actions.d.ts +100 -0
- package/dist/types/daemon/session/clientLifecycle.d.ts +21 -0
- package/dist/types/daemon/session/httpErrors.d.ts +9 -0
- package/dist/types/daemon/session/index.d.ts +15 -0
- package/dist/types/daemon/session/live-journal-repair.d.ts +19 -0
- package/dist/types/daemon/session/mappers.d.ts +71 -0
- package/dist/types/daemon/session/promptContent.d.ts +11 -0
- package/dist/types/daemon/session/selectors.d.ts +21 -0
- package/dist/types/daemon/session/session-context.d.ts +16 -0
- package/dist/types/daemon/session/status.d.ts +12 -0
- package/dist/types/daemon/session/transcript-page-table.d.ts +147 -0
- package/dist/types/daemon/session/turn-navigation-store.d.ts +117 -0
- package/dist/types/daemon/session/turn-notification-context.d.ts +43 -0
- package/dist/types/daemon/session/types.d.ts +568 -0
- package/dist/types/daemon/timing.d.ts +14 -0
- package/dist/types/daemon/useDaemonFollowupSuggestion.d.ts +77 -0
- package/dist/types/daemon/useDaemonMidTurnInjected.d.ts +30 -0
- package/dist/types/daemon/workspace/DaemonWorkspaceProvider.d.ts +21 -0
- package/dist/types/daemon/workspace/actions.d.ts +14 -0
- package/dist/types/daemon/workspace/hooks/index.d.ts +21 -0
- package/dist/types/daemon/workspace/hooks/useDaemonAgents.d.ts +22 -0
- package/dist/types/daemon/workspace/hooks/useDaemonAuth.d.ts +24 -0
- package/dist/types/daemon/workspace/hooks/useDaemonChannels.d.ts +33 -0
- package/dist/types/daemon/workspace/hooks/useDaemonDiagnostics.d.ts +10 -0
- package/dist/types/daemon/workspace/hooks/useDaemonFiles.d.ts +10 -0
- package/dist/types/daemon/workspace/hooks/useDaemonGlob.d.ts +8 -0
- package/dist/types/daemon/workspace/hooks/useDaemonMcp.d.ts +31 -0
- package/dist/types/daemon/workspace/hooks/useDaemonMemory.d.ts +16 -0
- package/dist/types/daemon/workspace/hooks/useDaemonProviders.d.ts +20 -0
- package/dist/types/daemon/workspace/hooks/useDaemonResource.d.ts +7 -0
- package/dist/types/daemon/workspace/hooks/useDaemonSessions.d.ts +48 -0
- package/dist/types/daemon/workspace/hooks/useDaemonSettings.d.ts +20 -0
- package/dist/types/daemon/workspace/hooks/useDaemonSkills.d.ts +30 -0
- package/dist/types/daemon/workspace/hooks/useDaemonStatusReport.d.ts +18 -0
- package/dist/types/daemon/workspace/hooks/useDaemonTools.d.ts +16 -0
- package/dist/types/daemon/workspace/hooks/useDaemonUsageDashboard.d.ts +27 -0
- package/dist/types/daemon/workspace/hooks/useWorkspaceEventReload.d.ts +6 -0
- package/dist/types/daemon/workspace/index.d.ts +10 -0
- package/dist/types/daemon/workspace/load-ready-skills.d.ts +7 -0
- package/dist/types/daemon/workspace/types.d.ts +415 -0
- package/dist/types/daemon-react-sdk.d.ts +319 -0
- package/dist/types/extensions/inputHighlight.d.ts +10 -0
- package/dist/types/hooks/daemonSessionMappers.d.ts +2 -0
- package/dist/types/hooks/useAnimationFrameTranscriptBlocks.d.ts +10 -0
- package/dist/types/hooks/useAnimationFrameValue.d.ts +1 -0
- package/dist/types/hooks/useAtMentionMenu.d.ts +72 -0
- package/dist/types/hooks/useAtMentionSources.d.ts +113 -0
- package/dist/types/hooks/useBackgroundTasks.d.ts +8 -0
- package/dist/types/hooks/useChatNavigationVisible.d.ts +2 -0
- package/dist/types/hooks/useComposerCore.d.ts +226 -0
- package/dist/types/hooks/useContextUsageControls.d.ts +26 -0
- package/dist/types/hooks/useCopiedFlash.d.ts +15 -0
- package/dist/types/hooks/useDelayedGlobalKeyDown.d.ts +1 -0
- package/dist/types/hooks/useExternalLinkOpener.d.ts +11 -0
- package/dist/types/hooks/useFileUpload.d.ts +62 -0
- package/dist/types/hooks/useFilterInput.d.ts +27 -0
- package/dist/types/hooks/useInputHistory.d.ts +17 -0
- package/dist/types/hooks/useIsLargeScreen.d.ts +20 -0
- package/dist/types/hooks/useIsTouchComposer.d.ts +36 -0
- package/dist/types/hooks/useListboxKeyboard.d.ts +42 -0
- package/dist/types/hooks/useMessages.d.ts +20 -0
- package/dist/types/hooks/useModelConfigurations.d.ts +11 -0
- package/dist/types/hooks/useNewSessionSuggestion.d.ts +26 -0
- package/dist/types/hooks/useOtherWorkspaceSessions.d.ts +11 -0
- package/dist/types/hooks/usePrefersReducedMotion.d.ts +1 -0
- package/dist/types/hooks/useQueuedPrompts.d.ts +74 -0
- package/dist/types/hooks/useScopedSessions.d.ts +65 -0
- package/dist/types/hooks/useSessionArtifacts.d.ts +10 -0
- package/dist/types/hooks/useSessionArtifactsChange.d.ts +12 -0
- package/dist/types/hooks/useSessionSources.d.ts +13 -0
- package/dist/types/hooks/useShallowMemo.d.ts +2 -0
- package/dist/types/hooks/useSharedNow.d.ts +1 -0
- package/dist/types/hooks/useStreamingLoadingMetrics.d.ts +19 -0
- package/dist/types/hooks/useTranscriptViewport.d.ts +31 -0
- package/dist/types/i18n.d.ts +14 -0
- package/dist/types/index.d.ts +69 -0
- package/dist/types/interactionBlockContext.d.ts +3 -0
- package/dist/types/lib/utils.d.ts +2 -0
- package/dist/types/live/HotkeySetter.d.ts +16 -0
- package/dist/types/live/LiveVoiceButton.d.ts +7 -0
- package/dist/types/live/LiveVoiceSettingsCard.d.ts +9 -0
- package/dist/types/live/useLiveVoice.d.ts +17 -0
- package/dist/types/live/useLiveVoiceSetup.d.ts +19 -0
- package/dist/types/local-files/bridge-client.d.ts +207 -0
- package/dist/types/local-files/capabilities.d.ts +33 -0
- package/dist/types/local-files/directory-handle-store.d.ts +15 -0
- package/dist/types/local-files/local-directory.d.ts +130 -0
- package/dist/types/local-files/mcp-server.d.ts +57 -0
- package/dist/types/local-files/pick-directory.d.ts +49 -0
- package/dist/types/local-files/useLocalFilesBridge.d.ts +64 -0
- package/dist/types/main.d.ts +6 -0
- package/dist/types/mcpAppHostContext.d.ts +1 -0
- package/dist/types/midTurnDedup.d.ts +52 -0
- package/dist/types/monitorDetailsContext.d.ts +12 -0
- package/dist/types/notification-text.d.ts +8 -0
- package/dist/types/portalRoot.d.ts +2 -0
- package/dist/types/pwa-registration.d.ts +10 -0
- package/dist/types/session-catalog/session-catalog-hooks.d.ts +121 -0
- package/dist/types/session-catalog/session-catalog-store.d.ts +143 -0
- package/dist/types/session-catalog/session-live-state-poll-interval.d.ts +2 -0
- package/dist/types/session-catalog/workspace-session-live-state.d.ts +20 -0
- package/dist/types/settings.d.ts +70 -0
- package/dist/types/shadowDom.d.ts +17 -0
- package/dist/types/subagentDetailsContext.d.ts +15 -0
- package/dist/types/themeContext.d.ts +12 -0
- package/dist/types/transcript.d.ts +33 -0
- package/dist/types/transcriptRenderMode.d.ts +5 -0
- package/dist/types/utils/ansi.d.ts +9 -0
- package/dist/types/utils/askUserPermission.d.ts +13 -0
- package/dist/types/utils/base64.d.ts +1 -0
- package/dist/types/utils/bounded-map.d.ts +11 -0
- package/dist/types/utils/clipboard.d.ts +31 -0
- package/dist/types/utils/commandDisplay.d.ts +7 -0
- package/dist/types/utils/composerInputState.d.ts +19 -0
- package/dist/types/utils/composerModels.d.ts +28 -0
- package/dist/types/utils/composerTag.d.ts +42 -0
- package/dist/types/utils/composerTasks.d.ts +16 -0
- package/dist/types/utils/contextUsage.d.ts +9 -0
- package/dist/types/utils/copyCommand.d.ts +18 -0
- package/dist/types/utils/cssUrlVar.d.ts +3 -0
- package/dist/types/utils/dialogLabels.d.ts +1 -0
- package/dist/types/utils/dom.d.ts +2 -0
- package/dist/types/utils/errorDetail.d.ts +1 -0
- package/dist/types/utils/escapeIntent.d.ts +29 -0
- package/dist/types/utils/externalOpen.d.ts +15 -0
- package/dist/types/utils/formatDateTime.d.ts +7 -0
- package/dist/types/utils/formatRelativeTime.d.ts +4 -0
- package/dist/types/utils/formatRuntime.d.ts +1 -0
- package/dist/types/utils/formatTokenCount.d.ts +13 -0
- package/dist/types/utils/gitModeIntent.d.ts +22 -0
- package/dist/types/utils/goalCondition.d.ts +43 -0
- package/dist/types/utils/goalControlRequest.d.ts +20 -0
- package/dist/types/utils/goalGate.d.ts +39 -0
- package/dist/types/utils/imageIngestion.d.ts +47 -0
- package/dist/types/utils/largePaste.d.ts +44 -0
- package/dist/types/utils/linkify.d.ts +19 -0
- package/dist/types/utils/localCommandQueue.d.ts +47 -0
- package/dist/types/utils/modelDisplay.d.ts +1 -0
- package/dist/types/utils/modelEncoding.d.ts +15 -0
- package/dist/types/utils/modelSwitchMessages.d.ts +4 -0
- package/dist/types/utils/monitorTasks.d.ts +3 -0
- package/dist/types/utils/planMode.d.ts +5 -0
- package/dist/types/utils/promptAdmission.d.ts +1 -0
- package/dist/types/utils/queueDrain.d.ts +21 -0
- package/dist/types/utils/remote-name-skeleton.d.ts +1 -0
- package/dist/types/utils/sentinelMessage.d.ts +4 -0
- package/dist/types/utils/sessionErrors.d.ts +2 -0
- package/dist/types/utils/sessionPath.d.ts +19 -0
- package/dist/types/utils/sessionPreparation.d.ts +77 -0
- package/dist/types/utils/slash-command-action.d.ts +3 -0
- package/dist/types/utils/slashSectionPlan.d.ts +26 -0
- package/dist/types/utils/splitUrl.d.ts +37 -0
- package/dist/types/utils/standalone-session-routing.d.ts +2 -0
- package/dist/types/utils/systemInfo.d.ts +26 -0
- package/dist/types/utils/taskActivity.d.ts +18 -0
- package/dist/types/utils/timeAgo.d.ts +10 -0
- package/dist/types/utils/todos.d.ts +165 -0
- package/dist/types/utils/unicodeConfusables.d.ts +1 -0
- package/dist/types/utils/unifiedDiff.d.ts +12 -0
- package/dist/types/utils/workflowTasks.d.ts +3 -0
- package/dist/types/utils/workspace.d.ts +34 -0
- package/dist/types/utils/workspaceColor.d.ts +15 -0
- package/dist/types/voice/VoiceButton.d.ts +16 -0
- package/dist/types/voice/use-voice-workspace-settings.d.ts +13 -0
- package/dist/types/voice/useVoiceCapture.d.ts +42 -0
- package/dist/types/voice/voice-workspace-target.d.ts +45 -0
- package/dist/types/voice/voiceModels.d.ts +23 -0
- package/dist/types/workflowDetailsContext.d.ts +11 -0
- 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;
|