zidane-ui 9.0.4 → 9.1.3
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 +3 -1
- package/dist/adapters/extension-modules.d.ts +147 -0
- package/dist/adapters/extension-modules.js +244 -0
- package/dist/adapters/index.d.ts +3 -1
- package/dist/adapters/index.js +3 -1
- package/dist/adapters/live.d.ts +6 -0
- package/dist/adapters/live.js +33 -3
- package/dist/adapters/server-composer-host.js +20 -37
- package/dist/adapters/server-extensions-host.d.ts +113 -0
- package/dist/adapters/server-extensions-host.js +829 -0
- package/dist/adapters/server-host.js +28 -6
- package/dist/adapters/server-machines-host.js +1 -1
- package/dist/adapters/server-settings-host.js +1 -1
- package/dist/adapters/server-settings-sections.js +36 -13
- package/dist/adapters/server-transcript-members.d.ts +1 -1
- package/dist/adapters/server-transcript-members.js +19 -1
- package/dist/app/AppHostProvider.d.ts +4 -1
- package/dist/app/AppHostProvider.js +11 -4
- package/dist/app/ModalProvider.d.ts +9 -3
- package/dist/app/ModalProvider.js +45 -25
- package/dist/app/headless/app-host.d.ts +3 -0
- package/dist/appearance/AppearanceProvider.d.ts +11 -4
- package/dist/appearance/AppearanceProvider.js +18 -6
- package/dist/appearance/headless/index.js +1 -1
- package/dist/appearance/headless/prefs.d.ts +2 -2
- package/dist/appearance/index.d.ts +1 -1
- package/dist/approvals/ApprovalBar.js +7 -1
- package/dist/approvals/FileEditApproval.js +7 -3
- package/dist/approvals/headless/index.js +2 -2
- package/dist/approvals/headless/labels.js +3 -3
- package/dist/chat/HostBadge.js +1 -1
- package/dist/chat/HostStatusDot.js +1 -1
- package/dist/chat/HostTranscript.d.ts +3 -1
- package/dist/chat/HostTranscript.js +5 -3
- package/dist/chat/RunEstimateChip.d.ts +53 -0
- package/dist/chat/RunEstimateChip.js +116 -0
- package/dist/chat/SessionFilterMenu.d.ts +77 -5
- package/dist/chat/SessionFilterMenu.js +86 -4
- package/dist/chat/SessionGroupHeader.d.ts +6 -2
- package/dist/chat/SessionGroupHeader.js +35 -3
- package/dist/chat/SessionHostHeader.js +1 -1
- package/dist/chat/SessionList.js +1 -1
- package/dist/chat/SessionListRow.d.ts +8 -1
- package/dist/chat/SessionListRow.js +5 -4
- package/dist/chat/Throbber.js +0 -3
- package/dist/chat/Transcript.d.ts +1 -1
- package/dist/chat/Transcript.js +112 -57
- package/dist/chat/composer/ComposerEditor.js +1 -1
- package/dist/chat/composer/ConversationBadges.js +18 -11
- package/dist/chat/composer/HostPicker.js +1 -1
- package/dist/chat/composer/ProjectMenu.d.ts +8 -1
- package/dist/chat/composer/ProjectMenu.js +11 -8
- package/dist/chat/composer/RetryPill.js +1 -1
- package/dist/chat/composer/SelectTurnHint.d.ts +19 -0
- package/dist/chat/composer/SelectTurnHint.js +28 -0
- package/dist/chat/composer/ServerScopeToggle.js +4 -1
- package/dist/chat/composer/composer-bus.d.ts +8 -1
- package/dist/chat/composer/composer-bus.js +10 -1
- package/dist/chat/composer/index.d.ts +4 -4
- package/dist/chat/composer/index.js +3 -3
- package/dist/chat/composer/use-composer-stores.js +1 -1
- package/dist/chat/composer/use-draft-target.d.ts +19 -1
- package/dist/chat/composer/use-draft-target.js +14 -1
- package/dist/chat/composer/use-run-meter.js +1 -1
- package/dist/chat/headless/block-runs.d.ts +57 -0
- package/dist/chat/headless/block-runs.js +123 -0
- package/dist/chat/headless/chip-labels.d.ts +1 -0
- package/dist/chat/headless/chip-labels.js +1 -0
- package/dist/chat/headless/composer/conversation-badges.d.ts +8 -6
- package/dist/chat/headless/composer/conversation-badges.js +26 -24
- package/dist/chat/headless/composer/host-chrome.d.ts +2 -27
- package/dist/chat/headless/composer/host.d.ts +1 -3
- package/dist/chat/headless/composer/index.d.ts +3 -4
- package/dist/chat/headless/composer/index.js +5 -6
- package/dist/chat/headless/composer/labels-chrome.d.ts +1 -1
- package/dist/chat/headless/composer/labels-chrome.js +1 -1
- package/dist/chat/headless/extension-sources.d.ts +17 -0
- package/dist/chat/headless/extension-sources.js +52 -0
- package/dist/chat/headless/fixture-transcript.d.ts +6 -1
- package/dist/chat/headless/fixture-transcript.js +49 -0
- package/dist/chat/headless/host.d.ts +8 -0
- package/dist/chat/headless/hosts.d.ts +2 -0
- package/dist/chat/headless/index.d.ts +10 -8
- package/dist/chat/headless/index.js +21 -18
- package/dist/chat/headless/labels.d.ts +79 -1
- package/dist/chat/headless/labels.js +80 -3
- package/dist/chat/headless/session-list.d.ts +65 -2
- package/dist/chat/headless/session-list.js +10 -2
- package/dist/chat/headless/sidebar/badges.d.ts +2 -0
- package/dist/chat/headless/sidebar/badges.js +20 -1
- package/dist/chat/headless/sidebar/directory.d.ts +46 -6
- package/dist/chat/headless/sidebar/directory.js +198 -22
- package/dist/chat/headless/sidebar/estimates.d.ts +55 -0
- package/dist/chat/headless/sidebar/estimates.js +91 -0
- package/dist/chat/headless/sidebar/index.d.ts +6 -4
- package/dist/chat/headless/sidebar/index.js +6 -3
- package/dist/chat/headless/sidebar/labels.d.ts +71 -1
- package/dist/chat/headless/sidebar/labels.js +17 -0
- package/dist/chat/headless/sidebar/query.d.ts +276 -0
- package/dist/chat/headless/sidebar/query.js +450 -0
- package/dist/chat/headless/sidebar/rows.d.ts +104 -13
- package/dist/chat/headless/sidebar/rows.js +189 -5
- package/dist/chat/headless/sidebar/types.d.ts +37 -4
- package/dist/chat/headless/sidebar/types.js +8 -0
- package/dist/chat/headless/sidebar/view.d.ts +25 -1
- package/dist/chat/headless/sidebar/view.js +56 -3
- package/dist/chat/headless/streams/live-events.js +2 -1
- package/dist/chat/headless/streams/session-streams.js +6 -0
- package/dist/chat/headless/transcript/batch.d.ts +21 -1
- package/dist/chat/headless/transcript/batch.js +55 -10
- package/dist/chat/headless/transcript/collapse.js +22 -3
- package/dist/chat/headless/transcript/fold-attachments.js +1 -1
- package/dist/chat/headless/transcript/fold.js +26 -10
- package/dist/chat/headless/transcript/rows.d.ts +15 -1
- package/dist/chat/headless/transcript-labels.d.ts +1 -0
- package/dist/chat/index.d.ts +14 -6
- package/dist/chat/index.js +40 -32
- package/dist/chat/rich-composer/RichComposer.js +32 -1
- package/dist/chat/rich-composer/badge-decorations.js +1 -1
- package/dist/chat/rich-composer/use-extension-composer.d.ts +32 -0
- package/dist/chat/rich-composer/use-extension-composer.js +46 -0
- package/dist/chat/sidebar/MainSessionRow.js +1 -1
- package/dist/chat/sidebar/ProjectIcon.d.ts +25 -6
- package/dist/chat/sidebar/ProjectIcon.js +79 -34
- package/dist/chat/sidebar/SessionSidebar.d.ts +34 -1
- package/dist/chat/sidebar/SessionSidebar.js +161 -25
- package/dist/chat/sidebar/SidebarDecoration.d.ts +38 -0
- package/dist/chat/sidebar/SidebarDecoration.js +61 -0
- package/dist/chat/sidebar/SidebarFilterMenu.d.ts +15 -2
- package/dist/chat/sidebar/SidebarFilterMenu.js +226 -8
- package/dist/chat/sidebar/SidebarFooter.d.ts +3 -1
- package/dist/chat/sidebar/SidebarFooter.js +17 -4
- package/dist/chat/sidebar/SidebarGroupHeader.d.ts +17 -4
- package/dist/chat/sidebar/SidebarGroupHeader.js +23 -4
- package/dist/chat/sidebar/SidebarRowView.d.ts +30 -0
- package/dist/chat/sidebar/SidebarRowView.js +117 -0
- package/dist/chat/sidebar/SidebarSessionRow.d.ts +4 -1
- package/dist/chat/sidebar/SidebarSessionRow.js +22 -4
- package/dist/chat/sidebar/SpaceSwitcher.d.ts +12 -5
- package/dist/chat/sidebar/SpaceSwitcher.js +142 -49
- package/dist/chat/sidebar/SpacesSection.js +4 -2
- package/dist/chat/sidebar/collapsed.d.ts +24 -0
- package/dist/chat/sidebar/collapsed.js +44 -0
- package/dist/chat/sidebar/index.d.ts +8 -4
- package/dist/chat/sidebar/index.js +6 -2
- package/dist/chat/sidebar/session-menu.d.ts +2 -0
- package/dist/chat/sidebar/session-menu.js +8 -2
- package/dist/chat/sidebar/sidebar-live.d.ts +12 -1
- package/dist/chat/sidebar/sidebar-live.js +57 -17
- package/dist/chat/sidebar/useAgentNames.d.ts +8 -0
- package/dist/chat/sidebar/useAgentNames.js +13 -0
- package/dist/chat/sidebar/useSaveViewAsSpace.d.ts +13 -0
- package/dist/chat/sidebar/useSaveViewAsSpace.js +44 -0
- package/dist/chat/sidebar/useSessionDirectoryView.d.ts +4 -1
- package/dist/chat/sidebar/useSessionDirectoryView.js +46 -12
- package/dist/chat/sidebar/useSidebarKeyboardNav.js +3 -1
- package/dist/chat/testing/composer.contract.d.ts +2 -6
- package/dist/chat/testing/composer.contract.js +2 -31
- package/dist/chat/testing/contract.d.ts +6 -1
- package/dist/chat/testing/contract.js +30 -3
- package/dist/chat/testing/fixture-composer-chrome.d.ts +2 -6
- package/dist/chat/testing/fixture-composer-chrome.js +1 -17
- package/dist/chat/transcript/AnsiText.d.ts +27 -0
- package/dist/chat/transcript/AnsiText.js +73 -0
- package/dist/chat/transcript/BadgeMenu.d.ts +2 -0
- package/dist/chat/transcript/BadgeMenu.js +22 -6
- package/dist/chat/transcript/CardMarkdown.js +17 -5
- package/dist/chat/transcript/ChipCard.js +6 -0
- package/dist/chat/transcript/ChipCards.js +2 -2
- package/dist/chat/transcript/CodemodeScript.d.ts +33 -0
- package/dist/chat/transcript/CodemodeScript.js +212 -0
- package/dist/chat/transcript/EditDiffBlock.js +4 -1
- package/dist/chat/transcript/FileChip.js +20 -7
- package/dist/chat/transcript/InlineChipText.js +1 -1
- package/dist/chat/transcript/InteractionToolBody.js +32 -13
- package/dist/chat/transcript/LiveOutput.d.ts +21 -0
- package/dist/chat/transcript/LiveOutput.js +42 -0
- package/dist/chat/transcript/MermaidDiagram.d.ts +22 -0
- package/dist/chat/transcript/MermaidDiagram.js +410 -0
- package/dist/chat/transcript/PromptEcho.js +5 -5
- package/dist/chat/transcript/ProseMarkdown.js +9 -6
- package/dist/chat/transcript/ReferenceText.js +7 -2
- package/dist/chat/transcript/SelectTurnHint.js +1 -1
- package/dist/chat/transcript/SubagentBlock.d.ts +4 -2
- package/dist/chat/transcript/SubagentBlock.js +5 -2
- package/dist/chat/transcript/TranscriptRow.js +28 -6
- package/dist/chat/transcript/TranscriptSearch.js +1 -1
- package/dist/chat/transcript/actions.d.ts +6 -0
- package/dist/chat/transcript/badges.js +5 -2
- package/dist/chat/transcript/extension-renderers.d.ts +36 -0
- package/dist/chat/transcript/extension-renderers.js +133 -0
- package/dist/chat/transcript/fold-worker.js +2 -2
- package/dist/chat/transcript/fold.js +6 -4
- package/dist/chat/transcript/index.d.ts +8 -2
- package/dist/chat/transcript/index.js +35 -29
- package/dist/chat/transcript/markdown-cache.js +16 -7
- package/dist/chat/transcript/markdown.d.ts +15 -1
- package/dist/chat/transcript/markdown.js +71 -6
- package/dist/chat/transcript/messages.js +3 -2
- package/dist/chat/transcript/notices.js +1 -1
- package/dist/chat/transcript/prompt.js +1 -1
- package/dist/chat/transcript/prose.js +1 -1
- package/dist/chat/transcript/recent-map.d.ts +20 -0
- package/dist/chat/transcript/recent-map.js +22 -0
- package/dist/chat/transcript/references.js +7 -3
- package/dist/chat/transcript/renderers.d.ts +11 -1
- package/dist/chat/transcript/renderers.js +14 -4
- package/dist/chat/transcript/script-input.d.ts +17 -0
- package/dist/chat/transcript/script-input.js +16 -0
- package/dist/chat/transcript/shell-block-scope.d.ts +29 -0
- package/dist/chat/transcript/shell-block-scope.js +18 -0
- package/dist/chat/transcript/shell-block.d.ts +27 -0
- package/dist/chat/transcript/shell-block.js +306 -0
- package/dist/chat/transcript/tool-batch.js +4 -9
- package/dist/chat/transcript/tool-details.js +7 -67
- package/dist/chat/transcript/tool-parts.d.ts +18 -6
- package/dist/chat/transcript/tool-parts.js +15 -5
- package/dist/chat/transcript/tool-payload.d.ts +21 -0
- package/dist/chat/transcript/tool-payload.js +80 -0
- package/dist/chat/transcript/tool-row.js +158 -96
- package/dist/chat/transcript/useTranscriptScroll.js +3 -2
- package/dist/chat/transcript/user-bash.js +3 -2
- package/dist/chat/transcript-options.d.ts +15 -0
- package/dist/chat/transcript-options.js +40 -0
- package/dist/code/CodeHighlightProvider.d.ts +3 -3
- package/dist/code/CodeHighlightProvider.js +4 -4
- package/dist/code/HighlightedCode.d.ts +7 -2
- package/dist/code/HighlightedCode.js +7 -71
- package/dist/code/code-themes.d.ts +13 -6
- package/dist/code/code-themes.js +385 -13
- package/dist/code/editor/CodeHover.d.ts +5 -4
- package/dist/code/editor/CodeHover.js +20 -16
- package/dist/code/editor/HighlightWorkers.js +2 -2
- package/dist/code/editor/edit-session.js +1 -0
- package/dist/code/editor/environment.d.ts +1 -1
- package/dist/code/editor/environment.js +1 -1
- package/dist/code/editor/index.d.ts +2 -2
- package/dist/code/editor/index.js +2 -2
- package/dist/code/editor/pierre-theme.d.ts +5 -5
- package/dist/code/editor/pierre-theme.js +6 -5
- package/dist/code/highlight-lines.d.ts +24 -0
- package/dist/code/highlight-lines.js +41 -0
- package/dist/code/highlight.worker.js +2 -14
- package/dist/code/highlighter.d.ts +24 -9
- package/dist/code/highlighter.js +1 -4
- package/dist/code/highlights.d.ts +12 -0
- package/dist/code/highlights.js +47 -0
- package/dist/code/mermaid-lexer.d.ts +26 -0
- package/dist/code/mermaid-lexer.js +303 -0
- package/dist/code/shiki-theme.d.ts +6 -6
- package/dist/code/shiki-theme.js +3 -3
- package/dist/code/use-highlighted-html.d.ts +5 -0
- package/dist/code/use-highlighted-html.js +75 -0
- package/dist/components/BrandMark.d.ts +6 -4
- package/dist/components/BrandMark.js +5 -2
- package/dist/components/CodeFrame.d.ts +5 -0
- package/dist/components/CodeFrame.js +27 -23
- package/dist/components/Form.js +1 -1
- package/dist/core.css +82 -11
- package/dist/dist/{index-Cx7GDZlz.d.ts → index-WlE93Q6d.d.ts} +255 -51
- package/dist/extensions/ExtensionComponent.d.ts +62 -0
- package/dist/extensions/ExtensionComponent.js +120 -0
- package/dist/extensions/ExtensionDialogHost.d.ts +31 -0
- package/dist/extensions/ExtensionDialogHost.js +439 -0
- package/dist/extensions/ExtensionRenderer.d.ts +30 -0
- package/dist/extensions/ExtensionRenderer.js +78 -0
- package/dist/extensions/ExtensionScreen.d.ts +24 -0
- package/dist/extensions/ExtensionScreen.js +120 -0
- package/dist/extensions/ExtensionSettingsPage.d.ts +19 -0
- package/dist/extensions/ExtensionSettingsPage.js +116 -0
- package/dist/extensions/ExtensionSettingsPages.d.ts +17 -0
- package/dist/extensions/ExtensionSettingsPages.js +33 -0
- package/dist/extensions/ExtensionSettingsSidebar.d.ts +63 -0
- package/dist/extensions/ExtensionSettingsSidebar.js +360 -0
- package/dist/extensions/ExtensionSlot.d.ts +44 -0
- package/dist/extensions/ExtensionSlot.js +161 -0
- package/dist/extensions/ExtensionWebview.d.ts +32 -0
- package/dist/extensions/ExtensionWebview.js +80 -0
- package/dist/extensions/ExtensionsProvider.d.ts +42 -0
- package/dist/extensions/ExtensionsProvider.js +104 -0
- package/dist/extensions/SettingsWireForm.d.ts +44 -0
- package/dist/extensions/SettingsWireForm.js +104 -0
- package/dist/extensions/headless/dialog-queue.d.ts +27 -0
- package/dist/extensions/headless/dialog-queue.js +68 -0
- package/dist/extensions/headless/effect-channel.d.ts +15 -0
- package/dist/extensions/headless/effect-channel.js +33 -0
- package/dist/extensions/headless/effect-router.d.ts +34 -0
- package/dist/extensions/headless/effect-router.js +50 -0
- package/dist/extensions/headless/fixture-host.d.ts +110 -0
- package/dist/extensions/headless/fixture-host.js +258 -0
- package/dist/extensions/headless/host.d.ts +433 -0
- package/dist/extensions/headless/host.js +27 -0
- package/dist/extensions/headless/index.d.ts +10 -0
- package/dist/extensions/headless/index.js +10 -0
- package/dist/extensions/headless/labels.d.ts +45 -0
- package/dist/extensions/headless/labels.js +49 -0
- package/dist/extensions/headless/links.d.ts +30 -0
- package/dist/extensions/headless/links.js +34 -0
- package/dist/extensions/headless/select.d.ts +120 -0
- package/dist/extensions/headless/select.js +191 -0
- package/dist/extensions/headless/webview-bridge.d.ts +71 -0
- package/dist/extensions/headless/webview-bridge.js +78 -0
- package/dist/extensions/headless/wire.d.ts +113 -0
- package/dist/extensions/headless/wire.js +38 -0
- package/dist/extensions/hooks.d.ts +88 -0
- package/dist/extensions/hooks.js +151 -0
- package/dist/extensions/index.d.ts +15 -0
- package/dist/extensions/index.js +15 -0
- package/dist/extensions/kit.d.ts +19 -0
- package/dist/extensions/kit.js +19 -0
- package/dist/extensions/links.d.ts +79 -0
- package/dist/extensions/links.js +94 -0
- package/dist/extensions/testing/contract.d.ts +80 -0
- package/dist/extensions/testing/contract.js +407 -0
- package/dist/extensions/testing/index.d.ts +2 -0
- package/dist/extensions/testing/index.js +1 -0
- package/dist/extensions/useExtensionsLabels.d.ts +6 -0
- package/dist/extensions/useExtensionsLabels.js +18 -0
- package/dist/files/DiffsTab.js +7 -19
- package/dist/files/EditorColumn.js +1 -1
- package/dist/files/EditorEnvironmentRoot.d.ts +15 -0
- package/dist/files/EditorEnvironmentRoot.js +55 -0
- package/dist/files/MediaDiff.js +1 -1
- package/dist/files/drafts-store.d.ts +10 -0
- package/dist/files/drafts-store.js +30 -1
- package/dist/files/headless/lsp-edits.d.ts +4 -1
- package/dist/files/headless/lsp-edits.js +14 -2
- package/dist/files/index.d.ts +2 -1
- package/dist/files/index.js +2 -1
- package/dist/files/session-patch.d.ts +11 -0
- package/dist/files/session-patch.js +44 -0
- package/dist/files/useEntryActions.js +1 -1
- package/dist/files/useLsp.js +5 -2
- package/dist/files/useOpenFiles.js +1 -1
- package/dist/git/BranchMenu.d.ts +1 -5
- package/dist/git/BranchMenu.js +23 -39
- package/dist/git/GitBar.d.ts +1 -1
- package/dist/git/GitBar.js +7 -1
- package/dist/git/ImportRepoDialog.d.ts +3 -1
- package/dist/git/ImportRepoDialog.js +8 -6
- package/dist/git/MoveSessionDialog.js +3 -1
- package/dist/git/headless/labels.d.ts +0 -2
- package/dist/git/headless/labels.js +0 -2
- package/dist/hooks/useDisplayPath.d.ts +40 -0
- package/dist/hooks/useDisplayPath.js +75 -0
- package/dist/index.d.ts +6 -4
- package/dist/index.js +4 -2
- package/dist/keybindings/KeyCommands.js +1 -1
- package/dist/keybindings/KeybindingsProvider.js +1 -1
- package/dist/keybindings/headless/index.js +2 -2
- package/dist/keybindings/headless/overrides.js +1 -1
- package/dist/keybindings/index.d.ts +2 -1
- package/dist/keybindings/index.js +2 -1
- package/dist/keybindings/press.d.ts +27 -0
- package/dist/keybindings/press.js +67 -0
- package/dist/machines/Banners.js +1 -1
- package/dist/machines/HostSyncPanel.js +1 -1
- package/dist/machines/HostsSection.js +1 -1
- package/dist/machines/SyncOutcomeBadge.js +1 -1
- package/dist/machines/headless/index.js +1 -1
- package/dist/machines/headless/labels.d.ts +1 -0
- package/dist/machines/headless/labels.js +1 -0
- package/dist/machines/headless/messages.d.ts +2 -1
- package/dist/machines/headless/messages.js +4 -3
- package/dist/machines/settings-section.d.ts +1 -1
- package/dist/onboarding/conversation.js +21 -3
- package/dist/onboarding/demos/features.d.ts +5 -1
- package/dist/onboarding/demos/features.js +80 -1
- package/dist/onboarding/headless/fixture-host.d.ts +2 -2
- package/dist/onboarding/headless/host.d.ts +2 -2
- package/dist/onboarding/headless/labels.d.ts +2 -0
- package/dist/onboarding/headless/labels.js +2 -0
- package/dist/onboarding/index.d.ts +4 -2
- package/dist/onboarding/index.js +3 -2
- package/dist/onboarding/marks.d.ts +29 -7
- package/dist/onboarding/marks.js +38 -12
- package/dist/onboarding/skills/SkillSourceBrowser.js +56 -247
- package/dist/onboarding/skills/parts.d.ts +31 -4
- package/dist/onboarding/skills/parts.js +8 -11
- package/dist/onboarding/sources/SourceBrowser.d.ts +87 -0
- package/dist/onboarding/sources/SourceBrowser.js +292 -0
- package/dist/onboarding/steps/ConnectStep.js +1 -1
- package/dist/onboarding/steps/ConnectorsStep.js +3 -3
- package/dist/onboarding/steps/ConversationStep.js +2 -1
- package/dist/onboarding/steps/ExtensionsStep.js +2 -2
- package/dist/onboarding/steps/ReadyStep.js +2 -2
- package/dist/onboarding/steps/connect/ProviderPanel.js +1 -1
- package/dist/palette/app-sources.js +1 -1
- package/dist/path.d.ts +24 -2
- package/dist/path.js +34 -2
- package/dist/session/ArtifactRowChips.js +11 -2
- package/dist/session/ArtifactsPanel.d.ts +2 -0
- package/dist/session/ArtifactsPanel.js +67 -27
- package/dist/session/ProjectHome.d.ts +82 -0
- package/dist/session/ProjectHome.js +518 -0
- package/dist/session/ProviderUsageProvider.d.ts +3 -1
- package/dist/session/ProviderUsageProvider.js +5 -2
- package/dist/session/QueueTab.js +1 -1
- package/dist/session/SessionCacheFacts.js +1 -1
- package/dist/session/SessionDetailsDialog.d.ts +1 -1
- package/dist/session/SessionDetailsDialog.js +5 -2
- package/dist/session/SessionHeader.d.ts +3 -1
- package/dist/session/SessionHeader.js +7 -1
- package/dist/session/SideChat.js +2 -2
- package/dist/session/TodosPanel.js +4 -1
- package/dist/session/UsagePanel.js +139 -17
- package/dist/session/WelcomeScreen.d.ts +1 -1
- package/dist/session/WelcomeScreen.js +46 -502
- package/dist/session/headless/fixture-host.js +43 -1
- package/dist/session/headless/home-layout.d.ts +137 -0
- package/dist/session/headless/home-layout.js +235 -0
- package/dist/session/headless/host.d.ts +3 -1
- package/dist/session/headless/index.d.ts +4 -3
- package/dist/session/headless/index.js +4 -3
- package/dist/session/headless/labels.d.ts +33 -36
- package/dist/session/headless/labels.js +48 -47
- package/dist/session/headless/usage-format.d.ts +2 -92
- package/dist/session/headless/usage-format.js +2 -181
- package/dist/session/headless/usage.d.ts +15 -2
- package/dist/session/headless/usage.js +15 -1
- package/dist/session/index.d.ts +3 -1
- package/dist/session/index.js +4 -2
- package/dist/session/modal-shell.d.ts +8 -0
- package/dist/session/modal-shell.js +18 -0
- package/dist/session/testing/contract.d.ts +1 -1
- package/dist/session/testing/contract.js +16 -0
- package/dist/session/testing/demo.js +28 -4
- package/dist/settings/SettingsNav.d.ts +3 -2
- package/dist/settings/SettingsNav.js +86 -13
- package/dist/settings/SettingsRowsPage.d.ts +2 -2
- package/dist/settings/SettingsShell.d.ts +3 -1
- package/dist/settings/SettingsShell.js +16 -9
- package/dist/settings/headless/catalog.js +20 -0
- package/dist/settings/headless/fixture-sections.d.ts +10 -1
- package/dist/settings/headless/fixture-sections.js +88 -3
- package/dist/settings/headless/host.d.ts +2 -0
- package/dist/settings/headless/index.d.ts +4 -4
- package/dist/settings/headless/index.js +1 -1
- package/dist/settings/headless/layout.d.ts +8 -4
- package/dist/settings/headless/layout.js +22 -16
- package/dist/settings/headless/registry.d.ts +14 -0
- package/dist/settings/headless/search.d.ts +1 -1
- package/dist/settings/headless/sections-host.d.ts +36 -3
- package/dist/settings/index.d.ts +5 -3
- package/dist/settings/index.js +8 -6
- package/dist/settings/sections/appearance/AppearanceSection.js +4 -4
- package/dist/settings/sections/claude-import/ClaudeImportDialog.js +1 -1
- package/dist/settings/sections/editor/EditorSection.js +1 -1
- package/dist/settings/sections/environments/EnvironmentsSection.js +1 -1
- package/dist/settings/sections/extensions/ChangeOriginDialog.d.ts +48 -0
- package/dist/settings/sections/extensions/ChangeOriginDialog.js +181 -0
- package/dist/settings/sections/extensions/CreateExtensionDialog.js +5 -2
- package/dist/settings/sections/extensions/ExtensionConfigRows.d.ts +76 -0
- package/dist/settings/sections/extensions/ExtensionConfigRows.js +349 -0
- package/dist/settings/sections/extensions/ExtensionOptionsSection.d.ts +1 -4
- package/dist/settings/sections/extensions/ExtensionOptionsSection.js +23 -286
- package/dist/settings/sections/extensions/ExtensionPicksBar.d.ts +46 -0
- package/dist/settings/sections/extensions/ExtensionPicksBar.js +102 -0
- package/dist/settings/sections/extensions/ExtensionSourceBrowser.d.ts +50 -0
- package/dist/settings/sections/extensions/ExtensionSourceBrowser.js +164 -0
- package/dist/settings/sections/extensions/ExtensionsSection.d.ts +6 -2
- package/dist/settings/sections/extensions/ExtensionsSection.js +233 -42
- package/dist/settings/sections/extensions/labels.d.ts +26 -5
- package/dist/settings/sections/extensions/labels.js +28 -3
- package/dist/settings/sections/extensions/options-labels.d.ts +2 -0
- package/dist/settings/sections/extensions/options-labels.js +2 -0
- package/dist/settings/sections/host-catalog/HostCatalogSection.js +104 -30
- package/dist/settings/sections/host-catalog/labels.js +4 -2
- package/dist/settings/sections/index.d.ts +5 -3
- package/dist/settings/sections/index.js +8 -6
- package/dist/settings/sections/instructions/InstructionsSection.js +7 -4
- package/dist/settings/sections/mcp/McpSection.js +1 -1
- package/dist/settings/sections/mcp/McpServerRow.js +3 -2
- package/dist/settings/sections/models/AgentDefaults.js +1 -1
- package/dist/settings/sections/models/ModelPickField.js +1 -1
- package/dist/settings/sections/models/ModelRows.js +3 -3
- package/dist/settings/sections/plugins/PluginsSection.js +3 -1
- package/dist/settings/sections/providers/ProvidersSection.js +3 -3
- package/dist/settings/sections/providers/ServerProvidersSection.js +2 -2
- package/dist/settings/sections/providers/ServerSignIn.js +3 -3
- package/dist/settings/sections/shared/catalog.d.ts +6 -1
- package/dist/settings/sections/shared/catalog.js +28 -22
- package/dist/settings/sections/skills/SkillList.js +2 -2
- package/dist/settings/sections/skills/SkillsSection.js +1 -1
- package/dist/styles.css +526 -21
- package/dist/terminal/HostTerminalSurface.js +18 -8
- package/dist/terminal/TerminalProvider.d.ts +3 -1
- package/dist/terminal/TerminalProvider.js +5 -1
- package/dist/terminal/headless/store.d.ts +17 -0
- package/dist/terminal/headless/store.js +31 -0
- package/dist/terminal/index.d.ts +2 -2
- package/dist/terminal/index.js +2 -2
- package/dist/theme/runtime-icons.d.ts +50 -0
- package/dist/theme/runtime-icons.js +95 -0
- package/dist/workspace/PanelContentView.d.ts +33 -4
- package/dist/workspace/PanelContentView.js +192 -58
- package/dist/workspace/PanelCorner.d.ts +35 -0
- package/dist/workspace/PanelCorner.js +68 -0
- package/dist/workspace/PanelGroups.d.ts +7 -2
- package/dist/workspace/PanelGroups.js +7 -3
- package/dist/workspace/PanelHome.d.ts +19 -0
- package/dist/workspace/PanelHome.js +74 -0
- package/dist/workspace/PanelItems.d.ts +28 -0
- package/dist/workspace/PanelItems.js +330 -0
- package/dist/workspace/PanelStrip.d.ts +5 -1
- package/dist/workspace/PanelStrip.js +6 -4
- package/dist/workspace/SidePanel.d.ts +9 -3
- package/dist/workspace/SidePanel.js +47 -10
- package/dist/workspace/TabParking.d.ts +2 -0
- package/dist/workspace/TabParking.js +8 -2
- package/dist/workspace/WorkspaceProvider.d.ts +1 -1
- package/dist/workspace/WorkspaceProvider.js +10 -6
- package/dist/workspace/extension-tabs.d.ts +36 -0
- package/dist/workspace/extension-tabs.js +175 -0
- package/dist/workspace/headless/host.d.ts +6 -2
- package/dist/workspace/headless/index.js +1 -1
- package/dist/workspace/headless/labels.d.ts +7 -0
- package/dist/workspace/headless/labels.js +14 -0
- package/dist/workspace/headless/view.d.ts +5 -0
- package/dist/workspace/index.d.ts +3 -2
- package/dist/workspace/index.js +3 -2
- package/package.json +37 -9
- package/src/styles/components.css +24 -8
- package/src/styles/motion.css +35 -0
- package/src/styles/primitives.css +5 -2
- package/src/styles/rich-composer.css +7 -2
- package/src/styles/sidebar.css +24 -0
- package/src/styles/transcript.css +329 -0
- package/src/styles/workspace.css +58 -0
- package/dist/chat/composer/use-hud.d.ts +0 -16
- package/dist/chat/composer/use-hud.js +0 -36
- package/dist/chat/headless/composer/hud.d.ts +0 -25
- package/dist/chat/headless/composer/hud.js +0 -66
- package/src/adapters/browser-appearance-host.ts +0 -51
- package/src/adapters/browser-keybindings-host.ts +0 -48
- package/src/adapters/browser-workspace-host.ts +0 -92
- package/src/adapters/closable-client.ts +0 -34
- package/src/adapters/index.ts +0 -32
- package/src/adapters/live-events.ts +0 -6
- package/src/adapters/live.ts +0 -230
- package/src/adapters/run-host.ts +0 -238
- package/src/adapters/server-approvals-host.ts +0 -102
- package/src/adapters/server-client.ts +0 -15
- package/src/adapters/server-composer-host.ts +0 -474
- package/src/adapters/server-files-host.ts +0 -287
- package/src/adapters/server-git-host.ts +0 -289
- package/src/adapters/server-host.ts +0 -459
- package/src/adapters/server-machines-host.ts +0 -283
- package/src/adapters/server-oauth-flow.ts +0 -133
- package/src/adapters/server-onboarding-host.ts +0 -363
- package/src/adapters/server-palette-host.ts +0 -134
- package/src/adapters/server-session-host.ts +0 -241
- package/src/adapters/server-settings-accounts.ts +0 -212
- package/src/adapters/server-settings-host.ts +0 -120
- package/src/adapters/server-settings-models.ts +0 -46
- package/src/adapters/server-settings-performance.ts +0 -58
- package/src/adapters/server-settings-sections.ts +0 -184
- package/src/adapters/server-sidebar-host.ts +0 -59
- package/src/adapters/server-terminal-host.ts +0 -124
- package/src/adapters/server-transcript-members.ts +0 -131
- package/src/adapters/sse-host.ts +0 -264
- package/src/adapters/sse-parser.ts +0 -82
- package/src/adapters/sse-protocol.ts +0 -118
- package/src/adapters/stream-pacer.ts +0 -122
- package/src/adapters/worker-host.ts +0 -192
- package/src/adapters/worker-protocol.ts +0 -97
- package/src/app/AppHostProvider.tsx +0 -122
- package/src/app/ModalProvider.tsx +0 -711
- package/src/app/headless/app-host.ts +0 -58
- package/src/app/headless/index.ts +0 -6
- package/src/app/headless/resource.ts +0 -444
- package/src/app/index.ts +0 -9
- package/src/app/testing/index.ts +0 -90
- package/src/app/useConfirm.tsx +0 -65
- package/src/app/useResource.ts +0 -30
- package/src/appearance/AppearanceProvider.tsx +0 -359
- package/src/appearance/apply.ts +0 -69
- package/src/appearance/headless/fixture-host.ts +0 -111
- package/src/appearance/headless/fonts.ts +0 -224
- package/src/appearance/headless/host.ts +0 -65
- package/src/appearance/headless/index.ts +0 -12
- package/src/appearance/headless/prefs.ts +0 -252
- package/src/appearance/headless/storage.ts +0 -127
- package/src/appearance/headless/zoom-commands.ts +0 -21
- package/src/appearance/index.ts +0 -11
- package/src/appearance/testing/contract.ts +0 -210
- package/src/appearance/testing/index.ts +0 -6
- package/src/approvals/ApprovalBar.tsx +0 -227
- package/src/approvals/ApprovalConcern.tsx +0 -33
- package/src/approvals/ApprovalShell.tsx +0 -69
- package/src/approvals/ApprovalsProvider.tsx +0 -110
- package/src/approvals/FileEditApproval.tsx +0 -305
- package/src/approvals/HunkPreviews.tsx +0 -225
- package/src/approvals/SafelistPanel.tsx +0 -149
- package/src/approvals/headless/fixture-host.ts +0 -73
- package/src/approvals/headless/fixtures.ts +0 -86
- package/src/approvals/headless/heads.ts +0 -81
- package/src/approvals/headless/host.ts +0 -80
- package/src/approvals/headless/index.ts +0 -12
- package/src/approvals/headless/labels.ts +0 -67
- package/src/approvals/headless/pending.ts +0 -91
- package/src/approvals/headless/preview.ts +0 -94
- package/src/approvals/headless/safelist.ts +0 -63
- package/src/approvals/index.ts +0 -13
- package/src/approvals/key-scope.ts +0 -33
- package/src/approvals/testing/contract.ts +0 -230
- package/src/approvals/testing/index.ts +0 -7
- package/src/brands/marks.ts +0 -298
- package/src/chat/ChatProvider.tsx +0 -60
- package/src/chat/DaemonOrb.tsx +0 -107
- package/src/chat/HostBadge.tsx +0 -71
- package/src/chat/HostStatusDot.tsx +0 -53
- package/src/chat/HostTranscript.tsx +0 -101
- package/src/chat/PdfPreview.tsx +0 -65
- package/src/chat/SessionFilterMenu.tsx +0 -237
- package/src/chat/SessionGroupHeader.tsx +0 -136
- package/src/chat/SessionHostHeader.tsx +0 -66
- package/src/chat/SessionList.tsx +0 -413
- package/src/chat/SessionListRow.tsx +0 -279
- package/src/chat/SessionStreamsProvider.tsx +0 -253
- package/src/chat/StatusDot.tsx +0 -128
- package/src/chat/TextPreview.tsx +0 -121
- package/src/chat/Throbber.tsx +0 -277
- package/src/chat/Transcript.tsx +0 -461
- package/src/chat/composer/AgentPicker.tsx +0 -155
- package/src/chat/composer/AgentPickerDialog.tsx +0 -99
- package/src/chat/composer/ApprovalDock.tsx +0 -64
- package/src/chat/composer/ArchivedBanner.tsx +0 -44
- package/src/chat/composer/AttachmentTiles.tsx +0 -211
- package/src/chat/composer/Composer.tsx +0 -500
- package/src/chat/composer/ComposerBadges.tsx +0 -339
- package/src/chat/composer/ComposerControls.tsx +0 -243
- package/src/chat/composer/ComposerEditor.tsx +0 -101
- package/src/chat/composer/ComposerHostProvider.tsx +0 -46
- package/src/chat/composer/ComposerShell.tsx +0 -129
- package/src/chat/composer/ContextBreakdown.tsx +0 -382
- package/src/chat/composer/ContextOrb.tsx +0 -176
- package/src/chat/composer/ConversationBadges.tsx +0 -159
- package/src/chat/composer/DockCard.tsx +0 -126
- package/src/chat/composer/EffortPickerDialog.tsx +0 -184
- package/src/chat/composer/HostComposer.tsx +0 -135
- package/src/chat/composer/HostContextOrb.tsx +0 -94
- package/src/chat/composer/HostModelChainList.tsx +0 -102
- package/src/chat/composer/HostPicker.tsx +0 -97
- package/src/chat/composer/HostPickers.tsx +0 -320
- package/src/chat/composer/ImageModelList.tsx +0 -151
- package/src/chat/composer/ModelChainList.tsx +0 -442
- package/src/chat/composer/ModelChainParts.tsx +0 -247
- package/src/chat/composer/ModelChainRow.tsx +0 -191
- package/src/chat/composer/ModelChainRows.tsx +0 -223
- package/src/chat/composer/ModelChainTooltip.tsx +0 -121
- package/src/chat/composer/ModelFacts.tsx +0 -204
- package/src/chat/composer/ModelOptionsPicker.tsx +0 -257
- package/src/chat/composer/ModelPicker.tsx +0 -513
- package/src/chat/composer/ModelPickerDialog.tsx +0 -99
- package/src/chat/composer/ModelProviderPills.tsx +0 -141
- package/src/chat/composer/PickerPill.tsx +0 -41
- package/src/chat/composer/ProjectMenu.tsx +0 -170
- package/src/chat/composer/PromptHistoryProvider.tsx +0 -214
- package/src/chat/composer/RetryPill.tsx +0 -47
- package/src/chat/composer/RunStatusChip.tsx +0 -150
- package/src/chat/composer/ScopeToggle.tsx +0 -94
- package/src/chat/composer/SendButton.tsx +0 -89
- package/src/chat/composer/ServerScopeToggle.tsx +0 -179
- package/src/chat/composer/attachment-ingest.ts +0 -413
- package/src/chat/composer/attachments.tsx +0 -176
- package/src/chat/composer/badge-order.ts +0 -65
- package/src/chat/composer/composer-bus.ts +0 -307
- package/src/chat/composer/index.ts +0 -63
- package/src/chat/composer/load-composer-editor.ts +0 -25
- package/src/chat/composer/model-catalog.ts +0 -424
- package/src/chat/composer/model-list-layout.ts +0 -118
- package/src/chat/composer/prompt-history-nav.ts +0 -60
- package/src/chat/composer/scope-side.ts +0 -7
- package/src/chat/composer/suggestion-extension.ts +0 -113
- package/src/chat/composer/suggestions.tsx +0 -115
- package/src/chat/composer/use-agent-profiles.ts +0 -97
- package/src/chat/composer/use-cache-hints.ts +0 -93
- package/src/chat/composer/use-composer-stores.ts +0 -140
- package/src/chat/composer/use-draft-target.ts +0 -284
- package/src/chat/composer/use-hud.ts +0 -38
- package/src/chat/composer/use-new-session-defaults.ts +0 -201
- package/src/chat/composer/use-provider-ready-poll.ts +0 -35
- package/src/chat/composer/use-run-meter.ts +0 -140
- package/src/chat/composer/use-send-prompt.ts +0 -188
- package/src/chat/composer/use-session-meters.ts +0 -109
- package/src/chat/composer/use-sustained-work.ts +0 -74
- package/src/chat/composer/useAttachmentIngest.ts +0 -116
- package/src/chat/composer/useModelListSpy.ts +0 -19
- package/src/chat/headless/badge-refs.ts +0 -76
- package/src/chat/headless/chip-labels.ts +0 -39
- package/src/chat/headless/chip-settle.ts +0 -53
- package/src/chat/headless/chip-views.ts +0 -215
- package/src/chat/headless/composer/attachment-dedupe.ts +0 -50
- package/src/chat/headless/composer/commands.ts +0 -16
- package/src/chat/headless/composer/composer-sources.ts +0 -150
- package/src/chat/headless/composer/conversation-badges.ts +0 -222
- package/src/chat/headless/composer/draft-sync.ts +0 -199
- package/src/chat/headless/composer/editor-markdown.ts +0 -137
- package/src/chat/headless/composer/ghost-autocomplete.ts +0 -381
- package/src/chat/headless/composer/host-chrome.ts +0 -227
- package/src/chat/headless/composer/host.ts +0 -253
- package/src/chat/headless/composer/hud.ts +0 -101
- package/src/chat/headless/composer/index.ts +0 -18
- package/src/chat/headless/composer/labels-chrome.ts +0 -83
- package/src/chat/headless/composer/labels-editor.ts +0 -44
- package/src/chat/headless/composer/labels.ts +0 -18
- package/src/chat/headless/composer/live-cost.ts +0 -67
- package/src/chat/headless/composer/model-knobs.ts +0 -179
- package/src/chat/headless/composer/model-names.ts +0 -145
- package/src/chat/headless/composer/model-picker-prefs.ts +0 -90
- package/src/chat/headless/composer/models.ts +0 -86
- package/src/chat/headless/composer/new-session-defaults.ts +0 -68
- package/src/chat/headless/composer/prompt-suggestions.ts +0 -72
- package/src/chat/headless/composer/remember-model-pick.ts +0 -132
- package/src/chat/headless/composer/run-meter.ts +0 -228
- package/src/chat/headless/composer-modes.ts +0 -170
- package/src/chat/headless/draft-scope.ts +0 -136
- package/src/chat/headless/draft-target.ts +0 -87
- package/src/chat/headless/file-chip.ts +0 -175
- package/src/chat/headless/fixture-host.ts +0 -294
- package/src/chat/headless/fixture-transcript.ts +0 -125
- package/src/chat/headless/fixtures/demo-transcript-all-kinds.ts +0 -233
- package/src/chat/headless/fixtures/demo-transcript.ts +0 -244
- package/src/chat/headless/host.ts +0 -259
- package/src/chat/headless/hosts.ts +0 -53
- package/src/chat/headless/index.ts +0 -31
- package/src/chat/headless/labels.ts +0 -331
- package/src/chat/headless/markdown-chunks.ts +0 -134
- package/src/chat/headless/path-resolver.ts +0 -178
- package/src/chat/headless/prompt-origin.ts +0 -90
- package/src/chat/headless/reference-store.ts +0 -285
- package/src/chat/headless/send-flow.ts +0 -347
- package/src/chat/headless/session-list.ts +0 -390
- package/src/chat/headless/sidebar/activity.ts +0 -179
- package/src/chat/headless/sidebar/badges.ts +0 -163
- package/src/chat/headless/sidebar/compaction.ts +0 -98
- package/src/chat/headless/sidebar/directory.ts +0 -819
- package/src/chat/headless/sidebar/dot-state.ts +0 -36
- package/src/chat/headless/sidebar/environment.ts +0 -70
- package/src/chat/headless/sidebar/host.ts +0 -41
- package/src/chat/headless/sidebar/index.ts +0 -16
- package/src/chat/headless/sidebar/labels.ts +0 -140
- package/src/chat/headless/sidebar/notifications.ts +0 -61
- package/src/chat/headless/sidebar/pinned-projects.ts +0 -51
- package/src/chat/headless/sidebar/pinned-sessions.ts +0 -27
- package/src/chat/headless/sidebar/project-icons.ts +0 -116
- package/src/chat/headless/sidebar/rows.ts +0 -229
- package/src/chat/headless/sidebar/types.ts +0 -61
- package/src/chat/headless/sidebar/view.ts +0 -296
- package/src/chat/headless/site-icons.ts +0 -51
- package/src/chat/headless/smooth-stream.ts +0 -76
- package/src/chat/headless/store.ts +0 -62
- package/src/chat/headless/streams/actions.ts +0 -85
- package/src/chat/headless/streams/index.ts +0 -25
- package/src/chat/headless/streams/live-events.ts +0 -124
- package/src/chat/headless/streams/merge.ts +0 -60
- package/src/chat/headless/streams/pacer.ts +0 -189
- package/src/chat/headless/streams/prompt-previews.ts +0 -64
- package/src/chat/headless/streams/scheduler.ts +0 -36
- package/src/chat/headless/streams/selectors.ts +0 -76
- package/src/chat/headless/streams/session-streams.ts +0 -394
- package/src/chat/headless/streams/store.ts +0 -1107
- package/src/chat/headless/streams/transcript.ts +0 -41
- package/src/chat/headless/streams/types.ts +0 -84
- package/src/chat/headless/transcript/batch.ts +0 -429
- package/src/chat/headless/transcript/collapse.ts +0 -780
- package/src/chat/headless/transcript/fold-actions.ts +0 -269
- package/src/chat/headless/transcript/fold-attachments.ts +0 -78
- package/src/chat/headless/transcript/fold.ts +0 -382
- package/src/chat/headless/transcript/index.ts +0 -41
- package/src/chat/headless/transcript/nesting.ts +0 -73
- package/src/chat/headless/transcript/pairing.ts +0 -124
- package/src/chat/headless/transcript/rows.ts +0 -367
- package/src/chat/headless/transcript/run-failures.ts +0 -72
- package/src/chat/headless/transcript/select-stops.ts +0 -151
- package/src/chat/headless/transcript/tool-media.ts +0 -42
- package/src/chat/headless/transcript-host.ts +0 -180
- package/src/chat/headless/transcript-labels.ts +0 -12
- package/src/chat/headless/turn-labels.ts +0 -28
- package/src/chat/headless/turn-prompt.ts +0 -32
- package/src/chat/index.ts +0 -29
- package/src/chat/interactions/HostInteractions.tsx +0 -76
- package/src/chat/interactions/InboxPanel.tsx +0 -226
- package/src/chat/interactions/InteractionCard.tsx +0 -111
- package/src/chat/interactions/PlanCard.tsx +0 -186
- package/src/chat/interactions/QuestionField.tsx +0 -336
- package/src/chat/interactions/QuestionForm.tsx +0 -283
- package/src/chat/interactions/card-ui.tsx +0 -86
- package/src/chat/interactions/hooks.ts +0 -49
- package/src/chat/interactions/index.ts +0 -8
- package/src/chat/provider-color.ts +0 -71
- package/src/chat/rich-composer/MentionList.tsx +0 -238
- package/src/chat/rich-composer/RichComposer.tsx +0 -1036
- package/src/chat/rich-composer/badge-decorations.ts +0 -157
- package/src/chat/rich-composer/composer-controls.tsx +0 -102
- package/src/chat/rich-composer/composer-extensions.ts +0 -388
- package/src/chat/rich-composer/composer-keys.ts +0 -416
- package/src/chat/rich-composer/ghost-plugin.ts +0 -89
- package/src/chat/rich-composer/index.ts +0 -3
- package/src/chat/rich-composer/mention-popover.ts +0 -336
- package/src/chat/rich-composer/slash-completion.ts +0 -143
- package/src/chat/rich-composer/use-composer-bus.ts +0 -57
- package/src/chat/rich-composer/use-composer-editor.ts +0 -216
- package/src/chat/rich-composer/use-composer-sources.ts +0 -90
- package/src/chat/rich-composer/use-draft-mirror.ts +0 -398
- package/src/chat/rich-composer/use-editor-handover.ts +0 -45
- package/src/chat/rich-composer/use-ghost-lifecycle.ts +0 -265
- package/src/chat/rich-composer/use-prompt-ghost.ts +0 -90
- package/src/chat/rich-composer/use-staged-attachments.ts +0 -65
- package/src/chat/sidebar/MainSessionRow.tsx +0 -102
- package/src/chat/sidebar/ProjectIcon.tsx +0 -336
- package/src/chat/sidebar/RowChips.tsx +0 -98
- package/src/chat/sidebar/SessionSidebar.tsx +0 -805
- package/src/chat/sidebar/SidebarFilterMenu.tsx +0 -41
- package/src/chat/sidebar/SidebarFooter.tsx +0 -234
- package/src/chat/sidebar/SidebarFrame.tsx +0 -154
- package/src/chat/sidebar/SidebarGroupHeader.tsx +0 -231
- package/src/chat/sidebar/SidebarHostProvider.tsx +0 -51
- package/src/chat/sidebar/SidebarSearchRow.tsx +0 -66
- package/src/chat/sidebar/SidebarSessionRow.tsx +0 -293
- package/src/chat/sidebar/SidebarToggleButton.tsx +0 -48
- package/src/chat/sidebar/SpaceSwitcher.tsx +0 -232
- package/src/chat/sidebar/SpacesSection.tsx +0 -256
- package/src/chat/sidebar/index.ts +0 -92
- package/src/chat/sidebar/session-menu.ts +0 -437
- package/src/chat/sidebar/sidebar-focus-hold.ts +0 -56
- package/src/chat/sidebar/sidebar-live.tsx +0 -605
- package/src/chat/sidebar/use-main-session.ts +0 -32
- package/src/chat/sidebar/useCompactionProgress.ts +0 -24
- package/src/chat/sidebar/usePinnedProjects.ts +0 -36
- package/src/chat/sidebar/useSessionActivity.ts +0 -24
- package/src/chat/sidebar/useSessionBadges.ts +0 -26
- package/src/chat/sidebar/useSessionDirectoryView.ts +0 -86
- package/src/chat/sidebar/useSessionSearch.ts +0 -94
- package/src/chat/sidebar/useSidebarKeyboardNav.ts +0 -165
- package/src/chat/sidebar/useSidebarLabels.ts +0 -10
- package/src/chat/testing/composer.contract.ts +0 -532
- package/src/chat/testing/contract.ts +0 -634
- package/src/chat/testing/fixture-composer-chrome.ts +0 -178
- package/src/chat/testing/fixture-composer-host.ts +0 -147
- package/src/chat/testing/fixture-sidebar-host.ts +0 -99
- package/src/chat/testing/index.ts +0 -12
- package/src/chat/testing/sidebar.contract.ts +0 -196
- package/src/chat/transcript/BadgeMenu.tsx +0 -223
- package/src/chat/transcript/CardMarkdown.tsx +0 -92
- package/src/chat/transcript/ChipCard.tsx +0 -176
- package/src/chat/transcript/ChipCards.tsx +0 -100
- package/src/chat/transcript/DiffLines.tsx +0 -122
- package/src/chat/transcript/EarlierHistory.tsx +0 -136
- package/src/chat/transcript/EditDiffBlock.tsx +0 -171
- package/src/chat/transcript/FileChip.tsx +0 -350
- package/src/chat/transcript/ImageGenerationBlock.tsx +0 -239
- package/src/chat/transcript/InlineChipText.tsx +0 -57
- package/src/chat/transcript/InteractionToolBody.tsx +0 -193
- package/src/chat/transcript/LazyRow.tsx +0 -311
- package/src/chat/transcript/PromptEcho.tsx +0 -171
- package/src/chat/transcript/PromptOriginLabel.tsx +0 -44
- package/src/chat/transcript/ProseMarkdown.tsx +0 -165
- package/src/chat/transcript/ReferenceText.tsx +0 -193
- package/src/chat/transcript/SelectCursor.tsx +0 -118
- package/src/chat/transcript/SelectTurnHint.tsx +0 -81
- package/src/chat/transcript/SelectTurnProvider.tsx +0 -150
- package/src/chat/transcript/SubagentBlock.tsx +0 -218
- package/src/chat/transcript/TranscriptRow.tsx +0 -356
- package/src/chat/transcript/TranscriptSearch.tsx +0 -171
- package/src/chat/transcript/TurnMenu.tsx +0 -217
- package/src/chat/transcript/actions.tsx +0 -77
- package/src/chat/transcript/badges.tsx +0 -152
- package/src/chat/transcript/chip-details.ts +0 -169
- package/src/chat/transcript/chip-resolve.ts +0 -56
- package/src/chat/transcript/fold-attachments.tsx +0 -221
- package/src/chat/transcript/fold-status.tsx +0 -112
- package/src/chat/transcript/fold-worker.tsx +0 -160
- package/src/chat/transcript/fold.tsx +0 -520
- package/src/chat/transcript/frame.tsx +0 -326
- package/src/chat/transcript/index.ts +0 -65
- package/src/chat/transcript/markdown-cache.ts +0 -70
- package/src/chat/transcript/markdown-context.ts +0 -52
- package/src/chat/transcript/markdown.tsx +0 -282
- package/src/chat/transcript/messages.tsx +0 -168
- package/src/chat/transcript/notices.tsx +0 -508
- package/src/chat/transcript/prompt-lines.tsx +0 -55
- package/src/chat/transcript/prompt.tsx +0 -258
- package/src/chat/transcript/prose.tsx +0 -171
- package/src/chat/transcript/references.ts +0 -104
- package/src/chat/transcript/remark-references.ts +0 -157
- package/src/chat/transcript/remark-refs.ts +0 -176
- package/src/chat/transcript/renderer-slots.tsx +0 -35
- package/src/chat/transcript/renderers.tsx +0 -241
- package/src/chat/transcript/row-estimate.ts +0 -158
- package/src/chat/transcript/run-rows.tsx +0 -291
- package/src/chat/transcript/site-icons.ts +0 -27
- package/src/chat/transcript/thumbnails.ts +0 -146
- package/src/chat/transcript/tool-batch.tsx +0 -111
- package/src/chat/transcript/tool-details.tsx +0 -77
- package/src/chat/transcript/tool-media.tsx +0 -132
- package/src/chat/transcript/tool-parts.tsx +0 -358
- package/src/chat/transcript/tool-row.tsx +0 -489
- package/src/chat/transcript/turn-commands.ts +0 -101
- package/src/chat/transcript/use-transcript-rows.ts +0 -195
- package/src/chat/transcript/useComposerSearch.ts +0 -106
- package/src/chat/transcript/useSelectTurnKeys.ts +0 -204
- package/src/chat/transcript/useSettledReveal.ts +0 -57
- package/src/chat/transcript/useStickToBottom.ts +0 -600
- package/src/chat/transcript/useTranscriptFind.ts +0 -70
- package/src/chat/transcript/useTranscriptFindKey.ts +0 -52
- package/src/chat/transcript/useTranscriptScroll.ts +0 -162
- package/src/chat/transcript/useTranscriptSearch.tsx +0 -382
- package/src/chat/transcript/useTranscriptSelectionCopy.ts +0 -63
- package/src/chat/transcript/useWheelHoverPause.ts +0 -79
- package/src/chat/transcript/user-bash.tsx +0 -134
- package/src/chat/useChatLabels.ts +0 -14
- package/src/code/CodeHighlightProvider.tsx +0 -87
- package/src/code/HighlightedCode.tsx +0 -150
- package/src/code/code-themes.ts +0 -34
- package/src/code/editor/CodeCompletion.tsx +0 -719
- package/src/code/editor/CodeEditor.tsx +0 -480
- package/src/code/editor/CodeHover.tsx +0 -428
- package/src/code/editor/DiagnosticAnnotation.tsx +0 -73
- package/src/code/editor/DiagnosticsChip.tsx +0 -85
- package/src/code/editor/DiffView.tsx +0 -197
- package/src/code/editor/EditorColumn.tsx +0 -256
- package/src/code/editor/FileIcon.tsx +0 -89
- package/src/code/editor/FileTabPill.tsx +0 -101
- package/src/code/editor/FileTree.tsx +0 -414
- package/src/code/editor/FileView.tsx +0 -462
- package/src/code/editor/HighlightWorkers.tsx +0 -84
- package/src/code/editor/LanguageEditor.tsx +0 -210
- package/src/code/editor/_vendor/tree-icon-colors.ts +0 -72
- package/src/code/editor/diagnostics.ts +0 -140
- package/src/code/editor/edit-session.ts +0 -28
- package/src/code/editor/environment.tsx +0 -88
- package/src/code/editor/find/FindBar.tsx +0 -126
- package/src/code/editor/find/find-highlight.ts +0 -138
- package/src/code/editor/find/find-model.ts +0 -123
- package/src/code/editor/find/settle-scroll.ts +0 -77
- package/src/code/editor/find/useFind.ts +0 -203
- package/src/code/editor/fs-adapter.ts +0 -37
- package/src/code/editor/index.ts +0 -36
- package/src/code/editor/language.ts +0 -31
- package/src/code/editor/patch-parse.ts +0 -176
- package/src/code/editor/patch-parse.worker.ts +0 -12
- package/src/code/editor/pierre-theme.ts +0 -154
- package/src/code/editor/prime-diff.ts +0 -37
- package/src/code/editor/reveal.ts +0 -58
- package/src/code/editor/scroll-reach.ts +0 -28
- package/src/code/editor/useCodeDocument.ts +0 -226
- package/src/code/editor/useDefinition.ts +0 -159
- package/src/code/editor/useDetachCleanup.ts +0 -36
- package/src/code/editor/useFileDocument.ts +0 -87
- package/src/code/editor/useRevealLine.ts +0 -92
- package/src/code/editor/word-at.ts +0 -145
- package/src/code/highlight.worker.ts +0 -19
- package/src/code/highlighter.ts +0 -185
- package/src/code/shiki-theme.ts +0 -47
- package/src/components/BrandMark.tsx +0 -107
- package/src/components/Breadcrumb.tsx +0 -105
- package/src/components/BrowserChrome.tsx +0 -189
- package/src/components/BrowserSignIn.tsx +0 -210
- package/src/components/ChoiceCards.tsx +0 -170
- package/src/components/CodeFrame.tsx +0 -209
- package/src/components/ConfirmDialog.tsx +0 -119
- package/src/components/CopyButton.tsx +0 -85
- package/src/components/EditableTitle.tsx +0 -199
- package/src/components/ErrorBoundary.tsx +0 -208
- package/src/components/Form.tsx +0 -589
- package/src/components/Highlighted.tsx +0 -68
- package/src/components/HowItWorks.tsx +0 -123
- package/src/components/IconButton.tsx +0 -101
- package/src/components/IconToggle.tsx +0 -71
- package/src/components/Keycap.tsx +0 -334
- package/src/components/Lightbox.tsx +0 -257
- package/src/components/LoadError.tsx +0 -45
- package/src/components/MediaNav.tsx +0 -85
- package/src/components/Menu.tsx +0 -435
- package/src/components/Overlay.tsx +0 -327
- package/src/components/PanelEmpty.tsx +0 -80
- package/src/components/PanelRows.tsx +0 -107
- package/src/components/PreviewWindow.tsx +0 -53
- package/src/components/ReorderTabs.tsx +0 -103
- package/src/components/RowActionsMenu.tsx +0 -383
- package/src/components/SegmentSpinner.tsx +0 -88
- package/src/components/Segmented.tsx +0 -126
- package/src/components/StepFrame.tsx +0 -151
- package/src/components/Stepper.tsx +0 -157
- package/src/components/Surface.tsx +0 -191
- package/src/components/SwatchPicker.tsx +0 -147
- package/src/components/SwitchGlyph.tsx +0 -56
- package/src/components/TabPill.tsx +0 -188
- package/src/components/ThemeThumb.tsx +0 -52
- package/src/components/ToggleCard.tsx +0 -120
- package/src/components/Tooltip.tsx +0 -288
- package/src/components/ZoomableImage.tsx +0 -322
- package/src/components/button.ts +0 -120
- package/src/components/floating/FloatingSurface.tsx +0 -158
- package/src/components/floating/HoverCard.tsx +0 -143
- package/src/components/floating/Popover.tsx +0 -166
- package/src/components/floating/useAnchoredPosition.ts +0 -186
- package/src/components/floating/usePopover.ts +0 -158
- package/src/components/image-clipboard.ts +0 -70
- package/src/components/keyboard-layout.ts +0 -115
- package/src/components/palette/PaletteList.tsx +0 -432
- package/src/components/palette/PalettePanel.tsx +0 -338
- package/src/components/palette/palette-layout.ts +0 -86
- package/src/components/report-error.ts +0 -142
- package/src/components/zoom.ts +0 -133
- package/src/files/CodeViewer.tsx +0 -289
- package/src/files/DiffFileViewer.tsx +0 -143
- package/src/files/DiffsTab.tsx +0 -590
- package/src/files/EditorColumn.tsx +0 -453
- package/src/files/FilesDiagnosticsChip.tsx +0 -32
- package/src/files/FilesProvider.tsx +0 -58
- package/src/files/FilesTab.tsx +0 -441
- package/src/files/MediaDiff.tsx +0 -61
- package/src/files/MediaView.tsx +0 -170
- package/src/files/ReviewDraft.tsx +0 -88
- package/src/files/ReviewableDiff.tsx +0 -72
- package/src/files/SearchPanel.tsx +0 -325
- package/src/files/TreeColumn.tsx +0 -229
- package/src/files/code-excerpt.ts +0 -265
- package/src/files/code-menu.ts +0 -53
- package/src/files/drafts-store.ts +0 -159
- package/src/files/file-actions.ts +0 -152
- package/src/files/headless/editor-prefs.ts +0 -230
- package/src/files/headless/entries.ts +0 -172
- package/src/files/headless/fixture-host.ts +0 -260
- package/src/files/headless/host.ts +0 -387
- package/src/files/headless/index.ts +0 -14
- package/src/files/headless/labels.ts +0 -123
- package/src/files/headless/lsp-edits.ts +0 -40
- package/src/files/headless/media.ts +0 -57
- package/src/files/headless/name-match.ts +0 -38
- package/src/files/headless/search.ts +0 -23
- package/src/files/headless/view.ts +0 -114
- package/src/files/headless/workspace-diff.ts +0 -82
- package/src/files/index.ts +0 -24
- package/src/files/lazy-tabs.tsx +0 -41
- package/src/files/tab-hooks.ts +0 -37
- package/src/files/testing/contract.ts +0 -279
- package/src/files/testing/demo.ts +0 -36
- package/src/files/testing/index.ts +0 -7
- package/src/files/useCodeReview.tsx +0 -177
- package/src/files/useDiagnostics.ts +0 -59
- package/src/files/useDiagnosticsRun.ts +0 -86
- package/src/files/useEntryActions.ts +0 -280
- package/src/files/useFilesDiagnostics.ts +0 -51
- package/src/files/useFilesLabels.ts +0 -14
- package/src/files/useFolderChanges.ts +0 -38
- package/src/files/useLsp.ts +0 -178
- package/src/files/useOpenFiles.ts +0 -402
- package/src/files/useWorkspace.ts +0 -148
- package/src/files/working-tree-diff.ts +0 -142
- package/src/git/BranchMenu.tsx +0 -981
- package/src/git/GitBar.tsx +0 -286
- package/src/git/GitProvider.tsx +0 -50
- package/src/git/ImportRepoDialog.tsx +0 -381
- package/src/git/MoveSessionDialog.tsx +0 -394
- package/src/git/RemoteFolderPicker.tsx +0 -475
- package/src/git/SyncChip.tsx +0 -275
- package/src/git/WherePicker.tsx +0 -358
- package/src/git/headless/environment.ts +0 -132
- package/src/git/headless/host.ts +0 -353
- package/src/git/headless/index.ts +0 -14
- package/src/git/headless/labels.ts +0 -230
- package/src/git/headless/move.ts +0 -101
- package/src/git/headless/remote-clone.ts +0 -44
- package/src/git/headless/status-reads.ts +0 -77
- package/src/git/headless/switcher.ts +0 -215
- package/src/git/headless/sync.ts +0 -71
- package/src/git/index.ts +0 -17
- package/src/git/testing/contract.ts +0 -551
- package/src/git/testing/index.ts +0 -537
- package/src/git/useEnvironmentChoices.ts +0 -50
- package/src/git/useGitBar.ts +0 -180
- package/src/hooks/keyed-store.ts +0 -65
- package/src/hooks/useHydrated.ts +0 -16
- package/src/hooks/useMinuteTick.ts +0 -49
- package/src/hooks/useNearViewport.ts +0 -111
- package/src/hooks/usePersistedState.ts +0 -98
- package/src/hooks/useResizeDrag.ts +0 -240
- package/src/hooks/useTabDrag.ts +0 -88
- package/src/index.ts +0 -118
- package/src/keybindings/KeyCommands.tsx +0 -123
- package/src/keybindings/KeyHint.tsx +0 -78
- package/src/keybindings/KeybindingsProvider.tsx +0 -231
- package/src/keybindings/headless/catalog.ts +0 -360
- package/src/keybindings/headless/commands.ts +0 -77
- package/src/keybindings/headless/fixture-host.ts +0 -51
- package/src/keybindings/headless/host.ts +0 -29
- package/src/keybindings/headless/index.ts +0 -13
- package/src/keybindings/headless/key-scope.ts +0 -91
- package/src/keybindings/headless/labels.ts +0 -14
- package/src/keybindings/headless/overrides.ts +0 -64
- package/src/keybindings/index.ts +0 -14
- package/src/keybindings/load-once.ts +0 -11
- package/src/keybindings/match.ts +0 -48
- package/src/keybindings/testing/contract.ts +0 -139
- package/src/keybindings/testing/index.ts +0 -6
- package/src/keybindings/useHelpKey.ts +0 -35
- package/src/keybindings/useKeybindingsLabels.ts +0 -14
- package/src/labels.tsx +0 -175
- package/src/machines/AddServerForm.tsx +0 -151
- package/src/machines/Banners.tsx +0 -172
- package/src/machines/DaemonMenu.tsx +0 -413
- package/src/machines/HostCapabilities.tsx +0 -245
- package/src/machines/HostSignIn.tsx +0 -63
- package/src/machines/HostSyncPanel.tsx +0 -275
- package/src/machines/HostsSection.tsx +0 -312
- package/src/machines/MachinesProvider.tsx +0 -164
- package/src/machines/ServerCard.tsx +0 -347
- package/src/machines/ServerMachinesPanel.tsx +0 -547
- package/src/machines/ServerUpdatePanel.tsx +0 -160
- package/src/machines/SyncAccounts.tsx +0 -148
- package/src/machines/SyncMarker.tsx +0 -87
- package/src/machines/SyncOutcomeBadge.tsx +0 -84
- package/src/machines/TokensPanel.tsx +0 -249
- package/src/machines/headless/fixture-host.ts +0 -519
- package/src/machines/headless/fixtures.ts +0 -164
- package/src/machines/headless/host.ts +0 -381
- package/src/machines/headless/index.ts +0 -13
- package/src/machines/headless/labels.ts +0 -356
- package/src/machines/headless/messages.ts +0 -197
- package/src/machines/headless/presence.ts +0 -110
- package/src/machines/headless/settings-focus.ts +0 -25
- package/src/machines/headless/stores.ts +0 -137
- package/src/machines/headless/sync.ts +0 -207
- package/src/machines/index.ts +0 -29
- package/src/machines/settings-section.tsx +0 -37
- package/src/machines/testing/contract.ts +0 -617
- package/src/machines/testing/index.ts +0 -7
- package/src/machines/testing/sync.contract.ts +0 -260
- package/src/motion/SwapIcon.tsx +0 -29
- package/src/motion/collapse.ts +0 -21
- package/src/motion/grow.tsx +0 -86
- package/src/motion/layout-animating.ts +0 -50
- package/src/motion/presence.ts +0 -191
- package/src/motion/provider.tsx +0 -63
- package/src/motion/reduced.ts +0 -36
- package/src/motion/roll.tsx +0 -131
- package/src/motion/shimmer.ts +0 -15
- package/src/motion/size.tsx +0 -192
- package/src/motion/springs.ts +0 -413
- package/src/motion/swap.tsx +0 -216
- package/src/motion/title-text.tsx +0 -74
- package/src/onboarding/ConnectProviderCard.tsx +0 -49
- package/src/onboarding/OnboardingFlow.tsx +0 -176
- package/src/onboarding/OnboardingProvider.tsx +0 -209
- package/src/onboarding/OnboardingStepFrame.tsx +0 -80
- package/src/onboarding/conversation.tsx +0 -179
- package/src/onboarding/demos/autonomy.tsx +0 -154
- package/src/onboarding/demos/extensions.tsx +0 -183
- package/src/onboarding/demos/features.tsx +0 -447
- package/src/onboarding/demos/how-it-works.tsx +0 -698
- package/src/onboarding/demos/index.ts +0 -11
- package/src/onboarding/demos/parts.tsx +0 -133
- package/src/onboarding/demos/tour.tsx +0 -217
- package/src/onboarding/headless/controller.ts +0 -110
- package/src/onboarding/headless/fixture-host.ts +0 -269
- package/src/onboarding/headless/fixtures.ts +0 -486
- package/src/onboarding/headless/host.ts +0 -176
- package/src/onboarding/headless/index.ts +0 -8
- package/src/onboarding/headless/labels.ts +0 -280
- package/src/onboarding/index.ts +0 -20
- package/src/onboarding/marks.tsx +0 -69
- package/src/onboarding/preview-attachments.ts +0 -39
- package/src/onboarding/skills/SkillSourceBrowser.tsx +0 -336
- package/src/onboarding/skills/parts.tsx +0 -440
- package/src/onboarding/steps/AutonomyStep.tsx +0 -128
- package/src/onboarding/steps/ConnectStep.tsx +0 -104
- package/src/onboarding/steps/ConnectorsStep.tsx +0 -226
- package/src/onboarding/steps/ConversationStep.tsx +0 -131
- package/src/onboarding/steps/ExtensionsStep.tsx +0 -113
- package/src/onboarding/steps/FeatureExample.tsx +0 -46
- package/src/onboarding/steps/FeaturesStep.tsx +0 -88
- package/src/onboarding/steps/ImportStep.tsx +0 -156
- package/src/onboarding/steps/LookStep.tsx +0 -276
- package/src/onboarding/steps/ReadyStep.tsx +0 -278
- package/src/onboarding/steps/SkillsStep.tsx +0 -45
- package/src/onboarding/steps/StepSection.tsx +0 -63
- package/src/onboarding/steps/Tradeoff.tsx +0 -45
- package/src/onboarding/steps/WelcomeStep.tsx +0 -147
- package/src/onboarding/steps/connect/KeyForm.tsx +0 -112
- package/src/onboarding/steps/connect/ProviderPanel.tsx +0 -149
- package/src/onboarding/steps/connect/ProviderReady.tsx +0 -171
- package/src/onboarding/steps/connect/ready-text.ts +0 -17
- package/src/onboarding/steps/index.ts +0 -12
- package/src/onboarding/steps/tasks.tsx +0 -84
- package/src/onboarding/testing/contract.ts +0 -472
- package/src/onboarding/testing/index.ts +0 -7
- package/src/onboarding/tutorials.tsx +0 -45
- package/src/onboarding/useSignIn.ts +0 -58
- package/src/palette/CommandPalette.tsx +0 -59
- package/src/palette/PaletteDialog.tsx +0 -186
- package/src/palette/PaletteProvider.tsx +0 -149
- package/src/palette/PaletteRows.tsx +0 -208
- package/src/palette/app-sources.ts +0 -62
- package/src/palette/headless/app-sources.ts +0 -515
- package/src/palette/headless/gather.ts +0 -50
- package/src/palette/headless/host.ts +0 -129
- package/src/palette/headless/index.ts +0 -15
- package/src/palette/headless/labels.ts +0 -124
- package/src/palette/headless/rank-protocol.ts +0 -23
- package/src/palette/headless/recents.ts +0 -35
- package/src/palette/headless/session-sources.ts +0 -218
- package/src/palette/headless/sources.ts +0 -313
- package/src/palette/headless/store.ts +0 -105
- package/src/palette/index.ts +0 -17
- package/src/palette/rank.worker.ts +0 -30
- package/src/palette/setup.ts +0 -19
- package/src/palette/testing/contract.ts +0 -250
- package/src/palette/testing/index.ts +0 -152
- package/src/palette/useConversationSearch.ts +0 -115
- package/src/palette/usePaletteController.ts +0 -229
- package/src/palette/useRankedItems.ts +0 -122
- package/src/path.ts +0 -165
- package/src/server/demo-tools.ts +0 -34
- package/src/server/environment.ts +0 -118
- package/src/server/index.ts +0 -7
- package/src/server/scripted-provider.ts +0 -174
- package/src/server/sse-handler.ts +0 -457
- package/src/server/testing/index.ts +0 -7
- package/src/session/ArtifactRowChips.tsx +0 -251
- package/src/session/ArtifactsPanel.tsx +0 -381
- package/src/session/DiffFileTree.tsx +0 -173
- package/src/session/PanelAttention.tsx +0 -131
- package/src/session/ProviderUsageProvider.tsx +0 -106
- package/src/session/QueueTab.tsx +0 -669
- package/src/session/RunningWorkDialog.tsx +0 -178
- package/src/session/SessionCacheFacts.tsx +0 -190
- package/src/session/SessionDetailsDialog.tsx +0 -621
- package/src/session/SessionHeader.tsx +0 -237
- package/src/session/SessionProvider.tsx +0 -98
- package/src/session/SessionShell.tsx +0 -77
- package/src/session/SideChat.tsx +0 -316
- package/src/session/TodoList.tsx +0 -123
- package/src/session/TodosPanel.tsx +0 -278
- package/src/session/TurnDetailsDialog.tsx +0 -299
- package/src/session/UsagePanel.tsx +0 -222
- package/src/session/WelcomeScreen.tsx +0 -578
- package/src/session/headless/artifacts.ts +0 -101
- package/src/session/headless/diff-tree.ts +0 -167
- package/src/session/headless/fixture-host.ts +0 -331
- package/src/session/headless/host.ts +0 -255
- package/src/session/headless/index.ts +0 -22
- package/src/session/headless/keyed.ts +0 -72
- package/src/session/headless/labels.ts +0 -321
- package/src/session/headless/queue-attachments.ts +0 -73
- package/src/session/headless/queue.ts +0 -122
- package/src/session/headless/running-work.ts +0 -85
- package/src/session/headless/session-actions.ts +0 -198
- package/src/session/headless/session-diffs.ts +0 -136
- package/src/session/headless/side.ts +0 -63
- package/src/session/headless/todos.ts +0 -62
- package/src/session/headless/usage-format.ts +0 -280
- package/src/session/headless/usage.ts +0 -380
- package/src/session/index.ts +0 -29
- package/src/session/testing/contract.ts +0 -579
- package/src/session/testing/demo.ts +0 -209
- package/src/session/testing/index.ts +0 -7
- package/src/session/useSessionLabels.ts +0 -14
- package/src/session/useUsageSummary.ts +0 -82
- package/src/settings/SettingsHeadingText.tsx +0 -54
- package/src/settings/SettingsHostSwitcher.tsx +0 -93
- package/src/settings/SettingsNav.tsx +0 -116
- package/src/settings/SettingsProvider.tsx +0 -127
- package/src/settings/SettingsRowsPage.tsx +0 -217
- package/src/settings/SettingsShell.tsx +0 -336
- package/src/settings/SettingsTutorial.tsx +0 -55
- package/src/settings/headless/catalog.ts +0 -553
- package/src/settings/headless/claude-import.ts +0 -61
- package/src/settings/headless/enabled.ts +0 -44
- package/src/settings/headless/fixture-accounts.ts +0 -260
- package/src/settings/headless/fixture-host.ts +0 -162
- package/src/settings/headless/fixture-models.ts +0 -51
- package/src/settings/headless/fixture-performance.ts +0 -350
- package/src/settings/headless/fixture-sections.ts +0 -323
- package/src/settings/headless/host.ts +0 -125
- package/src/settings/headless/index.ts +0 -22
- package/src/settings/headless/labels.ts +0 -63
- package/src/settings/headless/layout-sections.ts +0 -41
- package/src/settings/headless/layout.ts +0 -723
- package/src/settings/headless/mcp.ts +0 -319
- package/src/settings/headless/models.ts +0 -51
- package/src/settings/headless/page-counts.ts +0 -40
- package/src/settings/headless/performance.ts +0 -524
- package/src/settings/headless/providers.ts +0 -117
- package/src/settings/headless/registry.ts +0 -52
- package/src/settings/headless/resource.ts +0 -75
- package/src/settings/headless/search.ts +0 -142
- package/src/settings/headless/sections-host.ts +0 -307
- package/src/settings/index.ts +0 -32
- package/src/settings/rows.tsx +0 -152
- package/src/settings/section.tsx +0 -165
- package/src/settings/sections/appearance/AppearanceSection.tsx +0 -667
- package/src/settings/sections/appearance/labels.ts +0 -77
- package/src/settings/sections/claude-import/ClaudeImportDialog.tsx +0 -258
- package/src/settings/sections/claude-import/labels.ts +0 -42
- package/src/settings/sections/claude-import/use-claude-import-available.ts +0 -35
- package/src/settings/sections/descriptors.tsx +0 -261
- package/src/settings/sections/editor/EditorSection.tsx +0 -521
- package/src/settings/sections/editor/labels.ts +0 -84
- package/src/settings/sections/enabled-list/EnabledListSection.tsx +0 -112
- package/src/settings/sections/enabled-list/labels.ts +0 -37
- package/src/settings/sections/environments/EnvironmentsSection.tsx +0 -549
- package/src/settings/sections/environments/labels.ts +0 -31
- package/src/settings/sections/extensions/CreateExtensionDialog.tsx +0 -206
- package/src/settings/sections/extensions/ExtensionOptionsSection.tsx +0 -743
- package/src/settings/sections/extensions/ExtensionsSection.tsx +0 -480
- package/src/settings/sections/extensions/create-labels.ts +0 -31
- package/src/settings/sections/extensions/labels.ts +0 -38
- package/src/settings/sections/extensions/options-labels.ts +0 -31
- package/src/settings/sections/host-catalog/HostCatalogSection.tsx +0 -374
- package/src/settings/sections/host-catalog/labels.ts +0 -40
- package/src/settings/sections/index.ts +0 -58
- package/src/settings/sections/instructions/InstructionsSection.tsx +0 -381
- package/src/settings/sections/instructions/labels.ts +0 -33
- package/src/settings/sections/keybindings/KeybindingsSection.tsx +0 -124
- package/src/settings/sections/keybindings/labels.ts +0 -72
- package/src/settings/sections/keybindings/rows.ts +0 -103
- package/src/settings/sections/logs/LogsSection.tsx +0 -153
- package/src/settings/sections/logs/labels.ts +0 -20
- package/src/settings/sections/mcp/McpAddForm.tsx +0 -245
- package/src/settings/sections/mcp/McpSection.tsx +0 -358
- package/src/settings/sections/mcp/McpServerRow.tsx +0 -403
- package/src/settings/sections/mcp/labels.ts +0 -193
- package/src/settings/sections/models/AgentDefaults.tsx +0 -365
- package/src/settings/sections/models/ModelListPicker.tsx +0 -265
- package/src/settings/sections/models/ModelPickField.tsx +0 -220
- package/src/settings/sections/models/ModelRows.tsx +0 -381
- package/src/settings/sections/models/SpacesDefaultsSection.tsx +0 -102
- package/src/settings/sections/models/labels.ts +0 -119
- package/src/settings/sections/models/model-test.tsx +0 -125
- package/src/settings/sections/performance/PerfSparkline.tsx +0 -64
- package/src/settings/sections/performance/PerformanceHud.tsx +0 -110
- package/src/settings/sections/performance/PerformanceSection.tsx +0 -770
- package/src/settings/sections/performance/labels.ts +0 -114
- package/src/settings/sections/performance/use-perf-monitor.ts +0 -26
- package/src/settings/sections/plugins/PluginsSection.tsx +0 -148
- package/src/settings/sections/plugins/labels.ts +0 -23
- package/src/settings/sections/providers/CredentialSources.tsx +0 -237
- package/src/settings/sections/providers/ProvidersSection.tsx +0 -389
- package/src/settings/sections/providers/ServerProvidersSection.tsx +0 -244
- package/src/settings/sections/providers/ServerSignIn.tsx +0 -136
- package/src/settings/sections/providers/labels.ts +0 -160
- package/src/settings/sections/shared/catalog.tsx +0 -246
- package/src/settings/sections/shared/labels.ts +0 -31
- package/src/settings/sections/skills/SkillList.tsx +0 -494
- package/src/settings/sections/skills/SkillsSection.tsx +0 -249
- package/src/settings/sections/skills/labels.ts +0 -54
- package/src/settings/sections/use-section-labels.ts +0 -10
- package/src/settings/testing/accounts-demo.ts +0 -110
- package/src/settings/testing/accounts.contract.ts +0 -319
- package/src/settings/testing/claude-import.contract.ts +0 -93
- package/src/settings/testing/contract.ts +0 -192
- package/src/settings/testing/extension-options.contract.ts +0 -163
- package/src/settings/testing/index.ts +0 -11
- package/src/settings/testing/models.contract.ts +0 -135
- package/src/settings/testing/performance.contract.ts +0 -219
- package/src/settings/testing/sections.contract.ts +0 -306
- package/src/terminal/HostTerminalSurface.tsx +0 -911
- package/src/terminal/TerminalDrawer.tsx +0 -228
- package/src/terminal/TerminalPanel.tsx +0 -740
- package/src/terminal/TerminalProvider.tsx +0 -201
- package/src/terminal/TerminalSurface.tsx +0 -262
- package/src/terminal/box-glyphs.ts +0 -333
- package/src/terminal/ghostty.ts +0 -116
- package/src/terminal/grid-size.ts +0 -46
- package/src/terminal/headless/fixture-host.ts +0 -250
- package/src/terminal/headless/host.ts +0 -99
- package/src/terminal/headless/index.ts +0 -11
- package/src/terminal/headless/labels.ts +0 -69
- package/src/terminal/headless/layout.ts +0 -57
- package/src/terminal/headless/links.ts +0 -227
- package/src/terminal/headless/order.ts +0 -28
- package/src/terminal/headless/output-cursor.ts +0 -66
- package/src/terminal/headless/recent.ts +0 -20
- package/src/terminal/headless/replay.ts +0 -45
- package/src/terminal/headless/scope.ts +0 -60
- package/src/terminal/headless/store.ts +0 -621
- package/src/terminal/index.ts +0 -40
- package/src/terminal/keys.ts +0 -34
- package/src/terminal/testing/contract.ts +0 -274
- package/src/terminal/testing/demo.ts +0 -40
- package/src/terminal/testing/index.ts +0 -7
- package/src/terminal/theme.ts +0 -110
- package/src/terminal/useTerminalLabels.ts +0 -14
- package/src/theme/accents.ts +0 -46
- package/src/theme/color.ts +0 -450
- package/src/theme/css-vars.ts +0 -187
- package/src/theme/derive.ts +0 -700
- package/src/theme/from-theme.ts +0 -52
- package/src/theme/stylesheet.ts +0 -55
- package/src/theme/themes.ts +0 -767
- package/src/theme/without-transitions.ts +0 -18
- package/src/uno.ts +0 -167
- package/src/workspace/LayoutBudget.tsx +0 -143
- package/src/workspace/PanelContentView.tsx +0 -335
- package/src/workspace/PanelGroups.tsx +0 -249
- package/src/workspace/PanelStrip.tsx +0 -307
- package/src/workspace/SidePanel.tsx +0 -192
- package/src/workspace/TabParking.tsx +0 -111
- package/src/workspace/WorkspaceProvider.tsx +0 -554
- package/src/workspace/dnd/engine.ts +0 -371
- package/src/workspace/dnd/hooks.ts +0 -72
- package/src/workspace/dnd/index.ts +0 -57
- package/src/workspace/dnd/parking.tsx +0 -181
- package/src/workspace/frame-motion.ts +0 -160
- package/src/workspace/headless/contents.ts +0 -125
- package/src/workspace/headless/host.ts +0 -118
- package/src/workspace/headless/index.ts +0 -33
- package/src/workspace/headless/labels.ts +0 -34
- package/src/workspace/headless/layout-memory.ts +0 -649
- package/src/workspace/headless/layouts.ts +0 -224
- package/src/workspace/headless/open-target.ts +0 -125
- package/src/workspace/headless/ops.ts +0 -163
- package/src/workspace/headless/panel-focus.ts +0 -58
- package/src/workspace/headless/panel-tree.ts +0 -259
- package/src/workspace/headless/resolve.ts +0 -146
- package/src/workspace/headless/reveal-at.ts +0 -27
- package/src/workspace/headless/strip-drop.ts +0 -81
- package/src/workspace/headless/tree.ts +0 -480
- package/src/workspace/headless/view.ts +0 -159
- package/src/workspace/index.ts +0 -22
- package/src/workspace/panel-group-keys.ts +0 -36
- package/src/workspace/panel-visibility.ts +0 -28
- package/src/workspace/tab-scopes.ts +0 -245
- package/src/workspace/testing/contract.ts +0 -282
- package/src/workspace/testing/index.ts +0 -140
- package/src/workspace/use-split-drag.ts +0 -73
- package/src/workspace/useScopeLayout.ts +0 -26
- package/src/workspace/useViewport.ts +0 -22
- package/src/workspace/useWorkspaceLabels.ts +0 -14
- package/src/workspace/workspace-key-commands.ts +0 -108
- /package/dist/dist/{types-bDQagoiL.d.ts → types-2HrgolQz.d.ts} +0 -0
|
@@ -1,255 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The session panels' host: a session's todo list, its type-ahead message
|
|
3
|
-
* queue, the artifacts it produced, its running work, its turns, its
|
|
4
|
-
* details actions, and usage. An app implements it once (over IPC,
|
|
5
|
-
* over zidane-server, in memory) and hands it to `SessionProvider` (or
|
|
6
|
-
* `AppHost.session`).
|
|
7
|
-
*
|
|
8
|
-
* Every member is optional: a host that leaves one out hides what needs it
|
|
9
|
-
* (no `todos.set`: the Todos panel is read-only; no `queue`: nothing shows
|
|
10
|
-
* a queue). Data comes as per-session readable stores, actions as async
|
|
11
|
-
* methods.
|
|
12
|
-
*/
|
|
13
|
-
import type { SessionArtifact } from 'zidane';
|
|
14
|
-
import type { ExtensionArtifactRowFact, ExtensionBadgeIcon, ExtensionBadgeTone } from 'zidane/chat/pure';
|
|
15
|
-
import type { PromptAttachment, QueuedAttachment, TodoItem, TodosSnapshot } from 'zidane/chat';
|
|
16
|
-
import type { IpcResult, RunningWorkItem } from 'zidane/ipc';
|
|
17
|
-
import type { SessionTurn } from 'zidane/types';
|
|
18
|
-
|
|
19
|
-
import type { Readable } from '../../chat/headless/store';
|
|
20
|
-
import type { ProviderUsageSnapshot, UsageRange, UsageSummary } from './usage';
|
|
21
|
-
|
|
22
|
-
export type {
|
|
23
|
-
PromptAttachment,
|
|
24
|
-
QueuedAttachment,
|
|
25
|
-
RunningWorkItem,
|
|
26
|
-
SessionArtifact,
|
|
27
|
-
SessionTurn,
|
|
28
|
-
TodoItem,
|
|
29
|
-
TodosSnapshot,
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
/** One message waiting in a session's queue, as the queue panel shows it. */
|
|
33
|
-
export interface QueuedMessage {
|
|
34
|
-
/** The entry's id, assigned by the backend. */
|
|
35
|
-
id: string;
|
|
36
|
-
/** The message text. */
|
|
37
|
-
text: string;
|
|
38
|
-
/** The session the entry belongs to, so a row can act on the queue without its parent's help. */
|
|
39
|
-
sessionId: string;
|
|
40
|
-
/** What rides with the text, without the bytes (`queue.attachments` fetches them). */
|
|
41
|
-
attachments?: readonly QueuedAttachment[];
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
/** How the backend delivered a message added to the queue. */
|
|
45
|
-
export type QueueAddDelivery = 'queued' | 'sent' | 'steer';
|
|
46
|
-
|
|
47
|
-
/** How the backend delivered a queued message pushed into the run now (`missing`: the entry was gone). */
|
|
48
|
-
export type QueuePushDelivery = 'steer' | 'send' | 'queued' | 'missing';
|
|
49
|
-
|
|
50
|
-
/** What goes with a message added to the queue. */
|
|
51
|
-
export interface QueueAddOptions {
|
|
52
|
-
/** Skills activated with the message. */
|
|
53
|
-
activatedSkills?: string[];
|
|
54
|
-
/** Attachments with their bytes. */
|
|
55
|
-
attachments?: PromptAttachment[];
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
/** An artifact's row, rendered by the backend (the kind registry lives there). */
|
|
59
|
-
export interface SessionArtifactRowView {
|
|
60
|
-
/** Row title. */
|
|
61
|
-
title: string;
|
|
62
|
-
/** Secondary line under the title (older rows; `lead` / `diff` / `facts` replace it). */
|
|
63
|
-
subtitle?: string;
|
|
64
|
-
/** Where "open" goes: a URL or an absolute path. */
|
|
65
|
-
href?: string;
|
|
66
|
-
/** Short state tag (`open`, `merged`…). */
|
|
67
|
-
status?: string;
|
|
68
|
-
/** Small facts after the title (older rows). */
|
|
69
|
-
badges?: readonly { text: string; tone?: 'neutral' | 'diff' | 'success' | 'warn'; title?: string }[];
|
|
70
|
-
/** The state icon. */
|
|
71
|
-
icon?: ExtensionBadgeIcon;
|
|
72
|
-
/** Tints the icon and the status word. */
|
|
73
|
-
tone?: ExtensionBadgeTone;
|
|
74
|
-
/** Exact color for the icon and status word, over `tone`. */
|
|
75
|
-
color?: string;
|
|
76
|
-
/** A short id (a commit hash, `owner/repo#12`); `mono` for hashes. */
|
|
77
|
-
lead?: { text: string; href?: string; mono?: boolean };
|
|
78
|
-
/** A change size, painted in the diff colors. */
|
|
79
|
-
diff?: { added: number; removed: number; files?: number; href?: string };
|
|
80
|
-
/** Quiet facts after the diff. */
|
|
81
|
-
facts?: readonly ExtensionArtifactRowFact[];
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
/** One artifact and its rendered row. */
|
|
85
|
-
export interface SessionArtifactRow {
|
|
86
|
-
/** The stored artifact. */
|
|
87
|
-
artifact: SessionArtifact;
|
|
88
|
-
/** How it shows. */
|
|
89
|
-
row: SessionArtifactRowView;
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
/** A session's artifacts of one kind. */
|
|
93
|
-
export interface SessionArtifactGroup {
|
|
94
|
-
/** The artifact kind id (`pull_request`, `commit`…). */
|
|
95
|
-
kind: string;
|
|
96
|
-
/** The kind's label (`Pull request`), the raw kind when unregistered. */
|
|
97
|
-
label: string;
|
|
98
|
-
/** The artifacts of this kind, newest first. */
|
|
99
|
-
rows: SessionArtifactRow[];
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
/** A session's live todo list. */
|
|
103
|
-
export interface SessionTodos {
|
|
104
|
-
/** The session's snapshot: `null` until read, or when no run owns a list yet. One store per session id. */
|
|
105
|
-
snapshot(sessionId: string): Readable<TodosSnapshot | null>;
|
|
106
|
-
/** Reads the session's list (also the first read). Never rejects: the next push catches up. */
|
|
107
|
-
refresh(sessionId: string): Promise<void>;
|
|
108
|
-
/** Replaces the whole list (already transformed by `zidane/chat/pure`'s todo edits). Resolves `false` when nothing applied it. Absent: read-only. */
|
|
109
|
-
set?(sessionId: string, items: readonly TodoItem[]): Promise<boolean>;
|
|
110
|
-
/** Sends a message into the session's run (it steers a live run, starts one when idle): the retry of a todo. */
|
|
111
|
-
retry?(sessionId: string, message: string): Promise<void>;
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
/** A session's type-ahead queue: messages sent while the agent works, delivered when the run ends. */
|
|
115
|
-
export interface SessionQueue {
|
|
116
|
-
/** The session's entries, in delivery order (empty when none). One store per session id. */
|
|
117
|
-
items(sessionId: string): Readable<readonly QueuedMessage[]>;
|
|
118
|
-
/** Reads the session's queue (on activation). Best effort. */
|
|
119
|
-
refresh(sessionId: string): void;
|
|
120
|
-
/** Queues a message (the backend sends it right away when the session is idle). */
|
|
121
|
-
add?(sessionId: string, text: string, options?: QueueAddOptions): Promise<QueueAddDelivery>;
|
|
122
|
-
/** Drops an entry. The store drops it at once; the backend converges. */
|
|
123
|
-
remove?(sessionId: string, id: string): void;
|
|
124
|
-
/** Replaces an entry's text, and its attachments when given (`[]` removes them). Resolves once the backend has it. */
|
|
125
|
-
update?(sessionId: string, id: string, text: string, attachments?: PromptAttachment[]): Promise<void>;
|
|
126
|
-
/** An entry's attachments with their bytes; `null` when the entry is gone. */
|
|
127
|
-
attachments?(sessionId: string, id: string): Promise<PromptAttachment[] | null>;
|
|
128
|
-
/** Pushes an entry into the live run now. */
|
|
129
|
-
pushNow?(sessionId: string, id: string): Promise<QueuePushDelivery>;
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
/** What a session produced: pull requests, branches, commits, files, extension kinds. */
|
|
133
|
-
export interface SessionArtifacts {
|
|
134
|
-
/** The session's artifacts by kind: `null` until first read. One store per session id. */
|
|
135
|
-
groups(sessionId: string): Readable<readonly SessionArtifactGroup[] | null>;
|
|
136
|
-
/** Reads the session's artifacts (also the first read). Rejects when the read fails. */
|
|
137
|
-
refresh(sessionId: string): Promise<void>;
|
|
138
|
-
/**
|
|
139
|
-
* Removes one artifact. Resolves `false` when the backend has no artifact support. `owner` is the session the
|
|
140
|
-
* artifact was recorded in, when the list shows another session's (a child's).
|
|
141
|
-
*/
|
|
142
|
-
remove?(sessionId: string, artifactId: string, owner?: string): Promise<boolean>;
|
|
143
|
-
/**
|
|
144
|
-
* Re-resolves one artifact (is the pull request merged? its diff size?); a change re-reads the groups through the
|
|
145
|
-
* usual wake-up. `force` bypasses the backend's freshness cache. Never rejects.
|
|
146
|
-
*/
|
|
147
|
-
refreshRow?(sessionId: string, artifact: SessionArtifact, options?: { force?: boolean }): Promise<void>;
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
/** A session's cancellable work: parent-level tool calls and background tasks. */
|
|
151
|
-
export interface SessionRunningWork {
|
|
152
|
-
/** The session's work, live (empty for none). One store per session id. */
|
|
153
|
-
items(sessionId: string): Readable<readonly RunningWorkItem[]>;
|
|
154
|
-
/** Reads the session's work now (a dialog opening, Refresh). Rejects when the read fails. */
|
|
155
|
-
refresh(sessionId: string): Promise<void>;
|
|
156
|
-
/** Reads the session once, the first time something shows it. Never rejects. */
|
|
157
|
-
ensure(sessionId: string): void;
|
|
158
|
-
/** Cancels one item, or `'all'`. Resolves `false` when nothing was cancelled. */
|
|
159
|
-
cancel?(sessionId: string, id: string, reason?: string): Promise<boolean>;
|
|
160
|
-
}
|
|
161
|
-
|
|
162
|
-
/** A session's stored turns: what the turn details dialog reads and does. */
|
|
163
|
-
export interface SessionTurns {
|
|
164
|
-
/** One turn as stored; `null` when it is gone. */
|
|
165
|
-
get(sessionId: string, turnId: string): Promise<SessionTurn | null>;
|
|
166
|
-
/** A new session with the history up to this turn. Resolves the new session's id. */
|
|
167
|
-
fork?(sessionId: string, turnId: string): Promise<string>;
|
|
168
|
-
/** Replaces the turn's text blocks. Refused while a run is in progress. */
|
|
169
|
-
editText?(sessionId: string, turnId: string, text: string): Promise<void>;
|
|
170
|
-
/** Deletes the turn and its tool calls. Refused while a run is in progress. */
|
|
171
|
-
delete?(sessionId: string, turnId: string): Promise<void>;
|
|
172
|
-
/** Cuts the history after the turn (`inclusive`: the turn stays) or just before it. Refused while a run is in progress. */
|
|
173
|
-
rewind?(sessionId: string, turnId: string, options: { inclusive: boolean }): Promise<void>;
|
|
174
|
-
}
|
|
175
|
-
|
|
176
|
-
/** A session's recent requests and their prompt-cache numbers (zidane's `CacheReport`). */
|
|
177
|
-
export type SessionCacheReport = NonNullable<IpcResult<'sessions.cacheReport'>>;
|
|
178
|
-
|
|
179
|
-
/** The export formats of a transcript. */
|
|
180
|
-
export type SessionExportFormat = 'markdown' | 'json';
|
|
181
|
-
|
|
182
|
-
/** The session details dialog's actions on one session. */
|
|
183
|
-
export interface SessionDetailsActions {
|
|
184
|
-
/** How the title came about (`['auto', 'from 3 turns']`); `null` when unknown. */
|
|
185
|
-
titleStatus?(sessionId: string): Promise<readonly string[] | null>;
|
|
186
|
-
/** Writes a title generated from the conversation. Resolves it. */
|
|
187
|
-
generateTitle?(sessionId: string): Promise<string>;
|
|
188
|
-
/** Writes the transcript to a file. Resolves its absolute path. */
|
|
189
|
-
export?(sessionId: string, format: SessionExportFormat): Promise<string>;
|
|
190
|
-
/** Summarizes older turns to free context. */
|
|
191
|
-
compact?(sessionId: string): Promise<void>;
|
|
192
|
-
/** Attaches a folder (`null` detaches it: a plain chat). Refused mid-run. */
|
|
193
|
-
setFolder?(sessionId: string, folder: string | null): Promise<void>;
|
|
194
|
-
/** What the prompt cache did for the last requests (the numbers `/cache` prints); `null` when there is none. */
|
|
195
|
-
cacheReport?(sessionId: string): Promise<SessionCacheReport | null>;
|
|
196
|
-
}
|
|
197
|
-
|
|
198
|
-
/** Usage: spend summaries and the providers' subscription windows. */
|
|
199
|
-
export interface SessionUsage {
|
|
200
|
-
/** Token spend over a range (the welcome screen). Absent: no usage card. */
|
|
201
|
-
summary?(range: UsageRange): Promise<UsageSummary>;
|
|
202
|
-
/** The model providers' subscription windows. `refresh` bypasses the backend's cache. Absent: no usage panel. */
|
|
203
|
-
providers?(options?: { refresh?: boolean }): Promise<readonly ProviderUsageSnapshot[]>;
|
|
204
|
-
/** GitHub's API limits. `probe` asks GitHub; otherwise what was observed. Absent: no GitHub section. */
|
|
205
|
-
github?(options?: { probe?: boolean }): Promise<readonly ProviderUsageSnapshot[]>;
|
|
206
|
-
}
|
|
207
|
-
|
|
208
|
-
/** A session row as the side chat needs it: its id; the app's pickers read the rest. */
|
|
209
|
-
export interface SideChatSession {
|
|
210
|
-
/** The session's id. */
|
|
211
|
-
id: string;
|
|
212
|
-
}
|
|
213
|
-
|
|
214
|
-
/** A session's side chat (`null` until the first send creates it) and the session's own row. */
|
|
215
|
-
export interface SideChatLookup {
|
|
216
|
-
/** The side chat's session, or `null`. */
|
|
217
|
-
side: SideChatSession | null;
|
|
218
|
-
/** The session the side chat is about, or `null` when unknown. */
|
|
219
|
-
parent: SideChatSession | null;
|
|
220
|
-
}
|
|
221
|
-
|
|
222
|
-
/**
|
|
223
|
-
* `/side` chats: a hidden session about another one (never listed, deleted with it), running read-only tools that
|
|
224
|
-
* read the parent, while the parent's own run streams.
|
|
225
|
-
*/
|
|
226
|
-
export interface SessionSideChats {
|
|
227
|
-
/** The side chat of `parentId`, and `parentId`'s row. */
|
|
228
|
-
lookup(parentId: string): Promise<SideChatLookup>;
|
|
229
|
-
/** Creates `parentId`'s side chat in `cwd`, starting on `from`'s model and effort (the parent's row). */
|
|
230
|
-
create(parentId: string, cwd: string, from: SideChatSession | null): Promise<SideChatSession>;
|
|
231
|
-
/** Deletes a side chat, stopping its answer first when one runs. Rejects with what went wrong. */
|
|
232
|
-
remove(sideId: string): Promise<void>;
|
|
233
|
-
/** Calls `onChange` with a session's id when its row changes (a model pick). Returns the unsubscribe. */
|
|
234
|
-
subscribe?(onChange: (sessionId: string) => void): () => void;
|
|
235
|
-
}
|
|
236
|
-
|
|
237
|
-
/** The session panels' host. Every member is optional: what a host leaves out is not shown. */
|
|
238
|
-
export interface SessionHost {
|
|
239
|
-
/** The live todo lists. Absent: no Todos panel. */
|
|
240
|
-
todos?: SessionTodos;
|
|
241
|
-
/** The type-ahead queues. Absent: no queue. */
|
|
242
|
-
queue?: SessionQueue;
|
|
243
|
-
/** The recorded artifacts. Absent: no Artifacts panel. */
|
|
244
|
-
artifacts?: SessionArtifacts;
|
|
245
|
-
/** The cancellable work. Absent: no running work dialog. */
|
|
246
|
-
runningWork?: SessionRunningWork;
|
|
247
|
-
/** The stored turns. Absent: no turn details dialog. */
|
|
248
|
-
turns?: SessionTurns;
|
|
249
|
-
/** The details dialog's actions. Absent: the dialog shows facts only. */
|
|
250
|
-
details?: SessionDetailsActions;
|
|
251
|
-
/** Usage. Absent: no usage card, no usage panel. */
|
|
252
|
-
usage?: SessionUsage;
|
|
253
|
-
/** `/side` chats about a session. Absent: no side chat. */
|
|
254
|
-
side?: SessionSideChats;
|
|
255
|
-
}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `zidane-ui/session/headless`: the session panels' React-free half. The
|
|
3
|
-
* `SessionHost` an app implements (todos, queue, artifacts, running work,
|
|
4
|
-
* turns, details actions, usage), the stores hosts build it on, the usage
|
|
5
|
-
* models and formatting, the Diffs panel's models (session edits, the changed-files
|
|
6
|
-
* tree), the session actions (`createSessionActions`, `sessionKeyCommands`) and
|
|
7
|
-
* the labels.
|
|
8
|
-
*/
|
|
9
|
-
export * from './host';
|
|
10
|
-
export * from './keyed';
|
|
11
|
-
export * from './todos';
|
|
12
|
-
export * from './queue';
|
|
13
|
-
export * from './artifacts';
|
|
14
|
-
export * from './running-work';
|
|
15
|
-
export * from './queue-attachments';
|
|
16
|
-
export * from './usage';
|
|
17
|
-
export * from './usage-format';
|
|
18
|
-
export * from './session-diffs';
|
|
19
|
-
export * from './diff-tree';
|
|
20
|
-
export * from './labels';
|
|
21
|
-
export * from './side';
|
|
22
|
-
export * from './session-actions';
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* A per-key value store with one `Readable` per key: a write to one session
|
|
3
|
-
* notifies only that session's readers, so a host mirroring many sessions
|
|
4
|
-
* re-renders the components of the session that changed, not every one.
|
|
5
|
-
*/
|
|
6
|
-
import type { Readable } from '../../chat/headless/store';
|
|
7
|
-
|
|
8
|
-
/** A map of values whose keys each have a readable store. */
|
|
9
|
-
export interface KeyedState<V, Fallback = null> {
|
|
10
|
-
/** The value under `key`, `undefined` when unset. */
|
|
11
|
-
get(key: string): V | undefined;
|
|
12
|
-
/** Sets the value under `key`; its readers hear it when it changed by identity. */
|
|
13
|
-
set(key: string, value: V): void;
|
|
14
|
-
/** Forgets `key` (a deleted session): its readers see the fallback. */
|
|
15
|
-
delete(key: string): void;
|
|
16
|
-
/** Forgets every key. */
|
|
17
|
-
clear(): void;
|
|
18
|
-
/** The store of one key, the same object for the same key. Reads `fallback` while unset. */
|
|
19
|
-
readable(key: string): Readable<V | Fallback>;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* Creates a {@link KeyedState}.
|
|
24
|
-
*
|
|
25
|
-
* @param fallback - What a key's store reads while it holds no value.
|
|
26
|
-
*/
|
|
27
|
-
export function createKeyedState<V, Fallback = null>(fallback: Fallback): KeyedState<V, Fallback> {
|
|
28
|
-
const values = new Map<string, V>();
|
|
29
|
-
const listeners = new Map<string, Set<() => void>>();
|
|
30
|
-
const stores = new Map<string, Readable<V | Fallback>>();
|
|
31
|
-
const notify = (key: string) => {
|
|
32
|
-
for (const l of [...(listeners.get(key) ?? [])]) l();
|
|
33
|
-
};
|
|
34
|
-
return {
|
|
35
|
-
get: (key) => values.get(key),
|
|
36
|
-
set(key, value) {
|
|
37
|
-
if (values.has(key) && Object.is(values.get(key), value)) return;
|
|
38
|
-
values.set(key, value);
|
|
39
|
-
notify(key);
|
|
40
|
-
},
|
|
41
|
-
delete(key) {
|
|
42
|
-
if (!values.delete(key)) return;
|
|
43
|
-
notify(key);
|
|
44
|
-
},
|
|
45
|
-
clear() {
|
|
46
|
-
const keys = [...values.keys()];
|
|
47
|
-
values.clear();
|
|
48
|
-
for (const key of keys) notify(key);
|
|
49
|
-
},
|
|
50
|
-
readable(key) {
|
|
51
|
-
let store = stores.get(key);
|
|
52
|
-
if (!store) {
|
|
53
|
-
store = {
|
|
54
|
-
get: () => (values.has(key) ? values.get(key)! : fallback),
|
|
55
|
-
subscribe(onChange) {
|
|
56
|
-
let set = listeners.get(key);
|
|
57
|
-
if (!set) listeners.set(key, (set = new Set()));
|
|
58
|
-
set.add(onChange);
|
|
59
|
-
const own = set;
|
|
60
|
-
return () => {
|
|
61
|
-
own.delete(onChange);
|
|
62
|
-
// A late unsubscribe of an emptied set must not drop the newer set under the same key.
|
|
63
|
-
if (own.size === 0 && listeners.get(key) === own) listeners.delete(key);
|
|
64
|
-
};
|
|
65
|
-
},
|
|
66
|
-
};
|
|
67
|
-
stores.set(key, store);
|
|
68
|
-
}
|
|
69
|
-
return store;
|
|
70
|
-
},
|
|
71
|
-
};
|
|
72
|
-
}
|
|
@@ -1,321 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The session panels' strings (the desktop app's wording). One flat
|
|
3
|
-
* dictionary an app overrides with `<LabelsProvider>` or the `labels` prop
|
|
4
|
-
* of `SessionProvider`. Keys you leave out keep the default English label.
|
|
5
|
-
*/
|
|
6
|
-
import type { TodoStatus } from 'zidane/chat';
|
|
7
|
-
|
|
8
|
-
import type { RunningWorkItem } from './running-work';
|
|
9
|
-
import type { UsageRange } from './usage';
|
|
10
|
-
import { tokenComparison } from './usage-format';
|
|
11
|
-
|
|
12
|
-
const plural = (n: number, noun: string) => `${n} ${noun}${n === 1 ? '' : 's'}`;
|
|
13
|
-
|
|
14
|
-
/** A kind label in the plural, lower case (`pull request` → `pull requests`, `branch` → `branches`). */
|
|
15
|
-
function pluralKind(label: string, count: number): string {
|
|
16
|
-
const lower = label.toLowerCase();
|
|
17
|
-
if (count === 1) return lower;
|
|
18
|
-
return /(?:s|x|ch|sh)$/.test(lower) ? `${lower}es` : `${lower}s`;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
/** Where a session's folder is, as the details dialog words it. */
|
|
22
|
-
type FolderLocation = { kind: 'server-gone' } | { kind: 'machine'; name: string } | { kind: 'sandbox' };
|
|
23
|
-
|
|
24
|
-
const GREETING = (hour: number) =>
|
|
25
|
-
hour < 5 ? 'Up late' : hour < 12 ? 'Good morning' : hour < 18 ? 'Good afternoon' : 'Good evening';
|
|
26
|
-
|
|
27
|
-
/** The artifacts, queue, running work, turn details, usage, welcome, header and details strings. */
|
|
28
|
-
const SESSION_SURFACE_LABELS = {
|
|
29
|
-
// Dialog shells
|
|
30
|
-
shellClose: 'Close',
|
|
31
|
-
// The Artifacts panel
|
|
32
|
-
artifactsLabel: 'Artifacts',
|
|
33
|
-
artifactsEmpty: 'Nothing yet',
|
|
34
|
-
artifactsEmptyHint:
|
|
35
|
-
'Pull requests, branches and commits show up here as the agent makes them. Files show only when recorded.',
|
|
36
|
-
artifactsUnsupported: 'This session store does not support artifacts.',
|
|
37
|
-
artifactsGroup: (label: string, count: number) => (count === 1 ? label : `${label}s`),
|
|
38
|
-
artifactsCount: (label: string, count: number) => `${count} ${pluralKind(label, count)}`,
|
|
39
|
-
artifactCopySha: 'Copy SHA',
|
|
40
|
-
artifactCopyLink: 'Copy link',
|
|
41
|
-
artifactCopyPath: 'Copy path',
|
|
42
|
-
artifactReveal: 'Reveal in Finder',
|
|
43
|
-
artifactRemove: 'Remove from session',
|
|
44
|
-
artifactOpen: (path: string) => `Open ${path}`,
|
|
45
|
-
artifactOnRemote: (machine: string) => `On ${machine}, not this computer.`,
|
|
46
|
-
artifactPathUnavailable: 'Path unavailable.',
|
|
47
|
-
diffFiles: (files: number) => (files === 1 ? '1 file' : `${files} files`),
|
|
48
|
-
// The Queue panel
|
|
49
|
-
queueEmpty: 'Nothing queued',
|
|
50
|
-
queueEmptyHint: 'A message you send while the agent works waits here, then goes out when the run ends.',
|
|
51
|
-
queueCount: (count: number) => `${count} queued`,
|
|
52
|
-
queueOrder: 'Sent in order when the run ends',
|
|
53
|
-
queueListLabel: 'Queued messages',
|
|
54
|
-
queueEditHint: 'Edit before sending',
|
|
55
|
-
queueEdit: 'Edit',
|
|
56
|
-
queueSaveAndPush: 'Save and send now',
|
|
57
|
-
queuePush: 'Send now (between tool calls)',
|
|
58
|
-
queueRemove: 'Remove from queue',
|
|
59
|
-
queueAttachmentName: (attachment: { name?: string; mediaType: string }) =>
|
|
60
|
-
attachment.name ?? (attachment.mediaType.startsWith('image/') ? 'image' : attachment.mediaType),
|
|
61
|
-
queueViewAttachments: (count: number, first: string) => (count === 1 ? `View ${first}` : `View ${count} attachments`),
|
|
62
|
-
queueEditLabel: 'Edit queued message',
|
|
63
|
-
queueHintSave: 'Save',
|
|
64
|
-
queueHintNewline: 'Newline',
|
|
65
|
-
queueHintPush: 'Send now',
|
|
66
|
-
queueHintCancel: 'Cancel',
|
|
67
|
-
queueAttach: 'Attach files',
|
|
68
|
-
queueCancel: 'Cancel',
|
|
69
|
-
queueSave: 'Save',
|
|
70
|
-
// Running work
|
|
71
|
-
runningWorkTitle: 'Running work',
|
|
72
|
-
runningWorkDescription: 'Tool calls and background tasks you can stop.',
|
|
73
|
-
runningWorkRefresh: 'Refresh',
|
|
74
|
-
runningWorkCancelAll: 'Cancel all',
|
|
75
|
-
runningWorkCancel: 'Cancel',
|
|
76
|
-
runningWorkCancelling: 'Cancelling…',
|
|
77
|
-
runningWorkEmpty: 'Nothing is running',
|
|
78
|
-
runningWorkKind: { tool: 'Tool call', task: 'Background task' } as Record<RunningWorkItem['kind'], string>,
|
|
79
|
-
runningWorkShowTerminal: 'Show terminal',
|
|
80
|
-
// Turn details
|
|
81
|
-
turnTitle: 'Turn details',
|
|
82
|
-
turnLoading: 'Loading…',
|
|
83
|
-
turnRole: (role: string | null) => `${role ?? '…'} turn`,
|
|
84
|
-
turnBefore: (count: number) => `${count} before`,
|
|
85
|
-
turnAfter: (count: number) => `${count} after`,
|
|
86
|
-
turnCopy: 'Copy',
|
|
87
|
-
turnCopied: 'Copied',
|
|
88
|
-
turnCopyHint: 'To clipboard',
|
|
89
|
-
turnCopyFailed: (message: string) => `Copy failed: ${message}`,
|
|
90
|
-
turnFork: 'Fork',
|
|
91
|
-
turnForkHint: 'New session from here',
|
|
92
|
-
turnEdit: 'Edit',
|
|
93
|
-
turnEditHint: 'Change its text',
|
|
94
|
-
turnNoText: 'No text to edit',
|
|
95
|
-
turnStopFirst: 'Stop the run first',
|
|
96
|
-
turnDelete: 'Delete',
|
|
97
|
-
turnDeleteHint: 'Remove it and its tool calls',
|
|
98
|
-
turnCancel: 'Cancel',
|
|
99
|
-
turnSave: 'Save',
|
|
100
|
-
turnSaving: 'Saving…',
|
|
101
|
-
turnTextLabel: 'Turn text',
|
|
102
|
-
// The usage panel
|
|
103
|
-
usageTitle: 'Usage',
|
|
104
|
-
usageChecking: 'Checking signed-in providers…',
|
|
105
|
-
usageNone: 'No signed-in provider reports usage.',
|
|
106
|
-
usageOff: 'Usage checks are off. Press Refresh to check once.',
|
|
107
|
-
usageDescription: 'Rate-limit windows and credits for signed-in providers and GitHub.',
|
|
108
|
-
usageRefresh: 'Refresh',
|
|
109
|
-
usageRefreshing: 'Refreshing…',
|
|
110
|
-
usageModelProviders: 'Model providers',
|
|
111
|
-
usageGithub: 'GitHub',
|
|
112
|
-
usageInUse: 'In use',
|
|
113
|
-
usageCredits: 'Credits',
|
|
114
|
-
usageUnavailable: (unauthorized: boolean, error?: string | null) =>
|
|
115
|
-
`${unauthorized ? 'Not signed in' : 'Unavailable'}${error ? `: ${error}` : ''}`,
|
|
116
|
-
usageWindowUsed: (window: string, percent: string) => `${window} ${percent}% used`,
|
|
117
|
-
// The welcome screen
|
|
118
|
-
welcomeGreeting: (hour: number, name: string | null) => `${GREETING(hour)}${name ? `, ${name}` : ''}`,
|
|
119
|
-
welcomeDate: (date: Date) => date.toLocaleDateString('en-US', { weekday: 'long', month: 'long', day: 'numeric' }),
|
|
120
|
-
welcomeNoUsage: 'No usage yet. Start a chat to see your stats here.',
|
|
121
|
-
welcomeUsageLabel: 'Usage',
|
|
122
|
-
welcomeViewLabel: 'Usage view',
|
|
123
|
-
welcomeRangeLabel: 'Time range',
|
|
124
|
-
welcomeOverview: 'Overview',
|
|
125
|
-
welcomeModels: 'Models',
|
|
126
|
-
welcomeRange: { all: 'All', '30d': '30d', '7d': '7d' } as Record<UsageRange, string>,
|
|
127
|
-
welcomeSessions: 'Sessions',
|
|
128
|
-
welcomeMessages: 'Messages',
|
|
129
|
-
welcomeTotalTokens: 'Total tokens',
|
|
130
|
-
welcomeTokensExact: (tokens: number) => `${tokens.toLocaleString('en-US')} tokens`,
|
|
131
|
-
welcomeActiveDays: 'Active days',
|
|
132
|
-
welcomeCurrentStreak: 'Current streak',
|
|
133
|
-
welcomeLongestStreak: 'Longest streak',
|
|
134
|
-
welcomeDays: (days: number) => `${days} ${days === 1 ? 'day' : 'days'}`,
|
|
135
|
-
welcomePeakHour: 'Peak hour',
|
|
136
|
-
welcomeFavoriteModel: 'Favorite model',
|
|
137
|
-
welcomeNoneYet: 'None yet',
|
|
138
|
-
welcomeTokenComparison: (totalTokens: number, seed: number): string | null => tokenComparison(totalTokens, seed),
|
|
139
|
-
welcomeComparisonSample: "You've processed the tokens of a few long books.",
|
|
140
|
-
welcomeActivity: 'Activity, last 26 weeks',
|
|
141
|
-
welcomeLess: 'Less',
|
|
142
|
-
welcomeMore: 'More',
|
|
143
|
-
welcomeHeatmapLabel: 'Daily activity heatmap',
|
|
144
|
-
welcomeDay: (day: string) => {
|
|
145
|
-
const [y, m, d] = day.split('-').map(Number);
|
|
146
|
-
return new Date(y!, m! - 1, d!).toLocaleDateString('en-US', { month: 'short', day: 'numeric', year: 'numeric' });
|
|
147
|
-
},
|
|
148
|
-
welcomeTokens: (tokens: string) => `${tokens} tokens`,
|
|
149
|
-
welcomeMessageCount: (count: number) => `${count} ${count === 1 ? 'message' : 'messages'}`,
|
|
150
|
-
welcomeTokensIn: (tokens: string) => `${tokens} in`,
|
|
151
|
-
welcomeTokensOut: (tokens: string) => `${tokens} out`,
|
|
152
|
-
welcomeOtherModels: (count: number) => `${count} other ${count === 1 ? 'model' : 'models'}`,
|
|
153
|
-
welcomeSpend: 'Spend by provider',
|
|
154
|
-
welcomeSpendTotal: (cost: string) => `${cost} total`,
|
|
155
|
-
welcomeSpendCaption: 'Estimated at API list prices. Your bill may differ.',
|
|
156
|
-
welcomeNoModelActivity: 'No model activity in this range.',
|
|
157
|
-
welcomeChartLabel: 'Daily token usage by model',
|
|
158
|
-
welcomeBarTitle: (day: string, tokens: string) => `${day}: ${tokens} tokens`,
|
|
159
|
-
// The session header
|
|
160
|
-
headerChat: 'Chat',
|
|
161
|
-
headerMainFolder: 'Main has no folder. It works through the sessions in each project.',
|
|
162
|
-
headerChatRunning: 'Chat. Stop the run to attach a folder',
|
|
163
|
-
headerFolderOnServer: (cwd: string, server: string | null) => `${cwd || 'No folder'} on ${server ?? 'a server'}`,
|
|
164
|
-
headerChatAttach: 'Chat. Click to attach a folder',
|
|
165
|
-
headerChangeFolder: (cwd: string) => `${cwd}. Click to change folder`,
|
|
166
|
-
headerServerGone: 'This server is no longer saved',
|
|
167
|
-
headerOnServer: (server: string | null) => `on ${server ?? 'a removed server'}`,
|
|
168
|
-
headerRename: 'Rename session',
|
|
169
|
-
headerDetails: 'Session details',
|
|
170
|
-
// Session details
|
|
171
|
-
detailsTitle: 'Session details',
|
|
172
|
-
detailsMainDescription: 'Main runs your other sessions',
|
|
173
|
-
detailsMainTitle: 'Main',
|
|
174
|
-
detailsMainKeepsName: 'The Main session keeps its name',
|
|
175
|
-
detailsTitleLabel: 'Session title',
|
|
176
|
-
detailsSave: 'Save',
|
|
177
|
-
detailsGenerate: 'Generate',
|
|
178
|
-
detailsGenerating: 'Generating…',
|
|
179
|
-
detailsGenerateHint: 'Generate a title from the conversation',
|
|
180
|
-
detailsDelete: 'Delete session',
|
|
181
|
-
detailsDeleting: 'Deleting…',
|
|
182
|
-
detailsStatus: 'Status',
|
|
183
|
-
// Session details: the prompt cache
|
|
184
|
-
cacheScopeLast: (shown: number, total: number) => `last ${shown} of ${total} requests`,
|
|
185
|
-
cacheScopeAll: (total: number) => `${total} request${total === 1 ? '' : 's'}`,
|
|
186
|
-
cacheUncached: (pct: number) => `${pct}% not from the cache`,
|
|
187
|
-
cacheBreaks: (count: number) => `${count} break${count === 1 ? '' : 's'}`,
|
|
188
|
-
cacheExpiresIn: (until: string) => `expires in about ${until}`,
|
|
189
|
-
cacheExpired: 'likely expired',
|
|
190
|
-
cacheShowRequests: 'Show requests',
|
|
191
|
-
cacheHideRequests: 'Hide requests',
|
|
192
|
-
cacheExpiryHint: 'An estimate: the provider can drop it earlier',
|
|
193
|
-
cacheColumns: {
|
|
194
|
-
turn: 'Turn',
|
|
195
|
-
prompt: 'Prompt',
|
|
196
|
-
cached: 'From cache',
|
|
197
|
-
reread: 'Re-read',
|
|
198
|
-
ttft: 'First token',
|
|
199
|
-
energy: 'Energy',
|
|
200
|
-
dropped: 'Reasoning dropped',
|
|
201
|
-
} as Record<'turn' | 'prompt' | 'cached' | 'reread' | 'ttft' | 'energy' | 'dropped', string>,
|
|
202
|
-
detailsStatusLabel: { idle: 'Idle', running: 'Running', completed: 'Completed', error: 'Error' } as Record<
|
|
203
|
-
'idle' | 'running' | 'completed' | 'error',
|
|
204
|
-
string
|
|
205
|
-
>,
|
|
206
|
-
detailsActivity: 'Activity',
|
|
207
|
-
detailsTurns: (count: number) => plural(count, 'turn'),
|
|
208
|
-
detailsMessages: (count: number) => plural(count, 'message'),
|
|
209
|
-
detailsRuns: (count: number) => plural(count, 'run'),
|
|
210
|
-
detailsModel: 'Model',
|
|
211
|
-
detailsProviderHint: 'Provider',
|
|
212
|
-
detailsDefaultModel: 'Default',
|
|
213
|
-
detailsEffortHint: 'Reasoning effort',
|
|
214
|
-
detailsAccountHint: 'Account it runs on',
|
|
215
|
-
detailsAccountSignedOut: 'account signed out',
|
|
216
|
-
detailsAgent: 'Agent',
|
|
217
|
-
detailsTitleFact: 'Title',
|
|
218
|
-
detailsSpace: 'Space',
|
|
219
|
-
detailsSpaceLabel: 'Session space',
|
|
220
|
-
detailsSpaceHint: 'Move this session to another space',
|
|
221
|
-
detailsMainEverySpace: 'Main shows in every space',
|
|
222
|
-
detailsCreated: 'Created',
|
|
223
|
-
detailsUpdated: 'Updated',
|
|
224
|
-
detailsUnknown: 'unknown',
|
|
225
|
-
detailsId: 'ID',
|
|
226
|
-
detailsCopyId: 'Copy session id',
|
|
227
|
-
detailsCopyIdHint: 'Copy id',
|
|
228
|
-
detailsCopied: 'Copied',
|
|
229
|
-
detailsFolder: 'Folder',
|
|
230
|
-
detailsMainNoFolder: 'None. Main has no folder.',
|
|
231
|
-
detailsNoFolder: 'No folder. Tools have no working directory.',
|
|
232
|
-
detailsReveal: 'Open in Finder',
|
|
233
|
-
detailsRevealHint: (cwd: string) => `Show ${cwd} in Finder`,
|
|
234
|
-
detailsFolderGone: (cwd: string) => `Couldn't open ${cwd}. The folder is gone.`,
|
|
235
|
-
detailsFolderLocation: (where: FolderLocation) =>
|
|
236
|
-
where.kind === 'server-gone'
|
|
237
|
-
? 'on a server that is no longer saved'
|
|
238
|
-
: where.kind === 'machine'
|
|
239
|
-
? `on ${where.name}`
|
|
240
|
-
: 'in its sandbox',
|
|
241
|
-
detailsFolderElsewhere: (where: string) => `The folder is ${where}: this computer's picker can't choose it`,
|
|
242
|
-
detailsMainHasNoFolder: 'Main has no folder',
|
|
243
|
-
detailsStopToChange: 'Stop the run to change the folder',
|
|
244
|
-
detailsPickOther: 'Pick a different folder',
|
|
245
|
-
detailsAttachHint: 'Attach a folder for tools to work in',
|
|
246
|
-
detailsChange: 'Change…',
|
|
247
|
-
detailsSetFolder: 'Set folder…',
|
|
248
|
-
detailsStopToDetach: 'Stop the run to detach the folder',
|
|
249
|
-
detailsDetachHint: 'Detach the folder and keep chatting',
|
|
250
|
-
detailsDetach: 'Detach',
|
|
251
|
-
detailsCache: 'Cache',
|
|
252
|
-
detailsCompact: 'Compact context',
|
|
253
|
-
detailsCompactHint: 'Summarize older turns to free up context.',
|
|
254
|
-
detailsCompactNow: 'Compact now',
|
|
255
|
-
detailsCompacting: 'Compacting…',
|
|
256
|
-
detailsExport: 'Export transcript',
|
|
257
|
-
detailsExportHint: 'Write the conversation to a file next to the project.',
|
|
258
|
-
detailsSavedTo: 'Saved to',
|
|
259
|
-
detailsExporting: 'Exporting…',
|
|
260
|
-
detailsMarkdown: 'Markdown',
|
|
261
|
-
detailsJson: 'JSON',
|
|
262
|
-
};
|
|
263
|
-
|
|
264
|
-
const STATUS: Record<TodoStatus, string> = {
|
|
265
|
-
pending: 'pending',
|
|
266
|
-
in_progress: 'in progress',
|
|
267
|
-
completed: 'completed',
|
|
268
|
-
cancelled: 'cancelled',
|
|
269
|
-
};
|
|
270
|
-
|
|
271
|
-
/** The default English strings of the session panels. Override any of them through `SessionProvider`. */
|
|
272
|
-
export const DEFAULT_SESSION_LABELS = {
|
|
273
|
-
// The Diffs file list
|
|
274
|
-
diffChangedFiles: 'Changed files',
|
|
275
|
-
diffFindings: (errors: number, warnings: number) =>
|
|
276
|
-
`${errors} error${errors === 1 ? '' : 's'}, ${warnings} warning${warnings === 1 ? '' : 's'} from project tools`,
|
|
277
|
-
// The todo tally chips
|
|
278
|
-
todoTally: { in_progress: 'in progress', completed: 'done', pending: 'pending', cancelled: 'cancelled' } as Record<
|
|
279
|
-
TodoStatus,
|
|
280
|
-
string
|
|
281
|
-
>,
|
|
282
|
-
// The Todos panel
|
|
283
|
-
todosEmpty: 'No todos yet',
|
|
284
|
-
todosEmptyHint: 'Add one below. The agent adds its own when it plans a task.',
|
|
285
|
-
todosLastList: 'Last list',
|
|
286
|
-
todosProgress: (done: number, total: number) => `${done}/${total} done`,
|
|
287
|
-
todoStatus: (status: TodoStatus) => STATUS[status],
|
|
288
|
-
todoChangeStatus: (status: TodoStatus) => `Change status, ${STATUS[status]}`,
|
|
289
|
-
todoChangeStatusHint: (status: TodoStatus) => `${STATUS[status]} (click to change)`,
|
|
290
|
-
todoEdit: 'Edit',
|
|
291
|
-
todoRetry: 'Retry',
|
|
292
|
-
todoRetryHint: 'Ask the agent to retry it',
|
|
293
|
-
todoRemove: 'Remove todo',
|
|
294
|
-
todoRemoveHint: 'Remove',
|
|
295
|
-
todosSaveFailed: "Couldn't save the todo list.",
|
|
296
|
-
todoAddPlaceholder: 'Add a todo…',
|
|
297
|
-
todoAddLabel: 'Add a todo',
|
|
298
|
-
todoAdd: 'Add',
|
|
299
|
-
todosClearConfirm: (count: number) => `Delete all ${count} todos?`,
|
|
300
|
-
todosClearYes: 'Yes',
|
|
301
|
-
todosClearCancel: 'Cancel',
|
|
302
|
-
todosClearHint: 'Remove all todos',
|
|
303
|
-
todosClear: 'Clear all',
|
|
304
|
-
// The side chat
|
|
305
|
-
sideEmptyTitle: 'Ask about this conversation',
|
|
306
|
-
sideEmptyHint: "The side chat sees the agent's work and never interrupts it.",
|
|
307
|
-
sidePlaceholder: 'Ask on the side…',
|
|
308
|
-
sideComposerLabel: 'Side chat message',
|
|
309
|
-
sideResetDescription: 'Clear this side chat and start over',
|
|
310
|
-
sideResetFailed: (reason: string) => `Couldn't reset this side chat: ${reason}`,
|
|
311
|
-
sideRefusal: (reason: 'no-conversation' | 'unavailable' | 'no-panel') =>
|
|
312
|
-
reason === 'no-conversation'
|
|
313
|
-
? 'Send a message first. A side chat follows a conversation.'
|
|
314
|
-
: reason === 'unavailable'
|
|
315
|
-
? "Side chats work only on this computer's conversations"
|
|
316
|
-
: 'This window has no side panel for side chats',
|
|
317
|
-
...SESSION_SURFACE_LABELS,
|
|
318
|
-
};
|
|
319
|
-
|
|
320
|
-
/** The shape of the session label dictionary. Some values are functions that build a string. */
|
|
321
|
-
export type SessionLabels = typeof DEFAULT_SESSION_LABELS;
|