pi-web-statusline: a single-line status row for Pi Web (model | think | dir | context | cache | cost) #763
Fantasymax
started this conversation in
Show and tell
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
I use pi-powerline-footer in the CLI for a powerline-style status bar and always
missed seeing the same info at a glance in Pi Web. Pi Web already renders
extension statuses from
ctx.ui.setStatus()inline in the bottom shelf, so Iwrote a small extension that publishes a single-line status row through that
channel.
What it does
In Pi Web, the bottom status shelf shows (with ANSI colors):
It only activates in RPC mode (
ctx.mode === "rpc", i.e. Pi Web) and is ano-op in the CLI TUI, so it can sit next to pi-powerline-footer without
conflicts. Refreshes on session/turn/model/thinking events plus a 60s idle
timer.
Why a status row instead of widgets?
Earlier threads (#538, #669, #682) show the extension widget UI is still being
polished, and factory widgets render as collapsible triggers in the shelf — the
actual values are hidden until you click.
setStatus()is a single string perkey and Pi Web renders it inline, so this is the simplest way to keep values
visible at a glance.
Ask: how would you prefer this to be distributed?
I have it packaged and working locally, but I would rather follow the
maintainer's preference before publishing anywhere. A few options:
pi install npm:pi-web-statusline; simplest for users..tgzin this thread formanual
pi install ./pi-web-statusline-0.1.0.tgz.is something Pi Web wants built-in (or as a first-party extension), I'm
happy to contribute the code or adapt it to whatever shape fits core.
Which would you prefer? Also happy to share the source in a repo if that helps
(e.g. under an MIT license, alongside pi-usage
whose scope is provider balances/quota — this one covers session state:
model, thinking, dir, context, cache, cost, so they complement each other).
All reactions