diff --git a/.github/workflows/node.js.yaml b/.github/workflows/node.js.yaml
index d7897810..22575dd0 100644
--- a/.github/workflows/node.js.yaml
+++ b/.github/workflows/node.js.yaml
@@ -26,6 +26,8 @@ jobs:
cache: pnpm
- run: pnpm install --frozen-lockfile --strict-peer-dependencies
- run: pnpm run build
+ env:
+ API_KEY: ${{ secrets.INKEEP_API_KEY }}
- run: pnpm run lint
fix:
diff --git a/docs/changelog.md b/docs/changelog.md
index e200f30b..6a21a8ab 100644
--- a/docs/changelog.md
+++ b/docs/changelog.md
@@ -5,13 +5,159 @@ description: The latest updates and changes to CodeRabbit.
sidebar_position: 13
---
+## May 19, 2025
+
+### Lua Support with Luacheck
+
+We're excited to announce enhanced support for Lua code analysis with [Luacheck](https://github.com/mpeterv/luacheck), a powerful static analyzer and linter for Lua code.
+
+## May 14, 2025
+
+### CodeRabbit for VS Code, Cursor, and Windsurf Is Here ๐
+
+We're thrilled to announce that CodeRabbit's AI code reviews have officially landed inside **VS Code and all its forks, including Cursor and Windsurf!** No more review bottlenecks or context switches: now you can get _instant, inline feedback right in your editor, completely free._
+
+**Why you'll love it:**
+
+- ๐ **Inline Code Reviews**: Senior-dev-level annotation on every line. CodeRabbit becomes your AI pair programmer, annotating staged & unstaged commits before you even open a PR.
+- ๐ **Built for Flow, Not Friction**: Code, review, commitโrise & repeat without breaking your flow state. Reviews run automatically on every commit so you ship faster.
+- ๐ ๏ธ **Fix-with-AI**: One-Click Fix for quick tweaks; "Fix with AI" hands off more complex suggestions to your favorite coding agent, complete with full context.
+- ๐งฉ **Compatible with Cursor, Windsurf & Language-Agnostic**: Works out of the box on VS Code, Cursor, Windsurf. Supports Java, JavaScript, PHP, Python, TypeScript, Go, Ruby, and more.
+
+Pair these IDE-embedded reviews with our deeper Git-platform reviews for a multi-layered approach that catches more bugs and cuts down overall review time.
+
+- [Join the launch discussion on Discord](https://discord.com/channels/1134356397673414807/1145813948193575023/1372210767838842950)
+- [Install the CodeRabbit VSCode Extension](https://coderabbit.link/vscode)
+
+## April 19, 2025
+
+### Docstring Path Instructions
+
+You can now provide path-based instructions for the generation of docstring in `.coderabbit.yaml`.
+
+Example:
+
+```yaml
+code_generation:
+ docstrings:
+ path_instructions:
+ - path: "**/*.ts"
+ instructions: |
+ End all docstrings with a notice that says "Auto-generated by CodeRabbit.".
+ Do not omit the closing tags; the docstring must be valid.
+```
+
+See the [docstrings documentation](/finishing-touches/docstrings#path-instructions) for more details.
+
+## April 14, 2025
+
+### Shopify CLI Integration & Bitbucket Cloud Reporting
+
+We're excited to announce two significant updates:
+
+#### Shopify CLI Integration
+
+We've added support for [Shopify CLI](https://docs.coderabbit.ai/tools/shopify-cli), a powerful tool for validating and analyzing Shopify themes and apps. This integration helps ensure your Shopify projects follow best practices by:
+
+- Validating Liquid syntax and theme requirements
+- Checking app extension configurations
+- Identifying performance bottlenecks
+- Ensuring accessibility standards
+- Detecting security vulnerabilities
+
+#### Bitbucket Cloud Scheduled Reporting
+
+Our reporting capabilities now extend to Bitbucket Cloud! You can now:
+
+- Schedule automated reports for your Bitbucket Cloud repositories
+- Generate customized summaries of team performance
+- Track PR review metrics
+- Deliver reports via Email, Slack, Microsoft Teams, or Discord
+
+## April 11 2025
+
+### Agent Chat
+
+```mdx-code-block
+
+```
+
+We're thrilled to introduce agentic planning on GitHub for CodeRabbit chat as Generally Available for Pro users. This enhancement lets you make more advanced requests that span multiple files. Just add a review or issue comment on any pull request, or issue comment on an issue, issue tagging `@coderabbitai` along with your natural language request for a code change, and the chat will develop a plan for complex modifications. Upon reviewing the plan and getting your consent, CodeRabbit will emit a stacked PR, commit or copyable snippet to your PR or issue for those code changes.
+
+## April 8, 2025
+
+### New Static Analysis Tools
+
+We've expanded our static analysis capabilities with two new tools:
+
+- **Oxlint**: A high-performance JavaScript/TypeScript linter written in Rust.
+- **Prisma Lint**: A dedicated linter for Prisma schema files to help enforce consistent conventions and best practices.
+
+Both tools can be configured through their respective config files or through CodeRabbit's settings page. See our [tools documentation](https://docs.coderabbit.ai/tools/) for more details.
+
+## April 1, 2025
+
+### Code Graph Analysis
+
+Code reviews automatically analyze dependencies across multiple files to enhance the context from code definitions (e.g., types) to improve accuracy and reduce false positives.
+
+This is a very powerful feature that gathers context behind code changes in one file that have dependencies in another file.
+
+๐ See it in action: Review details โ Additional context used โ Code definitions
+In the review status message. It is automatically enabled for all users.
+
+### Automatically Run a Web Query to Include Latest Information
+
+CodeRabbit now performs Web Queries automatically to include the most recent publicly available information โ even if it wasn't included in the latest LLM update. This feature is enabled by default for all users, and you may notice it being used in review comments and chat responses.
+
+Web Queries allow CodeRabbit to fetch the latest documentation and external content to improve the accuracy and relevance of its output. You can disable this feature by setting web_search: false in your knowledge_base settings.
+
+### CodeRabbit Auto-Resolve
+
+CodeRabbit can now detect when suggested changes have been implemented and automatically resolve the related review threads on your behalf.
+
+### Dashboard Redesign
+
+```mdx-code-block
+import ProPlanNotice from "@site/src/components/ProPlanNotice.mdx"
+
+
+```
+
+New and Improved Dashboards to provide more useful feedback such as:
+
+- Avgerage PR Merge Time
+- Weekly Pull Request Activity
+- Number of PRs Reviewed
+- Acceptance rate of CodeRabbit Suggestions
+- Tool Findings
+- Review Feedback Breakdown
+
+and much more! Check out the new dashboard to view these metrics about your organization.
+
+### Multi-Step Agent Chat
+
+```mdx-code-block
+
+```
+
+We're thrilled to introduce agentic planning on GitHub for CodeRabbit chat as an Experimental feature for Early Access users. This enhancement lets you make more advanced requests that span multiple files. Just add a review comment on any pull request tagging `@coderabbitai` along with your natural language request for a code change, and the chat will develop a plan for complex modifications. Upon reviewing the plan and getting your consent, CodeRabbit will emit a stacked PR to your PR for those code changes.
+
+### Additional Static Analysis Support
+
+We are continually expanding our support for static analysis tools. We've recently added support for:
+
+- SQLFluff
+- Added Oxlint for faster linting
+ - Oxlint is a blazingly fast JavaScript/TypeScript linter written in Rust
+ - Replaces ESLint for basic linting while maintaining ESLint for more complex rules
+ - Up to 50-100x faster than traditional ESLint
+
## February 25, 2025
### Docstrings
```mdx-code-block
-import ProPlanNotice from '@site/src/components/ProPlanNotice.mdx';
-
```
diff --git a/docs/faq.md b/docs/faq.md
index bf7c5fe0..f4158154 100644
--- a/docs/faq.md
+++ b/docs/faq.md
@@ -31,10 +31,10 @@ CodeRabbit works with all programming languages, with varying proficiency based
- - No persistent code storage
- - Temporary cloning during review only
- Complete data isolation
- - Immediate disposal post-review
+ - Caching of encrypted code and dependency archives for faster reviews
+ - Code indexing in which we store vector representations of code for efficient code base context
+ - Both caching and code indexing can be disabled which means we store nothing post-review
- Uses only public datasets
@@ -92,7 +92,7 @@ Email field and click Update to save your changes.
### Usage and Configuration
- **Language Settings**: Configure review language in repository settings
-- **Review Rules**: Customize via [Review Instructions](/guides/review-instructions)
+- **Review Rules**: Customize via [review instructions](/guides/review-instructions)
- **Branch Selection**: Default branch reviews enabled by default (configurable)
### Access & Permissions
@@ -108,7 +108,7 @@ Interact with CodeRabbit by:
1. Replying directly to CodeRabbit comments
2. Tagging `@coderabbitai` in PR discussions
3. Adding review comments for specific lines
-4. Customize via [Review Instructions](/guides/review-instructions)
+4. Customize via [review instructions](/guides/review-instructions)
:::tip Collaboration Mode
When team members are active in PRs, use `@coderabbitai` to engage the bot.
@@ -128,7 +128,7 @@ The following limits enforced _per developer_:
| ---------------- | ------------------------------------------ | ----------------------------- | ----------------------------- | ----------------------------- |
| Files per hour | 200/hour | 200/hour | 200/hour | 400/hour |
| Files per PR | 100 | 100 | 100 | 200 |
-| Reviews per hour | 4 back-to-back, then 3/hour (Summary only) | 4 back-to-back, then 3/hour | 3 back-to-back, then 2/hour | 5 back-to-back, then 4/hour |
+| Reviews per hour | 3 back-to-back, then 3/hour (Summary only) | 4 back-to-back, then 4/hour | 3 back-to-back, then 3/hour | 5 back-to-back, then 5/hour |
| Chat | N/A | 25 back-to-back, then 50/hour | 10 back-to-back, then 25/hour | 25 back-to-back, then 50/hour |
## Integration Guide {#integration-guide}
@@ -254,6 +254,11 @@ A confirmation modal will appear explaining the consequences of account deletion
2. Delete CodeRabbit webhooks
3. Remove CodeRabbit user or delete associated Personal Access Token
+
+ 1. Go to Project Settings > Webhooks
+ 2. Delete CodeRabbit webhooks
+ 3. Remove CodeRabbit user or delete associated App Passwords
+
:::warning Post-Deletion Steps
diff --git a/docs/finishing-touches/docstrings.md b/docs/finishing-touches/docstrings.md
index 4de183b5..5d78366e 100644
--- a/docs/finishing-touches/docstrings.md
+++ b/docs/finishing-touches/docstrings.md
@@ -1,6 +1,5 @@
---
-title: Docstrings generation with CodeRabbit
-sidebar_label: Docstrings
+title: Generate docstrings
description: Automated docstrings pull requests with CodeRabbit
---
@@ -33,6 +32,20 @@ CodeRabbit cannot perform further modifications to opened pull requests. From th
This feature has been rigorously tested and is now available for all Pro plan users. Additionally, you can provide feedback about this feature on [Discord](https://discord.com/channels/1134356397673414807/1317286905557287022).
+## Path Instructions
+
+You can customize the generated docstrings by providing instructions based on file paths in your `.coderabbit.yaml`. The `path` is a [minimatch](https://github.com/isaacs/minimatch) pattern.
+
+```yaml
+code_generation:
+ docstrings:
+ path_instructions:
+ - path: "**/*.ts"
+ instructions: |
+ End all docstrings with a notice that says "Auto-generated by CodeRabbit.".
+ Do not omit the closing tags; the docstring must be valid.
+```
+
## Supported software forges
These software forges are supported:
diff --git a/docs/getting-started/adding-organizations.md b/docs/getting-started/adding-organizations.md
index 81fa8cf6..5f4b635b 100644
--- a/docs/getting-started/adding-organizations.md
+++ b/docs/getting-started/adding-organizations.md
@@ -1,8 +1,6 @@
---
-title: Adding Organizations
+title: Add organizations
description: Learn how to add new organizations to CodeRabbit
-sidebar_label: Adding Organizations
-sidebar_position: 5
---
To add new organizations to CodeRabbit, follow these steps:
diff --git a/docs/getting-started/configure-coderabbit.md b/docs/getting-started/configure-coderabbit.md
index 09bcb8b3..e8ee2e06 100644
--- a/docs/getting-started/configure-coderabbit.md
+++ b/docs/getting-started/configure-coderabbit.md
@@ -1,11 +1,9 @@
---
-title: Configure CodeRabbit
-sidebar_label: Configure
+title: Add a configuration file
description:
CodeRabbit offers various configuration options to tailor the reviews to your
specific requirements. Configuration can be made using one of the below
options.
-sidebar_position: 2
---
```mdx-code-block
diff --git a/docs/getting-started/quickstart.md b/docs/getting-started/quickstart.md
index 280732f0..17cc091c 100644
--- a/docs/getting-started/quickstart.md
+++ b/docs/getting-started/quickstart.md
@@ -1,55 +1,138 @@
---
-title: Playing with CodeRabbit
+title: Quickstart
sidebar_label: Quickstart
-description: Get started with CodeRabbit in less than 2 minutes
+description: See CodeRabbit in action, using a live GitHub repository.
sidebar_position: 1
---
-# Quickstart Guide
+# Quickstart
+
+This tutorial gives you a hands-on demonstration of CodeRabbit, using a real, GitHub-based repository. It guides you through the following tasks:
+
+1. Integrate CodeRabbit into a GitHub-based repository that you own.
+1. Observe CodeRabbit perform a code review of a pull request that you initiate.
+1. Converse with CodeRabbit about the code review.
+1. Prompt CodeRabbit to generate its own improvements to the pull request.
+
+When you complete this tutorial, you'll have seen CodeRabbit's code-review feature in action, and glimpsed a few of its other AI-driven abilities as well.
+
+For a more general overview of CodeRabbit, see [Introduction](/).
:::note
-Get started with CodeRabbit in three simple steps. No complex configuration needed.
+While this tutorial focuses on GitHub, CodeRabbit also works with GitLab, Azure DevOps, and Bitbucket. For more information, see [Integrate with Git platforms](/platforms/).
:::
-## Steps to Enable CodeRabbit
+## Before you begin
-### Sign In with GitHub
+Create a new, private repository on GitHub. Name the new repository `coderabbit-test`, and let it have otherwise default GitHub settings.
-- Visit [coderabbit.ai](https://coderabbit.ai)
-- Click "Sign in with GitHub"
-- Authorize CodeRabbit
+## Integrate CodeRabbit with your GitHub account
-
+To integrate CodeRabbit with your GitHub account, follow these steps:
-### Add Your Repository
+1. Visit [the CodeRabbit login page](https://app.coderabbit.ai/login).
+1. Click **Login with GitHub**.
+1. Click **Authorize coderabbitai**.
-- Go to your [Dashboard](https://app.coderabbit.ai/dashboard)
-- Click "Add Repositories"
-- Select the repositories you want to enable
+CodeRabbit takes a moment to set up the integration. After it finishes, the CodeRabbit dashboard appears.
-
+## Add CodeRabbit to your repository
-### You're Done ๐
+To add CodeRabbit to your test repository, follow these steps:
-- CodeRabbit will automatically start reviewing your Pull Requests
-- Default configuration works out of the box
-- No additional setup needed
+1. On the CodeRabbit dashboard, click **Add Repositories**. A GitHub repository-access dialog appears.
+1. Select the **Only select repositories** radio button.
+1. From the **Select repositories** menu, select the `coderabbit-test` repository that you created earlier in this Quickstart.
+1. Click **Install & Authorize**.
+ :::note
+ CodeRabbit requests read and write access to your repository in order for its code review, issue management, and pull request generation features to work. CodeRabbit never stores your code. For more information, see [the CodeRabbit Trust Center](https://trust.coderabbit.ai).
+ :::
+1. If a CodeRabbit **Complete your signup** dialog appears, then fill it out with the requested information before continuing.
-## What's Next?
+CodeRabbit is now ready to use with your test repository. The next steps demonstrate its core code-review features.
-- Watch CodeRabbit
-- Here's an example of CodeRabbit in action:
- 
-- [View live example PR](https://github.com/tyaga001/devtoolsacademy/pull/39)
-- [Configure CodeRabbit](/getting-started/configure-coderabbit) (optional)
-- [Add custom review instructions](/guides/review-instructions) (optional)
+## Let CodeRabbit perform a code review
-## Need Help?
+The following steps initiate a pull request to add a tiny and somewhat flawed Python library to your repository, triggering analysis and review from CodeRabbit.
-- Join our [Discord community](https://discord.gg/coderabbit) for support
-- Check out our [FAQ](/faq)
-- Contact [support@coderabbit.ai](mailto:support@coderabbit.ai)
+Use your usual Git workflow to perform the following steps in the `coderabbit-test` repository:
-:::tip
-CodeRabbit starts working immediately. You can customize its behavior later when needed.
-:::
+1. Create a branch named `add-utils`.
+
+1. In that new `add-utils` branch, create a new file called `simple_utils.py`, with the following content:
+
+ ```python
+ # simple_utils.py - A tiny utility library
+
+ def reverse_string(text):
+ """Reverses the characters in a string."""
+ return text[::-1]
+
+ def count_words(sentence):
+ return len(sentence.split())
+
+ def celsius_to_fahrenheit(celsius):
+ return (celsius * 9/5) + 32
+ ```
+
+1. Commit the added file to the `add-utils` branch. Use any text you want for the commit message.
+
+1. Create a pull request that proposes to merge the `add-utils` branch into the `main` branch. Use any text you want for the pull request message.
+
+After a few moments, CodeRabbit responds to the pull request using the `@coderabbitai` GitHub account. It performs the following actions, all of which are visible on the pull request's page on GitHub:
+
+- If you didn't write a pull request summary, then CodeRabbit adds a new summary to the pull request.
+- CodeRabbit posts a comment titled **Walkthrough** containing analysis and commentary about the content of the pull request.
+- CodeRabbit attaches a detailed code review to the pull request as another comment.
+
+Part of the review resembles the following screenshot:
+
+
+
+This shows that CodeRabbit has noticed some flaws with this Python library, including a lack of docstrings and input validation. The review comment identifies these flaws, and suggests how you might improve them.
+
+## Ask CodeRabbit for more information
+
+After CodeRabbit reviews a pull request, you can converse with it about its review. You can also give CodeRabbit special commands to request it to perform specific functions, such as generating appropriate code changes for you.
+
+1. Post the following as a new GitHub comment attached to the pull request:
+
+ ```text
+ @coderabbitai Why do all of these functions need docstrings? Isn't it obvious enough what they do?
+ ```
+
+ After a few moments, CodeRabbit posts its reply, explaining its motivations for its recommendation. The reply might resemble the following:
+
+ > You're right that these functions are quite self-explanatory from their names alone. Docstrings aren't strictly necessary for every function, especially in smaller projects with clear function names.
+ >
+ > While docstrings do provide benefits (IDE tooltips, documentation generation, help for future developers), they can sometimes feel redundant for very straightforward functions. It's ultimately a matter of coding style and project requirements.
+ >
+ > If you prefer to skip docstrings for obvious utility functions in this project, that's perfectly reasonable. Would you like me to adjust my review approach regarding documentation for this repository?
+
+ In this case, CodeRabbit is offering to adjust its future behavior when reviewing changes to this repository. Instead, follow the next step to ask CodeRabbit to implement part of its suggestions.
+
+1. Post the following as another new comment:
+
+ ```text
+ @coderabbitai generate docstrings
+ ```
+
+ After a few moments, CodeRabbit does the following:
+
+ - CodeRabbit creates a new branch, based on `add-utils`.
+ - CodeRabbit commits changes to the branch that adds suggested docstrings to `add-utils`.
+ - CodeRabbit opens a new pull request between the new branch and `add-utils`.
+
+## Clean up
+
+Continue experimenting with CodeRabbit in your test repository for as long as you like. When you're finished, you can delete the repository.
+
+You are now ready to add CodeRabbit to other repositories that you own, and let it review some real pull requests.
+
+## What's next
+
+- [Integrate CodeRabbit](/platforms/) with your repositories on GitHub, GitLab, Azure DevOps, or Bitbucket.
+- [Configure CodeRabbit](/getting-started/configure-coderabbit) beyond its default settings.
+- [Add custom review instructions](/guides/review-instructions).
+- [Get support for CodeRabbit](/getting-started/support).
+- [Learn more about how CodeRabbit works](/overview/why-coderabbit).
diff --git a/docs/getting-started/subscription-management.md b/docs/getting-started/subscription-management.md
index 31fb9ffe..4483ce78 100644
--- a/docs/getting-started/subscription-management.md
+++ b/docs/getting-started/subscription-management.md
@@ -1,8 +1,6 @@
---
-title: Subscription Management
+title: Manage your subscription
description: Learn how to manage your CodeRabbit subscription, including billing, plan changes, and seat management
-sidebar_label: Subscription Management
-sidebar_position: 7
---
This guide covers how to manage your subscription, including accessing billing information, changing plans, and adjusting your seat count.
diff --git a/docs/getting-started/support.md b/docs/getting-started/support.md
index 2014965c..9b1ef18b 100644
--- a/docs/getting-started/support.md
+++ b/docs/getting-started/support.md
@@ -1,8 +1,6 @@
---
-title: Support
-sidebar_label: Support
+title: Get support
description: Get help with CodeRabbit and find answers to common questions.
-sidebar_position: 3
---
Welcome to CodeRabbit Support. Please refer to the following sections for
diff --git a/docs/getting-started/upgrading-permissions.md b/docs/getting-started/upgrading-permissions.md
index 7980bd09..c5553abe 100644
--- a/docs/getting-started/upgrading-permissions.md
+++ b/docs/getting-started/upgrading-permissions.md
@@ -1,8 +1,6 @@
---
-title: Upgrading App Permissions
+title: Set permissions
description: Learn how to upgrade CodeRabbit's GitHub App permissions when new features are added
-sidebar_label: Upgrading Permissions
-sidebar_position: 6
---
Sometimes when we add new features to CodeRabbit, we need to request additional GitHub permissions. If you see a warning about permissions or resources not being accessible, you'll need to approve the new permissions. Here's how to do it:
diff --git a/docs/guides/about-vscode.md b/docs/guides/about-vscode.md
new file mode 100644
index 00000000..3e484ffe
--- /dev/null
+++ b/docs/guides/about-vscode.md
@@ -0,0 +1,37 @@
+---
+title: Review local changes
+description: How to review your code with the VSCode extension.
+slug: /code-editors
+sidebar_label: Overview
+---
+
+This page is about the CodeRabbit VSCode extension. For a broader overview of CodeRabbit, see [Introduction](/).
+
+## About the VSCode extension
+
+The CodeRabbit VSCode extension lets you apply a limited subset of CodeRabbitโs code-review features to your local development environment, directly from the VSCode IDE. It also works with other text editors that are able to install and use VSCode extensions, such as Cursor and Windsurf.
+
+You can use the extension on its own, or you can use it to complement your local development on a repository whose remote has CodeRabbit installed.
+
+The extension is intended to let you use the power of CodeRabbit to rapidly tune and tidy your code changes locally, before you publish your changes to your team's remote repository and start a more thorough code review.
+
+## Features
+
+The extension includes the following features:
+
+- Automatic code reviews on every local Git commit.
+- Manually requested reviews of local code changes.
+- One-click application of simpler suggested code fixes.
+- Integration with AI coding agents, including Copilot and Claude Code, to help you resolve more complex suggestions.
+- Full compatibility with text editors derived from VSCode, including Cursor and Windsurf.
+
+## Price and limitations
+
+This extension is free to install and use, and works with any tier of CodeRabbit account. Rate limits apply to the number of local reviews that you can request per hour.
+
+The extension makes only basic CodeRabbit review features available, with default settings applied. Advanced CodeRabbit features, such as interactive chat and project learnings, aren't available through the VSCode extension. These features are available only by [integrating CodeRabbit on your remote repository](/platforms), and then allowing CodeRabbit to review pull requests.
+
+## What's next
+
+- [Install the VSCode extension](/guides/install-vscode)
+- [Use the VSCode extension](/guides/use-vscode)
diff --git a/docs/guides/agent_chat.md b/docs/guides/agent_chat.md
index afc5484f..4073951a 100644
--- a/docs/guides/agent_chat.md
+++ b/docs/guides/agent_chat.md
@@ -1,11 +1,9 @@
---
-title: Agentic Chat
-sidebar_label: Agentic Chat
-description: Learn about CodeRabbit Pro's agentic chat system
-sidebar_position: 8
+title: Discuss code reviews with CodeRabbit
+description: Learn about CodeRabbit Pro's chat and agentic chat system
---
-# Agentic Chat
+# CodeRabbit Chat
```mdx-code-block
import ProPlanNotice from '@site/src/components/ProPlanNotice.mdx';
@@ -29,12 +27,20 @@ Upon being invoked, CodeRabbit processes your request and responds with the nece
CodeRabbit Chat can automatically generate scripts in various programming languages (mainly shell scripting) to answer questions about your codebase. If incorrect or non-running or non-germane shell scripts are created, CodeRabbit goes and tries again, and the whole script iteration process will be displayed to you in an Analysis Flow.
+All scripts are run in a secure sandboxed execution environment.
+
### Web Search
CodeRabbit Chat integrates real-time web search capabilities, enabling it to fetch up-to-date information to support its responses. The CodeRabbit Chat response will indicate this if it decides to search the web to answer your query.
Set `enabled` to false within `web_search` within `knowledge_base` within the config in order to turn this off.
+### Code Graph Analysis Integration
+
+CodeRabbit Chat is capable of analyzing definitions of code symbols from the symbol graph it generates from your codebase. CodeRabbit can use these code definitions to enhance context when providing a chat response and review comments. CodeRabbit Chat will indicate in its response if it has found relevant symbols and snippets surrounding those symbols in your codebase.
+
+Set the environment variable `ENABLE_CODE_GRAPH` to false in self-hosted CodeRabbit instances to turn this feature off in self-hosted instances.
+
### Jira and Linear Integration
CodeRabbit Chat can deal with existing issue tracking system integrations in order to integrate with your existing issues. For details on setting up issue tracking integrations, see our [Issue Integrations](../integrations/issue-integrations.md) guide and [Issue Creation](./issue-creation.md) guide.
@@ -47,17 +53,19 @@ CodeRabbit Chat can insert and delete Learnings from your Learnings database. Si
For rapid prototyping and quick fixes, CodeRabbit Chat is capable of generating code snippets in a single step.
-### Multi-Step Agentic Flow with Planning
+### Configuration Changes
-When facing complex coding challenges, CodeRabbit Chat supports multi-step agentic flows that involve detailed planning and execution. Once the multi-step workflow is complete, CodeRabbit can automatically issue a pull request for the changes so you can consent to the code changes or edit them.
+CodeRabbit is also capable of managing its own configuration settings upon request. This self-management allows the assistant to dynamically adapt to changing project requirements. By simplifying configuration updates, CodeRabbit helps users quickly adjust to new workflows or requirements without interrupting the development process.
-CodeRabbit cannot perform further modifications to opened pull requests. From there, it's your turn to checkout the branch and improve it to satisfaction. We believe that this workflow provides a significant headstart to implementing code.
+## Agentic Chat (Chat with Planning)
-Multi-step agentic flows are currently only available on Github. Multi-step agentic flows are an early access product currently.
+When facing complex coding challenges, CodeRabbit Agentic Chat supports multi-step agentic flows that involve detailed planning and execution. Once the multi-step workflow is complete, CodeRabbit can automatically issue a pull request for the changes so you can consent to the code changes or edit them. CodeRabbit can also place changes in the existing pull request branch or create copyable snippets.
-### Configuration Changes
+Agent chat can be invoked explicitly with the `@coderabbitai plan` command.
-CodeRabbit is also capable of managing its own configuration settings upon request. This self-management allows the assistant to dynamically adapt to changing project requirements. By simplifying configuration updates, CodeRabbit helps users quickly adjust to new workflows or requirements without interrupting the development process.
+CodeRabbit cannot perform further modifications to opened pull requests. From there, it's your turn to checkout the branch and improve it to satisfaction. We believe that this workflow provides a significant headstart to implementing code.
+
+Agentic Chat is currently only available on Github issue, pull request and pull request review comments.
### Help and Feedback
diff --git a/docs/guides/code-review-best-practices.md b/docs/guides/code-review-best-practices.md
new file mode 100644
index 00000000..83bd8abb
--- /dev/null
+++ b/docs/guides/code-review-best-practices.md
@@ -0,0 +1,42 @@
+---
+title: Code review best practices
+description: Best practices for managing CodeRabbit code reviews.
+sidebar_label: Best practices
+---
+
+This page lists best practices for performing code reviews with CodeRabbit.
+
+For more information about working with
+CodeRabbit through chat, see [Control and manage code reviews](/guides/commands).
+
+For a CodeRabbit command reference, see [Code review command reference](/reference/review-commands).
+
+## Recommended code-review workflow
+
+- Start with `@coderabbitai review` for checking new changes.
+- Use `@coderabbitai full review` when major changes require a fresh perspective.
+- Generate summaries after significant updates using `@coderabbitai summary`.
+
+## Managing large changes
+
+- Use `@coderabbitai pause` before making multiple commits.
+- Resume reviews with `@coderabbitai resume` when ready.
+- Consider `@coderabbitai full review` after substantial changes.
+
+## Documentation flow
+
+- Run `@coderabbitai generate docstrings` after finalizing function implementations.
+- Learn more about [docstring generation](/finishing-touches/docstrings).
+
+## Overall tips
+
+- Commands are case-insensitive (`@coderabbitai REVIEW` works the same as `@coderabbitai review`).
+- Commands can be issued by anyone with write access to the repository.
+- Multiple commands can be used in sequence as needed.
+- Use `@coderabbitai configuration` to export your settings before making changes.
+
+## Command response time
+
+- Most commands (pause, resume, ignore) take effect immediately.
+- Review commands typically complete within a few minutes, depending on PR size.
+- Docstring generation time varies based on the number of functions.
diff --git a/docs/guides/code-review-overview.md b/docs/guides/code-review-overview.md
new file mode 100644
index 00000000..cd511c76
--- /dev/null
+++ b/docs/guides/code-review-overview.md
@@ -0,0 +1,89 @@
+---
+title: Review pull requests
+description: An overview of CodeRabbit's core code review features.
+sidebar_label: Overview
+---
+
+The central feature of CodeRabbit is its ability to proactively review
+new pull requests on your code repository.
+
+CodeRabbit reviews take the form of pull request comments that
+include summaries, analyses, and initial critiques of the proposed changes.
+This information, usually added to pull requests within minutes, can help your team perform more rapid, better-informed code reviews.
+
+The following sections present an overview of this feature. For a hands-on example that lets you experience a CodeRabbit code review using
+a real repository, see [Quickstart](/getting-started/quickstart).
+
+## Automatically review pull requests {#review}
+
+After you [integrate CodeRabbit with your repository](/platforms), CodeRabbit proceeds
+to automatically review every subsequent pull request, as soon as each one is created.
+
+CodeRabbit performs code reviews by attaching comments to the pull request.
+These comments contain detailed summaries and analyses of the changes,
+as well as listing out problems or areas for potential improvement that it found.
+
+CodeRabbit uses [a variety of open-source linters and security tools](/tools) and a custom
+code verification agent to provide this analysis. CodeRabbit
+also consults several models to further analyze and critique the proposed changes,
+using all of the content of your repository as context. The code-review comment that CodeRabbit attaches
+to your pull request synthesizes and summarizes all of the information collected from these different sources.
+
+For more information about the graph analysis that CodeRabbit includes with its reviews
+when available, see [CodeRabbit Code Graph Analysis](/integrations/code-graph-analysis).
+
+### Events that trigger automated reviews {#events}
+
+By default, the following activity in your repository triggers CodeRabbit to
+perform a code review:
+
+- If CodeRabbit sees a new pull request, then it immediately performs a full review
+ of the proposed code changes.
+- If an open pull request that CodeRabbit has already reviewed gets modified with another
+ commit, then CodeRabbit performs an incremental review that focuses on the new commit.
+
+## Interact with CodeRabbit reviews {#interact}
+
+After CodeRabbit attaches its initial code-review comment to a pull request, you can
+directly interact with CodeRabbit by mentioning its username, `@coderabbitai`, in comments
+that you post to the pull request.
+
+These interactions can serve several purposes:
+
+- Free-form discussion about the pull request and the ongoing code review.
+- Commands to have CodeRabbit perform specific actions regarding the code review.
+- Prompts to have CodeRabbit generate its own improvements to the branch under review.
+
+### Chat with CodeRabbit {#chat}
+
+You can have open-ended, natural-language discussion with CodeRabbit during a code review, treating it
+as an LLM-powered chatbot that has your entire code repository available for context. For more information, see [CodeRabbit Chat](/guides/agent_chat).
+
+### Manage CodeRabbit review behavior {#manage}
+
+CodeRabbit recognizes a variety of keyword-based commands that let you control its
+behavior during a code review, including the following:
+
+- Pause or resume automated reviews of the pull request.
+- Manually request a review, when automated reviews are paused.
+- Resolve all open comments authored by CodeRabbit.
+
+For more information, see [Control and manage code reviews](/guides/commands).
+
+### Generate improvements {#generate}
+
+You can command CodeRabbit to generate improvements to the branch under review.
+CodeRabbit accomplishes this by publishing a new branch based on the branch under review,
+and creating a new pull request for your own review.
+
+Available code-generation commands let you request the following from CodeRabbit:
+
+- Implement the suggestions for improvements that CodeRabbit has made in its earlier code review comments.
+- Generate inline documentation for any undocumented functions that this pull request proposes to add.
+
+For more information, see [Generate improvements](/guides/generate-improvements).
+
+## What's next {#whats-next}
+
+- [Control and manage code reviews](/guides/commands)
+- [Generate code improvements](/guides/generate-improvements)
diff --git a/docs/guides/code-review-troubleshooting.md b/docs/guides/code-review-troubleshooting.md
new file mode 100644
index 00000000..72539453
--- /dev/null
+++ b/docs/guides/code-review-troubleshooting.md
@@ -0,0 +1,17 @@
+---
+title: Code review troubleshooting
+description: Troubleshooting CodeRabbit code reviews.
+sidebar_label: Troubleshooting
+---
+
+This page is about troubleshooting interactive code review sessions with CodeRabbit. For more information about working with
+CodeRabbit through chat, see [Control and manage code reviews](/guides/commands).
+
+If a CodeRabbit command doesn't seem to work:
+
+1. Check that you have the necessary repository permissions.
+2. Verify the command syntax.
+3. Look for any response from CodeRabbit in the PR comments.
+4. Use `@coderabbitai help` for command guidance.
+
+Need help? Join our community on [Discord](https://discord.gg/coderabbit) or [contact our support team](/getting-started/support).
diff --git a/docs/guides/commands.md b/docs/guides/commands.md
index bcbfb9ce..43e6283a 100644
--- a/docs/guides/commands.md
+++ b/docs/guides/commands.md
@@ -1,83 +1,154 @@
-# CodeRabbit Commands
+---
+title: Control and manage code reviews
+description: Learn how to control CodeRabbit using commands in pull request comments
+---
-> Control your code reviews directly from pull request comments using CodeRabbit's command system. Each command starts with `@coderabbitai` followed by the specific action you want to take.
+This page is about issuing direct commands to CodeRabbit during code reviews.
+For a general overview of performing code reviews with CodeRabbit, see [Review pull requests](/guides/code-review-overview).
-## Review Control Commands
+You can control CodeRabbit's behavior with a specific pull request by mentioning the
+username of its bot, `@coderabbitai`, alongside keywords in comments or the pull
+request description, as specified by the next sections of this page.
-### Managing Reviews
+For a complete CodeRabbit command reference, see [Code review command reference](/reference/review-commands).
-| Command | Description | Use Case |
-| --------------------------- | ---------------------------------------------------- | ---------------------------------------------------------------------------- |
-| `@coderabbitai review` | Triggers an incremental review of new changes | When automatic reviews are disabled or you want to manually trigger a review |
-| `@coderabbitai full review` | Performs a complete review of all files from scratch | When you want to get fresh insights on the entire PR |
-| `@coderabbitai summary` | Regenerates the PR summary | When you want an updated overview after making changes |
+## Control automatic code reviews {#flow}
-### Review Flow Control
+By default, CodeRabbit automatically reviews every new pull request created in
+your repository. It updates its review with comments whenever the pull request has new commits
+pushed to it.
-| Command | Description | Use Case |
-| ---------------------- | ---------------------------------------- | --------------------------------------------------- |
-| `@coderabbitai pause` | Temporarily stops reviews on the PR | When you're making multiple rapid changes |
-| `@coderabbitai resume` | Restarts reviews after a pause | When you're ready for CodeRabbit to review again |
-| `@coderabbitai ignore` | Permanently disables reviews for this PR | When you want to handle the review process manually |
+The following sections show you how to tell CodeRabbit to modify this behavior with
+a specific pull request, such as pausing reviews, or resolving open comments.
-### Comment Management
+For more information about permanently configuring the behavior of CodeRabbit on
+your repository, see [Add a configuration file](/getting-started/configure-coderabbit).
-| Command | Description | Use Case |
-| ----------------------- | --------------------------------------- | ------------------------------------------------------- |
-| `@coderabbitai resolve` | Resolves all CodeRabbit review comments | When you've addressed all feedback and want to clean up |
+### Pause and resume automatic code reviews {#pause-resume}
-### Documentation Commands
+You can tell CodeRabbit to pause its automatic reviews of a pull request. If
+you do, then you can still manually request CodeRabbit to review changes using
+the commands listed on [Code review command reference](/reference/review-commands).
-| Command | Description | Use Case |
-| ----------------------------------- | -------------------------------------------- | --------------------------------------------------- |
-| `@coderabbitai generate docstrings` | Generates docstrings for functions in the PR | When you need automatic documentation for your code |
-| `@coderabbitai configuration` | Shows current CodeRabbit settings | When you need to check or export your configuration |
+To pause automated reviews of a pull request, post the following comment to the
+pull request:
-### Help & Support
+```text
+@coderabbitai pause
+```
-| Command | Description | Use Case |
-| -------------------- | ------------------------------------------ | ------------------------------------------ |
-| `@coderabbitai help` | Displays available commands and usage info | When you need guidance on using CodeRabbit |
+To resume automated reviews after pausing them, post the following comment to the
+pull request:
-## Best Practices
+```text
+@coderabbitai resume
+```
-### Review Workflow
+### Disable automatic code reviews {#ignore}
-- Start with `@coderabbitai review` for checking new changes
-- Use `@coderabbitai full review` when major changes require a fresh perspective
-- Generate summaries after significant updates using `@coderabbitai summary`
+To disable automatic code reviews for a pull request, add the following line
+anywhere in the pull request description:
-### Managing Large Changes
+```text
+@coderabbitai ignore
+```
-- Use `@coderabbitai pause` before making multiple commits
-- Resume reviews with `@coderabbitai resume` when ready
-- Consider `@coderabbitai full review` after substantial changes
+As long as that text remains in the description, CodeRabbit will not
+automatically review any commits associated with that pull request.
+You can still [chat with CodeRabbit](/guides/agent_chat) and issue other commands in the pull
+request comments.
-### Documentation Flow
+To enable automatic reviews on that pull request, delete "`@coderabbitai ignore`"
+from the pull request description. CodeRabbit commences automatic reviews starting with
+the next commit made to the branch under review.
-- Run `@coderabbitai generate docstrings` after finalizing function implementations
-- Learn more about [docstring generation](/finishing-touches/docstrings)
+## Manually request code reviews {#request}
-## Tips
+You can ask CodeRabbit to perform a code review at any time. This can be useful
+when you have paused automated code reviews. Manually requested reviews have
+two types:
-- Commands are case-insensitive (`@coderabbitai REVIEW` works the same as `@coderabbitai review`)
-- Commands can be issued by anyone with write access to the repository
-- Multiple commands can be used in sequence as needed
-- Use `@coderabbitai configuration` to export your settings before making changes
+- A _full review_ disregards any comments that CodeRabbit has already made
+ on this pull request, and generates a complete review of the entire pull request.
-## Command Response Time
+- An _incremental review_ takes all comments that CodeRabbit has made since its most recent full review into consideration, and generates a review of only the new changes.
-- Most commands (pause, resume, ignore) take effect immediately
-- Review commands typically complete within a few minutes, depending on PR size
-- Docstring generation time varies based on the number of functions
+To manually request a full review, post the following comment to the
+pull request:
-## Troubleshooting
+```text
+@coderabbitai full review
+```
-If a command doesn't seem to work:
+To manually request an incremental review, post the following comment to the
+pull request:
-1. Check that you have the necessary repository permissions
-2. Verify the command syntax
-3. Look for any response from CodeRabbit in the PR comments
-4. Use `@coderabbitai help` for command guidance
+```text
+@coderabbitai review
+```
-Need help? Join our community on [Discord](https://discord.gg/coderabbit) or contact our support team.
+## Resolve comments {#resolve}
+
+To have CodeRabbit mark all of its previous comments as resolved, post the following comment to the
+pull request:
+
+```text
+@coderabbitai resolve
+```
+
+## Update information about the pull request {#update}
+
+The commands in this section request CodeRabbit to generate and post updated information
+about the pull request itself.
+
+### Update the summary text {#summary}
+
+To have CodeRabbit update the generated summary of the branchโs proposed changes
+to the pull requestโs description, post the following comment:
+
+```text
+@coderabbitai summary
+```
+
+CodeRabbit updates the summary text to the description under the heading
+"Summary by CodeRabbit".
+
+### Diagram the pull request history {#diagram}
+
+To have CodeRabbit post a comment that contains a sequence diagram which visualizes the
+history of the pull request under review, post the following comment:
+
+```text
+@coderabbitai generate sequence diagram
+```
+
+## Get information about CodeRabbit {#info}
+
+The commands in this section request CodeRabbit to display its own configuration
+or documentation.
+
+### Display current configuration {#config}
+
+To have CodeRabbit post a comment listing out its current configuration
+with your repository, post the following comment to the
+pull request:
+
+```text
+@coderabbitai configuration
+```
+
+### Display a quick-reference guide {#help}
+
+To have CodeRabbit post a comment to the pull request with a quick-reference
+guide to its own commands and other features, post the following comment to the
+pull request:
+
+```text
+@coderabbitai help
+```
+
+## What's next {#whats-next}
+
+- [Generate code improvements](/guides/generate-improvements)
+- [Best practices](/guides/code-review-best-practices)
+- [Troubleshooting](/guides/code-review-troubleshooting)
diff --git a/docs/guides/config-vscode.md b/docs/guides/config-vscode.md
new file mode 100644
index 00000000..7a1fb8bd
--- /dev/null
+++ b/docs/guides/config-vscode.md
@@ -0,0 +1,61 @@
+---
+title: Configure the VSCode extension
+description: How to configure the CodeRabbit VSCode extension
+---
+
+This page is about configuring the CodeRabbit VSCode extension. For more information about the extension, see
+[Review local changes](/code-editors).
+
+:::note
+The instructions on this page are specific to using the extension with VSCode. If you are instead using a VSCode-compatible editor such as Cursor or Windsurf, then the steps that you need to follow are similar, but might require some adaptation.
+:::
+
+## Find the settings screen {#find}
+
+To navigate to the settings screen for the CodeRabbit VSCode extension, follow these steps:
+
+1. In the activity bar, click the Extensions icon.
+
+1. In the sidebar, under **Installed**, click the gear-shaped **Manage** icon in the CodeRabbit row.
+
+1. In the menu that appears, select **Settings**.
+
+The settings screen contains the following configuration controls.
+
+## Configure AI agent integration {#agent}
+
+The **Agent Type** setting lets you choose the extension's response to using the **Fix with AI** feature during code reviews. Your options are the following:
+
+- **Native**: The extension prompts the AI agent associated with your IDE to apply the suggested fix.
+
+ This works only with VSCode, using Copilot. If you have this option selected when using a different IDE, then the extension instead copies the prompt to your clipboard.
+
+- **Claude Code**: The extension opens the Terminal pane of your IDE and tries to use the `claude` command-line program to apply the suggested fix to your code. You need to have Claude Code installed for this option to be effective.
+
+- **Clipboard**: The extension copies prompt text describing the suggested fix to your clipboard. From there, you can manually paste the prompt into the coding AI agent that you use with your IDE.
+
+For more information about the **Fix with AI** feature, see [Request help from your AI coding agent](/guides/use-vscode#agent).
+
+## Configure automatic review behavior {#auto-reviews}
+
+The **Auto Review Mode** setting lets you control the behavior of the automatic code reviews that the extension can perform after you make commits to your local Git repository. Your options are the following:
+
+- **Disabled**: The extension doesn't perform automatic code reviews.
+
+- **Prompt**: After every commit, the extension displays a dialog asking if you'd like it to perform a code review.
+
+- **Auto**: The extension always performs a review after every commit.
+
+For more information about this feature, see [Automatically review local commits](/guides/use-vscode#auto-reviews).
+
+## Set a review timeout {#timeout}
+
+The **Review Timeout** setting lets you specify how long the extension waits for a response from CodeRabbit remote servers before timing out a code review. The default value is `20`.
+
+To turn off timeouts, set this value to `0`.
+
+## What's next {#whats-next}
+
+- [Use the VSCode extension](/guides/use-vscode)
+
+- [Uninstall the VSCode extension](/guides/uninstall-vscode)
diff --git a/docs/guides/custom-reports.md b/docs/guides/custom-reports.md
index c027fa1d..dbc04280 100644
--- a/docs/guides/custom-reports.md
+++ b/docs/guides/custom-reports.md
@@ -1,8 +1,6 @@
---
-title: Custom Reports
-sidebar_label: Custom Reports
+title: Customize reports
description: Learn how to create custom reports with CodeRabbit Pro's flexible reporting system
-sidebar_position: 7
---
```mdx-code-block
@@ -78,6 +76,11 @@ Contained within the `` tag.
- `State`: string ("open"/"closed") - Current state of the PR
- `Mergeable`: boolean (true/false) - Whether the PR can be merged
- `Is stale`: boolean - Whether PR has been inactive for over 168 hours
+- `PR Stage`: string - The current stage of open PRs in Open or Draft state, can be one of:
+ - "Needs Author Action" - PR requires author attention due to merge conflicts, draft status, or requested changes
+ - "Waiting for Author to Merge" - PR has approvals and is ready for author to merge
+ - "Waiting for Code Reviews" - PR is waiting for reviewers to approve
+ - undefined - PR is not in an open state (is merged or closed)
#### Basic Information
@@ -126,60 +129,65 @@ Generate a summary of each pull request in the following bullet point format:
- If 'Merged: true' set 'PR State: ๐ Merged'
- Else If 'Draft: true' set 'PR State: ๐ Draft'
- Else If 'State: open' or 'State: active' set 'PR State: ๐ฌ Open'
- - Else If 'State: closed' and 'Merged: false' set 'PR State: ๐ Closed'
+ - Else If 'State: closed' or 'State: DECLINED' and 'Merged: false' set 'PR State: ๐ Closed'
- Else set 'PR State: โ Unknown'
- If the PR is stale, add 'โ ๏ธ Stale' at the end of the PR State.
-- Mergeable (if PR State if not 'Merged'): Provide the mergeable status of the PR as 'Mergeable' or 'Not Mergeable'.
+- Mergeable (if PR State is not 'Merged'): Provide the mergeable status of the PR as 'Mergeable' or 'Not Mergeable' based on the "Mergeable: " value.
+- PR Stage (if PR State is not 'Merged'): Provide the stage of the PR based on the "PR Stage: " value.
- Summary: In under 50 words provide a short summary of the PR.
- Comments: In under 50 words provide a short summary of all comments found within , including each comments author username from . If there are no comments available, output 'No comments'.
- **PR Link:** [#3001](https://github.com/mygithuborg/myrepo/pull/3001)
-- **Title:** [PR Title]
+- **Title:** PR Title
- **PR State:** ๐ฌ Open
- **Mergeable:** Mergeable
-- **Summary:** [Summary of the PR].
-- **Comments:** [Summary of the PR comments].
+- **PR Stage:** Waiting for Code Reviews
+- **Summary:** Summary of the PR.
+- **Comments:** Summary of the PR comments or No comments.
- **PR Link:** [#302](https://github.com/mygithuborg/thatrepo/pull/302)
-- **Title:** [PR Title]
+- **Title:** PR Title
- **PR State:** ๐ฌ Open
- **Mergeable:** Mergeable
-- **Summary:** [Summary of the PR].
-- **Comments:** [Summary of the PR comments].
+- **PR Stage:** Waiting for Author to Merge
+- **Summary:** Summary of the PR.
+- **Comments:** Summary of the PR comments or No comments.
- **PR Link:** [#3](https://github.com/mygithuborg/myotherrepo/pull/3)
-- **Title:** [PR Title]
+- **Title:** PR Title
- **PR State:** ๐ Merged
-- **Summary:** [Summary of the PR].
-- **Comments:** [Summary of the PR comments].
+- **Summary:** Summary of the PR.
+- **Comments:** Summary of the PR comments or No comments.
- **PR Link:** [#14](https://github.com/mygithuborg/frontend/pull/14)
-- **Title:** [PR Title]
+- **Title:** PR Title
- **PR State:** ๐ฌ Open
- **Mergeable:** Mergeable
-- **Summary:** [Summary of the PR].
-- **Comments:** [Summary of the PR comments].
+- **PR Stage:** Needs Author Action
+- **Summary:** Summary of the PR.
+- **Comments:** Summary of the PR comments or No comments.
- **PR Link:** [#13005](https://github.com/mygithuborg/backend/pull/13005)
-- **Title:** [PR Title]
+- **Title:** PR Title
- **PR State:** ๐ Merged
-- **Summary:** [Summary of the PR].
-- **Comments:** [Summary of the PR comments].
+- **Summary:** Summary of the PR.
+- **Comments:** Summary of the PR comments or No comments.
- **PR Link:** [#3006](https://github.com/mygithuborg/myrepo/pull/3006)
-- **Title:** [PR Title]
+- **Title:** PR Title
- **PR State:** ๐ Merged
-- **Summary:** [Summary of the PR].
-- **Comments:** [Summary of the PR comments].
+- **Summary:** Summary of the PR.
+- **Comments:** Summary of the PR comments or No comments.
- **PR Link:** [#3007](https://github.com/mygithuborg/myrepo/pull/3007)
-- **Title:** [PR Title]
+- **Title:** PR Title
- **PR State:** ๐ Draft
- **Mergeable:** Not Mergeable
-- **Summary:** [Summary of the PR].
-- **Comments:** [Summary of the PR comments].
+- **PR Stage:** Needs Author Action
+- **Summary:** Summary of the PR.
+- **Comments:** Summary of the PR comments or No comments.
```
@@ -252,17 +260,38 @@ Within each group, sort by:
- Impact level
```
-### Time-Based Analysis
+### Optional Data Sources
-Add temporal analysis to your reports:
+You can also include optional data sources in your custom reports. By default, CodeRabbit will not include the following data sources. In a custom report you will see the option to include these data sources by clicking the `Select Optional Data Sources` button. This adds special XML tags to your prompt that allow you to include this data in your report.
-```text
-Provide:
-- Week-over-week comparison
-- Trend analysis for the past month
-- Velocity metrics
-- Time to merge statistics
-```
+#### Bot Comments
+
+Bot comments are comments made by bots and Coderabbit AI on a PR. To enable bot comments you must include the tag `` in your prompt.
+
+These are very similar in structure to regular user comments but with a few key differences:
+
+- ``: array of comment objects - Contains all the comments made on the PR.
+- ``: object - Each individual comment is wrapped in this tag and is an object with the following properties:
+ - ``: string - The username of the comment author.
+ - ``: datetime - The date and time the comment was created.
+ - ``: datetime - The date and time the comment was last updated.
+ - ``: markdown - The content of the comment.
+
+#### Issues and Tickets
+
+Issues and tickets brings in conversations, descriptions, and comments from Jira and Linear as part of your report if the ticket is linked in your PR description. To enable issues and tickets you must include the tag `` in your prompt.
+
+- ``: array of issue objects - Contains all the linked issues and tickets.
+- ``: object - Each individual issue is wrapped in this tag and is an object with the following properties:
+ - ``: string - The title or thread ID of the issue.
+ - ``: string - The URL to the issue.
+ - ``: string - The unique identifier of the issue.
+ - ``: string - The username of who created the issue.
+ - ``: datetime - The date and time the issue was created.
+ - ``: datetime - The date and time the issue was last updated.
+ - ``: markdown - The content/description of the issue. This contains the following sections:
+ - ``: markdown - The description of the issue.
+ - ``: array of comment objects - Contains all the comments made on the issue.
## Best Practices
diff --git a/docs/guides/generate-improvements.md b/docs/guides/generate-improvements.md
new file mode 100644
index 00000000..d194a7dd
--- /dev/null
+++ b/docs/guides/generate-improvements.md
@@ -0,0 +1,102 @@
+---
+title: Generate improvements
+description: Request coderabbit to generate its own code improvements during code reviews
+---
+
+```mdx-code-block
+import ProPlanNotice from '@site/src/components/ProPlanNotice.mdx';
+
+
+```
+
+This page is about using CodeRabbit to generate improvements to code under review.
+
+For a general overview of performing code reviews with CodeRabbit, see [Review pull requests](/guides/code-review-overview).
+
+## Overview of CodeRabbit code generation {#overview}
+
+:::note
+This feature is available only on GitHub.
+:::
+
+You can request CodeRabbit to generate improvements to a branch that it is currently reviewing.
+
+To do this, write out your request prompt in a comment addressed to `@coderabbitai`,
+such as with the following examples:
+
+- `@coderabbitai Please implement the changes you suggested in your code review.`
+- `@coderabbitai Add input validation with proper error messages to these new functions.`
+- `@coderabbitai Break this large function into smaller, more focused methods.`
+
+In addition to this kind of free-form request, you can also give CodeRabbit keyword-based
+commands for common code-generation requests, as described in [Code generation commands](#commands).
+This includes the `plan` keyword, which acts as shorthand for the first prompt on the
+previous list.
+
+After you give it a code-generation prompt or command, CodeRabbit delivers its suggested improvements by taking these steps:
+
+1. CodeRabbit posts a comment or two to the pull request, detailing its improvement plans.
+1. CodeRabbit publishes a new branch, based on the open pull request's branch, to the remote repository.
+1. CodeRabbit opens a new pull request based on this new branch, and links to it from the original pull request.
+
+CodeRabbit doesn't make any further changes to the new branch or to the new pull request
+after it creates them. From that point on, it's fully up to you what to do with the new, suggested-change branch.
+
+The best practice is to effectively take ownership of the new branch for yourself,
+deciding whether it's worth merging into the original pull request branch, and making
+any further updates you'd like to make first. You can use comments in the new branch
+to ask CodeRabbit to explain its changes, if needed, or to otherwise converse with
+CodeRabbit about the suggested improvements.
+
+Because it's just an ordinary Git branch, the presence of the suggested-change branch
+doesn't block the ongoing code review in the original pull request branch. You are
+free to merge, defer, or close the suggested-change pull request that CodeRabbit made, using any method or timing that fits
+your workflow.
+
+## Code generation commands {#commands}
+
+This section lists short commands that you can give CodeRabbit to have it accomplish
+common code-generation tasks. For more complex tasks, you can instead write out full
+prompts, as described in the previous section.
+
+For a complete CodeRabbit command reference, see [Code review command reference](/reference/review-commands).
+
+### Generate inline documentation {#docstrings}
+
+To have CodeRabbit generate missing documentation for function code added by
+the pull request, post the following comment to the
+pull request:
+
+```text
+@coderabbitai generate docstrings
+```
+
+For more information about how CodeRabbit can generate inline documentation, including
+the Git platforms and programming languages that this feature supports, see
+[Docstrings](/finishing-touches/docstrings).
+
+### Generate solutions to open review comments {#plan}
+
+To have CodeRabbit generate and add a new repository branch with code improvements
+that try to address its own code review comments, post the following comment to the
+pull request:
+
+```text
+@coderabbitai plan
+```
+
+Using this keyword is essentially shorthand for writing out a prompt like the following:
+
+```text
+@coderabbitai Implement the changes that you suggested and apply them to this pull request.
+```
+
+If you want to give CodeRabbit more specific implement instructions other than a general
+request to implement its own suggestions, then you can write out those instructions
+as a full prompt, instead of using the one-word `plan` command.
+
+## What's next {#whats-next}
+
+- [Control and manage code reviews](/guides/commands)
+- [Best practices](/guides/code-review-best-practices)
+- [Troubleshooting](/guides/code-review-troubleshooting)
diff --git a/docs/guides/install-vscode.md b/docs/guides/install-vscode.md
new file mode 100644
index 00000000..ec71e213
--- /dev/null
+++ b/docs/guides/install-vscode.md
@@ -0,0 +1,55 @@
+---
+title: Install the VSCode extension
+description: How to install the CodeRabbit VSCode extension
+---
+
+This page is about installing the CodeRabbit VSCode extension. For more information about the extension, see
+[Review local changes](/code-editors).
+
+:::note
+The instructions on this page are specific to using the extension with VSCode. If you are instead using a VSCode-compatible editor such as Cursor or Windsurf, then the steps that you need to follow are similar, but might require some adaptation.
+:::
+
+## Before you begin
+
+Before you can use the CodeRabbit VSCode extension, you need a CodeRabbit account.
+
+If you don't already have an account, you can create one by visiting [the CodeRabbit login page](https://app.coderabbit.ai/login).
+
+## Install the extension
+
+To install the CodeRabbit extension, follow these steps:
+
+1. In the editor activity bar, click **Extensions**.
+
+1. In sidebar, type `coderabbit` into the **Search Extensions in Marketplace** search bar. After a moment, **CodeRabbit** appears in the sidebar as a search result.
+
+1. Select **CodeRabbit**. A summary of the CodeRabbit VSCode extension appears in the window's main pane, along with installation controls.
+
+1. If you would like your editor to automatically check for and apply future updates to the extension, then keep the **Auto Update** checkbox selected. Otherwise, clear the checkbox.
+
+1. Click **Install**.
+
+1. A **Log in to CodeRabbit to get started** dialog appears. Click **Login**. If the dialog gets dismissed or times out first, then you can follow these alternate steps:
+
+ 1. Click the CodeRabbit icon in the VSCode activity bar.
+
+ 1. Click the **Use CodeRabbit for Free** button.
+
+1. Grant VSCode permission to open your browser, if asked.
+
+1. In your web browser, log into your CodeRabbit account.
+
+This connects your CodeRabbit account with the CodeRabbit VSCode extension.
+
+## Install using the marketplace website
+
+If you are using the VSCode IDE, and not an IDE that derives from it such as Cursor or Windsurf, then you can alternatively obtain and install the CodeRabbit VSCode extension by visiting [the extension's page on the Visual Studio Marketplace](https://coderabbit.link/vscode-docs).
+
+If you do install the extension this way, then you still need to connect your CodeRabbit account to the extension after installing it, as described in the previous section.
+
+## What's next
+
+- [Use the VSCode extension](/guides/use-vscode)
+
+- [Configure the VSCode extension](/guides/config-vscode)
diff --git a/docs/guides/issue-chat.md b/docs/guides/issue-chat.md
new file mode 100644
index 00000000..ee4f83a7
--- /dev/null
+++ b/docs/guides/issue-chat.md
@@ -0,0 +1,155 @@
+---
+title: Discuss issues and plan solutions
+description: Learn how to use CodeRabbit's chat capabilities within issues
+---
+
+```mdx-code-block
+import ProPlanNotice from '@site/src/components/ProPlanNotice.mdx';
+
+
+```
+
+# Issue Chat
+
+CodeRabbit provides an intelligent chat interface directly within GitHub and GitLab issues. This allows developers to have natural conversations about code, get answers to questions, create AI powered code searches, plan features, and gain deeper insights into their codebase - all without leaving their issue tracking workflow.
+
+## Getting Started
+
+To start a conversation with CodeRabbit in any issue:
+
+1. Simply mention `@coderabbitai` (or your custom bot name if configured) in an issue comment
+2. Ask your question or make your request in natural language
+3. CodeRabbit will analyze the context and respond accordingly
+
+:::note
+Organizations can configure a custom bot name by creating their own bot user. The bot will respond to mentions of that custom name instead of `@coderabbitai`.
+:::
+
+
+
+
+
+## Core Capabilities
+
+### Code Analysis
+
+When chatting in issues, CodeRabbit has access to your repository and powerful tools that allow it to analyze and understand your codebase like a real developer. This includes:
+
+- Full access to search and analyze the repository code
+- Advanced static analysis capabilities
+- Command line tools for code search and manipulation (e.g. grep, awk, sed, etc.)
+- Complete git history and metadata information
+- Access to past CodeRabbit learnings and insights
+
+This allows CodeRabbit to:
+
+- Search through code to find relevant examples
+- Analyze code patterns and relationships
+- Generate statistics and metrics
+- Provide context-aware answers about the codebase
+- Create AI powered code searches
+- Use tribal knowledge from learnings to enhance responses
+
+
+
+
+
+### Agentic Thought Chain
+
+When [agentic thought chain](./agent_chat.md) is enabled, CodeRabbit will use an agentic thought chain to plan out a response using multiple commands in series to articulate a more advanced response.
+
+
+
+All scripts run in the Agentic Thought Chain are run in a secure sandboxed execution environment.
+
+### Feature Planning Support
+
+Issue chat is particularly valuable during feature planning phases:
+
+- **Code Impact Analysis**: Ask about which parts of the codebase might be affected by proposed changes
+- **Pattern Discovery**: Find similar implementations or related code
+- **Dependency Mapping**: Understand relationships between components
+- **Technical Feasibility**: Get insights into potential challenges or approaches
+
+Example conversation:
+
+
+
+## Additional Use Cases
+
+### Open Source Support
+
+Issue chat, like all Pro CodeRabbit features, is free for open source projects. CodeRabbit acts as a powerful support tool for open source maintainers by:
+
+- Answering common user questions with detailed, contextual responses
+- Providing relevant code examples and implementation patterns
+- Explaining error messages with debugging context and solutions
+- Suggesting step-by-step debugging approaches with code snippets
+- Helping triage and categorize issues
+- Identifying potential duplicates and related issues
+- Offering guidance on best practices and common pitfalls
+- Reducing maintainer burden by handling routine support tasks
+
+Example:
+
+
+
+### Documentation Assistance
+
+Use issue chat to generate high level descriptions of the code and services in your repositories. This can be used to create README documentation which can be used across platforms like [wikis](https://docs.github.com/en/communities/documenting-your-project-with-wikis), [Confluence](https://www.atlassian.com/software/confluence/guides), [Notion](https://www.notion.so/help/guides) and more:
+
+- Generate high level documentation
+- Create usage examples and mermaid diagrams
+- Provide content to assist in updating README files
+- Write tutorials
+
+Example:
+
+
+
+### Marketing Content Generation
+
+CodeRabbit can assist with creating content on new features for social media posts, blogs, and more:
+
+- Release announcements
+- Blog post drafts
+- Social media content
+- Community updates
+
+Example:
+
+
+
+## Best Practices
+
+1. **Be Specific**
+
+ - Provide context in your questions
+ - Mention specific files or features when relevant
+ - Clarify your goals or requirements
+
+2. **Iterative Refinement**
+
+ - Start with broad questions
+ - Follow up for more details
+ - Ask for clarification when needed
+
+3. **Collaborative Planning**
+
+ - Include stakeholders in the conversation
+ - Use issue chat to document decisions
+ - Reference related issues or PRs
+
+4. **Keep Questions Focused**
+ - CodeRabbit works best with clear, specific questions
+ - Link to specific files, directories or pull requests to help refine answers and provide better context
+ - CodeRabbit does not generate API documentation, Swagger specs, or other technical documentation that requires high accuracy
+ - Break down complex questions into smaller, more manageable ones
+ - Use multiple messages to ask follow up questions if needed
+
+## Related Resources
+
+- [Agentic Chat](./agent_chat.md)
+- [Issue Creation](./issue-creation.md)
+- [Commands](./commands.md)
+- [Tooling Guide](../tools/tools.md)
diff --git a/docs/guides/issue-creation.md b/docs/guides/issue-creation.md
index f3e81f1d..f6228b57 100644
--- a/docs/guides/issue-creation.md
+++ b/docs/guides/issue-creation.md
@@ -1,8 +1,6 @@
---
-title: Issue Creation
-sidebar_label: Issue Creation
+title: Create issues
description: Learn how to create issues directly through CodeRabbit
-sidebar_position: 9
---
```mdx-code-block
diff --git a/docs/guides/linked-issues.md b/docs/guides/linked-issues.md
new file mode 100644
index 00000000..b802cb3b
--- /dev/null
+++ b/docs/guides/linked-issues.md
@@ -0,0 +1,173 @@
+---
+title: Work with linked Issues
+description: Learn how to effectively use linked issues with CodeRabbit for better pull request assessments
+---
+
+# Linked Issues
+
+CodeRabbit provides intelligent assessment of linked issues to validate whether pull requests properly address their requirements. This guide explains how to effectively use linked issues and write clear issue descriptions for optimal results.
+
+## Understanding Linked Issues
+
+A linked issue is one that is explicitly referenced in your pull request description using platform-specific syntax:
+
+- GitHub: `fixes #123`, `closes #123`, `resolves #123`
+- GitLab: `closes #123`, `fixes #123`, or full URLs
+- Jira/Linear: Full URLs to tickets
+
+When CodeRabbit detects linked issues, it analyzes them against your pull request changes to determine if the requirements are met:
+
+
+
+## Best Practices for Issue Writing
+
+### Issue Titles
+
+Create descriptive, technical titles that clearly state the goal:
+
+โ Good Examples:
+
+- "Add PrismaLint integration to configuration flow"
+- "Fix race condition in user authentication"
+- "Implement caching for GraphQL queries"
+
+โ Poor Examples:
+
+- "Fix bug"
+- "Update code"
+- "Improve performance"
+
+### Issue Descriptions
+
+Write comprehensive descriptions that provide clear technical context:
+
+1. **Problem Statement**
+
+ - Clearly describe what needs to be changed
+ - Include technical details about affected components
+ - Reference specific files or functions if known
+
+2. **Expected Solution**
+ - Outline the desired implementation approach
+ - Include code examples or pseudo-code when relevant
+ - List specific acceptance criteria
+
+Example Description:
+
+```markdown
+Problem:
+The configuration system doesn't validate Prisma schema files before deployment,
+leading to potential runtime errors.
+
+Solution:
+Integrate PrismaLint into the configuration flow to:
+
+- Validate schema files during PR checks
+- Enforce consistent naming conventions
+- Prevent common Prisma anti-patterns
+
+Affected Components:
+
+- Configuration validation pipeline
+- CI/CD workflow
+- Schema validation logic
+
+Acceptance Criteria:
+
+- [ ] PrismaLint runs on all PR checks
+- [ ] Failed validations block merging
+- [ ] Clear error messages for schema issues
+```
+
+### Consistent Terminology
+
+Use consistent terminology between issues and pull requests:
+
+โ Good:
+
+- Use the same technical terms consistently
+- Reference components with their exact names
+- Maintain consistent naming patterns
+
+โ Poor:
+
+- Mixing different terms for the same component
+- Using vague or non-technical language
+- Inconsistent capitalization or formatting
+
+## Linking Issues Effectively
+
+### In Pull Requests
+
+1. **Direct References**
+
+ ```markdown
+ Fixes #123
+ Resolves organization/repo#456
+ Closes https://github.com/org/repo/issues/789
+ ```
+
+2. **Multiple Issues**
+
+ ```markdown
+ This PR addresses:
+
+ - Fixes #123
+ - Closes #456
+ - Resolves https://jira.company.com/browse/PROJ-789
+ ```
+
+### Cross-References
+
+For better traceability:
+
+1. Add PR references in issue comments
+2. Use complete URLs when linking external systems
+3. Maintain bidirectional links between related issues
+
+## How CodeRabbit Assesses Linked Issues
+
+CodeRabbit evaluates linked issues by:
+
+1. Analyzing issue titles and descriptions
+2. Comparing changes in the pull request
+3. Validating if requirements are met
+4. Providing an assessment with:
+ - โ : If the objective has been addressed in the PR. The 'Explanation' column will be left blank.
+ - โ: If the objective has not been addressed in the PR. Here a brief explanation is added to the 'Explanation' column.
+ - โ: If it is unclear whether the objective has been addressed. Here a brief explanation is added to the 'Explanation' column.
+
+:::note
+Only the issue title and description are considered in the assessment. Comments and discussion threads are not currently analyzed.
+:::
+
+## Tips for Better Assessments
+
+1. **Be Specific**
+
+ - Include clear, measurable objectives
+ - List specific technical requirements
+ - Reference affected code components
+
+2. **Provide Context**
+
+ - Explain why changes are needed
+ - Document current behavior
+ - Describe expected outcomes
+
+3. **Use Technical Details**
+
+ - Include file paths when known
+ - Reference specific functions or classes
+ - Mention relevant technologies
+
+4. **Keep It Focused**
+ - One main objective per issue
+ - Clear scope boundaries
+ - Specific acceptance criteria
+
+## Related Resources
+
+- [Add review instructions](/guides/review-instructions)
+- [Issue Chat](./issue-chat.md)
+- [Issue Creation](./issue-creation.md)
diff --git a/docs/guides/ondemand-reports.md b/docs/guides/ondemand-reports.md
index bad251f7..41dbe9bb 100644
--- a/docs/guides/ondemand-reports.md
+++ b/docs/guides/ondemand-reports.md
@@ -1,8 +1,6 @@
---
-title: On-demand Reports
-sidebar_label: On-demand Reports
+title: Generate reports
description: CodeRabbit offers a way to generate on-demand reports using a simple API request
-sidebar_position: 8
---
```mdx-code-block
diff --git a/docs/guides/review-instructions.md b/docs/guides/review-instructions.md
index dfb8ff70..c44b862c 100644
--- a/docs/guides/review-instructions.md
+++ b/docs/guides/review-instructions.md
@@ -1,17 +1,15 @@
---
-title: Review Instructions
-sidebar_label: Review Instructions
+title: Add review instructions
description:
CodeRabbit offers various customization options to tailor the reviews to your
specific requirements. Customizations can be made using one of the below
options.
-sidebar_position: 3
---
The guide explains how to add custom review instructions for the entire project.
Also, see the guide on how to [configure CodeRabbit](/getting-started/configure-coderabbit).
-### Path-based instructions {#path-based}
+## Path-based instructions {#path-based}
This section explains how to add custom code review instructions for the entire
project or specific file paths in your project using glob patterns. Developers
diff --git a/docs/guides/scheduled-reports.md b/docs/guides/scheduled-reports.md
index 04bb06e6..44a11f56 100644
--- a/docs/guides/scheduled-reports.md
+++ b/docs/guides/scheduled-reports.md
@@ -1,8 +1,6 @@
---
-title: Scheduled Reports
-sidebar_label: Scheduled Reports
+title: Schedule reports
description: Learn how to set up automated recurring reports with CodeRabbit Pro
-sidebar_position: 6
---
```mdx-code-block
diff --git a/docs/guides/uninstall-vscode.md b/docs/guides/uninstall-vscode.md
new file mode 100644
index 00000000..27266d47
--- /dev/null
+++ b/docs/guides/uninstall-vscode.md
@@ -0,0 +1,25 @@
+---
+title: Uninstall the VSCode extension
+description: How to uninstall the CodeRabbit VSCode extension
+---
+
+This page is about uninstalling the CodeRabbit VSCode extension. For more information about the extension, see
+[Review local changes](/code-editors).
+
+:::note
+The instructions on this page are specific to using the extension with VSCode. If you are instead using a VSCode-compatible editor such as Cursor or Windsurf, then the steps that you need to follow are similar, but might require some adaptation.
+:::
+
+## Uninstall the extension
+
+To uninstall the VSCode extension, follow these steps:
+
+1. In the VSCode activity bar, click the CodeRabbit icon.
+
+1. In the CodeRabbit sidebar, click the door-shaped **Logout** icon.
+
+1. In the VSCode activity bar, click the **Extensions** icon.
+
+1. In the Extensions sidebar, click the gear-shaped **Manage** icon next to CodeRabbit in the list of installed extensions.
+
+1. Select **Uninstall**.
diff --git a/docs/guides/use-vscode.md b/docs/guides/use-vscode.md
new file mode 100644
index 00000000..bfacd87b
--- /dev/null
+++ b/docs/guides/use-vscode.md
@@ -0,0 +1,109 @@
+---
+title: Use the VSCode extension
+description: How to review your code with the VSCode extension.
+---
+
+This page is about performing local code reviews using the CodeRabbit VSCode extension. For more information about the extension, see
+[Review local changes](/code-editors). To learn how to install the extension, see [Install the VSCode extension](/guides/install-vscode).
+
+The CodeRabbit VSCode extension works by comparing changes in your current, checked-out Git branch against another branch in your local repository. You can use the extension to automatically perform full-branch changes after every commit, or make different kinds of comparisons by manually requesting a review.
+
+:::note
+The instructions on this page are specific to using the extension with VSCode. If you are instead using a VSCode-compatible editor such as Cursor or Windsurf, then the steps that you need to follow are similar, but might require some adaptation.
+:::
+
+## Automatically review local commits {#auto-reviews}
+
+You can let CodeRabbit automatically review commits that you make to your local Git repository. These automatic reviews compare all committed changes against the branch that your working branch is based on.
+
+To perform an automatic review, follow these steps:
+
+1. Perform a Git commit using VSCode. After you do this, a dialog appears in your VSCode window, asking **Would you like to start a review?**
+
+1. Click **Yes**. The CodeRabbit sidebar appears in your VSCode window.
+
+1. Wait for the review to complete. This might take a few minutes. To cancel a review in progress, click **Stop the review**.
+
+After the review completes, you can browse and respond to review comments as described in [Work with code reviews](#work).
+
+You can optionally configure the extension to either always or never perform automatic code reviews on commit, instead of displaying this yes-or-no dialog. For more information, see [Configure automatic review behavior](/guides/config-vscode#auto-reviews).
+
+For more control of code reviews performed using the CodeRabbit VSCode extension, you can manually request a review, as detailed in the following section.
+
+## Manually request code reviews {#manual-reviews}
+
+To manually review changes in a local Git branch using the CodeRabbit VSCode extension, follow these steps:
+
+1. Click the CodeRabbit icon in the VSCode activity bar. The CodeRabbit sidebar appears.
+
+1. If you want to compare your code changes to a branch other than its base branch, then follow these steps:
+
+ 1. In the sidebar, under **Branch**, click the name of the base branch. A **Select a base branch** dialog appears, listing other branches in your local Git repository.
+
+ 1. Select the name of a base branch to compare against.
+
+1. Select one of the review-action options from the menu at the bottom of the CodeRabbit sidebar:
+
+ - To review all changes between the base branch and your current branch, including both committed and uncommitted changes, select **Review all changes**. This is the default selection.
+
+ - To limit the review to only changes on your branch that you have committed, select **Review committed changes**. This includes commits that you have pushed to your remote repository, if any, as well as any local commits.
+
+ - To limit the review to only uncommitted changes on your branch, select **Review uncommitted changes**. This includes both staged and unstaged changes.
+
+1. Refer to the list of **Files to review** in the sidebar. This list represents all of the files that the selected review action includes. To change this list of files, repeat the previous step to choose a different review action, or use Git features like `git stash` to selectively remove changes.
+
+1. To perform the review, click the button part of the menu. The CodeRabbit sidebar displays a **Review** section with the review's progress.
+
+1. Wait for the review to complete. This might take a few minutes. To cancel a review in progress, click **Stop the review**.
+
+After the review completes, you can browse and respond to review comments as described in the following section.
+
+## Work with code reviews {#work}
+
+The CodeRabbit VSCode extension presents code reviews as a series of actionable comments, connected to specific files and lines. It gives you tools to apply its suggestions quickly, when possible.
+
+### Browse comments {#browse}
+
+After the extension finishes its review, it adds any comments to the CodeRabbit sidebar under the **Files** heading in the **Reviews** section.
+
+Each item in **Files** is a comment referring to one or more lines in that file. Click the comment to see a detailed, inline comment in the editor, attached to the appropriate file and lines.
+
+You can react to these comments however you want: you can apply their advice literally, or let them guide you to find alternate solutions, or ignore them entirely. CodeRabbit comments are metadata stored with VSCode, and are not part of your files. The presence of comments doesn't block your use of version control.
+
+### Apply suggested changes {#apply}
+
+Whenever possible, the CodeRabbit VSCode extension attaches discrete change suggestion to comments in the form of code diffs. For example, if it detects a typo in a new function name, the extension might attach a diff with a suggested correction.
+
+If you agree with CodeRabbit about the suggested fix and want to apply to exactly as it proposes, click the checkmark-shaped **Apply suggested change** icon in the inline comment. The extension makes the change for you in the editor.
+
+### Request help from your AI coding agent {#agent}
+
+If CodeRabbit determines that an AI coding agent could help with resolving one of its comments, then it adds a star-shaped **Fix with AI** icon to the inline display of that comment. To have the extension generate a request for an AI agent to address the comment, click this icon.
+
+Depending upon your IDE and the current extension settings, the extension performs one of the following actions:
+
+- If you are using VSCode with Copilot installed, then the extension can send the request directly to Copilot.
+- If you have Claude Code installed, then the extension can send the request to the `claude` command-line program.
+- As a fallback, the extension can copy the request, phrased as an AI prompt, to your clipboard. You can then manually paste this prompt into the coding AI of your IDE.
+
+For more information about configuring this behavior, see [Configure AI agent integration](/guides/config-vscode#agent).
+
+### Ignore or collapse comments {#ignore}
+
+To remove a comment from the editor, click its **Ignore** icon.
+
+To remove a comment but keep an icon in the editor noting its presence, click its **Collapse** icon.
+
+To see an ignored or collapsed comment in the editor again, click its summary in the CodeRabbit sidebar.
+
+### Browse previous reviews {#previous}
+
+If you have performed reviews prior to the most recent review in the current VSCode window, then you can browse the comments from these reviews under the **Previous reviews** heading in the CodeRabbit sidebar.
+
+If a past review comment no longer applies to the current state of your code, then clicking that comment won't display a detailed comment or suggestion in the editor.
+
+## What's next {#whats-next}
+
+- [Configure the VSCode extension](/guides/config-vscode)
+
+- [Uninstall the VSCode extension](/guides/uninstall-vscode)
diff --git a/docs/integrations/code-graph-analysis.md b/docs/integrations/code-graph-analysis.md
new file mode 100644
index 00000000..5958640a
--- /dev/null
+++ b/docs/integrations/code-graph-analysis.md
@@ -0,0 +1,64 @@
+---
+title: Analyze your code changes
+description: Learn about CodeRabbit's intelligent graph-based code analysis.
+---
+
+# CodeRabbit Code Graph Analysis
+
+## What is Code Graph Analysis?
+
+Code Graph Analysis is an intelligent code analysis feature that enhances your code reviews by automatically mapping relationships between files in your codebase. By
+understanding how your code connects and interacts, Code Graph provides concrete snippets of context that makes reviews more effective and insightful.
+
+## How Code Graph Analysis Enhances Your Reviews
+
+When reviewing code with CodeRabbit, Code Graph Analysis automatically:
+
+- **Maps symbol definitions and references** across your entire codebase
+- **Analyzes commit history** to identify files that frequently change together
+- **Builds relationship graphs** showing how different parts of your code connect
+- **Enriches reviews with contextual information** about related code
+
+Code Graph Analysis is also available in the CodeRabbit Chat. CodeRabbit Chat will automatically analyze your codebase with it when the agent deems it necessary.
+
+## Key Features
+
+### Three Types of Contextual Information
+
+Code Graph Analysis adds three powerful layers of context to your reviews:
+
+1. **Definition Files**: Files containing definitions that are referenced in the current code
+2. **Reference Files**: Files that reference symbols defined in the current code
+3. **Related Files**: Files that appear related based on usage patterns and commit history
+
+### Language Support
+
+Code Graph Analysis works with:
+
+- Bash
+- C
+- C#
+- C++
+- CSS
+- Elixir
+- Go
+- Java
+- JavaScript
+- Kotlin
+- Lua
+- PHP
+- Python
+- Ruby
+- Rust
+- Scala
+- Swift
+- TSX
+- TypeScript
+
+## Availability
+
+Code Graph Analysis is available on the Lite tier and above.
+
+---
+
+Learn more about CodeRabbit's advanced features at [coderabbit.ai](https://coderabbit.ai)
diff --git a/docs/integrations/issue-integrations.md b/docs/integrations/issue-integrations.md
index a153839b..0ad69f54 100644
--- a/docs/integrations/issue-integrations.md
+++ b/docs/integrations/issue-integrations.md
@@ -1,8 +1,6 @@
---
-title: Issue Integrations
+title: Integrate issue tracking
description: Learn about CodeRabbit's integrations with issue tracking systems like Jira and Linear.
-sidebar_label: Issue Integrations
-sidebar_position: 5
---
CodeRabbit integrates with popular issue tracking systems to provide context from linked and related issues while reviewing code.
diff --git a/docs/integrations/knowledge-base.md b/docs/integrations/knowledge-base.md
index c15f2f9f..61ff141e 100644
--- a/docs/integrations/knowledge-base.md
+++ b/docs/integrations/knowledge-base.md
@@ -1,8 +1,6 @@
---
-title: Knowledge Base
+title: Apply your code review preferences
description: Learn about CodeRabbit's internal knowledge base and its integrations with external services.
-sidebar_label: Knowledge Base
-sidebar_position: 4
---
CodeRabbit utilizes an internal knowledge base that integrates with several external services to provide a seamless review and issue management experience.
diff --git a/docs/overview/introduction.md b/docs/overview/introduction.md
index 6f2e2e5b..f937ac67 100644
--- a/docs/overview/introduction.md
+++ b/docs/overview/introduction.md
@@ -9,56 +9,101 @@ description:
slug: "/"
---
-## What is CodeRabbit?
+# Introduction
-> **CodeRabbit** is an AI-powered code reviewer that delivers context-aware feedback on pull requests within minutes, reducing the time and effort needed for manual code reviews. It provides a fresh perspective and catches issues that are often missed, enhancing the overall review quality.
+This page provides a conceptual introduction to CodeRabbit. For a hands-on tutorial, see [Quickstart](/getting-started/quickstart/).
-Developers can interact directly with the bot within the code, offering additional context, asking questions, or even having the bot generate code. Over time, **CodeRabbit** learns from user input and improves its suggestions.
+**CodeRabbit** is an AI-powered code reviewer that delivers context-aware feedback on pull requests within minutes, reducing the time and effort needed for manual code reviews. It complements manual reviews by providing a fresh perspective and catching issues that manual reviews often miss, enhancing the overall review quality.
-:::tip
-See CodeRabbit in action and watch the demo video below to see how it delivers real-time, context-aware feedback on your pull requests in just a few minutes.
-:::
+Developers can interact directly with the CodeRabbit bot within their existing Git platform's pull request interface to add context, ask questions, or even have the bot generate code. Over time, CodeRabbit learns from user input and improves its suggestions.
-## Integration with GitHub, GitLab and Azure DevOps
+## Core features
-> **CodeRabbit** integrates with GitHub, GitLab and Azure DevOps repositories to deliver continuous and incremental reviews for each commit in a pull request (PR) or merge request (MR). Review feedback is automatically sent back to the PR/MR and can be committed directly.
+Core CodeRabbit features include the following:
-It works via a webhook, monitoring Pull Request (PR) and Merge Request (MR) events. A comprehensive review is performed when a PR or MR is created, and for
-incremental commits and comments addressed to the bot. The feedback is then sent directly back to the Pull Request or Merge Request.
+- Integrates rapidly with popular Git platforms and workflows.
+- Applies dozens of open-source, industry-standard code analyzers to every commit.
+- Implements code reviews as familiar pull-request comments.
+- Works with contributors through natural-language conversation in comments.
+- Learns and adapts to your team's code style and review preferences.
+- Provides an observability dashboard of code-contribution activity.
+- Practices strong privacy and security, with no retention of analyzed code.
+- Offers free use for public repositories, and flexible pricing for private codebases.
-
+## Seamless workflow integration
-## Data Privacy and Security
+CodeRabbit shares its reviews as comments attached to pull requests, using the same Git platform that your team already uses. Further commits in the same pull review prompt CodeRabbit to make further reviews, using the earlier reviews as context.
-> **CodeRabbit** does not use data collected from code reviews to train or influence its models. All queries to Large Language Models (LLMs) are ephemeral, with zero retention. No data is shared with third parties.
+Each time that it performs a code review, CodeRabbit runs the relevant code changes through [an array of industry-standard code linters, security analyzers, and other tools](/tools/). CodeRabbit synthesizes the output of these tools into its reviews, offering a high-level analysis that can suggest areas for further focus and improvement.
-- **Temporary Storage**: Code is temporarily stored in memory during the review process and deleted afterward.
-- **Stored Embeddings**: While the code itself isnโt stored, **CodeRabbit** stores embeddings based on chat conversations and workflow systems (Linear, Jira, GitHub/GitLab issues) to improve future reviews.
-- **Compliance**: All data is kept confidential, isolated by organization, and complies with **SOC2 Type II** and **GDPR** standards.
+Your team can have conversations with CodeRabbit about its reviews by replying to it with follow-up comments on pull requests, asking it questions or making observations about the review using natural language. CodeRabbit continues the conversation appropriately, offering further insights about the code changes, or adjusting its own review style based on feedback.
-### Opting Out
+### Customizable review preferences
-You can opt out of data storage at any time without affecting your access to **CodeRabbit**.
-:::warning
-However, opting out may reduce the level of personalized review feedback.
-:::
+As you interact with CodeRabbit through chat, it learns the review preferences of your team, and applies them to all future reviews on a given repository.
-## Try CodeRabbit Now
+For example, if CodeRabbit uses a linter to suggest that your pull request use four-space indentations, but your team uses a two-space indentation style, then you can reply to CodeRabbit's pull-request comment to tell it exactly that. CodeRabbit acknowledges your feedback and adjusts all of its subsequent reviews with that repository appropriately.
-> Ready to experience **CodeRabbit** in action?
+For a video introduction to this feature, see [CodeRabbit Learnings](https://www.youtube.com/watch?v=Yu0cmmOYA-U).
-:::tip
-For open source projects CodeRabbit Pro is **_FREE_**, forever.
+If you need to fine-tune CodeRabbit's behavior beyond this, then you can [add a CodeRabbit-specific configuration file](/getting-started/configure-coderabbit) to your repository, or use the CodeRabbit web UI to set further preferences. This file can include [path-based instructions](/guides/review-instructions) for how CodeRabbit should review different files within your codebase.
-- No credit card required
-- Unlimited public repositories
+No matter how you tune and customize CodeRabbit, its default settings make it useful out of the box, able to meaningfully review pull requests within minutes of its introduction to a repository.
-:::
+### Git platform integration
-