来源:市场资讯

(来源:图灵人工智能)

您想知道的人工智能干货,第一时间送达

打开网易新闻 查看精彩图片

TL;DR(极简版):

OpenAI 已经做到:AI 自己写、测、改代码,人类一行不写

核心不是 AI 变强,而是方法变了:人负责定规则,AI 负责执行

关键只有一句话:不会写规则的人,会被会写规则的人淘汰

本质转变:

  • 以前:你写代码

  • 现在:你定义“什么是好代码”

OpenAI 有一个团队的顶级程序员基本不写代码。

打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片

这是 OpenAI 工程师 Ryan Lopopolo 在今年二月发的一篇工程博客里记录的真实经历。三名工程师,从空仓库开始,五个月时间,一百万行代码,1500 个 PR,产品已经有真实用户在日常使用。整个过程,人类没有手动写过一行代码。

这套方法论有个名字,叫 Harness Engineering——驾驭式工程。

1784年的一个工人,和2026年的一个工程师

1784年,英国某座工厂里,有个工人每天的工作就是站在蒸汽机旁边,盯着转速,手动调节阀门。转快了拧小,转慢了拧大。一整天,就干这一件事。

后来詹姆斯·瓦特发明了离心调速器——一个会随转速自动张开或收拢的飞球装置,直接接在阀门上。转速高了,飞球张开,阀门自动收小;转速低了,飞球收拢,阀门自动开大。机器自己管自己,不再需要人盯着。

那个工人没有消失,但他的工作彻底变了。他不再转阀门。他开始设计调速器。

两百多年后,2026年的 OpenAI,一个三人工程团队用五个月时间,让 AI 写了一百万行代码,发布了一个有真实用户的产品。整个过程,人类没有手动写过一行代码。

这两件事,本质上是同一件事。

打开网易新闻 查看精彩图片

Norbert Wiener 在1948年给它起了个名字:控制论(Cybernetics),来自古希腊语 κυβερνήτης,意思是"舵手"。你不再转阀门,你来掌舵。Kubernetes 这个名字,也来自同一个词根。

OpenAI 把这套做法叫做 Harness Engineering——驾驭式工程。

先说清楚,这不是"AI 辅助编程"的升级版

很多人听到"AI 写代码"会条件反射地联想到 Copilot,联想到 Tab 键自动补全,联想到"省点打字力气"。

这是两件性质完全不同的事。

AI 辅助编程,人类还是主角。你决定写什么、怎么写,AI 帮你快一点。

推荐阅读:斯坦福CS146S:AI辅助、多智能体、AI原生,一次说清楚三者关系仅仅离上篇多agent和ai原生概念的文章发布过去 12 天,技术路线就已经发展出新的脉络。有一句话怎么说:”躺平的速度约等于ai进化的速度,过段时间再学“不无道理。harness 概念是 7 天前发的,我在脑子里面基本上每天都有30-60min在想这个概念,或者在看别的博主都解释、内部培训文档,卷疯了。

打开网易新闻 查看精彩图片

驾驭式工程,AI 智能体是主角。人类退到幕后,扮演架构师、规则制定者和裁判员。AI 自己决定怎么实现、自己跑测试、自己提 PR、自己回应审查意见、自己合并代码。

更关键的区别在于:AI 能力不是瓶颈,环境设计才是。

绝大多数人抱怨"AI 老是做错事,不理解我们的代码库"——这个诊断几乎都是错的。不是 AI 没有能力,而是你没有把它需要的知识外化出来。它不会通过"感受团队气氛"来学习规范,你不写下来,它就永远不知道。

这是驾驭式工程最反直觉的地方:问题不在 AI,在你自己有没有把判断力变成机器可读的东西。

真正的工作,发生在这五个地方

1、关闭高层的反馈回路

代码库其实一直有反馈回路,只是层次太低。

编译器负责语法,测试套件负责行为,Linter 负责风格——这些都是真实的控制系统,但它们只能检查"可以机械验证的属性":能不能编译?测试过不过?格式对不对?

