用途:分析 git diff,找出缺陷并生成 review.xml,可通过 self-review 的 --resume-from 载入供人工验证。运行时会先调用 self-review-guide 技能生成走查指南(默认 review.guide.xml),再执行评论;若用户明确要求跳过指南则可不生成。
主要能力:按文件审查改动,关注 bug、安全、错误处理、类型、性能与风格;为每条评论标注 severity(critical/major/minor/info)与 confidence(high/medium/low),并可附带 suggestion 提出具体修复。支持文件级评论、行级评论(新增/上下文行用 new-line-start/new-line-end,删除行用 old-line-start/old-line-end,二者不可同时出现)、重命名文件(path 为新路径)以及评论线程中的 reply。
使用方式:读取 $ARGUMENTS 作为 git diff 参数,为空时默认 git diff(未暂存改动),支持 --staged、HEAD~3、main..feature-branch、-- path/to/file 等,也接受 GitHub PR / GitLab MR URL。检查当前目录 .self-review.yaml 获取 categories 与 output-file(默认 ./review.xml),无配置时使用默认分类 question、bug、security、style、task、nit。用 git diff $ARGUMENTS 取差异,git rev-parse --show-toplevel 取仓库根;读取改动文件上下文后构建 XML,并用 xmllint --schema .agents/skills/self-review-apply/assets/self-review-v3.xsd REVIEW_XML_PATH --noout 校验(未安装则警告并跳过)。最后输出文件数、按分类与严重度的评论数及输出路径,并提示用 self-review <same-diff-args> --resume-from REVIEW_XML_PATH 载入。
限制:评论须有具体证据,无法追溯的推测应降级或丢弃;若目标输出文件已存在,不得重复提出已有发现,应追加 reply 并标注 author;reply 不含 suggestion、severity、confidence 与 category。二进制文件跳过,删除文件不读取。