// the find
nektos/act
Run your GitHub Actions locally 🚀
act lets you run GitHub Actions workflows locally by spinning up Docker containers that mirror the GitHub-hosted runner environment. It's primarily useful for iterating on workflow files without burning CI minutes or waiting for push-triggered runs. Good fit for developers who live in GitHub Actions and hate the commit-push-wait loop.
1. The expression parser and context emulation (GITHUB_ENV, GITHUB_STATE, step outputs) are genuinely thorough — most Actions behave the same locally as they do on GitHub. 2. The artifact cache server is a real local implementation, not a stub, so workflows using actions/cache actually work. 3. Offline mode for action caching means you can work air-gapped once you've primed the cache. 4. 70k stars with active maintenance and a proper test suite across container, runner, and expression packages — this is not abandonware.
1. Hard dependency on Docker; no Podman or containerd support without workarounds, which is a problem on corporate machines where Docker Desktop licensing matters. 2. GitHub-hosted runners use Ubuntu images with hundreds of pre-installed tools; act ships slimmer images by default, so workflows that assume tools are present (like aws-cli, terraform, etc.) silently fail until you figure out you need the full 18GB image. 3. OIDC, GitHub Packages authentication, and GitHub Deployments are either unimplemented or partially faked — workflows that touch those APIs will behave differently locally. 4. Reusable workflows support exists but has known gaps with inputs/outputs across workflow boundaries, which is exactly the case where you most want local testing.