Lint roles and playbooks with ansible-lint from the project virtualenv. Run after every change under roles/.
Run ansible-test sanity on module/plugin changes from the project virtualenv. Run after modifying any file under plugins/.
Format Python plugin code with black from the project virtualenv. Run after every edit to a file under plugins/ so it matches the black version CI enforces.
Manage changelog fragments and CHANGELOG.rst with antsibull-changelog from the project virtualenv. Add a fragment per user-facing change; release consumes fragments to cut a version.
Build the collection tarball with ansible-galaxy from the project virtualenv. Local builds verify only; the tag-driven release workflow builds and publishes.
Run a role's molecule scenario from the project virtualenv. Scenarios hit real Cloudflare and double as the role's example playbook; run from the role directory.
Install pyenv and the project's pinned Python. Use before the virtualenv skill when the .python-version interpreter is missing.
Lint Python plugin code with ruff from the project virtualenv. Run after every edit to a file under plugins/.