{"_id":"@alasano/pi-panels","_rev":"4-4c0fb09a2460032e293e70a3b85c7d69","name":"@alasano/pi-panels","dist-tags":{"latest":"0.1.2"},"versions":{"0.0.1":{"name":"@alasano/pi-panels","version":"0.0.1","keywords":["pi-package"],"license":"MIT","_id":"@alasano/pi-panels@0.0.1","maintainers":[{"name":"alasano","email":"aljosa.a@gmail.com"}],"homepage":"https://github.com/alasano/house-of-pi#readme","bugs":{"url":"https://github.com/alasano/house-of-pi/issues"},"pi":{"image":"https://raw.githubusercontent.com/alasano/house-of-pi/master/packages/pi-panels/assets/screenshot.png","extensions":["./extensions"]},"dist":{"shasum":"4d004915e6e13c993672c6f4cb4a84b290f52e3b","tarball":"https://registry.npmjs.org/@alasano/pi-panels/-/pi-panels-0.0.1.tgz","fileCount":9,"integrity":"sha512-JOZ7wF5QKbWfVUaqyGgiXo34KrRklvhAHHFHo5y8G+ztRbdDw6/mk8WJu6KBoTnKnoAkZv50/FDFFSQJpamJFA==","signatures":[{"sig":"MEUCIBXdtXGv13GZJ82qqwi0qyiuL9+O0hFsXmlmattRTgdlAiEA8ix2FGRfhFP5tEsUVzDaGVL543AC0rW6kRiCKKKXXf4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":95286},"type":"module","gitHead":"0b9ded4944315ff99440c8e682ec2f810578a667","scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"alasano","email":"aljosa.a@gmail.com"},"repository":{"url":"git+https://github.com/alasano/house-of-pi.git","type":"git","directory":"packages/pi-panels"},"_npmVersion":"11.12.1","description":"Responsive status panels for pi - git info, LLM context usage, and Spotify now-playing below the editor","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"peerDependencies":{"@sinclair/typebox":"*","@mariozechner/pi-ai":"*","@mariozechner/pi-tui":"*","@mariozechner/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-panels_0.0.1_1775239468547_0.9131506777798089","host":"s3://npm-registry-packages-npm-production"}},"0.1.0":{"name":"@alasano/pi-panels","version":"0.1.0","keywords":["pi-package"],"license":"MIT","_id":"@alasano/pi-panels@0.1.0","maintainers":[{"name":"alasano","email":"aljosa.a@gmail.com"}],"homepage":"https://github.com/alasano/house-of-pi#readme","bugs":{"url":"https://github.com/alasano/house-of-pi/issues"},"pi":{"image":"https://raw.githubusercontent.com/alasano/house-of-pi/master/packages/pi-panels/assets/screenshot.png","extensions":["./extensions"]},"dist":{"shasum":"10e742cc95757608174883dc47af8eac5e3b735f","tarball":"https://registry.npmjs.org/@alasano/pi-panels/-/pi-panels-0.1.0.tgz","fileCount":9,"integrity":"sha512-aoa3a1stj3dZcuxgkegDkOIUShAm7UPelV8NwsIyh+p2TzxF0kCv8mA+wIdKAO60FZ2vwDySLBMOTJnJmb+L+w==","signatures":[{"sig":"MEYCIQCvJFs1oW/Q0vVSWIJojkQBdvpZk016yRbz1f5j9dtHUgIhAJ2LgnbQgwnIKl9EXwSJ2R84Ga9ch52HrZgdhLcsMnn5","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":95286},"type":"module","gitHead":"805df9581e1f08b191b9f8934346d48ad19ec7ac","scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"alasano","email":"aljosa.a@gmail.com"},"repository":{"url":"git+https://github.com/alasano/house-of-pi.git","type":"git","directory":"packages/pi-panels"},"_npmVersion":"11.12.1","description":"Responsive status panels for pi - git info, LLM context usage, and Spotify now-playing below the editor","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"peerDependencies":{"@sinclair/typebox":"*","@mariozechner/pi-ai":"*","@mariozechner/pi-tui":"*","@mariozechner/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-panels_0.1.0_1775240053720_0.07056309328498855","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@alasano/pi-panels","version":"0.1.1","keywords":["pi-package"],"license":"MIT","_id":"@alasano/pi-panels@0.1.1","maintainers":[{"name":"alasano","email":"aljosa.a@gmail.com"}],"homepage":"https://github.com/alasano/house-of-pi#readme","bugs":{"url":"https://github.com/alasano/house-of-pi/issues"},"pi":{"image":"https://raw.githubusercontent.com/alasano/house-of-pi/master/packages/pi-panels/assets/screenshot.png","extensions":["./extensions"]},"dist":{"shasum":"f1d72a7d204a17e721ac84180e281f5da43397c5","tarball":"https://registry.npmjs.org/@alasano/pi-panels/-/pi-panels-0.1.1.tgz","fileCount":9,"integrity":"sha512-zVTnz9Dw0bNh0GCZNMHVrVbybaM3BJlEmp7uNZIb6IeDhZf4mm6jdbYwPYVVkEr7oE9AJHSRBfEwhcDncT4OVg==","signatures":[{"sig":"MEUCIA30DGs6KsW9neShtOiVahypU2/5ih6DMy8boubOUAW4AiEAiDvoPvI0xE2L1rNqVmp+IdzfOZaQGdfmgGZ0WIwoXpI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@alasano%2fpi-panels@0.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":95267},"type":"module","gitHead":"61f1d4542b5ed56a37caf599204b85fe882577d5","scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e05fe714-4cd0-4369-b04e-e06ce63bf78f"}},"repository":{"url":"git+https://github.com/alasano/house-of-pi.git","type":"git","directory":"packages/pi-panels"},"_npmVersion":"11.13.0","description":"Responsive status panels for pi - git info, LLM context usage, and Spotify now-playing below the editor","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"devDependencies":{"@earendil-works/pi-tui":"^0.79.9","@earendil-works/pi-coding-agent":"^0.79.9"},"peerDependencies":{"@earendil-works/pi-tui":">=0.79.9","@earendil-works/pi-coding-agent":">=0.79.9"},"_npmOperationalInternal":{"tmp":"tmp/pi-panels_0.1.1_1782011251419_0.2815092289963117","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@alasano/pi-panels","version":"0.1.2","description":"Responsive status panels for pi - git info, LLM context usage, and Spotify now-playing below the editor","keywords":["pi-package"],"license":"MIT","repository":{"type":"git","url":"git+https://github.com/alasano/house-of-pi.git","directory":"packages/pi-panels"},"type":"module","scripts":{"typecheck":"tsc --noEmit"},"pi":{"extensions":["./extensions"],"image":"https://raw.githubusercontent.com/alasano/house-of-pi/master/packages/pi-panels/assets/screenshot.png"},"peerDependencies":{"@earendil-works/pi-coding-agent":">=0.79.9","@earendil-works/pi-tui":">=0.79.9"},"devDependencies":{"@earendil-works/pi-coding-agent":"^0.79.9","@earendil-works/pi-tui":"^0.79.9"},"gitHead":"8acafd0dbf7efb016bd0605aa8196a84715a61bf","_id":"@alasano/pi-panels@0.1.2","bugs":{"url":"https://github.com/alasano/house-of-pi/issues"},"homepage":"https://github.com/alasano/house-of-pi#readme","_nodeVersion":"24.16.0","_npmVersion":"11.13.0","dist":{"integrity":"sha512-xP/jF8JQ1L/Np0thSlYLxAq/Tt7i3skBWG6p52RWhknTT3vRirfOw8uVUV/Yj7lP9jiLeEaRrW/eYD93V18Qlg==","shasum":"cf39f49e0b5c6d59950fe1e3a1eba8241e1265ac","tarball":"https://registry.npmjs.org/@alasano/pi-panels/-/pi-panels-0.1.2.tgz","fileCount":9,"unpackedSize":97945,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@alasano%2fpi-panels@0.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIH7wjS3alDvfI5r/9i7ms2FWnzfDlyvdAStMb/yJ59kSAiEAm4nVof/c+twt6j0vo4+sDYeGuFMbCHJ5d2TMa7LcyWo="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e05fe714-4cd0-4369-b04e-e06ce63bf78f"}},"directories":{},"maintainers":[{"name":"alasano","email":"aljosa.a@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/pi-panels_0.1.2_1782086339451_0.1351437108264817"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-03T18:04:28.448Z","modified":"2026-06-21T23:58:59.879Z","0.0.1":"2026-04-03T18:04:28.703Z","0.1.0":"2026-04-03T18:14:13.866Z","0.1.1":"2026-06-21T03:07:31.641Z","0.1.2":"2026-06-21T23:58:59.604Z"},"bugs":{"url":"https://github.com/alasano/house-of-pi/issues"},"license":"MIT","homepage":"https://github.com/alasano/house-of-pi#readme","keywords":["pi-package"],"repository":{"type":"git","url":"git+https://github.com/alasano/house-of-pi.git","directory":"packages/pi-panels"},"description":"Responsive status panels for pi - git info, LLM context usage, and Spotify now-playing below the editor","maintainers":[{"name":"alasano","email":"aljosa.a@gmail.com"}],"readme":"# pi-panels\n\n![pi-panels screenshot](assets/screenshot.png)\n\nResponsive status panels rendered below the editor in [pi](https://pi.dev). Three panels ship out of the box, each independently toggleable:\n\n- **GIT** - worktree name, branch, upstream tracking (shown only when non-default), ahead/behind counts\n- **INFO** - LLM context usage bar (color-coded from green to red as you approach the context window limit), active model and thinking level\n- **NOW PLAYING** - Spotify track, artist, and progress bar with animated fill (hidden automatically when Spotify is not running)\n\nPanels auto-size to their content, render side-by-side when terminal width allows, and fall back to a stacked layout on narrow terminals.\n\n## Install\n\n```bash\npi install npm:@alasano/pi-panels\n```\n\n## Commands\n\n| Command                  | Description                                           |\n| ------------------------ | ----------------------------------------------------- |\n| `/status-panels`         | Open the settings overlay to toggle individual panels |\n| `/status-panels on\\|off` | Enable or disable all panels                          |\n\n## Settings overlay\n\nRunning `/status-panels` with no arguments opens a centered overlay where you can enable or disable each panel individually using checkbox toggles. Typing any character dismisses the overlay and passes the keystroke to the editor.\n\n## Preferences\n\nPanel visibility preferences are persisted at `~/.pi/agent/state/extensions/status-panels/config.json` and restored on session start. Default behavior on first run is all panels enabled.\n\n## Refresh behavior\n\n- Git info refreshes every 5 seconds and immediately after each agent turn\n- LLM context and model info update on turn end and model switch\n- Spotify polls every 1 second while playing, every 2.5 seconds when idle\n- The rendering loop ticks every 250ms to keep the Spotify progress bar smooth\n\n## Requirements\n\n- macOS (Spotify integration uses osascript/AppleScript)\n- Pi interactive mode (panels use the widget API which is unavailable in print/RPC mode)\n","readmeFilename":"README.md"}