ConfigsApr 14, 2026·3 min read

kitty — The Fast, Feature-Rich Terminal with GPU Rendering and Image Protocol

kitty is a feature-rich GPU-accelerated terminal with tabs, splits, SSH integration, and its own terminal graphics protocol used by tools like icat and MPV. It combines the speed of Alacritty with the features of iTerm2.

TL;DR
kitty is a fast, GPU-rendered terminal with tabs, splits, and a native image protocol.
§01

What it is

kitty is a feature-rich, GPU-accelerated terminal emulator. It uses OpenGL for rendering, which offloads text drawing to the GPU and keeps CPU usage low even with large scrollback buffers. kitty supports tabs, splits, remote control via IPC, and SSH integration with automatic shell setup on remote hosts.

What sets kitty apart is its terminal graphics protocol. Unlike iTerm2's proprietary inline images, kitty's protocol is an open standard adopted by other terminals and tools like ranger, MPV, and neovim image plugins.

§02

How it saves time or tokens

kitty replaces multiple tools. Its built-in icat kitten displays images directly in the terminal without external viewers. The ssh kitten copies your shell config to remote hosts automatically. Tab and split management is built in, eliminating the need for tmux in many workflows.

For AI-assisted workflows, kitty's scriptable remote control means agents can open splits, send commands, and read output programmatically via kitty @ commands.

§03

How to use

  1. Install kitty: curl -L https://sw.kovidgoyal.net/kitty/installer.sh | sh /dev/stdin
  2. Configure in ~/.config/kitty/kitty.conf for fonts, colors, and key bindings
  3. Use ctrl+shift+enter to open a new split, ctrl+shift+t for a new tab
  4. Display images inline: kitty +kitten icat image.png
§04

Example

# kitty.conf snippet
font_family      JetBrains Mono
font_size        14.0
enable_audio_bell no

# Tab bar style
tab_bar_style powerline
tab_powerline_style slanted

# Open new split with current directory
map ctrl+shift+enter new_window_with_cwd

# Remote control (enable in config)
allow_remote_control yes
listen_on unix:/tmp/kitty_socket

Then from another process:

kitty @ --to unix:/tmp/kitty_socket send-text 'echo hello\n'
§05

Related on TokRepo

§06

Common pitfalls

  • kitty does not support macOS Terminal.app features like Secure Keyboard Entry; use the native kitty.app bundle instead
  • The graphics protocol requires applications to explicitly support it; not all TUI tools render images through kitty
  • SSH kitten requires Python 3 on the remote host; headless servers without Python need manual shell setup

Frequently Asked Questions

How does kitty compare to Alacritty?+

Both use GPU rendering for speed. kitty adds built-in tabs, splits, an image protocol, scriptable remote control, and SSH integration. Alacritty is deliberately minimal and relies on tmux or a tiling window manager for those features.

Does kitty work on Linux and macOS?+

Yes. kitty runs on Linux (X11 and Wayland) and macOS. It does not support Windows natively. On macOS, it ships as a standalone .app bundle with full Retina display support.

What is the kitty graphics protocol?+

It is an open terminal protocol for displaying images, animations, and video frames inline in the terminal. Unlike sixel or iTerm2 inline images, kitty's protocol supports transparency, animation, and efficient memory-mapped transfers.

Can I use kitty with tmux?+

You can, but kitty's built-in tabs and splits often make tmux unnecessary. If you use tmux, note that tmux does not pass through the kitty graphics protocol, so inline images will not display inside tmux sessions.

How do I customize key bindings in kitty?+

Add map directives in ~/.config/kitty/kitty.conf. For example, 'map ctrl+shift+n new_os_window' opens a new window. kitty supports hundreds of actions including launching programs, sending text, and controlling layout.

Citations (3)
  • kitty GitHub— kitty is a GPU-accelerated terminal emulator with an image protocol
  • kitty Docs— kitty graphics protocol specification
  • kitty Docs— SSH kitten for automatic remote shell integration

Discussion

Sign in to join the discussion.
No comments yet. Be the first to share your thoughts.

Related Assets