repos:
  - repo: https://github.com/pre-commit/pre-commit-hooks
    rev: v6.0.0
    hooks:
      - id: check-case-conflict
      - id: check-executables-have-shebangs
      - id: check-merge-conflict
  - repo: local
    hooks:
      - id: ruff-format
        args: []
        name: ruff-format
        language: python
        entry: uv run --active ruff format --force-exclude --preview
        "types_or": [python, pyi]
        require_serial: true
  - repo: local
    hooks:
      - id: ruff
        name: ruff
        language: python
        entry: uv run --active ruff check --force-exclude --fix --show-fixes
        "types_or": [python, pyi]
        require_serial: true
  - repo: local
    hooks:
      - id: pyright
        name: pyright
        entry: uv run --active pyright
        language: node
        types: [python]
        additional_dependencies: ["pyright@1.1.406"]
