第 27 章 复合式进化:让 Agent 系统越用越值钱
让下一件事比上一件更容易
第 24-26 章让 Agent 在反馈、评测、RL 里进化。这一章回答一个元问题:怎么让"进化的速度"本身也进化?
传统软件工程有边际收益递减:每加一个功能,复杂度增加,下一个功能更难建。技术债累积、入职更慢、新成员难上手。有了 AI 编码 Agent,这个问题被放大,Agent 会重复犯同样的错,因为学到的经验没有被系统化捕获和沉淀。
这一章讲三个模式,把"递减"翻转成"复利":
- Compounding Engineering(工程复利):把每次功能的经验沉淀成可复用资产。
- Frontier-Focused Development(前沿聚焦开发):永远对准最强模型,别被旧模型绑住。
- Progressive Complexity Escalation(渐进复杂度升级):从简单可靠开始,逐步开放更复杂能力。
模式一:工程复利(Compounding Engineering Pattern)
问题
传统软件工程有边际收益递减:每加一个功能,复杂度增加,后续功能更难建。技术债累积、入职更慢、新成员难上手。
有了 AI 编码 Agent,这个问题被放大:Agent 反复犯同样的错,因为经验没被系统化捕获和沉淀。
方案
把方程反过来:让每个功能"复利",把全部经验沉淀成可复用的 Agent 指令。完成一个功能时,记录:
- 计划里什么有效、什么需要调整。
- 测试中发现的问题,那些更早没抓到的。
- Agent 常犯的错误。
- 该复用的模式和最佳实践。
然后把洞见嵌进:
- CLAUDE.md / 系统提示词:全局编码标准。
- 斜杠命令:可重复的工作流(比如
/test-with-validation)。 - 子 Agent:专门的验证器(比如安全评审 Agent)。
- 钩子:防回归的自动化检查。
结果:每个功能让下一个更容易,因为代码库变得越来越"自我教学"。
建功能 → 记录经验 → 沉淀进提示词/命令 → 下个功能用上知识 → 更容易更快地建 → 回到建功能怎么用
功能开发期间:
- 跟踪 Agent 最初哪里做错了。
- 记下计划里哪些部分需要修订。
- 记录测试中发现的边角情况。
- 识别你反复回答的问题。
完成后:
- 用新编码标准或模式更新
CLAUDE.md。 - 给会重复的工作流建斜杠命令。
- 建做专门验证任务的子 Agent。
- 加钩子自动防常见错误。
- 写编码需求的测试。
Every 的例子(Dan Shipper):"我们有个叫复合式工程的工程范式,目标是让下一个功能更容易建……我们把所有经验沉淀回所有提示词、子 Agent 和斜杠命令。"这让非专家能立即上手:"我可以跳进我们的代码库开始干活,虽然我对代码怎么工作一无所知,因为我们已经建起了记忆系统。"
协同模式:和执行日志记忆合成(跨功能识别模式)、编码 Agent CI 反馈循环(提供结构化测试反馈)、技能库进化(沉淀可用方案)协同。
取舍
- 好处:生产力加速,每个功能真让下一个更快;知识保留,经验不靠个人记忆;入职更好,新成员(人或 AI)利用累积的知识;减少重复,Agent 不再犯同样的错;活文档,指令每天被用所以保持最新。
- 代价:前期时间投入,每个功能后要纪律地记录;维护开销,模式变化时提示词和命令要更新;过度规格风险,规则太多让 Agent 不灵活;要工具,需要可扩展的 Agent 系统(斜杠命令、钩子等);提示词膨胀,系统提示词随时间变大。
模式二:前沿聚焦开发(Frontier-Focused Development)
问题
AI 能力沿可预测的缩放定律快速前进,为今天的模型优化的产品几个月就过时。很多团队浪费时间解决前沿模型已经能解决的问题,或者建绑定特定模型的产品,而那个模型不会一直有竞争力。
方案
永远对准前沿,也就是最新最强的模型,并设计能随前沿移动快速演进的产品。别为更老、更便宜的模型优化,也别提供把用户困在过去的模型选择器。
核心原则:
- 没有模型选择器:为每个用例挑最好的模型,别让用户选。
- 要么前沿要么不做:只建推动边界、产生学习的特性。
- 快速演进:预期每 3 个月彻底改一次产品(AI 产品生命周期研究确认季度周期对保持竞争力是必要的)。
- 订阅抵抗:别被单一模型的定价结构绑住。
新模型发布 → 在前沿吗?
是 → 立即采用 → 从使用学习 → 产品演进 → 回到新模型发布
否(更便宜/更老)→ 忽略,将过时 → 白费功夫 → 6 个月后产品过时为什么不为成本优化:涌现能力研究显示,有些能力在规模上突然出现,无法在小模型里预测或工程化绕开。针对今天模型做成本优化,解决的正是前沿模型很快就会天然解决的问题。
为什么没有模型选择器:
- 学习:大家用不同模型,你学不到用户怎么交互(研究表明聚焦单一模型的产品学得更快)。
- 聚焦:一种产品用法,意味着每个人都能受益于改进。
- 演进:不受 3-6 个月前流行的模型束缚。
- 质量:能专门为最好模型的能力优化。
订阅模式的风险: 提供订阅(像 Claude Max)你就被那个模型绑住:更好的模型出现时切不走、价格变化变得对用户敌对、路线图被一家公司决定。
证据
- 证据等级:新兴(
emerging),来自 AMP(Thorsten Ball、Quinn Slack)。 - 学术基础:Kaplan 等人(2020)缩放定律、Wei 等人(2022)涌现能力、Wang 等人(2023)AI 生命周期。
- 生产实现:AMP(Anthropic)、Claude Code、Cursor、v0.dev、Perplexity 都用有主见的前沿模型选择,没有面向用户的选择器。
怎么用
功能/构建选择的决策框架:
frontier_test:
question_1: "我们能从这学到什么?"
question_2: "这推动前沿吗?"
question_3: "3 个月后这还有价值吗?"
任何一个否: "别建"
全是否: "建"模型策略:
| 方法 | 问题 | 方案 |
|---|---|---|
| 模型选择器 | 用户困在旧模型,没学习 | 每模式挑最好模型,不给用户选 |
| 成本优化 | 解决新模型已经能解决的问题 | 用前沿,成本随时间降 |
| 订阅绑定 | 被一个模型路线图锁住 | 按量付费,随时切模型 |
| 多模型支持 | 维护噩梦、困惑 | 用最好模型,更好的出现就切 |
前沿聚焦什么时候成立: 瞄准早期采用者和前沿用户;为重视速度胜过成本的开发者建;能快速转向的小团队;AI 能力是核心差异点的产品;想在尖端的用户。
什么时候考虑替代: 需要稳定性的企业客户;性能不关键的成本敏感市场;AI 是次要特性不是核心价值的产品;没法季度转向的大团队。
"Agent 的原初汤": 当一切都在变(模型、软件、怎么写软件),为稳定优化是输的策略。接受混乱:"我们现在看到的很多软件有叫 LLM 的非确定性元素。软件本身在变,怎么写软件在变,谁/什么在写软件在变。"
取舍
- 好处:永远在前沿,产品随模型提升;快速学习,聚焦使用产生清晰洞见;面向未来,更好的东西出现能立刻切模型;质量聚焦,为最好能力优化不是最低共同分母;创新,定位在发现前沿模型能做什么。
- 代价:更高成本,前沿模型更贵(暂时);市场更小,有些用户不愿为前沿表现付钱;快速变化,产品 3 个月后可能完全不一样;排他,不为想要稳定的"中位数"用户建;不确定,不断重新发明而不是稳定。
模式三:渐进复杂度升级(Progressive Complexity Escalation)
问题
组织从第一天就部署能力过于激进的 Agent,导致:
- Agent 处理超出当前模型能力边界时,输出不可靠。
- 失败的实现损害利益相关者的信心。
- 复杂推理任务产出不一致的结果。
- 白费工程功夫,为模型还交付不了的能力建基础设施。
- 高利害操作自主执行带来的安全风险。
理论 Agent 能力和实际可靠性之间的差距,造成部署失败。
方案
设计 Agent 系统从低复杂度、高可靠性的任务开始,随模型改进和信任建立逐步开放更复杂的能力。 把任务复杂度匹配当前模型能力,而不是按理论潜力建。
核心原则,植根于学习科学:
- 借鉴课程学习理论和脚手架研究。
- 最优学习发生在 70-90% 成功率(最近发展区,Zone of Proximal Development)。
- 工作记忆限制要求复杂度渐进增加。
从验证过的甜区开始:
- 低认知负荷、高重复的任务。
- "对传统自动化太动态、但对 AI 可靠处理又足够可预测"的任务。
- 信息收集和综合,而不是复杂推理。
- 定义清晰的成功标准。
定义能力层级:
第一层(立即部署):
- 数据录入和研究
- 内容分类
- 信息提取
- 基于模板的生成
- 工作记忆:2-3 项
第二层(验证后解锁):
- 带人工门的多步工作流
- 带结构化输出的条件逻辑
- 多工具集成
- 个性化和适配
- 工作记忆:4-5 项
第三层(未来解锁):
- 自主决策
- 复杂推理链
- 创造性解题
- 新颖任务泛化
- 工作记忆:7+ 项渐进解锁机制: 性能指标触发能力扩展;提升到更高层前人审门;新能力和基线 A/B 测试;带监控的渐进上线。
示例工作流演进:
阶段 1 信息收集: Agent 研究线索数据 → 给人呈现发现 → 人写邮件
阶段 2 结构化生成: Agent 研究+资格评估 → Agent 起草邮件 → 人批准/编辑 → 人发送
阶段 3 条件自动化: Agent 研究+资格评估 → 置信度 > 0.8? 是 → 自动发邮件;否 → 人审
(每阶段验证可靠后进入下一阶段)怎么用
什么时候用: 部署 Agent 进生产环境;建内部自动化工具;客户面向的 Agent 应用;高利害或受监管领域;可靠性没验证的新 Agent 能力。
实施:
1. 给任务复杂度分类:
class TaskComplexity:
LOW = {cognitive_load: 最小, steps: 1-3, tools: 0-2, reasoning: 浅, error_impact: 低}
MEDIUM = {cognitive_load: 中等, steps: 4-8, tools: 2-5, reasoning: 多步, error_impact: 中}
HIGH = {cognitive_load: 显著, steps: 8+, tools: 5+, reasoning: 深/创造, error_impact: 高}2. 定义晋升标准:
capability_gates:
tier1_to_tier2:
- accuracy_threshold: 0.95
- human_approval_rate: 0.90
- volume_processed: 1000
- time_in_production: 30 天
- success_rate_target: 0.70-0.90 # 最近发展区最优区间
tier2_to_tier3:
- accuracy_threshold: 0.98
- human_override_rate: 0.05
- volume_processed: 10000
- stakeholder_confidence: 高3. 实现能力标志: 用 tier 字段控制 Agent 能做什么,低层只展示发现、高层才自动发送(置信度 > 0.8)。
4. 监控和晋升: 按层跟踪成功指标;审查错误模式和边角情况;渐进扩展 Agent 权限;保留回滚能力;成功率 >90% 就加任务难度,<70% 就减。
前置条件: 每个能力层有清晰成功指标;监控和可观测性基础设施;利益相关者对演进计划一致;失败的回退机制。
取舍
- 好处:风险缓解,限制 Agent 错误的爆炸半径;利益相关者信心,用验证过的可靠性建立信任;工程聚焦,资源花在验证过的能力上;优雅降级,系统在更低层也有用;模型演进就绪,架构为能力增长准备好;现实预期,部署对齐实际模型表现。
- 代价:价值延迟,完全自动化收益随时间才实现,不是立即;复杂度,要层级管理和晋升逻辑;维护开销,多条能力路径要测试和维护;晋升摩擦,指标和晋升决策要人工审查;用户困惑,部署阶段间能力不一致;工程投入,为未来能力建基础设施。
平衡方法: 向利益相关者清晰传达能力路线图;用客观指标自动化层级晋升;保持简单心智模型("Agent 今天能做什么?");从第一天就为能力增长设计。
三个模式怎么选
| 场景 | 推荐模式 |
|---|---|
| 想让经验沉淀、越建越快 | 工程复利 |
| 怕被旧模型绑住、想一直领先 | 前沿聚焦开发 |
| 部署激进能力怕翻车 | 渐进复杂度升级 |
三个模式是复合式进化的三个引擎:工程复利让"经验"复利(每次功能让下次更容易),前沿聚焦让"模型"复利(永远站在最强模型上),渐进复杂度让"能力"复利(简单可靠起步,逐步解锁复杂)。经验、模型、能力,三个都复利,Agent 系统才真的越用越值钱。
实践清单
- 每个功能完成后记录:计划什么有效、测试发现问题、Agent 常犯错、该复用的模式
- 经验沉淀进 CLAUDE.md / 斜杠命令 / 子 Agent / 钩子
- 别提供模型选择器,每用例挑最好模型,聚焦单一模型学得更快
- 建功能前三问:学到什么?推动前沿吗?3 个月后还有价值吗?
- 从低复杂度高可靠性任务开始(70-90% 成功率是最近发展区)
- 定义能力层级(信息收集 → 人审 → 条件自动化),性能指标触发晋升
- 晋升标准写清楚:准确率、人工批准率、处理量、生产时长
- 成功率 >90% 加难度,<70% 减难度,保留回滚能力
- 成功率、晋升、回滚都监控,让系统越用越值钱
本章小结
- 工程复利:每个功能把经验沉淀成可复用资产,代码库越来越"自我教学"。
- 前沿聚焦开发:永远对准最强模型,无模型选择器,产品随前沿移动。
- 渐进复杂度升级:从简单可靠起步,70-90% 成功率区间,逐步开放复杂能力。
- 经验、模型、能力三重复利,Agent 系统越用越值钱。
到这里,第六部分"让它进化"就讲完了。你的链路现在是:反馈信号(24)→ 评测驱动改进(25)→ 强化学习(26)→ 复合式进化(27),从"给 Agent 信号"到"Agent 的权重和记忆真正进化"。下一部分,进入"规模化到多智能体"。先从第 28 章多智能体协调开始。