在我们的系列文章中,我们展示了初创企业如何利用人工智能改变各自行业。本文将分享Warp如何将无状态的用户反馈转化为智能代理的自我改进循环。

智能代理需要可靠且高效地处理重复任务。一个初始提示如果只能正确完成80%的任务,往往会给用户带来噪音和困扰。Warp团队深刻体会到这一点,并以此指导产品策略,最终为全球近百万开发者带来了更优体验。

Warp是一款基于Claude平台的AI驱动终端及智能开发环境。团队在内部代码审查代理中遇到了“噪音体验”问题,工程师们抱怨代理给出的评论无用且质量低下。

起初,团队尝试了临时方案,比如根据代码审查失败情况手动重写提示,这虽然提升了输出的可用性,但难以规模化。改进AGENTS.md等上下文文件也有所帮助,但远非彻底解决方案。

最终他们意识到,真正的问题在于,无论代理的用途是什么,反馈通常在会话结束时消失,导致关键上下文丢失,阻断了智能代理的自我改进循环。解决方案是基于Agent Skills框架,打造能够随着时间积累反馈不断优化自身输出的自我提升代理。

下面介绍他们如何基于Claude平台的技能构建这一机制。

基于技能的智能代理自我提升循环

核心技术是利用技能——一种基于文件的知识编码方式,将指令从原始提示中剥离。Warp设计了由两个技能组成的自我提升代理架构,中间穿插人工反馈。

自我提升循环

内层/基础技能包含功能领域知识和指令。例如,当有PR(拉取请求)打开时,Warp的代码代理会基于该基础技能和上下文执行代码审查。

人工反馈是自我提升循环的关键。对于代码审查,反馈可以是简单的点赞,但越具体越好。

Warp创始人Zach Lloyd解释:“人工可以确认‘这是一个有用的评论’,也可以详细说明为何代码审查不佳。比如‘你建议重命名这个变量,但我们的代码库约定是这类全局变量使用特定命名方式’,这会告诉代理下次如何改进。”

外层/改进技能作为观察者代理,按计划运行而非每个任务触发。它收集累计的人工反馈,将代理建议与人工回应对比,提出对基础技能的小范围、聚焦修改建议。

由于技能是普通文件,代理非常擅长更新它们。这些更新经过审查、批准和合并,流程与普通PR/代码审查一致;合并后,内层技能的下一次运行即继承改进。

Warp目前已在其整个开源仓库中应用此模式,分别为规格编写、代码审查和问题分类代理各自建立自我提升循环。

Zach说:“基于文件的技能是一种编码知识的方式,让代理在执行任务时可以查阅,而不是直接把知识写进提示。框架非常简单:有基础领域技能,还有改进技能负责优化它。这种简单性正是方法的魅力。”

如何编写智能代理的自我提升技能

Warp团队总结了编写自我提升技能的实用建议:

  • 写原则,不是规则。 Zach说:“构建技能时,像在指导聪明人,而非编程计算机。比如‘注意重复代码’比列出详尽变量命名规则更有效。”
  • 解释原因。 说明规则背后的理由,让代理能推理问题,而非死板执行指令,有助于更好泛化。
  • 让反馈轻松易给。 在用户已有工作环境中捕获反馈,比如直接在PR或issue评论中。且自动化收集,无需额外提交步骤。Zach指出:“低门槛保证信号流畅,否则难以获得反馈,技能也无法改进。”
  • 保持技能文件小巧,采用渐进式披露。 优质技能文件不大,引用资源文件和脚本,而非一次性加载全部上下文。
  • 反馈质量重于数量,但数量也有帮助。 资深工程师给出的少量详细领域反馈,价值远超大量简单点赞,因为后者无法说明原因。Zach补充:“即使样本量小,只要反馈详细且具领域知识,信号也很强。Warp通过循环管理整个开源库,数百人贡献,数千次代码审查。”
  • 投入更多精力在改进技能上。 改进技能(观察者代理)写得好,收益超出单一循环,且跨场景复用性强。“除领域知识外,改进技能机制相对通用,代码审查代理和其他代理的改进技能差别不大。”

循环实例:Warp的问题分类代理

Warp的问题分类代理展示了自我提升代理技能框架。每当有人提交新的GitHub issue时,GitHub Action触发代理分析问题复杂度和可行性,分配标签并建议修复方向。该代理基于内层技能文件,包含标签含义及如何调研代码库的领域知识。

在一个示例issue中,第一阶段内层技能表现良好,但遗漏了“ready to spec”标签,表示贡献者可开始编写产品和技术规格。Warp维护者发现这一缺失,直接在issue上留下反馈,明确说明预期及原因,方便代理后续吸收。

外层改进技能作为Warp的代理编排平台Oz中的定时“更新分类”代理运行。该代理认证GitHub,执行随技能打包的Python脚本,拉取带反馈的近期issue,汇总成JSON文件并读入上下文。打包脚本是最佳实践,技能可引用资源文件而非每次写新代码。

代理识别维护者评论中的具体反馈信号,提出最小修改建议,发起PR编辑内层技能,新增规则:当issue描述真实问题但UI/UX未定时,自动应用“ready to spec”标签。

由于更新是技能文件,遵循正常代码审查流程。PR附带说明,解释触发修改的信号及变更内容。人工审核、批准并合并后,下一次分类技能运行即继承新知识。人工环节闭合循环,确保变更受控。

Warp现已在其开源库大规模运行此机制,规格编写、审查和分类代理各自拥有自我提升循环。

无论代理任务为何,只要从一开始构建此类循环,捕获人工反馈信号并转化为技能更新,就能让代理不断进步,成为组织内持续成长的强大系统。

观看完整网络研讨会了解Warp如何利用Claude构建从团队反馈中学习并自我提升的智能代理。

立即开始使用Claude平台构建你的智能代理。