@qwen-code/web-shell 0.26.3-preview.0 → 0.26.4-nightly.20261029.70be140e14

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 (61) hide show
  1. package/README.md +111 -10
  2. package/dist/{PierreFilePreview-DK0Qg591.js → PierreFilePreview-CfV0XRoK.js} +1 -1
  3. package/dist/{SpreadsheetPreview-nx5JXOUL.js → SpreadsheetPreview-Bs2-wOb1.js} +2 -2
  4. package/dist/{WorkspaceFileBrowser-D5vot7Ow.js → WorkspaceFileBrowser-B-0Ycb2D.js} +2 -2
  5. package/dist/agents-route-DK8lW-Vp.js +1552 -0
  6. package/dist/daemon-react-sdk.js +1 -1
  7. package/dist/{index-bGRCmaBo.js → index-Bc6NSs-5.js} +59916 -59145
  8. package/dist/index.js +3 -3
  9. package/dist/sw.js +1 -1
  10. package/dist/transcript.js +10497 -10228
  11. package/dist/types/App.d.ts +9 -5
  12. package/dist/types/adapters/messageTypes.d.ts +7 -0
  13. package/dist/types/components/ChatEditor.d.ts +2 -0
  14. package/dist/types/components/DaemonConnectionBanner.d.ts +1 -0
  15. package/dist/types/components/SessionOverviewPanel.d.ts +6 -3
  16. package/dist/types/components/WebShellTranscript.d.ts +1 -1
  17. package/dist/types/components/composer/AddMenu.d.ts +2 -1
  18. package/dist/types/components/dialogs/AddWorkspaceDialog.d.ts +7 -3
  19. package/dist/types/components/dialogs/DialogShell.d.ts +5 -2
  20. package/dist/types/components/local-control-api.d.ts +2 -1
  21. package/dist/types/components/managed/ManagedSessionWorktrees.d.ts +12 -0
  22. package/dist/types/components/managed/ManagedWorktreePopover.d.ts +9 -0
  23. package/dist/types/components/managed/generated/managed-agent-api.d.ts +344 -12
  24. package/dist/types/components/managed/java-managed-agent-client.d.ts +9 -9
  25. package/dist/types/components/managed/managed-agent-provider.d.ts +43 -10
  26. package/dist/types/components/managed/managed-session-export.d.ts +1 -0
  27. package/dist/types/components/managed/managed-session-messages.d.ts +1 -1
  28. package/dist/types/components/managed/managed-worktree-messages.d.ts +41 -0
  29. package/dist/types/components/managed/use-managed-file-upload.d.ts +3 -5
  30. package/dist/types/components/messages/McpApp.d.ts +4 -0
  31. package/dist/types/components/messages/SettingsMessage.d.ts +2 -1
  32. package/dist/types/components/messages/tools/DiffView.d.ts +6 -0
  33. package/dist/types/components/sidebar/SessionDetailsTooltip.d.ts +3 -2
  34. package/dist/types/components/sidebar/WebShellSidebar.d.ts +5 -3
  35. package/dist/types/components/ui/alert.d.ts +1 -1
  36. package/dist/types/components/ui/badge.d.ts +1 -1
  37. package/dist/types/components/ui/button.d.ts +2 -2
  38. package/dist/types/components/workspace-agents/agent-events.d.ts +1 -1
  39. package/dist/types/components/workspace-agents/session-agents-api.d.ts +2 -1
  40. package/dist/types/components/workspace-agents/threads-api.d.ts +2 -1
  41. package/dist/types/components/workspace-agents/useAgentChatEntry.d.ts +3 -1
  42. package/dist/types/customization.d.ts +5 -0
  43. package/dist/types/daemon/availability-context.d.ts +4 -0
  44. package/dist/types/daemon/availability.d.ts +43 -0
  45. package/dist/types/daemon/availability.test-fixtures.d.ts +12 -0
  46. package/dist/types/daemon/rest-request.d.ts +8 -0
  47. package/dist/types/desktop-relay/desktop-relay-client.d.ts +1 -1
  48. package/dist/types/hooks/useMcpAppMessages.d.ts +16 -1
  49. package/dist/types/i18n.d.ts +1 -1
  50. package/dist/types/index.d.ts +1 -1
  51. package/dist/types/live/useLiveVoiceSetup.d.ts +1 -1
  52. package/dist/types/local-files/bridge-client.d.ts +5 -0
  53. package/dist/types/mcp-app/messages.d.ts +4 -2
  54. package/dist/types/mcpAppHostContext.d.ts +44 -3
  55. package/dist/types/session-catalog/session-catalog-store.d.ts +2 -0
  56. package/dist/types/settings.d.ts +1 -1
  57. package/dist/types/utils/composerTasks.d.ts +7 -0
  58. package/dist/types/utils/planMode.d.ts +1 -1
  59. package/dist/{useDaemonMidTurnInjected-DPmdVYAB.js → useDaemonMidTurnInjected-CioAIlrV.js} +8361 -6972
  60. package/package.json +1 -1
  61. package/dist/agents-route-CoDAxwQK.js +0 -1546
