Show HN: 為你的基礎設施(包括AI代理配置)提供Git日誌
statedrift 是一個開源工具,透過將 Linux 主機的網路、軟體包、服務等狀態記錄到防篡改的雜湊鏈中,實現了基礎設施配置的版本控制和審計。它支援快照、差異比較、安全分析和完整性驗證,無需外部依賴或雲端服務。
statedrift 是一個全新的開源工具,旨在為基礎設施配置提供類似 Git 的版本控制體驗。它透過一個單一的 Go 語言二進位制檔案,定期對 Linux 主機的實際狀態進行快照,包括網路介面、路由表、核心引數、已安裝軟體包、系統服務、使用者賬戶、防火牆規則等,並將這些快照連結成一個防篡改的雜湊鏈。
該工具解決了運維和審計中的一個典型痛點:當事故發生時,團隊很難就配置狀態達成一致,而傳統的審計流程依賴截圖和電子表格,這些材料容易被篡改。statedrift 提供了一種可驗證的、不可否認的證據記錄方式。每次快照都會被 SHA-256 雜湊鏈鎖定,任何對歷史快照的修改都會破壞鏈條的完整性,並被驗證命令檢測出來。
statedrift 的核心操作非常簡潔。使用 statedrift init 初始化儲存目錄並生成創世快照,之後透過 statedrift snap 捕獲當前狀態。statedrift diff HEAD~1 HEAD 可以對比兩次快照的具體變更,而 statedrift analyze 則會執行內建規則引擎,評估變更的安全風險等級。例如,它可以檢測到核心引數更改、新使用者賬戶建立等可能表明入侵或配置漂移的事件。
該工具的設計強調隱私和獨立性。所有資料都儲存在本地,無需連線任何雲端服務。它不收集網路資料包內容,也不修改系統狀態。statedrift 定位為證據工具而非監控工具,專注於回答“在某個時間點系統的真實狀態是什麼,並且你能證明它嗎?”這個問題。
除了基礎的主機狀態收集,statedrift 還提供了一系列可選收集器,用於擴充套件監控範圍。例如,containers 收集器可以跟蹤容器執行時的變化,gpu 收集器監控 NVIDIA GPU 資訊,而 harness 收集器則專門針對 AI 編碼代理的配置檔案(如 Claude Code 的 settings.json 和 .mcp.json)進行版本控制。這對於檢測 AI 代理許可權或工具的靜默變更尤為有用。
statedrift 的安裝非常簡單。Linux 使用者只需執行一條 curl 命令即可下載並安裝,也支援從原始碼構建。安裝後,在 60 秒內即可完成首次快照和差異比較。該專案在 GitHub 上開源,採用 BSD 許可證,社群可以自由使用和貢獻。總之,statedrift 為那些需要嚴格變更記錄和審計能力的環境提供了一個輕量級、可信任的解決方案。