As novas regras de engenharia de contexto para os modelos da geração Claude 5

A engenharia de contexto mudou de forma significativa com a geração Claude 5, e a própria Anthropic documentou essa virada. Em 24 de julho de 2026, Thariq Shihipar, do corpo técnico da empresa, publicou um artigo sobre o tema.

Segundo ele, mais de 80% do prompt de sistema do Claude Code saiu para o Claude Opus 5 e o Claude Fable 5, sem perda mensurável nas avaliações de código.

A conclusão prática incomoda quem passou anos acumulando instruções. Boa parte do que chamávamos de boa prática virou mito, e esses mitos agora custam qualidade em vez de garanti-la.

Neste artigo, você vai entender o que mudou, por que mudou e como aplicar essas lições em prompts de sistema, arquivos CLAUDE.md, skills e referências.

O que é engenharia de contexto

Quando alguém envia uma mensagem para o Claude, o prompt do usuário representa apenas uma fração do que o modelo recebe. O restante vem do prompt de sistema, das skills, do CLAUDE.md, da memória e das descrições de ferramentas.

A Anthropic chama esse conjunto de engenharia de contexto. Segundo o artigo Effective context engineering for AI agents, trata-se das estratégias para curar e manter o conjunto ideal de tokens durante a inferência.

A diferença essencial em relação à engenharia de prompt é a generalidade. Um prompt atende a um pedido específico, enquanto o contexto atende a milhares de pedidos que você ainda não conhece.

Essa assimetria muda o custo do erro. Um prompt mal escrito custa uma resposta ruim, ao passo que uma linha equivocada no CLAUDE.md cobra um imposto silencioso em toda requisição futura.

O orçamento de atenção

O material anterior da Anthropic já apontava a raiz do problema. Modelos de linguagem operam com um orçamento de atenção finito, e cada novo token consome uma parte dele.

Por isso, boa engenharia de contexto significa encontrar o menor conjunto possível de tokens de alto sinal que maximize a chance do resultado desejado. Em outras palavras, mais instrução não significa mais qualidade.

Esse limite tem origem na arquitetura transformer. Nela, cada token atende a todos os demais, o que gera relações par a par que crescem de forma quadrática conforme o contexto aumenta.

Ou seja, cada instrução adicional tem custo. Ela compete por atenção com todas as outras, inclusive com o pedido real do usuário.

Por que a Anthropic simplificou a engenharia de contexto

A revisão começou pela leitura de transcrições do uso interno do Claude Code pelos próprios engenheiros da Anthropic. Nessas transcrições, apareceu um padrão de mensagens conflitantes dentro de uma mesma requisição.

O prompt de sistema, as skills e o pedido do usuário puxavam o comportamento para direções opostas. Um exemplo didático: instruções para manter documentação quando apropriado conviviam com proibições categóricas de escrever comentários.

O modelo geralmente consegue interpretar a intenção real e chegar à resposta correta. Contudo, ele precisa gastar raciocínio para arbitrar entre camadas contraditórias antes de decidir o que fazer.

Esse gasto é puro desperdício. Afinal, é atenção consumida em conciliar o seu próprio arquivo de configuração em vez de resolver o problema técnico.

Havia também um fator histórico. Muitas restrições nasceram para evitar cenários graves com modelos antigos, como a remoção indevida de arquivos ou a geração de artefatos que ninguém pediu.

Com a geração atual, boa parte dessas travas pode sair, porque o modelo consegue usar o contexto ao redor e o próprio julgamento. Além disso, o Claude Code ganhou memória, artifacts e skills, o que reduz a dependência do CLAUDE.md como repositório único de informação, orientação e estado.

As seis novas regras de engenharia de contexto

O artigo da Anthropic organiza a nova engenharia de contexto em seis movimentos. Cada um deles troca uma prática antiga por outra mais alinhada à capacidade dos modelos atuais.

Da regra ao julgamento

