编码 Agent 这个东西,变化太快了。Cursor 的工程负责人 Jason Ginsberg 说,所谓的“翻天覆地”,其实也就一年多。
一年前,AI 写代码还只是帮你补全个一两行。它的活动范围基本就在一个文件里。但是现在完全不一样了。AI 可以在几百个文件里来回穿梭,自己动手改代码。而且开发者也敢放手让它去做了。
最近两个月,情况又变了。开发者开始把整个项目从头到尾都交给 Agent。他自己就等着最后检查一下结果。这就像你把整个活儿都包出去了,自己当个总监。
这个变化直接让 Cursor 不得不重新设计整个产品。他们以前的核心是让你一行一行地对比代码差异。但是现在,这个模式不行了。他们把产品改得更像一个代码审查(Code Review)工具,让你从一个更高的层面看问题。
为什么会发生这种变化?原因有几个。
首先,大模型本身变强了。它写的代码质量越来越高,让人信得过。其次,自动检查代码的工具也多了起来。比如 Cursor 内部有个叫 BugBot 的工具,能自动抓 bug。
而且还有一个重要的原因。开发者已经习惯了有 Agent 的工作方式,有点“上瘾”。你让他再回到过去那样,一个字母一个字母地敲代码,他肯定不干了。

最顶尖工程师的干活秘诀:全靠 Agent?
有个事挺有意思的。在 Cursor 公司内部,大家用自家产品的方式差很多。
比如,负责安全和基础架构的工程师,他们就基本不用 Agent 功能。他们只是把 Cursor 当成一个代码补全工具来用。但是,Ginsberg 说,他们团队里那些技术最牛的工程师,反而是对 Agent 依赖最重的人。他们做任何事情都先想到 Agent,有时候还同时开好几个 Agent 一起干活。
Ginsberg 自己也是这么用的。他不会去写那种又长又复杂的提示词。他说他写的提示词一般都很短,有时候还有拼写错误。他的方法是,对着一个任务,把它拆成几个部分。然后给每个部分都开一个 Agent,让它们分头去做,自己就等着看结果。
他还提到了一个刚发布的新功能,叫“调试模式”(Debug Mode)。这个功能是专门用来解决那些难搞的 bug 的。
它是这么工作的。举个例子,你写前端的时候遇到一个问题:一个菜单总是不在它该在的位置,老是跑到屏幕左上角去。
你不用自己一行一行代码去查了。你可以这么做:
第一步,你直接对 Agent 说:“把这个菜单,给我固定到那个按钮旁边。”
第二步,Agent 收到指令后,会自己去启动服务器。然后,它会在代码库的各个地方加上大量的日志记录点。
第三步,它会根据情况,提出几个导致这个问题的可能假设。比如,“是不是定位参数写错了?”,或者“是不是事件绑定的逻辑有问题?”。
第四步,这时候 Agent 会停下来,然后问你:“好了,你现在去点一下那个按钮,看看菜单的位置对了没有。”
第五步,你操作一下,然后告诉它结果,比如“还是老样子”。Agent 就会马上去分析它自己加的那些日志。通过日志,它就能判断出,刚才的几个假设里,哪个是对的,哪个是错的。
通常,这样来回重复个两三次,问题就能找到并解决了。这背后的逻辑很简单,就是用机器的计算能力,去硬磕那些靠人脑很难排查的问题。
我问他,那我们人类还得亲手去点那个按钮多久?他说,可能再过一两个月就不用了。这个行业的发展速度就是这么快。
自然 “唠嗑”是 Cursor 最终交互模式?
以后写代码,到底是在终端里敲命令,还是在 IDE(集成开发环境)里点鼠标?Ginsberg 觉得,IDE 还是主角,终端不会成为主流。
因为开发者对 Agent 越来越信任了。他们不想看 Agent 干活的每一步,只想看最终改好的结果。
IDE 本身很强大。它是一个完整的软件开发工具集,经过了几十年的发展。从写代码、改代码、对比差异、提交代码,到最后在浏览器里看效果,所有事情都能在 IDE 里做完。想用别的工具把它换掉,很难。
而且,未来的交互会更看重“可视化”。比如 Cursor 现在有个“规划模式”,就需要用户在编辑器里写写画-画、加点注释,跟 Agent 实时地沟通。如果没有按钮、弹窗这些图形界面,交互会困难。
那最终的交互会是什么样子?Ginsberg 描绘了一个场景。
比如,你早上上班路上,戴着耳机,直接用语音跟 Agent 聊天,讨论一个新功能的想法。等你说得差不多了,Agent 就在云端自己开始写代码。等你到了公司,坐到电脑前,一个写好的代码合并请求(Pull Request)已经在那儿等你了。你看一眼,觉得大方向没问题,有些小细节再自己动手改改就行。
其实,这种交互模式用的设计组件,也都是我们熟悉的东西,比如收件箱、聊天窗口。最大的变化是,以前是人主动去操作界面,现在是 Agent 在主导交互。
一年前,我们还得紧紧盯着 Agent 的每一步操作。现在,Agent 的操作步骤太多了,根本看不过来。所以,产品的重点就变成了怎么把这些复杂的操作步骤,分组、提炼,只把关键信息展示给你看。
那这种交互的终点在哪?Ginsberg 认为,最终会像跟一个真人同事聊天一样自然。
到时候,选择用哪个模型、哪个模式这些复杂的选项,都会消失。你只需要用自然语言告诉它你要做什么。但这不等于说,谁都能来写代码了。你还是得是个懂行的工程师,知道专业的术语,清楚自己想要实现什么功能。它是一个让专业的人变得更厉害的工具。
Cursor 内部工作揭秘:少审代码、高频反馈
在 Cursor 公司内部,代码审查(Code Review)这个环节跟别处很不一样。
Ginsberg 说,他们现在很少需要工程师花大量时间去做人工审查了。因为他们有一个叫 BugBot 的工具。这个工具会自动去检测代码里的问题,找到问题后,它还会自己尝试修复。整个过程都是自动的。所以,他们对 AI 审查过的代码质量有信心。
但是,这不代表人与人之间就不沟通了。相反,他们内部的沟通反馈频率高得吓人。
Ginsberg 讲了他自己刚入职时的一件事。他第一周上班,改了一个快捷键。他特意选了一个他觉得肯定没人会用的组合键(Alt+Shift+Command+J)。结果,他的代码刚提交上去还不到一分钟,Slack 上就有三个同事同时找他:“你改的这个快捷键,把我原来的工作流程给打乱了!怎么回事?”
这种全员深度使用自家产品的文化,是他们能快速改进产品的一个秘密。任何一个微小的改动,都会立刻在内部得到最真实、最直接的反馈。
他们开发新功能的时候,常常会遵循一个简单的原则:“我能开发点什么,让自己明天的工作更轻松?” 当你开发一个功能是为了解决自己明天就会遇到的麻烦时,你做事的动力和方向就会很明确。所以,他们做出来的功能都很实用,能解决实际问题。
他们的工作方式有几个特点。第一,代码审查自动化,靠工具解决大部分问题,人只看关键部分。第二,全员用自家产品,反馈来得又快又直接。第三,从解决自身问题的角度出发开发新功能。第四,沟通直接,很少开会写文档,大部分讨论都在 Slack 或者代码里完成了。
迭代狂飙背后,核心功能竟来自员工 “自嗨”?
你可能觉得,Cursor 的产品更新这么快,肯定有一套复杂的流程。但事实正好相反。Ginsberg 说,他们虽然也会做月度计划,但很多核心功能,其实都来自员工自己的业余项目。
最典型的就是 Agent 功能。这个功能现在差不多是 Cursor 的代名词了。但一开始,这只是团队里一个工程师自己捣鼓的东西。当时团队里其他人都觉得这个想法不靠谱。结果,他自己做出了一个原型。大家试用了一下,都被惊到了,发现这东西真的能用。于是,它就成了产品的核心。
前面说的“调试模式”也是一样。那是 Ginsberg 在感恩节放假的时候,因为自己写代码遇到了调试的麻烦,就顺手给自己做了这么个工具。现在,这个工具也要正式上线了。
一个新功能到底好不好,能不能发布,他们在内部有一个很重要的判断标准:团队自己用得多不多?大家喜不喜欢用?如果一个功能连开发它的人自己都不爱用,那肯定是有问题的。
能这么做的基础,是他们对人才的要求很高。Ginsberg 说,他们的招聘门槛高得有点苛刻。他们会反复问自己:“这个人是很优秀,但他能成为我们团队里最顶尖的那批人吗?”
因为团队里的每个人都很强,所以公司可以给每个人很大的自主权。一个工程师,可以从一个想法开始,自己负责设计、开发,甚至自己去社交媒体上跟用户交流、跟客户沟通需求,最后把功能做出来。所以,他们的高速,不是靠流程,是靠人。
开放问答
在最后的问答环节,Ginsberg 也回答了一些大家关心的问题。
有人问到那个可视化浏览器功能。他说,做这个功能,不是为了让写代码像画画一样。它其实是一个给专业工程师和设计师用的精确工具。比如,你想把一个元素的内边距精确地调整到 12 像素,用文字描述可能不直观。但用这个工具,你直接在视觉上操作,就能得到精确的结果。它是一种更直接的指令语言。
还有人问,Agent 能不能长时间自己运行,不断迭代?Ginsberg 说,这肯定是未来的方向。理想的状态是,Agent 能自己评估工作结果,自己测试,如果发现问题就自己修改,一直循环这个过程,直到把问题彻底解决。现在还需要人去点一下按钮确认,只是一个过渡方案。
关于 Agent 的记忆和上下文处理。他们正在做很多实验。但这里有一个很大的挑战。就是你教给 Agent 的规则和知识,可能会因为底层大模型的更新而失效。所以,必须得有一个简单的方法,让用户可以随时更新这些知识,不然就会被过时的信息束缚住。
关于他们自己研发的 Composer 模型。这个模型最大的特点就是“快”。它专门用来处理那些需要快速反馈的场景,比如你调整一个按钮的样式,希望能马上看到效果。它和那些适合处理复杂任务的大模型,是一个互补关系。
至于会不会为非程序员用户开发功能。Ginsberg 很直接地说,他们当前的核心目标,不是降低编程的门槛。他们的目标,是让世界上最顶尖的那批工程师工作效率更高。在这个过程中,工具可能会变得对新手更友好,但这只是一个副产品,不是他们的主要任务。
最后,有人问他觉得未来几个月最大的机会是什么。他觉得不是语音交互这种形式上的东西。用户现在最需要的,是让 Agent 变得更智能,能运行得更久,处理更复杂的任务。
他说,现在的 Agent,很大程度上只是在“读代码”和“写代码”。但它并不能真的判断,自己改完的代码是不是能正常运行。未来的机会就在于,投入更多的算力,让 Agent 自己去承担测试和校验的工作。这些工作现在还是由人来做的。
他觉得,未来三到六个月,整个行业会因为这个方向的突破,迎来巨大的变化。