ruff는 Rust로 만든 빠른 린터이자 포매터야. flake8·pycodestyle·isort 계열의 많은 검사를 한 설정으로 묶어 스타일, 가져오기, 죽은 코드, 보안 냄새를 찾고 안전한 것은 ruff check --fix로 고쳐. ruff format은 코드 모양을 맞춰.
mypy는 타입 힌트를 읽어 사용이 선언된 계약과 맞는지 검사해. 새 프로젝트는 엄격 모드가 좋은 출발점이고, 오래된 코드는 범위를 넓혀 가는 편이 현실적이야. pyright는 빠른 추론을 제공하며 Pylance의 기반이라 편집기에는 pyright, 지속 통합에는 mypy를 함께 쓰는 팀도 있어.
pre-commit은 커밋 전에 ruff·mypy·pytest 같은 검사를 자동 실행해. 하지만 포매터는 모양, 린터는 알려진 냄새, 타입 검사기는 선언한 계약만 봐. 실제 사용자 흐름과 설치된 실행 시점은 별도로 검증해야 해.