内容提要
Pi 1.0 发布,GitHub 星标超 11 万,同步推出实验性 Pi Durable。Pi 1.0 将 MCP 纳入核心,推出 Codemode,让 Agent 在 JS 沙箱中脚本化调用工具,331 次调用零上下文浪费,并支持虚拟模型跨模型调度。Pi Durable 面向长时运行与多人协作,具备崩溃断点自愈、会话无拷贝分叉、后台异步压缩、原子状态与热更新等能力。源码约 1.5 万行,强调极简与供应链安全。
延伸解读
MCP 态度反转的背后逻辑
Pi 曾公开表示不支持 MCP,但 1.0 将 MCP 纳入核心。官方解释有三层:MCP 生态已变化;为支持 MCP 所做的改造(如区分工具用途)对 Pi 整体有益;与其旁观,不如参与塑造 MCP 的未来。这反映了 Pi 务实、不固守立场的工程文化。
Codemode 如何节省上下文
Codemode 让 Agent 在 JS 沙箱中编写脚本编排工具调用,而非逐轮交互。官方演示中,331 次工具调用未占用模型上下文,中间结果在沙箱内处理,仅返回最终结论。这大幅降低了长任务中的 token 消耗,并提升了工具组合能力。
Pi Durable 的崩溃恢复机制
Pi Durable 通过检查点和 requestId 幂等保证实现崩溃恢复。只读工具可安全重放,有副作用的操作则告知模型中断,由模型决定后续。这种区分避免了重复执行危险操作,同时确保进程重启后能从断点继续,适合长时运行场景。
极简设计的代价与适用性
Pi 源码仅 1.5 万行,强调供应链安全和让 Agent 读懂。但极简也带来代价:没有内置权限系统,默认以启动用户权限运行;新贡献者 PR 默认关闭。这些取舍适合追求可控和安全的团队,但需自行评估是否匹配自身需求。
Q&A
Pi 1.0 是什么?它和 OpenClaw 有什么关系?
Pi 1.0 是 OpenClaw 背后的 Agent 引擎(harness runtime),于 10 月 1 日正式发布,GitHub 星标超过 11.1 万。OpenClaw 热度下降,但 Pi 仍在加速迭代。
Pi 1.0 为什么之前说不支持 MCP,现在又支持了?
官方解释有三层逻辑:一是 MCP 本身已经变化;二是为支持 MCP 所做的改造对 Pi 整体都有价值;三是与其站在场外,不如参与塑造 MCP 的未来。
Codemode 是什么?它有什么实际效果?
Codemode 是让 Agent 在安全 JS/WASM 沙箱中用 JavaScript 脚本编排和组合工具调用的机制。官方演示中,331 次连续工具调用实现了零上下文浪费,最终只返回汇总结果。
Pi Durable 是什么?它主要解决什么问题?
Pi Durable 是实验性新包,专为长时间运行、崩溃恢复和多人协作设计。它让 Agent 能在进程崩溃、机器休眠或容器重新部署后从断点继续工作,并支持多客户端同时操控。
Pi Durable 如何保证崩溃后能接着干活?
每一步运行都是任务,推进前先存检查点。进程死后,新进程打开同一存储,找到未完成任务并从检查点继续。只读工具可安全重放,高危操作则告知模型被中断,由模型决定,且 requestId 保证提交恰好一次。
Pi Durable 的“无拷贝会话分叉”是什么意思?
对话可以在对话记录的任意位置零成本分叉,子对话能看到父对话到分叉点为止的历史,而不必复制。例如 Slack 频道是一个对话,线程就是它在该消息处的分叉,两者并发互不阻塞,且可独立设置权限。
Pi 1.0 的虚拟模型功能是什么?
扩展可以定义“虚拟模型”,在背后调度多个真实模型。例如规划阶段用 Claude Opus,实现阶段由 Jev 判断切换,交给 GPT 6 Luna 写代码,实现跨模型透明切换,并能精确追踪各模型花费和缓存命中。
Pi Durable 在安全方面有哪些设计?
Pi 没有内置权限系统,默认以启动用户权限运行。官方建议通过容器化或沙箱加强边界,提供三种模式:Gondolin 扩展、普通 Docker、OpenShell。同时进行供应链硬化,如固定依赖版本、使用 npm-shrinkwrap.json 等。