Address GitHub PR review feedback. Use when responding to reviewers, resolving threads, or handling review comments.
Responds to GitHub PR review comments by applying fixes and managing thread resolutions.
npx claudepluginhub tenzir/claude-pluginsThis skill inherits all available tools. When active, it can use any tool Claude has access to.
Best practices for responding to GitHub PR review comments and resolving threads.
When addressing a review comment, decide the appropriate action:
For straightforward fixes where the change speaks for itself:
Just fix the code and resolve the thread with a commit reference.
For fixes that need brief explanation:
Reply with a short explanation, then resolve.
For comments requiring clarification:
Ask clarifying questions before implementing.
When you believe the current approach is correct:
Bad:
Thank you so much for catching this! You're absolutely right that this could cause issues. I've updated the code to use parameterized queries as you suggested. Let me know if you have any other concerns!
Good:
Fixed in abc1234. Using parameterized queries now.
Bad:
I thought about this a lot and I really think the current approach is better because it feels more natural to me.
Good:
Kept the current approach because it handles the edge case in line 45 where
configcan be undefined. The suggested change would require additional null checks upstream.
When a reviewer catches a real issue:
Good catch. Fixed in abc1234.
When partially agreeing:
Agreed on the naming. Kept the structure since it matches the pattern in
OtherClass.
When you disagree with feedback:
Example:
I see the concern about complexity. Kept the current approach because:
- It handles the concurrent access case (line 78-82)
- Matches the pattern used in
similar_module.tsOpen to refactoring if there's a simpler way to handle the concurrency.
Resolve threads when:
Do NOT resolve:
Reply to a thread:
gh api graphql -f query='
mutation {
addPullRequestReviewThreadReply(input: {
pullRequestReviewThreadId: "PRRT_xxx"
body: "Fixed in abc1234."
}) { comment { id } }
}'
Resolve a thread:
gh api graphql -f query='
mutation {
resolveReviewThread(input: {
threadId: "PRRT_xxx"
}) { thread { isResolved } }
}'
Get thread ID from comment:
The thread ID format is PRRT_xxx (PR Review Thread). When processing GIT-*
findings from the GitHub reviewer, the thread ID is included in the finding
metadata.
Simple fix:
Fixed in {commit_sha}.
Fix with context:
Fixed in {commit_sha}. Using {approach} because {reason}.
Multiple related fixes:
Addressed in {commit_sha}:
- Fixed null check (line 45)
- Added validation (line 52)
Deferred action:
Tracking in #{issue_number}. Out of scope for this PR.
When addressing multiple related comments:
This keeps the commit history clean and makes it easy for reviewers to verify all their feedback was addressed.
Activates when the user asks about AI prompts, needs prompt templates, wants to search for prompts, or mentions prompts.chat. Use for discovering, retrieving, and improving prompts.
Search, retrieve, and install Agent Skills from the prompts.chat registry using MCP tools. Use when the user asks to find skills, browse skill catalogs, install a skill for Claude, or extend Claude's capabilities with reusable AI agent components.
Expert guidance for Next.js Cache Components and Partial Prerendering (PPR). **PROACTIVE ACTIVATION**: Use this skill automatically when working in Next.js projects that have `cacheComponents: true` in their next.config.ts/next.config.js. When this config is detected, proactively apply Cache Components patterns and best practices to all React Server Component implementations. **DETECTION**: At the start of a session in a Next.js project, check for `cacheComponents: true` in next.config. If enabled, this skill's patterns should guide all component authoring, data fetching, and caching decisions. **USE CASES**: Implementing 'use cache' directive, configuring cache lifetimes with cacheLife(), tagging cached data with cacheTag(), invalidating caches with updateTag()/revalidateTag(), optimizing static vs dynamic content boundaries, debugging cache issues, and reviewing Cache Component implementations.