@sagmans/dsh-tui 0.13.0 → 0.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.agents/skills/dsh-tui-dogfood/SKILL.md +18 -2
- package/.agents/skills/dsh-tui-dogfood/references/home-state.md +4 -4
- package/.agents/skills/dsh-tui-dogfood/scripts/clone-links.mjs +19 -11
- package/.agents/skills/dsh-tui-dogfood/scripts/run-plugin-from-worktree.sh +31 -9
- package/.agents/skills/dsh-tui-update-models/SKILL.md +1 -1
- package/.agents/skills/dsh-tui-update-models/references/model-wiring.md +6 -6
- package/.agents/skills/dsh-tui-update-models/scripts/dump-model-catalog.mjs +21 -13
- package/README.md +61 -23
- package/cordis.patch.yml +2 -0
- package/lib/agent/fork.d.ts +3 -1
- package/lib/agent/fork.d.ts.map +1 -1
- package/lib/agent/fork.js +2 -0
- package/lib/agent/fork.js.map +1 -1
- package/lib/agent/history.d.ts +14 -22
- package/lib/agent/history.d.ts.map +1 -1
- package/lib/agent/history.js +20 -14
- package/lib/agent/history.js.map +1 -1
- package/lib/agent/host.d.ts.map +1 -1
- package/lib/agent/host.js +6 -0
- package/lib/agent/host.js.map +1 -1
- package/lib/agent/model.d.ts +10 -8
- package/lib/agent/model.d.ts.map +1 -1
- package/lib/agent/model.js +9 -7
- package/lib/agent/model.js.map +1 -1
- package/lib/agent/present.d.ts +1 -1
- package/lib/agent/present.d.ts.map +1 -1
- package/lib/agent/present.js +1 -1
- package/lib/agent/present.js.map +1 -1
- package/lib/agent/presets.d.ts +4 -1
- package/lib/agent/presets.d.ts.map +1 -1
- package/lib/agent/presets.js +9 -2
- package/lib/agent/presets.js.map +1 -1
- package/lib/agent/projections.d.ts +8 -2
- package/lib/agent/projections.d.ts.map +1 -1
- package/lib/agent/projections.js +8 -2
- package/lib/agent/projections.js.map +1 -1
- package/lib/agent/prompt-history.d.ts +8 -48
- package/lib/agent/prompt-history.d.ts.map +1 -1
- package/lib/agent/prompt-history.js +34 -15
- package/lib/agent/prompt-history.js.map +1 -1
- package/lib/agent/status.d.ts +9 -24
- package/lib/agent/status.d.ts.map +1 -1
- package/lib/agent/status.js +7 -2
- package/lib/agent/status.js.map +1 -1
- package/lib/agent/undo.d.ts +2 -4
- package/lib/agent/undo.d.ts.map +1 -1
- package/lib/agent/undo.js +10 -5
- package/lib/agent/undo.js.map +1 -1
- package/lib/cards/composition.d.ts +7 -7
- package/lib/cards/composition.d.ts.map +1 -1
- package/lib/cards/composition.js +13 -12
- package/lib/cards/composition.js.map +1 -1
- package/lib/cards/presenter.d.ts +11 -14
- package/lib/cards/presenter.d.ts.map +1 -1
- package/lib/cards/presenter.js +40 -19
- package/lib/cards/presenter.js.map +1 -1
- package/lib/cards/preview.d.ts.map +1 -1
- package/lib/cards/preview.js +5 -1
- package/lib/cards/preview.js.map +1 -1
- package/lib/cards.d.ts +17 -23
- package/lib/cards.d.ts.map +1 -1
- package/lib/cards.js +27 -12
- package/lib/cards.js.map +1 -1
- package/lib/compat/probe.d.ts +2 -5
- package/lib/compat/probe.d.ts.map +1 -1
- package/lib/compat/probe.js +2 -2
- package/lib/compat/probe.js.map +1 -1
- package/lib/compat/section.d.ts +5 -4
- package/lib/compat/section.d.ts.map +1 -1
- package/lib/compat/section.js +4 -0
- package/lib/compat/section.js.map +1 -1
- package/lib/config.d.ts +0 -3
- package/lib/config.d.ts.map +1 -1
- package/lib/config.js +7 -1
- package/lib/config.js.map +1 -1
- package/lib/export.d.ts +5 -7
- package/lib/export.d.ts.map +1 -1
- package/lib/export.js +48 -10
- package/lib/export.js.map +1 -1
- package/lib/fold-cursor.d.ts +3 -3
- package/lib/fold-cursor.d.ts.map +1 -1
- package/lib/fold-cursor.js +5 -3
- package/lib/fold-cursor.js.map +1 -1
- package/lib/gates/question-card.d.ts +3 -38
- package/lib/gates/question-card.d.ts.map +1 -1
- package/lib/gates/question-card.js +13 -10
- package/lib/gates/question-card.js.map +1 -1
- package/lib/gates/questions.d.ts +14 -8
- package/lib/gates/questions.d.ts.map +1 -1
- package/lib/gates/questions.js +16 -12
- package/lib/gates/questions.js.map +1 -1
- package/lib/gates.d.ts +17 -25
- package/lib/gates.d.ts.map +1 -1
- package/lib/gates.js +2 -4
- package/lib/gates.js.map +1 -1
- package/lib/herdr/client.d.ts +10 -12
- package/lib/herdr/client.d.ts.map +1 -1
- package/lib/herdr/client.js +9 -8
- package/lib/herdr/client.js.map +1 -1
- package/lib/herdr/constants.d.ts +3 -2
- package/lib/herdr/constants.d.ts.map +1 -1
- package/lib/herdr/constants.js +3 -2
- package/lib/herdr/constants.js.map +1 -1
- package/lib/herdr/reporter.d.ts +4 -39
- package/lib/herdr/reporter.d.ts.map +1 -1
- package/lib/herdr/reporter.js +13 -19
- package/lib/herdr/reporter.js.map +1 -1
- package/lib/herdr/state.d.ts +4 -3
- package/lib/herdr/state.d.ts.map +1 -1
- package/lib/herdr/state.js +6 -5
- package/lib/herdr/state.js.map +1 -1
- package/lib/host/preset-files.d.ts +0 -17
- package/lib/host/preset-files.d.ts.map +1 -1
- package/lib/host/preset-files.js +7 -2
- package/lib/host/preset-files.js.map +1 -1
- package/lib/host/roster.d.ts +1 -1
- package/lib/host/roster.d.ts.map +1 -1
- package/lib/host/roster.js +3 -3
- package/lib/host/roster.js.map +1 -1
- package/lib/host/runner.d.ts +2 -5
- package/lib/host/runner.d.ts.map +1 -1
- package/lib/host/runner.js +2 -5
- package/lib/host/runner.js.map +1 -1
- package/lib/identity.d.ts +6 -3
- package/lib/identity.d.ts.map +1 -1
- package/lib/identity.js +18 -3
- package/lib/identity.js.map +1 -1
- package/lib/index.d.ts +2 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +42 -14
- package/lib/index.js.map +1 -1
- package/lib/injection.d.ts.map +1 -1
- package/lib/injection.js +1 -0
- package/lib/injection.js.map +1 -1
- package/lib/input/action-catalog.d.ts.map +1 -1
- package/lib/input/action-catalog.js +4 -0
- package/lib/input/action-catalog.js.map +1 -1
- package/lib/input/actions.d.ts +4 -3
- package/lib/input/actions.d.ts.map +1 -1
- package/lib/input/actions.js +8 -3
- package/lib/input/actions.js.map +1 -1
- package/lib/input/completion.d.ts +3 -11
- package/lib/input/completion.d.ts.map +1 -1
- package/lib/input/completion.js +4 -4
- package/lib/input/completion.js.map +1 -1
- package/lib/input/file-index.d.ts +1 -12
- package/lib/input/file-index.d.ts.map +1 -1
- package/lib/input/file-index.js +21 -17
- package/lib/input/file-index.js.map +1 -1
- package/lib/input/file-search.d.ts +4 -3
- package/lib/input/file-search.d.ts.map +1 -1
- package/lib/input/file-search.js +8 -5
- package/lib/input/file-search.js.map +1 -1
- package/lib/input/fuzzy.d.ts +6 -12
- package/lib/input/fuzzy.d.ts.map +1 -1
- package/lib/input/fuzzy.js +18 -27
- package/lib/input/fuzzy.js.map +1 -1
- package/lib/input/ghost.d.ts +5 -5
- package/lib/input/ghost.d.ts.map +1 -1
- package/lib/input/ghost.js +4 -3
- package/lib/input/ghost.js.map +1 -1
- package/lib/input/key-press.d.ts +8 -7
- package/lib/input/key-press.d.ts.map +1 -1
- package/lib/input/key-press.js +8 -6
- package/lib/input/key-press.js.map +1 -1
- package/lib/input/keymap-conflicts.d.ts +6 -6
- package/lib/input/keymap-conflicts.d.ts.map +1 -1
- package/lib/input/keymap-conflicts.js +6 -6
- package/lib/input/keymap-conflicts.js.map +1 -1
- package/lib/input/keymap.d.ts +6 -18
- package/lib/input/keymap.d.ts.map +1 -1
- package/lib/input/keymap.js +7 -10
- package/lib/input/keymap.js.map +1 -1
- package/lib/input/match.js +4 -4
- package/lib/input/match.js.map +1 -1
- package/lib/input/submission.d.ts +7 -3
- package/lib/input/submission.d.ts.map +1 -1
- package/lib/input/submission.js +2 -2
- package/lib/input/submission.js.map +1 -1
- package/lib/input/workspace-files.d.ts +1 -2
- package/lib/input/workspace-files.d.ts.map +1 -1
- package/lib/input/workspace-files.js +20 -11
- package/lib/input/workspace-files.js.map +1 -1
- package/lib/input.d.ts.map +1 -1
- package/lib/input.js +3 -1
- package/lib/input.js.map +1 -1
- package/lib/install-skills.d.ts +5 -22
- package/lib/install-skills.d.ts.map +1 -1
- package/lib/install-skills.js +18 -18
- package/lib/install-skills.js.map +1 -1
- package/lib/jobs.d.ts +10 -5
- package/lib/jobs.d.ts.map +1 -1
- package/lib/jobs.js +39 -13
- package/lib/jobs.js.map +1 -1
- package/lib/keymaps.d.ts.map +1 -1
- package/lib/keymaps.js +2 -0
- package/lib/keymaps.js.map +1 -1
- package/lib/keys-command.d.ts +1 -1
- package/lib/keys-command.d.ts.map +1 -1
- package/lib/model-list.d.ts +0 -27
- package/lib/model-list.d.ts.map +1 -1
- package/lib/model-list.js +1 -1
- package/lib/model-list.js.map +1 -1
- package/lib/moshi.d.ts +13 -0
- package/lib/moshi.d.ts.map +1 -0
- package/lib/moshi.js +130 -0
- package/lib/moshi.js.map +1 -0
- package/lib/spacing.d.ts +0 -7
- package/lib/spacing.d.ts.map +1 -1
- package/lib/spacing.js +1 -1
- package/lib/spacing.js.map +1 -1
- package/lib/startup.d.ts +1 -1
- package/lib/startup.d.ts.map +1 -1
- package/lib/startup.js +9 -1
- package/lib/startup.js.map +1 -1
- package/lib/stash/lock.d.ts +1 -37
- package/lib/stash/lock.d.ts.map +1 -1
- package/lib/stash/lock.js +41 -35
- package/lib/stash/lock.js.map +1 -1
- package/lib/stash/paths.d.ts +8 -7
- package/lib/stash/paths.d.ts.map +1 -1
- package/lib/stash/paths.js +21 -17
- package/lib/stash/paths.js.map +1 -1
- package/lib/stash/private-fs.d.ts +14 -5
- package/lib/stash/private-fs.d.ts.map +1 -1
- package/lib/stash/private-fs.js +30 -8
- package/lib/stash/private-fs.js.map +1 -1
- package/lib/stash/schema.d.ts +3 -6
- package/lib/stash/schema.d.ts.map +1 -1
- package/lib/stash/schema.js +11 -9
- package/lib/stash/schema.js.map +1 -1
- package/lib/stash/store.d.ts +9 -40
- package/lib/stash/store.d.ts.map +1 -1
- package/lib/stash/store.js +26 -24
- package/lib/stash/store.js.map +1 -1
- package/lib/stash.d.ts +7 -11
- package/lib/stash.d.ts.map +1 -1
- package/lib/stash.js +18 -11
- package/lib/stash.js.map +1 -1
- package/lib/subagents.d.ts +9 -9
- package/lib/subagents.d.ts.map +1 -1
- package/lib/subagents.js +19 -18
- package/lib/subagents.js.map +1 -1
- package/lib/surface/appearance-preferences.d.ts.map +1 -1
- package/lib/surface/appearance-preferences.js +7 -0
- package/lib/surface/appearance-preferences.js.map +1 -1
- package/lib/surface/appearance.d.ts.map +1 -1
- package/lib/surface/appearance.js +7 -2
- package/lib/surface/appearance.js.map +1 -1
- package/lib/surface/background-work.d.ts +2 -0
- package/lib/surface/background-work.d.ts.map +1 -1
- package/lib/surface/background-work.js +45 -36
- package/lib/surface/background-work.js.map +1 -1
- package/lib/surface/commands.d.ts.map +1 -1
- package/lib/surface/commands.js +17 -9
- package/lib/surface/commands.js.map +1 -1
- package/lib/surface/modal-input.d.ts +3 -0
- package/lib/surface/modal-input.d.ts.map +1 -1
- package/lib/surface/modal-input.js +4 -1
- package/lib/surface/modal-input.js.map +1 -1
- package/lib/surface/model-choice.d.ts.map +1 -1
- package/lib/surface/model-choice.js +10 -8
- package/lib/surface/model-choice.js.map +1 -1
- package/lib/surface/plugin-actions.d.ts.map +1 -1
- package/lib/surface/plugin-actions.js +4 -0
- package/lib/surface/plugin-actions.js.map +1 -1
- package/lib/surface/preset-choice.d.ts.map +1 -1
- package/lib/surface/preset-choice.js +15 -17
- package/lib/surface/preset-choice.js.map +1 -1
- package/lib/surface/prompt-input.js +1 -1
- package/lib/surface/prompt-input.js.map +1 -1
- package/lib/surface/prompt-memory.d.ts +7 -6
- package/lib/surface/prompt-memory.d.ts.map +1 -1
- package/lib/surface/prompt-memory.js +3 -3
- package/lib/surface/session-lifecycle.d.ts +7 -1
- package/lib/surface/session-lifecycle.d.ts.map +1 -1
- package/lib/surface/session-lifecycle.js +17 -12
- package/lib/surface/session-lifecycle.js.map +1 -1
- package/lib/surface/session-picker.js +1 -1
- package/lib/surface/session-picker.js.map +1 -1
- package/lib/surface/session-view.d.ts +1 -1
- package/lib/surface/session-view.d.ts.map +1 -1
- package/lib/surface/session-view.js +4 -5
- package/lib/surface/session-view.js.map +1 -1
- package/lib/surface/staged-turns.d.ts.map +1 -1
- package/lib/surface/staged-turns.js +8 -4
- package/lib/surface/staged-turns.js.map +1 -1
- package/lib/surface/terminal-lifecycle.d.ts +1 -1
- package/lib/surface/terminal-lifecycle.d.ts.map +1 -1
- package/lib/surface/terminal-lifecycle.js +8 -5
- package/lib/surface/terminal-lifecycle.js.map +1 -1
- package/lib/terminal/bell.d.ts +0 -2
- package/lib/terminal/bell.d.ts.map +1 -1
- package/lib/terminal/bell.js +2 -1
- package/lib/terminal/bell.js.map +1 -1
- package/lib/terminal/clipboard.d.ts +4 -4
- package/lib/terminal/clipboard.js +4 -4
- package/lib/terminal/external-editor.d.ts +4 -60
- package/lib/terminal/external-editor.d.ts.map +1 -1
- package/lib/terminal/external-editor.js +28 -40
- package/lib/terminal/external-editor.js.map +1 -1
- package/lib/terminal/host-writes.d.ts +7 -18
- package/lib/terminal/host-writes.d.ts.map +1 -1
- package/lib/terminal/host-writes.js +9 -14
- package/lib/terminal/host-writes.js.map +1 -1
- package/lib/terminal/input.d.ts +6 -0
- package/lib/terminal/input.d.ts.map +1 -0
- package/lib/terminal/input.js +15 -0
- package/lib/terminal/input.js.map +1 -0
- package/lib/terminal/restore.d.ts +2 -1
- package/lib/terminal/restore.d.ts.map +1 -1
- package/lib/terminal/signals.d.ts +2 -1
- package/lib/terminal/signals.d.ts.map +1 -1
- package/lib/terminal/signals.js +1 -1
- package/lib/terminal/signals.js.map +1 -1
- package/lib/terminal/title.d.ts +1 -11
- package/lib/terminal/title.d.ts.map +1 -1
- package/lib/terminal/title.js +5 -4
- package/lib/terminal/title.js.map +1 -1
- package/lib/terminal/warning-screen.d.ts +2 -0
- package/lib/terminal/warning-screen.d.ts.map +1 -1
- package/lib/terminal/warning-screen.js +21 -3
- package/lib/terminal/warning-screen.js.map +1 -1
- package/lib/terminal-text/scan.d.ts +4 -5
- package/lib/terminal-text/scan.d.ts.map +1 -1
- package/lib/terminal-text/scan.js +16 -9
- package/lib/terminal-text/scan.js.map +1 -1
- package/lib/terminal-text/sgr.d.ts +4 -3
- package/lib/terminal-text/sgr.d.ts.map +1 -1
- package/lib/terminal-text/sgr.js +9 -14
- package/lib/terminal-text/sgr.js.map +1 -1
- package/lib/terminal-text.d.ts +7 -12
- package/lib/terminal-text.d.ts.map +1 -1
- package/lib/terminal-text.js +31 -28
- package/lib/terminal-text.js.map +1 -1
- package/lib/text.d.ts +8 -14
- package/lib/text.d.ts.map +1 -1
- package/lib/text.js +14 -15
- package/lib/text.js.map +1 -1
- package/lib/theme-capability.d.ts +3 -15
- package/lib/theme-capability.d.ts.map +1 -1
- package/lib/theme-capability.js +18 -15
- package/lib/theme-capability.js.map +1 -1
- package/lib/theme-defaults.d.ts +3 -57
- package/lib/theme-defaults.d.ts.map +1 -1
- package/lib/theme-defaults.js +25 -14
- package/lib/theme-defaults.js.map +1 -1
- package/lib/theme-files.d.ts +16 -32
- package/lib/theme-files.d.ts.map +1 -1
- package/lib/theme-files.js +43 -27
- package/lib/theme-files.js.map +1 -1
- package/lib/theme-resolver.d.ts +3 -3
- package/lib/theme-resolver.d.ts.map +1 -1
- package/lib/theme-resolver.js +9 -6
- package/lib/theme-resolver.js.map +1 -1
- package/lib/theme-schema.d.ts +7 -42
- package/lib/theme-schema.d.ts.map +1 -1
- package/lib/theme-schema.js +9 -11
- package/lib/theme-schema.js.map +1 -1
- package/lib/theme-settings.d.ts +19 -10
- package/lib/theme-settings.d.ts.map +1 -1
- package/lib/theme-settings.js +23 -17
- package/lib/theme-settings.js.map +1 -1
- package/lib/theme-tokens.d.ts +6 -12
- package/lib/theme-tokens.d.ts.map +1 -1
- package/lib/theme-tokens.js +2 -2
- package/lib/theme-tokens.js.map +1 -1
- package/lib/theme.d.ts +5 -10
- package/lib/theme.d.ts.map +1 -1
- package/lib/theme.js +11 -18
- package/lib/theme.js.map +1 -1
- package/lib/todo-guard.d.ts +8 -4
- package/lib/todo-guard.d.ts.map +1 -1
- package/lib/todo-guard.js +17 -6
- package/lib/todo-guard.js.map +1 -1
- package/lib/tokens.d.ts +0 -2
- package/lib/tokens.d.ts.map +1 -1
- package/lib/tokens.js +1 -1
- package/lib/tokens.js.map +1 -1
- package/lib/tool-display.d.ts +1 -13
- package/lib/tool-display.d.ts.map +1 -1
- package/lib/tool-display.js +4 -4
- package/lib/tool-display.js.map +1 -1
- package/lib/transcript/message-content.d.ts.map +1 -1
- package/lib/transcript/message-content.js +31 -9
- package/lib/transcript/message-content.js.map +1 -1
- package/lib/transcript/tool-calls.d.ts +9 -7
- package/lib/transcript/tool-calls.d.ts.map +1 -1
- package/lib/transcript/tool-calls.js +27 -20
- package/lib/transcript/tool-calls.js.map +1 -1
- package/lib/transcript.d.ts +10 -18
- package/lib/transcript.d.ts.map +1 -1
- package/lib/transcript.js +40 -28
- package/lib/transcript.js.map +1 -1
- package/lib/ui/copy.d.ts +5 -4
- package/lib/ui/copy.d.ts.map +1 -1
- package/lib/ui/copy.js +9 -6
- package/lib/ui/copy.js.map +1 -1
- package/lib/ui/diff.d.ts +0 -30
- package/lib/ui/diff.d.ts.map +1 -1
- package/lib/ui/diff.js +16 -9
- package/lib/ui/diff.js.map +1 -1
- package/lib/ui/dock.d.ts +4 -10
- package/lib/ui/dock.d.ts.map +1 -1
- package/lib/ui/dock.js +10 -14
- package/lib/ui/dock.js.map +1 -1
- package/lib/ui/editor.d.ts +4 -3
- package/lib/ui/editor.d.ts.map +1 -1
- package/lib/ui/editor.js +2 -2
- package/lib/ui/editor.js.map +1 -1
- package/lib/ui/frame.d.ts +4 -12
- package/lib/ui/frame.d.ts.map +1 -1
- package/lib/ui/frame.js +6 -6
- package/lib/ui/frame.js.map +1 -1
- package/lib/ui/gap.d.ts +0 -4
- package/lib/ui/gap.d.ts.map +1 -1
- package/lib/ui/gap.js +4 -3
- package/lib/ui/gap.js.map +1 -1
- package/lib/ui/gate-input.d.ts +3 -3
- package/lib/ui/gate-input.d.ts.map +1 -1
- package/lib/ui/gate-input.js +9 -9
- package/lib/ui/gate-input.js.map +1 -1
- package/lib/ui/layout.d.ts +1 -8
- package/lib/ui/layout.d.ts.map +1 -1
- package/lib/ui/layout.js +5 -3
- package/lib/ui/layout.js.map +1 -1
- package/lib/ui/markdown.d.ts +3 -5
- package/lib/ui/markdown.d.ts.map +1 -1
- package/lib/ui/markdown.js +18 -7
- package/lib/ui/markdown.js.map +1 -1
- package/lib/ui/mermaid.d.ts +0 -11
- package/lib/ui/mermaid.d.ts.map +1 -1
- package/lib/ui/mermaid.js +32 -17
- package/lib/ui/mermaid.js.map +1 -1
- package/lib/ui/picker-card.d.ts +4 -8
- package/lib/ui/picker-card.d.ts.map +1 -1
- package/lib/ui/picker-card.js +17 -15
- package/lib/ui/picker-card.js.map +1 -1
- package/lib/ui/picker.d.ts +10 -17
- package/lib/ui/picker.d.ts.map +1 -1
- package/lib/ui/picker.js +14 -8
- package/lib/ui/picker.js.map +1 -1
- package/lib/ui/stash-picker.d.ts +1 -10
- package/lib/ui/stash-picker.d.ts.map +1 -1
- package/lib/ui/stash-picker.js +4 -4
- package/lib/ui/stash-picker.js.map +1 -1
- package/lib/ui/status.d.ts +2 -19
- package/lib/ui/status.d.ts.map +1 -1
- package/lib/ui/status.js +15 -17
- package/lib/ui/status.js.map +1 -1
- package/lib/ui/view/document.d.ts +4 -1
- package/lib/ui/view/document.d.ts.map +1 -1
- package/lib/ui/view/document.js +15 -6
- package/lib/ui/view/document.js.map +1 -1
- package/lib/ui/view/gate-card.d.ts +2 -0
- package/lib/ui/view/gate-card.d.ts.map +1 -1
- package/lib/ui/view/gate-card.js +12 -10
- package/lib/ui/view/gate-card.js.map +1 -1
- package/lib/ui/view/tool-card.d.ts +7 -4
- package/lib/ui/view/tool-card.d.ts.map +1 -1
- package/lib/ui/view/tool-card.js +12 -17
- package/lib/ui/view/tool-card.js.map +1 -1
- package/lib/ui/view/transcript-message.d.ts +7 -7
- package/lib/ui/view/transcript-message.d.ts.map +1 -1
- package/lib/ui/view/transcript-message.js +19 -10
- package/lib/ui/view/transcript-message.js.map +1 -1
- package/lib/ui/view.d.ts +8 -8
- package/lib/ui/view.d.ts.map +1 -1
- package/lib/ui/view.js +11 -13
- package/lib/ui/view.js.map +1 -1
- package/lib/work.d.ts +13 -10
- package/lib/work.d.ts.map +1 -1
- package/lib/work.js +30 -8
- package/lib/work.js.map +1 -1
- package/package.json +11 -7
- package/presets/cordis.patch.yml +1 -0
- package/presets/minimal.patch.yml +1 -0
- package/presets/ptc.patch.yml +1 -0
- package/presets/standard.patch.yml +1 -0
- package/themes/deepseek-blue.yaml +38 -51
- package/themes/marine-static.yaml +27 -35
- package/themes/pine-slope.yaml +13 -11
- package/themes/polar-drift.yaml +6 -0
- package/themes/violet-orbit.yaml +14 -18
- package/themes/wine-thicket.yaml +13 -13
|
@@ -1,17 +1,4 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Global prompt history for the terminal surface.
|
|
3
|
-
*
|
|
4
|
-
* The file is deliberately project-agnostic: a reader who types the same prompt
|
|
5
|
-
* in two checkouts wants it offered in both, so nothing here records a working
|
|
6
|
-
* directory. It lives beside the reader's other harness preferences rather than
|
|
7
|
-
* inside the profile, because a profile is replaced on install and history is
|
|
8
|
-
* theirs to keep.
|
|
9
|
-
*/
|
|
10
|
-
/** File name the history is stored under, inside the harness home. */
|
|
11
|
-
export declare const HISTORY_FILE_NAME = "prompt-history.json";
|
|
12
|
-
/** Schema this build writes; a file that names another positive version is left alone. */
|
|
13
|
-
export declare const HISTORY_SCHEMA_VERSION = 1;
|
|
14
|
-
/** Entries kept when the reader configures nothing. */
|
|
1
|
+
/** Bound retained prompts on mutation, trading older suggestions for smaller snapshots and full-file rewrites. */
|
|
15
2
|
export declare const DEFAULT_MAX_ENTRIES = 2000;
|
|
16
3
|
/** Largest cap a reader may ask for, so a typo cannot grow the file without bound. */
|
|
17
4
|
export declare const MAX_ENTRIES_LIMIT = 20000;
|
|
@@ -24,61 +11,34 @@ export type HistoryBlockReason = 'corrupt_history' | 'unsupported_schema' | 'unr
|
|
|
24
11
|
* and a second copy is one condition the reader has to learn twice.
|
|
25
12
|
*/
|
|
26
13
|
export declare const BLOCK_DESCRIPTIONS: Record<HistoryBlockReason, string>;
|
|
27
|
-
/**
|
|
14
|
+
/** Repeat metadata accompanies one reusable suggestion; list position, not updatedAt, determines recency. */
|
|
28
15
|
export interface PromptEntry {
|
|
29
16
|
readonly text: string;
|
|
30
17
|
readonly updatedAt: string;
|
|
18
|
+
/** Let reverse search distinguish reused prompts without duplicating their rows. */
|
|
31
19
|
readonly useCount: number;
|
|
32
20
|
}
|
|
33
|
-
/** The
|
|
34
|
-
export interface PromptHistoryFile {
|
|
35
|
-
readonly version: number;
|
|
36
|
-
readonly updatedAt: string;
|
|
37
|
-
readonly entries: readonly PromptEntry[];
|
|
38
|
-
}
|
|
39
|
-
/** A file read reduced to what a caller can act on. */
|
|
40
|
-
export type ParsedHistoryFile = {
|
|
41
|
-
readonly kind: 'ready';
|
|
42
|
-
readonly file: PromptHistoryFile;
|
|
43
|
-
} | {
|
|
44
|
-
readonly kind: 'blocked';
|
|
45
|
-
readonly reason: HistoryBlockReason;
|
|
46
|
-
};
|
|
47
|
-
/** The store the surface holds; mutations are fire-and-forget and serialized. */
|
|
21
|
+
/** The surface shares this store between submission, ghost completion, reverse search, and history commands. */
|
|
48
22
|
export interface PromptHistory {
|
|
49
|
-
/**
|
|
23
|
+
/** Share a newest-first snapshot so ghost completion and reverse search offer the same recency order. */
|
|
50
24
|
entries(): readonly PromptEntry[];
|
|
51
|
-
/**
|
|
25
|
+
/** Queue persistence without delaying submission; blank input contributes no suggestion. */
|
|
52
26
|
record(text: string): void;
|
|
53
27
|
/** Remove every entry and report how many went. */
|
|
54
28
|
clear(): Promise<number>;
|
|
55
|
-
/**
|
|
29
|
+
/** Let history commands include their own submitted line; queued mutations settle even when persistence fails. */
|
|
56
30
|
flush(): Promise<void>;
|
|
57
31
|
/** Absolute path of the file, for a status line and diagnostics. */
|
|
58
32
|
path(): string;
|
|
59
33
|
/** Why writes are refused, or undefined while the store is healthy. */
|
|
60
34
|
blockedReason(): HistoryBlockReason | undefined;
|
|
61
35
|
}
|
|
62
|
-
/**
|
|
36
|
+
/** Live settings and notices keep history aligned with the mounted surface. */
|
|
63
37
|
export interface PromptHistoryOptions {
|
|
64
|
-
/** Resolved harness home; defaults to $DSH_HOME or ~/.dsh. */
|
|
65
|
-
readonly home?: string;
|
|
66
38
|
/** Read per mutation so a settings edit takes effect without a restart. */
|
|
67
39
|
readonly cap: () => number;
|
|
68
|
-
readonly now?: () => Date;
|
|
69
40
|
readonly warn?: (message: string) => void;
|
|
70
|
-
/** Lock wait a test can shorten; defaults to LOCK_WAIT_MS. */
|
|
71
|
-
readonly lockWaitMs?: number;
|
|
72
41
|
}
|
|
73
|
-
/** Read one persisted document, refusing anything this build cannot safely rewrite. */
|
|
74
|
-
export declare function parseHistoryFile(text: string): ParsedHistoryFile;
|
|
75
|
-
/**
|
|
76
|
-
* Put one prompt at the front, replacing an exact duplicate.
|
|
77
|
-
*
|
|
78
|
-
* A duplicate is moved rather than copied so a repeated prompt resurfaces as the
|
|
79
|
-
* newest suggestion without ever appearing twice in the list.
|
|
80
|
-
*/
|
|
81
|
-
export declare function upsertEntry(entries: readonly PromptEntry[], text: string, now: string, maxEntries: number): PromptEntry[];
|
|
82
42
|
/** Build the store the surface records into and completes from. */
|
|
83
43
|
export declare function createPromptHistory(options: PromptHistoryOptions): PromptHistory;
|
|
84
44
|
//# sourceMappingURL=prompt-history.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt-history.d.ts","sourceRoot":"","sources":["../../src/agent/prompt-history.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"prompt-history.d.ts","sourceRoot":"","sources":["../../src/agent/prompt-history.ts"],"names":[],"mappings":"AAoBA,kHAAkH;AAClH,eAAO,MAAM,mBAAmB,OAAO,CAAA;AACvC,sFAAsF;AACtF,eAAO,MAAM,iBAAiB,QAAS,CAAA;AAmBvC,+EAA+E;AAC/E,MAAM,MAAM,kBAAkB,GAAG,iBAAiB,GAAG,oBAAoB,GAAG,oBAAoB,CAAA;AAEhG;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,kBAAkB,EAAE,MAAM,CAIjE,CAAA;AAED,6GAA6G;AAC7G,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,oFAAoF;IACpF,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAC1B;AAcD,gHAAgH;AAChH,MAAM,WAAW,aAAa;IAC5B,yGAAyG;IACzG,OAAO,IAAI,SAAS,WAAW,EAAE,CAAA;IACjC,4FAA4F;IAC5F,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,mDAAmD;IACnD,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,CAAA;IACxB,kHAAkH;IAClH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IACtB,oEAAoE;IACpE,IAAI,IAAI,MAAM,CAAA;IACd,uEAAuE;IACvE,aAAa,IAAI,kBAAkB,GAAG,SAAS,CAAA;CAChD;AAED,+EAA+E;AAC/E,MAAM,WAAW,oBAAoB;IACnC,2EAA2E;IAC3E,QAAQ,CAAC,GAAG,EAAE,MAAM,MAAM,CAAA;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CAC1C;AA0ND,mEAAmE;AACnE,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,oBAAoB,GAAG,aAAa,CAkHhF"}
|
|
@@ -13,16 +13,16 @@ import { displayText } from "../text.js";
|
|
|
13
13
|
* theirs to keep.
|
|
14
14
|
*/
|
|
15
15
|
/** File name the history is stored under, inside the harness home. */
|
|
16
|
-
|
|
16
|
+
const HISTORY_FILE_NAME = 'prompt-history.json';
|
|
17
17
|
/** Schema this build writes; a file that names another positive version is left alone. */
|
|
18
|
-
|
|
19
|
-
/**
|
|
18
|
+
const HISTORY_SCHEMA_VERSION = 1;
|
|
19
|
+
/** Bound retained prompts on mutation, trading older suggestions for smaller snapshots and full-file rewrites. */
|
|
20
20
|
export const DEFAULT_MAX_ENTRIES = 2000;
|
|
21
21
|
/** Largest cap a reader may ask for, so a typo cannot grow the file without bound. */
|
|
22
22
|
export const MAX_ENTRIES_LIMIT = 20_000;
|
|
23
|
-
/**
|
|
23
|
+
/** Submitted prompts may contain private input; request owner-only file permissions. */
|
|
24
24
|
const PRIVATE_FILE_MODE = 0o600;
|
|
25
|
-
/**
|
|
25
|
+
/** Keep newly created history homes private too; leave existing directory permissions unchanged. */
|
|
26
26
|
const PRIVATE_DIR_MODE = 0o700;
|
|
27
27
|
/** Suffix of the file that serializes mutations across sessions. */
|
|
28
28
|
const LOCK_SUFFIX = '.lock';
|
|
@@ -30,7 +30,7 @@ const LOCK_SUFFIX = '.lock';
|
|
|
30
30
|
const LOCK_RECLAIM_SUFFIX = '.reclaim';
|
|
31
31
|
/** Suffix of the file a lock is staged in before it is published. */
|
|
32
32
|
const LOCK_TEMP_SUFFIX = '.tmp';
|
|
33
|
-
/**
|
|
33
|
+
/** Limit waiting on live lock holders so queued history commands can settle despite contention. */
|
|
34
34
|
const LOCK_WAIT_MS = 2_000;
|
|
35
35
|
/** Delay between lock attempts, so a short hold is not a spin. */
|
|
36
36
|
const LOCK_RETRY_MS = 20;
|
|
@@ -121,6 +121,8 @@ async function publishLock(lockPath, owner) {
|
|
|
121
121
|
return false;
|
|
122
122
|
}
|
|
123
123
|
finally {
|
|
124
|
+
// Cleanup must not hide publication success or the original link error;
|
|
125
|
+
// leftover staging files do not reserve the published lock path.
|
|
124
126
|
await rm(staged, { force: true }).catch(() => { });
|
|
125
127
|
}
|
|
126
128
|
}
|
|
@@ -168,6 +170,8 @@ async function releaseLock(lockPath, owner) {
|
|
|
168
170
|
const contents = await readFile(lockPath, 'utf8').catch(() => undefined);
|
|
169
171
|
if (contents !== serializeOwner(owner))
|
|
170
172
|
return;
|
|
173
|
+
// Cleanup must not report an already completed mutation as a failure.
|
|
174
|
+
// A retained live-holder lock can still make later mutations time out.
|
|
171
175
|
await rm(lockPath, { force: true }).catch(() => { });
|
|
172
176
|
}
|
|
173
177
|
/** Run one read-modify-replace under the lock, so nothing lands between them. */
|
|
@@ -185,7 +189,7 @@ function isPositiveInteger(value) {
|
|
|
185
189
|
return typeof value === 'number' && Number.isSafeInteger(value) && value > 0;
|
|
186
190
|
}
|
|
187
191
|
/** Read one persisted document, refusing anything this build cannot safely rewrite. */
|
|
188
|
-
|
|
192
|
+
function parseHistoryFile(text) {
|
|
189
193
|
let raw;
|
|
190
194
|
try {
|
|
191
195
|
raw = JSON.parse(text);
|
|
@@ -239,25 +243,30 @@ function normalizeEntry(raw) {
|
|
|
239
243
|
* A duplicate is moved rather than copied so a repeated prompt resurfaces as the
|
|
240
244
|
* newest suggestion without ever appearing twice in the list.
|
|
241
245
|
*/
|
|
242
|
-
|
|
246
|
+
function upsertEntry(entries, text, now, maxEntries) {
|
|
243
247
|
const existing = entries.find(entry => entry.text === text);
|
|
244
248
|
const next = existing === undefined
|
|
245
249
|
? { text, updatedAt: now, useCount: 1 }
|
|
246
250
|
: { text, updatedAt: laterTimestamp(existing.updatedAt, now), useCount: existing.useCount + 1 };
|
|
247
251
|
return [next, ...entries.filter(entry => entry.text !== text)].slice(0, Math.max(0, maxEntries));
|
|
248
252
|
}
|
|
253
|
+
/**
|
|
254
|
+
* Keep repeat metadata from moving backward for UTC ISO timestamps with four-digit years.
|
|
255
|
+
* Persisted timestamps are checked only as strings, so arbitrary stored values have no chronological guarantee.
|
|
256
|
+
*/
|
|
249
257
|
function laterTimestamp(left, right) {
|
|
250
258
|
return left >= right ? left : right;
|
|
251
259
|
}
|
|
252
260
|
/** Build the store the surface records into and completes from. */
|
|
253
261
|
export function createPromptHistory(options) {
|
|
254
|
-
const now = options.now ?? (() => new Date());
|
|
255
262
|
const warn = options.warn ?? (() => { });
|
|
256
|
-
const filePath = join(
|
|
263
|
+
const filePath = join(dshHomeDir(), HISTORY_FILE_NAME);
|
|
257
264
|
const lockPath = filePath + LOCK_SUFFIX;
|
|
258
265
|
let entries = [];
|
|
259
266
|
let blocked;
|
|
260
267
|
const warned = new Set();
|
|
268
|
+
// Repeated failures should not keep raising notices; distinct block reasons and
|
|
269
|
+
// write-error details retain separate notices because they can require different repairs.
|
|
261
270
|
const warnOnce = (key, message) => {
|
|
262
271
|
if (warned.has(key))
|
|
263
272
|
return;
|
|
@@ -276,8 +285,12 @@ export function createPromptHistory(options) {
|
|
|
276
285
|
text = await readFile(filePath, 'utf8');
|
|
277
286
|
}
|
|
278
287
|
catch (error) {
|
|
279
|
-
if (isMissingFile(error))
|
|
288
|
+
if (isMissingFile(error)) {
|
|
289
|
+
// Deletion is a fresh history, not permission to resurrect the cached prompts.
|
|
290
|
+
entries = [];
|
|
291
|
+
blocked = undefined;
|
|
280
292
|
return;
|
|
293
|
+
}
|
|
281
294
|
blocked = 'unreadable_history';
|
|
282
295
|
warnOnce('load:unreadable', 'prompt history is unreadable; writes are disabled until it can be read');
|
|
283
296
|
return;
|
|
@@ -289,14 +302,18 @@ export function createPromptHistory(options) {
|
|
|
289
302
|
return;
|
|
290
303
|
}
|
|
291
304
|
entries = parsed.file.entries;
|
|
305
|
+
// A repaired file authorizes queued mutations again without restarting the surface.
|
|
306
|
+
blocked = undefined;
|
|
292
307
|
}
|
|
293
308
|
function enqueue(operation) {
|
|
294
309
|
const run = chain.then(operation);
|
|
295
310
|
chain = run.then(() => { }, () => { });
|
|
296
311
|
return run;
|
|
297
312
|
}
|
|
313
|
+
// Stage a complete, owner-only document before replacement so readers do not
|
|
314
|
+
// observe a partial history. Cleanup attempts to avoid leaving another private copy.
|
|
298
315
|
async function write() {
|
|
299
|
-
const file = { version: HISTORY_SCHEMA_VERSION, updatedAt:
|
|
316
|
+
const file = { version: HISTORY_SCHEMA_VERSION, updatedAt: new Date().toISOString(), entries };
|
|
300
317
|
const tempPath = filePath + '.' + process.pid + '.' + Date.now() + '.tmp';
|
|
301
318
|
await mkdir(dirname(filePath), { recursive: true, mode: PRIVATE_DIR_MODE });
|
|
302
319
|
try {
|
|
@@ -317,11 +334,13 @@ export function createPromptHistory(options) {
|
|
|
317
334
|
if (text.trim() === '')
|
|
318
335
|
return;
|
|
319
336
|
const prompt = displayText(text, { tab: 'keep' });
|
|
320
|
-
void enqueue(() => withLock(lockPath,
|
|
337
|
+
void enqueue(() => withLock(lockPath, LOCK_WAIT_MS, async () => {
|
|
321
338
|
await load();
|
|
322
339
|
if (blocked !== undefined)
|
|
323
340
|
return;
|
|
324
|
-
|
|
341
|
+
// Keep this prompt available to suggestion readers even if persistence fails.
|
|
342
|
+
// A successful reload replaces the snapshot; memory-only prompts are not a retry queue.
|
|
343
|
+
entries = upsertEntry(entries, prompt, new Date().toISOString(), options.cap());
|
|
325
344
|
await write();
|
|
326
345
|
})).catch((error) => {
|
|
327
346
|
// The reason can name the lock file that must be removed by hand, so it
|
|
@@ -331,7 +350,7 @@ export function createPromptHistory(options) {
|
|
|
331
350
|
});
|
|
332
351
|
},
|
|
333
352
|
clear() {
|
|
334
|
-
return enqueue(() => withLock(lockPath,
|
|
353
|
+
return enqueue(() => withLock(lockPath, LOCK_WAIT_MS, async () => {
|
|
335
354
|
await load();
|
|
336
355
|
// A file that changed under the reader cannot be cleared safely, and
|
|
337
356
|
// reporting a successful clear of nothing would be worse than refusing.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt-history.js","sourceRoot":"","sources":["../../src/agent/prompt-history.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"prompt-history.js","sourceRoot":"","sources":["../../src/agent/prompt-history.ts"],"names":[],"mappings":"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"}
|
package/lib/agent/status.d.ts
CHANGED
|
@@ -1,33 +1,12 @@
|
|
|
1
1
|
import type { Context } from '@deepseek-ai/cordis';
|
|
2
2
|
import type { SessionId } from '@deepseek-ai/dsh-session';
|
|
3
3
|
import type { StatusFacts } from '../ui/status.ts';
|
|
4
|
-
/**
|
|
5
|
-
|
|
4
|
+
/** Keep the turn clock with its activity so footer paints can compute elapsed time from the live session. */
|
|
5
|
+
interface ActivityState {
|
|
6
6
|
readonly running: boolean;
|
|
7
7
|
readonly startedAt: number | undefined;
|
|
8
8
|
}
|
|
9
|
-
/**
|
|
10
|
-
* The token-usage projection state.
|
|
11
|
-
*
|
|
12
|
-
* The unit projects `{ totals, last }` — a flat usage object is the wrong shape
|
|
13
|
-
* and reading it silently yields nothing, so the reader is pinned by a test.
|
|
14
|
-
*/
|
|
15
|
-
export declare function usageTotals(state: unknown): Record<string, unknown> | undefined;
|
|
16
|
-
/**
|
|
17
|
-
* Share of prompt tokens a provider served from cache.
|
|
18
|
-
*
|
|
19
|
-
* Read tokens against the uncached ones: a hit rate is what a reader can act on
|
|
20
|
-
* (it is what caching buys), while the raw counts belong in `/status`.
|
|
21
|
-
*/
|
|
22
|
-
export declare function cacheRate(usage: Record<string, unknown> | undefined): number | undefined;
|
|
23
|
-
/**
|
|
24
|
-
* Gather what the footer states.
|
|
25
|
-
*
|
|
26
|
-
* Every service is optional and every read is guarded: the footer is the least
|
|
27
|
-
* important thing on screen, and a composition that omits the model directory or
|
|
28
|
-
* the token meter should cost the reader a segment, not the session.
|
|
29
|
-
*/
|
|
30
|
-
/** Where the footer reads its facts from. */
|
|
9
|
+
/** Supply live footer facts without coupling the painter to session services. */
|
|
31
10
|
export interface StatusSources {
|
|
32
11
|
readonly sessionId: () => SessionId;
|
|
33
12
|
readonly activity: () => ActivityState;
|
|
@@ -63,5 +42,11 @@ export interface StatusSources {
|
|
|
63
42
|
*/
|
|
64
43
|
readonly stash?: (() => number | undefined) | undefined;
|
|
65
44
|
}
|
|
45
|
+
/**
|
|
46
|
+
* Keep footer decoration usable when optional services are absent.
|
|
47
|
+
* Failed permission-preset reads become absent facts; other service methods
|
|
48
|
+
* and source callbacks are not protected from exceptions here.
|
|
49
|
+
*/
|
|
66
50
|
export declare function createStatusFacts(ctx: Context, sources: StatusSources): () => StatusFacts;
|
|
51
|
+
export {};
|
|
67
52
|
//# sourceMappingURL=status.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/agent/status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAIlD,
|
|
1
|
+
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/agent/status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAIlD,6GAA6G;AAC7G,UAAU,aAAa;IACrB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAA;CACvC;AAiDD,iFAAiF;AACjF,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,SAAS,CAAA;IACnC,QAAQ,CAAC,QAAQ,EAAE,MAAM,aAAa,CAAA;IACtC;;;OAGG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM;QACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;QAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;QACvB,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;KAClC,GAAG,SAAS,CAAC,GAAG,SAAS,CAAA;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAClC,+FAA+F;IAC/F,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,SAAS,MAAM,EAAE,CAAA;IACzG;;;OAGG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,SAAS,CAAA;IACvD;;;;OAIG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,SAAS,CAAA;IACtD;;;OAGG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,SAAS,CAAA;CACxD;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,GAAG,MAAM,WAAW,CAsCzF"}
|
package/lib/agent/status.js
CHANGED
|
@@ -6,7 +6,7 @@ import { projectionRecord, projectionString } from "./projections.js";
|
|
|
6
6
|
* The unit projects `{ totals, last }` — a flat usage object is the wrong shape
|
|
7
7
|
* and reading it silently yields nothing, so the reader is pinned by a test.
|
|
8
8
|
*/
|
|
9
|
-
|
|
9
|
+
function usageTotals(state) {
|
|
10
10
|
return asRecord(asRecord(state)?.totals);
|
|
11
11
|
}
|
|
12
12
|
/**
|
|
@@ -15,7 +15,7 @@ export function usageTotals(state) {
|
|
|
15
15
|
* Read tokens against the uncached ones: a hit rate is what a reader can act on
|
|
16
16
|
* (it is what caching buys), while the raw counts belong in `/status`.
|
|
17
17
|
*/
|
|
18
|
-
|
|
18
|
+
function cacheRate(usage) {
|
|
19
19
|
const read = numberOr(usage?.cacheReadTokens);
|
|
20
20
|
const uncached = numberOr(usage?.uncachedInputTokens);
|
|
21
21
|
if (read === undefined || uncached === undefined)
|
|
@@ -29,6 +29,11 @@ function asRecord(value) {
|
|
|
29
29
|
function numberOr(value) {
|
|
30
30
|
return typeof value === 'number' && Number.isFinite(value) ? value : undefined;
|
|
31
31
|
}
|
|
32
|
+
/**
|
|
33
|
+
* Keep footer decoration usable when optional services are absent.
|
|
34
|
+
* Failed permission-preset reads become absent facts; other service methods
|
|
35
|
+
* and source callbacks are not protected from exceptions here.
|
|
36
|
+
*/
|
|
32
37
|
export function createStatusFacts(ctx, sources) {
|
|
33
38
|
return () => {
|
|
34
39
|
const override = sources.override?.();
|
package/lib/agent/status.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/agent/status.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAuBrE;;;;;GAKG;AACH,
|
|
1
|
+
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/agent/status.ts"],"names":[],"mappings":"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"}
|
package/lib/agent/undo.d.ts
CHANGED
|
@@ -10,9 +10,7 @@ import type { ForkEvent } from './fork.ts';
|
|
|
10
10
|
*/
|
|
11
11
|
/** One closed turn that contains a direct prompt and can be undone as a unit. */
|
|
12
12
|
export interface TurnPoint {
|
|
13
|
-
/**
|
|
14
|
-
readonly turn: number;
|
|
15
|
-
/** Index of the turn's `turn/start`: the prefix a divergence inherits. */
|
|
13
|
+
/** Cut before the prompt's inbox splice when known, otherwise before turn/start, to avoid redelivery on divergence. */
|
|
16
14
|
readonly seedCount: number;
|
|
17
15
|
/** The first direct prompt's text, which the composer gets back. */
|
|
18
16
|
readonly promptText: string;
|
|
@@ -34,7 +32,7 @@ export declare const NO_UNDO: UndoState;
|
|
|
34
32
|
* bounded one keeps a stuck tool from leaving the key press unanswered.
|
|
35
33
|
*/
|
|
36
34
|
export declare const UNDO_TURN_SETTLE_MS = 10000;
|
|
37
|
-
/**
|
|
35
|
+
/** A newly opened session must not inherit hidden turns or ownership of restored text from the previous cursor. */
|
|
38
36
|
export declare function resetUndo(sessionId: SessionId): UndoState;
|
|
39
37
|
/**
|
|
40
38
|
* The closed turns a direct prompt can be undone from, in log order.
|
package/lib/agent/undo.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"undo.d.ts","sourceRoot":"","sources":["../../src/agent/undo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAE1C;;;;;;;GAOG;AAEH,iFAAiF;AACjF,MAAM,WAAW,SAAS;IACxB,
|
|
1
|
+
{"version":3,"file":"undo.d.ts","sourceRoot":"","sources":["../../src/agent/undo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAE1C;;;;;;;GAOG;AAEH,iFAAiF;AACjF,MAAM,WAAW,SAAS;IACxB,uHAAuH;IACvH,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,oEAAoE;IACpE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAC5B;AAED,yDAAyD;AACzD,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,CAAA;IACzC,kEAAkE;IAClE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,wFAAwF;IACxF,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;CAC9B;AAED,6CAA6C;AAC7C,eAAO,MAAM,OAAO,EAAE,SAAiE,CAAA;AAEvF;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,QAAS,CAAA;AAEzC,mHAAmH;AACnH,wBAAgB,SAAS,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,CAEzD;AAyCD;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,MAAM,EAAE,SAAS,SAAS,EAAE,GAAG,SAAS,SAAS,EAAE,CAgC1E;AAED,gFAAgF;AAChF,wBAAgB,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,SAAS,EAAE,GAAG,SAAS,GAAG,SAAS,CAI7F;AAED,oFAAoF;AACpF,wBAAgB,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,SAAS,EAAE,GAAG,SAAS,GAAG,SAAS,CAI7F;AAED,iFAAiF;AACjF,wBAAgB,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,SAAS,EAAE,GAAG,SAAS,GAAG,SAAS,CAE/F"}
|
package/lib/agent/undo.js
CHANGED
|
@@ -7,14 +7,18 @@ export const NO_UNDO = { sessionId: undefined, hidden: 0, lastRestored: '' };
|
|
|
7
7
|
* bounded one keeps a stuck tool from leaving the key press unanswered.
|
|
8
8
|
*/
|
|
9
9
|
export const UNDO_TURN_SETTLE_MS = 10_000;
|
|
10
|
-
/**
|
|
10
|
+
/** A newly opened session must not inherit hidden turns or ownership of restored text from the previous cursor. */
|
|
11
11
|
export function resetUndo(sessionId) {
|
|
12
12
|
return { sessionId, hidden: 0, lastRestored: '' };
|
|
13
13
|
}
|
|
14
|
+
/** Durable event payloads are unknown; absent fields must not prevent undoing other closed turns. */
|
|
14
15
|
function asRecord(value) {
|
|
15
16
|
return typeof value === 'object' && value !== null ? value : undefined;
|
|
16
17
|
}
|
|
17
|
-
/**
|
|
18
|
+
/**
|
|
19
|
+
* The draft bar accepts text, not event content blocks; this projection cannot restore non-text content.
|
|
20
|
+
* Newlines keep separate text blocks from running together, without claiming to reproduce the original prompt.
|
|
21
|
+
*/
|
|
18
22
|
function promptText(data) {
|
|
19
23
|
const content = asRecord(data)?.content;
|
|
20
24
|
const parts = [];
|
|
@@ -60,12 +64,13 @@ export function turnsOf(events) {
|
|
|
60
64
|
if (event === undefined)
|
|
61
65
|
continue;
|
|
62
66
|
if (event.type === 'turn/start') {
|
|
63
|
-
|
|
64
|
-
open = { turn: typeof turn === 'number' ? turn : turns.length + 1, startIndex: index, seedCount: index };
|
|
67
|
+
open = { startIndex: index, seedCount: index };
|
|
65
68
|
continue;
|
|
66
69
|
}
|
|
67
70
|
if (open === undefined)
|
|
68
71
|
continue;
|
|
72
|
+
// Keep restored text tied to the earliest direct prompt, whose delivery anchors the divergence cut.
|
|
73
|
+
// Later direct prompts in this bracket remain part of the same hidden turn, not separate undo steps.
|
|
69
74
|
if (open.promptText === undefined && isDirectPrompt(event)) {
|
|
70
75
|
open.promptText = promptText(event.data);
|
|
71
76
|
const id = asRecord(event.data)?.id;
|
|
@@ -78,7 +83,7 @@ export function turnsOf(events) {
|
|
|
78
83
|
}
|
|
79
84
|
if (event.type === 'turn/end') {
|
|
80
85
|
if (open.promptText !== undefined) {
|
|
81
|
-
turns.push({
|
|
86
|
+
turns.push({ seedCount: open.seedCount, promptText: open.promptText });
|
|
82
87
|
}
|
|
83
88
|
open = undefined;
|
|
84
89
|
}
|
package/lib/agent/undo.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"undo.js","sourceRoot":"","sources":["../../src/agent/undo.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"undo.js","sourceRoot":"","sources":["../../src/agent/undo.ts"],"names":[],"mappings":"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"}
|
|
@@ -32,10 +32,10 @@ export interface SubCallFacts {
|
|
|
32
32
|
* A tool that declares a call view is drawn exactly as its own header would be;
|
|
33
33
|
* only a tool with no view at all falls back to its registry name and raw call,
|
|
34
34
|
* because the surface cannot name a salient argument for a schema it never saw.
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
*
|
|
38
|
-
*
|
|
35
|
+
* Prefer the refreshed call view at settlement so the nested header agrees
|
|
36
|
+
* with the tool's current declared header. Keep existing fields where that
|
|
37
|
+
* view omits them, so settling does not discard the name or argument.
|
|
38
|
+
* The row also keeps how the call ended,
|
|
39
39
|
* because a program's calls are told apart by their outcomes rather than by
|
|
40
40
|
* anything the program itself says about them.
|
|
41
41
|
*/
|
|
@@ -43,9 +43,9 @@ export declare function subCallRow(id: string, name: string, argumentsJson: stri
|
|
|
43
43
|
/**
|
|
44
44
|
* The rows one dispatched call keeps, from the card that drew them.
|
|
45
45
|
*
|
|
46
|
-
*
|
|
47
|
-
*
|
|
48
|
-
*
|
|
46
|
+
* Presenter totals preserve the size of detail cut by retention. The total
|
|
47
|
+
* must also cover every retained row, or hidden-line counts would understate
|
|
48
|
+
* what the nested row can show.
|
|
49
49
|
*/
|
|
50
50
|
export declare function subCallRows(card: ToolCard | undefined): ToolSubCallRows | undefined;
|
|
51
51
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"composition.d.ts","sourceRoot":"","sources":["../../src/cards/composition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,eAAe,EAAE,KAAK,QAAQ,EAAY,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"composition.d.ts","sourceRoot":"","sources":["../../src/cards/composition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,eAAe,EAAE,KAAK,QAAQ,EAAY,MAAM,aAAa,CAAA;AAE7F;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,MAAM,CAAA;AAE9B;;;;;;GAMG;AACH,MAAM,WAAW,YAAY;IAC3B,gFAAgF;IAChF,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,SAAS,CAAA;IACnC,8DAA8D;IAC9D,QAAQ,CAAC,MAAM,EAAE,eAAe,GAAG,SAAS,CAAA;IAC5C,+DAA+D;IAC/D,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;IACnC,uDAAuD;IACvD,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,0DAA0D;IAC1D,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;CACzB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,CAAC,EAAE,WAAW,GAAG,WAAW,CAwBpI;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,eAAe,GAAG,SAAS,CAGnF;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,OAAO,GAAG,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,UAAU,GAAG,eAAe,CAAC,CAStI;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,QAAQ,GAAG,SAAS,EAAE,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAqC7F"}
|
package/lib/cards/composition.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { clipLine } from "../cards.js";
|
|
2
|
-
import { title } from "./presenter.js";
|
|
3
2
|
/**
|
|
4
3
|
* Nested calls retained on one PTC card.
|
|
5
4
|
*
|
|
@@ -14,10 +13,10 @@ export const SUBCALL_MAX = 100;
|
|
|
14
13
|
* A tool that declares a call view is drawn exactly as its own header would be;
|
|
15
14
|
* only a tool with no view at all falls back to its registry name and raw call,
|
|
16
15
|
* because the surface cannot name a salient argument for a schema it never saw.
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
16
|
+
* Prefer the refreshed call view at settlement so the nested header agrees
|
|
17
|
+
* with the tool's current declared header. Keep existing fields where that
|
|
18
|
+
* view omits them, so settling does not discard the name or argument.
|
|
19
|
+
* The row also keeps how the call ended,
|
|
21
20
|
* because a program's calls are told apart by their outcomes rather than by
|
|
22
21
|
* anything the program itself says about them.
|
|
23
22
|
*/
|
|
@@ -27,10 +26,9 @@ export function subCallRow(id, name, argumentsJson, facts, existing) {
|
|
|
27
26
|
const skill = view?.skill ?? existing?.skill;
|
|
28
27
|
const raw = view !== undefined || existing !== undefined ? undefined : clipLine(argumentsJson);
|
|
29
28
|
const argument = view?.argument ?? existing?.argument ?? raw;
|
|
30
|
-
//
|
|
31
|
-
//
|
|
32
|
-
//
|
|
33
|
-
// the row to read.
|
|
29
|
+
// Hide the call's declared presentation on failure so a proposed change does
|
|
30
|
+
// not read as confirmed success. Result rows remain available for inspection;
|
|
31
|
+
// failure alone does not establish whether side effects occurred.
|
|
34
32
|
const presented = failed ? undefined : subCallRows(view) ?? existing?.presented;
|
|
35
33
|
// A settle that reports nothing keeps what the row already said about its own
|
|
36
34
|
// outcome, because a call does not stop having finished a certain way.
|
|
@@ -50,9 +48,9 @@ export function subCallRow(id, name, argumentsJson, facts, existing) {
|
|
|
50
48
|
/**
|
|
51
49
|
* The rows one dispatched call keeps, from the card that drew them.
|
|
52
50
|
*
|
|
53
|
-
*
|
|
54
|
-
*
|
|
55
|
-
*
|
|
51
|
+
* Presenter totals preserve the size of detail cut by retention. The total
|
|
52
|
+
* must also cover every retained row, or hidden-line counts would understate
|
|
53
|
+
* what the nested row can show.
|
|
56
54
|
*/
|
|
57
55
|
export function subCallRows(card) {
|
|
58
56
|
if (card === undefined || card.detail.length === 0)
|
|
@@ -90,6 +88,9 @@ export function mergeCards(call, result) {
|
|
|
90
88
|
throw new Error('mergeCards requires at least one card');
|
|
91
89
|
if (call === undefined || result === undefined)
|
|
92
90
|
return base;
|
|
91
|
+
// Generic results also carry fallback text, not necessarily a new rendering
|
|
92
|
+
// intent. Keep the call's specialized treatment so settlement does not lose
|
|
93
|
+
// kind-specific command and status rendering; a specialized result kind wins.
|
|
93
94
|
const kind = result.kind === 'generic' ? call.kind : result.kind;
|
|
94
95
|
// The result, when it names one, knows the argument that was actually acted
|
|
95
96
|
// on; a terminal result omits it, so the pending call's command is kept. The
|