
上周我面试时,面试官突然问我:“你知道 Cursor 吗?那你对 rules 有了解吗?”
听到这个问题,我一时间愣住了,以为他在说 Cursor 的缺陷,正准备随便一说,结果被他纠正了发音。
没关系,听不懂就去学嘛。面试结束后,我立马查了查这个内容。
什么是 Cursor 规则呢?
Cursor Rules 就是所谓的Cursor 规则,其实就是一系列“开发规范或约束提示”,这些规则会在 AI 帮你写代码或生成文件时指导它该遵循什么原则。可以理解为你在写 prompt,但它是持久存在的,适用于所有项目。
Cursor Rules 分为两种类型:全局规则(User Rules)和项目规则(Project Rules)。前者适用于所有项目,后者则专门针对某个项目。
为什么需要 Cursor 规则呢?
在日常开发中,你可能会碰到这样的问题:
- 代码风格不统一,比如缩进、命名和注释的习惯不一致。
- 技术栈限制,比如项目规定只能用 React 18,结果 AI 却用上了 React 19 的新特性。
- 项目结构固定,比如组件必须放在 /components 目录下,而 API 请求要放在 api.ts,但 AI 有时候会写错位置。
- 安全和团队规范,比如敏感信息不能出现在代码里,得遵循 ESLint 的规则。
如果没有规则,AI 可能会:
- 生成团队不认可的代码。
- 写出不兼容或者风格不统一的代码,这样就得自己再去修改。
- 推荐不允许使用的依赖或库。
有了这些规则,我们就能从源头上减少这些烦恼。
如何使用这些规则?
- 首先打开一个项目。
- 接着点击右上角的设置 ⚙️。
- 选择Rules & Memories。
- 在User Rules中添加全局规则,或者在Project Rules中为特定项目进行配置。
关于用户规则
在 Cursor 设置面板中,你可以直接配置这些内容,比如设置 Cursor 用中文回复我们。
项目规则是怎样的?
Cursor 会在项目的根目录下创建一个 .cursor 文件夹,我们需要在这个文件夹里的 rules 文件夹中新建一个包含规则的配置文件,内容格式为 Markdown 语法。
目前有四种使用模式:
| 模式 | 含义 | 触发方式 | 使用场景 | | —
| always | 始终生效 | 无论情况如何都会应用 | 比如:所有代码都必须用 TypeScript,不允许使用 any | | auto attached | 自动附加 | Cursor 检测到相关上下文时会自动加载 | 比如:打开 api/ 目录下的文件时,自动应用“必须用 fetch”规则 | | agent requested | 智能体请求时附加 | 只有在 AI 判断需要时才应用 | 比如:写 React 代码时才会附加“用函数组件,不要 class 组件” | | manual | 手动启用 | 需要用户在规则面板里手动选择 | 比如:某些临时实验性规则,默认不启用,偶尔才开启 |
编写项目规则时主要注意以下几点:
- 提供项目背景
- 编码标准
- 约束首选库和框架
- 提供清晰的文件结构信息
- 文档规范
下面是一个规则示例
# 项目背景
这是一个在线旅游攻略分享平台,前端使用 React +
后端提供 RESTful API。目标是让用户能快速分享和浏览旅游日记。
# 编码标准
- 所有代码必须使用 TypeScript,不允许使用 JavaScript。
- 变量命名统一使用 camelCase。
- React 组件必须使用 PascalCase。
- 自定义 Hooks 必须以 `use` 开头。
# 库和框架约束
- 必须使用 React 18,不要用 React 19 新特性。
- 样式必须使用 TailwindCSS,不要写内联 style。
- 网络请求必须使用 `fetch`,不允许用 axios。
# 文件结构
- 业务组件放在 `src/components` 下。
- API 调用必须封装在 `src/api` 下。
- 所有页面文件放在 `src/pages` 下。
- 公共工具函数放在 `src/utils` 下。
# 文档规范
- 导出的 API 方法必须写 JSDoc 注释。
- 复杂逻辑的 Hooks 必须写注释,说明参数和返回值。
- 每个页面组件文件顶部必须有模块说明注释。
# 安全规范
- 不要把明文 API Key、token 写在代码里。
- 所有配置从 `.env` 里读取,通过 `process.env` 使用。
此外,你也可以参考 awesome-cursorrules,或者直接输入 /Generate Cursor Rules 来让系统自动生成规则。

Cursor 规则真是个好东西,它能有效规范代码风格,减少开发中的烦恼。这样的设计让团队合作变得更加顺畅,值得学习和推广。
了解了Cursor规则后,觉得它在团队开发中真的很重要,可以减少不必要的错误和不统一的代码风格。这种规范化的方式让开发变得更高效。
Cursor规则的设计真是贴心,能针对不同项目设置不同规范,避免了很多潜在的问题,让团队的协作更加高效。希望能在更多项目中看到它的应用。
了解Cursor规则后,发现它不仅能统一代码风格,还能提升团队协作效率。这样的规范真的很有必要,值得在开发中推广使用。
Cursor规则的灵活性真让人惊喜,可以根据不同项目需求进行调整,避免了许多常见的开发问题,值得每个团队尝试应用。