Il Codex CLI è l'agente di codice open source da terminale di OpenAI e funziona sia con l'accesso ChatGPT sia con una chiave API. Vale la pena capire il percorso della chiave: addebita per token, senza abbonamento mensile, ed è l'unico che consente di indirizzare la CLI verso un altro provider — o un'altra famiglia di modelli. Questa guida illustra la configurazione funzionante, il requisito che fa fallire la maggior parte dei gateway, il costo di una sessione e come pagare dal Brasile tramite Pix.
L'unico requisito importante
Il Codex CLI usa la Responses API di OpenAI, e solo quella: il blocco model_providers accetta esclusivamente wire_api = "responses". Un gateway che offra solo /v1/chat/completions non può essere configurato — ecco perché molti endpoint “compatibili con OpenAI” falliscono qui. Kunavo offre POST /v1/responses insieme all'endpoint chat, quindi il blocco seguente funziona senza adattamenti.
La configurazione
# ~/.codex/config.toml
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"env_key è il nome della variabile d'ambiente, non la chiave: Codex non scrive mai la chiave nel file di configurazione.
# O Codex lê a chave da variável indicada em env_key.
export KUNAVO_API_KEY="sk-kn-..." # crie em kunavo.com/app/keys
# Deixe persistente (escolha o arquivo que o seu shell realmente carrega):
echo 'export KUNAVO_API_KEY="sk-kn-..."' >> ~/.zshrc
codex "explique a estrutura deste repositório"Crea la chiave nella dashboard dopo esserti registrato e aver ricaricato $10 — viene mostrata una sola volta.
Pagare dal Brasile — Pix, senza carta internazionale
Per lo sviluppatore brasiliano, l’ostacolo raramente è il file TOML: è il metodo di pagamento. Pagare direttamente l’API OpenAI richiede una carta di credito internazionale abilitata agli acquisti all’estero. Su Kunavo il checkout viene elaborato da Stripe e Pix compare come metodo di pagamento per chi paga dal Brasile — importo in reais e compensazione immediata. Le carte internazionali (Visa, Mastercard, American Express), Apple Pay e Google Pay restano disponibili per chi le preferisce.
Le tariffe per token sono definite in USD: con Pix Stripe mostra la conversione in reais al momento del pagamento; con la carta, la conversione segue il tasso dell'emittente (verifica IOF e la commissione per transazioni internazionali nell'app della banca) — la procedura dettagliata per ricaricare tramite Pix è nella guida su come pagare l'API con Pix. Il portafoglio è prepagato — ricarica minima di $10, senza abbonamento né rinnovo automatico, con saldo che non scade mai.
Quale modello usare
| Esigenza | Modello | Input / output Kunavo (per 1M) |
|---|---|---|
| Modello specializzato predefinito per il codice | gpt-5-6-sol | $2,00 / $12,00 |
| Refactoring e debugging più difficili | claude-opus-5 | $3,50 / $17,50 |
| Codifica agentica quotidiana | claude-sonnet-5 | $1,40 / $7,00 |
| Modifiche rapide e domande | claude-haiku-4-5 | $0,70 / $3,50 |
gpt-5-6-sol è il GPT ottimizzato per il codice e il modello predefinito naturale di questa CLI, a $2,00 / $12,00 per 1M di token rispetto a $5,00 / $30,00 al prezzo di listino OpenAI — che oggi applica il prezzo promozionale di $4,00 / $20,00, disponibile almeno fino al 21 novembre 2026 secondo la pagina dei prezzi. Le tariffe complete sono nella pagina dei prezzi.
Eseguire modelli Claude nel Codex CLI
Questo spesso sorprende: il Codex CLI è vincolato al protocollo, non al modello. Usa il formato Responses e qualsiasi modello di chat dietro quell'endpoint può rispondere. Indirizzalo a claude-opus-5 e funzionerà dall'inizio alla fine — comprese le chiamate agli strumenti, quindi l'agente continuerà a leggere file, proporre modifiche ed eseguire comandi.
# Mesmo bloco de provider, outro modelo — sem chave nova, sem config nova.
model = "claude-opus-5"
model_provider = "kunavo"
[model_providers.kunavo]
name = "kunavo"
base_url = "https://api.kunavo.com/v1"
env_key = "KUNAVO_API_KEY"
wire_api = "responses"Il gateway traduce la richiesta Responses nell'API nativa Anthropic Messages e la risposta nuovamente nel formato Responses. Una precisazione onesta: Codex invia elementi reasoning opachi che solo un modello nativo Responses può consumare, e questi vengono eliminati nel percorso verso un upstream non GPT. Il modello perde la bozza privata del turno precedente; la trascrizione visibile da cui parte rimane intatta. In pratica, questo comporta una perdita limitata di continuità nelle catene di ragionamento lunghe, ma nulla nei normali cicli modifica-esegui-correggi.
Se vuoi specificamente Claude, Claude Code è stato creato per questo e passa cache_control senza traduzione. Ma se preferisci il sandbox del Codex CLI e vuoi Claude dietro di esso, la combinazione è possibile.
Quanto costa una sessione
Le CLI agentiche reinviano il prompt di sistema, la cronologia dell'attività e il contesto dei file a ogni passaggio, quindi i token si accumulano più rapidamente di quanto suggerisca il numero di passaggi. Un passaggio tipico contiene circa 25.000 token di input e 1.200 di output:
| Unità | Token (input / output) | gpt-5-6-sol | Su OpenAI oggi (prezzo promozionale) |
|---|---|---|---|
| Un passaggio agentico | 25.000 / 1.200 | $0,064 | $0,124 |
| Un'attività di 20 passaggi | ~500 mila / ~24 mila | $1,29 | $2,48 |
| Una giornata intensa (5 attività) | — | $6,44 | $12,40 |
In altre parole: una ricarica di $10 tramite Pix copre circa 8 attività agentiche da 20 passaggi. Inoltre, le richieste non riuscite non vengono addebitate — un 5xx nel mezzo di una sessione non diventa una voce in fattura.
Quando qualcosa non funziona
Prima di incolpare Codex, verifica che la chiave e l'endpoint rispondano:
# Confirme a chave e o endpoint antes de culpar o Codex.
curl https://api.kunavo.com/v1/responses \
-H "Authorization: Bearer $KUNAVO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5-6-sol",
"input": "Responda OK e nada mais."
}'- 404 — il provider non implementa
/v1/responsesoppurebase_urlinclude già/responses. Codex aggiunge il percorso autonomamente: la base termina con/v1. - 401 — la variabile indicata in
env_keyè vuota nella shell che ha aperto Codex. Verifica conecho $KUNAVO_API_KEYnello stesso terminale. - 402 — saldo insufficiente: ricarica in billing (Pix viene accreditato immediatamente).
- model_not_found — lo slug del modello non esiste nel catalogo; verifica in /models.
Domande frequenti
Come usare una chiave API con il Codex CLI?
Aggiungi un blocco [model_providers.NOME] in ~/.codex/config.toml con base_url, env_key e wire_api = "responses", quindi imposta model_provider su quel nome. Codex legge la chiave dalla variabile d'ambiente indicata in env_key — non salva la chiave nel file di configurazione. Con Kunavo, la base URL è https://api.kunavo.com/v1 e la chiave è una sk-kn- creata su kunavo.com/app/keys.
Si può usare il Codex CLI in Brasile senza una carta internazionale?
Sì, tramite il percorso della chiave API. La ricarica del portafoglio Kunavo viene elaborata da Stripe e Pix compare come metodo di pagamento per chi paga dal Brasile — importo in reais, compensazione immediata, senza dipendere da una carta di credito internazionale abilitata per l’estero. Funzionano anche le carte internazionali, Apple Pay e Google Pay. Le tariffe per token sono stabilite in dollari, la ricarica minima è di $10 e il saldo non scade.
Il Codex CLI accetta un endpoint personalizzato al posto di OpenAI?
Sì, ma il provider deve offrire la Responses API di OpenAI tramite POST /v1/responses. Il blocco model_providers del Codex CLI ammette solo wire_api = "responses", quindi non è possibile configurare un gateway che offra esclusivamente /v1/chat/completions. Kunavo offre entrambi, quindi il blocco di configurazione qui sopra funziona.
Ho bisogno di un abbonamento ChatGPT Plus o Pro per eseguire il Codex CLI?
No. Il Codex CLI può accedere con un account ChatGPT oppure funzionare con una chiave API. Il percorso della chiave addebita per token, senza abbonamento mensile — il formato più economico per chi programma a raffiche invece che ogni giorno — ed è l'unico che consente di indirizzare la CLI verso un altro provider o un'altra famiglia di modelli.
Il Codex CLI riesce a eseguire modelli Claude?
Sì, tramite un gateway che offra la Responses API. Il Codex CLI è vincolato al protocollo, non al modello: usa il formato Responses e qualsiasi modello di chat dietro quell'endpoint può rispondere. Se indirizzato a Kunavo con model = claude-opus-5, il Codex CLI funziona dall'inizio alla fine, comprese le chiamate agli strumenti — il gateway traduce Responses nell'API nativa Anthropic Messages e viceversa.
Perché il Codex CLI restituisce 404 con il mio provider personalizzato?
Quasi sempre perché il provider non implementa POST /v1/responses oppure perché la base_url include già il percorso /responses. Codex aggiunge il percorso autonomamente, quindi base_url deve terminare con /v1. Un 401 al suo posto significa che la variabile d'ambiente indicata in env_key è vuota nella shell che ha aperto Codex.
E dentro VS Code?
Kilo Code, Cline e Roo Code usano la stessa chiave, con una configurazione a tre campi — consulta la guida di Kilo Code con l'API Claude. I prezzi per modello sono nella guida ai prezzi dell'API Claude.