Codex CLI en Muapi

Configuración

~/.codex/config.toml (macOS/Linux) o %USERPROFILE%\.codex\config.toml (Windows):

model = "gpt-5-6-sol"
model_provider = "muapi"

[model_providers.muapi]
name = "Muapi"
base_url = "https://api.muapi.ai/openai/v1"
env_key = "MUAPI_API_KEY"
wire_api = "responses"

Clave de API

macOS/Linux:

export MUAPI_API_KEY=your_key

Windows PowerShell:

$env:MUAPI_API_KEY = "your_key"
setx MUAPI_API_KEY "your_key"

Detalles clave

  • base_url es la raíz; Codex añade /responses.
  • env_key indica el nombre de la variable que contiene la clave, no la clave en sí.
  • Define model de forma explícita con un id del endpoint de modelos, no con el valor predeterminado integrado de Codex.
  • Los ids de proveedor openai, ollama y lmstudio están reservados; usa muapi.
  • Guarda la configuración del proveedor en el archivo a nivel de usuario, no en archivos del proyecto.

Modelos

curl -s -H "Authorization: Bearer $MUAPI_API_KEY" https://api.muapi.ai/openai/v1/models

Modelos sin censura (abliterated)

El endpoint de modelos también lista los modelos sin censura de Muapi compatibles con herramientas (por ejemplo qwen-3-8-27b-obliterated, mimo-v2-6-flash-abliterated). Define model = "<id>" en config.toml para usar uno; Muapi traduce por ti entre el protocolo de Codex y la API de chat del modelo.

  • Experimental: la calidad varía según el modelo, y los modelos más pequeños pueden saltarse pasos en tareas de varios archivos.
  • No hay caché de prompts, así que cada turno se factura por toda la conversación hasta ese momento.
  • La salida por respuesta está limitada a 16,384 tokens, y las ventanas de contexto son más pequeñas que las de GPT.
  • Codex debe enviar la conversación completa en cada turno (es su comportamiento predeterminado con proveedores personalizados). Las solicitudes que dependen de previous_response_id se rechazan con un error claro.
  • Las herramientas integradas de Codex distintas de las herramientas de función de tipo shell y apply_patch (por ejemplo, la búsqueda web) no están disponibles con estos modelos.

Esfuerzo de razonamiento (opcional)

model_reasoning_effort = "high"

Verificar

codex doctor