前端工程师的 AI 副驾驶:我用 Cursor 一整年的真实体验与避坑指南
发布日期:2026-06-26
标签:前端 / Cursor / AI 编程 / 效率 / 工程实践
2025 年 6 月,我第一次把主力编辑器从 VS Code 换成 Cursor。当时团队里有人嗤之以鼻:「不过是套壳 ChatGPT。」有人跃跃欲试:「听说能自动写组件?」
一年后的今天——2026 年 6 月——我可以比较负责任地说:Cursor 没有取代我,但它确实改变了我写代码的方式。 它更像一个 7×24 在线的「副驾驶」:大多数时候靠谱,偶尔会把车开进沟里,而你是否安全抵达,取决于你有没有握紧方向盘。
这篇文章不是 Cursor 官方教程,而是一个前端工程师 365 天真实使用 后的复盘:哪些场景真的省时间、哪些坑我踩过不止一次、以及如果你今天才开始,可以少走哪些弯路。
一、为什么前端工程师特别适合 Cursor?
在换编辑器之前,我试过 Copilot、ChatGPT 网页版、Claude 单独对话。它们都能「生成代码」,但和 Cursor 的体验有本质差别:
| 工具 | 优势 | 对前端的短板 |
|---|---|---|
| Copilot Tab | 补全快、侵入感低 | 不理解整个项目上下文 |
| 网页版 LLM | 推理强、适合讨论方案 | 粘贴代码痛苦,无法直接改文件 |
| Cursor Agent | 读仓库、改多文件、跑终端 | 需要学习驾驭,有「开盲盒」风险 |
前端工作的特点,恰好和 Cursor 的能力高度重合:
- 改动分散:一个需求往往涉及组件、样式、路由、API 层、类型定义——Agent 的多文件编辑比单文件补全更有价值。
- 模式重复:表单、列表、弹窗、Hooks 封装——结构相似,AI 容易学你的项目习惯。
- 调试链路长:类型报错、Lint、构建失败、浏览器表现不一致——Agent 能读
@Lint Errors、跑npm test,比人肉复制报错快。 - 文档驱动:组件库、API 文档、设计稿——配合
@docs、MCP(Figma、语雀),减少来回切换窗口。
我不是把 Cursor 当「自动写代码机器」,而是当作 理解上下文的结对编程伙伴——这一点,是这一年用得越顺手的根本原因。
二、这一年,Cursor 本身也进化了很多
我的使用轨迹,几乎和 Cursor 的产品迭代同步。回顾一下,有助于理解「该怎么用」:
2025 Q2 初次上手:Tab 补全 + Chat,把 .cursorrules 当备忘录用
↓
2025 Q3 开始用 Composer 做多文件改动,"@文件" 成为肌肉记忆
↓
2025 Q4 Agent 成为默认模式;.cursor/rules 取代单文件 .cursorrules
↓
2026 Q1 MCP 接入 Figma / 语雀 / GitLab;Rules + Skills 分层管理
↓
2026 Q2 多 Agent 并行、worktree 隔离、Plan / Debug / Design 模式分工
最大的认知转变发生在 2025 年底到 2026 年初:我从「让 AI 写一段代码」变成「让 AI 完成一个任务」。
前者是补全思维,后者是 Agent 思维——而这,和「前端转型 AI Agent 工程师」的路子是同构的:你设计目标和约束,AI 负责执行循环。
三、我的一天:Cursor 如何嵌入前端工作流
说几个高频场景,都是真实发生过、且反复验证有效的。
场景 1:早上开工——快速进入上下文
老项目隔了一周再碰,最耗的是「回忆」。我现在固定流程:
- 打开 Agent,Ask 模式(只读,不改代码)
- 输入:「帮我梳理
src/features/order目录的职责、数据流和主要依赖」 - 用
@folder限定范围,避免全仓库漫游
三五分钟拿到一张「地图」,比我自己翻文件快得多。Ask 模式很重要——先理解,再动手,避免 Agent 一上来就改一堆不该改的文件。
场景 2:接需求——Plan 模式拆任务
中等以上复杂度的需求(比如「订单列表支持批量导出 + 权限控制」),我先用 Plan 模式:
@order-list @api/order.ts
需求:批量导出选中订单为 Excel,需校验导出权限,超 1000 条走异步任务。
请先给实现方案,不要写代码。
Plan 会输出:涉及文件、接口变更、状态设计、边界情况。我和它对齐方案后,再切 Agent 执行。
这一年最大的教训之一:跳过 Plan 直接 Agent,十次里有三次会「写出来能跑但架构别扭」的代码——后续维护成本反噬省下的时间。
场景 3:写组件——Tab + Cmd+K 仍是主力
并不是所有事都需要 Agent。日常写组件、补类型、改样式:
- Tab:续写 Props、补全
useMemo依赖、生成测试用例骨架 - Cmd+K(行内编辑):「把这个 div 改成 flex 布局,移动端纵向排列」
Agent 适合「跨文件」,Tab 适合「当前光标」。我统计过主观感受:约 60% 的编码量仍是 Tab + 手写,Agent 集中在 40% 的「整块任务」上。
场景 4:修 Bug——Debug 模式 + 证据链
生产环境有个偶现白屏,日志指向一个异步竞态。以前我要:复现 → 加 log → 猜 → 再试。
现在有 Debug 模式(或带运行时证据的 Agent 流程):
- 描述现象 + 贴监控截图 / 报错栈
- 让 Agent 列出 3 个最可能假设
- 逐个加最小化 log 或写复现测试验证
- 确认根因后再改
关键原则:没有证据不动刀。 Agent 很会「自信地猜」,前端 Bug 往往出在时序、闭包、依赖数组——必须让它拿运行时信息说话。
场景 5:联调接口——MCP 省掉复制粘贴
2026 年我接入了团队 MCP:语雀(接口文档)、GitLab(MR / Issue)、Figma(设计标注)。
以前:打开语雀 → 复制请求参数 → 粘贴到 Chat → 让 AI 写请求层。
现在:「根据语雀订单接口文档,在 api/order.ts 补全类型和请求函数」——Agent 自己拉文档。
前端同学最值得优先配置的 MCP:
| MCP | 用途 |
|---|---|
| Figma | 读标注、颜色、间距,减少「目测」 |
| 语雀 / Notion | 接口文档、业务规则 |
| GitLab / GitHub | 查 MR 讨论、关联 Issue |
| 浏览器(内置) | 验证页面表现、截图对比 |
MCP 不是炫技,是 把 Context 从人脑搬到工具链。
四、真正省时间的,是这几件事
复盘一年,下面这些带来的 ROI 最高:
1. 项目 Rules:一次配置,长期受益
我在 .cursor/rules/ 里按职责拆了多个 .mdc 文件:
.cursor/rules/
├── 00-global.mdc # 全局:TypeScript 严格模式、禁止 any
├── 10-react.mdc # React:函数组件、Hooks 命名
├── 20-vue.mdc # Vue 项目专用(另一个仓库)
├── 30-api.mdc # API 层:错误处理、类型生成约定
└── 40-testing.mdc # 测试:Vitest + Testing Library 规范
效果:Agent 不再每次生成 React.FC、不再用项目里根本不存在的 axios 封装方式。Rules 是「副驾驶的操作手册」——你不写,它就只能猜你的习惯。
2. @ 引用:精确投喂上下文
我常用的引用:
| 引用 | 何时用 |
|---|---|
@file | 指定参考实现:「按 UserForm.tsx 的风格写 OrderForm」 |
@folder | 限定范围,防止 Agent 乱翻 |
@codebase | 全局找「项目里有没有类似实现」 |
@Lint Errors | 修类型 / ESLint 报错 |
@git | 看最近改动:「这次回归和上周 MR 有关吗?」 |
@web | 查库的最新 API(注意验证版本) |
避坑:@codebase 全开很费 Token,且容易引入无关文件。能窄则窄。
3. Agent 跑终端:会用了很香,不会用很慌
让 Agent 执行 npm run test、npm run lint、pnpm build 自动验证改动——这是它和网页 Chat 的核心差距。
我的安全习惯:
- 敏感命令必须人工确认:
git push、rm -rf、数据库迁移 - CI 里能跑的,本地都让 Agent 先跑一遍
- 用 worktree(
/worktree)做实验性大改,主分支不受影响
4. 多 Agent 并行:大重构的加速器
2026 年 Cursor 支持多 Agent 在独立 worktree 里并行。我做过一次「把 Options API 页面批量迁到 Composition API」:
- Agent A:迁移
views/order/** - Agent B:迁移
views/product/** - 人工:对比 diff,统一模式
以前这种活要排期一周,并行后 2~3 天完成核心迁移(含人工 Review)。代价是 Merge 冲突和风格不一致——必须配合 Rules 和事后统一格式化。
五、我踩过的坑:避坑指南
下面每条,都对应我真实亏过的时间。
坑 1:Agent 改太多,Review 不过来
现象:一句「优化这个页面」,Agent 顺手改了 12 个文件,包含两个你根本没打算动的公共组件。
对策:
- 任务描述写清 范围:「只改
OrderList.tsx和对应样式文件」 - 大改用 Plan 先对齐文件清单
- 开启 diff 审查习惯:不信任任何未读 diff 的提交
- 用 worktree 隔离,不满意直接丢弃
坑 2:幻觉 API——模型「发明」了不存在的方法
现象:生成看似合理的 useOrderQuery Hook,参数和返回值都很像真的——但项目里根本没有这个封装,库的版本也不支持这个 API。
对策:
- Rules 里写明 技术栈版本 和 禁止使用的已废弃 API
- 要求 Agent 「先
@file读现有实现再写」 - 生成后 立刻跑类型检查和测试,不要堆到最后
- 对不熟悉的库,用
@docs或 MCP 拉官方文档
坑 3:样式「差不多就行」——设计还原翻车
现象:Agent 写的布局「逻辑正确」,但间距、字号、颜色和设计稿差一截。自己改 CSS 的时间比手写还长。
对策:
- 接入 Figma MCP,让 Agent 读标注而不是「凭感觉」
- 提供参考组件:
「间距体系 follow @Button.tsx」 - 前端审美判断 必须人来终审——AI 是执行层,不是设计层
- 复杂动效、响应式细节,仍建议手写或分段让 Agent 做
坑 4:上下文爆炸——聊久了 Agent 开始健忘或胡言乱语
现象:长对话后,它忘了前面约定的「不要用 Redux」,又开始生成 connect;或者重复已经修过的错。
对策:
- 一个任务一个对话,完成即新开
- 关键约束写进 Rules,别只靠聊天记忆
- 复杂任务用 Skills 固化流程(例如「按搜车前端规范生成页面」)
- 注意 Token:全仓库
@codebase+ 长历史 = 又慢又容易偏
坑 5:盲目信任测试——「测试过了」但测的是错的
现象:Agent 写了个测试,mock 过度,断言的是实现细节而非行为,绿灯但上线仍挂。
对策:
- Rules 里规定测试风格(测行为不测实现)
- 要求补 边界用例:空列表、权限不足、网络失败
- 关键路径 人写或人审 测试用例,Agent 只填骨架
- 让 Agent 跑测试时,同时看 覆盖率报告 而不只是 pass/fail
坑 6:安全与隐私——把不该给的信息喂给模型
现象:为了修 Bug,把生产 .env、用户手机号、内网地址贴进 Chat。
对策:
- 团队统一 脱敏规范;敏感配置用占位符
- 了解公司的 数据合规政策 和 Cursor 的企业版选项
.cursorignore排除密钥、证书、私有配置- 涉及安全的代码(鉴权、加密)人工主导设计,Agent 只做机械实现
坑 7:模型选择焦虑——换来换去反而低效
现象:听说 Opus 强就换 Opus,听说 Composer 快就换 Composer,每天纠结模型。
对策:
- 日常用 Auto 作为默认(Cursor 会按负载调度)
- 只在明确场景手动选:复杂架构 → 强推理模型;大范围快速改 → Composer 类快速模型
- 建立个人默认策略,少折腾
六、模式选择:我现在的「分工表」
一年后,我形成了一套稳定的心智模型:
| 模式 | 我会什么时候用 | 不会什么时候用 |
|---|---|---|
| Tab | 日常编码、补全、小片段 | 跨 3 个以上文件的任务 |
| Ask | 读代码、问架构、代码 Review 前预习 | 需要改文件时(避免误触) |
| Plan | 新功能、接口变更、技术方案 | 改一行文案 |
| Agent | 方案已对齐后的执行 | 没想清楚就开干 |
| Debug | 有报错栈 / 可复现的 Bug | 纯静态代码风格问题 |
| Design | 页面视觉和交互微调 | 纯后端逻辑 |
一句话总结:Ask 想清楚,Plan 定方案,Agent 干活,人做裁判。
七、和 Copilot、Claude Code 比,我为什么还留在 Cursor?
这一年我也穿插用过其他工具,不拉踩,只说我自己的取舍:
| 维度 | Cursor | 我的感受 |
|---|---|---|
| 编辑器一体感 | VS Code 系,迁移成本低 | 团队无痛切换 |
| 多文件 Agent | 成熟,终端 + 浏览器 + MCP | 前端全链路闭环 |
| Tab 补全 | 够用,偶有神预测 | 不如专精补全的工具极致,但够 |
| 规则生态 | Rules + Skills + MCP | 可沉淀团队知识 |
| 定价 | 按量,重度使用需 Pro+ | 算得清 ROI 就值 |
如果你 80% 的需求是单文件补全,Copilot 可能更轻;如果你 想要终端里的 Agent CLI 且不爱 GUI,Claude Code 也不错。
我留在 Cursor,是因为它覆盖了我 从 Tab 补全到多 Agent 编排 的完整光谱——对前端这种「又写 UI 又接 API 又跑脚本」的角色,一个入口比三个工具来回切更省脑力。
八、量化感受:一年下来,到底快了多少?
诚实说,我 没有 做严格的 controlled experiment,但有几个可感知的指标:
| 场景 | 以前耗时(主观) | 现在耗时(主观) | 备注 |
|---|---|---|---|
| 标准 CRUD 页面 | 1~2 天 | 半天~1 天 | 含联调,Agent 写骨架 |
| 跨 5+ 文件小重构 | 大半天 | 2~3 小时 | 必须配合 Plan |
| 陌生模块读代码 | 1~2 小时 | 15~30 分钟 | Ask + @folder |
| 修类型 / Lint 报错 | 30 分钟起 | 5~15 分钟 | @Lint Errors |
| 写重复性测试 | 1 小时 | 20 分钟 | 人审用例质量 |
但:Review、联调、和产品设计扯皮的时间 并没有明显减少。AI 压缩的是「把想法变成代码」的机械劳动,不是「想清楚要做什么」。
还有一个隐性收益:学习新技术更快。去年我用 Cursor + Ask 在一周内摸清了团队新引入的 TanStack Router,以前读文档可能要两三周才敢上手改。
九、给刚上手的前端同学:7 条建议
如果你今天才装 Cursor,按这个顺序来,比一上来就「帮我做个电商系统」稳得多:
- 先当增强版 VS Code 用一周:熟悉 Tab、Cmd+K,别急着 Agent。
- 写第一份 Rules:技术栈、目录结构、命名规范、禁止事项——10 条以内即可。
- 练
@引用:养成「指哪打哪」的上下文习惯,别空泛描述。 - Ask → Plan → Agent:按这个顺序升级,跳级容易翻车。
- 每个 Agent 任务结尾跑 lint / test:把验证交给机器,把判断留给人。
- 接一个 MCP:从 Figma 或文档库开始,感受 Context 外置的威力。
- 每周复盘一次:哪次 Agent 帮了大忙?哪次帮倒忙?更新你的 Rules。
十、Cursor 改变的不是手速,是角色
一年用下来,我越来越觉得自己像 机长:
- 起飞前检查(Plan、Rules、上下文)决定航线是否安全
- 巡航时副驾驶(Agent)处理ROUTINE 操作
- 遇到气流(Bug、幻觉、范围蔓延)及时接管
- 降落(Code Review、上线)必须亲自确认
前端工程师在 AI 时代的核心竞争力,正在从「谁能写更多行代码」转向:
- 谁能 把需求翻译成 Agent 可执行的任务
- 谁能 设计约束让输出可预测(Rules、类型、测试)
- 谁能 判断什么时候不该用 AI
Cursor 是我用过最接近「AI Agent 工程师日常工位」的产品——你在用它的过程里,其实已经在练习 [前端转型 AI Agent 工程师] 那篇文章里说的 MCP、工具设计、人机协同。
差别只是:这一次,你是用户,也是架构师。
行动清单
- 创建
.cursor/rules/,写入你项目的前 10 条规范 - 配置至少一个 MCP(文档库或 Figma)
- 用 Ask 模式梳理一个你不熟悉的模块
- 用 Plan 模式完成下一次中等需求的前置设计
- 建立「Agent 改动必跑 lint/test」的个人习惯
- 检查
.cursorignore,排除敏感文件