O que é o kitty?
O kitty é um emulador de terminal baseado em GPU para quem passa o dia dentro de um. Ele renderiza com OpenGL, então um log de build ou uma parede de saída colorida rola sem engasgos, e trata o terminal como uma plataforma, não como uma caixa de texto: janelas e abas organizadas por layouts em mosaico, um protocolo gráfico que desenha imagens de verdade no meio da saída, um protocolo de teclado que deixa os programas distinguirem shift+enter de enter, hiperlinks clicáveis, ligaturas e uma integração com a shell que sabe onde começa e termina cada prompt e a saída de cada comando. Junto do terminal vem o kitten, um único executável companheiro com as pequenas ferramentas em torno das quais o terminal foi construído: kitten icat mostra uma imagem, kitten ssh leva seu terminfo e sua integração de shell para um host remoto, kitten diff é um diff lado a lado que também entende imagens, kitten clipboard, kitten themes, e kitten @ controla o próprio terminal a partir de um script. É escrito por Kovid Goyal, o autor do calibre, e tudo se configura em um único kitty.conf.
kitten independente, então os comandos kitten ssh e kitten icat da documentação atual simplesmente não existem lá. Um kitty antigo também ignora em silêncio as opções do kitty.conf que a documentação atual manda configurar, e todo kitten mais novo (choose-fonts, notify, quick-access-terminal, panel) simplesmente falta. O terminal é o único programa que você usa o dia inteiro; ele deveria ser o atual.
⚡ Principais recursos do kitty
🎮 Renderização por GPU
O kitty desenha com OpenGL, entrega o trabalho dos glifos à GPU e deixa a CPU para o programa que você está realmente rodando. Saídas grandes rolam na taxa de atualização da tela e o terminal continua respondendo debaixo de uma enxurrada de texto.
🪟 Janelas, abas e layouts
Divida uma aba em janelas e deixe um layout (tall, fat, grid, splits, stack) organizá-las: ctrl+shift+enter abre uma janela, ctrl+shift+t uma aba. Um arquivo de sessão recria um espaço de trabalho inteiro, cada janela com seu diretório e seu comando.
🖼️ O protocolo gráfico
Imagens de verdade, não caracteres de bloco. kitten icat mostra uma figura no meio da saída, e esse mesmo protocolo é o que yazi, viu, os plugins de imagem do Neovim e os backends do matplotlib usam quando desenham no seu terminal.
🐈 Kittens
O kitten é um único executável estático cheio de ferramentas pequenas: icat, ssh, diff, clipboard, themes, hints para pegar URLs, caminhos ou hashes da tela pelo teclado, unicode_input, transfer para copiar arquivos por uma sessão ssh, e mais.
🎛️ Controle remoto
Com allow_remote_control ligado, kitten @ controla o terminal a partir de qualquer script: abrir janelas, mandar texto para elas, trocar cores, redimensionar, listar o que está rodando. Layouts por script sem um multiplexador no meio.
🐚 Integração com a shell
O kitty sabe onde cada prompt começa: pule entre prompts com ctrl+shift+z, abra a saída do último comando num paginador, clique para mover o cursor dentro da linha atual e faça as janelas novas abrirem no diretório atual. bash, zsh e fish, entregues pelo kitty-shell-integration.
apt upgrade mantém você na versão mais recente.
📦 Instalação a partir do deb.griffo.io
Passo 1: Adicionar o repositório
sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | sudo gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | sudo tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
sudo apt updateinstall -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
apt update🆓 Existe um espelho grátis para sempre. deb-free.griffo.io distribui pacotes grátis para sempre — sem conta, sem assinatura, no máximo 2 meses atrás do upstream, correções de segurança imediatas. Hoje ele traz cliamp, Ghostty, lazydocker, Oh My Posh, Uncloud e Zed; kitty não está entre elas, então o repositório acima é a única forma de instalar hoje — peça e ela pode ser adicionada.
Passo 2: Instalar o kitty
# Instalar o kitty mais recente; kitty-terminfo e kitty-shell-integration vêm junto
sudo apt install kitty
# Opcional, a documentação HTML em /usr/share/doc/kitty/html
sudo apt install kitty-doc
# Verificar a instalação, o terminal e a CLI companheira
kitty --version
kitten --version# Instalar o kitty mais recente; kitty-terminfo e kitty-shell-integration vêm junto
apt install kitty
# Opcional, a documentação HTML em /usr/share/doc/kitty/html
apt install kitty-doc
# Verificar a instalação, o terminal e a CLI companheira
kitty --version
kitten --versionPasso 3: Primeira execução
# Abrir uma janela do kitty
kitty
# Tornar o kitty o terminal padrão para x-terminal-emulator
sudo update-alternatives --config x-terminal-emulator
# A configuração fica em ~/.config/kitty/kitty.conf: ctrl+shift+f2 abre o
# arquivo dentro do kitty, ctrl+shift+f5 recarrega. Isto imprime a configuração em vigor
kitty --debug-config
# Navegar pelos temas de cores incluídos e aplicar um
kitten themes# Abrir uma janela do kitty
kitty
# Tornar o kitty o terminal padrão para x-terminal-emulator
update-alternatives --config x-terminal-emulator
# A configuração fica em ~/.config/kitty/kitty.conf: ctrl+shift+f2 abre o
# arquivo dentro do kitty, ctrl+shift+f5 recarrega. Isto imprime a configuração em vigor
kitty --debug-config
# Navegar pelos temas de cores incluídos e aplicar um
kitten themes🎯 Exemplos básicos de uso
Iniciando:
# Um terminal
kitty
# Rodar um comando numa janela nova do kitty e mantê-la aberta depois
kitty --hold htop
# Sobrescrever qualquer opção do kitty.conf na linha de comando
kitty -o font_size=14 -o background_opacity=0.9
# Começar em um diretório
kitty --directory ~/src
# Restaurar um espaço de trabalho inteiro a partir de um arquivo de sessão
kitty --session ~/.config/kitty/work.session
# Qual versão está instalada?
kitty --versionOs kittens:
# Mostrar uma imagem direto no terminal
kitten icat photo.png
# ssh levando junto terminfo e integração de shell
kitten ssh user@server
# Diff lado a lado, imagens incluídas
kitten diff old.txt new.txt
# Copiar para a área de transferência do sistema e ler dela
echo hello | kitten clipboard
kitten clipboard --get-clipboard
# Aplicar um tema a todas as janelas do kitty abertas
kitten themes --reload-in=all Catppuccin-Mocha
# Escolher uma fonte de forma interativa
kitten choose-fontsControle remoto:
# Coloque allow_remote_control yes no kitty.conf e, de qualquer shell
# rodando dentro do kitty: abrir uma janela nova à direita desta
kitten @ launch --location=vsplit --cwd=current
# Digitar um comando em outra janela, escolhida pelo título
kitten @ send-text --match title:logs "tail -f /var/log/syslog\n"
# Trocar as cores na hora
kitten @ set-colors background=#1e1e2e
# O que está aberto agora
kitten @ ls🔧 Integrações
O kitty é o terminal debaixo de todo o resto, então a integração é sobretudo sobre o que roda dentro dele:
- Servidores remotos: o kitty define
TERM=xterm-kitty, e um host sem esse terminfo deixa você com o backspace quebrado e reclamações dolesse doclear. Okitten sshcopia o terminfo para você; para os hosts que você alcança com umsshcomum, instale lá okitty-terminfo, um pacote independente de arquitetura que carrega só a entrada de terminfo e não puxa mais nada - Sua shell: o
kitty-shell-integrationentrega os hooks de bash, zsh e fish em/usr/share/kitty/shell-integration, eshell_integration enablednokitty.conf, o padrão, liga tudo sem mexer nos seus arquivos rc - yazi, viu e Neovim: os três desenham imagens pelo protocolo gráfico do kitty, e o Neovim fala o protocolo de teclado do kitty nativamente, então este é o terminal em que eles foram testados
- Zellij e tmux: as janelas, abas e layouts do próprio kitty cobrem quase tudo o que um multiplexador local faz; recorra ao Zellij quando uma sessão precisar sobreviver à janela, e dê ao tmux
extended-keyse passthrough para os protocolos do kitty sobreviverem à viagem - Seu desktop: o pacote instala a entrada de desktop, os ícones e as páginas man e registra a alternativa
x-terminal-emulator, então o kitty aparece no seu lançador e uma chamada aoupdate-alternativesfaz dele o padrão do sistema
🚀 Por que escolher o deb.griffo.io?
- Ubuntu oficial: traz o kitty 0.45.0 no 26.04, 0.32.2 no Noble e 0.21.2 no Jammy, cada um congelado pela vida inteira da sua versão
- O instalador upstream: um
curl | shpara~/.local/kitty.app, atual, mas por usuário, sem entrada de desktop, páginas man nemx-terminal-emulatora menos que você mesmo conecte tudo, e atualizado rodando o instalador de novo - Compilar do código-fonte: Python, Go, uma longa lista de pacotes
-deve um bom tempo, para um binário que o apt desconhece - deb.griffo.io: versão mais recente com atualizações automáticas
- ✅ Os mesmos nomes de pacote do Ubuntu:
kitty,kitty-terminfo,kitty-shell-integrationekitty-doc, exatamente como o arquivo do Ubuntu os chama, então este repositório atualiza o kitty de fábrica no lugar e umapt removedepois não deixa nada para trás - ✅ A build oficial: o bundle pré-compilado upstream, os mesmos bits do instalador do próprio kitty, colocado em
/opt/kittycom os links/usr/bin/kittye/usr/bin/kitten; sem build do código-fonte, sem remendos - ✅ Bem integrado: entrada de desktop, ícones, páginas man, terminfo e integração de shell nos caminhos padrão do Debian, e a alternativa
x-terminal-emulatorregistrada - ✅ O kitty-terminfo viaja sozinho: um pacote independente de arquitetura com nada além do terminfo
xterm-kitty, para os servidores em que você entra por ssh - ✅ Atualizações automáticas: os pacotes são atualizados poucas horas após cada lançamento upstream
- ✅ Duas arquiteturas: amd64 e arm64, as duas para as quais o upstream publica bundles; não há build para i386, armhf nem riscv64
- ✅ Multi-distribuição: funciona no Ubuntu 22.04, 24.04, 25.10 e 26.04
- ✅ Manutenção simples: atualizações com os comandos apt de sempre
📦 Repositório de build do pacote
Os pacotes Ubuntu são construídos e mantidos automaticamente neste repositório do GitHub:
- 🐱 kitty-debian - Builds dos últimos lançamentos
🔗 Pacotes relacionados
Também disponíveis no deb.griffo.io:
- Ghostty - O outro terminal por GPU daqui, com interface GTK nativa e outro conjunto de escolhas
- Zellij - Um multiplexador de espaços de trabalho para as sessões que precisam sobreviver a uma janela
- Yazi File Manager - Desenha suas pré-visualizações pelo protocolo gráfico do kitty
- viu Image Viewer - Um visualizador de imagens de terminal que também fala o protocolo gráfico do kitty
- Neovim - Plugins de imagem e o protocolo de teclado do kitty funcionam sem configurar nada neste terminal