Cursor的傻瓜式教程

产品

基于开源编辑器 VS Code 迁出分支上构建的 Cursor,一款收费软件。

Premium 模型

GPT-4、GPT-4o 和 Claude 3.5 Sonnet 都被视为 premium 模型。每次请求 Claude 3.5 Haiku 被计为 1/3 次 premium 模型请求。

安装

安装之后,打开会有一个初始化选择弹框如下:

继续之后会让选择配置和扩展:

再之后会让选择数据偏好:

登录,新用户会有14天的免费使用期。登录完成之后,点击侧边栏,扩展进行汉化:

然后选择一个文件作为根目录,至此就准备好了一个 Cursor 的开发环境:

核心功能

Tab(代码自动补全与修改)

代码补全如下,在需要补全的地方直接按 Enter,然后使用 Tab:

切换

要打开或关闭此功能,请将鼠标悬停在应用程序右下角状态栏上的"Cursor Tab"图标上。

光标预测

Cursor 的光标可以通过预测,轻松推理出你下一个要编辑修改的点,然后就可以 tab、tab、tab:

Chat

可以向 AI 提出问题并得到解答,和 AI 聊天输入框类似:

Composer

与 Chat 类似,但是不同的是会根据结果,快速生成和修改现有代码,可以自定义接受、拒绝等操作:

针对代码块选中之后然后 Command+L 或者 Command+I,可以快速唤醒 Chat 或者 Composer 进行针对选区代码块的问答:

也可以 Command+K 打开一个嵌入式的 Composer 聊天框(建议还是使用侧边栏,因为侧边栏是有上下文记录的):

Models 选择

可以通过配置选择自己的模型,也可以自定义添加 model:

然后可以在 Chat、Composer 输入框的下方选择不同的模型,因为每个模型擅长的领域不一样,针对目前模型的评测,目前最出色的两个为 GPT-4oClaude-3.5-sonnet。GPT-4o 更适合综合领域的问答理解,Claude-3.5-sonnet 在代码生成领域会更优秀:

Composer 的 normal、agent 模式

normal 可以检索你的代码库和文档、正常的创建以及写入文件都是可以的。agent 除了创建一些文件、还可以帮你自动的提取相关的上下文、运行终端命令、按照你的语义去搜索代码、执行一些文件操作,支持一些更高级的操作,目前 agent 只支持 Claude 模型,normal 比 agent 速度会快很多:

基于项目

我们在打开那个文件夹,这个文件夹就会被认为是一个项目,Cursor 会自动采集项目中的代码。

@符号

不管我们是在 Chat 还是 Composer 中,只要我们在输入框中输入 @ 符号就能唤醒一个功能菜单:

在这里我们可以分别选择文件、文件夹、区块代码、文档、Git 等。

@Docs

使用文档生成某些东西:

配置文档:

注意这里如果在 URL 最后添加 /,Cursor 会索引这个链接下所有的子页面和子目录,否则只会索引这一个页面。如果是单个链接文档,也可以直接在输入框中输入 @+URL:

@Web

数据时效性,如果我们需要获取比较新的数据,或者想要搜索网络上的东西。相当于一个 AI 搜索引擎的能力:

@Git

可以选中某次提交,让 AI 告诉我们这次修改了哪些东西,或者选择多次提交,让 AI 比较这几次提交的差异:

@Notepad

主要有三个功能点:1、当临时笔记记录;2、充当项目相关的上下文记录;3、可以保存一些 AI 对话的历史记录。Chat 和 Composer 实际上不互通的,可以通过这个 Notepad 记录一些信息,就可以提供了一个他们上下文互通的桥梁:

@CodeBase

会采集我们项目重要的文件或者代码块,进行排序、推理,最后给出匹配的答复。其实就是做了四件事:1、扫描整个项目查到与指令相关的代码或者文件;2、根据查询的相关性对相关性进行一个排序;3、推理;4、生成:

当我们打开一个项目时,Cursor 会自动采集项目代码,也可以主动去再次采集。其原理就是把本地的代码库分割成一小块一小块的语言数据,然后发送到 Cursor 的服务器上,Cursor 会使用 OpenAI 的 Embedding API 进行嵌入,然后把这些文件的相对路径也一起存到远程的矢量数据库中,这样就可以使用索引来提高答复的质量:

如何避免把项目中的一些隐私信息上传:

  1. Cursor 是尊重 .gitignore 的,Cursor 在索引前会检查你的项目根目录,那 .gitignore 文件中声明的文件或者是目录都不会被索引。
  2. 项目根目录创建一个 .cursorignore 文件来声明一些所引要忽略的文件或者是目录。

创建 .cursorignore 文件,建议尽量减少被索引的文件,例如:日志文件、环境变量、构建输出的文件、缓存文件、第三方配置文件等这些对于 AI 代码生成没有太多帮助。(这里可以在 Composer 中让 AI 帮你检索整个项目,去生成一个 .cursorignore 文件):

.cursorrules 文件

文件中可以配置一些针对这个项目的 Cursor 规则,之后每次和 AI 交流的时候,AI 会参考这些规则:

