[BUG] Running-task activity header leaks from the working session into other idle sessions of the same project

Open 💬 2 comments Opened Jul 1, 2026 by runnithan

What's Wrong?

When several Claude Code CLI sessions of the same project are open at once (separate terminals), the live running-task activity header from the one session that is actually working leaks into the other sessions, which are idle or running something unrelated. The leaked header is not a stale snapshot: it carries the animated spinner, the task title, and a live-updating elapsed timer and token counter, plus the └ Next: … line. So an idle session visibly shows another session's work ticking away in real time.

This looks like the same underlying cause as #59647 (the PR status badge renders in every session of a project instead of only the one that created the PR): a piece of per-session UI state is being stored/read project-wide rather than scoped to the session it belongs to. That issue is about the PR badge; this one is about the running-task activity header.

What Should Happen?

The running-task activity header (spinner, timer, token count, and its Next: line) should be scoped to the session that is executing the task. Other sessions of the same project should show their own state (idle, or their own task) and never another session's header.

Impact

You cannot trust the activity indicator to tell you which session is doing what. An idle session looks busy, and the working session's progress appears in the wrong place, which makes juggling parallel sessions (a core reason to run several) misleading rather than helpful.

Steps to Reproduce

  1. Open two Claude Code CLI sessions on the same project, in two terminals.
  2. In session A, start a long-running task so its activity header animates (timer and token count climbing).
  3. Switch to session B, which is idle or running something unrelated.
  4. Observe: session B renders session A's ⊹ <task-title>… (elapsed · ↓ tokens · thinking …) header and its └ Next: … line, with the timer and token count still updating live.

Evidence (two sightings, minutes apart, all same project)

  • A session named job-search-refactor displayed a header for a task it was not running:

⊹ Reproducing the bug in Docker… (3m 27s · ↓ 10.4k tokens · thinking some more with xhigh effort) / └ Next: Fix dangling \\ lockstep across all 5 templates. That work belonged to a different session (a CV/PDF task), not to job-search-refactor.

  • Minutes later the same header leaked into a third, idle session while it was mid-reply:

* Reproducing the bug in Docker… (21s · ↓ 538 tokens) / └ Next: Fix dangling \\ lockstep across all 5 templates.

The fact that the timer and token count were still counting up in the wrong session is the key detail: the header reflects the other session's real-time activity, not a leftover line.

Version

2.1.197 (Claude Code)

Platform

CLI (multiple separate terminals)

Operating System

Windows 11 (working directory on WSL / UNC path)

Claude Model

Opus 4.8 [1m]

View original on GitHub ↗

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