复利工程:AI 在我看到代码之前就已经修复了它
摘要
作者分享了 Claude Code 如何从他过去三个月的代码审查中学习,并在未经询问的情况下应用这些教训的故事。他提出了"复利工程"的概念:构建自我改进的开发系统,每次迭代都使下一次更快、更安全、更好。这与只追求短期收益的传统 AI 工程形成鲜明对比。
内容框架与概述
文章以一个令人惊讶的场景开篇:作者打开 GitHub 期望进行他的常规工作,却发现 Claude Code 已经留下了几条强有力的评论,解释它如何从 PR #234、#219 和 #241 的反馈中学习,并应用了那些教训。Claude 彻底了解了他的品味,就像一个敏锐的新队友一样,并且有凭据。
作者将这种感觉描述为"感觉像作弊",但这实际上是复利。每次你修复某些东西时,系统都会学习。每次你审查某些东西时,系统都会学习。每次你以可避免的方式失败时,系统都会学习。这就是他们构建 Cora(Every 的 AI 邮件助手)的方式:创建系统的系统,然后让开。
作者将"复利工程"定义为:构建自我改进的开发系统,其中每次迭代都使下一次更快、更安全、更好。典型的 AI 工程是关于短期收益的:你提示,它编码,你发布,然后重新开始。复利工程是关于构建有记忆的系统,每次 Pull Request 都教会系统,每个 Bug 都变成永久教训,每次代码审查都更新默认值。AI 工程让你今天更快。复利工程让你明天更快,以及之后的每一天更快。
作者介绍了 10 分钟投资永久回报的例子。他正在为 Cora 构建一个"挫折检测器",目标是让 AI 助理注意到用户何时对应用行为感到恼火,并自动提交改进报告。他没有采用传统方法(编写检测器、手动测试、调整、重复),而是从展示挫折的示例对话开始,然后交给 Claude,提示为:“这个对话展示了挫折。编写一个测试来检查我们的工具是否能捕捉到它。”
Claude 编写了测试,测试失败了(TDD 的自然第一步)。然后作者告诉 Claude 编写实际的检测逻辑。编写后仍然不能完美工作,这也是意料之中的。然后是美丽的部分:作者可以告诉 Claude 迭代挫折检测提示,直到测试通过。不仅如此,它还可以继续迭代。Claude 调整提示并再次运行测试。它读取日志,看到为什么错过了六个失败运行中的挫折信号,并再次调整。几轮之后,测试通过了。
作者强调,由于 AI 输出不是确定性的,他在一次运行中只识别出 4 次挫折(10 次中)。Claude 分析了每次失败的原因,发现了一个模式:它错过了用户可能使用的对冲语言,如"嗯,不太对",当与重复请求配对时实际上表示挫折。Claude 然后更新了原始挫折检测提示,专门寻找这种礼貌但挫折的语言。在下一次迭代中,它能够在 10 次中识别出 9 次挫折,足够好可以发布。
他们将整个工作流程(从识别挫折模式到迭代提示到验证)编码在 CLAUDE.md 中,Claude 在每次对话前会拉入该文件以获取上下文。下次他们需要检测用户的情绪或行为时,不需要从头开始。他们说:“使用挫折检测器中的提示工作流程。“系统已经知道该做什么。
核心概念及解读
复利工程:构建自我改进的开发系统,其中每次迭代都使下一次更快、更安全、更好。与传统 AI 工程只追求短期收益不同,复利工程通过系统的记忆和学习能力实现长期价值增长。
CLAUDE.md:Claude Code 在每次对话前会拉入的特殊文件,用于存储上下文和工作流程,使系统能够记住并应用从过去经验中学到的教训。
TDD(测试驱动开发):Test-Driven Development,一种开发方法,先编写失败的测试,然后编写代码使测试通过。作者将这种方法应用于 AI 提示的迭代。
Chain of Thought:Claude 在做出决定时显示的分步思考过程,作者用它来分析 AI 为何错过挫折信号,从而发现模式并改进提示。
Cora:Every 的 AI 邮件助手,是复利工程实践的实际应用案例,作者通过这种方式构建了一个能够持续学习和改进的系统。
原文信息
| 字段 | 内容 |
|---|---|
| 原文 | My AI Had Already Fixed the Code Before I Saw It |
| 作者 | Kieran Klaassen |
| 发表日期 | 2026-01-27 |
此摘要卡片由 AI 自动生成