
Hi,我是松柏。
由于最近比较忙,也是很久没写文章了,所以今天抽空简单分享几个 Cursor 的技巧,虽然不是什么高级的操作,但确实都是我最常用、能提效的方法。

我个人最常用的 AI 编程工具是 Cursor,也有一些小伙伴问我为什么不用 Codex、Claude Code 之类的工具,主要原因有两个:
废话不多说,点赞关注,我们直接发车!
这是一个比较常用的功能了。
不知道大家有没有这种经历:让 Agent 改一个功能,它噼里啪啦改了十几个文件,跑到一半才发现它理解的完全不对。
所以,在 AI 开始干活之前,清楚 AI 会怎么干还是有必要的。
这时候就要用到 Plan Mode 了。
在 Agent 输入框按 Shift+Tab,就切到 Plan Mode 了。
当然也可以直接点击左下角切换:

这个模式下 Agent 不会改任何代码。以我之前整理的一个写作工作流为例,Plan Mode 模式会先做下面这些事:
1)看代码库,找到相关文件

2)问你一些澄清问题

3)把方案写成一个 ~/.cursor/plans/<xxx>.md 的 Markdown 文件

4)确认了再执行
也就是说,Plan Mode 把「想清楚」和「动手干」拆成了两步。
保证 plan 没问题之后再执行,保证 AI 的大方向没错。
所以平时工作的时候复杂功能我一定会开 Plan Mode。

让一个 Agent 串行处理一个大任务,比如熟悉一个大项目的三个模块,通常会出两个问题:
1)它读完第一个模块的文件,context 就半满了。到第三个模块的时候,开始忘之前的东西、反复横跳。
2)全程串行,耗时比较长,只能干等着。
使用 Cursor 的 子 Agent (也叫 subagent)功能就能很好的解决这个问题。
每个子 Agent 有自己独立的 context 窗口,它搜的文件、跑的命令、产生的中间结果,都不会污染父 Agent 的对话。
而且父 Agent 可以一次启动多个子 Agent ,效率更高。还能给每个子 Agent 可以指定不同的 prompt、不同的模型等。
使用方式也很简单,AI 会在需要的时候自动启动子 agent,比如熟悉项目的时候,我框起来的位置就是启动了两个子 agent:

也可以用明确的指令唤起,比如直接跟 AI 说 “启动三个子 Agent 分别去唱跳rap”🐶。
子 Agent 执行的过程中,父 Agent 的 context 始终是干净的,它只负责规划验收,不会被中间过程的海量上下文干扰。
还有一些其他的场景也适合使用子 Agent,比如要开发一个比较大的项目,可以让不同的子 Agent 来实现用户模块、权限模块,这样可以避免主 Agent 的上下文被代码占满的同时保持主 Agent 对整个项目开发进度的把控,相比于开多个对话实现,不会出现上下文丢失、下一个会话不知道上一个会话干到哪了的情况。
Worktree 其实是 git 的一个功能,配合 AI 能实现同时开发多个功能,主要用于避免多个 Agent 或者会话同时编辑一个文件导致的写冲突问题,能让 AI 同时开发多个功能。
这个功能理论上来说很强,但是实际上我很少使用,首先是如果合并代码时还是有挺大概率遇到冲突的,其次是对于前端项目来说,创建新的 Worktree 得重新安装依赖才能启动,有一点麻烦。
最主要的是我觉得 AI 写代码的速度已经很快了,我审核的速度本身都不太跟得上,所以也没必要再用这种方式提高 AI 写代码的效率。
当然了,不用跟不会用是两码事,如果哪天真的遇到了需要这个功能的场景咱要是不知道有这个功能岂不尴尬。

这篇文章就到这里啦,比较简短,主要也是想先写一点东西恢复更新节奏,下期再见,拜拜👋🏻。