AI开发工具实战:五、Cursor 实战——让 AI 帮你写代码的正确打开方式
AI开发工具实战:五、Cursor 实战——让 AI 帮你写代码的正确打开方式
这是「AI开发工具实战」系列的第三篇。前两篇我们聊了 Claude Code 的命令行工作流和 Superpowers 的 Skills 体系,今天来说说 Cursor——这款基于 VS Code 的 AI 编辑器,我用了一年多,从最初的"Tab 补全工具"到现在的主力开发环境,中间踩了不少坑,也摸索出一套比较稳定的用法。
为什么要单独写一篇 Cursor
Cursor 最大的特点是快。不是指它打字速度快,而是从"想法"到"代码"这个路径特别短。
Claude Code 很强,但你要在终端里来回切。Superpowers 适合批量的代码生成和重构,但对于那种"这里改一行,那里加个函数"的零碎操作,打开一个终端敲命令反而比手动改还慢。
Cursor 解决的就是这种"写代码中间的碎活"——改个变量名、加个 try-catch、重构一个函数、补一段类型定义。这些事 VS Code 也能做,但 Cursor 的 AI 能帮你省下 80% 的键盘操作。
下面是我日常用得最多的几个功能,按使用频率排列。
一、Cmd+K:最好的"改代码"方式
选中一段代码 → 按 Cmd+K(Windows 是 Ctrl+K)→ 用自然语言描述你要什么。
我举几个真实的用法:
用法 1:加错误处理
选中一个函数,输入"给这段代码加上 try-catch,异常时打印错误信息并返回默认值"。
三秒钟后,函数外面包好了 try-catch,catch 块里写了日志和 fallback 逻辑。你只需要确认一下返回值是否符合预期就行。
用法 2:改代码风格
选中一段 Python,输入"把这几个嵌套的 if 改成 guard clause 风格(提前 return)"。这段如果自己手动改要重新理一遍逻辑,Cursor 基本秒出。
用法 3:补文档注释
选中一个类,输入"给每个 public 方法加上 Google 风格的 docstring,包含参数类型和返回值说明"。
使用原则:Cmd+K 最适合的是"局部修改"——改一个函数、一个类、一个文件内的某段逻辑。跨文件的大改动不适合用 Cmd+K,那种场景用 Cursor 的 Composer Agent 更好。
二、Tab 补全:别小看它
Tab 补全是 Cursor 最基础的功能,但也是我用得最多的。它不像 Cmd+K 那样你需要主动告诉它做什么——它在你写代码的时候自动预测下一行,你按 Tab 就补全。
说几个使用技巧:
技巧 1:写注释引导它
你想让 AI 帮你写一段逻辑,最快的办法不是切到对话框,而是直接在当前行写个注释:
# 读取 csv 文件,按第三个字段降序排序,取前 10 行,输出到新文件
# (然后按回车,Cursor 就会在下一行自动补全代码)
这个方法的好处是不打断思路。你不用离开编辑器去跟 AI 对话,代码就出现在光标位置。这在处理大量"模板式"代码的时候效率极高——比如写 CRUD、写配置文件、写测试用例。
技巧 2:先写骨架再让 AI 填肉
def process_orders(orders):
# Step 1: 过滤掉已取消的订单
# Step 2: 计算每个订单的总金额
# Step 3: 按金额分组统计
# Step 4: 返回汇总结果
写完注释后逐个在每行注释下面按 Tab,AI 会自动补全对应逻辑。这比自己一个字母一个字母敲快太多了。
三、Agent Mode:跨文件的大活儿
Cmd+K 管一个函数,Agent Mode 管一个需求。
它是 Cursor 的终端级能力——能自己找文件、读代码、理解上下文、写代码、甚至跑命令。跟 Claude Code 类似,但好处是它直接在编辑器中操作,改完你能立刻看到 diff。
我什么时候用 Agent Mode:
- 新建一个页面/组件,涉及 3 个以上的文件
- 给已有功能加一套完整的单元测试
- 重构一个模块,改 API 接口同时更新所有调用方
什么时候不用:
- 改一行配置、修一个拼写 —— Cmd+K 更快
- 不确定自己要什么 —— 先用 Ask Mode 聊清楚再动手
Agent Mode 最怕的是"需求模糊"。你说"把这个项目优化一下",它不知道该干什么,会乱改一通。所以用 Agent Mode 一定要把需求说具体:改哪个目录、要什么效果、不要碰哪些文件。
四、Plan Mode:动手之前先想清楚
这是 Cursor 里我最后悔没有早点用的功能。
用法:Cmd+Shift+P → 输入 “Plan” → 选择 “Agent Plan Mode”。然后描述你要做的事情。
Plan Mode 不会修改代码。它会给你输出一个详细的实施计划:要改哪些文件、每个文件的改动内容、调用关系、潜在的风险点。
实际例子:
上个月我要给一个 Flask 项目加上 JWT 认证。直接在 Agent Mode 里说"加上 JWT 认证",它确实能写出来,但会漏掉很多细节——比如 token 过期怎么处理、refresh token 怎么实现、现有的路由怎么保护、测试怎么写。
后来改用 Plan Mode,先让它出方案:
- 新建
auth.py模块,封装 JWT 生成和验证 - 新建
decorators.py,写@require_auth装饰器 - 在
app.py中注册 before_request 钩子检查 token - 修改现有路由加上装饰器
- 在
config.py中加 JWT 相关配置项 - 写测试覆盖正常登录、token 过期、无 token 三种场景
看完计划之后我对第 3 步有异议——我们项目已经有中间件层,应该在那里统一鉴权而不是在 app.py 里。跟 Cursor 说清楚后它重新调整了方案,然后再执行。整个过程很顺。
核心经验:复杂需求先 Plan 再 Agent,不要直接 Agent。Plan 是你跟 AI 对齐理解的过程,Agent 是执行。跳过 Plan 直接执行,90% 的情况都要返工。
五、Debug Mode:让 AI 帮你查 bug
这是一个被严重低估的功能。
用法:选中出问题的代码,按 Cmd+I → 选 “Debug”。描述 bug 现象,Cursor 会:
- 提出几个可能的原因
- 在代码里插入调试日志
- 让你运行一次确认
- 根据日志输出定位根因
- 自动修复
一个案例:
前端有个表格组件,数据加载后点击排序没反应。我把组件的代码喂给 Debug Mode,描述了现象。它插了一堆 console.log 让我确认 sortField 和 sortOrder 的状态变化,最后定位到——原来是 useEffect 的依赖数组没加 sortField,导致状态更新不触发重渲染。
这种问题如果是自己排查,要在 React DevTools 里扒半天。Debug Mode 用了不到五分钟。
使用策略:小 bug(单个文件、逻辑清晰)用 Debug Mode。复杂 bug(跨多个服务、需要看网络请求)还是得人来梳理,AI 只能帮你排查单点问题。
六、MCP 集成:让 Cursor 联网
MCP(Model Context Protocol)让 Cursor 的 AI 能访问外部数据源。最实用的一个:网页搜索 MCP。
装了之后,你可以在 Cursor 里直接让 AI 去查最新的 API 文档。比如"查一下 FastAPI 最新版本的依赖注入写法",AI 会先去网上搜,确保不拿训练数据里的过期答案。
这对前端开发者尤其有用——框架更新太快,AI 的知识截止日期赶不上 npm 包的发版速度。有了 MCP,至少能确保 AI 给你的代码是基于最新标准的。
总结:我的 Cursor 工作流
接到需求
│
├─ 不确定怎么做 → Ask Mode 问清楚
│
├─ 复杂需求 → Plan Mode 出方案 → 你对齐理解
│
└─ 开始写代码
│
├─ 小改动 → Cmd+K
├─ 模板代码 → 写注释 → Tab 补全
├─ 跨文件改动 → Agent Mode
├─ 出 bug → Debug Mode
└─ 不确定新 API 用法 → MCP 联网查
这套流程跑了半年,最直观的变化是:以前遇到一个新模块,我习惯先打开浏览器搜"xxx 教程",现在习惯先在 Cursor 里 Ask 一下。不是说 AI 能替代搜索,而是你还在编辑器里、代码就在眼前的时候——AI 给你的上下文比搜索结果更接地气。
Cursor 值不值那个订阅费?对我来说,绝对值。但前提是你得把上面这些功能用起来。如果只是当普通的 VS Code 用 Tab 补全,那确实没必要花钱。
下一篇我们来聊 Codex CLI——它跟 Claude Code 和 Cursor 又不太一样,走的是"完全在终端里运行 AI Agent"的路子。到时候横向对比一下这几个工具各自的适用场景。
📌 作者:Aliaoo
🚀 专注 AI 工具实战、云部署、自动化脚本。每篇都是亲测可跑的教程。
🖥️ 需要云服务器跑项目? 👉 CSDN 开发云常年折扣,新用户首单特惠
📬 觉得有用就点个赞,想追更就点个关注——下次搜到我不靠缘分。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐




所有评论(0)