claude-code icon indicating copy to clipboard operation
claude-code copied to clipboard

Feature Request: Set terminal title from within Claude Code session

Open JohnAposto83 opened this issue 1 month ago • 1 comments

Problem Statement

When running multiple Claude Code sessions simultaneously in VS Code/Cursor, all terminal tabs have generic names like "claude - infrastructure". Users must manually rename each tab to identify which session is which.

This is particularly painful when using agent frameworks (like BMAD) where multiple specialized agents run in parallel - there's no way to tell at a glance which terminal contains which agent.

Current Behavior

  • All Claude Code terminals show as claude - <directory>
  • The CLAUDE_CODE_DISABLE_TERMINAL_TITLE=1 env var only prevents Claude from setting titles, doesn't allow user control
  • Bash escape sequences (printf '\033]0;Title\007') don't work because:
    • Claude Code's bash subprocess has no TTY access
    • Escape sequences are captured as text output, never reaching the terminal
    • /dev/tty is not available
  • Hooks also run in isolated subprocesses with the same limitation
  • /rename command renames the session (for --resume), not the terminal tab

Requested Feature

A mechanism to set the terminal tab title from within Claude Code, such as:

Option A: Slash command

/title "🏗️ HA Architect - skrig1"

Option B: Programmatic API (for agent frameworks)

// In custom commands or skills
claude.setTerminalTitle("🌐 Atlas - Infrastructure")

Option C: Automatic from skill/agent name When loading a skill via the Skill tool, automatically set terminal title to skill name.

Use Cases

  1. Multi-agent workflows: Running PM, Architect, and Dev agents simultaneously
  2. Multi-project work: Working on different codebases in parallel sessions
  3. Infrastructure management: Sessions for different servers/environments
  4. Teaching/demos: Clear identification for screen recordings

Environment

  • Claude Code version: 1.0.52+
  • Terminal: VS Code / Cursor integrated terminal
  • OS: Linux (Ubuntu 24.04)

Workaround Attempted

Full investigation documented: escape sequences, /dev/tty writes, hooks - all fail due to subprocess architecture.

Current workaround is manual right-click → Rename, which breaks workflow.

JohnAposto83 avatar Dec 30 '25 12:12 JohnAposto83

Found 3 possible duplicate issues:

  1. https://github.com/anthropics/claude-code/issues/7229
  2. https://github.com/anthropics/claude-code/issues/15082
  3. https://github.com/anthropics/claude-code/issues/15084

This issue will be automatically closed as a duplicate in 3 days.

  • If your issue is a duplicate, please close it and 👍 the existing issue instead
  • To prevent auto-closure, add a comment or 👎 this comment

🤖 Generated with Claude Code

github-actions[bot] avatar Dec 30 '25 12:12 github-actions[bot]

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.

github-actions[bot] avatar Jan 07 '26 14:01 github-actions[bot]