Structured PR Review
基于gh CLI的结构化PR审查与反馈回应,支持多层分析与严重性分级。
基于多智能体的 GitHub Pull Request 代码审查,检测漏洞与规范合规性。
openclaw skills install @emersonbraun/eb-code-review命令、参数、文件名以原文为准
使用并行智能体与基于置信度的过滤机制,对拉取请求(Pull Request)进行全面、多角度的代码审查。
目标是发现真实且具有重大影响的缺陷,同时避免误报和琐碎问题。资深工程师不会浪费时间在无关紧要的细节上——本审查流程也不应如此。
请严格遵循以下步骤:
检查拉取请求是否满足以下任一条件:(a) 已关闭,(b) 是草稿,(c) 不需要审查(自动化 PR 或改动极其简单),或 (d) 你已对该 PR 进行过代码审查。若任一条件成立,则立即停止。
获取相关 CLAUDE.md 文件的路径(不包括内容):项目根目录下的 CLAUDE.md,以及所有被该 PR 修改文件所在目录中的 CLAUDE.md 文件。
查看拉取请求,返回对变更内容的简要总结。
启动 5 个并行智能体,每个返回一个问题列表及其触发原因:
| 智能体 | 审查重点 |
|---|---|
| #1 — CLAUDE.md 合规性 | 根据 CLAUDE.md 规范审计变更。注意:CLAUDE.md 是代码编写指南,因此并非所有规则都适用于审查阶段。 |
| #2 — 缺陷扫描 | 对差异部分进行浅层扫描,重点关注明显缺陷。聚焦于严重问题,避免琐碎建议。忽略可能的误报。 |
| #3 — Git 历史分析 | 查看被修改代码的 git blame 和历史记录,结合上下文识别潜在缺陷。 |
| #4 — 以往 PR 回顾 | 阅读此前修改过相同文件的 PR,检查是否有相关评论可适用于当前 PR。 |
| #5 — 代码注释审查 | 阅读被修改文件中的代码注释,确保变更符合注释中给出的指导。 |
针对每个发现的问题,启动一个 Haiku 智能体进行 0–100 的置信度评分:
| 分数 | 含义 |
|---|---|
| 0 | 误报。经审视不成立,或为原有问题。 |
| 25 | 可能真实,也可能为误报。无法验证。非 CLAUDE.md 中规定的风格问题。 |
| 50 | 已确认为真实问题,但可能是琐碎问题或实际中罕见。相对于本次 PR 来说重要性不高。 |
| 75 | 经双重验证,极有可能真实。在实践中会被触发。现有方案不足。明确写入 CLAUDE.md。 |
| 100 | 绝对确定。已证实为真实问题,频繁发生。证据直接支持。 |
对于 CLAUDE.md 相关问题,智能体必须再次核对 CLAUDE.md 是否明确指出该问题。
丢弃置信度低于 80 的问题。若无剩余问题,进入第 8 步,输出“未发现问题”。
重复执行第 1 步的资格检查,确保 PR 仍处于可审查状态。
使用 gh pr comment 发布审查评论。保持简洁,不使用表情符号,并引用相关代码、文件或 URL。
格式(含问题时):
### 代码审查
发现 N 个问题:
1. <简要描述> (CLAUDE.md 提到:“<...>”)
<link to file and line with full SHA + line range>
2. <简要描述> (因 <文件名及代码片段> 导致的缺陷)
<link to file and line with full SHA + line range>格式(无问题时):
### 代码审查
未发现问题。已检查缺陷与 CLAUDE.md 合规性。链接格式: https://github.com/owner/repo/blob/<full-sha>/path/to/file.ts#L10-L15
L[start]-L[end]以下情况不属于真实问题:
gh 命令(不得使用网页抓取)。references/review-patterns.md 获取高级审查模式,包括影响范围分析、结构化输出模板和测试覆盖率缺口检测。已收录 4 个 Skill