Color Schemes
Kitty supports 256 colors, true color (24-bit), and wide gamut color spaces like OKLCH and CIE LAB. You can apply themes manually in kitty.conf or use the built-in themes kitten.
Core Idea
Kitty uses a color stack protocol where applications can push and pop color values dynamically. Combined with GPU rendering, this enables smooth gradients and accurate wide-gamut color reproduction.
The Color Table
Kitty defines 16 standard ANSI colors plus foreground, background, selection, and cursor colors:
~/.config/kitty/kitty.conf
# Standard 16-color palette
foreground #cdd6f4
background #1e1e2e
color0 #45475a # black
color1 #f38ba8 # red
color2 #a6e3a1 # green
color3 #f9e2af # yellow
color4 #89b4fa # blue
color5 #cba6f7 # magenta
color6 #94e2d5 # cyan
color7 #bac2de # white
color8 #585b70 # bright black
color9 #f38ba8 # bright red
color10 #a6e3a1 # bright green
color11 #f9e2af # bright yellow
color12 #89b4fa # bright blue
color13 #cba6f7 # bright magenta
color14 #94e2d5 # bright cyan
color15 #a6adc8 # bright white
Extended Color Space
Kitty supports 24-bit true color natively and can use the color_stack protocol for dynamic color changes:
# No special configuration needed — true color works by default
# 24-bit hex values (#rrggbb) are fully supported
| Color feature | Supported | Notes |
|---|---|---|
| 16 ANSI colors | ✅ | color0 through color15 |
| 256-color xterm palette | ✅ | |
| 24-bit true color (#rrggbb) | ✅ | Default |
| Wide gamut (OKLCH, CIE LAB) | ✅ | Via color_space option |
| Color stack protocol | ✅ | Applications can push/pop colors |
Using the Themes Kitten
Kitty ships with a built-in themes browser:
# launch the interactive theme picker
kitty +kitten themes
# inside the picker:
# ↑/↓ to browse
# Enter to select
# Esc to cancel
# the chosen theme is appended to kitty.conf
# reload to apply
kitty @ load-config
tip
The themes kitten downloads themes from the kitty-themes GitHub repo. Run it periodically to get new themes.
Popular Theme: Catppuccin Mocha
catppuccin-mocha.conf
# Save as ~/.config/kitty/catppuccin-mocha.conf
# Include in kitty.conf: include catppuccin-mocha.conf
foreground #cdd6f4
background #1e1e2e
selection_foreground #1e1e2e
selection_background #f5e0dc
color0 #45475a
color1 #f38ba8
color2 #a6e3a1
color3 #f9e2af
color4 #89b4fa
color5 #cba6f7
color6 #94e2d5
color7 #bac2de
color8 #585b70
color9 #f38ba8
color10 #a6e3a1
color11 #f9e2af
color12 #89b4fa
color13 #cba6f7
color14 #94e2d5
color15 #a6adc8
cursor #f5e0dc
cursor_text_color #1e1e2e
Popular Theme: Tokyo Night Storm
tokyo-night-storm.conf
foreground #c0caf5
background #24283b
selection_foreground #c0caf5
selection_background #364a82
color0 #1d202f
color1 #f7768e
color2 #9ece6a
color3 #e0af68
color4 #7aa2f7
color5 #bb9af7
color6 #7dcfff
color7 #a9b1d6
color8 #414868
color9 #f7768e
color10 #9ece6a
color11 #e0af68
color12 #7aa2f7
color13 #bb9af7
color14 #7dcfff
color15 #c0caf5
Organizing Themes with Include
~/.config/kitty/kitty.conf
# Include theme files (path relative to kitty.conf directory)
include catppuccin-mocha.conf
# Or absolute path
include ~/.config/kitty/themes/catppuccin-mocha.conf
Wide Gamut Color Space
# Enable wide gamut color space
color_space oklch
# Other options: srgb (default), displayp3, oklab, cielab
| Color space | Gamut | Best for |
|---|---|---|
srgb | Standard | Default, maximum compatibility |
displayp3 | Wider than sRGB | Modern displays (Apple, high-end monitors) |
oklch | Perceptually uniform | Accurate color gradients |
cielab | Device-independent | Color-critical workflows |
Common Pitfalls
| Pitfall | Symptom | Fix |
|---|---|---|
| Theme file not loading | Colors unchanged | Use absolute path in include, or check file location |
| Colors look washed out | Terminal doesn't support 24-bit | Kitty does by default — check SSH TERM is xterm-256color |
| Color stack not working | App colors reset unexpectedly | Only some terminals/SSH clients support the protocol |
include path wrong | File not found error | Paths are relative to kitty.conf directory |
Hands-On Practice
# browse and install a theme interactively
kitty +kitten themes
# manually apply a dark theme
cat > ~/.config/kitty/dracula.conf << 'EOF'
foreground #f8f8f2
background #282a36
color0 #21222c
color1 #ff5555
color2 #50fa7b
color3 #f1fa8c
color4 #bd93f9
color5 #ff79c6
color6 #8be9fd
color7 #f8f8f2
color8 #6272a4
color9 #ff6e6e
color10 #69ff94
color11 #ffffa5
color12 #d6acff
color13 #ff92df
color14 #a4ffff
color15 #ffffff
EOF
# include it in config
echo "include dracula.conf" >> ~/.config/kitty/kitty.conf
kitty @ load-config