Stream live sessions
Every token, tool call, and file change streams to your browser in real time. No polling, no refresh.
PizzaPi is a self-hosted relay server and web UI that wraps the pi coding agent. It streams every event from your local agent session to a browser in real time — so you can monitor, interact, and review code changes from your phone, tablet, or another computer.
Stream live sessions
Every token, tool call, and file change streams to your browser in real time. No polling, no refresh.
Control from anywhere
Send messages to the agent, manage runners, and spawn new sessions from mobile or desktop — no terminal required.
Self-hosted & private
Deploy your own relay with Docker Compose. Your code and API keys stay on your infrastructure.
Headless runner daemon
Spawn agent sessions on demand from the web UI or via the spawn_session tool — no terminal session needed.
PizzaPi goes beyond basic terminal access to give you a full remote development experience:
📱 Installable PWA
Install PizzaPi as a Progressive Web App on your phone or tablet. Get a native app experience with offline support and home screen access.
🔔 Push Notifications
Get notified when sessions complete, agents need input, or errors occur — even when the browser tab is closed.
💬 Inter-Agent Messaging
Agents can communicate with each other via send_message and wait_for_message. Orchestrate complex multi-agent workflows from the UI.
🖥️ Multi-Runner Support
Connect multiple dev machines (runners) to a single relay. Switch between them from the web UI and manage all your projects in one place.
Install the CLI on your dev machine
Run npx @pizzapi/pizza (or install globally). The CLI wraps the pi coding agent and adds relay streaming.
Connect to a relay server
On first run, the setup wizard asks for your relay URL and credentials. The CLI opens a persistent WebSocket connection and streams all session events.
Open the web UI in any browser
Navigate to your relay’s URL. You’ll see live token streaming, tool call results, file diffs, and a chat input — all in real time. Works on desktop and mobile.
# Run without installing (npx)npx @pizzapi/pizza
# — or — install globallynpm install -g @pizzapi/pizzapizzapi| Layer | Technology |
|---|---|
| Agent Core | pi coding agent by Mario Zechner |
| Runtime | Bun |
| Server | Bun.serve, better-auth, Kysely + SQLite, Redis |
| Web UI | React 19, Vite 6, TailwindCSS v4, Radix UI / shadcn/ui |
| Notifications | Web Push (VAPID) |
| Deployment | Docker Compose |