如何学习使用cursor?

如何学习使用cursor?如何学习使用 cursor Cursor 首席设计师 Ryo Lu 上周发布了一条内容 关于如何正确使用 Cursor 一共 12 条方法 可能部分小伙伴已经看过了 不过没关系 今天这篇文章 除了分享 Ryo Lu 提到的这 12 条方法 还会基于我的 Cursor 实践对这些方法进行解读 解读内容会用灰字进行标注 这些方法同样适用于 Windsurf Trae 的开发实践 正确使用 Cursor

大家好,我是讯享网,很高兴认识大家。这里提供最前沿的Ai技术和互联网信息。



如何学习使用cursor?

Cursor首席设计师 Ryo Lu 上周发布了一条内容,关于如何正确使用Cursor,一共 12 条方法,可能部分小伙伴已经看过了。

不过没关系。今天这篇文章,除了分享 Ryo Lu 提到的这 12 条方法,还会基于我的Cursor实践对这些方法进行解读(解读内容会用灰字进行标注),这些方法同样适用于Windsurf、Trae的开发实践。


正确使用 Cursor = 快速、干净的代码。

使用错误 Cursor = 你将整个星期都在清理“AI意大利面”(即乱糟糟的代码)。

这就是正确使用它的方法:

1. 在一开始就设定 5-10 条清晰的项目规则,让 Cursor 了解你的结构和约束。尝试为现有代码库执行/generate rules。

设定项目规则很重要,我之前对比过设定了项目规则,以及没有设定项目规则去推进同一个项目,后者会明显更吃力,因为代码生成更不可控。

为什么是 5-10 条项目规则?如果大家之前看过这篇文章 Cursor Rules在实际开发中的三种层级&实际应用(附20个常用Rules),应该还记得:

随着项目壮大,我们已经没法用一条通用的.cursorrules来跑完整个项目,大家想要更精准地控制代码生成,就需要更细致的项目规则。在Cursor实际开发中,项目规则可以分为三个层级,即通用规则、编程语言规则框架规则。根据项目类型、规模的不同,需要的项目规则数量也会有所区别。

如果是全新的项目,建议先从通用规则(对应rule type的Always)开始;

也可以在完成项目脚手架后,在 Agent 模式输入中执行/generate rules。

注:项目脚手架提供项目初始结构基础配置(如目录、工具链、依赖等),它的核心是“加速启动”

2. 在提示中要具体。详细说明技术栈、行为和约束,就像一个迷你规范。

先给大家看三个提示词案例:




案例1:“web版”限定了这个贪吃蛇游戏的技术栈范围,其中“尽量不引入外部依赖”也降低了依赖的安装,基本就是一个最简单的HTML+CSS+JavaScript的技术栈组合

请帮我开发一个web版贪吃蛇游戏,尽量不引入外部依赖

案例2:“Chrome浏览器插件”类别限定了技术栈范围,功能描述则做了进一步的约束

请帮我开发一个“图片转png”Chrome浏览器插件,这个插件的功能是: 1、开启插件后,用户在浏览器图片鼠标右键后会出现插件入口“下载为png”,点击就可以把选中的任意格式的图片下载为png格式的图片; 2、支持下载为png的图片格式包括JPG、JPEG、PNG、BMP、webp、svg; 3、使用OffscreenCanvas避免阻塞主线程; 4、通过Blob URL减少内存占用。

案例3:这是指定特定 Page 进行 UI 优化,同时 UI 优化方向进行了约束

