Override OpenAI Base URL sends Responses API payload to /chat/completions but expects Chat Completions output

Hey, thanks for the detailed report. The proxy-level breakdown path vs body vs parser is super helpful.

This is a known bug. When you use Override OpenAI Base URL with models that go through the Responses API path GPT-5 family, o3, o4, gpt-4*, Cursor sends a Responses-shaped body to /chat/completions. We’re tracking it, but I can’t share an ETA for a fix yet.

Canonical thread for the same issue: Cursor Agent sends Responses API format to /chat/completions endpoint. I’ll close this one as a duplicate so the discussion stays in one place. Your note about stream_options: {include_usage: true} a Chat Completions-only field that ends up in a Responses request is a helpful detail, I’ll add it to the existing report.

Workarounds for now are either what you already did proxy with path rewrite plus SSE conversion on the way out, or use a model that doesn’t trigger the Responses path. When the fix ships, we’ll update the canonical thread.