内容提要
Warp通过两个Skill实现Agent自我进化:一个负责代码审查,另一个定期收集人类工程师的评论反馈,自动更新审查Skill。核心是让Agent根据人类标注改进,而非自我优化。最佳实践包括:写原则而非死规则、解释原因、低摩擦收集反馈、保持Skill精简、重视反馈质量,并确保人类审核改动以防错误反馈。
延伸解读
人类反馈是进化的关键
Warp 的自我进化并非让 Agent 独自优化,而是依赖人类工程师在代码审查时留下的评论作为反馈信号。这种设计避免了模型自我改进可能出现的“负优化”问题,因为人类反馈提供了明确的方向。文章强调,反馈的质量比数量更重要,资深工程师的详细评论能提供领域知识,这是 Agent 无法自行获得的。
低摩擦反馈机制
Warp 将反馈收集设计得几乎无感:工程师只需在 PR 或 issue 下自然评论,后续的收集和 Skill 更新由 Agent 自动完成。这种低摩擦设计确保了反馈信号的持续流动,避免了因额外步骤导致的反馈缺失。文章指出,如果反馈过程太麻烦,就无法获得足够的信号来改进 Skill,因此将反馈融入日常工作流是关键。
防止错误反馈的机制
针对反馈可能出错的问题,Warp 采取了多重防护:Agent 会基于上下文进行合理性检查,限制有权限影响 Skill 更新的反馈来源,并始终保留人类审核改动。对于有明确标准答案的领域,如代码测试,可建立验证基准;对于主观领域,如代码风格,则依赖领域专家判断,而非开放给所有人。
改进 Skill 的复用价值
Warp 强调,用于改进代码审查 Skill 的“改进 Skill”本身具有很高的复用性。除了领域专用知识外,它是一套通用机制,可以应用于其他 Skill 的改进。这意味着投入精力做好改进 Skill,不仅能优化当前 Agent 循环,还能为未来其他 Agent 的自我进化提供基础设施,实现长期收益。
Q&A
Warp 如何让 Agent 自我进化?
Warp 通过两个 Skill 实现 Agent 的自我进化:一个负责代码审查,另一个定期收集人类工程师在代码审查时的评论,并根据这些评论自动更新代码审查的 Skill。核心是让 Agent 根据人类的标注(评论)来改进,而不是依赖模型自我优化。
为什么 Warp 的 Agent 一开始做代码审查效果不理想?
因为 Agent 不了解项目背景、团队规范和历史经验教训,即使被指出问题下次也记不住,简单来说就是没有记忆。
Warp 在 Agent 自我进化中,人类和 Agent 各自扮演什么角色?
人类负责高维度的标注、评论和反馈,比如在代码审查时写评论;Agent 负责执行工作,并根据人类的反馈自动改进 Skill。
Warp 总结的 Agent 自我进化最佳实践有哪些?
Warp 总结了 6 条最佳实践:1. 写原则而非死规则;2. 解释规则背后的理由;3. 让反馈低摩擦、毫不费力;4. 保持 Skill 精简并使用渐进式披露;5. 反馈质量大于数量,但数量也有帮助;6. 做好改进 Skill 的 Skill,使其可复用于其他 Skill。
如果反馈本身是错的,Warp 如何处理?
Warp 不会让 Agent 盲目接受反馈,而是采取以下措施:给 Agent 足够的上下文做合理性检查,限制谁的反馈有权影响技能更新(不是所有人的意见都同等重要),并始终保留人在循环中审核改动。
Warp 的改进 Skill 为什么具有复用性?
因为改进 Skill 的机制是通用的:它收集人类反馈并更新其他 Skill,除了领域专用知识部分,其余机制可以应用到不同用例中,因此具有很高的复用性。