runner-up: Self-Hosted GitHub Actions Runners in Isolated VMs and Containers

Repositorykunchenguid/runner-upTool

runner-up is an open-source Go tool designed to run GitHub Actions jobs on your own machines, spinning up a fresh virtual machine or container for each job and tearing it down afterwards.

Key points

  1. Supports Linux (Docker, KVM), macOS (Tart, Apple's container tool), and Windows (Hyper-V or dedicated Windows accounts), as well as direct host execution.
  2. Uses a central coordinator communicating with GitHub via runner scale sets to orchestrate waiting jobs.
  3. Organises resources via 'places' with configurable CPU and memory budgets across pools.
  4. Refuses jobs triggered by pull requests from external forks by default to maintain security.
  5. Resilient architecture keeps running jobs intact across coordinator restarts and cleans up failed places.

Why it matters

Hosted GitHub Actions runners can quickly become expensive, especially for resource-heavy workloads or macOS targets. runner-up allows teams to leverage idle hardware while ensuring clean, ephemeral environments for every workflow run.

Analysis

Static self-hosted runners frequently suffer from state leakage and dependency conflicts. runner-up solves this by orchestrating ephemeral VMs and containers natively across platforms. With under 100 stars and 2 forks, it is an early-stage tool, but its architecture—leveraging modern virtualisation tools like Tart and GitHub Runner Scale Sets—makes it a promising alternative to commercial runners.

Found in

Summary generated by AI (Gemini 3.8 Flash, 4 November 2026). It may contain errors – the original source is authoritative.

Similar in content, found by the AI search.

  • X post:Kun Chen

    runner-up: Open-source tool for ephemeral self-hosted GitHub Actions runners

    Kun Chen has released runner-up, an open-source tool designed to self-host GitHub Actions runners across owned hardware. It spins up an ephemeral VM or container for each CI job across Linux, macOS, and Windows, automatically destroying it after execution.

    420bookmarks13.2kviews

    DevOps· Tool

  • Link:osy

    UTM: Open-Source Virtualisation for macOS

    UTM is an open-source virtualisation and emulation app designed for macOS, built on top of QEMU and Apple's Virtualization framework. It lets users run Windows, Linux, and macOS on Apple Silicon and Intel Macs.

    DevOps· Tool

  • Repository:coollabsio/coolify

    Coolify: Open-source PaaS alternative for self-hosted cloud deployments

    Coolify is an open-source, self-hostable Platform-as-a-Service (PaaS) under the Apache 2.0 licence, designed as an alternative to Vercel, Heroku, and Netlify. It allows users to deploy web apps, static sites, databases, and over 280 one-click services onto their own servers via SSH.

    61.4kstarsPHP

    Web development· Tool

  • Repository:openai/orchard

    OpenAI Orchard: Orchestrating Tart VMs on Apple Silicon Clusters

    Orchard is an orchestration system developed by OpenAI, written in Go, designed to run and manage Tart virtual machines across clusters of bare-metal Apple Silicon hardware via CLI and REST API.

    572starsGo

    Web development· Tool

  • Repository:prathamdby/pr-agent

    PR Agent: Self-Hosted AI Reviewer for Pull Requests

    PR Agent is an open-source, TypeScript-based automated code review tool designed to run on self-owned infrastructure as a self-hosted alternative to per-seat SaaS services like CodeRabbit.

    46starsTypeScript

    AI & LLMs· Tool

  • Repository:agent-substrate/substrate

    Agent Substrate: Zero-Trust Sandboxing for Autonomous Agents on Kubernetes

    Agent Substrate is an open-source Go runtime designed to run millions of agent workloads securely and efficiently on Kubernetes. It isolates untrusted code using microVMs or gVisor and snapshots idle agents to save resources.

    5.4kstarsGo

    AI & LLMs· Tool

Let's talk about your project

Locations

  • Mattersburg
    Johann Nepomuk Bergerstraße 7/2/14
    7210 Mattersburg, Austria
  • Vienna
    Ungargasse 64-66/3/404
    1030 Wien, Austria

Parts of this content were created with the assistance of AI.