Skip to content
jfgrecoPublic

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

16 Commits

Folders and files

Repository files navigation

nametag — project-first terminal tab titles for Claude Code

Tabs get confusing when several Claude Code sessions are open. This plugin makes every tab lead with a short per-project name, followed by live status:

Tab title Meaning
shea ● fix the failing xUnit te… Working (shows your latest prompt, truncated)
shea ✓ Done — waiting for your next prompt
shea ⚠ Needs your input (permission prompt or idle)

The name is the directory basename by default; set a custom short name once per project with /nametag.

Install

/plugin marketplace add jfgreco/nametag
/plugin install nametag@greco-plugins

Requires a recent Claude Code (2026+) — the plugin relies on the terminalSequence hook output field. Requires Node.js on PATH (Claude Code already requires this). If tab titles never change after installing, update Claude Code (run claude update) — older releases ignore the terminalSequence hook output field.

Usage

  • /nametag shea — set the tab name for the current project
  • /nametag — show the current name and where it comes from
  • /nametag --clear — revert to the directory-name fallback

Names are stored in ~/.claude/nametags.json (plain JSON, hand-editable).

Development

Run the test suite from the repo root:

node --test

How it works

Lifecycle hooks (SessionStart, UserPromptSubmit, Notification, PostToolUse, Stop, SessionEnd) run a small dependency-free Node script that emits an OSC 0 title sequence via the hook terminalSequence output. Claude Code has no setting to disable its own AI-generated titles, so the plugin simply re-asserts its title on every event — including after every tool call — to stay the last writer.

Terminal notes

  • Windows Terminal: works out of the box. Do NOT enable suppressApplicationTitle in your profile — it blocks this plugin's titles too.
  • macOS Terminal.app: works; some zsh setups append their own title text.
  • tmux: needs set -g set-titles on.
  • VS Code integrated terminal: include ${sequence} in the terminal.integrated.tabs.title setting.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages