向代理式软件开发的转变已经产生了一些挑战传统人类可读性的系统。在最近的一个案例中,一个 AI Agent (Codex) 成功迭代了一个文件以满足复杂的业务需求,但它生成的 30 行代码中,有 15 行是整个组件被压缩到单行中。虽然逻辑正确,但由此产生的圈复杂度触发了 CI 失败,因为这些代码绕过了人类开发者通常会采用的标准重构习惯。这突显了一个核心转变:软件所有权不再是关于亲手编写每一行代码,而是关于掌握足够的知识来检测系统何时行为异常,并具备干预的技能。

为了管理这些系统,作者提出了“潜水机器人”(divebot)的类比。正如自主水下航行器可以从深海中提取资源一样,AI Agent 可以以前所未有的规模构建复杂的软件。然而,如果没有人类监管,这些“潜水机器人”可能会建造出“杂乱的豪宅”——即系统过于复杂且怪异,以至于变得无法维护或包含隐藏的“怪物”(故障)。为了防止这种情况,作者认为工程师必须超越“阅读每一行”与“完全忽略代码”的二元对立。相反,所有权需要系统抽象的高层级地图。所有者需要理解“水域图”——即不同模块的边界和预期行为——这样当生产事故发生时,他们就能准确知道该去哪里“潜水”。

一个代表复杂系统中“此地有怪物”概念的风格化数字插图。
“潜水机器人”类比说明了 AI Agent 如何构建可能包含隐藏架构故障的复杂系统。blog.adrq.dev

作者使用“潜水机器人”和“杂乱的豪宅”类比来描述未经监管的代理式软件开发的风险。

达到这种水平的精通涉及三个支柱:基础、广度和即时深度。基础涉及核心计算机科学原理(如数据结构和算法),这些原理允许工程师识别出诸如平方复杂度之类的模式。广度是将不同的概念编织在一起以理解系统不同部分如何交互的能力。最后,“即时深度”是愿意并能够深入到未知的、由 Agent 生成的代码中进行深度故障排除的意愿和能力。由于通过多年手动编码进行的传统“边做边学”路径对于初级工程师来说不再具有经济可行性,行业必须找到新的方法来培养这些诊断和架构技能,以确保人类仍能管理他们监管的系统。

然而,这种所有权模型面临重大障碍。源材料并未提供教授“广度”的具体课程,也没有提供衡量 Agent 主导的系统与人类主导的系统相比中“怪物”出现频率的方法。此外,虽然作者强调了高层级地图的重要性,但在实际操作中,如何维持对百万行代码库的连贯心理模型——尤其是当历史记录和“部落知识”被 Agent 输出所掩盖时——仍然是下一代工程师面临的一个重大未解决挑战。