Blacksmith CI: How GitHub Actions Runners Work

Summary

Pixel's announcement explains how Blacksmith CI works as a managed replacement for GitHub-hosted Actions runner machines. It covers installing the GitHub App, changing one runs-on label, four bare-metal regions, and why app installation matters for runner capacity.

DEV Community

What is Blacksmith CI, and how do its runners work?

What is Blacksmith CI: it is a managed replacement for GitHub-hosted Actions runners, running on bare metal in four of its own regions, which you adopt by installing a GitHub App and changing one runs-on label. Your workflow files, actions, secrets and matrix stay exactly as they are, and what changes is the machine underneath, the cache it talks to, and the per-minute rate. Published Blacksmith Ubuntu x64 tiers, read 20 September 2026, with the standard private-repo GitHub-hosted runner drawn to scale for comparison. Blacksmith does not replace GitHub Actions. It replaces the computer GitHub Actions runs on, which is a much smaller change than the category name suggests and is why adoption is measured in minutes rather than sprints. This page is an explainer, not a pitch. Everything in it was read from blacksmith.sh and docs.blacksmith.sh on 20 September 2026, and where Blacksmith does not publish something, it says so. If you want the head-to-head comparisons instead, Blacksmith against GitHub-hosted runners and Blacksmith against Depot carry the full tables. How it works: an app, a label, and someone else's hardware Adoption is two steps. You install the Blacksmith GitHub App on the repositories that will use it, and you change runs-on from a GitHub label to a Blacksmith one. Nothing else in the workflow moves: uses: steps, marketplace actions, secrets, environments, matrix strategy and artifacts all behave as before, because the runner is still the standard GitHub Actions runner agent, just on a different machine. The GitHub App is not only authentication, and this is the part worth understanding before you roll out. Per the runner docs, Blacksmith watches and provisions capacity for the repositories where the app is installed. A repository that uses blacksmith- labels without the app installed can end up adopting runners provisioned for a different repository, which under-provisions everybody. If jobs queue in an organization that has "no concurrency limits", the missing app install is the first thing to check. Jobs run in one of four Blacksmith regions: Ashburn, Phoenix, Amsterdam and Frankfurt. Nested virtualization is supported on x64 Linux, which is what KVM-dependent jobs and Android emulators need, and is not supported on ARM Linux. jobs:
build:
- runs-on: ubuntu-latest
+ runs-on: blacksmith-4vcpu-ubuntu-2404
steps:
- uses: actions/checkout@v7
- run: npm ci && npm run build
The runner sizes, and what the label encodes The label carries the size, the OS and the architecture: blacksmith-{n}vcpu-{os}-{version}, with -arm appended for ARM Linux. Every tier below is published in the instance-types documentation, read 20 September 2026. Label vCPU RAM Storage blacksmith-2vcpu-ubuntu-2404 2 8 GB 80 GB blacksmith-4vcpu-ubuntu-2404 4 16 GB 80 GB blacksmith-8vcpu-ubuntu-2404 8 32 GB 160 GB blacksmith-16vcpu-ubuntu-2404 16 64 GB 750 GB blacksmith-32vcpu-ubuntu-2404 32 128 GB 1.5 TB blacksmith-2vcpu-ubuntu-2404-arm 2 6 GB 75 GB blacksmith-32vcpu-ubuntu-2404-arm 32 96 GB 1.5 TB blacksmith-2vcpu-windows-2025 (public beta) 2 7 GB 130 GB blacksmith-6vcpu-macos-latest 6 24 GB 150 GB blacksmith-12vcpu-macos-latest 12 48 GB 250 GB Two things stand out against GitHub-hosted. The smallest Blacksmith Linux runner has the same 8 GB of RAM as a standard private-repo GitHub runner but 80 GB of disk against 14 GB, which quietly removes a whole class of disk-full failures without any change to your workflow. And ARM tiers carry less memory than their x64 equivalents at the same core count, 6 GB against 8 GB at 2 vCPU, so an ARM migration is not a like-for-like move if your jobs are memory-bound. Ubuntu 22.04 is published at the same sizes as 24.04. macOS runs on Apple silicon M4 with images from macOS 15 through a macOS 27 public beta, and Windows Server 2025 is itself still labeled public beta. Caching: two mechanisms, and they are not the same The first mechanism needs no workflow change at all. Blacksmith ...
Blacksmith CI: How GitHub Actions Runners Work
Powered by Readybot.io*

The latest from Pixel

Fix GitHub Pages: Missing Artifact Error

Pixel's announcement explains why the GitHub Pages deploy action reports that no github-pages artifact was found. It covers skipped or failed build jobs, missing uploads, …

Rotate DB and Redis Passwords Without Downtime

Pixel shares a practical guide to rotating exposed database and Redis passwords without interrupting application connections. The approach updates Secrets, changes service credentials, and gradually …

AI Agent Receipts Prove What Actually Executed

Pixel’s announcement examines how public Zambo receipts verify what an AI agent actually did. A BTC price fetch succeeded with a recomputable output hash, while …