请优化 LoginPage 的 UI,使其符合现代简约风格, 具体要求: 1、布局:登录表单居中,使用卡片式设计(圆角 8px,轻微阴影) 2、配色:主色调深蓝 (#1E3A8A),背景浅灰(#F9FAFB) 3、字体:标题用 Poppins 加粗,正文用 Inter 常规 4、交互:输入框聚焦时边框变蓝,按钮悬停时轻微变深 5、参考风格:类似 Notion 的登录页面,但更简洁一些。 整体功能架构保持不变

大家不难发现,每一轮的提示词对话,其实都是在做一次小的规范,是在User Rules、.cursorrules、Project Rules之下的更细颗粒度的一个规范。

之前分享过10个场景的提示词模板,包括:代码生成、功能拓展、UI调整、代码解释、项目重构,代码调试、代码修复、测试用例、代码翻译、API调用,感兴趣的小伙伴可以点击查看>>>和Cursor协作450+小时后,我整理了这10个常见场景的Cursor提示词模板

但如果是做功能相较复杂的中大型项目,那么一次性搞定基本是不可能的。之前看过这么一个案例,就是团队用AI IDE花了3-4个小时进行开发,结果后面程序完全没法运行。

这种案例并不少见,他们的问题都很相似,就是前期没有做好项目和结构拆解,中期任由AI IDE自己去跑代码也不做太多调试和审查,到了后期代码就成了一团改不动也运行不了的 。

这个问题解决起来的核心就是功能模块化,然后按逐个模块解决。之前在知识星球其实也有提到:

而关于前期项目和代码结构拆解,之前其实也有一期主题分享,感兴趣的可以移步查看>>>Cursor项目后期维护全是坑?前期一定要做好项目和代码结构拆解

4. 先写测试,锁定它们,然后生成代码,直到所有测试通过。

由于 Agent 可能会修改测试文件去让测试通过,所以在测试前,建议使用 .cursorignore 功能去防止 Agent 修改测试文件。




.cursorignore 可以在【Cursor Settings-Features-Hierachical Cursor Ignore】中开启,这个功能主要用于控制 .cursorignore 文件的作用范围。

注:类似.gitignore,用于指定哪些文件和目录应该被 Cursor 忽略(也就不会被Cursor的智能功能如代码补全、文件搜索等处理)。

当启用【Hierachical Cursor Ignore】选项后,一个目录中的 .cursorignore 文件的规则将会应用到其所有子目录,大家可以在项目根目录或任何子目录创建 .cursorignore 文件,然后在文件中列出想要忽略的文件模式,比如:

node_modules/ *.log .DS_Store build/ dist/

对于大型项目,建议启用此选项以便更好地管理忽略规则,可以在不同层级的目录放置 .cursorignore 文件来实现更细粒度的控制。

注意:如果修改了此设置,需要重启 Cursor 才能生效。

5. 总是审查 AI 输出,并对任何错误的内容进行硬修复,然后告诉 Cursor 将其作为示例使用。

Cursor 每次给出的代码并不完全都是正确的或符合要求的,所以需要我们进行人工审查。

举个最简单的例子,比如你所在企业对代码注释有一定规范,但Cursor每次生成都和这种企业规范有一定差距,这时候你就需要自己按照企业代码注释规范进行调整。

当然你不用每次都手动调整,最方便的方法就是将这种规范作为示例喂给Cursor,这样Cursor就能学会这种示例并应用到下次编程任务中。

6. 使用@file、@folder、@git,将 Cursor 的关注点定位到代码库的正确部分。

这个功能一般会搭配第三点“按模块推进开发”使用,因为随着项目代码越来越多,我们不可能每次都遍历项目文件去做内容调整,一方面受上下文限制,另一方面遍历代码往往会导致Cursor改动一些我们并不希望它改动的代码。

所以要善用@file、@folder、@git 这些上下文功能,它们相当于一个定位工具,实现指哪打哪。

7. 将设计文档和检查清单保存在 .cursor/ 中,以便 Agent 能够全面了解下一步要做什么。

.cursor/ 目录一般包含项目规则(即第一点提到的rules)以及的代码索引(比如这里提到设计文档、检查清单等),都是用于加速 AI 的代码分析和上下文检索。

如果从实现目的看,设计文档和检查清单都是为了让 Agent 更全面了解当前项目进度和下一步计划,那文件不一定要保存在 .cursor/ 目录下。

在此之前,我们的一般实践可能记录在README.md文件中,比如:

./ └── docs/

├── RAEDME-design.md ├── RAEDME-product.md

每次调整都及时更新这些README.md文件即可,和放在 .cursor/ 目录下实现的效果都是一样的。

8. 如果代码错误,就自己写。Cursor 从编辑中学习比从解释中学习更快。

我个人认为这一点和第五点有点类似。




有时候Cursor会在某个问题上反复打转,这时候建议自己动手去做一些代码调整,你的编码内容会成为Cursor自我学习的上下文(相当于成为一种示例),这样Cursor会更清楚自己接下来要做什么。

不过这一点对于零编程基础的用户来说,会比较难。

所以我之前在文章评论区和知识星球都反复提到一个观点,你想在AI编程上走得远,最好懂一点代码知识。你不需要先掌握某种编程语言再入门AI编程,而是在学习AI编程的过程中,在一个个具体的开发场景中,去补齐自己的编程知识。

之前有小报童用户问我,

“提了个问题后AI输出一半时发现思路跑歪了,这时候要不要stop并继续追加对话?还是不用stop直接进行新的提问?还是stop并重新编辑这个问题进行提问?”

我当时的回答是,“可以继续让它跑下去,根据它的回答再二次追问,调整。”

在我看来,我们和Cursor(或任何一个AI)的每一次对话其实都是有用的,无论这次对话 Cursor 给到的回答是否满意。

满意固然很好,不满意的话至少我们知道自己不满意的点在哪,这样下次对话就有了调整的方向。所有的聊天历史,都可以成为我们优化提示词的上下文。

10. 有意选择模型。Gemini 用于精确,Claude 用于广度。

我之前分享过一篇文章【经验分享】你在AI编程中可能会犯的9个错误,其中有一个常见使用误区,就是用 1 个 AI 模型解决所有事情

与之相对的,正确的使用方法,应该是根据不同场景使用不同的模型。当然,每个人的编码体验可能有所差别:

在@Cj Z看来:在Cursor/Windsurf:

  • 使用 Claude sonnet 3.5 进行编码(是的,对于执行代码来说,它比 3.7 更好。)
  • 使用 GPT o1/o3-mini-high 调试复杂错误。
  • 使用 Gemini Flash 2.0 扫描整个代码库并更新文档。

在@Ryo Lu看来:模型是独一无二的,就像人类一样,在 Cursor 中感受它们:

  • ‍ Gemini 2.5:高级软件工程师 1,需要推动
  • ‍ Claude 3.7:过度思考者,热衷于使用工具,需要驯服
  • ‍ Claude 3.5:全能高手,依然如此
  • ‍ GPT-4.1 / o3:开始意识到编程不仅仅是关于基准测试

我之前也在知识星球分享过类似的观点,Claude 3.7 thinking适合做规划,Claude 3.7因为喜欢“画蛇添足”所以适合脑补**实践的场景,Claude 3.5能比较好遵循指令。

至于Gemini 2.5,它现在是我用Claude解决不了难题时一定会去使用的模型,一个被大家低估的编程模型。

11. 在新的或不熟悉的技术栈中,粘贴文档链接。让 Cursor 逐行解释所有错误和修复。

要是放在以前,对于新的或不熟悉的技术栈,粘贴文档链接确实是个不错的方法,它其实就是使用@Web 的联网功能,去读取相应的文档链接。

怎么获取这些最新的文档链接呢?可以考虑大家可以考虑使用 Context7。

context7.com/

你可以在context7上获取最新文档链接,然后粘贴到Cursor进行中代码修复。

当然,你也可以使用 Context7 MCP,让Cursor直接调用最新的文档,进而降低幻觉。

github.com/upstash/cont

它的使用方法也很简单,就是在成功安装 Context7 MCP后,每次在对话中后加入 “使用 context7”(或类似的表达,如“使用 context7 获取文档”)即可:

新的 Next.js after() 函数是如何工作的?使用 context7

12. 让大型项目整夜索引,并限制上下文范围以保持性能敏捷。

Cursor有个 Codebase Indexing(代码库索引)功能。

索引是一个耗时且资源密集的过程,在处理大型项目时(如包含大量文件、数据或内容的系统)可能需要数小时甚至更久。在夜间运行索引任务,是因为夜间系统负载较低,用户活动较少,计算资源更充足,可以避免影响白天的工作效率。

在【Codebase Indexing】这里,是可以设置 Ignore files 的,这样 Cursor 在索引项目代码时就会忽略这些问题,这就是前面提到的通过限制上下文范围,减少计算资源的消耗,进而降低内存和 CPU 的使用,从而提高索引或查询的速度。

Ryo Lu 最后提到,“结构和控制是胜利之道(目前如此)。将 Cursor 代理视为一位强大的初级员工——如果你指明方向,它能够快速走得很远。”

Cursor 12 种正确用法的介绍和实践解读就到这里了,希望对大家有启发。

大家好,我是专注AI编程的杰一。

想必大家在使用Cursor的时候,都会遇到AI乱改代码的情况。和Cursor对线了十几条消息,改来改去也还是不满意,生成的代码还没有手写的好。

这其实是因为你还没掌握一项关键功能 —— Cursor Rules

这篇文章将带你从0开始了解Cursor Rules,并提供多个实战场景和**实践,读完后你将学会:

  • 如何配置规则来让Cursor更好的生成代码
  • 如何让它写出符合你风格和结构的代码
  • 如何将项目规范自动化,减少团队沟通成本

Cursor Rules,中文翻译过来是 Cursor 规则。意思很好理解,就是给Cursor制定一系列规则,约束AI生成的代码。

当一条规则被触发后,规则中的内容会被附加到提示词中,为 AI 提供参考,无论是在自动补全、代码生成、重构还是错误修复时都能遵循这些规范。

首先打开Cursor,点击File - Preferences - Cursor Settings 进入Cursor设置页面,然后点击 Rules就能看到规则页面了

在 Cursor 当中,支持两种级别的规则:

  • 全局规则(User Rules):针对所有项目通用的规则
  • 项目规则(Project Rules):存放于项目目录下的 .cursor/rules 中,只用于约束当前项目。

当我们点击 Add New Rule后,先输入规则的名称,比如命名为:vue-rules,约束AI在编写Vue项目的规范。也可以通过快捷键 Cmd + Shift + P ,输入 New Cursor Rule 来快速打开下面的对话框。

添加成功后,在左边的资源管理器中能看到.cursor\rules目录下多了个 vue-rules.mdc,我们编写的规则就存放在这个文件里面。右侧的编辑区也会自动打开这个文件,可以通过图形化的方式进行编辑。

Cursor 支持四种规则类型:

  • Always:始终应用规则
  • Auto Attached:当匹配 globs 模式的文件被引用时自动附加规则
  • Agent Requested:根据 AI 代理的判断决定是否应用规则,需要提供规则说明
  • Manual:仅在提示中显式使用 @规则名 时附加规则。

简而言之,如果你想手动调用规则,用 Manual;想自动触发用 Auto Attached;想始终生效用 Always;想让 AI 自己决定是否用,就用 Agent Requested

此外,在规则文件中,也可以使用@来添加文件,文件中的内容会作为额外上下文添加到规则文件中。

那 Cursor Rules 到底能做什么?其实场景非常丰富,比如你想让它:

  • 自动补全一段你懒得写的重复代码
  • 根据你定下的模板来生成组件结构
  • 重构一堆你不想手动改的 legacy code

这些通过Cursor Rules都能搞定。下面给出一些示例规则,说明它们的用途:

  • 整体代码风格约束: 定义通用编码规范,如使用 TypeScript、遵循《代码整洁之道》、优先使用 async/await、完善错误处理等。例如:
- 所有新代码使用 TypeScript

  • 遵循《代码整洁之道》
  • 优先使用 async/await 而不是回调
  • 编写完善的错误处理
    • 特定文件规范: 针对具体项目设定规范。例如在一个 React 项目中,可添加如下规则:
     # 文件模式: *.tsx, *.ts

React 规范

  • 使用函数组件
  • 实现完整的 prop 类型
  • 遵循 React **实践

样式

  • 使用 Tailwind CSS
  • 遵循团队样式指南

@file ../tsconfig.json @file ../tailwind.config.js

该规则指定了作用于 .tsx/.ts 文件的项目规范(使用函数组件、类型检查、Tailwind 样式等),并通过 @file 引用了配置文件,向 AI 提供了项目的附加上下文。


  • 模板和样板: 可以定义代码模板规则来自动生成或检查特定结构。例如,为 Express 服务定义模板规则:
* 使用此模板创建新的 Express 服务:

  • 遵循 RESTful 原则
  • 包含错误处理中间件
  • 设置适当的日志记录 @express-service-template.ts

    当你在项目中创建新服务时,AI 会参考此规则提示,以生成符合规范的样板代码。同理,可为 React 组件定义规则:

     * React 组件应遵循如下结构:
  • Props 接口放在文件顶部
  • 组件作为命名导出
  • 将样式放在文件底部 @component-template.tsx

    这样 AI 在生成新组件时会保持统一的布局。

    • 错误修复与重构: 有开发者分享了用于修复错误的规则,例如创建一个名为 refresh.md 的规则,在遇到复杂错误时提示 AI 重新扫描全部相关文件并彻底修复。类似地,可以为重构需求定义规则,让 AI 按指定模式重写代码。使用规则可以让 AI 更智能地应对错误和重构场景,而不仅仅局限于当前文件。

    除了Project Rules,你还可以添加User Rules,它们适用于所有项目,并始终包含在你的模型上下文中。你可以用它们来:

    • 设置回复的语言或语气
    • 添加个人风格偏好

    比如:请用简洁的风格回复,避免不必要的重复或赘述。

    总的讲来,Cursor 规则可以为各种需求定制指导,无论是创建新功能、重构现有代码还是修复缺陷,都能通过明确的规则让AI生成更精准的代码。

    你可以在 .cursor/rules 目录嵌套地组织规则。例如:

    project/ .cursor/rules/ # Project-wide rules backend/ server/ .cursor/rules/ # Backend-specific rules frontend/ .cursor/rules/ # Frontend-specific rules 

    嵌套规则的特点:

    • 当引用其目录中的文件时会自动附加
    • 仍可在上下文选择器和代理可访问的规则列表中使用
    • 非常适合将领域特定规则组织得更靠近相关代码

    这在单一代码库或具有不同组件且需要特定指导的项目中尤为有用。

    你可以在对话中直接使用 /Generate Cursor Rules 命令来生成规则。

    Cursor会自动阅读代码,总结代码规范、项目需求,然后将它总结成Rules。这对于已有的项目非常有用,可以让AI生成的代码和现有项目风格更统一。

    Cursor会自动创建mdc文件,并把归责内容填写进去

    目前版本的Cursor将规则存放在多个不同路径的mdc文件中,并根据匹配规则选择性使用。但在早期版本的Cursor里,全部规则都存放在项目根目录下的 .cursorrules 文件,会附加到所有对话中。

    根据官网文档,项目根目录下的 .cursorrules 文件仍然被支持,但将会被废弃。官方也建议迁移到mdc格式,以获得更好的控制、灵活性和可见性。

    要充分发挥 Cursor 规则的效果,需要编写简洁、明确的规则并在 Prompt 中正确调用。以下是一些实践建议:

    • 规则简洁具体: 保持规则简洁,控制在 500 行以内是一个不错的目标
    • 拆分复杂概念: 将复杂的概念拆分为多个可组合的小规则
    • 使用示例与代码片段: 在有帮助的情况下提供具体示例或引用的文件
    • 在提示中引用规则: 当需要时,可以在聊天提示中使用 @规则名 来手动应用特定规则。
    • 尽可能清晰: 避免模糊的指导。编写规则的方式应像写一份清晰的内部文档
    • 及时更新: 当你发现自己在对话中重复强调某个事情时,可以将其编写成一条规则
    • 团队协作: 团队内共享同一份规则,定期与团队讨论和更新,确保它们与当前代码实践保持一致。

    通过以上实践,将规则编写与清晰的提示指令结合使用,Cursor AI 就能更智能地理解上下文和需求,从而产生高质量的代码结果。

    为什么我的规则没有被应用?

    检查规则类型。对于“Agent Requested”(代理请求)规则,确保已定义描述。对于“Auto Attached”(自动附加)规则,确保文件匹配模式与被引用的文件匹配。

    规则可以引用其他规则或文件吗?

    可以。你可以使用 @filename.ts 将文件包含到规则的上下文中。

    我可以从聊天中创建规则吗?

    可以。请让 AI “把这段内容变成规则” 或 “根据这个提示创建一个可复用的规则”。

    规则会影响 Cursor Tab 或其他 AI 功能吗?

    不会。规则仅应用于代理(Agent)和 Cmd-K AI 模型。

    通过 Cursor 规则能够自动化重复任务、统一代码风格、提前捕获常见错误并加速新人上手。

    有些人觉得AI编程写的代码不好,其实就是因为没有定好规则。结合精心设计的规则与明确的 Prompt,开发者可以将 Cursor 打造成高效的协作编程助手,大幅提高开发效率和代码质量。

    Cursor 0.46 版本又双叒升级了!这次主打 Claude 3.7 + MCP 两大重磅更新。
    本来 0.44 用得挺顺手,但面对这么大的新功能,还是忍不住第一时间冲了!到底体验如何?继续往下看!



    claude3.7到底提升了多少?

小讯
上一篇 2026-04-01 20:09
下一篇 2026-04-01 20:07

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/227185.html