Toda sessão de agente de programação começa vazia. O próprio Claude Code afirma isso na sua documentação: cada sessão começa com uma janela de contexto nova. A ferramenta não lembra de nada que você disse ontem, a menos que algo fora da conversa tenha levado aquilo adiante. Aprender a manter contexto entre sessões de IA, portanto, não é um truque único; é saber a qual de quatro camadas pertence determinado contexto, e colocá-lo lá antes que a sessão termine.
Este guia percorre as quatro camadas em ordem: arquivos de instrução que a ferramenta lê na inicialização, anotações que a ferramenta escreve para si mesma, retomada de sessão e o registro de trabalho compartilhado que nenhuma das três primeiras oferece. As três primeiras são recursos do Claude Code, Codex e Gemini CLI. A quarta é onde o Sharkly se encaixa, porque uma Task que carrega o objetivo, a discussão, as execuções e a aceitação é a única camada que uma segunda pessoa consegue ler. Se você ainda está decidindo entre conversar e atribuir, nosso guia para conversar com um agente de IA ou atribuir uma Task é a peça complementar.
Resumo
O contexto sobrevive a uma sessão em quatro lugares. Arquivos de instrução (CLAUDE.md, AGENTS.md, GEMINI.md) carregam regras que a ferramenta deve manter sempre. A memória automática carrega correções e preferências que a ferramenta aprendeu. A retomada de sessão leva uma conversa adiante para uma pessoa em uma máquina. O registro de trabalho, uma Task com sua descrição, comentários e log de execução, carrega o que foi decidido, o que foi executado e o que uma pessoa aceitou, e é a única camada compartilhada. Coloque cada tipo de contexto na sua camada e a janela de contexto nova deixa de ser uma perda.
Camada 1: Arquivos de instrução que a ferramenta lê na inicialização
Arquivos de instrução são contexto que você escreve uma vez e a ferramenta carrega em todas as sessões. Cada CLI principal tem o seu, e eles são resolvidos de maneiras semelhantes.
| Ferramenta | Arquivo | Como é resolvido |
|---|---|---|
| Claude Code | CLAUDE.md (projeto ou .claude/CLAUDE.md), ~/.claude/CLAUDE.md (usuário), CLAUDE.local.md (pessoal, ignorado pelo git) |
Carregado do diretório de trabalho e de todos os diretórios acima dele, concatenados da raiz para baixo; arquivos de subdiretórios são carregados sob demanda |
| Codex | AGENTS.md, com ~/.codex/AGENTS.md para escopo global e AGENTS.override.md para substituições temporárias |
Concatenado da raiz do Git para baixo, limitado por project_doc_max_bytes, 32 KiB por padrão |
| Gemini CLI | GEMINI.md, com ~/.gemini/GEMINI.md para escopo global |
Descoberta global, de workspace e just-in-time; /memory show exibe o resultado mesclado |
Dois hábitos mantêm essa camada útil. Mantenha os arquivos curtos: a orientação do Claude Code recomenda menos de 200 linhas por arquivo, porque a adesão cai à medida que o arquivo cresce. E escreva os fatos que você teria de explicar de novo, como comandos de build, convenções e a regra que você digitou no chat na sessão passada. Se um repositório já tem um AGENTS.md, um CLAUDE.md que contém apenas @AGENTS.md o importa, então ambas as ferramentas leem uma única fonte. Tudo nesta camada é contexto, não imposição; a documentação de memória do Claude Code deixa explícito que é um hook, e não uma instrução, que bloqueia uma ação.
Camada 2: Anotações que a ferramenta escreve para si mesma
A memória automática do Claude Code é a camada que as pessoas esquecem que existe. Enquanto trabalha, o Claude salva anotações sobre seu papel e suas preferências, correções que você faz, contexto do projeto que ele não consegue deduzir do código e onde encontrar coisas fora do repositório. Elas ficam em ~/.claude/projects/<project>/memory/, indexadas por um MEMORY.md cujas primeiras 200 linhas ou 25 KB carregam no início de cada sessão. Arquivos de tópicos carregam sob demanda.
Três limites importam. A memória automática é por repositório, compartilhada entre worktrees. Ela é local à máquina, então anotações no seu desktop não existem no seu laptop. E ela sobrevive ao /compact, porque a compactação reescreve a conversa, não os arquivos em disco. Para ver o que foi salvo, execute /memory; para desativá-la, defina autoMemoryEnabled como false ou exporte CLAUDE_CODE_DISABLE_AUTO_MEMORY=1.
Use esta camada para o tipo de coisa que você diz uma vez e espera que permaneça: “sempre use pnpm”, “os testes de API precisam de um Redis local”. Não conte com ela para decisões que um colega de equipe precisa; ela é só sua.
Camada 3: Retomada de sessão
Às vezes o contexto de que você precisa é a própria conversa. O Claude Code mantém as sessões em disco: claude --continue reabre a conversa mais recente no diretório atual, claude --resume <id-or-name> reabre uma específica, e --fork-session cria um novo ID de sessão para que você possa ramificar a partir de um checkpoint sem sobrescrevê-lo. Renomeie uma sessão com /rename antes de executar /clear para conseguir encontrá-la de novo. O Codex oferece codex resume para reabrir um chat recente do repositório atual.
A retomada tem um custo. Cada requisição carrega a conversa inteira, então uma sessão de longa duração consome mais uso para uma pergunta de uma linha do que uma nova. O /compact com uma instrução de foco, como /compact Focus on the migration plan, troca detalhe por espaço. O que sobrevive à compactação é o resumo mais tudo o que os arquivos de instrução recarregam; qualquer coisa dada apenas na conversa e não resumida se perde. Trate a retomada como uma ponte para atravessar um intervalo de almoço, não como a memória da equipe.
Camada 4: O registro de trabalho
Nenhuma das três primeiras camadas responde à pergunta que um colega de equipe faz na quinta-feira: o que o agente fez na terça, por quê, e quem aceitou? Arquivos de instrução guardam regras. A memória automática guarda as preferências de uma pessoa. Uma sessão retomada guarda a conversa de uma pessoa em uma máquina. A decisão, a execução e a aceitação precisam de um registro compartilhado, e esse registro é uma Task.
No Sharkly, uma execução vinculada a uma task inclui o título e a descrição da Task, os comentários recentes e o comentário que disparou a execução, as instruções e Skills do Agente, e os repositórios configurados para a Task. Essa é a transferência de contexto: a próxima execução começa a partir da Task, não da memória da sessão anterior. O progresso, os eventos de trace e o resultado retornam à Task, e o log de execução registra por que uma execução foi enfileirada, quando começou e terminou, chamadas de ferramentas, a origem do disparo e detalhes de falhas.
Duas regras da documentação do produto decidem onde as coisas vão, e ambas são regras de fronteira, não recursos. Sessões autônomas de Agent Chat pertencem à pessoa que as criou e os outros membros não recebem acesso; se a equipe precisa de uma conclusão, copie-a para a descrição da Task ou um comentário. E o chat do Agente em uma Task não é um comentário: ele não aparece em Activity, então uma decisão tomada ali é invisível a menos que alguém a registre por escrito. Nosso passo a passo de gerenciamento de projetos com Claude Code mostra a Task conduzindo uma mudança da issue até a revisão.
Vale citar mais uma distinção porque é exatamente a armadilha sobre a qual este artigo trata. Uma Crew pode habilitar o reúso compartilhado do diretório de Tasks, de modo que a execução de um membro de Agente posterior herda as mudanças locais do membro anterior no mesmo Computer. Essa configuração compartilha o estado do sistema de arquivos, não a sessão do provedor do Agente anterior. Os arquivos passam adiante; a conversa do modelo, não. Se o segundo Agente precisa do raciocínio do primeiro, ele tem de estar na Task.
Colocando cada tipo de contexto na sua camada
| Tipo de contexto | Camada | Exemplo |
|---|---|---|
| Regra que vale em toda sessão | Arquivo de instrução | Executar a suíte de testes antes de fazer commit |
| Correção ou preferência | Memória automática | Usar pnpm, não npm |
| Exploração pela metade | Retomada de sessão | A linha de depuração de ontem |
| Procedimento reutilizável que vários Agentes compartilham | Skill | A checklist de release |
| Objetivo, escopo, critérios de aceitação | Descrição da Task | O requisito que está sendo construído |
| Decisões, evidências, achados de revisão | Comentários da Task | Por que a opção B foi escolhida |
| O que foi executado, quando e como terminou | Log de execução | A execução de migração que falhou |
As Skills merecem uma linha própria. Uma Skill empacota instruções reutilizáveis e arquivos de apoio para orientações que devem se aplicar repetidamente, e uma Skill descoberta em um diretório de Runtime local pode ser importada para a organização para que deixe de viver em um único laptop. Nosso guia sobre Skills no Sharkly aborda escopo e vinculação, e o que é uma skill de agente de programação aborda o formato do arquivo.
Use arquivos de instrução e memória automática quando o contexto for sobre como você trabalha. Use uma Task quando o contexto for sobre o que a equipe está construindo e outra pessoa talvez precise lê-lo. O Sharkly não substitui o Claude Code, o Codex ou outras ferramentas de execução; ele acrescenta o registro compartilhado que essas ferramentas não mantêm.
Perguntas frequentes
O /compact perde meu CLAUDE.md? Não. O CLAUDE.md da raiz do projeto é relido do disco após a compactação. Instruções dadas apenas na conversa podem se perder; mova-as para o arquivo.
A memória automática é compartilhada com minha equipe? Não. Ela é armazenada sob seu diretório home, por repositório, e nunca é sincronizada. Contexto visível para a equipe pertence a um arquivo de instrução versionado ou a uma Task.
Um Agente no Sharkly consegue lembrar de uma execução anterior? Ele recebe a Task, seus comentários recentes e o comentário que a disparou a cada execução, que é a forma durável de lembrar. Ele não recebe a conversa privada da execução anterior. Veja Agentes no Sharkly para saber o que uma execução inclui.
E os servidores de memória MCP? Eles adicionam um quinto armazenamento que o modelo pode consultar, útil para recall estrutural de uma base de código. Eles ainda não registram quem aceitou uma mudança, então combine-os com um registro de trabalho em vez de substituí-lo.



