pi-web

Web UI for the pi coding agent

278 articles 2.1k View on GitHub ↗
278 articles
How Project-Trust Validation Prevents Unauthorized File Access in Pi Web

Discover how Pi Web's project-trust validation stops unauthorized file access using trust gating and path-allowlist enforcement. Secure your workspace today.

security
Aug 18, 2026
How Pi-Web's `samePath()` Handles Windows vs POSIX Path Security

Learn how Pi-Web's samePath handles Windows and POSIX path security with case-insensitive and sensitive comparisons for secure file path handling.

deep-dive
Aug 18, 2026
Pi‑Web Context Menu Extension Hook: How Downstream Integrations Work

Discover how the Pi-Web context menu extension hook enables downstream integrations. Learn to extend, modify, or replace session row context menus without core application coupling. agegr/pi-web.

how-to-guide
Aug 18, 2026
How OAuth Device-Code Flow Streams Through SSE in Pi-Web Auth Routes

Learn how the Pi-Web app streams OAuth device-code flow progress using Server-Sent Events SSE in Next.js auth routes for real-time browser updates without polling.

deep-dive
Aug 18, 2026
How the FileViewer Handles Automatic Refresh for Different File Types in pi-web

Discover how pi-web's FileViewer uses Server-Sent Events to automatically refresh different file types, ensuring live updates via a bust counter on change events.

internals
Aug 18, 2026
How the Sidebar Polls `/api/agent/running` and Pauses in Background Tabs

Learn how the sidebar polls agent running status and pauses in background tabs. Discover efficient network request handling to save CPU and bandwidth.

internals
Aug 18, 2026
How `globalThis.__piSessions` Survives Next.js Hot-Reload in Pi Web

Discover how globalThis__piSessions survives Nextjs hot reload in Pi Web. Pi Web keeps active sessions in a global object that persists through module updates, ensuring continuity.

internals
Aug 18, 2026
How Pi Web's `.jsonl` Session Files Store Branching History: A Complete Technical Guide

Explore how Pi Web's .jsonl session files store branching history using parentSession headers and in-file branch summaries with parentId linkage. Learn the technical details.

technical-guide
Aug 18, 2026
How Session Export Generates Iterative Tree Helpers to Prevent Stack Overflow in pi-web

Learn how pi-web session export prevents stack overflow by patching recursive tree traversal with iterative stack-based helpers for rendering deeply nested sessions.

internals
Aug 18, 2026
How the Completion Sound Unlocks and Plays in the useAudio Hook: A Technical Deep Dive

Discover how the useAudio hook unlocks and plays completion sounds. Explore its three-stage workflow from localStorage initialization to AudioContext activation and tone synthesis.

deep-dive
Aug 18, 2026
How Dual-Auth Provider Handling Works in `provider-listing.ts`

Learn how dual-auth provider handling works in provider-listing.ts. Discover dynamic SDK definitions, API-key and OAuth lists, and UI toggles for authentication methods.

internals
Aug 18, 2026
How Plugins and Skills Are Managed Through Different API Routes in Pi-Web

Discover how Pi-web manages plugins and skills using distinct API routes. Learn about specialized endpoints and backend logic for NPM packages and markdown skill files.

internals
Aug 18, 2026
…

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →