Agent skill

Review Issue

by PrefectHQ in PrefectHQ/fastmcp

Review an incoming external issue (and any gated-closed PR behind it) and decide whether to assign the contributor or decline.

Apache-2.0Auto-check passedAgent Workflows

Install Review Issue

skills CLI
$ npx skills add PrefectHQ/fastmcp --skill review-issue -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install PrefectHQ/fastmcp review-issue --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/PrefectHQ/fastmcp.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/review-issue .claude/skills/review-issue && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
review-issue
GitHub stars
28k
Token cost
~1.7k tokens
SKILL.md length
799 words
Files
1
Skills in repo
9
Repo updated
First seen
Licence
Apache-2.0

At a glance

Review an incoming external issue (and any gated-closed PR behind it) and decide whether to assign the contributor or decline.

  • Works in 6 steps: Orient. Read the issue, its bot… → Decide whether the issue describes a… → Check the category against the… → …
  • The maintainer says look at this issue
  • SKILL.md covers How the gate works, Procedure, Acting on the verdict and Check before finishing
  • Calls gh

What it does

Review Issue is an agent skill from PrefectHQ/fastmcp. Review an incoming external issue (and any gated-closed PR behind it) and decide whether to assign the contributor or decline. Use when the maintainer says "look at this issue", "review issue

Its SKILL.md is about 1.7k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Agent Workflows, covering MCP servers. It works with Model Context Protocol. The repository describes itself as: 🚀 The fast, Pythonic way to build MCP servers and clients. The licence is Apache-2.0.

When your agent uses it

  • The maintainer says look at this issue
  • Tasks that involve MCP servers

Example prompts

  • “look at this issue”
  • “/review-issue”

Workflow steps

6 steps, taken from the first numbered list in SKILL.md.

  1. Orient. Read the issue, its bot comments, and every PR that references it, in all states
  2. Decide whether the issue describes a bug. Reproduce the MRE, then ask whether the behavior violates a contract FastMCP intends to hold…
  3. Check the category against the contribution policy. Simple bug fixes, docs, and auth providers are assignable. Enhancements need a…
  4. Investigate the PR in context. Read the full diff, then open each touched file. Trace the values and functions it changes to where they…
  5. Check the contributor. For an unfamiliar account, look at its public history
  6. Recommend. Give the maintainer the verdict, one or two sentences of reasoning, and the exact command. Act within existing authorization…

What it can do on your machine

Read from SKILL.md and the folder at commit e2fcc41. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • gh

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use gh, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Review Issue loads about 1.7k tokens when it runs. Until then it costs about 51 tokens; SKILL.md has 799 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~51
When it runs · the whole SKILL.md, loaded when a task matches
~1.7k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from PrefectHQ/fastmcp at commit e2fcc41, republished under its Apache-2.0 licence (© PrefectHQ). 799 words, ~1,702 tokens.

