Coding

Code Review Assistant Prompt

Code reviews are essential for maintaining quality, but they're time-consuming. I've spent countless hours reviewing pull requests, looking for bugs, security issues, and opportunities for improvement. This AI prompt acts as a first-pass reviewer, catching common issues and suggesting improvements before human review.

This isn't about replacing human code review—it's about making it more efficient. The AI catches obvious issues, style inconsistencies, and potential bugs, so you can focus on architecture, business logic, and nuanced decisions that require human judgment.

The Complete Code Review Prompt

Copy This Prompt:

You are an experienced software engineer conducting a thorough code review. Please analyze the following code and provide detailed feedback on:

1. Bugs and Logic Errors

  • Identify any potential bugs or logic errors
  • Point out edge cases that aren't handled
  • Flag any null pointer or undefined value risks

2. Security Vulnerabilities

  • Check for SQL injection, XSS, or other security issues
  • Identify any exposed sensitive data
  • Flag insecure authentication or authorization

3. Performance Issues

  • Identify inefficient algorithms or data structures
  • Point out unnecessary loops or redundant operations
  • Suggest optimization opportunities

4. Code Quality

  • Assess readability and maintainability
  • Check for proper error handling
  • Evaluate naming conventions and code organization
  • Identify code duplication

5. Best Practices

  • Suggest improvements following language-specific best practices
  • Recommend design pattern applications where appropriate
  • Point out violations of SOLID principles

For each issue found, provide:

  • The specific line or section with the issue
  • Why it's problematic
  • A concrete suggestion for improvement
  • Example code showing the fix (when applicable)

Here's the code to review:

[Paste your code here]

Why This Prompt Works

I've refined this prompt over dozens of code reviews. The key is being specific about what to look for. Generic "review this code" prompts give generic feedback. This structured approach ensures comprehensive coverage of common issues.

It's Systematic

The prompt breaks down code review into specific categories. This prevents the AI from focusing too heavily on one aspect (like style) while missing critical issues (like security vulnerabilities).

It Demands Specificity

By requiring the AI to identify specific lines, explain problems, and provide fixes, you get actionable feedback instead of vague suggestions like "improve error handling."

It Balances Multiple Concerns

Good code review considers bugs, security, performance, and maintainability. This prompt ensures all aspects get attention.

Real-World Example

Let me show you how this works with actual code. Here's a Python function I recently reviewed:

Original Code:

def get_user_data(user_id):
    query = "SELECT * FROM users WHERE id = " + user_id
    result = db.execute(query)
    return result[0]

Using the code review prompt, the AI identified several critical issues:

Issue 1: SQL Injection Vulnerability

Problem: String concatenation in SQL queries allows SQL injection attacks.

Fix: Use parameterized queries:

def get_user_data(user_id):
    query = "SELECT * FROM users WHERE id = ?"
    result = db.execute(query, (user_id,))
    return result[0]

Issue 2: No Error Handling

Problem: If no user is found, accessing result[0] will raise an IndexError.

Fix: Add proper error handling:

def get_user_data(user_id):
    query = "SELECT * FROM users WHERE id = ?"
    result = db.execute(query, (user_id,))
    if not result:
        return None
    return result[0]

Issue 3: Over-fetching Data

Problem: SELECT * fetches all columns, which may include sensitive data or be inefficient.

Fix: Specify needed columns:

def get_user_data(user_id):
    query = "SELECT id, name, email FROM users WHERE id = ?"
    result = db.execute(query, (user_id,))
    if not result:
        return None
    return result[0]

This is the kind of detailed, actionable feedback the prompt generates. It caught a critical security vulnerability, a potential runtime error, and a performance issue—all in three lines of code.

Customizing for Different Languages

The base prompt works across languages, but you can enhance it with language-specific guidance.

For JavaScript/TypeScript

Add: "Pay special attention to async/await usage, promise handling, and potential race conditions. Check for proper TypeScript type definitions if applicable."

For Python

Add: "Verify PEP 8 compliance, check for proper use of list comprehensions vs loops, and ensure appropriate use of context managers for resource handling."

For Java

Add: "Check for proper exception handling, verify thread safety in concurrent code, and ensure resources are properly closed (try-with-resources)."

For Go

Add: "Verify proper error handling (not ignoring errors), check for goroutine leaks, and ensure proper use of defer for cleanup."

Advanced Usage Patterns

