首席架构师CarlosKelkboom的5条Agent编程原则,代码便宜了,更要敢推倒重来

面对AI生成代码激增却系统失控的风险,首席架构师Carlos Kelkboom提出五条反常识的Agent编程实践:亲手搭建骨架、禁止主Agent直接写代码、看不懂就扔掉重做、一次性完成大任务、多Age...

人工智能

当AI能几秒内写出一个REST API或数据清洗脚本,软件开发的门槛似乎骤然降低。但越来越多的团队发现,项目启动迅猛,中期却陷入泥潭——同一功能被重复实现五次,部署脚本被静默替换,架构演进只能靠打补丁推进。代码量暴增,系统清晰度却持续下降。在Patrick Akil主持的一期技术播客中,资深首席架构师Carlos Kelkboom直指问题本质:不是Agent能力不足,而是人类对它的使用方式出了偏差。

Kelkboom认为,当前最大的风险并非技术缺陷,而是协作模式的退化。开发者越来越依赖Agent即时解答,PR(Pull Request)中的讨论显著减少;与用户沟通、理解业务上下文、反复推敲架构取舍的过程被跳过。结果是:能快速做出演示原型,却难以构建可长期演进的系统。“能很快做出一个演示,和真正理解用户、把软件长期做好,是两回事”,他强调。

基于多年系统设计经验,Kelkboom提炼出五条看似“反常识”却高度务实的Agent编程原则,旨在将AI工具纳入可控的工程框架内:

第一,亲自搭建代码骨架。在任何Agent介入前,开发者必须手动创建目录结构、关键文件及函数签名。这一步不求完美,但需明确模块边界与接口契约。“Agent擅长找一条实现路径,却未必顾得上新代码与整体架构的关系”,Kelkboom解释道。若缺乏前置约束,极易滋生“上帝对象”、重复逻辑与无文档脚本。他建议新手可通过研究成熟开源项目,让Agent对比不同设计模式并解释权衡,再动手撰写注释与初步结构——目标不是让AI代劳决策,而是借助它培养自身判断力。

第二,主Agent禁止直接修改代码或文件。Kelkboom将Agent角色严格分工:主Agent仅负责对话理解、上下文检索与意图确认,由多个模型协同评分;只有当其对需求理解置信度超过90%时,才向人类提议启动“执行Agent”。这一设计刻意制造延迟,避免“听到问题就急着实现”的冲动行为。“我希望它先专心理解我在问什么”,他说,“否则容易偏离真实目标”。

第三,生成的代码看不懂就扔掉重来。这是最引发争议的一条。Kelkboom主张将Agent产出隔离在Git Worktree中,每1–2小时暂停检查一次。一旦发现代码偏离预设结构(如关键接口缺失、职责混乱),立即舍弃整个Worktree,回到对话层厘清是骨架、需求还是上下文信息存在冲突,再开启新会话重试。“既然生成成本极低,就不该为保住已有代码而不断叠加补丁”,他指出。这种“轻资产迭代”思维,与传统“惜码如金”的开发文化形成鲜明对比。

第四,尽可能让Agent一次性完成较大任务。相比分步微调,Agent在完整任务链(如“实现用户注册+登录+JWT鉴权+数据库迁移脚本”)上表现更稳定。反复小修易导致逻辑断裂与隐性耦合,而一次性交付更利于保持一致性。这一观点与Chef前CTO创业项目理念呼应——其获700万美元融资的初创公司正推动“AI只思考一次,其余交给代码运行”的范式。

第五,多Agent并行探索不同方案。例如启动三个Agent分别用不同架构风格实现同一功能,再由第四个Agent进行横向比较与质量评估,最终仅合并最优部分。这种方式利用AI的低成本优势,将“试错”转化为可并行的工程动作,而非单线程的被动修补。

这些原则背后,是对工程本质的重申:AI并未消除抽象、权衡与判断的需求,反而使其更关键。Kelkboom担忧一种未来场景:“我们培养了一代很会使用Agent、却缺少独立开发能力的人。”当代码生成变得廉价,初级工程师的成长路径将面临重构——他们需要更多时间学习架构思维、安全边界设定与产品意识,而非仅训练提示词技巧。

文章配图

关于代码审查,Kelkboom补充道:除关注最终Diff外,更应检查是否符合预设骨架、是否存在隐性技术债、以及上下文一致性。审查不再是语法纠错,而是对系统演进方向的校准。

这场讨论最终延伸至更深层命题:当Agent能承担大部分编码工作,人类工程师的时间应投向何处?Kelkboom的答案清晰而坚定——厘清产品目标、定义架构边界、设计部署与安全策略,并指导新人理解这些取舍。工具越强大,人的判断力越不可替代。

值得注意的是,这些原则并非否定AI价值,而是为其划定工程纪律。正如他在播客中所言:“拉开Agent工程师效率差距的关键,不是谁的提示词更巧,而是谁能更早、更准确地把方向交代清楚。”在AI辅助开发成为常态的今天,如何建立人机协同的“工程节奏”,已成为高阶技术团队的核心能力之一。