A per-turn speedometer for pi. It adds these model performance metrics to pi's status line:
- time to first token (TTFT)
- prefill tokens per second
- decode tokens per second
- total turn time
- a gauge for decode speed
▁▁·········· ttft 1967ms prefill 412 tok/s decode 63.8 tok/s total 14.2sThe status updates after each completed model turn. It briefly changes color when new data arrives, then stays visible until the next update.
/speed— show recent turns and per-model session averages/speed clear— reset history/speed csv— export history as CSV
pi install npm:pi-speedometerOr try it without installing:
pi -e npm:pi-speedometerFor calculation details and status behavior, see Metrics and status behavior.
./dev drops you into a nono-sandboxed shell with the toolchain (node 24, matching CI) provided by the nix flake:
./dev # interactive sandboxed shell — run pi, npm, etc. inside
./dev npm ci # or run a one-off command sandboxed
./dev npm run typecheckThe only host prerequisite is nix. One-time setup — install the base sandbox profile pack (using the flake's own nono):
nix --extra-experimental-features 'nix-command flakes' develop -c nono pull always-further/piThe sandbox profile lives in .nono/pi-speedometer.json and extends always-further/pi; project-specific grants go there.
MIT