我教我的 Agent 如何兑现承诺
作者 Andrew Zigler 介绍了一个自研开源工具 pinki,解决多 Agent 系统中"会话结束即承诺作废"的问题。 核心概念是"seat"(跨会话的长期角色身份),承诺绑定到 seat 而非 session,因此即使某次会话的上下文被故意清空,新上下文醒来后仍会履行承诺, 相当于用身份而非会话来兑现义务。 文章详细拆解了承诺的数据结构:必须带截止时间、解决证据、放弃理由、seat 绑定四要素,缺一就会失败。实际运行数据:24 个 seat 中 18 个同时持有多条开放承诺,最繁忙的一个峰值 17 条。 他同时分析了 A2A(Agent-to-Agent)v1.0 协议规范,指出其 task 生命周期天然不适合承载义务——task 可被清除、状态不可变、无截止字段——而 AgentCard 才是持久的身份载体。 他基于此实现了一个 A2A 扩展,用 URI 前缀的 metadata 键存承诺记录,并针对协议缺口设计了 amend 事件来支持截止时间的协商修改(escalation ladder)。 最后给出 pinki 的设计哲学:极简账本、append-only JSONL、CLI 折叠计算状态、无 server/daemon、依赖树强制不可发网络请求。文章还引用了 Steve Yegge 的"Model Welfare for Agentic Engineers"中"session 是日子,seat 是人"的区分。 整体是一篇有具体工程判断、有运行数据、有协议分析深度的个人实践文,适合关注多 Agent 架构和协议设计的读者。

