@everyx/pi-ui

Shared TUI building blocks for pi extensions — spinner, card, status widget, view, ticker, context stash, width safety, preview runtime.

Packages

Package details

package

Install @everyx/pi-ui from npm and Pi will load the resources declared by the package manifest.

$ pi install npm:@everyx/pi-ui
Package
@everyx/pi-ui
Version
1.2.0
Published
Sep 11, 2026
Downloads
1,049/mo · 111/wk
Author
every.x
License
MIT
Types
package
Size
55.6 KB
Dependencies
0 dependencies · 2 peers

Security note

Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.

README

pi-ui

Shared TUI primitives for the @everyx pi packages — a published library, not an extension (no pi.extensions entry, no index.ts barrel).

Packages import per-module deep paths: @everyx/pi-ui/card.js (note: published as raw .ts, so .js resolves to the module by name). Only the imports other packages actually use are public API.

module content
card.js card header / body / fold rendering, status icons, cardShell, renderCard
view.js createToolView — tool-result card template
widget.js StatusWidget — live status rows (agents widget)
spinner.js Spinner, durationMeta / formatDuration; re-exports clipTail / safeTitle
ticker.js ticker — periodic timer helper
width.js width safety — safeTitle, clipTail, capPlain, structRow
context.js context-stash helpers (stash large payloads out of LLM context)
preview-runtime.js dev-only preview runtime (storybook)

Design intent and requirements: SPEC.md.