@deepseek-harness-tui/dsh-tui 0.10.2 → 0.11.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 +175 -123
- package/bin/dsh-tui.js +748 -22
- package/cordis.patch.yml +42 -13
- package/cordis.yml +5 -2
- package/lib/types/activityPrefs.d.ts +24 -0
- package/lib/types/activityPrefs.d.ts.map +1 -1
- package/lib/types/activityPrefs.js +50 -1
- package/lib/types/adapter/channel/session-projection.d.ts.map +1 -1
- package/lib/types/adapter/channel/session-projection.js +2 -0
- package/lib/types/adapter/channel/state.d.ts.map +1 -1
- package/lib/types/adapter/channel/state.js +3 -1
- package/lib/types/adapter/channel/ui-policy.d.ts +4 -1
- package/lib/types/adapter/channel/ui-policy.d.ts.map +1 -1
- package/lib/types/adapter/channel/ui-policy.js +6 -2
- package/lib/types/adapter/kernel/host-facade.d.ts.map +1 -1
- package/lib/types/adapter/kernel/host-facade.js +1 -0
- package/lib/types/adapter/kernel/replay.d.ts.map +1 -1
- package/lib/types/adapter/kernel/replay.js +3 -0
- package/lib/types/adapter/kernel/runtime.d.ts.map +1 -1
- package/lib/types/adapter/kernel/runtime.js +2 -0
- package/lib/types/adapter/kernel/slices/workspace.d.ts.map +1 -1
- package/lib/types/adapter/kernel/slices/workspace.js +1 -0
- package/lib/types/adapter/ports/channel-ui.d.ts +29 -5
- package/lib/types/adapter/ports/channel-ui.d.ts.map +1 -1
- package/lib/types/adapter/ports/channel-view.d.ts +66 -12
- package/lib/types/adapter/ports/channel-view.d.ts.map +1 -1
- package/lib/types/adapter/ports/channel-workspace.d.ts +23 -0
- package/lib/types/adapter/ports/channel-workspace.d.ts.map +1 -1
- package/lib/types/adapter/ports/channel.d.ts +4 -1
- package/lib/types/adapter/ports/channel.d.ts.map +1 -1
- package/lib/types/adapter/ports/workspace.d.ts +2 -0
- package/lib/types/adapter/ports/workspace.d.ts.map +1 -1
- package/lib/types/adapter/upstream/workspace-driver.d.ts.map +1 -1
- package/lib/types/adapter/upstream/workspace-driver.js +10 -2
- package/lib/types/commands.d.ts.map +1 -1
- package/lib/types/commands.js +1 -0
- package/lib/types/components/ActivityLine.d.ts +7 -2
- package/lib/types/components/ActivityLine.d.ts.map +1 -1
- package/lib/types/components/ActivityLine.js +0 -8
- package/lib/types/components/ContextBarView.d.ts +15 -7
- package/lib/types/components/ContextBarView.d.ts.map +1 -1
- package/lib/types/components/ContextBarView.js +26 -22
- package/lib/types/components/ImagePreviewOverlay.d.ts.map +1 -1
- package/lib/types/components/ImagePreviewOverlay.js +11 -5
- package/lib/types/components/Markdown.d.ts +11 -1
- package/lib/types/components/Markdown.d.ts.map +1 -1
- package/lib/types/components/Markdown.js +20 -2
- package/lib/types/components/MermaidDiagram.d.ts +13 -0
- package/lib/types/components/MermaidDiagram.d.ts.map +1 -0
- package/lib/types/components/MermaidDiagram.js +61 -0
- package/lib/types/components/MessageList.d.ts +26 -1
- package/lib/types/components/MessageList.d.ts.map +1 -1
- package/lib/types/components/MessageList.js +74 -8
- package/lib/types/components/PageMargin.d.ts +1 -1
- package/lib/types/components/PromptInput.d.ts +37 -1
- package/lib/types/components/PromptInput.d.ts.map +1 -1
- package/lib/types/components/PromptInput.js +291 -30
- package/lib/types/components/ScrollbarGutter.d.ts +20 -5
- package/lib/types/components/ScrollbarGutter.d.ts.map +1 -1
- package/lib/types/components/ScrollbarGutter.js +88 -10
- package/lib/types/components/SplitDiffView.d.ts.map +1 -1
- package/lib/types/components/SplitDiffView.js +2 -1
- package/lib/types/components/StreamingMarkdown.d.ts.map +1 -1
- package/lib/types/components/StreamingMarkdown.js +30 -28
- package/lib/types/components/SubagentCard.d.ts.map +1 -1
- package/lib/types/components/SubagentCard.js +12 -6
- package/lib/types/components/SubagentDetailScene.d.ts.map +1 -1
- package/lib/types/components/SubagentDetailScene.js +8 -3
- package/lib/types/components/Tooltip.d.ts.map +1 -1
- package/lib/types/components/Tooltip.js +45 -7
- package/lib/types/components/design-system/HintLine.d.ts +1 -2
- package/lib/types/components/design-system/HintLine.d.ts.map +1 -1
- package/lib/types/components/design-system/HintLine.js +1 -2
- package/lib/types/components/messages/AssistantThinkingMessage.d.ts +2 -1
- package/lib/types/components/messages/AssistantThinkingMessage.d.ts.map +1 -1
- package/lib/types/components/messages/AssistantThinkingMessage.js +2 -1
- package/lib/types/components/messages/AssistantToolUseMessage.d.ts +2 -2
- package/lib/types/components/messages/AssistantToolUseMessage.d.ts.map +1 -1
- package/lib/types/components/messages/AssistantToolUseMessage.js +30 -26
- package/lib/types/components/messages/UserPromptMessage.d.ts.map +1 -1
- package/lib/types/components/messages/UserPromptMessage.js +5 -7
- package/lib/types/components/messages/useImageInspection.d.ts.map +1 -1
- package/lib/types/components/messages/useImageInspection.js +19 -9
- package/lib/types/components/promptDraftCache.d.ts +102 -0
- package/lib/types/components/promptDraftCache.d.ts.map +1 -0
- package/lib/types/components/promptDraftCache.js +76 -0
- package/lib/types/components/questions/AskUserQuestionPanel.d.ts +17 -1
- package/lib/types/components/questions/AskUserQuestionPanel.d.ts.map +1 -1
- package/lib/types/components/questions/AskUserQuestionPanel.js +40 -7
- package/lib/types/components/questions/QuestionMinimizedBar.d.ts +12 -0
- package/lib/types/components/questions/QuestionMinimizedBar.d.ts.map +1 -0
- package/lib/types/components/questions/QuestionMinimizedBar.js +43 -0
- package/lib/types/components/sessions/SessionListRow.d.ts +23 -1
- package/lib/types/components/sessions/SessionListRow.d.ts.map +1 -1
- package/lib/types/components/sessions/SessionListRow.js +52 -5
- package/lib/types/components/workspaces/HomeWorkspaceRow.d.ts +49 -0
- package/lib/types/components/workspaces/HomeWorkspaceRow.d.ts.map +1 -0
- package/lib/types/components/workspaces/HomeWorkspaceRow.js +50 -0
- package/lib/types/dsh-adapter/activity-store.d.ts +221 -0
- package/lib/types/dsh-adapter/activity-store.d.ts.map +1 -0
- package/lib/types/dsh-adapter/activity-store.js +359 -0
- package/lib/types/dsh-adapter/bundled-presets.d.ts +10 -0
- package/lib/types/dsh-adapter/bundled-presets.d.ts.map +1 -0
- package/lib/types/dsh-adapter/bundled-presets.js +80 -0
- package/lib/types/dsh-adapter/channel/action-readiness.d.ts +1 -1
- package/lib/types/dsh-adapter/channel/action-readiness.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/action-readiness.js +3 -0
- package/lib/types/dsh-adapter/channel/agent-view-projection.d.ts +1 -1
- package/lib/types/dsh-adapter/channel/agent-view-projection.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/agent-view-projection.js +19 -2
- package/lib/types/dsh-adapter/channel/background-action.d.ts +1 -1
- package/lib/types/dsh-adapter/channel/background-action.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/background-action.js +53 -29
- package/lib/types/dsh-adapter/channel/binding-events.d.ts +8 -6
- package/lib/types/dsh-adapter/channel/binding-events.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/binding-events.js +5 -4
- package/lib/types/dsh-adapter/channel/binding.d.ts +19 -2
- package/lib/types/dsh-adapter/channel/binding.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/binding.js +78 -18
- package/lib/types/dsh-adapter/channel/compaction.d.ts +0 -1
- package/lib/types/dsh-adapter/channel/compaction.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/compaction.js +0 -2
- package/lib/types/dsh-adapter/channel/composer-images.d.ts +5 -0
- package/lib/types/dsh-adapter/channel/composer-images.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/composer-images.js +105 -6
- package/lib/types/dsh-adapter/channel/context-bookkeeping.d.ts +8 -0
- package/lib/types/dsh-adapter/channel/context-bookkeeping.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/context-bookkeeping.js +3 -2
- package/lib/types/dsh-adapter/channel/ide-selection.d.ts +58 -0
- package/lib/types/dsh-adapter/channel/ide-selection.d.ts.map +1 -0
- package/lib/types/dsh-adapter/channel/ide-selection.js +226 -0
- package/lib/types/dsh-adapter/channel/input-delivery.d.ts +6 -1
- package/lib/types/dsh-adapter/channel/input-delivery.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/input-delivery.js +9 -1
- package/lib/types/dsh-adapter/channel/local-actions.d.ts +3 -19
- package/lib/types/dsh-adapter/channel/local-actions.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/local-actions.js +2 -1
- package/lib/types/dsh-adapter/channel/model-actions.d.ts +4 -1
- package/lib/types/dsh-adapter/channel/model-actions.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/model-actions.js +82 -6
- package/lib/types/dsh-adapter/channel/model-switch.d.ts +1 -2
- package/lib/types/dsh-adapter/channel/model-switch.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/model-switch.js +49 -31
- package/lib/types/dsh-adapter/channel/projection.d.ts +4 -0
- package/lib/types/dsh-adapter/channel/projection.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/projection.js +29 -19
- package/lib/types/dsh-adapter/channel/reports.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/reports.js +4 -12
- package/lib/types/dsh-adapter/channel/session-adoption.d.ts +1 -1
- package/lib/types/dsh-adapter/channel/session-adoption.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/session-adoption.js +1 -0
- package/lib/types/dsh-adapter/channel/session-fork.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/session-fork.js +26 -2
- package/lib/types/dsh-adapter/channel/session-live-adoption.d.ts +4 -1
- package/lib/types/dsh-adapter/channel/session-live-adoption.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/session-live-adoption.js +2 -0
- package/lib/types/dsh-adapter/channel/session-metadata.d.ts +10 -0
- package/lib/types/dsh-adapter/channel/session-metadata.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/session-metadata.js +6 -4
- package/lib/types/dsh-adapter/channel/session-reset.d.ts +1 -1
- package/lib/types/dsh-adapter/channel/session-reset.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/session-reset.js +0 -1
- package/lib/types/dsh-adapter/channel/session-resume.d.ts +12 -3
- package/lib/types/dsh-adapter/channel/session-resume.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/session-resume.js +292 -94
- package/lib/types/dsh-adapter/channel/session-rewind.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/session-rewind.js +34 -16
- package/lib/types/dsh-adapter/channel/session-tree-actions.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/session-tree-actions.js +19 -3
- package/lib/types/dsh-adapter/channel/settings-host.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/settings-host.js +4 -3
- package/lib/types/dsh-adapter/channel/state.d.ts +6 -1
- package/lib/types/dsh-adapter/channel/state.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/state.js +3 -3
- package/lib/types/dsh-adapter/channel/subagent-projection.d.ts +21 -1
- package/lib/types/dsh-adapter/channel/subagent-projection.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/subagent-projection.js +173 -6
- package/lib/types/dsh-adapter/channel/transcript.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/transcript.js +6 -12
- package/lib/types/dsh-adapter/channel/types.d.ts +6 -1
- package/lib/types/dsh-adapter/channel/types.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/workspace-actions.d.ts +4 -1
- package/lib/types/dsh-adapter/channel/workspace-actions.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel/workspace-actions.js +41 -1
- package/lib/types/dsh-adapter/channel.d.ts +1 -1
- package/lib/types/dsh-adapter/channel.d.ts.map +1 -1
- package/lib/types/dsh-adapter/channel.js +82 -20
- package/lib/types/dsh-adapter/compat/index.d.ts +1 -1
- package/lib/types/dsh-adapter/compat/index.d.ts.map +1 -1
- package/lib/types/dsh-adapter/compat/index.js +1 -1
- package/lib/types/dsh-adapter/compat/messages.d.ts +15 -0
- package/lib/types/dsh-adapter/compat/messages.d.ts.map +1 -0
- package/lib/types/dsh-adapter/compat/messages.js +15 -0
- package/lib/types/dsh-adapter/compat/sessionLog.d.ts +18 -0
- package/lib/types/dsh-adapter/compat/sessionLog.d.ts.map +1 -1
- package/lib/types/dsh-adapter/compat/sessionLog.js +18 -3
- package/lib/types/dsh-adapter/compat/settings.d.ts +35 -0
- package/lib/types/dsh-adapter/compat/settings.d.ts.map +1 -0
- package/lib/types/dsh-adapter/compat/settings.js +57 -0
- package/lib/types/dsh-adapter/compat/shell.d.ts +25 -0
- package/lib/types/dsh-adapter/compat/shell.d.ts.map +1 -0
- package/lib/types/dsh-adapter/compat/shell.js +11 -0
- package/lib/types/dsh-adapter/contract.d.ts +5 -4
- package/lib/types/dsh-adapter/contract.d.ts.map +1 -1
- package/lib/types/dsh-adapter/contract.js +17 -6
- package/lib/types/dsh-adapter/ide-channel.d.ts +224 -0
- package/lib/types/dsh-adapter/ide-channel.d.ts.map +1 -0
- package/lib/types/dsh-adapter/ide-channel.js +556 -0
- package/lib/types/dsh-adapter/index.d.ts +18 -3
- package/lib/types/dsh-adapter/index.d.ts.map +1 -1
- package/lib/types/dsh-adapter/index.js +32 -5
- package/lib/types/dsh-adapter/plugin.d.ts +4 -1
- package/lib/types/dsh-adapter/plugin.d.ts.map +1 -1
- package/lib/types/dsh-adapter/plugin.js +197 -49
- package/lib/types/dsh-adapter/preset-resolution.d.ts +8 -0
- package/lib/types/dsh-adapter/preset-resolution.d.ts.map +1 -1
- package/lib/types/dsh-adapter/preset-resolution.js +10 -0
- package/lib/types/dsh-adapter/session-mount-heartbeat.d.ts +53 -0
- package/lib/types/dsh-adapter/session-mount-heartbeat.d.ts.map +1 -0
- package/lib/types/dsh-adapter/session-mount-heartbeat.js +100 -0
- package/lib/types/dsh-adapter/sessionTree.d.ts.map +1 -1
- package/lib/types/dsh-adapter/sessionTree.js +3 -2
- package/lib/types/dsh-adapter/settings-sections.d.ts.map +1 -1
- package/lib/types/dsh-adapter/settings-sections.js +7 -4
- package/lib/types/dsh-adapter/subagents.d.ts +16 -3
- package/lib/types/dsh-adapter/subagents.d.ts.map +1 -1
- package/lib/types/dsh-adapter/subagents.js +92 -29
- package/lib/types/dsh-adapter/workspaces.d.ts +46 -3
- package/lib/types/dsh-adapter/workspaces.d.ts.map +1 -1
- package/lib/types/dsh-adapter/workspaces.js +116 -0
- package/lib/types/effortPrefs.d.ts +15 -3
- package/lib/types/effortPrefs.d.ts.map +1 -1
- package/lib/types/effortPrefs.js +37 -3
- package/lib/types/history.d.ts +13 -1
- package/lib/types/history.d.ts.map +1 -1
- package/lib/types/history.js +15 -2
- package/lib/types/homePrefs.d.ts +15 -0
- package/lib/types/homePrefs.d.ts.map +1 -0
- package/lib/types/homePrefs.js +53 -0
- package/lib/types/i18n.d.ts +347 -297
- package/lib/types/i18n.d.ts.map +1 -1
- package/lib/types/i18n.js +133 -85
- package/lib/types/ink/colorize.d.ts +10 -0
- package/lib/types/ink/colorize.d.ts.map +1 -1
- package/lib/types/ink/colorize.js +21 -0
- package/lib/types/ink/components/ScrollBox.d.ts.map +1 -1
- package/lib/types/ink/components/ScrollBox.js +12 -1
- package/lib/types/ink/dom.d.ts +1 -0
- package/lib/types/ink/dom.d.ts.map +1 -1
- package/lib/types/ink/hooks/use-copy-on-select.d.ts +5 -1
- package/lib/types/ink/hooks/use-copy-on-select.d.ts.map +1 -1
- package/lib/types/ink/hooks/use-copy-on-select.js +15 -1
- package/lib/types/ink/ink.d.ts.map +1 -1
- package/lib/types/ink/ink.js +36 -1
- package/lib/types/ink/log-update.d.ts.map +1 -1
- package/lib/types/ink/log-update.js +19 -1
- package/lib/types/ink/output.d.ts +10 -1
- package/lib/types/ink/output.d.ts.map +1 -1
- package/lib/types/ink/output.js +109 -17
- package/lib/types/ink/render-border.d.ts +6 -1
- package/lib/types/ink/render-border.d.ts.map +1 -1
- package/lib/types/ink/render-border.js +25 -9
- package/lib/types/ink/render-node-to-output.d.ts.map +1 -1
- package/lib/types/ink/render-node-to-output.js +48 -6
- package/lib/types/ink/renderer.d.ts +6 -0
- package/lib/types/ink/renderer.d.ts.map +1 -1
- package/lib/types/ink/renderer.js +2 -1
- package/lib/types/ink/selection.d.ts +88 -0
- package/lib/types/ink/selection.d.ts.map +1 -1
- package/lib/types/ink/selection.js +164 -0
- package/lib/types/ink/sixel-graphics.d.ts +19 -1
- package/lib/types/ink/sixel-graphics.d.ts.map +1 -1
- package/lib/types/ink/sixel-graphics.js +124 -12
- package/lib/types/ink/terminal-image.d.ts +18 -1
- package/lib/types/ink/terminal-image.d.ts.map +1 -1
- package/lib/types/ink/terminal.d.ts +17 -0
- package/lib/types/ink/terminal.d.ts.map +1 -1
- package/lib/types/ink/terminal.js +20 -1
- package/lib/types/screens/Chat.d.ts +20 -1
- package/lib/types/screens/Chat.d.ts.map +1 -1
- package/lib/types/screens/Chat.js +296 -76
- package/lib/types/screens/SessionSupervisor.d.ts +84 -0
- package/lib/types/screens/SessionSupervisor.d.ts.map +1 -0
- package/lib/types/screens/SessionSupervisor.js +350 -0
- package/lib/types/screens/SessionTree.js +2 -2
- package/lib/types/screens/Settings.d.ts.map +1 -1
- package/lib/types/screens/Settings.js +32 -9
- package/lib/types/screens/StatusLine.d.ts +18 -1
- package/lib/types/screens/StatusLine.d.ts.map +1 -1
- package/lib/types/screens/StatusLine.js +38 -19
- package/lib/types/screens/StatusMetrics.d.ts +79 -22
- package/lib/types/screens/StatusMetrics.d.ts.map +1 -1
- package/lib/types/screens/StatusMetrics.js +153 -88
- package/lib/types/screens/sessionSupervisor/model.d.ts +83 -0
- package/lib/types/screens/sessionSupervisor/model.d.ts.map +1 -0
- package/lib/types/screens/sessionSupervisor/model.js +69 -0
- package/lib/types/screens/sessionSupervisor/useSessionSupervisor.d.ts +120 -0
- package/lib/types/screens/sessionSupervisor/useSessionSupervisor.d.ts.map +1 -0
- package/lib/types/screens/sessionSupervisor/useSessionSupervisor.js +593 -0
- package/lib/types/sessionMounts.d.ts +272 -0
- package/lib/types/sessionMounts.d.ts.map +1 -0
- package/lib/types/sessionMounts.js +706 -0
- package/lib/types/sessions/format.d.ts.map +1 -1
- package/lib/types/sessions/format.js +4 -1
- package/lib/types/sessions/resumeFailure.d.ts +38 -0
- package/lib/types/sessions/resumeFailure.d.ts.map +1 -0
- package/lib/types/sessions/resumeFailure.js +58 -0
- package/lib/types/terminal-utils/mermaid.d.ts +44 -0
- package/lib/types/terminal-utils/mermaid.d.ts.map +1 -0
- package/lib/types/terminal-utils/mermaid.js +83 -0
- package/lib/types/tips.d.ts.map +1 -1
- package/lib/types/tips.js +175 -19
- package/lib/types/tuiDisplayPrefs.d.ts +7 -9
- package/lib/types/tuiDisplayPrefs.d.ts.map +1 -1
- package/lib/types/tuiDisplayPrefs.js +31 -28
- package/lib/types/update.d.ts +61 -0
- package/lib/types/update.d.ts.map +1 -1
- package/lib/types/update.js +194 -0
- package/lib/types/utils/fold-long-lines.d.ts +1 -1
- package/lib/types/utils/fold-long-lines.js +1 -1
- package/lib/types/utils/imageResize.d.ts +90 -0
- package/lib/types/utils/imageResize.d.ts.map +1 -0
- package/lib/types/utils/imageResize.js +272 -0
- package/lib/types/utils/keymap.d.ts +5 -1
- package/lib/types/utils/keymap.d.ts.map +1 -1
- package/lib/types/utils/keymap.js +23 -0
- package/lib/types/working-activity.d.ts +10 -9
- package/lib/types/working-activity.d.ts.map +1 -1
- package/lib/types/working-activity.js +17 -10
- package/lib/types/workspaces.d.ts +2 -1
- package/lib/types/workspaces.d.ts.map +1 -1
- package/lib/types/workspaces.js +1 -1
- package/node_modules/@deepseek-harness-tui/dsh-auth/package.json +10 -10
- package/package.json +126 -105
- package/presets/liangshen/.dsh-tui-managed.json +1 -1
- package/presets/liangshen/agent.cordis.yml +15 -0
- package/lib/types/components/design-system/KeyboardShortcutHint.d.ts +0 -19
- package/lib/types/components/design-system/KeyboardShortcutHint.d.ts.map +0 -1
- package/lib/types/components/design-system/KeyboardShortcutHint.js +0 -14
- package/lib/types/dsh-adapter/channel/activity.d.ts +0 -20
- package/lib/types/dsh-adapter/channel/activity.d.ts.map +0 -1
- package/lib/types/dsh-adapter/channel/activity.js +0 -113
- package/lib/types/screens/AgentView.d.ts +0 -23
- package/lib/types/screens/AgentView.d.ts.map +0 -1
- package/lib/types/screens/AgentView.js +0 -546
- package/lib/types/screens/SessionBrowser.d.ts +0 -42
- package/lib/types/screens/SessionBrowser.d.ts.map +0 -1
- package/lib/types/screens/SessionBrowser.js +0 -911
- package/lib/types/terminal-utils/terminal.d.ts +0 -18
- package/lib/types/terminal-utils/terminal.d.ts.map +0 -1
- package/lib/types/terminal-utils/terminal.js +0 -96
package/lib/types/i18n.d.ts
CHANGED
|
@@ -22,7 +22,36 @@
|
|
|
22
22
|
* every entry carries zh, and en is optional only for the `cmd-desc-*`
|
|
23
23
|
* family whose en truth lives in the command registry (see {@link tOr}).
|
|
24
24
|
* scripts/verify-i18n.ts adds the checks types cannot express: placeholder
|
|
25
|
-
* parity between languages, single-brace typos,
|
|
25
|
+
* parity between languages, single-brace typos, dead keys, and English
|
|
26
|
+
* UI-copy literals outside the dictionary (issue #980's leak shape).
|
|
27
|
+
*
|
|
28
|
+
* ## Adding a language (e.g. `ja`) — the full checklist
|
|
29
|
+
*
|
|
30
|
+
* The architecture is the standard flat-dict shape; a new language is
|
|
31
|
+
* translation work plus this mechanical touchpoint list (the compiler and
|
|
32
|
+
* verify-i18n fail until every step is done — partial translations cannot
|
|
33
|
+
* ship silently):
|
|
34
|
+
*
|
|
35
|
+
* 1. `Lang` union + `LANGS` display order (this file).
|
|
36
|
+
* 2. `isLang()` — add the literal.
|
|
37
|
+
* 3. `pluralRules` — add `new Intl.PluralRules('<tag>')`; if the language
|
|
38
|
+
* uses CLDR categories beyond one/other (ru/pl/ar…), widen `I18nText`
|
|
39
|
+
* to carry them and extend `pickText` accordingly.
|
|
40
|
+
* 4. Dictionary type below: add `ja?: I18nText` to the `satisfies` shape.
|
|
41
|
+
* Decide optionality deliberately: required = compile error per missing
|
|
42
|
+
* key (recommended — a half-translated UI is worse than none); optional
|
|
43
|
+
* = `t()` renders the raw key for gaps, so also give `t()`/`tOr()` an
|
|
44
|
+
* explicit fallback order (e.g. ja → en → key) if you go optional.
|
|
45
|
+
* 5. scripts/verify-i18n.ts: the completeness loop (§1) hardcodes the
|
|
46
|
+
* ['zh','en'] pair — extend it, and re-review FORBIDDEN_LITERALS
|
|
47
|
+
* (English sentences stay banned outside the dict; add the new
|
|
48
|
+
* language's equivalents only if the leak shape repeats).
|
|
49
|
+
* 6. Translate the dictionary (~1k keys today); zh comments above each
|
|
50
|
+
* key family describe tone/register — keep them.
|
|
51
|
+
* 7. `detectLocaleLang()` — map the new tag in the OS-locale guess.
|
|
52
|
+
* 8. Rendered-output regression: extend scripts/verify-toolcard-i18n.tsx
|
|
53
|
+
* style fixtures' language passes so the localized strings are proven
|
|
54
|
+
* on screen, not just present in the dict.
|
|
26
55
|
*/
|
|
27
56
|
export type Lang = 'zh' | 'en';
|
|
28
57
|
/** The languages shipped with the plugin, in display order. */
|
|
@@ -269,6 +298,13 @@ declare const dict: {
|
|
|
269
298
|
readonly zh: "未找到引用: {{paths}}";
|
|
270
299
|
readonly en: "References not found: {{paths}}";
|
|
271
300
|
};
|
|
301
|
+
readonly 'selection-attached': {
|
|
302
|
+
readonly zh: "已选中 {{lines}} 行 · {{path}}";
|
|
303
|
+
readonly en: {
|
|
304
|
+
readonly one: "Selected {{lines}} line from {{path}}";
|
|
305
|
+
readonly other: "Selected {{lines}} lines from {{path}}";
|
|
306
|
+
};
|
|
307
|
+
};
|
|
272
308
|
readonly 'transcript-image': {
|
|
273
309
|
readonly zh: "图片";
|
|
274
310
|
readonly en: "Image";
|
|
@@ -359,6 +395,13 @@ declare const dict: {
|
|
|
359
395
|
readonly other: "Attached {{count}} images";
|
|
360
396
|
};
|
|
361
397
|
};
|
|
398
|
+
readonly 'input-images-staged-adapted': {
|
|
399
|
+
readonly zh: "已附加 {{count}} 张图片 · {{adapted}} 张已适配";
|
|
400
|
+
readonly en: {
|
|
401
|
+
readonly one: "Attached {{count}} image · {{adapted}} adapted";
|
|
402
|
+
readonly other: "Attached {{count}} images · {{adapted}} adapted";
|
|
403
|
+
};
|
|
404
|
+
};
|
|
362
405
|
readonly 'send-failed': {
|
|
363
406
|
readonly zh: "发送失败 · {{err}}";
|
|
364
407
|
readonly en: "Send failed · {{err}}";
|
|
@@ -767,6 +810,22 @@ declare const dict: {
|
|
|
767
810
|
readonly zh: "恢复不可用——agents 服务未加载";
|
|
768
811
|
readonly en: "Resume unavailable — agents service not loaded";
|
|
769
812
|
};
|
|
813
|
+
readonly 'resume-session-occupied': {
|
|
814
|
+
readonly zh: "该会话正被其他 TUI 终端占用(进程 {{pid}}),无法进入";
|
|
815
|
+
readonly en: "Another TUI terminal holds this session (pid {{pid}}); cannot enter";
|
|
816
|
+
};
|
|
817
|
+
readonly 'resume-mount-busy': {
|
|
818
|
+
readonly zh: "无法确认该会话是否被其他终端占用(占用检查正忙),请稍后重试";
|
|
819
|
+
readonly en: "Could not confirm whether another terminal holds this session (the occupancy check is busy); retry in a moment";
|
|
820
|
+
};
|
|
821
|
+
readonly 'resume-mount-unavailable': {
|
|
822
|
+
readonly zh: "无法验证该会话的占用状态 · {{detail}}";
|
|
823
|
+
readonly en: "Could not verify this session's occupancy · {{detail}}";
|
|
824
|
+
};
|
|
825
|
+
readonly 'session-mount-occupied-short': {
|
|
826
|
+
readonly zh: "占用 pid {{pid}}";
|
|
827
|
+
readonly en: "held by pid {{pid}}";
|
|
828
|
+
};
|
|
770
829
|
readonly 'resume-failed': {
|
|
771
830
|
readonly zh: "恢复失败 · {{err}}";
|
|
772
831
|
readonly en: "Resume failed · {{err}}";
|
|
@@ -914,6 +973,10 @@ declare const dict: {
|
|
|
914
973
|
readonly zh: "已复制 {{n}} 个字符";
|
|
915
974
|
readonly en: "Copied {{n}} characters";
|
|
916
975
|
};
|
|
976
|
+
readonly 'copy-refused-stale': {
|
|
977
|
+
readonly zh: "选区内容已变化,已取消复制";
|
|
978
|
+
readonly en: "Content under the selection changed; copy cancelled";
|
|
979
|
+
};
|
|
917
980
|
readonly 'activity-current-preset': {
|
|
918
981
|
readonly zh: "当前预设 {{name}}";
|
|
919
982
|
readonly en: "Current preset {{name}}";
|
|
@@ -1118,6 +1181,181 @@ declare const dict: {
|
|
|
1118
1181
|
readonly zh: "工作区重命名失败 · {{err}}";
|
|
1119
1182
|
readonly en: "Failed to rename workspace · {{err}}";
|
|
1120
1183
|
};
|
|
1184
|
+
readonly 'workspace-removed': {
|
|
1185
|
+
readonly zh: "已从工作区列表移除:{{target}}(会话与目录保留)";
|
|
1186
|
+
readonly en: "Removed from the workspace list: {{target}} (sessions and directory kept)";
|
|
1187
|
+
};
|
|
1188
|
+
readonly 'workspace-remove-unknown': {
|
|
1189
|
+
readonly zh: "工作区列表中没有:{{target}}";
|
|
1190
|
+
readonly en: "Not in the workspace list: {{target}}";
|
|
1191
|
+
};
|
|
1192
|
+
readonly 'workspace-remove-failed': {
|
|
1193
|
+
readonly zh: "移除工作区失败 · {{err}}";
|
|
1194
|
+
readonly en: "Failed to remove the workspace · {{err}}";
|
|
1195
|
+
};
|
|
1196
|
+
readonly 'home-section-workspaces': {
|
|
1197
|
+
readonly zh: "工作区({{n}})";
|
|
1198
|
+
readonly en: "Workspaces ({{n}})";
|
|
1199
|
+
};
|
|
1200
|
+
readonly 'home-add-workspace': {
|
|
1201
|
+
readonly zh: "添加工作区";
|
|
1202
|
+
readonly en: "Add workspace";
|
|
1203
|
+
};
|
|
1204
|
+
readonly 'home-add-hint': {
|
|
1205
|
+
readonly zh: "选择目录并加入列表";
|
|
1206
|
+
readonly en: "Pick a directory and add it to the list";
|
|
1207
|
+
};
|
|
1208
|
+
readonly 'home-workspace-missing': {
|
|
1209
|
+
readonly zh: "目录不存在";
|
|
1210
|
+
readonly en: "directory missing";
|
|
1211
|
+
};
|
|
1212
|
+
readonly 'home-no-workspaces': {
|
|
1213
|
+
readonly zh: "还没有工作区 · 在任意目录启动 dsh-tui 即可自动加入";
|
|
1214
|
+
readonly en: "No workspaces yet · start dsh-tui in a directory to add it";
|
|
1215
|
+
};
|
|
1216
|
+
readonly 'home-sessions-title': {
|
|
1217
|
+
readonly zh: "{{name}} 的会话";
|
|
1218
|
+
readonly en: "Sessions in {{name}}";
|
|
1219
|
+
};
|
|
1220
|
+
readonly 'home-sessions-count': {
|
|
1221
|
+
readonly zh: "{{n}} 个会话";
|
|
1222
|
+
readonly en: {
|
|
1223
|
+
readonly one: "{{n}} session";
|
|
1224
|
+
readonly other: "{{n}} sessions";
|
|
1225
|
+
};
|
|
1226
|
+
};
|
|
1227
|
+
readonly 'home-no-sessions': {
|
|
1228
|
+
readonly zh: "这个工作区还没有会话 · Enter 新建一个";
|
|
1229
|
+
readonly en: "No sessions in this workspace yet · Enter starts one";
|
|
1230
|
+
};
|
|
1231
|
+
readonly 'home-sessions-loading': {
|
|
1232
|
+
readonly zh: "正在读取会话…";
|
|
1233
|
+
readonly en: "Loading sessions…";
|
|
1234
|
+
};
|
|
1235
|
+
readonly 'home-sessions-failed': {
|
|
1236
|
+
readonly zh: "读取会话失败 · {{err}}";
|
|
1237
|
+
readonly en: "Failed to load sessions · {{err}}";
|
|
1238
|
+
};
|
|
1239
|
+
readonly 'home-hint-list': {
|
|
1240
|
+
readonly zh: "**←/→** 切换栏位 · **↑/↓** 选择 · **Enter** 编辑 · Ctrl+N 新建 · Esc 进入会话";
|
|
1241
|
+
readonly en: "**←/→** switch pane · **↑/↓** move · **Enter** edit · Ctrl+N new · Esc enter the session";
|
|
1242
|
+
};
|
|
1243
|
+
readonly 'home-hint-menu': {
|
|
1244
|
+
readonly zh: "**↑/↓** 选择 · **Enter** 确认 · Esc 关闭";
|
|
1245
|
+
readonly en: "**↑/↓** move · **Enter** confirm · Esc close";
|
|
1246
|
+
};
|
|
1247
|
+
readonly 'home-hint-rename': {
|
|
1248
|
+
readonly zh: "输入新名称 · **Enter** 保存 · Esc 取消";
|
|
1249
|
+
readonly en: "Type a new name · **Enter** save · Esc cancel";
|
|
1250
|
+
};
|
|
1251
|
+
readonly 'home-hint-confirm-remove': {
|
|
1252
|
+
readonly zh: "**Enter** 确认移除 · Esc 取消";
|
|
1253
|
+
readonly en: "**Enter** confirm removal · Esc cancel";
|
|
1254
|
+
};
|
|
1255
|
+
readonly 'home-menu-edit': {
|
|
1256
|
+
readonly zh: "编辑";
|
|
1257
|
+
readonly en: "Edit";
|
|
1258
|
+
};
|
|
1259
|
+
readonly 'home-menu-new': {
|
|
1260
|
+
readonly zh: "在此新建会话";
|
|
1261
|
+
readonly en: "New session here";
|
|
1262
|
+
};
|
|
1263
|
+
readonly 'home-menu-rename': {
|
|
1264
|
+
readonly zh: "重命名工作区";
|
|
1265
|
+
readonly en: "Rename workspace";
|
|
1266
|
+
};
|
|
1267
|
+
readonly 'home-menu-remove': {
|
|
1268
|
+
readonly zh: "从列表移除";
|
|
1269
|
+
readonly en: "Remove from list";
|
|
1270
|
+
};
|
|
1271
|
+
readonly 'home-rename-placeholder': {
|
|
1272
|
+
readonly zh: "新名称";
|
|
1273
|
+
readonly en: "New name";
|
|
1274
|
+
};
|
|
1275
|
+
readonly 'home-rename-empty': {
|
|
1276
|
+
readonly zh: "名称不能为空";
|
|
1277
|
+
readonly en: "The name cannot be empty";
|
|
1278
|
+
};
|
|
1279
|
+
readonly 'home-rename-failed': {
|
|
1280
|
+
readonly zh: "重命名失败 · {{err}}";
|
|
1281
|
+
readonly en: "Rename failed · {{err}}";
|
|
1282
|
+
};
|
|
1283
|
+
readonly 'home-remove-title': {
|
|
1284
|
+
readonly zh: "移除工作区「{{name}}」?";
|
|
1285
|
+
readonly en: "Remove workspace \"{{name}}\"?";
|
|
1286
|
+
};
|
|
1287
|
+
readonly 'home-remove-detail': {
|
|
1288
|
+
readonly zh: "只从列表移除,会话记录与磁盘目录都会保留";
|
|
1289
|
+
readonly en: "Only the list entry goes away; sessions and the directory stay";
|
|
1290
|
+
};
|
|
1291
|
+
readonly 'supervisor-title': {
|
|
1292
|
+
readonly zh: "会话管理";
|
|
1293
|
+
readonly en: "Sessions";
|
|
1294
|
+
};
|
|
1295
|
+
readonly 'supervisor-unregistered': {
|
|
1296
|
+
readonly zh: "未登记的工作区";
|
|
1297
|
+
readonly en: "Unregistered";
|
|
1298
|
+
};
|
|
1299
|
+
readonly 'supervisor-no-matches': {
|
|
1300
|
+
readonly zh: "没有匹配的会话 · Esc 清空筛选";
|
|
1301
|
+
readonly en: "No sessions match · Esc clears the filter";
|
|
1302
|
+
};
|
|
1303
|
+
readonly 'supervisor-subtitle': {
|
|
1304
|
+
readonly zh: "本终端托管多个会话 · 切换不中断";
|
|
1305
|
+
readonly en: "This terminal hosts several sessions · switching does not stop them";
|
|
1306
|
+
};
|
|
1307
|
+
readonly 'supervisor-filter-placeholder': {
|
|
1308
|
+
readonly zh: "输入以搜索会话…";
|
|
1309
|
+
readonly en: "Type to search sessions…";
|
|
1310
|
+
};
|
|
1311
|
+
readonly 'supervisor-hint-list': {
|
|
1312
|
+
readonly zh: "**←/→** 切换栏位 · **Enter** 进入会话 · Ctrl+N 新建 · Ctrl+X 停止 · Esc 返回";
|
|
1313
|
+
readonly en: "**←/→** switch pane · **Enter** enter · Ctrl+N new · Ctrl+X stop · Esc back";
|
|
1314
|
+
};
|
|
1315
|
+
readonly 'supervisor-hint-filter': {
|
|
1316
|
+
readonly zh: "输入过滤会话 · **Enter** 进入 · Esc 清空";
|
|
1317
|
+
readonly en: "Type to filter · **Enter** enter · Esc clears";
|
|
1318
|
+
};
|
|
1319
|
+
readonly 'supervisor-occupied': {
|
|
1320
|
+
readonly zh: "被其他 TUI 终端占用(pid {{pid}}),无法进入";
|
|
1321
|
+
readonly en: "Held by another TUI terminal (pid {{pid}}) — cannot enter";
|
|
1322
|
+
};
|
|
1323
|
+
readonly 'supervisor-occupied-badge': {
|
|
1324
|
+
readonly zh: "占用 pid {{pid}}";
|
|
1325
|
+
readonly en: "held by pid {{pid}}";
|
|
1326
|
+
};
|
|
1327
|
+
readonly 'supervisor-current': {
|
|
1328
|
+
readonly zh: "当前";
|
|
1329
|
+
readonly en: "current";
|
|
1330
|
+
};
|
|
1331
|
+
readonly 'supervisor-counts': {
|
|
1332
|
+
readonly zh: "{{working}} 运行中 · {{live}} 个活跃 · 共 {{total}}";
|
|
1333
|
+
readonly en: "{{working}} working · {{live}} live · {{total}} total";
|
|
1334
|
+
};
|
|
1335
|
+
readonly 'supervisor-new-session': {
|
|
1336
|
+
readonly zh: "+ 新建会话";
|
|
1337
|
+
readonly en: "+ New session";
|
|
1338
|
+
};
|
|
1339
|
+
readonly 'supervisor-new-session-hint': {
|
|
1340
|
+
readonly zh: "在「{{name}}」新建一个会话";
|
|
1341
|
+
readonly en: "Start a session in \"{{name}}\"";
|
|
1342
|
+
};
|
|
1343
|
+
readonly 'supervisor-stopped': {
|
|
1344
|
+
readonly zh: "已停止会话「{{name}}」";
|
|
1345
|
+
readonly en: "Stopped session {{name}}";
|
|
1346
|
+
};
|
|
1347
|
+
readonly 'supervisor-stop-failed': {
|
|
1348
|
+
readonly zh: "无法停止该会话";
|
|
1349
|
+
readonly en: "Could not stop that session";
|
|
1350
|
+
};
|
|
1351
|
+
readonly 'supervisor-stop-current': {
|
|
1352
|
+
readonly zh: "不能停止当前正在使用的会话";
|
|
1353
|
+
readonly en: "The session you are attached to cannot be stopped";
|
|
1354
|
+
};
|
|
1355
|
+
readonly 'supervisor-open-failed': {
|
|
1356
|
+
readonly zh: "无法进入会话「{{name}}」· 原因见下方通知";
|
|
1357
|
+
readonly en: "Could not enter {{name}} · the reason is in the notification below";
|
|
1358
|
+
};
|
|
1121
1359
|
readonly 'cost-cache-rate': {
|
|
1122
1360
|
readonly zh: "缓存率 {{rate}}% · {{read}} 读 / {{write}} 写";
|
|
1123
1361
|
readonly en: "Cache rate {{rate}}% · {{read}} read / {{write}} write";
|
|
@@ -1526,6 +1764,10 @@ declare const dict: {
|
|
|
1526
1764
|
readonly zh: "…(前 {{count}} 字符流式期间已折叠,落定后完整显示)";
|
|
1527
1765
|
readonly en: "…(first {{count}} chars folded while streaming; full text renders once the turn settles)";
|
|
1528
1766
|
};
|
|
1767
|
+
readonly 'mermaid-too-wide': {
|
|
1768
|
+
readonly zh: "(图需要 {{width}} 列,当前宽度不足,显示源码)";
|
|
1769
|
+
readonly en: "(diagram needs {{width}} columns; showing the source)";
|
|
1770
|
+
};
|
|
1529
1771
|
readonly 'vim-on': {
|
|
1530
1772
|
readonly zh: "vim 模式已开启(Esc 切 normal,i/a/o 回 insert)";
|
|
1531
1773
|
readonly en: "vim mode on (Esc = normal, i/a/o = insert)";
|
|
@@ -1762,6 +2004,14 @@ declare const dict: {
|
|
|
1762
2004
|
readonly zh: "当前模型不支持推理等级切换";
|
|
1763
2005
|
readonly en: "Current model does not support reasoning effort switching";
|
|
1764
2006
|
};
|
|
2007
|
+
readonly 'effort-preference-downgraded': {
|
|
2008
|
+
readonly zh: "偏好推理强度 {{preferred}} 不被当前模型支持,已就近降档至 {{applied}}";
|
|
2009
|
+
readonly en: "Preferred reasoning effort {{preferred}} is unavailable on this model; fell back to the nearest lower tier {{applied}}";
|
|
2010
|
+
};
|
|
2011
|
+
readonly 'effort-preference-unsupported': {
|
|
2012
|
+
readonly zh: "偏好推理强度 {{preferred}} 不被当前模型支持,且无更低可用档,保持模型默认";
|
|
2013
|
+
readonly en: "Preferred reasoning effort {{preferred}} is unavailable on this model with no lower tier; keeping the model default";
|
|
2014
|
+
};
|
|
1765
2015
|
readonly 'effort-switched': {
|
|
1766
2016
|
readonly zh: "推理强度 → {{name}}";
|
|
1767
2017
|
readonly en: "Reasoning effort → {{name}}";
|
|
@@ -1902,6 +2152,22 @@ declare const dict: {
|
|
|
1902
2152
|
readonly zh: "已粘贴图片 {{token}}";
|
|
1903
2153
|
readonly en: "Pasted image {{token}}";
|
|
1904
2154
|
};
|
|
2155
|
+
readonly 'input-image-pasted-adjusted': {
|
|
2156
|
+
readonly zh: "已粘贴图片 {{token}}({{detail}})";
|
|
2157
|
+
readonly en: "Pasted image {{token}} ({{detail}})";
|
|
2158
|
+
};
|
|
2159
|
+
readonly 'input-image-detail-resized': {
|
|
2160
|
+
readonly zh: "已缩放至 {{width}}×{{height}}";
|
|
2161
|
+
readonly en: "resized to {{width}}×{{height}}";
|
|
2162
|
+
};
|
|
2163
|
+
readonly 'input-image-detail-converted': {
|
|
2164
|
+
readonly zh: "{{from}} 已转 {{to}}";
|
|
2165
|
+
readonly en: "{{from}} converted to {{to}}";
|
|
2166
|
+
};
|
|
2167
|
+
readonly 'input-image-detail-converted-flattened': {
|
|
2168
|
+
readonly zh: "{{from}} 已转 {{to}},透明区域已填白";
|
|
2169
|
+
readonly en: "{{from}} converted to {{to}}, transparency filled white";
|
|
2170
|
+
};
|
|
1905
2171
|
readonly 'input-image-paste-failed': {
|
|
1906
2172
|
readonly zh: "粘贴图片失败:{{err}}";
|
|
1907
2173
|
readonly en: "Could not paste image: {{err}}";
|
|
@@ -1927,16 +2193,16 @@ declare const dict: {
|
|
|
1927
2193
|
readonly en: "Retract · Esc interrupts and sends immediately";
|
|
1928
2194
|
};
|
|
1929
2195
|
readonly 'input-fold-stats': {
|
|
1930
|
-
readonly zh: "{{lines}}
|
|
1931
|
-
readonly en: "{{lines}} lines
|
|
2196
|
+
readonly zh: "{{lines}} 行・{{chars}} 字";
|
|
2197
|
+
readonly en: "{{lines}} lines・{{chars}} chars";
|
|
1932
2198
|
};
|
|
1933
2199
|
readonly 'input-fold-hover': {
|
|
1934
2200
|
readonly zh: "悬停查看";
|
|
1935
2201
|
readonly en: "hover to peek";
|
|
1936
2202
|
};
|
|
1937
2203
|
readonly 'input-fold-peek-footer': {
|
|
1938
|
-
readonly zh: "… 共 {{lines}}
|
|
1939
|
-
readonly en: "… {{lines}} lines total
|
|
2204
|
+
readonly zh: "… 共 {{lines}} 行・点击展开编辑";
|
|
2205
|
+
readonly en: "… {{lines}} lines total・click to edit";
|
|
1940
2206
|
};
|
|
1941
2207
|
readonly 'input-expand-editor-title': {
|
|
1942
2208
|
readonly zh: "草稿编辑";
|
|
@@ -1986,6 +2252,66 @@ declare const dict: {
|
|
|
1986
2252
|
readonly zh: "信号 {{name}}";
|
|
1987
2253
|
readonly en: "signal {{name}}";
|
|
1988
2254
|
};
|
|
2255
|
+
readonly 'tool-name-bash': {
|
|
2256
|
+
readonly zh: "Bash";
|
|
2257
|
+
readonly en: "Bash";
|
|
2258
|
+
};
|
|
2259
|
+
readonly 'tool-name-powershell': {
|
|
2260
|
+
readonly zh: "PowerShell";
|
|
2261
|
+
readonly en: "PowerShell";
|
|
2262
|
+
};
|
|
2263
|
+
readonly 'tool-name-read': {
|
|
2264
|
+
readonly zh: "读取";
|
|
2265
|
+
readonly en: "Read";
|
|
2266
|
+
};
|
|
2267
|
+
readonly 'tool-name-glob': {
|
|
2268
|
+
readonly zh: "文件搜索";
|
|
2269
|
+
readonly en: "Glob";
|
|
2270
|
+
};
|
|
2271
|
+
readonly 'tool-name-grep': {
|
|
2272
|
+
readonly zh: "内容搜索";
|
|
2273
|
+
readonly en: "Grep";
|
|
2274
|
+
};
|
|
2275
|
+
readonly 'tool-name-write': {
|
|
2276
|
+
readonly zh: "写入";
|
|
2277
|
+
readonly en: "Write";
|
|
2278
|
+
};
|
|
2279
|
+
readonly 'tool-name-edit': {
|
|
2280
|
+
readonly zh: "编辑";
|
|
2281
|
+
readonly en: "Edit";
|
|
2282
|
+
};
|
|
2283
|
+
readonly 'tool-name-todo_write': {
|
|
2284
|
+
readonly zh: "待办清单";
|
|
2285
|
+
readonly en: "TodoWrite";
|
|
2286
|
+
};
|
|
2287
|
+
readonly 'tool-name-subagent': {
|
|
2288
|
+
readonly zh: "子代理";
|
|
2289
|
+
readonly en: "Task";
|
|
2290
|
+
};
|
|
2291
|
+
readonly 'tool-name-web_search': {
|
|
2292
|
+
readonly zh: "联网搜索";
|
|
2293
|
+
readonly en: "WebSearch";
|
|
2294
|
+
};
|
|
2295
|
+
readonly 'tool-exit-code': {
|
|
2296
|
+
readonly zh: "退出码 {{code}}";
|
|
2297
|
+
readonly en: "Exit code {{code}}";
|
|
2298
|
+
};
|
|
2299
|
+
readonly 'tool-killed-signal': {
|
|
2300
|
+
readonly zh: "被信号 {{name}} 终止";
|
|
2301
|
+
readonly en: "Killed by signal {{name}}";
|
|
2302
|
+
};
|
|
2303
|
+
readonly 'tool-running-elapsed': {
|
|
2304
|
+
readonly zh: "运行中…({{duration}})";
|
|
2305
|
+
readonly en: "Running… ({{duration}})";
|
|
2306
|
+
};
|
|
2307
|
+
readonly 'search-results-total': {
|
|
2308
|
+
readonly zh: "…(共 {{n}} 条)";
|
|
2309
|
+
readonly en: "… ({{n}} total)";
|
|
2310
|
+
};
|
|
2311
|
+
readonly 'lines-folded-expand': {
|
|
2312
|
+
readonly zh: "… +{{n}} 行(ctrl+o 展开)";
|
|
2313
|
+
readonly en: "… +{{n}} lines (ctrl+o to expand)";
|
|
2314
|
+
};
|
|
1989
2315
|
readonly 'sugg-commands-title': {
|
|
1990
2316
|
readonly zh: "命令";
|
|
1991
2317
|
readonly en: "commands";
|
|
@@ -2166,86 +2492,10 @@ declare const dict: {
|
|
|
2166
2492
|
readonly zh: " ctrl+e 显示前 {{n}} 条消息 ";
|
|
2167
2493
|
readonly en: " ctrl+e to show {{n}} previous messages ";
|
|
2168
2494
|
};
|
|
2169
|
-
readonly 'resume-none-in-cwd': {
|
|
2170
|
-
readonly zh: "当前目录没有可恢复的历史会话";
|
|
2171
|
-
readonly en: "No resumable sessions in the current directory";
|
|
2172
|
-
};
|
|
2173
2495
|
readonly 'resume-resumed': {
|
|
2174
2496
|
readonly zh: "已恢复会话";
|
|
2175
2497
|
readonly en: "Session resumed";
|
|
2176
2498
|
};
|
|
2177
|
-
readonly 'resume-delete-confirm': {
|
|
2178
|
-
readonly zh: "删除「{{name}}」?会话日志将被永久移除。";
|
|
2179
|
-
readonly en: "Delete \"{{name}}\"? The session log is removed permanently.";
|
|
2180
|
-
};
|
|
2181
|
-
readonly 'resume-deleted': {
|
|
2182
|
-
readonly zh: "已删除会话「{{name}}」";
|
|
2183
|
-
readonly en: "Deleted session {{name}}";
|
|
2184
|
-
};
|
|
2185
|
-
readonly 'resume-delete-failed': {
|
|
2186
|
-
readonly zh: "无法删除会话「{{name}}」";
|
|
2187
|
-
readonly en: "Could not delete session {{name}}";
|
|
2188
|
-
};
|
|
2189
|
-
readonly 'resume-rename-placeholder': {
|
|
2190
|
-
readonly zh: "新的会话名称…";
|
|
2191
|
-
readonly en: "New session name…";
|
|
2192
|
-
};
|
|
2193
|
-
readonly 'resume-rename-failed': {
|
|
2194
|
-
readonly zh: "无法重命名会话「{{name}}」";
|
|
2195
|
-
readonly en: "Could not rename session {{name}}";
|
|
2196
|
-
};
|
|
2197
|
-
readonly 'resume-hint-delete': {
|
|
2198
|
-
readonly zh: "**Enter** 删除 · Esc 取消";
|
|
2199
|
-
readonly en: "**Enter** to delete · Esc to cancel";
|
|
2200
|
-
};
|
|
2201
|
-
readonly 'resume-hint-rename': {
|
|
2202
|
-
readonly zh: "**Enter** 保存 · Esc 取消";
|
|
2203
|
-
readonly en: "**Enter** to save · Esc to cancel";
|
|
2204
|
-
};
|
|
2205
|
-
readonly 'resume-title': {
|
|
2206
|
-
readonly zh: "恢复会话";
|
|
2207
|
-
readonly en: "Resume session";
|
|
2208
|
-
};
|
|
2209
|
-
readonly 'agentview-title': {
|
|
2210
|
-
readonly zh: "会话总览";
|
|
2211
|
-
readonly en: "Session overview";
|
|
2212
|
-
};
|
|
2213
|
-
readonly 'agentview-count-awaited': {
|
|
2214
|
-
readonly zh: "{{n}} 个等待输入";
|
|
2215
|
-
readonly en: "{{n}} awaiting input";
|
|
2216
|
-
};
|
|
2217
|
-
readonly 'agentview-count-working': {
|
|
2218
|
-
readonly zh: "{{n}} 个运行中";
|
|
2219
|
-
readonly en: "{{n}} working";
|
|
2220
|
-
};
|
|
2221
|
-
readonly 'agentview-count-completed': {
|
|
2222
|
-
readonly zh: "{{n}} 个已完成";
|
|
2223
|
-
readonly en: "{{n}} completed";
|
|
2224
|
-
};
|
|
2225
|
-
readonly 'agentview-count-failed': {
|
|
2226
|
-
readonly zh: "{{n}} 个失败";
|
|
2227
|
-
readonly en: "{{n}} failed";
|
|
2228
|
-
};
|
|
2229
|
-
readonly 'agentview-bg-notice': {
|
|
2230
|
-
readonly zh: "当前会话已转入后台 —— **Enter** 打开它 · **Esc** 返回它 · **Ctrl+C** 两次退出";
|
|
2231
|
-
readonly en: "Your conversation moved to the background — **Enter** opens it · **Esc** returns to it · **Ctrl+C** twice quits";
|
|
2232
|
-
};
|
|
2233
|
-
readonly 'agentview-current-session': {
|
|
2234
|
-
readonly zh: "当前会话";
|
|
2235
|
-
readonly en: "current session";
|
|
2236
|
-
};
|
|
2237
|
-
readonly 'agentview-untitled': {
|
|
2238
|
-
readonly zh: "未命名";
|
|
2239
|
-
readonly en: "untitled";
|
|
2240
|
-
};
|
|
2241
|
-
readonly 'agentview-summary-empty': {
|
|
2242
|
-
readonly zh: "输入提示词开始";
|
|
2243
|
-
readonly en: "send a prompt to start";
|
|
2244
|
-
};
|
|
2245
|
-
readonly 'agentview-none': {
|
|
2246
|
-
readonly zh: "没有会话。在下方输入任务描述并回车,派发第一个后台会话。";
|
|
2247
|
-
readonly en: "No sessions. Type a task below and press Enter to dispatch your first background session.";
|
|
2248
|
-
};
|
|
2249
2499
|
readonly 'agentview-empty-prompt': {
|
|
2250
2500
|
readonly zh: "派发内容不能为空";
|
|
2251
2501
|
readonly en: "Dispatch prompt cannot be empty";
|
|
@@ -2258,66 +2508,6 @@ declare const dict: {
|
|
|
2258
2508
|
readonly zh: "后台会话创建失败 · {{err}}";
|
|
2259
2509
|
readonly en: "Background session creation failed · {{err}}";
|
|
2260
2510
|
};
|
|
2261
|
-
readonly 'agentview-dispatch-done': {
|
|
2262
|
-
readonly zh: "已派发新会话";
|
|
2263
|
-
readonly en: "Dispatched a new session";
|
|
2264
|
-
};
|
|
2265
|
-
readonly 'agentview-stopped': {
|
|
2266
|
-
readonly zh: "已停止会话";
|
|
2267
|
-
readonly en: "Session stopped";
|
|
2268
|
-
};
|
|
2269
|
-
readonly 'agentview-stop-failed': {
|
|
2270
|
-
readonly zh: "无法停止——该会话不是本 TUI 派发的后台会话";
|
|
2271
|
-
readonly en: "Cannot stop — this is not a background session dispatched by this TUI";
|
|
2272
|
-
};
|
|
2273
|
-
readonly 'agentview-stop-confirm': {
|
|
2274
|
-
readonly zh: "**Ctrl+X** 再次按下删除会话「{{name}}」,其他键取消";
|
|
2275
|
-
readonly en: "**Ctrl+X** again to delete \"{{name}}\", any other key cancels";
|
|
2276
|
-
};
|
|
2277
|
-
readonly 'agentview-deleted': {
|
|
2278
|
-
readonly zh: "已删除会话「{{name}}」";
|
|
2279
|
-
readonly en: "Deleted session \"{{name}}\"";
|
|
2280
|
-
};
|
|
2281
|
-
readonly 'agentview-delete-failed': {
|
|
2282
|
-
readonly zh: "无法删除会话「{{name}}」";
|
|
2283
|
-
readonly en: "Could not delete session \"{{name}}\"";
|
|
2284
|
-
};
|
|
2285
|
-
readonly 'agentview-attached': {
|
|
2286
|
-
readonly zh: "已切换到会话";
|
|
2287
|
-
readonly en: "Attached to session";
|
|
2288
|
-
};
|
|
2289
|
-
readonly 'agentview-attach-failed': {
|
|
2290
|
-
readonly zh: "切换失败 · {{err}}";
|
|
2291
|
-
readonly en: "Attach failed · {{err}}";
|
|
2292
|
-
};
|
|
2293
|
-
readonly 'agentview-current-marker': {
|
|
2294
|
-
readonly zh: "当前";
|
|
2295
|
-
readonly en: "attached";
|
|
2296
|
-
};
|
|
2297
|
-
readonly 'agentview-input-placeholder': {
|
|
2298
|
-
readonly zh: "输入任务并回车派发后台会话 · Shift+Enter 派发并立即切换";
|
|
2299
|
-
readonly en: "Type a task and press Enter to dispatch · Shift+Enter dispatch and attach";
|
|
2300
|
-
};
|
|
2301
|
-
readonly 'agentview-hint-list': {
|
|
2302
|
-
readonly zh: "**Enter**/→ 切换 · **Space** 预览 · **Ctrl+X** 停止(两次删除) · **Ctrl+R** 重命名 · **Esc** 退出 · **?** 帮助";
|
|
2303
|
-
readonly en: "**Enter**/→ attach · **Space** peek · **Ctrl+X** stop (twice: delete) · **Ctrl+R** rename · **Esc** exit · **?** help";
|
|
2304
|
-
};
|
|
2305
|
-
readonly 'agentview-hint-rename': {
|
|
2306
|
-
readonly zh: "**Enter** 保存 · Esc 取消";
|
|
2307
|
-
readonly en: "**Enter** to save · Esc to cancel";
|
|
2308
|
-
};
|
|
2309
|
-
readonly 'agentview-hint-peek': {
|
|
2310
|
-
readonly zh: "输入回复并按 **Enter** 发送 · **Esc** 关闭预览";
|
|
2311
|
-
readonly en: "Type a reply and press **Enter** to send · **Esc** close";
|
|
2312
|
-
};
|
|
2313
|
-
readonly 'agentview-reply-sent': {
|
|
2314
|
-
readonly zh: "已发送回复";
|
|
2315
|
-
readonly en: "Reply sent";
|
|
2316
|
-
};
|
|
2317
|
-
readonly 'agentview-reply-failed': {
|
|
2318
|
-
readonly zh: "回复发送失败 · {{err}}";
|
|
2319
|
-
readonly en: "Reply failed · {{err}}";
|
|
2320
|
-
};
|
|
2321
2511
|
readonly 'agentview-reply-empty': {
|
|
2322
2512
|
readonly zh: "回复内容为空";
|
|
2323
2513
|
readonly en: "Reply is empty";
|
|
@@ -2326,54 +2516,6 @@ declare const dict: {
|
|
|
2326
2516
|
readonly zh: "该会话未运行——回车切换进去后回复";
|
|
2327
2517
|
readonly en: "This session is not running — press Enter to attach and reply";
|
|
2328
2518
|
};
|
|
2329
|
-
readonly 'agentview-help-title': {
|
|
2330
|
-
readonly zh: "会话总览快捷键";
|
|
2331
|
-
readonly en: "Session overview shortcuts";
|
|
2332
|
-
};
|
|
2333
|
-
readonly 'agentview-help': {
|
|
2334
|
-
readonly zh: "↑/↓ 移动 · PgUp/PgDn 翻页\nEnter/→ 切换到选中会话(输入框有文字时:派发);后台化打开时 **Enter** 打开当前会话\nShift+Enter 派发并立即切换\nSpace 打开/关闭预览 · 预览内可输入回复并 Enter 发送\nCtrl+X 停止会话 · 两秒内再次按下删除\nCtrl+R 重命名选中会话\nEsc 关闭预览 → 清空输入 → 退出;后台化打开时返回被转入后台的会话\nCtrl+C 清空输入 · 两次退出\n? 本帮助\n\n后台会话运行在本进程内:TUI 退出后停止,日志保留可 /resume 恢复。";
|
|
2335
|
-
readonly en: "↑/↓ move · PgUp/PgDn page\nEnter/→ attach to the selected session (with input text: dispatch); after backgrounding, **Enter** opens the current session\nShift+Enter dispatch and attach\nSpace toggle the peek panel · type a reply inside and Enter to send\nCtrl+X stop the session · press again within 2s to delete\nCtrl+R rename the selected session\nEsc close peek → clear input → exit; after backgrounding, returns to the backgrounded session\nCtrl+C clear input · twice to exit\n? this help\n\nBackground sessions run inside this process: they stop when the TUI exits; their logs survive for /resume.";
|
|
2336
|
-
};
|
|
2337
|
-
readonly 'agentview-rename-placeholder': {
|
|
2338
|
-
readonly zh: "新的会话名称…";
|
|
2339
|
-
readonly en: "New session name…";
|
|
2340
|
-
};
|
|
2341
|
-
readonly 'agentview-renamed': {
|
|
2342
|
-
readonly zh: "已重命名「{{title}}」";
|
|
2343
|
-
readonly en: "Renamed \"{{title}}\"";
|
|
2344
|
-
};
|
|
2345
|
-
readonly 'agentview-rename-failed': {
|
|
2346
|
-
readonly zh: "重命名失败";
|
|
2347
|
-
readonly en: "Rename failed";
|
|
2348
|
-
};
|
|
2349
|
-
readonly 'agentview-hint-help': {
|
|
2350
|
-
readonly zh: "**Esc** 关闭帮助";
|
|
2351
|
-
readonly en: "**Esc** to close help";
|
|
2352
|
-
};
|
|
2353
|
-
readonly 'agentview-state-needs-input': {
|
|
2354
|
-
readonly zh: "等待输入";
|
|
2355
|
-
readonly en: "Needs input";
|
|
2356
|
-
};
|
|
2357
|
-
readonly 'agentview-state-working': {
|
|
2358
|
-
readonly zh: "运行中";
|
|
2359
|
-
readonly en: "Working";
|
|
2360
|
-
};
|
|
2361
|
-
readonly 'agentview-state-completed': {
|
|
2362
|
-
readonly zh: "已完成";
|
|
2363
|
-
readonly en: "Completed";
|
|
2364
|
-
};
|
|
2365
|
-
readonly 'agentview-state-failed': {
|
|
2366
|
-
readonly zh: "失败";
|
|
2367
|
-
readonly en: "Failed";
|
|
2368
|
-
};
|
|
2369
|
-
readonly 'agentview-state-idle': {
|
|
2370
|
-
readonly zh: "空闲";
|
|
2371
|
-
readonly en: "Idle";
|
|
2372
|
-
};
|
|
2373
|
-
readonly 'agentview-state-stopped': {
|
|
2374
|
-
readonly zh: "已停止";
|
|
2375
|
-
readonly en: "Stopped";
|
|
2376
|
-
};
|
|
2377
2519
|
readonly 'approval-background-agent': {
|
|
2378
2520
|
readonly zh: "来自后台会话 {{id}} 的审批请求";
|
|
2379
2521
|
readonly en: "Approval request from background session {{id}}";
|
|
@@ -2470,14 +2612,6 @@ declare const dict: {
|
|
|
2470
2612
|
readonly zh: "**Enter** 确认并保存 · Esc 取消";
|
|
2471
2613
|
readonly en: "**Enter** to confirm & save · Esc to cancel";
|
|
2472
2614
|
};
|
|
2473
|
-
readonly 'session-loading': {
|
|
2474
|
-
readonly zh: "正在读取会话…";
|
|
2475
|
-
readonly en: "Reading sessions…";
|
|
2476
|
-
};
|
|
2477
|
-
readonly 'session-list-failed': {
|
|
2478
|
-
readonly zh: "无法读取会话列表 · {{err}}";
|
|
2479
|
-
readonly en: "Could not read the session list · {{err}}";
|
|
2480
|
-
};
|
|
2481
2615
|
readonly 'session-resume-failed': {
|
|
2482
2616
|
readonly zh: "恢复会话失败 · {{err}}";
|
|
2483
2617
|
readonly en: "Resuming the session failed · {{err}}";
|
|
@@ -2522,30 +2656,6 @@ declare const dict: {
|
|
|
2522
2656
|
readonly zh: "(未记录目录)";
|
|
2523
2657
|
readonly en: "(no directory recorded)";
|
|
2524
2658
|
};
|
|
2525
|
-
readonly 'session-scope-all': {
|
|
2526
|
-
readonly zh: "全部工作目录";
|
|
2527
|
-
readonly en: "all working directories";
|
|
2528
|
-
};
|
|
2529
|
-
readonly 'session-search-placeholder': {
|
|
2530
|
-
readonly zh: "输入以搜索 · {{scope}}";
|
|
2531
|
-
readonly en: "Type to search · {{scope}}";
|
|
2532
|
-
};
|
|
2533
|
-
readonly 'session-workspace-scope': {
|
|
2534
|
-
readonly zh: "工作目录";
|
|
2535
|
-
readonly en: "Working directory";
|
|
2536
|
-
};
|
|
2537
|
-
readonly 'session-workspace-switch': {
|
|
2538
|
-
readonly zh: "← 选择目录";
|
|
2539
|
-
readonly en: "← choose directory";
|
|
2540
|
-
};
|
|
2541
|
-
readonly 'session-workspace-select-title': {
|
|
2542
|
-
readonly zh: "选择工作目录";
|
|
2543
|
-
readonly en: "Choose working directory";
|
|
2544
|
-
};
|
|
2545
|
-
readonly 'session-workspace-search-placeholder': {
|
|
2546
|
-
readonly zh: "输入以搜索工作目录";
|
|
2547
|
-
readonly en: "Type to search working directories";
|
|
2548
|
-
};
|
|
2549
2659
|
readonly 'session-workspace-all': {
|
|
2550
2660
|
readonly zh: "全部工作目录";
|
|
2551
2661
|
readonly en: "All working directories";
|
|
@@ -2566,14 +2676,6 @@ declare const dict: {
|
|
|
2566
2676
|
readonly zh: "暂无历史会话";
|
|
2567
2677
|
readonly en: "no history yet";
|
|
2568
2678
|
};
|
|
2569
|
-
readonly 'session-workspace-no-match': {
|
|
2570
|
-
readonly zh: "没有匹配的工作目录";
|
|
2571
|
-
readonly en: "No matching working directory";
|
|
2572
|
-
};
|
|
2573
|
-
readonly 'resume-menu-open': {
|
|
2574
|
-
readonly zh: "打开";
|
|
2575
|
-
readonly en: "Open";
|
|
2576
|
-
};
|
|
2577
2679
|
readonly 'resume-menu-pin': {
|
|
2578
2680
|
readonly zh: "固定到顶部";
|
|
2579
2681
|
readonly en: "Pin to top";
|
|
@@ -2582,26 +2684,6 @@ declare const dict: {
|
|
|
2582
2684
|
readonly zh: "取消固定";
|
|
2583
2685
|
readonly en: "Unpin";
|
|
2584
2686
|
};
|
|
2585
|
-
readonly 'resume-menu-rename': {
|
|
2586
|
-
readonly zh: "重命名";
|
|
2587
|
-
readonly en: "Rename";
|
|
2588
|
-
};
|
|
2589
|
-
readonly 'resume-menu-delete': {
|
|
2590
|
-
readonly zh: "删除";
|
|
2591
|
-
readonly en: "Delete";
|
|
2592
|
-
};
|
|
2593
|
-
readonly 'session-pinned-group': {
|
|
2594
|
-
readonly zh: "已固定";
|
|
2595
|
-
readonly en: "Pinned";
|
|
2596
|
-
};
|
|
2597
|
-
readonly 'resume-pinned': {
|
|
2598
|
-
readonly zh: "已固定 {{name}}";
|
|
2599
|
-
readonly en: "Pinned {{name}}";
|
|
2600
|
-
};
|
|
2601
|
-
readonly 'resume-unpinned': {
|
|
2602
|
-
readonly zh: "已取消固定 {{name}}";
|
|
2603
|
-
readonly en: "Unpinned {{name}}";
|
|
2604
|
-
};
|
|
2605
2687
|
readonly 'resume-pin-save-failed': {
|
|
2606
2688
|
readonly zh: "固定状态保存失败,未应用更改";
|
|
2607
2689
|
readonly en: "Could not save pin; no change was applied";
|
|
@@ -2610,22 +2692,6 @@ declare const dict: {
|
|
|
2610
2692
|
readonly zh: "{{n}} 个会话";
|
|
2611
2693
|
readonly en: "{{n}} sessions";
|
|
2612
2694
|
};
|
|
2613
|
-
readonly 'session-count-subagents': {
|
|
2614
|
-
readonly zh: "{{n}} 个子运行已折叠";
|
|
2615
|
-
readonly en: "{{n}} runs folded";
|
|
2616
|
-
};
|
|
2617
|
-
readonly 'session-count-empty': {
|
|
2618
|
-
readonly zh: "{{n}} 个空会话";
|
|
2619
|
-
readonly en: "{{n}} empty";
|
|
2620
|
-
};
|
|
2621
|
-
readonly 'session-clean-confirm': {
|
|
2622
|
-
readonly zh: "清理 {{n}} 个没有对话内容的会话?日志将被永久移除。";
|
|
2623
|
-
readonly en: "Remove {{n}} sessions that hold no conversation? Their logs are deleted permanently.";
|
|
2624
|
-
};
|
|
2625
|
-
readonly 'session-cleaned': {
|
|
2626
|
-
readonly zh: "已清理 {{n}} 个空会话";
|
|
2627
|
-
readonly en: "Removed {{n}} empty sessions";
|
|
2628
|
-
};
|
|
2629
2695
|
readonly 'session-preview-times': {
|
|
2630
2696
|
readonly zh: "创建于 {{created}} · 最后活动 {{updated}}";
|
|
2631
2697
|
readonly en: "created {{created}} · last active {{updated}}";
|
|
@@ -2638,34 +2704,6 @@ declare const dict: {
|
|
|
2638
2704
|
readonly zh: "这个会话没有可预览的往来消息";
|
|
2639
2705
|
readonly en: "No exchanges to preview in this session";
|
|
2640
2706
|
};
|
|
2641
|
-
readonly 'session-toggle-on': {
|
|
2642
|
-
readonly zh: "开";
|
|
2643
|
-
readonly en: "on";
|
|
2644
|
-
};
|
|
2645
|
-
readonly 'session-toggle-off': {
|
|
2646
|
-
readonly zh: "关";
|
|
2647
|
-
readonly en: "off";
|
|
2648
|
-
};
|
|
2649
|
-
readonly 'session-hint-list': {
|
|
2650
|
-
readonly zh: "**Enter** 恢复 · ← 工作目录 · Tab 预览 · 右键菜单 · {{mod}}a 全部目录({{projects}}) · {{mod}}s 子运行({{runs}}) · {{mod}}b 本分支 · {{mod}}r 重命名 · {{mod}}p 固定 · {{mod}}d 删除 · {{mod}}x 清空壳 · Esc 退出";
|
|
2651
|
-
readonly en: "**Enter** resume · ← directories · Tab preview · right-click menu · {{mod}}a all directories ({{projects}}) · {{mod}}s runs ({{runs}}) · {{mod}}b this branch · {{mod}}r rename · {{mod}}p pin · {{mod}}d delete · {{mod}}x clean · Esc exit";
|
|
2652
|
-
};
|
|
2653
|
-
readonly 'session-hint-list-mid': {
|
|
2654
|
-
readonly zh: "**Enter** 恢复 · ← 工作目录 · Tab 预览 · 右键菜单 · {{mod}}a 全部目录 · {{mod}}s 子运行 · {{mod}}r 重命名 · {{mod}}p 固定 · {{mod}}d 删除 · Esc 退出";
|
|
2655
|
-
readonly en: "**Enter** resume · ← directories · Tab preview · right-click menu · {{mod}}a all directories · {{mod}}s runs · {{mod}}r rename · {{mod}}p pin · {{mod}}d delete · Esc exit";
|
|
2656
|
-
};
|
|
2657
|
-
readonly 'session-hint-list-short': {
|
|
2658
|
-
readonly zh: "**Enter** 恢复 · {{mod}}p ★ · ← 目录 · Esc";
|
|
2659
|
-
readonly en: "**Enter** resume · {{mod}}p ★ · ← dirs · Esc";
|
|
2660
|
-
};
|
|
2661
|
-
readonly 'session-hint-workspaces': {
|
|
2662
|
-
readonly zh: "**Enter/→** 查看会话 · ↑/↓ 选择 · {{mod}}a 全部目录 · Esc 返回";
|
|
2663
|
-
readonly en: "**Enter/→** view sessions · ↑/↓ choose · {{mod}}a all directories · Esc back";
|
|
2664
|
-
};
|
|
2665
|
-
readonly 'session-hint-workspaces-short': {
|
|
2666
|
-
readonly zh: "**Enter/→** 查看 · Esc";
|
|
2667
|
-
readonly en: "**Enter/→** view · Esc";
|
|
2668
|
-
};
|
|
2669
2707
|
readonly 'hint-confirm-exit': {
|
|
2670
2708
|
readonly zh: "**Enter** 确认 · Esc 退出";
|
|
2671
2709
|
readonly en: "**Enter** to confirm · Esc to exit";
|
|
@@ -2694,10 +2732,6 @@ declare const dict: {
|
|
|
2694
2732
|
readonly zh: "? 查看快捷键";
|
|
2695
2733
|
readonly en: "? for shortcuts";
|
|
2696
2734
|
};
|
|
2697
|
-
readonly 'status-detail-of-window': {
|
|
2698
|
-
readonly zh: "的窗口";
|
|
2699
|
-
readonly en: "of window";
|
|
2700
|
-
};
|
|
2701
2735
|
readonly 'status-detail-session-id': {
|
|
2702
2736
|
readonly zh: "会话日志目录与此 id 同名";
|
|
2703
2737
|
readonly en: "the session log directory is named after this id";
|
|
@@ -3229,6 +3263,22 @@ declare const dict: {
|
|
|
3229
3263
|
readonly zh: "输入文字附带回答";
|
|
3230
3264
|
readonly en: "Type text to attach an answer";
|
|
3231
3265
|
};
|
|
3266
|
+
readonly 'question-fold-waiting': {
|
|
3267
|
+
readonly zh: "正在等你回答";
|
|
3268
|
+
readonly en: "Waiting for your answer";
|
|
3269
|
+
};
|
|
3270
|
+
readonly 'question-fold-expand': {
|
|
3271
|
+
readonly zh: "{{combo}} 展开";
|
|
3272
|
+
readonly en: "{{combo}} to expand";
|
|
3273
|
+
};
|
|
3274
|
+
readonly 'question-fold-hint': {
|
|
3275
|
+
readonly zh: "{{combo}} 折叠 / 点标题行收起";
|
|
3276
|
+
readonly en: "{{combo}} to fold / click the header";
|
|
3277
|
+
};
|
|
3278
|
+
readonly 'question-submit-selection': {
|
|
3279
|
+
readonly zh: "提交选择(Enter)";
|
|
3280
|
+
readonly en: "Submit selection (Enter)";
|
|
3281
|
+
};
|
|
3232
3282
|
readonly 'question-custom-tab': {
|
|
3233
3283
|
readonly zh: "自定义回答";
|
|
3234
3284
|
readonly en: "Custom answer";
|