Skip to content

Kiro Diagnostics 会结合已安装的 IDE 语言扩展,把实时错误、类型信息、lint 和项目语义提供给 agent。它不需要额外配置,但需要先安装对应语言扩展并打开目标语言文件来激活 language server。

Kiro Diagnostics:让 agent 读取 IDE 扩展里的代码问题

Kiro Diagnostics tool 的作用,是让 Kiro agent 能看到 IDE 已经知道的代码问题。比如语法错误、类型不匹配、编译问题、lint 规则和语言服务器提供的语义信息。

这对 AI IDE 很重要。没有 diagnostics 时,agent 只能根据文件内容猜测;有了 diagnostics,它能更接近一个正在使用 IDE 的开发者,直接利用语言扩展提供的反馈。

它如何工作

Kiro 会和你安装的 IDE extensions 集成。如果你安装了对应语言扩展,Kiro 可以访问:

  • 实时错误检测:语法错误、类型不匹配、编译问题。
  • 语言特定信息:语义、imports、依赖关系。
  • 代码质量分析:lint 规则、风格违规、最佳实践提示。
  • 上下文感知:项目结构、可用 API、类型定义。

这意味着,当你让 Kiro 修复 TypeScript 错误、Java 报错或 Python lint 问题时,它可以从 IDE 的诊断结果出发,而不是只靠自然语言描述。

如何启用

基本流程很简单:

  1. 安装目标语言对应的扩展。
  2. 打开该语言的文件,让 language server 激活。
  3. 正常让 Kiro agent 执行任务。

Diagnostics tool 会在 agent 执行过程中自动工作,不需要额外配置。

官方语言指南中会列出推荐扩展,例如 Python、TypeScript / JavaScript、Java 等。实际使用时,建议先确保你在 Kiro 里打开项目后,IDE 本身已经能显示问题列表。

和 dev server 怎么配合

Diagnostics 更偏静态分析,例如类型、语法、lint。Dev server 或 build watcher 更偏运行时构建反馈,例如 Next.js 编译、webpack watch、测试监听。

二者一起用更完整:

text
Check the build watcher output and show me any TypeScript errors

Kiro 可以同时读取后台进程输出和 diagnostics,帮助你更快定位问题。详见 Kiro Dev Servers

排查 diagnostics 不生效

如果 Kiro 没有检测到代码问题,可以按顺序检查:

  • Extension Status:确认语言扩展已启用。
  • Output Panel:查看 language server 是否报错。
  • Reload Window:通过 command palette 重新加载窗口。
  • Update Extensions:更新扩展到较新版本。
  • 打开目标语言文件:有些 language server 需要打开文件后才会启动。

常见问题

Q: Kiro Diagnostics 需要手动配置吗?

A: 通常不需要。只要安装并启用语言扩展,打开目标语言文件后,Kiro 会在 agent 执行中自动使用 diagnostics。

Q: Diagnostics 能替代测试吗?

A: 不能。它适合发现类型、语法和 lint 问题;功能正确性仍需要测试和构建验证。

Q: 为什么 Kiro 看不到我的 TypeScript 错误?

A: 先确认 TypeScript / JavaScript 扩展或 language server 正常启动,并检查 Output Panel 是否有报错。