37 pontos por GN⁺ 2026-02-23 | 4 comentários | Compartilhar no WhatsApp
  • O principal critério para escolher um agente de programação está mudando do desempenho do modelo em si para o tempo disponível do usuário e o tempo de execução autônoma, com uso de Claude Code e Codex em paralelo conforme a situação
  • O Opus se destaca em gerenciamento de janela de contexto e uso de ferramentas, sendo vantajoso para exploração rápida e planejamento ao executar vários subagentes ao mesmo tempo
  • O Codex supera o Opus em precisão de código, mas tem a desvantagem de ser mais lento por carecer de delegação de trabalho entre janelas de contexto
  • Por meio da automação com skills, foi construído gradualmente um loop de planejamento → implementação → revisão → correção de bugs, e a abordagem eficaz foi automatizar aos poucos o trabalho manual repetitivo, em vez de tentar projetar tudo desde o início
  • Em última instância, o caminho aponta para um futuro em que agentes trabalham de forma autônoma 24/7, mas os limites da janela de contexto e a resistência a prompt injection seguem como os principais obstáculos

Contexto

  • Trabalhei em tarefas relacionadas à versão web do Codex e saí da OpenAI em julho de 2025
  • Organizei este texto para consolidar estratégias mais detalhadas de uso de agentes de programação após o podcast YC Lightcone
  • O critério de escolha de agentes está migrando do desempenho do modelo para tempo de execução autônoma e importância da tarefa
  • Assino Claude Max, ChatGPT Pro e Cursor Pro+, e a relação custo-benefício em produtividade é alta

Princípio central: entender contexto

  • Para usar bem agentes de programação, é indispensável entender contexto (context)
  • Por melhor que o agente seja, no fim ele executa next token prediction, e todos os tokens precisam caber dentro da janela de contexto
  • Os principais princípios derivados disso:
    • É preciso dividir o problema em tamanhos adequados para a janela de contexto; problemas grandes demais demoram mais e produzem resultados piores
    • Compaction é uma técnica com perdas: o agente decide o que incluir e o que omitir, e quanto mais compaction houver, maior tende a ser a degradação de desempenho
    • Ao externalizar o contexto para o sistema de arquivos com documentos de planejamento e similares, o agente pode ler e lembrar seletivamente sem preencher todo o contexto da conversa
    • É importante permanecer na “metade inteligente” da janela de contexto; como o treinamento funciona melhor com contextos menores, resultados melhores tendem a surgir quando a janela está menos cheia — Dex Horthy descreve isso como ficar fora da 'dumb zone'
    • Se o agente deixar passar arquivos ou pacotes relevantes, pode seguir por um caminho inesperado; a “divulgação progressiva (progressive disclosure)” da estrutura e arquitetura do codebase ajuda — a OpenAI já publicou um post no blog sobre como estrutura vários arquivos Markdown
  • O desempenho e a velocidade do modelo dependem não só da capacidade bruta do modelo, mas também da habilidade de gerenciar múltiplas janelas de contexto e delegar a subagentes/equipes

Opus: gerenciamento de contexto, uso de ferramentas e sensação mais humana

  • Uso o Claude Code como ferramenta principal para planejamento, orquestração de terminal e gestão de tarefas com git/GitHub
  • O Opus foi treinado para operar de forma muito eficiente entre várias janelas de contexto, então ao usar Claude Code ele parece mais rápido que o Codex
  • É comum observar o Opus executando vários subagentes em paralelo, como chamadas Explore ou Task
    • A ferramenta Explore usa Haiku, então consegue processar grandes volumes de tokens rapidamente e repassar o contexto relevante ao Opus
  • Ele também é bem treinado para usar ferramentas locais como gh, git e vários servidores MCP
    • A extensão /chrome também permite verificar bugs, embora possa ser lenta e instável
  • O modelo de permissões do Claude Code é mais fácil de entender do que o do Codex — o modelo do Codex tende a roteirizar comandos no bash, o que dificulta whitelisting granular de ferramentas CLI
  • Pequenas vantagens de UX do Claude Code: atualiza o título do terminal com o conteúdo da tarefa, mostra o PR atual na barra de status e exibe mensagens curtas de estado
  • O Opus é melhor que o Codex para gerar descrições de PR fáceis para humanos entenderem e diagramas de arquitetura detalhados
  • Quando quero pedir explicações sobre a estrutura do código, costumo usar Claude Code
  • O Opus é mais “criativo” no planejamento, propondo pontos que o usuário não mencionou ou chamando atenção para áreas ambíguas

