← Schema index / Config Reference
tui schema (3751-3900)
Canonical generated docsThis section is generated from
caco config schema --json. The table below preserves the runtime field path, type, required/default markers, and canonical description for every value in this slice.TUI configuration — terminal dashboard settings.
| Field path | Type | Required | Default | Canonical description |
|---|---|---|---|---|
└ tui.themes.graphics.button.scanline.spacing | u32 | optional | 3 | Vertical spacing between scanlines in pixels. |
└ tui.themes.graphics.button.scanline.intensity | f64 | optional | 0.5 | Scanline darkness intensity 0.0–1.0. |
└ tui.themes.graphics.button.scanline.warp | f64 | optional | 0.3 | Sinusoidal warp curvature amount 0.0–1.0. |
└ tui.themes.graphics.button.padding | map | optional | Inner padding in cells inside the border. | |
└ tui.themes.graphics.button.padding.top | u16 | optional | 0 | Cells of padding above content. |
└ tui.themes.graphics.button.padding.bottom | u16 | optional | 0 | Cells of padding below content. |
└ tui.themes.graphics.button.padding.left | u16 | optional | 0 | Cells of padding left of content. |
└ tui.themes.graphics.button.padding.right | u16 | optional | 0 | Cells of padding right of content. |
└ tui.themes.graphics.button.disable_on_scroll | bool | optional | Temporarily fall back to ASCII on scroll. | |
└ tui.themes.graphics.button.min_height | u16 | optional | 1 | Minimum button height in cells. 1 = compact pill mode, 3+ = bordered mode. |
└ tui.themes.graphics.button.button_decoration_style | string | optional | pill | Compact button decoration style: none, glow, box, pill, glass_pill. Used for 1-2 row buttons. |
└ tui.themes.graphics.button.animation_phase_offset | f32 | optional | 0.0 | Additive phase offset for animation cycle 0.0–1.0. |
└ tui.themes.graphics.button.overrides | map[string, map] | optional | Per-instance style overrides keyed by instance name. Each value accepts the same fields as the parent style. | |
└ tui.themes.graphics.button.active_overrides | map | optional | Active/selected-state style overrides. | |
└ tui.themes.graphics.button.inactive_overrides | map | optional | Inactive-state style overrides for tab roles. | |
└ tui.themes.graphics.button.focused_overrides | map | optional | Focused-state style overrides. | |
└ tui.themes.graphics.button_padding | u16 | map | optional | Button padding: uniform integer or { top, left, bottom, right } map. | |
└ tui.themes.ghostty | map | optional | Ghostty host-terminal settings for this theme, e.g. a per-theme window background. | |
└ tui.themes.ghostty.background | string | optional | Ghostty window background color for this theme (hex). | |
└ tui.themes.ghostty.shader | map | optional | Live Ghostty custom-shader effects. Loads the bundled Lumen shader through caco.ghostty and streams TUI state through reserved palette slots 160-255; direct Ghostty hosts only. | |
└ tui.themes.ghostty.shader.enable | bool | optional | false | Enable the live shader. |
└ tui.themes.ghostty.shader.path | string | optional | Explicit .glsl shader; receives the same palette payload. Defaults to the bundled Lumen shader. | |
└ tui.themes.ghostty.shader.animation | bool | optional | true | Ghostty custom-shader-animation: animate the focused surface every display frame. |
└ tui.themes.ghostty.shader.reduced_motion | bool | optional | false | Bundled shader only: freeze materials, use steady borders and state light, and disable pulses, grain, cursor trails and focus glides. Explicit path shaders are unchanged. |
└ tui.themes.ghostty.shader.intensity | integer | optional | 100 | Overall effect strength percentage, 0-200. |
└ tui.themes.ghostty.shader.accent | string | optional | Primary light colour (hex). Defaults to the theme accent. | |
└ tui.themes.ghostty.shader.secondary | string | optional | Secondary light colour (hex). Defaults to the theme purple. | |
└ tui.themes.ghostty.shader.reactive | bool | optional | true | Drive energy and event pulses from live fleet activity. |
└ tui.themes.ghostty.shader.effects | map | optional | Individual effect layers; omitted layers are enabled. | |
└ tui.themes.ghostty.shader.effects.bloom | bool | optional | true | Neon bloom around saturated, luminous UI chrome. |
└ tui.themes.ghostty.shader.effects.aurora | bool | optional | true | Aurora light inside the focused pane, scaled by fleet energy. |
└ tui.themes.ghostty.shader.effects.spotlight | bool | optional | true | Gently dim panes other than the focused one. |
└ tui.themes.ghostty.shader.effects.ripple | bool | optional | true | Refracting light waves for fleet events. |
└ tui.themes.ghostty.shader.effects.halo | bool | optional | true | Halo and travelling light around the focused pane border. |
└ tui.themes.ghostty.shader.effects.vignette | bool | optional | true | Soft edge vignette. |
└ tui.themes.ghostty.shader.effects.cursor_trail | bool | optional | true | Light trail behind the visible text cursor. |
└ tui.themes.ghostty.shader.effects.input | bool | optional | true | Pointer, click and keystroke effects for every look. |
└ tui.themes.ghostty.shader.effects.text | bool | optional | true | Arriving text drawing in and the freshest arrival glowing, for every look. |
└ tui.themes.ghostty.shader.preset | string | optional | lumen | Look preset for omitted settings: lumen, subtle, calm, minimal, glass, neon, crt, synthwave, vapor, prism, cosmos, abyss, winter, forge, storm, mainframe, matrix, amber, noir, blueprint, gridrunner, lava, fireflies, rainfall, sonar, netrunner, zen, cathedral, singularity, festival, biolab, inkwell, hologram, deepsea, arcade, observatory, quicksilver, opaline, reef, sumi, synapse, atelier, loom, kaleidoscope, press, foundry, bitmap, banknote, marquee, comic. |
└ tui.themes.ghostty.shader.grade | string | optional | Whole-frame colour grade: none, noir, amber, green, duotone, vapor, teal_orange, sepia, infrared. Defaults to the preset's. | |
└ tui.themes.ghostty.shader.render | string | optional | How the shader's own light is drawn, leaving text crisp: none, halftone, engrave, led, toon, dither, riso. Defaults to the preset's. | |
└ tui.themes.ghostty.shader.quality | string | optional | balanced | Render quality: low (8 bloom taps), balanced (16), high (24). |
└ tui.themes.ghostty.shader.resolution | string | optional | auto | Light-layer resolution: full, half (once per 2x2 pixels), auto (half on HiDPI). |
└ tui.themes.ghostty.shader.speed | integer | optional | 100 | Ambient animation speed percentage, 25-400. |
└ tui.themes.ghostty.shader.tuning | map | optional | Per-layer strengths; omitted values come from the preset. | |
└ tui.themes.ghostty.shader.tuning.bloom | integer | optional | Bloom strength percentage, 0-300. | |
└ tui.themes.ghostty.shader.tuning.bloom_radius | integer | optional | Bloom radius percentage, 25-300. | |
└ tui.themes.ghostty.shader.tuning.halo | integer | optional | Focus halo and border light strength percentage, 0-300. | |
└ tui.themes.ghostty.shader.tuning.comets | integer | optional | Travelling lights on comet borders, 0-4. | |
└ tui.themes.ghostty.shader.tuning.comet_speed | integer | optional | Border light speed percentage, 10-400. | |
└ tui.themes.ghostty.shader.tuning.materials | integer | optional | Pane material strength percentage, 0-300. | |
└ tui.themes.ghostty.shader.tuning.unfocused_materials | integer | optional | 100 | Scale for every inactive pane material, percent 0-200. |
└ tui.themes.ghostty.shader.tuning.unfocused_borders | integer | optional | 100 | Scale for every inactive pane border, percent 0-200. |
└ tui.themes.ghostty.shader.tuning.events | integer | optional | Event pulse strength percentage, 0-300. | |
└ tui.themes.ghostty.shader.tuning.ripple_reach | integer | optional | Ripple reach as a percentage of the screen diagonal, 10-150. | |
└ tui.themes.ghostty.shader.tuning.spotlight | integer | optional | Dimming of unfocused panes, percent 0-60. | |
└ tui.themes.ghostty.shader.tuning.vignette | integer | optional | Vignette strength percentage, 0-100. | |
└ tui.themes.ghostty.shader.tuning.grain | integer | optional | Film grain strength percentage, 0-100. | |
└ tui.themes.ghostty.shader.tuning.chromatic | integer | optional | Chromatic edge split strength percentage, 0-100. | |
└ tui.themes.ghostty.shader.tuning.backdrop_blur | integer | optional | Blur behind an open modal, percent 0-100. | |
└ tui.themes.ghostty.shader.tuning.backdrop_dim | integer | optional | Dimming behind an open modal, percent 0-100. | |
└ tui.themes.ghostty.shader.tuning.depth | integer | optional | How far the backdrop recedes behind an open modal, percent 0-200. | |
└ tui.themes.ghostty.shader.tuning.shadow | integer | optional | Shadow cast by modals and popups, percent 0-200. | |
└ tui.themes.ghostty.shader.tuning.bloom_threshold | integer | optional | 0 | How bright chrome must be to bloom, percent 0-100. |
└ tui.themes.ghostty.shader.tuning.bloom_tint | integer | optional | 25 | Bloom tint toward the accent, percent 0-100. |
└ tui.themes.ghostty.shader.tuning.sharpen | integer | optional | 0 | Text sharpening, percent 0-100. |
└ tui.themes.ghostty.shader.tuning.border_width | integer | optional | 100 | Border line thickness, percent 25-300. |
└ tui.themes.ghostty.shader.tuning.border_glow | integer | optional | 100 | Border glow spread, percent 25-200. |
└ tui.themes.ghostty.shader.tuning.border_speed | integer | optional | 100 | Breathe, pulse, gradient and wave border speed, percent 10-400. |
└ tui.themes.ghostty.shader.tuning.curvature | integer | optional | CRT screen curvature, percent 0-100. | |
└ tui.themes.ghostty.shader.tuning.grade | integer | optional | Colour grade strength, percent 0-100. | |
└ tui.themes.ghostty.shader.tuning.render | integer | optional | Render style strength, percent 0-100. | |
└ tui.themes.ghostty.shader.tuning.fill | integer | optional | How far materials show between letters in text-dense panes, percent 0-100; 0 lights only empty space. | |
└ tui.themes.ghostty.shader.tuning.unfocused | integer | optional | Strength of the unfocused-pane treatment, percent 0-100. | |
└ tui.themes.ghostty.shader.tuning.input | integer | optional | Strength of pointer, click and keystroke effects, percent 0-200. | |
└ tui.themes.ghostty.shader.surfaces | map | optional | Styles by pane kind: sidebar, chat, terminal, agent, feed, board, dashboard, other, modal, toast, popup. | |
└ tui.themes.ghostty.shader.surfaces.sidebar | map | optional | The navigation sidebar. | |
└ tui.themes.ghostty.shader.surfaces.sidebar.material | string | optional | Interior material: none, aurora, glass, crt, nebula, holo, backlight, sheen, plasma, starfield, matrix, synthwave, ocean, embers, snow, circuit, topo, bokeh, grid, lava, fireflies, sonar, hex, sand, stained, cells, rain, vortex, fireworks, chrome, opal, caustics, ink, neural, watercolor, silk, kaleido. | |
└ tui.themes.ghostty.shader.surfaces.sidebar.border | string | optional | Border light: none, halo, comet, breathe, neon, wave, glow, pulse, gradient, corners, rainbow, electric, marching, double, lightcycle, glyphs, constellation, frost, coals, sketch, membrane, beam, lead, brush, filament, ribbon, pearls, fiber. | |
└ tui.themes.ghostty.shader.surfaces.sidebar.tint | string | optional | Hex tint, accent or secondary. | |
└ tui.themes.ghostty.shader.surfaces.sidebar.strength | integer | optional | Strength percentage, 0-300. | |
└ tui.themes.ghostty.shader.surfaces.sidebar.inactive | map | optional | Look while the pane is not focused. | |
└ tui.themes.ghostty.shader.surfaces.sidebar.inactive.material | string | optional | Interior material while unfocused. | |
└ tui.themes.ghostty.shader.surfaces.sidebar.inactive.border | string | optional | Border light while unfocused. | |
└ tui.themes.ghostty.shader.surfaces.sidebar.inactive.strength | integer | optional | Strength percentage while unfocused, 0-300. | |
└ tui.themes.ghostty.shader.surfaces.chat | map | optional | Chat and inbox panes. | |
└ tui.themes.ghostty.shader.surfaces.chat.material | string | optional | Interior material: none, aurora, glass, crt, nebula, holo, backlight, sheen, plasma, starfield, matrix, synthwave, ocean, embers, snow, circuit, topo, bokeh, grid, lava, fireflies, sonar, hex, sand, stained, cells, rain, vortex, fireworks, chrome, opal, caustics, ink, neural, watercolor, silk, kaleido. | |
└ tui.themes.ghostty.shader.surfaces.chat.border | string | optional | Border light: none, halo, comet, breathe, neon, wave, glow, pulse, gradient, corners, rainbow, electric, marching, double, lightcycle, glyphs, constellation, frost, coals, sketch, membrane, beam, lead, brush, filament, ribbon, pearls, fiber. | |
└ tui.themes.ghostty.shader.surfaces.chat.tint | string | optional | Hex tint, accent or secondary. | |
└ tui.themes.ghostty.shader.surfaces.chat.strength | integer | optional | Strength percentage, 0-300. | |
└ tui.themes.ghostty.shader.surfaces.chat.inactive | map | optional | Look while the pane is not focused. | |
└ tui.themes.ghostty.shader.surfaces.chat.inactive.material | string | optional | Interior material while unfocused. | |
└ tui.themes.ghostty.shader.surfaces.chat.inactive.border | string | optional | Border light while unfocused. | |
└ tui.themes.ghostty.shader.surfaces.chat.inactive.strength | integer | optional | Strength percentage while unfocused, 0-300. | |
└ tui.themes.ghostty.shader.surfaces.terminal | map | optional | Shells and consoles. | |
└ tui.themes.ghostty.shader.surfaces.terminal.material | string | optional | Interior material: none, aurora, glass, crt, nebula, holo, backlight, sheen, plasma, starfield, matrix, synthwave, ocean, embers, snow, circuit, topo, bokeh, grid, lava, fireflies, sonar, hex, sand, stained, cells, rain, vortex, fireworks, chrome, opal, caustics, ink, neural, watercolor, silk, kaleido. | |
└ tui.themes.ghostty.shader.surfaces.terminal.border | string | optional | Border light: none, halo, comet, breathe, neon, wave, glow, pulse, gradient, corners, rainbow, electric, marching, double, lightcycle, glyphs, constellation, frost, coals, sketch, membrane, beam, lead, brush, filament, ribbon, pearls, fiber. | |
└ tui.themes.ghostty.shader.surfaces.terminal.tint | string | optional | Hex tint, accent or secondary. | |
└ tui.themes.ghostty.shader.surfaces.terminal.strength | integer | optional | Strength percentage, 0-300. | |
└ tui.themes.ghostty.shader.surfaces.terminal.inactive | map | optional | Look while the pane is not focused. | |
└ tui.themes.ghostty.shader.surfaces.terminal.inactive.material | string | optional | Interior material while unfocused. | |
└ tui.themes.ghostty.shader.surfaces.terminal.inactive.border | string | optional | Border light while unfocused. | |
└ tui.themes.ghostty.shader.surfaces.terminal.inactive.strength | integer | optional | Strength percentage while unfocused, 0-300. | |
└ tui.themes.ghostty.shader.surfaces.agent | map | optional | Agent detail and session panes. | |
└ tui.themes.ghostty.shader.surfaces.agent.material | string | optional | Interior material: none, aurora, glass, crt, nebula, holo, backlight, sheen, plasma, starfield, matrix, synthwave, ocean, embers, snow, circuit, topo, bokeh, grid, lava, fireflies, sonar, hex, sand, stained, cells, rain, vortex, fireworks, chrome, opal, caustics, ink, neural, watercolor, silk, kaleido. | |
└ tui.themes.ghostty.shader.surfaces.agent.border | string | optional | Border light: none, halo, comet, breathe, neon, wave, glow, pulse, gradient, corners, rainbow, electric, marching, double, lightcycle, glyphs, constellation, frost, coals, sketch, membrane, beam, lead, brush, filament, ribbon, pearls, fiber. | |
└ tui.themes.ghostty.shader.surfaces.agent.tint | string | optional | Hex tint, accent or secondary. | |
└ tui.themes.ghostty.shader.surfaces.agent.strength | integer | optional | Strength percentage, 0-300. | |
└ tui.themes.ghostty.shader.surfaces.agent.inactive | map | optional | Look while the pane is not focused. | |
└ tui.themes.ghostty.shader.surfaces.agent.inactive.material | string | optional | Interior material while unfocused. | |
└ tui.themes.ghostty.shader.surfaces.agent.inactive.border | string | optional | Border light while unfocused. | |
└ tui.themes.ghostty.shader.surfaces.agent.inactive.strength | integer | optional | Strength percentage while unfocused, 0-300. | |
└ tui.themes.ghostty.shader.surfaces.feed | map | optional | Feed, events, timeline, logs and notifications. | |
└ tui.themes.ghostty.shader.surfaces.feed.material | string | optional | Interior material: none, aurora, glass, crt, nebula, holo, backlight, sheen, plasma, starfield, matrix, synthwave, ocean, embers, snow, circuit, topo, bokeh, grid, lava, fireflies, sonar, hex, sand, stained, cells, rain, vortex, fireworks, chrome, opal, caustics, ink, neural, watercolor, silk, kaleido. | |
└ tui.themes.ghostty.shader.surfaces.feed.border | string | optional | Border light: none, halo, comet, breathe, neon, wave, glow, pulse, gradient, corners, rainbow, electric, marching, double, lightcycle, glyphs, constellation, frost, coals, sketch, membrane, beam, lead, brush, filament, ribbon, pearls, fiber. | |
└ tui.themes.ghostty.shader.surfaces.feed.tint | string | optional | Hex tint, accent or secondary. | |
└ tui.themes.ghostty.shader.surfaces.feed.strength | integer | optional | Strength percentage, 0-300. | |
└ tui.themes.ghostty.shader.surfaces.feed.inactive | map | optional | Look while the pane is not focused. | |
└ tui.themes.ghostty.shader.surfaces.feed.inactive.material | string | optional | Interior material while unfocused. | |
└ tui.themes.ghostty.shader.surfaces.feed.inactive.border | string | optional | Border light while unfocused. | |
└ tui.themes.ghostty.shader.surfaces.feed.inactive.strength | integer | optional | Strength percentage while unfocused, 0-300. | |
└ tui.themes.ghostty.shader.surfaces.board | map | optional | Beads, plans, flows and other boards. | |
└ tui.themes.ghostty.shader.surfaces.board.material | string | optional | Interior material: none, aurora, glass, crt, nebula, holo, backlight, sheen, plasma, starfield, matrix, synthwave, ocean, embers, snow, circuit, topo, bokeh, grid, lava, fireflies, sonar, hex, sand, stained, cells, rain, vortex, fireworks, chrome, opal, caustics, ink, neural, watercolor, silk, kaleido. | |
└ tui.themes.ghostty.shader.surfaces.board.border | string | optional | Border light: none, halo, comet, breathe, neon, wave, glow, pulse, gradient, corners, rainbow, electric, marching, double, lightcycle, glyphs, constellation, frost, coals, sketch, membrane, beam, lead, brush, filament, ribbon, pearls, fiber. | |
└ tui.themes.ghostty.shader.surfaces.board.tint | string | optional | Hex tint, accent or secondary. | |
└ tui.themes.ghostty.shader.surfaces.board.strength | integer | optional | Strength percentage, 0-300. | |
└ tui.themes.ghostty.shader.surfaces.board.inactive | map | optional | Look while the pane is not focused. | |
└ tui.themes.ghostty.shader.surfaces.board.inactive.material | string | optional | Interior material while unfocused. | |
└ tui.themes.ghostty.shader.surfaces.board.inactive.border | string | optional | Border light while unfocused. | |
└ tui.themes.ghostty.shader.surfaces.board.inactive.strength | integer | optional | Strength percentage while unfocused, 0-300. | |
└ tui.themes.ghostty.shader.surfaces.dashboard | map | optional | Status, overview and fleet dashboards. | |
└ tui.themes.ghostty.shader.surfaces.dashboard.material | string | optional | Interior material: none, aurora, glass, crt, nebula, holo, backlight, sheen, plasma, starfield, matrix, synthwave, ocean, embers, snow, circuit, topo, bokeh, grid, lava, fireflies, sonar, hex, sand, stained, cells, rain, vortex, fireworks, chrome, opal, caustics, ink, neural, watercolor, silk, kaleido. | |
└ tui.themes.ghostty.shader.surfaces.dashboard.border | string | optional | Border light: none, halo, comet, breathe, neon, wave, glow, pulse, gradient, corners, rainbow, electric, marching, double, lightcycle, glyphs, constellation, frost, coals, sketch, membrane, beam, lead, brush, filament, ribbon, pearls, fiber. | |
└ tui.themes.ghostty.shader.surfaces.dashboard.tint | string | optional | Hex tint, accent or secondary. | |
└ tui.themes.ghostty.shader.surfaces.dashboard.strength | integer | optional | Strength percentage, 0-300. | |
└ tui.themes.ghostty.shader.surfaces.dashboard.inactive | map | optional | Look while the pane is not focused. | |
└ tui.themes.ghostty.shader.surfaces.dashboard.inactive.material | string | optional | Interior material while unfocused. | |
└ tui.themes.ghostty.shader.surfaces.dashboard.inactive.border | string | optional | Border light while unfocused. | |
└ tui.themes.ghostty.shader.surfaces.dashboard.inactive.strength | integer | optional | Strength percentage while unfocused, 0-300. | |
└ tui.themes.ghostty.shader.surfaces.other | map | optional | Every other pane. | |
└ tui.themes.ghostty.shader.surfaces.other.material | string | optional | Interior material: none, aurora, glass, crt, nebula, holo, backlight, sheen, plasma, starfield, matrix, synthwave, ocean, embers, snow, circuit, topo, bokeh, grid, lava, fireflies, sonar, hex, sand, stained, cells, rain, vortex, fireworks, chrome, opal, caustics, ink, neural, watercolor, silk, kaleido. | |
└ tui.themes.ghostty.shader.surfaces.other.border | string | optional | Border light: none, halo, comet, breathe, neon, wave, glow, pulse, gradient, corners, rainbow, electric, marching, double, lightcycle, glyphs, constellation, frost, coals, sketch, membrane, beam, lead, brush, filament, ribbon, pearls, fiber. | |
└ tui.themes.ghostty.shader.surfaces.other.tint | string | optional | Hex tint, accent or secondary. | |
└ tui.themes.ghostty.shader.surfaces.other.strength | integer | optional | Strength percentage, 0-300. | |
└ tui.themes.ghostty.shader.surfaces.other.inactive | map | optional | Look while the pane is not focused. | |
└ tui.themes.ghostty.shader.surfaces.other.inactive.material | string | optional | Interior material while unfocused. | |
└ tui.themes.ghostty.shader.surfaces.other.inactive.border | string | optional | Border light while unfocused. | |
└ tui.themes.ghostty.shader.surfaces.other.inactive.strength | integer | optional | Strength percentage while unfocused, 0-300. | |
└ tui.themes.ghostty.shader.surfaces.modal | map | optional | Modal dialogs. | |
└ tui.themes.ghostty.shader.surfaces.modal.material | string | optional | Interior material: none, aurora, glass, crt, nebula, holo, backlight, sheen, plasma, starfield, matrix, synthwave, ocean, embers, snow, circuit, topo, bokeh, grid, lava, fireflies, sonar, hex, sand, stained, cells, rain, vortex, fireworks, chrome, opal, caustics, ink, neural, watercolor, silk, kaleido. |