Security
Trust boundaries and data handling.
Security overview →ReviewSensei is free, open-source software. Inference, GitHub Actions minutes, and self-hosted runner capacity are yours to provision. Pick a route, understand the control matrix, and know what writes are enabled before you merge.
App installation alone does not run reviews. The GitHub App opens a setup pull request with the caller workflow, the uninstall workflow, and .reviewsensei.yml. You still choose a provider, runner, and which publication policies to enable.
Setup-v5 writes no repository variables. Every policy lives in .reviewsensei.yml on the default branch, and publication stays off until you enable it.
| Capability | .reviewsensei.yml setting | Default | When enabled | Observation-only example |
|---|---|---|---|---|
| Analysis | github.automatic_reviews |
true | Runs provider inference on eligible same-repository pull requests (skips drafts). | Set false and dispatch ReviewSensei review manually, or use CLI plan / doctor. |
| Comment publication | github.writes |
false | Publishes validated inline comments, the review summary, and the ReviewSensei check run. |
Run analysis with writes disabled: provider calls occur; GitHub receives no review body and no check run. |
| Review policy / automatic approval | github.reviews |
auto-approve | Publishes one exact-head COMMENT review; eligible clean heads may receive APPROVE. blocking publishes and enforces through the ReviewSensei check run without approving and emits no persistent request changes review as a second gate; advisory imposes no ReviewSensei merge gate. |
Set blocking for enforcement without automatic approval, or advisory for comment-only publication with a neutral check. |
| Learning | github.learning |
disabled | proposals enables learning proposal generation during review runs; pull-requests additionally enables learning PR publication, opening or refreshing a draft learning pull request on the default branch. |
Leave disabled; learnings remain ordinary repository files you manage manually. |
| Conversations | github.mentions |
true | Authorized @reviewsensei mentions receive bounded thread replies (requires github.writes: true). This setting controls only conversational replies: the maintainer commands @reviewsensei review status|pause|continue|reenroll, @reviewsensei verify, and @reviewsensei dismiss|defer|accept-risk run whenever github.writes: true and the comment body matches the caller workflow's @reviewsensei routing gate. Those caller checks route the run; the mutation is re-authorized inside the reusable workflow against the broker-attested actor and the session ledger before any write. |
Set false to skip conversational replies; mention events are ignored for reply publication. This setting does not disable commands: the maintainer surface @reviewsensei review status|pause|continue|reenroll, @reviewsensei verify, and @reviewsensei dismiss|defer|accept-risk stays available whenever github.writes: true — @reviewsensei review status is read-only but still routes through the command job against the broker-attested actor. See the installation guide for the full grammar. |
| Artifact retention | github.artifacts |
none | diagnostics uploads review.json as a GitHub Actions artifact. |
Leave none; validated results stay inside the job unless you add your own upload step. |
Automatic approval applies only when automatic review and GitHub writes are enabled and all eligibility gates pass; the default policy is github.reviews: auto-approve.
Every path lists execution location, provider destination, credential names (never values), cost ownership, enabled writes, expected first-success output, and cleanup steps.
Install the ReviewSensei GitHub App on selected repositories. The App opens a setup pull request; review execution stays in your GitHub Actions environment.
.reviewsensei.yml, then delete the retired file..reviewsensei.yml. Cloud mode requires OLLAMA_API_KEY; OpenRouter requires OPENROUTER_API_KEY.# Install the ReviewSensei GitHub App https://github.com/apps/reviewsensei # .reviewsensei.yml, merged with the setup pull request schema: 1 inference: backend: cloud-ollama # or local-ollama (default), openrouter github: automatic_reviews: true # analyze eligible pull requests writes: true # publish findings and the check run reviews: auto-approve # or blocking / advisory mentions: true # authorized @reviewsensei conversation
Run the generated Remove ReviewSensei setup workflow. Uninstall the App from GitHub settings to stop new setup deliveries, and delete .reviewsensei.yml if you no longer want ReviewSensei policy in the repository.
Copy the supported example workflow without installing the GitHub App. You own the workflow, runner labels, secrets, and every control in .reviewsensei.yml.
# examples/github-actions/review-sensei-review.yml — pinned to the operator-managed v5 tag
on:
pull_request:
types: [opened, reopened, synchronize, ready_for_review]
jobs:
review:
uses: malsabbagh/review-sensei/.github/workflows/review-sensei-run.yml@v5
secrets:
OLLAMA_API_KEY: ${{ secrets.OLLAMA_API_KEY }}
OPENROUTER_API_KEY: ${{ secrets.OPENROUTER_API_KEY }}
# .reviewsensei.yml — the full control surface
schema: 1
github:
automatic_reviews: true
writes: true
reviews: auto-approve
pip install review-sensei==0.6.23 review-sensei doctor --json
Delete or disable the workflow file and remove repository variables and secrets.
Install the published Python package or npm launcher, prepare a bounded diff, run offline diagnostics, then generate a review artifact.
pip install review-sensei==0.6.23 review-sensei doctor --json
npx --yes @reviewsensei/cli@0.6.23 --version npx --yes @reviewsensei/cli@0.6.23 prepare-diff \ --repository . --base-ref main --head-ref feature --output pr.patch
review-sensei prepare-diff --repository . --base-ref main --head-ref feature --output pr.patch review-sensei plan --diff pr.patch --repository owner/repo --pull-request 42 \ --base-sha <base> --head-sha <head> --json
review-sensei --diff pr.patch --repository owner/repo --pull-request 42 --format json --output review.json
pip uninstall review-sensei and delete local artifacts.
Trust boundaries and data handling.
Security overview →Ollama local/cloud, OpenRouter, and CLI-only OpenAI-compatible presets.
Provider matrix →Portable GitHub Actions workflow.
Workflow examples →Release 0.6.23 release notes.
Releases →Full install and workflow details.
Canonical install docs →What leaves your repository.
Data handling →