Roost: Uma barra lateral em Go binário para Claude Code com histórico de prompts clicável, árvore de arquivos e notificações

Um desenvolvedor criou o Roost para preencher três lacunas ao usar o Claude Code via SSH com tmux: histórico de prompts clicável, uma árvore de arquivos para reduzir o uso de cat em arquivos e notificações push quando Claude está esperando. É um único binário Go que serve uma interface web em 127.0.0.1:8080, projetado para tunelamento SSH.
Principais Recursos
- Terminal xterm.js com suporte a tmux: Sobrevive a desconexões WebSocket, suspensão e reinicializações do servidor. Cada sessão é
tmux new-session -A -s {id}. - Árvore de arquivos: Visualize arquivos, arraste e solte para upload, e segue automaticamente seu diretório atual lendo o
pane_current_pathdo tmux — sem necessidade de integração com shell. - Painel de atividade: Lê
~/.claude/projects/*.jsonle mostra cada prompt. Clique em um prompt → o terminal volta para aquela etapa. - Chips na barra superior: Exibem o modelo ativo e os tokens de contexto mais recentes.
- Notificações push: Usa o hook
Stopdo Claude Code para notificar seu laptop quando Claude fica ocioso, mesmo com a aba em segundo plano.
Decisões de Design
- tmux como camada de durabilidade: O shell sobrevive a desconexões e reinicializações porque o tmux gerencia a persistência da sessão. O Roost possui apenas uma ponte WebSocket e um log em disco somente para anexação.
- Único usuário por instância: Sem contas ou RBAC. Duas pessoas compartilhando um host executam
roost serveem portas diferentes. UIDs UNIX cuidam do isolamento; proxies reversos cuidam da autenticação multi-inquilino. - Vanilla JS, sem etapa de build: O frontend consiste em arquivos
<script>simples embutidos via//go:embed all:web. Sem bundler — mais fácil de depurar e distribuir.
Correção de Bug Notável
O comando display-message -p '#{x}\x1f#{y}' do tmux retorna 0x1f como um underscore literal quando iniciado sem locale UTF-8 (por exemplo, a partir de unidades systemd). A correção de uma linha: tmux -u. Se você canalizar o tmux por separadores de campo, fixe o locale.
Compatibilidade
Validado em servidor Linux + Chrome Windows via túnel SSH. macOS como servidor funciona, mas possui arestas. Sessões Codex funcionam se você trocar os agentes. Repositório: github.com/liamsysmind/roost. Tarballs v0.1.0 em github.com/liamsysmind/roost/releases/tag/v0.1.0.
📖 Leia a fonte completa: r/ClaudeAI
👀 See Also

Forge: Um IDE baseado em Claude com verificação automatizada e DNA de projeto
Forge é um IDE baseado no Claude construído sobre o VS Code que executa automaticamente verificação de tipos, testes, verificações de cobertura e validação de importações antes de mostrar o código. Ele inclui loops de autocorreção para verificações falhadas e constrói um DNA do Projeto dos padrões da sua base de código.

Screenbox: Desktops Virtuais de Código Aberto para Agentes de IA Criados Totalmente por Voz
O Screenbox fornece desktops Linux isolados em Docker para agentes de IA, resolvendo conflitos quando múltiplos agentes são executados em paralelo. O projeto foi construído inteiramente usando comandos de voz com o Claude Code, e o criador não viu uma única linha do código.

Servidor Freddy MCP: Dê Acesso de Leitura ao seu Agente OpenClaw aos Dados Pessoais de Saúde
Freddy é um servidor pessoal de dados de saúde que expõe sono, recuperação, carga de treino e muito mais como um servidor MCP, permitindo que agentes OpenClaw raciocinem com dados reais do corpo.

KANBAII: Um Quadro Kanban Visual Criado com Claude Code para Desenvolvimento Assistido por IA
Um desenvolvedor criou o KANBAII, uma ferramenta local de quadro kanban inteiramente com Claude Code ao longo de dois meses. Ele fornece gerenciamento visual de tarefas, planejamento por IA e modos de execução paralela para fluxos de trabalho do Claude Code.