Cursor使用指南

构建索引

Cursor实际上一个内置了RAG的AI智能体,默认情况下首次加载项目会自动构建索引,日常开发过程中也会自动添加新增文件,但是如果临时要拉入其他项目的文件夹,需要手动点一次Resync Index重建索引。

Rules

Cursor的rules可以理解成如何描述智能体角色。例如前端开发者使用Cursor时,可以通过rules让Cursor定位成一名精通特定技术栈的前端专家,并按照你的给定的规则来回答和编写代码。

全局rules

全局rules或作用在每一次prompt,因此全局rules只能填入最通用的规则,比如"所有回答内容都要是中文","每一次思考都输出逻辑流程图"

Project rules

Project rules是针对项目自身的规则,添加project rules后会在项目的根目录创建.cursor/rules文件夹,每一条rules都会在rules文件夹内生成一份.mdc文件,文件内容是markdown。

规则文件中的auto Attach是基于globs路径规则,当引入的上下文和输出文件命中路径规则才是触发此rules。基于这一思路,用户在创建rules的时候,可以根据不用的文件类型定制不同的规则,这样有利于提高Prompt时的准确率。

rules建议用英文写,目前能力最强的claude 3.7模型对英文Rules识别精准度最高。rules文件可以通过@ 添加文件

目前网上有开源的rules范本:github.com/PatrickJS/a...

0.47更新内容

0.47将rules分为以下4种类型

  • Always: 全局rules,所有请求都会参与
  • Auto attached: 文件触发类rules,主要用于代码规范
  • Agent requested:智能体任务描述,主要内容包括智能体角色、工作内容、处理步骤、返回要求
  • Manual:手动rules,需要再对话框中手动引入才生效的规则。可以简单理解成临时任务需要的rules,比如特殊的语法糖,特殊的逻辑处理方式等

NotePads

NotePads是cursor 0.45添加的feature功能,未来有可能废弃,也有可能变成别的方案

NotePads主要用于增强上下文和整理长Prompt,编写方式和rules一致。因此可以理解为他是一份临时rules,NotePads同样可以通过@添加文件。 在对话框中,使用@ 添加到对话上下文,

使用场景

  • 当需要cursor生成复杂和逻辑链条较长的代码时,一般都需要通过多次prompt不断修正大模型的理解,但是会导致单次对话内容过多,容易让大模型产生幻觉,这个时候就可以把当前每一次修成的结果都先保存到NotePads。整理完成后新开对话框,引用notePads让大模型一次生成所有代码。
  • 日常需求开始,可以将Api文档和需求描述写成一份notePads,这样就可以让大模型生成业务代码的时候,根据nodepads的接口关系直接生成逻辑代码。

Tab

Tab操作是Cursor的一个亮点交互(尤其是Vim使用者!!太爽了!),开发过程中,按tab建使用代码建议,每一次tab后都会自动预测下一次可能需要tab的地方,再按一次tab就会跳转到预测的地方。

Agent/Ask

功能介绍

Agent模块主要用于多文件生成/修改的场景,需要尽可能提供清晰的prompt和足够的上下文,建议单个Agent对话窗口不要超过20次对话,20次以上容易出现幻觉,所以使用的时候需要先拆分好任务,不同的任务用不同的Agent窗口执行。

Ask模块主要用于方案咨询和问答解读,通常用于分析项目代码,生成业务流程图,优化项目文档和配合@docs快速查找官方内置文档内容和@web参考第三方网页,

  • 默认快捷键:ctrl/cmd + I
  • 拖拽文件/文件夹到对话框作为上下文
  • 可以复制图片,或者点击图片图标选择图片
  • 使用@添加上下文/文档/历史对话/notePads/git提交等
  • 使用/ 添加上下文便捷操作

    • Reset Context: 重置当前上下文文件
    • Disable iterate on Lints: enable/disable 自动修复Lint问题,如果代码的类型关系比较混乱,建议关闭
    • Add Open Files to Context: 将所有打开的文件添加到上下文
    • Add Active Files to Context: 将当前窗口活跃的文件添加到上下文
  • 使用# 添加文件,文件列表按照最新打开时间排序

  • 选中代码或终端信息,ctrl/cmd + L 添加到对话框

使用建议

Agent模式下,需要用户灵活运用NotePads、项目md文档和#Files引用来丰富prompt的上下文。遇到复杂的步骤,可以先使用chat模式整理长prompt到NotePads,整理完毕后新开窗口最对话框中引入Notepads,并要求大模型严格按照nodepads生成代码。

Agent模式下使用大模型时,多多少少会有自动总结prompt的行为,会出现生成代码过程中没按到你的要求,这里有3个解决方法

  1. 在agent中多次对话,让他逐步矫正问题
  2. 对于明确的规则和逻辑,在prompt中加上"严格按照"的话术,
  3. 如果添加"严格按照"的话术后还是出现幻觉和忽略,那就有可能是上下文内容过多,建议自行先拆开生成任务,分多次对话窗口实现。

