Skip to content
Commitpedia
Log in Join & edit

act: run your GitHub Actions workflows locally with Docker

The nektos/act repository: a command-line tool that reads .github/workflows, simulates GitHub events and runs the jobs in Docker containers on your machine, so you can test a workflow without pushing.

Drafted with AI from official documentation. Scripts were run in a test environment and repository links verified. Awaiting a human check. Did it work for you? Last edited Outdated?

Edit history of act: run your GitHub Actions workflows locally with Docker: 1 recorded edit
Edit history · 1 edit
Type
Repo
Edits
1
Editors
1
First issued
15 Oct 2026
Last edit
15 Oct 2026
Source
nektos/act

nektos/act

Stars
72.3k
Forks
2.1k
Language
Go
Licence
MIT
Last push
9 Aug 2026

On GitHub: Run your GitHub Actions locally 🚀

Open on GitHub

act (about 72,300 stars on GitHub) was started by Casey Lee and is maintained by the nektos community under the MIT license. It parses your workflow files, builds the same event payloads GitHub would send, and runs each job inside a Docker container that stands in for the GitHub-hosted runner. Most uses actions work unchanged because act downloads and executes them the same way the real runner does.

Use it to iterate on a workflow without a commit-push-wait loop for every typo, to run a job offline, or to reproduce a failing CI job on your own machine with a shell. It is not a perfect replica: the runner images are smaller than GitHub’s (the default catthehacker/ubuntu:act-latest image lacks many preinstalled tools), some contexts and services differ, and anything that needs GitHub itself (publishing a release, OIDC) cannot be tested fully. For most build-and-test jobs it is accurate enough to save many pushes.

Install it with brew install act, from the Releases page, or as a GitHub CLI extension with gh extension install https://github.com/nektos/gh-act. Then, from a repository with workflows:

act -l
act push
act pull_request -j test
act -j test -s GITHUB_TOKEN="$(gh auth token)"
act workflow_dispatch --input environment=staging
act -j test --container-architecture linux/amd64
  • -l lists the jobs and the events that trigger them; a bare event name runs everything that event would trigger, -j runs one job.
  • -s NAME=value passes a secret; omit the value to be prompted, or use --secret-file .secrets. Many actions need a GITHUB_TOKEN even locally to download other actions without rate limits.
  • On Apple Silicon, --container-architecture linux/amd64 avoids images that have no arm64 build. The first run asks which runner image size to use and writes the choice to ~/.config/act/actrc.

The repository README documents every flag and the known differences from GitHub-hosted runners; the issue tracker is active and worth searching when an action behaves differently under act. Credit to Casey Lee and the act contributors.

Did this work for you?

No votes yet. Be the first.

If it did not work, the report form below tells the editors what went wrong.

See also

History

Every saved edit is kept. The plot on the sleeve draws one line per edit. Open any edit to see exactly what changed.

  1. Dominik +2,070 chars

Report a problem

Something wrong, unsafe or copied? Tell the editors.
What is wrong?