正文
"*.mdc": "default"
}
在本教程中,我们会将这个规则文件的内容视为直接加载进聊天中的指令。
鸣谢:这个规则定义最初来自
cursor-custom-agents-rules-generator
项目。该项目会不断更新,所以你现在看到的版本可能已经不是最新的。可访问该项目获取最新版本。感谢 BMad 的创建与分享。
cursor-custom-agents-rules-generator Github:https://github.com/bmadcode/cursor-custom-agents-rules-generator/tree/main
rule-generating-agent.mdc 文件内容:
---
description: 该规则对于整个代码库中规则创建的一致性和质量控制至关重要。在以下情况下必须遵循本规则:(1) 用户请求创建新规则时;(2) 需要修改已有规则时;(3) 用户希望记录某些行为或模式时;(4)
请求未来行为变化时。本规则通过标准化格式、命名规范和内容要求,确保规则的组织结构清晰、文档齐全、应用有效。尤其对于维护规则层级结构、让 AI 能正确发现规则、提升规则系统效果具有重要作用。整个规则系统是项目一致性、代码质量以及自动化协助效果的基础。
globs:
alwaysApply: true
---
# Cursor 规则格式
## 规则文件模板结构
---
description: `详细描述该规则的应用场景,说明何时应用此规则。请包括关键情境、受影响的领域,以及遵守该规则的重要性。描述应详尽但不跑题,足以让智能体在任何场景下能准确判断是否使用该规则。`
globs: .cursor/rules/**/*.mdc 或留空
alwaysApply: {true 或 false}
---
# 规则标题
## 关键规则
- 简洁明了地列出智能体必须遵守的操作要点(使用项目符号)
## 示例
{规则正确应用的示例}
{规则错误应用的示例}
---
### 文件夹结构(如不存在请创建)
所有规则文件需存放在特定组织文件夹中:
- `.cursor/rules/core-rules`:与 Cursor 智能体行为或规则生成相关的核心规则
- `.cursor/rules/my-rules`:仅适用于个人的规则,可在共享仓库中 gitignore 忽略
- `.cursor/rules/global-rules`:始终应用于每个聊天或 Cmd/Ctrl+K 上下文的规则
- `.cursor/rules/testing-rules`:与测试相关的规则
- `.cursor/rules/tool-rules`:针对特定工具(如 git、Linux 命令、MCP 工具)的规则
- `.cursor/rules/ts-rules`:TypeScript 语言相关规则
- `.cursor/rules/py-rules`:Python 语言相关规则
- `.cursor/rules/ui-rules`:HTML、CSS、React 等 UI 技术相关规则
- 如有需要,可新增类似命名的文件夹,例如:`.cursor/rules/cs-rules`(如果项目开始使用 C#)
---
## 通配符模式示例(Glob Pattern Examples)
不同类型规则的常见 glob 匹配模式:
- 核心规则:`.cursor/rules/*.mdc`
- 编程语言规则:`*.cs`, `*.cpp`
- 测试标准:`*.test.ts`, `*.test.js`
- React 组件:`src/components/**/*.tsx`
- 文档:`docs/**/*.md`, `*.md`
- 配置文件:`*.config.js`
- 构建产物:`dist/**/*`
- 多文件类型扩展名:`*.js`, `*.ts`, `*.tsx`
- 多重模式组合:`dist/**/*.*`, `docs/**/*.md`, `*test*.*`
---
## 关键规则
- 所有规则文件必须以如下方式命名并存放:
`.cursor/rules/{组织目录}/rule-name-{auto|agent|manual|always}.mdc`
- 所有规则文件**必须**保存在 `.cursor/rules/**` 路径下,不可存放在其他位置
- 创建规则前,务必检查 `.cursor/rules/` 下是否已有可更新的规则
### 文件开头的 front matter 类型说明:
前置字段区域(front matter)必须始终写在文件开头,并包含以下三个字段,即使值为空也必须保留:
- **Manual Rule**(手动规则):如果用户请求的是手动规则,则 description 和 globs 留空,`alwaysApply: false`,文件名以 `-manual.mdc` 结尾