Por que o “harness” importa mais que o modelo
Um agente de IA, na sua forma mais simples, é um modelo de linguagem chamando ferramentas em loop. Esse loop funciona bem para tarefas curtas. Dê a ele uma tarefa que dura uma hora e exige 200 chamadas de ferramenta, e ele quebra de duas maneiras previsíveis: estouro de contexto (context overflow) e perda de objetivo (goal loss). O guia de design da AWS para agentes de codificação autônomos em nuvem nomeia o problema diretamente: agentes “rasos” sofrem de estouro de contexto, se distraem e não mantêm estado por longos períodos.
A camada que corrige isso não é o modelo — é o harness, o “chicote” de software que gerencia tudo ao redor do LLM. É ali que moram a compactação, a estratégia de memória, o orçamento de contexto e o estado de tarefas. Este artigo abre essa camada e mostra como LangChain Deep Agents, Claude Code, Manus, OpenAI Codex e Amazon Bedrock AgentCore implementam cada mecanismo — com os números reais que cada um adota em produção.
Por que uma janela de contexto maior não resolve
A correção óbvia seria aumentar a janela de contexto. A evidência diz que ajuda menos do que se espera. O relatório Context Rot da Chroma avaliou 18 LLMs — incluindo GPT-4.1, Claude 4, Gemini 2.5 e Qwen3 — e descobriu que o desempenho fica progressivamente menos confiável conforme o comprimento do input cresce, mesmo em tarefas simples de recuperação.
O guia de engenharia de contexto da Anthropic explica o mecanismo: a atenção cria n² relações par a par para n tokens, então cada token adicionado consome um “orçamento de atenção” finito. Contexto é um recurso com retornos decrescentes, não um balde. Para um loop de agente, isso é pior do que parece: a Manus relata que uma tarefa típica precisa de cerca de 50 chamadas de ferramenta, com proporção input/output perto de 100:1. Cada observação cai no contexto e fica lá. A instrução original deriva para o meio da janela — exatamente onde a recuperação degrada.
Os 4 mecanismos que sustentam agentes de longo prazo
1. Orçamento de contexto e offloading
O primeiro trabalho do harness é decidir o que nunca entra na janela. O Deep Agents adota duas regras com números rígidos: quando uma resposta de ferramenta ultrapassa 20.000 tokens, ela é gravada no filesystem e substituída por um caminho de arquivo + prévia das 10 primeiras linhas. Quando o contexto da sessão cruza 85% da janela do modelo, chamadas antigas de escrita e edição — cujo conteúdo completo já vive em disco — são truncadas para um ponteiro. Só quando o offloading esgota o espaço é que o harness recorre à sumarização.
O Claude Code aplica o mesmo orçamento antes do primeiro prompt: a memória automática é limitada às primeiras 200 linhas ou 25 KB; os schemas de ferramentas MCP ficam diferidos por padrão (só os nomes aparecem, carregando o schema sob demanda); e qualquer arquivo relido acima de 5.000 tokens volta como referência de caminho, não como conteúdo.
2. Compactação
Quando o offloading não basta, o harness resume. Compactação é a prática de pegar uma conversa próxima do limite, resumi-la e reiniciar um novo contexto com o resumo. É também onde a perda de objetivo mais acontece, porque um resumo com perdas pode descartar exatamente a restrição que importava.
As implementações diferem no que prometem preservar. A compactação do Claude Code preserva decisões de arquitetura, bugs não resolvidos e detalhes de implementação, descartando saídas redundantes de ferramenta — e logo após compactar relê os 5 arquivos modificados mais recentemente. O Deep Agents tornou a preservação de objetivo uma característica estrutural: o resumo é um documento com campos dedicados para intenção da sessão, artefatos criados e próximos passos, e a transcrição original completa fica no filesystem para recuperação.
A compactação também migrou para a camada de API: a Responses API da OpenAI oferece compactação server-side via context_management com um compact_threshold, e o Codex depende desse mecanismo para sustentar tarefas longas de codificação. A Claude Developer Platform expõe um edit compact_20260112 com instruções customizadas e opção de pausa pós-compactação.
3. Todo-state e recitação
A compactação protege o objetivo no momento do resumo; o todo-state protege a cada turno entre resumos. A Manus descreveu o truque com franqueza: o agente cria um todo.md e o reescreve passo a passo, marcando itens concluídos. Reescrever a lista recita os objetivos no fim do contexto, empurrando o plano global para a atenção recente do modelo e reduzindo a deriva do “lost in the middle” — sem mudança de arquitetura, apenas linguagem natural usada para enviesar a atenção do próprio modelo.
A evidência não é de mão única: o Deep Agents embarcou a ferramenta write_todos por padrão até a v0.7, quando a LangChain tornou o TodoListMiddleware opt-in depois que evals em 3 categorias de tarefa mostraram recompensa levemente melhor e custo menor com todos desativados. A recomendação segue válida para tarefas longas de múltiplos passos e modelos menos capazes.
4. Estratégia de memória entre sessões
O último pedaço é o que persiste depois que a tarefa termina. O Claude Code re-injeta o CLAUDE.md da raiz do projeto e a memória automática do disco após cada compactação. O AgentCore Memory armazena eventos e roda estratégias de extração em background, para que um coordenador chame uma ferramenta de recall na próxima execução em vez de re-pesquisar.
Mas contexto persistente não é grátis. O estudo da ETH Zurich (coberto pelo IA em Foco em fevereiro) descobriu que arquivos de contexto de repositório como AGENTS.md geralmente não melhoram o sucesso da tarefa e elevam o custo de inferência: arquivos gerados por LLM aumentaram o custo em 20% e 23% em dois benchmarks, e arquivos commitados por desenvolvedores em até 19%. Memória que recarrega a cada sessão é uma taxa permanente sobre o orçamento de atenção.
Como saber se o harness realmente segura o objetivo
Gestão de contexto só é útil se o agente ainda consegue terminar a tarefa e recuperar detalhes que não vê mais. A LangChain mantém evals específicos: testes que disparam sumarização no meio da tarefa e verificam se o agente continua rumo ao objetivo, além de casos “agulha no palheiro” em que um fato é resumido e precisa ser recuperado via busca no filesystem. A falha a observar é o goal drift: um agente que pede esclarecimento logo após um resumo, ou que declara a tarefa concluída de forma errada.
Uma frase do artigo merece destaque: se você roda um harness e nunca forçou uma compactação em teste, você ainda não sabe o que o seu prompt de resumo descarta.
Principais conclusões
- Agentes rasos falham por estouro de contexto e perda de objetivo; a correção mora no harness, não no modelo.
- Orçamento primeiro: o Deep Agents descarrega resultados de ferramenta acima de 20.000 tokens e evacua edições antigas aos 85% da janela.
- A compactação precisa declarar o que preserva: o Deep Agents adiciona campos de intenção e próximos passos; o Claude Code relê 5 arquivos recentes.
- A recitação de todos mantém o objetivo no fim do contexto, mas os evals da v0.7 mostram que não é uma vitória gratuita.
- Memória persistente custa atenção: a ETH Zurich mediu 20% a 23% de custo de inferência extra em arquivos de contexto gerados por LLM.
Descubra mais sobre noticiAI
Assine para receber nossas notícias mais recentes por e-mail.



