Claude Code e Codex CLI risolvono lo stesso problema dallo stesso punto: un agente nel terminale che legge il repository, propone modifiche, esegue comandi e itera sul risultato. Differiscono per la famiglia di modelli alla base, la superficie di estensione e il modo in cui vengono configurati, non per la struttura fondamentale del lavoro.
Questa pagina confronta le differenze effettive, offre una regola decisionale anziché un verdetto e mostra come eseguirli entrambi con una sola chiave se vuoi valutarli sul tuo codice.
Confronto affiancato
| Claude Code | Codex CLI | |
|---|---|---|
| A partire da | Anthropic | OpenAI |
| Famiglia di modelli | Claude (Opus, Sonnet, Haiku) | GPT / Codex |
| Superficie API | Anthropic Messages | Compatibile con OpenAI |
| Configurazione | Variabili d'ambiente + ~/.claude/settings.json | ~/.codex/config.toml |
| Endpoint personalizzato | ANTHROPIC_BASE_URL (API Messages) | Blocco model_providers (solo API Responses) |
| Superficie di estensione | MCP, subagent, hook, skill, modalità di pianificazione | Più essenziale; binario Rust open source |
| Sandboxing dell'esecuzione | Richieste di autorizzazione e hook | Policy di sandboxing locale |
| Integrazione con l'editor | Estensioni per VS Code e JetBrains | Basato innanzitutto sul terminale |
Entrambi sono sviluppati attivamente ed entrambi evolvono rapidamente, quindi considera qualsiasi elenco di funzionalità — incluso questo — come un'istantanea. Le differenze strutturali (famiglia di modelli, superficie API, formato di configurazione) sono la parte stabile; le funzionalità specifiche non lo sono.
Come scegliere
Non esiste una risposta generale su quale produca codice migliore: varia in base a linguaggio, repository e attività, e i benchmark pubblicati testa a testa raramente assomigliano al tuo codice. Ciò che puoi decidere in anticipo è quale si adatta al tuo modo di lavorare:
| Se vuoi… | Orientati verso |
|---|---|
| Server MCP, subagent, hook, skill | Claude Code |
| Pianificazione ed esecuzione delle modifiche estese | Claude Code |
| Configurazione condivisa dal team in un file di impostazioni versionato | Claude Code |
| Un binario open source verificabile | Codex CLI |
| Sandboxing locale dell'esecuzione più rigoroso | Codex CLI |
| Restare all'interno della famiglia di modelli di un solo provider | Quello che corrisponde meglio |
La raccomandazione onesta: entrambi sono gratuiti da installare, quindi sottoponi la stessa attività reale del tuo repository a ciascuno e confronta le differenze. Un pomeriggio di questo tipo ti dirà più di qualsiasi articolo comparativo, incluso questo.
Quanto costa eseguire ciascuno
Il costo è una proprietà del modello e del numero di passaggi agentici, non della CLI. Entrambi gli strumenti reinviano il prompt di sistema, la cronologia dell'attività e il nuovo contesto dei file a ogni passaggio, quindi la tariffa per token si accumula nello stesso modo in entrambi. Confronta i modelli che eseguiresti realmente: la colonna Claude qui sotto è confrontata con i prezzi ufficiali dell'API di Anthropic, che riportano la tariffa per token di ogni modello e il costo calcolato di un tipico passaggio agentico:
| Modello | Eseguiti in | Kunavo ingresso / uscita per 1 milione |
|---|---|---|
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 (in background) | $0,70 / $3,50 |
gpt-5-6-sol | Client compatibili con OpenAI | $2,00 / $12,00 |
Un tipico passaggio agentico prevede circa 25.000 token di input e 1.200 di output, quindi un'attività di 20 passaggi arriva a circa $1,30 su claude-sonnet-4-6 a queste tariffe. Inserisci i tuoi numeri nel calcolatore dei costi invece di affidarti a un singolo esempio calcolato: le attività con molto output modificano la classifica, perché le tariffe di output differiscono maggiormente tra questi modelli rispetto a quelle di input.
Endpoint personalizzati: un'asimmetria reale
Entrambi gli strumenti supportano un endpoint di terze parti, ma non allo stesso modo, ed è questa oggi la differenza più pratica tra loro.
Claude Code legge ANTHROPIC_BASE_URL e comunica tramite l'API Anthropic Messages, fornita da molti provider. Indirizzarlo altrove richiede tre variabili d'ambiente e nessun software aggiuntivo (guida alla configurazione).
Codex CLI è più rigido. Il suo blocco model_providers contiene una chiave wire_api, e il riferimento alla configurazione corrente elenca responses come unico valore supportato: ciò significa che un provider personalizzato deve offrire l'API Responses di OpenAI su /v1/responses, non il molto più comune /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.Questo esclude comunque la maggior parte dei gateway compatibili con OpenAI, che offrono /v1/chat/completions e nient'altro. È il motivo per cui tanti provider che “funzionano con qualsiasi endpoint compatibile con OpenAI” falliscono silenziosamente con Codex CLI: l'URL di base viene accettato e ogni richiesta restituisce 404.
Kunavo offre entrambe le interfacce: l'endpoint chat compatibile con OpenAI e l'API Responses su /v1/responses; quindi la configurazione sopra funziona così com'è, e gpt-5-6-sol ($2,00 / $12,00 per 1M) viene eseguito da Codex CLI oltre che da Cursor, Kilo Code e Cline. La procedura completa, inclusa la variabile d'ambiente da cui Codex legge la chiave, si trova nella guida alla chiave API di Codex CLI.
Un aspetto importante: poiché Codex è vincolato al protocollo e non a una famiglia di modelli, qualsiasi modello chat dietro quell'endpoint può rispondere, incluso Claude. Indirizzato a claude-opus-5, Codex CLI viene eseguito dall'inizio alla fine con le chiamate agli strumenti intatte: il gateway traduce Responses in Messages e viceversa. Il costo è che gli elementi opachi reasoning di Codex non hanno equivalenti su un upstream non GPT e vengono eliminati, quindi il modello perde il proprio blocco note privato tra un turno e l'altro; la trascrizione visibile non viene modificata.
L'asimmetria è quindi più circoscritta di quanto sembri, ma non è scomparsa: Claude Code funzionerà con quasi qualsiasi provider dell'API Messages, mentre Codex CLI funziona solo con la minoranza che implementa Responses. È comunque un fattore da valutare se eseguire il servizio sul proprio endpoint — per costi, routing o governance — è uno dei motivi per cui stai scegliendo tra i due. Se il costo è il fattore decisivo, il listino ufficiale dell'API di Anthropic specifica quanto costa ogni livello Claude per 1M di token rispetto alla tariffa pubblicata da Anthropic, cioè il numero che incide davvero sulla fattura della programmazione agentica.
Confronti correlati
Due domande adiacenti a cui questa pagina non risponde. Codex vs ChatGPT riguarda quale interfaccia OpenAI aprire, non quale CLI installare: la risposta dipende dall'assegnazione condivisa del piano e dalla velocità con cui un agente la consuma. Cline vs Claude Code sostituisce il terminale con la barra laterale dell'editor, dove la differenza decisiva riguarda la struttura della fatturazione, non il protocollo.
L'uno può eseguire i modelli dell'altro?
In una direzione, sì. Codex CLI può eseguire modelli Claude tramite un gateway che offre l'API Responses: è vincolato al protocollo di comunicazione, non a una famiglia di modelli, quindi impostare model = "claude-opus-5" nel blocco provider sopra funziona dall'inizio alla fine, incluse le chiamate agli strumenti. Il compromesso è che gli elementi opachi reasoning di Codex vengono eliminati durante il passaggio a un upstream non GPT, privando il modello del proprio blocco note privato tra un turno e l'altro.
L'altra direzione è più complessa: Claude Code si aspetta identificatori della famiglia Claude sull'API Messages, quindi per raggiungere GPT serve un router locale, cioè un altro componente e una certa perdita di funzionalità, poiché cache_control passa senza traduzione solo sulla rotta nativa. La guida al router di Claude Code spiega quando vale la pena configurarlo e quando basta sostituire l'URL di base.
Eseguire ogni strumento sulla famiglia di modelli per cui è stato progettato resta l'impostazione predefinita più semplice. Ma se vuoi il sandboxing di Codex CLI con Claude dietro, questa combinazione è disponibile oggi: consulta la guida alla chiave API di Codex CLI.
Domande frequenti
Qual è la differenza tra Claude Code e Codex CLI?
Entrambi sono strumenti di coding agentico basati innanzitutto sul terminale: leggono il repository, propongono modifiche ed eseguono comandi. Le differenze che contano nella pratica sono la famiglia di modelli alla base (Claude rispetto a GPT), la superficie di estensione — Claude Code dispone di MCP, subagent, hook e skill, mentre Codex CLI è un binario Rust open source con sandboxing locale — e il formato di configurazione. Nessuno è intrinsecamente migliore; si adattano a flussi di lavoro diversi ed entrambi possono usare un endpoint personalizzato.
Posso usare Claude Code e Codex CLI contemporaneamente?
Sì: sono binari separati con configurazioni separate e non entrano in conflitto. Differiscono nella libertà con cui puoi indirizzarli verso un endpoint personalizzato: Claude Code legge ANTHROPIC_BASE_URL e usa l'API Anthropic Messages, mentre il blocco model_providers di Codex CLI supporta solo wire_api = responses, quindi un provider personalizzato deve offrire l'API Responses di OpenAI anziché il più comune endpoint chat completions. Un gateway che offre entrambi — come Kunavo — può eseguire entrambi i CLI con una sola chiave.
Qual è più economico, Claude Code o Codex CLI?
Il costo è determinato dal modello e dal numero di passaggi agentici, non dal CLI in sé. Entrambi gli strumenti reinviano il contesto a ogni passaggio, quindi la tariffa per token si accumula nello stesso modo per ciascuno. Confronta i modelli specifici che useresti davvero, non gli strumenti, e considera sia le tariffe di output sia quelle di input, poiché il lavoro agentico con molto output modifica la classifica tra le famiglie di modelli.
Codex CLI può usare modelli Claude oppure Claude Code può usare modelli GPT?
Codex CLI può eseguire modelli Claude tramite un gateway che offre l'API Responses: è vincolato al protocollo wire, non a una famiglia di modelli, quindi con model = claude-opus-5 funziona end-to-end, incluse le chiamate agli strumenti. Il contrario è più difficile: Claude Code si aspetta slug della famiglia Claude sull'API Messages e per raggiungere GPT serve un router locale. Eseguire ciascuno strumento sulla famiglia di modelli per cui è stato progettato resta l'impostazione predefinita più semplice, ma la direzione da Codex a Claude funziona davvero.
Come scelgo tra Claude Code e Codex CLI?
Scegli in base alla compatibilità con il tuo flusso di lavoro, non ai benchmark. Scegli Claude Code se vuoi server MCP, subagent, hook o modalità di pianificazione, oppure se il tuo team standardizza già sui file di impostazioni. Scegli Codex CLI se vuoi un binario open source verificabile, oppure un sandboxing locale più rigoroso. Entrambi sono abbastanza economici da installare affiancati e valutare su un'attività reale del tuo repository, un metodo più utile di qualsiasi confronto pubblicato.
Quale scrive codice migliore?
Dipende dall'attività, dal linguaggio e dal repository e cambia a ogni release del modello. Chi afferma che esista un vincitore generale duraturo sta esagerando. Eseguili entrambi sul tuo lavoro: quel risultato è l'unico che si trasferisce davvero.
Devo sceglierne uno?
No. Sono binari separati con configurazioni separate e non entrano in conflitto. Molte persone li tengono entrambi installati e usano quello più adatto all'attività.
Uno dei due è gratuito?
Entrambi i CLI sono gratuiti da installare; nessuno dei due è gratuito da usare, perché ogni passaggio è una chiamata a pagamento al modello. Consulta Claude Code è gratuito? per capire come si confrontano effettivamente il percorso tramite abbonamento e quello a consumo per token.
E Cursor, Kilo Code e Cline?
Sono estensioni dell'editor, non agenti da terminale, e accettano un base URL compatibile con OpenAI in un campo delle impostazioni anziché in una variabile d'ambiente. Ciascuno ha una propria configurazione e una propria funzione di instradamento dei modelli: Cline (separazione Plan/Act), Roo Code (un profilo di configurazione per modalità) e Kilo Code.