Claude Code ou Codex CLI: resultados próximos escondem controles diferentes

|Autor: Equipe editorial da QUASA|7 min de leitura
Claude Code ou Codex CLI: resultados próximos escondem controles diferentes

Claude Code e Codex CLI chegaram a resultados próximos em um teste restrito de engenharia reversa, mas oferecem controles diferentes para executar trabalho no terminal. Para escolher entre eles, importa definir se a tarefa pede restrições sobre as ferramentas disponíveis, limites de acesso aos arquivos, aprovação de comandos ou integração com scripts.

As duas ferramentas aceitam sessões interativas, retomada de conversas e execução sem interface. O resultado publicado ajuda a comparar configurações em desafios específicos; para um repositório de software, a escolha também depende de como cada CLI delimita as ações do agente e entrega sua resposta a outras etapas do desenvolvimento.

Permissões: o que o agente pode usar e onde pode agir

No Claude Code, a referência oficial da CLI distingue três controles que podem parecer equivalentes. --tools restringe as ferramentas internas disponíveis; --allowedTools permite que ferramentas ou comandos indicados sejam executados sem pedir aprovação; --disallowedTools define regras de negação. O modo inicial de permissão é escolhido por --permission-mode.

A diferença entre restringir e autorizar importa. Liberar a execução de Read sem confirmação, por exemplo, não reduz automaticamente o conjunto das demais ferramentas. Uma tarefa de inspeção que deva evitar edições precisa de uma configuração compatível com esse limite. A própria referência esclarece que --tools não restringe ferramentas MCP; regras para elas exigem um controle adicional.

No Codex CLI, o modelo de sandbox e aprovações separa a fronteira dos recursos acessíveis da decisão de interromper a execução para obter autorização. Em read-only, o agente pode examinar arquivos, mas precisa de aprovação para editar ou executar comandos. Em workspace-write, pode editar dentro do espaço de trabalho e executar comandos locais rotineiros; com a política on-request, solicita aprovação quando precisa ultrapassar a fronteira configurada. A política never elimina as solicitações de aprovação, sem ampliar por si só os limites do sandbox.

Essa separação torna a pergunta operacional mais precisa: quais diretórios podem receber alterações e em que circunstâncias uma ação deve parar para revisão? No Claude Code, a seleção das ferramentas e as regras de permissão recebem atenção direta na linha de comando. No Codex, sandbox e aprovação são parâmetros distintos. Nenhum desses controles mede a qualidade do código produzido; eles determinam o alcance que o agente terá enquanto trabalha.

Retomada: conversa anterior e ambiente atual

Claude Code usa claude -c para continuar a conversa mais recente no diretório atual e claude -r para retomar uma sessão por nome ou identificador. No Codex, codex resume continua uma sessão interativa, enquanto codex exec resume retoma uma execução sem interface. A referência de comandos do Codex também documenta a seleção da sessão por identificador e a opção --last para escolher a mais recente no diretório de trabalho.

Para uma investigação longa, a retomada conserva o histórico de decisões e descobertas. Já em uma automação com tarefas simultâneas, escolher a sessão pelo identificador evita depender de qual execução terminou por último. Há ainda uma distinção material: continuar uma conversa não restaura automaticamente arquivos, dependências ou permissões ao estado anterior. O histórico orienta o agente, enquanto os comandos seguintes atuam sobre o ambiente disponível naquele momento.

Automação sem interface: eventos ou resposta final

No Claude Code, claude -p executa uma solicitação e encerra a sessão sem abrir o modo interativo. Para esse uso, --max-turns limita as etapas do agente; --output-format escolhe texto, JSON ou JSON em fluxo; e --json-schema solicita uma resposta final validada contra um esquema. Esses parâmetros permitem definir o que um script receberá e estabelecer um limite para a execução.

No Codex, codex exec cumpre o papel de execução sem interface. A opção --json emite eventos em JSONL, --output-last-message grava a mensagem final em um arquivo e --output-schema define o esquema esperado para essa resposta. O comando também aceita a escolha do modelo e do sandbox. O nome parecido das opções de JSON não implica a mesma saída: um fluxo de eventos registra etapas da execução, enquanto o esquema se aplica ao resultado final.