A primeira mudança abandona regras absolutas em favor do julgamento do modelo. O prompt de sistema antigo mandava o Claude não escrever comentários por padrão, nunca produzir blocos de comentário multilinha e evitar documentos de planejamento não solicitados.

Essa instrução fazia sentido para modelos anteriores. No entanto, ela era errada para uma parte relevante dos pedidos, como código complexo que exige explicação ou usuários com padrões próprios de documentação.

A formulação nova inverte a lógica.

Em vez de proibir, ela pede que o código novo se pareça com o código ao redor. Isso inclui a densidade de comentários, a nomenclatura e o idioma da base.

A regra antiga codificava uma decisão, enquanto a nova codifica um critério. Assim, a decisão fica com o modelo, que tem acesso ao repositório e a um contexto que você não tinha ao escrever a regra.

Na prática, a engenharia de contexto agora prefere instruções relacionais a instruções absolutas. Reserve palavras como sempre e nunca para os poucos casos em que a exceção realmente não existe.

Do exemplo ao design de interface

Na engenharia de contexto, a segunda mudança é talvez a mais contraintuitiva para quem escreve ferramentas. Por muito tempo, a regra número um do uso de tools foi fornecer exemplos de chamada.

Com a geração atual, porém, os exemplos passaram a restringir o espaço de exploração do modelo. Eles ancoram o comportamento nos padrões demonstrados.

A recomendação substituta é investir no desenho da própria ferramenta. Então, a pergunta deixa de ser como demonstrar o uso e passa a ser quais parâmetros existem e quão expressivos eles são.

O exemplo citado é a ferramenta de Todo. Declarar o campo de status como uma enumeração entre pending, in_progress e completed já comunica a semântica esperada sem nenhum exemplo de uso.

Um schema ilustrativo nesse estilo ficaria assim:

{
  "name": "todo_write",
  "description": "Tracks task progress. Keep only one item in_progress at a time.",
  "input_schema": {
    "type": "object",
    "properties": {
      "content": { "type": "string" },
      "status": {
        "type": "string",
        "enum": ["pending", "in_progress", "completed"]
      }
    },
    "required": ["content", "status"]
  }
}

Repare que a instrução de manter apenas um item em progresso define o comportamento em uma linha, dentro da própria descrição. Dessa forma, nomes de parâmetros, tipos, enumerações e restrições de schema funcionam como documentação executável e carregam mais sinal por token do que qualquer exemplo narrado.

Da carga inicial à divulgação progressiva

A terceira mudança trata de quando o contexto entra, e não de quanto contexto existe. Como o Claude Code nasceu focado em programação, o prompt de sistema carregava instruções detalhadas sobre revisão de código e verificação.

Essas informações raramente eram necessárias, mas, quando eram, se tornavam críticas. A solução foi mover verificação e revisão de código para skills próprias, que o Claude aciona apenas quando a tarefa exige.

Esse é o princípio da divulgação progressiva, ou progressive disclosure, um dos pilares da engenharia de contexto atual. A ideia é carregar a informação certa no momento certo, em vez de antecipar tudo.

O mecanismo vai além das skills. Parte das ferramentas do Claude Code usa carregamento diferido, e o agente precisa buscar a definição completa via ToolSearch antes de usá-la.

Com isso, o produto oferece muito mais ferramentas sem que todas ocupem contexto o tempo inteiro. O mesmo raciocínio derruba o mito de que CLAUDE.md e SKILL.md precisam concentrar tudo o que talvez seja necessário.

A recomendação é o oposto: manter uma árvore de arquivos que o modelo carrega quando fizer sentido. Vale, contudo, reconhecer o custo, porque explorar em tempo de execução é mais lento e exige uma organização de arquivos clara.

Da repetição às descrições simples

A quarta mudança na engenharia de contexto decorre diretamente da evolução dos modelos. Versões anteriores às vezes precisavam de instruções repetidas e davam mais peso ao fim da janela de contexto do que ao início.

