type
status
date
slug
summary
tags
category
comment
icon
password
下面内容仅代表个人完全主观言论,没有任何客观依据。请仔细分辨内容真实性与时效性,不可盲目相信。
注意
目前的人工智能技术尚未达到 AGI(通用人工智能) 的水平。AI 本质上仍是一个高级的模式匹配工具,因此 不要期望通过一句话就能实现复杂功能。你需要耐心地逐步引导 AI 完成任务。
最新动态

一个十分令人兴奋的消息,在
0.48.x
中增加了许多新的功能!包含 聊天选项卡
(我们可以同时并行多个任务了!)、 基于使用情况的成本可见性
(不在浪费上下文长度)和 关于长语境的新聊天
(相当于 Token
耗尽提示)等功能!当然,重磅功能当然是
自定义模式
的登场,根据官方文档描述可以创建一些特定功能的聊天。更加专注某一个工作,就避免过度修改源代码导致出现意料之外的情况!这个书签是来自 Cursor 系统提示的 9 个教训:

基本编辑
关键快捷键:
下面的三个操作会是最常用的操作,请牢记。同时在自己的Cursor中进行尝试,体验实际效果
- 代码自动补全
- Windows/Linux:
Tab
- macOS:
Tab
- 在代码编辑器中输入函数定义或几行代码
- 按下Tab键
- Cursor会根据上下文自动生成后续代码
- 它会分析整个文件的内容
- 考虑已导入的模块和库
- 根据项目的整体结构提供建议
- 修改某处代码(如变量名)
- Cursor会自动标记出其他可能需要同步修改的位置
- 使用Tab键快速在这些位置间跳转并应用更改
- 代码编辑能力:
- Cursor: 不仅可以插入新代码,还能智能修改现有代码
- Copilot: 主要专注于代码生成,对现有代码的修改能力有限
- 上下文理解:
- Cursor: 能理解更广泛的项目上下文,包括跨文件的关系
- Copilot: 主要基于当前文件和最近的编辑历史
- 交互方式:
- Cursor: 通过Tab键提供更自然、无缝的编码体验
- Copilot: 通常需要用户手动触发或选择建议
- 使用"Go to Definition"跳转到函数定义
- 在预览窗口中修改函数签名
- 使用Tab功能快速修复所有调用处
- 按
Ctrl/⌘
和右箭头来接受建议的下一个单词 - 这允许您在保留部分AI建议的同时,对其他部分进行自定义修改
提供AI代码自动补全提示:在我们写代码或者写文字的时候,Cursor会主动预测我们将要输入的内容,对于预测的内容我们可以按
Tab
选择接受Cursor 智能代码补全详解(Tab)
概述
Cursor的智能代码补全,也就是快捷键
Tab
,是其最强大和独特的AI辅助编程工具之一。本教程将详细介绍Tab功能的使用方法,通过掌握Tab功能,您将显著提高编码效率和质量。Tab功能基础
多行代码补全
Cursor的Tab功能不仅可以进行单行代码补全,还能智能地生成多行代码:
例如: 右侧多行代码均是Curso入自动生成的

Cursor的Tab功能能够理解更广泛的代码上下文,不仅限于当前函数或类:
这使得Cursor的代码补全比传统的自动完成功能更加智能和准确。
Tab功能高级特性
光标预测(Cursor Prediction)
Cursor能预测您下一步可能要编辑的位置:
这大大提高了重构和维护代码的效率。示例:它不仅提示我Block需要添加,同时预测了下一行Address的值

