coldteadotai/pr-lens
Review code 100X faster. Lens draws every PR as animated architecture and data-flow walkthroughs, inside the pull request itself. Use it as a GitHub App, GitHub Action, CLI, or a skill for your coding agent
PR Lens – 拉取請求的視覺化審查
功能
- 當開啟一個拉取請求(PR)時,PR Lens 會發布一條包含變更動畫架構圖的評論。該圖顯示哪些檔案、服務或元件被新增、修改或刪除(綠色 / 橙色 / 紅色),以及它們之間的資料流。
- 評論是互動式的:可展開為
<details>區段,讓您聚焦於整個「影響範圍」、僅新程式碼路徑,或已棄用的部分。 - 每個圖表都可以在全尺寸畫布中打開,支援平移、縮放,並可在亮色和暗色主題間切換。漫遊模式會逐操作展示變更,突出顯示受影響的節點和路徑。
如何取得
- GitHub App – 在任意倉儲中安裝 coldtea‑pr‑lens 應用。該應用會自動分析每個 PR,渲染 SVG,並在每次推送時更新評論。
- GitHub Action – 新增一個工作流程(
.github/workflows/pr‑lens.yml),在 CI 中執行相同的分析,使用您自己的 LLM API 金鑰(預設為 Gemini,但 OpenAI 或任何/chat/completions端點也適用)。 - CLI – 在本機執行
@coldtea/pr‑lens‑cli,分析 diff,渲染 SVG,產生 markdown 評論,驗證生成的圖,或匯出系統的持久化地圖。 - 代理技能 – 安裝技能(
npx skills add coldteadotai/pr‑lens),使程式碼助手(Claude、Gemini、Copilot 等)能自動撰寫圖文件並發布評論。
核心元件
| 套件 | 作用 |
|---|---|
@coldtea/pr‑lens‑schema |
定義所有部分共享的圖契約的 JSON 模式 |
@coldtea/pr‑lens‑renderer |
將 JSON 圖轉換為決定性、動畫 SVG(亮/暗配對) |
@coldtea/pr‑lens‑cli |
與 LLM 互動,將 git diff 轉換為圖,渲染 SVG,建構評論,驗證,並可匯出地圖 |
pr‑lens GitHub Action |
CI 友好的包裝器,執行 CLI 並發布靜態評論 |
@coldtea/pr‑lens‑agent‑skill |
教授程式碼代理產生圖並發布評論的小型「技能」 |
設定
- 新增
.github/pr‑lens.yml檔案以重新命名、排除或分組檔案,固定車道等。該檔案是覆蓋層,程式碼演進時仍保持有效。 - CLI 會自動建立
.pr‑lens/資料夾(git 忽略),用於暫存檔案;您可能需要提交的唯一工件是匯出的地圖(.github/pr‑lens.map.json)。
為何重要 審查大型 PR 可能精神負擔沉重。PR Lens 將文字 diff 轉換為視覺地圖,展示系統哪些部分被觸及以及資料如何流動,讓審查者在逐行閱讀程式碼前就能理解影響範圍。
查看範例
- 「名人堂」中連結的即時範例(例如,React Hooks、Node fetch、Kubernetes Ingress、vLLM)。每個範例都展示了由 PR Lens 渲染的真實 PR。
- Web UI(
prlens.dev)托管互動式畫布。
快速開始
# 安裝 GitHub App(或新增 Action)
# 或本機執行:
export GEMINI_API_KEY=YOUR_KEY # 或 OPENAI_API_KEY
npx @coldtea/pr-lens-cli analyze --base origin/main
npx @coldtea/pr-lens-cli render .pr-lens/graph.json
open .pr-lens/*-dark-*.svg
授權 – MIT。
相關
- 專案
- 專案
- 專案
- 專案