Isso levava a uma duplicação estrutural, com referências a ferramentas no prompt de sistema e instruções equivalentes na descrição da tool. Agora, a orientação é simples: instruções sobre como usar uma ferramenta pertencem à descrição da ferramenta.

O benefício vai além da economia de tokens. Na verdade, eliminar a duplicação remove uma fonte crônica de contradição, já que duas cópias da mesma regra tendem a divergir com o tempo.

Da memória manual à memória automática

A quinta mudança altera o modelo mental sobre persistência entre sessões. Antes, a prática recomendada era usar um atalho de tecla para gravar informações no CLAUDE.md, transformando o arquivo em memória de longo prazo.

Agora o Claude salva automaticamente as memórias relevantes para o trabalho e para o usuário. Por consequência, o CLAUDE.md volta a ser um documento de projeto, curado e estável, em vez de um log que cresce sem revisão.

De especificações simples a referências ricas

A sexta mudança amplia o que a engenharia de contexto aceita como especificação. Historicamente, o modo de planejamento dependia de arquivos markdown com planos, e a boa prática era manter specs versionadas no repositório.

O modelo atual lida com referências bem mais complexas. Um artifact HTML gerado pelo próprio produto, por exemplo, funciona como referência com fidelidade maior do que uma descrição textual.

Referências também podem ser código. Uma suíte de testes detalhada é uma especificação executável, assim como uma função de outra base que você deseja portar.

Rubricas formam uma terceira categoria.

Elas permitem que o Claude verifique se o resultado atende ao seu critério de qualidade, como um bom design de API. Para isso, fluxos dinâmicos criam agentes verificadores que operam sobre a rubrica.

Como aplicar a engenharia de contexto nas quatro camadas

O artigo fecha com uma divisão de responsabilidades entre quatro camadas. Entender o papel de cada uma evita que a mesma informação apareça em lugares diferentes.

Prompt de sistema na engenharia de contexto

O prompt de sistema está atrelado ao produto. Ele informa ao Claude em qual produto está operando e qual é a natureza do trabalho.

Quem usa o Claude Code dificilmente vai mexer nessa camada. Por outro lado, quem constrói o próprio harness de agente deve concentrar o esforço exatamente aqui.

CLAUDE.md

A orientação é manter o arquivo leve, com uma descrição breve do propósito do repositório.

A maior parte dos tokens deve ir para armadilhas reais da base. Um exemplo é a decisão de manter todos os tipos em um único arquivo.

O critério de exclusão é claro: evite declarar o óbvio. Ou seja, deixe de fora aquilo que o Claude descobriria olhando o sistema de arquivos ou o repositório.

Quando houver um conjunto extenso de instruções sobre um tema recorrente, como verificação de trabalho, crie uma skill. Em seguida, referencie essa skill a partir do CLAUDE.md.

Skills

Skills funcionam como guias leves que ajudam o Claude a encontrar informação quando precisar. O erro comum é torná-las restritivas demais, algo que só se justifica em áreas de alta criticidade.

Para skills longas, aplique a divulgação progressiva internamente, dividindo o conteúdo em vários arquivos. Além disso, o valor real de uma skill está em codificar opiniões e práticas do seu time ou produto, e não conhecimento geral.

Referências

Você pode incluir arquivos como referência por menção direta, para que o Claude consulte informação aprofundada sobre o plano atual. Isso vale para especificações, mockups e até bases de código inteiras.

A Anthropic prefere referências em código, porque oferecem instrução de alta fidelidade em uma linguagem que o modelo domina. Por exemplo, um mockup em HTML tende a produzir resultados melhores do que uma descrição textual do design ou uma captura de tela.

Como revisar sua engenharia de contexto

A recomendação final é revisar prompt de sistema, skills e arquivos CLAUDE.md com o objetivo explícito de simplificar. Para apoiar esse processo, o Claude Code oferece o comando /doctor, também disponível como claude doctor no terminal.

