Open source · GitHub Action · Free

AI code reviews that actually understand your codebase.

Drop one review.yml file into any repo. RabbitAI reviews every PR automatically catching bugs, security issues, and performance problems without sending your source code to third-party platforms.

dependency map(networkx)
changedgraphhigh blast radiusIMPORTERS • DEPENDENCIES • BLAST RADIUS+20 imports
01

Knows which changes are risky

RabbitAI builds a dependency graph from your diff and computes blast radius how many files depend on each changed file. Touch a utility with 20 importers and RabbitAI flags it immediately, before the bug reaches production.

structural memory(mem0)
new prdrizzlesecuritypatternsconventionsrepository memoryretrieve contextsmarter reviewCONVENTIONS • ARCHITECTURE • RECURRING ISSUES
02

Gets smarter with every PR

After each review, RabbitAI saves what it learned your conventions, recurring issues, architecture decisions. The next review on the same repo pulls that context in. It remembers that you use Drizzle ORM, that SQL injection was flagged before, that your team prefers functional components.

pr sync workflow(agent matrix)
PRclassifyroutersecuritycontextqualitymergereview
03

Triggers on every PR, automatically

Opens a PR, pushes a new commit, reopens a draft RabbitAI runs every time. The review shows up directly on the PR as a structured comment, exactly where your team already looks. No dashboard to check, no tool to switch to.

sovereign core(isolated)
github runnerlocal environmentprompt onlyexternal llmCODE • EMBEDDINGS • MEMORY NEVER LEAVE
04

Your code never leaves your environment

RabbitAI runs inside GitHub Actions on your own runner. Only the generated review prompt plain text is sent to the LLM API. Your source code, diffs, embeddings, and memory store stay local. No vendor lock-in, no data agreements to sign.

How it works

A 9-node LangGraph pipeline runs on every PR. Each node does one job and hands off to the next.

1

Fetch the diff

Pulls the PR diff and file metadata from GitHub API. Extracts per-file patches, additions, deletions, and branch context.

2

Map the blast radius

Parses import and require statements to build a file dependency graph using NetworkX. Flags changed files with many dependents as high risk.

3

Embed and retrieve context

Chunks the diff by file, embeds each chunk using your configured embedding model, and stores it in your vector store. Retrieves the most relevant chunks to include in the review prompt.

4

Review and post

Loads past learnings from mem0, builds a structured prompt from all context, calls your LLM, and posts the result as a comment on the PR. Saves new learnings for next time.

Runs entirely for free

Every component in the default stack has a free tier or is fully open source. Swap any layer for your preferred provider OpenAI, Pinecone, Qdrant via a single config file.

LLMGemini 2.0 Flash
Vector storeChromaDB (local)
Dependency graphNetworkX
Memorymem0 (local)
WorkflowLangGraph
IDE integrationAnthropic MCP

Add it to any repo in 2 minutes

One workflow file. One secret. Open a PR and RabbitAI posts the review automatically. No server to host, no webhook to configure.

# .github/workflows/review.yml
on: [pull_request]
jobs:
  review:
    uses: nikhilsaiankilla/rabbitai
    secrets: GEMINI_API_KEY
quick setup(2 min)
repoworkflow.ymlauto reviewadd actionopen pr