Signal Desk
Claude:Blog(网页)AI 中文译文 · 待人工复核

如何在 Claude 上构建自我改进的智能体:Warp 的经验分享

英文标题:How Warp builds self

Warp 公司利用 Claude 平台的 Agent Skills 功能,设计了一种基于文件、结合人类反馈的自我改进智能体循环,解决了智能体输出质量低且无法扩展的问题。

正文研究价值 81 / 100

英文原文我的研究区

为什么值得关注

这项技术让 AI 智能体能够从用户反馈中持续学习和改进,而无需人工频繁重写提示词。对于普通用户来说,这意味着 AI 工具会越用越聪明,能更准确地理解需求,减少错误和噪音。对于企业而言,这种自我改进机制可以降低维护成本,提升自动化效率,让 AI 系统在复杂环境中长期稳定地发挥作用。

核心要点

  1. Warp 通过 Agent Skills 构建了自我改进的智能体循环,解决了反馈丢失问题。
  2. 内部基础 skill 提供领域知识,外部改进 skill 收集反馈并优化基础 skill。
  3. 反馈在用户工作的地方(如 PR 评论)直接捕捉,降低摩擦。
  4. 改进通过正常的代码审查流程合并,确保人类控制。
  5. 编写 skill 时注重原则而非规则,并解释原因,以提高泛化能力。
  6. 该模式已应用于 Warp 的开源仓库,包括代码审查、规格编写和 issue 分类等智能体。

了解 Warp 如何设计出一种简单的开发模式,让任何人都能创建自我改进的智能体。

在我们的系列文章中,我们重点介绍初创公司如何利用 AI 改变他们的行业。在这篇文章中,我们分享 Warp 如何将无状态的用户反馈转化为其智能体的自我改进循环。

智能体需要可靠且高效地处理重复性任务。如果第一版提示词只能完成 80% 的任务,那就会给用户带来嘈杂且烦人的体验。Warp 在这方面吃了不少苦头,并以此为依据制定了产品策略,为全球近 100 万开发者带来了更好的体验。

Warp 是一款 AI 驱动的终端和智能体开发环境,它建立在 Claude 平台上。团队在内部代码审查智能体上遇到了这个“嘈杂体验”的问题。工程师们抱怨说,他们的智能体发表了无用的评论,产出的质量也很低。

团队最初尝试了一些临时解决方案,比如根据观察到的代码审查失败情况手动重写提示词。这让输出更可用,但无法扩展。改进像 AGENTS.md 这样的上下文文件也有帮助,但远非完整的修复。

最终,他们意识到,真正的问题是:无论智能体的目的是什么,反馈通常在会话结束时消失,从而从智能体循环中移除了关键上下文。他们的解决方案是:一个基于 Agent Skills 的框架,用于创建自我改进的智能体,让反馈随时间累积,不断优化和增强智能体的输出。

继续阅读,了解他们如何在 Claude 平台上使用 skills 构建这一系统。

基于 skills 的智能体自我改进循环

核心技巧是一个使用 skills 的自我改进循环。Skills 是基于文件的知识编码方式,可以把指令从原始提示词中分离出来。Warp 设计了一种自我改进的智能体架构,由两个 skills 组成,中间穿插着人类反馈。

内部/基础 skill 包含功能性领域知识和指令。例如,当打开一个 PR(拉取请求)时,Warp 的代码智能体会使用该基础 skill 和上下文来生成审查意见。

人类对智能体输出的反馈是自我改进循环的关键组成部分。对于代码审查来说,这可能简单到只是一个点赞,但越明确越好。

“人类可以确认‘这是一条好的、有用的评论’,”Warp 创始人 Zach Lloyd 解释说,“但人类也可以给出详细的原因,说明为什么代码审查不好。比如‘你建议重命名这个变量,但我们代码库的惯例是这种全局变量使用这种特定的命名方式’,这些具体细节会告诉智能体下次该怎么做。”

外部/改进 skill 充当观察者智能体,它按计划运行,而不是按任务运行。它收集累积的人类反馈,比较智能体的建议与人类的回应,然后对基础 skill 提出一个小而聚焦的修改。

因为 skills 是纯文本文件,智能体非常擅长更新它们。这些更新是可审查、可批准、可合并的,可以通过正常的 PR/代码审查流程进行;一旦合并,下一次运行内部 skill 时就会继承这些改进。

Warp 现在在其整个开源仓库中运行这种模式,分别有规格编写、审查和分类智能体,每个都带有自己的自我改进循环。

“基于文件的 skills 是一种为智能体编码知识的方式,而不需要把这些知识直接放在提示词中,智能体可以在工作过程中随时查阅,”Zach 说。“这个框架其实非常简单:有一个基础的领域特定 skill,然后有一个改进 skill 来优化那个领域特定 skill。这种简单性正是这个方法的魅力所在。”

如何为智能体编写自我改进的 skills