@@ -21,7 +21,7 @@ import { type ComposerPlaceholderState } from './utils/composerInputState';
21
21
  import type { CommandInfo, Message } from './adapters/types';
22
22
  import { type WebShellBrand, type WebShellResolvedBrand } from './brandContext';
23
23
  import { type WebShellTheme } from './themeContext';
24
- import { type WebShellCustomization, type WebShellAssistantFeedbackOptions, type WebShellComposerApi, type WebShellComposerInput, type WebShellMarkdownCustomization, type WebShellSourceIconResolver, type WebShellSourceReference, type ToolHeaderExtraRenderer, type UserMessageContentRenderer, type UserMessageContentParser, type AssistantTurnFooterRenderer, type WebShellArtifactCustomization, type WelcomeHeaderRenderer, type WelcomeFooterRenderer, type ComposerToolbarStartRenderer, type ComposerToolbarEndRenderer, type ComposerToolbarRightRenderer, type ComposerHeaderRenderer, type ComposerFooterRenderer, type ChatHeaderRenderer, type WebShellChatHeaderOptions, type WebShellRightPanelOptions, type WebShellEnvironmentPanelOptions, type FooterRenderer, type LoadingPhrasesResolver, type MarkdownTableMode, type WebShellAtProvider, type WebShellBuiltinAtProvidersConfig, type ComposerTagClickHandler, type ComposerTagRenderer, type WebShellComposerTagIconMap, type WebShellBottomStatusItem, type WebShellPreparedSubmit, type WebShellSubmitSnapshot, type WebShellAssistantTurnSettledEvent, type WebShellSessionArtifactsChange } from './customization';
24
+ import { type WebShellCustomization, type WebShellWorkspaceDirectoryPicker, type WebShellAssistantFeedbackOptions, type WebShellComposerApi, type WebShellComposerInput, type WebShellMarkdownCustomization, type WebShellSourceIconResolver, type WebShellSourceReference, type ToolHeaderExtraRenderer, type UserMessageContentRenderer, type UserMessageContentParser, type AssistantTurnFooterRenderer, type WebShellArtifactCustomization, type WelcomeHeaderRenderer, type WelcomeFooterRenderer, type ComposerToolbarStartRenderer, type ComposerToolbarEndRenderer, type ComposerToolbarRightRenderer, type ComposerHeaderRenderer, type ComposerFooterRenderer, type ChatHeaderRenderer, type WebShellChatHeaderOptions, type WebShellRightPanelOptions, type WebShellEnvironmentPanelOptions, type FooterRenderer, type LoadingPhrasesResolver, type MarkdownTableMode, type WebShellAtProvider, type WebShellBuiltinAtProvidersConfig, type ComposerTagClickHandler, type ComposerTagRenderer, type WebShellComposerTagIconMap, type WebShellBottomStatusItem, type WebShellPreparedSubmit, type WebShellSubmitSnapshot, type WebShellAssistantTurnSettledEvent, type WebShellSessionArtifactsChange } from './customization';
25
25
  import type { CommandDisplayCategoryOrder } from './utils/commandDisplay';
