代码审查技能
此技能提供基于本地git操作的代码审查功能,使用LLM生成详细的审查报告。适用于开发过程中对代码变更进行质量评估。
功能特性
- 📊 全面代码质量评估:可读性、结构设计、最佳实践
- 🔐 安全漏洞检测:数据安全、权限控制
- ⚡ 性能优化建议:执行效率、资源使用
- 📋 规范合规检查:项目标准、团队约定
- 🛠️ 健壮性分析:异常处理、边界条件
- 🧪 可测试性评估:单元测试覆盖
- 📚 文档完整性检查:注释、文档更新
使用方法
/code-review [选项]
参数选项
--target <ref>:指定对比目标分支或提交(默认:HEAD~1)- 示例:
--target main、--target HEAD~3
- 示例:
--output <file>:指定输出文件(默认:打印到控制台)- 示例:
--output review-report.md
- 示例:
--include <patterns>:包含特定文件模式(用逗号分隔)- 示例:
--include "*.js,*.ts,src/**"
- 示例:
--exclude <patterns>:排除特定文件模式(用逗号分隔)- 示例:
--exclude "*.test.js,node_modules/**"
- 示例:
示例
# 审查当前分支与上一个提交的差异
/code-review
# 审查当前分支与main分支的差异,输出到文件
/code-review --target main --output review.md
# 只审查src目录下的TypeScript文件
/code-review --include "src/**/*.ts" --exclude "src/**/*.test.ts"
执行流程
- 检查git状态和变更
- 读取文件和规则
- 生成审查报告
审查标准
问题严重级别定义
| 级别 | 描述 | 修复时间 | 处理优先级 | 典型影响 |
|---|---|---|---|---|
| 🚨 严重 (Critical) | 安全漏洞、程序崩溃、数据丢失 | 立即处理 (0-4小时) | P0 🔴 | 系统不可用、安全风险 |
| ⚠️ 中等 (Major) | 功能异常、性能问题、逻辑错误 | 本版本 (1-3天) | P1 🟡 | 用户体验差、性能下降 |
| ⚡ 轻微 (Minor) | 代码规范、优化建议、文档问题 | 后续版本 (1-2周) | P2 🔵 | 维护性差、可读性低 |
代码质量评估标准
🌟 优秀 (90-100分): ██████████ 无关键问题,代码质量优秀
✅ 良好 (75-89分): ████████░░ 少量问题,整体质量良好
⚠️ 一般 (60-74分): ██████░░░░ 多个问题,需要改进优化
🚨 较差 (0-59分): ███░░░░░░░ 严重问题,必须立即修复
输出格式
报告结构
🔍 代码审查报告
📊 审查概览
| 📋 审查项目 | 🔢 发现数量 | 📈 占比 | 🎯 处理状态 |
|---|---|---|---|
| 📁 审查文件 | X 个 | 100% | ✅ 已完成 |
| 🚨 严重问题 | X 个 | XX% | 🔴 立即处理 |
| ⚠️ 中等问题 | X 个 | XX% | 🟡 本版本修复 |
| ⚡ 轻微问题 | X 个 | XX% | 🔵 后续优化 |
🏆 代码质量评分
{参考 #### 代码质量评估标准}
🎯 关键发现
| 🏷️ 类别 | 🔍 发现数量 | 🎯 优先级 | 📈 趋势 |
|---|---|---|---|
| 🔒 安全性 | X 个 | 🔴 高 | 📈 上升 |
| ⚡ 性能 | X 个 | 🟡 中 | 📊 平稳 |
| 🎨 代码质量 | X 个 | 🔵 低 | 📉 改善 |
🎯 问题详细分析
🚨 严重级别 (Critical) 紧急处理
🔴 #1 /Users/moguw/ensoai/workspaces/opcd/dev/src/main/java/Service.java:135
🏷️ 类型: 安全漏洞 | ⏰ 优先级:
P0 - 立即修复| 🎯 影响范围: 全局
- 🔍 问题描述:详细问题描述
- 📋 违反规则:(如适用)
- 规则名称: 具体规则内容 + 规则要求: 详细说明 - 🛠️ 解决方案:具体修复建议
- ⚠️ 潜在影响:严重影响系统安全
⚠️ 中等级别 (Major) 建议修复
🟡 #2 /Users/moguw/ensoai/workspaces/opcd/dev/src/components/Button.tsx:42
🏷️ 类型: 功能缺陷 | ⏰ 优先级:
P1 - 本版本修复| 🎯 影响范围: 模块级
- 🔍 问题描述:详细问题描述
- 🛠️ 解决方案:具体修复建议
- ⚠️ 潜在影响:影响用户体验
⚡ 轻微级别 (Minor) 优化建议
🔵 #3 /Users/moguw/ensoai/workspaces/opcd/dev/utils/helpers.js:78
🏷️ 类型: 代码优化 | ⏰ 优先级:
P2 - 后续版本| 🎯 影响范围: 局部
- 🔍 问题描述:详细问题描述
- 📋 违反规则:(如适用)
规则类别: 代码规范 规则内容: 具体规则要求 改进建议: 详细优化方向 - 🛠️ 解决方案:具体修复建议
- ⚠️ 潜在影响:代码可读性和维护性
🎯 合并决策建议
📋 合并评估结果
| 📊 评估维度 | ⭐ 得分 | 🎯 状态 | 💭 说明 |
|---|---|---|---|
| 🔐 安全性 | XX/10 | ✅ 通过 / ⚠️ 风险 / 🚨 阻断 | 具体说明 |
| 📊 代码质量 | XX/10 | ✅ 优秀 / ⚠️ 一般 / 🚨 较差 | 具体说明 |
| ⚡ 性能影响 | XX/10 | ✅ 无影响 / ⚠️ 轻微 / 🚨 明显 | 具体说明 |
| 🛠️ 功能完整性 | XX/10 | ✅ 完整 / ⚠️ 部分 / 🚨 不足 | 具体说明 |
| 🧪 测试覆盖 | XX/10 | ✅ 充分 / ⚠️ 基本 / 🚨 缺失 | 具体说明 |
📈 综合评分: XX/50 分 · 等级: 优秀/良好/一般/较差
🚦 最终建议
✅ 建议合并 / ⚠️ 条件合并 / 🚨 暂缓合并
📝 详细理由:
✅ 建议合并的情况:
- 🟢 代码质量优秀,无严重问题
- 🟢 安全检查通过,无风险隐患
- 🟢 性能表现良好,无明显影响
- 🟢 功能完整,测试覆盖充分
- 🟢 符合项目规范,维护性良好
⚠️ 条件合并的情况:
- 🟡 存在中等问题但不影响核心功能
- 🟡 建议修复后合并,或在下个版本优化
- 🟡 需要特定条件满足(如:添加测试、文档更新)
🚨 暂缓合并的情况:
- 🔴 存在严重安全漏洞或性能问题
- 🔴 代码质量不达标,存在重大缺陷
- 🔴 功能不完整或测试覆盖不足
- 🔴 违反重要项目规范
🎯 具体行动建议:
-
立即可执行的改进:
- 具体建议1
- 具体建议2
-
后续版本改进:
- 优化建议1
- 优化建议2
合并建议生成规则
- 严重问题(🚨) > 2个:🚨 暂缓合并
- 严重问题 ≤ 2个且中等问题 > 5个:⚠️ 条件合并
- 严重问题 = 0且中等问题 ≤ 3个:✅ 建议合并
- 综合评分 ≥ 40:建议合并,30-39:条件合并,< 30:暂缓合并
注意事项
- 规则引用:当发现违反项目规范时,必须直接引用
.rules/目录下的具体规则内容 - 文件路径:使用绝对路径,便于本地导航
- 代码展示:直接展示相关代码片段,首行标注文件路径注释
