@qwen-code/web-shell 0.25.0 → 0.25.1-nightly.20261012.18f80f5666

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 (93) hide show
  1. package/README.md +6 -7
  2. package/dist/agents-route-DlEzBEU4.js +1546 -0
  3. package/dist/daemon-react-sdk.js +1 -1
  4. package/dist/{index-tVJkU24-.js → index-NuS7ToOq.js} +53556 -48611
  5. package/dist/index.js +22 -22
  6. package/dist/sw.js +1 -1
  7. package/dist/transcript.js +9991 -9580
  8. package/dist/types/adapters/messageTypes.d.ts +8 -1
  9. package/dist/types/adapters/transcriptAdapter.d.ts +2 -1
  10. package/dist/types/browser-turn-notifications.d.ts +2 -1
  11. package/dist/types/components/ChatContextHeader.d.ts +3 -1
  12. package/dist/types/components/ChatEditor.d.ts +4 -7
  13. package/dist/types/components/QueuedPromptDisplay.d.ts +4 -1
  14. package/dist/types/components/WorkspaceSelector.d.ts +9 -1
  15. package/dist/types/components/agents/AgentCreatePage.d.ts +7 -1
  16. package/dist/types/components/agents/AgentsManagerPage.d.ts +4 -5
  17. package/dist/types/components/artifacts/ArtifactPanel.d.ts +1 -8
  18. package/dist/types/components/artifacts/TrajectoryFilters.d.ts +15 -0
  19. package/dist/types/components/artifacts/TrajectoryInspector.d.ts +3 -1
  20. package/dist/types/components/artifacts/artifactUtils.d.ts +9 -0
  21. package/dist/types/components/managed/ManagedSessionCwdControl.d.ts +9 -0
  22. package/dist/types/components/managed/ManagedTaskPanel.d.ts +15 -0
  23. package/dist/types/components/managed/ManagedToolResultPanel.d.ts +6 -1
  24. package/dist/types/components/managed/generated/managed-agent-api.d.ts +273 -25
  25. package/dist/types/components/managed/java-managed-agent-client.d.ts +41 -1
  26. package/dist/types/components/managed/managed-agent-provider.d.ts +50 -1
  27. package/dist/types/components/managed/managed-request-error.d.ts +6 -0
  28. package/dist/types/components/managed/managed-task-messages.d.ts +9 -0
  29. package/dist/types/components/managed/managed-task-messages.transcript-stub.d.ts +7 -0
  30. package/dist/types/components/managed/managed-task.test-fixtures.d.ts +4 -0
  31. package/dist/types/components/managed/use-managed-actions.d.ts +6 -5
  32. package/dist/types/components/managed/use-managed-cwd-change.d.ts +21 -0
  33. package/dist/types/components/managed/use-managed-session.d.ts +15 -1
  34. package/dist/types/components/managed/use-managed-task-cancel.d.ts +12 -0
  35. package/dist/types/components/managed/use-managed-tasks.d.ts +49 -0
  36. package/dist/types/components/messages/AssistantMessage.d.ts +3 -1
  37. package/dist/types/components/messages/BrowserNotificationControl.d.ts +1 -0
  38. package/dist/types/components/messages/SelectionCopyMenu.d.ts +8 -0
  39. package/dist/types/components/messages/SelectionCopyMenu.transcript-stub.d.ts +2 -0
  40. package/dist/types/components/messages/ToolApproval.d.ts +2 -1
  41. package/dist/types/components/messages/UserMessage.d.ts +3 -1
  42. package/dist/types/components/messages/agent-message-details.d.ts +36 -0
  43. package/dist/types/components/messages/squad-tag.d.ts +16 -0
  44. package/dist/types/components/messages/toolFormatting.d.ts +3 -3
  45. package/dist/types/components/sidebar/WebShellSidebar.d.ts +8 -4
  46. package/dist/types/components/sidebar/WorkspaceSection.d.ts +9 -2
  47. package/dist/types/components/workspace-agents/ThreadsPage.d.ts +31 -55
  48. package/dist/types/components/workspace-agents/add-runtime-dialog.d.ts +34 -5
  49. package/dist/types/components/workspace-agents/agent-events.d.ts +4 -34
  50. package/dist/types/components/workspace-agents/agents-route.d.ts +19 -0
  51. package/dist/types/components/workspace-agents/agents-view-logic.d.ts +14 -163
  52. package/dist/types/components/workspace-agents/lazy-agents-route.d.ts +7 -0
  53. package/dist/types/components/workspace-agents/messages.d.ts +2 -2
  54. package/dist/types/components/workspace-agents/session-agent-live-runs.d.ts +96 -0
  55. package/dist/types/components/workspace-agents/session-agents-api.d.ts +39 -0
  56. package/dist/types/components/workspace-agents/squads-section.d.ts +28 -0
  57. package/dist/types/components/workspace-agents/threads-api.d.ts +25 -36
  58. package/dist/types/components/workspace-agents/use-session-agent-runs.d.ts +66 -0
  59. package/dist/types/components/workspace-agents/useAgentChatEntry.d.ts +74 -10
  60. package/dist/types/components/workspaces/HostLabel.d.ts +8 -0
  61. package/dist/types/components/workspaces/WorkspaceHostProjects.d.ts +18 -0
  62. package/dist/types/components/workspaces/WorkspaceLocation.d.ts +10 -0
  63. package/dist/types/config/daemon-target.d.ts +76 -0
  64. package/dist/types/config/daemon.d.ts +16 -0
  65. package/dist/types/config/host-fanout.d.ts +53 -0
  66. package/dist/types/config/remote-connections.d.ts +3 -0
  67. package/dist/types/config/workspace-hosts.d.ts +18 -0
  68. package/dist/types/constants/toolNames.d.ts +1 -0
  69. package/dist/types/daemon/session/turn-notification-context.d.ts +2 -1
  70. package/dist/types/daemon/session/types.d.ts +28 -4
  71. package/dist/types/hooks/useQueuedPrompts.d.ts +2 -0
  72. package/dist/types/trajectory/filter-messages.d.ts +9 -0
  73. package/dist/types/trajectory/filter-messages.transcript-stub.d.ts +7 -0
  74. package/dist/types/trajectory/filterTrajectory.d.ts +22 -0
  75. package/dist/types/trajectory/types.d.ts +1 -0
  76. package/dist/types/trajectory/useTrajectoryWindow.d.ts +21 -36
  77. package/dist/types/trajectory/window-messages.d.ts +9 -0
  78. package/dist/types/trajectory/window-messages.transcript-stub.d.ts +7 -0
  79. package/dist/types/utils/askUserPermission.d.ts +1 -1
  80. package/dist/types/utils/cancelledTurn.d.ts +17 -0
  81. package/dist/types/utils/selectionClipboard.d.ts +5 -0
  82. package/dist/types/utils/workspace.d.ts +10 -0
  83. package/dist/types/voice/messages.d.ts +9 -0
  84. package/dist/types/voice/messages.transcript-stub.d.ts +7 -0
  85. package/dist/types/voice/voice-error.d.ts +7 -0
  86. package/dist/{toolNames-CAeFJ9L9.js → useDaemonMidTurnInjected-snTFfPQ9.js} +4953 -4614
  87. package/package.json +4 -1
  88. package/dist/ThreadsRoute-CtecWS_K.js +0 -2358
  89. package/dist/types/components/workspace-agents/LazyThreadsRoute.d.ts +0 -7
  90. package/dist/types/components/workspace-agents/ThreadChat.d.ts +0 -35
  91. package/dist/types/components/workspace-agents/ThreadView.d.ts +0 -72
  92. package/dist/types/components/workspace-agents/ThreadsRoute.d.ts +0 -23
  93. package/dist/types/components/workspace-agents/useProjectConversations.d.ts +0 -10
