[FEATURE] Add promptBarColor as persistent setting (global + per-project)

Resolved 💬 2 comments Opened Mar 17, 2026 by jopre0502 Closed Mar 17, 2026

Preflight Checklist

  • [x] I have searched existing requests and this feature hasn't been requested yet
  • [x] This is a single feature request (not multiple features)

Problem Statement

Problem:
The /color slash command only works interactively within a running session and resets on restart. There is no way to persistently configure the prompt bar color — neither via CLI flag (claude --color orange) nor via settings.json.

Use Case:
When working across multiple projects, a distinct prompt bar color per project provides instant visual context about which project is active. This is especially valuable when running multiple Claude Code sessions in parallel (e.g., one for frontend, one for backend).

Benefits:

  • Visual project identification across parallel sessions
  • Zero-friction — no manual /color command every session start
  • Follows existing settings architecture (no new patterns needed)
  • Could also be set via claude config set promptBarColor orange

Proposed Solution

Proposed Solution:

  1. Add a promptBarColor property to settings.json (both global ~/.claude/settings.json and project-level .claude/settings.json), with project-level overriding global — consistent with existing settings like theme and model.
  1. Optionally, support a CLI flag claude --color <color> for one-off overrides.

```
// ~/.claude/settings.json (global default)
{
"promptBarColor": "cyan"
}

// .claude/settings.json (project override)
{
"promptBarColor": "orange"
}


### Alternative Solutions

_No response_

### Priority

Low - Nice to have

### Feature Category

CLI commands and flags

### Use Case Example

  I work as a freelance developer managing 3-4 client projects simultaneously. On a typical day, I have multiple terminal tabs open, each running a Claude Code session in a different project directory:

  1. Tab 1: ~/projects/client-a-backend — Python API (production hotfix, high risk)
  2. Tab 2: ~/projects/client-b-frontend — React SPA (feature development)
  3. Tab 3: ~/projects/internal-tooling — Internal CLI tools (low priority)

  The problem: All three sessions look identical. The only visual difference is the terminal tab title (often truncated) and the path shown in the prompt. When switching between tabs quickly — especially
  during a production incident — I have to consciously read the path every time to confirm which project I'm in.

  What happened: During a production incident for Client A, I accidentally ran a destructive database migration command in the wrong Claude Code session (Client B's project). The sessions looked identical, and
   under pressure I simply switched to the wrong tab.

  With promptBarColor:

  // ~/projects/client-a-backend/.claude/settings.json
  { "promptBarColor": "red" }       // Red = production, high caution

  // ~/projects/client-b-frontend/.claude/settings.json
  { "promptBarColor": "green" }     // Green = development, safe

  // ~/projects/internal-tooling/.claude/settings.json
  { "promptBarColor": "gray" }      // Gray = low priority

  Now when I glance at a tab, the color immediately tells me where I am — no reading required. Red means "careful, this is production." This is the same principle behind colored environment banners in AWS
  Console or Kubernetes dashboards: visual differentiation reduces human error under cognitive load.

  Step-by-step workflow:
  1. cd ~/projects/client-a-backend && claude → Session starts with red prompt bar (from project settings)
  2. cd ~/projects/client-b-frontend && claude → Session starts with green prompt bar
  3. Alt-Tab between sessions → Color is the first thing I register, before reading any text
  4. No manual /color command needed — it just works, every session, automatically

### Additional Context

_No response_

View original on GitHub ↗

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