[BUG] Claude Code fails to run on Sonnet 3.5 due to thinking issue
Environment
- Platform (select one):
- [X] Anthropic API
- [ ] AWS Bedrock
- [ ] Google Vertex AI
- [ ] Other: <!-- specify -->
- Claude CLI version: 1.0.21 (Claude Code)
- Operating System: macOS 15.1
- Terminal: Terminal App
Bug Description
Im running a prompt with claude code with sonnet 3.5 and get the following error:
API Error: 400 {"type":"error","error":{"type":"invalid_request_error","message":"'claude-3-5-sonnet-20241022' does not support thinking."}}
I know that including the word 'think' will automatically force claude to append the thinking block..
Notice that my prompt below does not include the word 'think' whatsoever.
A few days ago my prompt worked fine, which raises my suspicioun that perhaps a bug was introduced in the api layer ?
Steps to Reproduce
- Run claude code with following prompt using the command:
Command - claude --model claude-3-5-sonnet-20241022
Then paste the following prompt:
You are a security auditing specialist tasked with evaluating how a code repository meets a set of defined security requirements.
Each requirement is provided in the following format:
{
"RequirementId": "<string - unique requirement identifier>",
"CategoryName": "<string - the name of the category of the requirement>",
"Content": "<string - a short description of the requirement>",
"ControlName": "<string - the name of the security control the requirement is associated with>",
"SecurityFrameworkName": "<string - the name of the security framework the requirement is associated with>",
}
The security requirements are:
[
{
"RequirementId": "00e5808a-9afb-44aa-a27b-44f4c66d3ce0",
"CategoryName": "2.9 Cryptographic Verifier",
"Content": "Verify that cryptographic keys used in verification are stored securely and protected against disclosure, such as using a Trusted Platform Module (TPM) or Hardware Security Module (HSM), or an OS service that can use this secure storage."
"ControlName": "",
"SecurityFrameworkName": "OWASP ASVS"
}
]
Your Task
For each requirement, do the following:
1. Search the repository for files which implement or should implement the requirement - Be thorough in your search, don't leave loose ends.
2. Analyze those files and return a detailed report with the fields specified below (Output Instructions).
Output Instructions
* Return ONLY the JSON array as your response.
* Do NOT include any explanations, markdown, headings, or introductory text.
* Include every requirement provided in the input — no omissions.
Notes:
* The useCases field below is meant to be an array of objects, such that each object tells a story about how the requirement is implemented in the repository.
* Each use case could incorporate a single file or multiple files according to how the code is structured - and reflects a coherent flow of execution.
* If you do not find any use case of implementation for the requirement, return an empty useCases array.
Ensure the final response is valid JSON array and follows this schema exactly:
{
"results":
[
{
"requirementId": <string> - the unique requirement id from the input,
"coverageSummary": <string> - a general summary of how the requirement is implemented (or missing) in the repository,
"generalImplementationStatus": "Implemented" | "RequirementCodeImplementationStatus.PartiallyImplemented" | "Missing",
"score": <int> - a score between 0 and 100 regarding the requirement implementation. If there is no implemented use case - return 0. If all use cases are implemented - return 100. For partial implementations, return a score between 0 and 100,
"confidence": <int> - a score between 0 and 10 regarding the confidence you have in your own analysis accuracy,
"useCases": [
{
"filePaths": [], // array of relevant file paths (strings)
"implementationStatus": "Implemented" | "PartiallyImplemented" | "Missing",
"reasoning": <string> - reasoning for the status regarding how the files implement the requirement.
}
// additional evidences if needed.
]
}
// next requirement...
]
}
Expected Behavior
The prompt should run and complete successfully (as it did yesterday)
Actual Behavior
Starting today, it returned the following error:
API Error: 400 {"type":"error","error":{"type":"invalid_request_error","message":"'claude-3-5-sonnet-20241022' does not support thinking."}}
I'd appreciate any help here !
Thx
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