pyre-check: Check Python Types and Find Data Flows

Summary
Pyre is an incremental, performant type checker for Python, with Pysa for security-focused data-flow analysis. The repository is archived: type checking has moved to Pyrefly, and Pysa is maintained in a separate repository.
At a glance
- Language
- OCaml
- License
- MIT
- Stars
- 7.2k
- Forks
- 450
- Added to OSRepos
- November 16, 2025
- Last analyzed
- October 3, 2026
This repository is archived on GitHub and no longer maintained.
View on GitHubTopics
Click on any tag to explore related repositories
Use at your own risk
OSRepos shares public repositories for knowledge and discovery only. Any installation, execution, configuration, or use of code from these repositories is the user's own responsibility. Always review the repository, source code, dependencies, licenses, and security implications before running or installing anything. OSRepos is not responsible for issues, damages, or losses resulting from third-party repositories.
Overview
Pyre checks Python code against type annotations and reports mismatches, helping developers catch errors during development. Its incremental analysis and daemon are intended to provide quick feedback on large codebases as files change.
The repository also documents Pysa, a security-focused static analysis tool for tracking data flows. This repository is archived, so it is best treated as a reference for existing Pyre setups rather than the starting point for a new deployment. Type checking has been replaced by Pyrefly, and Pysa has moved to its own repository.
Key Features
- Checks Python type annotations in line with PEP 484.
- Analyzes code incrementally and can monitor filesystem changes through a daemon.
- Reports type errors with locations and descriptions.
- Supports large codebases, according to the project documentation.
- Includes Pysa, a security-oriented static analysis tool for reasoning about Python data flows, now maintained separately.
Use Cases
- Python developers maintaining an existing Pyre configuration can use it to understand or continue a legacy setup.
- Teams working in typed Python can use type checking to catch incompatible assignments during development.
- Developers of large codebases may find incremental checking useful for faster feedback while editing.
- Security engineers looking for Python data-flow analysis should use the current Pysa repository, not this archived repository.
- Teams choosing a type checker for a new project should evaluate Pyrefly, the stated successor.
Project Facts
- Language: OCaml
- License: MIT
- Stars: 7.2k
- Forks: 450
- Topics: abstract-interpretation, code-quality, control-flow-analysis, ocaml, program-analysis, python, security, static-analysis, taint-analysis, type-check, typechecker
- Archived: true
Getting Started
For an existing setup, install the package with pip install pyre-check. The repository is archived, so consult the Pyre README for setup details and consider the successor projects for current use.
Alternatives
- Mypy: Mypy is another Python static type checker, while Pyre emphasizes incremental performance and paired with Pysa for security-focused data-flow analysis.
- Pytype: Pytype is another Python static analyzer, using bytecode-based inference rather than Pyre's incremental type-checking approach.
Considerations
- The repository is archived and is no longer maintained.
- Pyre type checking has been replaced by Pyrefly; Pysa has moved to a separate repository.
- The documented setup requires Python 3.9 or later and Watchman.
- The project is implemented in OCaml, while its analysis targets Python code.
Source repository
Open the original repository on GitHub.
21 counted GitHub visits
Related repositories
Similar repositories that may be relevant next.

web-design: Create Consistent Web Pages with a Claude Code Skill
October 3, 2026
web-design is a Claude Code skill that turns product briefs, reference URLs, or screenshots into an editable design specification before generating web code. It is suited to developers and designers who want a repeatable, spec-led workflow for building consistent pages.

oomwoo: Build a DIY Robot Vacuum
October 2, 2026
OOMWOO is a planned, hackable robot vacuum built around Raspberry Pi, ROS2 and 2D LiDAR. It is aimed at makers who want to build and customize a locally controlled vacuum, but its hardware and build instructions are still in development.

shepherd: Supervise Agents with Reversible Execution Traces
October 2, 2026
Shepherd records agent work as inspectable, reversible execution traces and keeps changes as proposals for review. It is aimed at developers building systems that supervise, replay, or manage the work of other agents.

agent-anvil: Test AI Agent Tool Use in CI
October 1, 2026
Agent Anvil evaluates tool-using AI agents through scenario-based runs, trace checks, and optional semantic grading. It helps teams catch unsafe or incorrect tool behavior before it reaches production.