最近,我亲身体验了 Cursor,结论是:这是一款我愿意为其付费的产品。
Cursor 是什么?
Cursor 是一款基于 VSCode 二次开发、深度整合 AI 特性的代码编辑器。
由于 VSCode 本身功能强大且插件丰富,完全可以将其视为一个 IDE。Cursor 基于 VSCode 二次开发,自然继承了其众多优势。
带来的好处是,你可以无缝导入 VSCode 中的插件、配置和主题,完全不会感到陌生。甚至可以利用 Github 或 Microsoft 账号同步你在 Cursor 中的配置回到 VSCode。
然而,如果你习惯使用其他编辑器,Cursor 目前并未提供适用于其他编辑器的 AI 插件。此外,VSCode 的功能众多,有时会遇到插件与 Cursor 冲突或不适配的情况。
Cursor 不是插件,而是编辑器
现有的 AI 编程助手中,众多巨头纷纷参与竞争。我试用过的有:Github Copilot、Amazon CodeWhisperer、字节的豆包 MarsCode、阿里的通义灵码、讯飞的 iFlyCode 等。
在所有这些 AI 编码助手中,Github Copilot 曾是当之无愧的佼佼者,这得益于 Github 庞大的代码库优势(作为数据源),以及微软提供的 Azure + OpenAI 模型(作为云和模型)。两者共同确保了质量和速度。
因此,我在 2022 和 2023 年的年度推荐中都详细介绍了 Github Copilot,曾一度认为其他产品难以超越它。
有了 Github Copilot 的引领,其他 AI 产品纷纷推出自己的 AI 编码插件,功能大同小异:
- Tab 补全
- 自然语言生成
- 对话式提问
它们大多以插件形式提供,功能有限。
Cursor 之所以不做插件,而是在文档中提到了原因,是因为它需要对 UI 有更多的控制权,Cursor Tab 等功能无法以插件形式呈现。
Cursor 本身,在数据源和模型并未做出巨大突破的情况下,实现了弯道超车,获得了极高的好评。它凭借的是什么呢?
我认为是对开发者习惯的极致观察。
Cursor 到底比其他编程助手好在哪里?
下面列举几个例子,展示 Cursor 如何直击用户痛点。
Codebase
Cursor 在你提问时,会自动加入当前代码库作为参考文档。Cursor 在展示视频中给出的效果是,你可以主动 @特定文档 来参考某段代码。
实际上,在首次提问时,Cursor 会完整扫描整个文件夹里的文件作为数据源支撑。这样,大多数情况下,你不必在 Chat 环节自己检查和复制关联的代码。这不仅简化了手工操作,还能更贴合你的实际开发环境。“引用多段代码”和“遵循现有写法”恰恰是开发者对 AI 最迫切的需求。
例如,Vue 3 的语法中有两种写法 <script>
和 <script setup>
,不同写法的代码在结构上有所不同。如果你不给出任何参考去问 ChatGPT,它可能会随机给出一种答案,或许并不是你想要的。而有了 Cursor,它总是可以借助 Codebase 用项目中更常用的那个写法来提供建议。