26
26
  export interface BugReportInfo {
27
27
  title: string;
@@ -38,9 +38,9 @@ export interface WebShellSidebarOptions {
38
38
  showLive?: boolean;
39
39
  /** Hide or replace the complete sidebar branding row. */
40
40
  branding?: false | WebShellSidebarBranding;
41
- /** Customize the primary navigation area (new task button, custom entries). */
41
+ /** Customize the primary navigation area (new session button, custom entries). */
42
42
  primaryNav?: WebShellSidebarPrimaryNavOptions;
43
- /** Whether to hide the "Projects" header row (with search and add workspace). Defaults to false (shown). */
43
+ /** Whether to hide the "Workspaces" header row (with search and add workspace). Defaults to false (shown). */
44
44
  hideProjectHeader?: boolean;
45
45
  /** Customize which action buttons appear on session rows. */
46
46
  sessionActions?: WebShellSidebarSessionActionsOptions;
@@ -136,7 +136,7 @@ export interface WebShellProps {
136
136
  */
137
137
  onThemeResolved?: (theme: WebShellTheme) => void;
138
138
  /** UI language for the web-shell. Defaults to `?language=` or browser language. */
139
- language?: 'en' | 'zh-CN' | 'zh' | 'zh-cn';
139
+ language?: 'en' | 'zh-CN' | 'zh' | 'zh-cn' | 'ru' | 'ru-ru';
140
140
  /** Called when `/language ui` changes the web-shell UI language. */
141
141
  onLanguageChange?: (language: WebShellLanguage) => void;
142
142
  /**
@@ -201,6 +201,8 @@ export interface WebShellProps {
201
201
  }>) => void;
202
202
  /** Open a workspace file in the embedding host instead of WebShell preview. */
203
203
  onWorkspaceFileOpen?: (path: string) => void;
204
+ /** Select a directory on the connected daemon. Overrides native picking without registering or trusting the path. */
205
+ onPickWorkspaceDirectory?: WebShellWorkspaceDirectoryPicker;
204
206
  /** Open a completed Insight report in a host-native surface. */
205
207
  onInsightReportOpen?: (path: string) => void;
206
208
  /** Open context usage details in the host instead of the built-in panel. */
@@ -220,6 +222,8 @@ export interface WebShellProps {
220
222
  composerToolbarActions?: readonly ComposerToolbarAction[];
221
223
  /** Execution mode choices. Overrides ui.allowedApprovalModes; [] offers none. Presentation only. */
222
224
  allowedApprovalModes?: readonly WebShellApprovalMode[];
225
+ /** Composer presentation shared by the main chat, split panes, and side tasks. */
226
+ composerVariant?: 'default' | 'simple';
223
227
  /** Optionally filter main-model entries without changing shared defaults. */
224
228
  mainModelFilter?: (model: ModelDialogModel) => boolean;
225
229
  /** Stack completion details vertically for narrow embedded hosts. */
@@ -456,4 +460,4 @@ export declare function canArchiveSideTaskSummary(session: Pick<DaemonSessionSum
456
460
  export declare function mergeSideTaskCatalog(catalog: SideTaskCatalogState, parentSessionId: string, listedItems: SideTaskListItem[], optimisticIds: ReadonlySet<string>): SideTaskCatalogState;
457
461
  export declare function getEnvironmentAgentTasks(messages: readonly Message[], sessionTasks: readonly DaemonSessionTaskWithWorkflowStatus[]): EnvironmentAgentTask[];
458
462
  export declare function mergeAgentTrace(liveAgents: readonly EnvironmentAgentTask[], trace: DaemonAgentTrace | undefined, now?: number): EnvironmentAgentTask[];
459
- export declare function App({ onRefreshModels, askUserFreeTextLabel, onSessionIdChange, onSessionInfoChange, onSessionCreated, managedAgentProvider, theme: providedTheme, onThemeChange, onThemeResolved, language: providedLanguage, onLanguageChange, onLanguageResolved, brand: providedBrand, onBrandResolved, className: externalClassName, style: externalStyle, shadowDom, onConnectionChange, onStreamingStateChange, onError, onBugReport, hiddenSlashCommands, slashCommandCategoryOrder, onSlashCommand, builtinAtProviders, atProviders, composerTagIcons, fileUploadEnabled, fileUploadDirectory, artifact, fileDropAction, renderToolHeaderExtra, renderWelcomeHeader, renderWelcomeFooter, mobileWelcomeFooterMiddle, parseUserMessageContent, renderUserMessageContent, renderComposerTag, renderComposerTagTooltip, onComposerTagClick, renderAssistantTurnFooter, assistantFeedback, getAssistantSourcesIcon, sourceReferences, renderComposerToolbarStart, renderComposerToolbarEnd, renderComposerToolbarRight, renderComposerHeader, renderComposerFooter, renderChatHeader, renderFooter, bottomStatusItems, chatMaxWidth, sidebar, settings: settingsPresentation, modelManagement, unavailableModels, mountUnavailableModelTooltip, header, rightPanel, showToolCalls, environmentPanel, splitSessionIds: externalSplitSessionIds, onSplitSessionIdsChange, renderPaneHeaderActions, onRightPanelOpen, onFileReviewOpen, onWorkspaceFileOpen, onInsightReportOpen, onContextUsageOpen, messageTurnOutputs, filterArtifact, shellRef, composerToolbarActions, allowedApprovalModes: allowedApprovalModesProp, mainModelFilter, compactComposerOverlays, autoSubmitSlashCommands, additionalSlashCommands, contextUsageAlwaysVisible, userMessageEditing, onUserMessageEditRequest, cycleModeOnTab, sessionSourceType, composerToolbarAdditionalActions, composerPlaceholders, compactThinking, hostOwnsEditDiffPreview, collapseCompletedTurns, markdownTableMode, virtualScrollThreshold, conversationSearchThreshold, markdown, loadingPhrases, onAgentTasksChange, onTranscriptChange, onSessionArtifactsChange, onToast, composerRef, onComposerReady, composerInput, composerInputVersion, onSessionChange, onAssistantTurnSettled, prepareSubmit, onSubmitBefore, restartSseOnPrompt, historyPageSize, initialSelectedWorkspaceCwd, lockedWorkspaceCwd, lockedWorkspaceCapability, }?: AppProps): import("react/jsx-runtime").JSX.Element;
463
+ export declare function App({ onRefreshModels, askUserFreeTextLabel, onSessionIdChange, onSessionInfoChange, onSessionCreated, managedAgentProvider, theme: providedTheme, onThemeChange, onThemeResolved, language: providedLanguage, onLanguageChange, onLanguageResolved, brand: providedBrand, onBrandResolved, className: externalClassName, style: externalStyle, shadowDom, onConnectionChange, onStreamingStateChange, onError, onBugReport, hiddenSlashCommands, slashCommandCategoryOrder, onSlashCommand, builtinAtProviders, atProviders, composerTagIcons, fileUploadEnabled, fileUploadDirectory, artifact, fileDropAction, renderToolHeaderExtra, renderWelcomeHeader, renderWelcomeFooter, mobileWelcomeFooterMiddle, parseUserMessageContent, renderUserMessageContent, renderComposerTag, renderComposerTagTooltip, onComposerTagClick, renderAssistantTurnFooter, assistantFeedback, getAssistantSourcesIcon, sourceReferences, renderComposerToolbarStart, renderComposerToolbarEnd, renderComposerToolbarRight, renderComposerHeader, renderComposerFooter, renderChatHeader, renderFooter, bottomStatusItems, chatMaxWidth, sidebar, settings: settingsPresentation, modelManagement, unavailableModels, mountUnavailableModelTooltip, header, rightPanel, showToolCalls, environmentPanel, splitSessionIds: externalSplitSessionIds, onSplitSessionIdsChange, renderPaneHeaderActions, onRightPanelOpen, onFileReviewOpen, onWorkspaceFileOpen, onPickWorkspaceDirectory, onInsightReportOpen, onContextUsageOpen, messageTurnOutputs, filterArtifact, shellRef, composerToolbarActions, allowedApprovalModes: allowedApprovalModesProp, composerVariant, mainModelFilter, compactComposerOverlays, autoSubmitSlashCommands, additionalSlashCommands, contextUsageAlwaysVisible, userMessageEditing, onUserMessageEditRequest, cycleModeOnTab, sessionSourceType, composerToolbarAdditionalActions, composerPlaceholders, compactThinking, hostOwnsEditDiffPreview, collapseCompletedTurns, markdownTableMode, virtualScrollThreshold, conversationSearchThreshold, markdown, loadingPhrases, onAgentTasksChange, onTranscriptChange, onSessionArtifactsChange, onToast, composerRef, onComposerReady, composerInput, composerInputVersion, onSessionChange, onAssistantTurnSettled, prepareSubmit, onSubmitBefore, restartSseOnPrompt, historyPageSize, initialSelectedWorkspaceCwd, lockedWorkspaceCwd, lockedWorkspaceCapability, }?: AppProps): import("react/jsx-runtime").JSX.Element;
@@ -55,6 +55,13 @@ export interface DaemonMessageToolCall {
55
55
  endTime?: number;
56
56
  wasCancelled?: boolean;
57
57
  subContent?: string;
58
+ /**
59
+ * Path-style identity of the agent that produced this call's sub-content,
60
+ * e.g. `/root/general-purpose`. Carried from the transcript block's `agent`
61
+ * field so the panel can name a subagent precisely instead of by type alone
62
+ * — two parallel subagents of the same type are otherwise indistinguishable.
63
+ */
64
+ agentPath?: string;
58
65
  subTools?: DaemonMessageToolCall[];
59
66
  /** Transcript blocks folded into this tool presentation. */
60
67
  sourceBlockIds?: string[];
@@ -53,6 +53,8 @@ interface ChatEditorProps {
53
53
  currentModel?: string;
54
54
  modelControlsDisabled?: boolean;
55
55
  gitBranch?: string;
56
+ /** Service-owned Git control in the workspace row below the composer. */
57
+ gitContextControl?: ReactNode;
56
58
  /** Whether the session is in a worktree (styles the git chip purple). */
57
59
  gitWorktree?: boolean;
58
60
  /** Git working directory for worktree sessions; targets git operations. */
@@ -0,0 +1 @@
1
+ export declare function DaemonConnectionBanner(): import("react/jsx-runtime").JSX.Element | null;
@@ -3,7 +3,8 @@
3
3
  * Copyright 2025 Qwen Team
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import type { DaemonSessionGroupPresetColor, DaemonSessionPrInfo, DaemonSessionSummary, DaemonStatusReportSession } from '@qwen-code/sdk/daemon';
6
+ import { type DaemonProductSessionContext } from '@qwen-code/web-shell/daemon-react-sdk';
7
+ import { type DaemonSessionGroupPresetColor, type DaemonSessionPrInfo, type DaemonSessionSummary, type DaemonStatusReportSession } from '@qwen-code/sdk/daemon';
7
8
  export type SessionCardStatus = 'needsApproval' | 'askUserQuestion' | 'running' | 'idle';
8
9
  export interface SessionCard {
9
10
  sessionId: string;
@@ -17,6 +18,8 @@ export interface SessionCard {
17
18
  gitBranch?: string;
18
19
  /** The workspace the session lives in. */
19
20
  workspaceCwd: string;
21
+ /** Catalog the session came from; 'standalone' has no workspace of its own. */
22
+ sourceType?: string;
20
23
  }
21
24
  type SessionIdentity = Pick<SessionCard, 'sessionId' | 'workspaceCwd'>;
22
25
  /**
@@ -30,13 +33,13 @@ type SessionIdentity = Pick<SessionCard, 'sessionId' | 'workspaceCwd'>;
30
33
  * idle, then most-recent first, so sessions that want attention float to the
31
34
  * top of a 10+ session grid.
32
35
  */
33
- export declare function deriveSessionCards(sessions: DaemonSessionSummary[], currentSessionId: string | undefined, statusSessions?: DaemonStatusReportSession[], currentWorkspaceCwd?: string): SessionCard[];
36
+ export declare function deriveSessionCards(sessions: DaemonSessionSummary[], currentSessionId: string | undefined, statusSessions?: DaemonStatusReportSession[], currentWorkspaceCwd?: string, currentContextKind?: string): SessionCard[];
34
37
  /**
35
38
  * A malformed daemon payload must not white-screen the shell; contain any
36
39
  * render throw to the panel, mirroring DaemonStatusDialog.
37
40
  */
38
41
  export declare function SessionOverviewPanel({ onOpenSession, onOpenSplit, onCurrentSessionRemoved, includeOtherWorkspaces, workspaceCwd, manageLiveState, }: {
39
- onOpenSession: (sessionId: string, workspaceCwd?: string) => void;
42
+ onOpenSession: (sessionId: string, workspaceCwd?: string, sessionContext?: DaemonProductSessionContext) => void;
40
43
  onOpenSplit?: (sessionIds: string[]) => void;
41
44
  onCurrentSessionRemoved?: (session: SessionIdentity) => Promise<boolean | void> | boolean | void;
42
45
  includeOtherWorkspaces?: boolean;
@@ -8,7 +8,7 @@ export interface WebShellTranscriptProps {
8
8
  blocks: readonly DaemonTranscriptBlock[];
9
9
  renderMode?: 'readonly' | 'document';
10
10
  theme?: WebShellTheme;
11
- language?: 'en' | 'zh-CN' | 'zh' | 'zh-cn';
11
+ language?: 'en' | 'zh-CN' | 'zh' | 'zh-cn' | 'ru' | 'ru-ru';
12
12
  className?: string;
13
13
  style?: CSSProperties;
14
14
  chatMaxWidth?: number;
@@ -36,6 +36,7 @@ export interface AddMenuProps {
36
36
  onLiveVoice?: () => void;
37
37
  };
38
38
  commandsOnly?: boolean;
39
+ simpleMode?: boolean;
39
40
  }
40
41
  export interface AddMenuPlanControl {
41
42
  checked: boolean;
@@ -43,4 +44,4 @@ export interface AddMenuPlanControl {
43
44
  disabled?: boolean;
44
45
  onToggle: () => void;
45
46
  }
46
- export declare function AddMenu({ disabled, availabilityKey, addFileAvailable, uploadAvailable, onAddFiles, onFilePickerCancel, onInsertReference, onPrependSkill, getWorkspaceActions, skills, onSkillsOpenChange, skillsLoading, skillsLoadError, skillsLoaded, plan, btw, mobileActions, commandsOnly, }: AddMenuProps): import("react/jsx-runtime").JSX.Element;
47
+ export declare function AddMenu({ disabled, availabilityKey, addFileAvailable, uploadAvailable, onAddFiles, onFilePickerCancel, onInsertReference, onPrependSkill, getWorkspaceActions, skills, onSkillsOpenChange, skillsLoading, skillsLoadError, skillsLoaded, plan, btw, mobileActions, commandsOnly, simpleMode, }: AddMenuProps): import("react/jsx-runtime").JSX.Element;
@@ -1,3 +1,4 @@
1
+ import type { WebShellWorkspaceDirectoryPicker } from '../../customization';
1
2
  import { type WorkspaceExecutionMode } from '../workspaces/WorkspaceExecutionSelect';
2
3
  export interface WorkspacePathSuggestion {
3
4
  name: string;
@@ -37,7 +38,7 @@ export interface GitWorkspaceCloneControls {
37
38
  cancel(jobId: string): Promise<void>;
38
39
  }
39
40
  interface AddWorkspaceDialogProps {
40
- /** Overrides the default "Add Workspace" heading. */
41
+ /** Overrides the default "Add workspace" heading. */
41
42
  title?: string;
42
43
  /** Overrides the default submit label; the in-flight label is unchanged. */
43
44
  submitLabel?: string;
@@ -59,7 +60,10 @@ interface AddWorkspaceDialogProps {
59
60
  * surfaces matching subdirectories in a listbox under the input.
60
61
  */
61
62
  onSuggest?: (prefix: string) => Promise<WorkspacePathSuggestions>;
62
- onPick?: () => Promise<string | undefined>;
63
+ onPick?: WebShellWorkspaceDirectoryPicker;
64
+ /** Stable identity for the current connection/target; replace it to cancel a pick. */
65
+ pickerTarget?: unknown;
66
+ pickerUsesHostUi?: boolean;
63
67
  persistenceSupported?: boolean;
64
68
  /**
65
69
  * Git clone controls. Presence means the connected daemon advertises
@@ -67,5 +71,5 @@ interface AddWorkspaceDialogProps {
67
71
  */
68
72
  gitClone?: GitWorkspaceCloneControls;
69
73
  }
70
- export declare function AddWorkspaceDialog({ title, submitLabel, executionMode, onExecutionModeChange, executionModeLocked, browseDirectories, initialPath, pathHint, pathPlaceholder, onClose, onAdd, displayNameEnabled, locations, selectedLocation, onLocationChange, onSuggest, onPick, persistenceSupported, gitClone, }: AddWorkspaceDialogProps): import("react/jsx-runtime").JSX.Element;
74
+ export declare function AddWorkspaceDialog({ title, submitLabel, executionMode, onExecutionModeChange, executionModeLocked, browseDirectories, initialPath, pathHint, pathPlaceholder, onClose, onAdd, displayNameEnabled, locations, selectedLocation, onLocationChange, onSuggest, onPick, pickerTarget, pickerUsesHostUi, persistenceSupported, gitClone, }: AddWorkspaceDialogProps): import("react/jsx-runtime").JSX.Element;
71
75
  export {};
@@ -1,4 +1,4 @@
1
- import { type ReactNode } from 'react';
1
+ import { type ReactNode, type RefObject } from 'react';
2
2
  type DialogSize = 'sm' | 'md' | 'lg' | 'xl' | 'auto';
3
3
  interface DialogShellProps {
4
4
  title: string;
@@ -6,10 +6,13 @@ interface DialogShellProps {
6
6
  size?: DialogSize;
7
7
  allowFullscreen?: boolean;
8
8
  dismissible?: boolean;
9
+ modal?: boolean;
10
+ modalRestoreFocusRef?: RefObject<HTMLElement | null>;
11
+ 'aria-busy'?: boolean;
9
12
  onClose: () => void;
10
13
  children: ReactNode;
11
14
  }
12
15
  export declare const DialogShellIdContext: import("react").Context<object | null>;
13
16
  export declare function isTopDialogShellId(shellId: object | null): boolean;
14
- export declare function DialogShell({ title, subtitle, size, allowFullscreen, dismissible, onClose, children, }: DialogShellProps): import("react/jsx-runtime").JSX.Element;
17
+ export declare function DialogShell({ title, subtitle, size, allowFullscreen, dismissible, modal, modalRestoreFocusRef, 'aria-busy': ariaBusy, onClose, children, }: DialogShellProps): import("react/jsx-runtime").JSX.Element;
15
18
  export {};
@@ -3,6 +3,7 @@
3
3
  * Copyright 2025 Qwen Team
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ import type { DaemonClient } from '@qwen-code/sdk/daemon';
6
7
  export interface LanCandidate {
7
8
  interfaceName: string;
8
9
  address: string;
@@ -29,4 +30,4 @@ export declare class LocalControlRequestError extends Error {
29
30
  readonly status?: number | undefined;
30
31
  constructor(message: string, payload?: LocalControlStatus | undefined, status?: number | undefined);
31
32
  }
32
- export declare function requestLocalControl(baseUrl: string, token: string | undefined, method: 'GET' | 'POST', path: string, body?: object): Promise<LocalControlStatus>;
33
+ export declare function requestLocalControl(baseUrl: string, token: string | undefined, method: 'GET' | 'POST', path: string, body?: object, client?: DaemonClient): Promise<LocalControlStatus>;
@@ -0,0 +1,12 @@
1
+ import type { ManagedAgentProvider, ManagedSessionWorktree } from './managed-agent-provider';
2
+ export declare function ManagedWorktreeStatus({ worktree, compact, }: {
3
+ worktree: ManagedSessionWorktree;
4
+ compact?: boolean;
5
+ }): import("react/jsx-runtime").JSX.Element;
6
+ export declare function ManagedSessionWorktrees({ provider, clientId, workspaceId, open, onOpenChange, }: {
7
+ provider: Pick<ManagedAgentProvider, 'storageKey' | 'sessionWorktrees'>;
8
+ clientId: string;
9
+ workspaceId: string;
10
+ open: boolean;
11
+ onOpenChange: (open: boolean) => void;
12
+ }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,9 @@
1
+ export declare function ManagedWorktreePopover({ worktree, currentBranch, open, onOpenChange, disabled, onWorktreeChange, onManage, }: {
2
+ worktree: boolean;
3
+ currentBranch?: string | null;
4
+ open: boolean;
5
+ onOpenChange: (value: boolean) => void;
6
+ disabled: boolean;
7
+ onWorktreeChange: (value: boolean) => void;
8
+ onManage: () => void;
9
+ }): import("react/jsx-runtime").JSX.Element;