Claude Code e Codex CLI resolvem o mesmo problema a partir do mesmo lugar: um agente no seu terminal que lê o repositório, propõe edições, executa comandos e itera sobre o resultado. Eles diferem na família de modelos por trás deles, na superfície de extensões e na forma de configurá-los — não no formato básico do trabalho.
Esta página compara o que realmente difere, oferece uma regra de decisão em vez de um veredito e mostra como executar ambos usando uma única chave, caso você queira avaliá-los no seu próprio código.
Lado a lado
| Claude Code | Codex CLI | |
|---|---|---|
| A partir de | Anthropic | OpenAI |
| Família de modelos | Claude (Opus, Sonnet, Haiku) | GPT / Codex |
| Superfície da API | Anthropic Messages | Compatível com OpenAI |
| Configuração | Variáveis de ambiente + ~/.claude/settings.json | ~/.codex/config.toml |
| Endpoint personalizado | ANTHROPIC_BASE_URL (Messages API) | Bloco model_providers (somente Responses API) |
| Superfície de extensões | MCP, subagentes, hooks, skills, modo de planejamento | Mais enxuto; binário Rust de código aberto |
| Sandbox de execução | Solicitações de permissão e hooks | Políticas de sandbox local |
| Integração com editores | Extensões para VS Code e JetBrains | Prioriza o terminal |
Ambos são desenvolvidos ativamente e avançam rapidamente, portanto trate qualquer lista de recursos — incluindo esta — como um retrato momentâneo. As diferenças estruturais (família de modelos, superfície da API, formato de configuração) são a parte estável; recursos específicos não são.
Como escolher
Não há uma resposta geral para qual deles produz código melhor — isso varia conforme a linguagem, o repositório e a tarefa, e benchmarks publicados lado a lado raramente se parecem com sua base de código. O que você pode decidir de antemão é qual deles se adapta à sua forma de trabalhar:
| Se você quer… | Prefira |
|---|---|
| Servidores MCP, subagentes, hooks, skills | Claude Code |
| Planejamento seguido de execução em mudanças grandes | Claude Code |
| Configuração para toda a equipe em um arquivo de configurações versionado | Claude Code |
| Um binário de código aberto que você possa auditar | Codex CLI |
| Sandbox local de execução mais rigoroso | Codex CLI |
| Permanecer dentro da família de modelos de um único fornecedor | O que corresponder a isso |
A recomendação honesta: a instalação de ambos é gratuita, então execute a mesma tarefa real do seu próprio repositório em cada um e compare os diffs. Uma tarde fazendo isso ensina mais do que qualquer artigo de comparação, inclusive este.
Quanto custa executar cada um
O custo é uma propriedade do modelo e do número de etapas agênticas, não do CLI. Ambas as ferramentas reenviam o prompt do sistema, o histórico da tarefa e o contexto atualizado dos arquivos a cada etapa, portanto a tarifa por token se acumula de forma idêntica em cada uma. Compare os modelos que você realmente usaria — a coluna Claude abaixo corresponde aos preços oficiais da API da Anthropic, que lista a tarifa por token de cada modelo e o custo calculado de uma etapa agêntica típica:
| Modelo | Executa em | Kunavo entrada / saída por 1 milhão |
|---|---|---|
claude-sonnet-4-6 | Claude Code | $2.10 / $10.50 |
claude-opus-5 | Claude Code | $3.50 / $17.50 |
claude-haiku-4-5 | Claude Code (em segundo plano) | $0.70 / $3.50 |
gpt-5-6-sol | Clientes compatíveis com OpenAI | $2.00 / $12.00 |
Uma etapa agêntica típica usa aproximadamente 25.000 tokens de entrada e 1.200 tokens de saída, portanto uma tarefa de 20 etapas chega a cerca de $1.30 em claude-sonnet-4-6 com essas tarifas. Insira seus próprios números na calculadora de custos em vez de confiar em um único exemplo calculado — trabalhos com muita saída alteram a classificação, porque as tarifas de saída diferem mais entre esses modelos do que as tarifas de entrada.
Endpoints personalizados: uma assimetria real
Ambas as ferramentas aceitam um endpoint de terceiros, mas não da mesma forma, e essa é a diferença mais prática entre elas atualmente.
O Claude Code lê ANTHROPIC_BASE_URL e usa a Anthropic Messages API, que muitos provedores oferecem. Apontá-lo para outro lugar requer três variáveis de ambiente e nenhum software adicional (guia de configuração).
O Codex CLI é mais rigoroso. Seu bloco model_providers tem uma chave wire_api, e a referência de configuração atual lista responses como o único valor compatível — isso significa que um provedor personalizado precisa oferecer a OpenAI Responses API em /v1/responses, e não o muito mais comum /v1/chat/completions:
# ~/.codex/config.toml — wire_api accepts only "responses"
model = "gpt-5-6-sol"
model_provider = "kunavo"
[model_providers.kunavo]
name = "kunavo"
base_url = "https://api.kunavo.com/v1"
env_key = "KUNAVO_API_KEY"
wire_api = "responses" # requires POST /v1/responses upstream
# A provider that serves only /v1/chat/completions still cannot be
# configured here, whatever base_url you give it.Isso ainda exclui a maioria dos gateways compatíveis com OpenAI, que oferecem /v1/chat/completions e nada mais. É por isso que tantos provedores que afirmam “funcionar com qualquer endpoint compatível com OpenAI” falham silenciosamente com o Codex CLI: a URL base é aceita, e toda solicitação retorna 404.
O Kunavo oferece as duas superfícies — o endpoint de chat compatível com OpenAI e a Responses API em /v1/responses — portanto a configuração acima funciona como está, e gpt-5-6-sol ($2.00 / $12.00 por 1M) é executado tanto pelo Codex CLI quanto pelo Cursor, Kilo Code e Cline. O passo a passo completo, incluindo a variável de ambiente da qual o Codex lê a chave, está no guia de chave de API do Codex CLI.
Vale saber uma coisa: como o Codex está vinculado ao protocolo, e não a uma família de modelos, qualquer modelo de chat por trás desse endpoint responde — inclusive Claude. Apontado para claude-opus-5, o Codex CLI executa tudo de ponta a ponta com as chamadas de ferramentas intactas, enquanto o gateway traduz Responses para Messages API e vice-versa. O custo é que os itens opacos reasoning do Codex não têm equivalente em um upstream que não seja GPT e são descartados, portanto o modelo perde seu bloco de rascunho privado entre os turnos; a transcrição visível não é afetada.
Assim, a assimetria é mais estreita do que parece, mas não desapareceu: o Claude Code funciona com praticamente qualquer provedor da Messages API, enquanto o Codex CLI funciona apenas com a minoria que implementa Responses. Isso ainda merece consideração se executar em seu próprio endpoint — por custo, roteamento ou governança — fizer parte do motivo pelo qual você está escolhendo entre os dois. Se o custo for o fator decisivo, a lista oficial de preços da API da Anthropic mostra quanto custa cada nível Claude por 1M de tokens em comparação com a tarifa publicada pela própria Anthropic, que é o número que realmente altera uma conta de codificação agêntica.
Comparações próximas
Duas perguntas adjacentes que esta página não responde. Codex versus ChatGPT trata de qual superfície da OpenAI abrir, e não de qual CLI instalar — a resposta depende da franquia compartilhada do plano e da velocidade com que um agente a consome. Cline versus Claude Code troca o terminal pela barra lateral do editor, onde a diferença decisiva é o formato da cobrança, e não o protocolo.
Algum deles pode executar os modelos do outro?
Em uma direção, sim. O Codex CLI pode executar modelos Claude por meio de um gateway que oferece a Responses API — ele está vinculado ao protocolo de transmissão, não a uma família de modelos, portanto definir model = "claude-opus-5" no bloco do provedor acima funciona de ponta a ponta, incluindo as chamadas de ferramentas. A contrapartida é que os itens opacos reasoning do Codex são descartados no caminho para um upstream que não seja GPT, fazendo o modelo perder seu bloco de rascunho privado entre os turnos.
A outra direção é mais difícil: o Claude Code espera identificadores da família Claude na Messages API, portanto para acessar GPT a partir dele é necessário um roteador local — mais um componente e alguma perda de recursos, pois cache_control só passa sem tradução na rota nativa. O guia do roteador do Claude Code explica quando essa configuração vale a pena e quando uma troca da URL base resolve o problema.
Executar cada ferramenta na família de modelos para a qual foi projetada continua sendo o padrão mais simples. Mas, se você quiser o sandbox do Codex CLI com Claude por trás, essa combinação está disponível hoje — consulte o guia de chave de API do Codex CLI.
Perguntas frequentes
Qual é a diferença entre Claude Code e Codex CLI?
Ambos são ferramentas de codificação agêntica que priorizam o terminal, leem seu repositório, propõem edições e executam comandos. As diferenças que importam na prática são a família de modelos por trás deles (Claude versus GPT), a superfície de extensões — o Claude Code tem MCP, subagentes, hooks e skills, enquanto o Codex CLI é um binário Rust de código aberto com sandbox local — e o formato de configuração. Nenhum é estritamente melhor; eles atendem a fluxos de trabalho diferentes e ambos podem usar um endpoint personalizado.
Posso usar Claude Code e Codex CLI ao mesmo tempo?
Sim — são binários separados, com configurações separadas, e não entram em conflito. Eles diferem quanto à liberdade para apontá-los para um endpoint personalizado: o Claude Code lê ANTHROPIC_BASE_URL e usa a Anthropic Messages API, enquanto o bloco model_providers do Codex CLI aceita apenas wire_api = responses, portanto um provedor personalizado precisa oferecer a OpenAI Responses API, em vez do endpoint mais comum de chat completions. Um gateway que oferece ambos — como o Kunavo — pode executar qualquer um dos CLIs usando uma única chave.
Qual é mais barato, Claude Code ou Codex CLI?
O custo é definido pelo modelo e pelo número de etapas agênticas, não pelo CLI em si. Ambas as ferramentas reenviam o contexto a cada etapa, portanto a tarifa por token se acumula da mesma forma em cada uma. Compare os modelos específicos que você realmente usaria, e considere as tarifas de saída além das tarifas de entrada, pois um trabalho agêntico com muita saída altera a classificação entre as famílias de modelos.
O Codex CLI pode usar modelos Claude, ou o Claude Code pode usar modelos GPT?
O Codex CLI pode executar modelos Claude por meio de um gateway que oferece a Responses API: ele está vinculado ao protocolo de transmissão, não a uma família de modelos, portanto, com model = claude-opus-5, executa tudo de ponta a ponta, incluindo chamadas de ferramentas. O inverso é mais difícil — o Claude Code espera identificadores da família Claude na Messages API, e para acessar GPT a partir dele é necessário um roteador local. Executar cada ferramenta na família de modelos para a qual foi projetada continua sendo o padrão mais simples, mas a direção Codex-para-Claude funciona de verdade.
Como escolher entre Claude Code e Codex CLI?
Escolha pelo ajuste ao fluxo de trabalho, não por benchmarks. Escolha o Claude Code se quiser servidores MCP, subagentes, hooks ou modo de planejamento, ou se sua equipe já padroniza arquivos de configuração. Escolha o Codex CLI se quiser um binário de código aberto que possa auditar, ou um sandbox local de execução mais rigoroso. Ambos são baratos o suficiente para serem instalados lado a lado e avaliados em uma tarefa real do seu próprio repositório, o que é mais útil do que qualquer comparação publicada.
Qual escreve código melhor?
Depende da tarefa, da linguagem e do repositório, e muda a cada lançamento de modelo. Quem afirma existir um vencedor geral duradouro está exagerando. Execute ambos no seu próprio trabalho — esse é o único resultado que se transfere.
Preciso escolher um deles?
Não. São binários separados, com configurações separadas, e não entram em conflito. Muitas pessoas mantêm ambos instalados e escolhem o que melhor se adapta à tarefa.
Algum deles é gratuito?
A instalação de ambos os CLIs é gratuita; executar qualquer um deles não é, porque cada etapa é uma chamada paga ao modelo. Consulte o Claude Code é gratuito para entender como as opções de assinatura e de cobrança por token realmente se comparam.
E quanto ao Cursor, Kilo Code e Cline?
Eles são extensões de editor, e não agentes de terminal, e recebem uma URL base compatível com OpenAI em um campo de configurações, em vez de uma variável de ambiente. Cada um tem sua própria configuração e seu próprio recurso de roteamento de modelos: Cline (divisão Plan/Act), Roo Code (um perfil de configuração por modo) e Kilo Code.