Persistência da sessão

Fechar a tampa e voltar mais tarde significaria perder a manhã reconstruindo manualmente uma frota de nós, terminais e diretórios de trabalho antes mesmo de conseguir fazer qualquer coisa. O TermTree salva todo o ambiente de trabalho ao fechar e o restaura na próxima inicialização, inclusive retomando sessões do Claude Code com o contexto anterior, para que você continue de onde parou em vez de precisar reconstruir tudo.

O que é salvo

Quando você fecha o TermTree, todo o seu espaço de trabalho é preservado:

  • Estrutura da árvore — Todos os nós, rótulos, níveis hierárquicos e estados recolhidos/expandidos.
  • Status dos nós — Indicadores de erro e códigos de saída são mantidos.
  • Histórico de rolagem do terminal — A saída anterior é exibida acima das novas sessões após a reinicialização.
  • Layout — Posição do painel, nível de zoom, nó selecionado, tema e tipo de layout.
  • Arquivos recentes — A lista de arquivos que você abriu no painel do editor/visualizador, limitada a 15.

Reinicialização automática ao iniciar

Os terminais que estavam em execução, ociosos ou bloqueados aguardando entrada quando você fechou o TermTree são reiniciados automaticamente na próxima inicialização. Cada terminal reiniciado:

  • Inicia uma nova sessão de shell.
  • Herda o diretório de trabalho salvo.
  • Exibe o histórico de rolagem anterior acima da nova sessão (separado por um divisor visual).

Os terminais que já haviam sido encerrados não são reiniciados. Uma saída com código diferente de zero permanece vermelha para que você possa ver a falha após a reinicialização; uma saída bem-sucedida permanece cinza com o status IDLE.

Preservação do código de saída

Se um terminal foi encerrado com um erro (código de saída diferente de zero), o nó permanece vermelho entre as reinicializações. Isso facilita a identificação e a investigação de falhas de uma sessão anterior.

Retomada de sessões do Claude Code

O TermTree oferece suporte integrado a sessões do Claude Code. Se um terminal estava executando o Claude Code antes de você sair:

  1. O TermTree detecta automaticamente a sessão do Claude.
  2. Ao reiniciar, ele reenvia claude --resume com o ID da sessão salva.
  3. O Claude retoma a conversa do ponto em que parou, preservando todo o contexto.

Isso funciona de forma transparente — nenhuma configuração é necessária. Seus fluxos de trabalho assistidos por IA sobrevivem às reinicializações sem perder o contexto.

Se você trocar de sessão do Claude durante a execução (por exemplo, usando /resume para continuar uma conversa anterior), o TermTree detectará a mudança e atualizará seu rastreamento automaticamente. Na próxima reinicialização, será retomada a sessão que estava ativa quando você fechou o aplicativo.

O que não é preservado

  • Estado dos processos em tempo real — Os processos em execução são encerrados ao sair e reiniciados do zero na inicialização. Comandos em andamento não são retomados.
  • Ambiente do terminal — As variáveis de ambiente do shell definidas durante uma sessão não são preservadas. Seu perfil do shell (.bashrc, .zshrc etc.) é executado novamente quando o terminal é reiniciado.
  • Memória de visualização por arquivo — O TermTree memoriza o modo de visualização de cada arquivo aberto (Editor ou Visualização) e a posição de rolagem durante a sessão, mas essa memória é apagada ao reiniciar. Consulte Editor e visualizador.