cursor 中 project rules 优先级高于 user rules,前者仅对配置了 .cursor/rules/ 目录的项目生效且需 .md 文件加 yaml frontmatter,后者全局生效;二者作用层级不同,不可混用。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

要让 Cursor 的 AI 生成代码时严格遵循你的项目规范,必须分清 Rules 的作用层级——User Rules 是全局生效的个人偏好,Project Rules 是绑定到具体项目的硬性约束,二者不能混用或互相替代。
User Rules:全局生效,影响所有项目
打开 Cursor → 点击左下角【设置齿轮】→ 进入【Rules】→ 点击【Add new rule】→ 选择【User Rule】。
输入规则名称(如“中文回复+禁用测试”),在内容区写入纯文本或 Markdown 格式指令,例如:“所有回答必须用中文;禁止生成 pytest 或 unittest 脚本;不主动执行 pip install。”
这条规则会自动注入到每次 Chat、Command-K、自动补全的提示词开头,【无论你在哪个项目里操作,它都生效】。
Project Rules:路径级控制,只对当前项目起效
在项目根目录下新建隐藏文件夹 .cursor → 在其中创建子目录 rules → 在 .cursor/rules/ 下新建一个 .md 文件(如 react-hooks.md)。
文件内容必须以 YAML frontmatter 开头,例如:
```yaml
type: always
name: React Hooks 规范
```
后面接具体规则,比如:“useEffect 中依赖数组必须显式声明;禁止在函数组件顶部调用 setState;自定义 Hook 必须以 use 开头。”
Cursor 启动后会自动扫描该路径,识别所有 .md 文件并加载为 Project Rules。官方已明确 .cursorrules 文件格式即将弃用,【务必使用 .md 后缀 + YAML frontmatter】。
优先级与实际效果差异
第一步:打开任意项目,执行 Command-K 输入“重构这个函数”。
第二步:观察 AI 输出——如果 Project Rules 中写了“禁止修改原函数签名”,而 User Rules 没有相关限制,AI 就不会动函数参数。
第三步:切换到另一个没配置 .cursor/rules 的项目,同样执行 Command-K,AI 就可能按 User Rules 的宽松策略自由调整签名。
Project Rules 优先级高于 User Rules,且仅当 Cursor 检测到当前工作区存在 .cursor/rules 目录时才激活。没有该目录,Project Rules 完全不参与提示词拼接。