行内对话框

选中代码后ctrl/cmd+k,注意这里建议选择gpt-4o-mini这个模型,代码块的修改90%的场景gpt-4o-mini都是胜任,出现修改结果不理想的情况下再切换claude模型。

因为cursor的收费模式是按高级模型调用次数收费的,因此行内对话框建议默认改成gpt-4o-mini,减少高级模型调用次数。

最佳实践

1、mermaid 流程图驱动开发

代码迭代的时候,可以让大模型分析完代码后输出mermaid流程图,开发基于流程图调整逻辑,再把修改后的流程图以prompt的方式给到大模型,让大模型按照流程图修改代码,修改过程准确度非常高。

例如:

  1. 我让大模型帮我分析某个vue文件的逻辑,并输出流程图。
  1. 得到流程图代码后,复制到mermaid.live,可以在网页上实时修改流程图逻辑。
  1. 将修改后的流程图代码写到notePads中,并详细描述流程图修改的分支需要实现什么逻辑
  1. 最后在对话框中引入nodepads,让Agent执行。

2、基于文档管理开发计划

明确需求后,工作开始前先梳理需求,对于工作量比较大的任务,最好将需求保存在md文件中或者NotePads,方便回溯和记录进度,记录进度可以让cursor将工作内容补充到需求md文件中。

以下是一个标准的开发流程:

流程图:

markdown 复制代码
flowchart TD
    A[1.整理项目需求文档] --> B[2.生成流程图代码]
    B --> C{3.审计流程合理性?}
    C --> |3a.合理| D[4.拆分需求任务]
    C --> |3b.不合理| E[修改流程] --> B
    D --> F[5.添加开发步骤/要求]
    F --> G[6.分解为多个NodePads/Agent]
    G --> H[7.Agent开发代码+生成逻辑流程图]
    H --> I{8.需要跨Agent修改?}
    I --> |8a.是| J[使用@Summarized Composers联合修改]
    J --> K[9.代码审计与测试]
    I --> |8b.否| K
    K --> L[10.生成迭代文档]
    L --> M(项目完成)

步骤描述:

  1. 整理项目需求文档

  2. 让cursor根据项目需求文档生成流程图代码

  3. 审计流程图代码是否合理

    1. 合理:执行步骤4
    2. 不合理:重新修改流程图,让cursor根据流程图优化需求文档(回到步骤2)
  4. 让cursor将项目需求拆分成多个任务,得到需求任务markdown文档。

  5. 在开发需求任务文档添加开发步骤、开发要求、业务逻辑说明

  6. 将每个任务分成多个NotePads,每个NodePads对应一个新窗口Agent。

  7. 每个Agent输出代码后都要再次输出详细逻辑流程图,用于代码审计

  8. 每个Agent都完成开发任务后,如果需要Agent和Agent间上下文关联,进行联合修改。

    a. 是:使用@Summarized Composers 让两个对话内容关联,执行高阶业务组合修改

    b. 否:到步骤9

  9. 审计代码、代码单元测试、功能验证,完成后git commoit

  10. 使用@git 选中本次需求开发commit,让cursor生成项目迭代文档。

3、模型选择场景和省钱技巧

Agent模式: claude 3.5 、 claude 3.7

Chat模式: claude 3.5 、 claude 3.7、gpt-4o-mini(配合@docs和@web使用)

行内模式:gpt-4o-mini

相关推荐
掘了4 分钟前
「2025 年终总结」在所有失去的人中,我最怀念我自己
前端·后端·年终总结
崔庆才丨静觅7 分钟前
实用免费的 Short URL 短链接 API 对接说明
前端
崔庆才丨静觅29 分钟前
5分钟快速搭建 AI 平台并用它赚钱!
前端
崔庆才丨静觅1 小时前
比官方便宜一半以上!Midjourney API 申请及使用
前端
Moment1 小时前
富文本编辑器在 AI 时代为什么这么受欢迎
前端·javascript·后端
崔庆才丨静觅1 小时前
刷屏全网的“nano-banana”API接入指南!0.1元/张量产高清创意图,开发者必藏
前端
剪刀石头布啊1 小时前
jwt介绍
前端
爱敲代码的小鱼1 小时前
AJAX(异步交互的技术来实现从服务端中获取数据):
前端·javascript·ajax
Cobyte2 小时前
AI全栈实战:使用 Python+LangChain+Vue3 构建一个 LLM 聊天应用
前端·后端·aigc
NEXT062 小时前
前端算法:从 O(n²) 到 O(n),列表转树的极致优化
前端·数据结构·算法