Cursor 是一款基于 VS Code 打造的 AI 编程增强编辑器,它集成了 GPT-4、Claude 等主流大模型,具备强大的 代码自动补全、对话生成、智能重构 等能力。无论你是初学者还是经验丰富的开发者,Cursor 都能成为你得力的”编程助手”。
Cursor 具备如下的特点:
- 对新手友好:不懂代码也能通过描述需求,让 AI 帮你构建基本的项目骨架,快速搭建 MVP。
- MVP:Minimun Viable Product(最小可行产品:demo)
- 对开发者高效:支持 Chat、Prompt 模板、函数解释、重构建议等,帮助你提升开发效率。
- 支持 AI 驱动协作开发:结合”结对编程”理念,Cursor 可以成为你随时在线、逻辑清晰、不知疲倦的搭档。
- Pair Programming(结对编程):关键的核心模块、新人培训、复杂的问题的 Debug
安装Cursor#
访问 Cursor 的官网,然后注册 Cursor 的账号。
点击 Sign in 按钮进行登录,可以选择从 Google 或者 Github 进行登录。
也可以选择 Sign up 进行注册,邮箱可以用国内邮箱,比如 QQ 邮箱,163 邮箱,126 邮箱等。
成功登录之后,会自动跳转到 Cursor 的个人设置页面,该页面会展示你的账号信息以及额度信息。新用户默认会有一些体验额度,可以免费使用 15 天(体验 Pro 版本)。

