A Catppuccin Frappe-themed status line for Claude Code
Opus 4.6 │ feat/my-branch● │ my-project │ ▓▓▓░░░░░░░ 15k/200k │ $0.03 │ v2.1.52
Model · Git branch (with dirty indicator) · Project folder · Context usage (visual bar + tokens) · Session cost (auto-converting currency) · CLI version
mkdir -p ~/.claude/scripts && \
curl -fsSL https://raw.githubusercontent.com/danjdewhurst/cc-status-line/main/status-line.sh \
-o ~/.claude/scripts/status-line.sh && \
chmod +x ~/.claude/scripts/status-line.shOr with wget
mkdir -p ~/.claude/scripts && \
wget -qO ~/.claude/scripts/status-line.sh \
https://raw.githubusercontent.com/danjdewhurst/cc-status-line/main/status-line.sh && \
chmod +x ~/.claude/scripts/status-line.shThen add to ~/.claude/settings.json:
{
"statusLine": {
"type": "command",
"command": "~/.claude/scripts/status-line.sh"
}
}Restart Claude Code or start a new session.
- Terminal with 24-bit true colour support (iTerm2, Ghostty, Kitty, WezTerm, Alacritty)
jqandbccurl(optional — for exchange rate API, falls back to manual rate)git(optional — for branch display)
Change currency
Exchange rates are fetched from the Frankfurter API and cached for 24 hours at ~/.cache/cc-status-line/exchange-rate.json.
Edit the variables at the top of the script:
CURRENCY='£'
CURRENCY_CODE='GBP'
EXCHANGE_RATE=0.79 # Fallback if API unavailableSupports any ISO 4217 currency code (EUR, JPY, AUD, etc.).
Change context bar threshold
The bar turns red when usage exceeds 60%. Adjust in the script:
[ "$pct" -gt 60 ] && COLOR="$RED" || COLOR="$BLUE"Change bar characters
Replace ▓ and ░ with alternatives:
| Style | Filled | Empty |
|---|---|---|
| Default | ▓ |
░ |
| Circles | ● |
○ |
| Blocks | █ |
░ |
| Thin | ┃ |
│ |
Change branch truncation
Branch names are truncated at 20 characters. Adjust in the script:
if [ "${#branch}" -gt 20 ]; then
branch="${branch:0:19}…"
fiAll colours are from Catppuccin Frappe:
| Element | Colour | RGB |
|---|---|---|
| Model | Lavender | 186, 187, 241 |
| Branch | Mauve | 202, 158, 230 |
| Folder | Teal | 129, 200, 190 |
| Context (low) | Blue | 140, 170, 238 |
| Context (high) | Red | 231, 130, 132 |
| Dirty indicator | Peach | 239, 159, 118 |
| Cost | Green | 166, 209, 137 |
| Separators | Overlay 0 | 115, 121, 148 |
| Version / secondary | Subtext 0 | 165, 173, 206 |
echo '{"model":{"display_name":"Opus 4.6"},"workspace":{"current_dir":"/Users/you/project"},"context_window":{"context_window_size":200000,"used_percentage":25},"cost":{"total_cost_usd":0.05}}' | ./status-line.sh