最近,Cursor的首席设计师Ryo Lu 分享了一系列关于 Cursor 的高效使用法则,其中一些我们早已熟悉,但是有一些依然是很受启发。
1、制定明确规则,让 Cursor 知你所想
Ryo Lu 原文: Set 5-10 clear project rules upfront so Cursor knows your structure and constraints. Try /generate rules
for existing codebases.
预先设定 5-10 条明确规则,让 Cursor 了解你的架构和限制;老项目可以
/generate rules
自动扫描生成。
这一点无需额外强调,新建一旦写好,后面每一次对话将其设置为会被 Cursor 自动引用,相当于“内置 lint + style guide”。比如,至少一点,可以将项目使用的基础技术栈写清楚,比如python2.7版本,就不会在生成的时候出现python3.5+的语法。
具体新建完成之后,会出现在.cursor/rules文件夹下,我们可以设置规则的生效方式,比如,如果是项目级别的规则,例如技术栈选择,那么就选择always即可。
对于选择manual,也就是手动触发的规则,可以在对话的时候,选择@Cursor rules的方式选择。
2、精准 Prompt:Prompt Contract
Ryo Lu 原文: Be specific in prompts. Spell out tech stack, behavior, and constraints like a mini spec.
提示词要具体,像微型需求文档一样列出技术栈、行为和约束。
Prompt 并非只是问答式的简单指令,更像是一份协议,精确地告诉 Cursor 去哪里,怎么去,目标是什么,边界在哪。写好 Prompt,尤其是明确一些,就可以显著减少来回修改。
3、小步迭代,稳中求胜
Ryo Lu 原文: Work file by file; generate, test, and review in small, focused chunks.
逐文件处理;小而专注地生成、测试、审查。
一步一脚印,逐个文件推进,才是长久稳定的秘诀。每完成一小步便验证一次,这种谨慎和稳妥,是你与 AI 长期协作的必备法则。类似“原子提交”。一次只让 Cursor 改 dao/user.go
,跑完 UT 再进下一个。如果让 AI 同时改 10 个文件,回滚和定位 Bug 的成本翻倍。
4、先写测试,给 Cursor 画个圈
Ryo Lu 原文: Write tests first, lock them, and generate code until all tests pass.
先写测试并锁定,让 Cursor 生成代码直到全部通过。
Cursor 再聪明,也需要你明确地告诉它成功的标准。先写测试再写代码,就像先给 Cursor 画个圈,让它在圈里自由发挥却又不出格。
5、人工审查:你才是最后的守门员
Ryo Lu 原文: Always review AI output and hard-fix anything that breaks, then tell Cursor to use them as examples.
总是审查 AI 输出,手动修掉问题,再让 Cursor 以此为示例。
人工 Review,才是守住质量大门的最后一关,切勿省略。比如完全可以把代码的 diff 贴回cursor:“参照此风格”。Cursor 会快速学会你的命名习惯、日志格式。记得在规则里加一条“遵守最近 5 次人工 diff 的风格”。
6、精准聚焦,给 Cursor 一副望远镜
Ryo Lu 原文: Use @file, @folders, @git to scope Cursor’s attention to the right parts of your codebase.
用 @file/@folder/@git 限定 Cursor 的关注范围。
项目代码浩如烟海,Cursor 若四处乱看效率自然不高。善用 @file、@folder 等技巧,就像给它戴上一副望远镜,让它只盯住最关键的目标。你可能已经熟悉了@file、@folder 的用法,但是这里提醒你重视@git功能。
7、设计文档:藏在背后的“军师”
Ryo Lu 原文: Keep design docs and checklists in .cursor/ so the agent has full context on what to do next.
把设计文档与检查清单放在
.cursor/
,让代理拥有完整上下文。
设计文档才是 Cursor 背后的真正军师,将它们提前存放于 .cursor/
,Cursor 的决策会变得更加精准,而你也可以更加放心地依靠它。
8、Show, don’t tell
Ryo Lu 原文: If code is wrong, just write it yourself. Cursor learns faster from edits than explanations.
如果代码错了,直接自己改;Cursor 从编辑中学习速度更快。
这是对我启发最大的一点。
一方面,Cursor已经可以将我们的编辑,加入到上下文,据此提供建议,可以直接利用tab功能来快速修改,相当于你作为师傅,演示一遍操作,后面的交给徒弟。
因此,当 Cursor 偏离方向时,最好的纠正方法不是喋喋不休的解释,而是直接写出正确的代码示范给它看。
另外一方面,可以直接将你本次的代码diff,加入到下一轮的对话中,直接让Cursor模仿、理解。
“Show, don’t tell”,你的修改就是最好的 few-shot。
你不一定非得继续用长篇大论向 AI 解释「我想要什么」,结果往往落空,不妨花一点时间,直接把正确答案直接摆出来。因为对话和要求,有时候会变得抽象,但它不需要你阐述形而上的道理,只需要具体、生动的「这个就对」示例。
9、复用聊天历史,别反复从零起步
Ryo Lu 原文: Use chat history to iterate on old prompts without starting over.
用聊天历史迭代旧提示,无需重新开始。
过去的对话不要随意抛弃,建立好你的“Cursor 回忆录”,随时调用历史经验,效率自然飙升。
Cursor 最新版本中,已经支持把旧对话拖进新对话框,继承上下文。比如,如果你暂时还懒得沉淀为一个文档,那么完全也可以将一个此前的对话记录,作为一个新任务开启的模版,一键复用,只需要@Post Chats即可。
10、模型搭配,如烹小鲜
Ryo Lu 原文: Choose models intentionally. Gemini for precision, Claude for breadth.
有目的地挑模型:Gemini 追求精准,Claude 侧重宽泛。
AI 模型各有千秋,善用不同模型的专长,精准搭配,就如同烹调一道美味佳肴,拿捏到位,事半功倍。
比如,复杂逻辑→ Claude;严谨生成→ Gemini;快速原型→ o3 mini… 先想清楚“准度 vs. 创造力”再点模型。比如,我一种用的,就是先用Gemini 2.5 pro完成大上下文的扫描,然后将细节写入文档,然后用文档来继续与Claude对话。
推荐阅读:Cursor编程新工作流 | Gemini Pro 2.5与Claude 3.7如何搭配使用?
11、不懂就问,官方文档来撑腰
Ryo Lu 原文: In new or unfamiliar stacks, paste in link to documentation. Make Cursor explain all errors and fixes line by line.
新技术栈时粘贴文档链接,让 Cursor 逐行解释错误及修复。
遇到不熟悉的技术栈,不要勉强自己,让 Cursor 带着官方文档逐行解释清楚。
这一点尤其是应对一个「对你来说全新」但是你知道「有着明确和成熟的解决方案」的场景,如果你需要照着一个接口文档来编程,缺迟迟没有调通,这个时候就可以直接可贴接口文档的链接给到Cursor。省掉自己 Google 的时间,也确保修复方案和文档保持一致。
12、索引优先,大项目的速度法宝
Ryo Lu 原文: Let big projects index overnight and limit context scope to keep performance snappy.
大项目让 Cursor 先整夜建索引,再限制上下文以保持性能敏捷。
面对庞大项目,先让 Cursor 建好索引,再限定上下文范围。
这里要注意的一点是,用 .cursorignore
排除 node_modules
、.git
等噪音,提高命中率。