pgrundev/pgbot

Postgres intelligence for ai agents & apps

解決的問題

pgbot 是一個針對 PostgreSQL 的時間點診斷工具,可立即提供資料庫健康狀態的可見性,無需部署監控代理程式、時序資料庫或外部服務。它解決了快速診斷資料庫效能問題、識別未使用的索引,以及偵測查詢效能退化或資料表膨脹問題的難題,且無需承擔完整監控平台的額外負荷。

工作原理

pgbot 是一個單一的靜態二進位檔,使用具有 pg_monitor 權限的唯讀角色連接到 PostgreSQL 實例。它讀取資料庫自身的內部統計檢視表來計算健康分數與診斷結果。為了追蹤時間上的變動,它在使用者的機器上維護一個本地基線儲存,讓它能報告自上次執行以來的變更。雖然核心診斷結果是確定性的,並在 Go 中計算,但它提供了一個可選的 AI 層(透過 OpenAI 或 Gemini),可將這些診斷結果以自然語言解釋。

適用對象

專為資料庫管理員、開發人員以及需要快速、唯讀方式檢視 PostgreSQL 資料庫健康狀態的 AI 代理設計,無論是本地實例、AWS RDS 等管理型服務,還是非自己擁有的資料庫皆適用。

主要特色

  • 零部署:單一靜態二進位檔,無需收集器或外部服務。
  • 唯讀保證:使用專用的 pg_monitor 角色與會話層級唯讀鎖定,確保安全。
  • 基線追蹤:記住先前的執行結果,以識別效能退化與資料庫行為的變更。
  • AI 驅動分析:提供可選的 askexplain 命令,以自然語言解釋確定性診斷結果。
  • 代理就緒:提供版本化的 JSON 合約與 Model Context Protocol (MCP) 伺服器,讓 AI 代理可存取診斷結果。
  • 全面診斷:包含專用命令,用於分析索引、查詢、vacuum 健康狀態與資料表儲存空間。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案