# Claude Review

> "写的不审，审的不写"多模型代码审查工作流（纯 Claude 版）。 主 Claude 写代码，同时派发三个独立 subagent 从不同维度并行审查，主 Claude 汇总修复，循环直到无新问题，再提交。 不依赖 Codex / GPT，在完成代码实现后触发此技能。

- Skill: `atompilot/claude-review` (Agent Skill)
- Install (CLI): `npx skillmds@latest add atompilot/claude-review`
- Raw SKILL.md: https://api.skillmd.com/api/skills/atompilot/claude-review/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: atompilot (https://skillmd.com/u/atompilot)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/atompilot/claude-review

---


# Claude Cross-Review 工作流

## 原则

- **写的不审**：主 Claude 专注写代码，不自我审查边界条件
- **审的不写**：审查 subagent 专注找问题，不改代码
- **并行多维度**：三个 subagent 同时从不同角度审查，提高覆盖率
- **循环直到干净**：有问题就修，修完再审，直到所有 subagent 无新问题

## 触发时机

完成功能开发、Bug 修复或重构后，在 `git commit` 之前运行此工作流。

## 流程

### 步骤 1：确认工作范围

```bash
git diff --stat
git diff HEAD
```

列出变更文件清单，确认审查范围。将 `git diff HEAD` 的完整输出保存备用（三个 agent 都需要）。

### 步骤 2：并行派发三个审查 subagent

**在同一条消息中**用 Agent 工具同时启动以下三个 subagent（subagent_type=general），让它们并行运行。每个 agent 只负责一个审查维度。

---

**Agent 1 — 逻辑与边界条件**

```
你是一位专注逻辑与边界条件的代码审查员。只输出问题列表，不评价整体质量。没有问题则输出：NO_ISSUES

【审查维度】
- 边界条件：空数组/空字符串、零值、极大/极小值、索引越界
- 逻辑漏洞：条件判断遗漏、逻辑短路错误、状态机缺失状态
- 控制流：提前返回遗漏、循环条件错误、递归终止条件缺失

【代码变更】
<git diff HEAD 完整输出>

【输出格式】
问题 #1：[逻辑/边界] [文件路径:行号]
  描述：...
  风险：...
  修复建议：（思路即可，不写代码）
```

---

**Agent 2 — 类型安全与错误处理**

```
你是一位专注类型安全与错误处理的代码审查员。只输出问题列表，不评价整体质量。没有问题则输出：NO_ISSUES

【审查维度】
- 类型安全：nil/null 解引用、类型断言失败、接口不匹配、类型转换溢出
- 错误处理：忽略 error 返回值、错误信息丢失、panic 未恢复
- 空值安全：可选值未检查、指针解引用前未判空

【代码变更】
<git diff HEAD 完整输出>

【输出格式】
问题 #1：[类型/错误] [文件路径:行号]
  描述：...
  风险：...
  修复建议：（思路即可，不写代码）
```

---

**Agent 3 — 并发与资源安全**

```
你是一位专注并发与资源安全的代码审查员。只输出问题列表，不评价整体质量。没有问题则输出：NO_ISSUES

【审查维度】
- 并发安全：数据竞争、死锁、未加锁的共享状态、goroutine/协程泄漏
- 资源管理：文件/连接未关闭、内存泄漏、defer 使用错误、事件监听器未清理
- 幂等性：重复调用是否安全、重试逻辑是否正确

【代码变更】
<git diff HEAD 完整输出>

【输出格式】
问题 #1：[并发/资源] [文件路径:行号]
  描述：...
  风险：...
  修复建议：（思路即可，不写代码）
```

---

### 步骤 3：汇总问题

等待三个 agent 全部完成，合并输出，去重后按优先级排序：

**优先级**：逻辑漏洞 > 类型安全 > 并发安全 > 边界条件 > 资源管理

如果三个 agent **全部输出 NO_ISSUES** → 跳到步骤 6

### 步骤 4：主 Claude 逐项修复

按优先级逐一修复：
- 每次修复后更新进度：`已修复 #N` 或 `跳过 #N（说明原因）`
- 不过度修复：只改 subagent 指出的问题，不顺手重构无关代码

### 步骤 5：再次派发审查

重复步骤 2-3，检查：
- 修复是否正确解决了原问题
- 修复是否引入了新问题

如果 **有新问题** → 回到步骤 4

如果 **全部 NO_ISSUES** → 继续步骤 6

### 步骤 6：验证

```bash
# 根据项目类型选择合适的验证命令
# lint / typecheck
# build / compile
# test
```

全部通过后进入步骤 7。如果验证失败 → 修复后回到步骤 2。

### 步骤 7：提交

```bash
git add <相关文件>
git commit -m "$(cat <<'EOF'
<commit message>

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
EOF
)"
```

## 输出格式

工作流结束时汇报：

```
## Claude Cross-Review 完成报告

**审查轮次**：N 轮
**发现问题**：N 个（逻辑 N + 类型 N + 并发 N）
**已修复**：N 个
**跳过**：N 个（含原因）
**验证结果**：全部通过 / 部分失败

已提交：<commit hash> <commit message>
```

