pr-review

Polar Sponsor
爱发电 赞助
.NET 9.0

在发布PR前查找并修复代码问题。单次审查并自动修复。适用于在提交前审查代码变更或审计现有代码...

检查前 , 在发布公关前找到并解决问题 , 而不是之后

功能概述

检查前 , 在发布公关前找到并解决问题 , 而不是之后是一项面向实际任务的技能,主要用于使用一个能用的模型进行单程检查;不进行调图管理, 不进行代理;

核心要点

  • 快速, 便宜, 彻底.。
  • 它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
  • 使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。

使用与执行

该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;

结果检查与注意事项

若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。

预审(Pre-Review)

在发布 PR 之前 发现并修复问题 —— 而非之后。

使用一个高能力模型完成单次完整审查。无需编排开销,不依赖代理集群。快速、低成本、全面。

适用场景

  • 在发布 PR 前审查代码变更
  • 对现有代码进行审计,识别缺陷、安全风险或质量隐患
  • 在指定文件或目录中定位并修复问题

不适用场景

  • 运行编码代理生成新代码 → 请使用 coding-agent
  • 检查 GitHub CI 状态 → 请使用 github
  • 管理 fork 或变基分支 → 请使用 fork-manager

用法

/pr-review                    # 审查当前分支相对于 main/master 的变更
/pr-review src/api/ src/auth/ # 审计指定目录
/pr-review **/*.ts            # 审计匹配该模式的所有文件
/pr-review --audit            # 使用智能优先级策略审计整个代码库

两种模式:

模式 触发条件 作用范围 自动修复阈值
Diff 模式 无参数,且当前分支存在变更 仅限已修改的文件 >= 70
Audit 模式 提供路径/模式,或使用 --audit 指定文件或整个代码库 >= 80

执行步骤

步骤 1:识别模式与作用域

未提供任何参数时:

git diff main...HEAD --name-only 2>/dev/null || git diff master...HEAD --name-only
  • 若存在变更 → 进入 Diff 模式
  • 若无变更 → 提示用户并终止流程

提供了路径/模式,或使用了 --audit

  • 解析为实际文件(排除 node_modulesdistbuildvendor.gitcoverage 等目录)
  • 若匹配文件数 > 50,提示用户缩小范围或确认继续
  • 进入 Audit 模式

步骤 2:收集上下文

快速扫描项目规范(勿过度解读):

# 检查项目约定
cat CLAUDE.md .claude/settings.json CONTRIBUTING.md 2>/dev/null | head -100
cat .eslintrc* .prettierrc* biome.json tsconfig.json 2>/dev/null | head -50
cat package.json 2>/dev/null | head -20  # 技术栈信息

获取 diff 内容或目标文件内容:

# Diff 模式
git diff main...HEAD  # 或 master

# Audit 模式
cat   # 读取目标文件

步骤 3:审查(单次遍历)

一次性分析全部代码,按以下优先级顺序覆盖各维度:

1. 正确性(最高优先级)

  • 逻辑错误、边界情况、null/undefined 处理不当
  • 越界访问、分页边界错误、数值精度问题
  • async/await 使用错误、竞态条件、资源泄漏
  • 数据一致性、幂等性缺失

2. 安全性

  • 注入漏洞(SQL、XSS、命令注入、路径遍历)
  • 认证/授权缺失、IDOR 风险、密钥暴露
  • 未经校验的输入直接进入敏感操作
  • 日志记录敏感数据、不安全的默认配置

3. 可靠性

  • 异常处理缺失、静默失败、吞没异常
  • 缺少超时机制、重试无退避策略
  • 对用户可控数据执行无限制操作

4. 性能

  • N+1 查询、冗余循环、内存膨胀
  • 缺少分页、算法效率低下
  • 在异步上下文中执行阻塞操作

5. 质量(最低优先级 — 若问题微不足道可跳过)

  • 新增功能缺少测试
  • 无效代码、重复逻辑
  • 过时注释、命名不清晰
  • 仅当违反项目规范时,才指出风格问题

步骤 4:打分与分类

对每个发现的问题,分配如下评分:

评分 含义 操作建议
90–100 严重缺陷或漏洞 必须修复
70–89 真实问题,将引发故障 建议修复
50–69 代码异味,需人工判断 仅报告
< 50 轻微问题,极可能是误报 丢弃

丢弃阈值:

  • Diff 模式:低于 50 分的问题丢弃
  • Audit 模式:低于 40 分的问题丢弃

每个问题须分类为:

  • blocker — 涉及安全、数据损坏或崩溃风险
  • important — 极可能为缺陷、性能退化、缺失校验等
  • minor — 边界情况、可维护性、风格类问题

步骤 5:自动修复

对达到阈值的问题直接应用修复:

  • Diff 模式:修复评分 >= 70 的问题
  • Audit 模式:修复评分 >= 80 的问题

每次修复操作流程:读取文件 → 应用编辑 → 验证周边代码完整性。

禁止自动修复的情形:

  • 需架构层面调整的问题
  • 修复方式不明确、存在多种合理解法的问题
  • 测试文件中的问题(仅报告)

修复完成后,若任意文件被修改:

git diff --stat  # 显示变更摘要

步骤 6:生成报告

报告格式:

## Pre-Review Complete

**Risk:** Low / Medium / High
**Verdict:** ✅ Clean | ⚠️ Issues found | 🔴 Blockers

### 🔴 Blockers (must fix)
1. **file:line** — Description
   - Impact: what goes wrong
   - Fix: applied ✅ | manual required (reason)

### ⚠️ Important (should fix)
1. **file:line** — Description (score: XX)
   - Fix: applied ✅ | suggestion

### 💡 Minor
1. **file:line** — Description

### Tests to Add
- description of test

### Files Modified: N
- path/to/file.ts

若未发现任何问题:## Pre-Review Complete — ✅ Clean. No issues found.

指导原则

务必做到:

  • 直接修复问题,而非仅报告
  • 严格遵循既有代码模式与风格
  • 描述具体:精确到文件与行号,并给出明确修复方案
  • 优先关注影响面,而非追求绝对全面

严禁行为:

  • 在 Diff 模式下修复本次变更未涉及的既有问题
  • 对风格问题过度争论,除非其违反项目规范
  • 报告由 linter 或类型检查器即可捕获的问题(假设 CI 已覆盖)
  • 实施架构调整或大规模重构
  • 为明显无关紧要的问题消耗 token

应避免的误报

  • Diff 模式下,当前变更未触及的既有代码
  • 看似异常但实为有意为之的正确模式
  • 类型检查器或 linter 可识别的问题
  • 无项目规范支撑的主观风格偏好
  • 资深工程师通常会忽略的一般性挑剔

相关专题

更多
Aionclaw智能助手介绍
Aionclaw智能助手介绍

本专题汇总了AionClaw(AI龙虾助手)的功能介绍与在线使用入口。AionClaw是杭州趣猿人工智能有限公司推出的桌面级AI智能体,能直接在电脑上读写文件、运行脚本、操作浏览器,自动交付Word、PPT、Excel等成品。

2026.09.20

0

13

AionClaw AI智能体与电脑自动化任务执行功能使用教程
AionClaw AI智能体与电脑自动化任务执行功能使用教程

AionClaw专题整理AI智能体与电脑自动化相关功能使用教程,涵盖安装部署、AI任务执行、Skills技能、文件处理、浏览器控制、电脑操作、持久记忆、聊天工具连接以及办公、编程和内容创作等功能,帮助用户快速掌握AionClaw的实际使用方法。

2026.09.20

0

15

AI视频生成软件推荐
AI视频生成软件推荐

本专题汇总了当前主流的AI视频生成软件推荐与排行榜单,涵盖seko、AniShort、剧云、Lovart、LiblibAI及立刻mv等热门工具。同时整理了各软件在文生视频、图生视频、时长限制、画质表现及免费额度等方面的差异对比,助您快速选对适合创作需求的AI视频生成工具。

2026.09.16

0

9

ai生成视频的工具免费版合集
ai生成视频的工具免费版合集

本专题汇总了当前免费AI生成视频工具的排行榜与推荐清单,涵盖seko、讯飞智作、AniShort及剧云、Lovart等多模型集成平台。同时整理了各工具的免费额度、输出时长、水印政策及适用场景差异,助您快速选择合适工具开启AI视频创作。

2026.09.16

0

10

Pandas时间序列分析与可视化报表
Pandas时间序列分析与可视化报表

本专题整理Pandas日期转换、时间索引、重采样、滚动窗口、时区处理、plot绘图、Styler表格样式和报表输出方法。

2026.09.16

0

23

Pandas数据筛选索引与清洗处理
Pandas数据筛选索引与清洗处理

本专题整理Pandas中的loc、iloc、条件筛选、query查询、缺失值处理、重复值删除、类型转换和字符串列清洗方法。

2026.09.16

0

25

Pandas数据读取导入与文件导出处理
Pandas数据读取导入与文件导出处理

本专题整理Pandas读取CSV、Excel、JSON、SQL、Parquet等文件的方法,以及to_csv、to_excel、to_sql和to_parquet等常用数据导出流程。

2026.09.16

0

27

GDB怎么设置断点
GDB怎么设置断点

本专题介绍GDB按照函数名、源代码行号和文件位置设置断点的方法,详细说明run、continue、next、step等命令的配合使用,帮助定位程序崩溃、逻辑异常及代码未按预期执行的问题。

2026.09.11

0

28

GDB怎么查看变量值
GDB怎么查看变量值

本专题介绍GDB调试过程中查看变量值的具体方法,涵盖局部变量、函数参数、数组、结构体和指针内容查询,同时整理变量持续显示、格式化输出及无法读取变量时的排查思路。

2026.09.11

0

22

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
phpStudy极速入门视频教程
phpStudy极速入门视频教程

共6课时 | 54.6万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时 | 133万人学习