plugins/gh-pr-tools/skills/pr_status/SKILL.md
Show a quick summary of PR review thread statuses on GitHub. Use when the user wants to check PR status, see remaining comments, review thread summary, or triage before resolving.
npx skillsauth add shouenlee/ghcp-dev-plugin pr_statusInstall 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.
Show a quick read-only summary of review thread statuses on a GitHub pull request. No files are modified — this is purely informational.
/pr-status <PR-number-or-URL>
No flags — this is a lightweight status check.
gh CLI must be installed and authenticated (gh auth status)Accept any of these formats:
123 or #123https://github.com/{owner}/{repo}/pull/{number}gh pr view --json number --jq '.number'Fetch PR metadata and review threads in parallel:
PR metadata (REST):
gh pr view <number> --json title,author,state,baseRefName,headRefName,reviewDecision,reviews
Review threads (GraphQL):
gh api graphql -f query='
query($owner:String!, $repo:String!, $pr:Int!) {
repository(owner:$owner, name:$repo) {
pullRequest(number:$pr) {
reviewThreads(first:100) {
nodes {
isResolved
isOutdated
comments(first:10) {
nodes {
body
author { login }
path
line
}
}
}
}
}
}
}' -f owner='{owner}' -f repo='{repo}' -F pr='{number}'
Use gh repo view --json owner,name --jq '.owner.login + " " + .name' to get owner and repo dynamically.
For each review thread, determine its status:
| Status | Meaning |
|--------|---------|
| Unresolved (isResolved == false) | Needs attention |
| Resolved (isResolved == true) | Addressed |
| Outdated (isOutdated == true) | Code has changed since comment |
Also categorize by whether the thread has file context (path is set) or is a general PR-level comment.
Bot detection: Filter out threads where the comment author login ends with [bot] (e.g., dependabot, github-actions, codeql, codecov, renovate).
## PR #<number> - <title>
**Source:** <headRefName> → **Target:** <baseRefName>
**State:** <state> | **Author:** <author> | **Review decision:** <reviewDecision>
### Review Threads
| Status | Count |
|--------|-------|
| Unresolved | <n> |
| Resolved | <n> |
| Outdated | <n> |
| Total | <n> |
### Reviews
| Reviewer | State |
|----------|-------|
| <login> | APPROVED / CHANGES_REQUESTED / COMMENTED |
### Unresolved Threads (<count>)
| File | Line | Reviewer | Comment |
|------|------|----------|---------|
| <path> | <line> | <author> | <first 80 chars of comment> |
### General Comments (<count>)
- <comment text>
If there are no unresolved threads, say: "All review threads are resolved."
If there are unresolved threads, suggest: "Run /resolve-pr <number> to address these comments."
gh not authenticated: Suggest running gh auth login.tools
Decomposes feature descriptions or GitHub issues into ordered subtasks with file-level scope, acceptance criteria, and optional gh issue create. Use when asked to "break down task", "decompose feature", "create subtasks", "plan implementation", "break this into tasks", "task list", or "implementation plan".
documentation
Generates changelogs from conventional commits, bumps semantic versions in pyproject.toml or package.json, and publishes GitHub releases. Use when asked to "create release", "release notes", "changelog", "bump version", "semantic version", "tag release", "publish release", or "what changed since last release".
development
Runs ruff, mypy, and bandit on changed Python files — explains violations and auto-fixes with ruff check --fix. Use when asked to "lint", "fix lint", "check types", "type check", "run mypy", "run ruff", "python quality", or "lint python files".
development
Create new Agent Skills for GitHub Copilot from prompts or by duplicating this template. Use when asked to "create a skill", "make a new skill", "scaffold a skill", or when building specialized AI capabilities with bundled resources. Generates SKILL.md files with proper frontmatter, directory structure, and optional scripts/references/assets folders.