← ClaudeAtlas

padosoft-pr-review-triagelisted

Use this skill when a pull request has comments from an automated reviewer — GitHub Copilot, Codex, CodeRabbit, Advanced Security — and the user wants them processed: "copilot review", "the bot comments on the PR", "address the review", "fix the Codex findings", or simply "there are 14 comments on PR 212, sort them out". It reads every bot comment, sorts them into must-fix / worth-fixing / negligible / bot-is-wrong, gets the categorisation approved before touching code, applies only the approved fixes, replies to each comment on GitHub, and proposes a new project rule when the bot found a real bug the project checks would have missed. Do not use it for a human reviewer's comments, for a single comment, or to write the code review itself.
padosoft/skills · ★ 1 · AI & Automation · score 80
Install: claude install-skill padosoft/skills
# PR review triage A bot review is a list of *candidates*, not a task list. Applying all of it produces changes nobody asked for; ignoring all of it loses the real bugs. This skill separates the two, with the user deciding in the middle. **The rule that makes it work: never touch code before the categorisation is approved.** --- ## 1. Collect | Item | How | |---|---| | PR number | Ask, if not given | | Repository | `gh repo view --json nameWithOwner --jq '.nameWithOwner'` | | Current branch | `git branch --show-current` — confirm it is the PR's branch | ```bash # inline review comments gh api repos/{owner}/{repo}/pulls/{PR}/comments --jq ' [.[] | {id, user: .user.login, type: .user.type, path, line, body, in_reply_to_id}]' # general PR comments gh pr view {PR} --json comments ``` Bots post under several logins — `copilot`, `copilot-pull-request-reviewer[bot]`, `github-advanced-security[bot]`, `chatgpt-codex-connector[bot]`, `coderabbitai[bot]`. **Do not filter on one name.** Take everything where `user.type == "Bot"`, then decide by content. Missing a comment is worse than reading one too many. Read the **whole thread**: a comment with `in_reply_to_id` may already be answered or superseded. ### Getting the complete set, which is harder than it looks - **Paginate to exhaustion.** A threads query without following the page cursor silently returns the first page and nothing else, so actionable threads beyond it never reach you. Over REST the same applies: withou