Essa diferença afeta a integração com CI. Um processo que acompanha estados intermediários precisa interpretar eventos; outro pode consumir apenas a mensagem final estruturada. Em qualquer caso, o formato facilita a conexão entre ferramentas, mas não verifica se uma alteração compila, passa nos testes ou atende aos requisitos do repositório. Essa verificação pertence ao processo de desenvolvimento em que o agente é inserido.

Integração além da sessão local

A escolha pode envolver o destino do trabalho depois do terminal. O catálogo de recursos do Codex reúne materiais para uso na CLI e em editores, revisão de código e modernização de bases legadas. São caminhos do ecossistema do produto: a existência de um fluxo de revisão ou de uma extensão não altera automaticamente as permissões de uma execução local.

Para quem concentra o processo no shell, os pontos de integração mais concretos são outros: entrada por arquivo ou comando, sessão que possa ser identificada, saída que um script consiga interpretar e fronteiras de acesso compatíveis com o repositório. Assim, a comparação entre os agentes de terminal pode ser feita sem confundir os comandos locais com todos os serviços associados a cada produto.

O alcance do resultado publicado

No estudo da Ricerca Security, realizado em dezembro de 2025 com 24 desafios de engenharia reversa, a configuração com Claude Code resolveu 15 tarefas e a com Codex CLI resolveu 14 quando havia descompilador; sem ele, resolveram 17 e 14, respectivamente. A proximidade no cenário com descompilador sustenta a comparação do desempenho naquele conjunto, sem estabelecer um vencedor para programação em geral.

Os desafios eram do tipo crackme: binários ELF para Linux x86-64 que podiam ser resolvidos localmente. Os agentes de terminal trabalharam em um contêiner com ferramentas de análise, e uma tarefa era considerada resolvida após a obtenção da resposta correta em até três tentativas. O desenho produz um critério objetivo para esses problemas, mas não abrange manutenção de aplicações, criação de testes ou revisão de mudanças em equipes.

Também não se tratou de um confronto isolado entre duas interfaces. A configuração de Claude Code usou o modelo claude-opus-4-5-20251101; a de Codex CLI, gpt-5.1-codex-max. Os totais pertencem ao conjunto formado por modelo, agente, ferramentas e desafios. Retirar o descompilador mudou o resultado do Claude Code nesse conjunto, enquanto o total do Codex CLI permaneceu igual; isso mostra por que a disponibilidade de uma ferramenta deve fazer parte da descrição do teste.

Os pesquisadores registraram ainda o tempo gasto nas tarefas resolvidas e examinaram os registros das falhas. Entre os padrões observados estavam confiança excessiva em pistas enganosas, dificuldade em abandonar um plano improdutivo e limites de contexto. Esses achados ajudam a entender como as configurações falharam nos desafios estudados, sem transformar a contagem de soluções em uma previsão de desempenho para qualquer projeto.

Qual escolha corresponde ao trabalho

Claude Code oferece uma combinação direta para quem precisa especificar ferramentas disponíveis, regras de autorização, limite de turnos e formato de uma chamada sem interface. Codex CLI torna explícita a combinação entre fronteira de acesso aos arquivos, política de aprovação e saída para automação. Ambos permitem retomar trabalho anterior, desde que o fluxo use o comando apropriado para a sessão interativa ou para a execução automatizada.

Se o requisito decisivo é impedir que uma tarefa escreva fora de um espaço definido, o sandbox do Codex oferece uma fronteira configurável. Se o requisito é limitar de forma explícita as ferramentas internas às quais o agente tem acesso, --tools do Claude Code responde diretamente a essa necessidade. Para desempenho, o dado publicado é um ponto de referência em engenharia reversa; a decisão para um repositório depende da tarefa, das permissões exigidas e da forma como o resultado será integrado ao restante do trabalho.

Leia também:

Compartilhar:

Assine nossa newsletter

Receba as últimas notícias sobre Web3, IA e cripto diretamente no seu e-mail.

0