thinking-troubleshooting changedbuild-with-claude/thinking-troubleshooting
Nearest release: v2.1.315, published under an hour before this site recorded the change. Shown because the two are within 24 hours of each other. Nothing here says the release caused the edit.
Recorded here
Lines+23added
Lines−23removed
From line
18
where the diff opens
First seen
14 Aug 2026
this site's first read of the page
Recorded edits16to this page, all time
The whole hunk
from line 18, old and new numbered
/
from line 18
1818
1919The table lists what each model supports, what it defaults to, and which `thinking.type` values it rejects with a 400 error; any value not listed as rejected is accepted. Only Claude Sonnet 5.5 accepts `"between_tools"`, and it takes that value in place of `"disabled"`.
2020
21| Model | Thinking types | Default | Rejected with 400 |
22| --------------------- | -------------------------------- | --------- | -------------------------- |
23| Claude Fable 5.1 | Adaptive only | Always on | `"enabled"`, `"disabled"` |
24| Claude Mythos 5.1 | Adaptive only | Always on | `"enabled"`, `"disabled"` |
25| Claude Fable 5 | Adaptive only | Always on | `"enabled"`, `"disabled"` |
26| Claude Mythos 5 | Adaptive only | Always on | `"enabled"`, `"disabled"` |
27| Claude Mythos Preview | Adaptive, extended | Always on | `"disabled"` |
28| Claude Opus 5.5 | Adaptive only | Always on | `"enabled"`, `"disabled"` |
29| Claude Opus 5 | Adaptive only | On | `"enabled"`, `"disabled"`2 |
30| Claude Opus 4.8 | Adaptive only | Off | `"enabled"` |
31| Claude Opus 4.7 | Adaptive only | Off | `"enabled"` |
32| Claude Sonnet 5.5 | Adaptive, `between_tools`3 | On | `"enabled"`, `"disabled"` |
33| Claude Sonnet 5 | Adaptive only | On | `"enabled"` |
34| Claude Haiku 5.5 | Adaptive only | On | `"enabled"`, `"disabled"`2 |
35| Claude Opus 4.6 | Adaptive, extended (deprecated)1 | Off | None |
36| Claude Sonnet 4.6 | Adaptive, extended (deprecated)1 | Off | None |
37| Claude Opus 4.5 | Extended only | Off | `"adaptive"` |
38| Claude Haiku 4.5 | Extended only | Off | `"adaptive"` |
39| Claude Sonnet 4.5 | Extended only | Off | `"adaptive"` |
21| Model | Thinking types | Default | Rejected with 400 |
22| --------------------- | ------------------------------------------- | --------- | ------------------------------------- |
23| Claude Fable 5.1 | Adaptive only | Always on | `"enabled"`, `"disabled"` |
24| Claude Mythos 5.1 | Adaptive only | Always on | `"enabled"`, `"disabled"` |
25| Claude Fable 5 | Adaptive only | Always on | `"enabled"`, `"disabled"` |
26| Claude Mythos 5 | Adaptive only | Always on | `"enabled"`, `"disabled"` |
27| Claude Mythos Preview | Adaptive, extended | Always on | `"disabled"` |
28| Claude Opus 5.5 | Adaptive only | Always on | `"enabled"`, `"disabled"` |
29| Claude Opus 5 | Adaptive only | On | `"enabled"`, `"disabled"`<sup>2</sup> |
30| Claude Opus 4.8 | Adaptive only | Off | `"enabled"` |
31| Claude Opus 4.7 | Adaptive only | Off | `"enabled"` |
32| Claude Sonnet 5.5 | Adaptive, `between_tools`<sup>3</sup> | On | `"enabled"`, `"disabled"` |
33| Claude Sonnet 5 | Adaptive only | On | `"enabled"` |
34| Claude Haiku 5.5 | Adaptive only | On | `"enabled"`, `"disabled"`<sup>2</sup> |
35| Claude Opus 4.6 | Adaptive, extended (deprecated)<sup>1</sup> | Off | None |
36| Claude Sonnet 4.6 | Adaptive, extended (deprecated)<sup>1</sup> | Off | None |
37| Claude Opus 4.5 | Extended only | Off | `"adaptive"` |
38| Claude Haiku 4.5 | Extended only | Off | `"adaptive"` |
39| Claude Sonnet 4.5 | Extended only | Off | `"adaptive"` |
4040
41*1 `enabled` and `budget_tokens` still work on these models but are deprecated; use adaptive thinking instead.*\
42*2 Claude Opus 5 and Claude Haiku 5.5 accept `"disabled"` at [effort](https://platform.claude.com/docs/en/build-with-claude/effort) `high` or below; combining it with effort `xhigh` or `max` returns a 400 error. On Claude Opus 5, this restriction is enforced on each request. On Claude Haiku 5.5, a per-message effort that differs from the level in effect also returns a 400 error.*\
43*3 Claude Sonnet 5.5 accepts `"between_tools"` at effort `high` or below. Combining it with effort `xhigh` or `max` returns a 400 error, and so does a per-message effort that differs from the level in effect.*
41*<sup>1</sup> `enabled` and `budget_tokens` still work on these models but are deprecated; use adaptive thinking instead.*\
42*<sup>2</sup> Claude Opus 5 and Claude Haiku 5.5 accept `"disabled"` at [effort](https://platform.claude.com/docs/en/build-with-claude/effort) `high` or below; combining it with effort `xhigh` or `max` returns a 400 error. On Claude Opus 5, this restriction is enforced on each request. On Claude Haiku 5.5, a per-message effort that differs from the level in effect also returns a 400 error.*\
43*<sup>3</sup> Claude Sonnet 5.5 accepts `"between_tools"` at effort `high` or below. Combining it with effort `xhigh` or `max` returns a 400 error, and so does a per-message effort that differs from the level in effect.*
4444
4545Models marked `Always on` cannot turn thinking off. Models marked `On` default to thinking. Claude Opus 5, Claude Sonnet 5, and Claude Haiku 5.5 accept `thinking: {type: "disabled"}`. On Claude Sonnet 5.5, send `thinking: {type: "between_tools"}` to turn off up-front thinking.
4646
No line in this hunk matches that.