用途:对指定改动进行双轴评审。规范轴检查代码是否符合本仓库文档化的编码标准;规格轴检查代码是否忠实实现了原始 issue 或规格。两轴以并行子代理运行,避免互相污染上下文,再由本技能汇总结果。
使用前需已提供 issue 跟踪器;若 docs/agents/issue-tracker.md 缺失,应提示用户运行 /setup-matt-pocock-skills。
流程:第一步确定固定点,即用户指定的 commit SHA、分支名、tag、main、HEAD~5 等;未指定则询问。对已提交工作采集 git diff <fixed-point>...HEAD 与 git log <fixed-point>..HEAD --oneline;对进行中工作还采集 git diff --cached、git diff,并从 git status --short 检查相关未跟踪文件,为两名评审者冻结同一文件集与 diff,排除无关改动。继续前用 git rev-parse <fixed-point> 确认固定点可解析且评审面非空。第二步识别规格来源,按顺序查找:提交信息中的 issue 引用(#123、Closes #45、GitLab !67 等),经 issue-tracker.md 工作流获取;用户作为参数传入的路径;docs/、specs/ 或 .scratch/ 下匹配分支名或特性的规格文件。找不到则询问;若用户说没有,Spec 子代理跳过并报告“no spec available”。第三步识别规范来源,包括仓库中记录代码写法的文件,如 CODING_STANDARDS.md、CONTRIBUTING.md;此外规范轴始终携带一组 Fowler 代码坏味基线,即使仓库无任何文档也适用。两条规则:仓库优先,文档化标准总是覆盖基线;始终是判断项,每个坏味只是带标签的启发式提示,如“possible Feature Envy”,不是硬性违规;跳过工具已强制检查的内容。基线坏味覆盖神秘命名、重复代码、依恋情结、数据泥团、基本类型偏执、重复 switch、散弹式修改、发散式变化、夸夸其谈通用性、消息链、中间人、被拒绝的遗赠等,各含含义与修复方向。第四步并行启动两个子代理。Standards 子代理提示包含完整 diff 命令与提交列表、第三步找到的规范来源文件,以及完整粘贴的坏味基线;要求按文件或代码块报告:违反文档化标准之处需引用标准(文件与规则),以及发现的基线坏味需命名并引用代码块,区分硬性违规与判断项,文档化仓库标准覆盖基线,跳过工具强制项,400 字以内。Spec 子代理提示包含 diff 命令与提交列表、规格路径或抓取内容;要求报告:规格要求但缺失或部分实现之处、diff 中未被要求的行为(范围蔓延)、看似实现但实现有误之处,每条发现引用规格行,400 字以内。若规格缺失则跳过 Spec 子代理并在最终报告注明。第五步聚合,在 ## Standards 与 ## Spec 标题下逐字或轻度清理地呈现两份报告,不合并或重排发现,因为两轴刻意分离。最后以一行总结收尾:各轴发现总数及各自最严重问题(如有),不跨轴选出单一赢家。
两轴分离的理由:改动可能通过一轴而失败另一轴。符合全部标准但实现了错误内容,则规范通过、规格失败;完全按 issue 实现但破坏项目约定,则规格通过、规范失败。分开报告可防止一轴掩盖另一轴。
限制:本技能依赖已配置的 issue 跟踪器与规格来源;无规格时只运行规范轴。具体收费、价格、平台支持等信息暂未提供。