用途:review-go 是面向 Go 代码的语言/运行时约定审查技能,接收调用者给定的代码范围(文件、目录或 diff),只评估 Go 语言与运行时质量,不决定审查范围,也不做安全或架构分析。
主要能力:覆盖七个维度——并发与 goroutine 生命周期(通道关闭、取消、WaitGroup、避免泄漏与数据竞争);context 传播与取消/截止时间;错误处理(检查并返回错误、用 %w 包装、errors.Is/As、避免预期错误 panic 与错误遮蔽);资源管理(defer Close()、resp.Body.Close()、计时器 Stop()、context cancel());API 稳定性与模块(导出类型、向后兼容、go.mod、构建标签);类型与零值语义(nil 接口与类型化 nil、指针/值接收器、切片/映射初始化与别名);可测试性(小接口、注入而非全局变量、确定性测试接缝)。
使用方式:作为编排式审查中的语言步骤使用,或在仅需检查语言/运行时约定、PR 前 Go 检查清单时单独调用。输出为发现列表,每条包含位置、类别(语言-go)、严重性、标题、描述和可选建议,并引用具体 file:line。
适用场景:Go 项目新增文件后的语言约定检查、并发/context/错误处理模式核对。
限制:不执行范围选择、安全分析、架构分析或 SQL 分析;不检查非 Go 文件的 Go 特定规则,除非明确在范围内;无具体位置或可行建议时不给结论。发现完成后交由 orchestrate-code-review 聚合;SQL 或安全问题建议转 review-sql 或 review-security。