Skip to content
Get started

Quickstart

Move a GitHub Actions workflow to Runloft in about two minutes. You need admin rights on a GitHub organization, or your own personal account.

1. Sign in and install the GitHub App

Open the dashboard and sign in with GitHub. Pick the personal account or organization you want to run jobs for, then install the runloft-runners GitHub App on it. You can give it access to all repositories or only selected ones.

The app asks for the minimum GitHub needs to hand jobs to self-hosted runners:

PermissionAccessWhy
ActionsReadRead workflow job details for billing and the jobs list.
Self-hosted runners (organizations)Read and writeCreate a single-use runner registration for each job.
Administration (personal repositories)Read and writePersonal accounts register runners per repository; GitHub puts that under Administration.
MetadataReadRequired by GitHub for every app.

The app never reads your code or your secrets. See Security and isolation.

2. Change runs-on

In any workflow, replace the GitHub-hosted label with a Runloft label. Nothing else in the workflow changes.

.github/workflows/ci.yml
jobs:
  build:
-   runs-on: ubuntu-latest
+   runs-on: runloft-ubuntu-24.04

A complete workflow looks like this:

.github/workflows/ci.yml
name: CI
on: [push, pull_request]

jobs:
  test:
    runs-on: runloft-ubuntu-24.04
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: 22
          cache: npm
      - run: npm ci
      - run: npm test

Need more CPU? Use runloft-ubuntu-24.04-4cpu. Larger sizes and arm64 are open on request until a host serves them. The full list is in Labels and machine types.

3. Push and watch the job

Push the change. The job appears in the GitHub Actions UI as usual, with a runner name starting with runloft-. In the dashboard, the Jobs page shows its queue time, duration and cost, and links back to the logs on GitHub.

The first 3,000 Linux minutes each month are free. You do not need a card to start.

Roll back at any time

Change runs-on back to ubuntu-latest. There is no agent to uninstall and nothing on your side to clean up. Uninstalling the GitHub App stops any further jobs from being picked up.

Next steps