transcript
show notes
📝 本期播客简介
本期我们克隆了:0xSero · Pi Durable: Agents That Survive Crashes — Mario Zechner & Armin Ronacher
原内容更新时间:2026-10-07
Agent 进程崩了,重启之后,能不能不丢工具结果和助手输出,接着刚才的任务继续?Pi Durable 的答案是可以。做出 Pi 的 Mario Zechner 和 Armin Ronacher,拆解了让 Agent 经得住崩溃的运行框架:怎么记录执行意图、处理副作用、保存结果,以及如何在会话里管理不断变化的应用状态。
他们也聊到 AI 编程 Agent 的边界:为什么修 Bug 常常会让代码越写越多,模型做逆向工程和模糊测试时为何表现惊人,却仍然难以设计软件架构;以及怎样让个人 Agent 更安全、更容易上手。
👤 本期嘉宾
Mario Zechner 是 Pi coding agent 的创作者,长期维护开源项目;Armin Ronacher 是 Earendil 的联合创始人,也是 Flask 的创作者。两人正在开发 Pi,既做 Agent 产品,也在构建供他人开发 Agent 的基础设施;这次重点介绍了他们为 Pi 打造的持久运行框架 Pi Durable。
⏱️ 时间戳
00:21 开源维护与AI能力边界
17:46 Pi Durable 的持久化设计
30:47 Agent产品、框架与安全
45:13 让Agent走向更多人
🌟 精彩内容
💡 Agent 修 Bug,代码却越修越多
Mario 认为小问题可以放心交给 Agent,但涉及设计和架构时,Agent 常常只会在局部打补丁。Armin 补充,Agent 几乎不可能不增加代码就把 Bug 修好。
"它肯定能解决问题,但几乎不可能在不加代码的情况下把问题修好。"
💡 有明确判定标准,Agent 就能大显身手
Mario 描述了 AI 逆向分析 Java 虚拟机内存结构、定位保护漏洞的经历。Armin 则让模型逆向一个国产 CarPlay 适配器,花了约 500 美元后就掌控了设备;两人认为,只要能判断任务做对没有,模型就更容易把它做完。
"如果你有一个能告诉 LLM 它做得对不对的判断依据,那你基本上就赢了。"
💡 模糊测试像给测试加火箭燃料
Armin 把 INI、TOML、CBOR、MessagePack 和 JSON 的示例文件交给模型,让它实现序列化库,再让模型反复做模糊测试、修复问题。模型还可以补出测试生成器没覆盖到的用例。
"这就像给各种测试加上了火箭燃料。"
💡 架构过程没有留下足够的训练数据
两人认为,安全分析和有明确对错标准的任务容易准备训练数据;设计软件架构的过程却很少被记录成可供模型学习的文字。这或许解释了模型能完成复杂任务,却仍让人对架构结果不满意。
"在编程里,给一个东西搭架构的过程,是唯一通常不会以文字形式记录下来、让 LLM 从中学习的部分。"
💡 进程崩溃,Agent 也能接着跑
Pi Durable 把 Agent 调用模型、执行工具等操作拆成任务:先保存执行意图,再执行操作,最后持久化结果。即使进程在中间崩溃,重启后也能根据记录恢复;应用状态则通过带版本的文档保存。
"你想要的是,重启进程后,Agent 能从刚才停下的地方接着运行。"
💡 个人 Agent 的安全,远比看上去麻烦
Mario 讲到,一个 Agent 曾把他的整个文件系统暴露到公网上,持续了大约一天。多人共享会话时,还得防止网页界面里的操作带来跨站脚本攻击;隔离服务器只是其中一部分,安全和易用性很难同时做好。
"真要做一个既能扩展又安全的网页界面,比看起来难得多。"
🌐 播客信息补充
本播客采用原有人声声线进行播客音频制作,也可能会有一些地方听起来怪怪的
使用 AI 进行翻译,因此可能会有一些地方不通顺
在小宇宙查看该单集文稿