Source: https://aiprimetech.io/it/learn/use-claude-api-with-codex/ [Home](/it/) / [Impara](/it/learn/) / Codex CLI con un provider personalizzato: config.toml, modelli GPT e Claude, estensione IDE e soluzioni # Codex CLI con un provider personalizzato: config.toml, modelli GPT e Claude, estensione IDE e soluzioni ai problemi Codex legge un unico file, ~/.codex/config.toml, condiviso dalla CLI, codex exec e dall'estensione IDE. Un provider personalizzato in quel file indirizza Codex a questo gateway, dove la stessa configurazione esegue modelli GPT e modelli Claude. Le versioni attuali di Codex comunicano solo tramite Responses API (wire_api = "responses"), quindi le vecchie guide che usano wire_api = "chat" non funzionano più. ## Installa Codex terminaleCopia ``` # macOS / Linux curl -fsSL https://chatgpt.com/codex/install.sh | sh # or with a package manager npm install -g @openai/codex brew install --cask codex codex --version ``` Windows PowerShellCopia ``` powershell -ExecutionPolicy ByPass -c "irm https://chatgpt.com/codex/install.ps1 | iex" ``` L'estensione Codex per VS Code, Cursor e Windsurf si installa dal marketplace delle estensioni dell'editor e usa lo stesso ~/.codex/config.toml della CLI, quindi tutto quanto segue si applica a entrambi. ## Usa una chiave del gruppo corretto Una chiave del gateway appartiene a un solo gruppo, e il gruppo determina quali modelli la chiave può chiamare. Per i modelli GPT, crea la chiave nel gruppo **Codex** nella dashboard. Per i modelli Claude, va bene qualsiasi chiave Claude con pagamento a consumo. Una chiave di un gruppo illimitato richiede un piano attivo; in sua assenza, ogni richiesta fallisce con No active subscription found for this group. ~/.bashrc o ~/.zshrcCopia ``` export AIPRIME_CODEX_KEY=key_from_the_codex_group # GPT models export AIPRIME_CLAUDE_KEY=key_from_a_claude_group # Claude models ``` WindowsCopia ``` setx AIPRIME_CODEX_KEY "key_from_the_codex_group" setx AIPRIME_CLAUDE_KEY "key_from_a_claude_group" # open a new terminal afterwards ``` ## config.toml per i modelli GPT ~/.codex/config.tomlCopia ``` model_provider = "aiprime" model = "gpt-6-astra" model_reasoning_effort = "high" [model_providers.aiprime] name = "AI Prime Tech" base_url = "https://aiprimetech.io/v1" env_key = "AIPRIME_CODEX_KEY" wire_api = "responses" supports_websockets = false ``` | Impostare | Motivo | [model_providers.aiprime] | Qualsiasi ID tranne quello riservato openai, ollama e lmstudio | base_url = "https://aiprimetech.io/v1" | Codex aggiunge /responses alla fine | env_key | Il **nome** della variabile d'ambiente che contiene la chiave, non la chiave stessa | wire_api = "responses" | L'unico valore accettato dalle versioni attuali di Codex | supports_websockets = false | Mantiene Codex sul semplice streaming HTTP, che funziona attraverso qualsiasi proxy o VPN Non aggiungere requires_openai_auth = true o experimental_bearer_token a questo provider. Con requires_openai_auth = true Codex ignora env_key e invia invece le tue credenziali di accesso a ChatGPT o OpenAI, che il gateway rifiuta. ## Esegui Codex con i modelli Claude Il gateway accetta richieste Responses API per i modelli Claude e le converte, quindi Codex può usare anche Claude. Aggiungi un secondo provider che usi la tua chiave Claude, poi un profilo per passare a quel provider. ~/.codex/config.toml (aggiungi sotto il primo provider)Copia ``` [model_providers.aiprime_claude] name = "AI Prime Tech (Claude)" base_url = "https://aiprimetech.io/v1" env_key = "AIPRIME_CLAUDE_KEY" wire_api = "responses" supports_websockets = false ``` ~/.codex/claude.config.tomlCopia ``` model_provider = "aiprime_claude" model = "claude-sonnet-5" model_reasoning_effort = "high" ``` terminaleCopia ``` codex --profile claude codex exec --profile claude "review the last commit for bugs" ``` A partire da Codex 0.134.0, ogni profilo ha un proprio file, ~/.codex/.config.toml, con le relative chiavi al livello principale; [profiles.] le tabelle all'interno di config.toml non vengono più lette. Profili e provider possono essere impostati solo nella configurazione utente: il file di progetto .codex/config.toml ignora model_provider e model_providers. ## Modelli e intensità del ragionamento | ID del modello | Provider | Usalo per | gpt-6-astra | Chiave del gruppo Codex | Il modello GPT più potente sul gateway; attività lunghe dell'agente | gpt-6-sol | Chiave del gruppo Codex | GPT più veloce ed economico per la programmazione ordinaria | gpt-5.6-terra | Chiave del gruppo Codex | Attività leggere e modifiche rapide | claude-sonnet-5 | Chiave Claude | Claude predefinito per le attività di programmazione | claude-opus-5-5 | Chiave Claude | Ragionamento più complesso e refactoring estesi | claude-fable-5-1 | Chiave Claude | Il più capace e il più costoso model_reasoning_effort accetta low, medium, high, xhigh o max, a seconda del modello. Non impostare none: questi modelli lo rifiutano con 'none' is not supported. review_model imposta un modello diverso per /review se lo desideri. La dashboard mostra tutti i modelli che il gruppo della tua chiave può chiamare. ## Estensione IDE e codex exec L'estensione IDE legge lo stesso config.toml, ma env_key viene risolto dall'ambiente dell'editor stesso. Un editor avviato dal Dock o dal menu Start non vede le variabili esportate in .bashrc, e Codex quindi fallisce con Invalid API key mentre la CLI funziona. Imposta la variabile a livello di sistema (su Windows setx lo fa), oppure avvia l'editor da un terminale, ad esempio code .. codex exec esegue una singola attività senza l'interfaccia interattiva, quindi è adatto a script e CI. Usa la stessa configurazione e gli stessi profili: terminaleCopia ``` codex exec "write unit tests for utils.py" codex exec --profile claude "summarise the changes on this branch" codex login status # which authentication method is active ``` ## Nuovi tentativi e timeout Ogni provider ha le proprie impostazioni per i tentativi e lo streaming. I valori predefiniti sono 4 nuovi tentativi per le richieste, 5 riconnessioni dello stream e un timeout di inattività di 5 minuti per ogni stream. I turni di ragionamento lunghi possono restare senza output per un po', quindi aumentare il timeout di inattività aiuta con livelli elevati di intensità del ragionamento. ~/.codex/config.tomlCopia ``` [model_providers.aiprime] # ...settings from above... request_max_retries = 6 stream_max_retries = 8 stream_idle_timeout_ms = 600000 ``` ## Risoluzione dei problemi: errori riscontrati dagli utenti di Codex Gli errori seguenti sono quelli effettivamente prodotti dai client Codex su questo gateway, a partire dai più comuni. | Che cosa vedi | Causa | Soluzione | 403 No active subscription found for this group | La chiave appartiene a un gruppo illimitato senza un piano attivo | Usa una chiave di un gruppo con pagamento a consumo (Codex per GPT), oppure acquista un piano | 401 Invalid API key | La variabile è vuota nel processo che esegue Codex (spesso l'IDE), oppure requires_openai_auth = true ha fatto sì che Codex inviasse altre credenziali di accesso | echo $AIPRIME_CODEX_KEY; rimuovi requires_openai_auth; riavvia l'editor | 404 Model "..." is not supported by any configured account in this group | Il modello non appartiene al gruppo della chiave, ad esempio un modello Claude con una chiave GPT | Cambia provider o profilo in modo che la chiave corrisponda al modello | 426 WebSocket upgrade required | Il trasporto WebSocket è attivo, ma la connessione non è stata aggiornata | supports_websockets = false, e rimuovi responses_websockets_v2 da [features] | 403 Your API key has expired | La chiave è stata creata con una data di scadenza | Crea una nuova chiave nella dashboard | 'none' is not supported | Intensità del ragionamento impostata su none | Usa low o superiore | 404 page not found | base_url contiene /v1 due volte | Usa esattamente https://aiprimetech.io/v1 | Errore di configurazione relativo a wire_api dopo un aggiornamento | A wire_api = "chat" riga tratta da una vecchia guida | Imposta wire_api = "responses" | Your balance is used up | Il saldo è esaurito | [Ricarica](/it/topup/) | Concurrency limit exceeded for user | Più agenti o finestre Codex in esecuzione contemporaneamente | Eseguine meno in parallelo oppure chiedi all'assistenza un limite di concorrenza più alto Stai confrontando Codex con Claude Code prima di sceglierne uno? Consulta [Claude Code vs Codex](/it/claude-code/vs-codex/). ## Domande frequenti Dove si trova il file di configurazione di Codex? ~/.codex/config.toml (oppure $CODEX_HOME/config.toml). La CLI, codex exec e l'estensione IDE leggono tutti questo file. Il file .codex/config.toml di un progetto non può impostare i provider. La CLI di Codex può usare i modelli Claude? Sì, tramite un gateway che accetta richieste Responses API per i modelli Claude. Aggiungi un provider con una chiave Claude e imposta model su un ID come claude-sonnet-5. wire_api = "chat" funziona ancora in Codex? No. La documentazione di riferimento della configurazione di Codex indica responses come unico valore supportato, ed è il valore predefinito quando viene omesso. Perché l'estensione Codex per VS Code segnala una chiave API non valida mentre la CLI funziona? env_key viene letto dall'ambiente dell'editor. Imposta la variabile a livello di sistema oppure avvia l'editor da un terminale in cui la variabile è esportata. Che cosa significa «Nessun abbonamento attivo trovato per questo gruppo» in Codex? La chiave appartiene a un gruppo con abbonamento (Unlimited) senza un piano attivo. Usa una chiave di un gruppo con pagamento a consumo oppure acquista un piano. Inizia a usare Claude in pochi minuti Ottieni una chiave API: non servono un account Anthropic né una lista d'attesa.[Ottieni la tua chiave API](/register) AI Prime Tech è un gateway API indipendente. Non è affiliato ad Anthropic, non è approvato da Anthropic e non è un suo rivenditore. Claude e i nomi dei modelli correlati sono marchi dei rispettivi proprietari. Guide a Codex e all'API GPT: [Chiave API e accesso a Codex](/it/codex-api/) · [API compatibile con OpenAI](/it/openai-api/) · [Configurazione di Codex CLI](/it/docs/guides/codex-cli/) · [Confronto tra modelli GPT-6](/it/blog/gpt-6-models-for-codex/) ## Altre guide all'API di Claude [Come ottenere una chiave API di Claude](/it/learn/how-to-get-a-claude-api-key/)[I prezzi dell'API Claude, spiegati](/it/learn/claude-api-pricing-explained/)[Il modo più economico per usare l'API Claude](/it/learn/cheapest-way-to-use-claude-api/)[Cursor illimitato con l'API Claude](/learn/use-claude-api-with-cursor/)[Accesso illimitato a Claude Code](/it/learn/use-claude-api-with-claude-code/)[Gateway API Claude e accesso diretto ad Anthropic a confronto](/it/learn/claude-api-vs-anthropic-direct/)[Usare Claude tramite un'API compatibile con OpenAI](/it/learn/openai-compatible-claude-api/)[I modelli Claude spiegati: un confronto tra Claude Opus, Sonnet, Haiku e Fable — tutti i modelli API Claude, i nomi dei modelli Anthropic e i prezzi (2026)](/it/learn/claude-api-models-compared/)[Pagare l'API Claude con criptovalute](/it/learn/claude-api-with-crypto-payment/)[Accesso all'API Claude senza lista d'attesa](/it/learn/claude-api-without-waitlist/)[Come ridurre l'utilizzo dei token di Claude](/it/learn/how-to-reduce-claude-token-usage/)[Cline illimitato con l'API Claude](/it/learn/use-claude-api-with-cline/)[Roo Code illimitato con l'API Claude](/it/learn/use-claude-api-with-roo-code/)[Claude illimitato negli IDE JetBrains](/it/learn/use-claude-api-with-jetbrains/)[Aider senza limiti con l'API di Claude](/it/learn/use-claude-api-with-aider/)[Claude illimitato in VS Code](/it/learn/use-claude-api-with-vscode/)[Configurazione di OpenCode per Claude: impostazione di opencode.json, modelli ed errori comuni](/it/learn/use-claude-api-with-opencode/)[Eseguire un agente Hermes senza limiti su Claude](/it/learn/run-hermes-agent-with-claude-api/)[Eseguire OpenClaw senza limiti con Claude](/it/learn/run-openclaw-with-claude-api/)[Cosa significa un'API compatibile con Anthropic](/it/learn/anthropic-compatible-api/)[Chiave API di Claude Code — ANTHROPIC_API_KEY: come ottenerla, configurarla e quando usare invece claude setup-token](/it/learn/claude-code-api-key-setup/)[Costi dell'API di Claude Code — Prezzi e come ridurli](/it/learn/claude-code-api-costs/)[Gli errori dell'API Claude spiegati: errore del server 500, sovraccarico 529, limite di frequenza 429, richiesta non valida 400 — e la soluzione per ciascuno](/it/learn/claude-api-errors-troubleshooting/)[Come acquistare crediti per l'API di Claude e perché un credito Claude conviene più di qualsiasi offerta per «acquistare un account Claude»](/it/learn/buy-claude-api-credits/)[API Claude gratuita: esiste una chiave API di Claude gratuita e che cosa è davvero gratuito nel 2026?](/it/learn/claude-api-free-trial/)[API Claude e abbonamento Claude Pro/Max a confronto — Quale scegliere](/it/learn/claude-api-vs-subscription/)[Collegare Claude a n8n](/it/learn/use-claude-api-with-n8n/)[Instradare LiteLLM verso Claude](/it/learn/use-claude-api-with-litellm/)[Usare Claude in Kilo Code](/it/learn/use-claude-api-with-kilo-code/)[Integrare Claude in GitHub Copilot](/it/learn/use-claude-api-with-github-copilot/)[Collega Zed a Claude tramite il gateway](/it/learn/use-claude-api-with-zed/)[Collega Cherry Studio a Claude](/it/learn/use-claude-api-with-cherry-studio/)[ChatAnthropic in LangChain: importazione, base_url, streaming, strumenti ed errori](/it/learn/use-claude-api-with-langchain/)[SDK Python di Anthropic: installazione, configurazione di base_url, streaming e gestione degli errori](/it/learn/anthropic-python-sdk/)[Claude con Vercel AI SDK: baseURL di createAnthropic, streaming e soluzioni ai problemi](/it/learn/use-claude-api-with-vercel-ai-sdk/)[Esegui Factory Droid con Claude](/it/learn/use-claude-api-with-factory-droid/)[L'API di Claude Code spiegata](/it/learn/claude-code-api/)[Integrare l'API di Claude nella tua applicazione](/it/learn/claude-api-integration/)[Come ottenere un utilizzo illimitato di Claude e perché non esiste un «Claude Code craccato»](/it/learn/get-unlimited-claude-usage/)