# Pr Code Reviewer

> Reviews a GitHub pull request or focused branch diff for correctness, regressions, security, compatibility, test gaps, and maintainability. Use when an implementation needs an independent source-aware review before merge. Produces prioritized findings with evidence and actionable fixes. Not for architecture-only audits, formatting preferences, or processing existing review feedback.

- Skill: `thiientv/pr-code-reviewer` (Agent Skill)
- Install (CLI): `npx skillmds@latest add thiientv/pr-code-reviewer`
- Raw SKILL.md: https://api.skillmd.com/api/skills/thiientv/pr-code-reviewer/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Security
- Author: thiientv (https://skillmd.com/u/thiientv)
- Updated: 2026-09-21
- Page: https://skillmd.com/skills/thiientv/pr-code-reviewer

---


# PR Code Reviewer

Review the change, not the author's intent. Prefer concrete evidence from the
PR diff, surrounding code, tests, history, and the stated contract.

## Establish the review boundary

1. Identify the base and head revisions and inspect the complete diff.
2. Read the PR description, linked requirements, acceptance criteria, and
   relevant design or ADR material.
3. Trace changed code into direct callers, consumers, persistence, external
   interfaces, and error paths where needed.
4. Inspect changed tests and identify important behavior that remains unproved.

Do not spend equal time on every file. Follow changed behavior and risk.

## Review dimensions

Check, in order of likely impact:

- **Correctness:** broken logic, incorrect state transitions, race conditions,
  error handling, invalid assumptions, and regressions.
- **Security:** authorization/authentication gaps, injection, secret exposure,
  unsafe deserialization, trust-boundary violations, and sensitive logging.
- **Compatibility:** public API, schema, migration, config, data-format,
  backward-compatibility, and rollout risks.
- **Reliability:** retries, timeouts, idempotency, resource cleanup,
  concurrency, partial failure, and observability.
- **Performance:** avoidable hot-path work, unbounded operations, N+1 access,
  excessive allocations, or latency changes supported by the code path.
- **Tests:** missing regression coverage, assertions that cannot fail for the
  defect, brittle tests, and gaps at important boundaries.
- **Maintainability:** misleading ownership, duplicated policy, hidden side
  effects, or complexity that materially raises future change risk.

Do not report pure style or personal preference unless the repository enforces
it or the style creates a concrete defect risk.

## Validate findings

Every finding must have:

- severity: `P0` blocker, `P1` high, `P2` medium, or `P3` low;
- precise file/line or diff location;
- the violated behavior, contract, or invariant;
- evidence explaining why the issue is real;
- a minimal, actionable fix or verification step.

Before reporting a finding, inspect enough surrounding code to rule out a
false positive. Run focused tests or static checks when available. Distinguish
a defect from a missing-proof finding.

## Review output

Return findings in priority order. For each finding use:

```text
[P1] path/to/file.ts:42
Problem: <what is wrong>
Evidence: <why the current implementation fails or is risky>
Fix: <smallest useful correction>
```

Then provide:

1. **Verdict:** `approve`, `approve with follow-up`, or `request changes`.
2. **Coverage gaps:** important behavior not directly proven.
3. **What was checked:** tests, static analysis, or other evidence.

If no actionable findings remain, say so explicitly and still report important
coverage gaps or verification limits. Never call a PR safe solely because CI
is green.

## Completion condition

The review is complete when the changed behavior has been inspected in context,
high-risk paths have evidence, findings are prioritized and actionable, and
remaining uncertainty is explicitly stated.

