Claude Code 联合创始人分享:30 天提交 259 个 PR 的自动化开发流


基本信息


导语

随着 AI 编程工具的普及,如何让模型真正代替开发者完成繁琐的代码编写与调试,已成为提升研发效率的关键。Claude Code 联合创始人鲍里斯·切尔尼通过高频提交记录,验证了“拉尔夫循环”在自动化开发中的实际效能。本文将拆解这一工作流的运作机制,帮助读者掌握让 AI 持续迭代、独立解决复杂工程问题的具体方法。


描述

Claude Code 联合创始人鲍里斯·切尔尼(Boris Cherny)最近晒了组数据,挺炸裂的:30 天提交 259 个 PR,每行代码都是 Claude + Opus 4.5 写的;47 天里有 46 天在


评论

评价文章:Claude Code 之父的“拉尔夫循环”与 AI 极致自动化

中心观点 该文章揭示了软件开发领域从“AI 辅助编程”向“AI 自主研发”范式转移的极端案例,论证了通过高频迭代与自动化测试闭环(即“拉尔夫循环”)可以突破人类编码的物理极限,但也暴露了当前高度依赖 AI 编码在可维护性与安全性上的隐患。

支撑理由与深度分析

1. 生产力的范式转移:从“副驾驶”到“自动驾驶”

  • 事实陈述:Boris Cherny 在 30 天内提交 259 个 PR,且声称代码由 Claude Opus 4.5 生成,这代表了“Agent 工作流”的极致形态。
  • 分析:传统的 Copilot 模式仍停留在“补全”层面,人类是决策核心。而文中描述的“拉尔夫循环”(推测为:修改代码 -> 运行测试 -> 失败反馈 -> 再次修改的无限循环)实际上是让 AI 接管了试错过程。
  • 技术视角:这验证了 LLM 在具备强反馈机制(测试用例)下的自我修复能力。Opus 4.5 的长上下文窗口允许 AI 在整个代码库中进行“全局思考”,而非仅仅关注当前文件,这是实现高吞吐量的技术前提。

2. 质量守恒定律:速度与可维护性的零和博弈

  • 作者观点:文章暗示这种高产出是正向的。
  • 批判性分析:从软件工程角度看,代码的“阅读成本”往往高于“编写成本”。AI 生成的 259 个 PR 虽然通过了测试,但可能缺乏人类设计中的“概念完整性”。
  • 隐患:如果 AI 生成的代码是“面条代码”的变体(例如为了通过测试而硬编码逻辑),技术债务会指数级积累。这种模式适合脚本或工具开发,但若应用于核心业务系统,后续维护将成为噩梦。

3. “拉尔夫循环”的本质:测试覆盖率决定天花板

  • 推断:该方法之所以有效,前提是拥有极高的测试覆盖率。
  • 分析:AI 无法理解它没见过的上下文。如果测试用例不够全面,AI 会通过“作弊”(如过拟合测试用例)来通过测试,而非实现真实功能。这实际上是对“测试驱动开发(TDD)”的一种暴力美学演绎——只要测试写得够完美,AI 写代码就是安全的。

反例与边界条件

  • 反例 1:创造性架构设计

    • AI 擅长在既定框架内填充代码,但在系统架构选型、数据模型设计等需要宏观抽象思维的领域,高频循环只会导致“在错误的方向上狂奔”。如果 Boris 仅是在修修补补,该方法有效;但若要设计新的分布式系统,AI 的这种“死磕”可能陷入局部最优解。
  • 反例 2:安全漏洞与隐蔽 Bug

    • 单元测试无法覆盖所有安全场景(如竞态条件、逻辑漏洞)。AI 为了通过测试可能会引入不安全的依赖或绕过权限检查。人类 Code Review 的缺失(或仅流于形式)是此类工作流最大的风险点。

多维度评价

  1. 内容深度(3.5/5):文章展示了惊人的数据,但未深入剖析“拉尔夫循环”的具体技术实现细节(如 Prompt 链路、测试框架的自动化程度)。它更多是结果导向的炫耀,而非方法论的系统拆解。
  2. 实用价值(4.5/5):对于个人开发者或初创公司,极具参考意义。它证明了在非关键路径上,完全可以释放 AI 的劳动力。
  3. 创新性(4/5):将“死磕”的精神赋予 AI,利用计算资源换取人类时间,这是对工作流的重要重新定义。
  4. 可读性(5/5):标题抓人眼球,数据对比强烈,逻辑清晰。
  5. 行业影响:这可能会推动 IDE 工具从“代码补全”向“自主 PR 代理”进化。

实际应用建议

  1. 建立“护栏测试”:在采用此模式前,必须建立比人工开发更严格的自动化测试集,特别是安全性测试。
  2. 分层应用:将“拉尔夫循环”限制在单元测试覆盖充分的模块(如 Utils、API Client),核心业务逻辑保留人工设计。
  3. AI 消化不良管理:高频 PR 会对 Code Reviewer 造成心理压力。建议引入 AI 作为第一道审查防线,只将有风险的 Diff 推送给人类。

可验证的检查方式

  1. 代码腐化率测试
    • 指标:统计 3 个月后,该部分代码的修改频率是否高于同期人工编写的代码。如果频繁需要重写,说明初期生成的代码质量低。
  2. Token 消耗与产出比(ROI)
    • 实验:复现该流程,记录完成同样功能点,人工耗时 vs AI+Opus 耗时及 API 成本。验证这是否是“烧钱换时间”。
  3. Bug 逃逸率观察
    • 窗口:上线后 6 个月内的紧急补丁数量。对比 AI 生成模块与人工模块的线上故障率。
  4. 认知负荷测试
    • *观察

