v0.3.2
Fixed
-
Codex App: rate limit errors now appear in the conversation instead of crashing silently — when a model hits its usage limit (e.g. OpenCode Go's 5-hour cap), the proxy now injects a readable error message directly into the Codex App conversation:
"5-hour usage limit reached. Resets in Xmin. To continue using this model now, enable usage from your available balance: ...". Previously the session just stalled with no explanation in the UI. -
Codex App: rate limit errors print a clean one-liner in the terminal — instead of flooding the terminal with full RetryError stack traces (one per retry attempt, per request), the proxy now prints a single
[relay-ai] <model>: <message>line per failed request. -
Codex proxy: removed SDK default
console.erroron stream failures — the Vercel AI SDK'sstreamTextcallsconsole.error(error)by default whenever the stream encounters an error. This was the root cause of the full stack trace dumps. The proxy now passesonError: () => {}to suppress this. The error is still handled through the stream pipeline and surfaced to the user. -
Codex App: context overflow no longer crashes long sessions — relay-ai now writes
model_context_windowandmodel_auto_compact_token_limit(70% of the model's actual limit) into~/.codex/config.tomlat session start. Codex uses these values to trigger auto-compaction before the conversation reaches the model's hard limit, preventing the compaction-fails-at-limit crash that previously broke sessions and made them unrecoverable. Applies to single-provider, favorites, and Vertex AI sessions alike. -
Codex App: proxy-level message truncation as a safety net — if a conversation history arrives that already exceeds 85% of the selected model's context window (e.g. a long native GPT-5.5 session loaded into a 1 M-token model), relay-ai silently drops the oldest messages before forwarding to the upstream model. The session continues in a degraded but functional state instead of crashing with an unrecoverable error.
-
Codex App: Ctrl+C now shows a confirmation menu instead of immediately closing — pressing Ctrl+C now presents an arrow-key selection menu: "Close Codex Desktop and restore your Codex config?" (Yes / No). Pressing Ctrl+C a second time during the prompt, or pressing Enter on Yes, closes the app and restores config. Choosing No keeps the session running. SIGTERM and SIGHUP still close immediately without a prompt.
-
Codex App:
--tracerequest observability —--tracemode now logsprevious_response_id,input_items, andbody_bytesfor every incoming proxy request, making it possible to verify Codex's conversation-history protocol against a specific provider setup.