Enhance /pr-comments to filter unresolved conversations using GraphQL
Resolved 💬 3 comments Opened Feb 1, 2026 by avshyz Closed Mar 2, 2026
Problem
/pr-comments currently uses the REST API which doesn't expose the "resolved" state of review threads. When users click "Resolve conversation" on GitHub, there's no way to filter those out.
Solution
Use GitHub's GraphQL API which has isResolved on reviewThreads:
{
repository(owner: "...", name: "...") {
pullRequest(number: N) {
reviewThreads(first: 100) {
nodes {
isResolved
comments(first: 10) {
nodes { body, path, line, author { login }, diffHunk }
}
}
}
}
}
}
Proposed UX
/pr-comments # all comments (current behavior)
/pr-comments unresolved # only isResolved == false
/pr-comments resolved # only isResolved == true
Notes
- REST API (
/repos/{owner}/{repo}/pulls/{number}/comments) lacks resolution state - GraphQL
reviewThreads.isResolvedmaps to the "Resolve conversation" button in GitHub UI
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