Install
openclaw skills install @nameused/code-reviewer本技能从 6 个维度对代码进行全面审核:安全性、性能、代码质量、错误处理、测试和文档。适用于审核代码变更、Pull Request 或整个代码库(支持所有主流编程语言)。触发词包括:「帮我 review 这段代码」「检查安全问题」「审查这个 PR」「找出代码中的 Bug」,或用户请求代码质量分析时使用。技能内置自动化分析脚本、安全规则库、各语言最佳实践文档,并可生成可视化 HTML 审核报告。
openclaw skills install @nameused/code-reviewer通过自动化静态分析与 AI 上下文推理相结合的方式,对代码进行全面、多维度的审核。覆盖六大审核维度,支持所有主流编程语言,输出带严重性分级的可执行问题列表和可视化 HTML 报告。
每次代码审核均遵循以下 4 阶段工作流,各阶段依次递进。
确定审核对象和方式:
references/best-practices.md 中各语言专属规则。在进行上下文推理之前,运行内置脚本获取确定性的基线问题。
步骤 1:复杂度分析
对目标代码运行复杂度分析器:
python scripts/analyze_complexity.py <目标路径> --format json
检测内容:过长函数(>50 行)、高圈复杂度(>10)、深层嵌套(>4 层)、参数过多(>5 个)。结果以 JSON 格式输出。
步骤 2:模式扫描
运行模式扫描器检测安全漏洞和代码质量问题:
python scripts/scan_patterns.py <目标路径> --format json
检测内容:SQL 注入、命令注入、硬编码密钥、eval 使用、弱哈希算法、XSS、空 catch 块、TODO/FIXME 标记,以及 20+ 其他反模式。结果以 JSON 格式输出。
步骤 3:合并结果
将两个脚本的 JSON 输出合并为一个问题列表,按(文件、行号、类型)去重。
若 Python 不可用,跳过本阶段直接进入第三阶段,对照 references/security-rules.md 和 references/checklist.md 手动检查代码中的等价问题。
阅读代码并进行自动化工具无法完成的上下文推理,这是审核的核心价值所在。
按需加载以下参考文档:
references/checklist.md — 6 维度全面检查清单references/security-rules.md — OWASP Top 10、各语言安全模式、密钥检测正则references/best-practices.md — 各语言惯用写法与反模式references/severity-guide.md — 严重性分级标准与示例对第二阶段的每个问题进行确认或排除误报,然后检查模式匹配无法发现的问题:
安全性(参考 references/security-rules.md):
性能(参考 references/checklist.md 第 2 节):
代码质量(参考 references/best-practices.md):
错误处理(参考 references/checklist.md 第 4 节):
测试(参考 references/checklist.md 第 5 节):
文档(参考 references/checklist.md 第 6 节):
生成最终审核输出。
步骤 1:对所有问题进行分级(参考 references/severity-guide.md):
步骤 2:生成 HTML 报告(可选,当用户需要可视化报告时):
# 双语报告,带切换按钮(默认)
python scripts/generate_report.py <findings.json> --project "<项目名称>" --output review-report.html
# 仅中文
python scripts/generate_report.py <findings.json> --lang zh --output review-report.html
# 仅英文
python scripts/generate_report.py <findings.json> --lang en --output review-report.html
或通过管道直接传入:
echo '<combined-json>' | python scripts/generate_report.py - --lang zh --output review-report.html
报告包含:严重性统计卡片、分类汇总表格、可交互过滤的问题列表(含代码片段)、暗色主题,以及双语支持(--lang zh|en|both)。默认 --lang both 时,右上角提供切换按钮,无需刷新即可在中英文间即时切换。
步骤 3:在对话中输出摘要:
向用户呈现简洁摘要:
| 维度 | 覆盖内容 | 主要参考 |
|---|---|---|
| 安全性 | OWASP Top 10、注入、认证、密钥、加密 | references/security-rules.md |
| 性能 | 数据库查询、算法、内存、并发 | references/checklist.md §2 |
| 代码质量 | 复杂度、命名、重复代码、架构 | references/best-practices.md |
| 错误处理 | 覆盖率、质量、容错能力 | references/checklist.md §4 |
| 测试 | 覆盖率、质量、可维护性 | references/checklist.md §5 |
| 文档 | 代码级和项目级文档 | references/checklist.md §6 |
每个问题应包含以下字段以保持一致性:
- 严重性(Severity):Critical(严重)| High(高危)| Medium(中危)| Low(低危)| Info(提示)
- 分类(Category):Security(安全)| Performance(性能)| Code Quality(质量)| Error Handling(错误处理)| Testing(测试)| Documentation(文档)
- 文件(File):path/to/file.ext
- 行号(Line):<行号>
- 规则(Rule):<规则 ID 或简称>
- 描述(Message):<问题说明,一句话>
- 建议(Suggestion):<修复方式,一句话>
- 代码片段(Snippet):<有问题的代码行,如适用>
analyze_complexity.py — 分析圈复杂度、函数长度、嵌套深度和参数数量。Python 代码使用 AST 精确解析,大括号语言(JS/TS/Java/Go/C/C++/PHP/Ruby)使用正则启发式分析。输出格式:JSON 或文本。
scan_patterns.py — 扫描 30+ 种安全和质量反模式,包括 SQL 注入、命令注入、硬编码密钥、eval 使用、弱哈希、XSS、空 catch 块、TODO 标记、魔法数字等。输出格式:JSON 或文本。
generate_report.py — 从 JSON 问题数据生成自包含 HTML 报告。功能:严重性统计卡片、分类汇总表格、交互式过滤、代码片段展示、暗色主题,双语支持(中文/英文,通过 --lang zh|en|both 实时切换)。支持从文件或 stdin 读取数据。
checklist.md — 6 维度全面代码审核检查清单,包含 80+ 具体检查项。第三阶段系统性核查时使用。
security-rules.md — OWASP Top 10 速查表、各语言安全模式(JS/TS、Python、Java、Go、PHP、C/C++、Rust)、密钥检测正则表达式,以及安全问题的严重性分级。
best-practices.md — 各语言惯用最佳实践与常见反模式,覆盖 JavaScript/TypeScript、Python、Java、Go,以及通用原则(SOLID、Clean Code、API 设计、版本控制规范)。
severity-guide.md — 详细严重性分级指南,包含各级别(Critical 至 Info)的判定标准、代码示例和决策流程。
本技能不使用此目录。HTML 报告由 scripts/generate_report.py 动态生成。
本技能设计为跨平台运行:
在无本地文件访问权限的纯云端环境中,自动化脚本(第二阶段)可能不可用。此时跳过第二阶段,直接进入第三阶段,对照参考文档手动完成所有检查。