fail_fast: true exclude: ^scripts/ repos: - repo: builtin hooks: - id: check-toml name: Check TOML files files: \.toml$ exclude: ^packages/lab/cookiecutter-agent-framework-lab/ - id: check-yaml name: Check YAML files files: \.yaml$ - id: check-json name: Check JSON files files: \.json$ exclude: ^.*\.vscode\/.*|^demos/samples/chatkit-integration/frontend/(tsconfig.*\.json|package-lock\.json)$ - id: end-of-file-fixer name: Fix End of File files: \.py$ exclude: ^packages/lab/cookiecutter-agent-framework-lab/ - id: mixed-line-ending name: Check Mixed Line Endings files: \.py$ exclude: ^packages/lab/cookiecutter-agent-framework-lab/ - id: trailing-whitespace name: Trim Trailing Whitespace exclude: ^packages/lab/cookiecutter-agent-framework-lab/ - id: check-merge-conflict name: Check Merge Conflicts - id: detect-private-key name: Detect Private Keys - id: check-added-large-files name: Check Added Large Files - id: no-commit-to-branch name: Protect main branch args: [--branch, main] - repo: https://github.com/pre-commit/pre-commit-hooks rev: v6.0.0 hooks: - id: check-ast name: Check Valid Python Samples types: ["python"] exclude: ^packages/lab/cookiecutter-agent-framework-lab/ - repo: https://github.com/asottile/pyupgrade rev: v3.21.2 hooks: - id: pyupgrade name: Upgrade Python syntax args: [--py310-plus] exclude: ^packages/lab/cookiecutter-agent-framework-lab/ - repo: local hooks: - id: poe-check name: Run checks through Poe entry: uv run poe prek-check language: system - repo: https://github.com/PyCQA/bandit rev: 1.9.3 hooks: - id: bandit name: Bandit Security Checks args: ["-c", "pyproject.toml"] additional_dependencies: ["bandit[toml]"] - repo: https://github.com/astral-sh/uv-pre-commit # uv version. rev: 0.10.0 hooks: # Update the uv lockfile - id: uv-lock name: Update uv lockfile files: pyproject.toml