> ## 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.

# Usar Codex con CometAPI

> Usa esta guía para configurar Codex con CometAPI como proveedor de modelos editando la configuración del proveedor en el archivo config.toml a nivel de usuario.

Usa esta guía para ejecutar [Codex](https://developers.openai.com/codex/quickstart) con CometAPI como proveedor de modelos.

Referencias oficiales:

* [Inicio rápido de Codex](https://developers.openai.com/codex/quickstart)
* [Conceptos básicos de la configuración de Codex](https://developers.openai.com/codex/config-basic)
* [Proveedores de modelos personalizados de Codex](https://developers.openai.com/codex/config-advanced#custom-model-providers)
* [Autenticación de Codex](https://developers.openai.com/codex/auth)
* [Codex en Windows](https://developers.openai.com/codex/windows)

## Requisitos previos

| Requisito                | Detalles                                                                                                                  |
| ------------------------ | ------------------------------------------------------------------------------------------------------------------------- |
| SO                       | macOS, Linux, PowerShell nativo de Windows o Windows con WSL                                                              |
| Git                      | Se recomienda 2.23+                                                                                                       |
| Codex                    | Instala la aplicación Codex o Codex CLI desde el [inicio rápido de Codex](https://developers.openai.com/codex/quickstart) |
| Clave de API de CometAPI | Obtén una desde el [panel de CometAPI](https://www.cometapi.com/console/token)                                            |
| Model ID                 | Usa un model ID de la [página de modelos](/es/overview/models)                                                            |

## Elige una ruta de configuración

Ofrecemos dos opciones para ayudarte a configurar Codex rápidamente.

<CardGroup cols={2}>
  <Card title="Opción 1: Configurar Codex manualmente (recomendado)" icon="bolt" href="#configure-codex-manually">
    Edita directamente el archivo `~/.codex/config.toml` a nivel de usuario. Esta es la ruta más fiable, especialmente para usuarios de Windows y WSL.
  </Card>

  <Card title="Opción 2: Configurar mediante script" icon="puzzle-piece" href="#run-the-setup-script">
    Ejecuta el script de configuración como atajo. Escribe la misma configuración del proveedor y almacena la clave de API de CometAPI para Codex.
  </Card>
</CardGroup>

## Configurar Codex manualmente

Codex lee los valores predeterminados personales del proveedor desde el archivo `~/.codex/config.toml` a nivel de usuario. Configura el proveedor CometAPI allí, no en un archivo `.codex/config.toml` del proyecto. Codex ignora la configuración de provider y provider-auth en los archivos de configuración del proyecto.

La configuración recomendada usa un proveedor con nombre `cometapi` y autenticación respaldada por comandos. Esto mantiene CometAPI separado del proveedor OpenAI integrado, no requiere herencia de variables de entorno del shell y no reemplaza `~/.codex/auth.json`.

<Tabs>
  <Tab title="macOS / Linux / WSL">
    Guarda tu clave de API de CometAPI en un archivo de clave local:

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

    Agrega esta configuración 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">
    Guarda tu clave de API de CometAPI en el directorio de inicio de Codex en 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
    ```

    Agrega esta configuración 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 de Windows usa `$HOME\.codex`, normalmente `C:\Users\<user>\.codex`. WSL usa `~/.codex` de la distribución Linux. Edita el directorio que coincida con el entorno donde se ejecuta el agente de Codex.
</Note>

## Usar autenticación con variable de entorno

Si prefieres mantener la clave de API de CometAPI en una variable de entorno, usa `env_key` en lugar del bloque `[model_providers.cometapi.auth]`.

Usa esta configuración del proveedor solo cuando `COMETAPI_KEY` esté disponible en el entorno que inicia 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>
  No combines `env_key` con `[model_providers.cometapi.auth]`. Codex admite un método de autenticación por proveedor personalizado.
</Warning>

## Ejecuta el script de configuración

El script de configuración es opcional. Escribe la misma configuración del proveedor `cometapi` en `~/.codex/config.toml`, guarda tu clave API de CometAPI en `~/.codex/cometapi_key`, crea copias de seguridad antes de modificar archivos y verifica la configuración con `codex exec` cuando la CLI de Codex está disponible.

Para macOS, Linux o WSL, ejecuta el instalador interactivo:

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

Para una configuración no interactiva, pasa la clave API explícitamente:

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

Para PowerShell nativo de Windows, ejecuta el instalador interactivo:

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

Para una configuración no interactiva en Windows, pasa la clave API explícitamente:

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

<Warning>
  De forma predeterminada, el script no reemplaza `~/.codex/auth.json` y no elimina un inicio de sesión de ChatGPT. Usa `--force-auth-json` o `-ForceAuthJson` solo si quieres que el script gestione el inicio de sesión con clave API de Codex mediante `auth.json`.
</Warning>

## Elige o cambia un model ID

Usa un model ID de la [página de modelos](/es/overview/models). En la configuración manual, cambia el valor de `model` en `~/.codex/config.toml`.

Para macOS, Linux o WSL, pasa `--model` cuando ejecutes el script de configuración:

```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
```

Para PowerShell nativo de Windows, pasa `-Model` cuando ejecutes el script de configuración:

```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>
  El script usa `CODEX_HOME` cuando está definido. De lo contrario, escribe en el `~/.codex` del entorno actual.
</Note>

## Verifica la configuración

Para verificar la configuración con la CLI de Codex, ejecuta este comando de solo lectura desde cualquier proyecto local:

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

Si la CLI de Codex no está disponible en `PATH`, abre la app de Codex y envía un prompt breve desde un proyecto local.

## Solución de problemas

<AccordionGroup>
  <Accordion title="Codex sigue usando el proveedor predeterminado de OpenAI">
    Confirma que `model_provider = "cometapi"` esté en el archivo `~/.codex/config.toml` a nivel de usuario.
  </Accordion>

  <Accordion title="La clave de API cambió">
    Actualiza `~/.codex/cometapi_key`, o vuelve a ejecutar el script de configuración con el valor actualizado de `$COMETAPI_KEY`.
  </Accordion>

  <Accordion title="El script de PowerShell falla durante las comprobaciones previas">
    Usa los pasos manuales de PowerShell nativo de Windows y luego ejecuta el comando de verificación.
  </Accordion>

  <Accordion title="La configuración de shell con tubería no solicita ninguna clave de API">
    Usa `--key "$COMETAPI_KEY"`, configura `COMETAPI_KEY`, o ejecuta el comando interactivo `sh -c "$(curl ...)"`.
  </Accordion>

  <Accordion title="La conexión agota el tiempo de espera o usa la URL base incorrecta">
    Confirma que `base_url` sea `https://api.cometapi.com/v1` en `~/.codex/config.toml`.
  </Accordion>

  <Accordion title="No se encuentra el modelo">
    Consulta la [página de modelos](/es/overview/models) para ver los model IDs disponibles.
  </Accordion>

  <Accordion title="La configuración de Windows afecta al entorno incorrecto">
    Edita `$HOME\.codex` para el modo nativo de Windows, o edita `~/.codex` dentro de WSL para el modo de agente WSL.
  </Accordion>

  <Accordion title="El inicio de sesión de ChatGPT cambió">
    No uses `--force-auth-json` ni `-ForceAuthJson` a menos que quieras el modo de inicio de sesión con clave de API.
  </Accordion>
</AccordionGroup>

<script type="application/ld+json">
  {`
    {
    "@context": "https://schema.org",
    "@graph": [
      {
        "@type": "HowTo",
        "@id": "https://apidoc.cometapi.com/integrations/codex#howto",
        "name": "Usar Codex con CometAPI",
        "description": "Usa esta guía para configurar Codex con CometAPI editando los ajustes del proveedor en el config.toml a nivel de usuario.",
        "step": [
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/codex#step-1",
            "position": 1,
            "name": "Revisar los requisitos previos",
            "text": "Completa el paso Revisar los requisitos previos en la guía Usar Codex con CometAPI."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/codex#step-2",
            "position": 2,
            "name": "Elegir una ruta de configuración",
            "text": "Completa el paso Elegir una ruta de configuración en la guía Usar Codex con CometAPI."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/codex#step-3",
            "position": 3,
            "name": "Configurar Codex manualmente",
            "text": "Completa el paso Configurar Codex manualmente en la guía Usar Codex con CometAPI."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/codex#step-4",
            "position": 4,
            "name": "Usar autenticación con variable de entorno",
            "text": "Completa el paso Usar autenticación con variable de entorno en la guía Usar Codex con CometAPI."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/codex#step-5",
            "position": 5,
            "name": "Ejecutar el script de configuración",
            "text": "Completa el paso Ejecutar el script de configuración en la guía Usar Codex con CometAPI."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/codex#step-6",
            "position": 6,
            "name": "Elegir o cambiar un model ID",
            "text": "Completa el paso Elegir o cambiar un model ID en la guía Usar Codex con CometAPI."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/codex#step-7",
            "position": 7,
            "name": "Verificar la configuración",
            "text": "Completa el paso Verificar la configuración en la guía Usar Codex con CometAPI."
          }
        ]
      },
      {
        "@type": "BreadcrumbList",
        "itemListElement": [
          {
            "@type": "ListItem",
            "position": 1,
            "name": "Documentación de CometAPI",
            "item": "https://apidoc.cometapi.com/"
          },
          {
            "@type": "ListItem",
            "position": 2,
            "name": "Integraciones",
            "item": "https://apidoc.cometapi.com/integrations"
          },
          {
            "@type": "ListItem",
            "position": 3,
            "name": "Usar Codex con CometAPI",
            "item": "https://apidoc.cometapi.com/integrations/codex"
          }
        ]
      }
    ]
    }
    `}
</script>
