Claude Code is mostly prose. Tool output, reasoning, permission prompts — I read paragraphs of it for hours every day. Most terminal themes are optimized for syntax highlighting: they maximize contrast on keywords and operators. That's the wrong target when your screen is 80% English sentences at body size.
I built klein-blue to fix that. Four Terminal.app themes built around Yves Klein's IKB pigment — tuned specifically for the ANSI slots Claude Code uses, with APCA contrast verified per semantic role.
The design problem with pure IKB is that it fails as text on a dark ground: APCA Lc -12, effectively invisible. The whole point of Klein's 1960 registration was the depth of that blue — the void quality. Losing it entirely wasn't acceptable. So I split it across two ANSI slots: pure IKB in ansi:blue for decorative borders and highlights where legibility isn't the requirement, and a lifted Klein-family blue (hex A8BEF0) in ansi:blueBright for permission-prompt text where it is.
The contrast system uses APCA Lc gates per semantic role: body >= 90, subtle >= 75, muted >= 45, accent >= 60. Klein Void Prot (V3) is the only variation where every accent slot clears strict gates. The others make deliberate aesthetic trades — Sand & Sea accepts Claude's ansi:redBright brand color as a second hero, Gallery goes maximum void with one blue.
# install
git clone https://github.com/robertnowell/klein-void
cd klein-void && ./install.sh
# then in Claude Code
/theme → dark-ansi
# (without dark-ansi, Claude Code ignores the ANSI palette entirely)
Ships as .terminal profile files for macOS Terminal.app, built from a variation-aware Objective-C builder. CommitMono-Regular for V1 and V3, IBM Plex Mono for V2 and V4, both installed to ~/Library/Fonts/. Fully rollback-able via restore.sh.
Top comments (0)