Review a Specific PR
Given a GitHub PR URL or identifier, perform a thorough code review covering correctness, security, performance, testing, and style.
Input
Requires a PR URL in the format https://github.com/{owner}/{repo}/pull/{number} or {owner}/{repo}#{number}.
Instructions
Phase 1: Context Gathering
- Fetch PR metadata - title, description, author, branch, labels, linked issues
- Fetch the diff - all changed files with additions and deletions
- Fetch CI/CD status - check suite results, individual check runs
- Fetch existing reviews and comments - prior feedback from other reviewers
- Fetch linked issues - understand the intent behind the changes
Phase 2: Code Analysis
Analyze each changed file for:
Correctness & Logic
- Off-by-one errors, null/undefined handling, race conditions
- Proper error handling and edge cases
- Correct use of async/await patterns
- State management issues
Security
- Hardcoded credentials, API keys, tokens (NEVER allowed per project rules)
- SQL injection, XSS, CSRF vulnerabilities
- Insecure cryptographic algorithms (no MD5, SHA-1, DES, RC4)
- Proper input validation and sanitization
- Certificate handling (check expiration, key strength, signature algorithms)
Performance
- Unnecessary re-renders (React), N+1 queries, unbounded loops
- Memory leaks (event listeners, subscriptions not cleaned up)
- Missing pagination for large datasets (OOM protection)
- Expensive operations in hot paths
Testing
- Are new code paths covered by tests?
- Are edge cases tested?
- Do existing tests still pass?
- Integration test coverage for agent interactions
Style & Standards
- Conventional commit format in PR title
- DCO sign-off present in commits
- Python: Black formatting, Ruff compliance, type hints, Google-style docstrings
- TypeScript/React: Proper typing, component patterns
- Import organization (stdlib, third-party, local-package, local-relative)
Architecture
- Does the change follow existing patterns in the codebase?
- Are new dependencies justified?
- Is the change scope appropriate (not too large)?
- Breaking changes properly documented?
Phase 3: Review Output
Categorize findings by severity:
- Critical - Must fix before merge (bugs, security, data loss)
- Major - Should fix before merge (significant quality issues)
- Minor - Nice to have improvements (style, readability)
- Praise - Well-done patterns worth calling out
Output Format
## PR Review: #{number} - {title}
**Author**: @{author} | **Branch**: {head} -> {base}
**Changed Files**: {count} | **Additions**: +{added} | **Deletions**: -{removed}
**CI Status**: Passing/Failing | **Reviews**: {status}
### Summary
[1-2 paragraph overview of what this PR does and overall assessment]
### Verdict: Approve / Request Changes / Comment
---
### Critical Issues (must fix)
#### 1. [File: path/to/file.py, Line 42]
**Issue**: Missing null check before accessing `response.data`
**Impact**: Will throw TypeError in production when API returns empty response
**Suggestion**:
```python
if response and response.data:
process(response.data)
Major Issues (should fix)
...
Minor Suggestions
...
What Looks Good
- Clean separation of concerns in the new agent module
- Good test coverage for the happy path
Checklist
## Examples
- "Review the PR at https://github.com/cnoe-io/ai-platform-engineering/pull/42"
- "Can you do a code review of cnoe-io/ai-platform-engineering#123"
- "Review PR #567 in the ai-platform-engineering repo"
## Guidelines
- Always read the full diff, not just file names
- Check if the PR description adequately explains the "why" not just the "what"
- Verify that the PR size is reasonable (flag PRs with >500 lines changed as potentially too large)
- When finding security issues, reference the specific codeguard rule (e.g., no hardcoded credentials, no banned crypto algorithms)
- If tests are missing, suggest specific test cases rather than just saying "add tests"
- Be constructive - balance criticism with praise for good patterns
- Check for breaking changes that may need an ADR in `docs/docs/changes/`
---
> Converted and distributed by [TomeVault](https://tomevault.io/claim/cnoe-io) — claim your Tome and manage your conversions.
<!-- tomevault:4.0:skill_md:2026-04-11 -->
1---2name: review-specific-pr3description: Perform a comprehensive code review of a specific GitHub Pull Request. Analyzes code changes, checks for bugs, security issues, test coverage, and coding standards compliance. Use when a user provides a PR URL or asks to review a specific pull request. Use when this capability is needed.4---56# Review a Specific PR78Given a GitHub PR URL or identifier, perform a thorough code review covering correctness, security, performance, testing, and style.910## Input1112Requires a PR URL in the format `https://github.com/{owner}/{repo}/pull/{number}` or `{owner}/{repo}#{number}`.1314## Instructions1516### Phase 1: Context Gathering171. **Fetch PR metadata** - title, description, author, branch, labels, linked issues182. **Fetch the diff** - all changed files with additions and deletions193. **Fetch CI/CD status** - check suite results, individual check runs204. **Fetch existing reviews and comments** - prior feedback from other reviewers215. **Fetch linked issues** - understand the intent behind the changes2223### Phase 2: Code Analysis24Analyze each changed file for:25261. **Correctness & Logic**27 - Off-by-one errors, null/undefined handling, race conditions28 - Proper error handling and edge cases29 - Correct use of async/await patterns30 - State management issues31322. **Security**33 - Hardcoded credentials, API keys, tokens (NEVER allowed per project rules)34 - SQL injection, XSS, CSRF vulnerabilities35 - Insecure cryptographic algorithms (no MD5, SHA-1, DES, RC4)36 - Proper input validation and sanitization37 - Certificate handling (check expiration, key strength, signature algorithms)38393. **Performance**40 - Unnecessary re-renders (React), N+1 queries, unbounded loops41 - Memory leaks (event listeners, subscriptions not cleaned up)42 - Missing pagination for large datasets (OOM protection)43 - Expensive operations in hot paths44454. **Testing**46 - Are new code paths covered by tests?47 - Are edge cases tested?48 - Do existing tests still pass?49 - Integration test coverage for agent interactions50515. **Style & Standards**52 - Conventional commit format in PR title53 - DCO sign-off present in commits54 - Python: Black formatting, Ruff compliance, type hints, Google-style docstrings55 - TypeScript/React: Proper typing, component patterns56 - Import organization (stdlib, third-party, local-package, local-relative)57586. **Architecture**59 - Does the change follow existing patterns in the codebase?60 - Are new dependencies justified?61 - Is the change scope appropriate (not too large)?62 - Breaking changes properly documented?6364### Phase 3: Review Output65Categorize findings by severity:66- **Critical** - Must fix before merge (bugs, security, data loss)67- **Major** - Should fix before merge (significant quality issues)68- **Minor** - Nice to have improvements (style, readability)69- **Praise** - Well-done patterns worth calling out7071## Output Format7273```markdown74## PR Review: #{number} - {title}7576**Author**: @{author} | **Branch**: {head} -> {base}77**Changed Files**: {count} | **Additions**: +{added} | **Deletions**: -{removed}78**CI Status**: Passing/Failing | **Reviews**: {status}7980### Summary81[1-2 paragraph overview of what this PR does and overall assessment]8283### Verdict: Approve / Request Changes / Comment8485---8687### Critical Issues (must fix)88#### 1. [File: path/to/file.py, Line 42]89**Issue**: Missing null check before accessing `response.data`90**Impact**: Will throw TypeError in production when API returns empty response91**Suggestion**:92```python93if response and response.data:94 process(response.data)95```9697### Major Issues (should fix)98...99100### Minor Suggestions101...102103### What Looks Good104- Clean separation of concerns in the new agent module105- Good test coverage for the happy path106107### Checklist108- [ ] Conventional commit title109- [ ] DCO sign-off on all commits110- [ ] Tests added/updated111- [ ] No hardcoded credentials112- [ ] Type hints present113- [ ] Docstrings for public APIs114```115116## Examples117118- "Review the PR at https://github.com/cnoe-io/ai-platform-engineering/pull/42"119- "Can you do a code review of cnoe-io/ai-platform-engineering#123"120- "Review PR #567 in the ai-platform-engineering repo"121122## Guidelines123124- Always read the full diff, not just file names125- Check if the PR description adequately explains the "why" not just the "what"126- Verify that the PR size is reasonable (flag PRs with >500 lines changed as potentially too large)127- When finding security issues, reference the specific codeguard rule (e.g., no hardcoded credentials, no banned crypto algorithms)128- If tests are missing, suggest specific test cases rather than just saying "add tests"129- Be constructive - balance criticism with praise for good patterns130- Check for breaking changes that may need an ADR in `docs/docs/changes/`131132---133> Converted and distributed by [TomeVault](https://tomevault.io/claim/cnoe-io) — claim your Tome and manage your conversions.134<!-- tomevault:4.0:skill_md:2026-04-11 -->