Cursor Rules 配置指南:项目规则怎么写才稳定生效
Cursor 的规则分两层:项目规则放 .cursor/rules 目录(推荐,可按 glob 圈定作用文件)、用户规则在设置里全局生效。规则不生效的最常见原因是写法太模糊或作用域没圈对,按本页模板检查。
10 秒直答:规则放哪里
项目规则放仓库内 .cursor/rules/ 目录(每个规则一个 .mdc 文件,可带 glob 作用域与描述),随仓库共享给团队;个人全局规则在 Cursor 设置的 Rules 里配置,作用于你所有项目。老的 .cursorrules 单文件方式属于历史做法,新项目用 rules 目录。
一条规则怎么写才有效
- 写「做什么 + 什么时候做」,不写空泛口号:『API 层错误一律返回 {code, msg, data} 结构』远强于『保持代码规范』
- 用 glob 圈作用域:只对 *.py 或 src/api/** 生效的规则单独成文件,避免全局规则互相打架
- 一条规则一件事:把测试规范、提交规范、API 规范拆成三个文件,便于维护与命中
- 给出正反例:规则里放一个正确示例和一个禁止示例,模型遵循率明显更高
规则不生效的排查清单
- 作用域 glob 没圈到当前文件——检查 .mdc 头部的 glob 配置
- 规则互相冲突——两条规则对同一场景给出矛盾指令时删掉旧的
- 规则太长稀释了重点——超过几十行的规则拆分,把硬约束放最前
- Agent 忽略规则重试时不带上下文——在规则里明确要求『每次修改前先确认匹配规则』
与 CLAUDE.md / GEMINI.md 的关系
三个工具的项目记忆机制同源不同名:Cursor 用 .cursor/rules,Claude Code 用 CLAUDE.md,Gemini CLI 用 GEMINI.md。多工具并用时可以互相引用同一份规范文档,避免维护三份漂移的规则。
常见问题
cursor rules 不生效怎么办?
按清单排查:glob 作用域是否圈到当前文件、规则间是否冲突、是否过长稀释重点;规则要写具体指令而非口号。
cursorrules 和 cursor/rules 有什么区别?
.cursorrules 是老的单文件全局方式;.cursor/rules/ 目录是现行推荐,支持按文件拆分、glob 作用域与团队共享。新项目用目录式。
cursor 规则放在哪个目录?
项目级放仓库内 .cursor/rules/(.mdc 文件);个人全局规则在 Cursor 设置的 Rules 区配置。
cursor 团队怎么共享规则?
把 .cursor/rules/ 目录提交进仓库即可随代码分发;团队档还提供团队级规则管理能力,见官方文档。