AI News HubLIVE
站內改寫1 分鐘閱讀

Show HN:Themis – 自託管AI代碼審查,使用您自己的密鑰和模型

Themis 是一個自託管的 GitHub PR 審查機器人,使用您自己的 OpenAI Codex、Claude Max 或 GLM 訂閲來審查拉取請求,提供內聯發現和結構摘要,並可自定義審查策略。

來源Hacker News AI作者: Diwadoo

Themis 是一款自託管的 GitHub Pull Request 審查機器人,旨在讓開發團隊利用自己的 AI 訂閲進行代碼審查,而無需將代碼發送給第三方服務。它目前支持 OpenAI Codex、Anthropic Claude Max 以及智譜 GLM 作為後端引擎,所有數據均通過用户自己的 API 密鑰處理,確保了代碼的隱私和安全。

從架構上看,Themis 以 GitHub App 的形式運行,通過 webhook 接收 PR 和評論事件,並在內存隊列中順序處理。每次審查時,它會對 PR 頭部進行淺克隆,根據倉庫中 .themis/ 目錄下的審查策略運行配置的引擎,然後將內聯發現和結構化摘要發佈回 GitHub。整個系統僅需一個 Docker 鏡像,無需數據庫、Redis 或消息代理,極大簡化了部署和維護。

部署過程非常簡便。用户只需擁有 Docker 和對應 AI 引擎的 CLI 登錄憑證,即可通過一行命令完成 GitHub App 的創建、密鑰生成和安裝。Themis 提供了預構建鏡像 ghcr.io/zaimwa9/themis,支持通過 Docker Compose 快速啓動。對於臨時測試,可使用 GitHub App Manifest 引導流程;對於生產環境,建議手動創建穩定的 GitHub App。

審查規則高度可定製。用户可以在倉庫根目錄下創建 .themis/ 目錄,包含 review.md(審查哲學、嚴重性校準等)和 config.yaml(行為配置)。機器人還支持對話交互:通過 @review 觸發重新審查,@review <focus> 指定審查重點,以及自動回答線程中的問題。此外,Themis 提供了詳盡的配置選項,包括引擎選擇、網絡訪問、模型參數、超時限制等。

Themis 支持三種引擎:Codex(默認)、Claude 和 GLM。每種引擎的認證方式不同:Codex 需要本地登錄並複製 auth.json;Claude 需要設置 CLAUDE_CODE_OAUTH_TOKEN;GLM 只需 GLM_API_KEY。用户可以在 .env 中設置實例默認引擎,倉庫也可以在配置中覆蓋。如果引擎憑據缺失,Themis 會發布評論説明,而不是靜默失敗。

項目還提供了完善的故障排除和文檔支持,包括部署指南、隧道配置、無頭模式以及引擎貢獻指南。Themis 採用 MIT 許可證,鼓勵社區參與開發。對於開發者,可以使用 uv 和 Python 3.12 在本地運行和測試,無需 Docker。