[BUG] API Error: 400 thinking.disabled.display: Extra inputs are not permitted — all Agent tool subagent spawns fail

Open 💬 1 comment Opened Jun 15, 2026 by Kinjalllll

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

Every Agent tool subagent spawn fails immediately with a 400 error and 0 tokens consumed:

API Error: 400 thinking.disabled.display: Extra inputs are not permitted

This happens regardless of which model is specified (opus, sonnet, haiku, default, opus[1m]) and regardless of any settings changes. Subagents are completely broken — no workaround exists.

What Should Happen?

The Agent tool should successfully spawn a subagent and return a result. Previously worked fine; this is a regression introduced sometime around version 2.1.x.

Error Messages/Logs

API Error: 400 thinking.disabled.display: Extra inputs are not permitted
subagent_tokens: 0
tool_uses: 0
duration_ms: ~1500

Steps to Reproduce

  1. Open any Claude Code session (VS Code extension or CLI)
  2. Use the Agent tool to spawn any subagent with any prompt
  3. Error appears immediately — no tokens consumed, no tool uses

Reproduction is 100% consistent. Tested with:

  • model: opus[1m], opus, sonnet, haiku, default — all fail identically
  • effortLevel: low, high, xhigh — all fail
  • showThinkingSummaries: true, false, absent — all fail
  • Full app restart — still fails
  • Removed all non-standard model variants from settings — still fails

Claude Model

Not sure / Multiple models

Is this a regression?

Yes, this worked in a previous version

Last Working Version

Unknown — noticed in 2.1.177

Claude Code Version

2.1.177 (Claude Code)

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

VS Code integrated terminal

Additional Information

Root cause hypothesis: The harness is sending thinking: {type: "disabled", display: ...} in the subagent spawn API request. The API's "disabled" thinking schema only accepts {type: "disabled"} with no extra fields — the extra "display" field is being rejected.

The error fires before the API processes anything (0 tokens, ~1.5s round trip), confirming it's a request schema validation failure, not a model or content issue.

All three settings files confirmed valid JSON. No fable-5 or unknown model variants present. Bug is session-global and not fixable by the user.

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