Create a Kubernetes secret holding a GitHub App private key or a PAT with repo/org scope, then reference it in your scale-set values file
Install a runner scale set Helm chart, setting githubConfigUrl to your repo or org URL and githubConfigSecret to the secret name: helm install arc-runners --namespace arc-runners --create-namespace -f values.yaml oci://ghcr.io/actions/actions-runner-controller-charts/gha-runner-scale-set
In values.yaml set minRunners and maxRunners to control the autoscaling bounds, and set runnerScaleSetName to the label workflows will reference in runs-on
Target the scale set from a workflow with runs-on: arc-runners (matching runnerScaleSetName); ARC provisions a runner pod per queued job and terminates it after completion
Monitor scale-set activity with kubectl logs -n arc-systems deployment/arc-gha-runner-scale-set-controller and check runner pod status in the arc-runners namespace
Known gotchas
ARC 0.14.0 (March 2026) added multi-label support; older versions only support a single label per scale set — upgrade before trying comma-separated labels
Runner pods need network access to github.com and api.github.com; configure egress policies or a proxy before deploying in a locked-down cluster
Container mode (containerMode.type: dind or kubernetes) requires additional RBAC and image configuration; the default mode runs jobs directly in the runner pod
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp