1 pontos por gurm0608 2026-03-19 | Ainda não há comentários. | Compartilhar no WhatsApp

No trabalho, eu deixo várias sessões do Claude Code abertas ao mesmo tempo, e muitas vezes acabo não percebendo qual sessão está esperando entrada. Como estou no escritório, também não posso ligar o som.

No Claude Code, é possível usar Hooks para executar comandos externos antes e depois das chamadas de ferramenta. Normalmente isso é usado para lint ou logging, mas resolvi experimentar algo diferente.

Criei um widget que recebe eventos de Hook e mostra personagens em emoji na área de trabalho. Quando várias sessões estão rodando, ele acompanha cada uma separadamente e as exibe lado a lado.

demo gif

Ao mapear os estados com emojis, achei divertido ver expressões sorrindo, confusas e cochilando, então decidi simplesmente chamar isso de pet.

Claude Code hooks → claude-pet --hook → TCP(:19876) → Tauri(Rust) → WebView  

Os Hooks criam e encerram um processo a cada evento, então não dá para manter estado neles. Por isso, fiz uma estrutura em que o app tem um servidor TCP, e sempre que um Hook acontece ele envia um JSON para lá. Foi feito com Tauri 2 + Rust, o binário tem cerca de 8 MB, e a instalação com uma linha curl ... | sh já registra os Hooks automaticamente.

Vem com 3 temas embutidos (robô, gato e frutas), também dá para criar temas personalizados em JSON. Estou usando no Windows, e também existem builds para macOS/Linux, mas ainda não consegui testá-los pessoalmente. MIT.

GitHub: https://github.com/IMMINJU/claude-pet

Feedback é bem-vindo.

Ainda não há comentários.

Ainda não há comentários.