章节 01
导读 / 主楼:SagaFlow:基于 Temporal 的持久化 AI Agent 工作流框架
SagaFlow 是一个开源 Python 框架,将 Temporal 工作流引擎与 Claude 等 LLM 结合,解决了多 Agent 会话在崩溃后状态丢失、重试困难的问题,为代码审查、调试和研究等场景提供持久化执行能力。
正文
SagaFlow 是一个开源 Python 框架,将 Temporal 工作流引擎与 Claude 等 LLM 结合,解决了多 Agent 会话在崩溃后状态丢失、重试困难的问题,为代码审查、调试和研究等场景提供持久化执行能力。
章节 01
SagaFlow 是一个开源 Python 框架,将 Temporal 工作流引擎与 Claude 等 LLM 结合,解决了多 Agent 会话在崩溃后状态丢失、重试困难的问题,为代码审查、调试和研究等场景提供持久化执行能力。
章节 02
在多 Agent 协作系统日益普及的今天,开发者经常面临一个棘手问题:当一个复杂的代码审查或调试任务正在运行时,终端意外崩溃、网络中断,或者某个子 Agent 陷入长时间的静默等待——所有的中间状态瞬间丢失,重试机制变成了一堆脆弱的 Markdown 文本,而正在执行的任务究竟处于什么状态,完全无从得知。
这正是 SagaFlow 试图解决的核心痛点。作为一个基于 Temporal 工作流引擎构建的 Python 框架,SagaFlow 为 AI Agent 提供了持久化执行能力,让工作流能够跨越会话生命周期,在崩溃后自动恢复,并确保结果可靠送达。
章节 03
SagaFlow 的创建者 npow 观察到,现代多 Agent 系统(如代码审查、调试、研究助手)通常采用并行子 Agent 架构,通过文件或内存中的临时状态机协调工作。这种模式存在几个致命缺陷:
Temporal 作为一个成熟的分布式工作流引擎,已经解决了持久化执行、状态管理、故障恢复等问题。SagaFlow 的设计哲学很直接:不要重复造轮子,而是将 Temporal 的强大能力与 LLM Agent 的灵活性结合起来。
章节 04
SagaFlow 的架构可以概括为四个层次:
章节 05
当用户执行 sagaflow launch 命令时,系统首先进行预检:
章节 06
工作流定义通过 Temporal 的 @workflow.defn 装饰器实现,核心活动包括:\n- write_artifact:文件 I/O 操作\n- spawn_subagent:通过 Anthropic SDK 或 claude -p 子进程调用 LLM\n- emit_finding:将结果写入收件箱并触发通知
Temporal 保证每个活动执行具有恰好一次的语义,即使 Worker 崩溃,重启后也能从最后一个完成的活动继续执行。
章节 07
SagaFlow 设计了冗余的结果送达系统,确保用户不会错过任何重要输出:\n
--await 标志让调用者阻塞等待结果\n2. 收件箱文件:~/.sagaflow/INBOX.md 追加所有完成记录\n3. 会话钩子:新 Claude Code 会话自动展示未读结果\n4. 桌面通知:通过 osascript(macOS)或 notify-send(Linux)触发章节 08
SagaFlow 内置了 11 个即用型技能,覆盖常见开发场景:\n
| 技能名称 | 功能描述 |
|---|---|
| hello-world | 框架冒烟测试 |
| deep-qa | 多轮文档/代码 QA,并行评论家与综合 |
| deep-debug | 假设驱动的调试流程 |
| deep-research | WHO/WHAT/HOW/WHERE/WHEN/WHY 六维研究 |
| deep-design | 规格起草 → 多轮评审 → 最终规格 |
| deep-plan | 规划师-架构师-评论家共识循环 |
| proposal-reviewer | 主张提取 + 四维评审 + 事实核查 |
| team | 规划 → PRD → 并行执行 → 验证修复循环 |
| autopilot | 扩展 → 规划 → 执行 → QA → 验证完整流程 |
| loop-until-done | 可证伪性评审 + 逐标准验证循环 |
| flaky-test-diagnoser | 多轮运行 → 假设生成 → 诊断报告 |
所有技能共享相同的传输层(Anthropic SDK 或子进程)和结果送达机制。