Codex
Codex CLI es el agente de terminal de OpenAI. Hoy no puede hablar con Helmcode directamente, y conviene leer por qué antes de pasarse una tarde con el fichero de configuración.
Aviso: no es un problema de tu key. Las versiones recientes de Codex solo hablan la Responses API de OpenAI —
wire_api = "chat"se eliminó, y el binario ya solo aceptaresponsesyresponses_websocket. Helmcode sirve/v1/chat/completions, y su/v1/responsestodavía no emite los eventos de streaming que Codex espera. Comprobado contra codex-cli 0.154.0.
Lo que consigues si pruebas cada uno:
| Lo que pones | Qué pasa |
|---|---|
wire_api = "chat" | Error loading config.toml: `wire_api = "chat"` is no longer supported |
wire_api = "responses" | stream disconnected before completion: stream closed before response.completed |
Lo que sí funciona hoy — delegar en OpenCode
La misma vía que toma la página de Claude Code, y por el mismo motivo: Codex ejecuta comandos en tu terminal, y OpenCode trabaja headless contra Helmcode.
Configura OpenCode una vez y pídeselo a Codex con palabras:
Usa `opencode run --agent plan -m helmcode/glm5.3-flash` para revisar
src/parser.ts y dime qué casos no está cubriendo.
Codex ejecuta el comando, lee la respuesta y sigue. --agent plan deja a OpenCode en solo lectura; sin eso arranca con un agente que puede editar ficheros y ejecutar comandos.
Tu suscripción de Codex paga la sesión; el trabajo del modelo sale de tu key de Helmcode.
La configuración, para cuando funcione
Nada de lo de abajo está mal — simplemente espera a /v1/responses. Cuando ese endpoint haga streaming, esto es todo lo que Codex necesita en ~/.codex/config.toml:
model_provider = "helmcode"
model = "glm5.3-flash"
[model_providers.helmcode]
name = "Helmcode"
base_url = "https://api.helmcode.com/v1"
env_key = "HELMCODE_API_KEY"
wire_api = "responses"
Con tu key en el entorno, nunca en el fichero:
export HELMCODE_API_KEY="sk-your-key-here"
Dos detalles que seguirán importando entonces:
- El identificador del proveedor no puede ser
openai,ollamanilmstudio, que están reservados. Por eso se llamahelmcode. base_urltermina en/v1y nada más. No añadas la ruta del endpoint.
Problemas conocidos
/v1/responsessirve menos modelos que/v1/chat/completions. Incluso cuando el streaming funcione, comprueba que el modelo que quieres está entre ellos.qwen3.6en/v1/responsesrechaza la petición conSystem message must be at the beginning, que es como Codex coloca sus instrucciones.- Todo lo demás de esta sección conecta directamente. Si lo que quieres es un agente de terminal sobre Helmcode hoy, OpenCode y Pi valen los dos.