Multiple concurrent CLI instances corrupt thinking blocks even from different directories

Resolved 💬 5 comments Opened Jan 17, 2026 by AiMagic5000 Closed Mar 7, 2026

Bug Description

Running multiple Claude Code CLI instances simultaneously causes state corruption between instances, even when running from completely different directories. Thinking blocks from one instance "bleed" into another instance's conversation.

Error

API Error: 400
{"type":"error","error":{"type":"invalid_request_error","message":"messages.3.content.5: `thinking` or `redacted_thinking` blocks in the latest assistant message cannot be modified."}}

Steps to Reproduce

  1. Open Terminal 1, run claude in /path/to/project-a
  2. Open Terminal 2, run claude in /path/to/project-b (completely different directory)
  3. Have conversations in both instances
  4. Eventually one or both instances fail with the 400 error

Key Details

  • Different directories don't help - corruption still occurs
  • Fresh sessions don't help - corruption still occurs
  • Happens constantly - cannot reliably multitask with multiple instances
  • Makes CLI unusable for parallel work

Environment

  • Claude Code: 2.1.12
  • Model: claude-opus-4-5-20251101 (Opus 4.5 with extended thinking)
  • OS: WSL2 (Ubuntu) on Windows
  • Shell: bash

Expected Behavior

Each CLI instance should have completely isolated state. Running multiple instances should work without interference.

Actual Behavior

State bleeds between instances at the API/session level, corrupting thinking blocks and causing 400 errors.

Workarounds Attempted (None Worked)

  • Running from different directories
  • Using --session-id $(uuidgen) for fresh sessions
  • Using --permission-mode bypassPermissions

View original on GitHub ↗

This issue has 5 comments on GitHub. Read the full discussion on GitHub ↗