Claude Code /statusline

Posted on Thursday, June 4, 2026


 

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
  > npm config set prefix ~/.npm-global
  > echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.bashrc
  > source ~/.bashrc

 

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