# Restauração de sessão

O cmux salva a forma do seu trabalho para que reabrir o app traga de volta as mesmas janelas, workspaces, painéis, contexto do terminal e estado do navegador.

## O que o cmux restaura

Após reabrir, o cmux restaura layout e metadados pertencentes ao app:

-   Layout de janelas, workspaces e painéis
-   Diretórios de trabalho
-   Scrollback do terminal, best effort
-   URL do navegador e histórico de navegação

O cmux não faz checkpoint de estado arbitrário de processos vivos. tmux, vim, shells e apps de terminal não compatíveis reabrem como terminais normais, a menos que tenham sua própria integração de resume do cmux.

## Retomada de sessões de agentes

Agentes de coding com IA compatíveis podem retomar quando o cmux captura o ID de sessão nativo do agente. Instale hooks depois do CLI do agente para que o binário esteja no PATH:

```
# all integrations cmux can find on PATH
cmux hooks setup

# or one agent at a time
cmux hooks setup antigravity
cmux hooks setup codex
cmux hooks setup grok
cmux hooks setup omp
cmux hooks setup --agent opencode
```

cmux hooks setup instala toda integração compatível que encontrar e imprime um resumo dos agentes ignorados. Use um nome de agente quando quiser só uma integração.

## Comandos personalizados de surface resume

Usuários avançados e integrações podem associar qualquer terminal surface a um comando de reinício. O cmux salva associações criadas pela CLI pública ou pelo socket para inspeção e retomada manual.

```
cmux surface resume set --kind tmux --checkpoint work --shell "tmux attach -t work"
cmux surface resume show --json
cmux surface resume clear --checkpoint work
```

Prefixos aprovados podem ser revisados ou editados em Settings > Terminal > Resume Commands. O cmux só executa automaticamente associações de resume marcadas como confiáveis, como associações tmux detectadas a partir de processos ativos ou prefixos aprovados pelo usuário. O cmux ainda não faz checkpoint de memória arbitrária de processos. Chaves de ambiente sensíveis, como tokens, senhas, segredos e chaves de API, são descartadas antes de salvar uma associação de retomada. As aprovações também ficam vinculadas ao diretório de trabalho e aos valores exatos de ambiente quando presentes.

## Agentes compatíveis

| Agente | Binário | Comando resume | Ponte de feed |
| --- | --- | --- | --- |
| Claude Code | `claude` | `claude --resume <id>` | PermissionRequest |
| Codex | `codex` | `codex resume <id>` | PreToolUse, PermissionRequest |
| Grok / Grok Build CLI | `grok` | `grok -r <id>` | PreToolUse |
| OpenCode | `opencode` | `opencode --session <id>` | plugin event bus |
| Pi | `pi` | `pi --session <id>` | nenhum |
| OMP | `omp` | `omp --session <id>` | nenhum |
| Campfire | `campfire` | `campfire --session <id>` | nenhum |
| Amp | `amp` | `amp threads continue <id>` | nenhum |
| Cursor CLI | `cursor-agent` | `cursor-agent --resume <id>` | beforeShellExecution |
| Gemini | `gemini` | `gemini --resume <id>` | PreToolUse |
| Antigravity CLI | `agy` | `agy --conversation <id>` | PreToolUse, PostToolUse |
| Rovo Dev | `acli` | `acli rovodev run --restore <id>` | nenhum |
| Hermes Agent | `hermes` | `hermes --resume <id>` | pre\_tool\_call, post\_tool\_call, pre\_approval\_request, post\_approval\_response |
| Copilot | `copilot` | `copilot --resume <id>` | PreToolUse |
| CodeBuddy | `codebuddy` | `codebuddy --resume <id>` | PreToolUse |
| Factory | `droid` | `droid --resume <id>` | PreToolUse |
| Qoder | `qodercli` | `qodercli --resume <id>` | PreToolUse |

Claude Code é tratado pelo wrapper Claude do cmux quando a integração Claude está ativada em Settings. Antigravity também aceita agy como alias de setup, e Rovo Dev aceita rovo.

## Restauração manual

O cmux restaura o último snapshot salvo na inicialização normal. Você também pode reaplicar manualmente o snapshot anterior:

-   History > Restore Previous App Launch
-   `⌘ ⇧ O`
-   `cmux restore-session`

## Desativar retomada automática de agentes

Para restaurar painéis sem iniciar comandos de resume de agentes salvos, desative Settings > Terminal > Resume Agent Sessions on Reopen ou defina:

~/.config/cmux/cmux.json

```
{
  "terminal": {
    "autoResumeAgentSessions": false
  }
}
```

Isso desativa apenas comandos de resume de agentes. O cmux ainda restaura layout, diretórios de trabalho, scrollback e histórico do navegador.

## Como funciona

1.  O cmux grava um snapshot JSON versionado em ~/Library/Application Support/cmux/session-<bundle-id>.json, além de um cache da sessão anterior para reabertura manual.
2.  O scrollback do terminal é salvo como texto limitado e reproduzido por um arquivo temporário na restauração. É best effort porque apps de terminal podem redesenhar ou limpar a tela.
3.  Agent hooks gravam ~/.cmuxterm/<agent>-hook-sessions.json com ID de sessão do agente, ID de workspace do cmux, ID de surface, cwd, ID do processo quando disponível e um comando de lançamento sanitizado.
4.  Na restauração, o cmux reconstrói janelas e painéis primeiro. Se a retomada automática de agentes estiver ativada, ele inicia um comando shell único que executa o comando nativo de resume do agente com o ID de sessão salvo.

A [documentação de configuração](https://cmux.com/pt-BR/docs/configuration) normal cobre cmux.json. A restauração de sessão mantém o layout do app separado das configurações de renderização do terminal Ghostty.

Canonical: https://cmux.com/pt-BR/docs/session-restore

Documentation index: https://cmux.com/llms.txt
