A conversa já se estende há um bom tempo. O(a) senhor(a) rejeitou uma solução e explicou o motivo, mas, dez mensagens depois, o agente propõe exatamente a mesma coisa. A primeira reação é compreensível: apagar tudo e começar de novo.
Repetir uma solução rejeitada é um sinal claro, mas ainda não é um diagnóstico. Uma resposta isolada não permite concluir que a culpa é da conversa acumulada: o mesmo pode acontecer quando a solicitação é contraditória ou quando o agente está consultando uma versão do arquivo de meia hora atrás.
Vamos ver três comandos que atuam sobre a própria conversa: /context mostra o que está ocupando a janela, /compact resume o histórico, e /clear inicia uma nova conversa. Mais importante do que a sintaxe é escolher entre eles: o que guardar antes, o que conferir depois e como perceber que o problema talvez nem seja o tamanho da conversa.
Encontre o problema primeiro
Antes de compactar ou limpar qualquer coisa, separe quatro situações. Por fora, elas se parecem: em todas, o agente parece "não ouvir", mas cada uma pede uma ação diferente.
- Faltam dados de entrada. Ninguém informou a regra de concessão da recompensa, e ela não aparece nos arquivos consultados. Encurtar a conversa não inventa o que nunca esteve nela: será preciso fornecer o dado que falta.
- Informações desatualizadas. A conversa ainda contém o conteúdo de um arquivo lido meia hora atrás, mas o arquivo no disco já mudou. O que ajuda é ler de novo, não compactar.
- Solicitação contraditória. Uma coisa foi dita no chat e outra consta na especificação salva. Decida qual requisito continua valendo e corrija a fonte. Um arquivo não está automaticamente certo só por ser um arquivo.
- Ruído acumulado. Muitas alternativas rejeitadas, saídas longas de comandos e discussões sobre arquivos que não têm relação com a tarefa. É aqui que faz sentido trabalhar o contexto.
Uma janela cheia não é um quinto item da lista nem explica qualquer erro. Uma porcentagem alta, por si só, não prova que o agente errou por causa dela; uma baixa tampouco prova que está tudo certo com a conversa. A ordem da verificação é simples: a solicitação, se os arquivos estão atualizados, se as saídas estão atualizadas e, só então, o estado da conversa.
Peça ao Claude Code que informe o objetivo atual da tarefa, as limitações e os arquivos em que a solução proposta se baseia. Compare a resposta com o que o(a) senhor(a) vê. Se aparecer um arquivo sem relação com a tarefa, ou se o objetivo não corresponder ao que foi pedido, já dá para saber o que precisa ser corrigido - e talvez o problema nem esteja no tamanho da conversa. A mesma pergunta será útil depois de compactar e no início de uma conversa nova.
Confira o uso da janela
Se a suspeita ainda recair sobre a conversa, consulte /context. O comando mostra o que ocupa a janela, separado por categorias: instruções do sistema, instruções do projeto, arquivos lidos e saídas de comandos, conversa e espaço livre. Cabe ao(à) senhor(a) decidir quais informações já não são necessárias para a tarefa. O comando não avalia o significado do que foi lido, e a linha geral das mensagens não revela qual arquivo está sobrando.
Não existe um limite universal do tipo "acima de tantos por cento é hora de compactar"; o tamanho da janela também depende do modelo e das configurações. Observe a composição, não a porcentagem. E lembre-se: fechar uma aba do editor não remove da conversa o que já foi lido.
Continue a tarefa após compactar
O comando /compact resume o histórico, mas o(a) senhor(a) continua na mesma tarefa. O Claude Code também faz isso por conta própria à medida que a janela se preenche. Por isso, o comando manual é útil quando se quer escolher o momento (por exemplo, antes de uma nova etapa grande do trabalho) e definir o foco.
A principal limitação é que se preserva um resumo, não a conversa. Não conte com detalhes que ficaram de fora como se ainda estivessem na janela. E pedir "preserve estas condições" não garante que o resumo seja completo: é um pedido, não um mecanismo.
O que guardar
Antes do comando, prepare uma nota curta sobre a tarefa: objetivo, limites, decisões tomadas, fatos verificados e próximo passo. Leva alguns minutos. Em compensação, dá para conferir a nota com os arquivos e os resultados das verificações, ao contrário da memória da conversa. Não precisa criar um arquivo separado; o documento da tarefa que já existe é suficiente.
Este é o estado de uma tarefa didática sobre a concessão repetida de uma recompensa. É um exemplo, não um relatório de verificação realizada:
Objetivo: em uma partida concluída, a recompensa é concedida uma única vez; uma nova partida permite concedê-la novamente.
Limites: src/reward-flow.js e o teste de recompensa existente; não alterar a interface.
Confirmado: depois da primeira concessão, clicar novamente durante a mesma partida aumenta a pontuação outra vez.
Fonte: a gravação da reprodução e o estado inicial estão descritos em TASK_SPEC.md.
Rejeitado: ocultar o botão sem corrigir o tratamento do segundo clique.
Próximo passo: verificar o handler e propor uma alteração; a correção e os testes ainda não foram feitos.Observe a última linha. A reprodução confirmada e a correção concluída são coisas diferentes, e a nota precisa deixar isso claro. Caso contrário, depois de compactar, "foi verificado" pode facilmente virar "foi corrigido". O documento desta tarefa é didático; substitua o caminho pelo seu.
Depois de conferir a nota, compacte com um foco definido:
/compact Concentre-se em corrigir a concessão repetida da recompensa. Preserve o objetivo, os limites de TASK_SPEC.md, a reprodução confirmada, a solução rejeitada e o próximo passo. Indique que a correção e os testes ainda não foram feitos.O que conferir depois
Depois de compactar, não retome a conversa do ponto em que parou. Primeiro, devolva à conversa o que precisa estar exato e faça a pergunta de verificação:
Leia TASK_SPEC.md e a versão atual de src/reward-flow.js. Diga brevemente qual é a limitação e o próximo passo. Se o resumo divergir dos arquivos, indique a diferença. Não altere o código ainda.Compare a resposta com cada linha da nota, não com uma impressão geral. No nosso exemplo, são três verificações:
- na linha "Próximo passo", a correção e os testes não foram apresentados como concluídos;
- em "Limites", continua valendo a proibição de alterar a interface;
- a condição sobre uma nova partida, descrita em "Objetivo", não se perdeu.
O agente vai usar outras palavras, e tudo bem. Se uma condição tiver desaparecido, recupere-a da fonte antes de alterar qualquer coisa. Aqui, o que se verifica é o estado da conversa, não o código: essa comparação não comprova que a próxima alteração estará correta.
A compactação atua apenas sobre o histórico da conversa. Ela não desfaz alterações nos arquivos nem substitui o Git. O arquivo raiz CLAUDE.md é carregado novamente, então as regras do projeto sobrevivem à compactação. Mas informações temporárias da tarefa não devem ficar ali: a frase "estou corrigindo a concessão da recompensa" continuará lá mesmo depois que a tarefa terminar. O que o agente disser após compactar também não se torna confiável automaticamente. Confira a fonte: o resumo, o arquivo lido novamente ou uma nova execução.
Comece uma nova tarefa
O comando /clear inicia uma nova conversa, sem as mensagens anteriores. Os arquivos no disco e as instruções do projeto continuam lá, e a memória automática ativada também pode ser usada. Portanto, "do zero" se refere à conversa. A conversa anterior não é excluída; é possível voltar a ela com /resume.
É fácil confundi-lo com claude --continue, embora façam o oposto. Digita-se /clear dentro da sessão para deixar para trás o histórico acumulado. Já claude --continue é digitado no terminal ao iniciar, para retomar a conversa mais recente desta pasta com todo o histórico. Se o problema era a própria conversa, --continue levará o(a) senhor(a) de volta exatamente a ela.
Antes de limpar, guarde o que será necessário depois: uma nota, os caminhos relevantes e os resultados das verificações. Uma nova conversa precisa de uma solicitação clara, não de uma pista: objetivo, limitações e caminhos. Para indicar um arquivo específico, use @arquivo. Só tenha em mente que a menção direciona a leitura, mas não restringe o acesso aos outros arquivos.
Escolha uma ação
A sequência é curta: pare, faça a pergunta de verificação, confira o uso da janela se não estiver claro o que a ocupa, escolha uma ação e verifique o resultado. Contar mensagens não ajuda; o que importa é a composição da conversa e o que o(a) senhor(a) pretende fazer em seguida.
| Situação | Ação e motivo |
|---|---|
| O agente não recebeu a regra de concessão da recompensa | Forneça a regra e o arquivo; compactar não preencherá essa lacuna |
| A resposta se baseia em um arquivo que mudou desde então | Peça para ler a versão atual; não há motivo para compactar |
O chat definiu uma coisa, mas TASK_SPEC.md registra outra | Decida qual requisito vale e corrija a fonte |
| Mesma tarefa, muitas alternativas rejeitadas e pouco espaço útil | Nota, /compact com foco e pergunta de verificação |
| Após compactar, desapareceu a proibição de alterar um módulo vizinho | Leia novamente a fonte das limitações e confira o entendimento antes de alterar |
| Começa uma tarefa independente sobre a interface | Guarde o resultado necessário, use /clear e faça uma nova solicitação |
O que muda no trabalho
Por si só, nenhum dos três comandos corrige nada. O que muda é a forma de conduzir uma tarefa longa:
- uma resposta estranha leva primeiro à solicitação e à checagem de que os arquivos estão atualizados, e só depois à conversa;
- antes de compactar ou limpar, há uma nota conferida com os arquivos; depois da compactação, a resposta é comparada com ela linha por linha;
- uma nova tarefa recebe sua própria solicitação, em vez de herdar o que sobrou da conversa anterior.
A diferença aparece em um único pedido. Antes:
Você se confundiu, vamos começar de novo.Depois:
A tarefa agora é corrigir a concessão repetida da recompensa em src/reward-flow.js.
Leia TASK_SPEC.md, informe a limitação e o próximo passo. Não altere o código ainda.A segunda formulação permite conferir a resposta: compare a limitação e o próximo passo indicados com os arquivos e veja logo se há alguma divergência. Não há como verificar a primeira mensagem.
GO TO FULL VERSION