Wink Pings

个人 Agent 想全天挂着,先让它在崩溃后接着干

Pi Durable 把 Agent 的每一步写进存储。四个开源项目从任务恢复、长期记忆、主动执行到智能家居,顺序也刚好是学习路线。

个人 Agent 想全天挂着,最先暴露的问题经常很土:进程一挂,手上的活断了。聊天记录还在,工具跑到哪、队列里排了什么、应用状态是什么,全得自己理。小墨同学在 X 上整理的四个 Pi Durable 项目,正好把这个坑拆成四步。

Pi Durable 是 Earendil 在 Pi 1.0 同期放出的实验性包,和 Pi coding agent 共用底层,目标不同。小墨同学把它比作带断电保护的主板:Pi coding agent 是装好的电脑,Pi Durable 是拿来攒自己机器的底座。它把调模型、执行工具、压缩都算任务,每走一步存一次进度;进程没了,新进程打开同一份存储,从最后一次存档继续。pi-durable-hello 的 README 写得更直接:普通 agent loop 把工作放在进程内存,进程死了工作也死;/resume 只恢复聊天文本,恢复不了正在跑的工具、已经改过的磁盘、排队输入和应用当时相信的状态。

Pi Durable 学习路线

图源:小墨同学推文

1. pi-durable-hello:先把崩溃恢复跑通

这个仓库用 5 个小例子讲任务持久化、崩溃恢复、请求去重和实时监听。默认用免费的假模型 faux,不需要 API Key,适合先搞懂 Durable Agent 的运行原理。Lesson 2 会让进程在工具跑到一半时直接退出,Lesson 3 打开同一个 SQLite 文件调用 resume,看它怎么接上。这里有个关键边界:工具要声明 replay 策略,标了 safe 的崩溃后可以重跑,bash 这类没标的会收到“被打断”的结果,让模型自己判断。Durable 是 checkpointed,不等于 exactly once,支付、部署这类副作用仍要自己做幂等。

链接:https://github.com/avparkhi/pi-durable-hello

2. Batty:看长期记忆怎么不塞爆上下文

Batty 是一个个人助理和编码 Agent,核心是“一个永久主线程”。研究、编码、后台任务、定时工作都从这段主对话分叉出去,办完把结果带回来。最值得研究的是长期记忆系统:它用 OptChat 给永久对话一棵可导航的记忆树,主对话组合旧历史摘要和最近原生会话尾巴,后台摘要把旧 run 批量移进树里,原始历史保留。自动召回用词法搜索找相关历史片段,memory_zoom 展开摘要,memory_search 搜原文。移动端是 PWA,支持 passkey 登录、推送通知、离线读历史和增量重连。

链接:https://github.com/jeffton/batty

3. Pots:让 Agent 自己判断该不该动

Pots 像一个开源版 AI 同事,支持 Slack、Discord、Telegram,会读消息、决定什么值得处理,再在自己的电脑上干活。它有三种被唤醒的方式:有人 @ 或私信、judge 判断某条消息是否关于它、以及自己的定时检查。这里有个省 token 的细节:例行任务可以先用普通脚本检查,确定需要处理才 pots wake 调模型。有网友在回复里提到,个人助手要全天挂着,关键通常不是先堆记忆和技能,而是唤醒后先用廉价脚本判断该不该调模型。没有这道闸,主动执行就是在烧 token。Pots 的收件箱和发件箱做成了崩溃安全,重启后接着做,发消息前会检查是否已经发过,Telegram 是例外。

链接:https://github.com/Crokily/pi-durable-bot

视频源:小墨同学推文

4. Hearth Pi:把 Agent 接到现实设备

这个项目把 Pi Durable 接进 Home Assistant,让 Agent 读取设备状态,再通过人工审批控制灯光、开关等设备。它还在实验阶段,价值在于学习 Agent 怎么连接现实设备,以及权限和审批机制怎么设计。能读状态和能按开关是两件事,后者需要人守着。

链接:https://github.com/cosmyo/ha-pi-durable

四个项目串起来,学习顺序也清楚:先用 pi-durable-hello 跑通断点恢复,再看 Batty 处理长期记忆,接着看 Pots 怎么主动执行,最后看 Hearth Pi 怎么管权限。小墨同学还提到,想省服务器可以交给 Cloudflare,Agents SDK 已经能运行 Pi Durable,状态存在 Durable Object 自带的 SQLite 里,模型可以用 Workers AI。眼下的限制也写明了:工具调用还没有审批,超过 15 分钟的流式模型调用可能被打断,会话暂时不能删除,后台任务每 30 秒才检查一次。

小墨同学在推文末尾写了一句万物基于 Pi。梗先放一边,这条路线本身够具体:先让断点恢复跑通,再谈记忆和主动。

发布时间: 2026-11-09 00:39