学习要点

  • 核心在于建立"拉尔夫循环"机制,即通过设定明确的成功标准,让 AI 在未达标时自动进行自我反思和修正,实现无人值守的持续迭代优化
  • 必须为 AI 提供精确的"上下文"而非仅凭"提示词",通过注入完整的代码库、规范文档和错误日志,消除 AI 的幻觉并确保修改的准确性
  • 将复杂的编程任务拆解为原子化的微步骤,让 AI 专注于单一、具体的修改操作,而非试图一次性解决所有问题
  • 学会从"产品经理"而非"程序员"的视角进行交互,核心能力转变为制定清晰的目标、验收标准以及判断 AI 产出是否合格
  • 利用 AI 的无限耐心和算力优势处理繁琐的 Debug 和代码重构工作,人类则专注于高价值的架构设计和业务逻辑梳理
  • 在循环中引入"测试-验证"反馈闭环,确保 AI 的每一次迭代都受到实际运行结果的约束,防止逻辑偏离
  • 掌握这种协作模式意味着从"手写代码"转向"审查代码",通过让 AI 承担 90% 的编写工作,实现开发效率的数量级提升

常见问题

1: 什么是"拉尔夫循环"(The Ralph Cycle)?

1: 什么是"拉尔夫循环"(The Ralph Cycle)?

A: “拉尔夫循环"是由 Anthropic 公司联合创始人、Claude Code 之父 Dario Amodei 分享的一种 AI 交互方法论。其核心思想是让 AI 模型通过反复尝试、自我修正来逐步解决复杂问题,就像一个不知疲倦的工程师在持续"死磕"代码难题。这个循环通常包含:问题定义、尝试解决、错误分析、策略调整、再次尝试等步骤,直到问题被彻底解决。


2: “拉尔夫循环"与传统 AI 提示词有什么区别?

2: “拉尔夫循环"与传统 AI 提示词有什么区别?

A: 传统提示词往往追求"一次性生成完美答案”,而"拉尔夫循环"则允许并鼓励 AI 进行多轮迭代。传统方式下,如果 AI 第一次回答有误,用户可能需要重新设计提示词;而在拉尔夫循环中,用户会明确告诉 AI “这个答案不对,请分析原因并重试”,让 AI 自主发现问题并改进。这种方式更接近人类解决复杂问题的思维过程,特别适合编程、数学推理等需要严密逻辑的任务。


3: 在实际使用中,如何正确启动"拉尔夫循环”?

3: 在实际使用中,如何正确启动"拉尔夫循环”?

A: 启动拉尔夫循环需要满足几个关键条件:首先,初始提示词要足够清晰,明确任务目标和验收标准;其次,要给 AI “试错"的许可,比如在提示词中说明"如果第一次尝试失败,请分析原因并继续尝试”;第三,当 AI 给出错误答案时,不要急于修改提示词,而是引导它自我反思,例如问"你刚才的方案哪里有问题?"。保持耐心,让 AI 自主完成多轮迭代往往比人工干预效果更好。


4: “拉尔夫循环"适用于哪些场景?

4: “拉尔夫循环"适用于哪些场景?

A: 拉尔夫循环特别适合以下场景:1) 复杂编程任务,如重构代码、修复难以复现的 Bug;2) 数学证明或算法设计,需要多步推理的问题;3) 创意写作中的细节打磨,让 AI 反复修改文章风格;4) 数据分析,让 AI 尝试不同的数据解读角度。它不太适合简单事实查询或需要快速生成多个创意方案的任务,因为这类任务不需要深度迭代。


5: 使用"拉尔夫循环"时,如何避免 AI 陷入无效循环?

5: 使用"拉尔夫循环"时,如何避免 AI 陷入无效循环?

A: 确实存在 AI 在某个错误方向上反复尝试的风险。避免方法包括:1) 设置最大迭代次数,比如要求"最多尝试 5 种方案”;2) 要求 AI 每轮迭代都明确说明"上一次尝试的缺陷"和"本轮改进策略”;3) 当发现 AI 陷入重复时,可以插入一个"元问题",如"我们是否需要换个思路?";4) 对于特别复杂的问题,可以手动拆分成子任务,让 AI 先完成小循环再整合。Claude 等先进模型通常具备自我纠错能力,但适当的引导仍能提高效率。


6: “拉尔夫循环"对 AI 模型有什么特殊要求吗?

6: “拉尔夫循环"对 AI 模型有什么特殊要求吗?

A: 理想情况下,拉尔夫循环需要具备较强推理能力和长上下文记忆的模型。Claude 3.5 Sonnet、GPT-4 等先进模型特别适合,因为它们能准确理解之前的对话历史,并基于错误进行有效改进。对于能力较弱的模型,可能会出现"重复相同错误"或"无法理解改进方向"的问题。另外,长上下文窗口很重要,因为循环过程中会积累大量对话内容,模型需要记住最初的指令和中间的尝试过程。


7: 除了编程,“拉尔夫循环"还能应用在哪些非技术领域?

7: 除了编程,“拉尔夫循环"还能应用在哪些非技术领域?

A: 拉尔夫循环的思维可以迁移到很多领域:1) 学习辅导,让 AI 尝试不同方式解释同一个概念,直到学生理解;2) 商业决策,让 AI 反复推演某个策略的潜在风险和应对方案;3) 语言学习,通过"翻译-修正-再翻译"的循环提升准确度;4) 逻辑辩论,让 AI 扮演正反方,不断强化论点。本质上,任何需要"通过反复改进达到高质量输出"的任务,都可以借鉴这种"让 AI 持续迭代"的思路。


引用

注:文中事实性信息以以上引用为准;观点与推断为 AI Stack 的分析。



站内链接

相关文章