如何开启光标预测
在Cursor的左下角,有个Cursor Tab,点击后,选择
Cursor Prediction
,即可开启
Cursor vs 其他AI编程助手
与GitHub Copilot的对比
使用技巧
在预览窗口中使用Tab
Cursor的Tab功能不仅限于主编辑窗口,在"Go to Definition"或"Go to Type Definition"的预览窗口中也可以使用:
这对于快速进行API更改特别有用。
部分接受建议
您可以通过以下方式更精细地控制代码补全:
结论
Cursor的Tab功能不仅提供了智能的代码补全,还具备强大的代码编辑和重构能力。通过充分利用Tab功能,您可以显著提高编码效率,减少重复工作,并更专注于解决复杂的编程问题。
随着Cursor团队不断优化和改进,我们可以期待Tab功能在未来会变得更加强大和智能,进一步改变我们的编码方式。
- 文件内聊天
- Windows/Linux:
Ctrl+L
- macOS:
Cmd+L
开启对单个文件的聊天功能。Cursor会基于这个文件来回答问题。
- 代码片段修改/命令行辅助
- Windows/Linux:
Ctrl+K
- macOS:
Cmd+K
- 在终端中,按下
Cmd+K
- 输入你的提示
- 按
Enter
键生成代码 - 注意 cursor只会帮你生成命令,但是不会帮你执行命令,所以需要你按下回车执行
- 快捷键:
- 使用
Ctrl/⌘ + L
打开AI面板并聚焦到聊天输入框。 - 手动打开:
- 点击编辑器右侧的AI面板图标。
- 在输入框中输入问题或指令。
- 按
Enter
发送消息。 - AI会生成回复,您可以继续提问或要求澄清。
- 在Cursor设置中开启"Default to no context"选项,默认不包含上下文。
- 使用
Alt/Option + Enter
发送不包含上下文的消息,其实很少使用。 - 你也可以在输入框中输入
@
然后选择你想要引用的内容,或者手动添加希望关联的文件。 - 你也可以直接复制一个url链接,甚至直接复制一个图片,cursor支持图片识别。
- 点击AI面板右上角的"Previous Chats"按钮,是一个时钟的图标。
- 或使用快捷键
Ctrl/⌘ + Alt/Option + L
。 - 点击任何对话线程查看详细内容。
- 编辑对话标题。
- 删除不需要的对话。
- 当AI生成代码建议时,您会看到代码块右上角的"Apply"按钮。
- 点击"Apply"将代码直接应用到您的文件中。
- 应用后,您可以:
- 使用
Ctrl/⌘ + Enter
接受更改。 - 使用
Ctrl/⌘ + Backspace
拒绝更改。 @Code
: 引用当前文件中的特定代码片段。@Files
: 引用整个文件内容。@Folders
: 引用整个文件夹中的所有文件。@Git
: 引用Git相关信息,如PR、待提交的修改等。@Codebase
: 搜索整个代码库提供更全面的上下文。@Doc
: 引入特定技术栈的文档。@Web
: 允许Chat搜索和引用网络信息。- 在Notepad中保存重要信息,如项目背景、编码规范等。
- 在Chat中使用@Notepad轻松引用这些信息。
- 合理使用上下文: 提供足够但不过多的相关信息,帮助AI更准确理解和解决问题。
- 利用多轮对话: 对于复杂问题,通过多次交互逐步引导AI给出最佳解决方案。
- 结合Apply功能: 对于代码修改建议,使用Apply功能快速应用并验证。
- 善用外部引用: 使用@Doc和@Web获取最新、最相关的外部知识。
- 创建个性化Notepad: 为常见任务或项目特定信息创建Notepad模板,提高效率。
在文件中对选定的代码片段进行修改,也可以在命令行终端中使用。
Cursor AI代码生成详解(Cmd+K)
概述
Cursor的AI代码生成功能,也就是快捷键
(Windows/Linux上为
),是一个强大的工具,能让你在编辑器中随时调用AI助手,并在指定代码位置进行原地修改或生成新代码。

Cmd+K功能基础
提示栏(Prompt Bar)
当你按下
Cmd+K
时,会出现一个称为"提示栏"的输入框。你可以在这里输入自然语言指令,就像在聊天框中一样。此外,你还可以使用@符号来引用其他上下文。生成
如果在按下
Cmd+K
时没有选中任何代码,Cursor将根据你在提示栏中输入的指令生成新代码。
内联编辑
要对某段代码进行原地编辑,只需选择要修改的代码,然后在提示栏中输入修改提示即可。

