Cursor 评测:从「我写它提示」到「我说它改、我审 diff」
内容摘要
Cursor 把 AI 做进编辑器核心:全库索引让问答能指到具体行号,一句话跨多文件改代码并逐块给 diff,Tab 能预测下一处改动。它在遗留项目与重构上优势明显,代价是换工具、吃内存,且必须养成逐块 review 的习惯。
Cursor 是基于 VS Code 源码重写的编辑器,关键差别在于:AI 不是装上去的插件,而是编辑器的一等公民。补全、改写、多文件重构、代码库问答都做在同一界面里,快捷键和交互围绕「描述需求」而不是「逐行输入」设计。
这意味着它改变的不只是速度,是工作方式:从「我写代码它提示」,变成「我说需求它改、我审 diff」。第一次用会觉得别扭,习惯之后很难回去。
实测一:代码库索引,回答能指到行
它先把整个项目索引成可检索的上下文,再让 AI 在这个上下文里干活。所以问「这个函数在哪被调用」「这个配置项影响哪些流程」,它能给出具体文件和行号,而不是泛泛而谈。
这一项对遗留项目价值最大。接手一个没文档、原作者已离职的项目,传统做法是全局搜索加猜逻辑,一天能摸清一个模块。有索引之后,可以先问「这个服务的启动流程是怎样的」,顺着它的回答去读那几个文件,半天能建立整体认知。当然,它说的要自己核对——它会漏掉动态调用和反射这类隐式关系。
实测二:跨文件改动,这是它真正的门槛能力
改一个字段名要翻十个文件、加一个参数要改三处调用、换一种返回结构要同步所有消费方——这类任务的痛点是「漏」。人的注意力撑不住十个文件的反复核对。
用自然语言描述需求,它自己找相关文件、给出多处修改,逐个文件展示 diff 让你确认。实测在「重命名、签名变更、模式替换」这类结构化改动上命中率很高,漏改的情况比人工少。这也是它比补全类插件强一个层级的地方。
实测三:Tab 补全的「预测下一处」
它不只是补当前行,还能预测你「下一处想改哪里」,按 Tab 直接跳过去改。改一列相似的代码、给一批函数加同样的参数校验时,这个体验很特别——一个 Tab 跳到下一个待改处,比手动搜索快得多。
代价是容易误接受。跳过去的位置如果判断错了,你会在不该改的地方插进一段代码。养成看一眼再按的习惯。
必须说的风险:闭眼合并迟早出事
- 它会给看起来对但实际错的代码。 编译通过、逻辑错,是最危险的一类。
- 大范围改动必须逐块审。 一次改十几个文件时,扫一眼摘要就合并,是给自己埋雷。
- 它不知道你的业务约束。 为什么这里要加锁、为什么那个分支不能删,你得自己盯着。
成本:换工具与吃内存
需要迁移:插件、主题、快捷键大多能导入,但总有习惯要重学。资源占用明显高于原生 VS Code,大项目里更明显。付费档按订阅计,重度使用还有额度限制。
结论
Cursor 不是「更聪明的补全」,而是换了一种工作方式,收益在跨文件改动和理解遗留代码上最明显。前提是你愿意逐块看它改了什么——愿意,它会显著提升产出;不愿意,它只会帮你更快地写出 bug。判断标准:你每天的工作是「写新代码」还是「改别人的代码」,后者收益大得多。
核心知识点
- 全库索引让它的回答能指到具体文件行号
- 跨文件重命名与签名变更这类结构化改动命中率最高
- 它会漏掉动态调用和反射这类隐式关系
- 大范围改动必须逐块审diff不能扫摘要就合并
- 工作方式从写代码变成描述需求加审改动
常见问答
Cursor 和 VS Code 有什么关系?
基于 VS Code 源码重写,所以界面、插件、快捷键基本兼容,迁移成本比换一个全新编辑器低。但 AI 是内置的,不是插件,资源占用更高。
它生成的改动可以直接合并吗?
不建议。它会给出看起来正确但逻辑错代码,这类最危险。正确做法是逐个文件看 diff,理解每一处为什么改。一次改十几个文件时尤其不能扫摘要就合并。
对遗留项目有用吗?
这是它收益最大的场景。全库索引让你能问「这个服务的启动流程」,再顺着回答去读具体文件,比全局搜索加猜逻辑快得多。但它会漏掉动态调用和反射,结论要自己核对。
一定要付费吗?
有免费档,额度够轻度使用和试水。真正拿它当主力开发工具,高级模型和更高额度需要订阅。评估时算它省下的时间,比算月费更有意义。
发表评论