乐于分享
好东西不私藏

OpenAI偷偷干了件细思极恐的事:Symphony不是产品,是军规

OpenAI偷偷干了件细思极恐的事:Symphony不是产品,是军规

兄弟们,OpenAI偷偷干了一件细思极恐的事。

不是GPT-6,不是DALL-E 4,是一个叫Symphony的东西。一个GitHub仓库,一份1700行的SPEC文档,一个Elixir参考实现。没有发布会,没有Sam Altman的推文,没有媒体通稿。

然后一周之内,stars从0飙到19k。现在21,648个星,1,959个fork

但最反常的不是这些数据,是OpenAI在README里写的一句话——

我们不打算把Symphony当作产品来维护。这是一个参考实现。请你们fork它、改它、自己重建。

说实话,第一次看到这句话,我也懵了。OpenAI啥时候这么佛系了?搞了个爆款项目,然后说老子不管了,你们自己玩?

但读完那份SPEC之后,我悟了。

Symphony不是产品。它是spec。而AI Agent走到今天,最缺的就是spec。

3个人,5个月,100万行代码

六个月前,OpenAI做了一个在当时很有争议的决定:一个生产力工具项目,仓库里不允许有任何人类亲手写的代码,每一行都必须由Codex生成。

听着像科幻片对吧?但结果更科幻——3个工程师,5个月,写出了100万行代码。每天消耗约10亿token,折合人民币差不多两万块钱一天。每人每天5到10个PR,PR合并数量增加了500%。

100万
5个月生成的代码行数
+500%
PR合并数量增长

这个数字什么概念?相当于3个人干了一个50人团队半年的活。

但问题也来了。

每个工程师同时开三到五个Codex会话,分配任务、审查输出、调整方向。AI跑得飞快,但人类成了系统的瓶颈。

左:被5个AI会话淹没的工程师 | 右:AI Agent三代演进
人类的注意力成了系统瓶颈

想象一下这个场景:你在工位上,同时开着四个浏览器标签页,每个都是Codex的CLI会话。Tab 1问你批不批准重命名,Tab 2卡在import冲突里等你决策,Tab 3刚才跑出的测试失败你还没来得及看,Tab 4已经开始生成PR了但要你手动review diff。

十五分钟后,你关掉了其中两个。不是因为agent能力不行,是因为你的注意力变成了整个系统的瓶颈

Harness Engineering:驾驭工程
OpenAI内部的新概念——工程师的工作重心从亲手写代码,转移到设计和维护一套让AI Agent高效工作的缰绳系统。就像驯马:马跑得比你快,但你需要缰绳、路线、规则让它朝正确方向跑。

OpenAI内部测试发现,大多数人能同时舒适管理3到5个Agent会话。超过这个数量,上下文切换成本明显上升,生产力反而下降。

这就是为什么Symphony不是让Codex多写几行代码,而是推动开发模式从人盯着session干活,向任务系统驱动agent干活的范式跃迁

Symphony怎么工作?

说白了就一句话:把项目管理工具变成AI的包工头

Symphony盯着Linear看板,发现新任务,为每个任务创建独立workspace,加载项目WORKFLOW.md策略,启动Codex Agent处理。Agent自己写代码、跑测试、提PR、附工作证明。人类工程师只需要审结果,不用盯着过程。

传统模式 vs Symphony模式
传统模式
Symphony模式
人给AI分配任务
AI从看板自动领任务
人盯着AI写代码
人只审AI交的结果
一个工程师管3-5个会话
一个工程师管100个Agent
瓶颈是人的注意力
瓶颈是系统编排能力
Tax AI:六周准确率翻三倍

OpenAI和Thrive Holdings联合做的Tax AI报税系统,服务于Crete会计师联盟旗下30多家事务所。

去年,一位资深会计师花180小时准备客户税表。今年,同样的工作量,15小时搞定。省下来的时间,她逐一给每位客户打电话讲解报税细节,还能开拓新客户。

25% → 86%
六周时间,Tax AI字段完成准确率翻三倍多,而且还在加速变强

怎么做到的?三招——

第一招,每次纠错变成结构化数据。会计师审核时,系统完整记录三件事:AI预测了什么、会计师改成了什么、最终报税用了什么。修改不是终点,而是改进的起点。

第二招,生产环境每一步留痕。出错时可精确定位到底是OCR读错了手写笔记,还是字段映射逻辑有gap。

第三招,用Codex自己定位bug、写修复、跑测试、生成PR。如果证据模糊,任务会路由回产品团队,不会硬来。

那么效果有多夸张呢?租赁房产相关字段处理,从几乎不可用到90%的精确率和召回率,只用了六周

从单兵到军团:AI Agent三代演进

Symphony的出现,正好对应AI Agent的三代演进——

Agent 1.0是单兵。ChatGPT一问一答,一条prompt一个response。像个聪明的实习生,你说什么他做什么。

Agent 2.0是班排。Claude Code的subagents、Cursor的agent mode。一个主Agent调几个子Agent,结果汇总。像个5人小团队,队长分配任务,队员执行。

Agent 3.0是军团。一个人指挥10个、50个、100个Agent,各自独立作战,并行推进多条战线。

班排和军团的差距不是数量,是组织
3个人不需要军规,靠喊就行。30个人靠口头协调还能勉强。300个人没有军规——就是一群乱兵。Agent也一样。3个subagent,主Agent自己调度。30个Agent,还能靠人盯。300个Agent没有spec,是一团混乱。Symphony解决的,正是从班排到军团这一跳的核心问题。
Symphony就是那张乐谱——让100个AI乐手在指挥下合奏
为什么值得认真对待?

OpenAI自己说了,Symphony没有开源引擎,没有SDK,没有可运行项目,只有一份SPEC文档。

有人觉得这是OpenAI在偷懒——搞了个框架,然后说你们自己实现吧。

但我觉得恰恰相反。这份SPEC的价值不取决于谁写的,取决于方法论本身站不站得住。它把一套多Agent编排的工程方法论完整写了下来——抽象层次、约束条件、恢复逻辑、并发策略,全部白纸黑字。

而且OpenAI选择了Elixir/OTP作为参考实现语言,这本身就很说明问题。OTP天生支持高并发、高可用、热更新,进程隔离模型完美匹配每个Agent一个workspace的设计。

但SPEC是语言无关的。OpenAI说你可以用Go、Python、Rust重写。这已经是在推动行业标准了。

最后说句大实话

如果你是个程序员,过去三年你担心的可能是AI会不会替代你写代码。但现在OpenAI告诉我们,真正的问题不是AI写代码的能力,而是你如何管理这些AI

3个工程师管理100万行代码,不是因为他们比50个人更聪明,而是因为他们设计了一套让AI高效工作的系统。

未来的工程师,可能更像技术总监——不是盯着每个PR的细节,而是通过抽样审查判断团队在哪里遇到困难,把注意力转移到真正需要人的地方。

而那些还在手动给AI喂prompt、逐个检查输出的工程师,可能很快就会发现,自己成了整个系统的瓶颈。

Symphony的名字起得很妙。交响乐不是一个人的独奏,是上百个乐手各自演奏,在指挥的统一调度下,合成一段完整的乐章。AI Agent的军团时代,需要的不只是会演奏的乐手,更需要一个能把100个乐手组织起来的指挥。而Symphony,就是那张乐谱。

OpenAI说"我们不维护这个产品"——因为Symphony不是产品,是军规。