OpenBug CLI 是什麼?
OpenBug CLI 是一款具 AI 協助的智慧命令列工具,用於除錯執行中的應用程式。它將互動終端助理與本地叢集配對,在您執行服務時擷取日誌,然後利用這些日誌與程式碼回答除錯問題。
核心目的是減少執行時行為(日誌)與原始碼之間的切換。無需手動在多個終端與檔案中搜尋,您可以詢問發生什麼事,並讓 CLI 將相關日誌與本地可存取的程式碼關聯。
主要功能
- 互動終端 AI 助理 (
debug):在一終端啟動助理,用於在服務執行時詢問問題。 - 自動日誌擷取與串流:使用
debug <command>執行服務時,OpenBug 會將日誌串流至本地叢集,用於 AI 回應。 - 自然語言搜尋本地程式碼:助理可回應如「某行為在哪裡實作」等問題,搜尋您的程式碼庫。
- 透過共享本地叢集的多服務除錯:在不同終端執行不同服務;皆連至相同叢集,讓 AI 追蹤堆疊間問題。
- 本地優先存取與選擇性資料分享:程式碼本地存取不需上傳;僅 AI 查詢的特定片段傳至伺服器,日誌僅在需回答時串流。
- 使用個人 API 金鑰驗證請求:CLI 以您的 API 金鑰驗證請求(詳見設定流程)。
如何使用 OpenBug CLI
- 安裝 CLI:
npm install -g @openbug/cli - 在終端 1 啟動 AI 助理:
系統會提示登入並貼上 OpenBug 應用程式的 API 金鑰。debug - 在其他終端啟用除錯執行服務。來自儲存庫的範例:
debug npm run dev debug python app.py debug docker-compose up - 在終端 1 詢問除錯問題,同時服務執行中。助理會分析擷取日誌並搜尋程式碼,提供精準洞見。
若無設定即可測試,專案也提供互動示範,逐步除錯三個真實 bug。
使用情境
- 診斷本地開發中端點失敗原因:例如詢問「為何 auth 失敗?」,助理可參考相關日誌並定位驗證邏輯。
- 追蹤多服務間問題:在不同終端使用
debug ...執行後端與前端(或多後端服務);AI 可利用多服務日誌解釋錯誤傳播。 - 找出未知行為的實作點:使用如「付款 webhook 在哪處理?」等自然語言問題,讓助理搜尋本地儲存庫。
- 調查執行時資料不一致:日誌顯示 schema 不符或設定錯誤時,請 AI 將日誌列與相關程式碼路徑關聯。
- 除錯不熟悉程式碼庫,無需依賴網際網路搜尋:助理搜尋實際本地程式碼,而非網路上泛用指引。
常見問題
-
OpenBug 會上傳整個程式碼庫嗎? 不會。文件指出程式碼庫本地存取,從不上傳;僅 AI 查詢的特定程式碼片段傳至伺服器。
-
OpenBug 何時將日誌傳至伺服器? 僅當 AI 需要用於回答問題時,才串流日誌至伺服器。
-
OpenBug 如何支援多服務除錯? 使用共享本地叢集:在不同終端以
debug <command>執行多服務,皆連至相同叢集,讓 AI 跨堆疊關聯日誌。 -
我可以自架 OpenBug 伺服器嗎? 可以。儲存庫描述自架方式:複製伺服器儲存庫,以您的 OpenAI API 金鑰設定,然後透過如
WEB_SOCKET_URL與API_BASE_URL等環境變數指向 CLI 至您的伺服器。
替代方案
- 搭配日誌的本地除錯 + 文字搜尋 (例如 grep/ripgrep) + IDE 工具:輸入類似 (日誌與原始碼),但工作流程仰賴手動關聯與導覽,而非 AI 輔助對話介面。
- 應用程式效能/可觀測性平台 (日誌與追蹤儀表板):適合檢視與查詢執行時資料,但通常不提供從本地儲存庫出發的自然語言、程式碼感知除錯。
- 專注儲存庫問答的 AI 程式碼助理 (無執行時日誌擷取):可回答程式碼結構問題,但無法自動擷取執行中服務的日誌,以將答案根植於執行時行為。
替代品
AakarDev AI
AakarDev AI 是一個強大的平台,通過無縫的向量資料庫整合簡化 AI 應用程式的開發,實現快速部署和可擴展性。
BenchSpan
BenchSpan 以並行方式執行 AI agent 基準測試,記錄分數與失敗,並以 commit 標記可重現結果,降低失敗重跑的 token 浪費。
Sleek Analytics
Sleek Analytics 提供輕量、重視隱私的即時訪客追蹤,顯示訪客來源、瀏覽內容與停留時間,掌握站點現況互動。
Ably Chat
Ably Chat 提供聊天 API 與 SDK,讓你打造自訂即時聊天室,支援反應、在線狀態、訊息編輯/刪除等功能。
MacSpoof
MacSpoof 是 macOS MAC 位址變更工具,可改寫或隨機化 Wi‑Fi MAC 位址,重新連線並降低在公共 Wi‑Fi 被記錄的裝置識別。
OpenFlags
OpenFlags 是開源、可自架設的功能旗標系統,支援逐步交付;App SDK 可本地評估,控制平面提供安全、精準的發佈。