pre-commit
A framework for managing and maintaining multi-language pre-commit hooks.
Install
pre-commit on PyPI
pip
pip install pre-commituv
uv add pre-commitpoetry
poetry add pre-commitPackage facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 5 — cfgv, identify, nodeenv, pyyaml, virtualenv |
| Maintenance | actively maintained — 3 days since the last release |
| Last repo commit | |
| First released | |
| Popularity | one of the top 1,000 most-downloaded packages on PyPI (30-day window, as of 2026-08-13) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-13) |
Evidence: pre_commit-4.6.2-py2.py3-none-any.whl
About pre-commit
from the package's own PyPI description — quoted content, verbatim
build status (image) pre-commit.ci status (image)
pre-commit
A framework for managing and maintaining multi-language pre-commit hooks.
For more information see: https://pre-commit.com/
Read as markdown · JSON record · Source repository · Homepage
AI interpretation — verify before relying
AI-generated interpretation of the package facts above; every digit, version, license, or vulnerability id it cites is grounded in the facts already shown on this page
pre-commit is a framework for installing and running git hooks across multiple programming languages, automating code quality checks before commits are made.
Low install friction with a pure-Python wheel distribution and five runtime dependencies. Active maintenance with a release 3 days old signals strong ongoing support.
MIT license permits unrestricted use, modification, and distribution in both open-source and commercial projects with minimal restrictions.
Usage
pip install pre-commit
from pre_commit.main import main
main(['run', '--all-files'])
Requires Python 3.10 or later; also requires git to be installed on the system for hook execution.
Verdict: pre-commit is a mature, actively maintained framework with no known vulnerabilities, permissive licensing, and low installation friction. Its top_1000 popularity tier and recent release cycle make it a reliable choice for teams seeking to standardize code quality checks across multiple languages.
Needs verification
- Whether the package's five runtime dependencies (cfgv, identify, nodeenv, pyyaml, virtualenv) introduce any transitive vulnerabilities or maintenance concerns.
- Whether nodeenv and virtualenv dependencies add significant disk or memory overhead in typical CI/CD environments.
- Community adoption metrics beyond popularity tier classification.
Similar packages
permissive · top 1,000 on PyPI
identifypermissive · top 1,000 on PyPI
prekpermissive · top 1,000 on PyPI
sqlparsepermissive · top 1,000 on PyPI
great-expectationspermissive · top 1,000 on PyPI
cron-descriptorpermissive · top 1,000 on PyPI
pexpectpermissive · top 1,000 on PyPI
pyproject-hookspermissive · top 1,000 on PyPI
agent-client-protocolunclear · top 1,000 on PyPI
referencingpermissive · top 100 on PyPI