基于Electron+Rust的本地AI编程Agent桌面应用,支持Bring Your Own Model,不依赖账号和云服务,可管理项目、会话、文件、插件和长时间运行任务,兼容OpenAI/Anthropic及本地模型。
你的本地优先桌面工作区,专为 AI 编程 Agent 设计。
携带你自己的模型。打开任何本地项目。让 Agent 工作——而你始终掌控全局。
无需 PI-Desktop 账号。无需强制中转。不绑定任何编辑器。
Download PI-Desktop · Documentation · Screenshots · 简体中文
一个独立的桌面工作区,服务于编程 Agent、项目、模型、工具和长时间运行的会话。
PI-Desktop 目前处于早期预览阶段。
项目正在积极开发中,已可用于真实的编码工作流,但 API、扩展接口和一些桌面行为可能继续演进。
大多数编程 Agent 生活在终端内、编辑器扩展里,或托管服务中。
PI-Desktop 为它们提供了一个专属的工作区。
跨仓库和会话工作,而不必将 Agent 工作流绑定到某个编辑器或终端。
项目、对话、评审、文件、预览、通知和扩展都汇聚在一个工作区中。
✨ 携带你自己的模型
使用 OpenAI、Anthropic、本地模型、托管网关或任何 OpenAI 兼容 API。
配置多个提供商和模型,然后在每个会话中切换它们。
🔍 默认可审查
Agent 可以读取文件、编辑代码和运行命令——但特权操作会经过 PI-Desktop 的权限层。
审查 diff、检查命令输出,并决定每个会话获得多少自主权。
添加 Skills、MCP 服务器、Subagents 和可安装的 Plugins。
Plugins 可以贡献工具、命令、面板、主题、服务、skills 和全新的工作区体验。
入门只需几个步骤:
连接模型 打开 Settings → Model configuration,选择提供商或兼容的 API,然后添加你的凭证。
连接模型 打开 Settings → Model configuration,选择提供商或兼容的 API,然后添加你的凭证。
打开项目 从侧边栏添加任意本地仓库或项目目录。
打开项目 从侧边栏添加任意本地仓库或项目目录。
选择 Agent、Plan 或 Goal Agent 开始工作。Plan 会等待你批准一份冻结的实施计划。Goal 会等待你批准结果,然后由 Agent 选择路径。
选择 Agent、Plan 或 Goal Agent 开始工作。Plan 会等待你批准一份冻结的实施计划。Goal 会等待你批准结果,然后由 Agent 选择路径。
审查结果 在 Review 面板中检查编辑内容,查看命令输出,预览应用程序,并在 PI-Desktop 内继续对话,无需离开。
审查结果 在 Review 面板中检查编辑内容,查看命令输出,预览应用程序,并在 PI-Desktop 内继续对话,无需离开。
不仅仅是聊天窗口
Agent、Plan 和 Goal
同一个 Agent。三种关卡。特权工具在每种模式下都仍然经过权限层。
Agent 是默认循环:检查树、补丁文件、运行命令,然后继续。
Plan 是审批边界。Agent 先研究并生成一份不可变的实施计划。在你签署之前不会开始执行。
Goal 优先关注结果。你锁定目标和验收标准;Agent 决定如何到达那里。
将工作委托给 Subagents
大型任务很少应该放在一个上下文窗口中。
PI-Desktop 可以将独立的工作委托给后台 Subagents,例如:
多文件实现
研究和调查
每个 Subagent 在自己的上下文中运行,并将结果汇报给父 Agent。
为长时间会话构建的工作区
PI-Desktop 的设计超越了单次提示。
你可以管理多个项目和会话、置顶或归档对话、创建会话分支、在 Agent 运行时排队提示、使用 @ 引用文件、使用斜杠命令,以及在整个应用中搜索。
流式响应会被checkpoint,以便在可能的情况下让中断的工作在应用重启或运行时故障后得以恢复。
你的模型,你来选
PI-Desktop 不会将 Agent 运行时锁定在硬编码的模型列表中。
OpenAI 兼容 API
托管模型网关
本地网关,如 Ollama 和 LM Studio
同一提供商下的多个模型
提供商 OAuth 账户(如果支持)
模型配置可以包含上下文窗口、输出限制、推理控制、温度和其他模型特定行为。
直接从 Composer 切换模型,无需重建你的会话。
审查工作,而不仅仅是答案
Agent 工作区为编码时重要的内容提供了专属界面:
带有转录导航的长时间对话
每个会话切换提供商、模型和推理级别
通过插件市场扩展工作区
添加提供商并连接模型
探索所有截图 →
无需重建应用即可扩展
PI-Desktop 有多个扩展层,取决于你想以多深的程度自定义 Agent。
赋予 Agent 可重用的指令和工作流。
Skills 可以全局安装或为单个项目激活。
通过 Model Context Protocol 服务器连接外部工具和服务,而无需将它们构建到桌面应用中。
PI-Desktop 也可以由外部 MCP Agent 控制。用 PI_DESKTOP_MCP_CONTROL=1 启动应用;然后从 Electron 用户数据目录中的 mcp-control.json 读取回环端点和 bearer token。该端点支持 project/session/Agent 工作流和已审查的桌面操作目录。它默认禁用,仅绑定回环,并为调用的本地 Agent 授予与桌面相同的操作权限——confirm: true 不是用户提示。
创建具有自己指令、工具和模型选择的专用 Agent,然后将工作委托给它们。
Plugins 可以用以下方式扩展 PI-Desktop:
插件间消息传递
Plugins 可以本地安装或通过市场使用 .piplug 包工作流安装。
插件进程受权限控制并与渲染进程隔离,但插件仍然是用户信任的代码,而非完整的操作系统沙箱。只安装你信任的插件。
构建你的第一个插件 →
本地优先,精确来说
PI-Desktop 是本地优先,而不是"什么都不接触网络"。
无需必需的 PI-Desktop 账号,在你的机器和模型提供商之间也没有强制的 PI 托管中转。
如果你使用远程模型提供商,根据其自身的隐私策略,为该模型请求所需的上下文会自然地发送到该提供商。
从 GitHub Releases 下载最新的构建。
打包的构建可以检查 GitHub Releases 更新,并在应用内展示新版本。Windows NSIS 和 Linux AppImage 可以下载并在应用内安装;macOS、Linux deb/rpm 和 Windows 便携版 exe 会打开 releases 页面。Linux .asar 资产可用于使用系统 Electron 重新打包;将所需的原生主机和打包资源添加到目标发行版后,用 electron PI-Desktop-<version>-linux-x64.asar 启动。
Linux x64 包需要 glibc 2.35 或更高版本。这是以下系统附带的库:
Ubuntu 22.04 或更高版本
Ubuntu 20.04、Debian 11、Fedora 35 及更早的发行版无法加载捆绑的主机。用 ldd --version 检查。
tagged-release 工作流默认发布未签名的 macOS 产物。对于可信的未签名安装,将 PI-Desktop.app 移动到 Applications,如果 macOS 提示应用已损坏,双击 PI-Desktop-macOS-open.command。通过 sign_macos: true 手动分发的运行会使用 Developer ID 凭证对 macOS 产物进行签名、公证和加钉;签名后的构建不需要辅助程序。
导入你现有的会话
已经在使用另一个编程 Agent?
PI-Desktop 可以从支持的工具导入本地会话,包括:
打开 Settings → Import 将现有工作带入桌面工作区。
PI-Desktop 有意将用户界面、特权主机功能和 Agent 循环分离。
flowchart TB
UI["React Renderer<br/>Chat · Projects · Reviews · Settings"]
Electron["Electron Main<br/>Desktop orchestration"]
Rust["Rust Host Core<br/>Permissions · Filesystem · SQLite · Secrets"]
Agent["pi Agent Sidecar<br/>Agent loop · Models · Streaming"]
Provider["Model Provider<br/>Cloud or Local"]
UI --> Electron
Electron --> Rust
Electron --> Agent
Agent <--> Rust
Agent --> Provider
渲染进程没有 Node 集成。
Rust Host Core 拥有特权工作区操作、权限、持久化和密钥。pi Agent Sidecar 拥有模型交互和 Agent 循环。Electron 协调桌面生命周期,同时保持这些职责分离。
阅读架构规范 →
PI-Desktop 是处于积极开发中的早期预览版。
当前的 0.14.x 系列包含桌面 Shell、流式 Agent 运行时、Agent / Plan / Goal 工作流、权限感知工作区工具、项目和会话、会话导入、本地 MCP 控制、MCP / Skills / Subagents、后台委托、多提供商模型配置、插件和市场支持、上下文 checkpoint、通知、发布说明和跨平台打包。
当前优先级包括:
macOS tagged-release 资格认证
安装程序升级和回滚资格认证
持续的运行时和会话恢复加固
更强的插件沙箱和发布者验证
更广泛的 UI 驱动端到端覆盖
通过项目面板和里程碑关注开发进展。
稳定的 Rust 工具链
仓库当前固定 pnpm 11,而 CI 和发布构建使用 Node 24。
git clone https://github.com/vastsa/PI-Desktop.git
cd PI-Desktop
pnpm install
cargo build -p host-core
pnpm build:js
pnpm dev
pnpm typecheck
pnpm lint
pnpm test
额外的协议、Plan、监督、Subagent 和 Electron E2E 套件在仓库规范中有记录。
pnpm docs:dev
pnpm docs:check
仓库 Agent 指南
欢迎提交 Issue、错误报告、功能提案、文档改进和 Pull Request。
对于更大的更改,先开一个 Issue 可以更容易地将实现与现有架构和产品契约对齐。
在仓库中工作时,从 AGENTS.md 和规范索引开始。
报告问题 · 查看开放问题
PI-Desktop 构建在开源生态系统的优秀工作之上。
Agent 运行时使用来自 pi-mono 的 pi-ai 和 pi-agent-core。
桌面应用程序使用以下技术构建:Electron、React、TypeScript、Rust、SQLite、Vite、Tailwind CSS、Shiki、Mermaid、KaTeX、TypeBox 和 i18next。
感谢每一个使 PI-Desktop 成为可能的项目和贡献者。
模型致谢
本项目由以下模型创建——不是由一个孤独的天才,而是由一个由 token 驱动的建设团队。
列出模型的总额:27,144,044,009 tokens。
Linux.Do —— 一个分享和讨论技术的社区。
PI-Desktop 采用 GNU Lesser General Public License v3.0 许可。
详见 LICENSE。
用你想要的模型构建。保留自己的工作流。
macOS · Windows · Linux
PI-Desktop 的 Windows 版本使用 SignPath.io 提供的免费代码签名进行数字签名,证书来自 SignPath Foundation。