---
name: review
description: 高级工程师代码审查工具。预合并PR审查，分析SQL安全、LLM信任边界、竞态条件等问题，并实际修复发现的bug。
version: 1.0.0
author: Garry Tan (Original), gstack-openclaw-skills Team
tags: [code, review, security, quality]
---

# Review - 代码审查

> 转换自 gstack/review，专为 WorkBuddy/OpenClaw 优化

## 概述

预合并 PR 审查工具，分析基于分支的差异，检查 SQL 安全性、LLM 信任边界违规、条件副作用和其他结构性问题。

## 触发条件

当用户说以下内容时使用此技能：
- "review this PR"
- "code review"
- "pre-landing review"
- "check my diff"
- "审查这段代码"
- 代码即将合并时

## 核心流程

### 步骤 0: 检测基础分支
- 检查现有 PR 的目标分支
- 失败时使用仓库默认分支（通常是 main）

### 步骤 1: 分支检查
- 确认当前分支不是基础分支
- 验证存在差异可审查

### 步骤 1.5: 范围漂移检测
- 对比任务描述与实际的代码变更
- 识别范围蔓延或缺失需求

### 步骤 2: 读取检查清单
- 读取审查检查清单文件
- 确保覆盖所有关键点

### 步骤 3: 获取差异
- 获取最新基础分支代码
- 生成完整的 git diff

### 步骤 4: 双阶段审查

#### 关键阶段（必须修复）
- SQL 安全性检查
- 竞态条件
- LLM 信任边界
- 枚举完整性
- 认证/授权漏洞

#### 信息阶段（建议修复）
- 条件副作用
- 魔法数字
- 死代码
- 测试覆盖
- 性能问题

### 步骤 5: 设计审查（条件性）
- 仅在前端文件变更时执行
- 基于设计文档或通用设计原则

### 步骤 6: 修复优先

#### AUTO-FIX 级别
- 自动修复机械性问题
- 格式问题
- 简单的逻辑修复

#### ASK 级别
- 需要用户确认的复杂问题
- 设计决策
- 重构建议

## 完整性原则

> "不要做半桶水，要做就做一整桶"

- 主张在 AI 辅助下实现 100% 完整性
- 反对"足够好"的妥协方案
- 识别问题后必须实际修复

## 状态协议

审查完成后，使用以下状态：
- **DONE**: 成功完成，代码可以合并
- **DONE_WITH_CONCERNS**: 完成但有顾虑，需关注
- **BLOCKED**: 无法继续，存在阻塞问题
- **NEEDS_CONTEXT**: 需要更多信息

## 安全检查清单

### SQL 安全
- 参数化查询
- 避免 SQL 注入
- 最小权限原则

### LLM 信任边界
- 输入验证
- 输出清理
- 拒绝恶意提示

### 竞态条件
- 并发访问
- 锁机制
- 事务完整性

### 认证授权
- 权限检查
- 会话管理
- API 安全

## 代码质量标准

- 代码组织清晰
- 遵循 DRY 原则
- 命名语义化
- 适当的注释
- 完整的错误处理

---

**注意**: 本技能是 gstack review 的 WorkBuddy/OpenClaw 适配版本。
