Skip to main content

规则


规则工作原理

大型语言模型在每次生成之间不会保留记忆。规则通过在提示层面提供持久化、可复用的上下文来解决这一问题。

当规则生效时,其内容会被包含在模型上下文起始位置。这为AI提供持续指导,无论其正在生成代码、解析编辑内容还是协助工作流程。


项目规则

项目规则存储于.cursor/rules目录。每个规则以文件形式保存并进行版本控制。可通过路径模式限定作用范围、手动触发或基于相关性自动包含。

项目规则用于:

  • 编码特定领域的代码库知识
  • 自动化项目专属工作流或模板
  • 标准化代码风格或架构决策

规则结构

每个规则文件采用MDC格式(.mdc),这种轻量级格式支持在单个文件中存储元数据和内容。规则支持以下类型:

规则类型描述说明
Always始终包含在模型上下文中
Auto Attached当引用匹配glob模式的文件时自动包含
Agent RequestedAI可主动调用的规则(需提供描述)
Manual仅当显式调用@ruleName时生效

MDC规则示例

---
description: RPC服务模板
globs:
alwaysApply: false
---

- 定义服务时使用内部RPC模式
- 服务名称始终采用snake_case格式

@service-template.ts

当规则触发时,@service-template.ts这类引用文件将作为附加上下文包含。

嵌套规则

可在项目结构中通过.cursor/rules目录组织嵌套规则,例如:

project/
.cursor/rules/ # 全局规则
backend/
server/
.cursor/rules/ # 后端专属规则
frontend/
.cursor/rules/ # 前端专属规则

嵌套规则特性:

  • 当引用其目录内文件时自动生效
  • 仍可在上下文选择器和AI规则列表中访问
  • 便于将领域规则就近关联相关代码

这在单体仓库(monorepos)或需要独立指导的多组件项目中尤其有用。

创建规则

通过新建Cursor规则命令或前往Cursor设置 > 规则创建规则。新规则将保存在.cursor/rules目录。设置界面可查看所有规则及其状态。

生成规则

可通过/生成Cursor规则命令在对话中直接创建规则。

当对话中已确定Agent行为规范时,此功能可快速生成可复用的规则。


最佳实践

优质规则应聚焦、可操作且作用域明确:

  • 保持规则简洁(建议500行以内)
  • 将复杂概念拆分为多个组合规则
  • 必要时提供具体示例或引用文件
  • 避免模糊指导(按编写内部文档的标准撰写)
  • 当聊天中重复使用相同提示时转为规则复用

示例

Cursor代码库实例

以下为Cursor内部使用的规则:

Next.js、Cloudflare、Browserbase等供应商提供大量范例。社区贡献的规则可在多个众包资源库中获取。


用户规则

用户规则在Cursor设置 > 规则中定义。

这些规则适用于所有项目,始终包含在模型上下文中。可用于:

  • 设定回复语言风格
  • 添加个人编码偏好

示例: 请以简洁风格回复,避免不必要的重复或填充词

用户规则不支持MDC格式,仅限纯文本。


团队规则

当前暂不支持跨项目共享规则。

我们计划未来支持可跨团队项目引用的共享MDC规则。目前可通过以下方式实现:

  • 将共享规则存储在专属仓库中
  • 复制或符号链接至各项目的.cursor/rules目录

.cursorrules(旧版)

项目根目录的.cursorrules文件仍受支持,但将被弃用。建议迁移至项目规则格式以获得更精细的控制、灵活性和可见性。


常见问题

规则未生效怎么办?
检查规则类型:Agent Requested类型需定义描述;Auto Attached类型需确保文件模式匹配引用文件。

规则能否引用其他规则或文件?
支持。使用@filename.ts语法可在规则上下文中包含文件。

能否通过聊天创建规则?
支持。可要求AI"将此转换为规则"或"基于此提示创建可复用规则"。

规则是否影响Cursor标签页或其他AI功能?
否。规则仅作用于Agent和Cmd-K AI模型。

365/年

CursorAI编程知识星球

我的cursor教学视频已经超100万人观看,可能是中文互联网最佳了

立即查看800+人已加入
免费

通过Monica免费使用满血可联网DeepSeek R1

Monica接入DeepSeek R1、OpenAI o1、GPT-4o、Claude 3.5 和 Gemini 1.5,来提升您的聊天、搜索、写作和编程体验。

立即查看一站式 AI 助手