purplemux / for Claude Code

Claude Code, várias sessões, ao mesmo tempo. Mais rápido.

Um painel multi-sessão sobre tmux.
Navegador, mobile, terminal — um fluxo de trabalho sem pausa.

$ npx purplemux
Baixar para macOS
Node.js 20+ tmux necessário macOS / Linux
painel purplemux no desktop purplemux no mobile
Por que purplemux

Cada sessão, em um painel só.

Quanto mais sessões, mais difícil fica acompanhar o estado.
O purplemux junta todas numa só tela pra você ver o que está rodando e onde precisa da sua ação num piscar.

Rate limit barra lateral
5h faltam 2h 14m (85%)
7d faltam 4d 9h (60%)

Sua cota, em tempo real.

Bater no limite no meio do foco quebra seu fluxo. Enquanto espera o próximo reset, o trabalho fica parado.

O purplemux deixa as cotas de 5 horas e 7 dias fixas na barra lateral. As cores mudam em 50% e 80%, pra você dosar o ritmo antes de bater no teto.

purplemuxin progress
docs-siteneeds input
landingreview
refactoridle
Painel multi-sessão
Veja o estado running / needs-input de cada sessão Claude Code num relance.
Refactor auth module
readsrc/lib/auth.ts
editsrc/lib/auth.ts
00:24
Visão ao vivo da sessão
Progresso em timeline — nada de rolar logs do CLI.
IN PROGRESS3
landing-copy
REVIEW2
fix-auth-bug
tsc-errors
DONE7
Sessões agrupadas por status
Toda sessão é classificada automaticamente em Review · In Progress · Done.
term diff
web
Salvar & restaurar workspaces
Como roda em tmux, as sessões sobrevivem ao fechamento do navegador. Layout, abas e caminhos voltam num clique no dia seguinte.
src/lib/auth.ts
12
13
14
15
12
13
14
15
Visualizador Git diff
Olhe diffs num painel ao lado do terminal. Lado a lado ou inline, com destaque de sintaxe.
~/devdocker compose up
~/devvim src/handler.ts
~/devssh prod.example.com
~/devpnpm dev
Um terminal de verdade
Não só Claude. Terminal completo com xterm.js + node-pty pra vim, docker, ssh, REPLs — o que você quiser.
Mobile & push

Longe da mesa, igualzinho.

Você não precisa ficar na mesa só pra acompanhar uma tarefa demorada. Abra no navegador do celular, adicione à tela inicial e vira praticamente um app nativo. Feche a aba e as notificações de tarefa concluída / input necessário continuam chegando via Web Push.

notificação push do purplemux no mobile

Adicionar à tela inicial (PWA)

Abra no navegador e adicione à tela inicial pra ganhar um ícone em tela cheia.

iOS (Safari)
  1. Abra http://<host>:8022 no Safari
  2. Toque no botão Compartilhar lá embaixo
  3. Escolha Adicionar à Tela de Início
  4. Toque em Adicionar no topo direito
Android (Chrome)
  1. Abra a URL no Chrome
  2. Abra o menu no topo direito
  3. Escolha Instalar aplicativo ou Adicionar à tela inicial

Ativar notificações push

  1. Ative em Settings → Notification → On e autorize notificações do navegador
  2. Entregues por Web Push, mesmo em segundo plano
  3. Alertas de tarefa concluída e input necessário
  4. Toque a notificação pra ir direto à sessão

Acesso externo via Tailscale

Pra acessar de fora da sua rede, Tailscale Serve é o caminho mais limpo. Criptografia WireGuard e certificados HTTPS vão junto de graça.

$ tailscale serve --bg 8022

Depois você acessa https://<machine>.<tailnet>.ts.net de qualquer lugar. O Safari no iOS exige HTTPS pra PWA e Web Push funcionarem direito.

Estatísticas & análise

Toda a utilização, em uma tela.

Tokens de hoje, custo do mês, uso por projeto, distribuição por modelo — números espalhados reunidos num lugar só pra mostrar o ritmo e a estrutura de custo do seu trabalho.

painel de estatísticas de uso do purplemux
01
Quatro cards de visão geral Sessions · Total · Today · Month
02
Tendência diária de atividade Sessões · mensagens, últimos 30 dias
03
Sequências de trabalho Longest · Current · Count · Avg
04
Timeline semanal Dia × hora + sessões simultâneas
Relatório diário com IA

Seu dia, resumido automaticamente.

Ao fim do dia, os logs de sessão são reunidos e um LLM escreve um resumo de uma linha e um detalhado. Salvo em Markdown — cole direto numa retrô, relatório ou 1:1.

