3分钟学会Cursor Rules,让AI不再乱改代码!

在学习使用Cursor编程的过程中,AI写出的代码不够规范,而且还会乱改已经写好的代码。这个问题是可以通过Cursor Rules来缓解的,之前星河在文章中有简单提到过。今天就借这个机会,为大家分享一下Cursor Rules的原理以及用法。

什么是Cursor Rules?

大语言模型不能够保证在多次会话间保留记忆。因此Cursor提供了Cursor Rules,通过在提示词级使用持久化、可复用的上下文来解决这个问题。当Cursor Rules生效时,其内容会被插入到模型上下文开头,从而为AI生成代码、解释修改或辅助工作流时提供一致性指导。按官方说法,Cursor的规则"Control how the Agent model behaves with reusable, scoped instructions."
Cursor主要支持两种类型的规则:用户规则(User Rules)和项目规则(Project Rules)。

另外还有一种使用.cursorrules文件来制定规则的方法。不过这种方法已经逐渐被官方放弃。如果您还在使用的话,建议尽快按"项目规则"方式进行迁移。

用户规则(User Rules)

用户规则相当于全局设置,适用于用户环境下的所有项目。在"设置->Rules->User Rules"中进行设置:

在这里,我们可以设置角色、代码规则以及一些个性化配置。星河最常用的一条设置是:
所有的回复都使用中文

我们可以对角色进行设置,比如:
你是一名经验丰富的软件开发专家和编程助手,精通各类主流编程语言与框架。
你的用户是一位独立开发者,致力于个人项目或自由职业开发任务。
你的核心职责是生成高质量代码、优化性能、并主动协助排查与解决技术问题。

我们可以对编码规范和质量做出要求,比如:
遵循架构设计,保持代码风格一致 代码修改遵循单一职责原则,不混合多个变更
在进行代码设计规划的时候,请符合"第一性原理"
在代码实现的时候,请符合"KISS原则"和"SOLID原则"
尽量复用已有代码,避免重复代码

当然,我们也可以提出一些个性化的要求,比如:
请在回复开头称呼用户为"帅哥/美女"

项目规则(Project Rules)> 

项目规则用于帮助理解代码库并遵循项目规范,可以被自动调用或由Agent调用,并且与代码库保持同步。规则是项目根目录下.cursor/rules目录里的一个个独立的.mdc(MarkDown Container)文件。除了手动创建以外,还可以通过以下三种方法创建规则文件:
1. 在"设置->Cursor Rules->Project Rules"里进行添加:

2. 或者使用快捷键"Ctrl+Shift+P",搜索"New Cursor Rule"进行添加:

3. 官方还提示可以使用/Generate Cursor Rules命令来生成规则文件,不过0.48.7版本并没有这个命令。

在创建项目规则时,可以选择"规则类型(Rule Type)":

Cursor目前支持四种不同的规则类型:

在项目规则中,我们可以按不同维度制定不同的规则文件,例如在开发管理层面,我们可以创建general.mdc来指定通用开发规范,创建git.mdc来指定git提交规范,创建doc.md来指定文档编写规范等;在编程语言层面,我们可以针对不同的语言指定不同的编码规范,例如java.mdc,cpp.mdc,python.mdc等;对于不同的技术框架,我们也可以针对性的进行规则制定,例如创建react.mdc让React组件设计和Hooks使用,创建tailwind.mdc作为Tailwind CSS样式指南等。

使用建议

官方给出的规则建议如下:

聚焦:单条规则不超过500行

模块化:复杂概念拆分为可组合的多条规则

具体化:提供明确示例或引用文件

避免模糊:像编写内部文档那样清晰表述

复用:对重复使用的提示进行规则化

个人的理解是,Cursor Rules就是一个强制添加的提示词。既然是提示词,那么可以做的事情就很灵活了,不用局限于编程相关,可以尝试扩展规则的边界。比如星河为了更清楚的理解AI在编码过程中到底做了什么,制定的一个生成开发历史的规则:

每次会话请求结束后进行总结,
无论是生成新文件还是修改了原有内容都需要总结。
将总结的内容添加式写入到Readme文件中(说明文件中的内容是累计增加的)
总结的内容包括:
1. 会话的主要目的
2. 完成的主要任务
3. 关键决策和解决方案
4. 使用的技术栈
5. 修改了哪些文件

在官网https://cursor.directory/rules上能够看到其他用户上传的优秀规则文件,可以参考学习。也欢迎大家分享自己个性又好用的规则文件。

转自:https://mp.weixin.qq.com/s/S4WN9-AAsGcGecgG9Ik98A

文章版权归原作者所有或来自互联网,未经允许请勿转载。如有侵权请联系我删除,谢谢!
THE END
分享
二维码
打赏
< <上一篇
下一篇>>
文章目录
关闭
目 录