Skip to main content
@ 提及是 Cline 最强大的功能之一,让您可以无缝地将外部上下文引入对话中。无需复制粘贴代码、错误消息或文档,您只需使用 @ 符号简单引用它们。
@ 提及概述
当您在聊天输入中键入 @ 时,Cline 会显示可用提及类型的菜单。这些提及让您可以直接在对话中引用文件、文件夹、问题、终端输出、git 更改,甚至网页内容。

可用的 @ 提及

Cline 支持多种类型的 @ 提及,每种都设计用于将不同类型的上下文引入您的对话:

文件提及

使用 @/path/to/file 引用工作空间中的任何文件。Cline 可以看到完整的文件内容,包括导入、相关函数和周围上下文。

文件夹提及

使用 @/path/to/folder/ 引用整个目录。Cline 可以看到文件夹结构和所有文件内容,非常适合理解多个文件之间的复杂交互。

问题提及

使用 @problems 向 Cline 显示工作空间中的所有错误和警告。Cline 可以看到包含文件位置和错误消息的完整列表。

终端提及

使用 @terminal 分享您最近的终端输出。Cline 可以看到保留格式的完整输出,非常适合调试构建错误或测试失败。

Git 提及

使用 @git-changes 引用未提交的更改或使用 @[commit-hash] 引用特定提交。Cline 可以看到完整的差异、提交消息和其他相关信息。

URL 提及

使用 @https://example.com 引用网页内容。Cline 获取并查看完整的网页内容,非常适合引用文档或 GitHub 问题。

为什么 @ 提及很重要

@ 提及通过以下方式改变您与 Cline 的交互:
  1. 消除复制粘贴:不再需要复制粘贴代码、错误消息或终端输出。只需直接引用它们。
  2. 保留上下文:Cline 可以看到完整的上下文,包括导入、相关函数和可能相关的周围代码。
  3. 保持格式:终端输出、错误消息和网页内容保持其格式,使它们更容易理解。
  4. 启用复杂工作流程:结合多个 @ 提及为 Cline 提供您问题的完整图片:
    我遇到了这些错误:@problems
    
    这是我的组件:@/src/components/Form.jsx
    这是 API 端点:@/src/api/users.js
    
    提交时发生错误:@terminal
    
    我认为这个提交可能导致了它:@a1b2c3d
    

开始使用

要使用 @ 提及:
  1. 在聊天输入中键入 @
  2. 从菜单中选择提及类型或继续键入
  3. 对于文件和文件夹,导航您的工作空间结构
  4. 像往常一样发送您的消息
Cline 将自动处理提及并将引用的内容包含在发送给 AI 的上下文中。 在您与 Cline 的下一次对话中尝试使用 @ 提及 - 当您可以无缝引入外部上下文时,您会惊讶于您的交互变得多么高效和有效。

底层工作原理

当您在消息中使用 @ 提及时,幕后有一个复杂的过程在进行:
  1. 检测:当您发送消息时,Cline 使用正则表达式扫描文本中的 @ 提及模式
  2. 处理:对于每个检测到的提及,Cline:
    • 确定提及类型(文件、文件夹、问题、终端、git、URL)
    • 获取相关内容(文件内容、终端输出等)
    • 适当格式化内容
  3. 增强:原始消息使用结构化数据增强:
    您带有 @/path/to/file 的原始消息
    
    <file_content path="/path/to/file">
    [完整文件内容]
    </file_content>
    
  4. 上下文包含:这个包含所有嵌入内容的增强消息被发送给 AI 模型
  5. 无缝响应:AI 现在可以”看到”所有引用的内容,就像您手动复制粘贴一样
每当您使用 @ 提及时,整个过程都会自动无缝进行,为 AI 提供完整的上下文,而无需您手动复制任何内容。 每种类型的 @ 提及都有其特定的实现细节,您可以在各自的文档页面中找到。