1 简介

  • Cursor是一款功能强大的AI优先代码编辑器,可增强我们的开发工作流程。主要提供三个核心方向,这些功能可以无缝地协同工作,从而提高工作效率。

2 安装和注册

  • 进入Cursor官网下载,可以选择最新版本系统级的包进行下载,下载后直接安装即可。

    • 在这里插入图片描述
  • 第一次使用先进行注册(可能需要科学上网)。

    • 在这里插入图片描述
  • 可以直接使用github账号授权登录。

    • 在这里插入图片描述
  • 输入github账号点击登录。

    • 在这里插入图片描述
  • 点击授权

    • 在这里插入图片描述
  • 接下来还需要验证手机号。

    • 在这里插入图片描述
  • 登录成功了。

    • 在这里插入图片描述

3 配置

3.1 进入主窗口

  • 登录成功后,打开Cursor,会让选择职业角色,包含以下几种。

    • 在这里插入图片描述
  • 软件工程师就选择Software engineer。

  • 编码就选择Coding

    • 在这里插入图片描述
  • 如何开始,先跳过

    • 在这里插入图片描述
  • 进入到了Cursor的主页

    • 请添加图片描述
  • 如果要进行代码开发,打开右上角的IDE工具。

    • 请添加图片描述
  • 打开自己的工程目录,就可以开始编码了。

    • 在这里插入图片描述
  • 在扩展功能中搜索Chinese,安装汉化插件。

    • 在这里插入图片描述
  • 然后 ctrl + shift + p打开命令面板,搜索 Configure Display Language。

    • 在这里插入图片描述
  • 切换成中文,重启Cursor即可。

    • 在这里插入图片描述

3.2 Cursor配置

  • 打开右上角的设置图标

    • 在这里插入图片描述
  • 可以看到有以下配置项

    • 请添加图片描述
  • General:常规配置。

  • VS Coding Setting:编辑器配置。

    • 如果是用户配置,则是全局配置,如果是工作区配置,则是当前工程的配置。
    • 在这里插入图片描述
  • Plan & Usage:当前套餐和使用额度。

    • 请添加图片描述
  • Models:模型。当前支持的模型。

    • 请添加图片描述

4 智能聊天模式

  • 按Ctrl + L可以打开或关闭智能聊天模式对话框
    • 在这里插入图片描述
  • 使用的模型,可以自己指定,也可以让Cursor自己选择。一般打开Auto开关就可以。
    • 在这里插入图片描述

4.1 Agent模式

  • 允许Cursor学习和理解我们的项目代码,可以直接进行项目代码的更改。
  • 接下来就演示下Agent模式的强大之处。直接打开一个空的文件夹。
    • 在这里插入图片描述
  • 看下最终结果。不仅自动生成了项目文件,并且调用本地的编译环境把程序编译运行了起来。
    • 在这里插入图片描述
  • 游戏完成度还是非常高的。
    • 在这里插入图片描述
  • 编码完成后,默认自动保存所有文件。如果想自己审阅文件,可以打开Inline Diffs这个开关。
    • 在这里插入图片描述
  • 这样就可以自己审阅选择要保留的文件。
    • 在这里插入图片描述

4.2 Ask模式

  • 对话模式,也可以学习和理解项目代码,但不会直接修改项目源代码。
  • 还是基于上面实现的游戏,改为Ask模式看看效果
    • 在这里插入图片描述
  • 可以看到,Ask模式不能修改项目代码,但是可以读懂项目,提出修改意见,我们需要自己手动修改。
    • 在这里插入图片描述

4.3 Plan模式

  • 先调研、理清方案,再产出一份可确认的计划。
  • 同样打开一个空文件夹,切换到Plan模式,让它实现一个工程,看看有什么不同。
    • 在这里插入图片描述
  • 可以看到,它给出了几个方案,让我们进行选择。我们选择方案1。
  • 最终项目创建完成,可以看到也是生成了工程文件,并且还有一份类似策划书的文档。
    • 在这里插入图片描述
  • 但是没有自动运行程序,需要手动打开Qt Create运行下。
    • 在这里插入图片描述

4.4 Multitask模式

  • 把实现/调查等重活交给后台异步代理,前台更适合继续发新问题或并行推进,而不必卡在一次长任务上。
  • 再打开一个空文件夹,切换到Multitask模式。
    • 在这里插入图片描述
  • 可以看到,任务在后台执行,我们可以继续发送命令,不需要等待上一个命令执行完成。
    • 在这里插入图片描述
  • 项目后台构建完成,会进行通知。
    • 在这里插入图片描述

