Customize Your Claude Code Status Line
Claude Code has a status bar at the bottom of the terminal. By default it's minimal — but you can make it show anything you want.

The easiest way: just ask Claude to build it for you.
Open Claude Code and say something like:
"Add a custom status line that shows my username, current directory, git branch, context remaining, and current model"
Claude will write the script and wire up the config automatically.
How it works
Claude Code runs a shell script every time the status bar updates, passing session data as JSON. Your script reads that data and prints whatever you want.
Claude will add this to ~/.claude/settings.json:
"statusLine": {
"type": "command",
"command": "bash ~/.claude/statusline-command.sh"
}
And write the script at ~/.claude/statusline-command.sh.
What you can show
Things available from Claude Code directly:
- Context remaining — how much of the context window is left
- Current model — e.g. Sonnet 4.6, Opus 4.5
- Current directory and project path
Things your script can pull from the system:
- Git branch and whether you have uncommitted changes
- Active MCP servers and enabled plugins
- Current time
- Todo count from your active task list
Tweaking it
Once it's set up, keep refining it conversationally:
"Make the context percentage turn red when it's below 20%"
"Add the active MCP server names at the end"
"Show the time in 12-hour format"
Claude reads the existing script, makes the change, and tests it. No need to touch the file yourself.