继续优化
在每次生成后,当你对结果不满意时,可以通过在提示栏中添加更多指令,并按
Enter
键来进一步完善生成结果。AI会根据你的后续指令重新生成代码。Cmd+K高级特性
默认上下文
Cursor会自动寻找各种有用的信息来改善代码生成,除了你手动包含的@符号外。这可能包括相关文件、最近查看的文件等。Cursor会根据与你的编辑/生成的相关性对上下文项进行排序,并保留最相关的项目供大型语言模型使用。
快速提问
如果你希望Cursor生成的内容不马上应用在你的代码中,当你输入指令后,在提示栏中按
Option/Alt Enter
,Cursor将回答你关于所选内容和附加上下文的任何问题,而不会自动修改你的文件。这个对话的内容可以在后续生成中继续使用,所以在Cursor给出回答后,你可以简单地输入"do it"来生成相应的代码。

使用技巧
终端中使用Cmd+K
我们可以在终端中按下Cmd+K。这允许你直接在终端中生成和执行命令,大大提高了工作效率。


结论
Cursor的Cmd+K功能不仅提供了智能的代码生成和编辑能力,还具备强大的上下文理解和交互式问答功能。通过充分利用Cmd+K功能,你可以显著提高编码效率,减少重复工作,并更专注于解决复杂的编程问题。
随着Cursor团队不断优化和改进,我们可以期待Cmd+K功能在未来会变得更加强大和智能,进一步改变我们的编码方式。
Cursor AI聊天详解(Chat)
概述
Cursor Chat 是一个强大的AI辅助编程工具,让您可以直接在编辑器中与AI进行对话,解决编程问题。本教程将介绍Cursor Chat的主要功能和使用方法,帮助您充分利用这一工具提高编程效率。
打开Cursor Chat

Chat的基本功能
多轮对话
Cursor Chat支持多轮对话,您可以:
上下文理解
Chat会自动包含当前文件作为上下文。您可以:

查看聊天历史
在聊天历史中,您可以:
切换模型
通过模型切换选择您喜欢的 AI 模型,Cursor Chat 将使用该模型生成响应。您可以通过按 Ctrl/⌘ / 在模型之间切换。您为 Chat 选择的 AI 模型将保存以供将来使用,因此您不必在每次打开 Cursor Chat 时都更改它

高级功能
Apply代码块

文件中会显示修改内容,绿色的表示这次修改的内容,红色的表示原来的内容,当点击accept时,表示接受这次的修改

上下文引用

