返回博客2026年9月12日1 分钟阅读

一天多了 545 颗星,PI-Desktop 想把 Coding Agent 从终端搬进可控的桌面

摘要

PI-Desktop 在 GitHub Today 拿到 +545 stars,当天又发布 v0.14.7-beta.1。它把多模型、技能、MCP、子 Agent 和权限确认收进本地桌面,但仍是一款需要审慎安装的早期预览软件。

北京时间 9 月 12 日清晨,PI-Desktop 在 GitHub Trending Today 显示 +545 stars,仓库累计 2,750 stars。同一天,它发布了 v0.14.7-beta.1:计划模式中的插件工具、子 Agent 输出 token 上限、工具传输中断后的恢复,都在这版的变更里。数字记录的是 GitHub 的 Today 窗口,不是全天结算;累计 star 也不能拿来倒推日增量。GitHub Trending、仓库 API 和 v0.14.7-beta.1 发布说明 可以分别核对。

我想借 PI-Desktop 看一个正在变得具体的问题:当 Coding Agent 能读文件、改代码、跑命令、调用 MCP,还会把任务交给子 Agent 时,终端或编辑器侧栏是否还是足够好的控制面?这个项目的答案是把 Agent 放进独立桌面工作区,同时把权限、会话、计划和审阅一起做成产品表面。期望对大家有所帮助。

它不是另一个模型入口

PI-Desktop 是 Electron、React 与 Rust 组成的本地桌面应用,Agent 运行时则复用 pi-ai 和 pi-agent-core。它允许用户配置 OpenAI、Anthropic、兼容 API 或本地网关,并在同一个工作区管理项目、会话、文件、预览、变更审阅、Skills、MCP、插件和子 Agent。README 与 架构说明 把这层分工写得很清楚。

它的重点不是替模型做决定,而是把模型执行时周围的状态留下来。会话记录保存为本地 JSONL,并用 SQLite 建索引;模型凭据交给系统 keychain;没有项目账号或强制中转服务。远程模型请求仍会发送到用户配置的提供方,所谓“local-first”不能被理解成“不联网”。数据与网络边界 是尝试前必须读的一段。

flowchart LR
  A[React 桌面界面] --> B[Electron 主进程]
  B --> C[Rust Host Core]
  B --> D[pi Agent Sidecar]
  C --> E[权限、工作区、SQLite、密钥]
  D --> F[模型调用与工具编排]

这个拆分带来的实际好处是:渲染界面不直接拿 Node 或文件系统权限,带副作用的工具由 Rust host 根据会话模式和权限策略评估。用户看的不只是一段聊天记录,还可以看到工具调用、命令输出和 diff。它并不自动证明工具安全,但至少把“谁能做什么”放在可见的界面和可审阅的实现边界上。

Plan、Goal 与 Agent 不是三套机器人

产品把工作方式分成 Agent、Plan 和 Goal。它们仍是同一个 pi Agent,只是对何时越过执行边界有不同约束:Plan 先生成并冻结实现计划,等待单独批准;Goal 先约定目标和验收条件,批准后再由 Agent 选择执行路径;Agent 模式则按当前权限策略执行工具。产品范围说明 特别强调,这些不是严格的只读安全沙箱:例如 Plan 下的 Bash 在某些权限策略中仍可能修改工作区。

这段提醒比模式名称重要。把一个按钮叫作“Plan”并不等于它天然安全,真正要看的是:哪些工具可用、命令是否要确认、批准记录放在哪里、进程中断后会不会自动重放。项目的设计是把已提交计划原文写入项目的 .pi/plan/,记录哈希和大小,再由独立批准把会话切换回执行状态。请求路径设计 提供了可检查的细节。

这也是它今天值得关注的原因。v0.14.7-beta.1 没有只加一个“更聪明”的开关,而是继续补运行中的约束:计划模式插件工具、委派任务的输出 token 上限、已发现 MCP 工具在传输断开后的恢复,以及已结束子 Agent 的报告交付。这些都是长任务开始出现后,界面和 Agent runtime 必须处理的边角。

插件和本地 MCP 仍然是风险面

PI-Desktop 支持本地插件、技能、MCP server 和 pi 扩展。README 也明确说,插件进程虽然经过权限控制并与 renderer 隔离,但它们仍属于用户需要信任的代码,并非完整的操作系统级沙箱。插件说明 不应被略过。

另一个更需要谨慎的入口是本地 MCP control。只有设定 PI_DESKTOP_MCP_CONTROL=1 后,它才在 127.0.0.1 启动,使用 bearer token,并复用桌面端的操作处理器;文档同时说明,某些高风险通用操作仍要求 confirm: true。这降低了被公网直接访问的风险,却没有替用户审核本机上调用它的 Agent 或插件。本地控制平面 的权限含义应该按能力逐项检查。

因此,适合先试用它的人不是只想要一个新聊天窗口的用户,而是已经在本地项目里并行跑多模型、多会话或多个 Agent,且愿意花时间设置权限的人。我的试用顺序会很短:

  • 先用临时仓库和低权限模型配置,确认工具请求、diff 与命令确认的行为
  • 只安装来源清楚的插件与 MCP server,阅读其 manifest 和权限范围
  • 用一次会失败的测试验证 Plan/Goal 是否真的停在预期边界
  • 把早期预览版当作可替换的工具,不把唯一工作目录和凭据一次性交给它

仓库创建于 2023 年 3 月,采用 LGPL-3.0;本次观察时主分支当天仍有多条与发布、项目克隆和桌面修复有关的提交。不过项目自称 Early Preview,API、扩展接口和部分桌面行为仍会演进。项目状态 以及 提交记录 是继续跟踪的入口。


相关文章

2026年9月16日

fx:把 coding agent 做成一把瑞士军刀

fx 是一个用 Zig 写的原生 coding agent,二进制只有 6MB 出头。它能当终端 agent 用,也能作为 WASM 内核嵌进浏览器和 Node 应用。这篇文章拆解它的工具、权限、子 agent、上下文和嵌入设计,以及它和主流 coding agent 的差别。

最近一封 · Sample

OpenRig 冲上 Trending:把 Claude Code 和 Codex 编成一支队伍

“OpenRig 在 GitHub Trending Today 获得 622 个 stars 的窗口信号。它用可恢复的队列、席位与权限记录,把 Claude Code 和 Codex 放进同一套多 Agent 工程流程。”

—— william

Letters

来信

里面装的是

  • 新文章 — 写完一篇就寄一封,不攒货
  • 这周读到的、看到的、好用的工具
  • 正在折腾的实验,附带翻车记录

约莫 1–2 周一封 · 随时退订

合作伙伴

CompeteMap — 英国及爱尔兰学生竞赛一站式搜索

数学、编程、科学、写作等各类竞赛信息汇总,支持按年龄和科目筛选,再也不错过报名截止日。

准备开始了吗?

先简单说明目标,我会给出最合适的沟通方式。