Cursor 的使用之学会使用 cursor rule

Cursor rules 是 Cursor 编辑器的一个核心功能,它允许你为 AI 助手设置特定的行为规则和指导原则。

Cursor Rules 是什么?

Cursor rules 是一套规则系统,用于:

  1. 定义 AI 行为:告诉 AI 如何响应你的请求
  2. 设置编码标准:定义代码风格、架构模式等
  3. 定制工作流程:建立特定的开发流程和最佳实践
  4. 提高 AI 输出质量:确保 AI 按照你的偏好工作

如何设置 Cursor Rules

方法 1:工作区级别的 .cursorrules 文件

在你的项目根目录创建 .cursorrules 文件:

markdown 复制代码
# 项目编码规范

## 代码风格
- 使用 TypeScript 进行类型安全
- 遵循 ESLint 和 Prettier 配置
- 函数和变量使用驼峰命名法
- 类名使用帕斯卡命名法

## 架构原则
- 使用函数式编程范式
- 优先使用组合而非继承
- 保持函数纯度和不可变性
- 使用依赖注入管理状态

## AI 助手行为
- 始终提供完整的代码示例
- 解释关键概念和设计决策
- 优先考虑性能和可维护性
- 提供测试建议和最佳实践

## 响应格式
- 使用清晰的 markdown 格式
- 提供代码注释说明
- 包含错误处理和边界情况
- 给出性能优化建议

方法 2:全局 Cursor Rules

在 Cursor 设置中配置全局规则:

  1. Cmd+, (Mac) 或 Ctrl+, (Windows/Linux) 打开设置
  2. 搜索 "Cursor Rules" 或 "AI Rules"
  3. 添加全局规则

方法 3:通过命令面板

在聊天中直接设置规则:

  • "请记住:所有代码都要包含 JSDoc 注释"
  • "请使用 React 18 的新特性"
  • "请优先考虑 TypeScript 类型安全"

Cursor Rules 的优势

  1. 一致性:确保 AI 在所有对话中遵循相同标准
  2. 专业性:根据项目需求定制 AI 行为
  3. 效率:减少重复说明,提高沟通效率
  4. 质量:统一代码质量和架构标准

常见使用场景

  • 团队协作:统一团队的编码标准和 AI 使用方式
  • 项目特定:为特定项目设置专门的规则
  • 技术栈:定义特定技术栈的最佳实践
  • 代码审查:设置代码质量检查标准

应用

代码部分为我使用cursor创建的.cursorrules

# 复制代码
## 技术栈
- **测试框架**: Jest
- **E2E 测试**: Playwright
- **语言**: TypeScript (推荐) / JavaScript
- **包管理**: npm/yarn/pnpm

## 代码风格
- 使用 TypeScript 进行类型安全
- 遵循 ESLint 和 Prettier 配置
- 函数和变量使用驼峰命名法
- 测试文件名使用 `.test.ts` 或 `.spec.ts` 后缀
- 使用 2 空格缩进

## Jest 测试规范
- 测试描述使用清晰的 BDD 风格 (describe, it, expect)
- 每个测试用例只测试一个功能点
- 使用有意义的测试名称,描述预期行为
- 优先使用 `toBe()` 进行基本断言,`toEqual()` 进行对象比较
- 使用 `beforeEach` 和 `afterEach` 进行测试清理
- 模拟外部依赖使用 `jest.mock()` 和 `jest.spyOn()`
- 测试覆盖率目标:至少 80%

## Playwright 测试规范
- 使用 Page Object Model (POM) 设计模式
- 测试文件放在 `tests/` 目录下
- 页面对象放在 `pages/` 目录下
- 使用 `test.describe()` 组织相关测试
- 优先使用 `test.beforeEach()` 进行测试设置
- 使用 `test.afterEach()` 进行清理工作
- 断言使用 Playwright 内置的 `expect()` 方法
- 等待策略:优先使用 `waitForSelector()` 而非 `page.waitForTimeout()`

