@deepseek-harness-tui/dsh-tui 0.10.0-beta.5 → 0.10.1
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 +176 -17
- package/bin/dsh-tui.js +106 -70
- package/cordis.patch.yml +34 -13
- package/cordis.yml +6 -4
- package/dsh-ecosystem-spec/protocols/profile-definitions.d.ts +13 -13
- package/dsh-ecosystem-spec/protocols/profile-definitions.js +59 -59
- package/dsh-ecosystem-spec/protocols/tui-channel-http.d.ts +15 -15
- package/dsh-ecosystem-spec/protocols/tui-channel-http.js +32 -32
- package/dsh-ecosystem-spec/protocols/tui-channel.d.ts +59 -59
- package/dsh-ecosystem-spec/protocols/tui-channel.js +166 -166
- package/dsh-ecosystem-spec/protocols/tui-contributions.d.ts +42 -42
- package/dsh-ecosystem-spec/protocols/tui-contributions.js +143 -143
- package/dsh-ecosystem-spec/registry/README.md +14 -14
- package/dsh-ecosystem-spec/registry/host-descriptor.tui.example.json +56 -56
- package/dsh-ecosystem-spec/registry/permissions-0.1.json +13 -13
- package/dsh-ecosystem-spec/registry/registry-0.15.json +149 -149
- package/lib/types/activityPrefs.js +3 -3
- package/lib/types/adapter/channel/actions.d.ts +17 -0
- package/lib/types/adapter/channel/actions.d.ts.map +1 -0
- package/lib/types/adapter/channel/actions.js +28 -0
- package/lib/types/adapter/channel/consumer.d.ts +34 -0
- package/lib/types/adapter/channel/consumer.d.ts.map +1 -0
- package/lib/types/adapter/channel/consumer.js +87 -0
- package/lib/types/adapter/channel/features.d.ts +12 -0
- package/lib/types/adapter/channel/features.d.ts.map +1 -0
- package/lib/types/adapter/channel/features.js +41 -0
- package/lib/types/adapter/channel/host-registry.d.ts +40 -0
- package/lib/types/adapter/channel/host-registry.d.ts.map +1 -0
- package/lib/types/adapter/channel/host-registry.js +120 -0
- package/lib/types/adapter/channel/index.d.ts +22 -0
- package/lib/types/adapter/channel/index.d.ts.map +1 -0
- package/lib/types/adapter/channel/index.js +21 -0
- package/lib/types/adapter/channel/internal-token.d.ts +12 -0
- package/lib/types/adapter/channel/internal-token.d.ts.map +1 -0
- package/lib/types/adapter/channel/internal-token.js +11 -0
- package/lib/types/adapter/channel/plugins.d.ts +17 -0
- package/lib/types/adapter/channel/plugins.d.ts.map +1 -0
- package/lib/types/adapter/channel/plugins.js +47 -0
- package/lib/types/adapter/channel/projection.d.ts +15 -0
- package/lib/types/adapter/channel/projection.d.ts.map +1 -0
- package/lib/types/adapter/channel/projection.js +59 -0
- package/lib/types/adapter/channel/provider.d.ts +52 -0
- package/lib/types/adapter/channel/provider.d.ts.map +1 -0
- package/lib/types/adapter/channel/provider.js +231 -0
- package/lib/types/adapter/channel/read-view.d.ts +4 -0
- package/lib/types/adapter/channel/read-view.d.ts.map +1 -0
- package/lib/types/adapter/channel/read-view.js +132 -0
- package/lib/types/adapter/channel/session-projection.d.ts +56 -0
- package/lib/types/adapter/channel/session-projection.d.ts.map +1 -0
- package/lib/types/adapter/channel/session-projection.js +247 -0
- package/lib/types/adapter/channel/state.d.ts +11 -0
- package/lib/types/adapter/channel/state.d.ts.map +1 -0
- package/lib/types/adapter/channel/state.js +55 -0
- package/lib/types/adapter/channel/transcript.d.ts +15 -0
- package/lib/types/adapter/channel/transcript.d.ts.map +1 -0
- package/lib/types/adapter/channel/transcript.js +22 -0
- package/lib/types/adapter/channel/ui-policy.d.ts +106 -0
- package/lib/types/adapter/channel/ui-policy.d.ts.map +1 -0
- package/lib/types/adapter/channel/ui-policy.js +166 -0
- package/lib/types/adapter/channel/ui.d.ts +16 -0
- package/lib/types/adapter/channel/ui.d.ts.map +1 -0
- package/lib/types/adapter/channel/ui.js +168 -0
- package/lib/types/adapter/index.d.ts +20 -0
- package/lib/types/adapter/index.d.ts.map +1 -0
- package/lib/types/adapter/index.js +19 -0
- package/lib/types/adapter/kernel/contract-catalog.d.ts +12 -0
- package/lib/types/adapter/kernel/contract-catalog.d.ts.map +1 -0
- package/lib/types/adapter/kernel/contract-catalog.js +11 -0
- package/lib/types/adapter/kernel/diagnostics.d.ts +18 -0
- package/lib/types/adapter/kernel/diagnostics.d.ts.map +1 -0
- package/lib/types/adapter/kernel/diagnostics.js +16 -0
- package/lib/types/adapter/kernel/driver-types.d.ts +16 -0
- package/lib/types/adapter/kernel/driver-types.d.ts.map +1 -0
- package/lib/types/adapter/kernel/driver-types.js +8 -0
- package/lib/types/adapter/kernel/host-facade.d.ts +65 -0
- package/lib/types/adapter/kernel/host-facade.d.ts.map +1 -0
- package/lib/types/adapter/kernel/host-facade.js +215 -0
- package/lib/types/adapter/kernel/host-probe-access.d.ts +71 -0
- package/lib/types/adapter/kernel/host-probe-access.d.ts.map +1 -0
- package/lib/types/adapter/kernel/host-probe-access.js +121 -0
- package/lib/types/adapter/kernel/index.d.ts +20 -0
- package/lib/types/adapter/kernel/index.d.ts.map +1 -0
- package/lib/types/adapter/kernel/index.js +19 -0
- package/lib/types/adapter/kernel/kernel-runtime.d.ts +138 -0
- package/lib/types/adapter/kernel/kernel-runtime.d.ts.map +1 -0
- package/lib/types/adapter/kernel/kernel-runtime.js +572 -0
- package/lib/types/adapter/kernel/ledger.d.ts +55 -0
- package/lib/types/adapter/kernel/ledger.d.ts.map +1 -0
- package/lib/types/adapter/kernel/ledger.js +33 -0
- package/lib/types/adapter/kernel/legacy-facade.d.ts +22 -0
- package/lib/types/adapter/kernel/legacy-facade.d.ts.map +1 -0
- package/lib/types/adapter/kernel/legacy-facade.js +34 -0
- package/lib/types/adapter/kernel/lifecycle.d.ts +38 -0
- package/lib/types/adapter/kernel/lifecycle.d.ts.map +1 -0
- package/lib/types/adapter/kernel/lifecycle.js +53 -0
- package/lib/types/adapter/kernel/replay-isolation.d.ts +27 -0
- package/lib/types/adapter/kernel/replay-isolation.d.ts.map +1 -0
- package/lib/types/adapter/kernel/replay-isolation.js +45 -0
- package/lib/types/adapter/kernel/replay.d.ts +132 -0
- package/lib/types/adapter/kernel/replay.d.ts.map +1 -0
- package/lib/types/adapter/kernel/replay.js +425 -0
- package/lib/types/adapter/kernel/runtime-context.d.ts +15 -0
- package/lib/types/adapter/kernel/runtime-context.d.ts.map +1 -0
- package/lib/types/adapter/kernel/runtime-context.js +24 -0
- package/lib/types/adapter/kernel/runtime.d.ts +70 -0
- package/lib/types/adapter/kernel/runtime.d.ts.map +1 -0
- package/lib/types/adapter/kernel/runtime.js +325 -0
- package/lib/types/adapter/kernel/slices/channel.d.ts +3 -0
- package/lib/types/adapter/kernel/slices/channel.d.ts.map +1 -0
- package/lib/types/adapter/kernel/slices/channel.js +8 -0
- package/lib/types/adapter/kernel/slices/decisions.d.ts +3 -0
- package/lib/types/adapter/kernel/slices/decisions.d.ts.map +1 -0
- package/lib/types/adapter/kernel/slices/decisions.js +10 -0
- package/lib/types/adapter/kernel/slices/extensions.d.ts +8 -0
- package/lib/types/adapter/kernel/slices/extensions.d.ts.map +1 -0
- package/lib/types/adapter/kernel/slices/extensions.js +43 -0
- package/lib/types/adapter/kernel/slices/index.d.ts +19 -0
- package/lib/types/adapter/kernel/slices/index.d.ts.map +1 -0
- package/lib/types/adapter/kernel/slices/index.js +36 -0
- package/lib/types/adapter/kernel/slices/presentation.d.ts +3 -0
- package/lib/types/adapter/kernel/slices/presentation.d.ts.map +1 -0
- package/lib/types/adapter/kernel/slices/presentation.js +14 -0
- package/lib/types/adapter/kernel/slices/scenes.d.ts +3 -0
- package/lib/types/adapter/kernel/slices/scenes.d.ts.map +1 -0
- package/lib/types/adapter/kernel/slices/scenes.js +14 -0
- package/lib/types/adapter/kernel/slices/settings.d.ts +3 -0
- package/lib/types/adapter/kernel/slices/settings.d.ts.map +1 -0
- package/lib/types/adapter/kernel/slices/settings.js +12 -0
- package/lib/types/adapter/kernel/slices/types.d.ts +20 -0
- package/lib/types/adapter/kernel/slices/types.d.ts.map +1 -0
- package/lib/types/adapter/kernel/slices/types.js +12 -0
- package/lib/types/adapter/kernel/slices/workspace.d.ts +3 -0
- package/lib/types/adapter/kernel/slices/workspace.d.ts.map +1 -0
- package/lib/types/adapter/kernel/slices/workspace.js +15 -0
- package/lib/types/adapter/ports/channel-catalog.d.ts +90 -0
- package/lib/types/adapter/ports/channel-catalog.d.ts.map +1 -0
- package/lib/types/adapter/ports/channel-catalog.js +2 -0
- package/lib/types/adapter/ports/channel-display.d.ts +90 -0
- package/lib/types/adapter/ports/channel-display.d.ts.map +1 -0
- package/lib/types/adapter/ports/channel-display.js +2 -0
- package/lib/types/adapter/ports/channel-session.d.ts +227 -0
- package/lib/types/adapter/ports/channel-session.d.ts.map +1 -0
- package/lib/types/adapter/ports/channel-session.js +2 -0
- package/lib/types/adapter/ports/channel-settings.d.ts +273 -0
- package/lib/types/adapter/ports/channel-settings.d.ts.map +1 -0
- package/lib/types/adapter/ports/channel-settings.js +1 -0
- package/lib/types/adapter/ports/channel-ui.d.ts +569 -0
- package/lib/types/adapter/ports/channel-ui.d.ts.map +1 -0
- package/lib/types/adapter/ports/channel-ui.js +1 -0
- package/lib/types/adapter/ports/channel-view.d.ts +609 -0
- package/lib/types/adapter/ports/channel-view.d.ts.map +1 -0
- package/lib/types/adapter/ports/channel-view.js +2 -0
- package/lib/types/adapter/ports/channel-workspace.d.ts +45 -0
- package/lib/types/adapter/ports/channel-workspace.d.ts.map +1 -0
- package/lib/types/adapter/ports/channel-workspace.js +2 -0
- package/lib/types/adapter/ports/channel.d.ts +145 -0
- package/lib/types/adapter/ports/channel.d.ts.map +1 -0
- package/lib/types/adapter/ports/channel.js +22 -0
- package/lib/types/adapter/ports/decisions.d.ts +18 -0
- package/lib/types/adapter/ports/decisions.d.ts.map +1 -0
- package/lib/types/adapter/ports/decisions.js +9 -0
- package/lib/types/adapter/ports/descriptor.d.ts +25 -0
- package/lib/types/adapter/ports/descriptor.d.ts.map +1 -0
- package/lib/types/adapter/ports/descriptor.js +11 -0
- package/lib/types/adapter/ports/extensions.d.ts +86 -0
- package/lib/types/adapter/ports/extensions.d.ts.map +1 -0
- package/lib/types/adapter/ports/extensions.js +9 -0
- package/lib/types/adapter/ports/index.d.ts +23 -0
- package/lib/types/adapter/ports/index.d.ts.map +1 -0
- package/lib/types/adapter/ports/index.js +14 -0
- package/lib/types/adapter/ports/owner.d.ts +19 -0
- package/lib/types/adapter/ports/owner.d.ts.map +1 -0
- package/lib/types/adapter/ports/owner.js +9 -0
- package/lib/types/adapter/ports/presentation.d.ts +81 -0
- package/lib/types/adapter/ports/presentation.d.ts.map +1 -0
- package/lib/types/adapter/ports/presentation.js +10 -0
- package/lib/types/adapter/ports/scenes.d.ts +24 -0
- package/lib/types/adapter/ports/scenes.d.ts.map +1 -0
- package/lib/types/adapter/ports/scenes.js +8 -0
- package/lib/types/adapter/ports/settings.d.ts +44 -0
- package/lib/types/adapter/ports/settings.d.ts.map +1 -0
- package/lib/types/adapter/ports/settings.js +9 -0
- package/lib/types/adapter/ports/workspace.d.ts +60 -0
- package/lib/types/adapter/ports/workspace.d.ts.map +1 -0
- package/lib/types/adapter/ports/workspace.js +8 -0
- package/lib/types/adapter/spec/index.d.ts +11 -0
- package/lib/types/adapter/spec/index.d.ts.map +1 -0
- package/lib/types/adapter/spec/index.js +10 -0
- package/lib/types/adapter/spec/profile.d.ts +10 -0
- package/lib/types/adapter/spec/profile.d.ts.map +1 -0
- package/lib/types/adapter/spec/profile.js +9 -0
- package/lib/types/adapter/spec/protocol-constants.d.ts +60 -0
- package/lib/types/adapter/spec/protocol-constants.d.ts.map +1 -0
- package/lib/types/adapter/spec/protocol-constants.js +129 -0
- package/lib/types/adapter/spec/tui-contributions.d.ts +18 -0
- package/lib/types/adapter/spec/tui-contributions.d.ts.map +1 -0
- package/lib/types/adapter/spec/tui-contributions.js +19 -0
- package/lib/types/adapter/standard/admission.d.ts +11 -0
- package/lib/types/adapter/standard/admission.d.ts.map +1 -0
- package/lib/types/adapter/standard/admission.js +10 -0
- package/lib/types/adapter/standard/descriptor.d.ts +74 -0
- package/lib/types/adapter/standard/descriptor.d.ts.map +1 -0
- package/lib/types/adapter/standard/descriptor.js +356 -0
- package/lib/types/{dsh-adapter → adapter/standard}/grants.d.ts +8 -3
- package/lib/types/adapter/standard/grants.d.ts.map +1 -0
- package/lib/types/{dsh-adapter → adapter/standard}/grants.js +14 -8
- package/lib/types/adapter/standard/index.d.ts +25 -0
- package/lib/types/adapter/standard/index.d.ts.map +1 -0
- package/lib/types/adapter/standard/index.js +24 -0
- package/lib/types/adapter/standard/negotiate.d.ts.map +1 -0
- package/lib/types/{plugin-spec → adapter/standard}/permission-scope.d.ts +3 -8
- package/lib/types/adapter/standard/permission-scope.d.ts.map +1 -0
- package/lib/types/{plugin-spec → adapter/standard}/permission-scope.js +4 -26
- package/lib/types/adapter/standard/protocols.d.ts +12 -0
- package/lib/types/adapter/standard/protocols.d.ts.map +1 -0
- package/lib/types/adapter/standard/protocols.js +11 -0
- package/lib/types/adapter/standard/registry.d.ts.map +1 -0
- package/lib/types/{plugin-spec → adapter/standard}/registry.js +3 -15
- package/lib/types/adapter/standard/schema-check.d.ts.map +1 -0
- package/lib/types/{plugin-spec → adapter/standard}/schema-check.js +4 -2
- package/lib/types/adapter/standard/tui-extension.d.ts +25 -0
- package/lib/types/adapter/standard/tui-extension.d.ts.map +1 -0
- package/lib/types/adapter/standard/tui-extension.js +45 -0
- package/lib/types/{plugin-spec → adapter/standard}/types.d.ts +3 -9
- package/lib/types/adapter/standard/types.d.ts.map +1 -0
- package/lib/types/{plugin-spec → adapter/standard}/validate.d.ts +3 -3
- package/lib/types/adapter/standard/validate.d.ts.map +1 -0
- package/lib/types/{plugin-spec → adapter/standard}/validate.js +14 -13
- package/lib/types/adapter/upstream/channel-driver.d.ts +22 -0
- package/lib/types/adapter/upstream/channel-driver.d.ts.map +1 -0
- package/lib/types/adapter/upstream/channel-driver.js +424 -0
- package/lib/types/adapter/upstream/decisions-driver.d.ts +15 -0
- package/lib/types/adapter/upstream/decisions-driver.d.ts.map +1 -0
- package/lib/types/adapter/upstream/decisions-driver.js +141 -0
- package/lib/types/adapter/upstream/detection.d.ts +26 -0
- package/lib/types/adapter/upstream/detection.d.ts.map +1 -0
- package/lib/types/adapter/upstream/detection.js +9 -0
- package/lib/types/adapter/upstream/driver.d.ts +50 -0
- package/lib/types/adapter/upstream/driver.d.ts.map +1 -0
- package/lib/types/adapter/upstream/driver.js +8 -0
- package/lib/types/adapter/upstream/extensions-driver.d.ts +24 -0
- package/lib/types/adapter/upstream/extensions-driver.d.ts.map +1 -0
- package/lib/types/adapter/upstream/extensions-driver.js +697 -0
- package/lib/types/adapter/upstream/host-descriptor-driver.d.ts +45 -0
- package/lib/types/adapter/upstream/host-descriptor-driver.d.ts.map +1 -0
- package/lib/types/adapter/upstream/host-descriptor-driver.js +606 -0
- package/lib/types/adapter/upstream/index.d.ts +18 -0
- package/lib/types/adapter/upstream/index.d.ts.map +1 -0
- package/lib/types/adapter/upstream/index.js +15 -0
- package/lib/types/adapter/upstream/presentation-driver.d.ts +17 -0
- package/lib/types/adapter/upstream/presentation-driver.d.ts.map +1 -0
- package/lib/types/adapter/upstream/presentation-driver.js +129 -0
- package/lib/types/adapter/upstream/scenes-driver.d.ts +18 -0
- package/lib/types/adapter/upstream/scenes-driver.d.ts.map +1 -0
- package/lib/types/adapter/upstream/scenes-driver.js +170 -0
- package/lib/types/adapter/upstream/settings-driver.d.ts +20 -0
- package/lib/types/adapter/upstream/settings-driver.d.ts.map +1 -0
- package/lib/types/adapter/upstream/settings-driver.js +173 -0
- package/lib/types/adapter/upstream/workspace-driver.d.ts +19 -0
- package/lib/types/adapter/upstream/workspace-driver.d.ts.map +1 -0
- package/lib/types/adapter/upstream/workspace-driver.js +190 -0
- package/lib/types/api.d.ts +1 -1
- package/lib/types/api.d.ts.map +1 -1
- package/lib/types/bootstrap/state.d.ts +2 -4
- package/lib/types/bootstrap/state.d.ts.map +1 -1
- package/lib/types/bootstrap/state.js +2 -4
- package/lib/types/commands.d.ts +3 -40
- package/lib/types/commands.d.ts.map +1 -1
- package/lib/types/commands.js +9 -10
- package/lib/types/components/ActivityLine.d.ts +1 -1
- package/lib/types/components/ActivityLine.js +5 -5
- package/lib/types/components/ActivityPicker.d.ts +2 -2
- package/lib/types/components/ActivityPicker.js +2 -2
- package/lib/types/components/BalanceReportRow.js +1 -1
- package/lib/types/components/BtwPanel.d.ts +2 -2
- package/lib/types/components/BtwPanel.js +2 -2
- package/lib/types/components/Chat/JobCard.d.ts +2 -2
- package/lib/types/components/Chat/JobCard.d.ts.map +1 -1
- package/lib/types/components/Chat/JobCard.js +2 -2
- package/lib/types/components/Chat/SubagentMessage.d.ts +2 -2
- package/lib/types/components/Chat/SubagentMessage.d.ts.map +1 -1
- package/lib/types/components/Chat/SubagentMessage.js +2 -2
- package/lib/types/components/ColorPicker.js +1 -1
- package/lib/types/components/CommandSuggestions.d.ts +3 -4
- package/lib/types/components/CommandSuggestions.d.ts.map +1 -1
- package/lib/types/components/CommandSuggestions.js +5 -6
- package/lib/types/components/ContextBarView.d.ts +1 -1
- package/lib/types/components/ContextBarView.js +2 -2
- package/lib/types/components/EffortInputBorder.d.ts +1 -1
- package/lib/types/components/EffortInputBorder.d.ts.map +1 -1
- package/lib/types/components/ExtensionDialog.d.ts.map +1 -1
- package/lib/types/components/ExtensionDialog.js +65 -26
- package/lib/types/components/FileSuggestions.js +2 -2
- package/lib/types/components/GoalTodoPanel.d.ts +2 -1
- package/lib/types/components/GoalTodoPanel.d.ts.map +1 -1
- package/lib/types/components/GoalTodoPanel.js +3 -3
- package/lib/types/components/HelpMenu.d.ts +2 -2
- package/lib/types/components/HelpMenu.js +2 -2
- package/lib/types/components/HistorySearchDialog.d.ts +1 -2
- package/lib/types/components/HistorySearchDialog.d.ts.map +1 -1
- package/lib/types/components/HistorySearchDialog.js +9 -8
- package/lib/types/components/ImagePreviewOverlay.d.ts +51 -0
- package/lib/types/components/ImagePreviewOverlay.d.ts.map +1 -0
- package/lib/types/components/ImagePreviewOverlay.js +263 -0
- package/lib/types/components/JobsPanel.js +2 -2
- package/lib/types/components/LogoV2.d.ts +11 -1
- package/lib/types/components/LogoV2.d.ts.map +1 -1
- package/lib/types/components/LogoV2.js +121 -7
- package/lib/types/components/Markdown.js +2 -2
- package/lib/types/components/MarkdownTable.d.ts +4 -8
- package/lib/types/components/MarkdownTable.d.ts.map +1 -1
- package/lib/types/components/MarkdownTable.js +128 -245
- package/lib/types/components/MessageList.d.ts +13 -5
- package/lib/types/components/MessageList.d.ts.map +1 -1
- package/lib/types/components/MessageList.js +83 -37
- package/lib/types/components/ModelPicker.d.ts +2 -2
- package/lib/types/components/ModelPicker.d.ts.map +1 -1
- package/lib/types/components/ModelPicker.js +9 -5
- package/lib/types/components/OverlayAbove.d.ts +29 -1
- package/lib/types/components/OverlayAbove.d.ts.map +1 -1
- package/lib/types/components/OverlayAbove.js +82 -2
- package/lib/types/components/PluginStatusViewBoundary.d.ts +26 -0
- package/lib/types/components/PluginStatusViewBoundary.d.ts.map +1 -0
- package/lib/types/components/PluginStatusViewBoundary.js +22 -0
- package/lib/types/components/PresetPicker.d.ts +2 -2
- package/lib/types/components/PresetPicker.js +2 -2
- package/lib/types/components/PromptEditor.d.ts +2 -0
- package/lib/types/components/PromptEditor.d.ts.map +1 -1
- package/lib/types/components/PromptEditor.js +11 -4
- package/lib/types/components/PromptInput.d.ts +37 -9
- package/lib/types/components/PromptInput.d.ts.map +1 -1
- package/lib/types/components/PromptInput.js +861 -205
- package/lib/types/components/RewindPicker.d.ts +2 -2
- package/lib/types/components/RewindPicker.d.ts.map +1 -1
- package/lib/types/components/RewindPicker.js +16 -8
- package/lib/types/components/SearchBox.d.ts +2 -2
- package/lib/types/components/SearchBox.js +4 -4
- package/lib/types/components/Select.d.ts +1 -1
- package/lib/types/components/Select.js +2 -2
- package/lib/types/components/SkillsPicker.d.ts.map +1 -1
- package/lib/types/components/SkillsPicker.js +6 -4
- package/lib/types/components/Spinner/GlimmerMessage.d.ts +1 -3
- package/lib/types/components/Spinner/GlimmerMessage.d.ts.map +1 -1
- package/lib/types/components/Spinner/GlimmerMessage.js +35 -55
- package/lib/types/components/Spinner/SpinnerAnimationRow.d.ts +3 -4
- package/lib/types/components/Spinner/SpinnerAnimationRow.d.ts.map +1 -1
- package/lib/types/components/Spinner/SpinnerAnimationRow.js +46 -45
- package/lib/types/components/Spinner/SpinnerGlyph.d.ts +2 -2
- package/lib/types/components/Spinner/SpinnerGlyph.js +3 -3
- package/lib/types/components/Spinner/spinnerMode.d.ts +1 -5
- package/lib/types/components/Spinner/spinnerMode.d.ts.map +1 -1
- package/lib/types/components/Spinner/spinnerUtils.d.ts +3 -3
- package/lib/types/components/Spinner/spinnerUtils.d.ts.map +1 -1
- package/lib/types/components/Spinner/spinnerUtils.js +8 -14
- package/lib/types/components/Spinner/useStalledAnimation.d.ts +9 -8
- package/lib/types/components/Spinner/useStalledAnimation.d.ts.map +1 -1
- package/lib/types/components/Spinner/useStalledAnimation.js +40 -58
- package/lib/types/components/SplitDiffView.d.ts +2 -2
- package/lib/types/components/SplitDiffView.d.ts.map +1 -1
- package/lib/types/components/SplitDiffView.js +4 -4
- package/lib/types/components/StreamingMarkdown.d.ts.map +1 -1
- package/lib/types/components/StreamingMarkdown.js +3 -4
- package/lib/types/components/SubagentCard.js +1 -1
- package/lib/types/components/SubagentDashboard.js +1 -1
- package/lib/types/components/SubagentDetailScene.js +2 -2
- package/lib/types/components/SyntaxText.js +2 -2
- package/lib/types/components/ThemePicker.js +1 -1
- package/lib/types/components/TipsPanel.js +1 -1
- package/lib/types/components/ToolUseLoader.js +1 -1
- package/lib/types/components/Tooltip.js +1 -1
- package/lib/types/components/TurnInterruptedRow.d.ts +6 -0
- package/lib/types/components/TurnInterruptedRow.d.ts.map +1 -0
- package/lib/types/components/{InterruptedByUser.js → TurnInterruptedRow.js} +2 -3
- package/lib/types/components/Whale.d.ts +14 -6
- package/lib/types/components/Whale.d.ts.map +1 -1
- package/lib/types/components/Whale.js +42 -15
- package/lib/types/components/WorkingSpinner.d.ts +3 -5
- package/lib/types/components/WorkingSpinner.d.ts.map +1 -1
- package/lib/types/components/WorkingSpinner.js +7 -8
- package/lib/types/components/activityFrames.d.ts +14 -1
- package/lib/types/components/activityFrames.d.ts.map +1 -1
- package/lib/types/components/activityFrames.js +23 -1
- package/lib/types/components/approvals/ApprovalPanel.d.ts +4 -4
- package/lib/types/components/approvals/ApprovalPanel.js +6 -6
- package/lib/types/components/design-system/Byline.d.ts +1 -1
- package/lib/types/components/design-system/Byline.js +2 -2
- package/lib/types/components/design-system/Divider.d.ts +1 -1
- package/lib/types/components/design-system/Divider.js +2 -2
- package/lib/types/components/design-system/HintLine.js +1 -1
- package/lib/types/components/design-system/KeyboardShortcutHint.d.ts +1 -1
- package/lib/types/components/design-system/KeyboardShortcutHint.js +2 -2
- package/lib/types/components/design-system/ListItem.d.ts +2 -3
- package/lib/types/components/design-system/ListItem.d.ts.map +1 -1
- package/lib/types/components/design-system/ListItem.js +4 -5
- package/lib/types/components/design-system/LoadingState.d.ts +2 -1
- package/lib/types/components/design-system/LoadingState.d.ts.map +1 -1
- package/lib/types/components/design-system/LoadingState.js +3 -2
- package/lib/types/components/design-system/Pane.d.ts +2 -2
- package/lib/types/components/design-system/Pane.js +2 -2
- package/lib/types/components/design-system/ProgressBar.d.ts +3 -3
- package/lib/types/components/design-system/ProgressBar.js +4 -4
- package/lib/types/components/design-system/StatusIcon.d.ts +2 -2
- package/lib/types/components/design-system/StatusIcon.js +3 -3
- package/lib/types/components/design-system/ThemeProvider.d.ts +1 -1
- package/lib/types/components/design-system/ThemeProvider.d.ts.map +1 -1
- package/lib/types/components/design-system/ThemeProvider.js +25 -2
- package/lib/types/components/design-system/ThemedBox.d.ts +5 -3
- package/lib/types/components/design-system/ThemedBox.d.ts.map +1 -1
- package/lib/types/components/design-system/ThemedBox.js +3 -3
- package/lib/types/components/design-system/ThemedText.d.ts +3 -4
- package/lib/types/components/design-system/ThemedText.d.ts.map +1 -1
- package/lib/types/components/design-system/ThemedText.js +3 -4
- package/lib/types/components/messages/AssistantTextMessage.d.ts +5 -5
- package/lib/types/components/messages/AssistantTextMessage.d.ts.map +1 -1
- package/lib/types/components/messages/AssistantTextMessage.js +4 -4
- package/lib/types/components/messages/AssistantThinkingMessage.d.ts +3 -3
- package/lib/types/components/messages/AssistantThinkingMessage.d.ts.map +1 -1
- package/lib/types/components/messages/AssistantThinkingMessage.js +6 -6
- package/lib/types/components/messages/AssistantToolUseMessage.d.ts +6 -6
- package/lib/types/components/messages/AssistantToolUseMessage.d.ts.map +1 -1
- package/lib/types/components/messages/AssistantToolUseMessage.js +81 -37
- package/lib/types/components/messages/MessageMetadata.d.ts +1 -2
- package/lib/types/components/messages/MessageMetadata.d.ts.map +1 -1
- package/lib/types/components/messages/MessageMetadata.js +2 -3
- package/lib/types/components/messages/TranscriptImages.d.ts +21 -0
- package/lib/types/components/messages/TranscriptImages.d.ts.map +1 -0
- package/lib/types/components/messages/TranscriptImages.js +83 -0
- package/lib/types/components/messages/UserPromptMessage.d.ts +4 -4
- package/lib/types/components/messages/UserPromptMessage.d.ts.map +1 -1
- package/lib/types/components/messages/UserPromptMessage.js +4 -4
- package/lib/types/components/messages/imageInspection.d.ts +33 -0
- package/lib/types/components/messages/imageInspection.d.ts.map +1 -0
- package/lib/types/components/messages/imageInspection.js +107 -0
- package/lib/types/components/messages/originalImage.d.ts +5 -0
- package/lib/types/components/messages/originalImage.d.ts.map +1 -0
- package/lib/types/components/messages/originalImage.js +56 -0
- package/lib/types/components/messages/transcriptImageDecode.d.ts +9 -0
- package/lib/types/components/messages/transcriptImageDecode.d.ts.map +1 -0
- package/lib/types/components/messages/transcriptImageDecode.js +144 -0
- package/lib/types/components/messages/useImageInspection.d.ts +10 -0
- package/lib/types/components/messages/useImageInspection.d.ts.map +1 -0
- package/lib/types/components/messages/useImageInspection.js +81 -0
- package/lib/types/components/overlayBudget.d.ts +39 -0
- package/lib/types/components/overlayBudget.d.ts.map +1 -0
- package/lib/types/components/overlayBudget.js +43 -0
- package/lib/types/components/questions/AskUserQuestionPanel.d.ts +22 -2
- package/lib/types/components/questions/AskUserQuestionPanel.d.ts.map +1 -1
- package/lib/types/components/questions/AskUserQuestionPanel.js +182 -39
- package/lib/types/components/questions/PlanReviewPanel.d.ts +18 -2
- package/lib/types/components/questions/PlanReviewPanel.d.ts.map +1 -1
- package/lib/types/components/questions/PlanReviewPanel.js +160 -24
- package/lib/types/components/sessions/SessionPreview.js +1 -1
- package/lib/types/components/shimmer.d.ts +1 -1
- package/lib/types/components/shimmer.js +1 -1
- package/lib/types/components/whaleFrames.d.ts +28 -1
- package/lib/types/components/whaleFrames.d.ts.map +1 -1
- package/lib/types/components/whaleFrames.js +14 -10
- package/lib/types/components/whaleIdle.d.ts +66 -0
- package/lib/types/components/whaleIdle.d.ts.map +1 -0
- package/lib/types/components/whaleIdle.js +174 -0
- package/lib/types/components/whaleLayers.d.ts +28 -0
- package/lib/types/components/whaleLayers.d.ts.map +1 -0
- package/lib/types/components/whaleLayers.js +90 -0
- package/lib/types/customTheme.d.ts +4 -4
- package/lib/types/customTheme.d.ts.map +1 -1
- package/lib/types/customTheme.js +12 -6
- package/lib/types/deepseekBalance.d.ts +2 -36
- package/lib/types/deepseekBalance.d.ts.map +1 -1
- package/lib/types/deepseekBalance.js +0 -14
- package/lib/types/deepseekPricing.d.ts +2 -1
- package/lib/types/deepseekPricing.d.ts.map +1 -1
- package/lib/types/deepseekPricing.js +8 -1
- package/lib/types/dsh-adapter/agent-view.d.ts +2 -2
- package/lib/types/dsh-adapter/agent-view.d.ts.map +1 -1
- package/lib/types/dsh-adapter/agent-view.js +2 -2
- package/lib/types/dsh-adapter/approvals.d.ts +13 -3
- package/lib/types/dsh-adapter/approvals.d.ts.map +1 -1
- package/lib/types/dsh-adapter/approvals.js +34 -14
- package/lib/types/dsh-adapter/channel/action-readiness.d.ts +20 -0
- package/lib/types/dsh-adapter/channel/action-readiness.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/action-readiness.js +83 -0
- package/lib/types/dsh-adapter/channel/activity.d.ts +20 -0
- package/lib/types/dsh-adapter/channel/activity.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/activity.js +113 -0
- package/lib/types/dsh-adapter/channel/agent-view-projection.d.ts +64 -0
- package/lib/types/dsh-adapter/channel/agent-view-projection.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/agent-view-projection.js +295 -0
- package/lib/types/dsh-adapter/channel/background-action.d.ts +41 -0
- package/lib/types/dsh-adapter/channel/background-action.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/background-action.js +86 -0
- package/lib/types/dsh-adapter/channel/binding-events.d.ts +60 -0
- package/lib/types/dsh-adapter/channel/binding-events.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/binding-events.js +159 -0
- package/lib/types/dsh-adapter/channel/binding.d.ts +41 -0
- package/lib/types/dsh-adapter/channel/binding.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/binding.js +227 -0
- package/lib/types/dsh-adapter/channel/command-completions.d.ts +29 -0
- package/lib/types/dsh-adapter/channel/command-completions.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/command-completions.js +94 -0
- package/lib/types/dsh-adapter/channel/commands.d.ts +8 -0
- package/lib/types/dsh-adapter/channel/commands.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/commands.js +9 -0
- package/lib/types/dsh-adapter/channel/compaction.d.ts +19 -0
- package/lib/types/dsh-adapter/channel/compaction.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/compaction.js +116 -0
- package/lib/types/dsh-adapter/channel/composer-images.d.ts +57 -0
- package/lib/types/dsh-adapter/channel/composer-images.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/composer-images.js +217 -0
- package/lib/types/dsh-adapter/channel/composer-mentions.d.ts +15 -0
- package/lib/types/dsh-adapter/channel/composer-mentions.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/composer-mentions.js +200 -0
- package/lib/types/dsh-adapter/channel/context-bookkeeping.d.ts +26 -0
- package/lib/types/dsh-adapter/channel/context-bookkeeping.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/context-bookkeeping.js +30 -0
- package/lib/types/dsh-adapter/channel/decisions.d.ts +19 -0
- package/lib/types/dsh-adapter/channel/decisions.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/decisions.js +90 -0
- package/lib/types/dsh-adapter/channel/emitter.d.ts +10 -0
- package/lib/types/dsh-adapter/channel/emitter.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/emitter.js +71 -0
- package/lib/types/dsh-adapter/channel/external-commands.d.ts +31 -0
- package/lib/types/dsh-adapter/channel/external-commands.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/external-commands.js +187 -0
- package/lib/types/dsh-adapter/channel/file-actions.d.ts +20 -0
- package/lib/types/dsh-adapter/channel/file-actions.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/file-actions.js +45 -0
- package/lib/types/dsh-adapter/channel/input-actions.d.ts +13 -0
- package/lib/types/dsh-adapter/channel/input-actions.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/input-actions.js +135 -0
- package/lib/types/dsh-adapter/channel/input-delivery.d.ts +34 -0
- package/lib/types/dsh-adapter/channel/input-delivery.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/input-delivery.js +241 -0
- package/lib/types/dsh-adapter/channel/job-projection.d.ts +28 -0
- package/lib/types/dsh-adapter/channel/job-projection.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/job-projection.js +150 -0
- package/lib/types/dsh-adapter/channel/lifetime-resources.d.ts +9 -0
- package/lib/types/dsh-adapter/channel/lifetime-resources.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/lifetime-resources.js +33 -0
- package/lib/types/dsh-adapter/channel/loaded-context.d.ts +40 -0
- package/lib/types/dsh-adapter/channel/loaded-context.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/loaded-context.js +62 -0
- package/lib/types/dsh-adapter/channel/local-actions.d.ts +70 -0
- package/lib/types/dsh-adapter/channel/local-actions.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/local-actions.js +108 -0
- package/lib/types/dsh-adapter/channel/mentions.d.ts +29 -0
- package/lib/types/dsh-adapter/channel/mentions.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/mentions.js +235 -0
- package/lib/types/dsh-adapter/channel/mode-actions.d.ts +30 -0
- package/lib/types/dsh-adapter/channel/mode-actions.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/mode-actions.js +247 -0
- package/lib/types/dsh-adapter/channel/mode-permission-actions.d.ts +35 -0
- package/lib/types/dsh-adapter/channel/mode-permission-actions.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/mode-permission-actions.js +199 -0
- package/lib/types/dsh-adapter/channel/mode-permission.d.ts +58 -0
- package/lib/types/dsh-adapter/channel/mode-permission.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/mode-permission.js +240 -0
- package/lib/types/dsh-adapter/channel/mode-roster.d.ts +51 -0
- package/lib/types/dsh-adapter/channel/mode-roster.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/mode-roster.js +119 -0
- package/lib/types/dsh-adapter/channel/model-actions.d.ts +46 -0
- package/lib/types/dsh-adapter/channel/model-actions.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/model-actions.js +275 -0
- package/lib/types/dsh-adapter/channel/model-switch.d.ts +32 -0
- package/lib/types/dsh-adapter/channel/model-switch.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/model-switch.js +98 -0
- package/lib/types/dsh-adapter/channel/notifications.d.ts +9 -0
- package/lib/types/dsh-adapter/channel/notifications.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/notifications.js +24 -0
- package/lib/types/dsh-adapter/channel/owner.d.ts +18 -0
- package/lib/types/dsh-adapter/channel/owner.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/owner.js +73 -0
- package/lib/types/dsh-adapter/channel/paths.d.ts +31 -0
- package/lib/types/dsh-adapter/channel/paths.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/paths.js +147 -0
- package/lib/types/dsh-adapter/channel/permissions.d.ts +40 -0
- package/lib/types/dsh-adapter/channel/permissions.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/permissions.js +184 -0
- package/lib/types/dsh-adapter/channel/preferences.d.ts +3 -0
- package/lib/types/dsh-adapter/channel/preferences.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/preferences.js +103 -0
- package/lib/types/dsh-adapter/channel/projection-helpers.d.ts +13 -0
- package/lib/types/dsh-adapter/channel/projection-helpers.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/projection-helpers.js +63 -0
- package/lib/types/dsh-adapter/channel/projection.d.ts +40 -0
- package/lib/types/dsh-adapter/channel/projection.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/projection.js +1021 -0
- package/lib/types/dsh-adapter/channel/reports.d.ts +32 -0
- package/lib/types/dsh-adapter/channel/reports.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/reports.js +171 -0
- package/lib/types/dsh-adapter/channel/session-actions.d.ts +13 -0
- package/lib/types/dsh-adapter/channel/session-actions.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/session-actions.js +29 -0
- package/lib/types/dsh-adapter/channel/session-adoption.d.ts +32 -0
- package/lib/types/dsh-adapter/channel/session-adoption.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/session-adoption.js +35 -0
- package/lib/types/dsh-adapter/channel/session-fork.d.ts +19 -0
- package/lib/types/dsh-adapter/channel/session-fork.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/session-fork.js +85 -0
- package/lib/types/dsh-adapter/channel/session-live-adoption.d.ts +32 -0
- package/lib/types/dsh-adapter/channel/session-live-adoption.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/session-live-adoption.js +62 -0
- package/lib/types/dsh-adapter/channel/session-metadata.d.ts +81 -0
- package/lib/types/dsh-adapter/channel/session-metadata.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/session-metadata.js +209 -0
- package/lib/types/dsh-adapter/channel/session-reset.d.ts +11 -0
- package/lib/types/dsh-adapter/channel/session-reset.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/session-reset.js +44 -0
- package/lib/types/dsh-adapter/channel/session-resume.d.ts +56 -0
- package/lib/types/dsh-adapter/channel/session-resume.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/session-resume.js +240 -0
- package/lib/types/dsh-adapter/channel/session-rewind.d.ts +19 -0
- package/lib/types/dsh-adapter/channel/session-rewind.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/session-rewind.js +121 -0
- package/lib/types/dsh-adapter/channel/session-tree-actions.d.ts +19 -0
- package/lib/types/dsh-adapter/channel/session-tree-actions.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/session-tree-actions.js +132 -0
- package/lib/types/dsh-adapter/channel/session-tree.d.ts +10 -0
- package/lib/types/dsh-adapter/channel/session-tree.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/session-tree.js +503 -0
- package/lib/types/dsh-adapter/channel/settings-host.d.ts +4 -0
- package/lib/types/dsh-adapter/channel/settings-host.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/settings-host.js +256 -0
- package/lib/types/dsh-adapter/channel/skill-catalog.d.ts +27 -0
- package/lib/types/dsh-adapter/channel/skill-catalog.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/skill-catalog.js +183 -0
- package/lib/types/dsh-adapter/channel/state.d.ts +46 -0
- package/lib/types/dsh-adapter/channel/state.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/state.js +31 -0
- package/lib/types/dsh-adapter/channel/subagent-projection.d.ts +47 -0
- package/lib/types/dsh-adapter/channel/subagent-projection.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/subagent-projection.js +140 -0
- package/lib/types/dsh-adapter/channel/transcript.d.ts +73 -0
- package/lib/types/dsh-adapter/channel/transcript.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/transcript.js +312 -0
- package/lib/types/dsh-adapter/channel/types.d.ts +162 -0
- package/lib/types/dsh-adapter/channel/types.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/types.js +1 -0
- package/lib/types/dsh-adapter/channel/usage.d.ts +13 -0
- package/lib/types/dsh-adapter/channel/usage.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/usage.js +48 -0
- package/lib/types/dsh-adapter/channel/workspace-actions.d.ts +20 -0
- package/lib/types/dsh-adapter/channel/workspace-actions.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/workspace-actions.js +56 -0
- package/lib/types/dsh-adapter/channel-facade-actions.d.ts +25 -0
- package/lib/types/dsh-adapter/channel-facade-actions.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel-facade-actions.js +55 -0
- package/lib/types/dsh-adapter/channel-scene-outlet.d.ts +6 -0
- package/lib/types/dsh-adapter/channel-scene-outlet.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel-scene-outlet.js +13 -0
- package/lib/types/dsh-adapter/channel-ui.d.ts +9 -0
- package/lib/types/dsh-adapter/channel-ui.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel-ui.js +128 -0
- package/lib/types/dsh-adapter/channel.d.ts +9 -1421
- package/lib/types/dsh-adapter/channel.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel.js +687 -7261
- package/lib/types/dsh-adapter/command-trees.d.ts +1 -0
- package/lib/types/dsh-adapter/command-trees.d.ts.map +1 -1
- package/lib/types/dsh-adapter/command-trees.js +20 -1
- package/lib/types/dsh-adapter/compat/liveSession.d.ts +3 -1
- package/lib/types/dsh-adapter/compat/liveSession.d.ts.map +1 -1
- package/lib/types/dsh-adapter/compat/liveSession.js +23 -0
- package/lib/types/dsh-adapter/compat/persistence.d.ts +21 -0
- package/lib/types/dsh-adapter/compat/persistence.d.ts.map +1 -0
- package/lib/types/dsh-adapter/compat/persistence.js +17 -0
- package/lib/types/dsh-adapter/compat/sessionLog.d.ts +50 -11
- package/lib/types/dsh-adapter/compat/sessionLog.d.ts.map +1 -1
- package/lib/types/dsh-adapter/compat/sessionLog.js +325 -36
- package/lib/types/dsh-adapter/component-identity.d.ts +1 -1
- package/lib/types/dsh-adapter/component-identity.d.ts.map +1 -1
- package/lib/types/dsh-adapter/component-identity.js +1 -1
- package/lib/types/dsh-adapter/contract.d.ts +11 -9
- package/lib/types/dsh-adapter/contract.d.ts.map +1 -1
- package/lib/types/dsh-adapter/contract.js +19 -12
- package/lib/types/dsh-adapter/decision-guard.d.ts +56 -12
- package/lib/types/dsh-adapter/decision-guard.d.ts.map +1 -1
- package/lib/types/dsh-adapter/decision-guard.js +134 -22
- package/lib/types/dsh-adapter/dialogs.d.ts.map +1 -1
- package/lib/types/dsh-adapter/dialogs.js +13 -0
- package/lib/types/dsh-adapter/effect-ledger.d.ts +5 -0
- package/lib/types/dsh-adapter/effect-ledger.d.ts.map +1 -1
- package/lib/types/dsh-adapter/effect-ledger.js +53 -15
- package/lib/types/dsh-adapter/extension-events.d.ts +2 -9
- package/lib/types/dsh-adapter/extension-events.d.ts.map +1 -1
- package/lib/types/dsh-adapter/extension-events.js +0 -20
- package/lib/types/dsh-adapter/extensions.d.ts +2 -1
- package/lib/types/dsh-adapter/extensions.d.ts.map +1 -1
- package/lib/types/dsh-adapter/extensions.js +5 -3
- package/lib/types/dsh-adapter/host-grants.d.ts +23 -0
- package/lib/types/dsh-adapter/host-grants.d.ts.map +1 -0
- package/lib/types/dsh-adapter/host-grants.js +45 -0
- package/lib/types/dsh-adapter/index.d.ts +10 -6
- package/lib/types/dsh-adapter/index.d.ts.map +1 -1
- package/lib/types/dsh-adapter/index.js +4 -2
- package/lib/types/dsh-adapter/invariant.d.ts +1 -1
- package/lib/types/dsh-adapter/invariant.js +1 -1
- package/lib/types/dsh-adapter/jobs.d.ts +2 -46
- package/lib/types/dsh-adapter/jobs.d.ts.map +1 -1
- package/lib/types/dsh-adapter/jobs.js +0 -25
- package/lib/types/dsh-adapter/message-observer.d.ts +15 -2
- package/lib/types/dsh-adapter/message-observer.d.ts.map +1 -1
- package/lib/types/dsh-adapter/message-observer.js +157 -28
- package/lib/types/dsh-adapter/plugin-host.d.ts +80 -11
- package/lib/types/dsh-adapter/plugin-host.d.ts.map +1 -1
- package/lib/types/dsh-adapter/plugin-host.js +438 -41
- package/lib/types/dsh-adapter/plugin-storage.d.ts +11 -1
- package/lib/types/dsh-adapter/plugin-storage.d.ts.map +1 -1
- package/lib/types/dsh-adapter/plugin-storage.js +150 -11
- package/lib/types/dsh-adapter/plugin.d.ts.map +1 -1
- package/lib/types/dsh-adapter/plugin.js +190 -73
- package/lib/types/dsh-adapter/plugins-info.d.ts +2 -2
- package/lib/types/dsh-adapter/plugins-info.d.ts.map +1 -1
- package/lib/types/dsh-adapter/plugins-info.js +11 -6
- package/lib/types/dsh-adapter/presets.d.ts.map +1 -1
- package/lib/types/dsh-adapter/presets.js +3 -2
- package/lib/types/dsh-adapter/providerWizard.d.ts +2 -159
- package/lib/types/dsh-adapter/providerWizard.d.ts.map +1 -1
- package/lib/types/dsh-adapter/questions.d.ts +10 -2
- package/lib/types/dsh-adapter/questions.d.ts.map +1 -1
- package/lib/types/dsh-adapter/questions.js +20 -2
- package/lib/types/dsh-adapter/recap.d.ts +1 -9
- package/lib/types/dsh-adapter/recap.d.ts.map +1 -1
- package/lib/types/dsh-adapter/recap.js +8 -24
- package/lib/types/dsh-adapter/renderers.d.ts +1 -0
- package/lib/types/dsh-adapter/renderers.d.ts.map +1 -1
- package/lib/types/dsh-adapter/renderers.js +26 -1
- package/lib/types/dsh-adapter/sanitize.d.ts +9 -0
- package/lib/types/dsh-adapter/sanitize.d.ts.map +1 -1
- package/lib/types/dsh-adapter/sanitize.js +14 -0
- package/lib/types/dsh-adapter/scenes.d.ts +3 -1
- package/lib/types/dsh-adapter/scenes.d.ts.map +1 -1
- package/lib/types/dsh-adapter/scenes.js +31 -0
- package/lib/types/dsh-adapter/sessionTree.d.ts +14 -95
- package/lib/types/dsh-adapter/sessionTree.d.ts.map +1 -1
- package/lib/types/dsh-adapter/sessionTree.js +51 -36
- package/lib/types/dsh-adapter/sessions/index.d.ts +1 -1
- package/lib/types/dsh-adapter/sessions/index.d.ts.map +1 -1
- package/lib/types/dsh-adapter/sessions/index.js +1 -1
- package/lib/types/dsh-adapter/sessions/list.d.ts +23 -0
- package/lib/types/dsh-adapter/sessions/list.d.ts.map +1 -1
- package/lib/types/dsh-adapter/sessions/list.js +25 -14
- package/lib/types/dsh-adapter/sessions/types.d.ts +2 -128
- package/lib/types/dsh-adapter/sessions/types.d.ts.map +1 -1
- package/lib/types/dsh-adapter/sessions/types.js +0 -13
- package/lib/types/dsh-adapter/settings-sections.d.ts +4 -95
- package/lib/types/dsh-adapter/settings-sections.d.ts.map +1 -1
- package/lib/types/dsh-adapter/settings-sections.js +50 -13
- package/lib/types/dsh-adapter/settingsEditor.d.ts +2 -36
- package/lib/types/dsh-adapter/settingsEditor.d.ts.map +1 -1
- package/lib/types/dsh-adapter/settingsEditor.js +0 -18
- package/lib/types/dsh-adapter/sharp.d.ts +10 -0
- package/lib/types/dsh-adapter/sharp.d.ts.map +1 -0
- package/lib/types/dsh-adapter/sharp.js +59 -0
- package/lib/types/dsh-adapter/shortcuts.d.ts +7 -3
- package/lib/types/dsh-adapter/shortcuts.d.ts.map +1 -1
- package/lib/types/dsh-adapter/shortcuts.js +50 -1
- package/lib/types/dsh-adapter/sideQuestion.d.ts +3 -5
- package/lib/types/dsh-adapter/sideQuestion.d.ts.map +1 -1
- package/lib/types/dsh-adapter/sideQuestion.js +11 -21
- package/lib/types/dsh-adapter/status.d.ts +87 -13
- package/lib/types/dsh-adapter/status.d.ts.map +1 -1
- package/lib/types/dsh-adapter/status.js +225 -24
- package/lib/types/dsh-adapter/subagents.d.ts +9 -49
- package/lib/types/dsh-adapter/subagents.d.ts.map +1 -1
- package/lib/types/dsh-adapter/subagents.js +92 -1
- package/lib/types/dsh-adapter/themes.d.ts +3 -2
- package/lib/types/dsh-adapter/themes.d.ts.map +1 -1
- package/lib/types/dsh-adapter/themes.js +39 -4
- package/lib/types/dsh-adapter/toast.d.ts +13 -0
- package/lib/types/dsh-adapter/toast.d.ts.map +1 -1
- package/lib/types/dsh-adapter/toast.js +31 -1
- package/lib/types/dsh-adapter/trajectory/aggregate.d.ts +2 -1
- package/lib/types/dsh-adapter/trajectory/aggregate.d.ts.map +1 -1
- package/lib/types/dsh-adapter/trajectory/aggregate.js +2 -1
- package/lib/types/dsh-adapter/trajectory/guards.d.ts +37 -18
- package/lib/types/dsh-adapter/trajectory/guards.d.ts.map +1 -1
- package/lib/types/dsh-adapter/trajectory/guards.js +43 -5
- package/lib/types/dsh-adapter/trajectory/inspect.d.ts +2 -2
- package/lib/types/dsh-adapter/trajectory/inspect.d.ts.map +1 -1
- package/lib/types/dsh-adapter/trajectory/projection.d.ts +31 -13
- package/lib/types/dsh-adapter/trajectory/projection.d.ts.map +1 -1
- package/lib/types/dsh-adapter/trajectory/projection.js +71 -14
- package/lib/types/dsh-adapter/trajectory/types.d.ts +1 -1
- package/lib/types/dsh-adapter/trajectory/types.d.ts.map +1 -1
- package/lib/types/dsh-adapter/transcript-images.d.ts +17 -0
- package/lib/types/dsh-adapter/transcript-images.d.ts.map +1 -0
- package/lib/types/dsh-adapter/transcript-images.js +96 -0
- package/lib/types/dsh-adapter/workspaces.d.ts +2 -49
- package/lib/types/dsh-adapter/workspaces.d.ts.map +1 -1
- package/lib/types/dsh-adapter/workspaces.js +23 -3
- package/lib/types/effortPrefs.d.ts +13 -0
- package/lib/types/effortPrefs.d.ts.map +1 -1
- package/lib/types/effortPrefs.js +15 -0
- package/lib/types/extensions.d.ts +2 -1
- package/lib/types/extensions.d.ts.map +1 -1
- package/lib/types/extensions.js +3 -1
- package/lib/types/history.js +1 -1
- package/lib/types/hooks/useBlink.d.ts +1 -2
- package/lib/types/hooks/useBlink.d.ts.map +1 -1
- package/lib/types/hooks/useBlink.js +1 -2
- package/lib/types/i18n.d.ts +264 -30
- package/lib/types/i18n.d.ts.map +1 -1
- package/lib/types/i18n.js +102 -20
- package/lib/types/ink/Ansi.d.ts +7 -9
- package/lib/types/ink/Ansi.d.ts.map +1 -1
- package/lib/types/ink/Ansi.js +35 -259
- package/lib/types/ink/clearTerminal.d.ts +1 -1
- package/lib/types/ink/clearTerminal.js +1 -1
- package/lib/types/ink/colorize.d.ts.map +1 -1
- package/lib/types/ink/colorize.js +3 -4
- package/lib/types/ink/components/AlternateScreen.d.ts +7 -21
- package/lib/types/ink/components/AlternateScreen.d.ts.map +1 -1
- package/lib/types/ink/components/AlternateScreen.js +18 -75
- package/lib/types/ink/components/App.d.ts +2 -0
- package/lib/types/ink/components/App.d.ts.map +1 -1
- package/lib/types/ink/components/App.js +33 -25
- package/lib/types/ink/components/AppContext.d.ts +4 -2
- package/lib/types/ink/components/AppContext.d.ts.map +1 -1
- package/lib/types/ink/components/AppContext.js +2 -1
- package/lib/types/ink/components/Box.d.ts +5 -6
- package/lib/types/ink/components/Box.d.ts.map +1 -1
- package/lib/types/ink/components/Box.js +19 -174
- package/lib/types/ink/components/Button.d.ts +1 -1
- package/lib/types/ink/components/Button.d.ts.map +1 -1
- package/lib/types/ink/components/Button.js +19 -162
- package/lib/types/ink/components/ClockContext.d.ts +2 -1
- package/lib/types/ink/components/ClockContext.d.ts.map +1 -1
- package/lib/types/ink/components/ClockContext.js +7 -39
- package/lib/types/ink/components/Image.d.ts +28 -0
- package/lib/types/ink/components/Image.d.ts.map +1 -0
- package/lib/types/ink/components/Image.js +44 -0
- package/lib/types/ink/components/Link.d.ts +2 -2
- package/lib/types/ink/components/Link.d.ts.map +1 -1
- package/lib/types/ink/components/Link.js +3 -29
- package/lib/types/ink/components/Newline.d.ts +3 -9
- package/lib/types/ink/components/Newline.d.ts.map +1 -1
- package/lib/types/ink/components/Newline.js +3 -27
- package/lib/types/ink/components/NoSelect.d.ts +8 -19
- package/lib/types/ink/components/NoSelect.d.ts.map +1 -1
- package/lib/types/ink/components/NoSelect.js +3 -53
- package/lib/types/ink/components/RawAnsi.d.ts +8 -16
- package/lib/types/ink/components/RawAnsi.d.ts.map +1 -1
- package/lib/types/ink/components/RawAnsi.js +6 -44
- package/lib/types/ink/components/ScrollBox.d.ts.map +1 -1
- package/lib/types/ink/components/ScrollBox.js +39 -1
- package/lib/types/ink/components/Spacer.d.ts +3 -5
- package/lib/types/ink/components/Spacer.d.ts.map +1 -1
- package/lib/types/ink/components/Spacer.js +2 -15
- package/lib/types/ink/components/TerminalFocusContext.d.ts +2 -2
- package/lib/types/ink/components/TerminalFocusContext.d.ts.map +1 -1
- package/lib/types/ink/components/TerminalFocusContext.js +6 -40
- package/lib/types/ink/components/TerminalSizeContext.js +0 -1
- package/lib/types/ink/components/Text.d.ts +5 -5
- package/lib/types/ink/components/Text.d.ts.map +1 -1
- package/lib/types/ink/components/Text.js +15 -191
- package/lib/types/ink/dom.d.ts +3 -3
- package/lib/types/ink/dom.d.ts.map +1 -1
- package/lib/types/ink/dom.js +1 -1
- package/lib/types/ink/events/input-event.d.ts +10 -0
- package/lib/types/ink/events/input-event.d.ts.map +1 -1
- package/lib/types/ink/events/input-event.js +1 -0
- package/lib/types/ink/events/paste-event.d.ts +1 -1
- package/lib/types/ink/events/paste-event.js +1 -1
- package/lib/types/ink/events/resize-event.d.ts +1 -1
- package/lib/types/ink/events/resize-event.js +1 -1
- package/lib/types/ink/flush-tick.d.ts +1 -1
- package/lib/types/ink/flush-tick.js +1 -1
- package/lib/types/ink/frame.d.ts +3 -0
- package/lib/types/ink/frame.d.ts.map +1 -1
- package/lib/types/ink/hooks/use-app.d.ts +1 -2
- package/lib/types/ink/hooks/use-app.d.ts.map +1 -1
- package/lib/types/ink/hooks/use-app.js +1 -2
- package/lib/types/ink/hooks/use-terminal-images.d.ts +14 -0
- package/lib/types/ink/hooks/use-terminal-images.d.ts.map +1 -0
- package/lib/types/ink/hooks/use-terminal-images.js +22 -0
- package/lib/types/ink/hooks/use-terminal-size.d.ts +1 -1
- package/lib/types/ink/hooks/use-terminal-size.js +1 -1
- package/lib/types/ink/ink.d.ts +34 -19
- package/lib/types/ink/ink.d.ts.map +1 -1
- package/lib/types/ink/ink.js +331 -43
- package/lib/types/ink/kitty-graphics.d.ts +41 -0
- package/lib/types/ink/kitty-graphics.d.ts.map +1 -0
- package/lib/types/ink/kitty-graphics.js +229 -0
- package/lib/types/ink/log-update.d.ts.map +1 -1
- package/lib/types/ink/log-update.js +4 -4
- package/lib/types/ink/node-cache.d.ts +5 -0
- package/lib/types/ink/node-cache.d.ts.map +1 -1
- package/lib/types/ink/output.d.ts +56 -3
- package/lib/types/ink/output.d.ts.map +1 -1
- package/lib/types/ink/output.js +192 -2
- package/lib/types/ink/parse-keypress.d.ts +13 -0
- package/lib/types/ink/parse-keypress.d.ts.map +1 -1
- package/lib/types/ink/parse-keypress.js +36 -5
- package/lib/types/ink/reconciler.d.ts +1 -1
- package/lib/types/ink/reconciler.d.ts.map +1 -1
- package/lib/types/ink/reconciler.js +6 -5
- package/lib/types/ink/render-node-to-output.d.ts +31 -2
- package/lib/types/ink/render-node-to-output.d.ts.map +1 -1
- package/lib/types/ink/render-node-to-output.js +206 -30
- package/lib/types/ink/render-to-screen.js +5 -5
- package/lib/types/ink/renderer.d.ts +4 -0
- package/lib/types/ink/renderer.d.ts.map +1 -1
- package/lib/types/ink/renderer.js +25 -4
- package/lib/types/ink/root.d.ts +2 -0
- package/lib/types/ink/root.d.ts.map +1 -1
- package/lib/types/ink/root.js +2 -1
- package/lib/types/ink/screen.d.ts +64 -8
- package/lib/types/ink/screen.d.ts.map +1 -1
- package/lib/types/ink/screen.js +197 -9
- package/lib/types/ink/selection.js +1 -1
- package/lib/types/ink/sixel-codec.d.ts +41 -0
- package/lib/types/ink/sixel-codec.d.ts.map +1 -0
- package/lib/types/ink/sixel-codec.js +128 -0
- package/lib/types/ink/sixel-graphics.d.ts +56 -0
- package/lib/types/ink/sixel-graphics.d.ts.map +1 -0
- package/lib/types/ink/sixel-graphics.js +386 -0
- package/lib/types/ink/sixel-worker.d.ts +2 -0
- package/lib/types/ink/sixel-worker.d.ts.map +1 -0
- package/lib/types/ink/sixel-worker.js +12 -0
- package/lib/types/ink/stringWidth.d.ts +1 -9
- package/lib/types/ink/stringWidth.d.ts.map +1 -1
- package/lib/types/ink/stringWidth.js +3 -25
- package/lib/types/ink/styles.d.ts +22 -0
- package/lib/types/ink/styles.d.ts.map +1 -1
- package/lib/types/ink/terminal-image-protocol.d.ts +4 -0
- package/lib/types/ink/terminal-image-protocol.d.ts.map +1 -0
- package/lib/types/ink/terminal-image-protocol.js +8 -0
- package/lib/types/ink/terminal-image.d.ts +85 -0
- package/lib/types/ink/terminal-image.d.ts.map +1 -0
- package/lib/types/ink/terminal-image.js +223 -0
- package/lib/types/ink/terminal-querier.d.ts +30 -0
- package/lib/types/ink/terminal-querier.d.ts.map +1 -1
- package/lib/types/ink/terminal-querier.js +66 -21
- package/lib/types/ink/terminal.d.ts +1 -2
- package/lib/types/ink/terminal.d.ts.map +1 -1
- package/lib/types/ink/terminal.js +4 -5
- package/lib/types/ink/termio/osc.d.ts +4 -15
- package/lib/types/ink/termio/osc.d.ts.map +1 -1
- package/lib/types/ink/termio/osc.js +6 -18
- package/lib/types/ink/timeline-rail.d.ts +3 -7
- package/lib/types/ink/timeline-rail.d.ts.map +1 -1
- package/lib/types/ink/timeline-rail.js +2 -6
- package/lib/types/ink/{searchHighlight.d.ts → transcript-highlight.d.ts} +1 -1
- package/lib/types/ink/transcript-highlight.d.ts.map +1 -0
- package/lib/types/ink/update-overflow-guard.d.ts +1 -2
- package/lib/types/ink/update-overflow-guard.d.ts.map +1 -1
- package/lib/types/ink/update-overflow-guard.js +1 -2
- package/lib/types/ink/wrapAnsi.d.ts +1 -2
- package/lib/types/ink/wrapAnsi.d.ts.map +1 -1
- package/lib/types/ink/wrapAnsi.js +2 -7
- package/lib/types/modelGroups.d.ts +1 -1
- package/lib/types/modelGroups.d.ts.map +1 -1
- package/lib/types/modelRoute.js +1 -1
- package/lib/types/native-ts/yoga-layout/index.d.ts.map +1 -1
- package/lib/types/native-ts/yoga-layout/index.js +8 -10
- package/lib/types/plugin-host.d.ts +3 -4
- package/lib/types/plugin-host.d.ts.map +1 -1
- package/lib/types/plugin-host.js +8 -6
- package/lib/types/reload.js +1 -1
- package/lib/types/screens/AgentView.d.ts +2 -2
- package/lib/types/screens/AgentView.d.ts.map +1 -1
- package/lib/types/screens/AgentView.js +9 -9
- package/lib/types/screens/Chat.d.ts +4 -3
- package/lib/types/screens/Chat.d.ts.map +1 -1
- package/lib/types/screens/Chat.js +589 -305
- package/lib/types/screens/SessionBrowser.d.ts +1 -1
- package/lib/types/screens/SessionBrowser.d.ts.map +1 -1
- package/lib/types/screens/SessionBrowser.js +1 -1
- package/lib/types/screens/SessionTree.d.ts +1 -1
- package/lib/types/screens/SessionTree.d.ts.map +1 -1
- package/lib/types/screens/SessionTree.js +1 -1
- package/lib/types/screens/Settings.d.ts +1 -1
- package/lib/types/screens/Settings.d.ts.map +1 -1
- package/lib/types/screens/Settings.js +1 -1
- package/lib/types/screens/StatusLine.d.ts +1 -1
- package/lib/types/screens/StatusLine.d.ts.map +1 -1
- package/lib/types/screens/StatusLine.js +41 -2
- package/lib/types/screens/TrajectoryScene.d.ts +1 -1
- package/lib/types/screens/TrajectoryScene.d.ts.map +1 -1
- package/lib/types/screens/TrajectoryScene.js +1 -1
- package/lib/types/screens/chatOverlay.d.ts +24 -0
- package/lib/types/screens/chatOverlay.d.ts.map +1 -1
- package/lib/types/screens/chatOverlay.js +13 -0
- package/lib/types/sessionHistory.d.ts +1 -3
- package/lib/types/sessionHistory.d.ts.map +1 -1
- package/lib/types/sessionHistory.js +14 -36
- package/lib/types/sessionModes.d.ts +71 -17
- package/lib/types/sessionModes.d.ts.map +1 -1
- package/lib/types/sessionModes.js +103 -7
- package/lib/types/terminal-utils/cliHighlight.d.ts.map +1 -0
- package/lib/types/terminal-utils/figures.d.ts +26 -0
- package/lib/types/terminal-utils/figures.d.ts.map +1 -0
- package/lib/types/terminal-utils/figures.js +36 -0
- package/lib/types/terminal-utils/format.d.ts.map +1 -0
- package/lib/types/terminal-utils/hash.d.ts.map +1 -0
- package/lib/types/terminal-utils/hyperlink.d.ts.map +1 -0
- package/lib/types/terminal-utils/markdown.d.ts.map +1 -0
- package/lib/types/{cc → terminal-utils}/markdown.js +1 -1
- package/lib/types/{cc → terminal-utils}/sessionColors.d.ts +3 -3
- package/lib/types/terminal-utils/sessionColors.d.ts.map +1 -0
- package/lib/types/{cc → terminal-utils}/sessionColors.js +3 -3
- package/lib/types/terminal-utils/spinnerVerbs.d.ts +3 -0
- package/lib/types/terminal-utils/spinnerVerbs.d.ts.map +1 -0
- package/lib/types/terminal-utils/spinnerVerbs.js +21 -0
- package/lib/types/terminal-utils/syntaxRuns.d.ts.map +1 -0
- package/lib/types/terminal-utils/syntaxTheme.d.ts.map +1 -0
- package/lib/types/{cc → terminal-utils}/terminal.d.ts +1 -1
- package/lib/types/terminal-utils/terminal.d.ts.map +1 -0
- package/lib/types/{cc → terminal-utils}/terminal.js +1 -1
- package/lib/types/theme.d.ts +40 -32
- package/lib/types/theme.d.ts.map +1 -1
- package/lib/types/theme.js +123 -97
- package/lib/types/themeCatalog.d.ts +1 -1
- package/lib/types/themeCatalog.d.ts.map +1 -1
- package/lib/types/themeCatalog.js +7 -5
- package/lib/types/tips.d.ts.map +1 -1
- package/lib/types/tips.js +0 -6
- package/lib/types/trajectory/format.js +1 -1
- package/lib/types/tuiDisplayPrefs.d.ts +2 -68
- package/lib/types/tuiDisplayPrefs.d.ts.map +1 -1
- package/lib/types/tuiDisplayPrefs.js +5 -1
- package/lib/types/ui.d.ts +6 -5
- package/lib/types/ui.d.ts.map +1 -1
- package/lib/types/ui.js +5 -5
- package/lib/types/update.d.ts.map +1 -1
- package/lib/types/update.js +2 -3
- package/lib/types/utils/clipboard.d.ts +7 -0
- package/lib/types/utils/clipboard.d.ts.map +1 -1
- package/lib/types/utils/clipboard.js +20 -3
- package/lib/types/utils/credentials.d.ts +13 -0
- package/lib/types/utils/credentials.d.ts.map +1 -0
- package/lib/types/utils/credentials.js +41 -0
- package/lib/types/utils/debug.d.ts +1 -1
- package/lib/types/utils/debug.js +1 -1
- package/lib/types/utils/earlyInput.d.ts +2 -3
- package/lib/types/utils/earlyInput.d.ts.map +1 -1
- package/lib/types/utils/earlyInput.js +2 -3
- package/lib/types/utils/env.d.ts +2 -4
- package/lib/types/utils/env.d.ts.map +1 -1
- package/lib/types/utils/env.js +2 -4
- package/lib/types/utils/envUtils.d.ts +1 -1
- package/lib/types/utils/envUtils.js +1 -1
- package/lib/types/utils/fileSuggestions.d.ts +2 -9
- package/lib/types/utils/fileSuggestions.d.ts.map +1 -1
- package/lib/types/utils/fold-long-lines.d.ts +38 -0
- package/lib/types/utils/fold-long-lines.d.ts.map +1 -0
- package/lib/types/utils/fold-long-lines.js +91 -0
- package/lib/types/utils/fullscreen.d.ts +2 -3
- package/lib/types/utils/fullscreen.d.ts.map +1 -1
- package/lib/types/utils/fullscreen.js +2 -3
- package/lib/types/utils/intl.d.ts +2 -2
- package/lib/types/utils/intl.js +2 -2
- package/lib/types/utils/log.d.ts +2 -2
- package/lib/types/utils/log.js +2 -2
- package/lib/types/utils/mentions.d.ts +2 -2
- package/lib/types/utils/mentions.js +2 -2
- package/lib/types/utils/modifiers.d.ts +2 -2
- package/lib/types/utils/modifiers.js +2 -2
- package/lib/types/utils/pastedImagePath.d.ts +51 -0
- package/lib/types/utils/pastedImagePath.d.ts.map +1 -0
- package/lib/types/utils/pastedImagePath.js +194 -0
- package/lib/types/utils/paths.d.ts +2 -31
- package/lib/types/utils/paths.d.ts.map +1 -1
- package/lib/types/utils/paths.js +2 -56
- package/lib/types/utils/semver.d.ts +2 -2
- package/lib/types/utils/semver.js +2 -2
- package/lib/types/utils/truncateMiddle.d.ts +9 -0
- package/lib/types/utils/truncateMiddle.d.ts.map +1 -0
- package/lib/types/utils/truncateMiddle.js +28 -0
- package/node_modules/@deepseek-harness-tui/dsh-auth/LICENSE +21 -21
- package/node_modules/@deepseek-harness-tui/dsh-auth/README.md +143 -143
- package/node_modules/@deepseek-harness-tui/dsh-auth/dsh-plugin.json +44 -44
- package/node_modules/@deepseek-harness-tui/dsh-auth/lib/pi-ai.d.ts +1 -1
- package/node_modules/@deepseek-harness-tui/dsh-auth/lib/profiles.js +4 -0
- package/node_modules/@deepseek-harness-tui/dsh-auth/lib/service.js +15 -2
- package/node_modules/@deepseek-harness-tui/dsh-auth/package.json +69 -69
- package/node_modules/@dsh-std/command/CHANGELOG.md +8 -8
- package/node_modules/@dsh-std/command/LICENSE +21 -21
- package/node_modules/@dsh-std/command/README.md +26 -26
- package/node_modules/@dsh-std/command/README.zh.md +28 -28
- package/node_modules/@dsh-std/command/lib/index.js.map +1 -1
- package/node_modules/@dsh-std/command/package.json +22 -22
- package/node_modules/@dsh-std/connection/CHANGELOG.md +8 -8
- package/node_modules/@dsh-std/connection/LICENSE +21 -21
- package/node_modules/@dsh-std/connection/README.md +42 -42
- package/node_modules/@dsh-std/connection/README.zh.md +42 -42
- package/node_modules/@dsh-std/connection/lib/index.js.map +1 -1
- package/node_modules/@dsh-std/connection/lib/memory.js.map +1 -1
- package/node_modules/@dsh-std/connection/lib/resolve-3X6ausgz.js.map +1 -1
- package/node_modules/@dsh-std/connection/package.json +20 -20
- package/node_modules/@dsh-std/core/CHANGELOG.md +8 -8
- package/node_modules/@dsh-std/core/LICENSE +21 -21
- package/node_modules/@dsh-std/core/README.md +13 -13
- package/node_modules/@dsh-std/core/README.zh.md +13 -13
- package/node_modules/@dsh-std/core/lib/index.js.map +1 -1
- package/node_modules/@dsh-std/core/package.json +21 -21
- package/node_modules/@dsh-std/manifest/CHANGELOG.md +9 -9
- package/node_modules/@dsh-std/manifest/LICENSE +21 -21
- package/node_modules/@dsh-std/manifest/README.md +5 -5
- package/node_modules/@dsh-std/manifest/README.zh.md +5 -5
- package/node_modules/@dsh-std/manifest/lib/index.js.map +1 -1
- package/node_modules/@dsh-std/manifest/package.json +20 -20
- package/node_modules/@dsh-std/manifest/schema/dsh-plugin-0.15.schema.json +144 -144
- package/node_modules/@dsh-std/messages/CHANGELOG.md +8 -8
- package/node_modules/@dsh-std/messages/LICENSE +21 -21
- package/node_modules/@dsh-std/messages/README.md +5 -5
- package/node_modules/@dsh-std/messages/README.zh.md +7 -7
- package/node_modules/@dsh-std/messages/lib/index.js.map +1 -1
- package/node_modules/@dsh-std/messages/package.json +20 -20
- package/node_modules/@dsh-std/messages/schema/message-observer-envelope-0.15.schema.json +54 -54
- package/node_modules/@dsh-std/presentation/CHANGELOG.md +9 -9
- package/node_modules/@dsh-std/presentation/LICENSE +21 -21
- package/node_modules/@dsh-std/presentation/README.md +27 -27
- package/node_modules/@dsh-std/presentation/README.zh.md +29 -29
- package/node_modules/@dsh-std/presentation/lib/callback.js.map +1 -1
- package/node_modules/@dsh-std/presentation/lib/index.js.map +1 -1
- package/node_modules/@dsh-std/presentation/package.json +25 -25
- package/node_modules/@dsh-std/storage/CHANGELOG.md +8 -8
- package/node_modules/@dsh-std/storage/LICENSE +21 -21
- package/node_modules/@dsh-std/storage/README.md +5 -5
- package/node_modules/@dsh-std/storage/README.zh.md +7 -7
- package/node_modules/@dsh-std/storage/lib/index.js.map +1 -1
- package/node_modules/@dsh-std/storage/package.json +20 -20
- package/node_modules/@dsh-std/storage/schema/local-storage-0.15.schema.json +56 -56
- package/package.json +154 -89
- package/presets/liangshen/.dsh-tui-managed.json +1 -1
- package/presets/liangshen/agent.cordis.yml +23 -4
- package/presets/liangshen/compaction-epoch.mjs +3 -1
- package/presets/liangshen/instruction-hint.mjs +2 -1
- package/presets/liangshen/session-events.mjs +8 -0
- package/presets/liangshen/skill-search.mjs +2 -3
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/connection/CHANGELOG.md +8 -8
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/connection/LICENSE +21 -21
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/connection/README.md +42 -42
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/connection/README.zh.md +42 -42
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/connection/lib/index.js.map +1 -1
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/connection/lib/memory.js.map +1 -1
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/connection/lib/resolve-3X6ausgz.js.map +1 -1
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/connection/package.json +20 -20
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/core/CHANGELOG.md +8 -8
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/core/LICENSE +21 -21
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/core/README.md +13 -13
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/core/README.zh.md +13 -13
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/core/lib/index.js.map +1 -1
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/core/package.json +21 -21
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/manifest/CHANGELOG.md +9 -9
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/manifest/LICENSE +21 -21
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/manifest/README.md +5 -5
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/manifest/README.zh.md +5 -5
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/manifest/lib/index.js.map +1 -1
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/manifest/package.json +20 -20
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/manifest/schema/dsh-plugin-0.15.schema.json +144 -144
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/presentation/CHANGELOG.md +9 -9
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/presentation/LICENSE +21 -21
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/presentation/README.md +27 -27
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/presentation/README.zh.md +29 -29
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/presentation/lib/callback.js.map +1 -1
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/presentation/lib/index.js.map +1 -1
- package/vendor/dsh-std/packages/command/node_modules/@dsh-std/presentation/package.json +25 -25
- package/vendor/dsh-std/packages/connection/node_modules/@dsh-std/core/CHANGELOG.md +8 -8
- package/vendor/dsh-std/packages/connection/node_modules/@dsh-std/core/LICENSE +21 -21
- package/vendor/dsh-std/packages/connection/node_modules/@dsh-std/core/README.md +13 -13
- package/vendor/dsh-std/packages/connection/node_modules/@dsh-std/core/README.zh.md +13 -13
- package/vendor/dsh-std/packages/connection/node_modules/@dsh-std/core/lib/index.js.map +1 -1
- package/vendor/dsh-std/packages/connection/node_modules/@dsh-std/core/package.json +21 -21
- package/vendor/dsh-std/packages/manifest/node_modules/@dsh-std/core/CHANGELOG.md +8 -8
- package/vendor/dsh-std/packages/manifest/node_modules/@dsh-std/core/LICENSE +21 -21
- package/vendor/dsh-std/packages/manifest/node_modules/@dsh-std/core/README.md +13 -13
- package/vendor/dsh-std/packages/manifest/node_modules/@dsh-std/core/README.zh.md +13 -13
- package/vendor/dsh-std/packages/manifest/node_modules/@dsh-std/core/lib/index.js.map +1 -1
- package/vendor/dsh-std/packages/manifest/node_modules/@dsh-std/core/package.json +21 -21
- package/vendor/dsh-std/packages/messages/node_modules/@dsh-std/core/CHANGELOG.md +8 -8
- package/vendor/dsh-std/packages/messages/node_modules/@dsh-std/core/LICENSE +21 -21
- package/vendor/dsh-std/packages/messages/node_modules/@dsh-std/core/README.md +13 -13
- package/vendor/dsh-std/packages/messages/node_modules/@dsh-std/core/README.zh.md +13 -13
- package/vendor/dsh-std/packages/messages/node_modules/@dsh-std/core/lib/index.js.map +1 -1
- package/vendor/dsh-std/packages/messages/node_modules/@dsh-std/core/package.json +21 -21
- package/vendor/dsh-std/packages/presentation/node_modules/@dsh-std/connection/CHANGELOG.md +8 -8
- package/vendor/dsh-std/packages/presentation/node_modules/@dsh-std/connection/LICENSE +21 -21
- package/vendor/dsh-std/packages/presentation/node_modules/@dsh-std/connection/README.md +42 -42
- package/vendor/dsh-std/packages/presentation/node_modules/@dsh-std/connection/README.zh.md +42 -42
- package/vendor/dsh-std/packages/presentation/node_modules/@dsh-std/connection/lib/index.js.map +1 -1
- package/vendor/dsh-std/packages/presentation/node_modules/@dsh-std/connection/lib/memory.js.map +1 -1
- package/vendor/dsh-std/packages/presentation/node_modules/@dsh-std/connection/lib/resolve-3X6ausgz.js.map +1 -1
- package/vendor/dsh-std/packages/presentation/node_modules/@dsh-std/connection/package.json +20 -20
- package/vendor/dsh-std/packages/presentation/node_modules/@dsh-std/core/CHANGELOG.md +8 -8
- package/vendor/dsh-std/packages/presentation/node_modules/@dsh-std/core/LICENSE +21 -21
- package/vendor/dsh-std/packages/presentation/node_modules/@dsh-std/core/README.md +13 -13
- package/vendor/dsh-std/packages/presentation/node_modules/@dsh-std/core/README.zh.md +13 -13
- package/vendor/dsh-std/packages/presentation/node_modules/@dsh-std/core/lib/index.js.map +1 -1
- package/vendor/dsh-std/packages/presentation/node_modules/@dsh-std/core/package.json +21 -21
- package/vendor/dsh-std/packages/storage/node_modules/@dsh-std/core/CHANGELOG.md +8 -8
- package/vendor/dsh-std/packages/storage/node_modules/@dsh-std/core/LICENSE +21 -21
- package/vendor/dsh-std/packages/storage/node_modules/@dsh-std/core/README.md +13 -13
- package/vendor/dsh-std/packages/storage/node_modules/@dsh-std/core/README.zh.md +13 -13
- package/vendor/dsh-std/packages/storage/node_modules/@dsh-std/core/lib/index.js.map +1 -1
- package/vendor/dsh-std/packages/storage/node_modules/@dsh-std/core/package.json +21 -21
- package/lib/types/cc/cliHighlight.d.ts.map +0 -1
- package/lib/types/cc/figures.d.ts +0 -77
- package/lib/types/cc/figures.d.ts.map +0 -1
- package/lib/types/cc/figures.js +0 -106
- package/lib/types/cc/format.d.ts.map +0 -1
- package/lib/types/cc/hash.d.ts.map +0 -1
- package/lib/types/cc/hyperlink.d.ts.map +0 -1
- package/lib/types/cc/markdown.d.ts.map +0 -1
- package/lib/types/cc/sessionColors.d.ts.map +0 -1
- package/lib/types/cc/spinnerVerbs.d.ts +0 -3
- package/lib/types/cc/spinnerVerbs.d.ts.map +0 -1
- package/lib/types/cc/spinnerVerbs.js +0 -190
- package/lib/types/cc/syntaxRuns.d.ts.map +0 -1
- package/lib/types/cc/syntaxTheme.d.ts.map +0 -1
- package/lib/types/cc/terminal.d.ts.map +0 -1
- package/lib/types/components/InterruptedByUser.d.ts +0 -7
- package/lib/types/components/InterruptedByUser.d.ts.map +0 -1
- package/lib/types/dsh-adapter/grants.d.ts.map +0 -1
- package/lib/types/dsh-adapter/host-descriptor.d.ts +0 -24
- package/lib/types/dsh-adapter/host-descriptor.d.ts.map +0 -1
- package/lib/types/dsh-adapter/host-descriptor.js +0 -169
- package/lib/types/dsh-adapter/plugin-test-utils.d.ts +0 -62
- package/lib/types/dsh-adapter/plugin-test-utils.d.ts.map +0 -1
- package/lib/types/dsh-adapter/plugin-test-utils.js +0 -61
- package/lib/types/ink/searchHighlight.d.ts.map +0 -1
- package/lib/types/plugin-spec/negotiate.d.ts.map +0 -1
- package/lib/types/plugin-spec/permission-scope.d.ts.map +0 -1
- package/lib/types/plugin-spec/registry.d.ts.map +0 -1
- package/lib/types/plugin-spec/schema-check.d.ts.map +0 -1
- package/lib/types/plugin-spec/tui-extension.d.ts +0 -16
- package/lib/types/plugin-spec/tui-extension.d.ts.map +0 -1
- package/lib/types/plugin-spec/tui-extension.js +0 -79
- package/lib/types/plugin-spec/types.d.ts.map +0 -1
- package/lib/types/plugin-spec/validate.d.ts.map +0 -1
- package/lib/types/test-utils.d.ts +0 -2
- package/lib/types/test-utils.d.ts.map +0 -1
- package/lib/types/test-utils.js +0 -8
- /package/lib/types/{plugin-spec → adapter/standard}/negotiate.d.ts +0 -0
- /package/lib/types/{plugin-spec → adapter/standard}/negotiate.js +0 -0
- /package/lib/types/{plugin-spec → adapter/standard}/registry.d.ts +0 -0
- /package/lib/types/{plugin-spec → adapter/standard}/schema-check.d.ts +0 -0
- /package/lib/types/{plugin-spec → adapter/standard}/types.js +0 -0
- /package/lib/types/ink/{searchHighlight.js → transcript-highlight.js} +0 -0
- /package/lib/types/{cc → terminal-utils}/cliHighlight.d.ts +0 -0
- /package/lib/types/{cc → terminal-utils}/cliHighlight.js +0 -0
- /package/lib/types/{cc → terminal-utils}/format.d.ts +0 -0
- /package/lib/types/{cc → terminal-utils}/format.js +0 -0
- /package/lib/types/{cc → terminal-utils}/hash.d.ts +0 -0
- /package/lib/types/{cc → terminal-utils}/hash.js +0 -0
- /package/lib/types/{cc → terminal-utils}/hyperlink.d.ts +0 -0
- /package/lib/types/{cc → terminal-utils}/hyperlink.js +0 -0
- /package/lib/types/{cc → terminal-utils}/markdown.d.ts +0 -0
- /package/lib/types/{cc → terminal-utils}/syntaxRuns.d.ts +0 -0
- /package/lib/types/{cc → terminal-utils}/syntaxRuns.js +0 -0
- /package/lib/types/{cc → terminal-utils}/syntaxTheme.d.ts +0 -0
- /package/lib/types/{cc → terminal-utils}/syntaxTheme.js +0 -0
package/README.md
CHANGED
|
@@ -17,13 +17,11 @@
|
|
|
17
17
|
|
|
18
18
|
# dsh-TUI
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
>一个面向 DeepSeek Harness 的交互式终端界面插件:提供像素鲸鱼顶栏、实时工作状态行、流式思考展示、双击 Esc 时间回溯、上下文进度条与 TPS 仪表。
|
|
21
21
|
>零核心改动,纯插件挂载。安装插件即可启用,卸载后不会留下核心补丁。
|
|
22
|
-
>献给钟爱tui的各位极客们~
|
|
23
22
|
>
|
|
24
|
-
>
|
|
23
|
+
>An interactive terminal UI plugin for DeepSeek Harness: pixel-whale header, live work status, streaming thinking display, double-Esc time rewind, a context progress bar, and a TPS gauge.
|
|
25
24
|
>Zero core changes, pure plugin mounting. Install to enable; uninstall leaves no core patches.
|
|
26
|
-
>For all TUI-loving geeks~
|
|
27
25
|
|
|
28
26
|
## 🎉 官方收录
|
|
29
27
|
|
|
@@ -52,11 +50,27 @@
|
|
|
52
50
|
|
|
53
51
|
## 核心能力
|
|
54
52
|
|
|
53
|
+
Windows Terminal 支持 Sixel 时,全屏会话记录可直接显示内嵌缩略图,点击后打开大图预览;非全屏 inline 模式仍保留文字回退。
|
|
54
|
+
Sixel 使用最多 256 色的自适应调色板,透明像素与背景合成;Worker 缓存量化结果,滚动时仅编码可见部分,移出视野或被浮层覆盖时擦除旧图。
|
|
55
|
+
附件读取与解码最多两路并发;最后一个使用者离开后取消读取,未启动的解码不再执行。多图缓存、排队任务与单帧传输均有容量上限,超限时保留文字回退。
|
|
56
|
+
自动探测优先 Kitty,其次使用 DA1 声明的 Sixel 能力。`DSH_TUI_IMAGE_PROTOCOL=auto|kitty|sixel|none` 可覆盖协议选择;
|
|
57
|
+
`DSH_TUI_DISABLE_TERMINAL_IMAGES=1`、无障碍模式、非 TTY 输出以及 tmux/screen 仍禁用图形。
|
|
58
|
+
缺少图片依赖或编码失败时保留文字回退;强制协议也不会启用 inline Sixel。
|
|
59
|
+
浅色主题的面板和图片预览默认使用白底,图片预览边框使用中性色。
|
|
60
|
+
大图预览以对话区约 95% 宽高为预算,最长边可达 2048 像素,仍限制总像素量和后台开销;缩略图大小不变。
|
|
61
|
+
预览支持适应窗口、100% 原像素与 200%/400%/800% 放大,拖动、滚轮或方向按钮平移;100% 需终端报告字符格像素尺寸。
|
|
62
|
+
底部「打开原图」链接直接调用系统看图程序,打开未经重编码的原始附件,包括从历史会话恢复的图片。
|
|
63
|
+
大图弹窗用 `←`/`→` 或底部 `‹`/`›` 切换上一张、下一张,显示当前张数,首尾不循环;切图回到适应窗口。
|
|
64
|
+
|
|
55
65
|
- **终端交互**:低资源占用,长会话稳定可靠;多种主题切换,样式美观,实时显示工作状态、TPS、缓存命中率等
|
|
56
66
|
推理等级、输入/输出 token 与 Git/会话信息;终端卡多行命令可经 `/settings` 折叠为首行 + 计数提示(Ctrl+O 或点击卡片展开);全屏模式下悬停在截断的工具卡标题、用户消息或会话标题上约 600ms,浮层显示完整内容。
|
|
57
|
-
|
|
67
|
+
用户附图及助手/工具结果中的持久图片块会直接显示在会话记录中;Kitty graphics 或 Sixel 可用时显示等比缩略图,否则保留同尺寸文字回退。全屏下点击输入框 `[Image #N]` 或 transcript 缩略图在对话区域居中打开大图预览,卡片外的对话文字变暗,不遮挡输入栏(Esc/点击外部关闭),标题为 `Image #N — 格式 · 尺寸 · 体积 · 文件名`,本会话暂存的图片在卡片底行显示来源路径;Finder 复制的图片文件粘贴时直接入附件库为 `[Image #N]`;输入框里的 `[Image #N]` 是一个整体,光标整体跳过、删除整体生效,光标落在其上时整块反显并自动打开预览、离开时关闭。Vim 的 `x`/`X`/`d…` 同样整张删除,`u` 同时恢复文字与附件;撤销仅限当前草稿。
|
|
68
|
+
终端图片预览默认开启,可在 `/settings → 终端图片预览` 或配置 `terminalImages: false` 中关闭,使用 `/restart` 后生效。已保存的 `/settings` 选择优先于 Cordis 配置;若曾保存为开启,请在 `/settings` 中关闭后再 `/restart`。关闭时保留文字信息并跳过预览解码,不影响向模型发送图片;`DSH_TUI_DISABLE_TERMINAL_IMAGES=1` 始终强制关闭预览。
|
|
69
|
+
- **功能全面**:`/resume` 按工作目录分类浏览、搜索与预览历史会话(左键恢复、右键弹出操作菜单;可固定常用会话——「已固定」分组置顶显示,行内 ★ 或 `Ctrl+P` 切换,持久化到 `~/.dsh-tui`),另有 `/agentview` 会话总览(空输入 `←` 一键后台化,后台会话派发、预览、回复与停止一站式管理)、`/new`、`/compact`、`/export`、`/btw`,模型热切换(新会话默认推理强度可在 /settings → 默认推理强度 预设),原生subagent,会话fork,自动更新,输入框 `/vim` vim 编辑模式、鼠标选区编辑(拖选高亮、Shift+click 扩展、双击选词、Ctrl+C 复制选区)与全屏草稿编辑(`Ctrl+Shift+E` 或输入行 `⛶` 按钮:行号 + 当前行高亮、Enter 换行、Ctrl+Enter 发送、滚轮滚动、点击/拖选,长草稿独占整屏;`/settings` 可关);可在vs code中[以vscode插件形式启动](docs/vscode.md),已上架 VS Code Marketplace。
|
|
58
70
|
- **扩展丰富**:原生浏览器交互,compter use等大量附属功能性扩展
|
|
59
71
|
- **技能归 DSH 管理**:`/skills` 展示当前 profile、用户与项目发现的技能;dsh-TUI 不预装通用技能。
|
|
72
|
+
- **工作状态动画**:默认使用 `moon8`;读取旧版本地配置中的 `claude` 值时自动映射为 `moon8`,选择器只显示当前预设。
|
|
73
|
+
- **像素鲸鱼娘**:开屏随机三选一开场动画;欢迎期(开始第一个任务前)可**点击冒爱心并唤醒睡着的鲸鱼**,闲置时摆鱼鳍、拍尾巴、入睡冒 Z(`/settings → whaleIdle` 可关)。**开始第一个任务后永久定格为静态标准帧**,零持续开销。鲸鱼娘的 22 帧手绘原图与闲置行为移植自 [dsh-ui-whale](https://github.com/lhh010/dsh-ui-whale)(作者 [@lhh010](https://github.com/lhh010)),特此致谢。
|
|
60
74
|
|
|
61
75
|
|
|
62
76
|
|
|
@@ -70,11 +84,6 @@
|
|
|
70
84
|
<br>
|
|
71
85
|
<strong>首屏:像素鲸鱼顶栏</strong>
|
|
72
86
|
</td>
|
|
73
|
-
<td align="center" valign="middle" width="50%">
|
|
74
|
-
<img src="screenshots/working-line.png" alt="工作状态行 + 上下文进度条" width="480">
|
|
75
|
-
<br>
|
|
76
|
-
<strong>工作状态行 + 上下文进度条</strong>
|
|
77
|
-
</td>
|
|
78
87
|
</tr>
|
|
79
88
|
</table>
|
|
80
89
|
</div>
|
|
@@ -141,8 +150,152 @@ sh install.sh
|
|
|
141
150
|
| 实验性(仍可能随 dsh-std / 准入规范演进调整) | 九 决策事件 · toast 通知(`ctx.tuiToast`,新增) |
|
|
142
151
|
| 跟随上游(稳定性由 cordis / dsh 官方机制决定) | 一 会话事件 · 二 官方 prompt 槽位 · 三 技能打包 · 四 主题 · 五 system prompt 段 · 七 profile 组合 |
|
|
143
152
|
|
|
144
|
-
另:`@deepseek-harness-tui/dsh-tui/
|
|
145
|
-
`@deepseek-harness-tui/dsh-tui/
|
|
153
|
+
另:`@deepseek-harness-tui/dsh-tui/api`(纯类型入口)为实验性公开面。
|
|
154
|
+
`@deepseek-harness-tui/dsh-tui/test-utils` 公共子路径已移除——它包含可注入真实
|
|
155
|
+
activationId 的测试助手,不适合作为公共生产 API;需要 headless 测试请复制仓库内
|
|
156
|
+
`scripts/lib/plugin-test-utils.ts` 的思路,在自己的测试环境走正式准入流程。
|
|
157
|
+
|
|
158
|
+
公共面的导入迁移:
|
|
159
|
+
- **`ctx.tuiPluginHost.grants.corrupt` 已不存在**。新的 `HostGrantFacade` 只暴露
|
|
160
|
+
`allows(pluginCtx, permission, scope)`、`defaultOf`、`knownPermissions` 和
|
|
161
|
+
`onChange(pluginCtx, listener)`;损坏的 grant 文件不再通过一个布尔字段暴露给插件。
|
|
162
|
+
`onChange` 是 subscribe 类托管能力:必须传入调用 activation,受 shadow 门禁约束,
|
|
163
|
+
返回的取消函数绑定到该 activation,避免文件轮询/监听器泄漏。需要诊断时请使用
|
|
164
|
+
`ctx.tuiPluginHost.selfCheck()`、`/doctor`,或通过显式诊断查询在宿主侧检查
|
|
165
|
+
grant 文件状态。
|
|
166
|
+
- `createAdmissionCatalog` 不再从 `./plugin-host` 导出;诊断请使用
|
|
167
|
+
`ctx.tuiPluginHost.selfCheck()` 与 `/doctor`。
|
|
168
|
+
- `ctx.tuiPluginHost.grants` 改为调用方安全的 `HostGrantFacade`:
|
|
169
|
+
`grants.allows(pluginCtx, permission, scope)` 由宿主从当前 activation 推导身份,
|
|
170
|
+
不再接受任意 `GrantPrincipal`/完整 `GrantStore`。
|
|
171
|
+
- `GrantStore`、`GrantPrincipal` 不再是公开导出的插件 API;它们保留在
|
|
172
|
+
`src/adapter/standard/grants.ts` 作为宿主内部实现类型。需要构造/校验 grant
|
|
173
|
+
文件的宿主方请走仓库内部路径,生态测试不要在公共包依赖这些类型。
|
|
174
|
+
- `@deepseek-harness-tui/dsh-tui/test-utils` 子路径已删除;仓库内的
|
|
175
|
+
`scripts/lib/plugin-test-utils.ts` 仅用于本仓库无头验证,不属于公共契约。
|
|
176
|
+
生态插件请在自己的测试环境通过正式 admission 流程复现。
|
|
177
|
+
|
|
178
|
+
### 平台已知边界(Shadow 门禁不承诺覆盖)
|
|
179
|
+
|
|
180
|
+
TUI 的 shadow/门禁只覆盖自有托管接缝;以下由 Cordis/上游 DSH 拥有的路径属于已写死的
|
|
181
|
+
平台边界,不会被门禁描述为全路径覆盖:
|
|
182
|
+
|
|
183
|
+
- 直接 `ctx.get('commands').register` / `ctx.get('commands').execute`(C-070);
|
|
184
|
+
- `ctx.plugin()` / `candidate.plugin()` 子插件安装(Cordis 平台);
|
|
185
|
+
- agent preset 名册 / recompose 注册(`@deepseek-ai/dsh-agent-presets`);
|
|
186
|
+
- system prompt section 注册(`@deepseek-ai/dsh-system-prompt`);
|
|
187
|
+
- skill registry 注册/调用(`@deepseek-ai/dsh-skill`)。
|
|
188
|
+
|
|
189
|
+
这些路径在 `verify-adapter-shadow` 中以 `platform-known boundary` 显式列出。
|
|
190
|
+
此外,`verify-adapter-shadow` 还显式记录两类门禁已知边界:未列入
|
|
191
|
+
`NON_SERVICE_POLICY` 的内部 TUI 状态/视图辅助类,以及 `src/screens`/
|
|
192
|
+
`src/components` 的 React UI 状态与事件处理——它们不是 adapter capability
|
|
193
|
+
入口,门禁不将其描述为已覆盖。
|
|
194
|
+
|
|
195
|
+
|
|
196
|
+
### Adapter live-probe 诚实性与 P2 边界
|
|
197
|
+
|
|
198
|
+
本轮把 `Command` / `LocalStorage` / `MessageObserver` 从“无实探的 staged”
|
|
199
|
+
推进到了“有可逆实探的 live”(在 legacy/new 模式下异步执行),并实现最小
|
|
200
|
+
`KernelRuntime` 与 passive/replay harness:
|
|
201
|
+
|
|
202
|
+
- **Command live probe**:在真实命令服务上临时注册唯一 no-op command,经
|
|
203
|
+
`find` / `list` 验证可见,并以内存 fake agent session 执行一次,确认
|
|
204
|
+
execute 返回 success;无论成功失败都在 `finally` 反注册。该操作不写任何
|
|
205
|
+
DSH 持久化 session 日志,唯一瞬时副作用是进程内命令注册表的一次
|
|
206
|
+
`commands/change` 通知。
|
|
207
|
+
- **LocalStorage live probe**:在真实 storage 目录下创建随机临时 namespace
|
|
208
|
+
文件,完成 write/read/delete,并在 `finally` 删除;不触碰任何真实插件
|
|
209
|
+
namespace,也不保留探针数据。
|
|
210
|
+
- **MessageObserver live probe**:通过 broker 的内部 probe-only 发布通道添加一个临时探针订阅并投递一条合成事件;真实插件的 `session:*` 通配订阅不会收到任何探针消息,探针结束后订阅数回到原值。这些 live probe 方法不是插件可见的公开 service 方法,宿主内核通过内部 host-only accessor 调用。
|
|
211
|
+
- **默认 legacy 兼容发布**:`DSH_TUI_ADAPTER_MODE` 默认是 `legacy`,不会加载新 Kernel、不会执行可逆 live probe。该模式保留旧发布语义,使用独立的 `buildLegacyHostDescriptor` 路径:只要 Command / LocalStorage / MessageObserver 的既有服务行已挂载,`describe()` / `hostDescriptor()` 就发布这些契约供插件准入使用;构建结果会在 warnings 中明确标注为 legacy 兼容声明,与新模式 live-only 的公开 descriptor 分离。
|
|
212
|
+
- **模式配置 fail-closed**:只有未设置 `DSH_TUI_ADAPTER_MODE` 时才默认 `legacy`;显式值只接受 `legacy` / `passive-shadow` / `replay-shadow` / `new`(忽略大小写与首尾空白),空值或未知值会报错并拒绝启动。非 legacy 模式在 Kernel 未就绪、refresh skipped/failed 或已释放时返回空契约 descriptor,不回退兼容发布。
|
|
213
|
+
- **Host probe 访问边界**:`host-probe-access` 内部的 token 是模块级不导出符号,普通包 exports 路径也拒绝 deep import。但插件与宿主同进程时,绝对路径加载内部文件仍无法被 `exports` 阻止——这是 **trusted-in-process 边界,不是安全沙箱**;宿主不会用“插件不可调用”这类无限定承诺。内部注册函数不会覆盖已引导的宿主 probe runner。
|
|
214
|
+
- **Passive Shadow**:不执行上述可逆 probe,只做只读 detect/descriptor 快照;
|
|
215
|
+
**Replay Shadow**:生产环境不接真实 DSH,必须通过 `scripts/verify-adapter-replay-harness.ts`
|
|
216
|
+
或 `src/adapter/kernel/replay.ts` 在隔离 replay context 上运行,否则 fail-closed
|
|
217
|
+
并输出明确提示。
|
|
218
|
+
- Replay harness 用法:在隔离输入上运行
|
|
219
|
+
`node --import tsx/esm scripts/verify-adapter-replay-harness.ts`(门禁脚本),
|
|
220
|
+
或在代码中调用 `runReplayShadow({ schemaVersion: 'tui-adapter-replay/v1', ... })`
|
|
221
|
+
获取 `{ kernelContracts, legacyContracts, missing, extra, lifecycles }` 对比报告。
|
|
222
|
+
P5 起还支持真实 DSH session snapshot/transcript 的
|
|
223
|
+
`runChannelReplay(...)` / `verify:adapter-channel-conformance`,走
|
|
224
|
+
`tui.dsh/v1alpha1#Channel` 的 Provider/Consumer 与协议校验。
|
|
225
|
+
- 公开 Host Descriptor 仍然只发布带真实 probe evidence 的 live 生命周期;
|
|
226
|
+
未完成 live refresh 或 passive/replay 下 `Command` / `LocalStorage` /
|
|
227
|
+
`MessageObserver` 保持 staged/degraded,不伪造完整支持。`DecisionEvents`
|
|
228
|
+
维持逐 feature probe + 真实 channel/dispatch 拓扑发布规则。
|
|
229
|
+
- P6 已彻底移除内部 `admissionCompat` 平行视图,并删除
|
|
230
|
+
`src/plugin-spec/*` 与 `src/dsh-adapter/{grants,host-descriptor}.ts` compat
|
|
231
|
+
shim。生产代码直接导入 `src/adapter/standard/*`;`verify:compat-removal`
|
|
232
|
+
现在扫描 `src/`、`scripts/`、`bin/`、生成 `lib/`(存在时)与 package export
|
|
233
|
+
图,`verify:package` 也会拒绝 npm tarball 中的旧 shim;仍保留的兼容别名
|
|
234
|
+
(`ExtensionGrants`、`envelopeSchema`、`createAdmissionCatalog`、
|
|
235
|
+
`facadeFromLegacy` 等)已明确标注为 P6 范围外/长期兼容面。
|
|
236
|
+
- 新 Kernel 不再是 P1 空壳:`KernelRuntime` 管理 driver 注册/mount、detection、
|
|
237
|
+
`declared → staged → live`、清理与诊断快照;生产 Host Descriptor、`getHostFacade()`、
|
|
238
|
+
`/doctor`、`/plugins` 均走该 runtime。
|
|
239
|
+
- **P3 feature-level live 拆分**:`Workspace` / `Scenes` / `Settings` /
|
|
240
|
+
`Extensions` 不再用“注册+list+dispose”冒充整个能力 live。只有实际通过
|
|
241
|
+
只读/可逆探针验证的方法才进入 live(如 `host.workspaces.list`、
|
|
242
|
+
`host.workspaces.resolve`、`host.scenes.register`、`host.settings.register`、
|
|
243
|
+
`host.status.set`、`host.command-trees.children` 等);
|
|
244
|
+
`host.toast.show` 因尚未验证真实生产 deliver 路径,保持 degraded;
|
|
245
|
+
`rename` / `runCommand` / `commandShell` / `scenes.open` /
|
|
246
|
+
`settings.subscribe` / 快捷键 dispatch / command-tree descriptions 等未验证
|
|
247
|
+
方法保持 degraded/staged。`Presentation` 的交互 `ask` 已桥接到真实
|
|
248
|
+
`QuestionStore`,`approve` 在 P3 明确 staged。
|
|
249
|
+
- **生产 P3 slices 接入**:非 `legacy` 的 `TuiPluginHostRuntime` 会把
|
|
250
|
+
`ADAPTER_KERNEL_SLICES` 传入生产 `KernelRuntime`,进入 mount/refresh/
|
|
251
|
+
descriptor 流程;依赖的服务未挂载时对应 slice 降级而不是崩溃。
|
|
252
|
+
`DSH_TUI_ADAPTER_SLICES` 现在会按 slice id / capability / effect 矩阵过滤
|
|
253
|
+
kernel slices,不再是无效果的死参数。
|
|
254
|
+
- **宿主初始化运行时快照**:所有 adapter/宿主服务(storage/message/plugin-host、
|
|
255
|
+
P3 的 status/workspaces/scenes/settings/toast/dialogs/command-trees/questions/approvals
|
|
256
|
+
等)都会在初始化时捕获不可变 `AdapterRuntimeOptions`。之后同一进程再修改
|
|
257
|
+
`DSH_TUI_ADAPTER_MODE` / `DSH_TUI_ADAPTER_SLICES` 不能把 passive/replay 服务
|
|
258
|
+
解锁成 `new`;能力入口不再每次读 `process.env`。
|
|
259
|
+
- **Slice 归属与边界**:`DSH_TUI_ADAPTER_SLICES` 现在会大小写/空白归一化、支持
|
|
260
|
+
常见别名(如 `dialogs` → `presentation`、`decisions` → `decisions`),未知
|
|
261
|
+
slice id 直接拒绝并 fail-closed。`toast` 不再被 `presentation` 隐式加载,
|
|
262
|
+
`decisions` 不再被 `messages` 隐式加载。
|
|
263
|
+
- **P4 Channel Port/投影层(诚实表述)**:新增 `projection / actions / state /
|
|
264
|
+
plugins / transcript` 五个 Host Port 与 `src/adapter/channel/*` 拆分模块,
|
|
265
|
+
并由 `channel` KernelSlice 挂载到生产 HostFacade;**生产 `src/dsh-adapter/channel.ts`
|
|
266
|
+
本体尚未物理拆分**,仍由 live Channel 作为实现来源,拆分模块是生产 driver
|
|
267
|
+
实际消费的 Port/投影层;**T1 已做核心迁移:生产 `plugin.ts` 中的通知与初始提交
|
|
268
|
+
已优先走 `HostFacade.channel.actions`;**非 shadow 模式下 facade 尚未 mount
|
|
269
|
+
时可回退原生 Channel,passive/replay shadow 下禁止回退,缺失或拒绝时丢弃**;
|
|
270
|
+
其余 UI/Channel 内部动作仍大部分直接调用原生 Channel,尚未完整迁移。
|
|
271
|
+
`HostFacade` 按方法做 shadow 守卫,passive/replay 下只读投影可用、变更动作被拒。
|
|
272
|
+
- **P5 Channel Provider/Consumer**:新增本地 Channel Provider/Consumer,
|
|
273
|
+
实现 `tui.dsh/v1alpha1#Channel` 的 open/subscribe/invoke/close 协议包络与
|
|
274
|
+
规范校验;`runChannelReplay` 支持录制 snapshot 数组,也支持把真实 DSH
|
|
275
|
+
`agent.session.events` 形状事件投影为单调 `TuiChannelSnapshot`。该投影定位为
|
|
276
|
+
**minimal transcript replay**:覆盖 transcript/status/基础 session 字段,
|
|
277
|
+
并在调用方提供元数据时带入 model/mode/preset/settings/scene/diagnostic/trace/
|
|
278
|
+
context/pending/usage 等 RFC 相关字段;仍**不声明是完整 RFC 0007 Channel
|
|
279
|
+
state/conformance**。未知方法按协议失败、
|
|
280
|
+
features 必须显式声明且每个 feature 必须有 state/method 可观察证据、
|
|
281
|
+
重复 features 先拒绝、未知非 ignorable DSH event fail-closed、
|
|
282
|
+
method handler 只能在 replay isolation 内执行、replay provider 不解析
|
|
283
|
+
workspace/sessionId selector(显式 unsupported);连续性错误 fail-closed。
|
|
284
|
+
- **P3 feature 生命周期稳定性**:`refresh` 之后执行 `mount()` / `descriptorBuild()` /
|
|
285
|
+
`diagnosticSnapshot()` 再次触发同步 `detect()`,也不会清空已探测的 P3 feature;
|
|
286
|
+
这些 feature 是内部 Kernel/Port 事实,不进入公开 Host Descriptor。
|
|
287
|
+
- **Settings section live 诚实性**:`host.settings.section` 的 live 依据是探针中
|
|
288
|
+
真实调用 `section()` 解析临时 namespace;解析缺失/失败时该 feature 降级,不再
|
|
289
|
+
仅凭 register/list 就标 live。
|
|
290
|
+
- **Host Port 逐方法 shadow guard**:`KernelRuntime.facade()` 返回的每个
|
|
291
|
+
Port 方法都会先执行统一 effect-class 检查。passive/replay 生产模式下
|
|
292
|
+
`rename`、`runCommand`、`commandShell`、`scenes.open`、`settings.subscribe`、
|
|
293
|
+
各类 `register` 等会被拒绝;只读方法仍可用于诊断。
|
|
294
|
+
- **Toast live probe** 使用独立 probe-only sink 管道,不替换/不吞并发生产
|
|
295
|
+
toast;**Status live probe** 在 `clearIf` 失败或残留时降级,不会标 live。
|
|
296
|
+
- `verify:adapter-slices` / `verify:adapter-detection` 现在同时检查生产
|
|
297
|
+
plugin-host 确实传递 `ADAPTER_KERNEL_SLICES`,避免门禁只测直接 new
|
|
298
|
+
KernelRuntime 的自证。
|
|
146
299
|
|
|
147
300
|
|
|
148
301
|
|
|
@@ -155,7 +308,9 @@ sh install.sh
|
|
|
155
308
|
| [主题系统](docs/themes.md) | 内置主题、自动检测、静态 JSON 与 npm 插件主题、校验规则 |
|
|
156
309
|
| [交互与命令](docs/interaction.md) | 快捷键、鼠标、问卷、slash command 与会话工作流 |
|
|
157
310
|
| [架构与限制](docs/architecture.md) | 运行链路、渲染与持久化设计、安全边界、已知限制 |
|
|
158
|
-
| [
|
|
311
|
+
| [社区管理框架](docs/community-management.md) | 社区入口、角色、提案流程、roadmap 规则与维护节奏 |
|
|
312
|
+
| [项目路线图](docs/roadmap.md) | 公开目标、阶段、任务状态、退出条件与 Future Work |
|
|
313
|
+
| [VS Code 使用指南](docs/vscode.md) | 在 VS Code 集成终端运行 dsh-tui;companion 扩展 `dsh-tui-vscode` 提供多会话、会话历史与指定会话恢复(已上架 Marketplace) |
|
|
159
314
|
| [贡献与开发约定](docs/contributing.md) | 贡献流程、仓库地图、构建产物、验证矩阵与修改规则 |
|
|
160
315
|
| [插件准入与开发指南](https://github.com/T-Auto/dsh-ecosystem-spec/blob/main/docs/plugin-admission-and-development.md) | 接口与兼容性协定 / 插件准入规范 / 插件接缝 / 契约 / 验证清单(已并入 dsh-ecosystem-spec) |
|
|
161
316
|
|
|
@@ -169,9 +324,9 @@ sh install.sh
|
|
|
169
324
|
- **社区交流群**:使用问题、插件创意、功能许愿,都欢迎进来聊。
|
|
170
325
|
- **行为准则**:参与前请读一遍[贡献者行为准则](CODE_OF_CONDUCT.md)。
|
|
171
326
|
|
|
172
|
-
|
|
|
173
|
-
| :---: | :---: |
|
|
174
|
-
| <img src="screenshots/wechat-group.jpg" alt="dsh-TUI
|
|
327
|
+
| 微信群(dsh-TUI 社区交流 4 群) | QQ 群(群号 572549239) |
|
|
328
|
+
| :---: | :---: |
|
|
329
|
+
| <img src="screenshots/wechat-group.jpg" alt="dsh-TUI 社区交流 4 群微信群二维码" width="200"> | <img src="screenshots/qq-group.png" alt="dsh-TUI 社区交流群 QQ 群二维码" width="200"> |
|
|
175
330
|
|
|
176
331
|
> 微信群二维码约 7 天过期一次,如遇失效请走 QQ 群(572549239),或开个 issue 提醒我们更新。
|
|
177
332
|
|
|
@@ -179,10 +334,14 @@ sh install.sh
|
|
|
179
334
|
|
|
180
335
|
> **Windows 安全警告:** Windows profile 默认使用 `danger-full-access`,且 approval 默认是 `never`。这会授予工具不受限制的访问权限;在敏感凭证或不可信仓库环境中启动前,务必先检查并收紧 profile 配置。
|
|
181
336
|
|
|
182
|
-
`dsh-TUI` 不实现独立沙箱,而是使用当前 DSH profile 的文件、Shell、sandbox 与 approval 策略。权限预设来自 DSH `permissionPresets` registry:服务缺失时使用 legacy 三项兼容名册;服务已挂载但为空、损坏或不一致时标记为 unavailable,TUI fail closed,不伪造名册。可用 registry
|
|
337
|
+
`dsh-TUI` 不实现独立沙箱,而是使用当前 DSH profile 的文件、Shell、sandbox 与 approval 策略。权限预设来自 DSH `permissionPresets` registry:服务缺失时使用 legacy 三项兼容名册;服务已挂载但为空、损坏或不一致时标记为 unavailable,TUI fail closed,不伪造名册。可用 registry 按声明顺序提供第三方预设并自动进入补全、picker 与 `Shift+Tab` 循环(排除 `custom`/`status`、canonical 预设、重复 identity 与不安全 token);首次观察遵循 registry 顺序,后续刷新保留已见 identity 的相对顺序。服务可用时 `/permission` 以本地命令形式常驻菜单:切换优先调用官方 `/permission <preset>` 命令;命令行未暴露给本 agent 时,回退到 permissionPresets 服务自身的官方写路径(与命令 handler 同一实现,写真实 `permission/preset`/`sandbox/mode`/`approval/policy` 事件,绝不由 TUI 伪造),并以事件/读回确认;两条路都不可用时显式提示,绝不静默。计划模式退出先恢复进入前的 atom,再把权限身份还原到你进入前所在的预设(registry 仍提供时)。在包含敏感凭证或不可信仓库的环境中启动前,请先检查 profile 配置。
|
|
183
338
|
|
|
184
339
|
详见[权限边界与已知限制](docs/architecture.md#权限与安全边界)。
|
|
185
340
|
|
|
341
|
+
### 致谢
|
|
342
|
+
|
|
343
|
+
- 像素鲸鱼娘的 22 帧手绘原图(Excel 逐格绘制)与闲置动画行为(摆鱼鳍、拍尾巴、入睡冒 Z、点击冒爱心)移植自 **[dsh-ui-whale](https://github.com/lhh010/dsh-ui-whale)**(DeepSeek Harness Web 端鲸鱼宠物插件,作者 [@lhh010](https://github.com/lhh010),BSD-3-Clause),感谢作者与灵感 🐋💜
|
|
344
|
+
|
|
186
345
|
### 友情链接
|
|
187
346
|
|
|
188
347
|
朋友们开发的[社区、相关项目与周边工具](docs/links.md)
|
package/bin/dsh-tui.js
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* profile 内副本(被委托执行,或 junction/源码目录里直接运行)→ 完整
|
|
15
15
|
* 启动逻辑(与 0.8.6 及之前一致):
|
|
16
16
|
* dsh 预检 / profile 版本核对 / --resume 与工作区目标拦截 /
|
|
17
|
-
*
|
|
17
|
+
* `dsh --profile dsh-tui` 启动与退出码透传。
|
|
18
18
|
*
|
|
19
19
|
* 自举角色判定用 realpath:Windows Junction 轨(profile 指回仓库)与
|
|
20
20
|
* `pnpm run dev` 源码运行都会折叠成同一物理目录 → 走完整逻辑,不会
|
|
@@ -120,7 +120,7 @@ const isVersionNewer = (a, b) => {
|
|
|
120
120
|
return false
|
|
121
121
|
}
|
|
122
122
|
|
|
123
|
-
const lang =
|
|
123
|
+
const lang = process.env.DSH_TUI_LANG === 'en' ? 'en' : 'zh'
|
|
124
124
|
const MSG = {
|
|
125
125
|
noDsh: {
|
|
126
126
|
en: '[dsh-tui] dsh CLI not found. Install the official client first:\n npm install -g @deepseek-ai/dsh',
|
|
@@ -170,10 +170,6 @@ const MSG = {
|
|
|
170
170
|
en: code => `[dsh-tui] dsh profile exited with code ${code}. Run it directly for diagnostics:\n dsh --profile ${PROFILE}`,
|
|
171
171
|
zh: code => `[dsh-tui] dsh profile 已退出(退出码 ${code})。可直接运行以下命令查看诊断:\n dsh --profile ${PROFILE}`,
|
|
172
172
|
},
|
|
173
|
-
legacyEnv: {
|
|
174
|
-
en: (oldName, newName) => `[dsh-tui] note: env ${oldName} was renamed to ${newName}; the old name no longer takes effect.`,
|
|
175
|
-
zh: (oldName, newName) => `[dsh-tui] 提示:环境变量 ${oldName} 已更名为 ${newName},旧名不再生效。`,
|
|
176
|
-
},
|
|
177
173
|
notInstalled: {
|
|
178
174
|
en: '(not installed)',
|
|
179
175
|
zh: '(未安装)',
|
|
@@ -187,7 +183,9 @@ const MSG = {
|
|
|
187
183
|
profileNewer: v => `profile is newer — align the launcher: npm install -g ${PACKAGE}@${v}`,
|
|
188
184
|
profileOlder: v => `profile is older — align it: dsh plugin --profile ${PROFILE} add ${PACKAGE}@${v}`,
|
|
189
185
|
keySet: 'set',
|
|
190
|
-
|
|
186
|
+
keySetEnv: 'set (environment)',
|
|
187
|
+
keySetStore: 'set (DSH credential store)',
|
|
188
|
+
keyMissing: 'not set — neither DEEPSEEK_API_KEY nor a DSH credential-store ref',
|
|
191
189
|
missing: 'missing',
|
|
192
190
|
},
|
|
193
191
|
zh: {
|
|
@@ -198,7 +196,9 @@ const MSG = {
|
|
|
198
196
|
profileNewer: v => `profile 较新——对齐启动器: npm install -g ${PACKAGE}@${v}`,
|
|
199
197
|
profileOlder: v => `profile 较旧——对齐它: dsh plugin --profile ${PROFILE} add ${PACKAGE}@${v}`,
|
|
200
198
|
keySet: '已设置',
|
|
201
|
-
|
|
199
|
+
keySetEnv: '已设置(环境变量)',
|
|
200
|
+
keySetStore: '已设置(DSH 凭据库)',
|
|
201
|
+
keyMissing: '未设置——环境变量与 DSH 凭据库中都没有 DEEPSEEK_API_KEY',
|
|
202
202
|
missing: '缺失',
|
|
203
203
|
},
|
|
204
204
|
},
|
|
@@ -275,6 +275,30 @@ if (subcommand === 'help' || subcommand === '--help' || subcommand === '-h') {
|
|
|
275
275
|
console.log(msg('helpText'))
|
|
276
276
|
process.exit(0)
|
|
277
277
|
}
|
|
278
|
+
/**
|
|
279
|
+
* Whether the DSH credential store declares a reference by this name.
|
|
280
|
+
*
|
|
281
|
+
* The launcher stays dependency-free, so the YAML is read as text: only the
|
|
282
|
+
* top-level `refs:` block maps reference names to stored secrets, and matching
|
|
283
|
+
* the bare name anywhere else (grants, payloads) would false-positive. Reports
|
|
284
|
+
* presence only — the value is never read, formatted, or printed. Mirrored by
|
|
285
|
+
* the in-TUI `/doctor` in src/utils/credentials.ts; the two must not diverge.
|
|
286
|
+
* @param home - The DSH home directory that holds `.credentials.yaml`.
|
|
287
|
+
* @param name - Reference name to look for (e.g. `DEEPSEEK_API_KEY`).
|
|
288
|
+
* @returns True when a `refs` entry with that name exists.
|
|
289
|
+
*/
|
|
290
|
+
const credentialRefDeclared = (home, name) => {
|
|
291
|
+
try {
|
|
292
|
+
const text = readFileSync(join(home, '.credentials.yaml'), 'utf8')
|
|
293
|
+
const block = /^refs:[ \t]*\r?\n((?:[ \t]+\S.*(?:\r?\n|$))*)/mu.exec(text)
|
|
294
|
+
if (block === null) return false
|
|
295
|
+
const escaped = name.replace(/[.*+?^${}()|[\]\\]/gu, '\\$&')
|
|
296
|
+
return new RegExp(`^[ \t]+${escaped}[ \t]*:`, 'mu').test(block[1])
|
|
297
|
+
} catch {
|
|
298
|
+
return false
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
|
|
278
302
|
// ─── 子命令:doctor ──────────────────────────────────────────────────────────
|
|
279
303
|
// 启动前环境诊断——针对「TUI 起不来」的故障域(装不上、update 后版本不
|
|
280
304
|
// 同步、密钥没配),与 TUI 内 /doctor 的会话内诊断互补。零 lib 依赖、
|
|
@@ -320,10 +344,17 @@ if (subcommand === 'doctor') {
|
|
|
320
344
|
}
|
|
321
345
|
}
|
|
322
346
|
}
|
|
323
|
-
// truthiness 而非 !== undefined:空字符串的 key
|
|
324
|
-
// /doctor(channel.doctorInfo
|
|
325
|
-
|
|
326
|
-
|
|
347
|
+
// truthiness 而非 !== undefined:空字符串的 key 同样发不了请求。TUI 内
|
|
348
|
+
// /doctor(channel.doctorInfo)用同一判定——两个 doctor 不许分叉。
|
|
349
|
+
// 只看环境变量会误报:dsh 在启动时才把凭据库里的 ref 解析进会话,而
|
|
350
|
+
// doctor 跑在 dsh 之前,此时环境变量通常仍是空的。
|
|
351
|
+
const keyFromEnv = Boolean(process.env.DEEPSEEK_API_KEY)
|
|
352
|
+
const keyFromStore = credentialRefDeclared(dshHome, 'DEEPSEEK_API_KEY')
|
|
353
|
+
report(
|
|
354
|
+
keyFromEnv || keyFromStore,
|
|
355
|
+
'DEEPSEEK_API_KEY',
|
|
356
|
+
keyFromEnv ? L.keySetEnv : keyFromStore ? L.keySetStore : L.keyMissing,
|
|
357
|
+
)
|
|
327
358
|
for (const candidate of [join(homedir(), '.dsh-tui', 'cordis.yml'), join(profileDir, 'cordis.patch.yml')]) {
|
|
328
359
|
report(existsSync(candidate), 'config', `${candidate}${existsSync(candidate) ? '' : ` ${L.missing}`}`)
|
|
329
360
|
}
|
|
@@ -393,6 +424,55 @@ const bootstrapProfile = () => {
|
|
|
393
424
|
}
|
|
394
425
|
}
|
|
395
426
|
|
|
427
|
+
/** Installed version of the profile copy, or undefined when it is absent/unreadable. */
|
|
428
|
+
const profileVersion = () => {
|
|
429
|
+
try {
|
|
430
|
+
return JSON.parse(readFileSync(installedPkgPath, 'utf8')).version
|
|
431
|
+
} catch {
|
|
432
|
+
return undefined
|
|
433
|
+
}
|
|
434
|
+
}
|
|
435
|
+
|
|
436
|
+
/**
|
|
437
|
+
* Guard the launcher/profile version boundary. The two copies ship in the same
|
|
438
|
+
* npm package but are installed independently (`npm i -g` vs `dsh plugin add`),
|
|
439
|
+
* so one of them being upgraded alone is a normal state. It must be caught
|
|
440
|
+
* here: dsh composes the launcher's patch surface with the profile's packages,
|
|
441
|
+
* and a skew fails deep inside the dsh loader
|
|
442
|
+
* (`ERR_PACKAGE_PATH_NOT_EXPORTED` on a subpath the older copy does not
|
|
443
|
+
* export) instead of with a message the user can act on. Runs on the
|
|
444
|
+
* delegation path as well as the in-profile path, because the delegated child
|
|
445
|
+
* is itself the profile copy and can no longer see the outer launcher.
|
|
446
|
+
* @param installedVersion - The profile copy's version.
|
|
447
|
+
*/
|
|
448
|
+
const checkProfileAlignment = installedVersion => {
|
|
449
|
+
if (installedVersion === undefined || ownVersion === undefined || installedVersion === ownVersion) return
|
|
450
|
+
const majorMinor = v => v.split('-')[0].split('.').slice(0, 2).map(Number)
|
|
451
|
+
const [installedMajor, installedMinor] = majorMinor(installedVersion)
|
|
452
|
+
const [ownMajor, ownMinor] = majorMinor(ownVersion)
|
|
453
|
+
if (installedMajor < ownMajor || (installedMajor === ownMajor && installedMinor < ownMinor)) {
|
|
454
|
+
console.error(
|
|
455
|
+
`[dsh-tui] cannot start: the profile runs v${installedVersion} but this launcher is v${ownVersion}.\n` +
|
|
456
|
+
` dsh plugin --profile ${PROFILE} add ${PACKAGE}@${ownVersion}`,
|
|
457
|
+
)
|
|
458
|
+
process.exit(1)
|
|
459
|
+
}
|
|
460
|
+
if (isVersionNewer(installedVersion, ownVersion)) {
|
|
461
|
+
console.error(
|
|
462
|
+
`[dsh-tui] note: the profile is already v${installedVersion}; this launcher copy is v${ownVersion}.\n` +
|
|
463
|
+
` npm install -g --legacy-peer-deps ${PACKAGE}@${installedVersion}\n` +
|
|
464
|
+
`(--legacy-peer-deps avoids an npm 12 peer-resolution crash, see issue #459)`,
|
|
465
|
+
)
|
|
466
|
+
} else {
|
|
467
|
+
// profile 更旧但同 minor(patch 级错位):允许启动,指引用 add 把
|
|
468
|
+
// profile 对齐到启动器版本(精确版本,@latest 可能越过对齐点)。
|
|
469
|
+
console.error(
|
|
470
|
+
`[dsh-tui] note: the profile is running v${installedVersion} but this launcher is v${ownVersion}.\n` +
|
|
471
|
+
` dsh plugin --profile ${PROFILE} add ${PACKAGE}@${ownVersion}`,
|
|
472
|
+
)
|
|
473
|
+
}
|
|
474
|
+
}
|
|
475
|
+
|
|
396
476
|
// ─── 子命令:update ──────────────────────────────────────────────────────────
|
|
397
477
|
// 顶层处理、两种角色同一条路径——不放进委托链。委托会把 update 交给
|
|
398
478
|
// profile 内的旧 bin:旧副本不认识这个词,只会当参数透传,恰好是「profile
|
|
@@ -429,6 +509,10 @@ if (subcommand === 'update') {
|
|
|
429
509
|
// 的沙箱用它直接驱动全量路径;现场排查委托链时同样可用)。
|
|
430
510
|
if (!runningInsideProfile && ownVersion !== undefined && process.env.DSH_TUI_NO_DELEGATE !== '1') {
|
|
431
511
|
if (!profileReady()) bootstrapProfile()
|
|
512
|
+
// Refuse to delegate into a profile from an older release line: the profile
|
|
513
|
+
// copy would launch `dsh --profile dsh-tui` against a composition built from
|
|
514
|
+
// this launcher's patch surface and fail inside the loader.
|
|
515
|
+
checkProfileAlignment(profileVersion())
|
|
432
516
|
// 委托 profile 内副本执行全部启动逻辑。外层代际通过
|
|
433
517
|
// DSH_TUI_LAUNCHER_VERSION 交代(/update 的对齐诊断沿用该契约)。
|
|
434
518
|
try {
|
|
@@ -470,47 +554,21 @@ if (!runningInsideProfile && ownVersion !== undefined && process.env.DSH_TUI_NO_
|
|
|
470
554
|
installedVersion = undefined
|
|
471
555
|
}
|
|
472
556
|
}
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
console.error(
|
|
479
|
-
`[dsh-tui] cannot start: the profile runs v${installedVersion} but this launcher is v${ownVersion}.\n` +
|
|
480
|
-
` dsh plugin --profile ${PROFILE} add ${PACKAGE}@${ownVersion}`,
|
|
481
|
-
)
|
|
482
|
-
process.exit(1)
|
|
483
|
-
}
|
|
484
|
-
const installedNewer = installedVersion !== undefined && ownVersion !== undefined && isVersionNewer(installedVersion, ownVersion)
|
|
485
|
-
if (installedNewer) {
|
|
486
|
-
console.error(
|
|
487
|
-
`[dsh-tui] note: the profile is already v${installedVersion}; this launcher copy is v${ownVersion}.\n` +
|
|
488
|
-
` npm install -g --legacy-peer-deps ${PACKAGE}@${installedVersion}\n` +
|
|
489
|
-
`(--legacy-peer-deps avoids an npm 12 peer-resolution crash, see issue #459)`,
|
|
490
|
-
)
|
|
491
|
-
} else {
|
|
492
|
-
// profile 更旧但同 minor(patch 级错位):允许启动,指引用 add 把
|
|
493
|
-
// profile 对齐到启动器版本(精确版本,@latest 可能越过对齐点)。
|
|
494
|
-
console.error(
|
|
495
|
-
`[dsh-tui] note: the profile is running v${installedVersion} but this launcher is v${ownVersion}.\n` +
|
|
496
|
-
` dsh plugin --profile ${PROFILE} add ${PACKAGE}@${ownVersion}`,
|
|
497
|
-
)
|
|
498
|
-
}
|
|
499
|
-
}
|
|
557
|
+
// 版本错位诊断与瘦壳委托路径共用同一实现(见 checkProfileAlignment)。
|
|
558
|
+
// `!runningInsideProfile` 只在 DSH_TUI_NO_DELEGATE=1 的调试口下成立,因此
|
|
559
|
+
// 该判定不能只留在这里——委派出去的子进程就是 profile 副本,看不到外层
|
|
560
|
+
// 启动器版本。
|
|
561
|
+
if (!runningInsideProfile) checkProfileAlignment(installedVersion)
|
|
500
562
|
|
|
501
|
-
// --resume / 工作区目标拦截(
|
|
563
|
+
// --resume / 工作区目标拦截(launcher 契约,见 src/sessionHistory.ts)。
|
|
502
564
|
const setResumeEnv = sessionId => {
|
|
503
565
|
process.env.DSH_TUI_RESUME_SESSION = sessionId
|
|
504
|
-
process.env.DSH_CC_RESUME_SESSION = sessionId
|
|
505
566
|
}
|
|
506
567
|
const readLastResumeTarget = () => {
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
} catch {
|
|
512
|
-
// 没有历史会话可恢复——静默忽略,正常冷启动。
|
|
513
|
-
}
|
|
568
|
+
try {
|
|
569
|
+
return readFileSync(join(homedir(), '.dsh-tui', 'resume.txt'), 'utf8').trim()
|
|
570
|
+
} catch {
|
|
571
|
+
// 没有历史会话可恢复——静默忽略,正常冷启动。
|
|
514
572
|
}
|
|
515
573
|
return ''
|
|
516
574
|
}
|
|
@@ -538,28 +596,6 @@ if (!runningInsideProfile && ownVersion !== undefined && process.env.DSH_TUI_NO_
|
|
|
538
596
|
}
|
|
539
597
|
}
|
|
540
598
|
|
|
541
|
-
// 旧环境变量警告(必须在 TUI 渲染前输出,fullscreen 下写 stderr 会破坏
|
|
542
|
-
// 界面)。与 utils/paths 的 RENAMED_ENV 同表,内联以维持零 lib 依赖。
|
|
543
|
-
const RENAMED_ENV = {
|
|
544
|
-
CC_TUI_THEME: 'DSH_TUI_THEME',
|
|
545
|
-
CC_TUI_LANG: 'DSH_TUI_LANG',
|
|
546
|
-
CC_TUI_PERSONA: 'DSH_TUI_PERSONA',
|
|
547
|
-
CC_TUI_PRESET: 'DSH_TUI_PRESET',
|
|
548
|
-
CC_TUI_DISABLE_MOUSE: 'DSH_TUI_DISABLE_MOUSE',
|
|
549
|
-
CC_TUI_DEBUG: 'DSH_TUI_DEBUG',
|
|
550
|
-
CC_TUI_COMPACT_RATIO: 'DSH_TUI_COMPACT_RATIO',
|
|
551
|
-
CC_TUI_COMPACT_RETAIN: 'DSH_TUI_COMPACT_RETAIN',
|
|
552
|
-
DSH_CC_UPDATED_FROM: 'DSH_TUI_UPDATED_FROM',
|
|
553
|
-
DSH_CC_RENDER_LOG: 'DSH_TUI_RENDER_LOG',
|
|
554
|
-
DSH_CC_SESSION_ROOT: 'DSH_TUI_SESSION_ROOT',
|
|
555
|
-
DSH_CC_WORKSPACE: 'DSH_TUI_WORKSPACE',
|
|
556
|
-
}
|
|
557
|
-
for (const oldName of Object.keys(RENAMED_ENV)) {
|
|
558
|
-
if (process.env[oldName] !== undefined) {
|
|
559
|
-
console.error(msg('legacyEnv')(oldName, RENAMED_ENV[oldName]))
|
|
560
|
-
}
|
|
561
|
-
}
|
|
562
|
-
|
|
563
599
|
// 启动:被委托场景下本副本自己的版本即对齐诊断所见的启动器代际。
|
|
564
600
|
if (process.env.DSH_TUI_LAUNCHER_VERSION === undefined && ownVersion !== undefined) {
|
|
565
601
|
process.env.DSH_TUI_LAUNCHER_VERSION = ownVersion
|
package/cordis.patch.yml
CHANGED
|
@@ -12,10 +12,27 @@
|
|
|
12
12
|
# ── surface-specific values over the dsh-base layer ─────────────────────────
|
|
13
13
|
|
|
14
14
|
# The dsh-tui deployment persona; DSH_TUI_PERSONA overrides the coding-agent
|
|
15
|
-
# default (the base persona is empty).
|
|
15
|
+
# default (the base persona is empty). dsh-system-prompt renamed the slot at
|
|
16
|
+
# 0.1.3-alpha.2 (`persona` → `personaPrefix`, with an optional suffix
|
|
17
|
+
# counterpart); older cohorts only accept `persona`, so the key follows the
|
|
18
|
+
# installed package version.
|
|
16
19
|
- id: system-prompt
|
|
17
|
-
config:
|
|
18
|
-
|
|
20
|
+
config: !!js >-
|
|
21
|
+
(() => {
|
|
22
|
+
const persona = process.env.DSH_TUI_PERSONA ?? 'You are a coding agent.'
|
|
23
|
+
try {
|
|
24
|
+
const require = process.getBuiltinModule('node:module').createRequire(ctx.baseUrl)
|
|
25
|
+
const fs = process.getBuiltinModule('node:fs')
|
|
26
|
+
const manifest = require.resolve('@deepseek-ai/dsh-system-prompt/package.json')
|
|
27
|
+
const version = String(JSON.parse(fs.readFileSync(manifest, 'utf8')).version ?? '')
|
|
28
|
+
const match = /^(\d+)\.(\d+)\.(\d+)/u.exec(version)
|
|
29
|
+
const [major, minor, patch] = match === null ? [0, 0, 0] : [Number(match[1]), Number(match[2]), Number(match[3])]
|
|
30
|
+
if (major > 0 || minor > 1 || (minor === 1 && patch >= 3)) return { personaPrefix: persona }
|
|
31
|
+
return { persona }
|
|
32
|
+
} catch {
|
|
33
|
+
return { personaPrefix: persona }
|
|
34
|
+
}
|
|
35
|
+
})()
|
|
19
36
|
|
|
20
37
|
# The native DeepSeek adapter, pinned to the harness defaults: full thinking
|
|
21
38
|
# at max effort, key and base URL from the launching environment. The base
|
|
@@ -81,9 +98,9 @@
|
|
|
81
98
|
disabled: true
|
|
82
99
|
|
|
83
100
|
# compaction lives in the preset's own isolate realm (standard/ptc/cordis
|
|
84
|
-
# carry `compaction-basic` with package defaults; minimal has none). The
|
|
85
|
-
#
|
|
86
|
-
#
|
|
101
|
+
# carry `compaction-basic` with package defaults; minimal has none). The old
|
|
102
|
+
# ratio/retain tunables retired with this host row — preset compositions own
|
|
103
|
+
# their compaction config.
|
|
87
104
|
- id: compaction-basic
|
|
88
105
|
disabled: true
|
|
89
106
|
|
|
@@ -141,8 +158,11 @@
|
|
|
141
158
|
- id: tool-skill
|
|
142
159
|
disabled: true
|
|
143
160
|
|
|
144
|
-
|
|
145
|
-
|
|
161
|
+
# `tool-str-replace-editor` carries no disable row: dsh-base registered that
|
|
162
|
+
# entry only up to the 0.1.2 line, and from 0.1.3-alpha.2 it is opt-in (see the
|
|
163
|
+
# dsh-base README). A row here would target a missing id and log
|
|
164
|
+
# `patch: entry "tool-str-replace-editor" not found` on every 0.1.3+ boot.
|
|
165
|
+
# Presets that expose the tool re-add the entry themselves.
|
|
146
166
|
|
|
147
167
|
# Delegation tools (subagent spawn/fork, controls, workflows) are preset rows
|
|
148
168
|
# now; the preset's `delegation` group re-adds them with package defaults, so
|
|
@@ -353,9 +373,8 @@
|
|
|
353
373
|
# The interactive front door. The plugin creates/resumes its agent at
|
|
354
374
|
# runtime, seeds the startup status line, and disposes the whole app tree
|
|
355
375
|
# (exiting the process) when the TUI unmounts. `dsh-tui --resume`
|
|
356
|
-
# feeds the session id through DSH_TUI_RESUME_SESSION (
|
|
357
|
-
#
|
|
358
|
-
# launchers — TODO: drop once they age out, issue #120).
|
|
376
|
+
# feeds the session id through DSH_TUI_RESUME_SESSION (see
|
|
377
|
+
# src/sessionHistory.ts for the launcher contract).
|
|
359
378
|
- id: dsh-tui
|
|
360
379
|
name: '@deepseek-harness-tui/dsh-tui'
|
|
361
380
|
# The entry-level dependency augments the plugin's `agents` inject and
|
|
@@ -375,13 +394,15 @@
|
|
|
375
394
|
# verify-workspace-attachment.mjs asserts the name→inject distance.)
|
|
376
395
|
config:
|
|
377
396
|
provider: deepseek-official
|
|
378
|
-
# Alt-screen fullscreen
|
|
397
|
+
# Alt-screen fullscreen 布局:应用内鼠标选区(选择即复制, OSC 52 +
|
|
379
398
|
# wl-copy/xclip/xsel 兜底)、滚轮滚动、双击选词/三击选行。出厂默认开启,
|
|
380
399
|
# 与 schema 默认(index.ts fullscreen default true)保持一致——两处必须
|
|
381
400
|
# 同步翻转,否则本覆盖层会盖住 schema 默认,更新后用户仍落在 inline。
|
|
382
401
|
# 想退回 inline 主屏(终端原生滚动/选择):/settings 全屏开关或 cordis.yml
|
|
383
402
|
# `fullscreen: false`——显式选择始终优先于默认。
|
|
384
403
|
fullscreen: true
|
|
404
|
+
# 在支持的终端预览图片;/settings 可关闭,重启生效。
|
|
405
|
+
terminalImages: true
|
|
385
406
|
# Edit/Write diff 呈现:auto(≥110 列双栏对照,窄屏统一式)/
|
|
386
407
|
# split(强制双栏)/ unified(强制统一式)。/settings 屏可实时改。
|
|
387
408
|
# diffLayout: auto
|
|
@@ -412,7 +433,7 @@
|
|
|
412
433
|
# wins over the roster default (standard).
|
|
413
434
|
preset: !!js process.env.DSH_TUI_PRESET ?? undefined
|
|
414
435
|
workspace: !!js process.env.DSH_TUI_WORKSPACE_TARGET ?? undefined
|
|
415
|
-
sessionId: !!js process.env.DSH_TUI_RESUME_SESSION ??
|
|
436
|
+
sessionId: !!js process.env.DSH_TUI_RESUME_SESSION ?? undefined
|
|
416
437
|
|
|
417
438
|
# Live working-line data source (thinking copy / running tool / turn
|
|
418
439
|
# summary). Mounted through @deepseek-harness-tui/dsh-tui's own
|