Skip to main content
AI/MLsickn33

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 queue".

Stars
39,227
Source
sickn33/antigravity-awesome-skills
Updated
2026-05-30
Slug
sickn33--antigravity-awesome-skills--gh-review-requests
View on GitHubRaw SKILL.md

// install — copy + paste into any project

mkdir -p .claude/skills && curl -fsSL https://raw.githubusercontent.com/sickn33/antigravity-awesome-skills/HEAD/plugins/antigravity-awesome-skills-claude/skills/gh-review-requests/SKILL.md -o .claude/skills/gh-review-requests.md

Drops the SKILL.md into .claude/skills/gh-review-requests.md. Works with Claude Code, Cursor, and any agent that loads SKILL.md files from .claude/skills/.

GitHub Review Requests

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

Requires: GitHub CLI (gh) authenticated.

When to Use

  • You need to find unread GitHub PR review requests for a specific team.
  • You want to check which open PRs currently need your review or a teammate's review.
  • You need a filtered review queue instead of manually browsing GitHub notifications.

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 ${CLAUDE_SKILL_ROOT}/scripts/fetch_review_requests.py --org getsentry --teams <team-slug>

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

uv run ${CLAUDE_SKILL_ROOT}/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

Limitations

  • Use this skill only when the task clearly matches the scope described above.
  • Do not treat the output as a substitute for environment-specific validation, testing, or expert review.
  • Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.