更高层的问题——这个改动符不符合系统的整体架构?这个抽象三个月后会不会变成麻烦?——从来没有传感器,也没有执行器。只有人类能在这个层面做判断,也只有人类能动手修。

LLM 同时改变了这两端。它可以在人类曾经独占的层面上感知问题,也可以在同一层面上执行修复——重构一个模块,重新设计一个不一致的接口,围绕真正重要的契约重写测试套件。反馈回路第一次可以在真正重要的决策层面闭合。

这是整个驾驭式工程的理论基础。其余的一切,都是在回答同一个问题:怎么把这个回路调好。

2、把判断力变成机器可读的东西

这是最难的部分,也是大多数人卡住的地方。

工程师最宝贵的东西——什么是好代码、哪些模式这个架构鼓励、哪些模式要避免——通常只存在于脑子里,或者散落在 Slack 记录和会议纪要里。对人类来说,这些东西通过"感受"传递,新同事会慢慢被"熏陶"出来。

AI 没有这个能力。它在第一百次运行里犯的错和第一次完全一样,除非你把规则写下来。

OpenAI 的解法是三层结构:架构文档描述真实的分层关系和依赖方向;自定义 Linter 把规则变成自动检查,报错信息直接写给 AI 看,告诉它"你应该这样改";"黄金原则"把团队的品味编码成可执行的规范。

他们花了每周五一整天清理"AI 残渣"——直到把自己的标准编码进工具里,这个工作才消失。这不是 AI 变聪明了,是他们把聪明变成了规则。

3、给 AI 一张地图,不是一本百科全书

上下文窗口是稀缺资源。往 AI 的上下文里塞越多,真正有用的信息就越少。

OpenAI 踩过这个坑——他们试过一个巨大的 AGENTS.md,把所有规则和注意事项全装进去。结果 AI 要么漏掉关键约束,要么对着已经过时的规则反复优化,越跑越歪。更麻烦的是,没有人愿意维护这个文件,它慢慢变成了陈旧规则的坟场。

他们后来的做法极其克制:AGENTS.md 只保留大约 100 行,作用是一张索引地图,告诉 AI"遇到什么问题去看哪个文件"。真正的知识按领域分散存放,有专门的 CI 作业检查文档是否过期、是否有交叉链接。

你要给 AI 的是导航系统,不是城市全图。 关键是渐进式披露:从一个小而稳定的入口开始,指向更深层的信息,而不是一开始就把所有东西倾泻进去。

4、让应用对 AI 直接可见

有一个细节,比什么理论都直观:OpenAI 把 Chrome DevTools 协议接进了 AI 的运行时。

打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片

Codex 能打开浏览器、截屏、点击、看 DOM、观察运行时事件。发现 bug,自己复现,自己修,跑一遍验证,录个视频证明修好了,提 PR。整条链路,AI 自己完成。他们还给 AI 配了完整的可观测性栈——用 LogQL 查日志,用 PromQL 查指标,每个任务有独立的 Git Worktree 实例,跑完自动销毁。

这让"确保服务启动在 800ms 以内"这种指令变得可行。否则对 AI 来说,这个要求毫无意义——它根本看不到数据。

这背后是一个简单的等式:你投入多少精力让系统对 AI 可读,AI 就能换回多少自主工作的能力。 不是线性关系,是杠杆关系。

5、把技术债变成每天自动还的利息

AI 会复制它在代码库里看到的模式,包括坏的那些。时间一长,坏模式会像病毒一样扩散,架构漂移开始发生,风格混乱,补丁摞补丁。

OpenAI 最初靠人工清理,每周五一整天。很快发现不可持续——AI 产出的速度永远快过人工清理的速度。

他们的解法是用 AI 清理 AI 造成的问题。定义"黄金原则",然后定期跑后台 Codex 任务,专门扫偏差、发起重构 PR。大多数这类 PR 一分钟内审完自动合并。

这里有一个更深的洞察:如果环境没有校准好,你连"用 AI 清理 AI 造成的烂摊子"这件事都做不到,因为 AI 不知道什么是干净的。 没有标准,清理工具和制造问题的工具是同一个东西。

五个层面的对比

核心工作

本质是什么

门槛

