Agent skill

pr-threads-resolve

Bulk resolve unresolved PR review threads. Useful after manually addressing threads or after using /pr-threads-address.

Stars 224
Forks 13

Install this agent skill to your Project

npx add-skill https://github.com/posit-dev/skills/tree/main/github/pr-threads-resolve

Metadata

Additional technical details for this skill

author
Barret Schloerke (@schloerke)
version
1.0

SKILL.md

/pr-threads-resolve

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.

Workflow

  1. Fetch and display all unresolved PR review threads
  2. Show thread details (file, line, comment text)
  3. Ask for confirmation or allow selective resolution
  4. Resolve the confirmed threads
  5. Report back with a summary of resolved threads

When to use

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.

Example

/pr-threads-resolve 42

This will:

  • List all unresolved threads on PR #42
  • Show what each thread is about
  • Ask which threads to resolve (all or specific ones)
  • Resolve the selected threads
  • Provide a summary of resolved items

Prerequisites

Before using this command, check if the gh pr-review extension is installed:

bash
gh extension list | grep -q pr-review || gh extension install agynio/gh-pr-review

CLI Reference

List Review Threads

Enumerate all review threads with filtering:

bash
gh pr-review threads list --pr <number> --repo <owner/repo>

Common filters:

  • --unresolved — Show only unresolved threads
  • --resolved — Show only resolved threads

View PR Reviews and Comments

Display reviews, inline comments, and replies with full context:

bash
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 replies

Resolve / Unresolve Threads

Toggle thread resolution status:

bash
# 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>

Bulk Resolve Example

bash
# 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

Usage Notes

  1. Repository Context: Always include --repo owner/repo to ensure correct repository context, or run commands from within a local clone of the repository.

  2. Thread IDs: Thread IDs (format PRRT_...) can be obtained from review view --include-comment-node-id or threads list commands.

  3. State Filters: When using --states, provide a comma-separated list: --states APPROVED,CHANGES_REQUESTED

  4. Unresolved Focus: Use --unresolved --not_outdated together to focus on actionable comments that need attention.

Expand your agent's capabilities with these related and highly-rated skills.

posit-dev/skills

create-release-checklist

Create a release checklist and GitHub issue for an R package. Use when the user asks to "create a release checklist" or "start a release" for an R package.

224 13
Explore
posit-dev/skills

release-post

Create professional package release blog posts following Tidyverse or Shiny blog conventions. Use when the user needs to: (1) Write a release announcement blog post for an R or Python package for tidyverse.org or shiny.posit.co, (2) Transform NEWS/changelog content into blog format, (3) Generate acknowledgments sections with contributor lists, (4) Format posts following specific blog platform requirements. Supports both Tidyverse (hugodown) and Shiny (Quarto) blog formats with automated contributor fetching and comprehensive style guidance.

224 13
Explore
posit-dev/skills

shiny-bslib-theming

Advanced theming for Shiny apps using bslib and Bootstrap 5. Use when customizing app appearance with bs_theme(), Bootswatch themes, custom colors, typography, brand.yml integration, Bootstrap Sass variables, custom Sass/CSS rules, dark mode and color modes, dynamic theme switching, real-time theming, theme inspection, or making R plots match the app theme with thematic.

224 13
Explore
posit-dev/skills

shiny-bslib

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.

224 13
Explore
posit-dev/skills

quarto-alt-text

Generate accessible alt text for data visualizations in Quarto documents. Use when the user wants to add, improve, or review alt text for figures in .qmd files. Triggers for requests about accessibility, figure descriptions, fig-alt, screen reader support, or making Quarto documents more accessible.

224 13
Explore
posit-dev/skills

quarto-authoring

Writing and authoring Quarto documents (.qmd), including code cell options, figure and table captions, cross-references, callout blocks (notes, warnings, tips), citations and bibliography, page layout and columns, Mermaid diagrams, YAML metadata configuration, and Quarto extensions. Also covers converting and migrating R Markdown (.Rmd), bookdown, blogdown, xaringan, and distill projects to Quarto, and creating Quarto websites, books, presentations, and reports.

224 13
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results