Suas regras expiram na compactação. Veja exatamente quais.
Quando uma sessão longa compacta, parte das suas instruções volta do disco e parte simplesmente não volta. A separação está documentada e quase ninguém conhece — é por isso que o Claude "esquece suas regras" depois de três horas.
- #claude-code
- #context
- #claude-md
Todo mundo já passou pela sessão longa em que o Claude para de respeitar, sem avisar, uma regra que ele seguia uma hora atrás. A explicação de sempre é que o modelo "cansou" ou que o contexto "ficou barulhento". As duas estão erradas, e o motivo real está escrito na documentação.
Quando o contexto enche, o Claude Code compacta — ele troca o histórico da conversa por um resumo estruturado. A partir daí, suas instruções sobrevivem ou morrem dependendo de como foram carregadas. Não de quão importantes elas são.
A separação
Reinjetadas do disco depois da compactação, ou seja, persistem:
CLAUDE.mdda raiz do projeto e regras sem escopo- Memória automática
- System prompt e output style — nunca estiveram no histórico de mensagens, então nem são tocados
Somem até algo disparar de novo:
- Regras com frontmatter
paths:— perdidas até um arquivo correspondente ser lido de novo CLAUDE.mdaninhado em subpasta — perdido até um arquivo daquela subpasta ser lido de novo
É esse o problema em que as pessoas batem sem parar. Regras com escopo de caminho e CLAUDE.md aninhados entram na conversa como histórico de mensagem, no momento em que o arquivo-gatilho é lido. A compactação resume histórico de mensagem. Então eles são resumidos junto com todo o resto, e só voltam quando o Claude por acaso lê um arquivo correspondente de novo.
Aquele seu apps/api/CLAUDE.md caprichado foi seguido à risca por duas horas e sumiu — não porque a regra era fraca, mas porque ela mora na camada que a compactação come.
Skills têm orçamento, e o corte vem de baixo
O corpo das skills invocadas é reinjetado depois da compactação — mas com teto: 5.000 tokens por skill, 25.000 tokens no total, e quando o total estoura, as skills invocadas há mais tempo caem primeiro.
O detalhe que mais importa: o corte preserva o começo do arquivo. Ou seja, a ordem dentro do seu SKILL.md não é enfeite. Coloque lá em cima as instruções que você não pode perder; o que estiver no fim de uma skill longa é a primeira coisa a desaparecer de uma sessão compactada.
Eu trataria os 5.000 tokens como orçamento de projeto por skill, não como um limite em que você esbarra de vez em quando. Se uma skill passa disso, na verdade ela é duas.
Pare de diagnosticar isso no feeling
O /context entrega uma leitura ao vivo por categoria, com sugestões de otimização e — muito útil — quais arquivos CLAUDE.md e de memória automática de fato carregaram. Essa última parte resolve em dois segundos um monte de discussão do tipo "será que ele está lendo minhas regras?".
Rode quando a sessão começar a se comportar mal, antes de reexplicar qualquer coisa.
Três movimentos, em ordem de preferência
- Compacte de propósito, antes que aconteça com você.
/compact foco na correção do bug de authguarda o que você escolheu; a passada automática guarda o que ela adivinha ser importante. Mesmo mecanismo, resumo melhor — e rodar cedo não custa nada. /clearentre tarefas que não têm relação. A conversa velha não fica só ocupando espaço: ela empurra pra fora os arquivos de que você vai precisar e custa token em cada mensagem.- Delegue leituras grandes pra um subagente. O conteúdo dos arquivos cai na janela de contexto dele, não na sua, e só o resumo volta. Esse é o que muda o formato das sessões longas, em vez de só adiar o problema.
Se você prefere uma janela maior a uma conversa menor, Fable 5, Sonnet 5, Opus 4.6 em diante e Sonnet 4.6 têm janela de 1 milhão de tokens. Vale saber que a compactação funciona exatamente igual no limite maior — janela maior adia isso, não elimina.
Faça isso hoje
Abra seu projeto e procure qualquer CLAUDE.md em subpasta, ou qualquer arquivo de regra com paths: no frontmatter. Pra cada um, faça uma única pergunta: isso precisa valer a sessão inteira, ou só enquanto eu estiver mexendo naqueles arquivos?
Tudo que cair na primeira categoria está no lugar errado agora. Mova pro CLAUDE.md da raiz — é uma edição de dois minutos que vai te poupar uma discussão com a sua própria ferramenta lá pela terceira hora da sessão da semana que vem.
Fontes
Continue lendo
Mais guias parecidos com este.
Um bom handoff é, quase todo, uma lista de becos sem saída
Compactação e `/resume` guardam o que aconteceu. Nenhum dos dois guarda o que você descartou — e as tentativas abandonadas são a coisa mais cara de uma sessão longa. Aqui vai o arquivo de handoff que resolve isso, o prompt que escreve ele e o comando que gera tudo a partir de uma sessão que você já fechou.
Os comandos do Claude Code que você pula são todos o mesmo
São mais de 60 comandos embutidos. Quase todo mundo usa quatro. Organize os que faltam pelo que eles realmente fazem e aparece um padrão — quase todos existem pra administrar um único recurso, e é justamente ele que estraga suas sessões longas.
Pare de assistir demo de IA. Leia o transcript.
Um repositório pronto não te ensina nada sobre como ele ficou pronto. Desde dezembro de 2025 dá pra ler a sessão inteira de um dev raiz no Claude Code — cada `prompt`, cada caminho errado, cada correção. Aqui vão as cinco sessões que valem estudo, e exatamente o que procurar em cada uma.