[BUG] /resume command fails with "Invalid `signature` in `thinking` block" error when previous session used Extended Thinking

Status Fixed / completed
Reported on v2.1.168
Maintainer reply ✓ Yes — rboyce-ant
Activity 3 comments · opened Jun 8, 2026 · closed Jun 9, 2026
💡 Likely answer: A maintainer (rboyce-ant, contributor) responded on this thread — see the highlighted reply below.

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?

When using /resume to continue a previous session that contained Extended Thinking
(thinking blocks), the API immediately returns a 400 error:

"Invalid signature in thinking block"

This makes it impossible to resume any session where Claude used Extended Thinking.
The session history stored in the .jsonl file contains thinking blocks with
signatures that are no longer valid in a new session context, and Claude Code passes
them back to the API as-is, causing the request to be rejected.

What Should Happen?

/resume should be able to restore any previous session regardless of whether it
contained Extended Thinking blocks. Either the thinking blocks should be stripped
from the history before being sent to the API, or their signatures should be
refreshed so they remain valid across sessions.

Error Messages/Logs

● API Error: 400 ***.***.content.0:
  Invalid `signature` in `thinking` block        
  (request id: 2026060808012383766628282
  68d9d6nvf0rdDT)

Steps to Reproduce

  1. Start a new Claude Code session in any project directory.
  2. Have a conversation where Claude uses Extended Thinking

(thinking blocks will appear in the session's .jsonl file).

  1. Exit the session.
  2. Run /resume to continue the previous session.
  3. Send any message.

Result: The following error appears immediately:

API Error: 400 Invalid signature in thinking block
(request id: xxxxxxxx)

Note: The issue can be confirmed by checking the session .jsonl file
in ~/.claude/projects/<project>/. If it contains entries with "type":"thinking",
the session will fail to resume.

Claude Model

Sonnet (default)

Is this a regression?

I don't know

Last Working Version

_No response_

Claude Code Version

2.1.168

Platform

Other

Operating System

Windows

Terminal/Shell

PyCharm terminal

Additional Information

_No response_

View original on GitHub ↗

3 Comments

github-actions[bot] · 4 months ago

Found 3 possible duplicate issues:

  1. https://github.com/anthropics/claude-code/issues/63147
  2. https://github.com/anthropics/claude-code/issues/63475
  3. https://github.com/anthropics/claude-code/issues/63335

This issue will be automatically closed as a duplicate in 3 days.

  • If your issue is a duplicate, please close it and 👍 the existing issue instead
  • To prevent auto-closure, add a comment or 👎 this comment

🤖 Generated with Claude Code

rboyce-ant contributor · 4 months ago

Thanks for the report; this should be fixed if you upgrade to Claude Code 2.1.169 or newer!

github-actions[bot] · 2 months ago

This issue has been automatically locked since it was closed and has not had any activity for 7 days. If you're experiencing a similar issue, please file a new issue and reference this one if it's relevant.