Pi Desktop
A polished, multi-tab desktop GUI for the Pi coding agent. Open it and start typing β no terminal, no Node.js, no setup.

Everything you need
A complete desktop coding environment. No terminal required, no compromises.
Launches into Chat
Open the app and start typing β no folder picker, no setup. A Chat / Code toggle switches to full project sessions the moment you need them.
Convert to Code
Turn any conversation into a real project session. Pick a folder and the whole chat is carried forward as context β nothing lost.
Multi-Tab Sessions
Run many isolated agent sessions at once, like browser tabs. Each keeps its own model, working folder, history, and context.
Web Search Built In
Flip on web search mid-conversation with zero config. Add your own Exa, Perplexity, or Gemini keys for more power.
Never Overflows
Per-session auto-compaction summarizes old context before it hits the limit. A live usage meter shows exactly where you stand.
Bring Any Model
Presets for Claude, GPT/Codex, GLM, MiniMax, MiMo, and Grok β plus your own. Per-tab switching with thinking-level control.
GitHub Integration
Create or attach repos and push/pull with visual sync status β plus a badge that glows the moment a session has unpushed changes.
Extensions & Skills
Browse, install, and remove Pi packages right in the app. Memory, subagents, plan mode, web access β one click each.
Private & Native
Native macOS vibrancy, System / Dark / Light themes, and seven accents. Keys and tokens encrypted at rest in the macOS keychain.
See it in action
A desktop coding experience designed for flow state.
Natural conversation with your code
Real-time streaming responses with markdown rendering, syntax-highlighted code blocks, and collapsible tool outputs. Smart auto-scroll keeps you focused.
Add error handling to the API routes and write tests
I'll add comprehensive error handling and create tests for your API routes. Let me start by examining the current structure.
Extend everything
Install powerful extensions from the Pi ecosystem. One click from the Packages tab, or use the CLI.
pi-memory
Persistent memory across sessions. Learns corrections, preferences, and coding patterns automatically.
pi install @samfp/pi-memorypi-subagents
Delegate work to focused child agents β reviewer, planner, worker, scout, and oracle roles.
pi install pi-subagentspi-plan-mode
Codex-like plan mode. Plan before executing β review the approach, then approve to run.
pi install @narumitw/pi-plan-modepi-web-access
Web search and content fetching for the agent. Search the web, fetch docs, and read URLs.
pi install pi-web-accesscontext-mode
Context management with semantic indexing. Save tokens with smart context compression.
pi install context-modeMore on npm
Browse the full Pi package registry. New extensions published by the community every week.
Browse npm βWhat's new
Shipping fast. Here's what landed in the latest releases.
- βStart Chattingβ reuses the current tab instead of opening a duplicate, and focuses the prompt immediately.
- Glowing input border now appears reliably on every empty chat β no app restart needed.
- One-click in-app updates: the DMG downloads in-app with a live progress bar, then opens the installer in Finder.
- Sidebar version badge is single-sourced from package.json, so it canβt drift out of sync.
- π Public release β the full codebase is now open source on GitHub.
- Anonymous in-app update checks against the GitHub releases API β no token, no setup.
- Major performance overhaul: 5-second UI freezes eliminated and the renderer bundle nearly halved.
- Upgraded to Pi SDK 0.80.3 (Claude Sonnet 5, GPT-5.5 default) with reasoning-token counts in the cost tooltip.
- Security audit remediation: fixed shell command injection in GitHub and package operations.
- Per-tab event routing hardened β events without a tab ID are dropped instead of hitting the active tab.