使用@符号快速引用项目中的内容:
外部信息引用
Notepad功能
Notepad是一个强大的上下文模板功能
使用技巧
.cursor/rules
文件
这是
.cursorrules
的升级版,可以更细致地配置规则。比如,你可以为不同类型的文件(如 .java
和 .vue
文件)设置不同的 AI 规则。这种功能特别适合那些涉及多种编程语言的复杂项目。以下是cursor规则网站:
- 普通模式 vs. 代理模式
在 Cursor 的 Composer 功能中,你可以选择两种模式:
- 普通模式:适合快速、单次的代码编辑。它不会深入思考问题,主要用于简单的修改或调整。
- 代理模式:AI 会更加“聪明”,它会认真分析问题,使用推理和工具来解决复杂的任务。这种方式更适合需要深度理解和探索代码的场景。
重要提醒很多人容易混淆这两种模式的用途,导致使用不当。比如,有些人用普通模式试图完成代理模式才能做到的事情,结果发现效果不好,甚至吐槽 Cursor 不够智能。其实问题在于没选对模式!记住:如果你需要高质量的结果,请务必切换到代理模式!
使用流程
- 使用
gemini 2.5 pro
模型先进行需求规划(一般我会让AI放到docs文件夹下面,使用Markdown格式存放内容),尝试消除自然语言描述时存在的 二义性 。 在这里十分建议你要有个brief。你要干什么、你需要哪些功能、你希望调用什么API(建议附API开发文档链接)、你希望的工作流程是什么样的、是否希望切分文件等等,最好有一版比较完整的想法。
- 使用
claude-3.7-sonnet
模型列出步骤清单,避免之后使用claude-3.7-sonnet
模型进行代码编写的时候,一次灌入太多内容导致Token快速被消耗殆尽出现幻觉。
- 让
claude-3.7-sonnet
模型读取步骤清单,根据清单开始工作。每次只进行一步,完成之后要及时更新步骤清单完成状态。
这里主要是避免 claude-3.7-sonnet 进行如下工作:
- 重复执行某一步骤导致失控
- 避免检查导致的Token上下文长度消耗
- 避免重写已经完成的部分(它真的会这么做)
- 切换回
IDEA
中消除存在的警告和编译错误。如果这里存在问题,请回到Cursor
中让claude-3.7-sonnet
修改对应部分。
- 指挥
claude-3.7-sonnet
进行版本提交(这里大多数人都使用的是Git吧?我电脑没有安装全局的SVN,所以在使用SVN的时候一般是我手动提交)
- 新开一个对话,回到
步骤3
继续
CURSOR写到一半降智怎么办?
在规则中指出:必须以xxx作为开头
(e.g.在交流中必须以“我是卢本伟”作为开头)
当它违反这个规则时,新开对话即可
目前的 Cursor 上下文砍的太短了,
所以一个 Chat 的长度调整到解决一个问题
就行了(5-10次),你可以在新的对话中
继续上一个未解决的问题


cursor的ssh远程连接失败解决方案
cursor期间发现无法ssh链接远程服务器,搜索到github上有一个关闭的issues,不过只指出了删除cursor从vscode携带的remote-ssh及其他相关ssh工具,我试了之后发现还是无法解决
解决方案:
步骤:
1、删除cursor从vscode直接获取的remote-ssh,并且直接在cursor的插件商店中下载remote-ssh。
2、删除ssh远程连接目录下的..cursor_server文件,然后重新ssh链接远程服务器即可。
这两个步骤都完成之后,我这里是能够正常使用cursor远程连接远程服务器
目前的问题:vscode与cursor在使用远程开发时一直不能共存,试了试感觉是remote-ssh插件的问题,cursor和vscode有冲突
原有功能被意外改坏怎么办?
防止Cursor改错代码及恢复方法
预防措施
比如我们要在一个很复杂的代码文件中修改某一个图标的颜色,我会这么说:
重点:就只完成这个修改,不要动任何我别的代码逻辑和文件
加和不加这一句话给cursor,差别是很大的,大家试试就知道了。
而且现在Cursor的Agent模式有一个好处,就是Cursor帮你修改完代码后,你需要手动点击Accept,代码才会保存,如果你点击了Reject,那代码是不会保存的。
代码报错解决思路
有效定位和解决Cursor生成代码中的错误
这里分享几个我最常用遇到报错时候的方法:
有效性从小到大递增
1.在发给cursor报错信息的对话后面附上:
当你发了这段提示词给Cursor之后,Cursor首先会调用强大的上下文系统去阅读你的代码文件,然后自己分析一遍该怎么解决,然后复述给你听。等你看过没问题了,它再根据之前的复述去完成代码的实现。
如果上来就直接修改代码,相当于少了复盘这个步骤,等于他可能没有过多的思考和分析就去修改代码。不是不行,而是不够好。
2.让Cursor帮你在关键节点加上日志
一个程序在运行过程中如果出现了报错,那肯定是之前的步骤没问题,但是运行到了其中一个步骤的时候出现了问题。那就让cursor帮你在每个关键的节点加上日志,然后每次程序运行的时候,重要的步骤的运行情况都会出现在浏览器的开发者工具日志中,这样一下子就能帮cursor定位你程序运行报错的原因了
日志查询位置:
右键网页----检查----右侧框中控制台选项
关于 自动测试并修复问题
- 你的工具要支持进行
单元测试
功能才能进行自动测试
行为。
- 你要开启
YOLO
模式才能享受自动测试
带来的便利。
步骤
- 让
claude-3.7-sonnet
编写单元测试
- 配置好对应的
环境变量
- 大部分情况下
claude-3.7-sonnet
都能知道应该做什么,但是为了节约快速请求
次数我们一般会让他尽可能一次性完成测试目标
话术
效果图