最容易忽视的时机

忽视的代价

关闭高层反馈回路

让 AI 能感知并修复架构级问题

项目立项时

AI 只能处理表层问题

判断力机器可读化

把品味变成规则,写给 AI 看

第一次发现"AI 总做错"

每次运行都重复同样的错误

上下文地图化

精准指路而非信息轰炸

文档开始膨胀时

AI 越跑越偏,规则失效

应用对 AI 可见

日志、UI、指标全部暴露给 AI

AI 开始频繁出错时

AI 无法自主验证,依赖人工

自动化熵控制

每天还利息而不是集中爆发

坏模式开始重复出现时

技术债以 AI 速度复利增长

那个工人后来去哪了

那个在蒸汽机旁边转阀门的工人,在调速器发明之后,并没有回家。他去设计了更好的调速器。

他没有消失,但他的位置变了——从执行循环的内部,移到了循环的外部。他不再是被调速器控制的那根阀门,他是设计调速器的人。

驾驭式工程走到这里,留下的不是一套新工具,而是一个古老问题的新版本:当机器能做你做的事,你去做什么?

答案是:去做机器做不到的事——判断什么是对的,设计让机器知道什么是对的,然后让机器以你完全无法企及的速度去执行。

打开网易新闻 查看精彩图片

那些一直被工程书籍推荐、一直被大多数团队跳过的实践——完善的文档、自动化测试、明确的架构决策、快速的反馈回路——一直都是正确答案。只是以前跳过的代价是慢性的,悄悄累积的。现在,代价变成了即时的,而且以机器的速度复利。

你现在能做的最有价值的一件事,不是学一个新工具,而是把你脑子里那些"不言而喻的规则"写下来——写进文档,写进 Linter,写进任何能让机器读到的地方。

那是舵手真正掌舵的地方。

名词解释

控制论(Cybernetics)研究系统如何通过反馈信号来实现自我调节和控制的学科,由数学家 Norbert Wiener 于1948年创立。核心思想是:系统感知自身状态,与目标对比,然后自动纠偏。蒸汽机调速器、恒温器、自动驾驶,背后都是这个逻辑。

Kubernetes谷歌开源的容器编排系统,负责自动管理服务器上运行的应用程序。你告诉它"我要三个副本在线",它就持续确保这件事成真——某个副本挂了,它自动重启;负载高了,它自动扩容。名字来自希腊语"舵手",和控制论同一词根。

Copilot微软推出的 AI 编程助手,集成在代码编辑器(如 VS Code)里。它会根据你正在写的代码,预测并补全接下来的内容,按 Tab 键接受建议。本质上是"更聪明的自动补全",人类仍然主导每一个决策。

AI 智能体(AI Agent)能够自主感知环境、制定计划并连续执行多步骤行动的 AI 程序。区别于只回答单个问题的普通 AI——智能体会主动"做事",比如自己查资料、写代码、运行测试、根据结果调整策略,直到完成目标。

PR(Pull Request)代码合并请求。开发者把写好的代码推送到一个独立分支,然后发起 PR,请求把这些改动合并进主代码库。团队成员可以在 PR 里查看代码差异、留下评审意见,作者修改后再合并。是现代软件团队协作的标准流程。

代码库(Codebase)一个软件项目的全部源代码集合,通常存放在 Git 这类版本控制系统里统一管理。包含应用逻辑、测试、配置文件、文档等所有构成这个软件的文件。

打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片

编译器(Compiler)把人类用高级编程语言(如 Python、Java)写的代码,翻译成计算机能直接执行的机器语言的程序。编译过程中会检查语法错误——写错了就报错,不让你运行。

打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片

测试套件(Test Suite)一组自动化测试脚本的集合,用来验证代码的功能是否符合预期。每次改动代码后,跑一遍测试套件,就能知道有没有把原来能用的东西搞坏。

打开网易新闻 查看精彩图片

Linter静态代码分析工具。不运行代码,直接扫描源文件,检查格式规范、潜在错误和不良编码习惯。就像语文老师批改作文时标出的"用词不当"和"格式错误"——只是速度快得多,而且不会疲劳。

