规则配置(Rules)
规则允许您为 Agent 和 Cmd-K AI 提供系统级的指导。您可以将它们视为为项目或个人持久化编码上下文、偏好设置或工作流程的方式。
Cursor 支持三种类型的规则:
规则工作原理
大型语言模型在生成补 全内容时不会保留记忆。规则通过在提示词层面提供持久化、可复用的上下文来解决这一问题。
当应用规则时,其内容会被包含在模型上下文的起始位置。这为 AI 提供了持续指导,无论它是在生成代码、解释编辑操作,还是协助工作流程。
规则同时适用于chat功能 和 行内编辑功能(Cmd/Ctrl + K)
项目规则
项目规则存储在 .cursor/rules
目录中。每个规则以文件形式保存并支持版本控制。它们可以通过路径模式限定作用范围,手动调用,或根据相关性 自动包含。子目录可以包含自己的 .cursor/rules
目录,其作用范围限定于该文件夹。
项目规则的典型用途:
- 编码与代码库相关的领域知识
- 自动化项目特定的工作流程或模板
- 标准化代码风格或架构决策
规则类型
每个规则文件都使用 MDC(.mdc
)格式编写,这是一种轻量级格式,支持在单个文件中存储元数据和内容。规则支持以下类型:
规则类型 | 描述 |
---|---|
Always | 始终包含在模型的上下文中 |
Auto Attached | 当引用与通配符模式匹配的文件时自动包含 |
Agent Requested | 规则对 AI 可见,由其决定是否包含(必须提供描述) |
Manual | 仅在使用 @ruleName 显式提及时才会包含 |
MDC 规则示例
---
description: RPC 服务样板(boilerplate)代码
globs:
alwaysApply: false
---
- 定义服务时请使用我们内部的 RPC 模式
- 服务名称始终使用 snake_case 命名规范
@service-template.ts
当规则被触发时,类似 @service-template.ts
的引用文件将作为额外上下文被包含。
你可以使用 Cmd + Shift + P > "New Cursor Rule" 在 Cursor 中快速创建规则。
嵌套规则
您可以通过在项目结构中创建 .cursor/rules
目录来组织规则。例如:
project/
.cursor/rules/ # 项目全局规则
backend/
server/
.cursor/rules/ # 后端专用规则
frontend/
.cursor/rules/ # 前端专用规则
嵌套规则具有以下特点:
- 自动关联:当目录中的文件被引用时 自动生效
- 全局可见:仍会出现在上下文选择器和 Agent 可访问的规则列表中
- 便于管理:适合将领域特定规则就近存放在相关代码附近
这种组织方式特别适用于以下场景:
- 需要独立指导规范的 Monorepo 项目
- 包含多个独立组件的复杂工程
- 不同模块需要差异化规则配置的代码库
创建规则
您可以通过以下两种方式创建规则:使用 New Cursor Rule
命令,或前往 Cursor Settings >Rules
。新建的规则文件将存储在 .cursor/rules
目录中。在设置界面中,您可以查看所有规则的列表及其启用状态。
生成规则
您可以直接在聊天会话中使用 /Generate Cursor Rules
命令生成规则。
当您与 AI 完成关于如何定义智能体行为的对话后,此功能尤为实用。生成的规则可保存并复用至未来场景。