Quebrou Tudo… O Debate Claude Code Vs Codex Finalmente Acabou
AAI LABS
Computing/SoftwareSmall Business/StartupsInternet Technology
Transcript
00:00:00Por muito tempo, o modelo preferido de todos para programação foi o Claude.
00:00:03Não apenas pelo seu desempenho, mas porque não havia outras opções no mesmo nível.
00:00:07Então os modelos GPT evoluíram e diminuíram a diferença, especialmente com o lançamento do GPT 5.5, que
00:00:12a reduziu a quase zero.
00:00:14Para comparar os dois, precisamos colocá-los nos ambientes projetados especificamente para eles, o que
00:00:18significa seus próprios CLIs.
00:00:19Portanto, estamos colocando o Opus 4.7 e o GPT 5.5 à prova para ver como eles se saem um contra
00:00:25o outro.
00:00:26Nós os testaremos em 9 categorias para descobrir qual deles realmente vence e,
00:00:29ao final, você saberá qual merece um lugar em seus fluxos de trabalho.
00:00:33A usabilidade é onde o Claude Code começa a falhar para nós.
00:00:36Temos usado ele para a maioria das nossas tarefas, de programação ou não, mas ele só foi bom
00:00:40até a atualização 2.1.0.
00:00:43Depois disso, as coisas começaram a piorar para o Claude Code.
00:00:46A interface é a parte mais frustrante, pois tem o maior impacto na experiência.
00:00:50O terminal trava, a renderização falha, e muito do que parecia polido agora parece
00:00:55errado.
00:00:56Costumava ser uma das melhores TUIs, mas só até começar a ser baseada em improvisos.
00:00:59Agora parece mais quebrado, com vários bugs, como problemas de renderização e vazamentos de cache,
00:01:03dos quais não fomos os únicos a reclamar.
00:01:05O problema maior é que removeram o modo de pular permissões perigosas e o substituíram
00:01:09pelo modo automático por padrão.
00:01:11Costumávamos rodar o modo de ignorar permissões na maioria das tarefas, com ganchos para
00:01:15arquivos que não queríamos que o Claude tocasse.
00:01:17Agora ele pede permissão até nesse modo; quando demos um comando para o Claude criar uma habilidade,
00:01:22mudamos para outra sessão do Claude para fazer outra coisa e só depois vimos que a criação da habilidade
00:01:27foi bloqueada por um aviso de permissão para gravar na pasta .claude o tempo todo.
00:01:32Voltamos esperando que as habilidades estivessem criadas, e ele estava lá apenas esperando.
00:01:36O Codex lida melhor com isso, pois seu modo "YOLO" não pede permissões como o
00:01:40modo automático do Claude Code faz.
00:01:42O CLI é feito em Rust, então a interface é muito mais fluida que a do Claude Code baseada em React,
00:01:47e mesmo após uma sessão longa, nada quebra.
00:01:49A configuração de personalidade é outro ponto onde o Codex sai na frente.
00:01:53Podemos definir a personalidade para uma linguagem mais direta e concisa.
00:01:56Isso porque o GPT 5.5 é significativamente mais bajulador e concorda com cada comando
00:02:02do que o Opus 4.7.
00:02:04É por isso que mudar a personalidade no Codex evita esse comportamento padrão do modelo.
00:02:08Para tornar o Opus 4.7 direto, dependemos de instruções no arquivo Claude.md, enquanto o Codex
00:02:14faz isso apenas com uma mudança de configuração.
00:02:16Habilidades pré-instaladas são outra diferença.
00:02:18O Codex já vem com muitas que o Claude Code não tem, incluindo a habilidade de navegação por agente.
00:02:22Isso importa para quem cria apps, pois no Codex não precisamos conectar explicitamente
00:02:26MCPs para verificação no navegador.
00:02:29Ele faz isso automaticamente após implementar qualquer recurso.
00:02:31Ele também tem um criador de habilidades integrado; então, quando queremos uma nova, ele gera uma
00:02:35completa, com a estrutura correta e arquivos de referência.
00:02:38No Claude, precisaríamos instalar o criador de habilidades separadamente para obter uma
00:02:42habilidade devidamente estruturada.
00:02:43Caso contrário, ele apenas escreve um arquivo MD.
00:02:45Agora, ainda há duas coisas que o Claude Code faz melhor.
00:02:47O Codex não oferece a função de desfazer, que é o recurso que mais usamos, então não tê-la
00:02:51é uma desvantagem real.
00:02:52O Claude Code também nos permite ver seu raciocínio ao expandi-lo com Ctrl+O, o que o Codex
00:02:57não faz bem.
00:02:58Ver o raciocínio é útil porque podemos corrigir a abordagem no meio da tarefa, em vez de
00:03:02esperar a implementação terminar para depois refazer.
00:03:05Observando como a experiência do usuário no Claude Code piora a cada nova atualização, o Codex
00:03:10ganha um ponto em usabilidade.
00:03:11Quanto ao custo, o Claude Code é a ferramenta mais cara por uma grande margem.
00:03:15Não em termos de preços reais, mas pela usabilidade pelo mesmo valor.
00:03:19O Claude Code não está disponível no plano gratuito e só pode ser acessado a partir
00:03:23dos planos Pro e Max.
00:03:24Os planos têm preços quase idênticos.
00:03:26O plano Pro é basicamente inutilizável para qualquer aplicação de boa escala, pois atinge seus
00:03:30limites em apenas algumas tarefas.
00:03:32Não conseguimos sequer usar o Opus 4.7 adequadamente para qualquer tarefa significativa no Pro.
00:03:36Os limites acabam muito rápido, mesmo no plano Max que utilizamos.
00:03:39O Codex está em uma posição melhor desde o início.
00:03:41Ele está disponível até no plano gratuito, com uso limitado.
00:03:44Ambos usam um mecanismo similar de janela de 5 horas; para ver qual produz mais, nós
00:03:49os testamos em tarefas de mesma escala.
00:03:51O Claude Code já possui um comando de contexto que visualiza quantos tokens uma sessão usou,
00:03:56mas o Codex não tem um equivalente nativo, então tivemos que buscar uma alternativa para a comparação.
00:04:00Ambas as ferramentas salvam suas sessões como arquivos JSON, apenas organizados de forma diferente.
00:04:04Então, criamos uma pequena ferramenta que os lê e conta os tokens usados em cada sessão.
00:04:08No mesmo app e com nível similar de depuração, o Opus 4.7 consumiu 173.000 tokens, enquanto
00:04:15o GPT 5.5 usou apenas 82.000.
00:04:18Isso porque o GPT 5.5 conclui o trabalho com menos tokens e muito menos tentativas.
00:04:23Assim, o Codex durou significativamente mais e provou ser muito mais econômico para o mesmo trabalho.
00:04:28Mas antes de prosseguirmos, uma palavra do nosso patrocinador, Stream.
00:04:32Você está criando um app e seus usuários precisam conversar, transmitir e se conectar.
00:04:35Você tenta cuidar disso sozinho e, 3 meses depois, ainda está depurando em vez de lançar.
00:04:39O Stream pula tudo isso.
00:04:40O Stream oferece tudo pronto para uso, desde chat no app e chamadas de vídeo até feeds de
00:04:44atividades e moderação por IA; assim, você lança recursos, não constrói infraestrutura do zero.
00:04:49Estamos falando de mensagens estilo WhatsApp, vídeos estilo Zoom e feeds estilo Instagram, tudo integrado.
00:04:55O que realmente se destaca é o novo lançamento do Stream, os Vision Agents.
00:04:58Você pode criar agentes de IA inteligentes que veem, ouvem e agem em vídeo e áudio ao vivo, tudo
00:05:02em Python com apenas algumas linhas de código.
00:05:05Tudo roda em uma rede de borda global para baixa latência em qualquer lugar.
00:05:08De startups a apps em expansão, as principais plataformas sociais, de fitness e comunidade confiam
00:05:13no Stream para atender mais de um bilhão de usuários finais.
00:05:16Se você é um desenvolvedor criando o próximo grande app, o Stream escala com você desde o primeiro dia.
00:05:20Comece gratuitamente em getstream.io, links no comentário fixado.
00:05:24O teste real para os dois modelos é como eles constroem produtos.
00:05:27Como dissemos antes, o GPT 5.5 é mais rápido e consome menos tokens, então entrega apps funcionais mais rápido.
00:05:33O Opus 4.7 gasta mais tokens pensando, planeja mais profundamente e itera em todos os aspectos do
00:05:38app ao mesmo tempo.
00:05:40O planejamento foi a primeira coisa que quisemos testar.
00:05:42Temos usado o modo de planejamento do Claude Code há muito tempo.
00:05:45Ele cobre a maioria das coisas, tem algumas falhas, mas ainda é bastante utilizável.
00:05:48Então, queríamos ver como o GPT 5.5 se sai no planejamento, pois a OpenAI afirma que ele é melhor
00:05:53em planejar tarefas e executá-las.
00:05:55Ativamos o modo de plano e o abrimos em uma pasta que já continha o backend para um app,
00:06:00uma API feita com FastAPI, e pedimos para ele criar o frontend para ela.
00:06:04Ele explorou o projeto minuciosamente e fez algumas perguntas, mas as perguntas foram bem
00:06:08simples.
00:06:09Poderia ter ido mais fundo em como queríamos a aparência do frontend, pois para trabalhos
00:06:13de frontend, isso importa.
00:06:14O plano que ele produziu foi muito simples.
00:06:16Incluía um resumo do fluxo principal, as principais mudanças, as páginas a adicionar e como
00:06:20testá-las.
00:06:21A única coisa que ele fez bem foi separar claramente suas suposições, então sabíamos exatamente
00:06:25o que ele estava dando como certo.
00:06:26Dissemos para prosseguir e ele terminou em cerca de 8 minutos.
00:06:28A mesma tarefa no Claude Code levou 24 minutos.
00:06:31Mas o plano do Opus 4.7 foi muito mais detalhado, considerou mais aspectos da aplicação
00:06:36e até sugeriu usar Shadcn UI para melhorar a experiência do usuário.
00:06:39Portanto, o Opus 4.7 se sai melhor em termos de planejamento.
00:06:42Em seguida, quisemos testar ambos em um app do zero.
00:06:45Demos a eles o mesmo comando para criar um monorepo com backend Python Flask e
00:06:50frontend Next.js, junto com todo o pipeline e requisitos principais de funcionamento.
00:06:55O Claude entrou no modo de planejamento sozinho devido ao seu design estruturado.
00:06:56O Codex não entrou no modo de planejamento e começou a implementar diretamente.
00:06:59Ele terminou muito mais rápido que o Claude Code, que levou cerca de 16 minutos por causa da
00:07:04etapa de planejamento.
00:07:08A versão do app do GPT 5.5 tinha uma interface muito mais simples e focava principalmente em garantir
00:07:09que o app funcionasse.
00:07:14Não funcionou corretamente de início, então fizemos a depuração iterativamente.
00:07:15Uma coisa que notamos foi que os comandos de entrevista estavam fixos no código porque não tínhamos
00:07:17fornecido nenhuma chave de API.
00:07:22O comando especificava o uso da API do Gemini como backend, mas como não havia chave disponível,
00:07:23ele implementou um plano de contingência para que o app não travasse completamente.
00:07:27O Codex tinha usado perguntas de acompanhamento locais sem nenhum comando explícito.
00:07:30Gostamos disso porque mecanismos de contingência assim são úteis em produção, já que evitam
00:07:35travamentos.
00:07:39Após algumas iterações e a adição da chave de API, o fluxo do app funcionou bem, embora
00:07:40a interface ainda fosse simples.
00:07:44Portanto, o GPT 5.5 previu casos extremos e implementou mecanismos para preencher as lacunas.
00:07:46O Opus 4.7, por outro lado, pediu que déssemos a chave da API antes de começar a implementação
00:07:51e construiu o app inteiro em torno disso.
00:07:57Assim, o Opus 4.7, ao contrário do GPT 5.5, não preparou contingências e precisava de tudo disponível
00:07:59desde o início.
00:08:05Devido a isso, quando a API não estava lá, o app não tinha alternativa e apenas apresentava erro.
00:08:06O Claude Code foca na experiência do usuário e na funcionalidade em conjunto, então sua implementação
00:08:10parecia mais realista.
00:08:15Esta é a força do Opus 4.7 em interfaces aparecendo, o que cobrimos em nosso vídeo anterior, onde
00:08:16dissemos que o Opus 4.7 lida muito melhor com UI, mas sua implementação também teve problemas.
00:08:21Quando pedimos para depurar, ele não inspecionou a implementação diretamente como o Codex fez.
00:08:26Em vez disso, começou a nos fazer perguntas sobre o que poderia estar causando o problema e confiou
00:08:31nos nossos testes.
00:08:35Ele adicionou pontos de depuração, como indicadores na interface e logs no console, e pediu para checarmos
00:08:36os estados e relatarmos.
00:08:41Após algumas idas e vindas, ele finalmente corrigiu o problema e o recurso de entrevista funcionou.
00:08:42Preferimos como o Codex usou o agente de navegação para depurar por conta própria.
00:08:46Assim, em termos de trabalho autônomo, a implementação do Codex foi melhor, e em termos de
00:08:49experiência do usuário, o Claude Code fez um trabalho muito superior.
00:08:53Também quisemos testar como ambos lidavam com o comando de inicialização.
00:08:56A inicialização do Claude Code roda sem expandir o comando internamente.
00:08:59Ele cria um arquivo Claude.md simples com cerca de 90 linhas, incluindo arquitetura, fluxo do app,
00:09:02estrutura front-end e back-end, e todos os comandos necessários para rodar o app.
00:09:08Muita dessa informação é redundante e não beneficia realmente o agente, por isso
00:09:12nem sempre é necessário manter tudo.
00:09:15A configuração do Codex foi mais refinada.
00:09:18Incluía diretrizes de commit, diretrizes de pull request e instruções de segurança adequadamente,
00:09:20mantendo a seção de estrutura do projeto breve em vez de sobrecarregá-la com detalhes.
00:09:24Nenhum foi perfeito, mas o Codex lidou melhor com o arquivo agents.md.
00:09:28Agora, também quisemos testar o desempenho de ambos na revisão de código.
00:09:32Demos o mesmo comando para uma revisão de confiabilidade para o Codex e o Claude Code, pedindo
00:09:35que documentassem a revisão em arquivos separados enquanto trabalhavam na mesma base de código.
00:09:40Assim que ambos geraram seus relatórios, abrimos uma nova sessão e pedimos ao Claude para mostrar a
00:09:44diferença entre os dois arquivos, comparando as descobertas.
00:09:48A revisão do Claude foi muito mais detalhada.
00:09:51Ele organizou cada descoberta por prioridade e incluiu componentes e os trechos de código exatos
00:09:53por trás dos problemas.
00:09:57O relatório do Codex mencionava os números das linhas, mas não incluía os trechos de código reais.
00:09:59Ambos os relatórios foram minuciosos, compartilhando várias descobertas, enquanto cada um pegou algumas que o outro
00:10:03deixou passar.
00:10:07O Claude Code também relatou problemas de segurança, como uma chave de API vazada e uma vulnerabilidade.
00:10:08A tarefa era uma revisão de confiabilidade, no entanto, e esses problemas estavam fora do escopo.
00:10:12O Claude Code relatou cada problema extra que encontrou pelo caminho, enquanto o Codex manteve-se estritamente
00:10:17na confiabilidade.
00:10:21Portanto, o relatório do Codex estava mais alinhado com o pedido original, enquanto o do Claude Code foi mais amplo,
00:10:22mas menos focado na tarefa específica.
00:10:27Se tivéssemos que descrever ambos em termos de construção, o GPT 5.5 parece mais um engenheiro de backend
00:10:29focado em entregar a funcionalidade da aplicação corretamente primeiro, enquanto o Opus 4.7 parece
00:10:34mais um engenheiro full stack tentando equilibrar funcionalidade e experiência do usuário.
00:10:40Na gestão de contexto, o Codex teve um desempenho muito melhor que o Claude Code.
00:10:45O Claude Code possui edição de contexto na sessão, o que remove chamadas de ferramentas e etapas de raciocínio
00:10:48que não importam mais para a conversa.
00:10:53Ele limpa informações redundantes da sessão para evitar excessos.
00:10:55A compactação não é perfeita, mas pelo menos não mantém partes desnecessárias no contexto
00:10:58enquanto compacta.
00:11:02O Codex não edita seu contexto.
00:11:03Ele compacta toda a conversa exatamente como ela aconteceu.
00:11:05A única coisa que ele faz melhor é preservar os últimos 20.000 tokens na memória e não compactar
00:11:08essa parte.
00:11:13Isso ajuda a prevenir a queda de desempenho no Codex após a compactação, para que a conversa
00:11:14possa fluir suavemente a partir do próximo comando.
00:11:18Testamos o desempenho e o Codex se saiu melhor após a compactação do que o Claude Code.
00:11:21Testamos o desempenho e o Codex se saiu melhor após a compactação do que o Claude Code.
00:11:25Então, embora o Claude Code siga um processo de compactação de várias etapas mais detalhado,
00:11:30a parte final preservada do Codex mantém o agente mais útil na prática.
00:11:33A memória funciona de forma diferente entre os dois.
00:11:35A estrutura do Claude Code é majoritariamente sem estado entre as sessões, ou seja, cada sessão começa
00:11:39sem qualquer contexto da anterior.
00:11:41Ele agora tem um recurso de memória que pode armazenar preferências ou instruções persistentes.
00:11:46Assim, se dissermos para evitar fazer algo de certa maneira, ele armazena isso e aplica
00:11:50novamente mais tarde no mesmo projeto.
00:11:52Isso ajuda ao trabalhar repetidamente em um único projeto.
00:11:54Mas a memória é restrita ao projeto, então mudar de projeto faz perder esse comportamento armazenado.
00:11:58O Codex segue o caminho oposto.
00:12:00Ele consolida informações de múltiplas sessões ao longo do tempo e constrói uma memória global entre
00:12:05interações para reter padrões além de um único projeto.
00:12:08Isso pode ajudar na consistência entre diferentes tarefas.
00:12:11Resumindo, o Claude Code mantém a memória mais contida em um projeto, enquanto o Codex adota
00:12:15uma abordagem entre sessões e projetos, o que muda a forma como cada um se adapta
00:12:19ao longo do tempo.
00:12:20Como o Claude Code existe há mais tempo e é desenvolvido constantemente para melhorar
00:12:24a experiência do desenvolvedor, ele tem mais a oferecer em comparação ao Codex.
00:12:27O Claude Code tem um sistema de ganchos que nos permite executar nossos próprios scripts em pontos específicos
00:12:32do ciclo de vida do agente, como antes ou depois de uma ferramenta rodar, entre outros pontos,
00:12:36para coisas como bloquear comandos inseguros, rodar formatadores e muito mais.
00:12:39Também podemos rodar subagentes em uma árvore de trabalho dedicada para que o desempenho deles não afete
00:12:43uns aos outros.
00:12:44Podemos controlar o nível de esforço dos modelos e até usar palavras-chave como "ultra-think"
00:12:48para levar o raciocínio ao máximo em uma tarefa específica.
00:12:51Nada disso tem um equivalente no Codex no momento.
00:12:54O ecossistema é a outra vitória clara do Claude Code.
00:12:56Podemos rodar sessões pelo aplicativo desktop do Claude e delegar tarefas pelo aplicativo móvel.
00:13:01Entre Claude Code, app desktop, app web e extensões de navegador, a abrangência é muito
00:13:06maior que a do Codex, que consiste principalmente em um app web e um app desktop lançado recentemente
00:13:11que não parecia tão robusto na época em que testamos.
00:13:14As sessões também se movem entre ambientes mais facilmente no Claude Code, o que o torna mais
00:13:18conveniente para trabalhar em diferentes interfaces.
00:13:20O Codex também possui muitos recursos interessantes.
00:13:22Na nuvem, ele tem uma flag de tentativa que executa a mesma tarefa n vezes.
00:13:26Ele gera várias implementações e seleciona a melhor.
00:13:29O Claude Code pode fazer algo semelhante, mas apenas através de configurações e instruções,
00:13:33não como uma flag.
00:13:34O outro recurso exclusivo do Codex, que o diferencia dos demais, é sua integração com
00:13:38os modelos de imagem da OpenAI.
00:13:39Ele pode usá-los diretamente na CLI para gerar imagens para os sites em que está trabalhando.
00:13:44O Claude depende principalmente de geração baseada em SVG para visuais, o que nem compete em
00:13:49qualidade porque ele ainda não possui nenhum modelo de imagem.
00:13:52Se estivermos criando uma interface que precise de imagens reais, o Codex é o único dos dois que faz isso,
00:13:56mesmo sem ser explicitamente instruído.
00:13:58Além disso, se você estiver gostando do nosso conteúdo, considere clicar no botão de curtir, pois nos ajuda
00:14:03a criar mais conteúdos como este e a alcançar mais pessoas.
00:14:06Ambos usam subagentes, embora o conceito tenha sido introduzido primeiro pelo Claude.
00:14:10Como surgiu primeiro no Claude Code, sua integração é mais madura porque ele tem sido centrado em agentes
00:14:15e focado na experiência de codificação por muito mais tempo que a OpenAI.
00:14:19Ele suporta agentes que podem ser orquestrados através de sessões remotas, enquanto o Codex suporta
00:14:23principalmente fluxos de trabalho multiagente dentro do ambiente do terminal.
00:14:27A maior diferença é como cada um invoca os subagentes.
00:14:29O Claude Code pode gerar agentes sem invocação explícita, enquanto o Codex só cria um agente
00:14:35se pedirmos explicitamente por um no prompt.
00:14:37Quando o Codex gera agentes, ele os nomeia e também passa um prompt adequado.
00:14:41No desempenho de codificação, os dois são bastante semelhantes, mas as escolhas de design por trás deles são diferentes.
00:14:46Os subagentes do Claude Code usam uma lista de permissão explícita, ou seja, o agente pai define exatamente
00:14:51quais ferramentas o subagente pode acessar, enquanto os subagentes do Codex herdam o acesso
00:14:55às ferramentas do pai por padrão.
00:14:57O Claude Code também dá a cada subagente uma janela de contexto completamente nova.
00:15:01Um subagente não tem acesso ao histórico da conversa e só vê o prompt do pai,
00:15:06além do prompt do sistema e quaisquer regras globais, porque o Claude foca no isolamento de contexto.
00:15:10A CLI do Codex faz o oposto.
00:15:12Ela ramifica todo o histórico para a sessão do subagente, com o prompt do pai sobreposto ao topo.
00:15:17Os agentes do Codex retêm mais contexto sobre o que já foi discutido, o que ajuda a melhorar
00:15:22seu desempenho.
00:15:23Na prática, o isolamento estrito do Claude Code prejudicou nossos subagentes de pesquisa.
00:15:27Quando os usamos, os resultados não foram bons o suficiente, porque eles só viam o prompt
00:15:30imediato e não tinham nenhum contexto prévio.
00:15:33Os agentes do Codex recebem todo o histórico, podem iterar de forma mais eficaz e têm melhor desempenho em tarefas
00:15:38onde a continuidade é importante.
00:15:39Isso nos traz ao final deste vídeo.
00:15:41Se você quiser apoiar o canal e nos ajudar a continuar fazendo vídeos como este, você pode
00:15:45fazer isso usando o botão "Valeu demais" abaixo.
00:15:48Como sempre, obrigado por assistir e vejo você no próximo.