Reviewgate banner
Codevena Codevena

Reviewgate

Security community

Description

Fail-closed independent review loop for Claude Code and Codex. Native hooks, six reviewer paths (Codex, Gemini, Claude, OpenCode, OpenRouter, Ollama), LKG policy control plane and local audit trail.

Installation

This entry records only its repository, not the path inside it, so there is no exact command to give. Open the source below and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

README

Reviewgate

**Reviewgate intercepts your Claude Code or Codex agent's turn-end, runs an independent LLM review over the actual change, and requires an explicit outcome for every blocking finding.** It is the *checker* half of the agent loop, packaged so the writer can't grade its own homework. A clean PASS releases the turn; WARN-only policy, infrastructure deferral and bounded human escalation remain visibly distinct from PASS.

  • ๐Ÿ› Catches real bugs before the agent says "done" โ€” a heterogeneous panel (Codex ยท Gemini ยท Claude ยท OpenCode ยท OpenRouter ยท Ollama) reviews the actual diff, in-loop, every turn.
  • ๐Ÿšฆ Never turns failure into green โ€” a crash, timeout or quota outage is never reported as PASS. Reviewgate blocks, explicitly defers for a bounded window, or escalates to a human according to the configured policy.
  • ๐Ÿ“‹ Leaves an audit trail โ€” every finding and every fix/reject decision is written to files (.reviewgate/pending.md) a human (or CI) can inspect later โ€” no chat-stream parsing, no flaky stdout scraping.

Reviewers run the official provider CLIs, so users on Claude Pro/Max, ChatGPT Plus/Pro and Gemini Advanced pay **$0 per review** within their subscription quotas (OAuth-first). OpenRouter reviewers use an API key and can target any hosted model by name.

[!WARNING] **Alpha.** Reviewgate runs provider CLIs on your working-tree diff. Reviewer **filesystem write isolation plus secret-path masking ships** (macOS Seatbelt, Linux bubblewrap) but is **opt-in** (`sandbox.mode`, default `off`). It is a denylist model, not a read allowlist: other host files may remain readable, and **network egress is not isolated**. Prefer your own code / trusted repos. See [Security](#security).

Reviewgate Alpha.11 replay: a real gate blocks a CRITICAL SQL-injection finding, consumes an accepted/fixed decision, then passes the parameterized fix.

**Demo