@deepseek-harness-tui/dsh-tui 0.14.0 → 0.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +73 -14
- package/bin/dsh-tui.js +200 -34
- package/cordis.patch.yml +16 -52
- package/cordis.yml +6 -2
- package/guide/dsh-tui-guide/claude-backend.en.md +44 -7
- package/guide/dsh-tui-guide/claude-backend.md +28 -6
- package/guide/dsh-tui-guide/codex-backend.en.md +34 -7
- package/guide/dsh-tui-guide/codex-backend.md +17 -2
- package/guide/dsh-tui-guide/configuration.en.md +129 -16
- package/guide/dsh-tui-guide/configuration.md +110 -14
- package/guide/dsh-tui-guide/interaction.en.md +57 -24
- package/guide/dsh-tui-guide/interaction.md +42 -19
- package/guide/dsh-tui-guide/plugins.en.md +36 -3
- package/guide/dsh-tui-guide/plugins.md +21 -2
- package/guide/dsh-tui-guide/themes.en.md +23 -14
- package/guide/dsh-tui-guide/themes.md +19 -12
- package/guide/dsh-tui-guide/user-guide.en.md +51 -20
- package/guide/dsh-tui-guide/user-guide.md +41 -21
- package/lib/settings.json +103 -9
- package/lib/types/adapter/channel/ui-policy.d.ts +1 -1
- package/lib/types/adapter/channel/ui-policy.d.ts.map +1 -1
- package/lib/types/adapter/channel/ui-policy.js +3 -0
- package/lib/types/adapter/channel/ui.d.ts +2 -0
- package/lib/types/adapter/channel/ui.d.ts.map +1 -1
- package/lib/types/adapter/channel/ui.js +6 -2
- package/lib/types/adapter/kernel/runtime.d.ts.map +1 -1
- package/lib/types/adapter/kernel/runtime.js +2 -0
- package/lib/types/adapter/ports/channel-settings.d.ts +9 -0
- package/lib/types/adapter/ports/channel-settings.d.ts.map +1 -1
- package/lib/types/adapter/ports/channel-ui.d.ts +50 -12
- package/lib/types/adapter/ports/channel-ui.d.ts.map +1 -1
- package/lib/types/adapter/ports/channel-view.d.ts +21 -0
- package/lib/types/adapter/ports/channel-view.d.ts.map +1 -1
- package/lib/types/adapter/spec/backend-capabilities.d.ts +22 -0
- package/lib/types/adapter/spec/backend-capabilities.d.ts.map +1 -0
- package/lib/types/adapter/spec/backend-capabilities.js +49 -0
- package/lib/types/adapter/spec/protocol-constants.d.ts.map +1 -1
- package/lib/types/adapter/spec/protocol-constants.js +10 -3
- package/lib/types/adapter/spec/tui-contributions.d.ts +3 -0
- package/lib/types/adapter/spec/tui-contributions.d.ts.map +1 -1
- package/lib/types/adapter/spec/tui-contributions.js +7 -0
- package/lib/types/adapter/standard/registry.d.ts +6 -0
- package/lib/types/adapter/standard/registry.d.ts.map +1 -1
- package/lib/types/adapter/standard/registry.js +65 -15
- package/lib/types/adapter/standard/tui-extension.d.ts.map +1 -1
- package/lib/types/adapter/standard/tui-extension.js +7 -1
- package/lib/types/adapter/standard/types.d.ts +10 -1
- package/lib/types/adapter/standard/types.d.ts.map +1 -1
- package/lib/types/adapter/upstream/host-descriptor-driver.d.ts.map +1 -1
- package/lib/types/adapter/upstream/host-descriptor-driver.js +52 -0
- package/lib/types/agent/backend-manifest.d.ts +152 -0
- package/lib/types/agent/backend-manifest.d.ts.map +1 -0
- package/lib/types/agent/backend-manifest.js +14 -0
- package/lib/types/agent/backend.d.ts +71 -5
- package/lib/types/agent/backend.d.ts.map +1 -1
- package/lib/types/agent/capabilities.d.ts +6 -0
- package/lib/types/agent/capabilities.d.ts.map +1 -1
- package/lib/types/agent/index.d.ts +2 -0
- package/lib/types/agent/index.d.ts.map +1 -1
- package/lib/types/agent/refs.d.ts +11 -1
- package/lib/types/agent/refs.d.ts.map +1 -1
- package/lib/types/agent/starting-session.d.ts +4 -0
- package/lib/types/agent/starting-session.d.ts.map +1 -0
- package/lib/types/agent/starting-session.js +19 -0
- package/lib/types/backends/claude/activity.d.ts +1 -1
- package/lib/types/backends/claude/activity.d.ts.map +1 -1
- package/lib/types/backends/claude/activity.js +5 -5
- package/lib/types/backends/claude/auth.d.ts.map +1 -1
- package/lib/types/backends/claude/auth.js +10 -3
- package/lib/types/backends/claude/backend.d.ts.map +1 -1
- package/lib/types/backends/claude/backend.js +103 -29
- package/lib/types/backends/claude/catalog.d.ts +2 -1
- package/lib/types/backends/claude/catalog.d.ts.map +1 -1
- package/lib/types/backends/claude/catalog.js +15 -5
- package/lib/types/backends/claude/channels.d.ts +5 -3
- package/lib/types/backends/claude/channels.d.ts.map +1 -1
- package/lib/types/backends/claude/channels.js +5 -4
- package/lib/types/backends/claude/contract.d.ts +4 -0
- package/lib/types/backends/claude/contract.d.ts.map +1 -1
- package/lib/types/backends/claude/contract.js +4 -0
- package/lib/types/backends/claude/controls.d.ts +4 -0
- package/lib/types/backends/claude/controls.d.ts.map +1 -1
- package/lib/types/backends/claude/controls.js +34 -42
- package/lib/types/backends/claude/dialogs.d.ts +8 -2
- package/lib/types/backends/claude/dialogs.d.ts.map +1 -1
- package/lib/types/backends/claude/dialogs.js +24 -16
- package/lib/types/backends/claude/images.d.ts +1 -1
- package/lib/types/backends/claude/images.d.ts.map +1 -1
- package/lib/types/backends/claude/images.js +7 -7
- package/lib/types/backends/claude/manifest.d.ts +21 -0
- package/lib/types/backends/claude/manifest.d.ts.map +1 -0
- package/lib/types/backends/claude/manifest.js +29 -0
- package/lib/types/backends/claude/older-history.js +2 -2
- package/lib/types/backends/claude/permissions.js +11 -11
- package/lib/types/backends/claude/prefs.d.ts +4 -2
- package/lib/types/backends/claude/prefs.d.ts.map +1 -1
- package/lib/types/backends/claude/prefs.js +4 -3
- package/lib/types/backends/claude/process.d.ts +16 -4
- package/lib/types/backends/claude/process.d.ts.map +1 -1
- package/lib/types/backends/claude/process.js +100 -37
- package/lib/types/backends/claude/send-message.d.ts +1 -1
- package/lib/types/backends/claude/send-message.d.ts.map +1 -1
- package/lib/types/backends/claude/session/auth.js +22 -22
- package/lib/types/backends/claude/session/channels.d.ts +4 -0
- package/lib/types/backends/claude/session/channels.d.ts.map +1 -1
- package/lib/types/backends/claude/session/channels.js +5 -3
- package/lib/types/backends/claude/session/lifecycle.d.ts.map +1 -1
- package/lib/types/backends/claude/session/lifecycle.js +31 -23
- package/lib/types/backends/claude/session/store.js +8 -8
- package/lib/types/backends/claude/session/subagents.js +2 -2
- package/lib/types/backends/claude/session/types.d.ts +7 -0
- package/lib/types/backends/claude/session/types.d.ts.map +1 -1
- package/lib/types/backends/claude/side-query.js +3 -3
- package/lib/types/backends/claude/task-output.js +5 -5
- package/lib/types/backends/claude/text.d.ts +778 -0
- package/lib/types/backends/claude/text.d.ts.map +1 -0
- package/lib/types/backends/claude/text.js +298 -0
- package/lib/types/backends/claude/transcript-file.d.ts +1 -1
- package/lib/types/backends/claude/transcript-file.d.ts.map +1 -1
- package/lib/types/backends/claude/transcript-file.js +4 -4
- package/lib/types/backends/claude/translate/attempts.js +2 -2
- package/lib/types/backends/claude/translate/core.js +3 -3
- package/lib/types/backends/claude/translate/messages.js +4 -4
- package/lib/types/backends/claude/translate/system.js +14 -14
- package/lib/types/backends/claude/translate/tasks.js +2 -2
- package/lib/types/backends/claude/translate/types.d.ts +1 -1
- package/lib/types/backends/claude/translate/types.d.ts.map +1 -1
- package/lib/types/backends/codex/auth/external-tokens.js +16 -16
- package/lib/types/backends/codex/auth/status.js +14 -14
- package/lib/types/backends/codex/backend.d.ts +4 -19
- package/lib/types/backends/codex/backend.d.ts.map +1 -1
- package/lib/types/backends/codex/backend.js +118 -25
- package/lib/types/backends/codex/catalog.d.ts +2 -1
- package/lib/types/backends/codex/catalog.d.ts.map +1 -1
- package/lib/types/backends/codex/catalog.js +63 -18
- package/lib/types/backends/codex/channels.d.ts +6 -3
- package/lib/types/backends/codex/channels.d.ts.map +1 -1
- package/lib/types/backends/codex/channels.js +15 -13
- package/lib/types/backends/codex/detect.d.ts.map +1 -1
- package/lib/types/backends/codex/detect.js +9 -6
- package/lib/types/backends/codex/manifest.d.ts +30 -0
- package/lib/types/backends/codex/manifest.d.ts.map +1 -0
- package/lib/types/backends/codex/manifest.js +23 -0
- package/lib/types/backends/codex/prefs.d.ts +4 -2
- package/lib/types/backends/codex/prefs.d.ts.map +1 -1
- package/lib/types/backends/codex/prefs.js +4 -3
- package/lib/types/backends/codex/rpc/hub.js +2 -2
- package/lib/types/backends/codex/session/activity.d.ts +1 -1
- package/lib/types/backends/codex/session/activity.d.ts.map +1 -1
- package/lib/types/backends/codex/session/activity.js +13 -13
- package/lib/types/backends/codex/session/approvals.js +30 -30
- package/lib/types/backends/codex/session/commands.d.ts +8 -2
- package/lib/types/backends/codex/session/commands.d.ts.map +1 -1
- package/lib/types/backends/codex/session/commands.js +71 -23
- package/lib/types/backends/codex/session/controls.d.ts +1 -1
- package/lib/types/backends/codex/session/controls.d.ts.map +1 -1
- package/lib/types/backends/codex/session/controls.js +21 -16
- package/lib/types/backends/codex/session/goals.d.ts.map +1 -1
- package/lib/types/backends/codex/session/goals.js +3 -3
- package/lib/types/backends/codex/session/history.js +2 -2
- package/lib/types/backends/codex/session/images.js +8 -8
- package/lib/types/backends/codex/session/input.d.ts +6 -2
- package/lib/types/backends/codex/session/input.d.ts.map +1 -1
- package/lib/types/backends/codex/session/input.js +55 -13
- package/lib/types/backends/codex/session/plan-review.js +6 -6
- package/lib/types/backends/codex/session/session.d.ts.map +1 -1
- package/lib/types/backends/codex/session/session.js +66 -34
- package/lib/types/backends/codex/session/side-query.d.ts.map +1 -1
- package/lib/types/backends/codex/session/side-query.js +27 -9
- package/lib/types/backends/codex/session/state.d.ts +6 -1
- package/lib/types/backends/codex/session/state.d.ts.map +1 -1
- package/lib/types/backends/codex/session/subagents.js +5 -5
- package/lib/types/backends/codex/session/tasks.js +4 -4
- package/lib/types/backends/codex/text.d.ts +933 -0
- package/lib/types/backends/codex/text.d.ts.map +1 -0
- package/lib/types/backends/codex/text.js +313 -0
- package/lib/types/backends/codex/translate/items.js +4 -4
- package/lib/types/backends/codex/translate/live.d.ts.map +1 -1
- package/lib/types/backends/codex/translate/live.js +11 -8
- package/lib/types/backends/codex/translate/notices.js +10 -10
- package/lib/types/backends/shared/channel-slug.d.ts +4 -0
- package/lib/types/backends/shared/channel-slug.d.ts.map +1 -0
- package/lib/types/backends/shared/channel-slug.js +25 -0
- package/lib/types/backends/shared/channel-tokens.d.ts.map +1 -1
- package/lib/types/backends/shared/channel-tokens.js +30 -23
- package/lib/types/{channel → backends/shared}/elicitation.d.ts +78 -21
- package/lib/types/backends/shared/elicitation.d.ts.map +1 -0
- package/lib/types/{channel → backends/shared}/elicitation.js +64 -66
- package/lib/types/backends/shared/image-size.d.ts +33 -0
- package/lib/types/backends/shared/image-size.d.ts.map +1 -0
- package/lib/types/backends/shared/image-size.js +134 -0
- package/lib/types/{utils → backends/shared}/jsonl.d.ts +5 -1
- package/lib/types/backends/shared/jsonl.d.ts.map +1 -0
- package/lib/types/{utils → backends/shared}/jsonl.js +5 -1
- package/lib/types/backends/shared/localized-text.d.ts +30 -0
- package/lib/types/backends/shared/localized-text.d.ts.map +1 -0
- package/lib/types/backends/shared/localized-text.js +24 -0
- package/lib/types/backends/shared/platform-text.d.ts +88 -0
- package/lib/types/backends/shared/platform-text.d.ts.map +1 -0
- package/lib/types/backends/shared/platform-text.js +33 -0
- package/lib/types/branding.d.ts +13 -0
- package/lib/types/branding.d.ts.map +1 -1
- package/lib/types/branding.js +18 -0
- package/lib/types/channel/channel-slug.d.ts +3 -1
- package/lib/types/channel/channel-slug.d.ts.map +1 -1
- package/lib/types/channel/channel-slug.js +3 -1
- package/lib/types/channel/sanitize.d.ts +7 -0
- package/lib/types/channel/sanitize.d.ts.map +1 -1
- package/lib/types/channel/sanitize.js +9 -0
- package/lib/types/channel/usage.d.ts.map +1 -1
- package/lib/types/channel/usage.js +5 -0
- package/lib/types/commands.d.ts +5 -0
- package/lib/types/commands.d.ts.map +1 -1
- package/lib/types/commands.js +47 -8
- package/lib/types/components/AgentMessageComposer.d.ts.map +1 -1
- package/lib/types/components/AgentMessageComposer.js +3 -2
- package/lib/types/components/BtwPanel.d.ts.map +1 -1
- package/lib/types/components/BtwPanel.js +4 -2
- package/lib/types/components/Chat/JobCard.js +3 -3
- package/lib/types/components/CommandSuggestions.d.ts.map +1 -1
- package/lib/types/components/CommandSuggestions.js +20 -6
- package/lib/types/components/ContextBarView.d.ts +5 -1
- package/lib/types/components/ContextBarView.d.ts.map +1 -1
- package/lib/types/components/ContextBarView.js +6 -3
- package/lib/types/components/ExtensionDialog.d.ts.map +1 -1
- package/lib/types/components/ExtensionDialog.js +2 -3
- package/lib/types/components/GoalTodoPanel.d.ts.map +1 -1
- package/lib/types/components/GoalTodoPanel.js +14 -3
- package/lib/types/components/InlineMathParagraph.js +1 -1
- package/lib/types/components/KernelPicker.d.ts.map +1 -1
- package/lib/types/components/KernelPicker.js +1 -1
- package/lib/types/components/LogoV2.d.ts.map +1 -1
- package/lib/types/components/LogoV2.js +9 -6
- package/lib/types/components/MarkdownTable.d.ts.map +1 -1
- package/lib/types/components/MarkdownTable.js +4 -3
- package/lib/types/components/MessageList.d.ts.map +1 -1
- package/lib/types/components/MessageList.js +18 -5
- package/lib/types/components/ModelPicker.d.ts +24 -31
- package/lib/types/components/ModelPicker.d.ts.map +1 -1
- package/lib/types/components/ModelPicker.js +115 -40
- package/lib/types/components/PromptEditor.d.ts +3 -3
- package/lib/types/components/PromptInput.d.ts +21 -3
- package/lib/types/components/PromptInput.d.ts.map +1 -1
- package/lib/types/components/PromptInput.js +58 -118
- package/lib/types/components/SdkInstallWizard.d.ts +3 -1
- package/lib/types/components/SdkInstallWizard.d.ts.map +1 -1
- package/lib/types/components/SdkInstallWizard.js +8 -1
- package/lib/types/components/SearchBox.d.ts +13 -15
- package/lib/types/components/SearchBox.d.ts.map +1 -1
- package/lib/types/components/SearchBox.js +58 -27
- package/lib/types/components/ThemePicker.d.ts +1 -1
- package/lib/types/components/ThemePicker.d.ts.map +1 -1
- package/lib/types/components/ThemePicker.js +14 -11
- package/lib/types/components/Tooltip.js +1 -1
- package/lib/types/components/WorkingSpinner.js +1 -1
- package/lib/types/components/WorkspaceFlowPicker.d.ts.map +1 -1
- package/lib/types/components/WorkspaceFlowPicker.js +4 -3
- package/lib/types/components/composerImageTokens.d.ts +24 -0
- package/lib/types/components/composerImageTokens.d.ts.map +1 -0
- package/lib/types/components/composerImageTokens.js +37 -0
- package/lib/types/components/design-system/InputCaret.d.ts +7 -0
- package/lib/types/components/design-system/InputCaret.d.ts.map +1 -0
- package/lib/types/components/design-system/InputCaret.js +9 -0
- package/lib/types/components/design-system/ListItem.d.ts +13 -2
- package/lib/types/components/design-system/ListItem.d.ts.map +1 -1
- package/lib/types/components/design-system/ListItem.js +11 -5
- package/lib/types/components/design-system/ThemeProvider.d.ts.map +1 -1
- package/lib/types/components/design-system/ThemeProvider.js +6 -8
- package/lib/types/components/kernelCatalog.d.ts +55 -11
- package/lib/types/components/kernelCatalog.d.ts.map +1 -1
- package/lib/types/components/kernelCatalog.js +42 -23
- package/lib/types/components/launchpadActions.d.ts +4 -0
- package/lib/types/components/launchpadActions.d.ts.map +1 -1
- package/lib/types/components/launchpadActions.js +5 -4
- package/lib/types/components/launchpadLayout.d.ts.map +1 -1
- package/lib/types/components/launchpadLayout.js +2 -2
- package/lib/types/components/messages/UserPromptMessage.d.ts +4 -3
- package/lib/types/components/messages/UserPromptMessage.d.ts.map +1 -1
- package/lib/types/components/messages/UserPromptMessage.js +4 -3
- package/lib/types/components/questions/AskUserQuestionPanel.d.ts.map +1 -1
- package/lib/types/components/questions/AskUserQuestionPanel.js +8 -3
- package/lib/types/components/questions/PlanReviewPanel.d.ts.map +1 -1
- package/lib/types/components/questions/PlanReviewPanel.js +4 -3
- package/lib/types/components/questions/ProviderModelEditor.d.ts.map +1 -1
- package/lib/types/components/questions/ProviderModelEditor.js +3 -13
- package/lib/types/components/sessions/ForeignSessionRow.d.ts +3 -1
- package/lib/types/components/sessions/ForeignSessionRow.d.ts.map +1 -1
- package/lib/types/components/sessions/ForeignSessionRow.js +5 -2
- package/lib/types/components/sessions/SessionListRow.d.ts +3 -1
- package/lib/types/components/sessions/SessionListRow.d.ts.map +1 -1
- package/lib/types/components/sessions/SessionListRow.js +5 -2
- package/lib/types/components/sidePanel/PanelBar.d.ts +1 -0
- package/lib/types/components/sidePanel/PanelBar.d.ts.map +1 -1
- package/lib/types/components/sidePanel/PanelBar.js +21 -17
- package/lib/types/components/sidePanel/SidePanelColumn.d.ts +1 -1
- package/lib/types/components/sidePanel/SidePanelColumn.d.ts.map +1 -1
- package/lib/types/components/sidePanel/SidePanelColumn.js +2 -1
- package/lib/types/components/sidePanel/SidePanelLayout.d.ts +6 -4
- package/lib/types/components/sidePanel/SidePanelLayout.d.ts.map +1 -1
- package/lib/types/components/sidePanel/SidePanelLayout.js +33 -7
- package/lib/types/components/sidePanel/btw/BtwComposer.d.ts +4 -2
- package/lib/types/components/sidePanel/btw/BtwComposer.d.ts.map +1 -1
- package/lib/types/components/sidePanel/btw/BtwComposer.js +12 -4
- package/lib/types/components/sidePanel/btw/BtwPanelAdapter.d.ts.map +1 -1
- package/lib/types/components/sidePanel/btw/BtwPanelAdapter.js +59 -15
- package/lib/types/components/sidePanel/btw/BtwThreadScene.d.ts.map +1 -1
- package/lib/types/components/sidePanel/btw/BtwThreadScene.js +4 -2
- package/lib/types/components/sidePanel/btw/BtwThreadView.d.ts +1 -1
- package/lib/types/components/sidePanel/btw/BtwThreadView.d.ts.map +1 -1
- package/lib/types/components/sidePanel/btw/BtwThreadView.js +12 -6
- package/lib/types/components/sidePanel/companion/CompanionPanel.js +2 -2
- package/lib/types/components/sidePanel/types.d.ts +1 -1
- package/lib/types/components/sidePanel/types.d.ts.map +1 -1
- package/lib/types/components/sidePanel/useSidePanel.d.ts +2 -0
- package/lib/types/components/sidePanel/useSidePanel.d.ts.map +1 -1
- package/lib/types/components/sidePanel/useSidePanel.js +11 -1
- package/lib/types/components/splashFonts.d.ts +24 -1
- package/lib/types/components/splashFonts.d.ts.map +1 -1
- package/lib/types/components/splashFonts.js +40 -5
- package/lib/types/components/workspaces/HomeWorkspaceRow.d.ts +3 -1
- package/lib/types/components/workspaces/HomeWorkspaceRow.d.ts.map +1 -1
- package/lib/types/components/workspaces/HomeWorkspaceRow.js +5 -2
- package/lib/types/dsh-adapter/admission-loader.d.ts +20 -0
- package/lib/types/dsh-adapter/admission-loader.d.ts.map +1 -0
- package/lib/types/dsh-adapter/admission-loader.js +256 -0
- package/lib/types/dsh-adapter/backend/translate.d.ts.map +1 -1
- package/lib/types/dsh-adapter/backend/translate.js +3 -0
- package/lib/types/dsh-adapter/backend-admission.d.ts +64 -0
- package/lib/types/dsh-adapter/backend-admission.d.ts.map +1 -0
- package/lib/types/dsh-adapter/backend-admission.js +34 -0
- package/lib/types/dsh-adapter/backend-contribution.d.ts +26 -0
- package/lib/types/dsh-adapter/backend-contribution.d.ts.map +1 -0
- package/lib/types/dsh-adapter/backend-contribution.js +37 -0
- package/lib/types/dsh-adapter/backend-registry.d.ts +136 -0
- package/lib/types/dsh-adapter/backend-registry.d.ts.map +1 -0
- package/lib/types/dsh-adapter/backend-registry.js +285 -0
- package/lib/types/dsh-adapter/backends.d.ts +67 -24
- package/lib/types/dsh-adapter/backends.d.ts.map +1 -1
- package/lib/types/dsh-adapter/backends.generated.d.ts +12 -0
- package/lib/types/dsh-adapter/backends.generated.d.ts.map +1 -0
- package/lib/types/dsh-adapter/backends.generated.js +6 -0
- package/lib/types/dsh-adapter/backends.js +92 -46
- package/lib/types/dsh-adapter/channel/action-readiness.d.ts +2 -0
- package/lib/types/dsh-adapter/channel/action-readiness.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/action-readiness.js +9 -3
- package/lib/types/dsh-adapter/channel/agent-view-projection.js +2 -2
- package/lib/types/dsh-adapter/channel/background-action.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/background-action.js +8 -3
- package/lib/types/dsh-adapter/channel/binding-events.d.ts +16 -3
- package/lib/types/dsh-adapter/channel/binding-events.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/binding-events.js +18 -46
- package/lib/types/dsh-adapter/channel/channel-host.d.ts +45 -0
- package/lib/types/dsh-adapter/channel/channel-host.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/channel-host.js +1 -0
- package/lib/types/dsh-adapter/channel/command-completions.d.ts +5 -0
- package/lib/types/dsh-adapter/channel/command-completions.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/command-completions.js +16 -0
- package/lib/types/dsh-adapter/channel/composer-images.d.ts +4 -2
- package/lib/types/dsh-adapter/channel/composer-images.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/composer-images.js +36 -5
- package/lib/types/dsh-adapter/channel/cordis-host.d.ts +14 -0
- package/lib/types/dsh-adapter/channel/cordis-host.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/cordis-host.js +35 -0
- package/lib/types/dsh-adapter/channel/core/actions.d.ts +3 -3
- package/lib/types/dsh-adapter/channel/core/actions.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/core/actions.js +15 -6
- package/lib/types/dsh-adapter/channel/core/binding-feed.d.ts +7 -3
- package/lib/types/dsh-adapter/channel/core/binding-feed.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/core/binding-feed.js +3 -0
- package/lib/types/dsh-adapter/channel/core/compose.d.ts +12 -28
- package/lib/types/dsh-adapter/channel/core/compose.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/core/compose.js +318 -117
- package/lib/types/dsh-adapter/channel/core/files.d.ts +7 -2
- package/lib/types/dsh-adapter/channel/core/files.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/core/files.js +1 -0
- package/lib/types/dsh-adapter/channel/core/host.d.ts +12 -6
- package/lib/types/dsh-adapter/channel/core/host.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/core/host.js +69 -35
- package/lib/types/dsh-adapter/channel/core/local-actions.d.ts +5 -3
- package/lib/types/dsh-adapter/channel/core/local-actions.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/core/local-actions.js +5 -2
- package/lib/types/dsh-adapter/channel/core/session-controls.js +2 -2
- package/lib/types/dsh-adapter/channel/core/session-switch.d.ts +7 -4
- package/lib/types/dsh-adapter/channel/core/session-switch.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/core/session-switch.js +8 -4
- package/lib/types/dsh-adapter/channel/core/sessions.d.ts +1 -1
- package/lib/types/dsh-adapter/channel/core/sessions.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/core/sessions.js +75 -16
- package/lib/types/dsh-adapter/channel/extensions.d.ts +4 -3
- package/lib/types/dsh-adapter/channel/extensions.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/extensions.js +41 -22
- package/lib/types/dsh-adapter/channel/input-delivery.d.ts +2 -2
- package/lib/types/dsh-adapter/channel/input-delivery.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/input-delivery.js +14 -5
- package/lib/types/dsh-adapter/channel/job-projection.d.ts +4 -0
- package/lib/types/dsh-adapter/channel/job-projection.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/job-projection.js +205 -24
- package/lib/types/dsh-adapter/channel/mentions.d.ts +3 -3
- package/lib/types/dsh-adapter/channel/mentions.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/mode-permission-actions.d.ts +1 -0
- package/lib/types/dsh-adapter/channel/mode-permission-actions.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/mode-permission-actions.js +138 -8
- package/lib/types/dsh-adapter/channel/model-actions.d.ts +5 -1
- package/lib/types/dsh-adapter/channel/model-actions.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/model-actions.js +40 -28
- package/lib/types/dsh-adapter/channel/model-selection.d.ts +17 -0
- package/lib/types/dsh-adapter/channel/model-selection.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/model-selection.js +109 -0
- package/lib/types/dsh-adapter/channel/model-switch.d.ts +12 -21
- package/lib/types/dsh-adapter/channel/model-switch.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/model-switch.js +39 -102
- package/lib/types/dsh-adapter/channel/projection.js +1 -1
- package/lib/types/dsh-adapter/channel/reports.d.ts +1 -1
- package/lib/types/dsh-adapter/channel/reports.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/reports.js +11 -3
- package/lib/types/dsh-adapter/channel/session-fork.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/session-fork.js +33 -20
- package/lib/types/dsh-adapter/channel/session-listing.d.ts +20 -0
- package/lib/types/dsh-adapter/channel/session-listing.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/session-listing.js +51 -0
- package/lib/types/dsh-adapter/channel/session-metadata.d.ts +3 -1
- package/lib/types/dsh-adapter/channel/session-metadata.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/session-metadata.js +56 -27
- package/lib/types/dsh-adapter/channel/session-resume.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/session-resume.js +15 -8
- package/lib/types/dsh-adapter/channel/session-rewind.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/session-rewind.js +38 -24
- package/lib/types/dsh-adapter/channel/session-tree-actions.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/session-tree-actions.js +38 -24
- package/lib/types/dsh-adapter/channel/settings-host.d.ts +2 -2
- package/lib/types/dsh-adapter/channel/settings-host.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/settings-host.js +1 -0
- package/lib/types/dsh-adapter/channel/state.d.ts +37 -1
- package/lib/types/dsh-adapter/channel/state.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/state.js +14 -1
- package/lib/types/dsh-adapter/channel/subagent-projection.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/subagent-projection.js +66 -6
- package/lib/types/dsh-adapter/channel/task-completion.d.ts +6 -0
- package/lib/types/dsh-adapter/channel/task-completion.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/task-completion.js +114 -0
- package/lib/types/dsh-adapter/channel/transcript.d.ts +1 -1
- package/lib/types/dsh-adapter/channel/transcript.js +1 -1
- package/lib/types/dsh-adapter/channel/upstream-retry.d.ts +81 -0
- package/lib/types/dsh-adapter/channel/upstream-retry.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/upstream-retry.js +138 -0
- package/lib/types/dsh-adapter/channel/workspace-actions.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/workspace-actions.js +9 -8
- package/lib/types/dsh-adapter/channel-ui.d.ts +3 -1
- package/lib/types/dsh-adapter/channel-ui.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel-ui.js +4 -2
- package/lib/types/dsh-adapter/channel.d.ts +2 -2
- package/lib/types/dsh-adapter/channel.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel.js +19 -5
- package/lib/types/dsh-adapter/context-occupancy.d.ts +81 -4
- package/lib/types/dsh-adapter/context-occupancy.d.ts.map +1 -1
- package/lib/types/dsh-adapter/context-occupancy.js +108 -17
- package/lib/types/dsh-adapter/contract.d.ts +1 -1
- package/lib/types/dsh-adapter/contract.d.ts.map +1 -1
- package/lib/types/dsh-adapter/contract.js +15 -0
- package/lib/types/dsh-adapter/entry-slot.d.ts +36 -0
- package/lib/types/dsh-adapter/entry-slot.d.ts.map +1 -0
- package/lib/types/dsh-adapter/entry-slot.js +28 -0
- package/lib/types/dsh-adapter/fresh-agent.d.ts +22 -0
- package/lib/types/dsh-adapter/fresh-agent.d.ts.map +1 -0
- package/lib/types/dsh-adapter/fresh-agent.js +221 -0
- package/lib/types/dsh-adapter/host-access.d.ts +16 -1
- package/lib/types/dsh-adapter/host-access.d.ts.map +1 -1
- package/lib/types/dsh-adapter/host-access.js +53 -2
- package/lib/types/dsh-adapter/host-contract.d.ts +103 -0
- package/lib/types/dsh-adapter/host-contract.d.ts.map +1 -0
- package/lib/types/dsh-adapter/host-contract.js +76 -0
- package/lib/types/dsh-adapter/host-dsh.d.ts +106 -0
- package/lib/types/dsh-adapter/host-dsh.d.ts.map +1 -0
- package/lib/types/dsh-adapter/host-dsh.js +466 -0
- package/lib/types/dsh-adapter/host-entry.d.ts +9 -0
- package/lib/types/dsh-adapter/host-entry.d.ts.map +1 -0
- package/lib/types/dsh-adapter/host-entry.js +228 -0
- package/lib/types/dsh-adapter/index.d.ts +55 -18
- package/lib/types/dsh-adapter/index.d.ts.map +1 -1
- package/lib/types/dsh-adapter/index.js +59 -7
- package/lib/types/dsh-adapter/install/executors.d.ts +44 -0
- package/lib/types/dsh-adapter/install/executors.d.ts.map +1 -0
- package/lib/types/dsh-adapter/install/executors.js +15 -0
- package/lib/types/dsh-adapter/install/pnpm-profile-add.d.ts +3 -0
- package/lib/types/dsh-adapter/install/pnpm-profile-add.d.ts.map +1 -0
- package/lib/types/dsh-adapter/install/pnpm-profile-add.js +150 -0
- package/lib/types/dsh-adapter/jobs.d.ts +7 -0
- package/lib/types/dsh-adapter/jobs.d.ts.map +1 -1
- package/lib/types/dsh-adapter/jobs.js +13 -0
- package/lib/types/dsh-adapter/lite-profile.d.ts +50 -0
- package/lib/types/dsh-adapter/lite-profile.d.ts.map +1 -0
- package/lib/types/dsh-adapter/lite-profile.js +49 -0
- package/lib/types/dsh-adapter/migrate/parse/jsonl.d.ts +1 -1
- package/lib/types/dsh-adapter/migrate/parse/jsonl.d.ts.map +1 -1
- package/lib/types/dsh-adapter/migrate/parse/jsonl.js +4 -3
- package/lib/types/dsh-adapter/oauth/profiles.d.ts.map +1 -1
- package/lib/types/dsh-adapter/oauth/profiles.js +5 -1
- package/lib/types/dsh-adapter/panels.d.ts +7 -0
- package/lib/types/dsh-adapter/panels.d.ts.map +1 -1
- package/lib/types/dsh-adapter/panels.js +35 -2
- package/lib/types/dsh-adapter/plugin-completions.d.ts +32 -0
- package/lib/types/dsh-adapter/plugin-completions.d.ts.map +1 -0
- package/lib/types/dsh-adapter/plugin-completions.js +80 -0
- package/lib/types/dsh-adapter/plugin-declaration.d.ts +21 -0
- package/lib/types/dsh-adapter/plugin-declaration.d.ts.map +1 -0
- package/lib/types/dsh-adapter/plugin-declaration.js +53 -0
- package/lib/types/dsh-adapter/plugin-host.d.ts +13 -2
- package/lib/types/dsh-adapter/plugin-host.d.ts.map +1 -1
- package/lib/types/dsh-adapter/plugin-host.js +34 -8
- package/lib/types/dsh-adapter/plugin-manager.d.ts +68 -0
- package/lib/types/dsh-adapter/plugin-manager.d.ts.map +1 -0
- package/lib/types/dsh-adapter/plugin-manager.js +51 -0
- package/lib/types/dsh-adapter/plugin.d.ts +50 -1
- package/lib/types/dsh-adapter/plugin.d.ts.map +1 -1
- package/lib/types/dsh-adapter/plugin.js +870 -233
- package/lib/types/dsh-adapter/plugins-info.d.ts +44 -8
- package/lib/types/dsh-adapter/plugins-info.d.ts.map +1 -1
- package/lib/types/dsh-adapter/plugins-info.js +354 -34
- package/lib/types/dsh-adapter/process-exit.d.ts +43 -0
- package/lib/types/dsh-adapter/process-exit.d.ts.map +1 -0
- package/lib/types/dsh-adapter/process-exit.js +60 -0
- package/lib/types/dsh-adapter/root-dispose.d.ts +18 -0
- package/lib/types/dsh-adapter/root-dispose.d.ts.map +1 -0
- package/lib/types/dsh-adapter/root-dispose.js +28 -0
- package/lib/types/dsh-adapter/session-list-metadata.d.ts +20 -0
- package/lib/types/dsh-adapter/session-list-metadata.d.ts.map +1 -0
- package/lib/types/dsh-adapter/session-list-metadata.js +56 -0
- package/lib/types/dsh-adapter/session-seed.d.ts +11 -0
- package/lib/types/dsh-adapter/session-seed.d.ts.map +1 -0
- package/lib/types/dsh-adapter/session-seed.js +47 -0
- package/lib/types/dsh-adapter/sessions/list.d.ts +3 -1
- package/lib/types/dsh-adapter/sessions/list.d.ts.map +1 -1
- package/lib/types/dsh-adapter/sessions/list.js +11 -5
- package/lib/types/dsh-adapter/sessions/snapshot.d.ts +0 -2
- package/lib/types/dsh-adapter/sessions/snapshot.d.ts.map +1 -1
- package/lib/types/dsh-adapter/sessions/snapshot.js +7 -70
- package/lib/types/dsh-adapter/startup-args.d.ts +2 -0
- package/lib/types/dsh-adapter/startup-args.d.ts.map +1 -1
- package/lib/types/dsh-adapter/startup-args.js +5 -0
- package/lib/types/dsh-adapter/subagents.d.ts +33 -1
- package/lib/types/dsh-adapter/subagents.d.ts.map +1 -1
- package/lib/types/dsh-adapter/subagents.js +110 -8
- package/lib/types/dsh-adapter/tui-settings.d.ts +57 -0
- package/lib/types/dsh-adapter/tui-settings.d.ts.map +1 -0
- package/lib/types/dsh-adapter/tui-settings.js +199 -0
- package/lib/types/effortPrefs.d.ts +6 -3
- package/lib/types/effortPrefs.d.ts.map +1 -1
- package/lib/types/effortPrefs.js +7 -4
- package/lib/types/hostEntryRoute.d.ts +18 -0
- package/lib/types/hostEntryRoute.d.ts.map +1 -0
- package/lib/types/hostEntryRoute.js +57 -0
- package/lib/types/i18n.d.ts +363 -1432
- package/lib/types/i18n.d.ts.map +1 -1
- package/lib/types/i18n.js +155 -385
- package/lib/types/ink/components/AlternateScreen.js +2 -2
- package/lib/types/ink/components/App.d.ts +1 -0
- package/lib/types/ink/components/App.d.ts.map +1 -1
- package/lib/types/ink/components/App.js +16 -4
- package/lib/types/ink/components/CursorDeclarationContext.d.ts +9 -0
- package/lib/types/ink/components/CursorDeclarationContext.d.ts.map +1 -1
- package/lib/types/ink/components/CursorDeclarationContext.js +2 -0
- package/lib/types/ink/hooks/use-copy-on-select.d.ts +2 -2
- package/lib/types/ink/hooks/use-copy-on-select.d.ts.map +1 -1
- package/lib/types/ink/hooks/use-copy-on-select.js +13 -7
- package/lib/types/ink/hooks/use-declared-cursor.d.ts +11 -3
- package/lib/types/ink/hooks/use-declared-cursor.d.ts.map +1 -1
- package/lib/types/ink/hooks/use-declared-cursor.js +30 -10
- package/lib/types/ink/ink.d.ts +22 -17
- package/lib/types/ink/ink.d.ts.map +1 -1
- package/lib/types/ink/ink.js +151 -40
- package/lib/types/ink/kitty-graphics.d.ts +2 -0
- package/lib/types/ink/kitty-graphics.d.ts.map +1 -1
- package/lib/types/ink/kitty-graphics.js +6 -1
- package/lib/types/ink/node-cache.d.ts +2 -1
- package/lib/types/ink/node-cache.d.ts.map +1 -1
- package/lib/types/ink/output.d.ts +10 -4
- package/lib/types/ink/output.d.ts.map +1 -1
- package/lib/types/ink/output.js +14 -10
- package/lib/types/ink/render-node-to-output.d.ts +5 -2
- package/lib/types/ink/render-node-to-output.d.ts.map +1 -1
- package/lib/types/ink/render-node-to-output.js +27 -9
- package/lib/types/ink/renderer.d.ts +1 -0
- package/lib/types/ink/renderer.d.ts.map +1 -1
- package/lib/types/ink/renderer.js +4 -3
- package/lib/types/ink/root.d.ts +4 -1
- package/lib/types/ink/root.d.ts.map +1 -1
- package/lib/types/ink/screen.d.ts +4 -2
- package/lib/types/ink/screen.d.ts.map +1 -1
- package/lib/types/ink/selection.d.ts +10 -1
- package/lib/types/ink/selection.d.ts.map +1 -1
- package/lib/types/ink/selection.js +94 -25
- package/lib/types/ink/stdin-handoff.d.ts +11 -0
- package/lib/types/ink/stdin-handoff.d.ts.map +1 -0
- package/lib/types/ink/stdin-handoff.js +20 -0
- package/lib/types/ink/styles.d.ts +2 -1
- package/lib/types/ink/styles.d.ts.map +1 -1
- package/lib/types/ink/terminal-image.d.ts +6 -4
- package/lib/types/ink/terminal-image.d.ts.map +1 -1
- package/lib/types/ink/terminal-image.js +16 -39
- package/lib/types/ink/terminal-notification.d.ts +8 -0
- package/lib/types/ink/terminal-notification.d.ts.map +1 -0
- package/lib/types/ink/terminal-notification.js +83 -0
- package/lib/types/ink/terminal.d.ts +9 -0
- package/lib/types/ink/terminal.d.ts.map +1 -1
- package/lib/types/ink/terminal.js +34 -1
- package/lib/types/ink/termio/csi.d.ts +11 -0
- package/lib/types/ink/termio/csi.d.ts.map +1 -1
- package/lib/types/ink/termio/csi.js +13 -0
- package/lib/types/ink/update-overflow-guard.d.ts +6 -0
- package/lib/types/ink/update-overflow-guard.d.ts.map +1 -1
- package/lib/types/ink/update-overflow-guard.js +17 -0
- package/lib/types/ink/wrap-text.d.ts +6 -0
- package/lib/types/ink/wrap-text.d.ts.map +1 -1
- package/lib/types/ink/wrap-text.js +17 -0
- package/lib/types/kernelPrefs.d.ts +129 -16
- package/lib/types/kernelPrefs.d.ts.map +1 -1
- package/lib/types/kernelPrefs.js +98 -35
- package/lib/types/math/inline-layout.d.ts +2 -0
- package/lib/types/math/inline-layout.d.ts.map +1 -1
- package/lib/types/math/inline-layout.js +5 -27
- package/lib/types/modelGroups.d.ts +15 -27
- package/lib/types/modelGroups.d.ts.map +1 -1
- package/lib/types/modelGroups.js +17 -31
- package/lib/types/modelPrefs.d.ts +5 -4
- package/lib/types/modelPrefs.d.ts.map +1 -1
- package/lib/types/modelPrefs.js +5 -4
- package/lib/types/modelRoute.d.ts +23 -9
- package/lib/types/modelRoute.d.ts.map +1 -1
- package/lib/types/modelRoute.js +25 -11
- package/lib/types/permissionPrefs.d.ts +34 -0
- package/lib/types/permissionPrefs.d.ts.map +1 -0
- package/lib/types/permissionPrefs.js +61 -0
- package/lib/types/plugin-host.d.ts +1 -0
- package/lib/types/plugin-host.d.ts.map +1 -1
- package/lib/types/presetPrefs.d.ts +17 -3
- package/lib/types/presetPrefs.d.ts.map +1 -1
- package/lib/types/presetPrefs.js +20 -3
- package/lib/types/reload.d.ts +6 -10
- package/lib/types/reload.d.ts.map +1 -1
- package/lib/types/reload.js +14 -14
- package/lib/types/screens/Chat.d.ts +22 -15
- package/lib/types/screens/Chat.d.ts.map +1 -1
- package/lib/types/screens/Chat.js +442 -272
- package/lib/types/screens/Launchpad.d.ts +27 -17
- package/lib/types/screens/Launchpad.d.ts.map +1 -1
- package/lib/types/screens/Launchpad.js +241 -78
- package/lib/types/screens/SessionSupervisor.d.ts.map +1 -1
- package/lib/types/screens/SessionSupervisor.js +53 -12
- package/lib/types/screens/Settings.d.ts.map +1 -1
- package/lib/types/screens/Settings.js +6 -0
- package/lib/types/screens/StatusLine.d.ts.map +1 -1
- package/lib/types/screens/StatusLine.js +24 -7
- package/lib/types/screens/StatusMetrics.d.ts +46 -1
- package/lib/types/screens/StatusMetrics.d.ts.map +1 -1
- package/lib/types/screens/StatusMetrics.js +72 -0
- package/lib/types/screens/chat/useKernelPicker.d.ts +8 -4
- package/lib/types/screens/chat/useKernelPicker.d.ts.map +1 -1
- package/lib/types/screens/chat/useKernelPicker.js +61 -21
- package/lib/types/screens/chat/useModelPicker.d.ts +42 -0
- package/lib/types/screens/chat/useModelPicker.d.ts.map +1 -0
- package/lib/types/screens/chat/useModelPicker.js +182 -0
- package/lib/types/screens/chatOverlay.d.ts +11 -4
- package/lib/types/screens/chatOverlay.d.ts.map +1 -1
- package/lib/types/screens/chatOverlay.js +0 -1
- package/lib/types/screens/sessionSupervisor/ForeignSessionPanes.d.ts +4 -1
- package/lib/types/screens/sessionSupervisor/ForeignSessionPanes.d.ts.map +1 -1
- package/lib/types/screens/sessionSupervisor/ForeignSessionPanes.js +26 -5
- package/lib/types/screens/sessionSupervisor/useSessionSupervisor.d.ts +1 -1
- package/lib/types/screens/sessionSupervisor/useSessionSupervisor.d.ts.map +1 -1
- package/lib/types/screens/sessionSupervisor/useSessionSupervisor.js +51 -29
- package/lib/types/sessionHistory.d.ts +5 -0
- package/lib/types/sessionHistory.d.ts.map +1 -1
- package/lib/types/sessionHistory.js +5 -0
- package/lib/types/sessions/listSnapshot.d.ts +6 -0
- package/lib/types/sessions/listSnapshot.d.ts.map +1 -0
- package/lib/types/sessions/listSnapshot.js +67 -0
- package/lib/types/settings/definitions.d.ts +50 -0
- package/lib/types/settings/definitions.d.ts.map +1 -1
- package/lib/types/settings/definitions.js +42 -8
- package/lib/types/terminal-utils/cjk-emphasis.d.ts +28 -0
- package/lib/types/terminal-utils/cjk-emphasis.d.ts.map +1 -0
- package/lib/types/terminal-utils/cjk-emphasis.js +31 -0
- package/lib/types/terminal-utils/markdown.d.ts +3 -1
- package/lib/types/terminal-utils/markdown.d.ts.map +1 -1
- package/lib/types/terminal-utils/markdown.js +7 -2
- package/lib/types/theme.d.ts +29 -12
- package/lib/types/theme.d.ts.map +1 -1
- package/lib/types/theme.js +310 -23
- package/lib/types/themeCatalog.d.ts.map +1 -1
- package/lib/types/themeCatalog.js +21 -2
- package/lib/types/tips.js +4 -4
- package/lib/types/tuiSettingsFile.d.ts +56 -0
- package/lib/types/tuiSettingsFile.d.ts.map +1 -0
- package/lib/types/tuiSettingsFile.js +206 -0
- package/lib/types/ui.d.ts +2 -0
- package/lib/types/ui.d.ts.map +1 -1
- package/lib/types/ui.js +2 -0
- package/lib/types/update.d.ts +72 -26
- package/lib/types/update.d.ts.map +1 -1
- package/lib/types/update.js +131 -43
- package/lib/types/utils/bmp.d.ts +7 -0
- package/lib/types/utils/bmp.d.ts.map +1 -1
- package/lib/types/utils/bmp.js +27 -0
- package/lib/types/utils/bootTrace.d.ts +2 -0
- package/lib/types/utils/bootTrace.d.ts.map +1 -0
- package/lib/types/utils/bootTrace.js +20 -0
- package/lib/types/utils/clipboard.d.ts.map +1 -1
- package/lib/types/utils/clipboard.js +11 -3
- package/lib/types/utils/credentials.d.ts +14 -2
- package/lib/types/utils/credentials.d.ts.map +1 -1
- package/lib/types/utils/credentials.js +34 -11
- package/lib/types/utils/imageResize.d.ts +10 -20
- package/lib/types/utils/imageResize.d.ts.map +1 -1
- package/lib/types/utils/imageResize.js +61 -134
- package/lib/types/utils/inputPaste.d.ts +2 -2
- package/lib/types/utils/inputPaste.js +2 -2
- package/lib/types/utils/pastedImagePath.d.ts +5 -0
- package/lib/types/utils/pastedImagePath.d.ts.map +1 -1
- package/lib/types/utils/pastedImagePath.js +33 -0
- package/package.json +36 -6
- package/presets/winbash.mjs +716 -0
- package/tui-profile/protocols/profile-definitions.d.ts +1 -0
- package/tui-profile/protocols/profile-definitions.js +14 -0
- package/tui-profile/protocols/tui-contributions.d.ts +55 -0
- package/tui-profile/protocols/tui-contributions.js +141 -0
- package/tui-profile/registry/contracts/backend-v1alpha1.json +13 -0
- package/tui-profile/registry/registry-0.15.json +12 -0
- package/lib/types/backends/claude/install.d.ts +0 -15
- package/lib/types/backends/claude/install.d.ts.map +0 -1
- package/lib/types/backends/claude/install.js +0 -91
- package/lib/types/channel/elicitation.d.ts.map +0 -1
- package/lib/types/dsh-adapter/channel/session-lineage.d.ts +0 -42
- package/lib/types/dsh-adapter/channel/session-lineage.d.ts.map +0 -1
- package/lib/types/dsh-adapter/channel/session-lineage.js +0 -51
- package/lib/types/utils/jsonl.d.ts.map +0 -1
|
@@ -5,12 +5,13 @@ import { clearResumeTarget, writeResumeTarget, touchAgentViewSession, touchSessi
|
|
|
5
5
|
import { mountFailureText } from '../../sessions/resumeFailure.js';
|
|
6
6
|
import { t } from '../../i18n.js';
|
|
7
7
|
import { readModelPref } from '../../modelPrefs.js';
|
|
8
|
-
import { migratePresetPref, readPresetPref } from '../../presetPrefs.js';
|
|
8
|
+
import { migratePresetPref, presetOverrideFromEnv, readPresetPref } from '../../presetPrefs.js';
|
|
9
9
|
import { agentViewHasTurns } from '../agent-view.js';
|
|
10
10
|
import { occupancyOf, readSessionOwners, reserveMount, reserveNewSession, } from '../../sessionMounts.js';
|
|
11
11
|
import { ensureLegacySessionEventTypes } from '../compat/index.js';
|
|
12
12
|
import { snapshotLiveSessionEvents } from '../compat/liveSession.js';
|
|
13
13
|
import { composePreset, resolvePersistedPreset, resolvePersistedRoute } from '../presets.js';
|
|
14
|
+
import { createFreshAgent } from '../fresh-agent.js';
|
|
14
15
|
import { attachSessionToWorkspace } from '../workspace.js';
|
|
15
16
|
import { createDshSession, dshHandleOf } from '../backend/session.js';
|
|
16
17
|
import { resetSessionProjection } from './session-reset.js';
|
|
@@ -84,9 +85,11 @@ export function createSessionResumeActions(ctx, state, options, deps) {
|
|
|
84
85
|
try {
|
|
85
86
|
candidate = await deps.binding.prepare(adoption, async () => createDshSession(ctx, await agents.resume({
|
|
86
87
|
resumeSessionId: SessionId(sessionId),
|
|
88
|
+
// The session's own recorded route is what it actually ran, so it
|
|
89
|
+
// outranks the static cordis.yml route (the deployment default).
|
|
87
90
|
agentOptions: {
|
|
88
|
-
provider:
|
|
89
|
-
model:
|
|
91
|
+
provider: persistedRoute?.provider ?? explicitRoute?.provider,
|
|
92
|
+
model: persistedRoute?.model ?? explicitRoute?.model,
|
|
90
93
|
},
|
|
91
94
|
...(composed.setup === undefined ? {} : { setup: composed.setup }),
|
|
92
95
|
})));
|
|
@@ -128,7 +131,7 @@ export function createSessionResumeActions(ctx, state, options, deps) {
|
|
|
128
131
|
// Reset the input FIFO and pending-decision indicators BEFORE the first
|
|
129
132
|
// emit (main's bind → clear → refresh order); see the /new tail.
|
|
130
133
|
deps.clearStagedImages();
|
|
131
|
-
resetAndBind(handle, composed.agentPreset,
|
|
134
|
+
resetAndBind(handle, composed.agentPreset, recordedModelRoute(snapshotLiveSessionEvents(handle.agent.session)) ?? explicitRoute, true);
|
|
132
135
|
writeResumeTarget(sessionId);
|
|
133
136
|
touchSession(sessionId);
|
|
134
137
|
state.emit();
|
|
@@ -342,8 +345,12 @@ export function createSessionResumeActions(ctx, state, options, deps) {
|
|
|
342
345
|
if (!current())
|
|
343
346
|
return undefined;
|
|
344
347
|
const sessionId = SessionId(randomUUID());
|
|
345
|
-
|
|
346
|
-
|
|
348
|
+
// Preset precedence for a session created from inside the TUI: the
|
|
349
|
+
// DSH_TUI_PRESET launch instruction, the persisted `/preset` choice,
|
|
350
|
+
// then the cordis.yml default.
|
|
351
|
+
const presetOverride = presetOverrideFromEnv();
|
|
352
|
+
const presetPref = readPresetPref();
|
|
353
|
+
const composed = await composePreset(ctx, presetOverride ?? presetPref ?? options.configuredPreset);
|
|
347
354
|
if (!current())
|
|
348
355
|
return undefined;
|
|
349
356
|
const resolved = resolveModelRoute({ provider: options.configuredProvider, model: options.configuredModel }, readModelPref(), { provider: options.provider, model: options.model });
|
|
@@ -352,7 +359,7 @@ export function createSessionResumeActions(ctx, state, options, deps) {
|
|
|
352
359
|
const route = validated.route;
|
|
353
360
|
if (!current())
|
|
354
361
|
return undefined;
|
|
355
|
-
if (!migratePresetPref(presetPref, composed.agentPreset)) {
|
|
362
|
+
if (presetOverride === undefined && !migratePresetPref(presetPref, composed.agentPreset)) {
|
|
356
363
|
deps.notify(t('preset-switched-pref-failed', { id: composed.agentPreset ?? presetPref ?? 'unknown' }), { color: 'warning' });
|
|
357
364
|
}
|
|
358
365
|
if (validated.rejected !== undefined) {
|
|
@@ -366,7 +373,7 @@ export function createSessionResumeActions(ctx, state, options, deps) {
|
|
|
366
373
|
// has been told about yet, and the publisher would not name it until
|
|
367
374
|
// its next beat.
|
|
368
375
|
async reserve() { reservation = await reserveCreatedSession(sessionId); },
|
|
369
|
-
open: async (cwd) => createDshSession(ctx, await agents
|
|
376
|
+
open: async (cwd) => createDshSession(ctx, await createFreshAgent(ctx, agents, {
|
|
370
377
|
sessionId,
|
|
371
378
|
meta: { cwd, ...(composed.agentPreset === undefined ? {} : { agentPreset: composed.agentPreset }) },
|
|
372
379
|
agentOptions: route,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-rewind.d.ts","sourceRoot":"","sources":["../../../../src/dsh-adapter/channel/session-rewind.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,SAAS,EAAE,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"session-rewind.d.ts","sourceRoot":"","sources":["../../../../src/dsh-adapter/channel/session-rewind.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,SAAS,EAAE,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAYvE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAC9C,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAEvD,KAAK,OAAO,GAAG,iBAAiB,CAAA;AAChC,KAAK,WAAW,GAAG,IAAI,CAAC,YAAY,EAAE,SAAS,GAAG,KAAK,GAAG,UAAU,GAAG,OAAO,CAAC,CAAA;AAgB/E,4EAA4E;AAC5E,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,WAAW,EAClB,IAAI,EAAE;IACJ,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,CAAA;IACpC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,CAAC,CAAA;IACjF,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IACjC,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAA;IAC9B,gBAAgB,CAAC,SAAS,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,YAAY,EAAE,EAAE,WAAW,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,SAAS,GAAG,MAAM,CAAA;IAC9K,qBAAqB,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAA;CAC1F,IAEa,KAAK,OAAO,EAAE,OAAM,MAAM,GAAG,IAAW,KAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAiHhF"}
|
|
@@ -3,9 +3,11 @@ import { randomUUID } from 'node:crypto';
|
|
|
3
3
|
import { t } from '../../i18n.js';
|
|
4
4
|
import { createDshSession, dshHandleOf } from '../backend/session.js';
|
|
5
5
|
import { liveSessionCreateOptions, liveSessionOffset, sliceLiveSessionSeed, snapshotLiveSessionEvents } from '../compat/index.js';
|
|
6
|
+
import { createFreshAgent, isUnstoredFreshSession } from '../fresh-agent.js';
|
|
6
7
|
import { dispatchTuiDecision } from '../extension-events.js';
|
|
7
8
|
import { normalizeRewindDoneSummary } from './decisions.js';
|
|
8
9
|
import { composePreset, runningPresetOf } from '../presets.js';
|
|
10
|
+
import { holdsNoConversation, latestPolicyFacts, replayPolicyFacts } from '../session-seed.js';
|
|
9
11
|
import { attachSessionToWorkspace } from '../workspace.js';
|
|
10
12
|
import { reserveNewSession } from '../../sessionMounts.js';
|
|
11
13
|
async function waitForTurnEnd(session, fromSeq, timeoutMs) {
|
|
@@ -52,45 +54,57 @@ export function createRewindToAction(ctx, state, deps) {
|
|
|
52
54
|
if (event.type === 'turn/end')
|
|
53
55
|
break;
|
|
54
56
|
}
|
|
57
|
+
const source = deps.binding.agent.session;
|
|
55
58
|
let seed;
|
|
59
|
+
let cut;
|
|
60
|
+
const neverUsed = isUnstoredFreshSession(source);
|
|
56
61
|
try {
|
|
57
62
|
if (boundary < 0)
|
|
58
63
|
throw new Error('cannot rewind to the very first message');
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
// child-owned session/end-seed, so snapshot.length is not the inherited
|
|
62
|
-
// cut. agents.create owns the new session id.
|
|
63
|
-
seed = sliceLiveSessionSeed(deps.binding.agent.session, boundary);
|
|
64
|
+
cut = neverUsed ? snapshotLiveSessionEvents(source) : sliceLiveSessionSeed(source, boundary);
|
|
65
|
+
seed = neverUsed || holdsNoConversation(cut) ? [] : cut;
|
|
64
66
|
}
|
|
65
67
|
catch (error) {
|
|
66
68
|
deps.notify(t('rewind-fork-failed', { err: error instanceof Error ? error.message : String(error) }), { color: 'error' });
|
|
67
69
|
return null;
|
|
68
70
|
}
|
|
69
|
-
|
|
71
|
+
// A policy-only cut starts fresh; seeded creation would publish it immediately.
|
|
72
|
+
const cutHoldsNoConversation = seed.length === 0;
|
|
73
|
+
const policyFacts = cutHoldsNoConversation ? latestPolicyFacts(cut) : [];
|
|
74
|
+
const composed = await composePreset(ctx, runningPresetOf(source));
|
|
70
75
|
// Announce the id before the factory: the rewind creates the child's log
|
|
71
76
|
// here, and the publisher only learns the id from the registry on its next
|
|
72
77
|
// beat.
|
|
73
78
|
const { reservation } = await reserveNewSession(String(childId));
|
|
74
79
|
let candidate;
|
|
75
80
|
try {
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
81
|
+
const create = () => cutHoldsNoConversation
|
|
82
|
+
? createFreshAgent(ctx, agents, {
|
|
83
|
+
sessionId: childId,
|
|
84
|
+
meta: { cwd: state.cwd, ...(composed.agentPreset === undefined ? {} : { agentPreset: composed.agentPreset }) },
|
|
85
|
+
agentOptions: { provider: state.provider, model: state.model },
|
|
86
|
+
setup: composed.setup,
|
|
87
|
+
})
|
|
88
|
+
: agents.create(liveSessionCreateOptions({
|
|
89
|
+
sessionId: childId,
|
|
90
|
+
seed,
|
|
91
|
+
runtimeSession: source,
|
|
92
|
+
inheritedCount: seed.length,
|
|
93
|
+
cwd: state.cwd,
|
|
94
|
+
parentSession: source.id,
|
|
95
|
+
agentPreset: composed.agentPreset,
|
|
96
|
+
agentOptions: { provider: state.provider, model: state.model },
|
|
97
|
+
setup: async (agentCtx, agent) => {
|
|
98
|
+
agent.inbox.clear();
|
|
99
|
+
return composed.setup?.(agentCtx, agent);
|
|
100
|
+
},
|
|
101
|
+
}));
|
|
102
|
+
candidate = await deps.binding.prepare(adoption, async () => {
|
|
103
|
+
const handle = await create();
|
|
104
|
+
if (cutHoldsNoConversation)
|
|
105
|
+
replayPolicyFacts(handle.agent.session, policyFacts);
|
|
106
|
+
return createDshSession(ctx, handle);
|
|
107
|
+
});
|
|
94
108
|
}
|
|
95
109
|
catch {
|
|
96
110
|
reservation.abandon();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-tree-actions.d.ts","sourceRoot":"","sources":["../../../../src/dsh-adapter/channel/session-tree-actions.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,SAAS,EAAE,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAEvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;
|
|
1
|
+
{"version":3,"file":"session-tree-actions.d.ts","sourceRoot":"","sources":["../../../../src/dsh-adapter/channel/session-tree-actions.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,SAAS,EAAE,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAEvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAY1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAC9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAE9C,KAAK,OAAO,GAAG,iBAAiB,CAAA;AAChC,KAAK,eAAe,GAAG,IAAI,CAAC,YAAY,EAAE,SAAS,GAAG,KAAK,GAAG,UAAU,GAAG,OAAO,CAAC,CAAA;AAYnF,+GAA+G;AAC/G,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,eAAe,EACtB,IAAI,EAAE;IACJ,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,CAAA;IACpC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,GAAG,SAAS,CAAC,CAAA;IACjF,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IACjC,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAA;IAC9B,gBAAgB,CAAC,SAAS,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,YAAY,EAAE,EAAE,WAAW,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,SAAS,GAAG,MAAM,CAAA;IAC9K,qBAAqB,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAA;CACnG,IAEa,WAAW,MAAM,EAAE,KAAK,MAAM,EAAE,OAAM,QAAQ,GAAG,MAAiB,KAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAoI1G"}
|
|
@@ -5,7 +5,9 @@ import { createDshSession, dshHandleOf } from '../backend/session.js';
|
|
|
5
5
|
import { appendInterruptedTurnEnd, liveSessionCreateOptions, liveSessionOffset, snapshotLiveSessionEvents } from '../compat/index.js';
|
|
6
6
|
import { readPersistedSession } from '../compat/persistence.js';
|
|
7
7
|
import { closeLiveForkTurn } from '../compat/liveSession.js';
|
|
8
|
+
import { createFreshAgent, isUnstoredFreshSession } from '../fresh-agent.js';
|
|
8
9
|
import { composePreset, resolvePersistedPreset, runningPresetOf } from '../presets.js';
|
|
10
|
+
import { holdsNoConversation, latestPolicyFacts, replayPolicyFacts } from '../session-seed.js';
|
|
9
11
|
import { attachSessionToWorkspace } from '../workspace.js';
|
|
10
12
|
import { reserveNewSession } from '../../sessionMounts.js';
|
|
11
13
|
import { forkTarget, rewindTarget, turnUserText } from '../sessionTree.js';
|
|
@@ -81,7 +83,12 @@ export function createTreeRewindAction(ctx, state, deps) {
|
|
|
81
83
|
deps.notify(t('rewind-settling'), { color: 'error' });
|
|
82
84
|
return null;
|
|
83
85
|
}
|
|
84
|
-
const
|
|
86
|
+
const cut = sourceEvents.filter(event => event.seq <= target.boundary);
|
|
87
|
+
const neverUsed = forkFromLive && isUnstoredFreshSession(entrySession);
|
|
88
|
+
const seed = neverUsed || holdsNoConversation(cut) ? [] : cut;
|
|
89
|
+
// A policy-only cut starts fresh; seeded creation would publish it immediately.
|
|
90
|
+
const cutHoldsNoConversation = seed.length === 0;
|
|
91
|
+
const policyFacts = cutHoldsNoConversation ? latestPolicyFacts(cut) : [];
|
|
85
92
|
const inheritedCount = seed.length;
|
|
86
93
|
const closeAfterCreate = target.closeTurn !== undefined && entrySession.header?.version >= 3;
|
|
87
94
|
if (target.closeTurn !== undefined && !closeAfterCreate) {
|
|
@@ -92,29 +99,36 @@ export function createTreeRewindAction(ctx, state, deps) {
|
|
|
92
99
|
const { reservation } = await reserveNewSession(String(childId));
|
|
93
100
|
let candidate;
|
|
94
101
|
try {
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
102
|
+
const create = () => cutHoldsNoConversation
|
|
103
|
+
? createFreshAgent(ctx, agents, {
|
|
104
|
+
sessionId: childId,
|
|
105
|
+
meta: { cwd: sourceCwd, ...(composed.agentPreset === undefined ? {} : { agentPreset: composed.agentPreset }) },
|
|
106
|
+
agentOptions: { provider: state.provider, model: state.model },
|
|
107
|
+
setup: composed.setup,
|
|
108
|
+
})
|
|
109
|
+
: agents.create(liveSessionCreateOptions({
|
|
110
|
+
sessionId: childId,
|
|
111
|
+
seed,
|
|
112
|
+
runtimeSession: entrySession,
|
|
113
|
+
inheritedCount,
|
|
114
|
+
cwd: sourceCwd,
|
|
115
|
+
parentSession: SessionId(sessionId),
|
|
116
|
+
agentPreset: composed.agentPreset,
|
|
117
|
+
agentOptions: { provider: state.provider, model: state.model },
|
|
118
|
+
setup: closeAfterCreate || mode === 'rewind' ? async (agentCtx, agent) => {
|
|
119
|
+
if (closeAfterCreate)
|
|
120
|
+
closeLiveForkTurn(agent.session, target.closeTurn);
|
|
121
|
+
if (mode === 'rewind')
|
|
122
|
+
agent.inbox.clear();
|
|
123
|
+
return composed.setup?.(agentCtx, agent);
|
|
124
|
+
} : composed.setup,
|
|
125
|
+
}));
|
|
126
|
+
candidate = await deps.binding.prepare(adoption, async () => {
|
|
127
|
+
const handle = await create();
|
|
128
|
+
if (cutHoldsNoConversation)
|
|
129
|
+
replayPolicyFacts(handle.agent.session, policyFacts);
|
|
130
|
+
return createDshSession(ctx, handle);
|
|
131
|
+
});
|
|
118
132
|
}
|
|
119
133
|
catch {
|
|
120
134
|
reservation.abandon();
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { ServiceLookup } from './channel-host.js';
|
|
2
2
|
import type { ChannelState } from '../channel/types.js';
|
|
3
|
-
export declare function createSettingsHosts(ctx:
|
|
3
|
+
export declare function createSettingsHosts(ctx: ServiceLookup, assertActive?: () => void): Pick<ChannelState, 'settingsHost' | 'providerSetup' | 'oauthProviderStatuses' | 'backendAuth'>;
|
|
4
4
|
//# sourceMappingURL=settings-host.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings-host.d.ts","sourceRoot":"","sources":["../../../../src/dsh-adapter/channel/settings-host.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"settings-host.d.ts","sourceRoot":"","sources":["../../../../src/dsh-adapter/channel/settings-host.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAGtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAOvD,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,aAAa,EAAE,YAAY,GAAE,MAAM,IAAsB,GAAG,IAAI,CAAC,YAAY,EAAE,cAAc,GAAG,eAAe,GAAG,uBAAuB,GAAG,aAAa,CAAC,CA6UlM"}
|
|
@@ -13,8 +13,31 @@ import { type BrandSetting } from '../../branding.js';
|
|
|
13
13
|
import type { ChannelState } from './types.js';
|
|
14
14
|
/** The DSH backend's user-facing name (capability snapshot default). */
|
|
15
15
|
export declare const DSH_BACKEND_LABEL = "DSH";
|
|
16
|
+
/** The settled startup open (`ChannelLaunchOptions.startup`). */
|
|
17
|
+
export interface ChannelStartup {
|
|
18
|
+
readonly session: AgentSession;
|
|
19
|
+
readonly history: readonly AgentEvent[];
|
|
20
|
+
readonly route?: {
|
|
21
|
+
readonly provider: string;
|
|
22
|
+
readonly model: string;
|
|
23
|
+
};
|
|
24
|
+
readonly agentPreset?: string;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* A startup open that failed for a reason `/new` cannot fix (the in-process
|
|
28
|
+
* DSH kernel's composition failed: there is no DSH to open a session on).
|
|
29
|
+
* Its `hint` replaces the failure row's `/new` hint (`startup-open-failed-hint`).
|
|
30
|
+
*/
|
|
31
|
+
export declare class StartupOpenError extends Error {
|
|
32
|
+
readonly hint: string;
|
|
33
|
+
constructor(message: string, hint: string, options?: {
|
|
34
|
+
cause?: unknown;
|
|
35
|
+
});
|
|
36
|
+
}
|
|
16
37
|
/** Launch configuration belongs to channel construction, not the composition root. */
|
|
17
38
|
export interface ChannelLaunchOptions {
|
|
39
|
+
/** Host notification effect with the last settled reply's preview, when present. */
|
|
40
|
+
onTaskComplete?: (preview?: string) => void;
|
|
18
41
|
model: string;
|
|
19
42
|
cwd: string;
|
|
20
43
|
provider: string;
|
|
@@ -55,6 +78,11 @@ export interface ChannelLaunchOptions {
|
|
|
55
78
|
* `'dsh-tui'` (direct `createChannel` embedders and fixtures). */
|
|
56
79
|
settingsNs?: string;
|
|
57
80
|
diffLayout?: 'auto' | 'split' | 'unified';
|
|
81
|
+
/** Seed the upstream auto-retry policy (upstream-retry.ts) on the
|
|
82
|
+
* llm-pi-ai route the bound session actually uses, when that route
|
|
83
|
+
* declares no retryPolicy. Absent means enabled (the Config schema's
|
|
84
|
+
* default); false opts out without touching settings. */
|
|
85
|
+
upstreamRetry?: boolean;
|
|
58
86
|
thinkingFold?: 'preview' | 'full';
|
|
59
87
|
jobGroupFold?: JobGroupFoldMode;
|
|
60
88
|
toolBackground?: ToolBackground;
|
|
@@ -120,6 +148,14 @@ export interface ChannelLaunchOptions {
|
|
|
120
148
|
/** The startup session's durable history, read before construction so
|
|
121
149
|
* the first bind paints it ahead of any live event. */
|
|
122
150
|
initialHistory?: readonly AgentEvent[];
|
|
151
|
+
/** The `/settings` service (../tui-settings.ts); absent → the host's `settings`. */
|
|
152
|
+
settingsService?: unknown;
|
|
153
|
+
/**
|
|
154
|
+
* The startup session still opening: the channel starts on a placeholder
|
|
155
|
+
* (`ready` false) and `start()` adopts the real one once this settles; a
|
|
156
|
+
* rejection stays on the placeholder and `/new` retries. `route`/`agentPreset` override the construction options.
|
|
157
|
+
*/
|
|
158
|
+
startup?: Promise<ChannelStartup>;
|
|
123
159
|
/** How a user re-enters a session of this backend from a shell (the
|
|
124
160
|
* `/fork` notice); absent → the in-TUI `/resume` hint. */
|
|
125
161
|
resumeCommand?: (sessionId: string) => string;
|
|
@@ -149,5 +185,5 @@ export declare function createInitialChannelView(options: ChannelLaunchOptions,
|
|
|
149
185
|
sessionId: string;
|
|
150
186
|
mode: ChannelState['mode'];
|
|
151
187
|
cwdDescription: string;
|
|
152
|
-
}): Pick<ChannelState, 'effortLevels' | 'version' | 'rows' | 'status' | 'sessionTitle' | 'sessionColor' | 'agentId' | 'sessionId' | 'agentBindingGeneration' | 'model' | 'modelDisplay' | 'provider' | 'tokens' | 'cwd' | 'displayCwd' | 'gitBranch' | 'working' | 'compaction' | 'cancelPending' | 'spinnerMode' | 'responseChars' | 'activeToolCount' | 'turnStart' | 'lastUserText' | 'notifications' | 'contextWindow' | 'reasoningEffort' | 'mode' | 'modeIndex' | 'activityFrames' | 'configuredProvider' | 'configuredModel' | 'configuredPreset' | 'configuredActivityFrames' | 'configuredLang' | 'diffLayout' | 'thinkingFold' | 'jobGroupFold' | 'toolBackground' | 'scrollGutter' | 'pageMargin' | 'foldTerminalCommand' | 'turnUsageRow' | 'promptSessionLabel' | 'expandEditor' | 'smoothStreaming' | 'statusBar' | 'whale' | 'whaleIdle' | 'splashFont' | 'brand' | 'minimalUi' | 'activityEnabled' | 'contextBarEnabled' | 'statusBar' | 'whale' | 'whaleIdle' | 'whaleGirl' | 'minimalUi' | 'activityEnabled' | 'contextBarEnabled' | 'agentPreset' | 'goal' | 'todos' | 'loadedContext' | 'pending' | 'commandList' | 'lastUsage' | 'turnUsage' | 'tps' | 'tpsSamples' | 'contextSegments' | 'mainCost' | 'subagentCost' | 'subagents' | 'backgroundJobs' | 'selection'>;
|
|
188
|
+
}): Pick<ChannelState, 'effortLevels' | 'version' | 'ready' | 'startupFailure' | 'rows' | 'status' | 'sessionTitle' | 'sessionColor' | 'agentId' | 'sessionId' | 'agentBindingGeneration' | 'model' | 'modelDisplay' | 'provider' | 'tokens' | 'cwd' | 'displayCwd' | 'gitBranch' | 'working' | 'compaction' | 'cancelPending' | 'spinnerMode' | 'responseChars' | 'activeToolCount' | 'turnStart' | 'lastUserText' | 'notifications' | 'contextWindow' | 'reasoningEffort' | 'mode' | 'modeIndex' | 'activityFrames' | 'configuredProvider' | 'configuredModel' | 'configuredPreset' | 'configuredActivityFrames' | 'configuredLang' | 'diffLayout' | 'thinkingFold' | 'jobGroupFold' | 'toolBackground' | 'scrollGutter' | 'pageMargin' | 'foldTerminalCommand' | 'turnUsageRow' | 'promptSessionLabel' | 'expandEditor' | 'smoothStreaming' | 'statusBar' | 'whale' | 'whaleIdle' | 'splashFont' | 'brand' | 'minimalUi' | 'activityEnabled' | 'contextBarEnabled' | 'statusBar' | 'whale' | 'whaleIdle' | 'whaleGirl' | 'minimalUi' | 'activityEnabled' | 'contextBarEnabled' | 'agentPreset' | 'goal' | 'todos' | 'loadedContext' | 'pending' | 'commandList' | 'lastUsage' | 'turnUsage' | 'tps' | 'tpsSamples' | 'contextSegments' | 'mainCost' | 'subagentCost' | 'subagents' | 'backgroundJobs' | 'selection'>;
|
|
153
189
|
//# sourceMappingURL=state.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../../src/dsh-adapter/channel/state.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../../src/dsh-adapter/channel/state.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,19 @@ import { normalizeSplashFont } from '../../components/splashFonts.js';
|
|
|
4
4
|
import { normalizeBrandSetting } from '../../branding.js';
|
|
5
5
|
/** The DSH backend's user-facing name (capability snapshot default). */
|
|
6
6
|
export const DSH_BACKEND_LABEL = 'DSH';
|
|
7
|
+
/**
|
|
8
|
+
* A startup open that failed for a reason `/new` cannot fix (the in-process
|
|
9
|
+
* DSH kernel's composition failed: there is no DSH to open a session on).
|
|
10
|
+
* Its `hint` replaces the failure row's `/new` hint (`startup-open-failed-hint`).
|
|
11
|
+
*/
|
|
12
|
+
export class StartupOpenError extends Error {
|
|
13
|
+
hint;
|
|
14
|
+
constructor(message, hint, options) {
|
|
15
|
+
super(message, options);
|
|
16
|
+
this.hint = hint;
|
|
17
|
+
this.name = 'StartupOpenError';
|
|
18
|
+
}
|
|
19
|
+
}
|
|
7
20
|
/**
|
|
8
21
|
* Neutral observable fields only. Behaviour is assembled explicitly by the
|
|
9
22
|
* composition root after each specialist owner exists, so this factory cannot
|
|
@@ -11,7 +24,7 @@ export const DSH_BACKEND_LABEL = 'DSH';
|
|
|
11
24
|
*/
|
|
12
25
|
export function createInitialChannelView(options, input) {
|
|
13
26
|
return {
|
|
14
|
-
effortLevels: undefined, version: 0, rows: [], selection: undefined, status: 'starting', sessionTitle: '', sessionColor: '',
|
|
27
|
+
effortLevels: undefined, version: 0, ready: options.startup === undefined, startupFailure: undefined, rows: [], selection: undefined, status: 'starting', sessionTitle: '', sessionColor: '',
|
|
15
28
|
agentId: input.agentId, sessionId: input.sessionId, agentBindingGeneration: 0, model: options.model, modelDisplay: undefined, provider: options.provider,
|
|
16
29
|
tokens: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0, peak: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 }, idle: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 } },
|
|
17
30
|
cwd: options.cwd, displayCwd: input.cwdDescription, gitBranch: undefined, working: false,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subagent-projection.d.ts","sourceRoot":"","sources":["../../../../src/dsh-adapter/channel/subagent-projection.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAGzE,OAAO,EAAE,qBAAqB,EAAsB,MAAM,iBAAiB,CAAA;AAC3E,OAAO,KAAK,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAA;AACnG,OAAO,KAAK,EAAE,aAAa,EAAuB,uBAAuB,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAA;AAClK,OAAO,KAAK,EAAE,YAAY,EAAyC,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"subagent-projection.d.ts","sourceRoot":"","sources":["../../../../src/dsh-adapter/channel/subagent-projection.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,12 @@ import { markChannelReadDirty } from '../../adapter/channel/read-view.js';
|
|
|
3
3
|
import { agentMessageFailureOf, agentMessageTextOf, agentRelaySourceOf, foldAgentMessage } from '../../agent/messages.js';
|
|
4
4
|
import { SubagentActivityStore } from '../subagents.js';
|
|
5
5
|
import { isSubagentToolName } from './projection-helpers.js';
|
|
6
|
+
/**
|
|
7
|
+
* Bound the retained description text. Evicting an older term does not cancel
|
|
8
|
+
* its pending spawn: a separate count keeps those unmatched starts from
|
|
9
|
+
* consuming a later delegation's title without retaining unbounded text.
|
|
10
|
+
*/
|
|
11
|
+
const MAX_PENDING_TASK_DESCRIPTIONS = 32;
|
|
6
12
|
/**
|
|
7
13
|
* Keep each parked parent's reducer alive, including session links and the
|
|
8
14
|
* stream attempt/settlement cursor. A display snapshot cannot resume either
|
|
@@ -158,7 +164,7 @@ export function createSubagentProjection(getState, deps) {
|
|
|
158
164
|
dropRows: () => active.dropRows(),
|
|
159
165
|
park, restore,
|
|
160
166
|
forget(agent) { parked.delete(agent); },
|
|
161
|
-
dispose() { parked.clear(); active.
|
|
167
|
+
dispose() { parked.clear(); active.reset(); },
|
|
162
168
|
reset() { active = make(); activeParent = deps.agent(); restored = false; getState().subagents = []; getState().subagentCost = []; },
|
|
163
169
|
};
|
|
164
170
|
}
|
|
@@ -187,7 +193,9 @@ function createSessionSubagentProjection(getState, deps) {
|
|
|
187
193
|
* oldest first, folded by durable message id. */
|
|
188
194
|
const agentMessages = [];
|
|
189
195
|
const rowsByAgentId = new Map();
|
|
196
|
+
/** Empty entries reserve starts whose ambiguous description was discarded. */
|
|
190
197
|
const pendingTaskDescriptions = [];
|
|
198
|
+
let evictedDescriptionCount = 0;
|
|
191
199
|
/** Workflow member identity: `tool-workflow/agent-end` carries no childId,
|
|
192
200
|
* so member starts remember `runId:seq` → agentId for their settlement. */
|
|
193
201
|
const workflowMembers = new Map();
|
|
@@ -262,12 +270,27 @@ function createSessionSubagentProjection(getState, deps) {
|
|
|
262
270
|
observedAt: eventTime(event) ?? Date.now(),
|
|
263
271
|
});
|
|
264
272
|
};
|
|
273
|
+
/** A child session's own descriptor can beat the host's spawn edge. With no
|
|
274
|
+
* row to attribute it to the label would be lost for good — an external
|
|
275
|
+
* child never gets a catalog to re-state it — so park it under the session
|
|
276
|
+
* id (the child id the host links rows by) for the row born later to adopt. */
|
|
277
|
+
const rememberEarlyLabel = (session, event) => {
|
|
278
|
+
if (event.type !== 'subagent/descriptor')
|
|
279
|
+
return;
|
|
280
|
+
const sessionId = session?.id;
|
|
281
|
+
const label = event.data?.label;
|
|
282
|
+
if (typeof sessionId !== 'string' || sessionId === '')
|
|
283
|
+
return;
|
|
284
|
+
store.holdKeyedLabel(sessionId, label);
|
|
285
|
+
};
|
|
265
286
|
const onSessionEvent = (session, event) => {
|
|
266
287
|
let id = store.getSubagentIdBySession(session);
|
|
267
288
|
if (id === undefined)
|
|
268
289
|
id = backfillSessionLink(session);
|
|
269
|
-
if (id === undefined)
|
|
290
|
+
if (id === undefined) {
|
|
291
|
+
rememberEarlyLabel(session, event);
|
|
270
292
|
return false;
|
|
293
|
+
}
|
|
271
294
|
if (event.type === 'user/message')
|
|
272
295
|
noteChildRelay(id, event);
|
|
273
296
|
store.onSessionEvent(id, event);
|
|
@@ -397,8 +420,13 @@ function createSessionSubagentProjection(getState, deps) {
|
|
|
397
420
|
if (!historical && typeof data.name === 'string' && isSubagentToolName(data.name) && typeof data.arguments === 'string') {
|
|
398
421
|
try {
|
|
399
422
|
const args = JSON.parse(data.arguments);
|
|
400
|
-
if (typeof args.description === 'string' && args.description)
|
|
423
|
+
if (typeof args.description === 'string' && args.description) {
|
|
424
|
+
if (pendingTaskDescriptions.length >= MAX_PENDING_TASK_DESCRIPTIONS) {
|
|
425
|
+
pendingTaskDescriptions.shift();
|
|
426
|
+
evictedDescriptionCount += 1;
|
|
427
|
+
}
|
|
401
428
|
pendingTaskDescriptions.push(args.description);
|
|
429
|
+
}
|
|
402
430
|
}
|
|
403
431
|
catch { /* malformed arguments do not describe a child */ }
|
|
404
432
|
}
|
|
@@ -469,11 +497,43 @@ function createSessionSubagentProjection(getState, deps) {
|
|
|
469
497
|
return;
|
|
470
498
|
// The fact that the host spawned a child is authoritative even when its
|
|
471
499
|
// optional discovery seam is absent, unloading, or throws.
|
|
500
|
+
// The queue is keyed by nothing, so only a NEW run may consume a term from
|
|
501
|
+
// it: a re-announced edge for the same runId (a continuable epoch's
|
|
502
|
+
// refresh) must leave the queue alone, or every later row shifts by one.
|
|
503
|
+
// An edge without a run key is itself such a refresh (the store's epoch
|
|
504
|
+
// rule) — only a real, different key opens a new epoch.
|
|
505
|
+
const knownRunId = store.runIdOf(info.id);
|
|
506
|
+
// A row that does not exist yet is a fresh run even when the edge carries
|
|
507
|
+
// no run key: the store's refresh rule is about a row it already tracks,
|
|
508
|
+
// and treating the first edge of an untracked child as a refresh would
|
|
509
|
+
// skip its term and hand that term to the next spawn instead.
|
|
510
|
+
const freshRun = !store.has(info.id)
|
|
511
|
+
|| (info.runId !== undefined && (knownRunId === undefined || knownRunId !== info.runId));
|
|
512
|
+
// A queued term is a first-frame guess; `subagent/catalog`'s childId-keyed
|
|
513
|
+
// label is the authority and corrects it in the store (describeFromLabel).
|
|
514
|
+
// A row a keyed label already settled still consumes the term here — the
|
|
515
|
+
// store drops it instead of applying it, so the FIFO stays aligned.
|
|
516
|
+
//
|
|
517
|
+
// The queue carries no childId, so a term is only usable while exactly one
|
|
518
|
+
// delegation is outstanding. With two or more, any pick is a coin flip
|
|
519
|
+
// that puts a concurrent child's name on this card until its keyed label
|
|
520
|
+
// arrives. Discard the text, but retain every unmatched start slot: a new
|
|
521
|
+
// call can arrive before the rest of this batch starts. Forgetting those
|
|
522
|
+
// slots would let an older start consume that new call's title.
|
|
523
|
+
let description;
|
|
524
|
+
if (freshRun) {
|
|
525
|
+
if (evictedDescriptionCount + pendingTaskDescriptions.length > 1)
|
|
526
|
+
pendingTaskDescriptions.fill('');
|
|
527
|
+
if (evictedDescriptionCount > 0)
|
|
528
|
+
evictedDescriptionCount -= 1;
|
|
529
|
+
else
|
|
530
|
+
description = pendingTaskDescriptions.shift() || undefined;
|
|
531
|
+
}
|
|
472
532
|
store.onSpawned(info.id, info.provider || 'subagent', info.provider, {
|
|
473
|
-
runId: info.runId
|
|
533
|
+
...(freshRun ? { runId: info.runId } : {}),
|
|
474
534
|
local: info.local,
|
|
475
535
|
startedAt: Date.now(),
|
|
476
|
-
description:
|
|
536
|
+
...(description === undefined ? {} : { description, descriptionFromQueue: true }),
|
|
477
537
|
});
|
|
478
538
|
cardedIds.add(info.id);
|
|
479
539
|
try {
|
|
@@ -585,6 +645,6 @@ function createSessionSubagentProjection(getState, deps) {
|
|
|
585
645
|
},
|
|
586
646
|
};
|
|
587
647
|
const dropRows = () => { streamDirty = false; rowsByAgentId.clear(); };
|
|
588
|
-
const reset = () => { dropRows(); cardedIds.clear(); workflowMembers.clear(); pendingTaskDescriptions.length = 0; agentMessages.length = 0; store.reset(); getState().subagents = []; getState().subagentCost = []; };
|
|
648
|
+
const reset = () => { dropRows(); cardedIds.clear(); workflowMembers.clear(); pendingTaskDescriptions.length = 0; evictedDescriptionCount = 0; agentMessages.length = 0; store.reset(); getState().subagents = []; getState().subagentCost = []; };
|
|
589
649
|
return { store, control, pendingTaskDescriptions, agentMessages, onSessionEvent, onStreamFrame, onParentEvent, bootstrapFromLog, onStart, onEnd, syncNow, flush, dropRows, reset, submitPrompt };
|
|
590
650
|
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { AgentEvent, AgentEventMeta } from '../../agent/events.js';
|
|
2
|
+
import type { ChannelOwner } from './owner.js';
|
|
3
|
+
import type { ChannelState } from './types.js';
|
|
4
|
+
/** Notify once a successful live turn has settled with no automatic follow-up. */
|
|
5
|
+
export declare function createTaskCompletion(state: ChannelState, owner: ChannelOwner, notify: (preview?: string) => void): (batch: readonly AgentEvent[], meta: AgentEventMeta, current: () => boolean) => void;
|
|
6
|
+
//# sourceMappingURL=task-completion.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"task-completion.d.ts","sourceRoot":"","sources":["../../../../src/dsh-adapter/channel/task-completion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAKvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAC9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAE9C,kFAAkF;AAClF,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,KAAK,IAAI,IAmBvG,OAAO,SAAS,UAAU,EAAE,EAAE,MAAM,cAAc,EAAE,SAAS,MAAM,OAAO,KAAG,IAAI,CAwC1F"}
|