From hb
Fetches unresolved GitHub PR review comments (Copilot + human), verifies each against current code, and classifies as Address/Skip/Optional/Discuss with rationale.
How this skill is triggered — by the user, by Claude, or both
Slash command
/hb:triage-review [PR-number-or-branch][PR-number-or-branch]The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Consume the review comments **already on a PR** — Copilot and human reviewers — and sort them into what's worth fixing and what isn't. This is judgment, not a fresh review: each comment is verified against the current code before a verdict.
Consume the review comments already on a PR — Copilot and human reviewers — and sort them into what's worth fixing and what isn't. This is judgment, not a fresh review: each comment is verified against the current code before a verdict.
Read-only. Never reply to threads, resolve conversations, or post anything. The output is a decision aid for the user.
Distinct from siblings: /code-review and /review generate new findings; this skill evaluates existing reviewer comments.
Fetch with gh — pull the PR's review comments (default to the current branch's PR). Cover both inline thread comments and top-level review summaries, from Copilot and human reviewers. Keep only unresolved threads — resolution state lives in the GraphQL reviewThreads field (isResolved), not REST pulls/comments, so reach for gh api graphql when you need to filter out resolved/outdated noise. Capture author, path, line, and body for each. No unresolved comments → report that and stop.
Verify each against current code — read the file at path:line and confirm the comment still applies. Reviewers (especially bots) comment on stale diffs and miss surrounding context. An outdated: true thread defaults toward Skip unless the concern still holds in the current code. Completion: every comment has been checked against the actual code, not judged from its text alone.
Classify each comment using the rubric below. Every verdict carries a one-line rationale grounded in what you saw in step 2.
Output the triage table — grouped Address-first (see Output). Completion: every fetched comment appears in the table with a verdict and rationale.
Offer to fix — ask whether to implement the Address items. On yes, hand them to /tdd (test-first). Don't auto-implement; don't touch Skip/Optional/Discuss items.
| Verdict | When |
|---|---|
| Address | Verified against current code as a real bug, risk, correctness gap, or clearly valid improvement. |
| Skip | Wrong, false positive, outdated (code already changed), contradicts an established codebase convention, or outside this PR's scope. Rationale must cite the evidence, not just assert it. |
| Optional | Subjective/style/preference with no correctness impact — the user's call. |
| Discuss | Valid concern needing a decision you can't make alone (product tradeoff, breaking change, architectural direction). |
user is already null-checked at line 40" beats "Skip — not applicable".## Triage: PR #<n> — <title> (<count> unresolved)
### Address (<n>)
- **`path:line`** · @author — <comment gist>
→ <rationale>
### Optional (<n>)
- ...
### Discuss (<n>)
- ...
### Skip (<n>)
- **`path:line`** · @author — <comment gist>
→ <why it doesn't apply, citing the code>
gh pr view fails → run gh auth status; if not on a PR branch, ask for the PR number.npx claudepluginhub helderberto/agent-skills --plugin hbReads open GitHub PR review comments, triages by severity, applies code fixes, and drafts replies. Use when addressing PR feedback or code review.
Triages unresolved GitHub PR review comments from bots/humans, deduplicates issues, produces severity-ordered fix plan, resolves ignored threads, and fixes others with subagents before merge.
Triages PR review comments by filtering false positives (outdated, misread, wrong context, style preference), validating against current diff, and fixing actionable ones with per-fix confirmation.