Cursor已经成为现在很火的编辑工具了,但是如何能更好的使用,下面是我的一些体会感受,也采纳了网上部分优秀示例提炼
在编程中,cursor 的表现取决与 有效的 Rules+ 标准的 Prompt +正确的开发流程。
制定规则
在开始就设定 5-10 条清晰的项目规则,让 Cursor 了解你的结构和约束。让 Cursor 知道项目的目标,以及项目的技术栈。
Speckit 规范: 这是一个通用的规范,用于规范所有项目的开发流程。 具体使用可以自行查看相关内容。
在 Cursor 实际开发中,项目规则可以分为三个层级,即通用规则、编程语言规则和框架规则。根据项目类型、规模的不同,需要的项目规则数量也会有所区别。
以一个 Vue 前端工程为例,一个完整的 Project Rules 包含:
1.技术栈定义
整个工程使用的主要技术路线,作为后续代码生成的基础:
技术栈定义:
- 前端框架: Vue 3
- 状态管理: Vuex
- 路由管理: Vue Router
- 组件库: GCOMMON UI
- 构建: Vite
- 测试: Jest
- 代码规范: ESLint + Prettier
2.文件结构规范
项目的文件功能结构,指导后续代码生成和修改到正确的位置:
src/
├── components/ // 可复用组件
├── i18n/ // 国际化
├── pages/ // 页面
├── store/ // 状态管理
├── api/ // API
├── utils/ // 工具函数
└── router/ // 路由
└── index.vue // 入口文件
3.开发规范 从代码的命名到组件的模板格式,从 API 的接口定义到异常处理,都需要一致的规范来约束:
- 文件和目录命名
- 组件文件: 使用大驼峰命名法(PascalCase),如
PayCard.vue - 工具文件: 使用小驼峰命名法(camelCase),如
request.js - 目录名: 使用小驼峰命名法(camelCase),如
mealService - 路由模块: 使用小驼峰+Router 后缀,如
mealServiceRouter
- 代码风格
- 缩进: 使用 2 个空格
- 引号: 使用单引号
- 分号: 不强制要求,由 Prettier 自动处理
- 行尾空格: 自动删除
- 文件末尾: 保留一个空行
对比:有 Rules vs 无 Rules 的 AI 自动生成效果对比
无 Rules 的问题
当没有 Project Rules 约束时:
• 使用错误的技术栈(如用原生 HTML 替代组件库)
• 忽略国际化要求
• 不遵循现有的 API 接口规范
• 代码风格与项目不一致
有 Rules 的开发优势
引入 Project Rules 后:
• 严格遵循项目技术栈
• 自动添加国际化支持
• 遵循既定的 API 接口规范
• 保持代码风格一致性
高效提示词
为什么别人一句话能完成任务,而你需要多次修改询问?
优秀提示词遵循"任务-规则-上下文-功能"结构,让 AI 清晰理解上下文和边界
开发提示词模板示例
任务:添加一个知识库页面
规则:
rules @project-rules.md
上下文:
路径: /knowledgeBase
文件: src/pages/knowledgeBase/index.vue
标题: 知识库列表
功能:
列表功能:
1. 列表展示
2. 列表分页
3. 列表搜索
4. 列表排序
搜索筛选:
1. 名称搜索框
2. 类型搜索框
操作功能:
1. 新增按钮
2. 删除按钮
3. 导出按钮
4. 导入按钮
API接口:
GET /api/knowledgeBase/list
POST /api/knowledgeBase/add
PUT /api/knowledgeBase/update
DELETE /api/knowledgeBase/delete
请按照项目现有架构实现,包含国际化支持和错误处理
任务: 明确开发任务和目标
规则: 引用项目规则确保规范
上下文: 提供页面路径、文件信息、标题等
功能: 详细描述功能需求
开发流程建议
规则先行,为项目奠定基础
核心思想: 在开始编写代码之前,先制定好项目规则。这就像建造一座大楼前,先设计精准的蓝图。
对于新项目: 不要从零开始。可以利用社区提供的优秀规则模板(如 Cursor Rules),结合自身项目的技术栈进行定制。
对于现有项目: 利用 AI 自动生成规则,让 AI 分析现有的代码库,自动生成项目规则进行微调,确保符合现状同时又能引领未来开发。
规则的版本化管理: 将 .cursorrules 文件纳入 Git 版本控制,存放在项目根目录。这样,不仅团队成员能共享最新的规则,AI 也能在每次交互中获取到最准确的上下文,确保代码生成的一致性。
定期维护: 规则不是一成不变的。定期回顾并更新规则,废弃过时的模式,引入新的最佳实践。
模板建设:将重复性工作标准化
核心思想: 将常见的开发任务(如创建组件、API、测试用例)制作成标准化的提示词模板(Prompt Template),将开发人员从重复的思考和输入中解放出来。
建立提示词库: 在项目中创建一个文档,用于存放这些标准化的提示词模板,团队成员可以共享和复用这些模板,提高开发效率。
工具组合:发挥 1+1>2 的效能
核心思想: Cursor 不是要取代现有的开发工具链,而是要作为核心加速器融入其中,与代码审查(Code Review)、自动化测试等工具形成合力。
与设计工具联动: 通过 Figma MCP 等工具,实现从设计稿到代码的直接转换,极大减少 UI 开发中的信息损耗和重复劳动。
AI 辅助 Code Review: 在提交 Pull Request (PR) 之前,可以让 AI 先进行一轮预审查:@codebase /review 请根据项目规范检查这段代码的潜在问题。AI 可以快速发现命名不规范、缺少注释、代码风格不一致等问题,从而让团队成员的 Review 更专注于业务逻辑和架构设计。
自动化测试生成与验证: 利用 AI 快速生成单元测试和集成测试的草稿,覆盖正常和异常场景。然后,将这些测试用例纳入 CI/CD 流水线,自动验证 AI 生成代码的正确性,形成“AI 生成代码 -> CI 自动验证 -> 人工审查逻辑”的高效闭环。
总结
Cursor 是一个强大的 AI 编程助手,通过制定有效的 Rules、编写标准的 Prompt 和遵循正确的开发流程,可以大大提高开发效率。
核心要点回顾
- 规则先行:建立完善的 Project Rules
- 模板复用:构建高效的提示词库
- 工具增强:善用 MCP 扩展功能
- 持续优化:不断改进工作流程
AI 编程的未来不是替代开发者,而是让开发者更专注于架构设计和业务逻辑,让 AI 处理重复性的编码工作。保证代码质量的同时,大幅提升开发效率。