以下是 Warp 团队在编写用于智能体循环的自我改进 skills 时的一些经过验证的技巧:

  • 写原则,而不是规则。 “构建 skill 时,要像在指导一个聪明人一样,而不是像在给计算机编程,”Zach 说。“在 skill 中加入像‘寻找重复代码’这样的方向,比详尽的变量命名规则提供更好的指导。”

  • 解释为什么。 提供规则背后的理由,让智能体能够推理问题,而不是遵循僵化的指令,这也能更好地泛化。

  • 让反馈变得轻松。 在人们已经工作的地方捕捉反馈,比如直接在 PR 或 issue 上评论。同时,让这个过程自动发生,不需要额外的提交步骤。“低摩擦是保持信号流动的关键,”Zach 指出。“如果你让反馈变得太难,你就得不到反馈,也就无法改进 skill。”

  • 保持 skill 小而精,使用渐进式披露。 一个好的 skill 文件不应该很大;它引用资源文件和脚本,而不是一次性把所有内容都塞进上下文。

  • 反馈质量 > 数量,但数量也有帮助。 来自资深工程师的少量详细、领域特定的反馈,可能比大量草率的反馈更有价值,因为简单的点赞/点踩无法说明原因。“即使样本量相对较小,如果反馈来自一个对领域特定知识有深入了解的人,而且非常详细,你也能获得很好的信号,这些知识是智能体本来无法获得的,”Zach 继续说。“话虽如此,高质量信号的语料库越大越好。在 Warp,我们用一个循环来管理整个开源仓库。我们有数百人贡献,我们进行了数千次代码审查。”

  • 在改进 skill 上多花功夫。 在编写改进 skill(观察者智能体)上多花功夫,其回报会超出当前的智能体循环,因为改进 skill 在不同用例中非常可复用。“除了领域特定知识部分,这是一个相当可复用的机制——代码审查智能体的改进 skill 和其他任何智能体的改进 skill 差别不大。”

循环的实际应用:Warp 的 issue 分类智能体

Warp 的 issue 分类智能体 展示了自我改进的智能体 skills 框架。每当有人提交新的 GitHub issue 时,这个模式就会被触发:一个 GitHub Action 启动一个智能体,分析 issue 的复杂性和可行性,分配标签,并建议修复方向。这个分类智能体运行在一个内部 skill 文件上,该文件包含关于每个标签含义以及如何在行动前研究代码库的领域知识。

在一个示例 issue 上,第一阶段的内部 skill 做得不错,但漏掉了一个标签——“ready to spec”,这个标签表示贡献者可以开始针对该 issue 构建产品和技术规格。Warp 团队的一位维护者发现了这个缺口,直接在 issue 上留下了反馈,正好是在工作发生的地方。关键的是,他既解释了他期望什么,也解释了为什么期望:这种可操作的反馈很容易让智能体在之后吸收。

外部改进 skill 在 Oz,Warp 的智能体编排平台 中作为计划任务“更新分类”智能体运行。该智能体认证到 GitHub,运行一个与 skill 捆绑的 Python 脚本,拉取带有反馈的近期 issues,将它们总结成一个 JSON 文件,然后读回上下文。捆绑脚本本身就是一个最佳实践;skills 可以引用资源文件,而不是每次运行时都编写新代码。

从那里,智能体识别出维护者评论中的具体反馈信号,并提出最小的修改来捕捉这些信号。它打开了一个 PR,编辑内部 skill,以便在 issue 描述了一个真实问题时应用“ready to spec”标签,即使确切的 UI 或 UX 形态尚未定义。

因为整个更新是一个 skill 文件,它通过正常的代码审查流程。PR 附带了一个描述,解释了哪些信号促使了更改以及更改了什么。人类审查、批准、合并,下一次运行分类 skill 时就会继承新知识。这最后的人类步骤关闭了循环,并让人类控制实际发生的变化。

这就是 Warp 现在在其开源仓库中大规模运行的相同机制,规格编写智能体、审查智能体和分类智能体各自带有自己的自我改进循环。

任何智能体,无论其任务是什么,如果你从一开始就构建一个这样的循环来捕捉人类反馈信号,将它们转化为 skill 更新,并让智能体从一次性助手扩展为能够在整个组织中累积能力的系统,它都会随着时间变得更好。

观看完整网络研讨会,获取现场演示和更深入的讨论,了解 Warp 如何使用 Claude 构建从团队反馈中学习并随时间自我改进的智能体。

立即开始使用 Claude 平台 构建。

常见问题

相关文章

探索更多产品新闻和团队使用 Claude 构建的最佳实践。

在 Slack 中自助数据分析:Anthropic 如何部署 Claude Tag 处理临时问题

Claude 5 代模型上下文工程的新规则

monday.com 如何将其平台转变为智能体优先的产品,让人类和智能体协作

使用计算机操作、Skills API 和 Files API 构建生产级智能体

用 Claude 改变你组织的运作方式

获取开发者通讯

产品更新、操作指南、社区亮点等。每月发送到你的邮箱。

术语表

Agent Skills
Claude 平台的一种功能,允许将指令和知识编码为文件,供智能体在工作时查阅,从而将知识从提示词中分离出来。
智能体(Agent)
能够自主执行任务、与环境交互并做出决策的 AI 系统,通常基于大语言模型构建。
提示词(Prompt)
用户或开发者提供给 AI 模型的指令或输入,用于引导模型生成特定输出。
PR(Pull Request)
代码协作中的一种机制,开发者提交代码更改,请求他人审查并合并到主分支。
AGENTS.md
一种上下文文件,用于为智能体提供项目相关的背景信息和指导。
GitHub Action
GitHub 提供的自动化工作流工具,可以触发特定事件(如 issue 提交)并执行任务。
渐进式披露
一种设计原则,先提供核心信息,再按需提供更多细节,避免一次性加载过多内容。

生产区

使用这篇文章

复制包含 frontmatter、中文正文和英文来源的 Markdown。

我的研究区

记录自己的判断,不会写回原文或公开页面。

一句话说清这篇材料能支撑什么角度。

每行一个,最多 20 个。

支持 Markdown。要核对的数据、可复用的方法、反方观点或补充来源。