PR Review
jaemk/self_update
Targeted, read-only review of a PR or checked-out branch. An agent skill from jaemk/self_update.
Targeted, read-only review of a PR or checked-out branch. An agent skill from jaemk/cached.
$ npx skills add jaemk/cached --skill pr-review -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install jaemk/cached pr-review --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/jaemk/cached.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/pr-review .claude/skills/pr-review && rm -rf skills-srcUse ~/.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/
Install the "pr-review" agent skill from https://github.com/jaemk/cached/tree/master/.agents/skills/pr-review into .claude/skills/pr-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pr-review", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/jaemk/cached/tree/master/.agents/skills/pr-reviewType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add jaemk/cached --skill pr-review -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install jaemk/cached pr-review --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jaemk/cached.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/pr-review .agents/skills/pr-review && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "pr-review" agent skill from https://github.com/jaemk/cached/tree/master/.agents/skills/pr-review into .agents/skills/pr-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pr-review", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add jaemk/cached --skill pr-review -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install jaemk/cached pr-review --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jaemk/cached.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/pr-review .cursor/skills/pr-review && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "pr-review" agent skill from https://github.com/jaemk/cached/tree/master/.agents/skills/pr-review into .cursor/skills/pr-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pr-review", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/jaemk/cached.git --path .agents/skills/pr-review--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add jaemk/cached --skill pr-review -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install jaemk/cached pr-review --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jaemk/cached.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/pr-review .gemini/skills/pr-review && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "pr-review" agent skill from https://github.com/jaemk/cached/tree/master/.agents/skills/pr-review into .gemini/skills/pr-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pr-review", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install jaemk/cached pr-reviewInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add jaemk/cached --skill pr-review -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/jaemk/cached.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/pr-review .github/skills/pr-review && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "pr-review" agent skill from https://github.com/jaemk/cached/tree/master/.agents/skills/pr-review into .github/skills/pr-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pr-review", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add jaemk/cached --skill pr-review -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install jaemk/cached pr-review --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jaemk/cached.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/pr-review .opencode/skills/pr-review && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "pr-review" agent skill from https://github.com/jaemk/cached/tree/master/.agents/skills/pr-review into .opencode/skills/pr-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pr-review", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
pr-reviewTargeted, read-only review of a PR or checked-out branch. An agent skill from jaemk/cached.
PR Review is an agent skill from jaemk/cached. Targeted, read-only review of a PR or checked-out branch. Acquires the diff (a PR number, or the current branch vs origin/master), shards the changed material into appropriately sized, randomized chunks, and spawns multiple read-only code-review and library-consumer sub-agents in parallel (one per shard), then aggregates and de-duplicates their findings into a single report with severity and a valid / already-fixed / invalid verdict for each. Read-only — it does not edit files, commit, push, or touch the GitHub…
Its SKILL.md is about 2.5k 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 Development, covering Pull requests, Subagents and Code review. It works with GitHub and Rust. The repository describes itself as: Rust cache structures and easy function memoization. The licence is MIT.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 9da0ec2. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
BashReadAgentFrom allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
gitmakeghFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git and gh, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
PR Review loads about 2.5k tokens when it runs. Until then it costs about 216 tokens; SKILL.md has 1,356 words of instructions outside code blocks.
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.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
allowed-tools: Bash, Read, AgentAutomated 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.
The full file from jaemk/cached at commit 9da0ec2, republished under its MIT licence (© jaemk). 1,356 words, ~2,532 tokens.
.claude/skills/pr-review/SKILL.md (or your agent's skills folder).Produce a fresh, read-only review of a PR or a checked-out branch and report the
findings. This is the "review" half of the PR workflow, extracted so it can be run
on its own. The orchestrator skill pr-cycle calls this skill to obtain its local
findings, then goes on to address, push, and resolve them.
Does: acquire the diff, shard it into appropriately sized chunks, spawn the read-only review sub-agents (one per shard, multiple of each type), evaluate and de-duplicate their findings, and report them with severity and a verdict.
Does NOT: edit files, run make ci, regenerate the README, commit, or push; and
it does not interact with the GitHub PR conversation — it does not read existing
PR comments/threads, resolve or minimize them, edit the PR body, or re-request
Copilot review. Those belong to pr-cycle. This skill only generates a fresh
agent-based review of the code itself.
This skill is purely advisory: its output is a findings report for a human (or for
pr-cycle) to act on. It applies no changes.
| Tier | What | Step | Model |
|---|---|---|---|
| 1 — cheap delegation | Read-only review sub-agents, one per shard | 3 | Sonnet (pinned in agent def; overridable per-run, e.g. to opus — see Input) |
| 2 — judgment core | Shard the material; de-duplicate and classify findings into valid / already-fixed / invalid | 2, 4, 5 | session model (use Opus) |
A target and an optional review-agent model override, in any order.
gh pr view --json number (run with the sandbox disabled — see below), but a PR is
not required: a plain checked-out branch is reviewed by diffing against
origin/master.pr-code-reviewer,
pr-consumer-reviewer) defaults to sonnet, but can be overridden. If the input
names a model (e.g. "review with opus", "opus reviewers", "model=opus"), pass that
model to the Agent tool's model parameter when spawning all shard sub-agents in
step 3. With no override, omit model so each agent uses its pinned Sonnet default.Announce the resolved target and review-agent model at the start — e.g. "Reviewing the current branch with opus reviewers" or "Reviewing PR #264 with Sonnet reviewers" — before spawning anything. After sharding (step 2), announce the shard counts (e.g. "3 code shards, 2 consumer shards") before spawning the reviewers.
The diff is git diff origin/master, which works for any checked-out branch whether
or not it has a PR:
git diff origin/master
git diff origin/master --statIf you are targeting a specific PR, the pr-cycle helper prints the identical diff
and is equivalent (.agents/skills/pr-cycle/pr.py PR_NUMBER diff).
From the changed-file list, build an inventory of review units. A unit is normally
one changed file, with one exception: keep atomic couplings together as a single
unit — a trybuild tests/ui/<case>.rs and its matching <case>.stderr (and any paired
source) must travel together, since reviewing one without the other is meaningless.
Tag each unit with the reviewer type(s) it needs:
cached_proc_macro/src/, src/, tests/, examples.
Essentially every changed .rs file and golden file.src/lib.rs, the public APIs in
src/stores/, cached_proc_macro/src/lib.rs (the macro attribute surface),
README.md, CHANGELOG.md, docs/migrations/, and examples/. Internal macro
plumbing and internal test helpers are not consumer-relevant.A unit may belong to both sets (e.g. src/lib.rs).
The code set and the consumer set are sharded independently. Sharding has two jobs: keep each shard small enough that the review model attends to every line, and vary the grouping between rounds so repeated reviews surface different findings.
a. Pick the target shard size from the review-agent model. Cheaper models get smaller shards; stronger models absorb more per shard without losing attention:
| Review model | Target per shard |
|---|---|
| sonnet (default) | ~600-900 changed diff lines, or ~4-6 units |
| opus | ~1500-2500 changed diff lines, or ~10-15 units |
An explicit shard-size override from the Input wins over this table. Use the
--stat line counts from step 1 for packing.
b. Randomize the grouping, then pack. Produce a fresh random ordering of the units
each run — shuf reseeds from the OS on every invocation, so each round yields a
different permutation:
git diff origin/master --name-only | shufPack the shuffled unit list greedily: add units to the current shard until adding the next would exceed the target size, then start a new shard. Because the order is reshuffled every round, a given file lands with different neighbors each time — reviewers see different cross-file context and surface different cross-cutting findings. Do not re-sort the shuffled list into a tidy order; the randomness is the point. (Atomic couplings from step 1 stay intact as one unit through the shuffle.)
This yields some number of code shards and consumer shards (each typically a handful). Announce the counts before spawning.
For each code shard, spawn a pr-code-reviewer. For each consumer shard, spawn a
pr-consumer-reviewer. Every agent's prompt must include:
git diff origin/master -- <files...> and Read those files in full for context, but
report findings only on the assigned files.src/lib.rs doc comments and
README.md for the APIs its files touch.Both agent types are read-only (no Edit/Write) and carry their full rubrics in their agent definitions — do not re-specify the rubric in the prompt.
Model override: if the input requested a review-agent model (see Input),
pass it to the Agent tool's model parameter on every spawn (e.g. model: "opus").
With no override, omit model so each agent uses its pinned Sonnet default.
Spawn all shard agents in a single message so they run concurrently, and wait for all to complete before proceeding. (Harness concurrency is capped; excess agents queue and still complete.)
Collect every shard's report. Shards are disjoint, so most findings are unique, but a cross-cutting issue can be reported by more than one shard (or by both a code and a consumer reviewer) — merge duplicates into one finding before judging. For each finding, assign a verdict and explain your reasoning:
This verdict pass is the judgment core; run it on the session model (use Opus). Do not
soften or pad — an invalid finding called valid sends pr-cycle (or a human) chasing a
non-issue.
Present a single consolidated report:
file:line (or area), and why it
matters — enough that pr-cycle or a human can act on it without re-reading the agent
output.Do not apply any fix. If the caller wants the findings addressed and pushed, that is
pr-cycle's job.
© jaemk, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/pr-review of jaemk/cached.
Open the folder on GitHubat commit 9da0ec2
PR Review 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| PR Review this skilljaemk/cached | 2.1k | — | ~2.5k | Automated safety check: Notes | MIT | |
| PR Reviewjaemk/self_update | 961 | — | ~1.5k | Automated safety check: Notes | MIT | |
| GitHub Review Iterationprisma/orm | 48k | — | ~2.2k | Automated safety check: Pass | Apache-2.0 | |
| Cherry Studio PR ReviewCherryHQ/cherry-studio | 52k | — | ~3.9k | Automated safety check: Pass | AGPL-3.0 | |
| Pull Request Code Review Orchestratoropeninterpreter/openinterpreter | 69k | 2 repos | ~163 | Automated safety check: Pass | Apache-2.0 | |
| Resolve PR Reviewshencangsheng/easydb_app | 590 | — | ~2.4k | Automated safety check: Pass | MIT |
jaemk/self_update
Targeted, read-only review of a PR or checked-out branch. An agent skill from jaemk/self_update.
prisma/orm
Runs a loop on a GitHub pull request: fetch review state, triage comments into actions, implement them and resolve threads, repeating until nothing actionable is left.
CherryHQ/cherry-studio
Reviews Cherry Studio branches, pull requests, commits, files and docs against the project's own architecture, naming, API-boundary and UI rules, report-only by default.
openinterpreter/openinterpreter
Run a final code review on a pull request
shencangsheng/easydb_app
Resolve pull request code review comments end-to-end. An agent skill from shencangsheng/easydb_app.
ava-labs/firewood
A skill your agent uses when reviewing ava-labs/firewood code changes — pull request or local workspace.
jaemk/cached
PR review-and-update cycle — the orchestrator that takes a PR from review to resolved.
jaemk/cached
Prepare a release (bump versions across all Cargo.toml files, update CHANGELOG.md, refresh the migration guide, regenerate README, commit), or run a pre-release review.
jaemk/cached
Review a library/package from the perspective of an external downstream consumer — build a throwaway crate/project that depends on it the way a real user would, exercise the public API, and surface…
Categories
Targeted, read-only review of a PR or checked-out branch. An agent skill from jaemk/cached. PR Review is an agent skill from jaemk/cached. Targeted, read-only review of a PR or checked-out branch.
PR Review fits situations like: asked to review this PR; review the branch; whats wrong with this diff; do a code review.
Run `npx skills add jaemk/cached --skill pr-review -a claude-code`. Or copy the skill folder (.agents/skills/pr-review in jaemk/cached) into .claude/skills/pr-review in your project. Claude Code loads it when a task matches its description.
Run `npx skills add jaemk/cached --skill pr-review -a codex`. Or copy the skill folder (.agents/skills/pr-review in jaemk/cached) into .agents/skills/pr-review in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add jaemk/cached --skill pr-review -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/pr-review, .gemini/skills/pr-review, .github/skills/pr-review and .opencode/skills/pr-review in your project.
Going by SKILL.md and its folder, PR Review needs the command-line tools its instructions call (git, make and gh). Its frontmatter pre-approves these tools: Bash, Read, Agent.
SKILL.md contains no URLs. Its commands use git and gh, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
PR Review is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.5k tokens (SKILL.md is roughly 10k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with PR Review: PR Review (jaemk/self_update, 961 stars), GitHub Review Iteration (prisma/orm, 48k stars), Cherry Studio PR Review (CherryHQ/cherry-studio, 52k stars) and Pull Request Code Review Orchestrator (openinterpreter/openinterpreter, 69k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
jaemk (a GitHub user) maintains it in jaemk/cached, which has 2,098 GitHub stars. The repository holds 4 skills in this directory. The repository was last updated on October 1, 2026.
Source: jaemk/cached on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.