Make your code brilliant
with AI code review
Get immediate, actionable feedback on every pull request with Graphite's codebase-aware AI.
"It's different from other AI tools because... it actually works. It doesn't blindly say "hey here's a typo," it gives well reasoned recommendations based on the context of what I'm trying to build and what I'm trying to build it in."
Catch bugs before your reviewers do, enforce quality and coding standards, and conduct smarter, faster code reviews

Get fast, practical suggestions that accelerate your review process and approve changes with one click.
Catch more than just typos
Identify and fix various code issues with our intelligent analysis
The condition in the if statement should be inverted. Change it to if (Object.keys(ASYNC_JOB_REGISTRY).includes(kind))
The callback value markNotifAsRead doesn't match the function name markAsReadEndpoint.
The await inside Promise.all([...]) is preventing parallel execution of these promises. Since Promise.all expects an array of promises, the await here will cause the stack dependency check to complete before the merge job query begins. To achieve the intended parallel execution, remove the await from db.stack.getStackDependencyForPr().
The readlink -f is not available on macOS by default. A more portable solution would be bash filepath=$(perl -e 'use Cwd "abs_path"; print abs_path(shift)' "$0") This achieves the same result but works across both Linux and macOS environments.
Please remove this token logging. Exposing GitHub access tokens in logs creates a security risk, as these tokens grant API access and should be treated as sensitive credentials.
Adding || true to this condition causes the function to unconditionally return "BINARY", bypassing the binary detection logic. This appears to be unintentional and should be removed to restore the original file type detection behavior.
Features
Faster development starts here.
Zero setup
No configuration needed. Connect your repo and get immediate feedback.

High-signal
Other AI bots hallucinate and create noisy comments. Graphite doesn't.

Actionable
Resolve issues quickly with easy-to-understand one-click suggestions.

Codebase aware
Reviews that understand the entire codebase, not just the diff.
