[Bug] `claude --continue` silently resumes existing conversation without indication or live session detection

Status Open
Reported on v2.1.238
Maintainer reply None cached
Activity 0 comments · opened Aug 20, 2026

Bug Description
claude --continue silently attaches a window to another window's live conversation, with no indication it did so ## What happened I had two terminal tabs open on the same project directory, deliberately labelled for two different workstreams. Tab A was running a long session on workstream A. In tab B I started Claude with claude --continue. --continue resumed tab A's conversation — the most recent one in that directory — into tab B. Nothing in tab B's session indicated this had happened. The agent in tab B received tab A's compacted summary, which stated "this window is dedicated to <workstream A>", took that as fact, and spent an hour doing workstream A's work: editing the same remote resource that the agent in tab A was editing at that moment. Both agents wrote to the same transcript file. Each saw the other's changes to the shared remote resource as edits appearing from nowhere, and each independently concluded "another session is editing this concurrently." Both then stopped, with contradictory partial diagnoses of the same problem. ## Why this is bad 1. --continue is topic-blind by design (most recent conversation in the directory) but presents its result as if the window simply started. Nothing distinguishes "attached to an existing conversation" from "started fresh" — not in the UI, not in context. 2. A compacted summary asserting "this window is dedicated to X" is highly persuasive to the resumed agent, and there is no signal available to it that would justify doubting that claim. 3. Two windows can drive one conversation simultaneously, interleaving appends into one transcript file (I have out-of-order timestamps proving it: an assistant message stamped 21:58:28 sits between lines stamped 22:02:18 and 22:02:42). 4. The human looks wrong. I had my tabs straight; the tool handed one of them the wrong conversation, and the resulting evidence — the transcript — pointed at me as the confused party. ## Reproduction 1. In directory D, run claude in tab A and start a conversation on topic A. 2. While tab A is still live, open tab B in directory D and run claude --continue. 3. Tab B is now in tab A's conversation. Both tabs append to the same transcript and can act on the same external resources. ## Suggested fixes - On --continue/--resume, state plainly in-session what was attached to: session id, topic, and whether that session is currently live elsewhere. - Warn or refuse when the target conversation already has a live process attached — this is the actively harmful case. - Consider making --continue decline to attach to a session that is currently active, and offer a fork instead. ## Workaround A user-level SessionStart hook that prints the session id, the real launch command, and other live claude processes, and flags when the launch was an attach rather than a start. That works, but every user hits this before the know to write it.

Environment Info

  • Platform: darwin
  • Terminal: iTerm.app
  • Version: 2.1.238
  • Feedback ID: d45fcbfc-a2b3-437b-b9b5-04e349669577

Errors

[]

View original on GitHub ↗