针对整个项目的测试
cursor针对某一整个项目时偶尔会力不从心
因此有以下技巧可以帮助cursor(
仅限claude的模型
)快速理解整个项目并充分利用cursor的工具:
1.首先切换为agent模式,只有这个模式它才会调用本地工具(如终端,读取文件等等)

2.命令cursor在项目根目录使用"tree /f"命令,并命令它总结每个文件的作用
如图:

3.命令cursor根据获取到的所有文件总结出项目结构:
总结一下整个项目的结构,方便cursor针对整个结构中的一部分进行测试用例,也方便之后开新对话让AI快速理解整个项目.
做个比喻,这一步是得到一整栋楼的大致情况,
使用"tree /f"并让AI进行每个文件总结得到的东西是楼里面的房间的情况,
而代码细节就是构成房间的钢筋水泥.
比如总结出UI,中间层,服务层
这一切都是服务于让模型理解整个项目的,你要有其他方法也可以,只要让模型理解整个项目就行.
不然模型创建新的代码文件会东一个西一个到处都是,耦合度极高.


4.命令cursor
为每个层级创建白盒测试
(根据需求来创建,这个时候此前收集到的信息会被模型归纳总结避免遗漏某个文件的测试)
5.直接让cursor运行测试,接着就看cursor反复测试代码直到调用工具次数到达上限(25次)或者代码通过测试吧
6.适当的时候可以让它添加DEBUG语句(毕竟模型还不能通过断点来DEBUG)来避免反复修改却始终没有解决问题的情况.

有些时候单个会话过长会导致等待非常长的一段时间才能输出,而这个时候我会选择新开一个会话并附上之前总结出来的项目信息来快速使cursor回归状态并避免长时间等待模型的输出
节省对话次数的方法就是在一次对话中让它进入"运行测试"-“得到测试结果”-“进行DEBUG”-"运行测试"的循环
cursor与idea同步
- Windows:
Alt+Shift+P
- Open project in IDEAAlt+Shift+O
- Open current file in IDEA
更换使用的终端
Ctrl
+ Shift
+ P
唤起命令框,输入下面命令:选择
Git Bash
,重启 Cursor
客户端。Q: 为什么选择 Git Bash?A: 因为Cursor
总是会使用Linux/MacOS
的命令格式,导致白白浪费工具调用次数。使用PowerShell
又总会失败。所以这里选择了Git Bash
,开发者应该都有这个东西吧?对吧?
对话示例
图片太长了,这里折叠一下。
对话示例图片内容
Cursor Prompt 这一块./
全局Rules配置
让AI生成的代码更符合你的开发风格
功能介绍
Rules简单来说就是你可以通过这里的配置,让 Cursor AI 生成的代码更符合你的开发风格和需求,可以在里面定义生成代码的命名规则,注释标准等等,你也可以将他理解为是提示词模板。
而我们现在讲的全局Rules,这个文件就针对你的全部项目生效的,而下一章讲的根目录下的.cursorrules,这个文件就只针对你当前项目生效的。
配置位置
所以当我们设置全局Rules的时候,尽可能找一些不要过于针对某个编程语言的规则,否则你每次新建项目都要重新设置一遍,会很麻烦。

