一次 PR 四个视角:parallel-code-review 并行 Code Review Skill 实战

前言

合并 PR 前做 Code Review,是团队里几乎绕不开的一道工序。改动不大时,人工扫一遍 diff 还能应付;一旦涉及认证逻辑、支付链路或核心热路径,Reviewer 往往要在安全、性能、正确性、可读性之间来回切换——单线程大脑很难同时盯住四个维度,漏看一类问题并不罕见。

Cursor 从 Agent 2.0 起支持通过 Task 工具启动并行子 Agent。社区维护的 awesome-cursor-skills 仓库里,有一个专门利用这项能力的 Skill:parallel-code-review。它把同一份 diff 交给四个只读子 Agent,分别从安全、性能、正确性、可读性四个角度审查,再由主 Agent 去重合并,输出一份按优先级排序的审查报告。本文基于官方 SKILL.md 核实后,介绍它的定位、安装方式与完整工作流。

这是什么

parallel-code-review 是一份遵循通用 SKILL.md 格式的 Agent Skill,出自 GitHub 仓库 spencerpauly/awesome-cursor-skills,归类为「Cursor-Native」——即依赖 Cursor 独有的 Task 并行子 Agent 能力,在 Codex CLI、Claude Code 等其它工具中无法原样复现同一工作流。

一句话定位:启动四个并行只读 explore 子 Agent,各守一个审查维度,审查同一批变更文件,最后合并成一份去重、分级的 Code Review 报告。

Skill 元数据中标注了 user-invocable: true,意味着你可以在对话里直接点名调用,而不必等 Agent 自行匹配触发。

核心功能与亮点

四维度并行审查

与「一个 Agent 从头到尾扫一遍 diff」不同,parallel-code-review 固定拆成四个专责视角:

维度 关注范围(官方 prompt 摘要)
Security SQL/Shell/XSS 注入、鉴权缺口、硬编码密钥、不安全反序列化、路径遍历、SSRF、IDOR、依赖 CVE
Performance N+1 查询、缺失索引、O(n²) 循环、包体积、多余重渲染、热路径同步 I/O、无界缓存
Correctness 逻辑错误、边界条件、竞态、错误处理缺失、破坏性 API 变更、新行为测试覆盖
Readability 命名、重复代码、抽象边界、文件体量、控制流清晰度、关键处缺失类型或文档

四个子 Agent 同时启动、各自只读代码,互不争抢写权限——这是并行审查能安全跑起来的前提。

结构化合并输出

主 Agent 收到四份报告后,按官方流程做三步合成:

  1. 去重:同一问题被多个维度命中时,只保留一条,取最高严重级别。
  2. 排序:先按 Critical / High / Medium / Low,再按修复成本。
  3. 汇总:输出不超过 5 条的执行摘要,外加可操作的条目列表(含文件:行号与修复建议)。

可选的后续修复

审查完成后,主 Agent 可以自行修问题,也可以针对你批准的项目,再启动非只读的跟进 Task——审查与修改阶段刻意分离,避免并行读写冲突。

安装与启用

Skill 以单个 SKILL.md 文件形式分发,安装本质是把它放到 Agent 能自动发现的 skills 目录。

在 Cursor 中使用

根据 awesome-cursor-skills READMECursor Skills 文档 的说明,Skill 文件应放在:

  • 项目级:<项目根>/.cursor/skills/parallel-code-review/SKILL.md
  • 或个人级:~/.cursor/skills/parallel-code-review/SKILL.md

手动安装(最直接):

mkdir -p .cursor/skills/parallel-code-review
curl -o .cursor/skills/parallel-code-review/SKILL.md \
  https://raw.githubusercontent.com/spencerpauly/awesome-cursor-skills/main/resources/parallel-code-review/SKILL.md

保存后重启或新开 Agent 对话,Cursor 会自动发现该 Skill。

CLI 安装(若已配置 npx skills 工具链):

npx skills add spencerpauly/awesome-cursor-skills --skill parallel-code-review

具体目标目录以 CLI 当前版本行为为准;Cursor 环境下通常写入项目的 .cursor/skills/

