@caiokf/crev
v0.9.0
Published
<p align="center"> <img src=".github/banner.svg" alt="crev banner" width="100%" /> </p>
Readme
crev — Code REView
Use your existing subscriptions
AI code review tools typically require separate API keys and per-token billing. You're already paying for Claude Code, Gemini CLI, Codex, or other AI coding subscriptions -- crev runs reviews through those CLI tools directly. No extra API keys. No extra billing.
Run multiple reviewers in parallel
Define a review schema with multiple reviewers using different models and prompts, and crev executes them all simultaneously. A security expert on Claude, an architect on Gemini, and a performance reviewer on Codex -- all running at the same time, all finishing in the time it takes the slowest one to complete.
Configurable and reusable
YAML schemas define your review pipeline. Inline prompts or external agent files shape what each reviewer focuses on. Run the same review across PRs, branches, or commits. Share schemas across your team.
# 1 reviewer, fast feedback
crev run --schema quick --base main
# 3 reviewers + triage pass
crev run --schema standard --base main
# 6 specialized reviewers + dedup triage
crev run --schema thorough --base main
# Full codebase analysis
crev run --schema security --analyzeInstall
npm install -g @caiokf/crevOr with Homebrew:
brew install caiokf/tap/crevOr use without installing:
npx @caiokf/crev init
npx @caiokf/crev run --schema quick --base mainQuick Start
# Initialize crev in your project
crev init
# Run a quick review against main branch
crev run --schema quick --base main
# Review a specific PR
crev run --schema quick --pr 42
# Review uncommitted changes
crev run --schema quick --type uncommitted
# Full codebase analysis (no diff)
crev run --schema security --analyze
# Check runtime health
crev doctor
# Smoke test all runtimes
crev doctor --pingHow It Works
- Define a schema -- Pick which runtimes, models, and prompts to use
- crev generates the diff -- From your branch, PR, or commit
- Reviewers run in parallel -- Each runtime gets the diff and reads files from the codebase
- Output is normalized -- All results are merged into a single JSON review
- Optional triage -- A devil's advocate AI pass deduplicates and prioritizes findings
# .crev/schemas/standard.yaml
description: Three-reviewer standard check
reviewers:
- name: Engineer
runtime: claude
model: sonnet
prompt: >
You are a senior software engineer reviewing code changes.
Focus on correctness, error handling, edge cases, and readability.
- name: Security
runtime: gemini
model: gemini-2.5-pro
prompt: >
You are a senior security engineer reviewing code changes.
Focus on injection vulnerabilities, auth flaws, and secrets exposure.
- name: Architect
runtime: codex
model: gpt-5.4
prompt: >
You are a senior software architect reviewing code changes.
Focus on coupling, abstraction quality, and scalability concerns.
triage:
enabled: true
runtime: claude
model: opusEach reviewer can use either an inline prompt or an agent field pointing to any external file:
reviewers:
- name: Security
runtime: claude
model: opus
agent: .crev/agents/security-reviewer.mdSupported Runtimes
| Runtime | CLI | Auth |
|---|---|---|
| Claude Code | claude | Subscription or ANTHROPIC_API_KEY |
| Codex | codex | OPENAI_API_KEY |
| Copilot | copilot | gh auth login |
| Gemini CLI | gemini | GEMINI_API_KEY or GOOGLE_API_KEY |
| Kimi | kimi | MOONSHOT_API_KEY |
| CodeRabbit | cr | cr auth status |
| OpenCode | opencode | ~/.local/share/opencode/auth.json |
| Droid | droid | Subscription |
| MastraCode | mastracode | Subscription |
| Pi | pi | Subscription |
Run crev doctor to check which runtimes are available. Add --ping to verify end-to-end functionality.
Commands
| Command | Description |
|---|---|
| crev init | Interactive setup |
| crev run --schema <name> | Execute a review |
| crev run --analyze | Full codebase analysis (no diff) |
| crev doctor [--ping] | Check runtime health (optionally run ping tests) |
| crev stats --schema <name> | Reviewer effectiveness stats |
| crev config [--layers] | Show resolved configuration |
| crev list | List schemas and runtimes |
| crev show [file] | Pretty-print a review file (default: latest) |
| crev fix [file] | Auto-fix review issues using AI agents |
| crev triage [file] | Run triage on an existing review |
| crev diff | Preview diff that would be reviewed |
| crev schema show <name> | Display schema details |
| crev schema validate | Validate schemas |
| crev schema init <name> | Scaffold a new schema |
| crev update | Regenerate AI tool skills |
| crev help <topic> | Detailed help (run, schema) |
Project Structure
After crev init:
.crev/
├── config.yaml # Global config and model aliases
├── schemas/
│ ├── quick.yaml # 1 reviewer, fast
│ ├── standard.yaml # 3 reviewers + triage
│ └── thorough.yaml # 6 reviewers + triage
└── reviews/ # Review output (JSON)Related
- valet -- The standalone runtime adapter library used by crev
License
MIT
