和Anthropic CEO一路发过Nature,他用Claude Code新生三年烂尾代码
新智元报路
编纂:好困
【新智元导读】70万内行传代码,人走了一拨又一拨,烂尾工程停摆三年没人敢碰。直到首席开发者给Claude Code写了份「说明书」,项目两周收工。
在华盛顿大学基因组科学系,干了快二十年的首席开发者Brendan MacLean,正盯着屏幕上那段代码,眉头越锁越紧。
这段代码属于Skyline的一个职能?,文件视图面板,搁置了整整一年。
写它的开发者毕衣冯开了尝试室,留下一个半制品。放在以前,这种烂尾工程只有一个终局,始终躺在仓库里,没人敢碰,没人想碰。
但这次不一样。
两周后,这个面板开发实现,所有最终代码提交里都多了一个共同作者的名字,Claude。
17年,70万行,人走了代码还在
Skyline是MacCoss尝试室的开源软件,用来助钻研人员检测和量化血浆、组织中的蛋白质,对生物标志物发现、疾病钻研和药物开发至关沉要。
70万行C#代码,每晚跑20万个自动化测试,从2008年起头一向在迭代。
这可不是什么通常的尝试室。
Anthropic结合首创人Dario Amodei已经是MacCoss Lab的成员,2012年还和Brendan合著过一篇Nature Biotechnology的论文。
那时辰Skyline才开发四年,Dario还在斯坦福放射科。
论文地址:https://www.nature.com/articles/nbt.2377
Brendan是这个项主张首席开发者,也是唯一的「主题纽带」。
近二十年来,本科生来了又走,钻研生毕业了,博士后跳槽了,实习生暑假实现就再也不会回来。
每一拨人走的时辰,代码留下了,理解代码的人没了。到2024年,代码库里有些区域,字面意思上没人敢碰。
Brendan花了几十年功夫做统一件事,带新人。
手把手教他们熟悉这套重大的代码库,搞懂组件之间的关系,搞懂17年沉淀下来的规范。这套步骤论他烂熟于心。
但他从来没想过,有一天会把同样的步骤论用在一个AI身上。
灵光一闪,把AI当实习生来「带」
Brendan一路头试的是浏览器里的Claude.ai。
履历能够用四个字概括,极度疾苦。
他描述一个问题,得到回复,而后把整个C#文件复造回项目里。只能处置那种不必要参考项目其他代码就能描述明显的孤立问题,稍微涉及渐进式批改,就齐全不能了。
每次对话都像从零起头。Claude不知路Skyline是什么,不知路组件之间怎么关联,不知路17年堆集下来的规范。
等一下,这个痛点他太熟了。每次带新人进尝试室,不就是这样吗?
新人不知路项目全貌,不知路代码之间的关系,不知路那些只有老人才懂的潜规定。
区别只是,新人会慢慢学会,而Claude每次对话实现就全忘了。
所以他做了一个决定,像带实习生一样带Claude Code。
具体来说,他建了一个独立的代码仓库叫pwiz-ai,专门存放给AI看的高低文,和主代码库齐全分隔。根目录下的CLAUDE.md是「地形图」,通知Claude项主张结构、编译方式、测试流程。
项目地址:https://github.com/ProteoWizard/pwiz-ai
但地形图只解决「知路在哪」的问题,不解决「知路怎么干活」的问题。
真正的专业知识存放在skills里。好比他写了一个debugging skill,专门把Claude从「盲猜试错」模式里拽出来。
这个skill的描述里写得极度硬核,「在排查bug、失败或意表行为时始终加载」,逼Claude在着手之前先做根因分析。
再加上MCP集成,让Claude能读取真实的测试数据、异常汇报和用户工单。
三层高低文叠满,成效立竿见影。
建好高低文之后,教Claude调试代码库的沟通成本断崖式降落。
由于它已经知路代码是干什么的了。交互的起点是理解,不再是空缺。
没人敢碰的代码,两周收工
高低文建好之后,Brendan起头用它算帐积压多年的技术债。
这事要从三年前说起。
其时掌管守护Skyline每晚测试治理?榈目⒄咄牙肓。这个?槭怯肑ava写的,技术栈和Skyline主体的C#齐全分歧。
放在以前,这种中途而废的烂尾工程只会被丢进垃圾桶。学术尝试室里,人员流动是常态。任何进行中的半制品,根基就蹬宗始终的半制品。
Brendan的处置方式也不例表,人走之后,他就不再为这个?樵龀と魏涡轮澳。一停就是三年。
直到最近,他让一位LabKey开发者用Claude Code写了一份配置文档。
而后,自己花了不到一天,就把惦想了好几年的职能给加上了,顺手还用CSS更新了页面布局。
更狠的在后面。
Skyline有2000多张教程截图,以前全靠手动守护。此刻全数实现自动化,近乎100%可复现。
Claude还写了一个C# MCP服务器,让自己能「看到」截图之间的差距。
每天早上Brendan坐下来起头工作之前,Claude自动天生的日报已经躺在收件箱里了,汇总夜间测试失败、异常和未解决的工单。
尝试室里正本对AI编程工具最不感冒的开发者,此刻用Claude Code构建并颁布了一个全新的数据可视化面板。
这个变动,不只产生在MacCoss尝试室。
统一周,OpenAI亮出了另一个答案
就在Anthropic颁布这篇博客的前一天,OpenAI也放出了一个开源项目——Symphony。
目前,它已经在GitHub上已经拿下了超过1.8万颗Star。
项目地址:https://github.com/openai/symphony
起因是,工程师有时必要同时开3到5个Codex会话,但高低文的切换会把人直接「逼疯」。
Symphony的思路单一粗鲁,把Linear项目看板造成AI编程的节造中心。
每一个Open状态的Issue自动分配一个Agent,Agent在独立工作区里持续运行,崩了自动沉启,新工作来了自动接办。
人类只必要做一件事,Review了局。
凭据OpenAI的统计,部门团队在上线Symphony的头三周,成功merge的PR数量暴涨了500%。
但产出量暴涨只是表表,真正的变动是团队对「工作」的认知被彻底颠覆了。
当工程师不用再盯着Codex会话的时辰,每一次代码调换的「感知成本」直线降落。
想试一个沉构规划?提个Ticket就行,跑出来不中意直接抛掉,成本险些为零。
甚至产品经理和设计师也能在Symphony里提Feature Request,不必要Git Clone仓库,不必要开Codex会话。
用人话描述需要,过一会就能收到一份带演示视频的Review包。
更有意思的是Symphony的诞生方式。
它的主题其实就是一份SPEC.md,一个用Markdown写的规范文档。OpenAI让Codex用TypeScript、Go、Rust、Java、Python、Elixir六种说话全都实现了一遍,借此打磨规范里的吞吐地带。
最终他们甚至用Symphony编排Codex,沉写了Symphony自身。
当然,OpenAI自己也认可,不是所有工作都吃这一套。
需要极其吞吐、严沉依赖直觉和专业判断的活儿,还得工程师打开交互式Codex会话亲自下场。
「带徒弟」和「开工厂」
固然路线分歧,但Anthropic和OpenAI在回覆统一个问题,怎么让AI在真实的工程流程里干活。
Anthropic的答案是「深度」。一个资深开发者花功夫构建高低文层,像带实习生一样教会AI理解一个特定的代码库。CLAUDE.md、skills、MCP,每一层都是在加深AI对项主张理解。主题信想是,高低文的质量决定所有。
OpenAI的答案是「规模」。搞一个编排层,每个工作自动派Agent,Agent永一向歇,崩了就沉启。工程师从「写代码的人」造成「管看板的人」。主题信想是,编排的效能决定所有。
一个是师傅带徒弟,一个是开自动化工厂。
有意思的是,两条路线在一个关键点上异曲同工。
Brendan写了CLAUDE.md和skills来固化项目知识,OpenAI写了WORKFLOW.md来固化开发流程。
双方都发现,以前靠口口相传和肌肉影象的器材,此刻必须白纸黑字写成文档,AI能力接得住。
「高低文工程」也好,「Harness工程」也好,说到底是统一件事,把人类的隐性知识造成机械可读的显性资产。
两条路线都管用,合用场景也不一样。
面对一个70万行的老代码库,你必要Brendan那种深度高低文工程。面对一个团队级此外新项目,Symphony那种大规模并行调度更相宜。
但有一件事,两家公司是齐全一致的。
AI编程的瓶颈,已经不是模型写不写得出好代码。瓶颈是人类有没有学会「治理」AI。
正如Brendan所言,「你不会把70万行代码库甩给一个新员工,而后指望他第一天就出活。」
对AI也一样。
参考资料:
https://claude.com/blog/onboarding-claude-code-like-a-new-developer-lessons-from-17-years-of-development
https://openai.com/index/open-source-codex-orchestration-symphony/
文章点评
未查问到任何数据!
颁发评论
◎欢迎参加会商,请在这里颁发您的见解、互换您的概想。