在 Claude Code 中使用

第三方目录 Claude Skills Hub 给出了 Claude Code 的安装命令:

npx skills add spencerpauly/awesome-cursor-skills --skill parallel-code-review --agent claude-code

Skill 内容相同,但 parallel-code-review 的工作流明确依赖 Cursor 的 Task 工具;在 Claude Code 中安装后,能否完整执行四路并行审查,取决于该环境是否提供等价的并行只读子 Agent 机制。Cursor 是官方设计的目标平台。

典型用法示例

启用 Skill 后,在合并大型或高风险 PR 前,按以下四步操作。

1. 圈定变更范围

优先给审查者一份明确的文件列表。官方推荐:

git diff --name-only origin/main...HEAD

也可以直接粘贴 PR 链接,让主 Agent 从分支 diff 中提取变更文件。

2. 一次消息启动四个并行子 Agent

关键规则:在同一条消息里发送四个 Task 调用,每个 Task 设置 subagent_type: "explore"readonly: true。官方给出的 prompt 模板如下(<list> 替换为实际文件列表):

Security 审查 prompt:

Read-only review: SECURITY

Changed files:
<list>

Focus: injection (SQL, shell, XSS), authZ/authN gaps, secrets in code, unsafe deserialization, path traversal, SSRF, IDOR, dependency CVEs mentioned in diff.

Output:
- Critical / High / Medium / Low findings
- File:line and short fix recommendation
- "No issues" if nothing material

Performance、Correctness、Readability 三个维度的 prompt 结构相同,仅 Focus 字段不同——完整原文见 官方 SKILL.md

你也可以用自然语言触发,例如:

请按 parallel-code-review Skill,对当前分支相对 origin/main 的 diff 做四维度并行审查。

Agent 读取 Skill 后会自动套用上述工作流。

3. 等待合成报告

四个子 Agent 全部返回后,主 Agent 执行去重、分级、汇总。期望产出包括:

  • 5 条以内的执行摘要
  • 带严重级别、位置、修复建议的 actionable 列表

4. (可选)逐项修复

确认要修的项目后,让主 Agent 直接改代码,或为单项问题启动 targeted 的非只读 Task。官方建议:只有经你批准的项目才进入修改阶段,避免 Agent 过度「自说自话」地重构。

适用场景与注意事项

适合什么时候用

官方 When to use 列出了三类典型场景:

  • 大 diff 或重构:单次线性审查容易漏掉某一类问题。
  • 安全敏感变更:认证、支付、解析不可信输入等。
  • 性能敏感路径:热循环、N+1 查询、打包入口等。

对于几十行的小改动,直接人工 Review 或单次 Agent 审查往往更划算;parallel-code-review 的价值在「变更面大、风险维度多」时最明显。

使用限制(官方 Notes)

  1. 保持只读:并行阶段务必 readonly: true,防止多个子 Agent 同时写文件。
  2. 超大 diff 分片:若变更横跨多个目录,按目录拆分,每个目录再跑一轮四维度审查,不要把互不相关的 megadiff 硬塞进一次 pass。
  3. 不替代人工与合规流程:Skill 明确写明,它是对人类 Review 的补充,不能代替受监管环境下的合规或安全签批
  4. Cursor 专属能力:Task 并行子 Agent 是 Cursor Agent 2.0 的核心特性;其它 AI 编程工具即便能加载同一份 SKILL.md,也未必具备等价的并行执行环境。

小结

parallel-code-review 把 Cursor 并行 Agent 能力落到了 Code Review 这一高频场景:四个只读子 Agent 各守一个专业视角,主 Agent 负责去重合并——相当于把「安全工程师 + 性能工程师 + 逻辑审查 + 可读性审查」同时拉进 PR 讨论,而 wall-clock 时间接近单次审查。

如果你经常面对大型 PR、或在敏感模块上担心「Reviewer 顾此失彼」,值得把这份 Skill 放进项目的 .cursor/skills/ 目录,在合并前跑一轮四维度并行审查。

官方 Skill 地址:github.com/spencerpauly/awesome-cursor-skills/tree/main/resources/parallel-code-review

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