Skip to content

puemos/lareview

LaReview logo

La Review

The IDE for Code Review.

Build Release License Rust

LaReview hero screenshot


LaReview is a code review workbench for senior engineers. It turns a PR or diff into a structured plan, visualizing architecture and breaking down complex logic so you can review with depth and understanding.

Unlike auto-review bots that race to find bugs, LaReview is a local-first tool designed for active engagement—giving you the insights of a staff engineer without your code ever leaving your machine.

Demo

demo.mp4

Key Features

LaReview is designed for a local-first, secure, and focused review experience.

Screenshot Feature
Plan Generation View AI-Powered Planning
Input a PR or diff. LaReview acts as a staff engineer, analyzing intent and building a structured review plan to guide your attention.
Structured Review Tree Structured Task Tree
Navigate the review as a hierarchical tree. Mark tasks as To Do, In Progress, or Done. Attach contextual notes to specific tasks or lines of code to keep track of your thoughts.
Task-focused Diff Task-Focused Diffs
Focus on one logical change at a time. The workbench isolates relevant code hunks for each task, eliminating noise.
Feedback Items Agent Feedback
The AI proactively identifies bugs and style issues, creating feedback threads anchored to specific lines of code automatically.
Linked Repositories Local Context (Zero Data Leaks)
Link local Git repos to give the agent full access to search your codebase without upload. Your code stays on your machine.
Diagram Viewer Visual Diagrams
Visualize the flow. Automatically generate diagrams to see architectural changes before you read a single line of code. (Requires D2).
Settings View Agent Settings
Configure per-agent executables, environment variables, and custom ACP agents.
GitHub Sync GitHub Push
Submit your review feedback directly to GitHub PRs with automatic summary generation.
Export & Share Export & Share
Export your review summary to Markdown with diagrams and code insights. Copy to clipboard or save to file.
CLI Support CLI Support
Launch reviews from the terminal: lareview, lareview pr owner/repo#123, git diff | lareview, or lareview --agent claude.

How it works

  1. Input
    • Run lareview from terminal (opens GUI with current repo linked), or
    • Paste a unified diff, or
    • Paste a GitHub PR reference: owner/repo#123 or a PR URL
  2. Fetch (for PRs)
    • LaReview fetches data locally via the GitHub CLI (gh). No intermediate servers.
  3. Generate a review plan
    • The review plan is generated by an AI agent you run via ACP (Agent Client Protocol)
  4. Review
    • Work task-by-task, add notes, track status, and optionally clean completed tasks

Terminal Workflow

LaReview includes a CLI that integrates naturally into your developer workflow:

# Open GUI with current repository linked
lareview

# Review changes between branches
lareview main feature

# Pipe a diff directly to the GUI
git diff HEAD | lareview

# Review a GitHub PR
lareview pr owner/repo#123

# Specify an agent
lareview --agent claude

The CLI launches the GUI in the background and passes your diff/repo info seamlessly.

Supported Agents


Claude

Codex

Gemini

Grok

Kimi

Mistral

OpenCode

Qwen

Requirements

  • Rust nightly (see rust-toolchain.toml)
  • GitHub CLI if you want to load PRs:
    • Install: brew install gh (or your OS package manager)
    • Auth: gh auth login
  • D2 (optional): For visual diagram rendering. Install: brew install d2 (or see d2lang.com)
  • ACP agent configured on your machine

Note

LaReview does not require a custom LaReview server. Your PR data is fetched locally via gh, and plan generation runs via your chosen ACP agent.

Installation

Option A: Homebrew (Recommended)

Install LaReview via Homebrew with a single command:

macOS

# First, tap the repository
brew tap puemos/tap
# Then install
brew install --cask lareview

Linux

brew install puemos/tap/lareview

Option B: Download a release

  1. Go to the Releases page and download the latest binary for your operating system.
  2. Follow the instructions for your OS below.

macOS

  1. Download the lareview-macos-*.zip asset and unzip it. You should see LaReview.app.
  2. Drag LaReview.app into /Applications.
  3. If macOS blocks it on first run, open System Settings → Privacy & Security and allow it.
  4. To use from terminal, add to PATH (or use the CLI Installation button in Settings):
    echo 'export PATH="$PATH:/Applications/LaReview.app/Contents/MacOS"' >> ~/.zshrc

Linux

  1. Download the lareview-linux.tar.gz file and extract it.
    tar -xzvf lareview-linux.tar.gz
  2. Make the binary executable and move it to your path.
    chmod +x ./lareview
    mv ./lareview /usr/local/bin/lareview

Option C: One-click CLI installation

Launch LaReview and go to Settings → CLI Installation for a one-click setup to add lareview to your PATH.

Option D: Run from source

cargo run

Option E: Build a local macOS .app (dev)

scripts/build_macos_app.sh

Linux dependencies

# Debian/Ubuntu
sudo apt-get update
sudo apt-get install -y libxkbcommon-dev libxkbcommon-x11-dev

Quickstart

  1. Start the app:

    lareview  # From terminal with repo linked
    # OR
    cargo run  # From source
  2. Open GENERATE

    • Paste a unified diff, or a GitHub PR like owner/repo#123 (or a PR URL)
    • Or use the terminal: lareview pr owner/repo#123
  3. Pick an agent and click generate

  4. Switch to REVIEW

    • Work through tasks, add notes, and track status

Tip

If PR loading fails, run gh auth status and then gh auth login.

Usage examples

Review a GitHub PR

Input:

  • owner/repo#123
  • or https://github.com/owner/repo/pull/123

Review a unified diff

Paste a unified diff directly:

diff --git a/src/lib.rs b/src/lib.rs
index 123..456 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -1,3 +1,8 @@
+pub fn example() {
+  // ...
+}

Data, paths, and privacy

LaReview stores review state locally.

  • macOS DB: ~/Library/Application Support/LaReview/db.sqlite

  • Linux DB: $XDG_DATA_HOME/lareview/db.sqlite or ~/.local/share/lareview/db.sqlite

  • Override DB path:

    LAREVIEW_DB_PATH=/path/to/db.sqlite <RUN_COMMAND>

Executable discovery (GUI apps can start with a minimal PATH):

  • LaReview hydrates PATH from your login shell when launched outside a terminal (macOS/Linux). Restart after shell PATH changes.
  • You can override individual agent executables in Settings → Agent Settings.

Wipe local state:

  • Delete the DB file listed above.

Development

  • Toolchain: nightly Rust with rustfmt and clippy components (edition 2024; see rust-toolchain.toml)

  • Run the app: cargo run

  • Reset/seed sample data:

    If you need more advanced control, use the CLI.

    CLI Reference

  • Checks:

    • cargo fmt -- --check
    • cargo clippy --all-targets --all-features -- -D warnings
    • cargo test
  • Logging:

    • LaReview uses the log crate with env_logger.
    • Set RUST_LOG to control log levels:
      • RUST_LOG=debug cargo run - Full debug output
      • RUST_LOG=acp=debug cargo run - ACP agent debug output only
      • RUST_LOG=error cargo run - Errors only
    • Logs appear in the terminal when running from source.
  • Tests:

    • Unit tests: Located alongside modules in src/ (usually as tests.rs)
    • Integration tests: Located in the root tests/ directory
    • Run all tests: cargo test
  • Supply chain:

    • cargo deny check (used in scheduled CI)

Docs

Contributing

Please read CONTRIBUTING.md before submitting a PR.

Security

See SECURITY.md for reporting vulnerabilities.

License

Licensed under either of:

At your option.