Saltar al contenido

Codex

Codex CLI se conecta a Inferray mediante la Responses API. Esto importa más aquí que con los otros agentes: desde la v0.122, Codex eliminó wire_api = "chat", así que un proveedor que solo ofrezca Chat Completions no funcionará con él en absoluto. Inferray ofrece /v1/responses, así que Codex funciona sin una capa de traducción de por medio.

Agrega el proveedor

Codex se configura desde ~/.codex/config.toml. Agrega un bloque de proveedor y haz que la configuración de nivel superior apunte a él:

model = "gpt-5.5"
model_provider = "inferray"

[model_providers.inferray]
name = "Inferray"
base_url = "https://api.inferray.com/v1"
env_key = "INFERRAY_API_KEY"
wire_api = "responses"

Luego exporta la clave que indica env_key:

export INFERRAY_API_KEY="inferray_..."

env_key contiene el nombre de la variable de entorno, no la clave en sí, así que puedes hacer commit del archivo de configuración sin riesgo.

Los campos importantes

  • wire_api = "responses" — obligatorio. También es el valor por defecto si se omite, pero escríbelo de todos modos: es la línea que explica por qué el id del proveedor tiene que apuntar a algo que ofrezca /v1/responses.
  • base_url — incluye la /v1. Codex le agrega /responses al final.
  • model_provider — debe coincidir con el id en [model_providers.<id>]. Puedes elegir el id que quieras, pero no puede reutilizar un nombre integrado reservado como openai, ollama o lmstudio.
  • model — cualquier id del catálogo. Los ids de Claude y Gemini también funcionan aquí, ya que todos los modelos responden en el endpoint Responses.

Cambia de modelo en cada ejecución

codex --model claude-opus-4-8

O define otro modelo por defecto en config.toml. El selector /model muestra los modelos que Codex conoce; escribir directamente el id de Inferray es la opción confiable.

Verifica que funciona

Primero envía una solicitud directamente al endpoint, para que un error apunte a la configuración y no a Codex:

curl https://api.inferray.com/v1/responses \
  -H "Authorization: Bearer $INFERRAY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "gpt-5.5", "input": "ship it"}'

Un cuerpo JSON con un array output significa que tanto la URL como la clave funcionan. Luego ejecuta codex y envía un prompt.

Respuestas almacenadas

Codex define store por su cuenta según cómo encadena los turnos, e Inferray reenvía el flag tal como se envía. Inferray solo expone POST /v1/responses, así que las rutas para recuperar una respuesta almacenada no están disponibles a través de él — si Codex está configurado de forma que depende de recuperar respuestas almacenadas por id, mantén store desactivado.