v0.61.0

Themes

cast ships with 20 color themes for the TUI. The browser UI lists the 19 dark ones; cast-light is terminal-only. The active theme is persisted to ~/.cast/settings.json.

Built-in Themes

ThemeID
Ayuayu
Man pageman (the default, in the terminal and the browser)
Castcast
Cast lightcast-light, for light terminals (TUI only)
Everforesteverforest
Synthwave '84synthwave-84
Catppuccincatppuccin
Draculadracula
GitHubgithub
Gruvboxgruvbox
Kanagawakanagawa
Molokaimolokai
Monokaimonokai
Night Owlnight-owl
Nordnord
One Darkone-dark
Rosé Pinerose-pine
Solarizedsolarized
Tokyo Nighttokyo-night
Tomorrow Nighttomorrow-night

The look

The terminal screen is set like a man page. The speaker is a bold heading in capitals (YOU, AGENT, REASONING), what they said hangs at a four-column indent, and code sits four columns further in. There is no coloured stripe down the side, no gradient and no band behind your turns: weight and case rank things, and state is a mark and a word (* while a tool is done, … while it runs, ✗ … failed when it did not). The header row reads CAST(1), then persona and model, then the version. Colour is held back for the chosen row, commands and paths (one accent, ochre in man), muted secondary text, and red for failure.

Any theme can be used with this look; the theme only supplies the accent, muted, success, warning and error colours.

Readability

Text colours are checked against the background they are drawn on (the terminal's own, when it reports it) and lifted to a 4.5:1 contrast ratio when a theme's palette falls short, so the muted grey of a theme such as Nord stays legible. Set NO_COLOR (to anything but empty) and cast draws no colour at all: bold and underline remain, and meaning is carried by markers (>, [x]/[ ]) and words. A terminal whose locale is set and is not UTF-8 (LANG=C), or CAST_ASCII=1, gets every box, arrow and marker glyph swapped for a one-cell ASCII look-alike (+---+, |, >, ~); CAST_ASCII=0 turns that off.

Changing Themes

Interactive

/theme

Opens a picker showing all themes with the current selection highlighted.

Direct

/theme dracula
/theme nord

CLI

The theme is not settable via CLI flags. Use /theme in the TUI or edit settings.json directly.