plugins/teamcraft-jcg/skills/pr-review/SKILL.md
Conduct a pull request review without leaving Claude Code. Access the full PR diff, implementation context, and discussion thread. Leave review comments, respond to threads, approve, and merge — all without opening the GitHub UI.
npx skillsauth add codingthefuturewithai/claude-code-primitives teamcraft-jcg:pr-reviewInstall 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.
A reviewer conducts a complete pull request review — reading the diff, understanding the implementation in context, engaging with existing discussion threads, leaving review comments, and deciding to approve or request changes — entirely within Claude Code, without opening the GitHub UI.
$ARGUMENTS. If not provided, ask.gh pr view [PR-number], gh pr diff [PR-number], gh pr view [PR-number] --comments, gh pr comment [PR-number] --body "...", gh pr review [PR-number] --approve, gh pr merge [PR-number], gh pr edit [PR-number].Read .teamcraft/project.md if it exists — it contains the GitHub repo (owner/repo). If not, run git remote -v via Bash to identify the GitHub repo from the remote URL. No project listing tool is needed.
Fetch the PR details via gh pr view [PR-number] --json number,title,body,headRefName,baseRefName,state,isDraft via Bash. Read it completely: title, description, source branch, target branch, state, linked Jira issue key (from description), and any acceptance criteria the description contains. If the PR description references a Jira issue key (e.g., PROJ-42), note it for context — the original requirements and acceptance criteria belong in the reviewer's picture.
Fetch the diff via gh pr diff [PR-number] via Bash. Fetch existing comments via gh pr view [PR-number] --comments via Bash. Read both in full before presenting anything to the reviewer.
Check the current local branch. If the reviewer is not already on the PR's source branch, offer to check it out:
"You're currently on
[branch]. Want me to check out[source-branch]so you can view the code locally in your editor?"
Wait for their answer. Check it out if they say yes. A reviewer seeing the code in their editor alongside the diff has a better picture than the diff alone.
Read the changed files in the local codebase alongside the diff. The diff shows what changed; the surrounding code shows what it changed relative to. Use git log on the source branch via Bash to understand the commit sequence and how the implementation evolved.
Look for what the automated analysis (code health and security review, if it ran) already flagged. CLAUDE.md and .claude/rules/ contain team conventions — read them to understand what this codebase expects and whether the implementation follows it.
Synthesize the PR for the reviewer — not a raw diff dump. Cover:
What this PR delivers — a clear statement of what was built, referencing the linked Jira issue and acceptance criteria.
What changed — the meaningful changes, grouped by area or concern. Not a line-by-line recitation. The reviewer can drill into specifics; start with the picture.
Existing discussion — any open comments or threads already in the PR that the reviewer should be aware of.
Your initial read — areas that warrant closer attention: logic that looks unusual, missing edge case handling, anything that doesn't align with team conventions, test coverage gaps, or any concerns the diff alone raises.
Then stop and let the reviewer drive.
The reviewer leads from here. Support whatever they need:
gh pr comment [PR-number] --body "..." via Bash — present any comment for confirmation before postinggh pr review [PR-number] --comment --body "..." via Bash — present the draft for confirmation before postingWhen the reviewer is ready to act, offer the options that apply:
Approve — if the reviewer confirms they are approving, run gh pr review [PR-number] --approve via Bash. Confirm once before acting.
Request changes — run gh pr review [PR-number] --request-changes --body "..." via Bash with a summary of the reviewer's concerns. Present the draft body for review before posting.
Merge — if the reviewer instructs a merge, check pipeline status first via gh run list --branch [source-branch] via Bash. Present the current state and get explicit confirmation before running gh pr merge [PR-number] via Bash.
Close without merging — if the reviewer decides the PR should not proceed, update the PR with a closing comment via gh pr comment [PR-number] --body "..." and close it via gh pr close [PR-number] via Bash. Confirm before acting.
No action happens without explicit reviewer instruction. No action happens without confirmation of what will be done before it is done.
After completing any round of review, instruct the reviewer:
"To mark addressed threads as resolved, open the PR in the GitHub UI and resolve each thread. GitHub does not support thread resolution via the CLI — this step must be done in the browser."
This is expected behavior, not a workaround. Note which threads the reviewer indicated are addressed so they know which ones to resolve.
development
Plan a time-boxed iteration (sprint, cycle, milestone) from the backlog and the PRD/roadmap behind it — gather the goal, the window, and the team's real capacity, then select, sequence, and size a committed set of work items to fit. Writes an `iteration` label onto each chosen work item. Use when the user says 'plan a sprint', 'plan the next iteration', 'plan our cycle', 'sprint planning', 'iteration planning', 'plan the next two weeks', 'set up a milestone', 'what should we take on this sprint', 'plan from the PRD', or otherwise wants to commit a scoped, time-boxed batch of work rather than create issues one at a time. This is the planning layer between requirements and the build loop — distinct from create-issue (one item) and pick-next-issue (pick one to build now).
tools
Capture feedback about Teamcraft itself and turn it into a well-structured GitHub issue on the plugin's repo. Vets whether the problem is really a Teamcraft skill defect (vs. misuse, the harness, or the user's own project) by root-causing against the actual skill source, then helps the developer decide whether to file and publishes via the GitHub CLI. Use when the user says 'improve teamcraft', 'a teamcraft skill did the wrong thing', 'file feedback on teamcraft', 'report a teamcraft bug', 'I have an idea to make teamcraft better', or when a Teamcraft skill clearly misbehaved and the user wants that captured upstream.
tools
Learn the Teamcraft plugin itself — how its workflow, skills, and artifacts fit together. A guided overview for a human getting started, or a system map for Claude orienting itself to how Teamcraft works before working in a Teamcraft repo. Teaching only; needs no project or environment access. Use when someone wants to understand Teamcraft (the tool, not their specific project), asks "how does Teamcraft work", "explain the workflow", "which skill do I use for X", or when Claude needs the big picture of how the skills hook together.
tools
--- name: teamcraft:work-board description: Launch (or re-launch) the user's live, multi-project work board. The dashboard is a single HTML file copied to a stable user-side location at ~/.claude/teamcraft-board.html and opened in the user's default browser. It has two views via a header toggle — a drag-and-drop Kanban Board and a live Status tab (analytics: work by status, throughput, cycle time, aging, blocked chains, recomputed on every poll). Each project is added via a header dropdown; the