Allow users to customize the terminal/tab title

Resolved 💬 1 comment Opened Apr 23, 2026 by NathanielDaniels Closed May 27, 2026

Problem

When running multiple Claude Code sessions in separate terminal tabs, there's no way to distinguish them. Claude Code actively manages the terminal title (setting it to spinner + task description), which overwrites any title set externally via escape sequences or AppleScript.

This makes it hard to navigate between tabs when working on different tasks across multiple sessions.

Proposed Solution

Allow users to set a custom title prefix or override for the terminal tab. This could be:

  • A /title "my label" slash command that prepends or replaces the tab title
  • A hook event (e.g., SessionStart or a new TitleChange event) that lets users customize the title
  • A config option in settings.json for a title template (e.g., "titleFormat": "{project}: {status}")

Context

  • Claude Code already sets the terminal title — this would just expose control over it
  • Community plugins like TabChroma and iTerm2-claude-integration exist to work around this, showing demand for better tab identification
  • Escape sequences (\e]1;title\a) and AppleScript set name on sessions are both overwritten by Claude Code's TUI on every render cycle, so external solutions can't stick
  • The Stop hook can't solve this either, since escape sequences in hook output are captured by the TUI rather than passed to the terminal emulator

Use Case

A user working on multiple projects simultaneously (e.g., "coach email", "whoop dashboard", "sleepcheck") can label each tab so they can quickly find the right session.

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