[BUG] Bottom toolbar conflates agents from multiple Claude Code sessions on the same machine
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?
TITLE
Bottom toolbar conflates agents from multiple Claude Code sessions on the same machine
BEHAVIOR
When multiple Claude Code sessions run on the same machine (un-sandboxed shared
filesystem), the bottom toolbar in any session shows ALL agent processes across
ALL sessions on the machine — not just the agents owned by the current session.
EVIDENCE FROM A REAL OCCURRENCE THAT TRIGGERED THIS REPORT
- Session A torn down its full team (TeamDelete returned success; all 6 agents
individually confirmed shutdown_approved + teammate_terminated).
- Toolbar still showed ~21 active agents.
ps -ef | grep team-nameconfirmed those 21 agents belonged to two OTHER
Claude Code sessions running on the same machine (different parent PIDs,
different team names, different working directories).
- Session A's own agent count via process inspection: 0 (correctly torn down).
- The user's mental model — "the toolbar reflects my session" — was violated.
What Should Happen?
EXPECTED BEHAVIOR
- Default: toolbar shows only agents whose
--parent-session-idmatches the
current session's UUID.
- Add an opt-in toggle (e.g., a setting or status-line indicator) for users
who want machine-wide visibility across all their concurrent sessions.
WHY THIS MATTERS
- Misleading after teardown — successful teardowns appear to have failed.
- Misleading during dispatch — a user in session A trying to count their own
spawned agents sees noise from sessions B/C/D.
- Multi-session usage is common: one session per worktree, one per repo, one
per parallel feature task. Not an edge case.
- Especially impactful for plugins that orchestrate many concurrent agents
(15+ per session is realistic), where cross-session noise dominates the
toolbar and obscures the actual session state.
FIXABILITY
The data needed to filter is already present in the agent process arguments —
each agent process is launched with --parent-session-id <UUID> (visible viaps). The toolbar renderer just needs to filter the agent list by current
session's UUID before display. No new state to capture.
ENVIRONMENT
- Claude Code version: 2.1.121
- OS: Darwin 25.4.0
- Shell: zsh
- Backend: Vertex AI (also reproducible on Anthropic API per user reports)
- Trigger context: heavy multi-agent plugin (15+ concurrent agents per
session); the bug applies to ANY multi-session use of the Agent tool, the
plugin just makes it more visible by virtue of agent count.
Error Messages/Logs
Steps to Reproduce
REPRO
- Open Claude Code session A. Spawn N agents via the Agent tool / TeamCreate.
- Open Claude Code session B (separate terminal, same machine). Spawn agents
in B too via its own Agent tool / TeamCreate.
- In either session, observe the toolbar — it shows the union of agents from
both sessions, with no visual indication of which agents belong to which.
- In session A, fully tear down its agents (TeamDelete + per-agent
shutdown_request → confirmed shutdown_approved → teammate_terminated for
every agent).
- Session A's toolbar STILL shows session B's agents (which are correctly
running there) — and the user reads this as "my teardown didn't work,"
because the toolbar gives no signal that those remaining entries belong to
another session entirely.
Claude Model
None
Is this a regression?
Yes, this worked in a previous version
Last Working Version
_No response_
Claude Code Version
❯ claude --version 2.1.128 (Claude Code)
Platform
Google Vertex AI
Operating System
macOS
Terminal/Shell
iTerm2
Additional Information
_No response_
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