LLM(大语言模型)Large Language Model,通过对海量文本进行训练得到的 AI 模型,能理解和生成人类语言,也能读懂和编写代码。ChatGPT、Claude、Gemini 都属于这一类。"大"指的是模型参数量极大,通常达到数十亿乃至数千亿个。

打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片

https://cloud.tencent.com/developer/article/2446221

架构文档(Architecture Doc)描述软件系统整体结构的文档,说明各个模块是什么、彼此怎么协作、依赖关系如何。相当于建筑的设计图纸——施工前先搞清楚这栋楼长什么样,各层之间怎么连接。

AGENTS.md放在代码仓库根目录的一种 Markdown 文件,专门写给 AI 智能体看的操作说明。告诉 AI 这个项目的规则、惯例、目录结构和工作方式。类似于给新员工的入职指引,只不过读者是机器。

上下文窗口(Context Window)LLM 每次处理任务时能"看到"的最大信息量。超出这个范围的内容,模型完全不知道。就像人的工作记忆有容量上限,塞进来的东西越多,每条信息能分到的"注意力"就越少。

打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片

CI 作业(CI,持续集成)Continuous Integration,每次有代码提交时自动触发的一系列检查任务,包括运行测试、检查代码格式、验证文档结构等。检查不通过,代码就不能合并。相当于流水线上的质检环节,每个零件进来都要过一遍。

打开网易新闻 查看精彩图片

渐进式披露(Progressive Disclosure)一种信息组织策略:先呈现最核心的内容,再按需引导到更深的细节,而不是一次性把所有信息全部展示出来。目的是降低认知负担,让接收方能按需获取信息。

Chrome DevTools 协议(CDP)Chrome DevTools Protocol,谷歌浏览器提供的一套程序接口,允许外部程序远程控制浏览器、读取页面结构、监听网络请求和运行时事件。通常用于自动化测试和调试,OpenAI 把它接入 AI 运行时,让 AI 能像人一样"操作浏览器"。

CodexOpenAI 开发的代码智能体,能够理解自然语言描述的任务,并自主完成编写、测试、提交代码等一系列工程工作。本文中 OpenAI 团队用它完成了整个产品的开发。

打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片

DOM(文档对象模型)Document Object Model,浏览器把网页解析成的树状数据结构。页面上的每个按钮、文字、图片,在 DOM 里都是一个节点。程序可以通过读取和修改 DOM 来控制页面的显示内容和行为。

打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片

可观测性栈(Observability Stack)一套用于监控和理解系统运行状态的工具组合,通常包含三类数据:日志(记录发生了什么事)、指标(系统健康状况的数值,如响应时间、错误率)、追踪(一个请求在系统内部各环节的完整旅程)。

打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片

LogQL / PromQL两种专门用于查询监控数据的查询语言。LogQL 用于查询 Loki 日志数据库,从海量日志里筛选出特定记录;PromQL 用于查询 Prometheus 指标数据库,计算和分析各类系统指标。语法类似 SQL,但专为时序数据和日志场景设计。

打开网易新闻 查看精彩图片

Git WorktreeGit 版本控制系统的一个功能,允许同一个代码仓库在不同的目录下同时检出不同的版本,互不干扰。OpenAI 用它让每个 AI 任务都有独立的运行环境,多个任务可以并行处理而不会相互影响。

打开网易新闻 查看精彩图片

架构漂移(Architecture Drift)代码库随着时间推移逐渐偏离原始设计意图的现象。通常是因为大量局部修改慢慢积累,每次改动看起来都无伤大雅,但叠加起来就破坏了整体的一致性和设计原则。

打开网易新闻 查看精彩图片

重构(Refactoring)在不改变程序外部行为的前提下,改善代码内部结构的过程。功能不变,但代码变得更清晰、更易维护、更符合设计规范。就像整理房间——东西还是那些东西,但放得更有条理了。

打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片

https://pub.towardsai.net/ai-solves-p-versus-np-problem-8bcf347c0848?gi=876f503c1f63

