templates/skills/pr-comments/SKILL.md
Review and address PR review comments. Fetches comments from a GitHub PR, presents them in a structured table, and asks the user which to address before making any code changes. Use when the user says "check PR comments", "address review feedback", "fix PR comments", or "pr-comments".
npx skillsauth add samwang0723/claudecode-setup pr-commentsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Fetch, review, and optionally address PR review comments with user approval.
Parse the user's input after /pr-comments:
| Input | Action |
|-------|--------|
| <number> | Use PR #number in the current repo |
| <owner/repo#number> | Use a specific repo's PR |
| (empty) | Auto-detect from current branch (gh pr view --json number) |
# If no PR number given, detect from current branch:
gh pr view --json number,title,url --jq '{number: .number, title: .title, url: .url}'
# If PR number given:
gh pr view <number> --json number,title,url --jq '{number: .number, title: .title, url: .url}'
If no PR is found, tell the user and stop.
gh api repos/{owner}/{repo}/pulls/{number}/comments --jq '.[] | {
id: .id,
path: .path,
line: (.line // .original_line),
author: .user.login,
body: .body,
created: .created_at
}'
Also fetch PR review body comments (top-level review summaries):
gh api repos/{owner}/{repo}/pulls/{number}/reviews --jq '.[] | select(.body != "") | {
id: .id,
author: .user.login,
state: .state,
body: .body
}'
If no comments found, tell the user "No review comments found on PR #N" and stop.
Display ALL comments in a numbered table for the user to review:
PR #134: feat: add prompt injection guard
https://github.com/owner/repo/pull/134
| # | File:Line | Author | Comment (summary) | Suggestion? |
|---|-----------|--------|-------------------|-------------|
| 1 | guard.go:78 | reviewer | Merge hits instead of picking by length | Yes |
| 2 | pipeline.go:91 | reviewer | Hardcoded English for blocked queries | No |
| 3 | search.go:91 | reviewer | Return value type instead of pointer | Yes |
...
For each comment:
suggestion block)DO NOT start coding. Ask the user first:
Which comments should I address? Options:
- "all" — address every comment
- "1,3,5" — address specific numbers
- "skip" — skip, don't change anything
- "1,3,5 skip 2,4" — address some, explicitly skip others
Wait for the user's response before proceeding.
For each comment the user selected:
suggestion block exists, prefer using it as-isgo build ./... (or equivalent for the language)After ALL selected fixes are applied:
MUST run tests before committing. Choose based on what changed:
| What changed | Verification command |
|-------------|---------------------|
| Go code | go test -race ./path/to/changed/package/... |
| Python scripts | python3 scripts/<changed_script>.py (if it has a test mode) |
| Any Go code | go build ./... (at minimum) |
| Search logic | python3 scripts/eval_accuracy.py if available |
| Project has make test | make test |
If the project has a /regression skill, suggest running it.
Report test results to the user. If tests fail, fix before committing.
Only after tests pass:
git add <changed files>
git commit -m "fix: address PR #N review comments — <brief summary>"
git push
development
Generate a technical specification document using the DDD template in template.md. Use when the user says 'write tech spec', 'create tech spec', 'technical specification', or needs a structured design document for a new feature or major change covering architecture, domain models, APIs, data design, security, and operations.
testing
Write a Product Requirements Document (PRD) using the standard TMAB template with stakeholders, user stories (Given-When-Then), success metrics, and A/B testing plans. Use when the user asks to write a PRD, create product requirements, document a feature spec, or plan a new product feature.
data-ai
Clean up an agent team. Removes team resources, optionally cleans worktrees and branches. Use after team work is complete and merged. Use when told to "stop team", "cleanup team", "disband team".
testing
Check progress of an active agent team. Shows member status, completed tasks, pending work, and any messages. Use when asked "team status", "how's the team", "check team progress", "team update".