Configure Claudeline Status Line
Help users configure their Claude Code status line using claudeline.
Workflow
Step 1: Understand User's Needs
Ask the user what they want:
What would you like to do?
1. **Quick setup** - Install a preset theme
2. **Custom format** - Build a custom status line
3. **See current** - Check what's currently configured
4. **Uninstall** - Remove status line configuration
Step 2: Determine Scope
Ask where to install:
Where should the status line be configured?
1. **Global** (~/.claude/settings.json) - Applies to all projects
2. **Project** (.claude/settings.json) - Only this project
Step 3A: Quick Setup (Theme Selection)
If user wants a theme, show available options:
| Theme | Description | Preview |
|---|---|---|
minimal |
Just model and directory | Sonnet 4 myproject |
default |
Model, directory, git info | [Sonnet 4] 📁 myproject | 🌿 main ✓ |
powerline |
Powerline style with colors | Sonnet 4 myproject main ✓ |
full |
Everything including cost/context | [Sonnet 4] ~/project → main ✓ | [████░░] 45% | $0.42 |
git |
Git-focused with detailed status | [Sonnet 4] 📁 myproject | 🌿 main ✓ ↑2 |
tokens |
Token/context focused | Sonnet 4 | 🟢 50k/200k | +133 |
dashboard |
Full dashboard view | [Sonnet 4] myproject | main ✓ | 45% | $0.42 | 14:32 |
compact |
Minimal with slashes | Sonnet 4 / myproject / main |
colorful |
Vibrant colors | Colored model, dir, branch, status |
Install with:
npx claudeline --theme <name> --install [--project]
Step 3B: Custom Format Builder
If user wants custom, guide them through building a format string.
Available Components
Model/Session:
claude:model- Model name (Sonnet 4)claude:model-letter- First letter (S)
Directory:
fs:dir- Current directory namefs:home- Path with ~ for homefs:project- Project name
Git:
git:branch- Branch namegit:status- ✓ or *git:ahead-behind- ↑2↓1git:dirty- Combined status
Context:
ctx:percent- Usage % (45%)ctx:bar- Progress bar [████░░]ctx:emoji- 🟢🟡🟠🔴ctx:tokens- 50k/200k
Cost:
cost:total- $0.42cost:duration- 5mcost:lines- +133
Time:
time:now- 14:32time:date- Feb 1
Separators: sep:pipe (|), sep:arrow (→), sep:dot (•), sep:slash (/)
Emojis: emoji:folder (📁), emoji:branch (🌿), emoji:rocket (🚀)
Styling: Prefix with green:, bold:, cyan:, etc.
Grouping: [...] adds brackets, if:git(...) for conditionals
Example Formats
# Simple
"claude:model fs:dir git:branch"
# With separators
"claude:model sep:pipe fs:dir sep:arrow git:branch"
# With colors
"bold:cyan:claude:model fs:dir green:git:branch"
# With conditionals (only show git info in git repos)
"claude:model fs:dir if:git(sep:pipe git:branch git:status)"
# Full custom
"[bold:cyan:claude:model] emoji:folder fs:dir sep:arrow green:git:branch git:status sep:pipe ctx:percent"
Install custom format:
npx claudeline "<format>" --install [--project]
Step 4: Verify Installation
After installing, show the user:
- What was written to settings.json
- Remind them to restart Claude Code
# Check current configuration
cat ~/.claude/settings.json | grep -A5 statusLine
# Or for project
cat .claude/settings.json | grep -A5 statusLine
Step 5: Test Before Installing (Optional)
User can test their format:
# See sample data
npx claudeline --preview
# Test with sample data
echo '{"model":{"display_name":"Sonnet 4"},"workspace":{"current_dir":"/test/project"}}' | npx claudeline run "claude:model fs:dir"
Commands Reference
# Install theme globally
npx claudeline --theme minimal --install
# Install theme to project only
npx claudeline --theme powerline --install --project
# Install custom format
npx claudeline "claude:model fs:dir git:branch" --install
# List all themes
npx claudeline --themes
# List all components
npx claudeline --list
# Uninstall
npx claudeline --uninstall [--project]
# Preview sample data
npx claudeline --preview
Troubleshooting
Status line not showing?
- Restart Claude Code after installing
- Check settings.json has the statusLine config
Command not found?
- Ensure Node.js/npm is installed
- Try
npx claudeline --help
Want to use bun instead of npx?
- Use
--use-bunxflag when installing
Converted and distributed by TomeVault — claim your Tome and manage your conversions.