–––

–––– ––––––– –––––––– @maia_analytics

––––– ––––––– –– – –––––––––– –––––– – –––––– –– ––––––––– –––– ––––––

currently building
claude-statusline
main ±3 ~/repos/c2k.dev
0% ↯12 ⛁43

What is this?

A 198-line bash script that replaces Claude Code's default statusline. It runs on every prompt, parsing JSON input from Claude Code and rendering a two-line display with ANSI colors.

Line 1 — Git + Location

Branch Current branch, truncated at 30 chars. Shows HEAD during detached state.
State icons ↻ rebase · ⑂ merge · ⊕ cherry-pick · ↩ revert · ◇ bisect
±N Total of staged + unstaged + untracked files.
Path Shortened CWD. Detects git worktrees and shows worktree name.

Line 2 — Context + System

Context % Color-coded: green (0-60%), yellow (60-100%), red (100%+). For Opus 1M, scales to show 500K personal limit as 100%.
• dot Extended pricing indicator. Appears when context exceeds 200K tokens on the 1M model.
↯ ⛁ CPU load and memory usage. Cached for 1 second to avoid expensive recalculation.

Why native bash?

Replaced the third-party ccstatusline tool to eliminate rendering artifacts and stdin handling issues. A single bash script with jq parsing, no dependencies, no wrapper hacks. Works on both macOS and Linux.

Claude Code Skills dotfiles/claude/skills ↗
claude code
/issue-to-pr issue → code → PR → merged workflow
/sync pull repos, fix symlinks, rebuild config devops
/pane rich tmux pane — files, diffs, logs terminal
/dispatch send tasks to parallel worker sessions workflow
/make-tests FastAPI test patterns + fixture guide testing
/mods-command pipe docs into LLM CLI with custom roles tools
/resolve-pr-threads resolve GitHub review threads via GraphQL git
/bug-root-cause investigate via Linear, Logfire, Slack traces debugging
/raycast-chrome-tab AppleScript tab switcher for Raycast tools

––––––––– ––––––– – –––––––– –– –– – –––––– –––––– –––––––––– –––––––––––– ––––––– –––––– ––––– ––––––– –––– –––––– –––––––– –––– –––––––– ––– ––––––––– ––– –––––––––

–––– –––– –– ––– –––––– ––––– –– –––– –––––––