PR Lens AI Pull Request 視覺化與程式碼審查

先看懂變更的架構與資料流,再逐行閱讀 Diff。

prlens.dev
PR Lens screenshot

PR Lens 是一款開源的 AI Pull Request 視覺化工具。它會讀取程式碼變更與必要的儲存庫脈絡,把 PR 轉成動畫架構圖和資料流圖,並直接放在 GitHub Pull Request 留言裡,讓 Reviewer 先掌握全貌,再深入閱讀重要的 Diff。

用白話解釋,PR Lens 網站是做什麼的?

大型 PR 往往同時牽涉多個檔案、服務、呼叫與刪除路徑。一般檔案清單只說明「哪裡改了」,不一定讓人理解元件如何互相影響。PR Lens 會將新增、修改、移除以及未變更但相關的元件畫在同一張圖;如果變更具有明確執行順序,還會用動畫逐步呈現資料流。它處理的是「這個 PR 整體改變了什麼」,並不是自動尋找 Bug 或安全漏洞的掃描器。

架構圖與資料流圖如何協助 Code Review

架構視角會依系統層級或邊界將元件放入不同泳道,並保留相關的未修改元件,協助判斷可能的影響範圍。資料流視角適合追蹤 API、Queue、Worker 或整合服務的執行先後。大型變更可以開啟全尺寸 Canvas,進行縮放、拖曳、明暗主題切換與分步導覽。輸出為不含 JavaScript 的 SVG,同一份通過 Schema 驗證的圖文件會產生確定性結果。

四種使用方式該怎麼選

GitHub App 最容易開始:選擇授權的儲存庫後,它會替每個 PR 維護一則留言,並在每次 Push 後更新。GitHub Action 在自己的 CI 中執行,使用自己的模型 Key,可連接 Gemini、OpenAI 或相容端點。CLI 提供本機分析、驗證、渲染、留言與匯出步驟。Agent Skill 則讓現有 Coding Agent 直接產生圖文件,不必再設定另一組模型。同一儲存庫應在 App 與 Action 之間擇一,以免出現重複留言。

實際的 Pull Request 審查流程

先安裝 App 或設定 Action,再建立已準備好審查的 Pull Request。首先查看架構圖,確認新元件、變更邊界與移除項目;接著沿資料流檢查執行路徑,變更較大時開啟 Canvas。利用圖中的影響範圍挑出需要仔細閱讀的檔案,但仍要檢查原始 Diff、CI 結果與邊界案例。若名稱、分組或排除項目不正確,應在 .github/pr-lens.yml 加入持久修正,不要直接編輯生成的 SVG。

費用、隱私與重要限制

PR Lens 對開源專案免費,官方儲存庫採 MIT 授權。使用 Action 或 CLI 時,分析費用由使用者支付給所選模型供應商;官網沒有公布可驗證的私人儲存庫 Hosted App 統一價格。Hosted App 會將 PR Head 淺層 Clone 到單次使用 Sandbox,以 Gemini 分析,將圖文件和渲染結果存入物件儲存,並在工作結束後刪除 Sandbox。官方也指出,已儲存物件沒有由應用程式設定自動到期時間,持有渲染圖片連結者可能取得該圖。處理敏感程式碼前,請閱讀官方資料處理與保留說明,必要時改用本機 CLI 或 Agent Skill。

常見問題

PR Lens 會找出 Bug 或資安問題嗎?

不會。它呈現變更的結構與路徑;缺陷檢測、資安掃描與人工判斷仍是獨立步驟。

一定要提供 API Key 嗎?

Hosted App 不需要使用者提供 Key。Action 和 CLI 使用自己的供應商 Key;Agent Skill 使用目前 Coding Agent 的模型。

可以用在私人儲存庫嗎?

Hosted App 可安裝在選定的私人儲存庫,但團隊應先評估儲存與連結存取模式。對資料控制要求較高時,可選本機模式。

再次 Push 後會怎樣?

App 會更新既有的 Sticky Comment,使圖表對應最新 PR Head,而不是一直新增留言。

官方資源與開發者入口

MuleRun部分免費
AI 智能體、雲端工作區與可重複工作流程
AI 自動化工具人工智慧研究助理 · AI編碼助理 · AI 應用程式開發工具 +1開啟