Ele ajuda a dimensionar skills e arquivos CLAUDE.md.

Um roteiro razoável para revisar a engenharia de contexto segue seis passos:

  1. Inventário: liste tudo o que compõe o contexto hoje, incluindo descrições de ferramentas, que costumam ficar esquecidas.
  2. Contradições: procure pares de instruções que se anulam ou empurram o modelo para lados opostos.
  3. Classificação: separe conhecimento geral de conhecimento específico do seu contexto e elimine o primeiro.
  4. Critérios: converta regras absolutas em critérios e mantenha proibições só onde o erro é irreversível.
  5. Divulgação progressiva: mova blocos condicionais para skills e deixe no arquivo principal apenas o ponteiro.
  6. Medição: avalie o resultado antes e depois de cada corte.

O último passo merece destaque. Afinal, a afirmação de que 80% do prompt saiu sem perda só tem valor porque havia avaliação de código sistemática para confirmar.

Se o seu interesse também passa pelo custo, leia o artigo sobre como economizar tokens no Claude. Ele complementa a revisão com estratégias para a sessão.

Limites da nova engenharia de contexto

Simplificar não significa esvaziar. O próprio artigo preserva espaço para restrições fortes em áreas de alta importância e reconhece que o prompt de sistema continua merecendo atenção em agentes próprios.

Também é importante notar que essas recomendações de engenharia de contexto foram calibradas para a geração Claude 5. Contextos que rodam em modelos anteriores ou em outros provedores podem continuar dependendo de guardrails que aqui saíram.

Por fim, existe o risco de uma leitura apressada. Remover instruções sem colocar no lugar interfaces melhores, referências mais ricas ou skills bem organizadas não é simplificação, mas apenas perda de informação.

Para ver essas ideias em um fluxo completo, leia o artigo na prática com o Claude Fable 5. Ele foca em reduzir o que o desenvolvedor não sabe que não sabe.

Conclusão

A tese central da Anthropic é que a qualidade da engenharia de contexto deixou de depender do volume de instruções. Agora, ela depende da relação entre sinal e token.

Modelos com julgamento melhor tornam obsoletas as travas escritas para modelos sem ele. Além disso, essas travas passam a competir com o pedido real do usuário pelo mesmo orçamento de atenção.

As seis mudanças convergem para um princípio.

Comunique critérios em vez de decisões, desenhe interfaces em vez de demonstrar uso e carregue o contexto sob demanda. Portanto, para quem constrói agentes, auditar o contexto deixa de ser tarefa acessória e passa a ser prática recorrente de engenharia.

FAQ

O prompt de sistema do Claude Code realmente encolheu 80%?

Sim, a Anthropic removeu mais de 80% do prompt de sistema do Claude Code para o Claude Opus 5 e o Claude Fable 5. As avaliações de código não mostraram perda mensurável.

O CLAUDE.md deixou de ser útil?

Não. Ele continua valioso para contexto que o modelo não infere sozinho, como armadilhas da base, mas não deve concentrar tudo nem servir de memória incremental.

Devo remover os exemplos das minhas descrições de ferramentas?

A orientação é trocar exemplos por parâmetros mais expressivos, com enumerações, nomes claros e restrições de schema. Exemplos tendem a restringir a exploração do modelo.

O que é divulgação progressiva na prática?

É estruturar o contexto em arquivos e ferramentas carregados sob demanda, em vez de colocar tudo no prompt inicial. Skills acionadas seletivamente e ferramentas com carregamento diferido são os exemplos citados.

Existe alguma ferramenta para revisar meu contexto?

Sim. O comando /doctor, ou claude doctor no terminal, ajuda a dimensionar skills e arquivos CLAUDE.md.

Essas recomendações valem para qualquer modelo?

Elas foram calibradas para a geração Claude 5. Em modelos anteriores, parte dos guardrails removidos ainda pode ser necessária.