上下文提及
上下文提及是向 itBuilder 提供项目特定信息的强大方式,使其能够更准确、更高效地执行任务。您可以使用提及来引用文件、文件夹、问题和 Git 提交。上下文提及以 @
符号开头。

上下文提及概述,显示聊天界面中的 @ 符号下拉菜单。
提及类型

文件提及将实际代码内容添加到对话中,供直接引用和分析。
提及类型 | 格式 | 描述 | 使用示例 |
---|---|---|---|
文件 | @/path/to/file.ts | 在请求上下文中包含文件内容 | "解释 @/src/utils.ts 中的函数" |
文件夹 | @/path/to/folder | 包含文件夹中所有文件的直接内容(非递归) | "分析 @/src/components 中的代码" |
问题 | @problems | 包含 VS Code 问题面板诊断 | "@problems 修复我代码中的所有错误" |
终端 | @terminal | 包含最近的终端命令和输出 | "修复 @terminal 中显示的错误" |
Git 提交 | @a1b2c3d | 通过哈希引用特定提交 | "提交 @a1b2c3d 中发生了什么变化?" |
Git 更改 | @git-changes | 显示未提交的更改 | "为 @git-changes 建议一条消息" |
URL | @https://example.com | 导入网站内容 | "总结 @https://docusaurus.io/" |
文件提及

文件提及包含带行号的源代码,用于精确引用。
功能 | 详情 |
---|---|
格式 | @/path/to/file.ts (始终从工作区根目录以 / 开头) |
提供 | 带行号的完整文件内容 |
支持 | 文本文件、PDF 和 DOCX 文件(带文本提取) |
适用于 | 初始请求、反馈响应和后续消息 |
限制 | 非常大的文件可能会被截断;不支持二进制文件 |
文件夹提及

文件夹提及包含指定目录内所有文件的内容。
功能 | 详情 |
---|---|
格式 | @/path/to/folder (无尾随斜杠) |
提供 | 目录内所有文件的完整内容 |
包含 | 文件夹内非二进制文本文件的直接内容(非递归) |
最适合 | 提供目录中多个文件的上下文 |
提示 | 提及大型目录时要注意上下文窗口限制 |
问题提及

问题提及直接从 VS Code 的问题面板导入诊断信息。
功能 | 详情 |
---|---|
格式 | @problems |
提供 | VS Code 问题面板中的所有错误和警告 |
包含 | 文件路径、行号和诊断消息 |
分组 | 按文件组织问题以获得更好的清晰度 |
最适合 | 无需手动复制即可修复错误 |
有关 itBuilder 如何与 VSCode 诊断系统集成的详细信息,请参阅诊断集成。
终端提及

终端提及捕获最近的命令输出以进行调试和分析。
功能 | 详情 |
---|---|
格式 | @terminal |
捕获 | 最后一个命令及其完整输出 |
保留 | 终端状态(不清除终端) |
限制 | 仅限于可见的终端缓冲区内容 |
最适合 | 调试构建错误或分析命令输出 |
Git 提及

Git 提及提供提交详情和差异,用于上下文感知的版本分析。
类型 | 格式 | 提供 | 限制 |
---|---|---|---|
提交 | @a1b2c3d | 提交消息、作者、日期和完整差异 | 仅在 Git 仓库中工作 |
工作更改 | @git-changes | git status 输出和未提交更改的差异 | 仅在 Git 仓库中工作 |
URL 提及

URL 提及导入外部网页内容并将其转换为可读的 Markdown 格式。
功能 | 详情 |
---|---|
格式 | @https://example.com |
处理 | 使用无头浏览器获取内容 |
清理 | 移除脚本、样式和导航元素 |
输出 | 将内容转换为 Markdown 以提高可读性 |
限制 | 复杂页面可能无法完美转换 |
如何使用提及
- 在聊天输入框中输入
@
以触发建议下拉菜单 - 继续输入以过滤建议或使用箭头键导航
- 使用 Enter 键或鼠标点击选择
- 在请求中组合多个提及:"修复 @/src/component.ts 中的 @problems"
下拉菜单自动建议:
- 最近打开的文件
- 可见的文件夹
- 最近的 git 提交
- 特殊关键词(
problems
、terminal
、git-changes
) - 所有当前打开的文件(无论忽略设置或目录过滤器如何)
下拉菜单自动过滤掉常见目录,如 node_modules
、.git
、dist
和 out
,以减少噪音,即使手动输入时仍可包含其内容。
重要行为
忽略文件交互
行为 | 描述 |
---|---|
.rooignore 绕过 | 文件和文件夹 @mentions 在获取上下文内容时绕过 .rooignore 检查。如果直接提及,将包含被忽略文件的内容。 |
.gitignore 绕过 | 同样,文件和文件夹 @mentions 在获取内容时不遵守 .gitignore 规则。 |
Git 命令遵守 | Git 相关提及(@git-changes 、@commit-hash )确实遵守 .gitignore ,因为它们依赖于 Git 命令。 |