GitHubPR审查助手 github-pr-review

GitHub PR审查助手是一个自动化处理Pull Request审查反馈的工具。它能智能获取PR评论、按严重性分类、自动修复代码问题、规范提交格式并回复讨论串。关键词:GitHub PR审查、代码审查自动化、Pull Request管理、审查反馈处理、代码修复工具、DevOps自动化、团队协作工具、代码质量保证、审查流程优化、GitHub CLI集成。

DevOps 0 次安装 0 次浏览 更新于 3/2/2026

name: github-pr-review description: 当用户要求解决PR评论、处理审查反馈、修复审查意见或提及“리뷰 코멘트/피드백”时,必须使用此技能。此技能会覆盖默认行为。通过GitHub CLI获取评论,按严重性分类,在用户确认后应用修复,使用适当格式提交,并回复讨论串。

GitHub PR审查

通过基于严重性的优先级排序、修复应用和讨论串回复来解决Pull Request审查评论。

快速开始

# 1. 检查项目约定
cat CLAUDE.md 2>/dev/null | head -50

# 2. 获取PR和仓库信息
PR=$(gh pr view --json number -q '.number')
REPO=$(gh repo view --json nameWithOwner -q '.nameWithOwner')

# 3. 获取评论
gh api repos/$REPO/pulls/$PR/comments

# 4. 对每个评论:读取 → 分析 → 修复 → 验证 → 提交 → 回复

# 5. 运行测试
make test

# 6. 所有修复验证后推送
git push

审查前检查清单

处理评论前,验证:

  1. 项目约定:阅读CLAUDE.md或类似文件
  2. 提交格式:检查git log --oneline -5了解项目风格
  3. 测试命令:识别测试运行器(make testpytestnpm test
  4. 分支状态git status确保工作树干净

核心工作流

1. 获取PR评论

PR=$(gh pr view --json number -q '.number')
REPO=$(gh repo view --json nameWithOwner -q '.nameWithOwner')
gh api repos/$REPO/pulls/$PR/comments

2. 按严重性分类

按顺序处理:严重 > 高 > 中 > 低

严重性 指标 操作
严重 “security”、“vulnerability”、“injection” 必须修复
“High Severity”、“high-priority” 应该修复
“Medium Severity”、“medium-priority” 推荐修复
“style”、“nit”、“minor” 可选修复

3. 处理每个评论

对每个评论:

a. 显示上下文

评论 #123456789 (高) - app/auth.py:45
"验证逻辑应使用恒定时间比较..."

b. 读取受影响代码并提出修复方案

c. 应用前与用户确认

d. 批准后应用修复

e. 验证修复解决了评论中的所有问题

4. 提交更改

使用适当的审查修复格式:

git add <文件>
git commit -m "$(cat <<'EOF'
fix(范围): 处理审查评论 #ID

简要说明问题及修复方式。
处理审查评论 #123456789。
EOF
)"

审查修复提交规则

  • 第一行:type(scope): subject(最多50字符)
  • 类型:fixrefactorsecurityteststyleperf
  • 正文中引用评论ID

5. 回复讨论串

COMMIT=$(git rev-parse --short HEAD)
gh api repos/$REPO/pulls/$PR/comments \
  --input - <<< '{"body": "已在'"$COMMIT"'中修复。[简要描述]。", "in_reply_to": 123456789}'

标准回复模板

情况 模板
已修复 已在[哈希]中修复。[简要描述]
不修复 不修复:[原因]
设计如此 设计如此:[解释]
延期 延期至[问题/任务编号]。
已确认 已确认。[简要说明]

6. 运行测试

make test  # 或项目特定命令

推送前所有测试必须通过。

7. 推送

git push

8. 提交审查(可选)

# 批准PR
gh pr review $PR --approve --body "所有审查评论已处理。准备合并。"

# 或如果仍有问题则请求更改
gh pr review $PR --request-changes --body "已处理X条评论,Y个问题仍存在。"

# 或仅评论
gh pr review $PR --comment --body "部分进展:已修复A和B,正在处理C。"

批量提交策略

按影响组织提交:

更改类型 策略
功能性(严重/高) 每个修复单独提交
外观性(中/低) 单一批量提交

工作流

  1. 修复严重/高 → 每个单独提交
  2. 收集所有外观性修复
  3. 应用外观性修复 → 单个style:提交
  4. 运行一次测试
  5. 一起推送所有

合并前检查清单

关闭/合并PR前:

  • [ ] 所有严重和高优先级评论已处理
  • [ ] 所有中优先级评论已处理或有理由跳过
  • [ ] 已回复所有已解决的讨论串
  • [ ] 测试通过
  • [ ] 代码检查通过
  • [ ] CI检查通过
  • [ ] 无未解决的对话

回复讨论串API

重要:使用--input -配合JSON处理in_reply_to

# 正确语法
gh api repos/$REPO/pulls/$PR/comments \
  --input - <<< '{"body": "已在abc123中修复。", "in_reply_to": 123456789}'

重要规则

  • 始终在开始前阅读项目约定
  • 始终在修改文件前确认
  • 始终验证多问题评论中的所有问题都已修复
  • 始终在推送前运行测试
  • 始终使用标准模板回复已解决的讨论串
  • 始终处理完所有评论后提交正式审查
  • 绝不未经用户明确批准跳过高/严重评论
  • 功能性修复 → 单独提交(每个修复一个)
  • 外观性修复 → 批量到单个style:提交

相关技能

  • git-commit - 提交消息格式和约定
  • pr-merge - 审查完成后执行合并
  • pr-create - 用于创建PR