Chisle
The coding-agent plugin that bills 52% of a bare model across 20 live tasks. Terse persona + tool-output compressor + context diet.
翻訳待ち
Web UI for the pi coding agent
翻訳待ち
開発ツールTypeScript · JavaScriptGitHub @agegr自分でインストール所有者未確認
Paste into Claude or ChatGPT for installation instructions suited to your environment.
Have you tried it? One tap is enough. No sign-in needed.
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗Local browser UI for the pi coding agent. Pi Web uses the same local configuration and session files as pi, so you can browse and resume conversations, run agent turns, configure models and resources, and inspect project files from a browser.
Try the interactive demo → The real Pi Web UI runs entirely in your browser, with sample sessions, files and models. There is nothing to install; replies are pre-written and no model is called.
Pi Web requires Node.js 22.19.0 or newer. Check your version with node --version, then run:
npx @agegr/pi-web@latest
The CLI opens a browser after the server is ready. If it does not, open http://127.0.0.1:30141. Pi Web listens only on 127.0.0.1 by default.
If no model provider is configured yet, open the Models panel to sign in or add an API key.
To install the pi-web command globally:
npm install -g @agegr/pi-web@latest
pi-web
Commands:
pi-web version # print the installed version
pi-web status # list running servers
pi-web stop [--port N] # stop a running server
pi-web open [--port N] # open a running server in the browser
pi-web update [--check] # update a global npm install
To update, run pi-web stop, then pi-web update (or run the same install command again). To uninstall, run npm uninstall -g @agegr/pi-web.
For port and hostname, command-line options override the corresponding environment variables. Either --no-open or PI_WEB_NO_OPEN=1 disables automatic browser opening. Run pi-web --help (or -h) to print startup options and exit without starting the server. Unknown options exit with an error.
| Option or environment variable | Purpose | Default |
|---|---|---|
--help, -h | Print startup options and exit | — |
--port <port>, -p <port>, or PORT | Server port | 30141 |
--hostname <host>, -H <host>, or PI_WEB_HOSTNAME | Bind hostname | 127.0.0.1 |
--no-open or PI_WEB_NO_OPEN=1 | Do not open a browser automatically | Browser opens |
PI_WEB_APP_NAME | PWA manifest name and short_name; surrounding whitespace is trimmed, empty values use the default | Pi Web |
PI_WEB_SKIP_VERSION_CHECK=1 | Disable Pi Web update checks | Unset |
PI_WEB_ALLOWED_HOSTS | Additional exact proxy or custom hostnames, comma-separated | Unset |
PI_WEB_PASSWORD | Enable browser password login; API clients may use Basic Auth with username pi | Authentication disabled |
PI_WEB_IDLE_TIMEOUT_MS | Session idle timeout in milliseconds, up to 2147483647; 0 disables idle shutdown; invalid or out-of-range values use the default | 600000 (10 min) |
PI_WEB_SHUTDOWN_DEADLINE_MS | How long extensions get to handle session_shutdown before a closing session is disposed anyway, in milliseconds up to 2147483647; 0, invalid or out-of-range values use the default | 5000 (5 s) |
PI_CODEMODE_MAX_WORKERS | pi's limit on codemode scripts running at once, shared by every session and subagent in the server; pi's own default is 2, and pi-web sets 8 when the variable is unset or empty. Each script may use up to 256 MB | 8 |
Set PI_WEB_APP_NAME before starting the server (for example, PI_WEB_APP_NAME='Work Pi' pi-web). After changing it, restart the server to serve the new manifest; no rebuild is required. Updates to the name of an already installed PWA are managed by the browser and are not guaranteed to appear immediately. This does not change the page title or icons.
For example:
pi-web --help
pi-web -p 8080 -H 0.0.0.0 --no-open
Binding to a non-loopback address exposes an agent that can execute high-privilege actions. On a trusted LAN, require a long random password:
PI_WEB_PASSWORD='a-long-random-password' pi-web --hostname 0.0.0.0
Password authentication does not encrypt the connection. Do not expose Pi Web over plain HTTP to the internet; use HTTPS through a trusted reverse proxy or a trusted VPN. If a reverse proxy sends an external hostname, add that exact name to PI_WEB_ALLOWED_HOSTS. This allow-list does not change the address Pi Web binds to.
With many chats, terminals or file previews active at once, plain HTTP limits the browser to six connections and requests start to wait; see Serving Pi Web over HTTP/2.
Each release publishes an image to ghcr.io/agegr/pi-web. See Running Pi Web in Docker for it, the Compose example and which volumes to keep.
Server-side model and API requests honor the standard HTTP_PROXY, HTTPS_PROXY, and NO_PROXY environment variables.
On macOS or Linux:
This is the beginning of the README. Read the rest at the original. Read the full README ↗