Get nicely formatted output of the last review comments on a PR. Used internally by other skills.
Scanned 9/19/2026
npx -y skills add cashew-labs/libretto --skill get-pr-reviews --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Get Pr Reviews?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/cashew-labs-get-pr-reviews)More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.
---
name: get-pr-reviews
description: Get nicely formatted output of the last review comments on a PR. Used internally by other skills.
---
Get nicely formatted review comments for a pull request, grouped by file and line with proper comment threading.
## Steps
1. **Determine PR number**: If not provided, look up the associated PR for the current branch using:
```bash
gh pr view --json number --jq '.number'
```
2. **Get formatted review comments**: Use the GitHub API to fetch and format all line-specific review comments:
```bash
gh api repos/:owner/:repo/pulls/{PR_NUMBER}/comments --jq '
group_by(.path, .line) |
map({
path: .[0].path,
line: .[0].line,
comments: sort_by(.created_at)
}) |
sort_by(.path, .line) |
map(
"**\(.path)**\n Line \(.line):" +
(.comments |
map(
if .in_reply_to_id then
" | \(.user.login): \(.body)"
else
" (\(.user.login)): \(.body)"
end
) |
join("\n")) + "\n"
) |
join("\n")
'
```
## Output Format
The formatted command produces output like:
```
**apps/api/src/handlers/optionsHandlers.ts**
Line 98: (tanishqkancharla): I think this is a bug. If you search for e.g. "blue cros", none of these search conditions will match.
| tanishqkancharla: I see that you re-query all insurances below, so this doesn't get used.
| Mochael: I think we should ditch the ilikes and just use the fuzzy search applied to planName, payer name and abbreviation
| tanishqkancharla: default to fuzzy search
**apps/api/src/handlers/optionsHandlers.ts**
Line 116: (tanishqkancharla): fyi: don't need to fix, but I think you can just do `query.where(and(...conditions, or(...searchConditions)))`
```
## Key Features
- **Grouped by file and line**: Comments are organized by their location in the code
- **Threaded conversations**: Replies are indented with `|` to show the conversation flow
- **Chronological order**: Comments within each thread are sorted by creation time
- **User attribution**: Each comment shows the GitHub username of the author
## Usage Example
```bash
# Get formatted review for PR #84
gh api repos/saffron-health/monorepo/pulls/84/comments --jq '...'
```
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!