Skip to content
Development
Skill

/gh-review-requests

Fetch unread GitHub notifications for open PRs where review is requested from a specified team or opened by a team member. Use when asked to "find PRs I need to review", "show my review requests", "what needs my review", "fetch GitHub review requests", or "check team review

From plugin
sentry-skills
90628 skills2 agents
Install
$ npx -y skills add getsentry/sentry-skills --skill gh-review-requests --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/gh-review-requests

Context preview

The summary Claude sees to decide when to auto-load this skill.

Fetch unread GitHub notifications for open PRs where review is requested from a specified team or opened by a team member. Use when asked to "find PRs I need to review", "show my review requests", "what needs my review", "fetch GitHub review requests", or "check team review

SKILL.md

gh-review-requests.SKILL.md
name: gh-review-requests
description: Fetch unread GitHub notifications for open PRs where review is requested from a specified team or opened by a team member. Use when asked to "find PRs I need to review", "show my review requests", "what needs my review", "fetch GitHub review requests", or "check team review queue".
allowed-tools: Bash

GitHub Review Requests

Fetch unread `review_requested` notifications for open (unmerged) PRs, filtered by a GitHub team.

**Requires**: GitHub CLI (`gh`) authenticated.

**Requires**: The `uv` CLI for python package management, install guide at https://docs.astral.sh/uv/getting-started/installation/

Step 1: Identify the Team

If the user has not specified a team, ask:

> Which GitHub team should I filter by? (e.g. `streaming-platform`)

Accept either a team slug (`streaming-platform`) or a display name ("Streaming Platform") — convert to lowercase-hyphenated slug before passing to the script.

Step 2: Run the Script

uv run scripts/fetch_review_requests.py --org getsentry --teams <team-slug>

To filter by multiple teams, pass a comma-separated list:

uv run scripts/fetch_review_requests.py --org getsentry --teams <team slugs>

Script output

{
  "total": 3,
  "prs": [
    {
      "notification_id": "12345",
      "title": "feat(kafka): add workflow to restart a broker",
      "url": "https://github.com/getsentry/ops/pull/19144",
      "repo": "getsentry/ops",
      "pr_number": 19144,
      "author": "bmckerry",
      "reasons": ["opened by: bmckerry"]
    }
  ]
}

`reasons` will contain one or both of:

  • `"review requested from: <Team Name>"` — the team is a requested reviewer
  • `"opened by: <login>"` — the PR author is a team member

Step 3: Present Results

Display results as a markdown table with full URLs:

| # | Title | URL | Reason | |---|-------|-----|--------| | 1 | feat(kafka): add workflow to restart a broker | https://github.com/getsentry/ops/pull/19144 | opened by: evanh |

If `total` is 0, say: "No unread review requests found for that team."

Fallback

If the script fails, run manually:

gh api notifications --paginate

Then for each `review_requested` notification, check:

  • `gh api repos/{repo}/pulls/{number}` — skip if `state == "closed"` or `merged_at` is set
  • `gh api repos/{repo}/pulls/{number}/requested_reviewers` — check `teams[].name`
  • `gh api orgs/{org}/teams/{slug}/members` — check if author is a member
Read more
Ships withsentry-skills

For skills to help set up Sentry in your project or debug production issues, see Agent skills for Sentry employees, following the Agent Skills open format.

Get the whole plugin

Other skills on sentry-skills.