Invalid OpenAI API Request: Empty Text Content Blocks During Compaction
Resolved 💬 3 comments Opened Apr 24, 2025 by jejanov Closed Nov 29, 2025
Bug Description
getting this persistent error in this sessions for no apparent reason: Error: Error during compaction: Error: API Error: 400 {"type":"error","error":{"type":"invalid_request_error","message":"messages: text content blocks must be
non-empty"}}
Environment Info
- Platform: macos
- Terminal: cursor
- Version: 0.2.79
- Feedback ID: 8af63c0d-e581-4c42-bad3-38af7a820ed9
Errors
[{"error":"Error: EISDIR: illegal operation on a directory, read\n at Module.readSync (node:fs:741:18)\n at Object.readSync (file:///Users/joeljanov/.nvm/versions/node/v22.14.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:485:6055)\n at tB (file:///Users/joeljanov/.nvm/versions/node/v22.14.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:492:260)\n at eB (file:///Users/joeljanov/.nvm/versions/node/v22.14.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:494:321)\n at file:///Users/joeljanov/.nvm/versions/node/v22.14.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:1185:1072\n at process.processTicksAndRejections (node:internal/process/task_queues:105:5)","timestamp":"2025-04-24T13:43:02.173Z"},{"error":"Error: EISDIR: illegal operation on a directory, read\n at Module.readFileSync (node:fs:442:20)\n at Object.readFileSync (file:///Users/joeljanov/.nvm/versions/node/v22.14.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:485:5882)\n at eB (file:///Users/joeljanov/.nvm/versions/node/v22.14.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:494:339)\n at file:///Users/joeljanov/.nvm/versions/node/v22.14.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:1185:1072\n at process.processTicksAndRejections (node:internal/process/task_queues:105:5)","timestamp":"2025-04-24T13:43:02.173Z"},{"error":"ShellError: Shell command failed\n at Object.call (file:///Users/joeljanov/.nvm/versions/node/v22.14.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:1185:876)\n at async M63 (file:///Users/joeljanov/.nvm/versions/node/v22.14.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:1750:21333)\n at async fB1 (file:///Users/joeljanov/.nvm/versions/node/v22.14.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:1750:19812)\n at async $63 (file:///Users/joeljanov/.nvm/versions/node/v22.14.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:1750:19136)\n at async Qi1 (file:///Users/joeljanov/.nvm/versions/node/v22.14.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:1750:19070)\n at async Oa (file:///Users/joeljanov/.nvm/versions/node/v22.14.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:1750:18315)\n at async p6 (file:///Users/joeljanov/.nvm/versions/node/v22.14.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:1871:1550)","timestamp":"2025-04-24T13:44:11.853Z"},{"error":"Error: 400 {\"type\":\"error\",\"error\":{\"type\":\"invalid_request_error\",\"message\":\"messages: text content blocks must be non-empty\"}}\n at b3.generate (file:///Users/joeljanov/.nvm/versions/node/v22.14.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:623:24425)\n at o3.makeStatusError (file:///Users/joeljanov/.nvm/versions/node/v22.14.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:627:7212)\n at o3.makeRequest (file:///Users/joeljanov/.nvm/versions/node/v22.14.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:627:8157)\n at process.processTicksAndRejections (node:internal/process/task_queues:105:5)","timestamp":"2025-04-24T13:45:46.064Z"},{"error":"Error: 400 {\"type\":\"error\",\"error\":{\"type\":\"invalid_request_error\",\"message\":\"messages: text content blocks must be non-empty\"}}\n at b3.generate (file:///Users/joeljanov/.nvm/versions/node/v22.14.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:623:24425)\n at o3.makeStatusError (file:///Users/joeljanov/.nvm/versions/node/v22.14.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:627:7212)\n at o3.makeRequest (file:///Users/joeljanov/.nvm/versions/node/v22.14.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:627:8157)\n at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\n at async UL2.fa.showErrors (file:///Users/joeljanov/.nvm/versions/node/v22.14.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:1824:1918)\n at async fa (file:///Users/joeljanov/.nvm/versions/node/v22.14.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:1821:3617)\n at async UL2 (file:///Users/joeljanov/.nvm/versions/node/v22.14.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:1824:1761)\n at async Li1 (file:///Users/joeljanov/.nvm/versions/node/v22.14.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:1821:1755)\n at async gR2 (file:///Users/joeljanov/.nvm/versions/node/v22.14.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:1822:130)\n at async _63 (file:///Users/joeljanov/.nvm/versions/node/v22.14.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:1750:16353)","timestamp":"2025-04-24T13:45:46.682Z"},{"error":"Error: 400 {\"ty
Note: Error logs were truncated.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