do-code-review

Analyzes pull requests and source code for complexity, risk, and code smells across 15 languages.

Updated Jul 9, 2026
One-click install
npx skills add https://github.com/khoavu882/do-flow --skill do-code-review-khoavu882
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: do-code-review
Source: https://github.com/khoavu882/do-flow/tree/main/core/shared/skills/do-code-review
Command: npx skills add https://github.com/khoavu882/do-flow --skill do-code-review-khoavu882

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) and assets (resource) components.

What problem does it solve? Reviewing pull requests and large diffs manually is slow and inconsistent, and reviewers often miss security risks, SOLID violations, or code smells buried in multi-language changesets. This Skill automates PR analysis, code quality checking, and review report generation so every review follows the same contract and thresholds. ## Core Features & Use Cases - PR Analysis: Computes a complexity score and risk categorization from the git diff between branches, detecting hardcoded secrets, injection patterns, debug statements, and TODO/FIXME markers. - Code Quality Checking: Flags long functions, high cyclomatic complexity, god classes, excessive parameters, and language-specific smells for Python, TypeScript, Go, Rust, C#, Java, C, C++, Ruby, PHP, Dart, and more, with thresholds resolved from a three-tier review-policy.json. - Review Reports: Combines analyzer output into structured markdown or JSON reports with a declared verdict (Approve, Approve with suggestions, Request changes, Block), plus markdown/prose and YAML/JSON config review paths. - Use Case: Before merging a feature branch, run the PR analyzer against main, run the quality checker on changed files, and generate a single review report with a verdict and prioritized findings. ## Quick Start Ask the AI to review the current branch against main using do-code-review and produce a verdict report listing all findings by severity.

Frequently Asked Questions about do-code-review

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I automate code review for a pull request?▼

Run pr_analyzer.py against the repo with a base and head branch to get a complexity score, risk category, and prioritized file list. Then run code_quality_checker.py on the changed files and combine both outputs with review_report_generator.py into a single report.

What languages does automated code quality checking support?▼

The checker supports Python, TypeScript, JavaScript, Go, Swift, Kotlin, C#, Java, C, C++, Rust, Ruby, PHP, Dart, and Shell, selected by file extension or the --language flag. YAML and JSON files are analyzed as declarative config with parse, duplicate-key, and nesting-depth checks instead of complexity metrics.

Can I customize code review thresholds like max function length?▼

Yes. Thresholds resolve from three tiers: built-in defaults, the shipped review-policy.json, and an optional agent-docs/review-policy.json in the repository under review. A per-repo file only needs to declare the values it overrides, and invalid files stop the analyzer with a named error.

Does the code quality checker need pip dependencies installed?▼

No. All bundled scripts (pr_analyzer.py, code_quality_checker.py, review_report_generator.py, doc_quality_checker.py) use only the Python standard library, so no pip install is required to run any analysis.

Why does the analyzer report partial coverage on some reviews?▼

The checker reports files_analyzed, files_skipped, and a coverage field of complete or partial. Partial coverage means some files could not be analyzed, so the verdict applies only to the analyzed subset and the report must state that explicitly.

What are the limitations of automated code review verdicts?▼

Verdict bands in review-policy.json are declared but never auto-applied; the verdict remains a human reading of the findings. The skill does not edit files or fix findings, and it cannot block a merge by itself — remediation belongs to a separate implementation step.