Code Review
AI review on every pull request. Commit one file to your repo’s default branch and Destesi posts a summary, inline comments, and a “Destesi Review” Check shortly after a PR opens — tuned to your codebase’s conventions, not a generic linter.
What you get
Section titled “What you get”- Reads
.destesi.ymlfrom your repo’s default branch — a PR can never review itself under its own proposed rules. - A top-level summary comment, batched per-hunk inline comments, and a “Destesi Review” entry in the Checks tab.
- Per-path instructions so the reviewer learns your conventions instead of guessing.
@destesicommands in PR comments to re-run a review, repost the summary, or silence a finding.
Quickstart
Section titled “Quickstart”-
Connect GitHub once.
Code review runs through the Destesi GitHub App. Add your GitHub connection in Connect at connect.destesi.io for your workspace, then install the Destesi GitHub App on the repos you want reviewed — start that install from Connect’s GitHub page (
connect.destesi.io/workspace/providers/github), not from GitHub’s own install URL. Installing straight from GitHub leaves the installation unlinked to any workspace, so reviews never fire and the setup step stays stuck with no error to read.If you already use Preview on this workspace, the same connection and App installation cover code review — skip to step 2.
-
Commit
.destesi.ymlto your default branch.The minimal opt-in is two keys:
version: 1review:enabled: trueEverything else uses sensible defaults: review on PR open, all paths in scope, summary + inline + Check all on, nits collapsed, and the Check only goes red on severe findings.
-
Open a pull request.
Shortly after the PR opens you’ll see a “Destesi Review” Check appear, then a summary comment, then per-hunk inline comments. Track every review for your workspace at review.destesi.io/dashboard.
A more useful starting config
Section titled “A more useful starting config”The minimal config gives you generic-reviewer judgement. Per-path instructions are where the reviewer actually learns your codebase:
version: 1
defaults: ignore: paths: - "node_modules/**" - "vendor/**" - "dist/**" - "**/*.min.js" - "**/generated/**"
review: enabled: true
instructions: - paths: ["**/*.go"] guidance: | Wrap returned errors with %w. Flag goroutines that don't take a context. Prefer table-driven tests. Reject silent error swallowing.
- paths: ["**/*.tsx", "**/*.jsx"] guidance: | Check React hooks rules. Suggest useMemo for non-trivial computations inside render. Flag direct DOM access.
- paths: ["api/internal/**"] guidance: | This is the control-plane API. Be strict about auth boundaries. Never approve a route added without its auth middleware.Multiple matching paths entries stack in declaration order — a Go file under api/internal/ gets both the general Go rules and the API-specific rules. See Reference for the full schema and the Reference guidance on writing rules the model actually follows.
Talk to the reviewer
Section titled “Talk to the reviewer”Repo collaborators can drive the reviewer from any PR comment:
@destesi review— re-run the review on the latest commit.@destesi summary— repost the latest summary.@destesi ignore— reply to one of the bot’s line comments to stop flagging that rule on that path.@destesi help— list the commands.
Full command reference: Reference → Chat commands.
How it fits the suite
Section titled “How it fits the suite”Code review is one of the peer products in the Destesi suite — one login, one workspace across everything. Reviews are scoped to your workspace and visible to your teammates on the dashboard. The GitHub credential the reviewer uses is connected once in Connect, never stored per-product. See Concepts for the mental model.