Durable by design
Every model call, tool call, queued message, and subagent is a durable task in SQLite. Restart mid-run and the work picks up where it stopped.
Pi Pocket is a durable, multiplayer web app for Pi agents. Run it on your computer or right on your phone, then drive it from any browser: with your team, across restarts, on any model.
git clone https://github.com/TannerMidd/pi-pocket.git
Everything you expect from Pi, plus what a shared, always-on agent needs.
Every model call, tool call, queued message, and subagent is a durable task in SQLite. Restart mid-run and the work picks up where it stopped.
Any number of people and devices can watch and steer one live session, with presence, a side chat, pins, reactions, and shared notes.
Uses Pi's own model runtime and sign-ins. Pick the model and thinking level per session, and sign in to providers from the app.
Streaming answers, tool cards with diffs and live output, push notifications, and an app you can add to your home screen.
Redirect Pi while it works, or queue a follow-up for when it finishes. Withdraw queued messages or stop the run at any time.
Publish sandboxed HTML, Markdown, and SVG artifacts. Spawn background subagents you can open, watch, and talk to.
Pi Pocket runs on Pi Durable. Each step of a run is committed to SQLite before anyone sees it, so a restart, a dropped connection, or a closed tab never loses work.
Share a session with your team or just your other devices. Everyone sees the same live run, and Pi Pocket keeps people from talking over each other.
There is no build step. Ask Pi to change Pi Pocket and watch it happen, without leaving the conversation.
web/
Save a file and every open browser reloads.
src/server/extensions/
Extensions reload into the running server. A broken one keeps its last good version.
src/server/
Restart from the menu. Running work resumes on the other side.
The launcher asks how your devices should connect, then shows a sign-in link and a QR code for your phone.
--access local
Listens on 127.0.0.1. Bring your own tunnel, such as ngrok or tailscale serve.
--access lan
Any device on the same network, over plain http.
--access cloudflare
An https address that works from anywhere. Free, and no account needed.
--access tailscale
Only devices on your tailnet, encrypted by Tailscale.
Runs on Android too: install it in Termux and keep everything on the phone.
An agent with a shell is a serious tool. Pi Pocket keeps people in charge of what it runs.
Steering means shell access. Anyone who can steer can make Pi run commands on your machine. Invite only people you trust with that.
pi and use /login for your provider, or sign in from the app later.# Requires Node.js 22.19 or newer $ git clone https://github.com/TannerMidd/pi-pocket.git $ cd pi-pocket $ npm install $ npm start
$ pkg install nodejs git $ npm install -g --ignore-scripts @earendil-works/pi-coding-agent $ pi # /login, then quit $ git clone https://github.com/TannerMidd/pi-pocket.git $ cd pi-pocket && npm install --ignore-scripts $ termux-wake-lock && npm start