[BUG] Agent teams silently fall back to isolated subagents — runtime inconsistently chooses team path

Resolved 💬 4 comments Opened Mar 15, 2026 by monjeyer Closed May 13, 2026

Description

Agent teams work intermittently. With CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 enabled and explicit prompting requesting agent teams with mailbox communication, Claude Code inconsistently chooses between creating a real team (TeamCreate + mailbox + SendMessage) and falling back to ordinary isolated subagents (Agent tool, no communication). There is no error message — the fallback is silent.

Evidence from local session logs

Real team (worked) — Feb 14, 2026:

  • Session ebd01375-1171-4910-bd2e-4b73265a9b1a
  • TeamCreate at line 407
  • Mailbox traffic at line 448
  • TeamDelete cleanup at line 548
  • Real SendMessage between teammates

Real team (worked) — Feb 9, 2026:

  • Session 48356d44-3929-48bf-baa1-d1293c8ad195
  • TeamCreate at line 157

Silent fallback (broken) — Feb 27, 2026:

  • Session ecfc5b8c-0e6f-4817-b2c3-8c457dd43ae9
  • Same prompt pattern as Feb 14
  • Session summary explicitly says "Launched 4 parallel background agents"
  • No TeamCreate in session log
  • Subagent files present but no mailbox traffic

Silent fallback (broken) — March 13-15, 2026:

  • Multiple sessions with explicit agent team instructions
  • All used Agent tool (isolated subagents)
  • Claude acknowledges rules saying "use agent teams" then uses Agent tool anyway
  • When asked why, Claude says: "I don't see a mechanism in my tool set that enables the mailbox/direct-messaging pattern between teammates"

Environment

  • Claude Code v2.1.76
  • macOS (Apple Silicon)
  • CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 in ~/.claude/settings.json
  • No custom teammateMode set (using default)

Steps to reproduce

  1. Set CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 in settings
  2. Start a new claude session
  3. Ask: "Create an agent team with 3 teammates. Teammate 1 reads a file, teammate 2 summarizes it, teammate 3 reviews. Have them message each other."
  4. Check whether real teammates spawn (Shift+Down to cycle) or whether Claude uses the Agent tool instead

In my experience, this fails ~80% of the time — Claude uses Agent tool calls and writes "cross-signals" as text in output files rather than using real mailbox communication.

Expected behavior

When CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 is set and the user explicitly requests agent teams, Claude should always use TeamCreate to create the team infrastructure and spawn real teammates with mailbox communication. If team creation fails, it should surface an error — not silently fall back to isolated subagents.

Actual behavior

Claude silently chooses ordinary Agent tool calls (isolated subprocesses) instead of TeamCreate + real teammates. No error is shown. The output looks superficially similar but lacks inter-agent communication, mailbox messages, and conductor-as-librarian capability.

Impact

This makes agent teams unusable for workflows that depend on inter-agent communication (e.g., multi-agent daily brief where specialists message each other with cross-domain findings and request additional data from a conductor).

Related issues

  • #29293 — Teammates fail to spawn (stdin error)
  • #32731 — Teammates have fewer tools than subagents
  • #24316 — Custom agents as team teammates
  • #27729 — Agent teams fail with Vertex AI backend

View original on GitHub ↗

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