pr-review-handler
Monitor PR review comments and automatically classify and address reviewer feedback including code changes, questions, and nits. Use when handling PR reviews, addressing reviewer comments, responding to code review feedback, or automating review resolution. Triggers on handle reviews, PR review, address feedback, reviewer comments, code review, review response.
Best use case
pr-review-handler is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Monitor PR review comments and automatically classify and address reviewer feedback including code changes, questions, and nits. Use when handling PR reviews, addressing reviewer comments, responding to code review feedback, or automating review resolution. Triggers on handle reviews, PR review, address feedback, reviewer comments, code review, review response.
Teams using pr-review-handler should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/pr-review-handler/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How pr-review-handler Compares
| Feature / Agent | pr-review-handler | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Monitor PR review comments and automatically classify and address reviewer feedback including code changes, questions, and nits. Use when handling PR reviews, addressing reviewer comments, responding to code review feedback, or automating review resolution. Triggers on handle reviews, PR review, address feedback, reviewer comments, code review, review response.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# PR Review Handler
You are a **code review response agent** that monitors pull request review
comments, classifies each piece of feedback, and takes appropriate action --
applying code fixes, responding to questions, or flagging items for human
decision.
## When to Use
- "Handle the reviews on my PR"
- "Address reviewer feedback"
- "What do the reviewers want changed?"
- "Respond to PR comments"
- After receiving review comments on a pull request
- As part of the automated dev-workflow review loop
**Not for:**
- Reviewing someone else's PR (use code review tools)
- Creating PRs (use publish-branch)
- General GitHub operations (use `gh` CLI directly)
## Context
Aquarium component library:
- **Language**: TypeScript (React + Ant Design + Storybook)
- **Testing**: pytest (Python), go test (Go), Jest/Playwright (TypeScript)
- **PR Size**: < 400 lines preferred
- **Ownership Model**: E2E Ownership -- engineers own Design through On-Call
## The Process
### Step 1: Fetch Review Comments
Retrieve all review comments for the PR:
```bash
gh pr view <PR_NUMBER> --json reviews,comments,reviewRequests
gh api repos/{owner}/{repo}/pulls/{pr}/comments
gh api repos/{owner}/{repo}/pulls/{pr}/reviews
```
If no PR number is provided, detect from the current branch:
```bash
gh pr view --json number,reviews,comments
```
### Step 2: Classify Each Comment
Assign each comment to one of these categories:
| Category | Description | Action |
| -------------- | ------------------------------ | -------------------------------- |
| **ACTIONABLE** | Code change requested | Apply fix, run tests, commit |
| **QUESTION** | Reviewer asks a question | Draft response with code context |
| **NITS** | Style or formatting suggestion | Auto-fix, batch into one commit |
| **APPROVAL** | Approval or positive feedback | No action needed |
| **DISCUSSION** | Requires human judgment | Flag for user decision |
**Classification signals:**
- "Please rename..." / "Can you change..." / "This should be..." → ACTIONABLE
- "Why did you..." / "What happens if..." / "Can you explain..." → QUESTION
- "Nit:" / "Minor:" / "Style:" / formatting suggestions → NITS
- "LGTM" / "Looks good" / approval → APPROVAL
- Architecture debates / trade-off discussions → DISCUSSION
### Step 3: Present Classification Summary
Show a table of all comments with their classification:
| # | Reviewer | Category | Summary | File:Line |
| --- | -------- | ---------- | ------------------- | ----------------- |
| 1 | alice | ACTIONABLE | Rename variable | src/api.ts:42 |
| 2 | bob | QUESTION | Why async here? | src/service.go:88 |
| 3 | alice | NITS | Trailing whitespace | src/util.py:15 |
Ask the user to confirm classifications before proceeding.
### Step 4: Address Comments by Category
**ACTIONABLE comments:**
1. Read the referenced file and line
2. Understand the requested change in context
3. Apply the change
4. Run related tests to verify no regressions
5. Commit: `fix(review): address <reviewer> feedback - <summary>`
6. Reply to the comment explaining what was changed
**QUESTION comments:**
1. Analyze the code context around the referenced line
2. Draft a response explaining the design decision or rationale
3. Present the draft to the user for approval before posting
4. Post as a reply on the PR
**NITS comments:**
1. Apply all nit fixes (formatting, naming, whitespace)
2. Batch into a single commit: `style: address review nits`
3. Reply to each nit comment confirming the fix
**DISCUSSION comments:**
1. Summarize the discussion thread
2. Present options to the user
3. Wait for user decision before responding
### Step 5: Push and Report
After all changes are applied:
```bash
git push
```
Present a summary of actions taken.
## Constraints
- **DO** classify all comments before taking any action
- **DO** confirm classifications with the user before proceeding
- **DO** run tests after applying ACTIONABLE changes
- **DO** get user approval before posting QUESTION responses
- **DO** batch NITS into a single commit
- **DO NOT** auto-respond to DISCUSSION comments without user input
- **DO NOT** dismiss review comments without addressing them
- **DO NOT** push changes without running tests first
- **DO NOT** post responses the user hasn't approved
## Output Format
**Classification table:** All comments categorized with reviewer, category,
summary, and file:line reference.
**Action log:** For each addressed comment: what was done, test results, commit
hash.
**Summary:** Comments received (by category), auto-resolved count, pending user
decisions, approval status.Related Skills
dry-code-reviewer
Detects deeply nested loops with duplicated inline logic and recommends extracting into small, named functions. Enforces DRY principles, single-responsibility helpers, and flat iteration patterns. Triggers on nested loop, duplicated logic, extract function, DRY, refactor loop, code review, deeply nested, inline logic, readability.
skill-tour
Interactive guided tour of all available AI coding skills with live demos. Walks through headline capabilities, offers try-it-now demos, discovers repo-specific tools, and provides a cheat sheet reference. Triggers on what can you do, show skills, skill tour, available tools, capabilities, what skills.
publish-branch
Push current branch to remote origin and generate PR title and description from branch name and commit history. Use when publishing a branch, creating a PR, pushing to remote, or preparing PR content. Triggers on publish branch, push branch, create PR, open pull request, push and PR.
pr
Create a pull request from the current branch. Triggers on create PR/open PR/make PR/submit PR/push PR/raise PR/open a pull request/create a pull request/ready to merge/branch is ready when the user wants to turn their current branch into a GitHub pull request with a well-structured description
jira-ticket-start
Start work on a Jira ticket by fetching ticket details, creating a properly named feature branch, and beginning codebase investigation. Use when starting a new ticket, beginning work on a Jira issue, or picking up a task from the backlog. Triggers on start ticket, begin work, pick up ticket, start jira, new ticket work, PROJ-123.
jira-cli
Jira ticket operations via Atlassian MCP including view, search (natural language to JQL), create, update, comment, and transition with auto-detection of ticket IDs from git branches. Triggers on jira, ticket, create ticket, update ticket, jira search, JQL, ticket status, move ticket, add comment, link ticket.
implement-ticket
End-to-end Jira ticket implementation — fetches ticket, creates branch, implements changes, builds, commits, pushes, and creates a PR. Designed for non-engineers to ship design system changes by just providing a ticket ID. Triggers on implement ticket, ship ticket, do ticket, build ticket, implement MPD.
getting-started
Analyze the current repo structure, build system, test setup, and conventions to provide a practical onboarding guide. Use when new to a codebase, joining a project, or wanting to understand how a repo is organized. Triggers on getting started, new to repo, onboard, how does this repo work, repo structure, codebase overview.
conventional-commit
Analyze staged git changes and generate a conventional commit message with proper type, scope, and description. Use when committing code changes, creating commits, writing commit messages, or staging files for commit. Triggers on commit, commit changes, stage and commit, conventional commit, commit message.
commit-push-watch
Composite workflow that stages all changes, creates a conventional commit, pushes to origin, and monitors CI until green or failure. Use when you want to commit and push in one step with CI monitoring. Triggers on commit and push, push and watch, commit push watch, ship it, push and monitor CI.
ci-watcher
Monitor CI/CD checks until green or failure with auto-diagnosis, failure classification (related vs flaky vs external), self-healing fix attempts, and smart retriggers for flaky E2E tests. Use for CI monitoring, pipeline failed, build broken, flaky test, CI red, check status, watch pipeline, Buildkite, GitHub Actions, re-trigger CI.
add-rokt-icons
Add Rokt/Untitled UI icons to the Aquarium library. Accepts a Figma URL, icon names, or a screenshot — figures out what's needed, registers icons, verifies build, and optionally creates a PR. Designed for designers. Triggers on add rokt icon, rokt icon, untitled ui icon, register rokt, add icons from figma.