## 测试文件结构

tests/
├── e2e/           # Playwright E2E 测试
│   ├── pages/     # 页面对象
│   ├── fixtures/  # 测试数据
│   └── utils/     # 测试工具函数
├── unit/          # Jest 单元测试
│   ├── __mocks__/ # 模拟文件
│   └── utils/     # 测试工具
└── integration/   # 集成测试

## AI 助手行为
- 始终提供完整的测试代码示例
- 解释测试策略和设计决策
- 优先考虑测试的可维护性和可读性
- 提供测试数据管理和清理建议
- 建议最佳的文件组织结构
- 包含错误处理和边界情况测试
- 提供性能优化和并行测试建议

## 响应格式
- 使用清晰的 markdown 格式
- 提供完整的代码示例,包含必要的导入
- 包含详细的注释说明
- 给出测试运行和调试建议
- 提供相关的最佳实践链接

## 常用测试模式
- **AAA 模式**: Arrange, Act, Assert
- **Given-When-Then**: 行为驱动开发
- **测试金字塔**: 单元测试 > 集成测试 > E2E 测试
- **数据驱动测试**: 使用 `test.describe()` 和参数化测试

## 性能考虑
- 使用 `test.describe.parallel()` 进行并行测试
- 合理使用 `test.describe.serial()` 避免竞态条件
- 优化测试数据创建和清理
- 使用 Playwright 的 `--workers` 参数控制并发数

## 调试和故障排除
- 使用 `test.slow()` 标记慢速测试
- 使用 `test.only()` 和 `test.skip()` 进行测试隔离
- 利用 Playwright 的 `--headed` 模式进行可视化调试
- 使用 `console.log()` 和 `page.screenshot()` 进行调试

除此之外还可以去试着定义角色,来针对不同的工作环境

# 复制代码
## 角色:代码审查专家
## 职责:
- 审查代码质量和最佳实践
- 识别潜在的性能问题和安全漏洞
- 提供改进建议和重构方案

## 响应风格:
- 专业、客观
- 提供具体的代码示例
- 关注代码可读性和维护性

# 前端开发专家
## 角色:前端开发专家
## 职责:
- 提供现代前端技术建议
- 帮助解决 CSS、JavaScript、React 等问题
- 优化用户体验和性能

## 响应风格:
- 实用、创新
- 提供最新的前端最佳实践
- 关注用户体验和可访问性

可以根据项目调整随时去修改.cursorrule文件

相关推荐
Cisyam44 分钟前
使用Bright Data API轻松构建LinkedIn职位数据采集系统
后端
float_六七1 小时前
Spring Boot 3为何强制要求Java 17?
java·spring boot·后端
TimelessHaze1 小时前
🔥 一文掌握 JavaScript 数组方法(2025 全面指南):分类解析 × 业务场景 × 易错点
前端·javascript·trae
bobz9651 小时前
ovs arp
后端
_風箏1 小时前
SpringBoot【集成ElasticSearch 01】2种方式的高级客户端 RestHighLevelClient 使用(依赖+配置+客户端API测试源码
后端
用户21411832636021 小时前
dify案例分享-零基础上手 Dify TTS 插件!从开发到部署免费文本转语音,测试 + 打包教程全有
后端
架构师沉默2 小时前
Java 开发者别忽略 return!这 11 种写法你写对了吗?
java·后端·架构
EndingCoder2 小时前
React 19 与 Next.js:利用最新 React 功能
前端·javascript·后端·react.js·前端框架·全栈·next.js
RainbowJie12 小时前
Gemini CLI 与 MCP 服务器:释放本地工具的强大潜力
java·服务器·spring boot·后端·python·单元测试·maven
ITMan彪叔2 小时前
Nodejs打包 Webpack 中 __dirname 的正确配置与行为解析
javascript·后端