技巧

  1. 如何让 AI 按照我们的心意生成并修改代码。
  2. Composer 可以一次帮我们修改很多文件的代码,我们怎么确认这些修改是我们想要的。
  3. 在经过几轮 AI 问答之后,如何回滚到之前的代码。

预防

如何避免在与 AI 对话时,AI 给出的答案驴唇不对马嘴,我们根据以下四个点进行规避这些问题:

  1. 让 AI 复述需求指令,然后再进行答复,这样我们就能知道 AI 是否真正的理解了我们需求指令:

  2. 明确需求指令范围:

  3. 需求拆解:可以把需求一条一条的排序出来。

  4. 把 AI 当成小孩子。

检测

Composer 可以一次帮我们修改很多文件的代码,他会让我们自己判断是否需要应用,接受或者拒绝,当然也可以先保存,查看效果之后再决定拒绝或者接受:

回滚

当经过多轮 Composer 问答之后,修改了大量代码,这个时候想把代码恢复到之前的一个问答的版本。Cursor 会给每次的 Composer 问答都做一个 checkpoint 的标记,只需要点击想要恢复的那次 Composer 问答上部的 restore 即可:

基于项目

  1. 让 Cursor AI 检索整个项目,生成 .cursorignore 文件,编辑 .cursorignore 文件,设置自定义的忽略规则,之后再主动去 Resync Index。

  2. 把项目的在线文档、接口文档、技术文档全部录入到 Docs 中备用。

  3. 项目根目录中新建一个 .cursorrules 文件,并设置项目规则。

  4. 相对复杂的需求,先使用 Chat 沟通需求,然后创建 Notepads 记录,Composer 中 @Notepads 生成代码。

  5. BUG 解决,可以通过使用 @Git 选中有 Bug 的那次提交,和上次的提交,加上一些描述,让 Cursor AI 检索差异更精准的获得一个 BUG 产生的原因和解决思路。

  6. Notepads 需要及时的进行备份,因为它存在于 Cursor 的缓存中,换个设备之后就没了。

  7. Git 提交,给暂存的文件一键生成更有意义的信息(会结合当前的更改和以前的提交,生成符合上下文的信息和规范):

隐私

模式

启用隐私模式后,您的代码将不会被我们或任何第三方存储。否则,Cursor 可能会收集提示、代码片段和遥测数据以改善 Cursor:

索引

您选择索引您的代码库,Cursor 将会将您的代码库分成小块上传到我们的服务器以计算嵌入,但所有明文代码在请求结束后将不复存在。

代码库

关于您的代码库的嵌入和元数据(哈希、混淆文件名)将存储在我们的数据库中,但您的代码不会被存储。

白嫖

因为新账号有 14 天的免费使用政策,策略就是每 14 天新注册一个账号,Cursor 是使用邮箱进行注册的。

  • 使用临时邮箱,例如使用 tempmail.cn 生成,无限注册账号。
  • 使用无限制邮箱,例如使用 2925.com 生成,无限注册账号。
  • 使用自己的账号邮箱,注销并重新注册。
  • 规避指纹机制(同一台设备,使用太多免费账号登录太多次,会被限制)。

通过脚本文件去更新 Cursor 配置文件中的用户指纹,这个脚本可以让 Cursor 帮你生成,用魔法打败魔法 😄😄😄(重置用户指纹

其他问题

  • 由于 Cursor 新版本限制,45 版本以上 Cursor 的脚本重置将不再支持。45 版本下载链接
  • 46 版本更新后,切换模式在聊天框下方,ask 是原来的 chat,composer agent 变成了默认,edit 是原来 composer normal。ask 问,edit 编辑,agent 代理,这次更新的名字很贴切。
  • 45+ 版本才会支持 MCP。
  • 45+ 版本才会支持同一个项目设置多个 Rules 规则。

参考文献

相关推荐
mortimer2 小时前
视频翻译中的最后一公里:口型匹配为何如此难
openai·音视频开发·视频编码
安思派Anspire2 小时前
构建一个自主深度思考的RAG管道以解决复杂查询--通过网络搜索扩充知识(6)
aigc·openai·agent
新智元7 小时前
他发明了价值万亿的 AGI,如今穷困潦倒
人工智能·openai
机器之心7 小时前
AI太空竞赛?英伟达H100刚上天,谷歌Project Suncatcher也要将TPU送上天
人工智能·openai
Mintopia7 小时前
想摸鱼背单词?我用 Cursor 一个小时开发了一个 Electron 应用
前端·javascript·cursor
新智元7 小时前
全球首个「导航大脑」上线!一句话让机器人自己找路回家
人工智能·openai
机器之心1 天前
英伟达发射了首个太空AI服务器,H100已上天
人工智能·openai
机器之心1 天前
字节Seed团队发布循环语言模型Ouro,在预训练阶段直接「思考」,Bengio组参与
人工智能·openai
新智元1 天前
AI 教父 Hinton 末日警告!你必须失业,AI 万亿泡沫豪赌才能「赢」
人工智能·openai
新智元1 天前
CUDA 再见了!寒武纪亮出软件全家桶
人工智能·openai