pi-cozy-ui
Cozy UI for Pi — left-bar input box, startup screen, and cozy themes
Package details
Install pi-cozy-ui from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:pi-cozy-ui- Package
pi-cozy-ui- Version
0.3.3- Published
- Jul 26, 2026
- Downloads
- 1,200/mo · 1,200/wk
- Author
- wannfq
- License
- MIT
- Types
- extension, theme
- Size
- 28.1 KB
- Dependencies
- 0 dependencies · 2 peers
Pi manifest JSON
{
"image": "https://raw.githubusercontent.com/wannfq/pi-cozy-ui/main/docs/preview.png",
"extensions": [
"./extensions/input-field.ts",
"./extensions/startup-screen.ts"
],
"themes": [
"./themes"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
pi-cozy-ui
A cozy UI for Pi — a minimal input box, startup screen, and cozy themes.
Inspirations:
- OpenCode input box
- Catppuccin color palette
Install
pi install npm:pi-cozy-ui
Then enable/disable modules in the resource config TUI:
pi config
Themes
The package includes two Catppuccin-inspired cozy themes that also style the thinking-level input border:
cozy-dark— a soft Mocha-inspired dark palettecozy-light— a warm Latte-inspired light palette
Select either theme from /settings after installation.
Recommended settings
For the best experience:
- Move
pi-cozy-uiafter packages that customize Pi's input or startup screen inpi config. Placing it last is a good default, but isn't required. - Select either
cozy-darkorcozy-lightfrom/settings. - Enable quiet startup to suppress Pi's default banner; the startup screen module replaces it with a cleaner centered header.
pi config
In the config TUI, set quietStartup to true. Or add it directly to ~/.pi/agent/settings.json:
{
"quietStartup": true
}
Preview

Develop
pnpm install
pnpm dev
# = pi --no-extensions -e ./extensions/input-field.ts -e ./extensions/startup-screen.ts
Edit, then type /reload inside pi for live updates.
Layout
| File | Purpose |
|---|---|
extensions/input-field.ts |
Custom editor: left-bar input box with an embedded muted status row. |
extensions/startup-screen.ts |
Startup header: centered ASCII "pi" icon and version. |
lib/text-layout.ts |
Pure ANSI-aware text helpers used by both extensions. |
lib/editor-layout.ts |
Pure composer for the minimal editor layout. |
themes/cozy-dark.json |
Catppuccin-inspired dark theme. |
themes/cozy-light.json |
Catppuccin-inspired light theme. |
Test
pnpm test
Type-check
pnpm check