
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,而不是一直新增留言。






