Ampline — Color-Graded Statusline for Claude Code
Sole developer, August 2026 to Present
JavaScriptNode.jsnpmDeveloper ToolsClaude Code
Problem
The statusline is always on screen, so you end up glancing at it constantly to check which model and effort level are active. Reading it every time gets old. Color fixes that, but only if you're careful about it. If the model badge and the usage bars pull from the same palette, a red badge and a red context bar look the same, and the one that actually matters gets lost.
Approach
- Mapped model and effort level onto a 16-step color wheel, so every combination gets its own predictable hue.
- Gave context and rate-limit usage their own green-to-red ramp, kept separate from the model colors so the two can't be confused.
- Built around how Claude Code really runs these scripts. There's no TTY, the JSON arrives piped over stdin, and the script gets cancelled if it doesn't exit fast.
- Added a write-through cache so the rate-limit bars still show last-known values on a cold start, before the first API response comes back.
- Made each segment degrade on its own, so missing data just drops that piece and the rest of the line still renders.
- Wrote an installer and uninstaller that detect an existing statusline config and leave it alone.
- Kept the package at zero runtime dependencies.
Outcome
Published to npm and in active development. Most of the work went into the constraints around it, like the latency budget, the cold-start cache, and making sure a bad install couldn't wipe out someone's existing config.