Codex: precisão de código esmagadora

  • A área em que o Codex realmente brilha é a correção (correctness) do código, e outros desenvolvedores que usam bastante modelos concordam com isso
  • Quando executado com GPT-5.3-Codex-xhigh ou high, o código do Codex apresenta visivelmente menos bugs
  • Erros frequentes do Opus:
    • Um componente React passa nos testes unitários, mas ele esquece de adicioná-lo ao <App> de nível superior
    • Não detecta um erro off-by-one óbvio
    • Deixa passar dangling references ou race conditions sutis
  • Durante muito tempo achei que a diferença entre os dois modelos fosse desprezível, mas depois de ver PRs suficientes com o review automático do Codex e do Cursor Bugbot, concluí que a qualidade de código dos modelos da OpenAI é superior
    • Para fazer um teste A/B direto, basta fazer checkout da branch e comparar o /code-review do Claude Code com o /review do Codex
  • Porém, o Codex é lento — a principal razão parece ser a falta de delegação entre janelas de contexto, e a latência entre tokens também parece maior
    • O suporte experimental a subagentes (com o toggle /experimental) funciona, mas ainda não é tão fluido quanto no Claude e ainda carece de paralelismo
  • Na prática, o padrão é começar com Claude Code, deixá-lo aberto e, na etapa de codificação de fato, migrar para o Codex

Ferramentas e configurações úteis

  • Atualmente estou trabalhando em um codebase greenfield, muito menor e mais eficiente em tokens do que um codebase de produção
  • Estrutura do repositório: em todos os repositórios há uma pasta plans/ com planos numerados, uma pasta apps/ para separar serviços, gerenciamento de monorepo TypeScript com turborepo e instalação rápida com bun
  • Ghostty: terminal do Mitchellh, rápido, nativo e em melhoria contínua — por um tempo eu executava várias instâncias de Claude/Codex com tmux, mas hoje uso vários panes na mesma aba do terminal
  • Next.js na Vercel, API com Cloudflare Durable Objects: estrutura que pré-particiona o banco de dados, o desperta sob demanda e reduz a preocupação com escritas concorrentes — adequada, do ponto de vista de infraestrutura, para uma era em que agentes lidam com pequenos fragmentos de dados
    • A Cloudflare está expandindo nessa direção com a biblioteca cloudflare/actors, unindo computação e armazenamento pequeno co-localizado
  • Worktrees: como o código é leve, uso worktrees em paralelo e valido localmente em cada um com bun installbun run dev — uso a skill worktree, que copia o plano, variáveis de ambiente e atualizações relacionadas, e inicia uma nova branch
    • Antes dos agentes de programação eu usava mais branches, mas a combinação de worktree com Claude Code é extremamente útil
  • Plan, Implement, Review: quase sempre faço o modelo começar pelo plano — 1) para externalizar contexto além de uma única janela 2) para poder revisar ou questionar o que foi feito — se o agente parar, é possível retomar o plano em uma nova janela de contexto
  • Preview deploys: toda branch recebe um novo deploy de Web + API, o que favorece execução paralela e testes rápidos — é difícil trabalhar sem isso
  • Cursor Bugbot e Codex Code Review: uso ambos para entender o código em nível de arquitetura e fazer verificações pontuais, mas cada vez menos leio todas as linhas de todos os PRs — os agentes são melhores para encontrar bugs sutis
    • Em certo momento usei Claude Code, Cursor Bugbot e Codex ao mesmo tempo, mas como o Claude Code não detectava problemas relevantes, hoje considero o Cursor a opção padrão, embora o Codex também tenha bons resultados

