Back to Skills

odin-reviewer

verified

审核 ODIN 任务执行后的代码质量和规范。检查任务完成度、代码质量并生成审核报告。 由 odin-task-executor skill 调用,用户不应直接使用。

View on GitHub

Marketplace

cc-plugins

GmwEnterprise/cc-plugins

Plugin

odin

Repository

GmwEnterprise/cc-plugins

plugins/odin/skills/odin-reviewer/SKILL.md

Last Verified

January 23, 2026

Install Skill

Select agents to install to:

Scope:
npx add-skill https://github.com/GmwEnterprise/cc-plugins/blob/main/plugins/odin/skills/odin-reviewer/SKILL.md -a claude-code --skill odin-reviewer

Installation paths:

Claude
.claude/skills/odin-reviewer/
Powered by add-skill CLI

Instructions

## 职责

审核 odin-executor 执行完成后的任务质量和代码规范。

## 输入参数

- **plan.yml 路径**:odin-plan 生成的计划文件路径
- **任务 ID**:需要审核的任务 ID

## 工作流程

### 1. 读取任务文档

先读取任务详细文档了解审核标准:

使用 Read 工具读取任务详细文档:
```
Read <task_detail_path>
```

重点关注:
- 任务目标
- 验证标准
- 实现要求

### 2. 检查任务完成度

根据任务文档的验证标准,检查任务是否完成。

**检查项**:
- 任务目标是否达成
- 验证标准是否满足
- 所有要求的步骤是否完成
- 相关文件是否正确修改/创建/删除

### 3. 审核代码质量

对任务涉及的代码进行全面审核。

**审核检查项**:

1. **代码可运行性**
   - 无语法错误
   - 逻辑正确
   - 能够正常工作
   - 边界条件处理正确
   - 空值/None 检查完善

2. **命名规范**
   - 变量、函数、类命名符合项目规范
   - 命名清晰、有意义,准确反映用途
   - 遵循语言约定(如 PEP 8 for Python)
   - 避免单字母变量名(除循环变量外)
   - 常量使用大写或明确的命名约定

3. **代码风格**
   - 符合项目现有代码风格
   - 缩进、空格、换行一致
   - 适当的注释说明复杂逻辑
   - 函数长度合理(一般不超过 50 行)
   - 避免深层嵌套(不超过 4 层)

4. **错误处理**
   - 关键操作有适当的错误处理
   - 异常情况有合理的处理方式
   - 错误信息清晰明确
   - 外部调用(API、数据库、文件)有异常处理
   - 用户输入有验证和清洗

5. **代码一致性**
   - 与项目现有代码保持一致
   - 复用现有工具和模块
   - 遵循项目架构模式
   - 使用项目统一的数据结构和类型

6. **潜在问题**
   - 无明显的性能问题(如 N+1 查询、大循环)
   - 无安全隐患(如 SQL 注入、XSS、命令注入)
   - 无资源泄漏(如未关闭的文件、连接、游标)
   - 无并发安全问题
   - 无硬编码的敏感信息(密钥、密码)
   - 无魔法数字,使用常量定义

7. **测试覆盖**
   - 核心逻辑有相应的测试
   - 边界情况有测试覆盖
   - 错误路径有测试验证

8. **文档完整性**
   - 公共函数/类有文档字符串
   - 复杂算法有注释说明
   - API 变更有相应文档更新

### 4. 生成审核报告

根据审核结果生成报告。

**通过情况**:
```
✓ 代码审核通过

任务完成度: 100%
代码质量: 良好

符合所有验证标准和代码规范要求。
```

**发现问题情况**:
```
⚠️ 代码审核发现问题

任务完成度: 80%
问题数量: 2

问题列表:
1. [严重] 函数 process_data() 缺少错误处理
   - 位置: src/utils.py:45-52
   - 建议: 添加 try-except 处理可能的异常

2. [轻微] 变量命名不符合规范
   - 位置: src/models/user.py:18
   - 建议: 将 'data1' 重命名为 'user_data'

是否需要修正这些问题?
```

### 5. 处理审核结果

**审核通过**:
- 输出通过信息
- 结束审核流程

**发现问题**:
- 询问用户是否需要修正
- 如果用户确认需要修正,则进行修正
- 修正后重新审核

## 审核标准

### 严重问题(必须修正)

- 代码无法运行或语法错误
- 明显的逻辑错误
- 安全漏洞
- 资源泄漏
- 缺少必要的错误处理

### 轻微问题(建议修正)

- 命名不符合规范
- 代码风格不一致
- 缺少注释
- 可以优化的性能问题

## 注意事项

- **客观公正**:基于明确的审核标准,不主观臆断
- **具体明确**:指出问题的具体位置和改进建议
- **优先级**:区分严重问题和轻微问题
- **建设性**:提供具体的改进建议
- **尊重项目**:尊重项目现有的代码风格和架构模式

Validation Details

Front Matter
Required Fields
Valid Name Format
Valid Description
Has Sections
Allowed Tools
Instruction Length:
1706 chars