OpenBug CLI icon

OpenBug CLI

OpenBug CLI 是一款面向开发者的命令行调试工具,结合 AI 分析实时应用日志并搜索本地代码,支持在终端中进行单服务或多服务的实时调试。

OpenBug CLI

概述

OpenBug CLI 是一款用于调试运行中应用的命令行工具,结合 AI 辅助。它把终端助手、实时日志捕获和本地代码库搜索结合起来,让你在应用实际执行时排查问题。

其工作流以 `debug` 为中心:一个终端启动助手,另一个通过 `debug <command>` 运行你的应用或服务。README 说明,这有助于单个服务或连接到同一本地集群的多个服务进行调试,同时保持代码访问在本地,仅在分析需要时流式传输日志。

核心功能

双终端调试工作流

在终端中运行 AI 助手,同时用第二个命令在调试模式下启动你的应用。这样可以让调试对话紧贴实时进程。

自动日志捕获

自动从运行中的服务捕获日志,并提供给助手,使回答基于运行时行为,而不只是静态分析。

自然语言代码搜索

使用自然语言搜索本地代码库,例如无需手动使用 grep 就能询问某个 webhook 或 token 校验路径在哪里处理。

多服务协同

将多个运行中的服务连接到同一个本地集群,让助手能够跨更大的技术栈关联日志和代码。

终端与浏览器界面

提供基于浏览器的 `studio` 模式,以及带有快捷键的终端界面,用于切换视图、重新连接和管理聊天/日志显示。

项目配置

支持首次项目设置,自动创建 `openbug.yaml` 并将服务注册到本地集群。

适用场景

  • 调试实时应用

    在一个终端中用 `debug <command>` 运行服务,同时让助手查看日志并回答应用在运行时的行为。

  • 排查多服务技术栈

    将后端和前端服务连接到同一个集群,让助手可以通过多个终端中的日志追踪故障。

  • 快速熟悉代码库

    就不熟悉的代码提出自然语言问题,例如某个功能或校验路径是在哪里实现的,然后让助手在本地搜索。

  • 切换到可视化调试视图

    当你想使用不同于终端的调试界面并需要可视化查看聊天或日志时,切换到浏览器 `studio` 视图。

  • 标准化项目设置

    通过首次运行提示和生成的 `openbug.yaml` 完成新项目设置,以便后续运行复用相同配置。

Pros and Cons

Pros

  • 将命令执行、日志和 AI 指导整合到一个面向终端的工作流中。
  • 使用运行时日志和本地代码搜索,使答案比单纯的静态代码辅助更具上下文感知能力。
  • 支持跨连接到同一集群的多个服务进行调试。
  • 同时提供终端和浏览器界面,并带有用于切换视图和重新连接的快捷键。

Cons

  • 项目标记为 beta 且仍在积极开发中,因此行为和工作流可能仍会变化。
  • 它需要特定的设置,包括本地集群、API 密钥以及 Node.js 20+。
  • README 说明代码会在本地访问,且只会发送选定片段,这对希望完全离线工作流的团队来说可能是限制。

FAQ

如何为新项目进行设置?

OpenBug CLI 会在一个终端中启动 AI 助手,并在另一个终端中运行你的应用命令。首次在某个目录中使用时,它会提示输入项目描述,并创建一个 `openbug.yaml` 配置文件。

OpenBug CLI 可以帮助我做什么?

README 说明,OpenBug 可以自动捕获日志、用自然语言搜索代码库,并与理解运行中系统的 AI 进行对话。它专为调试实时应用而设计,而不是静态代码审查。

它可以跨多个服务运行吗?

该 CLI 支持在多个终端中运行多个服务,并将它们连接到同一个本地集群,因此 AI 可以跨服务查看日志,并在多个仓库中搜索代码。

会向服务器发送什么内容?

README 表明,你的代码会保留在本地并在本地访问,只有被 AI 查询到的特定代码片段会发送到服务器。日志只会在回答问题所需时才会被流式传输。

它适合生产环境使用吗?

OpenBug CLI 目前处于 beta 阶段,并且仍在积极开发中。源码还列出了 Node.js 20+ 和兼容的包管理器作为要求,因此用户应预期这是一个会持续演进、且有明确运行环境要求的工具。

Quick Facts

类别
Developer Tool
主要界面
Terminal CLI with optional browser studio
包名
@openbug/cli
命令
`debug`
要求
Node.js 20+ plus npm, yarn, or bun
源域名
github.com