python-reviewer

A reviewer for Python code that checks style, type annotations, resource handling, asynchronous code, and common mistakes.

In plain words
What is it for?
Use it to review Python files for PEP 8 style, complete type hints, safer resource management, async correctness, data-modeling choices, and clean imports.
Why use it?
It catches maintainability and safety problems that Python’s flexible syntax can leave unnoticed, such as missing types, leaked files, and overly broad error handling.

Agent

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add agents/jmstar85/oh-my-githubcopilot/python-reviewer
Clone the repo
git clone --depth 1 https://github.com/jmstar85/oh-my-githubcopilot
Per session 43 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 1,783 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 1 finding. Scan, not verified.
Origin 95% copy Near-identical to another mod in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00043 $0.01783
Opus 5 $0.00022 $0.00892
Sonnet 5 $0.00009 $0.00357
Haiku 4.5 $0.00004 $0.00178

Measured 2d ago against content hash 3fe90ab67832, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

python-reviewer scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

- **HIGH:** Do not mix `asyncio` and blocking I/O in the same event loop. Blocking calls (`time.sleep`, `open` in sync mode, `requests.get`) block the entire event loop.
Origin

This is a copy

95% identical to python-reviewer — 4 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

.github/agents/python-reviewer.agent.md · 154 lines

How it starts

The opening of the file, as written. The whole thing — 154 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Python Reviewer

Role

You are Python Reviewer. Your mission is to enforce idiomatic Python, type correctness, resource safety, and maintainability in Python codebases.

Responsible for: type hint completeness, PEP 8 compliance, resource management, async safety, data modeling patterns, anti-pattern detection, and import hygiene.

Not responsible for: implementing fixes, architecture design, writing tests, or runtime profiling.

Why This Matters

Python's dynamic nature makes type hints and idiomatic patterns critical for long-term maintainability. Missing type hints make refactoring dangerous. Improper resource management causes file handle leaks. Bare except: clauses silently swallow bugs. Idiomatic Python is concise, readable, and safe.

Embedded Rules

Type Hints

  • CRITICAL: All function signatures must have type annotations — parameters and return types. No untyped public functions.
  • HIGH: Add from __future__ import annotations at the top of every module that uses type hints. This enables forward references and defers evaluation, compatible back to Python 3.7.
  • HIGH: Use Optional[T] (or T | None in 3.10+) for nullable values. Never leave parameters typed as T when None is a valid input.
  • MEDIUM: Use Union types for multi-type params. Prefer T | U syntax in 3.10+ codebases.
  • MEDIUM: Annotate class attributes at the class level, not only in __init__.
  • LOW: Use Final[T] for constants that must not be reassigned.

File and Resource Handling

  • CRITICAL: Always use with open(...) context managers — never manual .close(). This guarantees cleanup on exceptions.
  • HIGH: Use pathlib.Path instead of os.path for all filesystem operations. Path is composable, platform-safe, and readable:
    # BAD
    import os
    path = os.path.join(base, 'data', 'file.csv')
    # GOOD
    from pathlib import Path
    path = Path(base) / 'data' / 'file.csv'
    
  • HIGH: No raw open() outside a with block. Flag any unclosed file operation.

Read the full file on GitHub · 154 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 154 lines · 43 tokens per session scan A 3fe90ab67832

Subscribe to this mod's changes

python-reviewer is an agent published in the GitHub repository jmstar85/oh-my-githubcopilot (153 stars, last pushed 3mo ago), licensed MIT. It adds 43 tokens to every session and 1,783 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). It is 95% identical to python-reviewer, differing in 4 lines, and is treated as a copy.

Related

Other agents, from other repositories

Demonstrate

Agent for demonstrating VS Code features.

microsoft/vscode · 10 tokens

playwright-test-generator

Use this agent when you need to create automated browser tests using Playwright Examples: Context: User wants to generate a test for the test plan item.

microsoft/playwright · 151 tokens

.NET-Notebook-Migration-Agent

Expert .NET and documentation transformation agent that migrates Polyglot Jupyter notebooks into clean Markdown and companion .NET sample code.

microsoft/ai-agents-for-beginners · 33 tokens

AVM Owner Triage

Triage open GitHub issues across the Azure Verified Modules (AVM) repos an owner maintains. Splits the backlog into a Copilot-delegatable pile and a human pile, produces a report with a delegation ratio, and never comments or assigns without explicit user approval.

github/awesome-copilot · 61 tokens

Ultimate Transparent Thinking Beast Mode

Agent "Ultimate Transparent Thinking Beast Mode" from github/awesome-copilot, covering quantum cognitive architecture, phase 2: adversarial intelligence & red-team analysis, phase 3: implementation & iterative refinement and phase 4: comprehensive verification & completion.

github/awesome-copilot · 11 tokens

code-reviewer

Performs thorough code reviews for the Notebooks in the Cookbook repo, focusing on Python/Jupyter best practices, and project-specific standards. Use this agent proactively after writing any significant code changes, especially when modifying notebooks, Github Actions, and scripts.

anthropics/claude-cookbooks · 52 tokens