Sessões e contexto
O Jarvis Code CLI persiste cada conversa como uma "sessão" — guardando o histórico de mensagens e os metadados para que você possa fechar o terminal e continuar exatamente de onde parou. Esta página cobre como retomar sessões, gerenciar contexto e exportar ou bifurcar sessões.
Armazenamento de sessões
Todas as sessões são salvas em $JARVIS_CODE_HOME/sessions/ (padrão: ~/.jarvis-code/sessions/), agrupadas por diretório de trabalho:
~/.jarvis-code/
├── config.toml
├── session_index.jsonl
└── sessions/
└── <workDirKey>/
└── <sessionId>/
├── state.json
└── agents/
├── main/
│ └── wire.jsonl
└── <subagentId>/
└── wire.jsonlstate.json: metadados da sessão, como título e horário de criação.agents/*/wire.jsonl: o fluxo de eventos do agente, usado para recuperação e replay da sessão. Ele também carrega um trace de requisição — os esquemas de ferramenta, os parâmetros de requisição e as listagens de ferramentas MCP enviadas ao modelo — para depuração.
WARNING
Não edite manualmente arquivos dentro do diretório sessions/ — fazer isso pode impedir que as sessões sejam restauradas corretamente.
Iniciar e retomar sessões
Toda vez que você executa jarvis diretamente, uma nova sessão é criada. Para retomar uma sessão anterior, use uma das opções abaixo:
Retomar a sessão mais recente do diretório atual:
jarvis --continueRetomar uma sessão específica pelo ID:
jarvis --session abc123Percorrer o histórico de sessões interativamente e escolher uma:
jarvis --sessionWARNING
--continue e --session são mutuamente exclusivos.
Trocar de sessão dentro da TUI
Você pode gerenciar sessões sem sair do terminal. Os comandos de barra a seguir só estão disponíveis quando o agente está em repouso:
/new(alias/clear): troca para uma nova sessão, descartando o contexto atual./sessions(alias/resume): percorre e retoma uma sessão anterior./fork: bifurca a sessão atual (veja abaixo)./title <text>(alias/rename): define um título de sessão para identificá-la mais facilmente; sem argumentos, exibe o título atual.
Compactação de contexto
Conforme a conversa cresce, o Jarvis Code CLI compacta automaticamente o histórico de mensagens quando o contexto se aproxima do limite da janela, liberando espaço de tokens. Você também pode disparar a compactação manualmente a qualquer momento:
/compactVocê pode passar uma dica para dizer ao modelo o que priorizar ao compactar:
/compact Preserve a discussão sobre migrações de banco de dadosBifurcar uma sessão
Para explorar uma direção nova sem atrapalhar a conversa atual, use /fork:
/forkBifurcar não muda você de lugar: você permanece na sessão original e a conversa continua intacta. A bifurcação é uma cópia independente para a qual você pode trocar a qualquer momento com /sessions. Uma meta salva com /goal não é copiada para a bifurcação. Inicie uma nova meta lá se quiser trabalho autônomo por meta.
Depois de bifurcar, o CLI imprime um comando pronto para executar que entra no diretório de trabalho e roda jarvis --resume <forkId> (também copiado para a área de transferência), para você entrar na bifurcação direto de um novo processo de terminal.
Exportar uma sessão
Use jarvis export para empacotar uma sessão como arquivo ZIP — útil para compartilhar, arquivar ou abrir um relatório de bug:
jarvis export <sessionId>Omitir sessionId exporta a sessão mais recente do diretório atual (com um prompt de confirmação interativo; adicione -y para pular). Use -o para especificar um caminho de saída:
jarvis export <sessionId> -o ~/Desktop/minha-sessao.zipA exportação inclui todos os arquivos do diretório da sessão, inclusive logs de diagnóstico. O log de diagnóstico global (~/.jarvis-code/logs/jarvis-code.log) também é incluído por padrão; adicione --no-include-global-log para excluí-lo.
Você também pode exportar de dentro da TUI, sem sair da sessão interativa:
/export-debug-zip: produz o mesmo ZIP de depuração quejarvis export, sempre incluindo o log de diagnóstico global./export-md(alias/export): exporta a conversa como um arquivo Markdown legível, adequado para compartilhar ou arquivar. Aceita um argumento opcional de caminho; sem ele, escreve emjarvis-export-<short-id>-<timestamp>.mdno diretório de trabalho atual.
TIP
Arquivos exportados podem conter código, saída de comandos e caminhos de arquivo sensíveis. Revise o conteúdo antes de compartilhar.
Próximos passos
- Locais de dados — layout completo de diretórios dos arquivos de sessão
- Modo Tower — quando uma tarefa precisa de vários agentes em branches separados, em vez de uma única sessão
- Comando jarvis — referência completa de parâmetros de
--continue,--session,exporte outros comandos