Works with the AI tools you already use

    Claude CodeClaude CodeCursorCursorCodex CLICodex CLIMuseMuseDotsDots+22 more

    universal code reviewer

    1

    A systematic code audit tool for identifying security flaws, performance bottlenecks, and logic errors across 30+ languages.

    $6

    Secure checkout via Stripe

    30-day refund guarantee

    Converts to your local currency at checkout

    Security scanned
    universal code reviewer

    universal code reviewer

    Example session with this skill installed

    Review this Python snippet for a web handler:

    def get_user(request):
        user_id = request.args.get('id')
        query = f"SELECT * FROM users WHERE id = '{user_id}'"
        return db.execute(query)
    
    • Read your context and instructions
    • Compiled the universal code reviewer

    I have analyzed the Python snippet. This code contains a critical security vulnerability and lacks basic error handling.

    Code Review Report

    1. Detection

    • Language: Python
    • Framework: Detected as a generic Web Handler (likely Flask/Quart)
    • Detection Confidence: High

    2. Overall Assessment

    • Overall Score: 20/100
    • Risk Level: CRITICAL
    • Summary: The code is vulnerable to SQL injection and will crash on missing parameters or database failures.

    3. Issues Found

    [CRITICAL] SQL Injection Vulnerability

    Location: query = f"SELECT * FROM users WHERE id = '{user_id}'"
    Problem: The code uses f-strings to inject user-provided input directly into a SQL statement.
    Why it matters: An attacker can provide a payload like ' OR '1'='1 to bypass authentication or drop tables.
    Recommended fix: Use parameterized queries (prepared statements).
    Confidence: Confirmed

    [MEDIUM] Missing Input Validation

    Location: user_id = request.args.get('id')
    Problem: There is no check to ensure user_id is present or in the expected format (e.g., integer).
    Why it matters: The code will proceed with a None value if the 'id' key is missing, leading to logical errors or a malformed query.

    4. Security Findings

    • Vulnerability: SQL Injection
    • Severity: CRITICAL
    • Impact: Full database compromise.
    • Mitigation: Always use the database driver's parameter substitution syntax.

    8. Corrected Code

    def get_user(request):
        user_id = request.args.get('id')
        if not user_id:
            return {"error": "Missing user ID"}, 400
        
        # Use parameterized query to prevent injection
        query = "SELECT * FROM users WHERE id = %s"
        try:
            return db.execute(query, (user_id,))
        except Exception as e:
            # Log error and return safe response
            return {"error": "Database operation failed"}, 500
    

    Next steps

    • Implement a global error handler for database exceptions.
    • Add type validation to ensure user_id matches your schema requirements.
    • Verify the db.execute implementation supports parameter binding.

    Connects securely to your tools. The creator never sees your data.

    About this skill

    The problem

    Manual code reviews are slow, prone to human oversight, and often miss critical security or performance bottlenecks. Developers need a systematic way to audit code for production readiness without waiting for a senior peer's calendar to clear.

    What it does

    • Automatically identifies programming languages, frameworks, and runtimes across polyglot codebases.
    • Performs deep static analysis for logic flaws, race conditions, and off-by-one errors.
    • Identifies security vulnerabilities including SQL injection, XSS, and hardcoded secrets.
    • Conducts performance audits to find N+1 queries, memory leaks, and inefficient O(n) complexity.
    • Generates structured reports with severity-scored issues and ready-to-apply refactored code.

    Frameworks & tools

    Supports Python (Flask/Django), JavaScript/TypeScript (Node/React), Rust, Go, C/C++, Java, PHP, SQL, and configuration formats like YAML/JSON.

    Why this beats prompting it yourself

    Generic LLM prompts often focus on style or produce hallucinations about missing context. This skill uses a 10-step systematic pipeline that forces evaluation of security, performance, and resource lifecycles before offering a final score, ensuring no critical vector is ignored.

    Use cases

    • Pre-PR audits to catch breaking bugs and security flaws before they hit CI.
    • Refactoring legacy functions to improve maintainability and SOLID compliance.
    • Scanning third-party snippets or stack overflow solutions for hidden vulnerabilities.
    • Standardizing code quality across a multi-language microservices architecture.

    Known limitations

    Static analysis only. Cannot confirm runtime behavior or environment-specific bugs without execution access. Review quality depends on the completeness of the provided code fragments.

    How to use

    Skills on Agensi run inside your AI agent. Copy the prompt, paste it into your agent, and it connects to Agensi and installs this skill for you. If a payment is needed, your agent shows it to you first.

    Reviews

    No reviews yet

    Be one of the first to try it. Every listed skill passes our trust checks below.

    Security scanned

    Passed our 8-point scan before listing

    Fresh listing

    Recently published to Agensi

    30-day refund

    Not a fit? Get your money back

    Trust & safety

    Security scanned

    Verified clean 1 month ago

    • Passed all security checks, Safe to install

    Listed1 month ago

    What's inside

    Frequently Asked Questions