claude agents shows registry instead of session dashboard inside cmux terminal multiplexer

Status Fixed / completed
Reported on v2.1.139
Maintainer reply ✓ Yes — bogini
Activity 5 comments · opened May 11, 2026 · closed May 12, 2026
💡 Likely answer: A maintainer (bogini, collaborator) responded on this thread — see the highlighted reply below.

Summary

claude agents shows the agent type registry instead of the interactive session dashboard TUI when run in Ghostty terminal.

Environment

  • Claude Code version: 2.1.139
  • OS: macOS (Darwin 25.4.0)
  • $TERM: xterm-256color (same across all terminals)

Reproduction

  1. Run claude agents in Ghostty (TERM_PROGRAM=ghostty)
  2. Observe: prints a static list of agent types (plugin agents, built-in agents) instead of the interactive session dashboard
7 active agents

Plugin agents:
  superpowers:code-reviewer · inherit

Built-in agents:
  claude · inherit
  claude-code-guide · haiku
  Explore · haiku
  general-purpose · inherit
  Plan · inherit
  statusline-setup · sonnet
  1. Run claude agents in iTerm or Terminal.app
  2. Observe: shows the interactive TUI session dashboard with session list, status indicators, and input prompt

Expected behavior

claude agents should show the interactive session dashboard TUI in Ghostty, same as iTerm and Terminal.app.

Additional context

  • Overriding TERM_PROGRAM=Apple_Terminal or TERM_PROGRAM=iTerm.app in Ghostty did not change the behavior.
  • Same issue occurs inside cmux (terminal multiplexer), which may be a separate/related limitation.

View original on GitHub ↗

5 Comments

abdelibrahim-hh · 3 months ago

Update: This is not a Ghostty issue. claude agents works fine in standalone Ghostty. The issue is specific to cmux (v0.64.4), a Ghostty-based terminal multiplexer/workspace manager.

Inside cmux:

  • TERM_PROGRAM reports ghostty (so Claude Code can't distinguish cmux from plain Ghostty)
  • TERM_PROGRAM_VERSION = 1.3.2-cmux-ios-manual-io-minimal-clean-20260501-+22fa801f8
  • TERMINFO points to cmux's bundled terminfo at /Applications/cmux.app/Contents/Resources/terminfo
  • Various CMUX_* env vars are set (CMUX_PANEL_ID, CMUX_SURFACE_ID, CMUX_BUNDLE_ID, etc.)

cmux acts as a multiplexer layer and likely doesn't forward all escape sequences the agent view TUI requires (alternate screen buffer, mouse events, etc.). Similar to how tmux can break certain TUI apps.

The title of this issue should be updated to reflect cmux rather than Ghostty.

joinvar · 3 months ago

Same issue on Windows + Warp Terminal — confirming this is cross-platform and not Ghostty-specific.

Environment

  • OS: Windows 11 (10.0.26200)
  • Terminal: Warp (TERM_PROGRAM=WarpTerminal)
  • Shell: PowerShell 7.6.1 (ConsoleHost)
  • $TERM: empty, $WT_SESSION: empty
  • Claude Code: 2.1.139

Symptom: claude agents prints the static registry (built-in agent types) instead of the interactive session dashboard. /bg slash command isn't recognized either, and the "press on empty prompt to background" keybind documented in agent-view doesn't fire.

Workaround: pwsh -NoProfile from the same Warp window, then claude agents → interactive dashboard works, /bg works.

My $PROFILE is minimal — it only calls Set-PSReadLineKeyHandler once to rebind Tab. So the trigger is either (a) PSReadLine being loaded at all, or (b) Warp's auto-injected shell integration running through the profile chain.

Both candidates match the original Ghostty report: Warp and Ghostty are both modern terminals with shell-integration features; PSReadLine and those integration hooks both manipulate the parent shell's console state. The TTY/dashboard fallback heuristic seems sensitive to that, rather than to \\$TERM\ / \\$TERM_PROGRAM\ alone.

bogini collaborator · 3 months ago

Thanks for the detailed reports and for narrowing it down — confirmed. The claude agents dispatch was only tolerating --debug* flags alongside the subcommand, so wrappers/shell-integrations that inject flags (cmux's --settings/--session-id shim, etc.) fell through to the legacy agent-type list.

Fixed in v2.1.140 (tomorrow's release).

Workaround until then — bypass the wrapper for this one command:

# cmux
CMUX_CLAUDE_HOOKS_DISABLED=1 claude agents
# Warp/PowerShell
pwsh -NoProfile -c 'claude agents'
depop-ben · 3 months ago

Same behaviour here, but in a standard environment:

  • Terminal.app (Apple_Terminal, version 466)
  • No multiplexer (no tmux, screen, cmux)
  • TERM=xterm-256color, COLORTERM=truecolor
  • stdout is a TTY, terminal is 92x32
  • Claude Code 2.1.139, macOS Darwin 25.2.0
  • Standard oh-my-zsh, no terminal-related overrides
  • Running via Bedrock — unlikely to affect TUI but noting for completeness

This doesn't seem to be a terminal detection issue. Maybe a bedrock compatibility issue?

github-actions[bot] · 1 month ago

This issue has been automatically locked since it was closed and has not had any activity for 7 days. If you're experiencing a similar issue, please file a new issue and reference this one if it's relevant.