SuperAPI AI 工具集

code-review

测试与质量

查看项目

更新于 10-15 23:44

技能介绍

用途:对 HEAD 与用户提供的固定点之间的 diff 做双轴审查。Standards 轴判断代码是否符合本仓库文档化的编码规范;Spec 轴判断代码是否忠实实现来源 issue/PRD/规格。两轴作为并行子代理运行,避免互相污染上下文,再由本技能汇总结果。

主要能力:固定点可为提交 SHA、分支名、标签、main、HEAD~5 等;若用户未指定需询问。先记录 diff 命令 git diff <fixed-point>...HEAD(三点,与 merge-base 比较),并用 git log <fixed-point>..HEAD --oneline 记录提交列表;继续前用 git rev-parse <fixed-point> 确认固定点可解析且 diff 非空,坏引用或空 diff 应在此处失败。Spec 来源按顺序查找:提交信息中的 issue 引用(#123、Closes #45、GitLab !67 等,经 docs/agents/issue-tracker.md 工作流获取)、用户作为参数传入的路径、docs/、specs/ 或 .scratch/ 下与分支名或功能匹配的 PRD/规格文件;找不到则询问,若用户说没有,Spec 子代理跳过并报告“no spec available”。Standards 来源为仓库中记录代码写法的文件(如 CODING_STANDARDS.md、CONTRIBUTING.md),并始终附带 Fowler 代码坏味道基线(《重构》第 3 章),规则为:仓库文档标准优先于基线;基线项均为带标签的启发式判断(如“possible Feature Envy”),非硬性违规;工具已强制的内容跳过。基线坏味道包括 Mysterious Name、Duplicated Code、Feature Envy、Data Clumps、Primitive Obsession、Repeated Switches、Shotgun Surgery、Divergent Change、Speculative Generality、Message Chains、Middle Man、Refused Bequest。

使用方式:在一条消息中并行发起两个 Agent 工具调用,均使用 general-purpose 子代理。Standards 子代理提示需包含完整 diff 命令与提交列表、找到的标准来源文件列表、完整粘贴的坏味道基线,并要求按文件/hunk 报告违反文档标准之处(引用标准文件与规则)及发现的基线坏味道(命名并引用 hunk),区分硬性违规与判断项,400 词以内。Spec 子代理提示需包含 diff 命令与提交列表、规格路径或获取到的内容,并要求报告规格要求但缺失或部分实现的需求、diff 中未被要求的行为(范围蔓延)、看似实现但实现有误的需求,每条引用规格原文,400 词以内。汇总时在 ## Standards 与 ## Spec 标题下原样或轻度清理呈现两份报告,不合并、不重排;结尾给出一行摘要:各轴发现总数及各轴最严重问题,不跨轴选唯一赢家。

适用场景:需要同时检查代码规范符合度与规格实现忠实度的代码审查。

限制:若 docs/agents/issue-tracker.md 缺失,需运行 /setup-matt-pocock-skills;无规格时 Spec 轴跳过;基线坏味道始终为判断项,仓库文档标准可覆盖基线;工具已强制的内容不报告。