@sagmans/dsh-tui 0.2.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +282 -25
- package/cordis.patch.yml +14 -0
- package/lib/agent/model.d.ts +26 -0
- package/lib/agent/model.d.ts.map +1 -1
- package/lib/agent/model.js +41 -0
- package/lib/agent/model.js.map +1 -1
- package/lib/agent/projections.d.ts +22 -6
- package/lib/agent/projections.d.ts.map +1 -1
- package/lib/agent/projections.js +21 -10
- package/lib/agent/projections.js.map +1 -1
- package/lib/agent/prompt-history.d.ts +89 -0
- package/lib/agent/prompt-history.d.ts.map +1 -0
- package/lib/agent/prompt-history.js +380 -0
- package/lib/agent/prompt-history.js.map +1 -0
- package/lib/agent/status.d.ts +16 -0
- package/lib/agent/status.d.ts.map +1 -1
- package/lib/agent/status.js +3 -0
- package/lib/agent/status.js.map +1 -1
- package/lib/cards.d.ts +1 -1
- package/lib/cards.d.ts.map +1 -1
- package/lib/cards.js +4 -3
- package/lib/cards.js.map +1 -1
- package/lib/gates.d.ts +145 -2
- package/lib/gates.d.ts.map +1 -1
- package/lib/gates.js +335 -40
- package/lib/gates.js.map +1 -1
- package/lib/herdr/client.d.ts +57 -0
- package/lib/herdr/client.d.ts.map +1 -0
- package/lib/herdr/client.js +218 -0
- package/lib/herdr/client.js.map +1 -0
- package/lib/herdr/constants.d.ts +93 -0
- package/lib/herdr/constants.d.ts.map +1 -0
- package/lib/herdr/constants.js +79 -0
- package/lib/herdr/constants.js.map +1 -0
- package/lib/herdr/reporter.d.ts +60 -0
- package/lib/herdr/reporter.d.ts.map +1 -0
- package/lib/herdr/reporter.js +217 -0
- package/lib/herdr/reporter.js.map +1 -0
- package/lib/herdr/state.d.ts +57 -0
- package/lib/herdr/state.d.ts.map +1 -0
- package/lib/herdr/state.js +62 -0
- package/lib/herdr/state.js.map +1 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +631 -118
- package/lib/index.js.map +1 -1
- package/lib/input/actions.d.ts +136 -0
- package/lib/input/actions.d.ts.map +1 -0
- package/lib/input/actions.js +743 -0
- package/lib/input/actions.js.map +1 -0
- package/lib/input/ghost.d.ts +46 -0
- package/lib/input/ghost.d.ts.map +1 -0
- package/lib/input/ghost.js +58 -0
- package/lib/input/ghost.js.map +1 -0
- package/lib/input/keymap-settings.d.ts +21 -0
- package/lib/input/keymap-settings.d.ts.map +1 -0
- package/lib/input/keymap-settings.js +28 -0
- package/lib/input/keymap-settings.js.map +1 -0
- package/lib/input/keymap.d.ts +91 -0
- package/lib/input/keymap.d.ts.map +1 -0
- package/lib/input/keymap.js +172 -0
- package/lib/input/keymap.js.map +1 -0
- package/lib/input/match.d.ts +10 -0
- package/lib/input/match.d.ts.map +1 -0
- package/lib/input/match.js +83 -0
- package/lib/input/match.js.map +1 -0
- package/lib/input/submission.d.ts +29 -1
- package/lib/input/submission.d.ts.map +1 -1
- package/lib/input/submission.js +33 -2
- package/lib/input/submission.js.map +1 -1
- package/lib/input.d.ts +17 -0
- package/lib/input.d.ts.map +1 -0
- package/lib/input.js +27 -0
- package/lib/input.js.map +1 -0
- package/lib/keys-command.d.ts +16 -0
- package/lib/keys-command.d.ts.map +1 -0
- package/lib/keys-command.js +60 -0
- package/lib/keys-command.js.map +1 -0
- package/lib/queue.d.ts +6 -0
- package/lib/queue.d.ts.map +1 -0
- package/lib/queue.js +68 -0
- package/lib/queue.js.map +1 -0
- package/lib/settings-notice.d.ts +19 -0
- package/lib/settings-notice.d.ts.map +1 -0
- package/lib/settings-notice.js +30 -0
- package/lib/settings-notice.js.map +1 -0
- package/lib/stash/lock.d.ts +72 -0
- package/lib/stash/lock.d.ts.map +1 -0
- package/lib/stash/lock.js +374 -0
- package/lib/stash/lock.js.map +1 -0
- package/lib/stash/paths.d.ts +22 -0
- package/lib/stash/paths.d.ts.map +1 -0
- package/lib/stash/paths.js +83 -0
- package/lib/stash/paths.js.map +1 -0
- package/lib/stash/private-fs.d.ts +61 -0
- package/lib/stash/private-fs.d.ts.map +1 -0
- package/lib/stash/private-fs.js +379 -0
- package/lib/stash/private-fs.js.map +1 -0
- package/lib/stash/schema.d.ts +57 -0
- package/lib/stash/schema.d.ts.map +1 -0
- package/lib/stash/schema.js +127 -0
- package/lib/stash/schema.js.map +1 -0
- package/lib/stash/store.d.ts +92 -0
- package/lib/stash/store.d.ts.map +1 -0
- package/lib/stash/store.js +262 -0
- package/lib/stash/store.js.map +1 -0
- package/lib/stash.d.ts +91 -0
- package/lib/stash.d.ts.map +1 -0
- package/lib/stash.js +296 -0
- package/lib/stash.js.map +1 -0
- package/lib/theme-settings.d.ts +72 -8
- package/lib/theme-settings.d.ts.map +1 -1
- package/lib/theme-settings.js +125 -5
- package/lib/theme-settings.js.map +1 -1
- package/lib/theme-tokens.d.ts +4 -4
- package/lib/theme-tokens.d.ts.map +1 -1
- package/lib/theme-tokens.js +39 -5
- package/lib/theme-tokens.js.map +1 -1
- package/lib/todo-guard.d.ts +116 -0
- package/lib/todo-guard.d.ts.map +1 -0
- package/lib/todo-guard.js +259 -0
- package/lib/todo-guard.js.map +1 -0
- package/lib/ui/editor.d.ts +58 -1
- package/lib/ui/editor.d.ts.map +1 -1
- package/lib/ui/editor.js +174 -19
- package/lib/ui/editor.js.map +1 -1
- package/lib/ui/frame.d.ts +54 -0
- package/lib/ui/frame.d.ts.map +1 -0
- package/lib/ui/frame.js +79 -0
- package/lib/ui/frame.js.map +1 -0
- package/lib/ui/gate-input.d.ts +20 -0
- package/lib/ui/gate-input.d.ts.map +1 -0
- package/lib/ui/gate-input.js +96 -0
- package/lib/ui/gate-input.js.map +1 -0
- package/lib/ui/history-picker.d.ts +15 -0
- package/lib/ui/history-picker.d.ts.map +1 -0
- package/lib/ui/history-picker.js +26 -0
- package/lib/ui/history-picker.js.map +1 -0
- package/lib/ui/markdown.d.ts +11 -2
- package/lib/ui/markdown.d.ts.map +1 -1
- package/lib/ui/markdown.js +25 -6
- package/lib/ui/markdown.js.map +1 -1
- package/lib/ui/mermaid.d.ts +44 -0
- package/lib/ui/mermaid.d.ts.map +1 -0
- package/lib/ui/mermaid.js +178 -0
- package/lib/ui/mermaid.js.map +1 -0
- package/lib/ui/picker.d.ts +40 -8
- package/lib/ui/picker.d.ts.map +1 -1
- package/lib/ui/picker.js +79 -24
- package/lib/ui/picker.js.map +1 -1
- package/lib/ui/prompt.d.ts +32 -0
- package/lib/ui/prompt.d.ts.map +1 -0
- package/lib/ui/prompt.js +49 -0
- package/lib/ui/prompt.js.map +1 -0
- package/lib/ui/queue.d.ts +24 -0
- package/lib/ui/queue.d.ts.map +1 -0
- package/lib/ui/queue.js +57 -0
- package/lib/ui/queue.js.map +1 -0
- package/lib/ui/stash-picker.d.ts +43 -0
- package/lib/ui/stash-picker.d.ts.map +1 -0
- package/lib/ui/stash-picker.js +78 -0
- package/lib/ui/stash-picker.js.map +1 -0
- package/lib/ui/status.d.ts +6 -0
- package/lib/ui/status.d.ts.map +1 -1
- package/lib/ui/status.js +15 -0
- package/lib/ui/status.js.map +1 -1
- package/lib/ui/view.d.ts +22 -2
- package/lib/ui/view.d.ts.map +1 -1
- package/lib/ui/view.js +84 -24
- package/lib/ui/view.js.map +1 -1
- package/lib/work.d.ts +51 -1
- package/lib/work.d.ts.map +1 -1
- package/lib/work.js +53 -1
- package/lib/work.js.map +1 -1
- package/package.json +7 -2
package/lib/theme-settings.d.ts
CHANGED
|
@@ -1,9 +1,14 @@
|
|
|
1
|
+
import type { KeyId } from '@earendil-works/pi-tui';
|
|
1
2
|
import z from '@deepseek-ai/schemastery';
|
|
3
|
+
import { type Keymap } from './input/actions.ts';
|
|
2
4
|
import { type PaletteName, type StyleSpec, type TuiToken } from './theme-tokens.ts';
|
|
3
5
|
/** Settings namespace owned by the terminal surface. */
|
|
4
6
|
export declare const TUI_SETTINGS_NAMESPACE = "dsh-tui";
|
|
5
7
|
/** How nested PTC calls draw: nothing beyond the card, or one indented line per dispatched call. */
|
|
6
8
|
export type SubCallDisplay = 'collapsed' | 'inline';
|
|
9
|
+
/** How a reply's mermaid fences draw: never, once settled, or as the reply streams. */
|
|
10
|
+
export declare const MERMAID_MODES: readonly ["off", "final", "streaming"];
|
|
11
|
+
export type MermaidMode = (typeof MERMAID_MODES)[number];
|
|
7
12
|
/**
|
|
8
13
|
* The schema the harness registers.
|
|
9
14
|
*
|
|
@@ -28,7 +33,7 @@ export declare const TuiSettingsSchema: z<Schemastery.ObjectS<{
|
|
|
28
33
|
strike: z<boolean, boolean>;
|
|
29
34
|
glyph: z<string, string>;
|
|
30
35
|
hidden: z<boolean, boolean>;
|
|
31
|
-
inherit: z<"transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.cwd" | "status.separator" | "editor.border" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch", "transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.cwd" | "status.separator" | "editor.border" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch">;
|
|
36
|
+
inherit: z<"transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "markdown.diagram.border" | "markdown.diagram.text" | "markdown.diagram.edge" | "markdown.diagram.edgeLabel" | "markdown.diagram.title" | "markdown.diagram.warning" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.prefix" | "status.back" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.stash" | "status.cwd" | "status.separator" | "editor.border" | "editor.queued" | "editor.queued.more" | "editor.ghost" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch", "transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "markdown.diagram.border" | "markdown.diagram.text" | "markdown.diagram.edge" | "markdown.diagram.edgeLabel" | "markdown.diagram.title" | "markdown.diagram.warning" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.prefix" | "status.back" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.stash" | "status.cwd" | "status.separator" | "editor.border" | "editor.queued" | "editor.queued.more" | "editor.ghost" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch">;
|
|
32
37
|
}>, Schemastery.ObjectT<{
|
|
33
38
|
fg: z<string | number, string | number>;
|
|
34
39
|
bg: z<string | number, string | number>;
|
|
@@ -39,7 +44,7 @@ export declare const TuiSettingsSchema: z<Schemastery.ObjectS<{
|
|
|
39
44
|
strike: z<boolean, boolean>;
|
|
40
45
|
glyph: z<string, string>;
|
|
41
46
|
hidden: z<boolean, boolean>;
|
|
42
|
-
inherit: z<"transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.cwd" | "status.separator" | "editor.border" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch", "transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.cwd" | "status.separator" | "editor.border" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch">;
|
|
47
|
+
inherit: z<"transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "markdown.diagram.border" | "markdown.diagram.text" | "markdown.diagram.edge" | "markdown.diagram.edgeLabel" | "markdown.diagram.title" | "markdown.diagram.warning" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.prefix" | "status.back" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.stash" | "status.cwd" | "status.separator" | "editor.border" | "editor.queued" | "editor.queued.more" | "editor.ghost" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch", "transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "markdown.diagram.border" | "markdown.diagram.text" | "markdown.diagram.edge" | "markdown.diagram.edgeLabel" | "markdown.diagram.title" | "markdown.diagram.warning" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.prefix" | "status.back" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.stash" | "status.cwd" | "status.separator" | "editor.border" | "editor.queued" | "editor.queued.more" | "editor.ghost" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch">;
|
|
43
48
|
}>>;
|
|
44
49
|
}>, Schemastery.ObjectT<{
|
|
45
50
|
[k: string]: z<Schemastery.ObjectS<{
|
|
@@ -52,7 +57,7 @@ export declare const TuiSettingsSchema: z<Schemastery.ObjectS<{
|
|
|
52
57
|
strike: z<boolean, boolean>;
|
|
53
58
|
glyph: z<string, string>;
|
|
54
59
|
hidden: z<boolean, boolean>;
|
|
55
|
-
inherit: z<"transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.cwd" | "status.separator" | "editor.border" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch", "transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.cwd" | "status.separator" | "editor.border" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch">;
|
|
60
|
+
inherit: z<"transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "markdown.diagram.border" | "markdown.diagram.text" | "markdown.diagram.edge" | "markdown.diagram.edgeLabel" | "markdown.diagram.title" | "markdown.diagram.warning" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.prefix" | "status.back" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.stash" | "status.cwd" | "status.separator" | "editor.border" | "editor.queued" | "editor.queued.more" | "editor.ghost" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch", "transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "markdown.diagram.border" | "markdown.diagram.text" | "markdown.diagram.edge" | "markdown.diagram.edgeLabel" | "markdown.diagram.title" | "markdown.diagram.warning" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.prefix" | "status.back" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.stash" | "status.cwd" | "status.separator" | "editor.border" | "editor.queued" | "editor.queued.more" | "editor.ghost" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch">;
|
|
56
61
|
}>, Schemastery.ObjectT<{
|
|
57
62
|
fg: z<string | number, string | number>;
|
|
58
63
|
bg: z<string | number, string | number>;
|
|
@@ -63,10 +68,27 @@ export declare const TuiSettingsSchema: z<Schemastery.ObjectS<{
|
|
|
63
68
|
strike: z<boolean, boolean>;
|
|
64
69
|
glyph: z<string, string>;
|
|
65
70
|
hidden: z<boolean, boolean>;
|
|
66
|
-
inherit: z<"transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.cwd" | "status.separator" | "editor.border" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch", "transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.cwd" | "status.separator" | "editor.border" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch">;
|
|
71
|
+
inherit: z<"transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "markdown.diagram.border" | "markdown.diagram.text" | "markdown.diagram.edge" | "markdown.diagram.edgeLabel" | "markdown.diagram.title" | "markdown.diagram.warning" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.prefix" | "status.back" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.stash" | "status.cwd" | "status.separator" | "editor.border" | "editor.queued" | "editor.queued.more" | "editor.ghost" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch", "transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "markdown.diagram.border" | "markdown.diagram.text" | "markdown.diagram.edge" | "markdown.diagram.edgeLabel" | "markdown.diagram.title" | "markdown.diagram.warning" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.prefix" | "status.back" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.stash" | "status.cwd" | "status.separator" | "editor.border" | "editor.queued" | "editor.queued.more" | "editor.ghost" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch">;
|
|
67
72
|
}>>;
|
|
68
73
|
}>>;
|
|
69
74
|
subcalls: z<"collapsed" | "inline", "collapsed" | "inline">;
|
|
75
|
+
mermaid: z<"off" | "final" | "streaming", "off" | "final" | "streaming">;
|
|
76
|
+
prefix: z<string, string>;
|
|
77
|
+
prefixWindow: z<number, number>;
|
|
78
|
+
keys: z<Schemastery.ObjectS<{
|
|
79
|
+
[k: string]: z<string | string[], string | string[]>;
|
|
80
|
+
}>, Schemastery.ObjectT<{
|
|
81
|
+
[k: string]: z<string | string[], string | string[]>;
|
|
82
|
+
}>>;
|
|
83
|
+
history: z<Schemastery.ObjectS<{
|
|
84
|
+
enabled: z<boolean, boolean>;
|
|
85
|
+
ghost: z<boolean, boolean>;
|
|
86
|
+
maxEntries: z<number, number>;
|
|
87
|
+
}>, Schemastery.ObjectT<{
|
|
88
|
+
enabled: z<boolean, boolean>;
|
|
89
|
+
ghost: z<boolean, boolean>;
|
|
90
|
+
maxEntries: z<number, number>;
|
|
91
|
+
}>>;
|
|
70
92
|
}>, Schemastery.ObjectT<{
|
|
71
93
|
palette: z<Schemastery.ObjectS<{
|
|
72
94
|
[k: string]: z<string | number, string | number>;
|
|
@@ -84,7 +106,7 @@ export declare const TuiSettingsSchema: z<Schemastery.ObjectS<{
|
|
|
84
106
|
strike: z<boolean, boolean>;
|
|
85
107
|
glyph: z<string, string>;
|
|
86
108
|
hidden: z<boolean, boolean>;
|
|
87
|
-
inherit: z<"transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.cwd" | "status.separator" | "editor.border" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch", "transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.cwd" | "status.separator" | "editor.border" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch">;
|
|
109
|
+
inherit: z<"transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "markdown.diagram.border" | "markdown.diagram.text" | "markdown.diagram.edge" | "markdown.diagram.edgeLabel" | "markdown.diagram.title" | "markdown.diagram.warning" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.prefix" | "status.back" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.stash" | "status.cwd" | "status.separator" | "editor.border" | "editor.queued" | "editor.queued.more" | "editor.ghost" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch", "transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "markdown.diagram.border" | "markdown.diagram.text" | "markdown.diagram.edge" | "markdown.diagram.edgeLabel" | "markdown.diagram.title" | "markdown.diagram.warning" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.prefix" | "status.back" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.stash" | "status.cwd" | "status.separator" | "editor.border" | "editor.queued" | "editor.queued.more" | "editor.ghost" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch">;
|
|
88
110
|
}>, Schemastery.ObjectT<{
|
|
89
111
|
fg: z<string | number, string | number>;
|
|
90
112
|
bg: z<string | number, string | number>;
|
|
@@ -95,7 +117,7 @@ export declare const TuiSettingsSchema: z<Schemastery.ObjectS<{
|
|
|
95
117
|
strike: z<boolean, boolean>;
|
|
96
118
|
glyph: z<string, string>;
|
|
97
119
|
hidden: z<boolean, boolean>;
|
|
98
|
-
inherit: z<"transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.cwd" | "status.separator" | "editor.border" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch", "transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.cwd" | "status.separator" | "editor.border" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch">;
|
|
120
|
+
inherit: z<"transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "markdown.diagram.border" | "markdown.diagram.text" | "markdown.diagram.edge" | "markdown.diagram.edgeLabel" | "markdown.diagram.title" | "markdown.diagram.warning" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.prefix" | "status.back" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.stash" | "status.cwd" | "status.separator" | "editor.border" | "editor.queued" | "editor.queued.more" | "editor.ghost" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch", "transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "markdown.diagram.border" | "markdown.diagram.text" | "markdown.diagram.edge" | "markdown.diagram.edgeLabel" | "markdown.diagram.title" | "markdown.diagram.warning" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.prefix" | "status.back" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.stash" | "status.cwd" | "status.separator" | "editor.border" | "editor.queued" | "editor.queued.more" | "editor.ghost" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch">;
|
|
99
121
|
}>>;
|
|
100
122
|
}>, Schemastery.ObjectT<{
|
|
101
123
|
[k: string]: z<Schemastery.ObjectS<{
|
|
@@ -108,7 +130,7 @@ export declare const TuiSettingsSchema: z<Schemastery.ObjectS<{
|
|
|
108
130
|
strike: z<boolean, boolean>;
|
|
109
131
|
glyph: z<string, string>;
|
|
110
132
|
hidden: z<boolean, boolean>;
|
|
111
|
-
inherit: z<"transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.cwd" | "status.separator" | "editor.border" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch", "transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.cwd" | "status.separator" | "editor.border" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch">;
|
|
133
|
+
inherit: z<"transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "markdown.diagram.border" | "markdown.diagram.text" | "markdown.diagram.edge" | "markdown.diagram.edgeLabel" | "markdown.diagram.title" | "markdown.diagram.warning" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.prefix" | "status.back" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.stash" | "status.cwd" | "status.separator" | "editor.border" | "editor.queued" | "editor.queued.more" | "editor.ghost" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch", "transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "markdown.diagram.border" | "markdown.diagram.text" | "markdown.diagram.edge" | "markdown.diagram.edgeLabel" | "markdown.diagram.title" | "markdown.diagram.warning" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.prefix" | "status.back" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.stash" | "status.cwd" | "status.separator" | "editor.border" | "editor.queued" | "editor.queued.more" | "editor.ghost" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch">;
|
|
112
134
|
}>, Schemastery.ObjectT<{
|
|
113
135
|
fg: z<string | number, string | number>;
|
|
114
136
|
bg: z<string | number, string | number>;
|
|
@@ -119,18 +141,53 @@ export declare const TuiSettingsSchema: z<Schemastery.ObjectS<{
|
|
|
119
141
|
strike: z<boolean, boolean>;
|
|
120
142
|
glyph: z<string, string>;
|
|
121
143
|
hidden: z<boolean, boolean>;
|
|
122
|
-
inherit: z<"transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.cwd" | "status.separator" | "editor.border" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch", "transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.cwd" | "status.separator" | "editor.border" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch">;
|
|
144
|
+
inherit: z<"transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "markdown.diagram.border" | "markdown.diagram.text" | "markdown.diagram.edge" | "markdown.diagram.edgeLabel" | "markdown.diagram.title" | "markdown.diagram.warning" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.prefix" | "status.back" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.stash" | "status.cwd" | "status.separator" | "editor.border" | "editor.queued" | "editor.queued.more" | "editor.ghost" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch", "transcript.user" | "transcript.notice" | "transcript.marker" | "transcript.reasoning.summary" | "transcript.reasoning.body" | "transcript.reasoning.hint" | "tool.title" | "tool.glyph" | "tool.args" | "tool.stat.added" | "tool.stat.changed" | "tool.stat.removed" | "tool.stat.size" | "tool.stat.separator" | "tool.detail" | "tool.hint" | "tool.failed.title" | "tool.failed.glyph" | "tool.subcall.title" | "tool.subcall.args" | "tool.diff.header" | "tool.diff.hunk" | "tool.diff.added" | "tool.diff.removed" | "tool.read.header" | "tool.read.lineNumber" | "tool.read.line" | "tool.search.path" | "tool.search.lineNumber" | "tool.search.match" | "tool.search.truncated" | "tool.terminal.cwd" | "tool.terminal.status" | "tool.terminal.output" | "tool.web.url" | "tool.web.source" | "tool.web.truncated" | "tool.generic.detail" | "markdown.heading" | "markdown.link" | "markdown.linkUrl" | "markdown.code" | "markdown.codeBlock" | "markdown.codeBlockBorder" | "markdown.quote" | "markdown.quoteBorder" | "markdown.hr" | "markdown.listBullet" | "markdown.bold" | "markdown.italic" | "markdown.strikethrough" | "markdown.underline" | "markdown.diagram.border" | "markdown.diagram.text" | "markdown.diagram.edge" | "markdown.diagram.edgeLabel" | "markdown.diagram.title" | "markdown.diagram.warning" | "picker.title" | "picker.glyph" | "picker.note" | "picker.filter" | "picker.row" | "picker.rowCurrent" | "picker.scrollNewer" | "picker.scrollOlder" | "picker.hint" | "picker.cursor" | "gate.title" | "gate.glyphApproval" | "gate.glyphQuestion" | "gate.detail" | "gate.option" | "gate.optionCurrent" | "gate.cursor" | "gate.hint" | "dock.goal" | "dock.planMode" | "dock.todos.heading" | "dock.todos.pending" | "dock.todos.inProgress" | "dock.todos.overflow" | "dock.subagents.heading" | "dock.subagents.running" | "dock.subagents.overflow" | "dock.jobs.heading" | "dock.jobs.running" | "dock.jobs.overflow" | "status.prefix" | "status.back" | "status.activity.working" | "status.activity.ready" | "status.elapsed" | "status.agentPreset" | "status.model" | "status.effort" | "status.permission" | "status.context" | "status.cache" | "status.stash" | "status.cwd" | "status.separator" | "editor.border" | "editor.queued" | "editor.queued.more" | "editor.ghost" | "editor.selectList.selectedPrefix" | "editor.selectList.selectedText" | "editor.selectList.description" | "editor.selectList.scrollInfo" | "editor.selectList.noMatch">;
|
|
123
145
|
}>>;
|
|
124
146
|
}>>;
|
|
125
147
|
subcalls: z<"collapsed" | "inline", "collapsed" | "inline">;
|
|
148
|
+
mermaid: z<"off" | "final" | "streaming", "off" | "final" | "streaming">;
|
|
149
|
+
prefix: z<string, string>;
|
|
150
|
+
prefixWindow: z<number, number>;
|
|
151
|
+
keys: z<Schemastery.ObjectS<{
|
|
152
|
+
[k: string]: z<string | string[], string | string[]>;
|
|
153
|
+
}>, Schemastery.ObjectT<{
|
|
154
|
+
[k: string]: z<string | string[], string | string[]>;
|
|
155
|
+
}>>;
|
|
156
|
+
history: z<Schemastery.ObjectS<{
|
|
157
|
+
enabled: z<boolean, boolean>;
|
|
158
|
+
ghost: z<boolean, boolean>;
|
|
159
|
+
maxEntries: z<number, number>;
|
|
160
|
+
}>, Schemastery.ObjectT<{
|
|
161
|
+
enabled: z<boolean, boolean>;
|
|
162
|
+
ghost: z<boolean, boolean>;
|
|
163
|
+
maxEntries: z<number, number>;
|
|
164
|
+
}>>;
|
|
126
165
|
}>>;
|
|
127
166
|
/** The reader-facing shape of the `dsh-tui:` section. */
|
|
128
167
|
export declare function parseSettings(raw: unknown): TuiSettings;
|
|
168
|
+
/** The prompt-history affordances and the size the reader allows. */
|
|
169
|
+
export interface HistorySettings {
|
|
170
|
+
/** Whether prompts are recorded and offered at all. */
|
|
171
|
+
readonly enabled: boolean;
|
|
172
|
+
/** Whether the dimmed completion is drawn; reverse search is unaffected. */
|
|
173
|
+
readonly ghost: boolean;
|
|
174
|
+
/** Entries kept, newest first. */
|
|
175
|
+
readonly maxEntries: number;
|
|
176
|
+
}
|
|
129
177
|
/** What the section holds once parsed: only what the reader wrote. */
|
|
130
178
|
export interface TuiSettings {
|
|
131
179
|
readonly palette: Readonly<Partial<Record<PaletteName, string>>>;
|
|
132
180
|
readonly tokens: Readonly<Partial<Record<TuiToken, StyleSpec>>>;
|
|
133
181
|
readonly subcalls: SubCallDisplay;
|
|
182
|
+
readonly mermaid: MermaidMode;
|
|
183
|
+
/** The keys that start a chord; a key the surface answers itself is refused at parse. */
|
|
184
|
+
readonly prefixes: readonly KeyId[];
|
|
185
|
+
/** How long an armed chord waits for its second key, in seconds; zero waits for the next key. */
|
|
186
|
+
readonly prefixWindow: number;
|
|
187
|
+
/** Every action's keys, with the reader's overrides already merged over the shipped ones. */
|
|
188
|
+
readonly keymap: Keymap;
|
|
189
|
+
/** The prompt-history affordances, grouped so one key tunes them together. */
|
|
190
|
+
readonly history: HistorySettings;
|
|
134
191
|
}
|
|
135
192
|
/** The section as it reads when the reader has written nothing. */
|
|
136
193
|
export declare function defaultSettings(): TuiSettings;
|
|
@@ -139,6 +196,13 @@ export interface ThemeOverrides {
|
|
|
139
196
|
readonly palette: Readonly<Record<PaletteName, string>>;
|
|
140
197
|
readonly tokens: ReadonlyMap<TuiToken, StyleSpec>;
|
|
141
198
|
}
|
|
199
|
+
/**
|
|
200
|
+
* One sentence for a section the surface refused.
|
|
201
|
+
*
|
|
202
|
+
* Shared by the stderr fallback and the reader-facing notice so a refusal the
|
|
203
|
+
* schema makes at registration and one the parser makes on a read read alike.
|
|
204
|
+
*/
|
|
205
|
+
export declare function settingsProblemMessage(error: unknown): string;
|
|
142
206
|
/**
|
|
143
207
|
* Read a registered scope's section, or nothing when it cannot be read.
|
|
144
208
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme-settings.d.ts","sourceRoot":"","sources":["../src/theme-settings.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"theme-settings.d.ts","sourceRoot":"","sources":["../src/theme-settings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AACnD,OAAO,CAAC,MAAM,0BAA0B,CAAA;AAGxC,OAAO,EAA4D,KAAK,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAG1G,OAAO,EAIL,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,QAAQ,EACd,MAAM,mBAAmB,CAAA;AAE1B,wDAAwD;AACxD,eAAO,MAAM,sBAAsB,YAAY,CAAA;AA4C/C,oGAAoG;AACpG,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG,QAAQ,CAAA;AAKnD,uFAAuF;AACvF,eAAO,MAAM,aAAa,wCAAyC,CAAA;AACnE,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAA;AA4CxD;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAU,CAAA;AA6CxC,yDAAyD;AACzD,wBAAgB,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,WAAW,CA6DvD;AAQD,qEAAqE;AACrE,MAAM,WAAW,eAAe;IAC9B,uDAAuD;IACvD,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,4EAA4E;IAC5E,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;IACvB,kCAAkC;IAClC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAC5B;AAED,sEAAsE;AACtE,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,CAAA;IAChE,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,CAAA;IAC/D,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAA;IACjC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAA;IAC7B,yFAAyF;IACzF,QAAQ,CAAC,QAAQ,EAAE,SAAS,KAAK,EAAE,CAAA;IACnC,iGAAiG;IACjG,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,6FAA6F;IAC7F,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,8EAA8E;IAC9E,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAA;CAClC;AAED,mEAAmE;AACnE,wBAAgB,eAAe,IAAI,WAAW,CAW7C;AAED,iDAAiD;AACjD,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAA;IACvD,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;CAClD;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAE7D;AAED;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE;IAAE,GAAG,IAAI,OAAO,CAAA;CAAE,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAAG,WAAW,CAiBvG;AA0BD;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,WAAW,GAAG,cAAc,CAMjE"}
|
package/lib/theme-settings.js
CHANGED
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
import z from '@deepseek-ai/schemastery';
|
|
2
|
+
import { DEFAULT_MAX_ENTRIES, MAX_ENTRIES_LIMIT } from "./agent/prompt-history.js";
|
|
3
|
+
import { defaultKeymap, keysFor, resolveKeymap } from "./input/actions.js";
|
|
4
|
+
import { KeymapSectionSchema, isActionId } from "./input/keymap-settings.js";
|
|
5
|
+
import { DEFAULT_PREFIX_KEYS, DEFAULT_PREFIX_WINDOW_S } from "./input/keymap.js";
|
|
2
6
|
import { DEFAULT_PALETTE, PALETTE_NAMES, TUI_TOKENS, } from "./theme-tokens.js";
|
|
3
7
|
/** Settings namespace owned by the terminal surface. */
|
|
4
8
|
export const TUI_SETTINGS_NAMESPACE = 'dsh-tui';
|
|
@@ -38,10 +42,43 @@ const PaletteSchema = z.object(Object.fromEntries(PALETTE_NAMES.map(name => [nam
|
|
|
38
42
|
const TokensSchema = z.object(Object.fromEntries(TUI_TOKENS.map(token => [token, StyleSpecSchema])));
|
|
39
43
|
/** The values the `subcalls` key accepts, declared once for the schema and the refusal message. */
|
|
40
44
|
const SUBCALL_DISPLAYS = ['collapsed', 'inline'];
|
|
45
|
+
/** How a reply's mermaid fences draw: never, once settled, or as the reply streams. */
|
|
46
|
+
export const MERMAID_MODES = ['off', 'final', 'streaming'];
|
|
47
|
+
/** The shipped mode: a diagram draws itself while the reply arrives, without waiting for the turn. */
|
|
48
|
+
const DEFAULT_MERMAID_MODE = 'streaming';
|
|
49
|
+
/** Longest chord window a reader may ask for, so a typo cannot arm one for an hour. */
|
|
50
|
+
const MAX_PREFIX_WINDOW_S = 60;
|
|
51
|
+
/** Prompt history is on, and offers the dimmed completion, until the reader says otherwise. */
|
|
52
|
+
const DEFAULT_HISTORY_ENABLED = true;
|
|
53
|
+
const DEFAULT_HISTORY_GHOST = true;
|
|
54
|
+
/** The history keys, declared once so a typo is refused by name. */
|
|
55
|
+
const HISTORY_KEYS = new Set(['enabled', 'ghost', 'maxEntries']);
|
|
56
|
+
/**
|
|
57
|
+
* The prompt-history affordances.
|
|
58
|
+
*
|
|
59
|
+
* Grouped under one key because they are tuned together: a reader who wants no
|
|
60
|
+
* ghost still keeps reverse search, and one who wants neither stops the store.
|
|
61
|
+
*/
|
|
62
|
+
const HistorySchema = z.object({
|
|
63
|
+
enabled: z.boolean().default(DEFAULT_HISTORY_ENABLED),
|
|
64
|
+
ghost: z.boolean().default(DEFAULT_HISTORY_GHOST),
|
|
65
|
+
maxEntries: z.number().min(1).max(MAX_ENTRIES_LIMIT).default(DEFAULT_MAX_ENTRIES),
|
|
66
|
+
});
|
|
41
67
|
const SECTION = z.object({
|
|
42
68
|
palette: PaletteSchema.default({}),
|
|
43
69
|
tokens: TokensSchema.default({}),
|
|
44
70
|
subcalls: z.union([...SUBCALL_DISPLAYS]).default('inline'),
|
|
71
|
+
mermaid: z.union([...MERMAID_MODES]).default(DEFAULT_MERMAID_MODE),
|
|
72
|
+
// A free string rather than an enumerated union: the keymap module owns which
|
|
73
|
+
// keys exist, and its refusal is the message a reader can act on.
|
|
74
|
+
//
|
|
75
|
+
// No default, unlike the fields around it: a registration fills every declared
|
|
76
|
+
// field, so a default here would hand back the old spelling as written and the
|
|
77
|
+
// reader's own keys.chord.prefix would read as a second spelling of it.
|
|
78
|
+
prefix: z.string(),
|
|
79
|
+
prefixWindow: z.number().min(0).max(MAX_PREFIX_WINDOW_S).default(DEFAULT_PREFIX_WINDOW_S),
|
|
80
|
+
keys: KeymapSectionSchema.default({}),
|
|
81
|
+
history: HistorySchema.default({ enabled: DEFAULT_HISTORY_ENABLED, ghost: DEFAULT_HISTORY_GHOST, maxEntries: DEFAULT_MAX_ENTRIES }),
|
|
45
82
|
});
|
|
46
83
|
/**
|
|
47
84
|
* The schema the harness registers.
|
|
@@ -54,7 +91,7 @@ export const TuiSettingsSchema = SECTION;
|
|
|
54
91
|
const TOKEN_NAMES = new Set(TUI_TOKENS);
|
|
55
92
|
const PALETTE_NAME_SET = new Set(PALETTE_NAMES);
|
|
56
93
|
/** The section's own keys: schemastery keeps what it does not declare, so a misspelling has to be refused here. */
|
|
57
|
-
const SECTION_KEYS = new Set(['palette', 'tokens', 'subcalls']);
|
|
94
|
+
const SECTION_KEYS = new Set(['palette', 'tokens', 'subcalls', 'mermaid', 'prefix', 'prefixWindow', 'keys', 'history']);
|
|
58
95
|
/**
|
|
59
96
|
* Validate the raw section, refusing a name the surface does not have.
|
|
60
97
|
*
|
|
@@ -79,6 +116,14 @@ function rejectUnknownKeys(raw) {
|
|
|
79
116
|
if (unknownPalette.length > 0) {
|
|
80
117
|
throw new Error(`unknown ${TUI_SETTINGS_NAMESPACE} palette entr${unknownPalette.length === 1 ? 'y' : 'ies'}: ${unknownPalette.join(', ')}`);
|
|
81
118
|
}
|
|
119
|
+
const unknownActions = Object.keys(asRecord(section.keys) ?? {}).filter(name => !isActionId(name));
|
|
120
|
+
if (unknownActions.length > 0) {
|
|
121
|
+
throw new Error(`unknown ${TUI_SETTINGS_NAMESPACE} key action${unknownActions.length === 1 ? '' : 's'}: ${unknownActions.join(', ')}`);
|
|
122
|
+
}
|
|
123
|
+
const unknownHistory = Object.keys(asRecord(section.history) ?? {}).filter(name => !HISTORY_KEYS.has(name));
|
|
124
|
+
if (unknownHistory.length > 0) {
|
|
125
|
+
throw new Error('unknown ' + TUI_SETTINGS_NAMESPACE + ' history key' + (unknownHistory.length === 1 ? '' : 's') + ': ' + unknownHistory.join(', '));
|
|
126
|
+
}
|
|
82
127
|
}
|
|
83
128
|
function asRecord(value) {
|
|
84
129
|
return typeof value === 'object' && value !== null ? value : undefined;
|
|
@@ -111,10 +156,34 @@ export function parseSettings(raw) {
|
|
|
111
156
|
continue;
|
|
112
157
|
tokens[name] = parsed.tokens[name] ?? {};
|
|
113
158
|
}
|
|
159
|
+
const writtenKeys = asRecord(section.keys) ?? {};
|
|
160
|
+
// The old spelling and the map set the same key; accepting both would make
|
|
161
|
+
// the document mean two things at once.
|
|
162
|
+
if (section.prefix !== undefined && writtenKeys['chord.prefix'] !== undefined) {
|
|
163
|
+
throw new Error('prefix and keys.chord.prefix set the same key; write keys.chord.prefix alone');
|
|
164
|
+
}
|
|
165
|
+
// Only what the reader wrote reaches the map: the schema fills every action so
|
|
166
|
+
// validation can see a whole section, and a fill-in would report every action
|
|
167
|
+
// as overridden.
|
|
168
|
+
const overrides = {};
|
|
169
|
+
for (const [id, value] of Object.entries(parsed.keys)) {
|
|
170
|
+
if (value !== undefined)
|
|
171
|
+
overrides[id] = value;
|
|
172
|
+
}
|
|
173
|
+
if (parsed.prefix !== undefined)
|
|
174
|
+
overrides['chord.prefix'] = parsed.prefix;
|
|
175
|
+
// Validated here rather than in the schema because every refusal depends on
|
|
176
|
+
// the catalog and on the layers the map already claims, which a schema cannot see.
|
|
177
|
+
const keymap = resolveKeymap(overrides);
|
|
114
178
|
return {
|
|
115
179
|
palette: palette,
|
|
116
180
|
tokens: tokens,
|
|
117
181
|
subcalls: parsed.subcalls,
|
|
182
|
+
mermaid: parsed.mermaid,
|
|
183
|
+
prefixes: keysFor(keymap, 'chord.prefix'),
|
|
184
|
+
prefixWindow: parsed.prefixWindow,
|
|
185
|
+
keymap,
|
|
186
|
+
history: parsed.history,
|
|
118
187
|
};
|
|
119
188
|
}
|
|
120
189
|
/** Whether a resolved spec actually asks for anything. */
|
|
@@ -125,7 +194,25 @@ function hasAnyField(spec) {
|
|
|
125
194
|
}
|
|
126
195
|
/** The section as it reads when the reader has written nothing. */
|
|
127
196
|
export function defaultSettings() {
|
|
128
|
-
return {
|
|
197
|
+
return {
|
|
198
|
+
palette: {},
|
|
199
|
+
tokens: {},
|
|
200
|
+
subcalls: 'inline',
|
|
201
|
+
mermaid: DEFAULT_MERMAID_MODE,
|
|
202
|
+
prefixes: [...DEFAULT_PREFIX_KEYS],
|
|
203
|
+
prefixWindow: DEFAULT_PREFIX_WINDOW_S,
|
|
204
|
+
keymap: defaultKeymap(),
|
|
205
|
+
history: { enabled: DEFAULT_HISTORY_ENABLED, ghost: DEFAULT_HISTORY_GHOST, maxEntries: DEFAULT_MAX_ENTRIES },
|
|
206
|
+
};
|
|
207
|
+
}
|
|
208
|
+
/**
|
|
209
|
+
* One sentence for a section the surface refused.
|
|
210
|
+
*
|
|
211
|
+
* Shared by the stderr fallback and the reader-facing notice so a refusal the
|
|
212
|
+
* schema makes at registration and one the parser makes on a read read alike.
|
|
213
|
+
*/
|
|
214
|
+
export function settingsProblemMessage(error) {
|
|
215
|
+
return `ignoring ${TUI_SETTINGS_NAMESPACE} settings: ${error instanceof Error ? error.message : String(error)}`;
|
|
129
216
|
}
|
|
130
217
|
/**
|
|
131
218
|
* Read a registered scope's section, or nothing when it cannot be read.
|
|
@@ -137,18 +224,51 @@ export function defaultSettings() {
|
|
|
137
224
|
* stderr alone is invisible under the alternate screen.
|
|
138
225
|
*/
|
|
139
226
|
export function readScope(scope, onProblem) {
|
|
227
|
+
let raw = undefined;
|
|
140
228
|
try {
|
|
141
|
-
|
|
229
|
+
raw = scope.get() ?? {};
|
|
230
|
+
return parseSettings(raw);
|
|
142
231
|
}
|
|
143
232
|
catch (error) {
|
|
144
|
-
const message =
|
|
233
|
+
const message = settingsProblemMessage(error);
|
|
145
234
|
if (onProblem === undefined)
|
|
146
235
|
process.stderr.write(`dsh-tui: ${message}\n`);
|
|
147
236
|
else
|
|
148
237
|
onProblem(message);
|
|
149
|
-
|
|
238
|
+
// The rest of the refused section falls back to the shipped table, but
|
|
239
|
+
// recording is a privacy choice: an explicit switch survives a typo
|
|
240
|
+
// somewhere else, and a switch that could not be read stays off rather than
|
|
241
|
+
// quietly turning the store back on.
|
|
242
|
+
const fallback = defaultSettings();
|
|
243
|
+
if (raw === undefined)
|
|
244
|
+
return { ...fallback, history: { ...fallback.history, enabled: false } };
|
|
245
|
+
return { ...fallback, history: salvageHistory(raw) };
|
|
150
246
|
}
|
|
151
247
|
}
|
|
248
|
+
/**
|
|
249
|
+
* The history block as far as it can be read from a refused section.
|
|
250
|
+
*
|
|
251
|
+
* Only the primitive shapes the schema would have accepted are taken; missing
|
|
252
|
+
* and malformed fields fall back to the shipped value, except an unreadable
|
|
253
|
+
* `enabled`, which refuses.
|
|
254
|
+
*/
|
|
255
|
+
function salvageHistory(raw) {
|
|
256
|
+
const fallback = defaultSettings().history;
|
|
257
|
+
const history = asRecord(asRecord(raw)?.history);
|
|
258
|
+
if (history === undefined)
|
|
259
|
+
return fallback;
|
|
260
|
+
const enabled = history.enabled === undefined
|
|
261
|
+
? fallback.enabled
|
|
262
|
+
: typeof history.enabled === 'boolean' ? history.enabled : false;
|
|
263
|
+
const ghost = typeof history.ghost === 'boolean' ? history.ghost : fallback.ghost;
|
|
264
|
+
const maxEntries = typeof history.maxEntries === 'number'
|
|
265
|
+
&& Number.isSafeInteger(history.maxEntries)
|
|
266
|
+
&& history.maxEntries >= 1
|
|
267
|
+
&& history.maxEntries <= MAX_ENTRIES_LIMIT
|
|
268
|
+
? history.maxEntries
|
|
269
|
+
: fallback.maxEntries;
|
|
270
|
+
return { enabled, ghost, maxEntries };
|
|
271
|
+
}
|
|
152
272
|
/**
|
|
153
273
|
* Turn a parsed section into the inputs the resolver takes.
|
|
154
274
|
*
|