Cette page est affichée en anglais. Une traduction française est en cours.
ConfigsJul 27, 2026·3 min de lecture

wrkflw — Validate and Run GitHub Actions Workflows Locally

A Rust CLI tool with an interactive TUI that lets you test GitHub Actions workflows on your machine before pushing, supporting Docker execution and matrix builds.

Prêt pour agents

Installation agent prête

Cet actif peut être installé après choix du runtime, vérification du plan et exécution de la commande adaptée.

Native · 98/100Policy : autoriser
Surface agent
Tout agent MCP/CLI
Type
Skill
Installation
Single
Confiance
Confiance : Established
Point d'entrée
wrkflw
Commande d'installation directe
npx -y tokrepo@latest install d19f0426-89bf-11f1-9bc6-00163e2b0d79 --target codex

À exécuter après confirmation du plan en dry-run.

Introduction

wrkflw is a command-line tool that validates GitHub Actions workflow files and runs them locally in Docker containers. Instead of pushing commits just to see if your CI passes, you can iterate on workflows at your desk and catch errors before they reach GitHub.

What wrkflw Does

  • Parses and validates .github/workflows/*.yml files against the Actions schema
  • Runs workflow jobs locally in Docker or Podman containers
  • Supports matrix strategy expansion to test multiple configurations
  • Provides an interactive TUI for selecting which jobs and steps to run
  • Filters workflows by changed files (diff-aware mode)

Architecture Overview

wrkflw is written in Rust for fast startup and low resource usage. The validator parses YAML workflow files and checks them against the GitHub Actions specification, reporting syntax errors, unknown actions, and missing inputs. The runner creates Docker containers that mimic the GitHub-hosted runner environment, mounts the repository, and executes each step sequentially. Matrix builds spawn parallel containers.

Self-Hosting & Configuration

  • Install via Cargo: cargo install wrkflw
  • Alternatively, download pre-built binaries from GitHub Releases
  • Requires Docker or Podman for running workflows locally
  • Configure runner images in .wrkflw.toml (default: ubuntu-latest equivalent)
  • Set secrets and environment variables via the config file or CLI flags

Key Features

  • Fast YAML validation catches errors without running anything
  • Docker-based execution mirrors the GitHub Actions environment
  • Interactive TUI for browsing and selectively running jobs
  • Diff-aware filtering to run only workflows affected by recent changes
  • Matrix strategy support for testing combinatorial build configurations

Comparison with Similar Tools

  • act — the original local Actions runner in Go; wrkflw adds a TUI and diff-aware filtering
  • GitHub CLI (gh workflow run) — triggers remote runs; wrkflw runs everything locally
  • nektos/act — mature Go implementation; wrkflw is newer with a Rust core and interactive UI
  • actionlint — lints workflow YAML; wrkflw validates and runs workflows
  • CI locally with Docker Compose — manual setup; wrkflw automates the container orchestration

FAQ

Q: How close is the local environment to GitHub-hosted runners? A: wrkflw uses community-maintained runner images that replicate the ubuntu-latest toolchain. Some GitHub-specific features (OIDC, caching service) are not available locally.

Q: Can I use custom Docker images? A: Yes. Set the container image per job in your workflow or override it in .wrkflw.toml.

Q: Does wrkflw support composite actions and reusable workflows? A: Basic composite action support is available. Reusable workflow (workflow_call) support is under development.

Q: Is Podman supported in addition to Docker? A: Yes. wrkflw detects Podman automatically if Docker is not installed.

Sources

Fil de discussion

Connectez-vous pour rejoindre la discussion.
Aucun commentaire pour l'instant. Soyez le premier à partager votre avis.

Actifs similaires