Stop rebuilding. Start reusing.
BoringCache keeps the work your last build finished available across CI, Docker builds, and local development. Keep your current runners, pipelines, and tools. Add one shared build cache.
Install the CLI · Watch the demo · View benchmarks · See pricing
curl -sSL https://install.boringcache.com/install.sh | sh
cd your-project
boringcache onboardOnboard connects the workspace and writes .boringcache.toml. Commit that
plan so local builds and trusted CI share the same cache decisions.
Then use the shortest command for the tool:
# Docker command from the repo plan
boringcache docker
# Explicit dependency or build directory
boringcache run -- bundle install
# Native Xcode compilation cache
boringcache xcode -- xcodebuild -workspace App.xcworkspace -scheme App build- Docker BuildKit layers, persistent cache mounts, and compiler cache
- Bazel, Gradle, Maven, Nx, Turborepo, Go, Cargo, ccache, sccache, Xcode, and Nix
- Explicit directory cache through
run,save, andrestore - Restore-only access for pull requests; publication from trusted jobs
- Cache sessions, hits, misses, storage, and token access you can inspect
- 2.8× faster in a Mastodon Docker run with every instruction rerun
- 2.5× faster in the measured PostHog Docker build
- 36% less runner time across 12 Immich base-image rebuilds
- 1,333 Cargo compiler-cache hits on Deno
Results vary by workload. The benchmark page keeps the measured values beside the exact public runs.
cli— CLI, onboard flow, repo plan, and tool adaptersone— GitHub Action for the same repo planbuildkit— signed managed BuildKit imagebenchmarks— public benchmark index and checksruby— prebuilt Ruby distributions