The rv CLI
The command-line companion to Hervé: capture your AI sessions per repo, and answer review feedback from your terminal.
$ curl -fsSL https://app.herve.review/install.sh | bashmy_repo $ rv install$ rv install
Set up context capture + git hooks for this repo
- --agent <AGENT>
- Agent to capture sessions for; repeat to enable multiple. Accepts claude-code (default), codex, copilot-cli, cursor, factoryai-droid, gemini, opencode, pi
- --no-ignore-entire
- Don't append `.entire/` to the repo's `.gitignore`. By default `rv install` gitignores the directory so its per-repo state stays out of commits
Examples: rv install rv install --agent claude-code --agent codex rv install --no-ignore-entire
$ rv uninstall
Remove the rv pre-push hook + disable capture in this repo
- --keep-entire
- Skip disabling capture for this repo
Examples: rv uninstall rv uninstall --keep-entire
$ rv refresh-hooks
Re-apply the current pre-push hook to every repo in the installed-repos registry. Useful after `rv self update` when the shim format has drifted
- --dry-run
- List the repos that would be refreshed without writing
Examples: rv refresh-hooks rv refresh-hooks --dry-run
$ rv doctor
Report on the rv runtime environment and current repo
- --quiet
- Suppress per-check output; report status via exit code only
Examples: rv doctor rv doctor --quiet
$ rv auth
Authenticate this machine to Hervé (login, status, logout)
Examples: rv auth login rv auth status rv auth logout
$ rv auth login
Log in via the browser (device login). Prints a short code, opens the approval page, and waits for you to approve
$ rv auth status
Report whether you're logged in, as whom, and whether the token is still valid
$ rv auth logout
Revoke this machine's token server-side and delete it locally
$ rv comments
Print Hervé's high-level review of a PR (read-only)
- --pr <NUMBER>
- PR / MR number (required). Naming it by the current branch is a planned follow-up
- -R, --repo <HOST/PATH>
- Repository, as HOST/PATH (e.g. github.com/acme/widget). Defaults to the `origin` remote of the current repo
- --json
- Print the typed JSON payload instead of the markdown digest
Examples: rv comments --pr 42 rv comments --pr 42 --json rv comments -R github.com/acme/widget --pr 42
$ rv self
Manage the rv binary itself (update, uninstall). Distinct from `rv uninstall`, which only touches the current repo's hook
Examples: rv self update rv self uninstall rv self uninstall --purge --force
$ rv self update
Update rv to the latest version
$ rv self uninstall
Uninstall the rv binary and its data dir
- --purge
- Also remove the global the capture engine CLI (only if rv installed it)
- --force
- Proceed even when the installed-repos registry is non-empty
Every command runs --help for the same reference in your terminal.