Reverse engineering GitHub Actions cache to make it fast
Blog post from Blacksmith
Blacksmith replaced its fork-based GitHub Actions cache alternative with a transparent, colocated caching system that requires no workflow changes and avoids the maintenance burden of modified actions. After GitHub moved its cache service to a Twirp- and Azure Blob Storage-based design, the team reverse engineered its protocols using network inspection, Protobuf definitions, and assistance from an LLM, then redirected cache traffic from ephemeral Firecracker VMs through in-VM NGINX and host-level proxies to a MinIO-backed S3-compatible store. Addressing Azure SDK hostname-dependent concurrency optimizations required Azure-like URLs, DNS remapping, and proxy translation, while nftables replaced unreliable iptables rules for per-VM traffic management. The Go-based proxy streams data efficiently and uses connection pooling, and the system treats degraded cache retrieval as a cache miss to prevent slow builds. Beta testing exposed compatibility differences among third-party cache actions, enabling refinements that reportedly delivered cache download speeds up to ten times faster than GitHub Actions, including a 114 MB cache retrieval at roughly 327.5 MB/s without user changes.
Use this post, company, and trend context to find content marketing opportunities, perform competitive analysis, or address product feature gaps via the Plushcap MCP server or the Plushcap API.