Skip to content

No tool output found for function call — Codex

Quick fix

Wait for a CC Switch fix release. Until then, avoid parallel image and other tool calls in one turn to prevent media messages interrupting tool results.

Error output
cause: No tool output found for function call call_3IQasYyv9SLyKCyMsmDNgPS5.

In CC Switch 3.20.3 on Windows, when Codex calls `view_image` and other tools in parallel in the same turn, proxy media-lift may insert a synthetic `user` media message into an unfinished batch of tool results. Strict Chat-to-Responses conversion or upstream services then treat the inserted tool output as unpaired and return HTTP 400.

Any non-tool message in the batch can also trigger this issue, such as `developer` additionalContext injected by a PostToolUse hook; it is not limited to `<image_resize_notice>`. PR #7439 proposes keeping same-batch tool messages contiguous, moving inserted messages after the tool block, filling missing output placeholders, and downgrading orphaned tool messages. However, the PR has not been merged, and no release includes the fix.

  1. Before a fixed release is available, avoid mixing image-result tools such as `view_image` with other tools in parallel calls within the same Codex turn.

  2. If you use PostToolUse hooks or a mechanism that injects `developer` additionalContext, do not insert any non-tool message before every tool_call for the current assistant has a corresponding tool output.

  3. Wait for a CC Switch release that includes PR #7439. The fix normalizes Chat tool-message order so same-batch tool messages remain contiguous.

  4. Do not treat manual edits to `~/.codex/sessions/.../rollout-*.jsonl` as a general recovery method. With paginated history enabled, this causes `invalid paginated history lineage` and prevents the thread from opening.

ToolCodex
Version3.20.3(受影响;尚无包含修复的发布版本)
PlatformsWindows
Besides `<image_resize_notice>`, what else can trigger this early flush?
Any non-tool message within the batch can trigger it, including `developer` additionalContext injected by a local PostToolUse hook.
Can deleting the stuck call triplet from the local rollout restore it?
This is not recommended when paginated history is enabled. `thread_history_1.sqlite` relies on rollout byte-offset indexes; manual edits cause `invalid paginated history lineage`, preventing the thread from opening.

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.