SuperAPI AI 工具集

code-reviewer

编程与开发

查看项目

更新于 10-15 14:47

技能介绍

用途

Code Reviewer 是一款自动化代码审查工具,用于分析 Pull Request 的复杂度与风险,扫描源码中的代码异味和 SOLID 原则违规,并将发现整合为结构化审查报告。支持 TypeScript、JavaScript、Python、Go、Swift 和 Kotlin 六种语言。

主要能力

PR 风险分析:扫描 git diff,检测硬编码密钥、SQL 注入、调试语句、lint 绕过、any 类型以及 TODO/FIXME,并给出 1-10 的复杂度评分。

代码质量检查:依据固定阈值检测过长函数、过大文件、上帝类、深层嵌套、参数过多、高圈复杂度、缺失错误处理、未使用导入和魔法数字。

SOLID 与反模式检测:标记结构性、逻辑、安全、性能、测试和异步方面的反模式,并提供修复建议。

审查报告:将 PR 与质量发现合并为结论(approve / request changes / block)、0-100 评分和排序后的行动项,支持 text、markdown 或 JSON 格式。

审查顺序优先级排序:对文件排序,使安全敏感代码优先被检查。

提交规范校验:验证分支上的 conventional-commit 格式。

使用方式

工具通过三个脚本调用:

  • pr_analyzer.py:从 git diff 评估 PR 复杂度与风险。命令示例:python scripts/pr_analyzer.py . --base main --head feature-branch --json
  • code_quality_checker.py:检测源码中的代码异味和 SOLID 违规。命令示例:python scripts/code_quality_checker.py ./src --language typescript --json
  • review_report_generator.py:将 PR 与质量发现合并为审查报告。命令示例:python scripts/review_report_generator.py . --format markdown --output review.md

使用前需确认三项输入:审查对象(git diff/分支或源码目录)、语言(决定 code_quality_checker.py 通过 --language 应用的规则)、输出与门禁(报告格式及通过/失败评分阈值)。若用户表示“直接起草”,则继续并在产物顶部列出假设。

可加载的参考文档包括:references/tool_reference.md(各工具完整用法、检测列表、阈值/结论表、CLI 标志、JSON 输出样例、支持语言扩展、故障排查表、成功标准)、references/code_review_checklist.md(人工审查清单)、references/coding_standards.md(各语言编码标准)、references/common_antipatterns.md(反模式目录及修复)。

适用场景

  • 审查 PR 时,在人工逻辑审查前进行快速预筛。
  • 分析代码质量,或审计代码库中的异味和 SOLID 违规。
  • 生成结构化审查报告或审查清单。
  • 在 CI/CD 中依据质量评分或审查结论对合并进行门禁。

限制

覆盖范围:git diff 中的静态模式风险检测(密钥、SQL 注入、调试语句、lint 绕过);结构性代码质量分析(函数长度、类大小、圈复杂度、参数数量、SOLID 违规);PR 元数据评估(按风险优先级分类文件、提交信息校验、复杂度评分);跨 text、markdown、JSON 格式的合并审查报告。

不覆盖:运行时或动态分析(应使用 senior-qa 进行测试执行、qa-browser-automation 进行端到端测试);安全漏洞扫描(CVE 数据库、依赖审计,应使用 senior-security 或 senior-secops 进行 SAST/DAST 和供应链分析);性能剖析或基准测试(应使用 senior-backend 或 senior-fullstack);架构级审查(系统设计、服务边界、API 契约验证,应使用 senior-architect)。

集成点

  • senior-security:将 PR Analyzer 的关键发现输入安全审查工作流,进行更深入的 SAST/DAST 分析。数据流:pr_analyzer.py --json 输出的 risks.critical[] → 安全评估输入。
  • senior-qa:以审查报告结论作为测试执行门禁;当结论为 block 时阻止测试套件。数据流:review_report_generator.py --json 输出的 summary.verdict → QA 流水线门禁。
  • senior-architect:将高复杂度 PR(评分 7+)升级至架构审查。数据流:pr_analyzer.py 输出的 summary.complexity_score → 架构审查触发。
  • senior-fullstack:将代码质量评分与 fullstack 质量分析器结合,评估端到端项目健康度。数据流:code_quality_checker.py --json 输出 → 与 code_quality_analyzer.py 指标合并。
  • tdd-guide:将审查发现与测试覆盖率交叉比对;标记质量检查器发现的未测试代码路径。数据流:质量检查器按文件的 smells[] → TDD 覆盖率缺口分析。
  • senior-devops:将审查报告集成到 CI/CD 流水线作为自动化质量门禁。数据流:review_report_generator.py --json 输出的 summary.score → 流水线通过/失败阈值。