AI 软件开发的第三个时代
几年前,当我们开始构建 Cursor 时,大部分代码还是一次敲击一个按键写出来的。Tab 键自动补全改变了这一现状,开启了 AI 辅助编程的第一个时代。
随后,智能体(Agents)出现了。开发者的工作重心转移到了通过同步的“提示-响应”循环来指挥智能体。那是第二个时代。而现在,第三个时代正在到来。它的定义是:智能体能够独立处理更大规模的任务,跨越更长的时间尺度,并且需要的人工指导更少。
因此,Cursor 的核心不再仅仅是编写代码。它现在的意义在于帮助开发者构建“生产软件的工厂”。这个工厂由成群的智能体组成,开发者作为队友与它们互动:提供初步方向,为它们配备能够独立工作的工具,并审查它们的工作成果。
Cursor 团队中的许多人已经开始以这种方式工作。我们合并的 PR(拉取请求)中,超过三分之一是由在云端独立计算机上运行的智能体创建的。我们认为,一年后,绝大多数的开发工作都将由这类智能体完成。
Tab 自动补全擅长识别那些低熵(规律性强)、重复性的工作,并将其自动化。在近两年的时间里,它带来了显著的效率提升。
接着,模型能力提升了。智能体能够掌握更多上下文,使用更多工具,并执行更长的操作序列。开发者的习惯开始转变,这种转变在整个夏天缓慢进行,然后在过去的几个月里迅速加速。
这种转变是如此彻底,以至于今天许多 Cursor 用户甚至不再触碰 Tab 键。在 2025 年 3 月,我们的 Tab 用户数量大约是 Agent 用户的 2.5 倍。而现在,情况完全反转:Agent 用户数量是 Tab 用户的 2 倍,且 Cursor 中的 Agent 使用量激增。
但这仅仅是个开始,这一转变正在为更宏大的事物让路。Tab 时代持续了近两年。而绝大多数工作通过同步智能体完成的第二个时代,可能连一年都维持不了。
与 Tab 相比,同步智能体在技术栈的更高层工作。它们处理需要上下文和判断力的任务,但在每一步仍需开发者保持在循环中(Human-in-the-loop)。这种实时交互的形式,加上同步智能体与本地机器争夺资源的事实,意味着一次只能实际操作寥寥几个智能体。
云端智能体消除了这两个限制。每个智能体都在其独立的虚拟机上运行,允许开发者移交任务后转而处理其他事务。智能体会在数小时内完成任务,不断迭代和测试,直到它对输出有信心,然后返回可供快速审查的成果:日志、视频录像和实时预览,而不仅仅是代码差异(diffs)。
这使得并行运行智能体变得切实可行,因为产物(artifacts)和预览提供了足够的背景信息,让你无需从头重构每个会话即可评估输出。人类的角色从指导每一行代码,转变为定义问题和设定审查标准。
在 Cursor 内部,我们合并的 PR 中有 35% 现在是由在云端虚拟机中自主运行的智能体创建的。我们观察到,采纳这种新工作方式的开发者具有以下三个特征:
- 智能体编写了几乎 100% 的代码。
- 开发者的时间花在拆解问题、审查产物/代码以及提供反馈上。
- 他们会同时启动多个智能体,而不是手把手带着一个智能体直到完成。
在这个方法成为软件开发标准之前,还有很多工作要做。在工业级规模下,一个单人开发者可以绕过的“不稳定的测试”(flaky test)或损坏的环境,会变成打断每一个智能体运行的致命故障。更广泛地说,我们需要确保智能体能够尽可能高效地运作,拥有其所需的完整工具和上下文访问权限。
我们认为 昨天的发布 是朝这个方向迈出的初步但重要的一步。
精选评论
第二时代:Copilot(副驾驶)
第三时代:带有意图的智能体
这种转变不是为了更快的打字速度。
而是思维的委托。
智能体是第二时代
第三时代是你完全不再思考代码本身,而只是描述结果。
看起来智能体可以在云端编写代码和测试,但如果没有 Mac 执行环境,它们无法编译、检查和验证。是这样吗?
第一次是好的,但之后我得问两次,视频才会显示在 Web GUI 中。文件肯定录制下来了,我检查了 /opt/cursor/artifacts/ 目录。