agentsclimarketplace

Pr comment triage

Skill Fyzel/claude-skills/skills/pr-comment-triage

Triage and resolve pull-request review comments end to end — fetch reviewer comments (especially GitHub Copilot automated review), fix each one in code, run the project's tests, then post a threaded reply under each original comment by its comment ID. Use this skill whenever the user says "check the Copilot comment(s) on PR N", "address the review comments", "reply to the review comments", "resolve PR feedback", "handle the PR comments", or asks to go through a reviewer's findings on a pull request. Works for any reviewer (Copilot, humans, bots) and any language or repo. Requires the `gh` CLI to be authenticated.From its SKILL.md

Install
npx -y skills add Fyzel/claude-skills --skill pr-comment-triage

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

3 things to look at

  • 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
  • runs commandsInstructs the agent to run 8 commands, including `gh auth status` and 7 more.
  • fetches URLsInstructs the agent to fetch 2 URLs, including repos/OWNER/REPO/pulls/PR/comments and 1 more.

SKILL.md

5.5 KB, ~1.1k tokens by cl100k_base, as published. Nobody here has run it

PR Comment Triage

Resolve pull-request review comments in one pass: fetch → fix → test → reply threaded. Built for GitHub Copilot's automated review, but works for any reviewer and any project.

When to use

User asks to look at, address, or reply to review comments on a PR. Phrases like "check the Copilot comment on PR 67", "reply to the review comments", "resolve the PR feedback".

Prerequisites

  • gh CLI authenticated — verify with gh auth status.
  • The PR number. If not given, derive it: gh pr view --json number -q .number (current branch) or gh pr list.
  • The repo slug OWNER/REPO. Don't hardcode it — derive it: gh repo view --json nameWithOwner -q .nameWithOwner.

Workflow

1. Fetch the comments

Get inline review comments with their IDs (the ID is required to reply in-thread):

gh api repos/OWNER/REPO/pulls/PR/comments \
  --jq '.[] | {id, user: .user.login, path, line, body}'

For PR-level (non-inline) review summaries, also check:

gh pr view PR --json reviews --jq '.reviews[] | {author: .author.login, state, body}'

Filter to the reviewer the user named (e.g. Copilot) if they specified one. Otherwise handle all unresolved comments.

2. Summarize before acting

Present a short table: file:line → problem → proposed fix. Group real bugs vs. doc/test gaps vs. nits. Get the user's go-ahead unless they already said "fix them".

3. Fix each comment

  • Read the cited file at the cited line before editing — line numbers from the API are against the PR head commit and may have drifted.
  • Make the smallest correct change that addresses the comment.
  • Distinguish: code bug (fix it), missing test (add a regression test that locks in the behaviour), misleading doc/docstring (correct it), nit (fix or note why skipping).

4. Verify

Run the project's own tests for the touched area before replying, so replies are truthful. Detect the test command from the repo rather than assuming one — common cases:

Signal in repoTest command
pytest.ini / pyproject.toml / tests/ (Python)pytest -q (use the project venv if present, e.g. .venv/Scripts/python.exe -m pytest on Windows, .venv/bin/pytest on POSIX)
package.json with a test scriptnpm test (or pnpm test / yarn test)
Cargo.tomlcargo test
go.modgo test ./...
Makefile with a test targetmake test

If unsure which to run, check the project's README/CONTRIBUTING or CLAUDE.md, or ask the user. Only claim a comment is fixed after the relevant test passes.

5. Reply threaded, by comment ID

Reply under each original comment (not a new top-level comment) using the replies endpoint with the original comment's id:

gh api repos/OWNER/REPO/pulls/PR/comments/COMMENT_ID/replies \
  -f body='Concise reply: what changed and where.'

Reply rules:

  • One reply per original comment, threaded to its ID.
  • State what changed (function/file) and, for tests, name the test added.
  • Honest: if a comment was intentionally not actioned, say why instead of claiming a fix.
  • Replies are public on GitHub — confirm with the user before posting if there is any doubt.

6. Wrap up

Report which comments were fixed, tests run + result, and that replies posted. Do not commit or push unless the user asks — ask whether to commit the fixes to the PR branch.

Gotchas

  • Comment ID vs. line: the /replies endpoint needs the comment id, not the line number. Always re-fetch IDs in the same session (step 1) before replying.
  • Drifted line numbers: API line is against PR head; read the file to confirm the real location before editing.
  • Shell quoting: when running gh api ... -f body='...', use single quotes so the shell does not expand the body. On Windows/PowerShell, prefer a single-quoted string or a literal here-string; avoid mixing shells in one command.
  • Doc-sync: if a fix changes a user-facing feature, CLI, or config, also update the project's docs (README, contributor docs, wiki) as that project requires.

What ships with it: 1 file

504 B alongside SKILL.md

.claude-plugin/

Gives 0 of the 12 instructions most review quality skills give in ~1.1k tokens

Counted across 1,273 of the 2,403 authors here whose files we hold, read 2026-09-06

  • Ask one question at a timein 63 of 1273, across 62 files
  • Provide a recommended answer for each questionin 47 of 1273, across 45 files
  • Rank findings by severityin 44 of 1273
  • Use parameterized queries for database accessin 38 of 1273, across 20 files
  • Validate all user input with schemasin 33 of 1273, across 15 files
  • Store secrets in environment variablesin 32 of 1273, across 14 files
  • Explore the codebase to answer questionsin 31 of 1273, across 29 files
  • Store tokens in httpOnly cookiesin 30 of 1273, across 12 files
  • Implement rate limiting on API endpointsin 30 of 1273, across 12 files
  • Sanitize user-provided HTMLin 29 of 1273, across 11 files
  • Return generic error messages to usersin 28 of 1273, across 10 files
  • Cite file and line for every findingin 28 of 1273, across 25 files

Said here and by no other author read

  • Summarize proposed fixes in a table for user approval
  • Read the cited file before applying any edits
  • Add regression tests for missing test cases
  • Detect the project test command from repository signals
  • Run relevant tests before replying to comments
  • Reply to comments using the original comment ID

Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.