pub struct TuiConfig {
pub show_source_labels: bool,
pub tool_density: ToolDensity,
pub motion: Motion,
pub fleet: FleetConfig,
pub theme: ThemeConfig,
pub delights: DelightsConfig,
pub mouse: bool,
pub panel_sizing: PanelSizingMode,
}Expand description
TUI (terminal user interface) configuration, nested under [tui] in TOML.
§Example (TOML)
[tui]
show_source_labels = true
tool_density = "inline"
motion = "full"
[tui.theme]
name = "zephyr"
color_mode = "auto"
[tui.delights]
stream_metrics = true
toasts = true
completion_flash = true
smooth_scroll = true
splash_shimmer = trueFields§
§show_source_labels: boolShow memory source labels (episodic / semantic / graph) in the message view.
Default: false.
tool_density: ToolDensityDefault tool-output density applied at startup.
Runtime changes via the c key are not persisted back to config.
Default: inline.
motion: MotionAnimation budget for the input separator row.
full = wave (default), minimal = breeze spinner, off = static.
fleet: FleetConfigFleet panel configuration (auto-refresh interval and max sessions displayed).
theme: ThemeConfigTheme and colour capability configuration.
delights: DelightsConfigMicro-delight toggles (tok/s, toasts, flash, scroll, shimmer). All default true.
motion = off overrides all toggles regardless of their individual values.
mouse: boolEnable opt-in mouse capture at startup.
When true, the terminal forwards scroll-wheel, click, and drag events to
the TUI. Text selection via Shift+drag still works. Default: false.
panel_sizing: PanelSizingModeSide-panel vertical sizing strategy (#6675).
auto (default) sizes each unpinned side panel from its own content; even
approximates the pre-#6675 behavior of splitting the column equally regardless of
content (same total per slot; exact per-slot remainder placement can differ from the
old cassowary-based split — see zeph_tui::layout::PanelDemand’s docs). Runtime-
togglable via /panel_sizing [auto|even].