Features

Code reviews

Use the built-in Review workflow to get AI-powered code reviews directly in your IDE. Bob analyzes changes and flags potential issues before you commit your work.

Why use code reviews?

  • Catch errors early: Identify issues before they make it into your committed work.
  • Save time: Address potential reviewer comments proactively, reducing PR approval time.
  • Improve code quality: Get suggestions for better coding practices and maintainability.
  • Validate against issues: Ensure your changes align with issue requirements (GitHub required).

How it works

The Review workflow runs entirely within your IDE. Bob provides a dedicated Review panel. Open it using the /review command.

Bob reviews the diff between your selected branches, then flags potential issues in the Bob Findings panel. You can optionally include a GitHub issue to validate that your changes address its requirements.

Reviews run with auto-approval. Bob proceeds through all analysis steps without requiring manual confirmation.

Review your code

Prerequisites

  • Access to the local or remote branches you want to compare.
  • For issue validation: a GitHub account and the URL of the issue (GitHub is required for issue-related features).
Note:

Bob can work with GitHub and GitLab for branch comparisons. However, issue validation requires GitHub.

Initiate a review

Open the Bob Review panel from your sidebar using the /review command or the Review panel icon. The panel provides a visual interface for configuring and starting your review.

Select the branch you want to compare against from the branch dropdown. You can compare against your current branch, local branches, remote branches, or your repository's default branch.

Toggle Include Uncommitted Changes if you want to include local modifications that have not yet been committed.

Optionally, select a GitHub issue from the issue list to validate that your changes address its requirements.

Click Start Review to begin.

Bob reviews your changes and displays findings in the Bob Findings panel.

Review options

Select a comparison branch

The branch dropdown selector shows:

  • Current branch: Your active branch.
  • Default branch: Your repository's default branch (marked with a badge).
  • Remote branches: Branches from your remote repository (marked with a badge).
  • Local branches: Other local branches (marked with a badge).

You can compare remote main against local main, your current branch against any other branch, or any combination of refs.

Show uncommitted changes

Enable the Include Uncommitted Changes checkbox to include uncommitted local modifications in your review. This option is automatically enabled when reviewing your current branch.

Configure review exclusions

You can exclude specific files or patterns from code reviews:

Open Bob Settings.

Navigate to the Bob Findings tab.

Under Review Exclusions, add glob patterns for files to exclude (e.g., .vscode/**, *.test.ts).

Excluded files will not appear in the review panel's file list and will not be analyzed during reviews.

Using Bob Findings

Once Bob completes a review, findings appear in the Bob Findings panel. You can interact with these findings in several ways:

Viewing findings

  • Click on any finding in the Bob Findings panel to see full details.
  • Use @issues in the chat interface context dropdown menu to reference findings in conversation.
  • Navigate to the file by clicking on the finding to see the code in context with inline annotations.

For more information about context mentions, see context mentions.

Taking action on findings

Each finding provides the following action:

  • Fix with Bob: Ask Bob to automatically fix the issue. Bob will create a task to address the finding.
  • Dismiss: Remove the finding from the panel if it's not relevant.

Tips and best practices

  • Combine with manual reviews: Use Bob's automated reviews as a first pass before human code reviews.
  • Validate issue coverage: Include a GitHub issue to ensure your changes fully address the requirements before creating a pull request.
  • Configure exclusions: Exclude test files, generated code, or configuration files that don't need review.
  • Compare against remote branches: Use the branch selector to review your work against the latest remote changes.
How is this topic?