Skip to content

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

Quick fix

Configure DeepSeek as native mode instead of the default; if it still fails, set model_reasoning_effort to none in Codex.

Error output
CC Switch local proxy failed while handling Codex endpoint /responses. Provider: DeepSeek; model: deepseek-v4-flash; upstream_status: HTTP 400; cause: The `reasoning_content` in the thinking mode must be passed back to the API.

In thinking mode, Codex carries reasoning items in subsequent requests. When CC Switch's local proxy converts them to the DeepSeek chat endpoint, the upstream requires `reasoning_content` to be passed back unchanged. If this requirement is not met, it returns HTTP 400, after which Codex may hit stream broken.

Users have confirmed that switching DeepSeek's advanced option from the default to native mode fixes this. Other reports reproduced on CC Switch 3.16.5 show that upgrading alone may not help; after disabling Codex's reasoning effort, multi-turn tool calls no longer trigger this error.

  1. In the advanced options of the DeepSeek configuration in CC Switch, if the provider offers a native mode, select native mode instead of the default mode.

  2. If multi-turn tool calls still fail after enabling native mode, disable Codex's reasoning effort.

    ~/.codex/config.toml
    model_reasoning_effort = "none"
ToolCodex
VersionUnknown
PlatformsWindows
Is there a fix?
First select native mode in the advanced options of the DeepSeek configuration; if it still fails, set `model_reasoning_effort = "none"` in `~/.codex/config.toml`.
Where exactly do I change this? I can't find it.
The confirmed location is the advanced options of that provider's configuration in CC Switch; the issue does not provide a more specific UI path.

This is an unofficial community wiki with no affiliation to the cc-switch authors or the project itself. Its content is compiled from the project's public GitHub issues. This site distributes no software.