
Description
Use AI coding tools long enough and the same flaw shows up in all of them: your work is treated as a throwaway chat. Close the window and the context is gone. Switch models and everything you tuned is reset. Run two unrelated jobs at once and you are keeping two windows reconciled in your head. PI-Desktop organises the work as Project → Session → Agent → Work instead. Sessions survive application restarts, can be pinned, archived, branched and searched, and you can queue the next prompt while the agent is still running.
It also refuses to bet on one model. OpenAI, Anthropic, any OpenAI-compatible API, custom gateways, Ollama and LM Studio local models all plug in; each session picks its own, and a session can switch mid-flight — plan with one, write code with another, move a sensitive task to a local model — without rebuilding the workflow. Almost everything beyond the core is a plugin, so what you install is what the desktop becomes.
Three ways to work: in Agent mode you hand over a task and it reads code, edits files, runs commands and iterates. Plan mode studies the project and produces an implementation plan before touching anything, which is what you want for a refactor. Goal mode locks the objective and the acceptance criteria and lets the agent choose the route — built for long-running work.
Subagents and session orchestration: complex work should not be crammed into one context window. Independent background jobs go to Subagents, each with its own context, reporting back when done. Longer work goes to the Session Orchestrator, which runs full Worker Sessions in parallel — frontend, backend, tests, review — every one of them a complete, inspectable session with its own context and full transcript.
A plugin can be a whole product: plugins are not limited to "one more tool". They add commands, panels, floating widgets, work panel views, agent tools, completions, skills, themes, MCP servers, resident background services and a message bus between plugins. A voice assistant plugin can ship a floating orb, a speech service, an agent tool and a set of commands together, packaged as a .piplug file or installed from the marketplace.
The work panel on the right: the review tab lists which files this round touched and how many lines each gained or lost, and opens the diff on a click. File and browser views sit alongside it, and command output is inspectable in place, so you can see what the agent actually did without leaving the session.
A permission layer in front: every plugin card states what it wants — modify files, read files, reach the network, spawn processes — in plain sight, and privileged operations pass through that layer before they run.
Bring existing sessions with you: local sessions from Claude Code, Codex, OpenCode and Pi import directly, so changing tools does not mean abandoning the record.
Local first: an Electron shell over a Rust host core, projects staying on your own machine, LGPL-3.0 licensed, with builds for macOS, Windows and Linux.
It also refuses to bet on one model. OpenAI, Anthropic, any OpenAI-compatible API, custom gateways, Ollama and LM Studio local models all plug in; each session picks its own, and a session can switch mid-flight — plan with one, write code with another, move a sensitive task to a local model — without rebuilding the workflow. Almost everything beyond the core is a plugin, so what you install is what the desktop becomes.
Features
Three ways to work: in Agent mode you hand over a task and it reads code, edits files, runs commands and iterates. Plan mode studies the project and produces an implementation plan before touching anything, which is what you want for a refactor. Goal mode locks the objective and the acceptance criteria and lets the agent choose the route — built for long-running work.
Subagents and session orchestration: complex work should not be crammed into one context window. Independent background jobs go to Subagents, each with its own context, reporting back when done. Longer work goes to the Session Orchestrator, which runs full Worker Sessions in parallel — frontend, backend, tests, review — every one of them a complete, inspectable session with its own context and full transcript.
A plugin can be a whole product: plugins are not limited to "one more tool". They add commands, panels, floating widgets, work panel views, agent tools, completions, skills, themes, MCP servers, resident background services and a message bus between plugins. A voice assistant plugin can ship a floating orb, a speech service, an agent tool and a set of commands together, packaged as a .piplug file or installed from the marketplace.
The work panel on the right: the review tab lists which files this round touched and how many lines each gained or lost, and opens the diff on a click. File and browser views sit alongside it, and command output is inspectable in place, so you can see what the agent actually did without leaving the session.
A permission layer in front: every plugin card states what it wants — modify files, read files, reach the network, spawn processes — in plain sight, and privileged operations pass through that layer before they run.
Bring existing sessions with you: local sessions from Claude Code, Codex, OpenCode and Pi import directly, so changing tools does not mean abandoning the record.
Local first: an Electron shell over a Rust host core, projects staying on your own machine, LGPL-3.0 licensed, with builds for macOS, Windows and Linux.


