The Claude Code status
line is kinda boring. Not much
there. Turns out there is a built in way
to create a more interesting status line.
Use the built in /statusline
Here is an example of my
current “default” status line.
Nothing fancy just a place to type and we can see the folder tmp we started in and which model I am using, Opus 4.8.
There is a built in tool
called /statusline Customize your status line
https://code.claude.com/docs/en/statusline [1]
Let’s try it out. From within Claude Code run this cmd
|
> /statusline |
It will begin to make a
script for you.
OK it looks like it made some decisions and made this.
Basically only added the file path and my machine name… Pretty boring.
But what did it really do?
First it edited your ~/.claude/settings.json file adding a statusLine
|
> cat ~/.claude/settings.json | jq . |
egrep -A 3 statusLine |
Its going to run the new command it created at ~/.claude/statusline.sh
|
> vi ~/.claude/statusline.sh |
Looks like a simple bash script that outputs a few lines.
When does it run?
You can read up on the details at How status lines work https://code.claude.com/docs/en/statusline#how-status-lines-work [2]
Basically it runs after each assistant message, after a
/compact.
You can also add a refreshInterval variable to your settings.json file to force it to update very X seconds in addition to the event driven updates.
I could have Claude itself work with me to tweak this file
to my liking. But let me see what is
available out there that other folks have mode.
ccstatusline
Found this fun one, ccstatusline https://github.com/sirmalloc/ccstatusline [3]
Let’s install it and test it out.
Open a new terminal and run
|
> npx -y ccstatusline@latest |
That puts us in an interactive mode. The top shows the results and you can go through the menus and create your custom interface.
Choose edit lines
Choose line 1
There you can see current set up. Selecting one and pressing a opens a new terminal
Let me choose number 4 Tokens
Then choose total
Oh that added (it did not override the last one).
Let me fiddle a little more
OK here is my first try.
Choose Install to Claude Code
Select global Install
Select npm install -g ccstatusline@2.2.19
Replace, select Yes
For some reason the replace did not work so I opened ~/.claude/settings.json and removed the statusLine object and ran npm install -g ccstatusline@2.2.19 by hand
|
> npm install -g ccstatusline@2.2.19 |
Ahh permission issue
OK looks like I am stuck and cannot deploy. Let me Save & Exit
Fixing my permission issues
|
> mkdir -p ~/.npm-global |
Try it again
|
> npx -y ccstatusline@latest |
Then go through the prompts
Open up Claude
Wahoo!
Now that it is working lets tweak it and update it while running claude
|
> npx -y ccstatusline |
After tweaking press save and exit. Changes should auto update in 10 seconds and
the tool added a 10 second refreshInterval
And it updated.
Config files
If we look at our ~/claude/settings.json file again
|
> vi ~/.claude/settings.json |
We see the updated status line
But we also see a lot of hooks that have been added
The config you created is located at ~/.config/ccstatusline/settings.json
|
> vi
~/.config/ccstatusline/settings.json |
You can see its just a big JSON file.
As such you can replace it with someone else’s version.
I found an example here
https://gist.github.com/fcamblor/0ad17cab5cc797d9e92d0620be795f99
Let me replace the one I made with this one.
First backup the one I made (just in case)
|
> cp
~/.config/ccstatusline/settings.json
~/.config/ccstatusline/settings.json.BACK |
|
> wget -O
~/.config/ccstatusline/settings.json \
https://gist.githubusercontent.com/fcamblor/0ad17cab5cc797d9e92d0620be795f99/raw/daba45056ed574b0f40ffc077ebd3a8378b103ff/.config__ccstatusline__settings.json |
Very different!
Anyway cool tool I need to fiddle with it more
References
[1] Customize
your status line
https://code.claude.com/docs/en/statusline
Accessed 06/2026
[2] How Status
lines work
https://code.claude.com/docs/en/statusline#how-status-lines-work
Accessed 06/2026
[3] ccstatusline
git repo
https://github.com/sirmalloc/ccstatusline
Accessed 06/2026
No comments:
Post a Comment