主流 AI IDE 之一的 Cursor 介绍
一、什么是 Cursor
Cursor 是由 Anysphere 公司开发的 AI 驱动的代码编辑器(IDE);Anysphere 成立于 2022 年,创始团队包括来自麻省理工学院(MIT)的毕业生,如联合创始人 Aman Sanger 和 Michael Truell 等,其公司致力于打造“AI 原生”的集成开发环境(IDE),旨在通过深度集成 AI 能力(如 GPT-4、Claude 等模型)重构编程体验。
Cursor 是一款基于 VS Code 技术构建的现代化代码编辑器,基于微软开源的 Visual Studio Code(VS Code)深度定制,但通过底层优化、深度融合实现了 AI 功能(如 GPT、Claude等),而非依赖插件,与 GitHub Copilot 、CodeBuddy 等 AI 智能代码助手插件插件工具相比,Cursor 更强调“人类主导+AI 协作”的交互模式,提供更流畅的“氛围编程”(Vibe Coding)体验。它不仅能编写代码、重构代码、解释代码,还能理解你的上下文需求,像一个“AI 编程搭档”一样协助你完成复杂任务。 主要亮点:AI 优先设计:内置 GPT、Claude 等大模型,无需频繁切换 ChatGPT等Web AI应用对话窗口;跨平台支持:Windows、macOS、Linux 通用。免费使用(有一定额度限制),支持付费升级额; 兼容 VS Code 生态:可直接使用 VS Code 的插件、主题和快捷键 等等。
核心特色功能:
自然语言交互(通过 Ctrl+K 呼出聊天窗口);
智能代码补全与编辑(Ctrl+L 指令编辑);
跨文件上下文理解(支持 @workspace 全局搜索);
自动重构与错误修复。
国际官方网址:https://www.cursor.com/en
中文官方网址:https://www.cursor.com/cn
官方Github仓库网址:https://github.com/getcursor/cursor
官方论坛网址:https://forum.cursor.com/
官方博客网址:https://www.cursor.com/cn/blog
官方文档网址:https://docs.cursor.com/welcome
Cursor 尽管增速迅猛,但部分分析认为其技术依赖第三方模型(如 GPT-4),且面临巨头生态压制的风险。主要竞争对手:微软 GitHub Copilot、 Exafunction Inc.(原 Codeium)的 Windsurf、Anthropic 的 Claude Code 、 字节跳动 的 Trae 等 。
二、下载安装并设置 Cursor 简体中文环境
下载安装 Cursor :https://www.cursor.com/downloads
根据自己的硬件与操作系统,选择适合自己的 Cursor 版本下载好之后并安装。本次演示操作系统为 Windows 10 专业版 ,Cursor 版本为 1.0.0 。
然后登录(没有账号可以注册一个,推荐使用 Guhub 账号快速授权登录)。
可以选择导入VScode一些插件配置等,也可以选择不导入,直接开始。
在插件市场安装完 "简体中文" 插件以后;通过快捷键:Ctrl + Shift + P , 打开命令面板,然后输入关键词: language ,选择 "Configure Display Language"→ 选择 "中文(简体)"。不过,生效需要按照提示,重启打开软件 Cursor 才可以,让 IDE 界面使用中文。
三、Cursor 常见功能与设置
3.1 Rules 规则约束
这就是 Cursor 的全局规则配置入口。还记得刚安装好 Cursor 时,我们设置过 AI 回复语言,之后使用 AI 的任何功能,收到的回复都是中文,这就是得益于全局规则里的语言设置。当然,除了语言,你还能在这里配置其他全局规则。
请始终使用简体中文回答所有问题。无论用户使用何种语言提问,都请用简体中文回复与注释。
除了全局规则,我们还可以针对单个项目设置专属规则。只要在项目根目录下创建一个.cursorrules 文件,就能自定义项目专属的 Cursor 规则。比如添加项目简介、技术架构说明,或是制定目录结构、代码编写、命名、组件、样式、国际化、git 提交等方面的规范。设置好后,AI 在与你交流时,就会参考这些规则给出更贴合项目需求的回复。通过.cursorrules文件定义项目级编码规范,确保 Agent 生成代码符合团队标准 ,从而自动规避因 “自由发挥” 导致的命名不统一、格式混乱等风格问题,确保生成内容严格贴合项目既有标准。
3.2 Cursor 快捷键
3.3 Cursor 常用快捷键
3.4 Cursor 的 Chat 模式
Ask模式:需求分析,通过自然语言对话,提供代码解释、错误调试、架构分析等服务。
Manual模式:根据用户选择的代码片段或自然语言描述,生成或修改代码,但需手动应用更改。
Agent模式:接收自然语言指令后,自动规划并执行复杂任务,包括代码生成、文件管理、终端命令执行等。
3.5 Cursor 的 3 种交互模式
Ask 模式(Ctrl+L):这是专门为代码问答设计的模式。当你在阅读代码时,对某段代码的逻辑不太理解,想知道它的具体作用,或者想了解如何对其进行性能优化时,就可以使用 Ask 模式。操作也很简单,先选中你想要询问的代码段,然后按下快捷键 Ctrl+L 调出对话框,在对话框中输入你的问题,比如 “这段代码什么作用?”“如何优化这段代码的性能?” 等自然语言表述。Cursor 会基于你选中的代码,生成详细的解析和建议,但不会直接修改文件内容。这种模式非常适合用来学习代码逻辑,深入理解代码的运行机制 ,就像身边随时有一位经验丰富的编程导师,为你答疑解惑。
Edit 模式(Ctrl+K):Edit 模式堪称精准代码编辑的利器,有两种超实用的用法。第一种,当你在项目的空白处,想要快速生成新代码时,直接按下 Ctrl+K 调出输入框,输入你的需求,例如 “创建登录接口”,Cursor 就能自动帮你生成一个完整的 API 框架,涵盖接口的基本结构、请求处理逻辑等,极大地节省了从头编写代码的时间。第二种用法,当你对已有代码不满意,想要修改时,先选中需要修改的单行代码或者代码区块,再按下 Ctrl+K,在弹出的输入框中输入修改需求,比如 “将这段循环代码改为使用 map 函数实现”。Cursor 会根据你的要求生成修改后的代码,并且生成的结果可逐行点击 Accept(接受)或 Reject(拒绝),让你能精确控制代码的修改过程,确保每一处修改都符合预期。
Agent 模式(默认开启):Agent 模式是项目级开发的 “神器”,特别适合处理复杂的项目开发任务。按下 Ctrl+I 调出全局对话窗口后,你就可以与 Agent 模式进行交互。比如你想要创建一个包含用户模块的 React 项目,只需在对话框中输入 “创建一个包含用户模块的 React 项目”,Agent 模式便会自动帮你生成 index.js、App.css 等多个文件,并且建立好文件之间的引用关系,完成整个项目的初步搭建。对于一些复杂的需求,为了让 Cursor 更准确地理解你的意图,建议添加 “@Codebase” 指定项目上下文,这样它就能结合项目的整体情况,生成更贴合实际需求的代码和文件结构,大大提高开发的效率和准确性。
3.6 程序员常用快捷键
当你在编写代码时,输入关键逻辑后,按下 Tab 键,Cursor 不仅能实现基础的代码自动补全,还能基于 AI 预测,直接生成完整的代码块。比如在 Python 中编写一个计算列表元素平方和的函数,当你输入 “def sum_of_squares (nums): return sum ([” 后,按下 Tab 键,Cursor 可能就会自动帮你补全为 “def sum_of_squares (nums): return sum ([i ** 2 for i in nums])”,大大加快了代码编写速度。
想要在终端中直接运行 cursor 命令,按下 Ctrl+Shift+P 调出命令面板,在面板中搜索 “Install 'cursor' command”,按照提示操作后,就能在终端中便捷地使用 cursor 命令,执行各种与项目相关的操作,比如快速创建文件、安装依赖等。
在代码编写过程中,难免会出现一些误操作或者想要回退到之前代码状态的情况。这时,Ctrl+Z(回滚)和 Ctrl+Y(重做)快捷键就能派上用场,配合软件右下角的「Restore」按钮,你最多可以恢复 5 次代码的历史版本,轻松应对各种代码修改失误。
而 “@” 符号则是快速定位上下文的神器。当你在与 AI 交互时,输入 “@”,可以选择 Files 来指定单个文件作为上下文,让 AI 聚焦于该文件进行代码生成或分析;也可以选择 Docs,接入外部文档知识库,比如项目的 API 文档、技术说明文档等,让 AI 在理解问题和生成代码时,有更丰富准确的信息作为参考,提高代码生成的质量和准确性 。
3.7 选择 AI 大模型
由于 Cursor 工具嵌入了很多模型,包括 deepseek、gpt、claude、gemini 等等,选择自己喜欢的模型就行。而软件也在更新,有时候会接入一些新的模型,也会移除一些旧的模型。
点击AI功能区上方的小齿轮图标,或者使用快捷键“Ctrl+Shift+J”,可以进入Cursor的设置界面:
3.8 使用文件夹管理项目
Cursor 默认通过文件夹管理项目,在新建项目时最好在一个空文件夹中开启,这将有助于Cursor 组织项目文件、方面进行版本管理。@Codebase 会以当前目录为根目录并建立代码仓库索引 。
--------------------------------------
没有自由的秩序和没有秩序的自由,同样具有破坏性。
————————————————
相关文章:

主流 AI IDE 之一的 Cursor 介绍
一、什么是 Cursor Cursor 是由 Anysphere 公司开发的 AI 驱动的代码编辑器(IDE);Anysphere 成立于 2022 年,创始团队包括来自麻省理工学院(MIT)的毕业生,如联合创始人 Aman Sanger 和 Michael …...

0x-1 记一次SGA PGA设置失败,重新开库
0、生产侧定时平台上传数据库11g hang,修改无法startup 厂商统一发放的虚拟机作为前置机导入平台后,直接开机使用。主机在虚拟化平台中,实例卡死后,按照虚拟机系统64G,原SGA2g,不知哪个大聪明给默认设置的。保守计划修…...

【科研绘图系列】R语言绘制和弦图(Chord diagram plot)
禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍加载R包数据下载导入数据数据预处理相关性计算和弦图系统信息介绍 本文介绍了一个基于R语言的数据分析和可视化流程,主要用于生成和弦图(Chord Diagram)。和弦图是一种用于展示…...

PPT转图片拼贴工具 v3.0
软件介绍 这个软件就是将PPT文件转换为图片并且拼接起来。 这个代码支持导入单个文件也支持导入文件夹 但是目前还没有解决可视化界面问题。 效果展示 软件源码 import os import re import win32com.client from PIL import Image from typing import List, Uniondef con…...

关于安科瑞APD局部放电监测装置解决方案的应用分析
1 什么是局部放电? 局部放电(Partial Discharge, PD)是指发生在电气设备绝缘系统局部区域的、未贯穿整个电极的微小放电现象。它通常发生在高压电气设备(如变压器、开关柜、电缆、GIS等)内部存在绝缘缺陷、电场集中或…...

设计模式-2 结构型模式
一、代理模式 1、举例 海外代购 2、代理基本结构图 3、静态代理 1、真实类实现一个接口,代理类也实现这个接口。 2、代理类通过真实对象调用真实类的方法。 4、静态代理和动态代理的区别 1、静态代理在编译时就已经实现了,编译完成后代理类是一个实际…...

大量企业系统超龄服役!R²AIN SUITE 一体化企业提效解决方案重构零售数智化基因
《中国百货商业协会2024零售IT及数字化系统需求调查报告》为我们呈现了零售企业在数字化转型中的复杂图景。数据显示,82%的企业高管对AI改变行业未来充满信心 source:中国百货商业协会 ,零售IT及数字化系统需求调查报告 ,2024年 但…...

Cesium使用glb模型、图片标记来实现实时轨迹
目录 1、使用glb模型进行实时轨迹 2、使用图片进行实时轨迹 基于上一篇加载基础地图的代码上继续开发 vue中加载Cesium地图(天地图、高德地图)-CSDN博客文章浏览阅读164次。vue中加载Cesium三维地球https://blog.csdn.net/ssy001128/article/details…...
【拓扑剪枝+深搜剪枝/计数】2024睿抗-章鱼图的判断
题目描述 对于无向图 G ( V , E ) G(V,E) G(V,E),我们将有且只有一个环的、大于 2 2 2 个顶点的无向连通图称之为章鱼图,因为其形状像是一个环(身体)带着若干个树(触手),故得名。 给定一个…...

Android基础回顾】六:安卓显示机制Surface 、 SurfaceFlinger、Choreographer
在 Android 系统中,Surface 和 SurfaceFlinger 是图形渲染系统的核心组件,负责屏幕显示内容的合成与管理。它们协同工作,使各种 App 和系统界面能够高效地显示在屏幕上。 1 Surface 是什么? Surface 是一个抽象的图形缓冲区接口…...
SpringBoot核心注解详解及3.0与2.0版本深度对比
SpringBoot核心注解详解及3.0与2.0版本深度对比 本文全面解析SpringBoot核心注解原理,深入对比3.0与2.0版本差异,助你掌握新一代SpringBoot开发精髓 一、SpringBoot核心注解全景解析 1.1 什么是SpringBoot核心注解 SpringBoot核心注解是构建SpringBoot…...

敏捷开发中如何避免过度加班
在敏捷开发过程中避免过度加班,需要明确敏捷原则、合理规划迭代任务、加强团队沟通、优化流程效率、设定合理的工作负荷、注重团队士气和成员健康。明确敏捷原则,即保证可持续发展的步调,避免频繁地变更需求、过度承诺任务量。合理规划迭代任…...
深入浅出多路归并:原理、实现与实战案例解析
文章目录 二路归并多路归并方法一:指针遍历(多指针比较法)方法二:小根堆法(最小堆归并) 实际场景外部排序 经典题目丑数Ⅱ方法一:三指针法方法二:优先队列法(K路归并&…...
Java八股文——集合「Map篇」
Map 面试官您好,关于 Java 中常见的 Map 集合,我可以从非线程安全和线程安全两个方面来介绍: 首先,我们来看一下非线程安全的 Map 实现,这些在单线程环境下性能通常更好,但在并发场景下需要外部同步&…...

第1章_数据分析认知_知识点笔记
来自:数据分析自学课程-戴戴戴师兄 逐字稿:【课程4.0】第1章_分析认知_知识点笔记 【课程4.0】第1章 分析认知 知识点总结 数据分析的核心价值不是工具,而是用数据驱动业务增长。 一、数据分析的本质认知 数据分析是什么? 不是酷…...

111页可编辑精品PPT | 华为业务变革框架及战略级项目管理华为变革管理华为企业变革华为的管理模式案例培训
这份文档是关于华为公司业务变革管理框架(BTMS)V2.0的详细介绍,涵盖从年度规划到项目执行的全流程管理。BTMS框架通过变革战略规划、年度规划流程、解决方案开发(PMOP流程)、运作管理流程等多个模块,系统地…...
Python使用总结之Mac安装docker并配置wechaty
Python使用总结之Mac安装docker并配置wechaty ✅ 一、安装 Docker Desktop for macOS 1. 下载 Docker Desktop 安装包 访问官网下载安装包: 👉 https://www.docker.com/products/docker-desktop 选择 macOS (Apple 芯片或 Intel 芯片) 版本下载。 …...

html文字红色粗体,闪烁渐变动画效果
1. 代码 <!DOCTYPE html> <html lang"zh"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>红色粗体闪烁文字表格</title><s…...
进阶配置与优化:配置 HTTPS 以确保数据安全传输
在生产环境中,确保用户与服务器之间的数据传输安全至关重要。配置 HTTPS(HTTP Secure)可以通过使用 SSL/TLS 协议对数据进行加密,防止数据在传输过程中被窃听或篡改。本文将详细介绍如何使用 Let’s Encrypt 免费获取 SSL 证书&am…...
Python使用clickhouse-local和MySQL表函数实现从MySQL到ClickHouse数据同步
下面是一个使用clickhouse-local和MySQL表函数实现从MySQL到ClickHouse数据同步的Python解决方案,包含全量同步、增量同步和测试用例。 此解决方案提供了生产级数据同步所需的核心功能,可根据具体场景扩展更多高级特性如:数据转换、字段映射…...
解锁Java线程池:性能优化的关键
一、引言 在 Java 并发编程的世界里,线程池是一个至关重要的概念。简单来说,线程池就是一个可以复用线程的 “池子”,它维护着一组线程,这些线程可以被重复使用来执行多个任务,而不是为每个任务都创建一个新的线程。…...
如何自定义一个 Spring Boot Starter?
导语: 在后端 Java 面试中,Spring Boot 是绕不开的重点,而“如何自定义一个 Starter”作为进阶开发能力的体现,常被面试官用于考察候选人的工程架构思维与 Spring Boot 底层掌握程度。本文将带你深入理解自定义 Starter 的实现逻辑…...

Linux文件系统详解:从入门到精通
无论是开发高性能应用还是进行系统级编程,文件系统都是我们必须掌握的基础知识。今天,我将带大家深入浅出地了解Linux文件系统的核心概念和工作原理。 一、Linux文件系统概述 Linux文件系统是操作系统中负责管理持久存储设备上数据的子系统。它不仅仅是…...

Electron Fiddle使用笔记
文章目录 下载界面示意图保存和打开项目save 和 save as forge project 其他文档打包报错 RequestError: read ECONNRESET 想要打包前端程序,奈何本地环境总是报错,意外发现可以通过electron fiddle直接调试代码。 下载 百度网盘地址: 首次…...
【PhysUnits】16.1 完善Var 结构体及其运算(variable.rs)
一、源码 这段代码定义了一个泛型结构体 Var,并为它实现了各种数学运算。 /** 变量结构体 Var* 该结构体泛型参数 T 需满足 Numeric 约束*/use core::ops::{Neg, Add, Sub, Mul}; use crate::constant::Integer; /// 定义 Numeric trait,约束 T 必须实…...

企业培训学习考试系统源码 ThinkPHP框架+Uniapp支持多终端适配部署
在数字化转型浪潮下,企业对高效培训与精准考核的需求日益迫切。一套功能完备、多终端适配且易于定制的培训学习考试系统,成为企业提升员工能力、检验培训成果的关键工具。本文给大家分享一款基于 ThinkPHP 框架与 Uniapp 开发的企业培训学习考试系统&…...
C++ if语句完全指南:从基础到工程实践
一、选择结构在程序设计中的核心地位 程序流程控制如同城市交通网络,if语句则是这个网络中的决策枢纽。根据ISO C标准,选择结构占典型项目代码量的32%-47%,其正确使用直接影响程序的: 逻辑正确性 执行效率 可维护性 安全边界 …...

SpringBoot手动实现流式输出方案整理以及SSE规范输出详解
背景: 最近做流式输出时,一直使用python实现的,应需求方的要求,需要通过java应用做一次封装并在java侧完成系统鉴权、模型鉴权等功能后才能真正去调用智能体应用,基于此调研java实现流式输出的几种方式,并…...

深入解析I²C总线接口:从基础到应用
IC总线概述与基本概念 一句话概述:本章节将介绍IC总线的历史、定义及其在嵌入式系统中的作用,帮助读者建立对IC的基本理解。 IC(Inter-Integrated Circuit)总线是一种广泛应用于嵌入式系统中的串行通信协议,最初由飞利…...

Sklearn 机器学习 缺失值处理 检测数据每列的缺失值
💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在代码与灵感交织的数字世界里和大家相遇~💖 ✨ 在这个技术浪潮奔涌的时代,我们既是探索者,也是分享者。我始终相信,每一行代码都是通往创新的钥匙,而分享则能让这把钥匙照亮更多人的…...