关于 code-review
Code Review 是一项用于检查代码安全性、性能、质量和测试的审查技能。它提供常见问题清单,并以结构化格式报告严重问题和改进建议。
主要功能
- 01检查常见安全漏洞
- 02识别性能问题
- 03评估代码质量与错误处理
- 04审查测试覆盖率和可靠性
- 05按严重程度报告问题并给出修复建议
适用场景
- 01合并前审查代码变更
- 02查找代码中的安全问题
- 03检查新代码的测试与性能缺口
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ moizibnyousaf/ ai-agent-skills --skill code-review安装后在 Claude Code 中输入/code-review确认已加载。
详细介绍
代码审查
审查类别
1. 安全审查
检查以下问题:
- SQL 注入漏洞
- XSS(跨站脚本)
- 命令注入
- 不安全的反序列化
- 硬编码的密钥/凭据
- 身份验证/授权不当
- 不安全的直接对象引用
2. 性能审查
检查以下问题:
- N+1 查询
- 缺少数据库索引
- 不必要的重新渲染(React)
- 内存泄漏
- 异步代码中的阻塞操作
- 可利用但未利用的缓存机会
- 打包体积过大
3. 代码质量审查
检查以下问题:
- 代码重复(违反 DRY 原则)
- 函数职责过多(违反 SRP 原则)
- 嵌套过深 / 条件判断过于复杂
- 魔法数字/字符串
- 命名不佳
- 缺少错误处理
- 类型覆盖不完整
4. 测试审查
检查以下问题:
- 新代码缺少测试覆盖
- 测试未验证行为
- 不稳定的测试模式
- 缺少边界情况测试
- 外部依赖被模拟
审查输出格式
## Code Review Summary
### 🔴 Critical (Must Fix)
- **[File:Line]** [Issue description]
- **Why:** [Explanation]
- **Fix:** [Suggested fix]
### 🟡 Suggestions (Should Consider)
- **[File:Line]** [Issue description]
- **Why:** [Explanation]
- **Fix:** [Suggested fix]
### 🟢 Nits (Optional)
- **[File:Line]** [Minor suggestion]
### ✅ What's Good
- [Positive feedback on good patterns]
常见问题模式
安全
// BAD: SQL injection
const query = `SELECT * FROM users WHERE id = ${userId}`;
// GOOD: Parameterized query
const query = 'SELECT * FROM users WHERE id = $1';
await db.query(query, [userId]);
性能
// BAD: N+1 query
users.forEach(async user => {
const posts = await getPosts(user.id);
});
// GOOD: Batch query
const userIds = users.map(u => u.id);
const posts = await getPostsForUsers(userIds);
错误处理
// BAD: Swallowing errors
try {
await riskyOperation();
} catch (e) {}
// GOOD: Handle or propagate
try {
await riskyOperation();
} catch (e) {
logger.error('Operation failed', { error: e });
throw new AppError('Operation failed', { cause: e });
}
审查清单
- 没有硬编码的密钥
- 已进行输入验证
- 错误处理完整
- 已定义类型/接口
- 已为新代码添加测试
- 没有明显的性能问题
- 代码易于阅读且有文档说明
- 已记录破坏性变更
评论
支持 Markdown