@@ -3,7 +3,7 @@
3
3
  * Copyright 2025 Qwen Team
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import type { DaemonBackgroundTurn, DaemonSessionArtifactInput, DaemonInputAnnotation } from '@qwen-code/sdk/daemon';
6
+ import type { DaemonBackgroundTurn, DaemonSessionArtifactInput, DaemonInputAnnotation, QwenAgentMessageMeta } from '@qwen-code/sdk/daemon';
7
7
  import type { components } from '../components/managed/generated/managed-agent-api.js';
8
8
  export interface AttachmentPreviewRequest {
9
9
  name: string;
@@ -119,6 +119,8 @@ export interface DaemonUserMessage extends DaemonMessageMeta {
119
119
  }>;
120
120
  inputAnnotations?: DaemonInputAnnotation[];
121
121
  source?: string;
122
+ /** `_meta.qwenAgentMessage` of an @-mention (`kind: 'agent_mention'`). */
123
+ agentMessage?: QwenAgentMessageMeta;
122
124
  }
123
125
  export interface DaemonAssistantMessage extends DaemonMessageMeta {
124
126
  reportedArtifacts?: DaemonSessionArtifactInput[];
@@ -138,6 +140,11 @@ export interface DaemonAssistantMessage extends DaemonMessageMeta {
138
140
  outputTokens: number;
139
141
  cachedTokens?: number;
140
142
  };
143
+ /**
144
+ * `_meta.qwenAgentMessage` of a workspace agent's reply in this session
145
+ * (`kind: 'agent_message'`): its run status, error, steps and tokens.
146
+ */
147
+ agentMessage?: QwenAgentMessageMeta;
141
148
  }
