TRUNK RUNNERS · PRIVATE BETA

Faster runners. Self-optimizing CI.

Each GitHub Actions job gets its own VM, a fast SSD and a cache near the runner.

build-and-test
Same job on both runners
ubuntu-latestGitHub-hosted · 2 vCPU · 8 GiB
0s
Set up job
Install toolchains
Restore cache
Build
Test
Trunk RunnersDefault size · 2 vCPU · 8 GiB
0s
Set up job
Install toolchains1
Restore cache2
Build3
Test3
1
Prebaked image19% of time saved
Toolchains are in the image, so the install step is skipped.
2
Local cache19% of time saved
The cache is in the same cluster as the runner.
3
2x faster hardware59% of time saved
Build and test run on bare-metal machines.
Running…
2x faster hardware
4x faster caches
No infrastructure to operate
WHY TRUNK IS DIFFERENT

We want you to run less CI, faster.

Trunk Runners make the jobs that remain faster. Each job gets a VM of the correct size on bare-metal hardware, a local SSD and a cache in the same cluster. You spend fewer minutes on each job.

Why teams choose Trunk Runners

Ship reliable software you trust at AI speed.

2x

Faster than GitHub-hosted runners.

Jobs run on fast bare-metal hardware with in-network cache access.

60%

Faster than self-hosted runners on AWS.

You get more speed, spend fewer minutes and you avoid the headaches of operating the controller.

Machines in the shape you need

Mix and match CPU and memory for each job. Pick 1 to 16 vCPU, then 1, 2 or 4 GiB of memory per vCPU.

1 vCPU2 vCPU4 vCPU8 vCPU16 vCPU1 GiB / vCPU2 GiB / vCPU4 GiB / vCPU

Control your spend

Trunk Runners know which jobs Dynamic CI skips and which jobs Merge Queue needs. Set concurrency limits so your compute goes to the jobs that matter for shipping.

Batteries-included caching

The cache runs in the same cluster as your runners. Downloads are 4x faster than the GitHub Actions cache. Works out of the box with:

Actions cachesccacheccacheBazelGradle
BASE IMAGE TEMPLATES

Define your environment one time.

Base image templates let you define your environment one time and use it everywhere. Put your toolchains, dependencies and setup steps in a template, and Trunk builds them into an image. Each job or workspace then starts ready, with no repeated setup. Keep templates in your repo, preview changes on a branch, and roll back in one step.

  • Define templates in YAML in your repo, or in the web UI
  • Start from a Trunk-provided image with the standard tooling of ubuntu-latest on GitHub
  • Rebuild on a schedule or when the template changes
  • Version each image and roll back in one step
  • See image size and build time for each template
  • Get agentic recommendations for what to move into the image
Without a templateevery job
  • Set up job
  • Install toolchains
  • Install dependencies
  • Run setup scripts
  • Build
  • Test
With a templateevery job
  • Set up job
  • Install toolchainsin image
  • Install dependenciesin image
  • Run setup scriptsin image
  • Build
  • Test
SELF-OPTIMIZING CI

CI that gets faster on its own.

Base image recommendations

Get agentic recommendations for changes to your base image. Cache more of the things that rarely change.

Right-sizing experiments

Set up long-running experiments to find jobs that can run on smaller, more optimized runners.

Fewer retries with Flaky Tests

Uses agentic recommendations from Trunk Flaky Tests to reduce the number of workflow retries.

SECURITY AND COMPLIANCE

Security for each job and each user.

Audit logging

Every build, cache write and runner invocation is logged and queryable.

RBAC

Grant least privilege at every layer.

SOC 2 Type II

Security is built into every layer of Trunk to protect your GitHub secrets, code and cache artifacts.

SSO & SAML

Connect your identity provider and enforce access policies across each product.

Ephemeral VM

Isolated by design. Code and secrets never persist where they shouldn't.

Private caches

A rich set of access controls, including per-branch cache access and fork PR access.

TRUNK RUNNERS · PRIVATE BETA

Run faster and run less.

Trunk Runners are in private beta. Book a demo to get access.