[BUG] Read tool crashes on PNGs with large transparent areas (400 "Could not process image")
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?
Summary:
The Read tool fails with a 400 error when attempting to read PNG images containing large transparent areas. This appears to be an issue with the image processing
API, not Claude Code itself.
Impact:
- CRITICAL: After this error occurs, ALL subsequent messages in the conversation fail with the same 400 error, even simple text messages without tool calls
- Entire conversation context is lost, requiring complete restart
- No error recovery mechanism available
Environment:
- Claude Code Version: 2.0.37
- Platform: WSL2 (Linux 6.6.87.1-microsoft-standard-WSL2)
- Model: claude-sonnet-4-5-20250929
Reproduction:
- Create a screenshot with significant transparent areas (tested with Greenshot)
- Attempt to read the PNG file using the Read tool
- Error occurs: API Error: 400 {"type":"error","error":{"type":"invalid_request_error","message":"Could not process image"}}
- All subsequent messages fail, conversation is unrecoverable
Test Results:
- ✅ PNG screenshots without transparency: SUCCESS
- ✅ JPEG images: SUCCESS
- ✅ Windows Snipping Tool PNGs: SUCCESS
- ✅ Screenshot of the failing image (re-rendered): SUCCESS
- ❌ Greenshot PNG with ~50% transparent area: CONSISTENT FAILURE
Failing Image Characteristics:
- Dimensions: 1762 x 1181 pixels
- Size: 64KB
- Format: PNG (8-bit/color RGBA, non-interlaced)
- Content: Browser screenshot with bottom half transparent
- Tool: Greenshot
Expected Behavior:
Either the image should be read successfully, or the error should be recoverable without corrupting the entire conversation state.
Additional Context:
This tool worked perfectly for months on thousands of screenshots before suddenly failing. The issue appears to be triggered by specific PNG encoding/transparency
patterns rather than file size or tool used.
What Should Happen?
<img width="1762" height="1181" alt="Image" src="https://github.com/user-attachments/assets/90a2379f-a957-4c13-9f15-05733203cece" />
Error Messages/Logs
Steps to Reproduce
Ask Claude to read the image file attached to this issue, CrashesClaude.png
Claude Model
Sonnet (default)
Is this a regression?
Yes, this worked in a previous version
Last Working Version
_No response_
Claude Code Version
2.0.37
Platform
Anthropic API
Operating System
Windows
Terminal/Shell
WSL (Windows Subsystem for Linux)
Additional Information
_No response_
This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