Quickstart
Run CodeOtter locally with Node 22 and pnpm, then review your first pull request.
You need Node 22 or later and pnpm. For GitHub repositories, authenticate the GitHub CLI (gh auth status). Forgejo and Gitea use their REST APIs and do not need gh.
Clone the repository
git clone https://github.com/dharmeshgurnani/CodeOtter.git
cd CodeOtterStart CodeOtter
pnpm devStarts the backend, PocketBase and the Vite dev server with HMR. Open http://localhost:5173 (proxied to :4747).
Review a pull request
- Paste a GitHub, Forgejo or Gitea PR URL, or pick one of your repositories in the sidebar.
- Choose a provider under Settings → System → Model provider (see BYOK provider config), or download an offline model under Settings → System → Local models (see Local GGUF & sidecars).
- Get a calibrated review in seconds, or query
/api/score?pr=<url|number>for JSON.
Zero-config storage
PocketBase is detected and started locally for authentication and persistent storage. To customise superuser
credentials or model keys, create a .env file from .env.example.
Next steps
Introduction
CodeOtter is the self-hosted AI pull request reviewer with calibrated scores, merge gates and a deterministic System 1 engine, free to self-host under AGPL-3.0.
Docker quickstart
Deploy CodeOtter with Docker. One-click VPS install, the Compose file, required environment variables, automatic updates and rollback.