Add a maintainers script to safely promote high-confidence legacy risk labels from unknown to concrete values, cover it with tests, and regenerate the canonical skill artifacts and plugin copies. This reduces the legacy unknown backlog without forcing noisy classifications that still need manual review.
2.4 KiB
2.4 KiB
name, description, allowed-tools, risk, source
| name | description | allowed-tools | risk | source |
|---|---|---|---|---|
| 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". | Bash | safe | community |
GitHub Review Requests
Fetch unread review_requested notifications for open (unmerged) PRs, filtered by a GitHub team.
Requires: GitHub CLI (gh) authenticated.
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 ifstate == "closed"ormerged_atis setgh api repos/{repo}/pulls/{number}/requested_reviewers— checkteams[].namegh api orgs/{org}/teams/{slug}/members— check if author is a member