
A zero-token progress bar for Claude Code
Every Claude Code extension I've seen shows the same thing: token counts, API costs, model info. Useful, but it doesn't answer the question I actually care about mid-session — how much of the work is done. So I built task-progress-bar. It reads Claude Code's native task list from disk and renders a live ASCII progress bar with time estimates. It runs as a PostToolUse hook, which means it consumes zero tokens — it's a subprocess that Claude never sees. Tasks [████████░░] 8/10 (~3m left) | ✓8 ⟳1 ○1 How it works Claude Code persists tasks as JSON files in ~/.claude/tasks/. The plugin watches for TodoWrite, TodoRead, TaskCreate, and TaskUpdate tool calls via the PostToolUse hook, then: Parses every JSON file in the tasks directory Counts completed, in-progress, and pending tasks Computes a time estimate using an exponential moving average (EMA) Outputs a single status line to Claude Code's statusLine renderer The time estimation is straightforward. Each time a task moves to completed, the
Continue reading on Dev.to
Opens in a new tab


