A segment is one piece of information in your status line: the model, the branch, the cost. Statusline Studio has 75 of them for the main status line. This lesson shows how they are grouped, how to find one, and how to know what it does before you add it.
Browse the groups
The Segments list on the left sorts every segment into groups:
| Group | Some of what is in it |
|---|---|
| Session | Model name, model tier badge, session name, agent name, Claude Code version, output style |
| Directory & Git | Current directory, git branch, dirty or clean, ahead and behind, last commit, pull request, worktree |
| Context window | Context used and remaining, context tokens, cache reads and writes, window size, over 200k badge |
| Usage & limits | The 5-hour and 7-day limits and when they reset, a spend limit as a percentage or in dollars, and the prompt cache: warm or not, and how often it was rebuilt |
| Cost & stats | Session cost, burn rate per hour, session duration, API time, lines changed |
| Modes | Reasoning effort, thinking on or off, fast mode badge, vim mode |
| Machine | Battery, load, uptime, disk free, Python venv, Kubernetes context, AWS profile, any environment variable |
| Extras | Clock, date, user and host, custom text, custom shell command, transcript size |
| Session activity | Code edits, files touched, tool calls, assistant turns |
| Layout controls | Right align and Fixed gap, which place other segments rather than show data |
Open a group to see its segments. Collapse all closes them again.
Search instead of scrolling
Type in the search box above the list: branch, cost, context, battery. The list filters as you type. This is the fastest way in once you know roughly what you want.
Add, move and remove
Click a segment to add it. If you selected a segment in your layout first, the new one goes right after it. Or drag it onto a line to place it exactly.
- Add all places every segment you have not placed yet, spread evenly over four lines. It is too much for daily use, but a quick way to see everything the studio can show.
- Clear all empties your layout so you can start over.
Know what a segment reads
Click a segment in your layout to open its editor. At the top it explains the segment and shows where its value comes from:
- Example is what it prints with the sample session
- Reads names the fields of the JSON Claude Code sends the script, for example
context_window.used_percentage - Runs means it calls a command, like
gitin your working folder - Uses your system clock, or Counts in the transcript, the session log Claude Code writes
This matters for two reasons. Segments that run git or read the transcript do a little more work each time the line updates. And some values are only there in some sessions: the plan limits only for Pro and Max users, the agent name only when Claude Code runs with --agent. The editor says so in a short note.
Start with a small set
A good first status line has four to six segments. A common start:
- Model name, so you always know which model answers
- Current directory, so you know where you are
- Git branch and Git dirty / clean
- Context used %, so you see when to compact
- Session cost
Build that, test it in Preview data, and add more only when you miss something. The last badge under the preview, the one that starts with bash + jq, tells you what each addition needs on your machine.
The next lesson shows how to style each segment: its icon, its label, its colour and how numbers are drawn.