P vs NP计算机科学中最著名的未解难题之一。核心直觉是:验证一个答案是否正确,通常比从零开始找到这个答案容易得多。这个不对称性在驾驭式工程里有直接意义:你不需要比 AI 更会写代码,你只需要比 AI 更会判断代码写得对不对。

编者按

我第一次读到这篇文章,脑子里冒出来的不是兴奋,而是一种很久没有过的感觉——似曾相识。

不是因为内容眼熟,而是因为这件事发生过。不止一次。

回顾:这条线,我们其实走了很久

如果你把镜头拉远,会发现软件工程这几十年走过了三条平行的演进线索,而这篇文章,恰好是三条线同时交汇的节点。

第一条线,是"验证"持续替代"执行"的历史。

从手写汇编到高级语言,从人工测试到自动化测试,从人工代码审查到静态分析工具——每一次进化,都是把"执行层"交给机器,把人类的注意力推向更高的"判断层"。驾驭式工程不是这条线的终点,它是目前为止最激进的一步:把编码本身也交出去了。这不是突变,是量变积累到了质变的临界点。

第二条线,是"隐性知识"持续显性化的历史。

软件工程几十年来最难解决的问题,从来不是技术,而是知识传递。老工程师脑子里那套"为什么这样设计""为什么不能那样改",很难教给新人。Linter、架构文档、设计评审、ADR 记录——这些工具的本质,都是在把隐性知识变成显性规则。AI 智能体只是把这件事的优先级,从"最好有"变成了"必须有"。不写下来,代价从"慢慢腐化"变成了"立刻崩塌"。

第三条线,是"谁是工程师"这个问题的持续漂移。

1980年代,程序员是少数人。后来有了更高级的语言和框架,门槛下移,更多人能写代码了。再后来有了低代码工具,非技术背景的人也能搭应用了。现在,AI 能直接把自然语言变成代码——这条线一直在往同一个方向走:让"表达意图"变得比"实现意图"更重要。驾驭式工程只是这条线走到今天的样子。

展望:我愿意说三件可能发生的事

我不想散布焦虑,但我也不想假装这些变化无关紧要。以下三个判断,是我认为值得认真对待的方向。

第一,"软件工程师"这个职位不会消失,但它的入职门槛会被彻底重新定义。

以前面试考算法题,是因为写代码需要扎实的基础。未来,面试可能会更像产品评审——你能不能把一个模糊的需求拆解成清晰的验收标准?你能不能判断 AI 给出的方案哪里合理、哪里有坑?《钢铁侠》里托尼·斯塔克设计盔甲的方式,比他亲手锻造盔甲零件更值钱——这个比喻以前是夸张,现在开始变成字面意思了。

第二,文档会从"最容易被跳过的事"变成"最核心的工程资产"。

这听起来像老生常谈,但这次驱动力完全不同。以前写文档靠职业道德,现在写文档靠生存压力——AI 看不到的东西不存在,你不写下来,智能体就会按它自己的理解行事,而且会以机器的速度把错误复制到整个代码库。一家公司的工程文档质量,会开始直接反映在它的 AI 开发效率上,变成可量化的竞争优势。

第三,"人机协作"的瓶颈,会从技术侧转移到组织侧。

现在大家谈 AI 落地,还在聊模型够不够好、工具够不够稳。但这篇文章揭示了另一个维度:OpenAI 的团队花了最多时间的地方,不是调模型,而是建规范、写文档、设计反馈回路。未来真正拉开差距的,不是哪家公司用的模型更强,而是哪家公司更擅长把自己的判断力外化成机器可以执行的规则。这是一个组织能力问题,不是一个技术问题。

这篇文章讲的,表面上是"三个工程师怎么用 AI 写了一百万行代码",但往深了看,它在讨论一个更古老的问题:当工具足够强大,人的价值在哪里?

瓦特的调速器发明之后,那个转阀门的工人没有消失。他去设计了更好的调速器。

这不是一个关于被替代的故事,而是一个关于位置迁移的故事。人类一直在把自己从执行循环里解放出来,移到更高的位置上。这次只是又往上走了一层。

至于站在那个新位置上,风景是什么样的,我还没有完整的答案。

我愿意和读者一起期待。