从固定点(commit、branch、tag 或 merge-base)开始,按 Standards(代码是否符合本仓库记录的编码标准?)和 Spec(代码是否符合来源 issue/PRD 的要求?)两个轴线审查变更。两个审查会在并行子代理中运行,并并排报告。适用于用户想审查 branch、PR、进行中的变更,或要求 “review since X” 时。
80
100%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
High
Do not use without reviewing
对用户提供的 fixed point 与 HEAD 之间的 diff 做双轴 review:
两个轴线都作为并行 sub-agents运行,避免互相污染 context;然后这个 skill 聚合它们的 findings。
Issue tracker 应该已经提供给你;如果缺少 docs/agents/issue-tracker.md,运行 /setup-matt-pocock-skills。
用户说的任何内容都是 fixed point:commit SHA、branch name、tag、main、HEAD~5 等。如果用户没有指定,就询问。
先捕获一次 diff command:git diff <fixed-point>...HEAD(three-dot,因此比较对象是 merge-base)。同时用 git log <fixed-point>..HEAD --oneline 记录 commits 列表。
继续前,确认 fixed point 能解析(git rev-parse <fixed-point>),并且 diff 非空。错误 ref 或空 diff 应该在这里失败,而不是进入两个并行 sub-agents 后才失败。
按以下顺序寻找来源 spec:
#123、Closes #45、GitLab !67 等)— 按 docs/agents/issue-tracker.md 中的 workflow 获取。docs/、specs/ 或 .scratch/ 下与 branch name 或 feature 匹配的 PRD/spec 文件。Repo 中任何记录代码应该如何写的内容,例如 CODING_STANDARDS.md 或 CONTRIBUTING.md。
在 repo 自己记录的 standards 之外,Standards 轴线始终带有下面的 smell baseline:一组固定的 Fowler code smells(Refactoring 第 3 章),即使 repo 没有任何约定也适用。有两条规则:
每个 smell 按 what it is -> how to fix 读取,并对照 diff:
switch/if cascade 在改动中重复。-> 换成 polymorphism,或共享一个 map。a.b().c().d()。-> 把这段导航藏到第一个 object 的一个 method 后面。发送一条包含两个 Agent tool calls 的消息。两个都使用 general-purpose subagent。
Standards sub-agent prompt — 包含:
Spec sub-agent prompt — 包含:
如果缺少 spec,跳过 Spec sub-agent,并在最终报告中说明。
在 ## Standards 和 ## Spec headings 下展示两个 reports,可原样或轻微清理。不要合并或重新排序 findings;这两个轴线刻意保持分离(见 Why two axes)。
最后用一行总结:每个轴线的 findings 总数,以及每个轴线内最严重的问题(如果有)。不要跨轴线选一个总冠军;分离就是为了避免这种 reranking。
一个变更可能通过其中一个轴线,但失败在另一个轴线:
分开报告能避免一个轴线掩盖另一个轴线。
f2b2464
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.