AI Tools
应用场景5 分钟2025年7月10日作者:AIGCDev更新于: 2026年3月3日

Cursor AI 编程实战:它到底能帮你做什么

Cursor 是什么

Cursor 是一个基于 VS Code 构建的代码编辑器,在编辑体验中深度集成了 AI 辅助。与 GitHub Copilot(作为插件添加到现有编辑器中)不同,Cursor 控制了整个编辑器,因此能做到更深层的集成:多文件编辑、全局代码库上下文、内联 diff 预览。

它于 2023 年发布,到 2025 年已成为增长最快的开发工具之一。是否值得从现有工具切换,取决于你实际的工作方式。

定价

方案 价格 包含内容
Hobby 免费 2000 次代码补全,50 次慢速高级请求/月
Pro $20/月 无限补全,500 次快速高级请求,慢速无限
Business $40/人/月 管理后台、强制隐私模式、SSO

"高级请求"是使用大模型(Claude Sonnet、GPT-5.2)的请求。快速请求有优先队列,慢速请求可能需要 10-30 秒。

作为参考,GitHub Copilot Individual 是 $10/月。Cursor Pro 贵一倍,但包含 Copilot 没有的功能(多文件编辑、代码库索引、Agent 模式)。

三个核心功能

1. Tab 补全

使用频率最高的功能。你打字时,Cursor 预测下一步编辑——不只是下一个 token,而是下一个逻辑修改。它可以:

  • 补全多行代码块
  • 预测你做出一个修改后的下一步(比如你在第 10 行重命名了变量,它会建议在第 25 行做同样的重命名)
  • 填充跨行的重复模式

在典型的 TypeScript/Python/Go 代码库中,大约 70-80% 的建议是有用的。在多行预测方面明显优于 Copilot 的自动补全。

它失效的场景:带有领域特定模式的复杂业务逻辑。偶尔也会建议错误的 import。

2. Cmd+K(内联编辑)

选中代码,按 Cmd+K,用自然语言描述你想做的修改。Cursor 会在应用修改前展示 diff 预览。

效果好的场景:

"为 API 返回 429 状态码的情况添加错误处理"
"把这个 class 组件转成带 hooks 的函数组件"
"为这个文件中所有导出函数添加 JSDoc 注释"

效果差的场景:

  • "让这段代码更快"——太模糊,会导致随意修改
  • 跨多个互相依赖文件的复杂重构
  • 修改它没有上下文的代码(比如项目中的内部 API)

Diff 预览是 Cursor 在这里的关键优势。在 Copilot Chat 中,你在聊天窗口看到代码,然后手动粘贴。在 Cursor 中,你能看到精确的变更,逐块接受或拒绝。

3. Chat(Cmd+L)+ 代码库上下文

这是 Cursor 架构优势最明显的地方。Chat 面板可以:

  • 索引整个代码库 — Cursor 为项目文件创建向量嵌入,所以当你问"auth 中间件怎么工作的"时,它会自动找到相关文件
  • 用 @文件名 引用特定文件 — "@schema.prisma User 表有哪些索引?"
  • 多文件编辑 — 要求在多个文件中进行修改,它会为每个文件生成 diff
  • 用 @docs 引用文档 — 指向外部文档 URL 获取上下文

实际使用示例:

@utils/auth.ts @middleware.ts
重构 auth 检查:把 JWT 验证提取到一个共享工具函数中,
让 middleware 和 auth utils 都调用它。删除重复的逻辑。

Cursor 会读取两个文件,对每个文件提出修改建议,并展示可逐文件接受的 diff。

Cursor vs GitHub Copilot

功能 Cursor GitHub Copilot
自动补全 预测下一步编辑,而非下一个 token 逐 token 补全
内联编辑 Cmd+K + diff 预览 Copilot Edits(较新,不太成熟)
代码库索引 内置,自动 VS Code 中有限,GitHub.com 上更好
多文件编辑 Chat 中支持 Copilot Workspace(独立产品)
模型选择 Claude、GPT-5.2、自定义 GPT-5.2、Claude(模型选择有限)
编辑器 VS Code 分支 VS Code/JetBrains/Neovim 插件
价格 $20/月 $10/月
隐私模式 支持(Business 方案) 支持(Business/Enterprise)

选 Cursor:你经常做重构,频繁跨文件操作,希望 AI 理解整个项目上下文。

选 Copilot:你对当前编辑器设置满意,主要需要自动补全和内联建议,想省 $10/月。

实用技巧

1. 使用 .cursorrules 文件

在项目根目录创建 .cursorrules 文件,写入项目特定的指令:

这是一个 Next.js 15 项目,使用 App Router 和 TypeScript。
默认使用 Server Components,只在需要时使用 "use client"。
使用 Tailwind CSS 做样式,不使用 CSS modules。
所有 API 路由必须用 zod 做输入校验。

这些上下文会注入到每个 AI 请求中,显著提高输出的针对性。

2. Chat 中的提示词要具体

差:" 修一下这个 bug" 好:"UserProfile.tsx 中的 useEffect 在每次渲染时都运行,而不是只在 userId 变化时运行。修复依赖数组,并解释当前实现为什么有问题。"

3. 仔细审查 diff

Cursor 的建议质量不错但并非万无一失。常见错误:

  • 删除了有特定原因存在的空值检查
  • 添加不必要的 async/await
  • 从错误的包版本导入
  • TypeScript 中的类型收窄细微问题

4. 用 Tab 补全加速重复模式

当你在测试文件、配置项或 API handler 中写类似的代码时,手动写第一个,让 Tab 预测其余部分。这是 Cursor 省时间最多的场景。

5. 索引外部文档

对于 API 变化快的框架(Next.js、SvelteKit、tRPC),用 @docs 指向它们的最新文档。否则 Cursor 可能生成过时 API 版本的代码。

局限性

  • 资源占用大 — Cursor 比 VS Code + Copilot 消耗更多内存和 CPU。16GB 以下内存的机器可能会卡。
  • 扩展兼容性 — 大部分 VS Code 扩展可用,但一些深度集成编辑器的扩展可能出问题。切换前检查你的必备扩展。
  • 模型配额 — Pro 方案每月 500 次快速请求看着不少,但一次多文件编辑可能消耗 5-10 次请求。重度用户可能月中就用完。
  • 学习曲线 — 要获得好结果需要学会有效地提问。工具功能强大,但并非"装上即用"。
cursorgithub-copilotcodingdeveloper-toolside