Cursor 版本更新还是比较频繁的,此前 Cursor 会自动升级到最新版本,但有时新版本不太稳定,会遇到一些问题,也有的用户更习惯使用旧版本的体验, Github 上有个开源的仓库,维护了 0.36.2 版本之后所有 Cursor 的历史版本。
Cursor收费计划#
Cursor 提供了 3 种不同的订阅计划,可以选择按月付费或者按年付费(年付可节省20%)
Hobby 版本(免费)
完全免费使用,包含以下功能:
- Pro 两周试用
- Agent 请求受限
- Tab 补全受限
Pro 版本($20/月)
包含 Hobby 版本所有功能,另外还有:
- 无限 Agent 请求
- 无限 Tab 补全
- 访问后台 Agent
- 访问 Bug Bot
- 访问最大上下文窗口
Ultra 版本($200/用户/月)
包含 Pro 版本所有功能,另外还有:
-
在所有 OpenAI、Claude、Gemini 模型上拥有 20 倍的使用额度。
- 更高的并发请求数
- 更大的上下文长度或响应 token 限额
- 更快的响应速度
- 更少的排队等待时间
-
优先使用新功能
Cursor主界面#
Cursor 在结构布局上与 VSCode 十分类似,但它增加了面向 AI 编程的核心区域。
-
左侧:资源管理区(Explorer)
-
中间:主编辑区域
-
下方:终端(Terminal)
-
右侧:AI 聊天面板(Chat Assistant)
- New chat区域:可直接发起 AI 对话
@ Add context:绑定当前文件上下文(代码自动传入对话)- 输入框:支持提问、代码生成、bug 解释等自然语言操作
Agent下拉:选择对话模式
-
底部状态栏右下角:Cursor Tab 与模型状态
-
显示当前是否连接到 AI 服务、当前模型类型
-
如果网络或模型切换,通常会在这里提示
-
基础配置#
左侧菜单还可以进入以下设置:
- General:通用设置
- Chat:配置 AI 对话相关设置(例如上下文保留、模型选择)
- Tab:可能与多标签页或工作区配置相关
- Models:选择和配置使用的模型(如 GPT-4、Claude、Gemini 等)
- Background Agents:管理运行中的智能 Agent(NEW,可能是 Cursor 最新引入的功能)
- Tools & Integrations:集成 Git、终端、测试框架等工具
- Rules / Indexing & Docs / Network / Beta / Docs:其他开发者相关设置和文档入口
这里我们先说一下 General 通用设置。
- Manage Account
- 功能:打开账户管理页面(通常跳转到官网管理后台)
- 可配置内容包括:订阅套餐、账单信息、更换信用卡、取消订阅等
- Editor Settings
- 功能:配置编辑器的行为和界面
- 支持的配置内容包括:
- 字体(字体类型、大小、行高)
- 主题(明亮 / 黑暗)
- 自动格式化、自动补全
- 显示 minimap(小地图)、行号、折叠标记
- Tab 缩进大小、空格 vs Tab
- 光标样式等
- Keyboard Shortcuts
- 功能:配置键盘快捷键
- 打开命令面板:
Cmd/Ctrl + Shift + P - 输入并选择:Preferences: Open Keyboard Shortcuts (JSON)
- Import Settings from VS Code
- 功能:将 VS Code 的设置、扩展、快捷键等导入 Cursor
- 适合 VS Code 老用户快速迁移到 Cursor 环境
- Reset “Don’t Ask Again” Dialogs
- 功能:重置你之前选中”不再提示”的对话框
- 用于恢复提醒(比如保存前提示、执行高危命令的确认框等)
下面有一个隐私设置
Data Sharing Enabled
- 功能:控制是否将你的代码、提示词、编辑行为等匿名数据分享给 Cursor 用于产品改进
- 当前状态为「开启」
- 可点击「Share Data」按钮切换为关闭状态
了解了 Cursor 的基本介绍和配置后,接下来我们深入探讨 Cursor 的核心开发模式——对话驱动开发。
对话驱动开发#
- 测试驱动开发
- 行为驱动开发
- 领域驱动开发
- 事件驱动开发
- …
AI 的出现使其出现了新的开发模式:对话驱动开发
- PDD(Prompt-Driven Development):提示词驱动开发
- AI-DD(AI-Driven Development):AI 驱动开发
两者区别如下表:
| 维度 | PDD(Prompt-Driven) | AI-DD(AI-Driven) |
|---|---|---|
| 驱动方式 | 开发者写 prompt,AI 根据提示生成代码 | AI 根据上下文、环境、目标主动参与编程 |
| 控制权 | 开发者强控制:AI 是工具 | 控制权部分转移给 AI:AI 是合作者 |
| 主要手段 | 编写清晰、高质量 prompt 是核心能力 | 构建 AI 协作环境(如持续对话、自动分析)是重点 |
| 输出范围 | 局部代码生成(函数、接口、配置) | 全局参与(项目结构建议、模块拆分、重构建议) |
| 依赖模型能力 | 通常是调用 GPT、Claude 等接口 | 可能集成多个模型 + 插件 + 工具链 |
| 典型工具 | Copilot Chat、Cursor Prompt Block、CodeGPT | Cursor Max Mode、Code Interpreter、AutoDev 工具链、GPT Agents |
PDD举例说明
帮我写一个注册的接口,带邮箱和密码的验证。
AIDD举例说明
该项目是否有可以优化的地方。
在 Cursor 中,提供了几种不同的对话模式:
- Ask:PDD驱动
- Agent:AI 驱动
ASK模式#
Ask 模式允许你通过 AI 搜索与提问的方式来探索和了解代码库,但不会对代码做出任何修改。它是一个”只读模式(read-only)“,专门用于:
- 提问代码相关的问题
- 探索项目结构和逻辑
- 学习代码库的实现方式
它默认启用了搜索工具,可以更方便地定位和读取项目中的文件内容。Ask 模式与其他默认模式(如 Agent 模式、Manual 模式)相比,最大的不同是不会自动对代码进行任何修改:
- 它拥有完整的读取权限,可以查看项目文件和上下文
- 但不会自动执行 AI 提出的任何更改建议
因此,它更适合用于:
- 阅读和理解陌生代码库
- 和 AI 一起制定解决方案,但暂时不动代码
| 配置项 | 说明 |
|---|---|
| Model(模型) | 可以预设一个默认使用的 AI 模型(如 GPT-4 或 Claude) |
| Keybinding(快捷键) | 设置一个快捷键,便于随时切换到 Ask 模式 |
| Search Codebase(代码库搜索) | 启用后,Cursor 可以自动搜索项目中的文件作为上下文,无需手动 @ 文件 添加上下文 |
Agent模式#
Agent 是一个具备高度自主性的 AI 编码助手,能够独立探索、规划并执行复杂的代码库变更任务,并拥有全套开发工具的支持。
目前,Agent 是 Cursor 中的默认模式,也是最具”自动驾驶”能力的模式。它设计的初衷是为了应对那些复杂度较高、步骤较多的编码任务,并且尽量减少你对 AI 的逐步引导。
核心能力
在 Agent 模式下,AI 可以自主完成以下操作:
- 浏览和理解整个代码库结构
- 读取项目文档和说明
- 搜索网页(例如查找第三方库用法)
- 编辑文件内容
- 执行终端命令(如安装依赖、运行脚本)
Agent 的目标是帮助你高效完成任务、简化流程,甚至实现从”分析问题”到”提交修改”的完整闭环。
Agent 模式下会自动的更改文件,当然更改也需要用户选择是否接受更改结果。
整个 Agent 模式的工作流如下:
- 理解需求:Agent 会先分析你的任务描述(prompt)以及当前项目的上下文,全面理解你想实现的目标和具体需求。
- 探索代码库:它会在整个代码库中进行搜索,查阅相关文件、文档,甚至在需要时访问网页,来搞清楚当前项目的实现方式和结构。
- 制定修改方案:在理解项目和任务的基础上,Agent 会将任务拆解为若干步骤,并制定出一个可执行的修改计划,过程中会不断从上下文中学习补充信息。
- 执行修改:Agent 根据计划,对项目中的相关文件进行修改。它可能还会建议你引入新的依赖库、执行终端命令,或者提醒你在 Cursor 之外完成一些额外步骤。
- 验证结果:修改完成后,Agent 会检查改动是否符合预期。如果检测到错误、语法问题或代码风格问题(如语言支持 linter),它会尝试自动修复。
- 任务完成:当 Agent 确认一切修改都妥当后,它会交还控制权,并为你总结本次修改内容,帮助你快速了解变更点。
官方举了两个使用的例子 来说明 Agent 的工作流程。
Agent 模式配置选项
- 选择模型:预先为 Agent 模式选择一个默认的大语言模型,例如 GPT-4 或 Claude,用于执行任务时的 AI 引擎。
- 编辑快捷键:为 Agent 模式设置或修改快捷键,方便你快速切换或触发 Agent 的功能。
- 启用自动运行与自动修复:开启此功能后,Agent 可以自动执行修改计划,并在检测到错误(如语法错误、linter 报错)时自动尝试修复。
Chat窗口回滚和撤销
在 Chat 窗口中,右下角有一个 Restore 按钮,可以回滚到之前的版本。
在回滚之后,还可以使用撤销按钮,撤销回滚。
除了 Ask 和 Agent 模式,Cursor 还提供了 Manual 模式,让你在需要精确控制代码修改时使用。
Manual模式与多形式对话#
Manual模式#
Manual 模式是一种专注且可控的编辑模式,适用于你已经明确知道要修改什么文件、要怎么改的情况。
与 Agent 模式不同:
- 根据上下文去自动探索代码库
- 不会运行终端命令
- 完全依赖你提供的具体指令和上下文(如通过
@文件名显式的来指定要修改的文件)
官方还是举了 两个该模式例子。
Manual模式和Agent模式最大的区别,就是Manual模式用户明确知道要会修改哪些文件,这些要修改的文件都是由用户指定的。Agent模式会自动根据AI的规划,修改一些相关的文件。
列举该模式适用场景
- 想要 AI 修改某些文件或者某些函数(作为作者目的是非常明确的)
- 你不希望 AI 自作主张修改项目的其它部分
- 希望 AI 扮演的是执行器,我们自己负责思考和决策
下面是 Manual 模式的工作流:
-
理解请求:像平常一样,在聊天框中输入你想让 AI 做的任务描述。
-
添加上下文:使用
@文件名的方式,在请求中明确指出你希望编辑的文件,为 AI 提供准确的上下文。 -
规划修改:AI 会根据你提供的上下文,给出修改建议。你可以预览修改内容,如果你配置了 Linter,AI 也可能会标出潜在的问题。
-
执行修改:确认无误后,应用这些修改。任务完成后,Manual 模式不会再进行任何自动处理,始终保持你对过程的掌控。
Ask、Agent、Manual模式对比
| 对比维度 | Ask 模式 | Manual 模式 | Agent 模式 |
|---|---|---|---|
| 核心定位 | 只读提问、理解代码 | 精准编辑、按指令操作 | 全自动 AI 开发助手 |
| 主要用途 | 学习代码库、探索项目结构 | 精确修改已知位置的代码 | 实现复杂需求、规划并修改项目 |
| 是否会修改代码 | ❌ 不会修改 | ✅ 修改指定的文件 | ✅ 修改多个文件甚至执行命令 |
| 是否需要手动 @ 文件 | ✅ 推荐使用 | ✅ 必须使用 | ❌ 自动探索上下文 |
| 是否支持终端命令 | ❌ 不支持 | ❌ 不支持 | ✅ 支持(如安装依赖) |
| 控制权归属 | 用户主导提问,AI仅回复 | 用户全权控制修改范围 | AI 主导执行,用户可监督 |
| 适合人群 | 初学者、调研者、阅读代码者 | 想要精准控制变更的开发者 | 忙碌或希望 AI 自动执行任务的高级用户 |
| 推荐场景 | 看不懂项目、需要查逻辑 | 想改一个函数/某段代码 | 想让 AI 做一整个功能模块 |
| 修改预览与确认 | ❌ 无修改 | ✅ 提供预览 | ✅ 自动修改并汇报结果 |
| 典型行为 | ”这段代码是做什么的?" | "请把 @login.ts 中的密码长度改成 12 位" | "实现一个带搜索功能的用户列表页面” |
内联聊天#
在 Cursor 中,你可以使用以下快捷键打开命令输入栏(Prompt Bar):
- macOS:
Cmd K - Windows/Linux:
Ctrl K
命令唤醒的输入栏,也是一个 AI 聊天窗口,不过它不是一个单独的窗口,而是内联在文件中,主要功能包括:
- 输入自然语言描述来提问
- 使用 @ 符号引用其他内容
- 对生成的结果进行多次优化
常见使用场景
-
生成新代码
-
不选中任何代码,直接按下快捷键
-
输入你的需求描述
-
Cursor 会根据上下文生成代码
-
-
修改现有代码
- 选中要修改的代码
- 按下快捷键并描述修改需求
- AI 会按照你的要求进行修改
终端中聊天#
打开终端,然后Cmd K 开启聊天栏,按 Esc 关闭内联聊天,按回车键 Enter 执行。
使用示例
- 查找大文件
- 批量重命名
- 进程管理
除了对话模式,Cursor 还提供了强大的智能补全功能,可以显著提升你的编码效率。
智能补全#
在日常编程中,我们经常需要重复编写大量相似的代码。Cursor的智能编码助手功能可以帮助我们显著提升编码效率。以前最好用的键是复制/粘贴,自从有了 AI 智能补全后,那么现在最好用的是 Tab 键了。
1. 文本智能补全
2. 代码智能补全
最佳实践:
- 在编码的时候书写适当的注释
- 保持良好的命名规范
- 望文知意
- 驼峰命名法
- 适当的使用 TS 类型
- 保持代码结构良好以及结构的一致性
3. 部分补全功能
每次接受一个单词,你可以通过 Ctrl/command + 右箭头逐一接受下一个单词。
智能编码最佳实践
- 合理的输入节奏
- 给 AI 留出思考时间,不要过快按 Tab 键
- 遇到无响应时,先检查网络连接
- 优化代码上下文
- 熟练使用快捷键
- Tab键:接收建议
- Esc键:不接受建议
- Ctrl/Cmd + →:逐词接受
为了帮助 AI 更好地理解你的项目上下文,Cursor 提供了强大的 @ 命令系统。
@命令#
@ 命令是一个很有用的工具,核心就是为 AI 聊天添加更加具体的上下文信息。
你在 Chat 窗口输入 @ 时,就可以看到很多选项。
你可以这样使用 @ 命令:
- 在输入框中输入 @
- 用上下键选择你想要的命令
- 按 Enter 键确认
1. Files&Folders
引用项目中的特定文件和文件夹作为上下文。
2. Code
引用代码片段。
3. Docs
获取官方文档或者第三方文档信息。
4. Git
使用 @Git 相关的特殊指令来分析当前项目的 Git 变更情况、比较分支内容、以及查看未提交的文件状态。
@Commit:引用当前工作状态的改动
使用 @Commit,你可以让 AI 告诉你当前工作区与最近一次提交(HEAD)之间的”未提交变更”。变更包括新增的文件、修改的文件以及删除的文件
例如:你在当前项目中修改了 login.js 和 auth.js,尚未提交,现在想知道这两处的改动有没有问题。你可以对 AI 说:请帮我检查一下 @Commit 中的改动有没有潜在的问题,比如逻辑错误或代码风格不统一。
AI 会读取尚未提交的变更,并反馈比如:
- “
auth.js中的错误处理逻辑存在重复” - “
login.js的登录判断条件可能导致空密码通过验证”
@Branch:对比当前分支与主分支的差异
使用 @Branch,可以查看当前分支与主分支(如 main)之间的差异:
- 显示当前分支新增的提交
- 展示和主分支不同的代码的变更内容
例如:你在一个 feature/signup-flow 分支上开发了注册流程,准备合并回 main,但不确定有哪些重要更改。你可以对 AI 说:请帮我总结一下 @Branch 中相对于 main 分支的所有功能改动,方便我写 PR 描述。
AI 会列出当前分支比 main 多出的提交与变更,比如:
- “新增了
SignupForm.vue组件” - “修改了 API 调用逻辑”
- “引入了新的依赖(如
yup用于表单验证)”
5. Terminals
用于在 Chat 中引用你当前终端中的输出结果或状态信息,让 AI 可以根据终端反馈内容给出解释、建议或下一步操作。
与传统 Chat 模式的区别
| 模式 | 是否能读取终端输出 | 是否能帮你生成命令 |
|---|---|---|
| 普通聊天 | ❌ 只能靠你复制粘贴内容 | ✅ 能生成,但不知上下文 |
@Terminal | ✅ 可自动引用终端上下文 | ✅ 更准确、带环境感知能力 |
6. Linter Errors
@Lint Errors 是 Cursor 中用于访问并引用代码中的 Lint 报错与警告信息的快捷符号。这个符号可以自动捕获并提供你当前激活文件中所有的 lint 报错与警告。
7. Web
@Web 命令会自动搜索互联网以查找与 Cursor 查询相关的上下文。
为了让 AI 更深入地理解你的项目,Cursor 提供了代码库索引功能。
代码库索引#
将你当前的项目,创建一个嵌入向量(Embeddings),有了嵌入向量,可以帮助 AI 更加准确的去理解的项目。
代码库索引是 Cursor 的核心功能。它会:
- 为代码文件创建嵌入向量
- 把索引数据存储在云端
- 保持代码本身只在本地存储
- 确保项目安全性
在传统开发中,开发者需要记住整个项目结构。使用代码库索引后:
- AI 回答更准确,因为它能基于当前项目的索引库回答问题
- 文件搜索更快
- AI 能更好地理解跨文件的关系
- 重构建议更精准
如何配置代码库索引
最佳实践
为了更好地使用代码库索引功能:
-
定期检查索引状态
-
合理设置忽略规则,避免索引无关文件
-
大型项目考虑模块化索引
/project/frontend/backend/docs/scirpts还是通过 .cursorignore 文件来进行配置
/backend/docs/scirpts*.mdnode_modules -
团队统一
.cursorignore配置 -
使用代码库索引功能快速理解项目
除了让 AI 理解你的代码,你还可以通过 Rules 来指导 AI 的行为方式。
Rules#
规则是 Cursor 的一个功能。你可以用它来控制 AI 的行为。这些规则会在每次对话时自动使用。这样 AI 就能按照你想要的方式工作。Rules 本质上就是属于提示词工程的一部分。
主要用途有:
- 设定编码风格
- 定制文档格式
- 统一团队流程
- 个性化代码审查
设置的方式有三种:
- 全局规则
- 项目规则
- 规则文件(废弃了,因为兼容性目前还存在,但是未来有可能完全被移除)
1. 全局规则
全局规则对所有项目都有效。
2. 项目规则
顾名思义就是每个项目一份,项目之间不会共享。
在项目根目录的 .cursor/rules 文件夹中创建 .mdc 文件。mdc 是 Cursor 的 Rules 文件的专有格式。它基于 Markdown 格式。这意味着你直接使用最熟悉的 Markdown 语法来写就完事儿了。
它支持四种规则类型:
- Always:自动附加到所有聊天和命令请求(command + k),适用于全局规则。
- Auto Attached:基于文件模式匹配自动触发,例如: .tsx, .json, Test.cpp。
- Agent Requested:针对特定任务场景,需要提供任务描述。帮助 AI Agent 更好地理解和执行特定任务
- Manual:需要手动提及才会被包含,适用于特殊场景的临时规则。
支持的功能:
- 规则内容:用 Markdown 格式写规则
- 规则引用:用 @file 引用其他规则文件
3. 规则文件
为了兼容性,旧版使用的 .cursorrules 文件,目前仍被支持,但 Cursor 官方文档明确提到 .cursorrules 文件将来会移除。
建议迁移到新系统,迁移步骤如下:
- 将现有规则按功能拆分为多个文件
- 在
.cursor/rules目录创建对应规则 - 在 Globs 字段指定适用范围
- 通过 @file 引用保持规则链式调用
4. 使用案例
.cursor/rules/base.mdc 写入如下规则:
# 项目基础开发规范
## 基础开发规则
- 使用 ESLint 和 Prettier 进行代码格式化- 文件命名采用 kebab-case- 导入语句按类型分组并排序- 避免魔法数字,使用常量定义- 函数长度不超过 50 行
## 项目目录结构
├── .cursor/│ └── rules/│ ├── base.mdc # 基础规则│ ├── react.mdc # React 相关规则│ ├── typescript.mdc # TypeScript 规则│ ├── testing.mdc # 测试规则│ └── docs.mdc # 文档规则└── src/├── components/├── features/└── tests/React 组件的开发规范,位于 .cursor/rules/react.mdc
Description:React 组件开发规范,确保组件的可维护性和性能
Globs:src/components/**/\*.tsx, src/features/**/\*.tsx
# React 组件开发规范
- 优先使用函数组件和 Hooks- 组件文件结构: 1. 类型定义 2. 常量声明 3. 组件实现 4. 样式定义- Props 必须使用 interface 定义类型- 使用 React.memo() 优化渲染性能- 样式使用 CSS Modules 或 styled-components- @base.mdcTypeScript 规则,位于 .cursor/rules/typescript.mdc
Description:TypeScript 开发规范,确保类型安全和代码质量
Globs:**/\*.ts, **/\*.tsx
# TypeScript 规则
- 禁用 any 类型,使用 unknown 替代- 启用 strict 模式- 使用类型推导减少冗余类型声明- 公共函数必须包含 JSDoc 注释- 使用 type 而不是 interface(除了 Props)测试规则,位于 .cursor/rules/test.mdc
Description:单元测试和集成测试规范
Globs:src/**/\*.test.ts, src/**/\*.test.tsx
# 测试规则
- 使用 React Testing Library- 测试文件与源文件同目录- 测试用例结构: 1. 准备测试数据 2. 执行被测试代码 3. 断言结果- Mock 外部依赖使用 MSW- 测试覆盖率要求: - 语句覆盖率 > 80% - 分支覆盖率 > 70% - 函数覆盖率 > 90%最后是文档规则,位于 .cursor/rules/doc.mdc
Description:项目文档编写规范
Globs: \*_/_.md
# 文档规则
- 使用中文编写- 包含以下部分: 1. 功能说明 2. 使用示例 3. API 文档 4. 注意事项- 代码块标注语言类型- 配置说明使用表格格式- 重要信息使用引用块标注5. Cursor Rules
通过在聊天中使用 @Cursor Rules,你可以明确告诉 AI:“请按照我们项目的规范来生成或修改代码”。这样可以让 AI 的输出更加贴合你项目的实际需求,而不是”随心所欲”。
与 Rules 不同,Notepads 用于提供项目上下文信息,而不是行为规范。
Notepads#
官方描述:
Craft and share context between chat and composers
在聊天和代码编辑器之间构建并共享上下文。
- Notepad:笔记本,你可以在笔记本里面记录一些内容,供 AI 作为参考信息。
首先在资源管理器需要开启 Notepads,如下图:
笔记内容会自动注入到 AI 的上下文中,影响它对代码、问题和对话的理解。简单说,就是帮 AI”提前看过项目文档”。
1. 使用场景举例
假设创建一个如下的 Notepad
📌 模块:用户管理模块
✅ 接口:GET /api/users
- 返回活跃用户列表(isActive = true)- 支持通过 query 参数筛选 role- 默认分页大小为 20,最大为 100
📦 响应字段说明:
- id: string,用户唯一标识- name: string,用户名- roles: string[],可包含 "admin" | "editor" | "viewer"- createdAt: ISO8601 字符串- isActive: boolean,是否处于激活状态
⚠️ 注意事项:
- 部分老用户的 `roles` 字段可能为 null,请使用空数组兜底处理- 若无数据,返回空数组 `[]`,不会返回 null
📍 示例请求:GET /api/users?role=editor&page=2给 AI 提问
"为什么我的 `users.length` 总是比预期少?""你请求的是 `/api/users`,根据笔记说明它只返回 `isActive = true` 的用户,建议确认是否有部分用户是未激活状态。"2. 如何创建 Notepads?
3. 和 CursorRules 的区别
-
Notepads 就像你平时写的一些项目备注(比如接口参数说明、组件行为约定、状态流程图解等),可以作为 Notepad 保存。
-
启用这个功能后,你每次打开 Chat 与 AI 对话时,Cursor 会自动把这些 Notepad 笔记传给 AI 模型;
-
这样 AI 就像提前”读过你写的文档”,它可以在回答你的问题时参考这些内容,给出更准确、更符合项目上下文的回答。
-
Rules:行为规范,指导 AI 应该怎么做。
-
Notepads:上下文信息,告诉 AI 发生了什么,你结合这个背景信息,自己去判断该做什么。
最后,让我们了解一些 Cursor 的其他实用功能和细节。
其它细节#
Auto-Run模式#
早期的 Agent 模式, 会根据你的提示,判断是否需要执行命令,如果需要执行命令,会提示你确认。
之后 Cursor 推出了 Auto-Run 模式,则是更往前走了一步。Agent 将无需确认就能执行命令和文件操作,朝着”全自动驾驶”又迈进了一步。开启 Auto-run 模式后,Cursor 编辑器能够:
- 文件的增删改查控制权利更大
- 执行代码所需的命令
- 修复可能出现的问题
- 重复执行这些操作,直到达成最终的目标
| 选项 | 功能解释 | 建议设置 |
|---|---|---|
| Auto-Run Mode | 是否启用自动执行(包括命令行、文件写入、MCP 工具等) | 建议仅在可信项目中开启 |
| Command Allowlist | 指定允许自动执行的命令(如 npm install、echo) | 安全可控,推荐配合 Auto-Run 使用 |
| Command Denylist | 指定禁止自动执行的命令(如 rm -rf、shutdown) | 强烈建议设置,防误操作 |
| File-Deletion Protection | 防止 Agent 自动删除文件 | 默认关闭,建议开发时打开以防误删 |
| MCP Tools Protection | 禁止自动运行 MCP 工具(如依赖审计、代码分析) | 若担心工具链副作用可开启 |
| Dotfile Protection | 防止自动修改 dot 文件(如 .gitignore, .env) | 默认开启,避免污染配置 |
| External-File Protection | 防止 Agent 自动创建或改动工作目录之外的文件 | 默认开启,防止越权访问外部文件 |
实战案例
请帮我创建一个新的 React 项目,包含一个计数器组件,要求:1. 使用 Vite 创建项目2. 创建一个 Counter 组件,包含增加和减少按钮3. 添加一些基本的样式4. 运行项目并确保一切正常自动生成提交信息#
Cursor 提供 AI 生成提交消息功能,让我们不再需要花费大量时间思考如何描述代码变更。
如何使用
- 完成代码修改后,打开源代码管理面板
- 在提交消息输入框中,点击右侧的闪光图标 (✨),AI 会自动生成提交消息
上图中的 commit 信息是 AI 自动生成的。
工作原理
Cursor 的 AI 提交消息生成器通过分析以下内容工作:
- 修改的文件
- 具体的代码变更
- 提交的上下文
- 仓库的 Git 历史记录
生成过程包括三个主要步骤:
- 分析已暂存(staged)的文件变更
- 学习你的提交历史模式
- 结合上下文生成合适的提交消息
最佳实践
-
检查生成的消息
-
控制提交大小
-
遵循常见的提交格式(目前普遍使用的是 Angular commit 规范)
-
feat: 新功能
-
fix: 修复问题
-
docs: 文档更新
-
style: 代码格式调整
-
refactor: 代码重构
-
test: 测试相关
-
chore: 构建过程或辅助工具的变动
-
Background Agents#
该特性目前还是 Beta 版本。
Background Agents 是运行在云端的 AI 智能体,能够在你本地编辑代码的同时,持续、自动地进行项目分析、推理和建议生成,无需你手动触发。
- Run agents in the cloud, in beta preview. (Background AI Agent 在云端运行,不依赖本地的性能,随时能够提供服务)
- Only works in folders with a Git repository.(比如是做了 git 初始化,使用 git 做版本管理的项目才能用)
随着 Cursor 的不断发展,2025 年 10 月 29 日发布的 Cursor 2.0 版本带来了多项重大更新和功能增强,进一步提升了 AI 辅助编程的体验。接下来让我们了解这些令人兴奋的新功能。
Cursor 2.0 更新内容#
Cursor 2.0 于 2025 年 10 月 29 日发布,带来了多项重大更新和功能增强。以下是主要的新功能和改进:
1. 多智能体(Multi-Agents)支持#
在新的编辑器中,用户可以在单个提示下同时运行最多 8 个智能体。每个智能体在其独立的代码库副本中运行,使用 Git worktrees 或远程机器来避免文件冲突。这使得可以并行探索不同的解决方案,大大提高开发效率。
使用场景:
- 同时生成多个功能模块的不同实现方案
- 并行探索不同的架构设计
- 快速对比多种代码实现方式
2. Composer 编码模型#
Cursor 2.0 推出了首款自研编码模型 Composer,其速度比同等智能的模型快 4 倍。该模型专为低延迟的智能编码设计,大多数任务可在 30 秒内完成。
优势:
- 更快的响应速度
- 更低的延迟
- 专为编码任务优化
3. 内置浏览器(正式版)#
浏览器功能现已正式发布,并可内嵌于编辑器中。用户可以选择元素并将 DOM 信息传递给智能体,增强了前端开发的便利性。
功能特点:
- 在编辑器内直接预览网页
- 选择页面元素并传递给 AI
- 实时查看前端效果
- 方便进行前端调试和开发
4. 改进的代码评审#
无需在各个文件间来回切换,即可更轻松地查看智能体在多个文件中的所有更改,提升了代码评审的效率。
改进点:
- 统一的代码变更视图
- 更清晰的差异展示
- 批量审查多个文件的修改
- 更好的代码变更追踪
5. 沙盒化终端(GA)#
在 macOS 上,智能体命令默认在安全沙盒中运行。未在允许列表中的 Shell 命令将自动在沙盒中执行,具备对工作区的读写权限,但无法访问互联网,增强了安全性。
安全特性:
- 默认启用沙盒保护
- 限制网络访问
- 保护系统文件
- 可配置的命令允许列表
6. 团队指令#
在 Cursor 仪表板中,团队可以定义自定义命令和规则,这些上下文将自动应用于团队的所有成员,并由团队管理员集中管理。
功能:
- 统一的团队开发规范
- 集中管理团队规则
- 自动应用到所有成员
- 提升团队协作效率
7. 语音模式#
通过内置的语音转文字功能,用户可以使用语音控制智能体,并在设置中自定义提交关键词,以触发智能体开始运行。
使用方式:
- 语音输入指令
- 自定义触发关键词
- 解放双手,提升效率
- 适合快速口述需求
8. 性能提升#
Cursor 使用语言服务器协议(LSP)提供特定语言的功能,如跳转到定义、悬停提示、诊断等。在 2.0 版本中,所有语言的 LSP 加载和使用性能均有大幅提升,特别是在使用智能体和查看差异时表现更为明显。
性能改进:
- 更快的 LSP 加载速度
- 更流畅的代码导航
- 更快的智能体响应
- 更高效的差异查看
9. 后台计划模式#
用户可以使用一种模型制定计划,再用另一种模型执行构建。可以选择在前台或后台构建,或使用并行智能体同时规划,生成多份方案供审阅。
工作流程:
- 使用规划模型制定开发计划
- 使用执行模型构建代码
- 可选择前台或后台执行
- 并行生成多个方案对比
10. 可共享的团队命令#
将自定义规则、命令和提示与整个团队共享,并通过 Cursor 文档创建深度链接,方便团队协作。
协作功能:
- 共享团队规则和命令
- 创建文档深度链接
- 统一团队工作流程
- 提升知识共享效率
11. 升级的提示界面#
文件和目录现在以内嵌”胶囊”样式显示,改进了带标签上下文的提示词复制与粘贴体验。同时,从上下文菜单中移除了许多明确的条目,如 @Definitions、@Web、@Link、@Recent Changes、@Linter Errors 等,智能体现在可以自动收集上下文,无需手动添加。
界面改进:
- 更美观的胶囊样式显示
- 更便捷的上下文管理
- 智能自动收集上下文
- 简化的操作流程
12. 强化版智能体框架#
大幅改进了适用于所有模型的智能体底层运行框架,带来了显著的质量提升,尤其对 GPT-5 Codex 的改进最为明显。
框架改进:
- 更智能的代码生成
- 更准确的理解能力
- 更好的错误处理
- 更强的代码质量
13. 云端智能体#
云端智能体现已具备 99.9% 的可靠性、即时启动能力,且全新界面即将推出。同时,优化了直接在编辑器中将智能体迁移到云端的体验。
云端特性:
- 99.9% 可靠性保障
- 即时启动能力
- 全新的云端界面
- 便捷的迁移体验
14. Cursor 企业版新功能#
沙盒终端:管理员控制项#
企业版现在可以在团队范围内统一并强制执行沙盒终端的标准设置,可在团队级别配置沙盒可用性、Git 访问以及网络访问。
钩子:云端分发#
企业团队现在可以直接通过钩子在网页控制台上进行分发。管理员可以新增钩子、保存草稿,并指定各个操作系统适用的钩子。
审计日志#
在 Cursor 中查看带时间戳的管理员事件日志,包括用户访问、设置更改、团队规则编辑以及成员管理事件。
企业版优势:
- 统一的安全策略管理
- 便捷的团队配置分发
- 完整的审计追踪
- 更好的企业级安全保障
总结#
通过本指南,你已经全面了解了 Cursor 的核心功能和使用方法。从基础配置到对话驱动开发,从智能补全到代码库索引,从 Rules 到 Notepads,这些功能共同构成了 Cursor 强大的 AI 编程助手能力。
Cursor 2.0 的发布进一步提升了开发体验,多智能体支持、Composer 编码模型、内置浏览器等新功能让 AI 辅助编程变得更加高效和便捷。无论是个人开发者还是企业团队,都能从 Cursor 的强大功能中受益。
希望这份指南能帮助你更好地利用 Cursor 提升开发效率,享受 AI 辅助编程带来的便利。