Cursor 编辑器 @ 符号功能详解与用法指南

Table of Contents

Cursor 编辑器 @ 符号功能详解与用法指南

本文基于 Cursor 官方文档与社区资料,系统梳理了 @ 符号相关的所有功能、用法与实现细节,适合开发者查阅与进阶。

Cursor 0.48 版本 @ 符号与上下文功能最新变化

以下内容基于 Cursor 0.48 版本官方与社区资料,涵盖 @ 符号及上下文管理的最新特性与体验优化。

1. 多标签页支持

  • 现在 Chat/Composer 支持多标签页(⌘T/Ctrl+T),每个标签页的 @ 上下文互不干扰,适合多任务并行。
  • 标签页切换时,@Files/@Folders/@Codebase 等上下文仅作用于当前标签页。

2. 自定义模式(Custom Modes)

  • 可在 Settings → Features → Chat → Custom modes 中开启,为不同场景定制专属的 @ 上下文推荐、默认模型、MCP 工具等。
  • @ 符号可结合自定义模式,为不同模式预设常用上下文(如自动 @Docs、@Files、@Web 等)。

3. 上下文索引与 @ 推荐机制升级

  • 索引速度大幅提升,@Files/@Folders/@Codebase 响应更快,适合大型项目。
  • 新增 @Recommended,输入 @ 时自动推荐最相关的文件、文件夹、文档等上下文。
  • 输入区会显示当前上下文 Token 数,便于控制上下文大小,防止超限。

4. @ 符号新特性与体验优化

  • @Web 支持多语言和更智能的网络检索,自动识别查询意图。
  • @Docs 支持文档批量管理,可多选文档作为上下文。
  • 支持图片上下文,将图片拖入输入框,AI 可结合图片和 @ 上下文综合理解。
  • Apply 优化:@ 相关建议可一键应用到多文件,支持差异预览和批量接受/拒绝。

5. 成本与用量可视化

  • 每次对话/代码生成的 Token 消耗和成本明细可在历史记录中查看,便于管理。

6. 团队协作与 MCP 工具链增强

  • 团队共享代码库时,@Files/@Folders/@Codebase 的索引和推荐会自动适配团队成员权限和项目结构。
  • @ 符号可结合自定义 MCP 工具,自动推荐最适合当前任务的外部工具。

1. @ 符号的作用与入口

在 Cursor 的 AI 输入区域(如 Chat、Composer、Cmd K),输入 @ 会弹出建议菜单,可引用文件、文件夹、代码片段、文档、Git 历史、代码库、网页等上下文,极大提升 AI 回答的相关性和准确性。

  • 常见入口
    • Chat 聊天输入框
    • Cmd K 提示栏
    • Composer 编辑器

默认情况下,当前文件会自动作为上下文。使用 @ 可精确指定更多上下文。

2. @Files —— 引用文件

  • 用法:@文件名@Files,可通过下拉选择具体文件。
  • 作用:将整个文件内容作为上下文,适合让 AI 理解/修改/解释某个文件。
  • 细节:
    • 支持模糊搜索,输入部分文件名即可筛选。
    • 多个同名文件时会显示路径预览。
    • 文件过长时会自动拆分为块,按相关性排序。
  • 示例:
    • @Files utils.py
    • 拖拽文件到输入框也可自动添加为上下文。

3. @Folders —— 引用文件夹

  • 用法:@文件夹名@Folders,选择目标文件夹。
  • 作用:将整个文件夹下的所有文件作为上下文,适合大范围重构、批量查找。
  • 细节:
    • 文件夹内容过大时,AI 会自动筛选最相关的文件。
  • 示例:
    • @Folders src/components

4. @Code —— 引用代码片段

  • 用法:@Code,或选中代码后点击"添加到聊天"/"添加到编辑"。
  • 作用:只引用某段代码,适合精确定位问题或讨论实现细节。
  • 细节:
    • 选中代码后快捷键 Ctrl/⌘ Shift L(添加到聊天)或 Ctrl/⌘ Shift K(添加到编辑)。
  • 示例:
    • 选中 function foo() { ... },添加到 Chat。

5. @Docs —— 引用第三方文档

  • 用法:@Docs,选择已爬取/索引的文档。
  • 作用:为 AI 提供官方文档、API 说明等权威上下文。
  • 细节:
    • 支持自定义添加文档(粘贴 URL 后自动爬取)。
    • 可在设置中管理已添加文档。
  • 示例:
    • @Docs React
    • 添加新文档:@Docs > Add new doc 粘贴文档链接。

6. @Git —— 引用 Git 历史/差异

  • 用法:@Git,选择提交、diff、PR 等。
  • 作用:让 AI 理解代码变更、生成 commit message、分析历史。
  • 细节:
    • 可引用当前 diff、指定提交、PR。
    • 支持自动生成提交信息。
  • 示例:
    • @Git diff
    • @Git commit 123abc

7. @Codebase —— 全局代码库搜索

  • 用法:@Codebase,输入关键词。
  • 作用:让 AI 在整个项目范围内查找相关代码片段。
  • 细节:
    • 支持智能重排序、相关性推理。
    • 适合定位全局用法、跨文件分析。
  • 示例:
    • @Codebase 查找 UserContext 的所有用法

8. @Web —— 联网搜索

  • 用法:@Web,输入查询内容。
  • 作用:让 AI 自动联网搜索,补充最新资料或外部知识。
  • 细节:
    • 支持多语言搜索。
    • 适合查找最新技术、外部 API、竞品分析等。
  • 示例:
    • @Web 2024 年最新的 LLM 微调方法

9. @Definitions —— 附近定义

  • 用法:@Definitions
  • 作用:将当前文件附近的所有定义(如函数、类)作为上下文。
  • 细节:
    • 适合让 AI 理解当前作用域。
  • 示例:
    • @Definitions
  • 用法:粘贴链接,自动转为 @Link。
  • 作用:让 AI 识别并处理外部链接。
  • 细节:
    • 可点击"Unlink"取消链接。
    • 粘贴时按住 Shift 可保留为纯文本。
  • 示例:

11. #Files —— 精准文件定位

  • 用法:#文件名
  • 作用:结合 @ 符号,实现更精准的上下文控制。
  • 示例:
    • #app.js @Code 只引用 app.js 的某段代码。

12. /command —— 编辑器上下文

  • 用法:/,选择 open editors/active editors。
  • 作用:快速引用已打开的编辑器标签页。
  • 示例:
    • /open editors

13. 进阶技巧与注意事项

  • 可组合多个 @ 符号,丰富上下文。
  • 拖拽文件/文件夹到输入框,自动生成 @Files/@Folders。
  • 上下文过多时,AI 会自动筛选最相关内容。
  • 某些功能需代码库已完成索引。
  • @ 符号支持模糊搜索,提升效率。

14. 实现原理简述

  • Cursor 会根据 @ 符号收集的上下文,自动将相关内容打包传递给大语言模型。
  • 支持分块、重排序、相关性推理,提升上下文利用率。
  • 某些 @ 功能(如 @Web、@Docs)需联网或预先索引。

15. 常见问题解答

  • Q: @Files/@Folders 支持多大文件/目录?
    • A: 支持较大文件/目录,但内容过多时会自动分块并筛选。
  • Q: @Docs 支持哪些文档?
    • A: 支持官方文档、API 文档、自定义爬取的网页等。
  • Q: @Git 能做什么?
    • A: 可分析 diff、生成提交信息、回溯历史等。

通过灵活运用 @ 符号,开发者可极大提升 AI 编程效率与上下文相关性,是高效使用 Cursor 的核心技能之一。