Skills: a chave da automação

  • Defino várias skills e um AGENTS.md/CLAUDE.md compartilhado em um repositório chamado claudefiles
  • Regra para adicionar skill: não adiciono precipitadamente; só crio uma depois de repetir algumas vezes e o fluxo de trabalho estar estável
  • AGENTS/CLAUDE.md é útil para orientar o modelo de forma geral, e as skills têm dois propósitos:
    1. Encadear workflows e automatizar — transformar planejamento → implementação por etapas → revisão em skills separadas e compor uma meta-skill que as executa em sequência
    2. Dividir a janela de contexto — ao configurar context: fork na chamada de skill no Claude Code, ela pode rodar em uma nova janela, separando o “orquestrador mestre” dos subagentes
  • Skills são muito eficientes em contexto: ao contrário de chamadas MCP, que podem consumir milhares de tokens, normalmente usam ~50-100 tokens

Evolução da automação com skills

  • No começo, eu me interessava pela ideia de um marketplace de skills (instalar design de frontend, checagem de segurança, revisão de arquitetura etc.), mas ao longo do trabalho abandonei a maioria das skills escritas por outras pessoas
  • Em vez disso, passei a fazer primeiro o trabalho manualmente e só depois pensar em como automatizá-lo
  • Evolução das skills:
    • /commit: em vez de instruir o modelo de várias formas a fazer commit e push, consolidei tudo em uma única skill — inspirada diretamente no Claude Code
    • /worktree: faz o agente trabalhar em um worktree separado, criando um novo worktree com base no número do plano (ex.: 00034-add-user-auth)
    • /implement: reúne em uma única skill o trabalho repetitivo de executar uma etapa do plano e depois rodar /commit
    • /implement-all: vincula o caminho do worktree atual ao número do plano e implementa automaticamente todas as etapas — em execuções noturnas, uso /ralph-loop para continuar até concluir tudo, e um /codex-review local para criar o processo codex --review
    • /address-bugs: busca comentários do Cursor + Codex via API do GitHub desde o último commit e tenta validar e corrigir bugs
    • /pr-pass: executa ao fim de /implement-all e 1) faz push remoto 2) espera todo o CI passar 3) executa /address-bugs, repetindo opcionalmente a etapa 1
    • /focus: consulta o diretório plans, PRs incompletos e worktrees para refrescar a memória e ajudar a rastrear o trabalho
  • Se eu tivesse tentado criar esse processo desde o início, provavelmente não teria dado certo; o ponto-chave foi construí-lo gradualmente, descobrindo pequenas áreas automatizáveis com o tempo

Outras ferramentas

  • Testei recentemente o Codex App e tive impressão positiva dos detalhes e pequenos toques — ainda assim, prefiro a flexibilidade da CLI e não migrei totalmente
  • Também experimentei o Cowork, mas foi difícil fazê-lo funcionar direito; nos dois casos, o modelo de sandboxing faz grande diferença
  • Uso ocasionalmente interfaces web para trabalho assíncrono, mas estou cada vez mais dependente da CLI — em contraste com 6 meses atrás, quando eu usava principalmente o Cursor e seus agentes/extensões embutidos
  • Estou usando pencil.dev para trabalho de UI de frontend — o modelo de deploy, que faz shell out para um Claude Code local e reutiliza assinaturas existentes, é interessante
  • Sinto necessidade de um issue tracker mais estruturado, e Dex, do David Cramer, e beads, do Steve Yegge, parecem promissores, mas ainda me parecem mais complexos do que o necessário
  • No momento, não uso MCPs automatizados de e2e como Playwright

