[FEATURE] Add defaultColor setting to settings.json for automatic session color
Resolved 💬 4 comments Opened Mar 23, 2026 by iaznarez-i3 Closed Mar 30, 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
Currently, the /color <name> command is the only way to set a session color in Claude Code, but it must be repeated every time a new session starts. There is no way to persist this preference automatically. Unlike other user preferences (model, language, theme), color is not configurable via settings.json and cannot be set via any hook because /color is an internal UI command, not a shell command — making SessionStart hooks ineffective for this use case.
Proposed Solution
Add a defaultColor field to settings.json (user, project, or local scope) that is applied automatically at session start:
```json
{
"defaultColor": "orange"
}
This should follow the same precedence rules as other settings (user → project → local), so users can have a personal color globally while allowing project-level overrides.
### Alternative Solutions
- Shell alias workaround (current): alias claude='{ echo "/color orange"; cat; } | claude' — fragile and platform-dependent.
- Expose /color as a configurable hook output: Allow hooks to return a color directive as part of their JSON output (e.g., { "sessionColor": "orange" }). Lower implementation cost but more indirect.
- Support internal slash commands in SessionStart hooks: Allow hook commands to emit /color orange as output, which Claude Code would interpret and apply. More general-purpose solution.
### Priority
Low - Nice to have
### Feature Category
Configuration and settings
### Use Case Example
A developer working on multiple projects wants a consistent visual identity per project:
- Personal sessions: orange
- Work project A: blue
- Work project B: green
With defaultColor in .claude/settings.json per project, this would be trivially configurable with no manual intervention.
### Additional Context
_No response_This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