2026-04-13 (Mon) 15 sessions · $5.87
Rascunhada a landing do purplemux. Seção mobile / PWA conectada ao dashboard de stats. Copy unificada no tom Apple e todos os mockups de feature cards substituídos.
∧ Collapse
purplemux
Rascunho da landing
  • Estrutura de oito seções com os layouts Hero / Why / Mobile / Stats
  • Cor de marca purple convertida em variável OKLCH
  • Molduras de mockup aplicadas às capturas desktop e mobile
Mockups de feature cards
  • Indicadores reais de spinner / pulse reproduzidos no painel multi-sessão
  • CSS dos mockups Git Diff, workspace e self-hosted refinado
  • Animação adicionada ao diagrama de acesso Tailscale

Brief + detailed lado a lado

O brief de uma linha mora no dashboard; o detalhado expande num clique. É Markdown — cole direto numa retrô ou relatório.

Em lote & regerar

Preencha os dias faltantes em lote, ou regere um dia específico. O LLM processa sessão a sessão pra não perder contexto.

Rápido, de qualquer lugar

Fica na barra lateral como Notes e abre com Cmd ⇧ E (macOS) / Ctrl ⇧ E (Linux). Tudo local — nada sai da sua máquina.

Recursos

Tudo que você precisa, nada além disso.

Terminal 7
  • Painéis divididosDivisões horizontais · verticais, redimensionáveis arrastando
  • Gestão de abasMúltiplas abas, reordenar, título automático pelo processo
  • AtalhosDividir · trocar de aba · mover foco
  • TemasEscuro / claro · vários conjuntos de cores
  • WorkspacesSalvar / restaurar painéis · abas · caminhos de trabalho
  • Visualizador Git diffLado a lado · destaque de sintaxe
  • Painel de navegadorPreview Electron embutido
Integração com Claude Code 10
  • Status em tempo realIn progress / needs input, transições instantâneas
  • Modo sessões na sidebarTroca Workspace ↔ Sessions, vistas por status
  • Vista ao vivo da sessãoMensagens · tool calls · tasks · permission prompts
  • Retomar com um cliquePegue sessões interrompidas direto no navegador
  • Restore automáticoRestaura sessões anteriores quando o servidor reinicia
  • Quick promptsRegistre favoritos e rode num clique
  • Histórico de mensagensReutilize mensagens anteriores
  • Analytics de usoTokens · custo · por projeto · relatórios diários
  • Contagem regressiva do rate limitRestante 5h / 7d · tempo até o reset
  • Avisos de uso do limiteA barra vai pra amber / red em 50% / 80%
Mobile & acessibilidade 7
  • UI responsivaTerminal · timeline no celular e tablet
  • PWAAdicionar à tela inicial · sensação de app nativo
  • Web PushNotificações mesmo com a aba fechada
  • Sync multi-dispositivoMudanças no workspace em tempo real
  • TailscaleAcesso externo HTTPS seguro
  • Auth por senhaHash scrypt
  • Multilíngue한국어 · English · 日本語 · 中文 · 11 idiomas
Personalização 9
  • TemasLight / Dark / System automático
  • Tamanho da fonteNormal · Large · X-Large
  • Custom CSSOverride total via variáveis CSS
  • Temas de terminalConjuntos de cor separados pra light / dark
  • Reordenar sidebarMostrar/ocultar itens · arrastar pra reordenar
  • Biblioteca de Quick PromptsAdicione prompts custom · arraste pra ordenar
  • Integração com editorEditor externo via URL do code-server
  • Controle de notificaçõesNotificações do sistema on/off
  • Opções do ClaudeToggle de opções do CLI como skip permissions
Arquitetura

Navegador ↔ Node.js ↔ tmux · Claude Code.

O xterm.js conecta no node-pty via WebSocket, e o node-pty gruda numa sessão tmux no socket dedicado purple. O estado é acompanhado por hooks do Claude Code e um watcher de log JSONL juntos.

Browser UI
xterm.js
Terminal
Timeline
events
Status
indicators
Multi‑device
sync
WebSocket
/terminal /timeline /status /sync
Node.js Server :8022
node-pty
Binary PTY ↔ WS
JSONL Watcher
file → parse → send
Status Manager
process tree + JSONL tail
Binary PTY · stdin/out binário Hooks + polling 5–15s Interceptação de permission prompt 1MB backpressure · 10 queue
spawn · read
System local
tmux · purple socket
session 1 session 2
Socket purple isolado Restore paralelo após reboot
Claude Code
~/.claude/sessions/ ~/.claude/projects/{id}.jsonl
vs. Remote Control oficial

