Cody is your friendly neighborhood code review bot. Cody will monitor your Pull Requests for comments and updates, and make sure that the people you've called out for review have given their thumbs up on the code before it's merged.
- Report code review progress with GitHub commit statuses
- Determine list of reviewers from the Pull Request body
- Reviewers give approval by leaving a comment
- Review progress persists when the head commit of the branch changes
- Require a minimum number of reviews
- Rebuild reviews list from PR description on command
- Require 1-n reviewers be from a given a list of reviewers
- Automatically choose reviewers based on PR characteristics
- ❌ Web interface of any kind
- ❌ "Approval groups" (i.e. one of Jane or Mary could 👍).
To request a review, simply open a new PR and include your desired reviewers in the form of a GitHub task list in the PR description:
Checking off a box will make sure that reviewer won't need to approve again if the reviews list is rebuilt later.
To approve a PR, you must be a reviewer for that PR and you must leave a comment with one of the following affirmative phrases on the PR:
- LGTM
- Looks good
- Looks good to me
- 👍
You comment should be on its own line with no other text on the same line. The phrases are case-insensitive. You may include other text in your comment, but the affirmative phrase should be on its own line.
If the list of reviewers changes, either the PR author or any of the previously listed reviewers can recalculate the review list.
To recalculate the review list, leave a comment with the following text:
!rebuild-reviews
This will instruct the bot to rebuild the review list based on the task list in the PR description. Reviewers that have already checked their box will be pre-approved in the new list of reviews.
If you previously approved a PR but want to retract your approval, you can do the following:
- Uncheck your check box in the task list in the PR description
- Issue the
!rebuild-reviews
command
Cody will rebuild the reviews list from the task list, and count you as unapproved because your check box is not checked.
MIT.