这是用户在 2025-7-24 16:06 为 https://docs.cursor.com/context/rules 保存的双语快照页面,由 沉浸式翻译 提供双语支持。了解如何保存?
规则为代理和内联编辑提供系统级的指令。可以将它们视为项目的持久上下文、偏好设置或工作流程。 Cursor 支持三种类型的规则:

  项目规则

存储于 .cursor/rules ,由版本控制并作用域于您的代码库。

  用户规则

适用于您的 Cursor 环境的全局规则。定义在设置中,始终生效。

  .cursorrules(旧版)

仍然支持,但已不推荐使用。请改用项目规则。

  规则的工作原理

大型语言模型在完成不同任务之间不会保留记忆。规则在提示层面提供持久且可重复使用的上下文。 应用规则内容时,会在模型上下文的开头包含这些内容。这为人工智能在生成代码、理解编辑内容或协助工作流程时提供了一致的指导。
Rule applied in context with chat
规则适用于聊天和内联编辑。激活的规则会显示在代理侧边栏中。

  项目规则

项目规则存放在 .cursor/rules 。每个规则都是一个文件,并受到版本控制。它们可以通过路径模式进行作用域划定,手动调用,或根据相关性包含。子目录可以包含自己的 .cursor/rules 目录,该目录作用于该文件夹。 使用项目规则以:
  • 对你的代码库中的领域特定知识进行编码
  • 自动化项目特定的工作流程或模板
  • 标准化风格或架构的决策

  规则结构

每个规则文件采用 MDC( .mdc )格式编写,支持元数据和内容。通过类型下拉菜单控制规则的应用,该菜单会改变属性 descriptionglobsalwaysApply
  规则类型  描述
Always始终包含在模型上下文中
Auto Attached在引用匹配某个 glob 模式的文件时包含
Agent Requested对 AI 可用,由 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
被引用的文件如 @service-template.ts 会在规则触发时作为附加上下文包含在内。

  嵌套规则

通过将规则放置在项目中的 .cursor/rules 目录中进行组织。当引用其目录中的文件时,嵌套规则会自动附加。
project/
  .cursor/rules/        # Project-wide rules
  backend/
    server/
      .cursor/rules/    # Backend-specific rules
  frontend/
    .cursor/rules/      # Frontend-specific rules

  创建规则

使用 New Cursor Rule 命令或导航到 Cursor Settings > Rules 来创建规则。这将在 .cursor/rules 中创建一个新的规则文件。在设置中,你可以查看所有规则及其状态。
Comparison of concise vs long rules

  生成规则

在对话中直接使用 /Generate Cursor Rules 命令生成规则。当你已对代理行为做出决策并希望重复使用时,这非常有用。

  最佳实践

好的规则应当简洁、可操作且具有明确的范围。
  • 将规则控制在500行以内
  • 将大型规则拆分成多个可组合的规则
  • 提供具体示例或引用文件
  • 避免含糊不清的指导。请像编写内部文档一样撰写规则
  • 在聊天中重复提示时,复用规则

  示例

提供商和框架提供了许多示例。社区贡献的规则可以在众包收集和网络存储库中找到。

  用户规则

用户规则是通过“光标设置→规则”定义的全局偏好,适用于所有项目。它们是纯文本,非常适合设置偏好的沟通方式或编码规范:
Please reply in a concise style. Avoid unnecessary repetition or filler language.

   .cursorrules (遗产)

你的项目根目录下的 .cursorrules 文件仍然受到支持,但将被弃用。我们建议迁移到项目规则,以获得更多控制、灵活性和可见性。

  常见问题

Rule applied in context with chat
Comparison of concise vs long rules