Além do controle remoto — um workspace unificado.

O Remote Control oficial é uma ferramenta de acesso remoto pra continuar sessões do Claude Code em outro dispositivo. O purplemux põe por cima um painel multi-sessão, extensões de terminal e analytics de uso — um ambiente operacional self-hosted.

Item Remote Control oficial purplemux
Vista simultânea de sessões Abrir uma a uma a partir de uma lista Todas as sessões, todos os estados, num painel só
Indicadores de status Online / offline Busy · Review · Needs-input · Idle em tempo real
Notificações push Precisa do app móvel do Claude Web Push · qualquer navegador, sem instalar
Persistência do terminal Só enquanto o processo claude roda Baseado em tmux · restore automático após restart
Ferramentas incluídas Somente sessão do Claude Code Terminal dividido · Git diff · salvar workspace
Analytics de uso Tokens · custo · por projeto · relatório diário com IA
Pontos fortes Oficial da Anthropic · integração com o app móvel do Claude · auto-update OSS de terceiros · instalação & manutenção manuais
Instalar

30 segundos, do começo ao fim.

Você só precisa de Node.js 20+ e tmux. Uma linha pra instalar e abrir o navegador.

1

Executar

Já começa com npx. Instalação global também rola.

$ npx purplemux
2

Abrir o navegador

A porta padrão é 8022. Troque pela variável PORT.

 http://localhost:8022
3

Acesso remoto (opcional)

Pra acesso externo, recomendamos Tailscale Serve. Criptografia WireGuard e certificados automáticos inclusos.

$ tailscale serve --bg 8022
4

App nativo (opcional)

No macOS você também pode usar o build Electron. Apple Silicon e Intel suportados.

Baixar a última release →
FAQ

O que você provavelmente quer saber.

Vai economizar dinheiro pra mim?

Ele deixa seu uso transparente. Custo de hoje, do mês e por projeto, divisão de tokens por modelo, restante de rate limit 5h / 7d — tudo numa tela só pra você ajustar o gasto.

Dá pra aprovar permission prompts do celular?

Dá. O purplemux intercepta os diálogos de permissão do Claude Code no terminal e encaminha pra dashboard e pras notificações mobile. Aprove de qualquer lugar — sem tarefa parada.

Se o sistema travar, perco as sessões?

Fechar o navegador ou perder a rede não é problema — o tmux mantém as sessões vivas. Mesmo após um reboot completo, o purplemux varre o layout do workspace e restaura as sessões Claude anteriores em paralelo. Sem restore manual.

Onde meus dados ficam?

Todas as configurações e dados de sessão ficam localmente em ~/.purplemux/. Nada é enviado pra servidores externos. A autenticação é guardada como hash scrypt em config.json.

Funciona no Windows?

Oficialmente não. Pelas restrições do tmux e do node-pty, só macOS e Linux são suportados. Pode funcionar no WSL2, mas não está nos nossos testes.

Conflita com minhas sessões tmux existentes?

O purplemux sobe uma instância tmux isolada num socket purple dedicado. É completamente independente das suas sessões tmux e do ~/.tmux.conf.

Como acessar de fora da minha rede?

Recomendamos Tailscale Serve — criptografia WireGuard e certificados HTTPS automáticos. Se preferir um reverse proxy próprio, lembre de encaminhar os headers Upgrade e Connection no Nginx / Caddy.

Tem algum custo?

O purplemux em si é open source MIT e gratuito. O uso do Claude Code é cobrado à parte.

Dá pra usar de verdade no celular?

Dá. UI responsiva, PWA e Web Push já vêm inclusos. Adicione à tela inicial pra sensação de app nativo; feche a aba e mesmo assim receba notificações de tarefa concluída e input necessário.

Tem tradução?

Suporta 11 idiomas: 한국어 · English · 日本語 · 简体中文 · 繁體中文 · Deutsch · Español · Français · Русский · Português (Brasil) · Türkçe.

Começar

Uma linha já basta.

Com Node.js 20+ e tmux prontos, dá pra subir em 30 segundos.

$ npx purplemux
Baixar para macOS
Self-hosted · open source

Na sua máquina, seu.

O purplemux é uma ferramenta self-hosted que roda localmente. Dados de sessão, configurações e histórico ficam só em ~/.purplemux/ e nunca saem da sua máquina. O código é MIT — leia, modifique, contribua.

MIT License 100% local 0 telemetria
~/.purplemux/
├─ config.json
├─ workspaces.json
└─ sessions/
MIT local-only