pi-model-flash
v0.1.0
Published
Pi extension that flashes the current model name in BIG block letters when you cycle models with Ctrl+P.
Readme
pi-model-flash
A tiny pi extension that flashes the current model name in big block letters above the editor when you cycle models with Ctrl+P / Shift+Ctrl+P.
Useful when you cycle through models quickly and want an unmissable, at-a-glance confirmation of which one is now active.
Install
# Global (user settings)
pi install git:gitlab.com/black-snow/pi-model-flash
# or
pi install npm:pi-model-flash
# Project-local (.pi/settings.json)
pi install -l git:gitlab.com/black-snow/pi-model-flash
# Or try it without installing
pi -e git:gitlab.com/black-snow/pi-model-flashUsage
Nothing to configure. Just cycle models:
Ctrl+P— next modelShift+Ctrl+P— previous model
The active model's id flashes in large block letters with the provider name underneath, for about one second. Rapid cycling re-renders the banner in place — keystrokes are never queued behind the popup, because the flash is rendered as a non-capturing UI widget.
Setting a model explicitly via /model or restoring a session does not trigger the flash; only manual cycling does.
How it works
The extension subscribes to pi's model_select event, filters for event.source === "cycle", and renders the model id with a small built-in 5-row block font through ctx.ui.setWidget(...). A debounced timer clears the widget ~1s after the last cycle.
See extensions/model-flash.ts — it's a single self-contained file.
Configuration
There is none yet. If you want to tweak it, the constants at the top of extensions/model-flash.ts are obvious:
FLASH_MS— how long the banner stays up after the last cycle (default1000).FONT— the 5-row block font; add glyphs if a model id uses a character you don't see rendering.
Requirements
pi(the pi coding agent) — provides theExtensionAPIand UI widget host.
@earendil-works/pi-coding-agent is declared as a peer dependency (pi bundles it; do not install it separately).
License
MIT