Focused Reviews

Sometimes you want to focus on specific aspects. Modify the prompt:

"Focus specifically on security vulnerabilities and performance issues. Provide detailed analysis of any SQL queries, authentication logic, and algorithmic complexity."

Comparative Reviews

When refactoring, compare old and new implementations:

"Compare these two implementations. Which is better and why? Consider performance, readability, and maintainability. [Paste both versions]"

Architecture Review

For higher-level feedback:

"Review this code from an architectural perspective. Does it follow SOLID principles? Is the separation of concerns appropriate? Are there better design patterns that could be applied?"

What AI Code Review Does Well

Catching Common Mistakes

AI excels at spotting patterns it's seen before: SQL injection, XSS vulnerabilities, off-by-one errors, null pointer issues. These are the bugs that slip through when you're tired or rushing.

Enforcing Consistency

AI doesn't get fatigued. It applies the same standards to every line of code, catching style inconsistencies and pattern violations that humans might miss.

Suggesting Improvements

AI can suggest more efficient algorithms, better data structures, or cleaner patterns based on its training on millions of code examples.

What AI Code Review Doesn't Replace

Business Logic Validation

AI doesn't understand your business requirements. It can't tell you if the code actually solves the right problem or implements the correct business rules.

Architectural Decisions

While AI can suggest patterns, it can't make strategic architectural decisions that consider your team's skills, existing codebase, and long-term goals.

Context and Nuance

Sometimes "bad" code is intentional—a temporary workaround, a performance optimization, or a compatibility requirement. AI lacks the context to understand these decisions.

Best Practices for AI Code Review

Review in Chunks

Don't paste 1000 lines at once. Review functions or classes individually for more focused feedback. I typically review 50-100 lines at a time.

Provide Context

Tell the AI what the code is supposed to do: "This function processes payment transactions and should handle edge cases like partial refunds and currency conversion."

Iterate on Feedback

If the AI's suggestion isn't quite right, ask follow-up questions: "Your suggestion would work, but it doesn't handle the case where the user is logged out. How would you modify it?"

Verify Suggestions

Always test AI-suggested fixes. Sometimes they look good but have subtle issues. Run your tests, check edge cases, and use your judgment.

Integration into Your Workflow

Pre-Commit Review

Before committing code, run it through AI review. Catch issues before they enter version control.

Pull Request Preparation

Use AI review to clean up your code before requesting human review. Your colleagues will appreciate receiving cleaner code.

Learning Tool

When AI suggests improvements, understand why. This makes you a better developer over time.

Second Opinion

When you're unsure about an implementation, get AI feedback. It might spot issues you're too close to see.

Common Issues and Solutions

Too Generic Feedback

Problem: AI gives vague suggestions like "improve error handling."

Solution: Ask for specifics: "Show me exactly how to improve error handling with code examples."

Missing Context

Problem: AI suggests changes that don't fit your architecture.

Solution: Provide more context about your system: "We use a repository pattern with dependency injection. Suggest improvements that fit this architecture."

Over-Engineering

Problem: AI suggests complex solutions for simple problems.

Solution: Specify constraints: "Suggest improvements that keep the code simple and maintainable. Avoid over-engineering."

Measuring Impact

Since integrating AI code review into my workflow, I've noticed:

  • Fewer bugs making it to production (especially null pointer and edge case issues)
  • More consistent code style across the team
  • Faster human code reviews (reviewers focus on logic, not style)
  • Better learning for junior developers (they see detailed explanations of issues)

Related Resources

Frequently Asked Questions

Can AI replace human code review?

No. AI is excellent at catching common issues, but human reviewers are essential for validating business logic, architectural decisions, and context-specific concerns. Use AI as a first pass to catch obvious issues, then have humans review the important stuff.

What programming languages work best with this prompt?

This prompt works well with all major languages: Python, JavaScript, TypeScript, Java, C#, Go, Ruby, PHP, and more. The AI has been trained on code from all these languages and can provide relevant feedback for each.

How do I handle false positives?

AI sometimes flags intentional design decisions as issues. Use your judgment to evaluate each suggestion. If something is intentional, you can ask the AI: "This is intentional because [reason]. Are there still concerns with this approach?"

Should I review AI-generated code with this prompt?

Absolutely. AI-generated code often has subtle issues. Using this prompt to review AI-generated code is a great way to catch problems before they cause issues in production.