pyre-check vs opengrep

Python type checking and rule-based security scanning compared

pyre-check checks Python type annotations and includes documentation for Pysa data-flow analysis. opengrep scans code for rule-defined patterns and security issues across multiple languages; unlike pyre-check, it is not limited to Python type checking and its repository is not archived.

pyre-checkopengrep
LanguageOCamlOCaml
LicenseMITLGPL-2.1
Stars7.2k3.1k
Forks450272
Last analyzedOct 3, 2026Oct 7, 2026

Key differences

  • pyre-check focuses on Python type checking, while opengrep performs customizable, multi-language pattern and security scans.
  • pyre-check uses incremental analysis and a daemon for feedback as files change; opengrep scans against customizable YAML rules, including Semgrep-compatible rules.
  • pyre-check documents Pysa for security-focused data-flow analysis, but Pysa is now maintained separately; opengrep provides intrafile taint analysis.
  • pyre-check is archived, with type checking superseded by Pyrefly; opengrep is not archived.
  • pyre-check uses the MIT license, while opengrep uses LGPL-2.1.
  • Both are implemented in OCaml, but pyre-check targets Python code and opengrep supports more than 30 languages.

Choose pyre-check if you…

  • maintain or need to understand an existing Pyre configuration.
  • want incremental Python type checking for a legacy setup.
  • need a reference for Pyre type errors and its documented workflow.
Read the pyre-check analysis →

Choose opengrep if you…

  • need customizable, multi-language rule-based scanning.
  • want Semgrep-compatible rules or intrafile taint analysis.
  • need JSON or SARIF findings for downstream tooling.
Read the opengrep analysis →

Compare the numbers side by side, or add more projects

This comparison is generated with AI from the OSRepos analyses of both projects. Always check each project's repository and documentation before choosing.