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> 部分,让您聚焦于整个“影响范围”、仅新代码路径,或已弃用的部分。
  • 每个图表都可以在全尺寸画布中打开,支持平移、缩放,并可在亮色和暗色主题间切换。漫游模式会逐操作展示变更,突出显示受影响的节点和路径。

如何获取

  1. GitHub App – 在任意仓库中安装 coldtea‑pr‑lens 应用。该应用会自动分析每个 PR,渲染 SVG,并在每次推送时更新评论。
  2. GitHub Action – 添加一个工作流(.github/workflows/pr‑lens.yml),在 CI 中运行相同的分析,使用您自己的 LLM API 密钥(默认为 Gemini,但 OpenAI 或任何 /chat/completions 端点也适用)。
  3. CLI – 在本地运行 @coldtea/pr‑lens‑cli,分析 diff,渲染 SVG,生成 markdown 评论,验证生成的图,或导出系统的持久化地图。
  4. 代理技能 – 安装技能(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。

相关

  • 项目
  • 项目
  • 项目
  • 项目