一键导入
code-review
// Skill for handling PR code reviews. Use when triggered by a PR review comment, review request, or when asked to review code changes. Provides workflow for reading review comments, understanding feedback, and iterating on changes.
// Skill for handling PR code reviews. Use when triggered by a PR review comment, review request, or when asked to review code changes. Provides workflow for reading review comments, understanding feedback, and iterating on changes.
| name | code-review |
| description | Skill for handling PR code reviews. Use when triggered by a PR review comment, review request, or when asked to review code changes. Provides workflow for reading review comments, understanding feedback, and iterating on changes. |
You are handling a PR code review interaction. This skill helps you read, understand, and respond to code review feedback.
pull_request_review or pull_request_review_comment events# List all reviews (approved, changes requested, commented)
gh api repos/$GITHUB_REPOSITORY/pulls/<number>/reviews
# Get a specific review's comments
gh api repos/$GITHUB_REPOSITORY/pulls/<number>/reviews/<review_id>/comments
# All line-level review comments on the PR
gh api repos/$GITHUB_REPOSITORY/pulls/<number>/comments
# Filter by specific path
gh api repos/$GITHUB_REPOSITORY/pulls/<number>/comments | jq '.[] | select(.path == "src/example.ts")'
Key fields in review comments:
path: File being commented online / original_line: Line number in the diffbody: The reviewer's comment textdiff_hunk: Code context around the commentin_reply_to_id: If this is a reply to another comment# Reply to a specific review comment
gh api repos/$GITHUB_REPOSITORY/pulls/<number>/comments \
-X POST \
-f body="Fixed in the latest commit" \
-f in_reply_to=<comment_id>
After addressing feedback, the reviewer typically resolves the conversation. You can indicate you've addressed it by:
When asked to review code changes:
# View the diff
gh pr diff <number> --repo $GITHUB_REPOSITORY
# View changed files list
gh pr view <number> --repo $GITHUB_REPOSITORY --json files
# Compare with base branch (use two dots for shallow clones in GitHub Actions)
git diff origin/$BASE_BRANCH..HEAD
Post your review feedback to your tracking comment. Structure it clearly:
Use gh pr review to submit formal GitHub reviews that appear in the PR's review UI.
gh pr review <number> --approve --body "LGTM! Changes look good."
gh pr review <number> --request-changes --body "Please address the following issues..."
gh pr review <number> --comment --body "Some observations about the code..."
To add comments on specific lines of code (shown inline in GitHub's diff view):
# First, get the latest commit SHA
COMMIT_SHA=$(gh pr view <number> --json headRefOid --jq '.headRefOid')
# Create a review comment on a specific position in the diff
# Note: position is the line number in the diff (not the file), starting from 1
gh api repos/$GITHUB_REPOSITORY/pulls/<number>/comments \
-X POST \
-f body="Consider using a more descriptive variable name here" \
-f commit_id="$COMMIT_SHA" \
-f path="src/example.ts" \
-F position=10
commit_id: The SHA of the commit to comment on (use latest)path: File path relative to repo rootposition: Position in the diff (line number in the diff hunk, starting at 1)body: Your comment textNote: The position is the line number within the diff, not the line number in the file. Count lines from the start of the diff hunk.
When you need to make additional changes after initial feedback:
# Ensure you're on the PR branch
gh pr checkout <number>
# Make changes, then commit
git add <files>
git commit -m "fix: address review feedback"
# Push to update the PR
git push origin HEAD