diff --git a/README.md b/README.md index 8167aa97..a88a85a7 100644 --- a/README.md +++ b/README.md @@ -4,6 +4,13 @@

+--- + +# CodeRabbit docs have moved over to Mintlify as a private repo. These docs are no longer maintained. + +--- + + # CodeRabbit Documentation Welcome to the official docs for [**CodeRabbit**](https://coderabbit.ai), the code review dev tool that helps you ship quality code faster. diff --git a/docs/changelog.md b/docs/changelog.md index ec081fb5..21d85d40 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -5,6 +5,18 @@ description: The latest updates and changes to CodeRabbit. sidebar_position: 13 --- +## August 4, 2025 + +### Model Context Protocol (MCP) Server Integration - Early Access + +Pro users can now connect CodeRabbit to your external tools and knowledge bases to provide more contextual code reviews. Our AI automatically pulls relevant information from your documentation, project management tools, and internal wikis to better understand your code changes and business requirements. Connect your custom MCP servers through Settings > Integrations to get reviews and chat conversations that understand your full development context. + +## August 1, 2025 + +### Dark Theme Support for UI App + +CodeRabbit app now supports Light, Dark, and System themes. Use the new theme toggle next to your profile to switch modes. + ## July 23, 2025 ### ⚡️ Unit Test Generation - Beta @@ -250,7 +262,7 @@ import ProPlanNotice from "@site/src/components/ProPlanNotice.mdx" New and Improved Dashboards to provide more useful feedback such as: -- Avgerage PR Merge Time +- Average PR Merge Time - Weekly Pull Request Activity - Number of PRs Reviewed - Acceptance rate of CodeRabbit Suggestions diff --git a/docs/context-enrichment/mcp-server-integrations.md b/docs/context-enrichment/mcp-server-integrations.md new file mode 100644 index 00000000..3d9334ad --- /dev/null +++ b/docs/context-enrichment/mcp-server-integrations.md @@ -0,0 +1,51 @@ +--- +title: MCP integrations +description: MCP integrations allow CodeRabbit to access your documentation, project management tools, knowledge bases, Figma designs, and more. +--- + +:::caution +Pro feature — Early Access only +::: + +You can enable CodeRabbit to connect to external tools and data sources through the Model Context Protocol (MCP) integration. This allows CodeRabbit to serve as the client, and grants it with richer contextual understanding for: + +- Code reviews +- The validation step for code suggestions +- Chat in the PR + +Use the MCP integration as a way to access your documentation, project management tools, knowledge bases, Figma designs, and more. + +## Considerations + +A few things to keep in mind: + +- CodeRabbit acts as the MCP client, not the server. It ingests data. +- The constraint is understanding what MCP data can be helpful for code reviews. See above for how CodeRabbit uses MCP data. +- This approach unlocks integrations in a way that wasn't possible before. You don't have to wait for CodeRabbit to have a formal integration, if it has an MCP server, we can connect to it. + +## Setup + +### Configuration steps + +1. Navigate to Integrations Page within your CodeRabbit app settings and select the new MCP Server tab +2. To add a new MCP server, click "Add MCP Integration" and provide your server connection details along with the name +3. Complete the authentication process for your MCP server +4. Enable or disable individual MCP tools for each server + +## How it works + +### During code reviews + +CodeRabbit automatically calls relevant MCP tools during analysis to: + +- Gather additional review context. +- Validate and enhance suggested review comments. + +Enhanced review comments will include enriched insights while maintaining your existing workflow. Tools used during analysis are listed under "Additional context used." + +### In chat interactions + +MCP integration enhances chat by: + +- Retrieving contextual information based on discussion topics +- Accessing external documentation and knowledge bases diff --git a/docs/faq.md b/docs/faq.md index 795ce900..ed5599a8 100644 --- a/docs/faq.md +++ b/docs/faq.md @@ -63,7 +63,7 @@ CodeRabbit works with all programming languages, with varying proficiency based - Available training data - Community usage patterns -### Whats the difference between CodeRabbit Code Reviews and CodeRabbit Reports? +### What's the difference between CodeRabbit Code Reviews and CodeRabbit Reports? CodeRabbit offers two distinct features that serve different roles in your development workflow: @@ -205,13 +205,13 @@ In-trial and open-source plans have lower rate limits than the paid plan. In all The following limits are enforced _per developer_: -| Feature | Free Plan | Trial Plan | OSS Plan | Pro/Lite Plan | -| -------------------------------- | ------------------------------------------ | --------------------------------- | ----------------------------- | ----------------------------- | -| Files per hour | 200/hour | 200/hour | 200/hour | 400/hour | -| Files per PR | 100 | 100 | 100 | 200 | -| Reviews per hour | 3 back-to-back, then 2/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 (IDE Extension) | 1/hour | 5/hour (Pro trial), 1/hour(Other) | 1/hour | 5/hour (Pro), 1/hour(Lite) | -| Chat | N/A | 25 back-to-back, then 50/hour | 10 back-to-back, then 25/hour | 25 back-to-back, then 50/hour | +| Feature | Free Plan | Trial Plan | OSS Plan | Pro/Lite Plan | +| -------------------------------- | ------------------------------------------ | ----------------------------- | ----------------------------- | ------------------------------------------------------------------------ | +| Files per hour | 200/hour | 200/hour | 200/hour | 400/hour | +| Files per PR | 100 | 100 | 100 | 200 | +| Reviews per hour (Git platforms) | 3 back-to-back, then 2/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 (IDE Extension) | 1 back-to-back, then 1/hour | 4 back-to-back, then 3/hour | 1 back-to-back, then 1/hour | Pro: 4 back-to-back, then 5/hour.
Lite: 1 back-to-back, then 1/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} diff --git a/docs/finishing-touches/_category_.yaml b/docs/finishing-touches/_category_.yaml index 81a96253..1bd50e46 100644 --- a/docs/finishing-touches/_category_.yaml +++ b/docs/finishing-touches/_category_.yaml @@ -2,3 +2,7 @@ label: Finishing Touches position: 8 collapsible: true collapsed: true +link: + type: generated-index + title: Finishing Touches + slug: /finishing-touches diff --git a/docs/finishing-touches/docstrings.md b/docs/finishing-touches/docstrings.md index c504fa8a..dd4f6467 100644 --- a/docs/finishing-touches/docstrings.md +++ b/docs/finishing-touches/docstrings.md @@ -11,7 +11,7 @@ import ProPlanNotice from '@site/src/components/ProPlanNotice.mdx'; # Docstrings -Docstrings generation is part of the [finishing touches](/future-development#finishing-touches). +Docstrings generation is part of the [Finishing Touches](/finishing-touches). ## Usage diff --git a/docs/finishing-touches/index.md b/docs/finishing-touches/index.md new file mode 100644 index 00000000..824fc5e8 --- /dev/null +++ b/docs/finishing-touches/index.md @@ -0,0 +1,13 @@ +--- +id: finishing-touches +title: Finishing Touches +description: Enhance your pull requests with automated docstrings and unit test generation. +slug: /finishing-touches +--- + +Finishing Touches features help you polish pull requests after review: + +- [Docstrings](/finishing-touches/docstrings) +- [Unit Test Generation](/finishing-touches/unit-test-generation) + +Use these tools to improve documentation and test coverage before merging. diff --git a/docs/finishing-touches/unit-test-generation.md b/docs/finishing-touches/unit-test-generation.md index 71fe5431..d2e7ac11 100644 --- a/docs/finishing-touches/unit-test-generation.md +++ b/docs/finishing-touches/unit-test-generation.md @@ -15,7 +15,7 @@ This feature is in beta. # Unit Test Generation -Unit Test Generation is part of the [finishing touches](/future-development#finishing-touches). +Unit Test Generation is part of the [Finishing Touches](/finishing-touches). ## Usage diff --git a/docs/future-development.md b/docs/future-development.md deleted file mode 100644 index e3c7c4d6..00000000 --- a/docs/future-development.md +++ /dev/null @@ -1,58 +0,0 @@ ---- -title: CodeRabbit Features -sidebar_label: Future Development -description: Learn how CodeRabbit works in a pull request review. -sidebar_position: 12 ---- - -# Future Development - -We are actively iterating and refining CodeRabbit, and this is a sneak peek into the upcoming milestones and releases. We are focused on making the Applied AI review better than the median manual review. In addition to that, we are looking at a holistic user experience with various integrations and types of reviews. - -## Applied AI Improvements - -We are actively trying to make the application of Generative AI more useful, relevant, meaningful for the coder and reviewer journey. Our immediate focus is - -### Accuracy and Conciseness Enhancements - -- Refining knowledge base context understanding -- Implementing advanced summarization techniques -- Implementing a knowledge base feature library - -### Learning Refinements - -- We have made significant improvement of the learning Enhancing reinforcement learning based on the user feedback - -## New Feature Enhancements - -### Expanded Integrations - -We are integrating various tool chains to enable coders and reviewers to have a consistent experience irrespective of the tools. The immediate tools would be: - -- **Circle CI** -- **Jenkins** - -### Communication Tool Integrations - -Communication and the user experience of review via various communication tools will be key. We will start with integrations to Slack and Microsoft Teams and will be diving into the design engineering of these flows further: - -- **Slack**: Real-time notifications and interactive discussions -- **Microsoft Teams**: Code review conversations within the Microsoft ecosystem - -### Enhanced Review Capabilities - -These are additional capabilities that can also be reviewed in the same PR to accelerate the coder and reviewer journey. This includes pipeline failure analysis and resolution, as well as vulnerability assessment. - -#### Pipeline Failure Analysis - -- Automated analysis of CI/CD pipeline failures -- AI-driven suggestions for resolving issues -- Historical tracking of pipeline performance - -### Finishing Touches - -Finishing touches are about experience that often take developers time away from what they like doing best coding. But adding finishing touches is crucial and should follow the ontology and taxonomy. We will start by looking into specific areas such as documentation of code as an example. - -> Disclaimer: any product roadmap features mentioned below are only meant to outline -> our general product direction. This documentation is for informational purposes -> only and may not be incorporated into any contract. diff --git a/docs/guides/custom-reports.md b/docs/guides/custom-reports.md index b2a10504..48d37a74 100644 --- a/docs/guides/custom-reports.md +++ b/docs/guides/custom-reports.md @@ -103,7 +103,7 @@ Contained within the `` tag. #### Summarized PR Details - ``: string - Contains the body of your pull request (aka the PR description at the top of the PR page). -- ``: string - Contains a file by file summary of the changes made in the PR in markdown format. This summary is generated by CodeRabbit AI durring the PR review process. This includes several sections for each file that was changed: +- ``: string - Contains a file by file summary of the changes made in the PR in markdown format. This summary is generated by CodeRabbit AI during the PR review process. This includes several sections for each file that was changed: - `filename`: string - The name of the file that was changed. - `AI-generated summary of changes`: markdown - An overall summary of the changes made in the file. - `Alterations to the declarations of exported or public entities`: markdown - A more specific breakdown of the changes made to the file such as exactly what was added, removed, or modified. @@ -307,9 +307,9 @@ Issues and tickets brings in conversations, descriptions, and comments from Jira This option gives you the ability to create a report limited only to pull requests containing a "Score Card" or "Score Chart" bot comment from CodeRabbit or other bots. To enable issues and tickets you must include the tag `` in your prompt. -> **IMPORTANT:** This will automatically remove any pull requests from your reports if they do not contain a "Score Card" or "Score Chart" bot comment. Using this option without setting up a flow to create these comments will result in `No new pull request activity in the last XYZ hours` errors. Do not enable this option unless you have asked coderabbit to create a "Score Card" thourhg a comment or implimented the "Score Chart" bot comment flow below. +> **IMPORTANT:** This will automatically remove any pull requests from your reports if they do not contain a "Score Card" or "Score Chart" bot comment. Using this option without setting up a flow to create these comments will result in `No new pull request activity in the last XYZ hours` errors. Do not enable this option unless you have asked CodeRabbit to create a "Score Card" through a comment or implemented the "Score Chart" bot comment flow below. -For example you can ask coderabbit to check serveral conditions on a pull request and produce a "Score Chart": +For example, you can ask CodeRabbit to check several conditions on a pull request and produce a "Score Chart":
Click to view example User Score Card/Chart Comment: @@ -461,7 +461,7 @@ You will create a new chart averaging all the values from various pull requests - Only include checks for very specific scenarios, such as a specific check failing or using tabs vs spaces. - Do not use general rules without explaining specifically what they mean. If you add "Insure the pull request follows development best practices" you must define what "development best practices" actually mean or the AI will guess. - Make one point for each specific check and make sure its a True/False condition. -- Instead of manually commenting on pull requests you can use the [Github Actions Bot](https://github.com/marketplace/actions/create-or-update-comment) to automatically comment on pull requests and trigger coderabbit score card/chart comments by including `@coderabbit` in the comment. +- Instead of manually commenting on pull requests, you can use the [GitHub Actions Bot](https://github.com/marketplace/actions/create-or-update-comment) to automatically comment on pull requests and trigger CodeRabbit score card/chart comments by including `@coderabbitai` in the comment. ## Best Practices diff --git a/docs/guides/initial-configuration.md b/docs/guides/initial-configuration.md index 5cea2afd..26fc3a2b 100644 --- a/docs/guides/initial-configuration.md +++ b/docs/guides/initial-configuration.md @@ -70,7 +70,7 @@ By default, CodeRabbit writes thorough code reviews with several sub-sections. I - [Sequence diagrams](/reference/configuration#sequence-diagrams): includes a visual diagram of object interactions. - [Assess linked issues](/reference/configuration#assess-linked-issues): assesses how well the pull request addresses any linked issues. - [Related issues](/reference/configuration#related-issues): lists issues found in your issue tracker that might be related to this pull request. -- [Related pull requests](/reference/configuration#realted-prs): lists pull requests that might be related to this pull request. +- [Related pull requests](/reference/configuration#related-prs): lists pull requests that might be related to this pull request. - [Suggested labels](/reference/configuration#suggested-labels): Suggests labels for this pull request. - [Suggested reviewers](/reference/configuration#suggested-reviewers): automatically suggest reviewers for PR - [Poem](/reference/configuration#poem): generates a short poem about this pull request. diff --git a/docs/guides/issue-creation.md b/docs/guides/issue-creation.md index f6228b57..61928e7a 100644 --- a/docs/guides/issue-creation.md +++ b/docs/guides/issue-creation.md @@ -37,7 +37,7 @@ To create Jira issues, ensure you have [configured the Jira integration](../inte ### Linear -Make sure you have [set up the Linear integration](../integrations/issue-integrations.md#linear) to create Linear issues. +Make sure you have [set up the Linear integration](../integrations/issue-integrations.md#Linear) to create Linear issues. ## Tips for Issue Creation diff --git a/docs/guides/ondemand-reports.md b/docs/guides/ondemand-reports.md index af380164..49214e32 100644 --- a/docs/guides/ondemand-reports.md +++ b/docs/guides/ondemand-reports.md @@ -14,7 +14,7 @@ import ProPlanNotice from '@site/src/components/ProPlanNotice.mdx'; This page is about using the CodeRabbit API to generate on-demand reports about your organization's usage of CodeRabbit. For a conceptual overview of reports in CodeRabbit, see [Generate reports](/guides/reports-overview). -If you're new to CodeRabbit's reporting features, then we recommend starting with [Scheduled reports](/guides/scheduled-reports) to understand the available options and capabilities. In almost every scenario we recommend using the **Scheduled Reports** option. The **On-demand Report** does not have any additional benifits from the **Scheduled Reports** and has many limitations. +If you're new to CodeRabbit's reporting features, then we recommend starting with [Scheduled reports](/guides/scheduled-reports) to understand the available options and capabilities. In almost every scenario we recommend using the **Scheduled Reports** option. The **On-demand Report** does not have any additional benefits from the **Scheduled Reports** and has many limitations. ## API Access diff --git a/docs/guides/reports-overview.md b/docs/guides/reports-overview.md index b15329f0..5095364f 100644 --- a/docs/guides/reports-overview.md +++ b/docs/guides/reports-overview.md @@ -26,7 +26,7 @@ There are two ways to generate reports: - **[On-demand Reports](/guides/ondemand-reports)**: If you want to test a report format and produce a single report once, try the "On-demand Reports" Option. You can also generate reports programmatically through our API, but we do not recommend this as the API reporting is in beta. If you want to run an **On-demand Report** more than once then you must use the **Scheduled Reports** option. -In almost every scenario we recommend using the **Scheduled Reports** option. The **On-demand Report** does not have any additional benifits from the **Scheduled Reports** and has many limitations. +In almost every scenario we recommend using the **Scheduled Reports** option. The **On-demand Report** does not have any additional benefits from the **Scheduled Reports** and has many limitations. ## Customize reports using natural language {#customize} diff --git a/docs/guides/setup-best-practices.md b/docs/guides/setup-best-practices.md index c6caa094..0533da5e 100644 --- a/docs/guides/setup-best-practices.md +++ b/docs/guides/setup-best-practices.md @@ -1,6 +1,6 @@ --- title: "Setup and configuration best practices" -description: Best practices for seting up CodeRabbit. +description: Best practices for setting up CodeRabbit. sidebar_label: Setup and configuration --- diff --git a/docs/integrations/knowledge-base.md b/docs/integrations/knowledge-base.md index 9cdedc80..24b2d1be 100644 --- a/docs/integrations/knowledge-base.md +++ b/docs/integrations/knowledge-base.md @@ -19,20 +19,23 @@ Or you can comment directly on some lines of code in the PR. `@coderabbitai do n For more information, see [Teach CodeRabbit your review preferences](/guides/learnings). -## Code Guidelines {#code_guidelines} +## Code Guidelines {#code-guidelines} -CodeRabbit will analyse and learn from your organisation's code guidelines, which you can set up in the knowledge base section. These guidelines will then be used to conduct thorough code reviews. +CodeRabbit can read _code guideline_ files that set standards and expectations about +your team's coding practices, described in natural language. CodeRabbit applies any instructions it reads from a repository's code guideline files to all subsequent code reviews. -The following patterns are scanned by default. +By default, CodeRabbit looks for and loads guideline files used by other AI coding assistants, including the following: -```text -**/.cursorrules -.github/copilot-instructions.md -**/CLAUDE.md -**/.cursor/rules/* -**/.windsurfrules -**/.clinerules/* -**/.rules/* -``` +- Claude Code +- Cursor +- Gemini +- GitHub Copilot +- Windsurf -![Illustration of code guidelines configuration](/img/knowledge-base/code-guidelines.png) +You can also mark any other file +or set of files in your repository as code guidelines by providing CodeRabbit with a list +of paths to those files. + +This feature is enabled by default; you can disable it if needed. + +For more information about configuring the code guidelines feature, see [Code guidelines](/reference/configuration#code-guidelines) in the configuration reference page. diff --git a/docs/platforms/bitbucket-cloud.md b/docs/platforms/bitbucket-cloud.md index 385d46ed..5813e5eb 100644 --- a/docs/platforms/bitbucket-cloud.md +++ b/docs/platforms/bitbucket-cloud.md @@ -1,17 +1,17 @@ --- title: "Bitbucket Cloud" description: "Learn how to integrate CodeRabbit with Bitbucket Cloud." -sidebar_label: "Bitbucket Cloud" +sidebar_label: "Bitbucket" sidebar_position: 6 --- -CodeRabbit integrates with Bitbucket Cloud to enhance code review and collaboration by: +CodeRabbit integrates with Bitbucket to enhance code review and collaboration by: - Automatically initiating code reviews for newly created merge requests. - Displaying review comments and suggestions directly on merge requests. - Enabling seamless interaction with the CodeRabbit bot for real-time feedback and assistance. -This guide will assist you in effectively integrating CodeRabbit with Bitbucket Cloud. +This guide will assist you in effectively integrating CodeRabbit with Bitbucket Cloud. [Click here](https://docs.coderabbit.ai/self-hosted/bitbucket) for instructions integrating Bitbucket Data Center with CodeRabit self-hosted edition. ## Configure API Token diff --git a/docs/platforms/gitlab-com.mdx b/docs/platforms/gitlab-com.mdx index c276cd35..30b23031 100644 --- a/docs/platforms/gitlab-com.mdx +++ b/docs/platforms/gitlab-com.mdx @@ -107,7 +107,13 @@ By default, GitLab restricts this option to users on the Premium or Ultimate tie 5. Ensure the following scopes are selected: `api`. 6. Ensure Developer Access is provided. ---- +:::tip + +Group Access Tokens create bot users with generic GitLab-generated usernames (like `group_63_bot_5753...`). If you prefer a more descriptive username for your CodeRabbit bot, you can customize it using the [GitLab API](https://docs.gitlab.com/api/users/#modify-a-user). + +You can find the bot's user ID through the CodeRabbit UI if connected, or by visiting the bot user's profile from your Group Members page in GitLab. + +::: ### Where to Provide CodeRabbit the Access Token diff --git a/docs/platforms/self-hosted-gitlab.md b/docs/platforms/self-hosted-gitlab.md index 3fa18a71..bd330887 100644 --- a/docs/platforms/self-hosted-gitlab.md +++ b/docs/platforms/self-hosted-gitlab.md @@ -71,6 +71,12 @@ After the user is created, you can retrieve the **User ID** from that user's profile and generate an [**access token**](#generating-personal-access-token). The access token is used to post reviews on merge requests. +:::note + +If you prefer, you can create a Group Access Token which will create a dedicated user on your behalf. For more information, see [Group Access Token](/docs/platforms/gitlab-com.mdx#group-access-token) + +::: + We recommend using the CodeRabbit [logo](/img/integrations/logo.png) as the profile picture to ensures easy recognition. #### **Creating OAuth2 application** diff --git a/docs/reference/configuration.md b/docs/reference/configuration.md index 5b59933f..14b7e32e 100644 --- a/docs/reference/configuration.md +++ b/docs/reference/configuration.md @@ -301,11 +301,11 @@ If enabled, then the reviews that CodeRabbit generates include assessments of ho Besides this setting, issue assessment requires at least one of the following: -- You use the built-in issue managemet system of GitHub or GitLab. +- You use the built-in issue management system of GitHub or GitLab. - You have integrated CodeRabbit with an external issue manager. For more information, see [Integrate issue tracking](/integrations/issue-integrations/) -and [Let CodeRabbit read your issue trakcer](https://docs.coderabbit.ai/guides/setup-best-practices#issues). +and [Let CodeRabbit read your issue tracker](https://docs.coderabbit.ai/guides/setup-best-practices#issues). #### Auto Apply Labels @@ -604,8 +604,8 @@ Set the commit status to 'pending' when the review is in progress and 'success' Activate this setting to disallow CodeRabbit from caching your repository's code and dependencies. This forces CodeRabbit to download the code and dependencies fresh from the repository for every code review that it performs. When caching is allowed, then CodeRabbit stores a cache of code and metadata from -your repostory for up to seven days after its most recent code review. This cache -lets CodeRabbit save time and effort in between subsquent reviews of the same +your repository for up to seven days after its most recent code review. This cache +lets CodeRabbit save time and effort in between subsequent reviews of the same repository. For more information, see [Caching](/reference/caching/). We recommend leaving this setting off, which allows caching, and can speed up @@ -902,14 +902,14 @@ For more information, see [Speed up reviews by adding path filters](https://docs -Path instructions are additional sets of instructions, expressed in natural lanaguge, -that you provide to CodeRabbit for reveiwing certain files in your repository. +Path instructions are additional sets of instructions, expressed in natural language, +that you provide to CodeRabbit for reviewing certain files in your repository. -You associate each set of instuctions with a file path relative to the root +You associate each set of instructions with a file path relative to the root of your repository. Your path specification can use extended glob patterns. The following example defines a set of path instructions for all TypeScript -and JavaScript files in a reposistory's `src` directory: +and JavaScript files in a repository's `src` directory: @@ -919,17 +919,17 @@ and JavaScript files in a reposistory's `src` directory: ```yaml path_instructions: - path: src/**/*.{ts,tsx,js} - instructions: - - Review the React.js/TypeScript/JavaScript code for best practices - - Check for common security vulnerabilities such as: - - SQL Injection - - Insecure dependencies - - Sensitive data exposure + instructions: | + - Review the React.js/TypeScript/JavaScript code for best practices + - Check for common security vulnerabilities such as: + - SQL Injection + - Insecure dependencies + - Sensitive data exposure ``` -For further examples of path instructions specific to various programming langauges, +For further examples of path instructions specific to various programming languages, see [the `awesome-coderabbit` public repository](https://github.com/coderabbitai/awesome-coderabbit/tree/main/configs). #### Poem @@ -1398,7 +1398,7 @@ We recommend leaving this option enabled. A list of branches that CodeRabbit performs automatic code reviews on, other -than the reposiorty's main branch (usually `main` or `master`.) +than the repository's main branch (usually `main` or `master`.) For example, if you add `staging` as a base branch, then CodeRabbit automatically reviews pull requests on both your repository's default branch and its `staging` branch. @@ -1976,6 +1976,100 @@ Specify the Jira project keys to use for the knowledge base. Specify the scope of learnings to use for the knowledge base. 'local' uses the repository's learnings, 'global' uses the organization's learnings, and 'auto' uses repository's learnings for public repositories and organization's learnings for private repositories. +### Code guidelines + +You can define a list of paths that guide CodeRabbit to your organization's code guidelines. +If you do, then CodeRabbit applies these guidelines to its code reviews. For more +information, see [Code Guidelines](/integrations/knowledge-base#code-guidelines). + +#### Enable code guidelines + + + + + + + + + + + + + +
LocationKnowledge Base > Enabled
Defaulttrue
+
+ + + + + + + + + + + + + + + +
Field`knowledge_base.code_guidelines.enabled`
Datatypeboolean
Default`true`
+
+
+ +Enable CodeRabbit to enforce your organization's coding standards during reviews. + +#### File patterns + + + + + + + + + + + + + +
LocationKnowledge Base > File Patterns
Default_No patterns_
+
+ + + + + + + + + + + + + + + +
Field`knowledge_base.code_guidelines.filePatterns`
Datatypearray
Default`[]`
+
+
+ +A list of path specifications to your repository's coding guideline documents, relative +to the root of your repository. Fileglob matching is allowed. Paths are case-sensitive. + +If the code guidelines feature is enabled, then CodeRabbit applies code-guideline +documents found at the following paths, in addition to any paths that you define: + +- `**/.cursorrules` +- `.github/copilot-instructions.md` +- `**/CLAUDE.md` +- `**/GEMINI.md` +- `**/.cursor/rules/*` +- `**/.windsurfrules` +- `**/.clinerules/*` +- `**/.rules/*` +- `**/AGENT.md` + ### Linear #### Enable Linear diff --git a/docs/reference/yaml-template.md b/docs/reference/yaml-template.md index 9fac39e2..99fafa34 100644 --- a/docs/reference/yaml-template.md +++ b/docs/reference/yaml-template.md @@ -31,6 +31,7 @@ reviews: collapse_walkthrough: false changed_files_summary: true sequence_diagrams: true + estimate_code_review_effort: true assess_linked_issues: true related_issues: true related_prs: true diff --git a/docs/self-hosted/bitbucket.md b/docs/self-hosted/bitbucket.md index 92c539f8..9d20ec39 100644 --- a/docs/self-hosted/bitbucket.md +++ b/docs/self-hosted/bitbucket.md @@ -157,18 +157,18 @@ cat coderabbit.json | docker login -u _json_key --password-stdin us-docker.pkg.d docker pull us-docker.pkg.dev/coderabbitprod/self-hosted/coderabbit-agent:latest ``` -### Verify the image is up +## Host the image -You can query `/health` endpoint to verify that the `coderabbit-agent` service is up and running. +You can host the image on a server, serverless function, or container environment and expose port `8080`. Run the Docker image with the equivalent command on your chosen platform, ensuring you replace the `.env` file path with the path to your actual `.env` file: ```bash -curl 127.0.0.1:8080/health +docker run --env-file .env --publish 127.0.0.1:8080:8080 us-docker.pkg.dev/coderabbitprod/self-hosted/coderabbit-agent:latest ``` -## Host the image +### Verify the image is up -You can host the image on a server, serverless function, or container environment and expose port `8080`. Run the Docker image with the equivalent command on your chosen platform, ensuring you replace the `.env` file path with the path to your actual `.env` file: +You can query `/health` endpoint to verify that the `coderabbit-agent` service is up and running. ```bash -docker run --env-file .env --publish 127.0.0.1:8080:8080 us-docker.pkg.dev/coderabbitprod/self-hosted/coderabbit-agent:latest +curl 127.0.0.1:8080/health ``` diff --git a/docs/self-hosted/gitlab.md b/docs/self-hosted/gitlab.md index 26ad309d..1e8121cf 100644 --- a/docs/self-hosted/gitlab.md +++ b/docs/self-hosted/gitlab.md @@ -203,18 +203,18 @@ cat coderabbit.json | docker login -u _json_key --password-stdin us-docker.pkg.d docker pull /coderabbit-agent:latest ``` -### Verify the image is up +## Host the image -You can query `/health` endpoint to verify that the coderabbit-agent service is up and running. +You can host the image on a server, serverless function, or container environment and expose port `8080`. Run the Docker image with the equivalent command on your chosen platform, ensuring you replace the `.env` file path with the path to your actual `.env` file: ```bash -curl 127.0.0.1:8080/health +docker run --env-file .env --publish 127.0.0.1:8080:8080 /coderabbit-agent:latest ``` -## Host the image +### Verify the image is up -You can host the image on a server, serverless function, or container environment and expose port `8080`. Run the Docker image with the equivalent command on your chosen platform, ensuring you replace the `.env` file path with the path to your actual `.env` file: +You can query `/health` endpoint to verify that the coderabbit-agent service is up and running. ```bash -docker run --env-file .env --publish 127.0.0.1:8080:8080 /coderabbit-agent:latest +curl 127.0.0.1:8080/health ``` diff --git a/sidebars.ts b/sidebars.ts index 487a363b..31081f0c 100644 --- a/sidebars.ts +++ b/sidebars.ts @@ -127,7 +127,7 @@ const sidebars: SidebarsConfig = { { type: "category", collapsed: true, - label: "Review local changes", + label: "IDE extensions", items: [ "guides/about-vscode", "guides/install-vscode", @@ -137,6 +137,12 @@ const sidebars: SidebarsConfig = { "guides/uninstall-vscode", ], }, + { + type: "category", + collapsed: true, + label: "Context enrichment", + items: ["context-enrichment/mcp-server-integrations"], + }, { type: "category", collapsed: true, @@ -226,7 +232,6 @@ const sidebars: SidebarsConfig = { "overview/why-coderabbit", "faq", "early-access", - "future-development", "changelog", ], }, diff --git a/static/schema/schema.v2.json b/static/schema/schema.v2.json index a84d875a..56e4b78d 100644 --- a/static/schema/schema.v2.json +++ b/static/schema/schema.v2.json @@ -327,7 +327,7 @@ "type": "string" }, "default": [], - "description": "Restrict automatic reviews to only those pull requests that match one of the specified labels." + "description": "List of labels to control which PRs/MRs to review. Labels starting with '!' are negative matches. Examples: ['bug', 'feature'] - reviews PRs with 'bug' OR 'feature' label. ['!wip'] - reviews all PRs except those with 'wip' label. ['bug', '!wip'] - reviews PRs with 'bug' label but not if they have 'wip' label." }, "drafts": { "type": "boolean", @@ -1063,6 +1063,19 @@ "additionalProperties": false, "default": {}, "description": "checkmake is a linter for Makefiles." + }, + "osvScanner": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "default": true, + "description": "Enable OSV Scanner | OSV Scanner is a tool for vulnerability package scanning | v2.1.0" + } + }, + "additionalProperties": false, + "default": {}, + "description": "OSV Scanner is a tool for vulnerability package scanning." } }, "additionalProperties": false, @@ -1077,6 +1090,11 @@ "chat": { "type": "object", "properties": { + "art": { + "type": "boolean", + "default": true, + "description": "Generate art in response to chat messages. CodeRabbit expresses emotions as either ASCII or Emoji art." + }, "auto_reply": { "type": "boolean", "default": true, @@ -1240,6 +1258,27 @@ }, "additionalProperties": false, "default": {} + }, + "mcp": { + "type": "object", + "properties": { + "usage": { + "type": "string", + "enum": ["auto", "enabled", "disabled"], + "default": "auto", + "description": "MCP | Enable the MCP knowledge base integration. 'auto' disables the integration for public repositories." + }, + "disabled_servers": { + "type": "array", + "items": { + "type": "string" + }, + "default": [], + "description": "MCP Disabled Servers | Specify MCP server labels to disable (case-insensitive). These servers will be excluded from reviews and knowledge base queries." + } + }, + "additionalProperties": false, + "default": {} } }, "additionalProperties": false, diff --git a/tailwind.config.js b/tailwind.config.js index b24582d0..dd081f63 100644 --- a/tailwind.config.js +++ b/tailwind.config.js @@ -21,7 +21,7 @@ module.exports = { preflight: false, // disable Tailwind's reset }, content: ["./src/**/*.{js,jsx,ts,tsx}", "../docs/**/*.mdx"], // my markdown stuff is in ../docs, not /src - darkMode: ["class", '[data-theme="dark"]'], // hooks into docusaurus' dark mode settigns + darkMode: ["class", '[data-theme="dark"]'], // hooks into docusaurus' dark mode settings theme: { fontFamily: { figtree: ["Figtree", "sans-serif"],