在人工智能技术飞速发展的今天,AI编程工具已经从辅助工具演变为开发者工作流中不可或缺的核心组成部分。过去半年里,我系统性地探索了多种AI编程工具,从最初的碎片化体验到如今的系统掌握,深刻认识到选择合适的工具并深入理解其运作机制对于提升开发效率的重要性。随着2025年AI编程工具的成熟与分化,不同工具在技术门槛、适用场景和核心能力上呈现出明显的差异化特征。
本次我利用春节假期时间对现有比较流行的ai编程工具做一轮扫盲式的学习,按照我学习的顺序总结三个具有代表性的AI编程工具:Cursor、Claude Code和Spec-Kit。这些工具分别代表了当前AI编程领域的三种不同范式——Cursor作为最受开发者欢迎的集成式AI编辑器,Claude Code作为模型能力突出的专业工具,以及Spec-Kit作为特定领域的解决方案。通过对比分析它们的核心功能、适用场景和使用体验,我希望能梳理出一条清晰的AI编程工具学习路径,为后续的深度应用奠定基础。
这是一篇学习笔记记录的是我认为笔记需要深入记忆的东西,没办法直接拿来作为学习参考,关于安装、界面介绍等繁琐的部分不会涉及。看完了视频教程之后可以拿这篇笔记一起共同探讨一下。
首先总结一下cursor的部分。
1 cursor是什么
Cursor 是一款 AI 驱动的代码编辑器,它基于VS Code进行深度定制和增强,而非一个简单的插件。其核心目标是通过深度集成人工智能,彻底改变软件开发的方式,将程序员从繁琐的代码编写中解放出来,更多地扮演任务设计师和架构师的角色。
我之所以选择cursor作为我学习ai编程的起点,主要他是基于VS Code的编辑器,VS Code编辑器的使用习惯和插件配置,可以快速的移植到cursor中来,只需要专注ai本身即可,不需要再对编辑器的其他使用方式做出适应。它没有改变程序员熟悉的核心工作流,而是以自然的方式将 AI 能力融入其中,让用户逐步发现和依赖。
2 cursor的四种工作模式
在Cursor中,四种核心工作模式(Ask、Plan、Debug、Agent)构成了一个完整的权限阶梯体系,每种模式对应不同的自动化程度、风险级别和适用场景。理解这四种模式的本质区别是高效使用Cursor的关键。四种模式按照权限级别从低到高排列,形成一个清晰的工作流层次:
这种权限分级设计的核心逻辑在于平衡效率与安全:Agent模式权限虽高但需谨慎使用,Ask模式权限虽低但可放心探索陌生代码库,Plan模式则在大需求规划中提供可控性,Debug模式针对特定问题提供专项能力。
接下来分开讲一下这四种模式:
① Ask模式
Ask模式是Cursor中权限最低的模式,它只回答问题,不会修改任何代码,类似于一个“只读”的代码理解助手。专注于信息检索和理解,响应直接,其核心价值在于“理解优于修改”。当接手一个陌生项目时,可通过Ask模式快速了解技术栈、目录结构和核心架构;也可以针对特定文件或函数,深入理解其设计思路和实现细节;还有在引入新技术或方案前,基于现有架构获得建议。Ask模式既可以在右侧的会话窗口里进行提问,也可以直接选中代码,基于代码块通过快捷键进行唤起相关功能继续提问。Ask模式仅提供理解和建议,不执行任何代码修改任务,需要后续切换其他模式或手动实现。
② Agent模式
Agent模式是Cursor最强大、权限最高的模式,它的定位是复杂编码任务的“自动驾驶”模式,它能够完全自主地探索代码库、编辑文件、运行命令,像智能代理一样自动规划和执行复杂任务。其工作流程包括:理解需求→制定计划→探索代码→执行修改→自主验证。它可以跨文件修改,同时修改多个文件;也可以执行需要 AI 自主执行一系列步骤(如安装依赖、运行测试、修复 lint 错误)的任务。具备完整的工具集,可处理复杂、多步骤的工作流。适合处理复杂的任务。不过高度的自主也带来了局限性,如果任务过于复杂或指令不清,可能导致不理想的代码修改。需要提供清楚的需求和修改边界,以及同意的规范对ai进行约束。
③ Plan模式
Plan模式是介于Ask和Agent之间的中权限模式,它生成详细的任务方案但需要人工审核确认后才执行。其独特价值在于“磨刀不误砍柴工”,避免Agent模式在大需求上盲目执行导致方向跑偏。Plan模式通常作为Ask到Agent的过渡阶段:先用Ask探索问题、明确需求,再用Plan生成详细方案,最后切换Agent执行或人工实施。它的使用场景主要是对大块新需求的开发思路还不够明确的时候需要逐步去细化技术方案,将一个完整的大需求拆分成小块进行。或者需要系统性地修改多个模块时,先获得整体改造方案。明确的计划能让后续的 Agent 执行更精准。生成的计划文档也可供团队评审和存档。
④ Debug模式
Debug模式是针对Bug修复的特殊高权限模式,专注于自动定位代码问题并生成修复方案。它能够插入调试日志、分析异常原因并提供针对性修复。由于手里没有正在开发的项目,这个模式目前还没有进行实践。按照学习得到的结论是他可以修复难以复现或原因不明的 Bug,分析性能问题或回归问题,还可以解决标准 Agent 模式无法解决的具体错误。这个模式场景特定,不适用常规的功能开发。
总结:
Cursor的四种模式构成了一个完整的人机协作体系:
Ask是侦察兵:安全探索未知领域
Plan是参谋长:制定作战方案
Debug是医疗兵:精准修复问题
Agent是工程兵:大规模执行任务
关于四种功能的工作流得到以下结论:
规划先行:对于复杂任务,先用 Ask 或 Plan 模式理解需求和制定方案。
执行跟进:方案明确后,用 Agent 模式执行。
精准控制:当需要微调或完全掌控时,通过 @ 文件提供精确上下文。
专项调试:遇到顽固 Bug,启用 Debug 模式。
3 cursor的@功能
在Cursor中@符号是一个很核心的功能点。它构建了一套智能上下文引用机制,让开发者能够结构化、有选择地向AI对话注入项目文件、代码片段、文档乃至网络信息,从而极大地提升了AI回答的精准度与开发效率。
@符号本质上是一套指令前缀集合,通过输入不同的前缀(如@Files、@Code),开发者可以明确告知AI需要引用的内容类型。这套系统可以在Cursor的多种交互场景中被激活。激活方式极为简单:在任何上述场景的输入框中,键入“@”符号即可触发一个上下文关联的下拉菜单。该菜单会根据当前项目自动过滤并推荐最相关的资源。可以限定ai的关注范围,减少token的消耗,同时响应速度额可以被提高。也可以@外部的信息,更精准的把信息喂给ai系统。
常见的几种使用场景:
1. 代码上下文:在处理大型代码库时,务必使用 @file、@folder 来聚焦范围,避免 AI 误改其他无关模块的代码。
@Flies:引用整个文件;
@Folders: 引用整个文件夹;
@Code:引用特定的代码片段;
2. 文档与外部信息
@Docs:接入官方文档或者自定义文档。
@Web: 互联网搜索信息。
@Link:引用网页链接内容。
3. 开发历史与状态
@Git:访问git历史记录。
@Past Chats:引用过往的会话内容。
@Recent Change: 引用最近修改过的代码。
@Lint Errors:自动捕捉当前活跃文件中代码错误和警告
4. 规则与自定义
@Cursor Rules:引用和应用项目特定的规则和指南。
@Terminal:引用终端日志和错误信息。
@Browser:控制内置浏览器环境进行自动化测试、UI 调试等。
Cursor的@符号系统远不止是一个快捷搜索工具,它是一套重塑开发者与AI协作方式的上下文管理框架。通过从@Files、@Code的精准局部引用,到@Folders、@Codebase的全局结构理解,再到@Docs、@Web的外部知识融合,它使AI从一个被动的代码补全工具,转变为一个能够深度理解项目语境、技术栈和设计意图的主动智能协作者。掌握并熟练组合运用这些功能,是解锁Cursor全部潜力、将开发效率提升至新层次的关键。
4 约束规则(Cursor Rules)
Cursor Rules是一套为AI助手设定的“行为准则”,用于控制AI在生成代码、解释修改或协助工作流时的行为。其核心价值在于为大型语言模型提供持久且可复用的上下文指导,因为模型在不同补全之间不会保留记忆,而规则在提示层面解决了这一问题。简单理解,Rules就是给AI配置的“员工手册”,让它按照项目要求工作,从而约束AI的各种“奇思妙想”,生成更符合预期的代码。
提到约束规则,就需要了解规则特有的一种文件格式mdc文件,MDC(Markdown Configuration)文件是Cursor中用于定义项目规则的新格式,已逐步替代旧版的.cursorrules文件。它是一种基于Markdown的语法,专门用来定义AI在编码过程中的行为、约束以及上下文。
每个.mdc文件由两部分组成:
关键元数据字段:
description (string):规则的功能描述,指导AI如何应用该规则。一个清晰、准确的描述对于AI判断规则相关性至关重要。
globs (string):指定规则生效的文件路径匹配模式(类似.gitignore语法),用于精确控制规则的适用范围。例如:"*.ts,*.tsx"或"src/**/*.tsx"。
alwaysApply (boolean):指示是否应无条件地将该规则注入到AI上下文中。核心规则可设为true,特殊规则设为false。
priority (number):规则优先级,数字越小优先级越高。通常只有主要规则文件才需要设置。
Cursor Rules支持一个清晰的分层管理架构,以实现精细化的控制。可以按作用范围分层(优先级从高到低)
用户规则 (User Rules):在Cursor设置中定义的全局偏好,适用于所有项目,适合存放个人编程习惯或语言偏好(如“Always respond in 中文”)。
项目规则 (Project Rules):位于项目根目录的.cursor/rules/文件夹中,以.mdc文件格式存储。这是团队协作中最常用的类型,支持按文件类型匹配(globs),并可纳入版本控制实现团队共享。
团队规则 (Team Rules):需要Cursor Business/Enterprise版本,通过控制台在整个组织范围内创建并强制执行,优先级最高,适合统一团队标准和安全规范。
在创建或设置规则时,需要选择其应用类型,这决定了规则如何被触发:
Always:规则内容始终包含在模型上下文中,适用于项目的核心、全局规则。
Auto Attached:当引用的文件与globs模式匹配时自动触发,适用于特定模块或文件类型的规则。
Agent Requested:规则描述可供AI使用,由AI根据当前任务自行判断是否包含,必须提供清晰的description。
Manual:仅当在对话中明确使用@Cursor Rules或@规则名提及时才会被包含,适用于临时或特殊场景
总结:Cursor Rules与MDC格式共同构成了一套工程化的AI协作规范体系。通过理解MDC的文件结构、运用分层的管理思想、进行合理的文件划分并选择恰当的规则类型,开发者可以有效地将项目知识、技术栈约束和团队规范“灌输”给AI,使其从一个被动的代码补全工具,转变为一个能够深度理解项目语境、主动遵循规范的智能协作者。
5 Skill
Skills 是一个开放标准,用于通过特定领域的知识、工作流程和可执行脚本来扩展 AI Agent 的能力。它不仅告诉 AI 规则(“要做什么”),还教它方法(“具体怎么做”),甚至提供执行工具(脚本),与始终加载的静态规则不同,Skills 在 AI 认为相关时才会被智能发现和调用。一个 Skill 可以跨项目、跨工具复用,多个 Skills 可以协同工作。具体的skill使用我还在探索中,等到后期学会了可以单独做一份笔记记录。
以上就是我在春节假期花了两天时间(每天2~3小时)学习cursor的成果,一边学习一边实践,学的越多越感叹Ai编程的强大,感觉自己已经落后时代一年了。接下来几天我又分别学习了Claude Code和Spec-Kit。这两部分的学习笔记会在近期陆续整理。敬请期待。
最后提供一下ai帮我整理的cursor核心知识点导图,大家也可以一起参考一下。