Reviewate uses a multi-agent pipeline powered by the Claude Agent SDK where specialized agents handle different aspects of code review:
PR Diff
│
▼
Issue Explorer
│ Finds and summarizes linked issues from the PR description
▼
2 Analyze Agents (parallel, with tools)
│ Each explores the codebase via Read/Grep/Glob/Bash
│ and identifies potential issues
▼
Synthesizer
│ Merges findings from both analyzers
▼
Deduplication
│ Removes issues that duplicate existing human comments
▼
Fact Checker
│ Verifies each claim against actual code
│ using code search and file reads
▼
Style
│ Makes reviews concise and actionable
▼
Guardrail
│ Scans findings for leaked secrets (gitleaks-based)
▼
Post comments
Most AI reviewers use a single prompt ("review this diff"), which leads to hallucinations. Reviewate's approach:
Agents are grouped into tiers to balance quality and cost:
| Tier | Agents | Purpose |
|---|---|---|
| Review | AnalyzeAgent (x2), FactCheckAgent | Deep analysis requiring strong reasoning |
| Utility | SynthesizerAgent, DedupAgent, StyleAgent, IssueExplorerAgent, SummarizerAgent, SummaryParserAgent | Formatting and lightweight tasks |
See Model Configuration for model recommendations.
| Component | Technology |
|---|---|
| Backend | FastAPI, SQLAlchemy, Alembic, FastStream |
| Frontend | Nuxt 4, Vue 3, Pinia, Nuxt UI |
| AI Engine | Claude Agent SDK (Anthropic), Claude Code built-in tools |
| Database | PostgreSQL |
| Queue | Redis (or PostgreSQL) |
| Container | Docker or Kubernetes |
reviewate/
├── backend/ # FastAPI API server
│ ├── api/ # Plugin-based architecture
│ ├── configs/ # YAML configuration (docker.yaml, kubernetes.yaml)
│ └── Dockerfile
├── frontend/ # Nuxt 4 dashboard
│ ├── app/ # Pages, components, composables
│ └── Dockerfile
├── code_reviewer/ # Multi-agent review engine
│ ├── agents/ # Agent implementations (BaseAgent + specialized)
│ ├── workflows/ # Review and summary pipeline orchestration
│ ├── adaptors/ # GitHub/GitLab handlers (gh/glab CLI)
│ └── prompts/ # Jinja2 prompt templates
├── packages/ # Shared TypeScript SDK generated from the openapi
├── website/ # Marketing site & documentation
└── docker-compose.yml
The backend uses a plugin system where each feature is encapsulated:
Plugins are configured via YAML files in backend/configs/ and loaded by the Application class.
The plugin system enables composable deployments — run the full stack on one server, or split into separate worker pods for scalability. For example, you can deploy a dedicated "worker" pod that only runs the ContainerPlugin + FastStreamPlugin for processing review jobs, while the main pod handles the web server and API.
For questions or custom deployment needs, open an issue or contact adam.saimi@reviewate.com.
The code reviewer uses gh and glab CLI tools directly to interact with GitHub and GitLab:
gh api / glab api subprocess callsThis allows the same review pipeline to work with both GitHub and GitLab.