文件夹引用
文件夹引用让您可以将整个目录带入与 Caret 的对话中。只需输入 @/ 后跟以斜杠结尾的文件夹路径,Caret 就可以访问文件夹结构及其内容。
当您在聊天中输入 @/ 时,Caret 会显示您的工作区文件和文件夹。导航到您想要的文件夹,确保包含尾部斜杠,Caret 就能看到文件夹的结构和内容。
当我需要帮助理解或重构代码库的整个部分时,我使用文件夹引用。与逐一引用单个文件不同,我可以直接指向整个目录:
我正在尝试理解我应用中的身份验证流程是如何工作的。
您能解释一下 @/src/auth/ 中文件的结构和关系吗?
Caret 然后可以看到 auth 目录中的所有文件、它们的内容以及它们之间的关系。这为它提供了完整的上下文来解释多个文件之间的复杂交互。
文件夹引用也非常适合获得项目组织方面的帮助。当我不确定项目结构是否合理时,我会要求 Caret 进行审查:
我正在建立一个新的 React 项目。这个文件夹结构合理吗?@/src/
您会改变什么来使其在项目增长时更具可维护性?
下次您处理多个相关文件时,尝试使用文件夹引用而不是单独引用每个文件。您将获得更全面的帮助,因为 Caret 可以看到一切如何组合在一起的更大图景。
底层工作原理
当您在消息中使用文件夹引用时,以下是幕后发生的情况:
-
当您发送消息时,Caret 在您的文本中检测
@/path/to/folder/模式(带尾部斜杠) -
扩展相对于您的工作区根解析文件夹路径
-
它调用
fs.readdir()获取该文件夹中所有文件和子目录的列表 -
对于目录中的每个文件,它检查是否为二进制或基于文本的
-
对于文本文件,它提取完整内容
-
文件夹结构和文件内容以结构化格式附加到您的消息中:
<folder_content path="path/to/folder">
├── file1.txt
├── file2.js
└── subfolder/
<file_content path="path/to/folder/file1.txt">
[文件内容]
</file_content>
<file_content path="path/to/folder/file2.js">
[文件内容]
</file_content>
</folder_content> -
这个带有嵌入文件夹结构和文件内容的增强消息被发送给 AI
-
AI 现在可以"看到"目录结构和该目录内文件的内容
每当您使用文件夹引用时,这个过程会自动发生,为 AI 提供项目结构和文件内容的全面视图。