Review
Read what the agent changed in the Changes pane, revert or accept single hunks, send comments back to the agent, and run code reviews at four depths.
An agent can change a lot of code quickly. Reviewing it should be just as quick. Cusp gives you two tools: the Changes pane, where you read the diff yourself, and code review, where agents read it for you and report findings.
The Changes pane
Open it with Changes in the pane toggles, or ⌘⇧D (Ctrl+Shift+D).
Scopes
Choose what the diff covers:
| Scope | Shows |
|---|---|
| Since last message | What the agent changed in response to your latest message |
| This session | Everything the session changed since it started |
| Working tree | All uncommitted changes in the folder, whoever made them |
| Branch | Everything on the current branch compared with its base. Hidden when there's no base to compare against |
Use j and k to move between files. Each file can be collapsed, and the view can switch between unified and split, show unchanged lines, or soft-wrap.
Hunk by hunk
Every hunk has four actions:
- Ask about hunk quotes the hunk into the composer so you can ask the agent about it.
- Comment on hunk adds a review comment (see below).
- Revert hunk puts that part of the file back the way it was. If the file changed since the diff loaded, Cusp refuses rather than overwrite edits it hasn't shown you.
- Accept hunk marks it reviewed. Accepting every hunk in a file stages the file.
Each file shows its state: Pending review, Accepted or Reverted.
Comments to the agent
Use the comment button beside any line to comment on it, or Comment on hunk for the whole hunk. Comments collect in a tray at the bottom of the pane instead of being sent one by one. When you're done, choose Send comments or press ⌘↵ (Ctrl+Enter), and Cusp sends them to the agent as a single message with each comment's file and line. The agent then works through them like any other request.
Commit
Below the diff, write a commit message or generate one from the session, then Commit. Pushing from the pane isn't available yet; push from a terminal or ask the agent.
Code review
A review is a read-only run: the reviewing agent can read files and run read-only commands, but it can't edit anything. It reports findings, each with a file and line, a severity, and the reasoning behind it.
Review levels
| Level | What runs | Use it when |
|---|---|---|
| Quick | One pass over the diff with about 20 lines of context around each hunk | Before you commit |
| Standard (default) | One reviewer reads the changed files and their direct callers | Before a pull request |
| Deep | Parallel reviewers, one per concern (correctness, security, tests, performance and concurrency, API compatibility, maintainability). Duplicate findings are merged, and each important finding goes to a verifier that tries to build the concrete failure, then marks it confirmed, plausible or refuted | Risky changes, large pull requests |
| Ultra | Deep, plus each important finding is checked by verifiers from two other model families and kept only when at least two of three agree. Optionally writes a failing test in a scratch worktree to reproduce the problem | Security-sensitive code, releases |
Ultra needs models from at least two families (for example Claude and GPT). Without them it runs Deep and tells you so.
Deep and Ultra have a spending cap, $5 and $15 by default. A review that reaches it stops starting new reviewers and shows what it found so far.
Running a review
Review levels are in preview. The app's and CLI's /review commands run a Standard review. A level picker in the composer and the Changes pane, with live progress and a findings panel, is coming soon. Until then, choose a level by sending /review <level> as a message, as shown below.
Send /review with a level as the message text, for example with cusp -p, the Agent SDK or an ACP editor:
cusp -p "/review deep"
cusp -p "/review ultra --base main --reproduce"
cusp -p "/review quick --focus security,tests check the new auth middleware"/review [quick|standard|deep|ultra] [--base REF] [--max-cost USD]
[--reviewers provider:model,…] [--verifiers provider:model,…]
[--focus area,…] [--reproduce] [instructions…]| Option | Meaning |
|---|---|
--base REF | Review the branch against REF (git diff REF...HEAD). Without it, Cusp reviews uncommitted changes |
--max-cost USD | Spending cap for Deep and Ultra |
--reviewers | Up to three models for the Deep reviewers |
--verifiers | Models for Ultra's cross-family verification |
--focus | Concerns to emphasize, such as security,tests |
--reproduce | Ultra only: try to reproduce important findings with a failing test in a scratch worktree |
Anything after the options is passed to the reviewers as extra instructions. Deep and Ultra skip lock files, dist/ folders and minified files.
In the CLI's interactive mode, /review [pr|branch|uncommitted] [--post] [focus] runs a Standard review of the bound pull request, the branch or uncommitted changes, and --post posts the findings to the pull request. See the CLI reference.
Next
- Race: compare several attempts before you review one.
- Parallel agents: keep several agents' changes apart.