Configure CodeRabbit local development with hot reload and testing.
Use when setting up a development environment, configuring test workflows,
or establishing a fast iteration cycle with CodeRabbit.
Trigger with phrases like "coderabbit dev setup", "coderabbit local development",
"coderabbit dev environment", "develop with coderabbit".
Use CodeRabbit CLI to review code locally before opening a PR. The CLI provides the same AI-powered review as the GitHub App but runs in your terminal against staged or unstaged changes. This creates a multi-layered review process: local CLI review before commit, then automated PR review after push.
Git repository with .coderabbit.yaml configuration
CodeRabbit account (CLI uses credits: $0.25 per file reviewed)
Instructions
Step 1: Install and Verify CLI
set -euo pipefail
# Install CodeRabbit CLI
curl -fsSL https://cli.coderabbit.ai/install.sh | sh
# Verify installation
cr --version
# Authenticate (opens browser for OAuth)
cr auth login
Step 2: Local Review Workflow
set -euo pipefail
# Review all staged changes (most common workflow)
git add -A
cr review
# Review specific files only
cr review src/api/routes.ts src/middleware/auth.ts
# Interactive mode: ask follow-up questions about review feedback
cr review --interactive
# Plain output mode (pipe to other tools or AI agents)
cr review --prompt-only
Step 3: Git Hook Integration
#!/bin/bash
# .git/hooks/pre-push (make executable: chmod +x .git/hooks/pre-push)
set -euo pipefail
echo "Running CodeRabbit pre-push review..."
# Get list of changed files vs remote
CHANGED_FILES=$(git diff --name-only @{push}.. 2>/dev/null || git diff --name-only HEAD~1)
if [ -n "$CHANGED_FILES" ]; then
echo "$CHANGED_FILES" | xargs cr review
# Non-blocking: show review but don't prevent push
# To make blocking, check exit code:
# echo "$CHANGED_FILES" | xargs cr review || {
# echo "CodeRabbit found issues. Push anyway? (y/n)"
# read -r response
# [ "$response" != "y" ] && exit 1
# }
fi
Step 4: Configuration for Local Development
# .coderabbit.yaml - Settings that affect both CLI and PR reviews
language: "en-US"
reviews:
profile: "assertive"
path_instructions:
- path: "src/**"
instructions: "Check for proper error handling and type safety."
- path: "tests/**"
instructions: "Verify edge cases and assertion completeness."
path_filters:
- "!**/*.lock"
- "!dist/**"
- "!**/*.generated.*"
auto_review:
enabled: true
drafts: false
chat:
auto_reply: true