From chad-tools
Reply to GitHub PR review comments explaining how each was addressed, then resolve the conversations. Use when the user says "address review feedback", "resolve conversations", "reply to review comments", or after pushing fixes for PR review findings.
How this skill is triggered — by the user, by Claude, or both
Slash command
/chad-tools:resolve-reviewshaikuThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Reply to and resolve PR review comments on the current branch's PR.
Reply to and resolve PR review comments on the current branch's PR.
Identify the PR number:
gh pr view --json number --jq '.number'
Get all review comments with their IDs, file paths, and bodies:
gh api repos/{owner}/{repo}/pulls/{pr}/comments --jq '.[] | {id: .id, path: .path, line: .line, body: .body, author: .user.login}'
Get the repo owner and name:
gh repo view --json owner,name --jq '{owner: .owner.login, name: .name}'
For each comment, determine its disposition:
There is no "acknowledged" or "will look at later" disposition. Every comment must be either fixed, rejected with a reason, or tracked in an issue. If a comment is not yet addressed and it's valid, fix it before resolving the thread.
Reply to each comment via the API:
gh api repos/{owner}/{repo}/pulls/{pr}/comments/{id}/replies -f body="..."
flock(LOCK_EX|LOCK_NB) to eliminate the TOCTOU race."Resolve all unresolved review threads:
gh api graphql -f query='{
repository(owner: "{owner}", name: "{repo}") {
pullRequest(number: {pr}) {
reviewThreads(first: 50) {
nodes { id isResolved comments(first: 1) { nodes { body } } }
}
}
}
}' --jq '.data.repository.pullRequest.reviewThreads.nodes[] | select(.isResolved == false) | .id'
gh api graphql -f query='mutation { resolveReviewThread(input: {threadId: "{id}"}) { thread { isResolved } } }'Summarize what was done:
npx claudepluginhub metcalfc/claude-plugin --plugin chad-toolsProcesses PR review feedback by analyzing comments, implementing fixes, committing, pushing, replying on GitHub, and resolving threads. Triggered by /pr-respond or relevant queries.
Posts replies to unreplied GitHub PR review comments after feedback evaluation and fixes. Filters root comments, deduplicates, resolves threads by default.
Reads open GitHub PR review comments, triages by severity, applies code fixes, and drafts replies. Use when addressing PR feedback or code review.