omp packages

pi-status-footer1.1.1

Compact two-line status footer for pi: model, thinking level, tokens, cost, TPS, cache hit rate, context usage, live git diff, and working/turn timers.

GitHub Actions Published 12 days ago MIT ~1.2K 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-status-footer

Compact two-line status footer for the pi TUI: context usage, tokens, cost, live TPS, git diff, and run timers.

See pi.dev docs for how extensions work.

What's included

Extension Command / shortcut What it does
stats-footer.ts (no command; TUI footer widget) Renders a two-line footer: line 1 stats/timers, line 2 folder, git branch/diff, model, thinking level

It registers no slash commands, shortcuts, flags, tools, or providers. It hooks session/agent/turn/message events (session_start, agent_start, agent_settled, turn_start/end, message_start/update/end, model_select, thinking_level_select, session_info_changed, session_shutdown) to update the footer.

Install

pi install npm:pi-status-footer
pi install git:github.com/kslamph/pi-status-footer
pi install ./pi-status-footer

Try without installing (one run only, nothing saved):

pi -e npm:pi-status-footer
pi -e ./stats-footer.ts

The footer appears automatically in the next TUI session.

Usage

Just run pi in the TUI. Example footer:

๐Ÿ“ฆ 38%/128k  ๐Ÿ’พ 63%  โ†‘5.2k โ†“8.1k  ๐Ÿ’ฐ $0.420 +$0.020000  โšก42 t/s  โณ 4:32  ๐Ÿ’ฌ 1:18
๐Ÿ“ my-project โ–ธ ๎œฅ main +3 -1  ๐Ÿค– openai/gpt-4o ๐Ÿ’ญ medium

Line 1: context used/limit, cache hit rate, input/output tokens, session cost + current-run delta, tokens/sec (live while streaming, last rate when idle), agent-run timer, current-turn timer. Line 2: folder (repo root, or cwd outside a repo), branch, working-tree diff vs HEAD, provider/model, thinking level. Narrow terminals shorten the model id from the left first; the folder/git group drops only if the model still can't fit.

Configuration

Zero config. No env vars, no settings keys.

Security note

Runs in-process with your OS permissions. It reads session entries (token usage, cost, model, context) and runs one shell command, debounced to 1s during agent runs: git diff --shortstat HEAD (with --no-optional-locks, 3s timeout) plus a walk-up check for .git to find the repo root. No network access, no file writes.

Update / remove / enable-disable

pi update --extensions        # update all packages
pi update npm:pi-status-footer
pi remove pi-status-footer
pi list
pi config                     # enable/disable resources

Compatibility

  • Peer deps: @earendil-works/pi-ai, @earendil-works/pi-coding-agent, @earendil-works/pi-tui (any version with ctx.ui.setFooter)
  • TODO: confirm exact tested Pi version and OS coverage (developed on Linux)

Development

git clone https://github.com/kslamph/pi-status-footer.git
cd pi-status-footer
pi install ./                          # local copy loads in place
pi -e ./stats-footer.ts                # single run from inside the repo
npm test                               # runs test-layout, test-live-tps, test-cost

No build step; pi loads the TypeScript file directly. Optional typecheck: install the peer deps as devDependencies, then npx tsc --noEmit stats-footer.ts.

License + credits

MIT โ€” see LICENSE. Footer demo image: docs/footer-demo.png.