跳过主要内容
文件夹提及允许你将整个目录带入与 Cline 的对话中。只需输入 @/,后跟一个以斜杠结尾的文件夹路径,Cline 即可访问该文件夹结构及其内容。 当你在聊天中输入 @/ 时,Cline 会显示你的工作区文件和文件夹。导航到你想要的文件夹,确保包含末尾的斜杠,Cline 将能看到该文件夹的结构和内容。 当我需要帮助理解或重构我的代码库的整个部分时,我使用文件夹提及。我不再需要逐个引用单个文件,而只需指向整个目录:
I'm trying to understand how the authentication flow works in my app.
Can you explain the structure and relationships between the files in @/src/auth/?
然后,Cline 可以查看 auth 目录中的所有文件、它们的内容以及它们之间的关系。这为它提供了完整的上下文来解释多个文件之间复杂的交互。 文件夹提及也非常适合获取项目组织方面的帮助。当我不确定我的项目结构是否合理时,我会要求 Cline 对其进行审查:
I'm setting up a new React project. Does this folder structure make sense? @/src/
What would you change to make it more maintainable as the project grows?
下次当你处理多个相关文件时,尝试使用文件夹提及而不是单独引用每个文件。你将获得更全面的帮助,因为 Cline 可以看到所有内容如何组合在一起的更宏观图景。

幕后工作原理

当你在消息中使用文件夹提及时,幕后会发生什么
  1. 当你发送消息时,Cline 会检测你文本中的 @/path/to/folder/ 模式(带有末尾斜杠)
  2. 扩展程序会解析相对于你工作区根目录的文件夹路径
  3. 它调用 fs.readdir() 来获取该文件夹中所有文件和子目录的列表
  4. 对于目录中的每个文件,它会检查它是二进制文件还是文本文件
  5. 对于文本文件,它会提取完整内容
  6. 文件夹结构和文件内容以结构化格式附加到你的消息中
    <folder_content path="path/to/folder">
    ├── file1.txt
    ├── file2.js
    └── subfolder/
    
    <file_content path="path/to/folder/file1.txt">
    [File content]
    </file_content>
    
    <file_content path="path/to/folder/file2.js">
    [File content]
    </file_content>
    </folder_content>
    
  7. 这条包含嵌入式文件夹结构和文件内容的增强消息被发送给 AI
  8. AI 现在可以“看到”目录结构以及该目录中文件的内容
只要你使用文件夹提及,此过程就会自动发生,从而为 AI 提供对你的项目结构和文件内容的全面视图。