Conselhos para os laboratórios

  • Feedback para a Anthropic

    • Modelo: o Opus tem sensação mais humana, é excelente com ferramentas de engenharia, divisão de contexto e em sugerir “o que o usuário pode ter esquecido”, mas carece de precisão de código — espero um modo “Opus Strict” que reforce RL no modelo base para melhorar o desempenho
      • Eu começo com Opus, mas quem escreve o código é o Codex; se houver restrição de orçamento, eu escolheria Codex
    • Harness de produto: há muito pouco a criticar, e as ideias do Boris e da Cat são excelentes
      • Gostaria que adotassem um padrão de agent skills — trabalhar com symlinks de diretório entre CLIs é inconveniente
      • Gostaria que publicassem o formato de saída de --stream-json — tenho interesse em executar Claude Code em sandbox em nome dos usuários, mas mudanças de formato preocupam, e configurar caminhos é mais trabalhoso do que em outras CLIs como Codex, Cursor e Gemini
  • Feedback para a OpenAI

    • Modelo: a principal prioridade de melhoria é divisão entre janelas de contexto e delegação a subagentes — também seria útil a noção de “fazer mais do que foi pedido” que o Opus demonstra no planejamento
    • Feedback detalhado sobre o harness de produto:
      • O modelo de sandboxing é difícil de entender em comparação com o Claude Code — como o modelo tenta criar scripts, há muitos pedidos de aprovação, o que preocupa ao rodar em modo --yolo
      • Gostaria de um guia do usuário embutido na CLI, como no Claude Code — para poder perguntar sobre localização de skills, campos suportados, configuração do modelo de sandboxing etc.
      • Gostaria que /review fosse convertido de comando empacotado para skill genérica, para que o modelo possa chamá-lo dinamicamente
      • Gostaria que a execução mudasse o título da aba do terminal para algo relacionado à tarefa, como no Claude Code — dezenas de abas codex geram confusão
      • É preciso treinamento especializado para descrições de PR e commits — o estilo conciso do Codex é bom, mas falta expandir explicações
      • Gostaria de suporte a context: fork em definições de skill
      • Corrigir links em pane para que continuem clicáveis mesmo quando quebram de linha
      • Gostaria de ver o worktree/PR/nome da branch atual na barra inferior de status

Perspectivas futuras

  • Cita o post Gas Town, de Steve Yegge — a ideia é usar sempre o máximo de tokens, manter um pool de trabalhadores rodando 24/7 e esperar que muitos planos sejam feitos e descartados
    • Independentemente de a abstração estar exatamente correta ou não, a avaliação é de que a direção está absolutamente certa
  • Futuro ideal: um laptop ou sandbox na nuvem processando ideias continuamente em segundo plano, enquanto o usuário ajusta a direção, faz pesquisa ou revisa resultados
    • Trabalhar com agentes de programação parece parecido com o papel de gerente de engenharia, mas sem precisar se preocupar com motivação ou personalidade dos agentes
  • Hoje já estamos bastante próximos desse futuro — no Twitter há exagero, mas na prática já existe a rotina de iniciar 3 ou 4 tarefas no Codex antes de dormir e revisar tudo pela manhã
    • Ainda assim, ainda não estamos no nível de rodar agentes 24/7
  • duas barreiras principais impedindo um avanço maior:
    1. Tamanho/coordenação da janela de contexto — o agente não pode comprimir e reutilizar infinitamente a mesma janela; são necessários harnesses ou mecanismos de delegação mais inteligentes
    2. Resistência a prompt injection — o agente pede aprovações em poucos minutos, e não dá para confiar no modo --yolo, embora exista um subconjunto aceitável de permissões/domínios
  • Sobre o primeiro problema, o Cursor está forçando os limites de um swarm de agentes em múltiplas janelas de contexto; o segundo continua sendo uma área ativa de pesquisa
    • Executar em sandbox é hoje o melhor contorno, mas a configuração ainda é trabalhosa, e se o agente tiver acesso à internet aberta e a dados privilegiados ao mesmo tempo, ele fica vulnerável ao que Simon Willison chamou de “Lethal Trifecta”
  • Como engenheiro solo, o gargalo já está sendo ter as ideias certas, e cada vez mais ideias, arquitetura e sequenciamento de projetos serão os fatores limitantes para construir ótimos produtos

4 comentários

 
yangeok 2026-02-23

Até a arquitetura também..?

 
wegaia 2026-02-24

Se o Codex tivesse ao menos a função de subagentes, acho que eu migraria. Mas enfim, será que não têm interesse nisso..

 
tested 2026-02-24

https://developers.openai.com/codex/multi-agent
Ainda está em fase experimental, mas parece que estão avançando.

 
kgcrom 2026-02-24

No codex cli, se você digitar o comando /experimental, ele oferece Multi-agents como recurso experimental.
› [x] Multi-agents Ask Codex to spawn multiple agents to parallelize the work and win in efficiency.

Não sei se isso é exatamente da mesma linha que o subagente que você mencionou, mas vale a pena dar uma olhada.