Skip to content

[BUG] DeepSeek V4 Pro via OpenAI proxy: error "reasoning_content must be passed back" (400) #12195

@Anthony-Perriolat

Description

@Anthony-Perriolat

Problem (one or two sentences)

Describe the bug
When using DeepSeek V4 Pro (deepseek-v4-pro) through the OpenAI-compatible proxy provider in RooCode, the API returns a 400 error after the first assistant response:

The reasoning_content in the thinking mode must be passed back to the API.

The error occurs even if I haven’t explicitly enabled any “thinking” mode. It seems the proxy mode does not automatically preserve the reasoning_content field required by DeepSeek’s API for models with built‑in reasoning.

Expected behavior
The proxy mode should either automatically preserve and resend reasoning_content (as the native DeepSeek provider now does in v3.36.10+), or provide a way to disable the reasoning/thinking feature entirely via configuration.

Environment

Extension version: 3.53.0

VS Code / Cursor version: (please fill)

OS: (please fill)

Model: deepseek-v4-pro

Provider: openai (proxy)

Questions / help needed

Is there a way to properly disable the thinking/reasoning mode for deepseek-v4-pro when using the OpenAI proxy?

Should the automatic reasoning_content handling be extended to the OpenAI proxy mode as well?

Thank you for your work on RooCode!

Context (who is affected and when)

I am aware of the fix introduced in PR #10141 (v3.36.10) for the native DeepSeek provider, but the issue still occurs when using the OpenAI proxy mode.

Similar issues: #10171, #9744, #4506.

I tried adding "thinking": {"type": "disabled"} in the request body via extra_body in the provider settings, but RooCode does not seem to forward this parameter in proxy mode.

Reproduction steps

To Reproduce

RooCode extension version: 3.53.0

Provider: openai (proxy)

Model: deepseek-v4-pro

API endpoint: https://api.deepseek.com/v1 (standard OpenAI compatible)

Start a conversation – first assistant response works.

On the next user message, the request fails with the 400 error.

Expected result

the request fails with the 400 error.

Actual result

400

Variations tried (optional)

No response

App Version

3.53.0

API Provider (optional)

DeepSeek

Model Used (optional)

No response

Roo Code Task Links (optional)

No response

Relevant logs or errors (optional)

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions