omp packages

pi-static-working-indicator0.1.1

Replace Pi's animated working spinner with a static dot, so long sessions stop re-rendering while the agent waits.

GitHub Actions Published 7 days ago MIT ~497 downloads/mo

Untested on omp

This is a pi package. No one has reported whether it works on omp yet. If you try it, add your result below.

Did it work for you?

Result

One report per person. A new report replaces your old one.

Reports 0

No reports yet.

Readme

pi-static-working-indicator

A Pi extension that replaces the animated working spinner with a static ●. Long sessions stop re-rendering 12.5 times per second while the agent waits on a tool.

Install

pi install npm:pi-static-working-indicator

Start a new session after installing.

Why

Every spinner frame requests a TUI render, and a render walks the whole transcript. The cost grows with the session, while the only visible change is one character. A single static frame starts no timer. The "Working..." text still shows that the agent is busy.

Measured

Pi 1.3.0, a real 4 MB session, the agent waiting on a 60 s bash tool call. 15 s warmup, 20 s sample, median of 3 interleaved runs, 160×48 terminal:

TUI mode Pi CPU, spinner → static Terminal output, spinner → static
regular 32.8% → 3.7% of a core 7.4 → 0.24 kB/s
fullscreen 6.2% → 1.5% of a core 7.4 → 0.24 kB/s

The remaining output is Pi's elapsed-time display on the running tool, which updates once per second.

To reproduce, run python3 bench/drive.py "$(command -v pi)" <regular|fullscreen> <none|extensions/static-working-indicator.ts> <session.jsonl>. It prints CPU percent, terminal reads and bytes.

Scope

Only the main working indicator becomes static, because that is what Pi's setWorkingIndicator API controls. Pi's other loaders keep their spinner: !command runs, compaction, retries and some dialogs. They run rarely or briefly.

Credits

Written by Felix Rath (futile) and published here with his permission.