前言
Cursor 团队的更新速度令人惊叹,近期新版本对 .cursorrules
进行了调整。相关的文章较少,因此我决定分享一下我个人在新版 Cursor rules
中的使用体验
新版 Cursor Rules
根据官网的 changelog,新版本引入了 Project rules
,用于对项目规则进行管理。这将逐步替代根目录下的 .cursorrules
文件,从而实现更细化的规则管理,并提升开发体验(DX)。
官方提供的 "Rules for AI" 文档可以在此查看:Rules for AI
在设置面板中,你会看到 User Rules
和 Project Rules
。User Rules
用于应用到你本地机器上的规则,而我使用的是官方默认设置 "Always respond in 中文",没有做太多修改,因为我担心太多限制会影响 AI 的表现😂。Project Rules
则是将规则推送到代码仓库,让团队共享和使用。
通过在设置面板点击 Add new rule
,你可以为规则命名并添加多个规则文件。相比之前的 .cursorrules
单一文件,规则现在可以按类别进行更细致的分类。
添加后会自动在 .cursor/rules 创建对应的 mdc 格式文件。
新版本的 Rule Type
新版本多了 Rule Type,有四个类别:
Always
:全局规则始终生效,包括快捷键命令(cmd + K)中的对话。Auto Attached
:当匹配到特定文件时生效,可以使用文件路径的正则表达式进行匹配(例如*tsx src/config/*
,用于配置文件或测试文件)。Agent Request
:代理可以看到该描述并决定是否查看完整的规则,适用于代理模式。Manual
:需要手动在对话中@上才生效,适用于一些特殊场景的规则,不会影响全局或其他文件。
我将之前的规则设置为 Always
类型,目前还未用到其他类型。对我来说,日常使用时这些规则已经足够与 Cursor 配合得很好。
使用经验分享
规则是根据自己项目的需求逐步改进的,通常没有一蹴而就的解决方案。你可以从网上复制一些通用规则,然后根据团队的实际习惯逐步自定义。
举个例子,每次我安装新的第三方依赖包时,Cursor 总是默认使用 npm
安装,但我们项目使用的是 pnpm
。为了避免每次都纠正这个问题,我将其添加到了项目规则中,这样以后就不需要每次都手动提醒了。
所以我总结的使用经验就是,假如日常使用中总是需要强调的问题,AI 由于上下文丢失或新建对话总会忘记,这些我们定制的要求就可以添加到 rules 中了。
注意事项
随着版本的更新,旧版 .cursorrules
文件会逐步被废弃。但团队成员可能尚未升级到 0.46 版本或更高版本,因此建议不要直接删除 .cursorrules
文件。可以先保留原文件,然后在本地禁用对 .cursorrules
文件的读取。
使用 AI 生成 mdc 规则
如果你想快速生成新的规则,可以使用 Cursor Directory 网站,上传旧的 .cursorrules
和 package.json
文件,自动生成 MDC 格式的规则描述。不过,根据我的体验,生成的规则可能未完全符合我的需求,感兴趣的朋友可以尝试一下。
结语
这篇文章分享了我个人在日常使用新版 Cursor Rules 的一些经验。如果你有更好的建议或发现了不准确的地方,欢迎交流和指正。希望大家能利用 AI 工具提升工作效率,ღ( ´・ᴗ・` )比心。