> ## Documentation Index
> Fetch the complete documentation index at: https://apidoc.cometapi.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Usa Codex con CometAPI

> Usa questa guida per configurare Codex con CometAPI come provider di modelli modificando le impostazioni del provider nel file config.toml a livello utente.

Usa questa guida per eseguire [Codex](https://developers.openai.com/codex/quickstart) con CometAPI come provider di modelli.

Riferimenti ufficiali:

* [Guida rapida di Codex](https://developers.openai.com/codex/quickstart)
* [Nozioni di base sulla configurazione di Codex](https://developers.openai.com/codex/config-basic)
* [Provider di modelli personalizzati di Codex](https://developers.openai.com/codex/config-advanced#custom-model-providers)
* [Autenticazione di Codex](https://developers.openai.com/codex/auth)
* [Codex su Windows](https://developers.openai.com/codex/windows)

## Prerequisiti

| Requisito           | Dettagli                                                                                                       |
| ------------------- | -------------------------------------------------------------------------------------------------------------- |
| OS                  | macOS, Linux, Windows PowerShell nativo o Windows con WSL                                                      |
| Git                 | 2.23+ consigliato                                                                                              |
| Codex               | Installa l'app Codex o Codex CLI dalla [guida rapida di Codex](https://developers.openai.com/codex/quickstart) |
| Chiave API CometAPI | Ottienine una dalla [dashboard di CometAPI](https://www.cometapi.com/console/token)                            |
| Model ID            | Usa un model ID dalla [pagina Models](/it/overview/models)                                                     |

## Scegli un percorso di configurazione

Forniamo due opzioni per aiutarti a configurare Codex rapidamente.

<CardGroup cols={2}>
  <Card title="Opzione 1: Configura Codex manualmente (consigliato)" icon="bolt" href="#configure-codex-manually">
    Modifica direttamente il file `~/.codex/config.toml` a livello utente. Questo è il percorso più affidabile, soprattutto per gli utenti Windows e WSL.
  </Card>

  <Card title="Opzione 2: Configura tramite script" icon="puzzle-piece" href="#run-the-setup-script">
    Esegui lo script di configurazione come scorciatoia. Scrive la stessa configurazione del provider e memorizza la chiave API CometAPI per Codex.
  </Card>
</CardGroup>

## Configurare Codex manualmente

Codex legge i provider personali predefiniti dal file `~/.codex/config.toml` a livello utente. Configura lì il provider CometAPI, non in un file `.codex/config.toml` del progetto. Codex ignora le impostazioni provider e provider-auth nei file di configurazione del progetto.

La configurazione consigliata usa un provider nominato `cometapi` e un'autenticazione basata su comando. Questo mantiene CometAPI separato dal provider OpenAI integrato, non richiede l'ereditarietà delle variabili d'ambiente della shell e non sostituisce `~/.codex/auth.json`.

<Tabs>
  <Tab title="macOS / Linux / WSL">
    Memorizza la tua chiave API CometAPI in un file di chiavi locale:

    ```bash theme={null}
    mkdir -p "$HOME/.codex"
    printf "%s\n" "$COMETAPI_KEY" > "$HOME/.codex/cometapi_key"
    chmod 600 "$HOME/.codex/cometapi_key"
    ```

    Aggiungi questa configurazione a `~/.codex/config.toml`:

    ```toml theme={null}
    model_provider = "cometapi"
    model = "your-model-id"

    [model_providers.cometapi]
    name = "CometAPI"
    base_url = "https://api.cometapi.com/v1"
    wire_api = "responses"

    [model_providers.cometapi.auth]
    command = "sh"
    args = ["-c", "cat \"$HOME/.codex/cometapi_key\""]
    ```
  </Tab>

  <Tab title="Windows PowerShell">
    Memorizza la tua chiave API CometAPI nella directory home di Codex su Windows:

    ```powershell theme={null}
    New-Item -ItemType Directory -Force "$HOME\.codex" | Out-Null
    Set-Content -NoNewline -Path "$HOME\.codex\cometapi_key" -Value $env:COMETAPI_KEY
    ```

    Aggiungi questa configurazione a `$HOME\.codex\config.toml`:

    ```toml theme={null}
    model_provider = "cometapi"
    model = "your-model-id"

    [model_providers.cometapi]
    name = "CometAPI"
    base_url = "https://api.cometapi.com/v1"
    wire_api = "responses"

    [model_providers.cometapi.auth]
    command = "powershell.exe"
    args = [
      "-NoProfile",
      "-Command",
      "$p=Join-Path $HOME '.codex/cometapi_key'; (Get-Content -Raw $p).Trim()",
    ]
    ```
  </Tab>
</Tabs>

<Note>
  Codex nativo su Windows usa `$HOME\.codex`, di solito `C:\Users\<user>\.codex`. WSL usa `~/.codex` della distribuzione Linux. Modifica la directory che corrisponde all'ambiente in cui viene eseguito l'agente Codex.
</Note>

## Usare l'autenticazione tramite variabile d'ambiente

Se preferisci mantenere la chiave API CometAPI in una variabile d'ambiente, usa `env_key` invece del blocco `[model_providers.cometapi.auth]`.

Usa questa configurazione del provider solo quando `COMETAPI_KEY` è disponibile nell'ambiente che avvia Codex:

```toml theme={null}
model_provider = "cometapi"
model = "your-model-id"

[model_providers.cometapi]
name = "CometAPI"
base_url = "https://api.cometapi.com/v1"
wire_api = "responses"
env_key = "COMETAPI_KEY"
```

<Warning>
  Non combinare `env_key` con `[model_providers.cometapi.auth]`. Codex supporta un solo metodo di autenticazione per provider personalizzato.
</Warning>

## Esegui lo script di configurazione

Lo script di configurazione è facoltativo. Scrive la stessa configurazione del provider `cometapi` in `~/.codex/config.toml`, memorizza la tua chiave API CometAPI in `~/.codex/cometapi_key`, crea backup prima delle modifiche ai file e verifica la configurazione con `codex exec` quando la CLI di Codex è disponibile.

Per macOS, Linux o WSL, esegui l'installer interattivo:

```bash theme={null}
sh -c "$(curl -fsSL https://raw.githubusercontent.com/cometapi-dev/integrations/main/codex/setup.sh)"
```

Per una configurazione non interattiva, passa esplicitamente la chiave API:

```bash theme={null}
curl -fsSL https://raw.githubusercontent.com/cometapi-dev/integrations/main/codex/setup.sh | sh -s -- --key "$COMETAPI_KEY"
```

Per PowerShell nativo su Windows, esegui l'installer interattivo:

```powershell theme={null}
powershell -c "irm 'https://raw.githubusercontent.com/cometapi-dev/integrations/main/codex/setup.ps1' | iex"
```

Per una configurazione non interattiva su Windows, passa esplicitamente la chiave API:

```powershell theme={null}
powershell -c "& ([scriptblock]::Create((irm 'https://raw.githubusercontent.com/cometapi-dev/integrations/main/codex/setup.ps1'))) -Key $env:COMETAPI_KEY"
```

<Warning>
  Per impostazione predefinita, lo script non sostituisce `~/.codex/auth.json` e non rimuove un accesso ChatGPT. Usa `--force-auth-json` o `-ForceAuthJson` solo se vuoi che lo script gestisca l'accesso con chiave API di Codex tramite `auth.json`.
</Warning>

## Scegli o cambia un model ID

Usa un model ID dalla [pagina Models](/it/overview/models). Nella configurazione manuale, modifica il valore di `model` in `~/.codex/config.toml`.

Per macOS, Linux o WSL, passa `--model` quando esegui lo script di configurazione:

```bash theme={null}
curl -fsSL https://raw.githubusercontent.com/cometapi-dev/integrations/main/codex/setup.sh | sh -s -- --key "$COMETAPI_KEY" --model your-model-id
```

Per PowerShell nativo su Windows, passa `-Model` quando esegui lo script di configurazione:

```powershell theme={null}
powershell -c "& ([scriptblock]::Create((irm 'https://raw.githubusercontent.com/cometapi-dev/integrations/main/codex/setup.ps1'))) -Key $env:COMETAPI_KEY -Model 'your-model-id'"
```

<Note>
  Lo script usa `CODEX_HOME` quando è impostato. In caso contrario scrive nel `~/.codex` dell'ambiente corrente.
</Note>

## Verifica la configurazione

Per verificare la configurazione con la CLI di Codex, esegui questo comando in sola lettura da qualsiasi progetto locale:

```bash theme={null}
codex exec --ephemeral --skip-git-repo-check --sandbox read-only --color never "Reply exactly with: COMETAPI_CODEX_OK"
```

Se la CLI di Codex non è disponibile in `PATH`, apri l'app Codex e invia un breve Prompt da un progetto locale.

## Risoluzione dei problemi

<AccordionGroup>
  <Accordion title="Codex usa ancora il provider OpenAI predefinito">
    Verifica che `model_provider = "cometapi"` sia presente nel file `~/.codex/config.toml` a livello utente.
  </Accordion>

  <Accordion title="La chiave API è cambiata">
    Aggiorna `~/.codex/cometapi_key`, oppure esegui di nuovo lo script di configurazione con il valore `$COMETAPI_KEY` aggiornato.
  </Accordion>

  <Accordion title="Lo script PowerShell non riesce durante i controlli preliminari">
    Usa i passaggi manuali di PowerShell nativo di Windows, quindi esegui il comando di verifica.
  </Accordion>

  <Accordion title="La configurazione della shell tramite pipe non richiede alcuna chiave API">
    Usa `--key "$COMETAPI_KEY"`, imposta `COMETAPI_KEY`, oppure esegui il comando interattivo `sh -c "$(curl ...)"`.
  </Accordion>

  <Accordion title="La connessione va in timeout o usa l'URL di base sbagliato">
    Verifica che `base_url` sia `https://api.cometapi.com/v1` in `~/.codex/config.toml`.
  </Accordion>

  <Accordion title="Il model non è stato trovato">
    Controlla la [pagina Models](/it/overview/models) per i model ID disponibili.
  </Accordion>

  <Accordion title="La configurazione su Windows influisce sull'ambiente sbagliato">
    Modifica `$HOME\.codex` per la modalità nativa di Windows, oppure modifica `~/.codex` all'interno di WSL per la modalità agente WSL.
  </Accordion>

  <Accordion title="L'accesso con ChatGPT è cambiato">
    Non usare `--force-auth-json` o `-ForceAuthJson` a meno che tu non voglia la modalità di accesso con chiave API.
  </Accordion>
</AccordionGroup>

<script type="application/ld+json">
  {`
    {
    "@context": "https://schema.org",
    "@graph": [
      {
        "@type": "HowTo",
        "@id": "https://apidoc.cometapi.com/integrations/codex#howto",
        "name": "Usare Codex con CometAPI",
        "description": "Usa questa guida per configurare Codex con CometAPI modificando le impostazioni del provider nel file config.toml a livello utente.",
        "step": [
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/codex#step-1",
            "position": 1,
            "name": "Rivedere i prerequisiti",
            "text": "Completa il passaggio Rivedere i prerequisiti nella guida Usare Codex con CometAPI."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/codex#step-2",
            "position": 2,
            "name": "Scegliere un percorso di configurazione",
            "text": "Completa il passaggio Scegliere un percorso di configurazione nella guida Usare Codex con CometAPI."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/codex#step-3",
            "position": 3,
            "name": "Configurare Codex manualmente",
            "text": "Completa il passaggio Configurare Codex manualmente nella guida Usare Codex con CometAPI."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/codex#step-4",
            "position": 4,
            "name": "Usare l'autenticazione tramite variabile d'ambiente",
            "text": "Completa il passaggio Usare l'autenticazione tramite variabile d'ambiente nella guida Usare Codex con CometAPI."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/codex#step-5",
            "position": 5,
            "name": "Eseguire lo script di configurazione",
            "text": "Completa il passaggio Eseguire lo script di configurazione nella guida Usare Codex con CometAPI."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/codex#step-6",
            "position": 6,
            "name": "Scegliere o cambiare un model ID",
            "text": "Completa il passaggio Scegliere o cambiare un model ID nella guida Usare Codex con CometAPI."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/codex#step-7",
            "position": 7,
            "name": "Verificare la configurazione",
            "text": "Completa il passaggio Verificare la configurazione nella guida Usare Codex con CometAPI."
          }
        ]
      },
      {
        "@type": "BreadcrumbList",
        "itemListElement": [
          {
            "@type": "ListItem",
            "position": 1,
            "name": "Documentazione CometAPI",
            "item": "https://apidoc.cometapi.com/"
          },
          {
            "@type": "ListItem",
            "position": 2,
            "name": "Integrazioni",
            "item": "https://apidoc.cometapi.com/integrations"
          },
          {
            "@type": "ListItem",
            "position": 3,
            "name": "Usare Codex con CometAPI",
            "item": "https://apidoc.cometapi.com/integrations/codex"
          }
        ]
      }
    ]
    }
    `}
</script>
