Cursor 人工智能规则

通过规则配置定制 AI 助手的行为和输出

引言

Cursor 的人工智能规则允许您自定义 AI 行为,使其更好地适应您的项目需求和编码风格。您可以通过全局规则和项目特定规则来控制 AI 助手的行为方式。

AI 规则配置示例

使用 AI 规则可以精确控制 AI 助手的行为和输出。

什么是 AI 规则?

Cursor AI 规则是为 AI 助手提供的自定义指令,指导它在解释代码、生成建议和响应查询时的行为。有两种主要类型的规则:

  • 全局规则:在 Cursor Settings(设置) 中的 General(通用) > Rules for AI(AI 规则) 下设置,适用于所有项目
  • 项目特定规则:在项目的 .cursor/rules 目录中定义的 .mdc 文件,或者项目根目录的 .cursorrules 文件

创建和使用规则

设置全局规则

  1. 打开 Cursor Settings(设置)
  2. 导航到 General(通用) > Rules for AI(AI 规则)
  3. 在提供的文本区域中输入您的自定义指令
  4. 点击 Save(保存) 应用您的全局规则
  5. 请记得启用 include .cursorrules file(包含 .cursorrules 文件) 选项以应用项目特定规则

全局规则示例:

1. 错误修复:
   - 提出解决方案前彻底分析问题
   - 提供精确、有针对性的解决方案
   - 解释错误的根本原因

2. 保持简单:
   - 优先考虑可读性和可维护性
   - 避免过度设计解决方案
   - 尽可能使用标准库和模式

3. 代码更改:
   - 在进行更改前提出明确的计划
   - 一次性应用对单个文件的所有修改
   - 不要更改不相关的文件

创建项目特定规则

有两种方式创建项目特定规则:

1. 使用新的项目规则系统(推荐)

  1. 转到 Cursor Settings(设置) > General(通用) > Project Rules(项目规则)
  2. 点击 Add Rule(添加规则) 创建新的 .mdc 文件
  3. 编辑 Description(描述)(帮助代理选择规则)和 Globs(全局模式)(例如 *.tsx 用于自动包含规则)
  4. 在 .mdc 文件中编写您的规则

Cursor 将根据您的描述和 Glob 设置自动同步和应用这些规则。

2. 使用 .cursorrules 文件(向后兼容)

  1. 在项目的根目录创建 .cursorrules 文件
  2. 将您的自定义指令添加到此文件中

示例 .cursorrules 文件:

您是 TypeScript、Node.js、Next.js App Router、React、Shadcn UI、Radix UI 和 Tailwind 方面的专家。

代码风格和结构
- 编写简洁、技术性的 TypeScript 代码,提供准确的示例。
- 使用函数式和声明式编程模式;避免使用类。
- 优先使用迭代和模块化而非代码重复。
- 使用描述性变量名,含辅助动词(例如 isLoading、hasError)。
- 文件结构:导出组件、子组件、辅助函数、静态内容、类型。

命名约定
- 目录使用小写加连字符(例如 components/auth-wizard)。
- 组件优先使用命名导出。

TypeScript 使用
- 所有代码使用 TypeScript;接口优于类型。
- 避免枚举;使用映射代替。
- 使用带有 TypeScript 接口的函数组件。

创建有效规则的技巧

良好规则的特点

  • 易于理解 - 避免复杂术语
  • 针对您的项目或编码风格
  • 符合团队约定的实践
  • 适用于代码的不同部分
  • 随项目发展易于更新

编写更好规则的技巧

  • 从基本规则开始,然后根据需要添加更多
  • 像向同事解释一样编写规则
  • 包含来自自己代码的示例
  • 考虑规则如何应用于您的项目
  • 定期检查和更新规则

让规则更有效的方法

  • 使用您日常编码中的词汇和术语
  • 简要描述您的项目或功能
  • 在有帮助时展示简短的代码示例
  • 提及任何特定要求或限制
  • 需要时请求解释

示例规则

TypeScript 专家规则

您是 TypeScript 专家,对该语言的功能和最佳实践有深入了解。您提供有关类型系统、泛型和高级 TypeScript 概念的指导。

编码风格:
- 使用严格的类型检查
- 优先使用接口而非类型别名
- 使用泛型增强代码可重用性
- 避免 any 类型,优先使用具体类型或 unknown

最佳实践:
- 利用 TypeScript 的高级类型系统
- 为函数和方法编写完整的类型声明
- 使用联合类型和交叉类型处理复杂数据结构
- 实现正确的错误处理和类型保护

React 项目规则

项目使用 React 18 和 TypeScript。请遵循这些指南:

组件结构:
- 使用函数组件和 React Hooks
- 组件按照职责拆分为合理大小
- 将共享逻辑提取到自定义 hooks
- 组件属性使用 TypeScript 接口定义

性能优化:
- 适当使用 useMemo 和 useCallback
- 实现组件懒加载和代码分割
- 避免不必要的重新渲染

状态管理:
- 小型项目使用 Context API
- 中大型项目使用 Redux Toolkit
- 使用不可变数据模式更新状态

为什么使用 AI 规则很重要

1. 项目上下文理解

为 AI 提供关于项目结构、技术和特定需求的关键信息,使其建议更加相关。

2. 自适应行为

根据 AI 的表现调整其响应,使您能够随时间微调其行为。

3. 错误修正

澄清误解并引导 AI 避免常见错误,提高其建议和代码生成的准确性。

4. 编码一致性

确保 AI 生成的代码符合您的代码风格和项目标准,提高代码库的一致性。

故障排除

规则不生效

检查:

  • 全局规则:确认您已保存设置
  • 项目规则:检查文件名是否正确(.cursorrules.mdc
  • 验证您是否已启用 include .cursorrules file(包含 .cursorrules 文件) 选项
  • 检查 Globs(全局模式) 是否正确匹配您的文件

规则冲突

当遇到规则冲突时:

  • 了解规则优先级:项目规则 > 全局规则
  • 检查多个项目规则之间是否存在冲突
  • 确保规则描述清晰且不矛盾

总结

Cursor 的 AI 规则是一个强大的功能,可以显著提高您的编码体验:

  • 通过自定义 AI 行为提高编码效率
  • 确保代码一致性和质量
  • 使 AI 更好地理解您的项目上下文
  • 提供更相关、更准确的代码建议
  • 创建更符合您工作流程的编码体验

下一步

要进一步了解如何使用 AI 规则,建议您: