Open Source Security at Astral
Astral builds tools that millions of developers around the world depend on and trust.
That trust includes confidence in our security posture: developers reasonably expect that our tools (and the processes that build, test, and release them) are secure. The rise of supply chain attacks, typified by the recent Trivy and LiteLLM hacks, has developers questioning whether they can trust their tools.
To that end, we want to share some of the techniques we use to secure our tools in the hope that they're useful to:
We sustain our development velocity on Ruff , uv , and ty through extensive CI/CD workflows that run on GitHub Actions . Without these workflows we would struggle to review, test, and release our tools at the pace and to the degree of confidence that we demand. Our CI/CD workflows are also a critical part of our security posture, in that they allow us to keep critical development and release processes away from local developer machines and inside of controlled, observable environments.
GitHub Actions is a logical choice for us because of its tight first-party integration with GitHub, along with its mature support for contributor workflows : anybody who wants to contribute can validate that their pull request is correct with the same processes we use ourselves.
Unfortunately, there's a flipside to this: GitHub Actions has poor security defaults , and security compromises like those of Ultralytics , tj-actions , and Nx all began with well-trodden weaknesses like pwn requests .