TeamCreate teammates cannot be reliably terminated by orchestrator

Resolved 💬 3 comments Opened Mar 28, 2026 by kevin-haidl-veritree Closed Mar 31, 2026

Problem

When using TeamCreate to spawn teammates, there is no reliable mechanism for the orchestrator (team lead) to terminate teammates after their work is complete. This leads to orphaned processes that continue polling for usage stats, eventually causing HTTP 429 rate limiting.

What we tried

  1. SendMessage with shutdown_request — Teammates do not receive or do not respect the shutdown signal. They go idle but remain running.
  2. tmux kill-pane — Successfully kills the terminal pane, but the Claude Code internal teammate subprocess continues running. The UI still shows teammates as active ("Combobulating...", "Actioning...", etc.) with 0 tool uses and 0 tokens.
  3. TeamDelete — Cleans up config files on disk (~/.claude/teams/ and ~/.claude/tasks/) but does not terminate the in-memory teammate processes. The UI continues to show them.
  4. exit in the tmux pane — Exits the shell but the Claude process detaches or traps the signal and persists.

Expected behavior

At least one of these should work:

  • SendMessage with shutdown_request should reliably terminate the teammate
  • TeamDelete should force-terminate all teammate processes before cleaning up files
  • A dedicated TeamStop or TeamKill tool should exist for force-terminating teammates

Observed behavior

Teammates persist indefinitely after all of the above. The only way to stop them is for the user to manually identify and kill the OS processes.

Impact

Each orphaned teammate continues polling for usage statistics. When multiple teams are spawned across a session, the accumulated polling triggers HTTP 429 (Too Many Requests) from the API, affecting all active Claude Code sessions.

Environment

  • Claude Code v2.1.86
  • macOS (Darwin 25.4.0)
  • Claude Opus 4.6 (1M context)

View original on GitHub ↗

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