一句话:把 agent 的对话从「挂掉就丢」的聊天,变成能存盘、能恢复、能分叉的持久状态。
01它是什么
Pi 是一个极简、可扩展的 agent 运行框架(harness)。Pi Durable 是它随 1.0 一起放出的实验性组件,专门给「要长期跑、不能因为重启就白干」的应用兜底。
你可以把它理解成给 agent 装了个存档系统:跑到一半崩了,换个进程重新打开存档,接着往下跑。
02它解决什么
普通 agent 会话
一个进程、一个对话。进程一断,现场就没了,只能从头再来。
Pi Durable
对话状态存在硬盘上。崩了 / 重启 / 换机器,重新打开就能续上。
03四个关键词
多会话
一个框架同时跑多个对话,每个有自己的模型、工具、指令和目录。
检查点 / 恢复
运行中不断存档,新进程能接着干没干完的活。
分叉 Fork
在某个时间点岔开一条新路走,原来的分支不受影响。
多客户端
多个人同时连进来,看进度、给方向、补一句话。
04几个要注意的点
工具不会自动重跑
被打断的工具调用,只有它自己声明「重跑安全」才会自动重试。像「发消息 / 扣款 / 建单」这种,重跑一次可能出事——幂等还得自己做。
存储别想太美
三种:内存(重启即丢,只适合测试)、SQLite、JSONL。默认配置不保证最新数据能扛住断电,而且同一时刻只有一个进程能独占存储。
不是无限记忆
上下文窗口限制依旧在。超了要靠摘要压缩,它只是「记得住进度」,不是「记得住一切」。
API 还是实验性
接口、存储格式、行为都可能变,当 pre-1.0 依赖对待。
05和 Cloudflare 的关系
Cloudflare 的 Agents SDK 内置了 PiHarness,把 Pi Durable 跑在 Durable Object 里:对话记录、待办放进对象的数据库;有活干时排一个作业,对象被休眠也会被唤醒,重新打开存档继续跑。目前是 beta。
06总结
它不是「更聪明的编程助手」,而是把 agent 的状态做成一层可恢复、可并发、可被多方操控的基础设施。适合做产品原型和内部工具。