O Claude Code esqueceu algo que você ensinou ontem, e no transcript aparece: Error: this write left the memory index at MEMORY.md at 214 lines, over its 200-line read limit. Isso significa que o índice da memória automática passou do limite de leitura, e tudo que está depois da linha 200 (ou depois de 25KB) não entra mais na sessão.
Este guia mostra qual é o limite exato, como medir o seu arquivo em um comando e como reescrever o índice sem perder nada. Tudo foi conferido na documentação oficial do Claude Code em 12/10/2026.
O que significa "over its 200-line read limit"?
Significa que o Claude escreveu no MEMORY.md e deixou o arquivo acima de um dos dois limites de leitura: 200 linhas ou 25KB. A escrita funcionou, mas só o começo do arquivo é carregado quando uma sessão abre. A mensagem, como está na documentação (o trecho omitido diz que as entradas do fim já estão invisíveis):
Error: this write left the memory index at MEMORY.md at 214 lines, over its 200-line read limit. The write succeeded, but everything past the limit is silently dropped each time the index is loaded [...] Rewrite it to under 140 lines now: keep one line per entry, move detail into topic files, and merge or drop stale entries.
O Claude Code entrega esse erro ao Claude depois da escrita, e não como aviso no terminal. Por isso é comum você só perceber lendo o transcript, ou quando o agente ignora uma preferência que já tinha aprendido.
Qual é o limite exato do MEMORY.md?
São carregadas as primeiras 200 linhas ou os primeiros 25KB do MEMORY.md, o que vier primeiro. O resto fica no disco, mas não entra no início da conversa.
| Item | Comportamento | Desde |
|---|---|---|
MEMORY.md (índice da memória automática) | Carrega até 200 linhas ou 25KB, o que vier primeiro | Limite atual da documentação |
| Aviso ao passar do limite | Erro devolvido ao Claude logo após a escrita | v2.1.210 (antes, o corte era silencioso) |
| Frontmatter YAML e comentários HTML de bloco | Removidos antes da medição, não contam | v2.1.211 |
Arquivos de tópico (user_role.md etc.) | Não carregam no início, o Claude lê quando precisa | Sempre |
CLAUDE.md | Carrega inteiro até 4 MiB; acima disso é ignorado | Limite atual da documentação |
O limite de 200 linhas vale só para o MEMORY.md. A memória automática fica em ~/.claude/projects/<projeto>/memory/, com o índice e um arquivo por memória.
Por que justamente as memórias novas somem?
Porque o corte acontece no fim do arquivo, e é no fim que entradas novas costumam ser adicionadas. O índice é lido de cima para baixo e parado no limite. Resultado: o que o agente acabou de aprender é a primeira coisa a ficar invisível.

Como saber se o meu MEMORY.md já passou do limite?
Conte linhas e bytes de todos os índices de uma vez. No macOS ou Linux:
find ~/.claude/projects -name MEMORY.md -exec wc -l -c {} +
A primeira coluna é o número de linhas e a segunda, o tamanho em bytes. Qualquer arquivo acima de 200 linhas ou perto de 25000 bytes já está perdendo o final. Se você mudou o local com autoMemoryDirectory no settings.json, troque o caminho do comando.
Para ver quais arquivos de instrução foram carregados na sessão atual, rode /context e confira a lista em Memory files.
Como resolver o limite do MEMORY.md?
Reescreva o índice para ficar bem abaixo do limite, com uma linha por entrada, e leve o detalhe para os arquivos de tópico. Nada se perde: os arquivos de tópico continuam lá e o Claude os abre quando precisa.
- Peça ao próprio Claude, na sessão:
Reescreva o MEMORY.md para menos de 140 linhas: uma linha por entrada, detalhe nos arquivos de tópico, junte entradas repetidas e apague as que ficaram velhas. - Prefere editar à mão? Rode
/memorye escolha a opção de abrir a pasta da memória automática. É tudo markdown comum. - Rode de novo o
find ... wc -l -ce confirme que o arquivo ficou abaixo de 200 linhas e de 25KB.
O número 140 vem da própria mensagem de erro: é a meta que o Claude Code sugere para deixar folga antes do próximo corte.
Regra que precisa valer em toda sessão
Se uma entrada é instrução fixa do projeto ("use pnpm, não npm", "rode os testes antes do commit"), ela fica melhor no CLAUDE.md, que carrega inteiro. Instrução que só importa para parte do código pode ir para .claude/rules/, com escopo por tipo de arquivo, e só entra quando o Claude mexe nesses arquivos. A documentação recomenda manter cada CLAUDE.md abaixo de 200 linhas por aderência, mas isso é recomendação, não corte.
E se o corte aconteceu numa versão antiga?
Antes da v2.1.210, o índice acima do limite era cortado em silêncio no carregamento, sem nenhum aviso na escrita. Atualize o Claude Code e meça o arquivo: se ele passou do limite naquela época, as entradas do fim estão ausentes das sessões desde então.
Na issue #99403, aberta em 04/10/2026, usuários relatam também um aviso no carregamento, no formato MEMORY.md is 267 lines (limit: 200). Only part of it was loaded, observado no Claude Code 2.1.286. Esse texto vem de relato de usuário, não da documentação oficial, e o pedido da issue (mostrar quais entradas caíram) segue aberto.
Se você usa a Verboo Code, as instruções permanentes do projeto ficam no arquivo aberto pelo /memory; o passo a passo está em como dar instruções permanentes ao agente com /memory e AGENTS.md.
Se o que limita o seu agente de programação é o plano e não o tamanho da memória, a Verboo Code tem tokens ilimitados.



