-
Notifications
You must be signed in to change notification settings - Fork 30
Expand and refactor the code-review docs #355
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
jmacdotorg
wants to merge
11
commits into
main
Choose a base branch
from
split-commands
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+422
−60
Open
Changes from all commits
Commits
Show all changes
11 commits
Select commit
Hold shift + click to select a range
d6ff746
Split the current chat commands page into three pages: a reference page,
jmacdotorg c20141c
Small fixes
jmacdotorg 5599b53
Add the `summary` command. Clarify what `ignore` does.
jmacdotorg 4e55b6a
Add the pro-plan banner to the generation page.
jmacdotorg b649449
Specifcy code block style
jmacdotorg 40d6c7d
Merge branch 'main' into split-commands
jmacdotorg 4b5263e
A few rewords, on Aravind's suggestion.
jmacdotorg e30d68e
Merge branch 'split-commands' of https://github.com/coderabbitai/code…
jmacdotorg 686274a
Merge branch 'main' into split-commands
jmacdotorg ce799ab
Make changes suggested by Howon, includiing some significant clarific…
jmacdotorg 180c7ba
Merge branch 'split-commands' of https://github.com/coderabbitai/code…
jmacdotorg File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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. | ||
jmacdotorg marked this conversation as resolved.
Show resolved
Hide resolved
|
||
- 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). | ||
|
||
jmacdotorg marked this conversation as resolved.
Show resolved
Hide resolved
|
||
## 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. | ||
|
||
jmacdotorg marked this conversation as resolved.
Show resolved
Hide resolved
|
||
## 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. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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. | ||
|
||
jmacdotorg marked this conversation as resolved.
Show resolved
Hide resolved
|
||
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 chat bot 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) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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). |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.