🍄 大家好,我是风筝
🌍 个人博客:【古时的风筝】。
本文目的为个人学习记录及知识分享。如果有什么不正确、不严谨的地方请及时指正,不胜感激。
每一个赞都是我前进的动力。
最近也体验了WindSurf、Trae 之间来回用,但是一直还是把 Cursor 当做主力,虽说是当做主力,但是其实用它写的UI和逻辑还是比较简单的,都是一些小工具级别的。
主要写代码的时间还是用 IDE 写 Java,虽然在 IDE 装了 GitHub Copilot,但是说实话对开发效率提升有限,有时候按 tab 只想要个联想提示,结果它就给自动补全了,但是补全后的内容还不是我想要的,而且发生频率还不小。
这几天用 Cursor 写了几个 UI交互很复杂的 Vue 页面,整个开发过程可以说几乎全是自然语言提示,然后点 apply 按钮。
页面部分直接把草图甩给它;有交互的部分尽量描述清楚(有时候都不用描述的太清楚),调用接口的部分直接把入参和返回结果 json 给它就行了。实现的交互越复杂,我越是发现它比我想的还聪明。
但是问题肯定也是有的,比如有时候它会在主题色之外给你一个很突兀的颜色,或者给你一段风格不统一的 UI 样式。
ps:使用 Cursor 一定要学会及时提交代码,当它实现了你比较满意的结果后,先提交下代码,不然下次它可能就改出问题来了。
如果想要 Cursor 能力更近一步,也许就要搭配 CursorRules 。
什么是 CursorRules
CursorRules 是一款灵活的规则管理工具,能够定制化指导Cursor的行为,精准满足你的项目需求。
CursorRules 是Cursor 官方提供的一种规则定义系统,允许通过配置文件或设置界面为Cursor指定个性化指导。这些规则可以涵盖代码风格、架构最佳实践、用户界面(UI)设计、性能优化、安全性要求等多个方面,确保Cursor生成的代码与你的项目规范和团队标准完美契合。
也就是说你提现告知 Cursor 应该朝着哪些方向努力,它就会朝着这个方向提供给尽可能满足你要求的内容。
规则的类型
全局规则(Rules for AI)
通过Cursor的设置界面定义(如"Settings > General > Rules for AI"),适用于所有项目,适合统一个人编码偏好或开发习惯。
例如你开发中一直使用 TailwindCSS,就可以写在这里,例如"始终使用 TailwindCSS "
项目规则(Project Rules)
存储在项目目录下的.mdc文件(Markdown格式),位于.cursor/rules目录中,针对特定项目的独特需求,并结合代码库上下文。当你在项目点击"add new rule"时,会提示你输入一个名称, 项目根目录下就会创建 .cursor/rules
目录,并创建一个.mdc文件,然后你就可以在这个文件中定义你的规则了。
每个项目的 .cursor/rules
都是独立的,互不影响。

这两个规则的优先级是:项目规则 > 全局规则,当你设置了项目规则后,全局规则会失效。
举例说明
例如我打算开发一个 Chrome 插件,那我就把我想要的风格、规则提前定义好,之后在 prompt 中就不用每一次都特别强调了。
markdown
## 代码风格与结构
- 编写清晰、模块化的TypeScript代码,确保类型定义完整。
- 遵循函数式编程模式,避免使用类。
- 使用描述性变量名(如`isLoading`、`hasPermission`)。
## 架构与最佳实践
- 严格遵循Manifest V3规范。
- 使用现代构建工具(如Webpack或Vite)进行开发。
- 实施版本控制和变更管理。
## UI与用户体验
- 遵循Material Design设计指南。
- 实现响应式弹出窗口,提供清晰的用户反馈。
- 支持键盘导航和屏幕阅读器。
CursorRules 集合
当然了,大多数情况下你不需要自己一条条写规则,或者只需要稍微改改现有规则就可以了。
这里有两个 CursorRules 集合,上面有各式各样的规则,比如 TypeScript、React、Vue、Java 、Chrome API 等等,用的时候从上面拷贝下来就好了。
cursor.directory
一个网站,可以直接复制规则。

awesome-cursorrules
一个开源仓库,也是应有尽有。

还可以看看风筝往期文章
用这个方法,免费、无限期使用 SSL(HTTPS)证书,从此实现证书自由了