他用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每晚测试管理模块的开发者离开了。这个模块是用Java写的,技术栈和Skyline主体的C#完全不同。
放在以前,这种半途而废的烂尾工程只会被丢进垃圾桶。学术实验室里,人员流动是常态。任何进行中的半成品,基本就等于永远的半成品。
Brendan的处理方式也不例外,人走之后,他就不再为这个模块添加任何新功能。一停就是三年。
直到最近,他让一位LabKey开发者用Claude Code写了一份配置文档。
然后,自己花了不到一天,就把惦记了好几年的功能给加上了,顺手还用CSS更新了页面布局。
更狠的在后面。
Skyline有2000多张教程截图,以前全靠手动维护。现在全部实现自动化,近乎100%可复现。
Claude还写了一个C# MCP服务器,让自己能「看到」截图之间的差异。
每天早上Brendan坐下来开始工作之前,Claude自动生成的日报已经躺在收件箱里了,汇总夜间测试失败、异常和未解决的工单。
实验室里原本对AI编程工具最不感冒的开发者,现在用Claude Code构建并发布了一个全新的数据可视化面板。
这个变化,不只发生在MacCoss实验室。


