Skip to content
sccache remote cache

Share compiler results across machines.

Give Rust, C, and C++ builds access to one shared sccache store. Reuse eligible compilations from CI, containers, and local development.

.boringcache.toml
workspace = "my-org/app"

[adapters.sccache]
tag = "sccache-cache"
command = ["cargo", "build", "--release"]
boringcache sccache
permissions:
  contents: read
  id-token: write

steps:
  - uses: boringcache/one@f0fb9b2d926a32b10c543e92093ba00c5a291b79 # v1.33.0
    with:
      mode: sccache
      trust-policy: auto
  - run: cargo build --release
steps:
  - label: Build
    command: >
      boringcache ci run
      --oidc-provider buildkite
      -- boringcache sccache
build:
  timeout: 1h
  id_tokens:
    BORINGCACHE_OIDC_TOKEN:
      aud: urn:boringcache:workload
  script:
    - boringcache ci run --oidc-provider gitlab -- boringcache sccache

How BoringCache fits your build.

Compiler reuse

sccache decides whether an invocation can use a stored result.

Shared storage

Matching compiler-cache data is stored once in the workspace.

Visible activity

Inspect compiler-cache reads, writes, and transfers.

Use compiler caching on its own or with Cargo.

The sccache adapter connects compiler caching to your command. For Rust builds that also need dependency and target-state reuse, use the Cargo integration.

See compiler-cache reuse in each build.

Inspect cache hits, misses, and transfers from sccache in your workspace.

Explore the workspace →
Workspace insights

Deno build cache

GitHub Actionsmain48b6eee

Open run

sccache remote read hits

0 cache errors

96.9%

1,834 of 1,893 sccache remote reads were hits.

Read hits
1,834
Read misses
59

Cache data transferred

Restored
1.2 GB
Uploaded
84.2 MB
  • sccache 1.2 GB restored · 84.2 MB uploaded

Cache activity by tool

  • sccache 1,834 hits · 59 misses

95.8%

Compiler results reused

Deno · Cargo + sccache

92%

Less cache stored

Zed · compared with actions/cache

Keep shared-cache publication in trusted jobs.

Give consumers restore access and publishers a separate permission. Connect supported CI through OIDC or use scoped credentials.

Connect your CI →

Separate readers and publishers

  • Trusted builds Publish shared cache for the next build Read + publish
  • Pull requests Restore cache without replacing it Read only
  • Local development Use a scoped credential for the workspace Scoped access

Before you connect.

Does BoringCache replace sccache?
No. sccache still wraps the compiler and decides cache hits. BoringCache provides the shared remote cache endpoint.
Is this only for Rust?
No. sccache is commonly used for Rust, C, and C++ compiler outputs.
Read the sccache setup guide →

Start with your next sccache build.

Install the CLI. Run onboarding to connect your repository and configure your cache.

30 GB of cache free. No credit card required.

curl -sSL https://install.boringcache.com/install.sh | sh
boringcache onboard
boringcache sccache