142
149
  export interface DaemonThinkingMessage extends DaemonMessageMeta {
143
150
  id: string;
@@ -1,3 +1,4 @@
1
1
  import type { DaemonTranscriptBlock } from '@qwen-code/web-shell/daemon-react-sdk';
2
- import type { PermissionRequest } from './types';
2
+ import type { PermissionRequest } from './types.js';
3
3
  export declare function extractPendingPermission(blocks: readonly DaemonTranscriptBlock[]): PermissionRequest | null;
4
+ export declare function escapePreviewText(text: string): string;
@@ -7,7 +7,7 @@ import { type ReactNode } from 'react';
7
7
  import { type WebShellLanguage } from './i18n';
8
8
  export declare const BROWSER_NOTIFICATIONS_STORAGE_KEY = "qwen-code-web-shell-browser-notifications";
9
9
  export interface WebShellBrowserNotificationsOptions {
10
- /** Initial preference when none is saved. Defaults to false; never requests permission automatically. */
10
+ /** Initial preference when none is saved. Defaults to false; mounting alone never requests permission. */
11
11
  defaultEnabled?: boolean;
12
12
  /** Application name prefixed to notification titles. Defaults to QwenCode. */
13
13
  appName?: string;
@@ -28,6 +28,7 @@ interface BrowserNotificationSettings {
28
28
  persistent: boolean;
29
29
  error: boolean;
30
30
  setEnabled(enabled: boolean): Promise<void>;
31
+ requestPermissionOnce(): void;
31
32
  refreshPermission(): void;
32
33
  syncLanguage(language: WebShellLanguage): void;
33
34
  }
@@ -1,6 +1,8 @@
1
1
  import type { ReactNode } from 'react';
2
2
  interface ChatContextHeaderProps {
3
3
  content: ReactNode;
4
+ /** Names where the chat runs, beside the actions; hidden when omitted. */
5
+ location?: ReactNode;
4
6
  /**
5
7
  * Workspace shown as the header's leading icon. Omitting it means the shell
6
8
  * has no workspace: the icon stays the same folder and only its tooltip says
@@ -23,5 +25,5 @@ interface ChatContextHeaderProps {
23
25
  /** Shows the Local Control QR entry; hidden when omitted. */
24
26
  onOpenLocalControlSettings?: () => void;
25
27
  }
26
- export declare function ChatContextHeader({ content, workspaceName, workspacePath, environmentOpen, environmentAvailable, rightPanelOpen, rightPanelAvailable, onToggleEnvironment, onToggleRightPanel, onOpenTokenUsage, onOpenContextUsage, onOpenLocalControlSettings, }: ChatContextHeaderProps): import("react/jsx-runtime").JSX.Element;
28
+ export declare function ChatContextHeader({ content, location, workspaceName, workspacePath, environmentOpen, environmentAvailable, rightPanelOpen, rightPanelAvailable, onToggleEnvironment, onToggleRightPanel, onOpenTokenUsage, onOpenContextUsage, onOpenLocalControlSettings, }: ChatContextHeaderProps): import("react/jsx-runtime").JSX.Element;
27
29
  export {};
@@ -10,6 +10,7 @@ import { type ComposerSubmitMetadata, type EditorHandle } from '../hooks/useComp
10
10
  import type { ContextUsageControls } from '../hooks/useContextUsageControls';
11
11
  import type { VoiceStatusRevision, VoiceWorkspaceTarget } from '../voice/voice-workspace-target';
12
12
  import { type SessionGitIntent } from './GitModePopover';
13
+ import { type WorkspaceSelectorOption } from './WorkspaceSelector';
13
14
  export type ComposerToolbarAction = 'approvalMode' | 'plan' | 'contextUsage' | 'gitBranch' | 'model' | 'commands' | 'files' | 'widthMode' | 'voice' | 'workspace' | 'addMenu';
14
15
  interface ChatEditorProps {
15
16
  onSubmit: (text: string, images?: import('../adapters/promptTypes').PromptImage[], files?: import('../adapters/promptTypes').PromptFile[], commitAccepted?: import('../hooks/useComposerCore').ComposerSubmitCommit, metadata?: ComposerSubmitMetadata) => boolean | void;
@@ -101,16 +102,12 @@ interface ChatEditorProps {
101
102
  onSelectModel?: (model: string) => void;
102
103
  reasoning?: DaemonReasoningControls;
103
104
  onSelectReasoningEffort?: (value: ReasoningSelection, source?: 'toggle') => Promise<void> | void;
104
- workspaces?: Array<{
105
- id: string;
106
- cwd: string;
107
- label: string;
108
- primary: boolean;
109
- trusted: boolean;
110
- }>;
105
+ workspaces?: WorkspaceSelectorOption[];
111
106
  selectedWorkspaceCwd?: string;
112
107
  workspaceSelectionDisabled?: boolean;
113
108
  onSelectWorkspace?: (workspaceCwd: string | undefined) => void;
109
+ /** Host-aware variant; see WorkspaceSelector. */
110
+ onSelectHostedWorkspace?: (hostOrigin: string, workspaceCwd: string | undefined) => void;
114
111
  scratchWorkspaceSupported?: boolean;
115
112
  existingFolderWorkspaceSupported?: boolean;
116
113
  standaloneTargetSupported?: boolean;
@@ -44,13 +44,16 @@ export interface QueuedPrompt {
44
44
  isRemoving?: boolean;
45
45
  payloadCompleteness?: 'complete' | 'summary-only';
46
46
  }
47
- export declare function QueuedPromptDisplay({ prompts, t, canMutateMidTurn, canInsertMidTurn, onDelete, onInsert, onEdit, onImagePreview, onAttachmentPreview, }: {
47
+ export declare function QueuedPromptDisplay({ prompts, t, canMutateMidTurn, canInsertMidTurn, canSendMidTurnNow, onDelete, onInsert, onSendNow, onEdit, onImagePreview, onAttachmentPreview, }: {
48
48
  prompts: readonly QueuedPrompt[];
49
49
  t: ReturnType<typeof getTranslator>;
50
50
  canMutateMidTurn?: boolean;
51
51
  canInsertMidTurn?: boolean;
52
+ /** The daemon can deliver queued mid-turn messages on request. */
53
+ canSendMidTurnNow?: boolean;
52
54
  onDelete: (id: number) => void;
53
55
  onInsert: (id: number) => void;
56
+ onSendNow?: (id: number) => void;
54
57
  onEdit: (id: number) => void;
55
58
  onImagePreview?: (src: string, alt?: string) => void;
56
59
  onAttachmentPreview?: (file: AttachmentPreviewRequest) => void;
@@ -4,6 +4,8 @@ export interface WorkspaceSelectorOption {
4
4
  label: string;
5
5
  primary: boolean;
6
6
  trusted: boolean;
7
+ /** Daemon host this workspace lives on; defaults to the page origin. */
8
+ hostOrigin?: string;
7
9
  }
8
10
  interface WorkspaceSelectorProps {
9
11
  workspaces: WorkspaceSelectorOption[];
@@ -17,6 +19,12 @@ interface WorkspaceSelectorProps {
17
19
  selectedStandalone?: boolean;
18
20
  className?: string;
19
21
  onSelectWorkspace: (cwd: string | undefined) => void;
22
+ /**
23
+ * Host-aware selection for multi-daemon pages. When provided it fires
24
+ * INSTEAD of `onSelectWorkspace`, with the option's host (page origin when
25
+ * unset); `undefined` cwd keeps marking the host's primary workspace.
26
+ */
27
+ onSelectHostedWorkspace?: (hostOrigin: string, cwd: string | undefined) => void;
20
28
  onSelectStandalone?: () => void;
21
29
  onCreateScratch: () => void;
22
30
  onOpenExistingFolder: () => void;
@@ -25,5 +33,5 @@ interface WorkspaceSelectorProps {
25
33
  * Composer workspace menu. Capability-gated creation actions and disabled
26
34
  * untrusted entries keep presentation aligned with daemon authorization.
27
35
  */
28
- export declare function WorkspaceSelector({ workspaces, selectedWorkspaceCwd, disabled, busy, scratchSupported, existingFolderSupported, standaloneSupported, selectedStandalone, className, onSelectWorkspace, onSelectStandalone, onCreateScratch, onOpenExistingFolder, }: WorkspaceSelectorProps): import("react/jsx-runtime").JSX.Element | null;
36
+ export declare function WorkspaceSelector({ workspaces, selectedWorkspaceCwd, disabled, busy, scratchSupported, existingFolderSupported, standaloneSupported, selectedStandalone, className, onSelectWorkspace, onSelectHostedWorkspace, onSelectStandalone, onCreateScratch, onOpenExistingFolder, }: WorkspaceSelectorProps): import("react/jsx-runtime").JSX.Element | null;
29
37
  export {};
@@ -17,6 +17,11 @@ interface AgentCreatePageProps {
17
17
  }[];
18
18
  /** Preselects the runtime, e.g. right after it joined. */
19
19
  initialHostId?: string;
20
+ /**
21
+ * Program ids this computer's daemon reported it can run. Absent (an older
22
+ * daemon) means Qwen Code only.
23
+ */
24
+ localPrograms?: readonly string[];
20
25
  onSaveWorkspaceAgent?: (input: {
21
26
  name: string;
22
27
  description?: string;
@@ -26,6 +31,7 @@ interface AgentCreatePageProps {
26
31
  maxConcurrentRuns: number;
27
32
  execution?: {
28
33
  mode: 'local';
34
+ provider?: AgentProgramView;
29
35
  } | {
30
36
  mode: 'managed-host';
31
37
  hostIds: string[];
@@ -33,5 +39,5 @@ interface AgentCreatePageProps {
33
39
  };
34
40
  }) => Promise<void>;
35
41
  }
36
- export declare function AgentCreatePage({ initialScope, agent, onCancel, onCreated, executionHosts, workspaceCwd, initialHostId, onSaveWorkspaceAgent, }: AgentCreatePageProps): import("react/jsx-runtime").JSX.Element;
42
+ export declare function AgentCreatePage({ initialScope, agent, onCancel, onCreated, executionHosts, workspaceCwd, initialHostId, localPrograms, onSaveWorkspaceAgent, }: AgentCreatePageProps): import("react/jsx-runtime").JSX.Element;
37
43
  export {};
@@ -1,13 +1,12 @@
1
1
  import type { EmbeddedManagerPage } from '../plugins/manager-page';
2
2
  interface AgentsManagerPageProps {
3
- initialAgentView?: 'agents' | 'tasks' | 'runtime' | 'new-agent';
3
+ initialAgentView?: 'agents' | 'squads' | 'runtime' | 'new-agent';
4
4
  onClose: () => void;
5
5
  embedded?: EmbeddedManagerPage;
6
6
  initialCreateScope?: 'workspace' | 'global' | null;
7
7
  workspaceCwd?: string;
8
- /** Opens an agent's own session in the shell's session view. */
9
- onOpenAgentSession?: (sessionId: string) => void;
10
- onOpenThreadChat?: (threadId: string, workspaceCwd: string) => void;
8
+ /** Puts `@name ` into the chat composer, from an agent card. */
9
+ onMentionAgent?: (name: string) => void;
11
10
  }
12
- export declare function AgentsManagerPage({ initialAgentView, onClose, embedded, initialCreateScope, workspaceCwd, onOpenAgentSession, onOpenThreadChat, }: AgentsManagerPageProps): import("react/jsx-runtime").JSX.Element;
11
+ export declare function AgentsManagerPage({ initialAgentView, onClose, embedded, initialCreateScope, workspaceCwd, onMentionAgent, }: AgentsManagerPageProps): import("react/jsx-runtime").JSX.Element;
13
12
  export {};
@@ -171,12 +171,6 @@ export type ArtifactPanelTab = (WebPreviewState & {
171
171
  kind: 'workflow';
172
172
  title: string;
173
173
  sessionId?: string;
174
- } | {
175
- id: string;
176
- kind: 'agent_activity';
177
- title: string;
178
- threadId: string;
179
- workspaceCwd: string;
180
174
  } | {
181
175
  id: 'turn_calls';
182
176
  kind: 'turn_calls';
@@ -245,7 +239,6 @@ interface ArtifactPanelProps {
245
239
  agentTraceLoading?: boolean;
246
240
  agentTraceError?: string;
247
241
  onOpenWorkflowAgent?: (task: EnvironmentAgentTask) => void;
248
- onOpenCollaborationSession?: (sessionId: string, workspaceCwd: string) => void;
249
242
  onError?: (error: unknown, fallback: string) => void;
250
243
  sessionWorkflowEnabled?: boolean;
251
244
  modelManagement?: WebShellModelManagementOptions;
@@ -270,5 +263,5 @@ interface ArtifactPanelProps {
270
263
  fullscreen?: boolean;
271
264
  onToggleFullscreen?: () => void;
272
265
  }
273
- export declare function ArtifactPanel({ contextUsageControls, artifacts, tabs, activeTabId, reviewChanges, selectedReviewPath, panelWidth, workspaceCwd, loading, restoring, error, onSelectTab, onSelectTurnCallsPrompt, onCloseTab, onOpenFilePreview, latestReviewAvailable, onOpenLatestReview, onOpenTerminal, onOpenTrajectory, trajectoryTabId, onOpenWebPreview, onWebPreviewChange, items, sideTaskAvailable, sideTasks, sideTasksLoading, onCreateSideTask, onOpenSideTask, onCreateSideTaskSession, onSideTaskCreated, onSideTaskTitleChange, onSideTaskInitialPromptRefused, onNestedRightPanelOpen, onNestedArtifactsChange, onOpenNestedSubagent, agentTasks, agentTraceLoading, agentTraceError, onOpenWorkflowAgent, onOpenCollaborationSession, onError, sessionWorkflowEnabled, modelManagement, workflow, onImageIngestionNotice, deferSubagentMount, onClose, variant, fullscreen, onToggleFullscreen, }: ArtifactPanelProps): import("react/jsx-runtime").JSX.Element;
266
+ export declare function ArtifactPanel({ contextUsageControls, artifacts, tabs, activeTabId, reviewChanges, selectedReviewPath, panelWidth, workspaceCwd, loading, restoring, error, onSelectTab, onSelectTurnCallsPrompt, onCloseTab, onOpenFilePreview, latestReviewAvailable, onOpenLatestReview, onOpenTerminal, onOpenTrajectory, trajectoryTabId, onOpenWebPreview, onWebPreviewChange, items, sideTaskAvailable, sideTasks, sideTasksLoading, onCreateSideTask, onOpenSideTask, onCreateSideTaskSession, onSideTaskCreated, onSideTaskTitleChange, onSideTaskInitialPromptRefused, onNestedRightPanelOpen, onNestedArtifactsChange, onOpenNestedSubagent, agentTasks, agentTraceLoading, agentTraceError, onOpenWorkflowAgent, onError, sessionWorkflowEnabled, modelManagement, workflow, onImageIngestionNotice, deferSubagentMount, onClose, variant, fullscreen, onToggleFullscreen, }: ArtifactPanelProps): import("react/jsx-runtime").JSX.Element;
274
267
  export {};
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Qwen Team
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { TrajectoryFilter } from '../../trajectory/filterTrajectory';
7
+ export declare function TrajectoryFilters({ value, onChange, onNavigate, onClear, count, position, truncatedCount, }: {
8
+ value: TrajectoryFilter;
9
+ onChange: (filter: TrajectoryFilter) => void;
10
+ onNavigate: (direction: 1 | -1, filter?: TrajectoryFilter) => void;
11
+ onClear: () => void;
12
+ count: number;
13
+ position: number;
14
+ truncatedCount: number;
15
+ }): import("react/jsx-runtime").JSX.Element;
@@ -4,13 +4,15 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import type { TrajectoryRow } from '../../trajectory/types';
7
- export declare function TrajectoryInspector({ row, title, stale, turnSelected, hiddenByRange, hiddenByCollapse, onReveal, onClearRange, onClose, }: {
7
+ export declare function TrajectoryInspector({ row, title, stale, turnSelected, hiddenByRange, hiddenByCollapse, hiddenByFilter, onClearFilter, onReveal, onClearRange, onClose, }: {
8
8
  row?: TrajectoryRow;
9
9
  title?: string;
10
10
  stale?: boolean;
11
11
  turnSelected?: boolean;
12
12
  hiddenByRange: boolean;
13
13
  hiddenByCollapse: boolean;
14
+ hiddenByFilter?: boolean;
15
+ onClearFilter?: () => void;
14
16
  onReveal: () => void;
15
17
  onClearRange: () => void;
16
18
  onClose: () => void;
@@ -30,6 +30,15 @@ export declare function readWorkspaceFileAsBlob(readFileBytes: (filePath: string
30
30
  }): Promise<Blob>;
31
31
  export declare function downloadWorkspaceFile(workspaceActions: Pick<DaemonWorkspaceActions, 'readFileBytes' | 'stat'>, workspacePath: string, mimeType?: string, isCancelled?: () => boolean): Promise<void>;
32
32
  export declare function getArtifactLocation(artifact: DaemonSessionArtifact): string;
33
+ /**
34
+ * Workspace files are shown by filename. Links and managed artifacts have no
35
+ * file, so they keep the stored title.
36
+ */
37
+ export declare function artifactDisplayName(artifact: Pick<DaemonSessionArtifact, 'title'> & {
38
+ workspacePath?: string;
39
+ }): string;
40
+ /** A backslash stays in the name, matching `path.posix.basename`. */
41
+ export declare function workspaceFileName(workspacePath: string | undefined): string | undefined;
33
42
  export declare function normalizePath(value: string | undefined): string;
34
43
  export declare function stripWorkspacePath(path: string, workspaceCwd?: string): string;
35
44
  export declare function isSamePath(left: string | undefined, right: string | undefined, workspaceCwd?: string): boolean;
@@ -0,0 +1,9 @@
1
+ import type { ManagedAgentSessionSummary } from './managed-agent-provider';
2
+ import type { useManagedCwdChange } from './use-managed-cwd-change';
3
+ export declare function ManagedSessionCwdControl({ summary, supported, cwd, disabledReason, onSubmit, }: {
4
+ summary: ManagedAgentSessionSummary;
5
+ supported: boolean;
6
+ cwd: ReturnType<typeof useManagedCwdChange>;
7
+ disabledReason?: string;
8
+ onSubmit: (path: string, revision: number) => Promise<boolean | void>;
9
+ }): import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,15 @@
1
+ import type { ManagedToolResultReader } from './managed-tool-result-types';
2
+ import type { useManagedTasks } from './use-managed-tasks';
3
+ import type { ManagedTaskCancelState, useManagedTaskCancel } from './use-managed-task-cancel';
4
+ export declare function taskCancelMessage(state: ManagedTaskCancelState): string;
5
+ export declare function ManagedTaskPanel({ wide, tasks, cancel, canCancel, reader, clientId, sessionId, onClose, restoreFocus, }: {
6
+ wide: boolean;
7
+ tasks: ReturnType<typeof useManagedTasks>;
8
+ cancel: ReturnType<typeof useManagedTaskCancel>;
9
+ canCancel: boolean;
10
+ reader?: ManagedToolResultReader;
11
+ clientId: string;
12
+ sessionId: string;
13
+ onClose: () => void;
14
+ restoreFocus: () => void;
15
+ }): import("react/jsx-runtime").JSX.Element;
@@ -1,4 +1,4 @@
1
- import type { ManagedToolResultReader } from './managed-tool-result-types';
1
+ import type { ManagedArtifact, ManagedToolResultReader } from './managed-tool-result-types';
2
2
  export declare const MANAGED_OUTPUT_PAGE_BYTES: number;
3
3
  export declare function ManagedToolResultPanel({ reader, sessionId, clientId, itemId, onClose, }: {
4
4
  reader: ManagedToolResultReader;
@@ -7,3 +7,8 @@ export declare function ManagedToolResultPanel({ reader, sessionId, clientId, it
7
7
  itemId?: string;
8
8
  onClose: () => void;
9
9
  }): import("react/jsx-runtime").JSX.Element;
10
+ export declare function ManagedArtifactContent({ artifact, reader, clientId, }: {
11
+ artifact: ManagedArtifact;
12
+ reader: ManagedToolResultReader;
13
+ clientId: string;
14
+ }): import("react/jsx-runtime").JSX.Element;