- mkdocs.yml: Material theme with dark/light mode, search, tabs, sitemap - scripts/generate-docs.py: auto-generates docs from all SKILL.md files - docs/index.md: landing page with domain overview and quick install - docs/getting-started.md: installation guide for Claude Code, Codex, OpenClaw - docs/skills/: 170 skill pages + 9 domain index pages - .github/workflows/static.yml: MkDocs build + GitHub Pages deploy - .gitignore: exclude site/ build output Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
185 lines
4.6 KiB
Markdown
185 lines
4.6 KiB
Markdown
---
|
|
title: "Code Reviewer"
|
|
description: "Code Reviewer - Claude Code skill from the Engineering - Core domain."
|
|
---
|
|
|
|
# Code Reviewer
|
|
|
|
**Domain:** Engineering - Core | **Skill:** `code-reviewer` | **Source:** [`engineering-team/code-reviewer/SKILL.md`](https://github.com/alirezarezvani/claude-skills/tree/main/engineering-team/code-reviewer/SKILL.md)
|
|
|
|
---
|
|
|
|
|
|
# Code Reviewer
|
|
|
|
Automated code review tools for analyzing pull requests, detecting code quality issues, and generating review reports.
|
|
|
|
---
|
|
|
|
## Table of Contents
|
|
|
|
- [Tools](#tools)
|
|
- [PR Analyzer](#pr-analyzer)
|
|
- [Code Quality Checker](#code-quality-checker)
|
|
- [Review Report Generator](#review-report-generator)
|
|
- [Reference Guides](#reference-guides)
|
|
- [Languages Supported](#languages-supported)
|
|
|
|
---
|
|
|
|
## Tools
|
|
|
|
### PR Analyzer
|
|
|
|
Analyzes git diff between branches to assess review complexity and identify risks.
|
|
|
|
```bash
|
|
# Analyze current branch against main
|
|
python scripts/pr_analyzer.py /path/to/repo
|
|
|
|
# Compare specific branches
|
|
python scripts/pr_analyzer.py . --base main --head feature-branch
|
|
|
|
# JSON output for integration
|
|
python scripts/pr_analyzer.py /path/to/repo --json
|
|
```
|
|
|
|
**What it detects:**
|
|
- Hardcoded secrets (passwords, API keys, tokens)
|
|
- SQL injection patterns (string concatenation in queries)
|
|
- Debug statements (debugger, console.log)
|
|
- ESLint rule disabling
|
|
- TypeScript `any` types
|
|
- TODO/FIXME comments
|
|
|
|
**Output includes:**
|
|
- Complexity score (1-10)
|
|
- Risk categorization (critical, high, medium, low)
|
|
- File prioritization for review order
|
|
- Commit message validation
|
|
|
|
---
|
|
|
|
### Code Quality Checker
|
|
|
|
Analyzes source code for structural issues, code smells, and SOLID violations.
|
|
|
|
```bash
|
|
# Analyze a directory
|
|
python scripts/code_quality_checker.py /path/to/code
|
|
|
|
# Analyze specific language
|
|
python scripts/code_quality_checker.py . --language python
|
|
|
|
# JSON output
|
|
python scripts/code_quality_checker.py /path/to/code --json
|
|
```
|
|
|
|
**What it detects:**
|
|
- Long functions (>50 lines)
|
|
- Large files (>500 lines)
|
|
- God classes (>20 methods)
|
|
- Deep nesting (>4 levels)
|
|
- Too many parameters (>5)
|
|
- High cyclomatic complexity
|
|
- Missing error handling
|
|
- Unused imports
|
|
- Magic numbers
|
|
|
|
**Thresholds:**
|
|
|
|
| Issue | Threshold |
|
|
|-------|-----------|
|
|
| Long function | >50 lines |
|
|
| Large file | >500 lines |
|
|
| God class | >20 methods |
|
|
| Too many params | >5 |
|
|
| Deep nesting | >4 levels |
|
|
| High complexity | >10 branches |
|
|
|
|
---
|
|
|
|
### Review Report Generator
|
|
|
|
Combines PR analysis and code quality findings into structured review reports.
|
|
|
|
```bash
|
|
# Generate report for current repo
|
|
python scripts/review_report_generator.py /path/to/repo
|
|
|
|
# Markdown output
|
|
python scripts/review_report_generator.py . --format markdown --output review.md
|
|
|
|
# Use pre-computed analyses
|
|
python scripts/review_report_generator.py . \
|
|
--pr-analysis pr_results.json \
|
|
--quality-analysis quality_results.json
|
|
```
|
|
|
|
**Report includes:**
|
|
- Review verdict (approve, request changes, block)
|
|
- Score (0-100)
|
|
- Prioritized action items
|
|
- Issue summary by severity
|
|
- Suggested review order
|
|
|
|
**Verdicts:**
|
|
|
|
| Score | Verdict |
|
|
|-------|---------|
|
|
| 90+ with no high issues | Approve |
|
|
| 75+ with ≤2 high issues | Approve with suggestions |
|
|
| 50-74 | Request changes |
|
|
| <50 or critical issues | Block |
|
|
|
|
---
|
|
|
|
## Reference Guides
|
|
|
|
### Code Review Checklist
|
|
`references/code_review_checklist.md`
|
|
|
|
Systematic checklists covering:
|
|
- Pre-review checks (build, tests, PR hygiene)
|
|
- Correctness (logic, data handling, error handling)
|
|
- Security (input validation, injection prevention)
|
|
- Performance (efficiency, caching, scalability)
|
|
- Maintainability (code quality, naming, structure)
|
|
- Testing (coverage, quality, mocking)
|
|
- Language-specific checks
|
|
|
|
### Coding Standards
|
|
`references/coding_standards.md`
|
|
|
|
Language-specific standards for:
|
|
- TypeScript (type annotations, null safety, async/await)
|
|
- JavaScript (declarations, patterns, modules)
|
|
- Python (type hints, exceptions, class design)
|
|
- Go (error handling, structs, concurrency)
|
|
- Swift (optionals, protocols, errors)
|
|
- Kotlin (null safety, data classes, coroutines)
|
|
|
|
### Common Antipatterns
|
|
`references/common_antipatterns.md`
|
|
|
|
Antipattern catalog with examples and fixes:
|
|
- Structural (god class, long method, deep nesting)
|
|
- Logic (boolean blindness, stringly typed code)
|
|
- Security (SQL injection, hardcoded credentials)
|
|
- Performance (N+1 queries, unbounded collections)
|
|
- Testing (duplication, testing implementation)
|
|
- Async (floating promises, callback hell)
|
|
|
|
---
|
|
|
|
## Languages Supported
|
|
|
|
| Language | Extensions |
|
|
|----------|------------|
|
|
| Python | `.py` |
|
|
| TypeScript | `.ts`, `.tsx` |
|
|
| JavaScript | `.js`, `.jsx`, `.mjs` |
|
|
| Go | `.go` |
|
|
| Swift | `.swift` |
|
|
| Kotlin | `.kt`, `.kts` |
|