File-as-Bus — 长时 Agent 的持久工作区总线模式
来源:2026-04-16 RIP Pull Requests (2005-2026) 基于 AiScientist 研究,@omarsar0 总结
核心模式
File-as-Bus:薄编排器通过**持久工作区 artifacts(文件)**协调专业 agent,而非通过消息传递或共享内存。
薄编排器
├── 专业 Agent A → 读/写 /workspace/artifacts/
├── 专业 Agent B → 读/写 /workspace/artifacts/
└── 专业 Agent C → 读/写 /workspace/artifacts/
实证验证
AiScientist 研究直接测试了移除文件总线的影响:
- 有 File-as-Bus:正常性能
- 移除 File-as-Bus:PaperBench 和 MLE-Bench Lite 性能显著下降
这是对"文件系统作为 agent 通信总线"价值的直接实证。
为什么文件比消息更好
| 维度 | 消息传递 | File-as-Bus |
|---|---|---|
| 持久性 | 会话结束即消失 | 跨会话持久 |
| 可检查性 | 难以审计 | 直接读取文件 |
| 并发 | 需要协调 | 文件系统天然支持 |
| 恢复 | 需要重放 | 从文件状态恢复 |
| 调试 | 黑盒 | 可直接查看中间状态 |
与相关模式的关系
- harness-engineering/folder-is-the-agent:文件夹即 Agent——同一模型指向不同文件夹即不同专家。File-as-Bus 是其通信机制的延伸。
- harness-engineering/factory-missions-architecture:Factory Missions 的 185 次 Agent 运行依赖持久工作区来维持状态。
- harness-engineering/self-verification-loops:长跑 agent 的验证闭环需要持久化的中间结果。
实践建议
- 为每个长时 agent 任务创建专用工作区目录
- 将 agent 间通信设计为文件读写,而非函数调用
- 在工作区中保留所有中间 artifacts,不要清理
- 编排器只负责调度,不持有状态——状态在文件系统中