0
Phase 18

PR Review Agent

~3 min read

Concept & How It Works

    Why Does It Exist?

    Human reviewers are bottlenecked and inconsistent. An agent catches obvious issues before humans spend time, letting reviewers focus on design and product tradeoffs.

    Real-World Analogy

    Spell-check and lint for code review — it won't replace your tech lead, but it catches the embarrassing mistakes before the meeting.
    Loading diagram...

    Visual Workflows

    What is PR Review Agent?

    Loading diagram...

    Example

    Scenario

    On a 400-line PR, the agent flags an SQL injection in a new endpoint, notes missing unit tests for the payment module, and suggests extracting duplicated validation — posting three inline comments with 'request changes' summary.

    Solution

    In Coding Agents, apply PR Review Agent to this scenario: On a 400-line PR, the agent flags an SQL injection in a new endpoint, notes missing unit tests for the payment module, and suggests extracting duplicated validation — posting three inline comments with 'request changes' summary. Identify the inputs, run the technique, validate the output, and note one thing you would monitor in production.

    Practice Task

    Do this before moving to the next module — reading alone is not enough.

    Open the Code Walkthrough below and run it locally. Change one parameter related to PR Review Agent (e.g. model, temperature, top_k, or tool name), observe the difference in output, and write 2–3 sentences explaining what changed.

    Code Walkthrough

    Highlighted lines show where PR Review Agent happens in the code.

    PR Review Agent
    1async function reviewPullRequest(prNumber) {  # key line for PR Review Agent2  const diff = await github.getPRDiff(prNumber);3  const staticFindings = await runSemgrep(diff);4  const llmReview = await reviewerLLM.analyze({  # key line for PR Review Agent5    diff,6    staticFindings,7    rubric: ["security", "correctness", "tests", "maintainability"],8  });9  const comments = rankAndDedupe(llmReview.comments).filter(c => c.confidence > 0.7);  # key line for PR Review Agent10  await github.createReview(prNumber, { comments, event: comments.some(c => c.blocking) ? "REQUEST_CHANGES" : "COMMENT" });  # key line for PR Review Agent11}

    Commands to Remember

    Commands to Remember

    • pip install openai # code generation and review
    • gh pr create # open a pull request from agent output

    Common Mistakes

    • Treating PR Review Agent as a black box without evaluation
    • Ignoring cost and latency in production
    • Skipping error handling for pr review agent

    Cheat Sheet

    Quick recap — the most important points from this module.

    Cheat Sheet

    quick ref
    • PR Review Agent
    • Inline Review
    • Static Analysis
    • Review Rubric