# 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:

icat

  Display images in the terminal

diff

  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.

Hints

  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.

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.

Broadcast

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

Panel

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

Clipboard

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

You can also Learn to create your own kittens.