github/pr-threads-resolve/SKILL.md
Bulk resolve unresolved PR review threads. Useful after manually addressing threads or after using /pr-threads-address.
npx skillsauth add posit-dev/skills pr-threads-resolveInstall 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.
Usage: /pr-threads-resolve [PR_NUMBER]
Description: Bulk resolve unresolved PR review threads. Useful after manually addressing threads or after using /pr-threads-address.
Note: If PR_NUMBER is omitted, the command will automatically detect and use the PR associated with the current branch.
Use this command when you have already addressed PR review threads and want to bulk resolve them, or when you need to clean up threads that are no longer relevant.
/pr-threads-resolve 42
This will:
Before using this command, check if the gh pr-review extension is installed:
gh extension list | grep -q pr-review || gh extension install agynio/gh-pr-review
Enumerate all review threads with filtering:
gh pr-review threads list --pr <number> --repo <owner/repo>
Common filters:
--unresolved — Show only unresolved threads--resolved — Show only resolved threadsDisplay reviews, inline comments, and replies with full context:
gh pr-review review view --pr <number> --repo <owner/repo>
Common filters:
--reviewer <login> — Filter by specific reviewer--states <list> — Filter by review state (APPROVED, CHANGES_REQUESTED, COMMENTED, DISMISSED)--unresolved — Show only unresolved threads--not_outdated — Exclude outdated threads--tail <n> — Show only the last n replies per thread--include-comment-node-id — Include GraphQL node IDs for repliesToggle thread resolution status:
# Resolve a thread
gh pr-review threads resolve --thread-id <PRRT_...> --pr <number> --repo <owner/repo>
# Unresolve a thread
gh pr-review threads unresolve --thread-id <PRRT_...> --pr <number> --repo <owner/repo>
# Get all unresolved thread IDs and resolve them
gh pr-review threads list --pr 42 --unresolved --repo owner/repo | \
jq -r '.threads[].id' | \
xargs -I {} gh pr-review threads resolve --thread-id {} --pr 42 --repo owner/repo
Repository Context: Always include --repo owner/repo to ensure correct repository context, or run commands from within a local clone of the repository.
Thread IDs: Thread IDs (format PRRT_...) can be obtained from review view --include-comment-node-id or threads list commands.
State Filters: When using --states, provide a comma-separated list: --states APPROVED,CHANGES_REQUESTED
Unresolved Focus: Use --unresolved --not_outdated together to focus on actionable comments that need attention.
tools
Build modern Shiny dashboards and applications using bslib (Bootstrap 5). Use when creating new Shiny apps, modernizing legacy apps (fluidPage, fluidRow/column, tabsetPanel, wellPanel, shinythemes), or working with bslib page layouts, grid systems, cards, value boxes, navigation, sidebars, filling layouts, theming, accordions, tooltips, popovers, toasts, or bslib inputs. Assumes familiarity with basic Shiny.
development
Review test code for quality, design, and completeness after implementing a feature or fixing a bug. Use when the user asks to "review my tests", "check my test quality", "are these tests good enough", "review testing", or after completing a feature implementation that includes tests. Also use when tests feel brittle, flaky, or superficial. Cross-references production code to find coverage gaps.
tools
Guide for drafting issue closure and decline responses as an open-source package maintainer. Use when helping compose a reply that says "no" to a feature request, closes an issue as won't-fix, redirects a user to a different package, explains why a design choice is intentional, or otherwise declines or closes a community contribution. Also use when the maintainer needs to explain a deprecation, point out a user misunderstanding, or communicate an effort/scope tradeoff to a contributor.
tools
R package development with devtools, testthat, and roxygen2. Use when the user is working on an R package, running tests, writing documentation, or building package infrastructure.