规则为 Agent 和 Inline Edit 提供系统级指令。可以把它们看作项目的持久化上下文、偏好或工作流。 Cursor 支持四种类型的规则:

Project Rules

存在 .cursor/rules 中,受版本控制,作用范围限定在你的代码库内。

User Rules

作用于你的 Cursor 全局环境。在设置中定义并始终生效。

AGENTS.md

用 Markdown 编写的 Agent 指令,是 .cursor/rules 的简化替代方案。

.cursorrules (Legacy)

仍受支持,但已弃用。请改用 Project Rules。

规则的工作方式

大型语言模型在不同补全之间不会保留记忆。规则在提示层提供持久、可复用的上下文。 应用后,规则内容会被置于模型上下文的开头。这为 AI 提供一致的指导,用于生成代码、理解编辑,或协助处理工作流。
在聊天上下文中应用的规则
规则适用于 ChatInline Edit。已启用的规则会显示在 Agent 侧边栏。

项目规则

项目规则位于 .cursor/rules。每条规则都是一个文件,并纳入版本控制。它们可以通过路径模式限定作用域、手动触发,或按相关性自动包含。子目录也可以放置各自的 .cursor/rules 目录,仅作用于该文件夹。 用项目规则来:
  • 编码与你代码库相关的领域知识
  • 自动化项目特定的工作流或模板
  • 统一风格或架构决策

规则结构

每个规则文件使用 MDC.mdc)编写,这是一种同时支持元数据和内容的格式。通过类型下拉菜单控制规则的应用方式,该操作会更改 descriptionglobsalwaysApply 属性。
规则类型描述
Always始终包含在模型上下文中
Auto Attached当引用与某个 glob 模式匹配的文件时包含
Agent Requested提供给 AI,由其决定是否包含。必须提供描述
Manual只有在使用 @ruleName 明确提及时才会包含
---
description: RPC Service boilerplate
globs:
alwaysApply: false
---

- Use our internal RPC pattern when defining services
- Always use snake_case for service names.

@service-template.ts

嵌套规则

通过在项目各处的 .cursor/rules 目录中放置规则来组织它们。当引用其目录中的文件时,嵌套规则会自动附加。
project/
  .cursor/rules/        # 项目范围的规则
  backend/
    server/
      .cursor/rules/    # 后端特定规则
  frontend/
    .cursor/rules/      # 前端特定规则

创建规则

使用 New Cursor Rule 命令,或前往 Cursor Settings > Rules 创建规则。这样会在 .cursor/rules 中创建一个新的规则文件。在设置里你能查看所有规则及其状态。
精简规则与冗长规则的对比

生成规则

在对话中直接使用 /Generate Cursor Rules 命令生成规则。当你已经对 agent 的行为做出决策并想要复用它们时,这很有用。

最佳实践

好的规则应当聚焦、可执行、范围明确。
  • 将规则控制在 500 行以内
  • 把大型规则拆分成多个可组合的规则
  • 提供具体示例或引用的文件
  • 避免模糊的指导。像清晰的内部文档一样写规则
  • 在聊天中重复提示时复用规则

示例

来自各个提供者和框架的示例非常丰富。社区贡献的规则可在众包集合和在线仓库中找到。

AGENTS.md

AGENTS.md 是一个用于定义代理指令的简单 markdown 文件。把它放在项目根目录,作为 .cursor/rules 的替代方案,适用于简单直观的场景。 与 Project Rules 不同,AGENTS.md 是不含元数据或复杂配置的纯 markdown 文件。它非常适合需要简洁、易读指令、且不想引入结构化规则开销的项目。
# Project Instructions

## Code Style
- Use TypeScript for all new files
- Prefer functional components in React
- Use snake_case for database columns

## Architecture
- Follow the repository pattern
- Keep business logic in service layers

当前限制

  • 仅限根目录AGENTS.md 必须放在项目根目录(v1.5)
  • 无作用域:指令在整个项目中全局生效
  • 单文件:不同于 .cursor/rules,你不能将指令拆分到多个文件
子目录中嵌套的 AGENTS.md 支持计划在 v1.6 提供。

用户规则

用户规则是在 Cursor Settings → Rules 中定义的全局偏好设置,适用于所有项目。它们为纯文本,非常适合用于设定偏好的沟通风格或编码规范:
Please reply in a concise style. Avoid unnecessary repetition or filler language.

.cursorrules(旧版)

你项目根目录中的 .cursorrules 文件依然受支持,但会被弃用。建议迁移到 Project Rules,以获得更强的可控性、灵活性和可见性。

常见问题