4.5 Debug模式

  • 不允许“猜着修”。必须先提出假设、加运行时日志、让你复现,用日志证明根因后才改;修完还要再跑一轮对比日志验证。

  • 让它查找下之前实现的魂斗罗游戏中的Bug。

    • 在这里插入图片描述
  • 他说已经加了日志,让我们运行一次,根据日志进行分析。

    • 在这里插入图片描述
  • 我们运行下游戏,可以看到确实有日志记录

    • 在这里插入图片描述
  • 告诉它让它分析下

    • 在这里插入图片描述
  • 它自己分析了日志,并做了bug修复。

    • 在这里插入图片描述

4.6 模式对比

  • 接下来就对几种模式进行下比较。
  • AgentAskPlanMultitaskDebug
    改代码不会确认前一般不会会(常后台做)会,但先要证据
    跑命令基本不会确认前一般不会会(加日志、复现、验证)
    主要产出直接完成改动解释/指引待确认方案后台推进任务带运行证据的根因 + 修复
    工作方式前台一条龙只读问答先计划再动手异步并行干活先假设 → 埋点 → 复现 → 看日志 → 再修
  • Agent 模式(默认实现模式)
    • 读代码、改文件、跑命令、编译、调试,把任务做完。你基本不用自己改文件。
  • Ask 模式(只读问答)
    • 查代码、解释原理、告诉你改哪几行。不能改文件、不能跑会改系统的命令。
    • 只给答案和指引,真正改代码要自己动手,或切回 Agent。
  • Plan 模式
    • 先调研、理清方案,再产出一份可确认的计划。在你确认计划之前,一般不改代码、不执行实现。
  • Multitask模式
    • 把实现/调查等重活交给后台异步代理,前台更适合继续发新问题或并行推进,而不必卡在一次长任务上。
  • Debug模式
    • 不允许“猜着修”。必须先提出假设、加运行时日志、让你复现,用日志证明根因后才改;修完还要再跑一轮对比日志验证。

5 内联智能

  • 在某个文件的指定位置,按住Ctrl + K 会打开一个对话框,可以在对话框中让它实现某个功能。
    • 在这里插入图片描述
  • 编码完成
    • 在这里插入图片描述

6 精准上下文指定

6.1 Codebase Indexing代码库索引

  • 当前工程下有这么多文件夹和文件
    • 在这里插入图片描述
  • 这是Cursor列举出来的文件
    • 在这里插入图片描述
  • 但实际在分析工程时,有的文件或文件夹并不需要分析,比如build目录,可以点击下图的Edit按钮来设置忽悠的文件或文件夹
    • 在这里插入图片描述
  • 让Cursor忽略build目录和readme.txt文件。这样在分析工程时可以提高分析效率。
    • 在这里插入图片描述

6.2 Rules规则

  • Rules是给Cursor AI功能生成结果添加规则和限制,让AI生成的代码贴合团队规则,减少人工二次修改成本。主要作用如下

    • 约束代码风格。
    • 限定技术选型。
    • 提前指定核心参数。
  • Rules规则的配置方案有两种

    • 项目规则:仅对当前项目生效。
    • 用户规则:全局规则,对所有项目生效。
  • 在当前工程下创建.cursor\rules\rules.mdc,文件名可以随便起。然后写入规则。

    • 在这里插入图片描述
  • 然后进行编码

    • 在这里插入图片描述
  • 看下实现结果,是按我们指定的规则实现的。

    • 在这里插入图片描述
  • 或者选择Customize

    • 在这里插入图片描述
  • 选择当前工程,选择Rules,自动创建规则文件再去写。

    • 在这里插入图片描述
  • mdc语法了解。

    • mdc(Markdown with Cursor)语法是专门为编写项目规则设计的轻量级格式,它结合了Markdown的可读性和元数据配置能力。
    • mdc文件组成部分
      • 前置元数据
        • ---包裹的YAML格式配置
        • 定义规则的基本属性(如作用范围、优先级)
      • 规则内容
        • 用Markdown语法写具体规则
    • 前置元数据
      •   ---
          # 描述规则用途
          description: "C++编码规则"
          # 指定规则生效的范围
          globs: "src/*"
          # 优先级(数值越大越优先)
          priority: 1000
          
          # 自定义字段
          author: "技术团队"
        
    • 规则内容
      •   # 一、代码风格
          1. 类名用大驼峰
          	- 示例:Student
          2. 方法名用小驼峰
          
          # 二、技术选型
          1. 使用libcurl库
          
          # 安全规范
          1. 禁止使用`strcpy`不安全接口
        

6.3 @符号

  • 在Cursor中使用@符号在聊天中引用代码、文件、文档和其它上下文的指南,直接更具体的指定上下文环境。
  • @File/Folders:引用项目中的特定文件或文件夹。
    • 直接引用项目中的某个文件来进行分析
    • 在这里插入图片描述
  • @Browser:直接引用某个网页,让它总结网页的内容。
    • 在这里插入图片描述
Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