PR Review Integration
Review pull requests by integrating GitHub operations with Linear issue tracking. Validate code changes against project requirements and provide comprehensive reviews.
Prerequisites
- •GitHub CLI (
gh) installed and authenticated - •Linear MCP server configured and available
- •Access to both GitHub repository and Linear workspace
Complete PR Review Workflow
Step 1: Extract Context from PR
Get PR details:
gh pr view <pr-number> --json title,body,author,state,baseRefName,headRefName
Get changed files:
gh pr view <pr-number> --json files --jq '.files[].path'
Get PR diff:
gh pr diff <pr-number>
Extract Linear issue references:
gh pr view <pr-number> --json body --jq '.body' | grep -oE 'LIN-[0-9]+'
Step 2: Fetch Linear Issue Requirements
Get issue details:
mcp_Linear_get_issue({
id: "LIN-123", // extracted from PR
includeRelations: true // get related/blocking issues
})
Extract requirements from issue:
- •Parse issue
descriptionfor acceptance criteria - •Check
labelsfor feature tags - •Review
commentsfor additional context - •Check
relatedToandblocksfor dependencies
Step 3: Analyze PR Changes
Review code changes:
gh pr diff <pr-number> gh pr diff <pr-number> -- path/to/file gh pr view <pr-number> --json files --jq '.files[] | "\(.path): +\(.additions) -\(.deletions)"'
Check PR status:
gh pr checks <pr-number> gh pr view <pr-number> --json mergeable,mergeStateStatus
Step 4: Validate Against Requirements
Compare PR changes to issue requirements:
- •
Check Feature Completeness:
- •Does PR implement all acceptance criteria?
- •Are all required features present?
- •Are edge cases handled?
- •
Check Code Quality:
- •Follows project standards (AGENTS.md, Cursor rules)
- •Proper error handling
- •Tests included (if required)
- •Documentation updated
- •
Check Dependencies:
- •Related issues addressed?
- •Blocking issues resolved?
- •Integration points considered?
- •
Identify Gaps:
- •Missing requirements
- •Incomplete implementations
- •Additional work needed
Step 5: Document Review Findings
Option A: GitHub PR Comment
gh pr comment <pr-number> --body " ## PR Review Summary ### ✅ Requirements Met - [Requirement 1] - Implemented in [file] - [Requirement 2] - Complete ### ⚠️ Gaps Identified - [Gap 1] - Missing from issue LIN-123 - [Gap 2] - Needs additional work ### 📝 Code Quality - Follows project standards - [Additional notes] ### 🔗 Related Issues - LIN-123 (main issue) - LIN-124 (related) "
Option B: Linear Issue Comment
mcp_Linear_create_comment({
issueId: "LIN-123",
body: `
## PR Review: #${prNumber}
### Status: ${reviewStatus}
### Requirements Coverage
${requirementsChecklist}
### Code Quality
${qualityNotes}
### Next Steps
${nextSteps}
`
})
Option C: Update Linear Issue
mcp_Linear_update_issue({
id: "LIN-123",
state: "In Review", // or appropriate status
})
Best Practices
- •Always link PRs to Linear issues for traceability
- •Extract issue IDs early to fetch requirements
- •Validate against requirements first, then code quality
- •Document gaps clearly with specific file/line references
- •Update Linear issues with review findings
- •Use consistent review format for readability
- •Handle edge cases gracefully (no issue, multiple issues, etc.)
Reference Documentation
- •Review Patterns: See patterns.md for detailed patterns, edge cases, and checklist templates
- •GitHub CLI Operations:
.codex/skills/github-cli-operations/SKILL.md- GitHub CLI patterns - •Linear MCP Integration:
.codex/skills/linear-mcp-integration/SKILL.md- Linear MCP functions