Download SKILL.mdSave it as .claude/skills/review-issue/SKILL.md (or your agent's skills folder).
name
review-issue
description
Review an incoming external issue (and any gated-closed PR behind it) and decide whether to assign the contributor or decline. Use when the maintainer says "look at this issue", "review issue

Review an incoming issue

This skill ends in a recommendation for the maintainer:

  • Assign: the issue is valid, an external PR suits it, and a sound PR exists. Assign the author, which clears the gate, then review the code.
  • Decline: close the open contribution, or leave a closed one closed, and explain why on the issue once authorized.
  • Maintainer decision needed: only when investigation leaves a concrete choice that materially changes supported behavior or ongoing support scope. State the affected scenario, competing outcomes, why protocol/docs/history/prior decisions do not settle it, and a recommendation. Ordinary reviewer uncertainty or implementation preferences do not qualify. The unresolved choice alone is not a reason to decline or formally request changes.

Assignment commits us to reviewing the PR, not to merging it. A gate closure is administrative, so a closed PR gets the same bar as an open one.

How the gate works

require-issue-link.yml checks every external PR:

  • It needs Fixes/Closes/Resolves #N. PRs without a valid link are closed.
  • A linked PR stays open with a failing check until its author is assigned to that issue. Issues labeled prs welcome waive assignment but still need the link.
  • Assigning the author (gh issue edit N --add-assignee <login>) re-runs the check and reopens a gate-closed PR. If that run fails, the gate misbehaved: investigate the run rather than re-assigning.
  • Maintainer PRs are exempt, and so are authors with the trusted-contributor label. Reopening a PR by hand or removing missing-issue-link applies a sticky bypass-issue-check, so prefer assignment.
  • marvin-triage-issue, marvin-dedupe-issues, auto-close-duplicates, and auto-close-needs-mre have usually commented already. Read them as leads.

Procedure

  1. Orient. Read the issue, its bot comments, and every PR that references it, in all states:

    bash
    gh issue view N --repo PrefectHQ/fastmcp \
      --json number,title,state,author,body,labels,assignees,comments
    gh pr list --repo PrefectHQ/fastmcp --state all --search "#N in:body" \
      --json number,title,state,author,url,labels
    gh pr view <pr> --repo PrefectHQ/fastmcp --json title,body,labels,files,additions,deletions
    gh pr view <pr> --repo PrefectHQ/fastmcp --comments
  2. Decide whether the issue describes a bug. Reproduce the MRE, then ask whether the behavior violates a contract FastMCP intends to hold. Behavior that only appears by mutating construction-time state or relying on internals is a property of the code, not a defect. The code shows what FastMCP does, not what it promises, so investigate the promised contract before escalating. Ask the maintainer only when a specific supported scenario requires a material policy choice that the protocol, docs, history, and prior decisions do not settle. Check main, duplicates, and prior maintainer decisions in related issues and closed PRs. If the issue is not a bug, assess its contribution category rather than treating surprising behavior alone as a defect.

  3. Check the category against the contribution policy. Simple bug fixes, docs, and auth providers are assignable. Enhancements need a maintainer-approved design in the issue first; bring the precise decision and a recommendation to the maintainer, record the accepted approach, then assign. Maintainers own design opinions: do not require the contributor to obtain or settle the maintainer's preference. Once a direction is accepted, maintainers should make small corrections that align a nearly ready fix with established behavior under review-pr, rather than formally requesting changes for those finishing touches. Leave substantive rework to the contributor. Third-party integrations and sweeping changes without discussion are declined.

  4. Investigate the PR in context. Read the full diff, then open each touched file. Trace the values and functions it changes to where they are produced and consumed. From the MRE, state in one line what was broken, where, and whether this change fixes it there. Compare with how adjacent code handles the same case, and check that the tests fail without the fix. Treat style issues as review comments; a wrong layer, a broken adjacent path, or an unfixed MRE changes the verdict. Apply review-pr's behavior classification, protocol check, and competing-proposal comparison before recommending a proposal. Keep scope and design acceptance separate from implementation quality and pending validation.

  5. Check the contributor. For an unfamiliar account, look at its public history:

    bash
    gh api users/<login>
    gh search prs --author <login> --limit 20 --sort created --order desc \
      --json repository,title,state,createdAt,url

    Merged fixes elsewhere and substantive replies to reviewers show follow-through. Decline obvious spam or unattended automation: mass unrelated boilerplate, repeated nonresponsive replies. A new account, a sparse profile, or disclosed AI assistance is not a reason to decline. When evidence is thin, lean toward goodwill for a sound, scoped contribution and mention the uncertainty.

  6. Recommend. Give the maintainer the verdict, one or two sentences of reasoning, and the exact command. Act within existing authorization and bring borderline calls back.

Show full SKILL.md (94 more words)Show less

Acting on the verdict

Assign:

bash
gh issue edit N --repo PrefectHQ/fastmcp --add-assignee <login>

Confirm the require-issue-link run passes and the PR reopens, then review it and follow CI and feedback with review-pr. If the PR's head branch was deleted, assignment cannot reopen it; the workflow asks the author for a fresh PR.

Decline: with authorization, comment on the issue with the reason and the relevant contribution-policy section. Write the body to a file first:

bash
gh issue comment N --repo PrefectHQ/fastmcp --body-file /tmp/triage-reply.md

Check before finishing

The recommendation names the contract the issue does or does not violate, the layer where the cause lives, and whether the PR fixes it there.

© PrefectHQ, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/review-issue of PrefectHQ/fastmcp.

Open the folder on GitHubat commit e2fcc41

Compare with similar skills

Review Issue next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Review Issue compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Review Issue this skillPrefectHQ/fastmcp28k—~1.7kAutomated safety check: PassApache-2.0
MCP Server Builderanthropics/skills180k63 repos~2.3kAutomated safety check: PassApache-2.0
MCP Server BuildershareAI-lab/learn-claude-code78k4 repos~1.2kAutomated safety check: PassMIT
MCP Integration for Pluginsanthropics/claude-plugins-official38k11 repos~3.1kAutomated safety check: PassApache-2.0
Crush Configurationcharmbracelet/crush29k—~3.7kAutomated safety check: PassCustom licence
Context Mode Output Sandboxmksglu/context-mode26k—~4.1kAutomated safety check: PassCustom licence

Similar skills

  • MCP Server Builder

    anthropics/skills

    Official

    Guides the design and implementation of Model Context Protocol servers in TypeScript or Python, from tool naming and error messages to evaluation.

    180k GitHub starsUsed in 63 repos~2.3k tokens
    Agent WorkflowsAuto-check passed
  • MCP Server Builder

    shareAI-lab/learn-claude-code

    Walks through building MCP servers in Python or TypeScript that expose tools, resources and prompts to Claude, with templates, registration and testing.

    78k GitHub starsUsed in 4 repos~1.2k tokens
    Agent WorkflowsAuto-check passed
  • MCP Integration for Plugins

    anthropics/claude-plugins-official

    Official

    Explains how to bundle Model Context Protocol servers in a Claude Code plugin, covering config files, stdio, SSE, HTTP and WebSocket server types, and authentication.

    38k GitHub starsUsed in 11 repos~3.1k tokens
    Agent WorkflowsAuto-check passed
  • Crush Configuration

    charmbracelet/crush

    Explains how to configure the Crush coding agent with crushrc or crush.json, covering providers, models, LSPs, MCP servers, hooks, permissions and config precedence.

    29k GitHub stars~3.7k tokensUpdated today
    Agent WorkflowsAuto-check passed
  • Context Mode Output Sandbox

    mksglu/context-mode

    Routes large command, file, API and browser output through context-mode tools so only the needed result enters the agent's context, instead of dumping it via Bash.

    26k GitHub stars~4.1k tokensUpdated today
    Agent WorkflowsAuto-check passed
  • Migrates the compatible subset of settings and global file-based MCP servers from the Warp desktop app into Warp Agent CLI without exposing credentials or state.

    65k GitHub starsUsed in 1 repo~2.1k tokens
    Agent WorkflowsAuto-check passed

More from PrefectHQ/fastmcp

All 9 skills in this repo
  • Release

    PrefectHQ/fastmcp

    Cut a FastMCP release end to end. An agent skill from PrefectHQ/fastmcp.

    28k GitHub stars~2.9k tokensUpdated today
    Auto-check passed
  • Docs

    PrefectHQ/fastmcp

    Write or revise a page under docs/ for gofastmcp.com. An agent skill from PrefectHQ/fastmcp.

    28k GitHub stars~1k tokensUpdated today
    Auto-check passed
  • Fastmcp Client CLI

    PrefectHQ/fastmcp

    Query and invoke tools on MCP servers using fastmcp list and fastmcp call.

    28k GitHub stars~823 tokensUpdated today
    Auto-check passed
  • Review PR

    PrefectHQ/fastmcp

    Assess a FastMCP pull request for justified behavior, compatibility, and correctness, then follow CI and review feedback to a revision-specific verdict.

    28k GitHub stars~3.1k tokensUpdated today
    Auto-check passed
  • Review Security Report

    PrefectHQ/fastmcp

    Review FastMCP vulnerability reports before accepting, rejecting, patching, scoring, or publishing them.

    28k GitHub stars~1.2k tokensUpdated today
    Auto-check passed
  • Triage

    PrefectHQ/fastmcp

    Find worthwhile FastMCP issues to work on in a backlog or release window, verify promising candidates, and present concrete picks with existing PR links.

    28k GitHub stars~573 tokensUpdated today
    Auto-check passed

Categories

Questions about Review Issue

What does Review Issue do?

Review an incoming external issue (and any gated-closed PR behind it) and decide whether to assign the contributor or decline. Review Issue is an agent skill from PrefectHQ/fastmcp. Review an incoming external issue (and any gated-closed PR behind it) and decide whether to assign the contributor or decline.

When should I use Review Issue?

Review Issue fits situations like: the maintainer says look at this issue; tasks that involve MCP servers.

How do I install Review Issue in Claude Code?

Run `npx skills add PrefectHQ/fastmcp --skill review-issue -a claude-code`. Or copy the skill folder (.agents/skills/review-issue in PrefectHQ/fastmcp) into .claude/skills/review-issue in your project. Claude Code loads it when a task matches its description.

How do I install Review Issue in Codex?

Run `npx skills add PrefectHQ/fastmcp --skill review-issue -a codex`. Or copy the skill folder (.agents/skills/review-issue in PrefectHQ/fastmcp) into .agents/skills/review-issue in your project. Codex loads it when a task matches its description.

Can I use Review Issue in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add PrefectHQ/fastmcp --skill review-issue -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/review-issue, .gemini/skills/review-issue, .github/skills/review-issue and .opencode/skills/review-issue in your project.

What does Review Issue need to run?

Going by SKILL.md and its folder, Review Issue needs the command-line tools its instructions call (gh).

Does Review Issue access the network?

SKILL.md contains no URLs. Its commands use gh, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Review Issue safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Review Issue use?

Review Issue is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Review Issue use?

About 1.7k tokens (SKILL.md is roughly 6.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Review Issue?

Skills that share tags, products or a category with Review Issue: MCP Server Builder (anthropics/skills, 180k stars), MCP Server Builder (shareAI-lab/learn-claude-code, 78k stars), MCP Integration for Plugins (anthropics/claude-plugins-official, 38k stars) and Crush Configuration (charmbracelet/crush, 29k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Review Issue?

PrefectHQ (a GitHub organization) maintains it in PrefectHQ/fastmcp, which has 28,027 GitHub stars. The repository holds 9 skills in this directory. The repository was last updated on October 10, 2026.

Source: PrefectHQ/fastmcp on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.