Quick Start
Configure a repository, confirm which local tools will run, and exercise the gate before relying on it during a push.
1. Initialize the repository
Run the interactive wizard from a Git repository. It selects a provider, fetches the models your account can use when supported, stores an API key without echoing it, writes drep.toml, and installs the default pre-push hook.
cd your-repo
drep init
For a scripted setup, name the provider and hook mode explicitly:
drep init --provider openrouter --hooks both
drep init --provider codex --hooks pre-push
Provider choice is local
2. Inspect the plan
drep doctor shows detected languages, configured deterministic tools, missing executables, the enabled LLM chain, and any machine-level site policy. A configured tool that is missing is not silently skipped.
drep doctor
3. Check a change directly
# What is staged for the next commit
drep check --staged
# What changed since a ref
drep check --diff origin/main
Deterministic findings block. LLM findings inform by default; add --fail-on error when you deliberately want error-severity model findings to gate. A site policy can refuse semantic review for a marked repository; that is an unanalyzed result and exits 2, while local deterministic tools still run.
4. Push normally
git push
If the review is cold, drep finishes and caches it, then exits 3 to avoid resuming a potentially stale remote connection. When drep explicitly says the cache was warmed, immediately run git push again. The fresh connection uses the cached verdict.
5. Understand the review-round limit
Authoritative staged, diff, pre-commit-push, and bare push-gate checks allow three fresh, finding-producing semantic-review rounds per branch and worktree by default. Clean results and pure analysis failures do not consume a round, and a clean complete change-set check resets the cycle.
At the limit, deterministic tools and cached reviews still run, but a cold semantic-review miss exits 2 without contacting a provider. Raise the limit for one invocation with --max-review-rounds N, or explicitly remove it with --unlimited-reviews.
drep check --staged --max-review-rounds 5
drep check --diff origin/main --unlimited-reviews
6. Acknowledge an accepted finding
Each LLM finding includes a fingerprint. Acknowledging it prevents repeat reports while the surrounding source remains the same.
drep acknowledge <fingerprint>
Exit codes
| Code | Meaning |
|---|---|
0 | All required analysis ran and found nothing blocking |
1 | Blocking findings |
2 | Required analysis did not run |
3 | Cache-only miss, or a successful push-gate warm that requires a fresh push |