O que é o workmux?
O workmux transforma uma branch em um espaço de trabalho. Um único workmux add cria um worktree do git, abre a janela do tmux correspondente, copia os arquivos que faltam em um checkout novo (.env, credenciais), cria links para os que você não quer reinstalar (node_modules), roda seus comandos de preparação e monta o layout de painéis que você pediu. O workmux merge desfaz tudo de uma vez: mescla a branch, apaga o worktree, fecha a janela e remove a branch local. Sem stash, sem trocar de branch, sem um checkout pela metade travando a próxima tarefa.
⚡ Principais recursos do workmux
🌿 Uma janela por branch
O workmux add cria o worktree e a janela do tmux juntos, então trocar de tarefa é trocar de aba, com shell, editor e servidor de desenvolvimento próprios.
🧰 Worktrees que realmente funcionam
Worktrees novos nascem quebrados. O workmux copia arquivos de configuração, cria links para dependências e roda seus comandos post_create para que o novo checkout seja utilizável na hora.
🤖 Agentes em paralelo
Rode vários agentes de código ao mesmo tempo, um por worktree, e acompanhe o status no nome da janela do tmux, num dashboard TUI ou numa barra lateral ao vivo.
🧹 Limpeza com um comando
O workmux merge mescla a branch e depois remove o worktree, a janela do tmux e a branch local; o workmux remove faz a limpeza sem mesclar.
📄 Configurado em YAML
Um config.yaml global para os seus padrões e um .workmux.yaml por projeto para layouts de painéis, hooks e operações de arquivo, com aninhamento pensado para monorepos.
🖥️ Não só tmux
O tmux é o backend padrão, e kitty, WezTerm e Zellij são alternativas suportadas, então o fluxo acompanha o terminal que você já usa.
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 e Zed; workmux 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 workmux
# Instalar o workmux mais recente
sudo apt install workmux
# O tmux é o backend padrão e vem apenas como recomendado,
# porque kitty, WezTerm e Zellij também funcionam
sudo apt install tmux
# Verificar a instalação
workmux --version# Instalar o workmux mais recente
apt install workmux
# O tmux é o backend padrão e vem apenas como recomendado,
# porque kitty, WezTerm e Zellij também funcionam
apt install tmux
# Verificar a instalação
workmux --versionPasso 3: O primeiro worktree
# Opcional: escrever um .workmux.yaml para este projeto
cd ~/src/meu-projeto
workmux init
# De dentro do tmux: branch, worktree, janela e painéis em um comando
workmux add nova-funcionalidade
# Quando o trabalho terminar: mesclar e limpar tudo
workmux merge
# As conclusões de bash, zsh e fish vêm no pacote
workmux --help🎯 Exemplos básicos de uso
O ciclo do dia a dia:
# Criar uma branch, um worktree e uma janela do tmux
workmux add fix-login
# Uma branch existente é reconhecida pelo nome
workmux add trabalho-existente
# Partir de uma base diferente da padrão
workmux add hotfix --base production
# Trazer um pull request para o próprio worktree
workmux add --pr 123
# Ver tudo o que está em andamento
workmux list
# Mesclar e desmontar tudo
workmux merge
# Ou descartar o trabalho sem mesclar
workmux remove fix-loginJanelas, painéis e recuperação:
# Criar a janela sem mudar para ela
workmux add revisao-docs --background
# Fechar uma janela mantendo o worktree e a branch
workmux close revisao-docs
# Abrir de novo mais tarde
workmux open revisao-docs
# Reconstruir todas as janelas após uma queda do tmux ou da máquina
workmux resurrect
# Entrar num worktree de qualquer lugar
cd "$(workmux path fix-login)"Rodando agentes em paralelo:
# Instalar os hooks de status e as skills do seu agente
workmux setup
# Iniciar um worktree com um prompt para o agente
workmux add add-tests --prompt "Adicione testes unitários para o parser"
# Acompanhar todos os agentes em uma TUI
workmux dashboard
# Ou manter uma barra lateral de status no tmux
workmux sidebar
# Enviar uma instrução para um agente em execução
workmux send add-tests "Cubra também os caminhos de erro"
# Esperar até esse agente terminar
workmux wait add-tests🔧 Integrações
O workmux se apoia de propósito nas ferramentas que você já usa:
- git: worktrees são checkouts comuns de
git worktree, entãogit, seus hooks e seu CI não veem nada diferente - tmux: uma janela por worktree, nomeada a partir da branch, com o seu layout de painéis aplicado automaticamente
- kitty, WezTerm e Zellij: backends alternativos suportados, se o tmux não for o seu multiplexador
- Agentes de código: acompanhamento de status, injeção de prompts e skills para o Claude Code e os demais agentes suportados pelo upstream
- Seu shell: as conclusões de bash, zsh e fish vêm neste pacote, e
alias wm='workmux'é o atalho recomendado pelo upstream
🚀 Por que escolher o deb.griffo.io?
- Ubuntu oficial: não empacota o workmux —
apt install workmuxfalha num sistema padrão - cargo install workmux: atualizado, mas é compilar Rust em cada máquina, fora do apt e sem as conclusões de shell
- O script de instalação upstream: prático, mas escreve no seu sistema pelas costas do gerenciador de pacotes e se atualiza no próprio ritmo
- deb.griffo.io: versão mais recente com atualizações automáticas
- ✅ A única fonte apt: o workmux não está nos arquivos do Debian nem do Ubuntu; este repositório empacota a build oficial upstream
- ✅ O suporte a agentes muda toda semana: quais agentes o workmux consegue acompanhar e controlar muda a cada lançamento, então estar atualizado é a diferença entre o recurso funcionar e não existir
- ✅ Atualizações automáticas: os pacotes são atualizados poucas horas após cada lançamento upstream
- ✅ Pacote completo: o binário upstream em
/usr/bin/workmux, mais as conclusões de bash, zsh e fish - ✅ Dependências honestas: o pacote depende de
gite recomendatmux, porque kitty, WezTerm e Zellij também são backends suportados - ✅ Duas arquiteturas: amd64 e arm64, ambas com ligação estática, então o mesmo pacote roda em todas as suítes
- ✅ 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:
- 🧩 workmux-debian - Builds dos últimos lançamentos
🔗 Pacotes relacionados
Também disponíveis no deb.griffo.io:
- lazygit - Interface git de terminal para o trabalho dentro de cada worktree
- GitUI - Outro cliente git de terminal rápido, se você preferir o modelo dele
- Zellij - Alternativa suportada ao tmux como backend multiplexador
- Serie - Grafo de commits para revisar o que uma branch realmente fez