Wait for real work
Long-poll the GitHub scale-set API and start runners in response to assigned jobs.
SELF-HOSTED GITHUB ACTIONS
One process on your host starts disposable Docker containers or macOS VMs for GitHub Actions, then removes them when the job is done.
THE IDEA
Keep your own host and workflow. Runscaler handles the runner lifecycle between them.
Long-poll the GitHub scale-set API and start runners in response to assigned jobs.
Use Docker containers on a Docker host or Tart virtual machines for macOS jobs.
Each runner handles one job. Runscaler removes it afterward and reconciles resources after a restart.
GET STARTED
Choose the basics. Copy TOML, add credentials on your host, then let runner validate check the real environment.
The copied file leaves token = "" empty. Add your PAT locally before validating.
FINISH ON YOUR HOST
The website builds text; your runner checks the actual machine and GitHub access.
Start Docker, then install the runner binary on Linux.
curl -fsSL https://raw.githubusercontent.com/ysya/runscaler/main/install.sh | sudo shPaste the TOML into the file, fill the PAT locally or place the App key file, then protect the config.
sudo install -d -m 0700 /etc/runner
sudoedit /etc/runner/config.toml
sudo chmod 0600 /etc/runner/config.tomlThe new system service checks Docker and GitHub access before starting.
sudo /usr/local/bin/runner service install --config-path /etc/runner/config.toml
sudo /usr/local/bin/runner statusInstall Tart and pull a compatible VM image, then install the runner binary from a local GUI session.
curl -fsSL https://raw.githubusercontent.com/ysya/runscaler/main/install.sh | sh -s -- --userPaste the TOML into the file, fill the PAT locally or place the App key file, then protect the config.
mkdir -p ~/.config/runner
chmod 0700 ~/.config/runner
nano ~/.config/runner/config.toml
chmod 0600 ~/.config/runner/config.tomlRun from your macOS login session.
~/.local/bin/runner validate
~/.local/bin/runner service install --scope user
~/.local/bin/runner statusruns-on: my-runnersNeed multiple scale sets or advanced cache/network settings? Read the full configuration guide