跳过主要内容
问题提及(problems mention)让 Cline 能够即时访问您工作区中的所有错误和警告。只需输入 @problems,Cline 即可看到 VSCode 检测到的每个诊断问题。 当您在聊天中输入 @ 时,从菜单中选择“Problems”或直接输入 @problems。Cline 将立即看到您工作区中的所有错误和警告,包括文件位置和错误消息。 当我遇到构建错误或 TypeScript 问题时,我经常使用问题提及。我不再尝试描述错误或逐个复制它们,而是直接提问:
I'm getting these TypeScript errors and I'm not sure how to fix them: @problems

Can you help me understand what's wrong and how to fix it?
这为 Cline 提供了完整的错误列表,包含确切的位置和消息。Cline 随后可以分析多个错误中的模式,并建议全面的解决方案。 当与文件提及结合使用时,问题提及功能尤其强大。当我处理复杂的类型错误时,我会同时引用两者:
I'm getting these type errors: @problems

Here's my component: @/src/components/DataTable.tsx
And the types file: @/src/types/api.ts

How can I fix these issues?
这种方法为 Cline 提供了所需的一切——确切的错误、组件代码和类型定义——所有这些都无需我手动复制任何内容。 下次您遇到错误时,尝试使用 @problems 而不是复制错误消息。您将获得更准确的帮助,因为 Cline 可以看到完整的错误上下文和位置。

幕后工作原理

当您在消息中使用问题提及时,后台会发生以下情况:
  1. 当您发送消息时,Cline 会检测到文本中的 @problems 模式
  2. 扩展程序调用 VSCode 内置的 vscode.languages.getDiagnostics() API 来获取所有错误和警告
  3. 它将这些诊断信息格式化为包含文件路径、行号和错误消息的结构化文本表示
  4. 格式化的问题列表以结构化格式附加到您的消息中
    <workspace_diagnostics>
    /path/to/file.js:10:5 - error TS2322: Type 'string' is not assignable to type 'number'.
    /path/to/file.js:15:3 - warning: This variable is never used.
    </workspace_diagnostics>
    
  5. 此包含嵌入式诊断信息的增强消息将发送给 AI
  6. AI 现在可以“看到”您工作区中的所有错误和警告,以及它们的位置和消息
每当您使用问题提及时,此过程都会自动发生,从而为 AI 提供您工作区中所有问题的全面视图,而无需您手动复制它们。