Índice
4 min de leitura

Como o Codex lida com o limite de contexto: resumos criptografados e handover entre sessões

Uma análise aprofundada de como o Codex trata compactação de contexto com resumos AES-criptografados e como desenvolvedores constroem pipelines de handover entre sessões para não perder nada.

Resumo rápido

Uma análise aprofundada de como o Codex trata compactação de contexto com resumos AES-criptografados e como desenvolvedores constroem pipelines de handover entre sessões para não perder nada.

Use o Claude Code por tempo suficiente e você vai esbarrar na mensagem “Compacting conversation…”. Depois disso, as respostas começam a desviar do assunto e os tempos de espera disparam. A janela de contexto de 200K tokens esgota muito mais rápido do que parece.

Corria muito a ideia de que o Codex da OpenAI resolvia esse problema de forma mais inteligente — então fui atrás de toda análise pública que consegui encontrar.

Resumir ainda significa esquecer

Quando as conversas ficam longas, o esquecimento de partes anteriores é uma limitação estrutural das IAs. A janela de contexto tem um teto de 200K tokens, e uma única sessão de programação ultrapassa isso com facilidade. Mesmo com sumarização, a conversa original desaparece — e a qualidade das respostas cai inevitavelmente.

Já vivi isso dezenas de vezes: perguntar sobre “aquela função que discutimos antes” depois de uma compactação e receber uma resposta completamente errada.

  • A janela padrão de 200K tokens do Claude Code some em uma única sessão de refatoração pesada
  • O resumo substitui o original → contexto detalhado perdido → qualidade das respostas piora
  • Os resultados de chamadas de ferramentas que são achatados nos resumos são especialmente devastadores

A compactação do Codex era um “resumo criptografado”

Kangwook Lee, CAIO da Krafton, fez engenharia reversa do pipeline interno do Codex usando duas injeções de prompt — e os resultados foram fascinantes.

Quando a API compact() do modelo Codex é chamada, um LLM separado no servidor sumariza a conversa e retorna o resultado criptografado com AES. No próximo turno, esse blob criptografado é decriptado, prefixado com um prompt de handoff dizendo “aqui está um resumo da conversa anterior”, e entregue ao modelo.

  • Conteúdo quase idêntico ao prompt de compactação do Codex CLI open-source para modelos não-codex
  • O motivo da criptografia ainda é nebuloso — possivelmente contém dados de restauração de chamadas de ferramentas
  • Reproduzível em 35 linhas de Python (script publicado pelo próprio Kangwook Lee)
  • A API oficial da OpenAI suporta compactação automática no servidor via a configuração compact_threshold

A diferença real está no handover entre sessões

Mais interessante do que a compactação em si é a transferência de contexto entre sessões. A automação que um desenvolvedor criou foi impressionante — chamo de padrão “session handover”.

Logo antes da compactação, ferramentas de escrita são bloqueadas e somente mensagens do usuário e blocos de thinking são extraídos do log de sessão JSONL. Isso reduz o volume em 98% em relação ao original. Em seguida, três sub-agentes identificam lacunas no resumo buscando nos logs originais e compilam tudo em um arquivo resume-prompt.md.

Quando o file watcher do VS Code detecta esse arquivo, uma nova sessão abre automaticamente e herda o contexto anterior sem nenhuma quebra.

  • Hook pré-compactação bloqueia escritas antes da compactação → evita modificações de código em estado incompleto
  • Conversão JSONL → MD preserva apenas mensagens do usuário + mensagens do sistema + blocos de thinking
  • Sub-agentes fazem análise de lacunas e recuperam informações faltantes dos logs originais
  • Melhoria de 10x em eficiência de build relatada

O jogo real é busca em logs de sessão e KV cache

Os dados de sessão se acumulam como arquivos JSONL, então o fator decisivo é com que precisão você consegue recuperar o contexto necessário a partir deles. A resposta não é sumarização melhor — é busca baseada em recuperação entre sessões passadas.

Levando em conta as taxas de hit do KV cache, dá para reutilizar o mesmo prefixo de prompt e cortar custo e latência de resposta ao mesmo tempo. Quando estruturei meu próprio sistema de pastas de sessão, o arquivamento baseado em session-id teve o maior impacto na velocidade de busca. Integrar o QMD — que abordei ontem — para pré-indexação também parece uma direção promissora.

  • Preservar o JSONL bruto permite buscas precisas quando necessário
  • resume-prompt.md inclui resumo da sessão anterior + análise de lacunas + lista de arquivos modificados
  • Fixar o system prompt e o prefixo do handoff prompt maximiza os hits de KV cache
  • Automação de arquivamento de sessões mantém contexto ao longo de dezenas de sessões consecutivas

O verdadeiro gargalo no desenvolvimento com IA é gestão de contexto

O gargalo real nas ferramentas de programação com IA não é o desempenho do modelo — é a gestão de contexto. Projetar um sistema que recupere o que foi esquecido importa mais do que aperfeiçoar a sumarização.

A compactação inevitavelmente perde informação. O que importa é construir tanto um pipeline de busca capaz de recuperar o que foi perdido quanto uma arquitetura de handover que transfira contexto entre sessões sem lacunas.

Baseado na análise de Kangwook Lee, CAIO.

Assine a newsletter

Receba atualizações sobre meus projetos mais recentes, artigos e experimentos com IA e desenvolvimento web.