Rules示例
这里我分享一些我自己用过,比较好的全局Rules给大家,大家可以参考下:
25.04.06Cursor 全局通用规则Rules V4.5 :多维思考+五大规则模式 让你码到飞起
五大模式prompt:
25.04.01/ai仿真人类prompt:
25.04.04/ai仿真人类编码++版本
以下是其他全局prompt,可供选择:
MCP
目前来说,MCP的功能更像是给模型打了一个DLC。使其可以完成之前无法完成的一些功能,但MCP并不是越多越好。你需要根据你的需要进行选择性配置MCP,不然会出现同功能类型的MCP打架的情况。
README-zh.md
punkpeye
里面有一些比较热门的MCP,例如 Sequential Thinking.
0:准备 Node.js 环境

鉴于 Cursor 在 0.47.x 中优化了 mcp 的设置,现在 Windows 系统上已经可以透过
mcp.json
来设置 MCP,下面我将会以 Firecrawl MCP 作为一个添加示例示例实例
1: 从 smithery.ai 中找到 Firecrawl MCP Server
2: 定位至其 Github,并找出 json 的设置示例

第三: 在 Cursor Setting 中点选 MCP,然后再点选 Add new global MCP server

第四: 在新弹出的 mcp.json 文件中贴上之前 Github 复制的 json 内容,并替换你自己的 Firecrawl API 钥匙。如果你是 Windows 系统,则需要在 command 中替换为
"cmd /c npx"

第五: 现在 MCP Server 中对刚才添加的 mcp-server-firecrawl 点选刷新,会弹出小黑框,等待一会后就会看到变成绿灯,就是成功上线了。
全局使用
点击新建,复制粘贴上面的代码并保存

特定项目中使用
项目根目录新建 .cursor 文件夹,新建文件
mcp.json
复制粘贴上面的代码并保存
绿点表示启动成功

一些我使用到的MCP工具
感受比较好的:
wopal/mcp-server-hotnewsmodelcontextprotocol/server-sequential-thinking
mendableai/mcp-server-firecrawl
smithery-ai/filesystem
这四个工具
这个MCP需要安装对应的浏览器拓展和运行独立的进程才能完全发挥作用,配置起来有些麻烦。
推荐的MCP工具
BrowserTools MCP,Cursor 与 Chrome 的通信
效果

安装流程
参考 官方详细版
- 下载安装包(可自行去Github下载)BrowserTools-1.2.0-extension.zip (22.7 KB)Chrome 安装本地拓展不赘述了

- Cmd 执行
- 验证


- Cursor 对话测试
工具组合2
推荐使用模型:
- Claude 4 Sonnet
- Claude 3.7 Sonnet
- Claude 3.5 Sonnet
Gemini 2.5 Pro这个模型好像不太喜欢调用MCP工具,我使用的时候总是忽略我让他调用的指令。可能是我用的不太对,我之后再试一试。
全局:
- Context7 —— 这个MCP工具母庸置疑需要全局配置,任何一个项目基本上都离不开这个工具。
官方介绍
前端:
- playwright —— 可以自行打开浏览器进行调试的一个MCP工具,你可以让他干一些别的。在调试前端BUG的事情异常好用。 不必纠结你的模型是否支持视觉!将网页结构转为文字发送给模型。添加
-vision
可以开启视觉(真正截图之后发给模型)。
官方介绍
后端:
- mysql —— 后端狂喜,终于不再让模型自己猜这个表会有什么字段了。他可以自己访问数据库表结构然后写出来正确的SQL!
关于Trae使用体验
依托,就是依托。没有规则约束,上下文和没有差不多。用起来我感觉我被喂了依托赛博答辩。
参考与引用
- 作者:KAI
- 链接:https://blog.kaitp.com//technology/cursor
- 声明:All rights reserved. 本文禁止全文转载。如需引用,请注明文章链接。 ©KICC 保留所有权利