Skip to main content

终端引用

终端引用允许您将终端输出直接带入与 Careti 的对话中。只需输入 @terminal,Careti 就能看到您终端的最近输出。

在聊天中输入 @ 时,从菜单中选择"终端"或直接输入 @terminalCareti 会立即看到活动终端的最近输出,包括错误消息、构建日志或命令结果。

当我处理构建错误、测试失败或调试输出时,我一直在使用终端引用。不用尝试复制粘贴终端输出(这通常会丢失格式),我只需询问:

运行测试时出现这个错误: @terminal

是什么原因导致的?我该如何修复它?

这让 Careti 获得完整的终端输出及其所有格式。然后 Careti 可以分析错误消息、堆栈跟踪和周围的上下文,提供更准确的帮助。

终端引用与文件引用结合使用时特别强大。当我调试失败的 API 调用时,我会同时引用两者:

调用 API 时出现这个错误: @terminal

这是我的 API 客户端代码: @/src/api/client.js
这是端点实现: @/src/server/routes/users.js

我做错了什么?

这种方法为 Careti 提供了所需的一切 - 确切的错误输出、客户端代码和服务器实现 - 所有这些都无需我手动复制任何内容。

下次遇到命令输出或构建错误问题时,尝试使用 @terminal 而不是复制输出。您将获得更准确的帮助,因为 Careti 可以看到完整的终端上下文及其正确的格式。

工作原理

当您在消息中使用终端引用时,后台发生的情况如下:

  1. 当您发送消息时,Careti 会检测文本中的 @terminal 模式

  2. 扩展调用 getLatestTerminalOutput(),该函数访问 VSCode 的终端 API

  3. 它从您的活动终端捕获最近的输出缓冲区

  4. 终端输出以结构化格式附加到您的消息中:

    <terminal_output>
    $ npm run test
    > project@1.0.0 test
    > jest

    FAIL src/components/__tests__/Button.test.js
    ● Button component › renders correctly

    [保留格式的完整终端输出]
    </terminal_output>
  5. 这条包含嵌入式终端输出的增强消息被发送给 AI

  6. AI 现在可以"看到"完整的终端输出及其所有格式

每当您使用终端引用时,这个过程都会自动发生,让 AI 访问您的命令结果、错误消息和其他终端输出,而无需手动复制。

终端问题故障排除

如果您遇到终端引用或终端集成的问题(例如"Shell 集成不可用"或命令未显示输出),请参考我们的综合终端集成故障排除指南

常见问题包括:

  • 终端引用未捕获输出
  • Careti 聊天中出现"Shell 集成不可用"消息
  • 命令执行但输出对 Careti 不可见
  • 终端集成工作不稳定

故障排除指南提供了特定于平台的解决方案和详细的配置步骤来解决这些问题。