全文在线阅读 · v260403
Cursor 从入门到精通
用 AI 编程做出你想做的东西
正文无需登录,目录可以直接跳到对应章节。内容按本版原书呈现,产品信息以书中标注日期为准。
目录 · 9节
给微信读书读者的话
你好,我是花叔。
2024年底,我用 Cursor 做了一个叫「小猫补光灯」的 iOS App,上线后冲到了 App Store 付费榜第一。我不会写代码,从来都不会,这个产品从第一行到最后一行都是 AI 写的。
Cursor 是帮我完成这件事的工具。
我可能是国内最早一批用 Cursor 的人。2024年初,有人问我最好用的 AI 工具是什么,我的回答是「Cursor、Cursor,以及 Cursor」。后来我做了 Cursor Rules 的插件,在 Cursor 的线下 meetup 上有参会者说是看了我的内容才开始用的。
所以写这本书,对我来说有一种特别的感觉。它不只是一本工具教程,更像是在回顾一段亲历的历史。Cursor 是让 AI 编程从开发者玩具变成普通人可以上手的工具的第一个产品,这个贡献我觉得怎么说都不为过。
这本书的目标很简单:帮你从零开始,用 Cursor 做出你想做的东西。不管你是工程师、产品经理、设计师,还是像我一样完全不会写代码的人,跟着书里的步骤走,你都能体验到 AI 编程的力量。
书里覆盖了 Cursor 截至 2026 年 4 月的全部核心功能,包括刚发布的 Cursor 3(Agent 调度平台)、Background Agent、BugBot、Automations、Composer 2 自研模型等。每个功能都配了具体的使用场景和操作步骤,不讲概念,只讲怎么用。
不过我想诚实地说一句:我现在的主力工具已经不是 Cursor 了。2025年下半年开始,我逐渐迁移到了 Claude Code。这不是说 Cursor 不好用,而是不同工具适合不同场景。书的最后一章我会详细聊这个问题,帮你判断什么时候 Cursor 够用,什么时候该考虑其他工具。
这本书是「AI编程橙皮书」系列的一本。系列还有:《Claude Code 从入门到精通》是另一个主力工具的实战手册,《Harness Engineering》讲 AI 编程的方法论,《Agent Skills》教你扩展 AI 的能力边界,《源码解析》拆解 Anthropic 的架构设计。每本独立成书,按你的需求挑着读就行。
AI 编程工具迭代很快,Cursor 每两三周就有一次重大更新。书里的具体操作步骤可能会随版本变化,但核心的使用思路和工作流不会过时。学会和 AI 协作,比记住某个按钮在哪重要得多。
希望这本书对你有用。如果你用 Cursor 做出了什么东西,欢迎来告诉我。
花叔
2026年4月
§01 为什么是Cursor
Why Cursor
AI编程工具在三年里换了四种范式。搞清楚这个演变,你就能理解Cursor为什么能走到今天这个位置。
四种范式,四种关系
2026年的AI编程工具市场,看起来热闹,其实就四条路线:
| 范式 | 代表产品 | 你和AI的关系 |
|---|---|---|
| IDE插件 | GitHub Copilot | AI是你的输入法,你写上半句,它猜下半句 |
| AI-native IDE | Cursor、Windsurf | AI是你的结对伙伴,你说想要什么,它来写 |
| 终端Agent | Claude Code | AI是独立工程师,你描述需求,它全流程搞定 |
| Agent平台 | Devin、Replit Agent | AI是外包团队,你甚至不需要看代码 |
这四条路线不是谁取代谁。实际情况是,多数开发者同时用两三个工具:日常写代码开Cursor,大规模重构用Claude Code,团队协作靠Copilot。工具之间是互补关系,不是零和竞争。
但如果只能选一个入门,我会选Cursor。
Cursor做对了一件事
2023年之前,AI编程基本等于GitHub Copilot。你写代码,AI帮你补全。挺有用,但本质上你还是那个写代码的人。
Cursor改变了这个关系。它让你可以用自然语言跟编辑器对话:「把这个函数重构成async的」「帮我写个登录页面」「这段代码有bug,修一下」。你不用精确描述「怎么改」,只需要说「我想要什么效果」。
这听起来像一个小变化,但实际影响很大。它把AI编程的门槛从会写代码降到了能描述需求。
然后是Tab。Cursor的Tab补全不只是猜你当前这一行要写什么,它能预测你的下一个编辑动作。你改了一个变量名,按Tab,它帮你把所有相关引用都改了。你写了一个if条件,按Tab,它把对应的else分支也补上。Tab-Tab-Tab,成了一种新的编程节奏。
这个交互范式是Cursor的核心贡献。在它之前,没有人证明过对话式编程可以做到这么顺滑。Cursor每天处理超过4亿次Tab请求,这个数字本身就是用户投票。
花叔的故事
我可能是国内最早一批用Cursor的人。
2023年底,Cursor还在很早期的版本,功能不多,Bug也不少。但我当时就觉得这东西方向对了。AI编程不应该只是帮你补全代码片段,它应该理解你整个项目在做什么,然后帮你把想法变成可以跑的东西。
2024年底,我用Cursor做出了「小猫补光灯」。一个iOS应用,用手机屏幕当补光灯,可以调色温、调亮度,很简单的产品。但它上了App Store付费榜Top 1。
这件事让我确信了一点:不会写代码的人,完全可以用AI做出能卖钱的产品。
后来我用各种AI编程工具做了更多东西,公众号编辑器、浏览器插件、Chrome扩展。工具换了好几轮,但Cursor始终在我的工具箱里。原因很简单:它的补全和对话体验在IDE这个品类里一直是最好的。
从IDE到Agent调度中心
2026年4月2日,Cursor 3发布了。这次更新的意义不在于某个具体功能,而在于它的方向变了。
Cursor 3的核心变化:
Agents Window。一个全新的Agent管理界面,你可以同时运行多个Agent,每个在不同的环境里干活。一个在本地改代码,一个在云端跑测试,一个通过SSH连到远程服务器部署。它们并排显示在你面前,像一个团队的工作看板。
Background Agent。AI在云端的隔离虚拟机里干活,从GitHub克隆你的仓库,在独立分支上写代码、跑测试、推送代码、生成Pull Request。你最多可以同时跑8个Background Agent。关掉电脑也没关系,它在云上继续跑。
Automations。永远在线的Agent,基于触发器自动运行。代码推送到main分支,自动安全审查;PagerDuty报警了,Agent自动查日志、分析代码变更、提出修复建议。这已经不是编程工具了,这是AI DevOps。
还有Design Mode,直接在浏览器里标注UI元素给Agent看。还有/worktree命令,让Agent在隔离的工作树里改代码,不影响你的主分支。
所有这些功能指向同一个方向:Cursor不再只是一个代码编辑器,它在变成一个Agent调度平台。编辑器本身退居幕后,Agent成了主角。
自研模型:不再只是套壳
其实还有一个容易被忽略的变化。
2026年3月19日,Cursor发布了Composer 2,一个自研的编码模型。基于Kimi K2.5(月之暗面的开源模型)继续训练,用了两阶段方法:先在代码上做预训练,然后用大规模强化学习优化。
更有意思的是训练方式。Cursor用了Real-time RL,拿真实用户的交互数据作为奖励信号来训练模型,最快每5小时就能部署一个新版本。你每天用Cursor,模型都在变好一点。
自研模型加上BugBot(2月25日上线的自动PR审查功能,76%的问题解决率,35%的修复建议被直接合并),Cursor在构建自己的技术壁垒。它不再是一个调API的壳,而是一个有自己数据飞轮的AI公司。
这本书写给谁
完全没用过AI编程工具的人。你听说过Cursor、Copilot、Claude Code这些名字,但不知道从哪个开始。这本书从零开始,手把手带你上手Cursor,做出第一个项目。
用过Cursor但没用深的人。你知道Tab补全和对话功能,但Background Agent、Automations、Composer 2这些新东西还没碰过。这本书会带你把Cursor 3的核心能力都摸一遍。
想用AI做产品的非程序员。产品经理、设计师、创业者、内容创作者。你有想法,缺的是把想法变成可以跑的东西的能力。Cursor是目前上手门槛最低的选择。
全书路线图
| 阶段 | 章节 | 你会学到 |
|---|---|---|
| 上手 | §01-§03 | 理解AI编程 → 安装配置 → 做出第一个项目 |
| 核心能力 | §04-§06 | 掌握Tab/对话/Agent三种模式 → Rules配置 → 高效Prompt |
| 进阶 | §07-§09 | Background Agent → Automations → MCP扩展 |
| 实战 | §10-§12 | 独立构建完整产品 → 团队协作 → 建立长期工作流 |
每章都有实操部分,可以跟着做。不用一口气读完,读一章做一章,完全没问题。
下一章,我们花10分钟把Cursor装好。
§02 10分钟安装与配置
Get Started in 10 Minutes
安装过程比你想象的简单。这一章覆盖下载安装、从VS Code迁移、模型选择和订阅方案。
下载安装
去 cursor.com,点Download,选你的系统。Mac、Windows、Linux都支持。
Mac用户下载的是.dmg文件,拖到Applications就行。Windows是标准安装包,一路Next。Linux用户下载.AppImage,给执行权限直接跑。
装完打开,你会看到一个长得很像VS Code的编辑器。没错,确实就是。
从VS Code迁移
Cursor本身就是基于VS Code的fork。如果你之前用VS Code,迁移成本接近零。
第一次打开Cursor时,它会问你要不要导入VS Code的设置。选「是」,你的主题、快捷键、扩展、配置文件会全部同步过来。已经装好的扩展不需要重新装,Cursor直接兼容VS Code的扩展市场。
如果你之前没用过VS Code也没关系。Cursor开箱就能用,默认配置对大多数人来说够了。
模型选择:Auto还是手动
打开Cursor的设置(Cmd+Shift+P,搜索「Model」),你会看到一个模型选择面板。这是Cursor和普通编辑器最大的区别:你可以选AI用哪个大脑来帮你写代码。
目前可选的模型包括Claude(Anthropic)、GPT(OpenAI)、Gemini(Google)、Composer 2(Cursor自研)等。
有两种用法:
Auto模式。让Cursor自己选模型。它会根据任务复杂度自动匹配:简单补全用轻量模型,复杂重构用强模型。好处是不操心,而且Auto模式下的使用量不消耗信用额度,相当于无限用。
手动选模型。你指定用某个前沿模型,比如Claude Sonnet或GPT-4o。效果可能更好,但会消耗你的月度信用额度。不同模型成本不一样,Claude Sonnet大约是Gemini的2.4倍。
订阅方案
Cursor有五档方案:
| 方案 | 月费 | 年付月费 | 适合谁 |
|---|---|---|---|
| Hobby(免费) | $0 | - | 体验一下,功能有限 |
| Pro | $20 | $16 | 个人开发者,日常够用 |
| Pro+ | $60 | $48 | 重度用户,3倍使用量 |
| Ultra | $200 | $160 | 全职AI编程,20倍使用量 |
| Business | $40/席位 | - | 团队,SSO和集中管理 |
信用额度机制是这样的:每个月你有一定额度(和订阅等级挂钩),Auto模式不消耗额度,手动选前沿模型才消耗。Pro方案每月$20的额度,正常使用一般花不完。
怎么选?一句话:新手从Pro开始。$20/月,Auto模式无限用,Agent、Cloud Agent、MCP这些高级功能全解锁。我觉得性价比挺高的。
什么时候考虑升级?如果你每天用Cursor超过4小时,频繁手动选Claude或GPT-4o,发现额度不够了,再升Pro+。$60/月,3倍使用量,对重度用户来说值得。
Ultra的$200/月适合什么人?除非你是全职AI编程、每天跑大量Background Agent,否则用不到。
第一次对话
装好了,订阅也搞定了。来试一下。
按 Cmd+L(Mac)或 Ctrl+L(Windows/Linux),打开Cursor的AI对话面板。在输入框里输入:
创建一个简单的HTML页面,显示"Hello Cursor!",用好看的渐变色背景。
你会看到Cursor开始在右侧生成代码。它会创建一个HTML文件,写入完整的HTML、CSS代码。生成完毕后,你可以直接点击「Apply」把代码应用到文件里。
打开这个HTML文件预览一下。如果你能看到一个带渐变背景的「Hello Cursor!」页面,一切正常。
再试一个。打开刚才生成的HTML文件,按 Cmd+K,选中页面上的标题文字,输入:
加一个动画效果,让文字缓慢浮动
Cursor会直接在选中的代码区域内做修改,加上CSS动画。这就是Cursor的内联编辑,你选哪改哪,不需要描述「在第几行加什么代码」。
Cmd+L是对话,Cmd+K是内联编辑。这两个快捷键记住就行,后面所有操作都围绕它们展开。
确认一切正常
跑一遍这个清单:
| 检查项 | 操作 | 预期结果 |
|---|---|---|
| 编辑器能打开 | 双击Cursor图标 | 正常启动,看到编辑器界面 |
| AI对话可用 | Cmd+L,发一条消息 | AI正常回复 |
| Tab补全可用 | 新建文件,开始输入代码 | 出现灰色补全建议,按Tab接受 |
| 内联编辑可用 | 选中代码,Cmd+K,输入指令 | AI在选中区域生成修改 |
| 扩展正常 | 检查扩展面板 | VS Code迁移的扩展都在 |
全部通过?可以开始了。
遇到问题了?
打开后AI功能不可用。检查是否已登录Cursor账号。点击左下角的头像图标,确认登录状态。如果提示订阅,需要先在 cursor.com/settings 完成订阅。
从VS Code迁移后扩展丢失。重新打开Cursor,进入设置 → Extensions → 点击「Import from VS Code」。如果个别扩展不兼容,去Cursor的扩展市场重新搜索安装。
Tab补全没反应。检查设置里的Cursor Tab是否开启(Settings → Cursor → Cursor Tab → 确认Enable)。有些扩展可能和Tab补全冲突,特别是其他AI补全插件,关掉它们再试。
国内网络连接慢。Cursor需要连接AI模型的服务器。如果响应特别慢或超时,检查你的网络环境。配置代理的方式和普通网络工具一样,在系统代理设置里配好就行。
装好了,环境确认没问题。下一章,我们正式开始做第一个项目。
§03 你的第一个项目
Your First Project — Just Follow Along
别看说明书了,直接上手。这一章从零做一个真实的小项目,跟着做完,你就知道Cursor是怎么回事了。
做个什么好
一个个人主页。就是那种单页网站,有你的名字、一句话介绍、几个链接。
为什么选这个?两个原因。一,够简单,半小时能做完。二,做完之后你真的能用,发给朋友看、放到简历里。不是那种「跑通了然后删掉」的练手项目。
更重要的是,做这个项目的过程中,你会自然地体验到Cursor的三个核心交互:Chat、Composer、Tab补全。不用刻意学,用着用着就会了。
打开Cursor,建个项目
启动Cursor,选择「Open Folder」,新建一个空文件夹叫 my-site,打开它。
你会看到一个很像VS Code的界面。左边是文件树(现在是空的),中间是编辑区,右边可以打开Chat面板。
如果你之前用过VS Code,这个界面应该很熟悉。Cursor本身就是在VS Code的基础上改的,所有VS Code的快捷键、插件、设置都能用。不同的是,它多了几个AI能力。接下来一个一个体验。
第一个交互:Chat Ask AI Anything
按 Cmd+L(Mac)或 Ctrl+L(Windows),右边会弹出Chat面板。这是你跟AI对话的地方。
输入你的第一个问题:
我想做一个个人主页,单页网站。
需要包含:我的名字、一句话简介、3个社交媒体链接。
设计要简洁好看,深色背景。
用HTML + CSS就行,不需要框架。
先别写代码,告诉我你打算怎么做。
Chat会给你一个方案:大概会用到哪些文件、页面结构是什么样的、CSS怎么组织。
Chat的核心场景就是问。你不确定的事情,问它。技术选型拿不准,问它。想知道某个CSS属性怎么用,问它。把它当成一个随时在线的技术顾问。
第二个交互:Composer The Real Power
Chat适合问答。但真正写代码、改代码,Composer才是Cursor最强的地方。
按 Cmd+I 打开Composer。你会看到一个输入框,看起来跟Chat差不多,但它的能力完全不同:Composer可以同时创建和修改多个文件,而且改动会直接显示在编辑器里。
在Composer里输入:
帮我创建一个个人主页,包含以下内容:
1. 文件结构:index.html + style.css
2. 页面内容:
- 名字:花叔
- 简介:AI Native Coder,用AI做产品的独立开发者
- 链接:GitHub、Twitter、个人博客(先用#占位)
3. 设计要求:
- 深色背景(#0a0a0a)
- 文字居中
- 链接有hover效果
- 响应式,手机上也好看
按下回车,你会看到Composer开始工作。编辑器里出现了 index.html 和 style.css 两个文件,代码在实时生成。生成完毕后,Composer会展示所有改动的diff(差异对比),你可以逐个查看、接受或拒绝。
点击「Accept All」接受所有改动。
然后在 index.html 上右键,选择「Open with Live Server」(需要装Live Server插件),或者直接双击用浏览器打开。你会看到一个干净的深色个人主页,文字居中,链接有动画效果。
这就是Composer的威力:你描述你想要什么,它帮你一次性生成整个项目。不是一个文件一个文件地写,是一整套文件同时出来。
第三个交互:Tab补全 The Invisible Helper
现在页面有了,你想改点东西。比如把简介换成你自己的。
打开 index.html,找到简介那行文字,把光标移过去,开始打字。你会发现一个灰色的提示跟着你的光标出现了,它在猜你接下来要写什么。
按 Tab 接受建议,按 Esc 忽略。
这就是Tab补全。它不只是补全当前这行代码。Cursor的Tab模型会看你正在做什么,然后预测你的下一步操作。你在改HTML标签?它猜你可能还要改对应的CSS。你在写一个函数?它猜你接下来要写的参数和逻辑。
一个具体的场景:你想给页面加一个「作品集」板块。打开 index.html,在链接区域下面输入 <section,Tab补全会自动建议完整的section结构,连class名都帮你想好了。按Tab接受,然后再往CSS里加样式,Tab又会根据HTML的class名自动建议对应的样式代码。
Tab补全是最安静的功能,但用的次数最多。Cursor官方数据:Tab模型每天处理超过4亿次请求。大多数用户甚至意识不到自己在用它,因为它太自然了。
改一改,再改一改
项目跑起来了。但你觉得不够好看,想调整。
这是Cursor最舒服的地方:改东西极其方便。你有三种方式:
方式一:用Composer大改。如果你想重新设计整个页面风格,按 Cmd+I 打开Composer:
把这个页面改成左右分栏布局。
左边放名字和简介,右边放链接列表。
背景换成渐变色,从深蓝到深紫。
Composer会同时修改HTML和CSS,生成diff让你确认。
方式二:用Cmd+K小改。选中一段代码,按 Cmd+K,在弹出的输入框里写你想怎么改。比如选中链接部分的CSS,输入「给链接加一个下划线动画效果」。Cmd+K会只改你选中的部分,不动其他代码。
方式三:直接手打+Tab补全。知道要改什么的时候,直接改。Tab补全会帮你加速。
| 改动规模 | 用什么 | 典型场景 |
|---|---|---|
| 整体重构 | Composer(Cmd+I) | 换布局、加新页面、重写整块功能 |
| 局部调整 | Cmd+K | 改一个动画、调一个颜色、重写一个函数 |
| 微调 | Tab补全 + 手打 | 改文案、调数值、加一行代码 |
| 不确定怎么改 | Chat(Cmd+L) | 先问方案,再决定用Composer还是Cmd+K |
这四种交互方式覆盖了所有场景。接下来的章节会展开每一种的进阶用法,但现在你只需要记住:大改用Composer,小改用Cmd+K,不确定就问Chat,打字时让Tab帮忙。
加点功能试试
光做一个静态页面不过瘾?试试让Cursor帮你加点动态效果。
打开Composer,输入:
给页面加一些交互效果:
1. 页面加载时有一个淡入动画
2. 鼠标移到链接上时,链接前面出现一个→箭头
3. 页面底部加一个「当前时间」的实时时钟,用JavaScript实现
Composer会创建一个新的 script.js 文件,在HTML里引入它,同时更新CSS加上动画效果。三个文件同时改动,一次搞定。
刷新浏览器看看效果。如果时钟格式不是你想要的,直接告诉Composer:
时钟的格式改成 HH:MM:SS,24小时制,加上日期
Composer只会改 script.js 里对应的代码,其他文件不动。
到这里,你已经体验了Cursor的完整工作方式:
你可能会问的几个问题
「我完全不懂代码,真的能用吗?」
能。这一章你跟着做下来,应该没有碰到任何需要理解代码的地方。你描述需求,Cursor写代码,你看结果。代码对你来说就像一个中间过程,你不需要读懂它,只需要判断最终效果对不对。
碰到问题了?直接在Chat里问。「这段CSS是什么意思」「为什么我的页面在手机上显示不正常」,Cursor会用人话解释清楚。
「做出来的东西质量行吗?」
AI写的代码不一定是最优解,但对于大多数场景够用了。特别是前端页面、小工具、原型产品这类项目,Cursor的输出质量已经很稳了。生成的代码结构清晰、命名规范,比不少初级程序员写的还好。
到后面章节会讲怎么用Rules和Context提升代码质量。现在不用想那么多。
「Chat和Composer到底有什么区别?」
一句话:Chat是问答,Composer是干活。Chat回答问题,有时附带代码片段。Composer直接在项目里创建和修改文件。想了解一个概念,用Chat。想让AI帮你写东西,用Composer。
§04 核心工作流
Core Workflows — Four Ways to Talk to AI
上一章体验了四种交互方式,这一章展开聊。每种交互解决什么问题、什么时候该用哪种、怎么用效率最高。搞清楚这些,日常使用就不会纠结了。
Chat:你的技术顾问 Chat — Ask, Learn, Explore
按 Cmd+L 打开,问什么都行。Chat的定位很明确:它是一个问答工具,不是执行工具。
什么意思呢?Chat回答你的问题、解释代码、给方案建议,但它不会直接修改你的项目文件。代码会出现在对话里,你需要手动复制或点「Apply」才会生效。
Chat最擅长三件事:
探索和学习。你在看一段代码,不理解某个函数在干什么。选中那段代码,按 Cmd+L,它会自动把选中的代码带入Chat的上下文,你问「这段代码做了什么」,Chat会用清晰的语言解释。追问「能不能换种方式实现」「性能有问题吗」,它都能接住。
技术选型。「做一个实时通知系统,WebSocket和SSE哪个好?」「状态管理用Redux还是Zustand?」这种比较分析类的问题,Chat比搜索引擎好用得多,因为它知道你项目的上下文,能给出有针对性的建议。
调试分析。把报错信息粘贴到Chat里,它能快速定位问题。不只是告诉你哪行出错了,还会解释为什么出错、怎么修。如果你用 @file 引用相关的代码文件(后面会讲),Chat的分析会更准确。
Composer(Agent模式):多文件编辑 Composer — The Killer Feature
按 Cmd+I 打开。如果说Chat是顾问,Composer就是那个帮你干活的工程师。
Composer跟Chat最大的区别:它可以同时创建和修改多个文件,改动直接体现在你的项目里。不需要你复制粘贴,不需要你手动保存,它直接操作你的代码。
Agent模式:让Composer自己跑
Composer有两种模式:Normal和Agent。现在默认就是Agent模式,也是你应该用的模式。
Agent模式下的Composer不只是写代码。它会自己读文件了解项目结构、运行命令安装依赖、执行终端命令测试结果、发现错误后自动修复。整个过程你可以在Composer面板里实时看到它在做什么。
举个例子。你在Composer里说:
给这个项目加上暗色模式切换功能。
要求:
- 右上角一个切换按钮
- 默认跟随系统偏好
- 用户选择后保存到localStorage
- 动画过渡要平滑
Agent模式的Composer会这样做:
- 先读取你现有的HTML和CSS文件,理解当前的样式结构
- 在HTML里添加切换按钮
- 在CSS里创建两套配色方案(明/暗)
- 创建或修改JavaScript文件,写入切换逻辑和localStorage持久化
- 加上过渡动画的CSS
所有文件的改动以diff形式展示,你可以逐个审查。满意就Accept,不满意可以告诉它哪里要改。
Composer的最佳使用方式
用了一阵之后,我觉得Composer最舒服的用法是给它一个完整的、有上下文的指令。
不好的方式:
加个按钮
好的方式:
在导航栏右侧加一个"导出PDF"按钮。
点击后调用 html2pdf.js 库将当前页面内容导出为PDF。
按钮样式跟导航栏其他按钮保持一致。
导出文件名格式:report-YYYY-MM-DD.pdf
指令越具体,Composer的输出越接近你想要的。别怕写长,多花30秒把细节说清楚,能省掉后面好几轮来回修改。
Tab补全:日处理4亿次请求 Tab Completion — The Silent Workhorse
Tab补全是Cursor里最隐形的功能。你可能用了一百次都没注意到。但它是使用频率最高的AI功能,没有之一。
Cursor官方数据:Tab模型每天处理超过4亿次请求。他们专门训练了一个叫Fusion的模型,比初版准确预测多25%的困难编辑,建议长度提升了10倍。
Tab不只是补全当前行
传统的代码补全工具只看你当前光标位置,猜你要输入什么。Cursor的Tab模型不一样:它看你正在做什么,预测你的下一个编辑动作。
什么意思?
你刚把一个变量名从 data 改成 userData。Tab模型注意到了,它会自动建议你把文件里其他用到 data 的地方也改成 userData。你不需要一个一个找、一个一个改,Tab按一路帮你改完。
再比如,你在一个TypeScript文件里写了一个新的interface:
interface UserProfile {
name: string;
email: string;
avatar: string;
}
然后你切到另一个文件开始写使用这个interface的函数,Tab模型已经知道 UserProfile 的结构了,它会自动建议正确的属性访问方式。
Tab补全的最佳实践
说几个让Tab更好用的技巧:
写注释引导补全。在写代码之前先写一行注释说明意图,比如 // 验证邮箱格式是否合法,Tab模型会根据注释内容生成对应的函数实现。注释就是给AI的指令。
善用Tab的连续接受。按一次Tab接受当前建议后,Tab可能会立刻给出下一个建议。这时候再按Tab,它会连续帮你补全好几步操作。写重复结构的代码时这个特别爽,按Tab按Tab按Tab,几秒钟搞定。
用Esc拒绝不合适的建议。Tab的建议不是每次都对的。看到灰色提示不合适就按Esc忽略,继续打字。不要为了省事就接受一个不太对的建议,后面改起来更花时间。
Cmd+K:快速内联编辑 Cmd+K — Inline Magic
选中一段代码,按 Cmd+K,弹出一个小输入框。告诉它你想怎么改,回车,改动直接应用在选中的代码上。
Cmd+K的定位是精准的局部修改。它不会动你没选中的代码,不会创建新文件,不会改项目结构。就改你指定的那一小块。
几个典型场景:
// 选中一个函数,Cmd+K输入:
给这个函数加上错误处理,catch里打印错误信息
// 选中一段CSS,Cmd+K输入:
改成flexbox布局,垂直居中
// 选中一段JavaScript,Cmd+K输入:
把回调函数改成async/await写法
// 选中一段JSON配置,Cmd+K输入:
加上TypeScript的strict模式配置
Cmd+K和Composer的区别很直观:Composer是让AI帮你做一件完整的事情,Cmd+K是让AI帮你改一个具体的地方。如果说Composer是「帮我盖个房子」,Cmd+K就是「帮我把这面墙刷成蓝色」。
@符号引用:给AI足够的上下文 @ References — Context Is Everything
这是很多人忽略但极其重要的功能。
AI给出好答案的前提是它了解足够的上下文。你在Chat或Composer里提问时,AI默认只看到你当前打开的文件。但你的问题可能涉及项目里的其他文件、某个文档、甚至一个网页上的信息。
@符号让你主动给AI投喂上下文。在Chat或Composer的输入框里,打一个@,会弹出一个菜单:
| 引用方式 | 作用 | 典型场景 |
|---|---|---|
@file |
引用项目中的某个文件 | 「参考 @api.ts 的接口定义,帮我写前端调用代码」 |
@folder |
引用整个文件夹 | 「看看 @components/ 文件夹,帮我写一个风格一致的新组件」 |
@code |
引用某个具体的函数或类 | 「@calculateTotal 这个函数有bug,帮我查一下」 |
@web |
让AI搜索网络获取最新信息 | 「@web 查一下React 19的新API有哪些」 |
@docs |
引用官方文档 | 「@docs Next.js 看看App Router的最新用法」 |
@git |
引用Git历史 | 「@git 这个文件最近的改动是什么」 |
@codebase |
让AI搜索整个代码库 | 「@codebase 项目里哪些地方用到了用户认证」 |
举个实际的例子。你要写一个新的API接口,需要参考现有接口的风格和数据库模型。在Composer里这样写:
参考 @routes/users.ts 和 @models/user.ts 的写法,
帮我写一个新的订单相关API:
- GET /orders(列表,分页)
- POST /orders(创建)
- GET /orders/:id(详情)
数据库模型也一起创建。
Composer会读取你引用的两个文件,了解你项目的代码风格和数据库用法,然后生成风格一致的新代码。不用你解释项目用什么框架、什么ORM、什么代码规范,它从你引用的文件里都看到了。
上下文的质量决定了输出的质量。你引用的文件越精准,AI的输出就越符合你的项目风格。这比任何prompt技巧都管用。
@docs 可以索引第三方库的文档。在Cursor设置里添加文档源URL(比如Next.js、Tailwind CSS的官方文档),之后在Chat或Composer里就能直接用 @docs 引用。AI回答的准确度会好很多,因为它参考的是官方文档而不是训练数据里可能过时的信息。四种模式怎么选 Choosing the Right Tool
到这里,四种核心交互都讲完了。实际使用的时候不用想太多,几个简单的判断标准:
| 你想做什么 | 用什么 | 快捷键 |
|---|---|---|
| 问一个问题、了解概念 | Chat | Cmd+L |
| 写一个新功能、改多个文件 | Composer | Cmd+I |
| 改当前光标附近的代码 | Tab补全 | Tab |
| 改选中的一段代码 | Cmd+K | Cmd+K |
更直觉的判断方式:
- 不确定怎么做 → Chat
- 知道要做什么,涉及多个文件 → Composer
- 知道要改什么,就改一小块 → Cmd+K
- 正在打字,AI建议看起来对 → Tab
实际工作中,这四种方式是混着用的。一个典型的工作流:Chat里讨论方案 → Composer执行 → 看结果觉得某处要调 → Cmd+K改那一块 → 继续写代码时Tab帮你加速。不用刻意切换,用多了就自然知道该按哪个键。
Cursor 3的新东西 What's New in Cursor 3
2026年4月2日,Cursor发布了3.0版本。这是一次方向性的更新,不只是加功能。
Agents Window。全新的Agent管理界面。你可以同时运行多个Agent,每个处理不同的任务。一个Agent在帮你写测试,另一个在重构一个模块,第三个在修一个bug。在Agents Window里你能看到每个Agent的工作状态,随时切换、发送追加指令。
Background Agent。把任务交给云端Agent,在后台执行。它会从GitHub克隆你的仓库,在独立的虚拟机里工作,完成后提交Pull Request。你甚至可以同时运行8个Background Agent。相当于你有8个远程工程师在帮你干活,你只管review PR就行。
Design Mode。直接在浏览器里标注UI元素。你觉得某个按钮的位置不对、某个间距太大,不用描述「第三行的那个蓝色按钮」,直接在Design Mode里点击那个按钮,Cursor就知道你在说哪个元素了。
这些更新指向一个趋势:Cursor正在从代码编辑器变成Agent调度中心。你不再是一个人写代码AI帮你补全,而是你管理一群AI Agent帮你做事。这个方向和Claude Code的终端Agent路线、GitHub Copilot的IDE插件路线形成了三种不同的产品范式。
Composer 2:Cursor自己的模型 Composer 2 — The In-House Model
Cursor一直被人说是套壳,调用GPT、Claude的API加个界面。2026年3月19日,他们用行动回应了这个质疑。
Composer 2是Cursor自研的编码模型。基于开源的Kimi K2.5继续训练,分两个阶段:代码预训练 + 大规模强化学习。训练方式也有意思,用的是Real-time RL,拿真实用户的交互数据作为奖励信号,最快每5小时就能部署一个新版本。
Composer 2不是在实验室里训练好了拿出来用的模型。它是在真实使用场景中持续进化的,你每天用Cursor写代码,都在帮这个模型变得更好。
在Cursor里使用Composer 2很简单:选模型的时候选「auto」,Cursor会自动判断什么时候用Composer 2、什么时候用Claude或GPT。auto模式下不消耗信用额度,无限使用。
一些使用习惯 Habits That Help
最后分享几个我用下来觉得有用的习惯。
需求写清楚,别省字。很多人跟AI交互的方式太随意,「帮我改改」「优化一下」。AI不是你的老同事,它没有跟你合作三年的默契。你想要什么样的改,觉得哪里需要优化,说具体。多花30秒写清楚需求,省的是后面三轮五轮的来回修改。
给它看参考。用@引用你觉得写得好的文件,告诉Composer参考这个风格来写。AI模仿已有代码的能力其实很强,远比你用文字描述来得准确。
别怕推倒重来。Composer写了一堆,你觉得方向不对?直接Cmd+Z撤销所有改动,重新描述需求。在错误的基础上打补丁只会越补越乱。重来经常比反复修改更快。
多用Git。每完成一个功能就commit一次。这样即使Composer改坏了什么东西,你随时能回滚到上一个正常的状态。Cursor跟Git的集成很好,在Source Control面板里点几下就完成了。
关注结果,别盯过程。Composer在写代码的时候,不用每一行都看。让它写完,看最终效果对不对就行。效果对了,代码内部怎么实现的不重要。效果不对,再去看哪里出了问题。
§05 Rules:给AI一张地图
Rules — The Map You Draw for Your AI
每个AI编程工具都需要一种方式了解你的项目。Cursor的Rules系统,是目前IDE类工具中设计最细致的指令系统之一。
从一个文件到一个目录
说起来,Cursor的规则系统经历过一次比较大的演变。
早期Cursor用的是项目根目录下的.cursorrules文件。一个纯文本文件,所有规则塞在一起。能用,但糙。你没法让某些规则只对前端代码生效、另一些只对后端生效。项目一大,那个文件就成了垃圾场。
现在的做法是在.cursor/rules/目录下放多个.mdc文件。MDC是Cursor自己定义的格式,本质上就是YAML frontmatter + Markdown正文。写过博客、用过Jekyll或Hugo的话,对这个格式应该不陌生。
一个典型的Rules文件长这样:
---
description: TypeScript服务层规范
globs: src/services/**/*.ts
alwaysApply: false
---
# 服务层编码规范
- 所有服务方法必须返回Promise
- 错误处理统一用自定义的AppError类
- 数据库操作用事务包裹
- 不要在服务层直接返回HTTP状态码
上面那个globs字段就是这套系统的精华。
Glob Scoping:对的规则在对的地方生效
我觉得Cursor Rules系统最聪明的设计就是glob scoping。你可以让每条规则只在特定文件类型或目录下生效。
比如你的项目里前端用React,后端用Express,测试用Jest。你可以这样分:
# .cursor/rules/frontend.mdc
---
globs: src/components/**/*.tsx
---
组件用函数式写法,样式用Tailwind,不要写CSS文件
# .cursor/rules/backend.mdc
---
globs: src/api/**/*.ts
---
路由处理函数必须有错误中间件,响应格式统一用 { data, error }
# .cursor/rules/tests.mdc
---
globs: **/*.test.ts
---
测试用describe/it结构,mock外部依赖,不要测试实现细节
当Cursor的Agent在编辑前端组件时,只有frontend.mdc的规则会生效。碰后端代码时,切换到backend.mdc。规则跟着文件走,不是一股脑全塞进上下文。这在大型项目中能省下不少上下文空间。
四种激活模式
Rules文件有四种方式被激活,适用于不同场景:
| 模式 | 触发条件 | 适合放什么 |
|---|---|---|
alwaysApply: true | 每次会话自动加载 | 全局代码风格、架构约束 |
| glob匹配 | 当匹配的文件出现在上下文中 | 特定模块/语言的规范 |
| 手动触发 | 用户通过@mention激活 | 不常用但偶尔需要的规则 |
| AI判断 | Agent根据description字段自动判断 | 辅助性建议 |
实际用下来,alwaysApply和glob匹配是最常用的两种。手动触发适合那种「我知道有这个规则但不是每次都需要」的场景,比如部署流程。AI判断模式就有点看运气,Agent有时候判断得挺准,有时候该加载的没加载。
和Claude Code的CLAUDE.md对比
熟悉Claude Code的读者可能会想:这不就是CLAUDE.md吗?
思路确实一样。两者都在做同一件事:用Markdown文件告诉AI你的项目规则。但实现方式有明显差异。
| 维度 | Cursor Rules | Claude Code CLAUDE.md |
|---|---|---|
| 文件格式 | MDC(YAML + Markdown) | 纯Markdown |
| 组织方式 | 多文件,按职责拆分 | 分层级(全局/项目/子目录) |
| 作用域控制 | glob精确匹配文件 | 靠目录层级隐式实现 |
| 约束强度 | 提示级别,AI可以违反 | 可配合Hooks硬拦截 |
| 记忆能力 | 无跨会话记忆 | Auto Memory自动积累 |
Cursor的长处在glob scoping,规则更精准、上下文更省。Claude Code的长处在约束强度和记忆系统,Hooks可以在程序级别阻止AI做某些事,Auto Memory让规则自己长出来。
两者各有所长,不存在谁碾压谁。选哪个取决于你的工作流:在IDE里写代码多就用Cursor Rules,终端重度用户就用CLAUDE.md。
我做过一个Cursor Rules插件
说到这个话题,我自己做过一个Cursor Rules的社区插件。当时社区里大量用户在手动写.cursorrules文件,但缺好的模板和最佳实践参考。
这个插件在社区里传播得还挺广。后来有一次Cursor在深圳办线下meetup,有人跟我提到说用过这个插件,我才意识到这个东西真的帮到了一些人。
现在Cursor官方已经把Rules系统升级到MDC格式,很多早期的.cursorrules模板需要迁移。但核心思路没变:好的规则是从项目实践中长出来的,不是从模板里复制粘贴的。
实战:从零写一套Rules
下面是一个完整的Rules配置示例。假设你的项目是一个Next.js全栈应用:
# .cursor/rules/global.mdc
---
description: 全局项目规则
alwaysApply: true
---
# 项目架构
- Next.js 15 App Router + TypeScript + Tailwind CSS
- 数据库:PostgreSQL + Drizzle ORM
- 认证:Better Auth
- 包管理器:pnpm(不要用npm或yarn)
# 代码风格
- 组件用函数式,不用class
- 变量命名用camelCase,类型用PascalCase
- 文件命名用kebab-case
# 不要做
- 不要安装新依赖除非明确确认
- 不要修改 drizzle.config.ts 和 auth.ts
- 不要用 any 类型
# .cursor/rules/react-components.mdc
---
description: React组件规范
globs: src/components/**/*.tsx, src/app/**/*.tsx
---
- 优先用Server Component,只在需要交互时用 "use client"
- Props用interface定义,不用type
- 样式全部用Tailwind,不写CSS文件
- 加载状态用Suspense + loading.tsx处理
# .cursor/rules/database.mdc
---
description: 数据库操作规范
globs: src/db/**/*.ts, src/services/**/*.ts
---
- 写操作必须用事务包裹
- 查询结果做空值检查再返回
- 迁移文件不要手动修改,用 pnpm db:generate 生成
- 索引变更需要在PR描述中说明原因
三个文件,加起来不到50行,覆盖了全局约束、前端规范和数据库规范三个维度。Agent编辑React组件时,global.mdc和react-components.mdc同时生效;碰数据库代码时,global.mdc和database.mdc同时生效。每个场景下的上下文都是精准的。
§06 进阶能力
Advanced Capabilities
Cursor在2026年Q1的更新节奏快得吓人,每两三周丢一个重磅功能。这一章梳理那些把Cursor从代码编辑器推向Agent平台的关键能力。
Background Agent:把活丢到云端
Background Agent是我觉得Cursor做得最对的功能之一。
工作原理很直观:Cursor在云端起一台隔离的Ubuntu虚拟机,从GitHub克隆你的仓库,在独立分支上干活。有网络访问权限,可以装依赖包,干完了自动推代码、开Pull Request。你可以同时跑最多8个Agent,每个处理不同的任务。
什么意思?你可以一边在本地写核心业务逻辑,一边丢几个Background Agent出去写测试、重构老代码、修已知Bug。互不干扰,也不占你本地的编辑器。
有个细节做得不错:如果你在本地编辑了Agent正在处理的同一个文件,Agent会自动暂停或调整。这种冲突协调在多Agent场景下很重要,不然合代码的时候就是灾难。
2026年3月25日,Cursor又推出了自托管Cloud Agent。代码执行完全在用户自己的网络内,构建产物和密钥不出内网。这是给企业用的,解决的是「代码不能上云」的合规问题。
我的判断:Background Agent是Cursor从编辑器转型为Agent平台的关键一步。一旦你习惯了把任务「派」出去,就回不去一个个顺序干的模式了。Claude Code用户也有类似的体验(Agent Teams + Subagents),但Cursor的实现更偏向「一键派任务」的简单操作,上手门槛低不少。
BugBot:自动帮你审PR
BugBot是Cursor在2026年2月推出的自动化PR审查工具。每次新PR提交时自动运行,扫描代码里的逻辑Bug、安全隐患和代码质量问题。
几个关键数据:
| 指标 | 数值 |
|---|---|
| Bug解决率 | 76%(半年前是52%) |
| Autofix修复建议直接合并率 | 35%以上 |
| 每次运行识别问题数 | 过去6个月翻倍 |
35%的修复建议被直接合并,这个数字挺猛的。每三个修复建议里就有一个,人类看完觉得「行,没问题,直接merge」。
BugBot Autofix的工作流也值得说一下:它不是在PR上留评论说「这里有Bug」就完事了,而是启动一个独立的Cloud Agent,在虚拟机里跑测试验证修复方案,确认没引入新问题后才提交修复代码。相当于一个永远在线、不会累的Code Reviewer。
它还支持BugBot Rules,你可以定义项目特有的编码标准。比如「所有API响应必须包含error字段」「不允许在Controller层直接操作数据库」,BugBot会按这些规则做额外检查。
我的判断:BugBot已经过了玩具阶段,是真能减少人工审查工作量的工具。76%的解决率和35%的直接合并率说明建议质量在持续提高。团队开发的话,这可能是Cursor最值得付费的功能之一。
Automations:永不下线的Agent
2026年3月5日发布的Automations,在我看来是Cursor野心最大的功能。
定位是always-on Agent。你给它一个触发条件和一组指令,它就一直跑着。不是你手动启动的那种Agent,是基于事件自动触发的。
支持的触发源挺全:
- 定时调度(cron,比如每天凌晨3点跑安全扫描)
- Slack消息(比如有人在频道里@bot说「修一下这个Bug」)
- Linear Issue创建(新Issue自动分配Agent处理)
- GitHub PR合并(合并后自动更新文档或跑集成测试)
- PagerDuty告警(告警触发后Agent自动查日志分析代码变更)
- 自定义Webhook
举个具体场景:PagerDuty报警了,说某个API的错误率飙升。Automations的Agent自动去查最近的代码变更、翻日志、分析stack trace,给出一份初步分析报告和修复建议。全程不需要人参与。
Cursor估计目前每小时在跑数百个自动化任务。
我的判断:Automations触及的已经不只是编码,而是整个开发运维流程。Cursor的定位从「写代码的工具」升级到了「开发流水线上的AI节点」。不过这个功能还比较新,社区反馈不多,实际稳定性还需要更多验证。已经在用Slack + Linear + GitHub这套工作流的团队,值得试一下。
Cursor 3的Design Mode
2026年4月2日发布的Cursor 3带来了不少新东西,其中Design Mode是一个有意思的方向。
思路是这样的:你在浏览器中打开应用,直接在页面上标注和定位UI元素,告诉Agent「把这个按钮移到右边」「这个间距太大了」「改成深色模式试试」。Agent看到你标注的位置,直接回去改代码。
这解决的是一个真实痛点:前端开发中,你知道页面哪里不对,但要精确描述「第三个卡片右上角那个图标的hover状态」挺费劲。直接在浏览器里一指,比写一段话准确多了。
Cursor 3同时还引入了Agents Window(全新的Agent管理界面,可以网格布局查看多个Agent对话)和多入口启动Agent(桌面、移动端、Web、Slack、GitHub都行)。整个产品方向很清楚:编辑器在变成Agent调度中心。
我的判断:Design Mode想法挺好,但还在早期。复杂的UI问题光靠标注可能不够,Agent还得理解设计系统和组件层级。值得关注后续迭代,但现在还不算杀手级能力。
MCP集成
MCP(Model Context Protocol)是Anthropic提出的标准协议,让AI Agent能够连接外部工具和服务。Cursor对MCP的支持意味着你可以在编辑器里直接调用数据库查询、访问API文档、连接项目管理工具等。
不过说实话,Cursor的MCP支持目前还谈不上深度集成。和Claude Code比,Cursor对MCP的利用主要停留在@docs引用外部文档这个层面。Claude Code那边MCP + Skills + Hooks的组合拳更完整。
社区里能找到一些MCP服务器的配置教程,但Cursor官方并没有大力推这个方向。我理解他们的优先级是自研模型和Agent体系,MCP更多是作为一个开放接口「有总比没有好」的存在。
我的判断:MCP是行业趋势,Cursor支持它是正确的。但如果你的核心需求是丰富的外部工具集成,目前Claude Code和Cline在这方面做得更好。
/worktree命令:隔离执行
Cursor 3新增的/worktree命令解决一个很实际的问题:你在主分支上写着代码,突然想让Agent去搞一个独立的任务(比如重构某个模块),但不想污染当前的工作目录。
/worktree会创建一个git worktree,Agent在隔离的工作目录里操作,完事后你再决定要不要把改动合回来。这和Background Agent配合使用效果很好:本地用worktree处理快速任务,云端用Background Agent处理耗时任务。
我的判断:小功能,但很实用。特别是对于那些经常需要在多个功能分支之间切换的开发者。
Composer 2:自研模型的野心
最后聊Composer 2。这不是一个你直接操作的功能,但它可能是Cursor未来最重要的技术决策。
Composer 2是Cursor训练的编码Agent模型,基于Moonshot AI的开源模型Kimi K2.5做继续训练。训练分两步:代码预训练,然后大规模强化学习。
最有意思的是他们的Real-time RL策略:用真实用户交互作为奖励信号训练模型,最快每5小时就能部署一个新的checkpoint。Cursor有100多万日活用户在写代码,这些交互数据(用户接受了哪些建议、拒绝了哪些、手动修改了什么)就是训练信号。这个数据飞轮是纯API调用方式没有的。
定价也有竞争力:$0.50/M输入 + $2.50/M输出。接近Haiku的价格,接近Sonnet的效果。
我的判断:Composer 2标志着Cursor不再只是「套壳调用Claude/GPT」,而是开始建立自己的技术壁垒。Real-time RL这个方向我觉得挺有前景的。当你的产品本身就是模型训练数据的来源时,产品越好用、用户越多、数据越多、模型越强、产品越好用。这个飞轮一旦转起来就很难被追上。
当然,自研模型也有风险。模型能力如果追不上Claude和GPT的迭代速度,用户可能切走。Cursor的策略是两手抓:Auto模式默认用自研模型(无限使用),手动选前沿模型消耗信用额度。既推自研模型的使用量,又不丢需要最强模型的用户。定价设计挺聪明的。
§07 从零构建一个完整产品
Build a Complete Product from Scratch
前面讲了Cursor的每个零件,这章把它们装起来。用一个真实项目走一遍完整流程,你会发现Cursor的体验优势不在某个单点功能,而在整个链条串起来之后的顺滑感。
案例:做一个个人作品集网站
选这个案例考虑过。好的教学项目得满足几个条件:对大多数人有用(程序员、设计师、自由职业者都需要一个作品集页面)、复杂度适中(一天内搞定,但涉及页面路由、响应式布局、动态内容)、技术栈匹配(Next.js + Tailwind是Cursor最舒服的组合)。
做的事很明确:首页展示个人介绍,项目列表页动态加载作品卡片,每个作品有详情页,底部有联系表单。功能不复杂,但够串起Cursor的核心能力。
Phase 0:用Chat想清楚再动手
我早期做产品有个毛病:想到什么就直接开写。结果做到一半发现需求没想清楚,推倒重来的时间比写代码还多。
后来养成了一个习惯:先用Cursor的Chat聊需求,不碰代码。
打开Chat面板,跟它描述你的想法:
我想做一个个人作品集网站,用Next.js + Tailwind。
先别写代码,帮我梳理一下需求:
- 需要哪些页面?
- 数据从哪来?(JSON文件还是CMS?)
- 有什么技术决策需要提前想清楚?
Cursor的Chat会像产品经理一样跟你讨论:页面结构怎么设计、用静态JSON还是接Headless CMS、图片怎么处理、SEO要不要管。你一边回答它的问题,一边把想法理清楚。
讨论完了,让它整理成一份项目说明文件。这份文件是整个项目的锚点,后面所有开发围绕它展开。
Phase 1:Composer生成项目骨架
需求想清楚了,打开Composer,一句话创建项目:
创建一个Next.js项目叫portfolio,用Tailwind CSS + TypeScript。
目录结构按之前讨论的需求来,包含首页、项目列表页、项目详情页和联系页面。
项目数据先用本地JSON文件。
Composer会生成一整套文件:页面组件、布局文件、数据模型、样式配置。编辑器里能看到每个文件的创建过程,可以实时审查。
Cursor和纯终端工具的体验差异在这里就出来了。Composer生成代码的同时,你能在编辑器里直接看到文件树变化、点开任何文件检查内容,不用在终端和编辑器之间来回切。视觉化是Cursor最大的优势之一,别把它当花架子。
项目骨架生成后,文件结构大致长这样:
├── app/
│ ├── layout.tsx
│ ├── page.tsx
│ ├── projects/
│ │ ├── page.tsx
│ │ └── [slug]/page.tsx
│ └── contact/page.tsx
├── components/
│ ├── Header.tsx
│ ├── ProjectCard.tsx
│ └── ContactForm.tsx
├── data/
│ └── projects.json
├── tailwind.config.ts
└── package.json
Phase 2:Tab补全填充细节
骨架有了,现在开始填肉。这是Tab补全最舒服的阶段。
打开components/ProjectCard.tsx,开始写组件。刚敲几个字,Tab就给你一个完整的补全建议。不只是补全当前行,而是预测你接下来要写什么。Cursor的Tab模型每天处理超过4亿次请求,对代码上下文的理解确实比普通补全强不少。
实际写的时候节奏大概是这样:Tab给建议 → 按Tab接受 → 微调一两个细节 → 继续写下一部分 → Tab又给建议。整个过程很流畅,有点像你在弹钢琴,AI在帮你翻谱。
Tab补全的黄金场景是重复性高、模式明确的代码。比如你写完一个ProjectCard组件,接着写ContactForm,Tab会参照前一个组件的风格来补全。Tailwind的className也是Tab的强项,它会根据你前面写过的样式推断后续的class组合。
Phase 3:让它好看起来
功能跑通之后,界面大概率不怎么样。正常。我做产品的习惯是先跑起来再管好看。
Cursor的视觉化优势在这一步体现得最明显。跑起dev server,一边看浏览器里的页面效果,一边在编辑器里改代码。改完保存,页面自动刷新,所见即所得。
用Composer做UI调整也很方便:
首页的hero区域太紧凑了,标题和描述之间加点间距。
项目卡片改成网格布局,桌面端3列,移动端1列。
联系表单加一个提交成功的反馈动画。
Composer会同时修改多个文件的样式代码。你在编辑器里能看到每个文件的diff,确认没问题再接受。
几轮迭代之后,视觉效果基本到位。「看效果 → 提反馈 → 自动修改 → 再看效果」这个循环,在Cursor里转得特别快。传统开发中你得自己改CSS、切浏览器刷新、再切回编辑器,现在整个过程缩短到几秒。
Phase 4:Background Agent并行处理
核心功能和UI差不多了,还剩一堆「重要但不紧急」的活:响应式适配、深色模式、SEO元数据、联系表单的后端接口。
这是Background Agent上场的时候。
Background Agent在云端虚拟机里运行,从你的GitHub仓库克隆代码,在独立分支上工作。最多可以同时跑8个Agent,互不干扰。
你可以同时开几个任务:
Agent 1:给所有页面添加响应式断点,确保移动端体验良好
Agent 2:实现深色/浅色模式切换,用Tailwind的dark:前缀
Agent 3:给每个页面添加SEO元数据(title、description、OG图)
三个Agent并行跑,完成后各自推代码、生成Pull Request。审查一下PR,合并进主分支。原本串行做的三件事,现在并行完成,时间压缩到1/3。
Phase 5:部署上线
本地跑得好好的,该让别人也能看到了。
在Composer里说一句:
帮我部署到Vercel。配置好域名、环境变量,
再加一个GitHub Actions的CI流程,每次push自动跑lint检查。
Cursor会帮你创建Vercel配置文件、设置环境变量、生成GitHub Actions的YAML。不用打开Vercel的管理后台,也不用手写CI配置。
部署完成,打开线上URL,走一遍完整流程。确认没问题。
从想法到上线,一天之内。
回顾:整个流程用到了什么
| Phase | 做了什么 | 用了哪个功能 |
|---|---|---|
| Phase 0 | 需求讨论、理清思路 | Chat |
| Phase 1 | 项目骨架、文件结构 | Composer |
| Phase 2 | 组件细节、样式填充 | Tab补全 |
| Phase 3 | UI迭代、视觉打磨 | Composer + 实时预览 |
| Phase 4 | 响应式/深色模式/SEO | Background Agent |
| Phase 5 | Vercel部署 + CI/CD | Composer |
整个过程大概6-10个小时。Phase 2和Phase 3最耗时,组件逻辑和样式调整需要反复验证。对Next.js和Tailwind熟悉的话,可能更快。
同样的项目纯手写大概3-5天。但速度不是唯一的差异。更关键的是:你在整个过程中思考的是「这个页面应该给访客什么感受」「项目卡片要展示哪些信息」,而不是「flex布局怎么居中」「Next.js的动态路由怎么写」。
几条实战经验
做了不少项目之后,总结几条和Cursor相处的经验。
一、Chat想清楚,Composer动手写
这两个功能分工很明确。Chat是讨论,Composer是执行。很多人混着用,在Composer里问技术方案,在Chat里让它改代码。能跑,但效率不高。
我现在的习惯是:新功能先在Chat里讨论方案,确认了再切到Composer写。改bug也一样,先在Chat里分析原因,定位了再让Composer修。
二、Tab是你的肌肉记忆
Tab补全最大的价值不是帮你少打几个字,是帮你保持心流。写代码最怕断开思路去查文档、查API。Tab让你几乎不需要离开编辑器,想到什么就写,Tab帮你补完。
用好Tab有个技巧:文件里的上下文越丰富,Tab越准。在空文件里开始写,Tab的建议可能很泛。但如果文件里已经有几个类似的组件,Tab就知道你的代码风格和模式,补全质量明显提高。
三、先跑起来再优化
我做小猫补光灯的时候,第一个版本只有一个功能:打开App,屏幕变白,亮度拉满。就这样。拿它自拍了一张,确认补光效果还行,才开始加色温调节、亮度滑块这些。
用Cursor也是一样。Composer可以很快帮你搭出一个能跑的版本,先用两天,看看真正需要什么,再加。你脑子里想的功能和实际用起来需要的,往往差异很大。
四、验证比生成更重要
Cursor生成代码的速度很快,快到你可能产生一种错觉:写得这么快应该是对的。不一定。
我的做法是每完成一个功能模块就在浏览器里验证。Cursor的实时预览让验证成本很低,改一行代码页面自动刷新。利用好这个优势,别让问题积累。
§08 Cursor的边界与选择
Boundaries & Choices
我可能是国内最早一批用Cursor的人。也算吃到了不少Cursor和Vibe Coding的红利。但我现在的主力工具已经不是Cursor了。这一章聊聊为什么。
Cursor够用的场景
说判断之前先说事实。Cursor在很多场景下依然是很好的选择。
日常编码。写组件、调样式、加功能、修小bug。Tab补全每天处理4亿次请求,准确率一直在涨。对大多数日常开发任务,Tab-Tab-Tab的节奏确实比什么都快。不用切到终端、不用描述上下文,光标在哪,补全就在哪。
快速原型。用Composer一句话搭起项目骨架,Chat讨论方案,Tab填充细节。从想法到能跑的原型,Cursor的链条是最短的。「我有个idea想快速验证一下」这种需求,Cursor目前仍然是最流畅的。
单人项目。一个人做一个中小规模的应用,Cursor完全够用。项目文件不多、依赖关系不复杂的时候,Cursor对代码库的理解足够了。我用它做过好几个产品,该说的都说了。
对AI编程不熟悉的人。这一条很重要。Cursor把AI编程的门槛降到了最低。不用懂终端、不用会命令行、不用配置任何东西。装好软件,打开项目,就能用。Chat和Composer的交互方式,对非程序员来说很直觉。
该考虑别的工具的场景
Cursor确实有够不到的地方。不是产品做得差,是产品形态本身的限制。
大规模重构。需要同时理解和修改几十个文件的时候,Cursor的上下文窗口会成为瓶颈。它需要在编辑器里打开文件、索引内容,能「看到」的范围有限。Claude Code有1M的上下文窗口,可以一次性把整个中大型代码库装进去。这个差距在重构复杂的多文件依赖时体感很明显。
复杂的多步骤任务。比如「分析整个项目的错误处理模式,找到不一致的地方,统一改成新的模式」。这种任务要先全局扫描、再制定策略、再逐个修改、最后验证一致性。Cursor可以做,但你得手动拆成很多步。终端Agent类工具在这种任务上更自然,它的工作模式本身就是「想 → 做 → 看 → 继续」的循环。
需要深度集成开发工具链的场景。跑测试、执行脚本、操作数据库、部署上线。Cursor的终端面板可以做这些事,但本质上还是一个编辑器在调用终端。Claude Code本身就在终端里,调用任何命令行工具都是原生操作。
Cursor的核心优势
虽然我现在主力不用Cursor了,但有些优势是客观存在的。
视觉化。IDE形态最大的先天优势。代码高亮、文件树、diff视图、实时预览,这些视觉信息帮你更快理解代码。终端工具再怎么优化,视觉呈现上很难追上编辑器。做UI开发的话,这个差距尤其大。
低门槛。我见过太多非技术背景的人通过Cursor第一次做出了自己的产品。不用学Git命令、不用懂终端操作、不用理解shell环境。打开就能用。这个门槛优势不是技术问题,是产品设计哲学的问题。
Tab补全。这是Cursor投入最多的自研能力。Fusion Tab模型比初版准确预测多25%的困难编辑,建议长度提升了10倍。纯编码的场景下,目前没有比Tab更快的交互方式。不用切换面板、不用写prompt,光标在代码里移动的同时,补全就跟上来了。
IDE集成体验。VS Code的整个插件生态、主题系统、快捷键体系,Cursor全继承了。已经习惯VS Code的开发者,迁移成本几乎为零。
Cursor的核心挑战
说完优势,说挑战。这部分我会直接一些。
2026年3月,Cursor发布Composer 2,宣称是自研编码模型。两个半小时后,一个叫Fynn的开发者在调试API时发现返回的模型ID赫然写着kimi-k2p5-rl-0317。Kimi K2.5,加了一层强化学习微调,连模型名都没来得及改。
马斯克看到了,转发了。73万人看到了这条回复。事情就捂不住了。
不是第一次。去年Composer 1发布时,开发者在生成的代码里发现中文推理痕迹,社区猜测基座是智谱GLM或阿里Qwen。Cursor始终没正面回应。
模式很清楚:拿开源模型做基座,加一层微调,包装成自研。
我不觉得用开源模型有什么问题,开源本来就是给人用的。问题在于不说。Kimi K2.5的许可证写得明白:商业产品月收入超2000万美元,必须醒目标注「Kimi K2.5」。Cursor的月收入约1.67亿美元,是这个门槛的8倍多。
数字放在一起看更刺眼:Cursor估值290亿美元,提供模型基座的月之暗面(Moonshot AI)当时估值约43亿美元。一个6.7倍的落差。套壳的比造壳的贵了这么多,市场给的到底是什么估值?
但这件事背后有一个更根本的问题:一家估值290亿美元(据报道正在寻求500亿美元新一轮融资)的AI公司,没有自己的基座模型。
Anthropic有Claude,模型就是自己的,Claude Code的成本优势不是省出来的,是因为不用从外面买模型。OpenAI有GPT系列,Codex背后也是自家模型。
Cursor有什么?一个很棒的IDE体验,和一个从Kimi借来的模型。
去年我写过一段话:「Claude Code好用的逻辑是他们有模型成本和模型认知的优势,能更无所畏惧地投喂代码上下文烧token。而Cursor是真不行啊,他们为了抠成本需要在工具里融入便宜的和自研的模型。」
现在回看,Kimi K2.5事件完美印证了这句话。
三种范式会长期共存
AI编程工具目前有三条路线,短期内不会收敛成一条。
| 范式 | 代表产品 | 核心逻辑 | 最适合谁 |
|---|---|---|---|
| IDE插件 | GitHub Copilot | 嵌入现有IDE,不改变工作流 | 企业开发者、JetBrains用户 |
| AI-native IDE | Cursor、Windsurf | 从零设计AI优先的编辑器 | 快速原型、单人项目、新手 |
| 终端Agent | Claude Code、Codex | 在终端里以Agent模式自主工作 | 大项目重构、复杂任务、高级用户 |
三种范式解决的问题不完全一样。IDE插件几乎零学习成本,适合企业大规模推广;AI-native IDE体验最流畅,适合快速构建;终端Agent能力上限最高,适合复杂工程任务。
实际上很多人已经在组合使用了。日常编码开Cursor,Tab-Tab-Tab写完日常功能;遇到大规模重构或复杂多文件任务,切到Claude Code在终端里处理。各取所长。
Cursor 3的发布也印证了这个趋势。加了Agents Window、多Agent并行、Design Mode,方向是把编辑器变成Agent调度中心。其实是在向终端Agent的能力靠拢,同时保持IDE的视觉优势。能不能成功另说,但方向说明Cursor自己也意识到了纯编辑器形态的天花板。
不要在巨头的必经之路上建城堡
这是我对Cursor处境最核心的判断。
赛道够小的时候,产品公司有先发优势。Cursor靠Tab补全和Composer模式教育了整个市场,让AI编程从开发者的小众玩具变成普通人可以上手的工具。去年初我在即刻上写过:「AI新榜问最好用的AI工具是什么,我认为是Cursor、Cursor以及Cursor。」当时我是认真的。
但这个赛道进入头部模型公司的视野之后,产品公司就只能让路。
Anthropic看到Cursor靠Claude做到20亿美元ARR,不可能不动心。Claude Code不是在跟Cursor竞争同一个市场,它在重新定义AI编程。从「IDE里的补全插件」到「终端里的编程Agent」,这是范式转移,不是产品迭代。
Pragmatic Engineer今年初做了近千人的开发者调查:46%的开发者把Claude Code评为最爱的AI编程工具。Cursor是19%。不到Claude Code的一半。Claude Code从发布到拿下第一名,只用了8个月。
这让我想起HTC。2011年HTC市值超过诺基亚,产品确实好,体验确实领先。但iPhone和Android真正成熟之后,HTC从巅峰到边缘只用了两三年。教育了市场,然后被市场教育了。
Cursor不会消失,20亿美元ARR不会轻易死掉。但它正在从AI编程的主角变成配角。
我的选择,和给你的建议
我现在的工作流是这样的:大部分时间用Claude Code,需要做UI相关的开发时偶尔回Cursor看看效果。两个工具各有所长,不需要all-in某一个。
但如果你问我推荐什么工具给一个刚开始接触AI编程的人,我的回答仍然是Cursor。
原因很简单:它目前上手最快。不用懂终端、不用学命令行、打开就能用。Chat和Composer的交互对新手很友好。Tab补全在日常编码中依然是最快的交互方式。
Cursor是大多数人最好的起点。但它不一定是终点。
用Cursor做了几个项目、对AI编程有了基本感觉之后,可以试试Claude Code。你会发现终端Agent的工作模式解锁了一些IDE做不到的事。到那时候,你自然会形成自己的判断。
工具选择最忌站队。不是Cursor用户和Claude Code用户之间要打一架。选工具的标准只有一个:哪个能帮你更好地解决当前的问题。问题不同,答案不同。