statuslin.es

Context Bar

bash0

used 20×

Model plus a 10-block context-usage bar. Example statusline inspired by the Claude Code docs (code.claude.com/docs/en/statusline).

Preview
Clean repo
Opus 4.8 ▓▓░░░░░░░░ 22%
New session
Opus 4.8 ░░░░░░░░░░ 0%
Dirty branch
Opus 4.8 ▓▓▓▓░░░░░░ 48%
Near-full
Opus 4.8 ▓▓▓▓▓▓▓▓▓░ 91%
Deep path
Sonnet 4.6 ▓▓░░░░░░░░ 22%
Post-compact
Opus 4.8 ░░░░░░░░░░ 0%
Non-git
Opus 4.8 ▓▓░░░░░░░░ 22%
1M context
Opus 4.8 ▓▓▓▓▓▓░░░░ 64%
Source
#!/usr/bin/env bash
json=$(cat)
model=$(echo "$json" | jq -r ".model.display_name")
pct=$(echo "$json" | jq -r ".context_window.used_percentage // 0" | cut -d. -f1)
filled=$((pct / 10))
bar=""
for i in $(seq 1 10); do [ "$i" -le "$filled" ] && bar="${bar}\xe2\x96\x93" || bar="${bar}\xe2\x96\x91"; done
printf "%s  %b %s%%" "$model" "$bar" "$pct"