Extend with kittens

kitty has a framework for easily creating terminal programs that make use of its advanced features. These programs are called kittens. They are used both to add features to kitty itself and to create useful standalone programs. Some prominent kittens:


Display images in the terminal.


A fast, side-by-side diff for the terminal with syntax highlighting and images.

Unicode input

Easily input arbitrary Unicode characters in kitty by name or hex code.


Preview and quick switch between over three hundred color themes.


Select and open/paste/insert arbitrary text snippets such as URLs, filenames, words, lines, etc. from the terminal screen.

Remote file

Edit, open, or download remote files over SSH easily, by simply clicking on the filename.

Transfer files

Transfer files and directories seamlessly and easily from remote machines over your existing SSH sessions with a simple command.

Hyperlinked grep

Search your files using ripgrep and open the results directly in your favorite editor in the terminal, at the line containing the search result, simply by clicking on the result you want.


Type in one kitty window and have it broadcast to all (or a subset) of other kitty windows.


SSH with automatic shell integration, connection re-use for low latency and easy cloning of local shell and editor configuration to the remote host.


Draw a GPU accelerated dock panel on your desktop showing the output from an arbitrary terminal program.


Copy/paste to the clipboard from shell scripts, even over SSH.

You can also Learn to create your own kittens.