Slatewave (kitty)
May 4, 2026 · View on GitHub
Slatewave (kitty)
A Slatewave theme for kitty — slate foundation, teal signature. Part of the Slatewave family — one palette across editors, terminals, prompts, notes, and more.
Slate below, teal above.
What it styles
Slatewave for kitty ships as two files. Pick one:
slatewave.conf— palette only. Colors, cursor tint, selection, URL hover, window borders, tab bar, marks, and all 16 ANSI slots. Composes with whatever font, window, and cursor-shape settings you already have.slatewave-full.conf— palette + opinionated typography. Includesslatewave.conf, then adds Hack Nerd Font Mono at 14pt, a non-blinking block cursor, and a fully opaque, unblurred window. Use this if you want the whole Slatewave house style in one include.
The palette itself is tuned against kitty's full color schema — not just the 16 ANSI colors. It sets:
- ANSI 0–15 — mirrored from the VSCode Slatewave terminal block so
ls --color,git diff, and 256-color TUIs all read identically across your editor and terminal - Background — slate
#282c34, matching the VSCode editor background - Foreground — slate-200
#e2e8f0, matching the VSCode editor foreground - Cursor — teal
#5eead4with slate-background text, so the block cursor stays legible - Selection — slate-700
#334155with slate-200 text, for a calm, non-competing highlight - URL hover — sky
#38bdf8, matching link accents in the editor - Window borders — teal
#5eead4on the focused split, slate-700#334155on inactive splits, amber#fbbf24for the bell border - macOS / Wayland titlebar — tinted to the slate background so the chrome blends with the terminal
- Tab bar — teal-on-slate for the active tab, slate-300 on the editor background for inactive, chrome
#21252bfor the bar itself (matching the VSCode activity bar) - Marks — rose / amber / sky for
mark1/mark2/mark3, mirroring the editor's error / warning / info accents
Installation
With the Slatewave CLI (recommended)
brew tap kevinlangleyjr/slatewave
brew install slatewave
slatewave install kitty
Installs the full bundle (palette + Hack Nerd Font Mono + block cursor + opaque window), drops both theme files into ~/.config/kitty/, and adds include slatewave-full.conf to your kitty.conf. Reload with cmd+ctrl+, (macOS) or ctrl+shift+F5 (Linux/Windows). To remove cleanly: slatewave uninstall kitty.
Manual — palette + typography (slatewave-full.conf)
The full bundle includes slatewave.conf and layers font / cursor / window defaults on top, so you need both files in the same directory. Requires Hack Nerd Font — specifically the Mono variant, so Nerd icons stay single-cell in lazygit, btop, and ls.
mkdir -p ~/.config/kitty
curl -fsSL https://raw.githubusercontent.com/kevinlangleyjr/kitty-slatewave/main/slatewave-full.conf \
-o ~/.config/kitty/slatewave-full.conf
curl -fsSL https://raw.githubusercontent.com/kevinlangleyjr/kitty-slatewave/main/slatewave.conf \
-o ~/.config/kitty/slatewave.conf
Then in ~/.config/kitty/kitty.conf:
include slatewave-full.conf
Reload with cmd+ctrl+, (macOS) or ctrl+shift+F5 (Linux/Windows) — no restart needed.
Manual — palette only (slatewave.conf)
If you don't want the typography opinions and just want the colors, drop only the base palette:
mkdir -p ~/.config/kitty
curl -fsSL https://raw.githubusercontent.com/kevinlangleyjr/kitty-slatewave/main/slatewave.conf \
-o ~/.config/kitty/slatewave.conf
Then in ~/.config/kitty/kitty.conf:
include slatewave.conf
From a local clone
git clone https://github.com/kevinlangleyjr/kitty-slatewave
cp kitty-slatewave/slatewave.conf ~/.config/kitty/
cp kitty-slatewave/slatewave-full.conf ~/.config/kitty/ # optional
Inline
If you'd rather not manage a separate theme file, paste the contents of slatewave.conf directly into your ~/.config/kitty/kitty.conf — every option is a top-level kitty config key.
Palette
Slatewave shares its palette with the companion themes. The anchor colors:
| Hex | Tailwind | Role | |
|---|---|---|---|
![]() | #282c34 | — | background, inactive tab |
![]() | #21252b | — | tab bar |
![]() | #334155 | slate-700 | selection, inactive border |
![]() | #1e293b | slate-800 | ANSI 0 (black) |
![]() | #cbd5e1 | slate-300 | inactive tab text |
![]() | #e2e8f0 | slate-200 | foreground, ANSI 7 (white) |
![]() | #5eead4 | teal-300 | cursor, active tab, active border, ANSI 2 (green) |
![]() | #99f6e4 | teal-200 | ANSI 10 (bright green) |
![]() | #7dd3fc | sky-300 | ANSI 12 (bright blue) |
![]() | #38bdf8 | sky-400 | url hover, mark3, ANSI 4 (blue) |
![]() | #b388ff | — | ANSI 5 (magenta) |
![]() | #fb7185 | rose-400 | mark1, ANSI 1 (red) |
![]() | #fbbf24 | amber-400 | bell border, mark2, ANSI 11 (bright yellow) |
ANSI mapping
Mirrors the terminal.ansi* block from vscode-slatewave so shell output is consistent across editor and terminal.
| Slot | Normal | Bright |
|---|---|---|
| Black | #1e293b slate-800 | #475569 slate-600 |
| Red | #fb7185 rose-400 | #ef5350 |
| Green | #5eead4 teal-300 | #99f6e4 teal-200 |
| Yellow | #b45309 amber-700 | #fbbf24 amber-400 |
| Blue | #38bdf8 sky-400 | #7dd3fc sky-300 |
| Magenta | #b388ff | #c4b5fd violet-300 |
| Cyan | #0e7490 cyan-700 | #67e8f9 cyan-300 |
| White | #e2e8f0 slate-200 | #f1f5f9 slate-100 |
Customize
The theme file is a plain kitty config fragment — every entry is a top-level option. To override a single color without forking, put the override after the include line in ~/.config/kitty/kitty.conf:
include slatewave.conf
# Override just the cursor
cursor #99f6e4
cursor_text_color #282c34
Later values win in kitty's parse order, so the override takes effect without editing the theme file itself.
Slatewave family
One palette. Every tool.
- Editors — VSCode · JetBrains · Xcode · Sublime Text · Zed · Neovim · Helix
- Terminals — Alacritty · Ghostty · iTerm2 · WezTerm · Windows Terminal
- Prompts — Oh My Posh · Powerlevel10k · Starship
- Multiplexer — tmux
- CLI — bat · delta · LSD · btop
- Notes — Obsidian · Logseq · MarkEdit · Anytype
- Launchers — Alfred · Raycast
- Chat — Slack
See getslatewave.com for the full family.
Contributing
Issues and PRs welcome. For palette changes, include a before/after screenshot of the same terminal session (ls --color, git diff, a TUI like lazygit or btop) so the visual tradeoff is obvious.
License
WTFPL — Do What The Fuck You Want To Public License. See LICENSE.












