Skip to content
| Marketplace
Sign in
Visual Studio Code>Testing>XL RunnerNew to Visual Studio Code? Get it now.
XL Runner

XL Runner

jamie arodi

|
2 installs
| (0) | Free
Run GitHub Actions workflows locally with nektos/act, right from VS Code.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

XL Runner

Run your GitHub Actions workflows locally from VS Code, powered by nektos/act.

Requirements

  • act 0.2.86 or newer (older versions have known security issues). brew install act, winget install nektos.act, or see the install guide.
  • Docker, running.

Run XL Runner: Check Setup from the Command Palette to verify both.

Features

  • Workflows view: every workflow in .github/workflows, its triggers and jobs. Updates automatically when files change.
    • ▶ run a workflow, ⚡ run it as a specific event, or do a dry run.
    • ▶ run a single job. act also runs any jobs it needs: first.
    • workflow_dispatch workflows prompt for their inputs (choices and booleans get pickers).
  • Runs view: live job and step status for each run (matrix jobs included), duration, stop, re-run, and a saved log file per run.
  • Secrets stored in your OS keychain via VS Code's SecretStorage, never in settings or on the command line. GITHUB_TOKEN can be pulled from gh auth token.
  • A .secrets file in your repo root still works, as act loads it by default.
  • Pre-flight secret check: before a real run (not dry runs), the workflow file is scanned for every secrets.NAME it references. If any aren't set — not in the keychain, not in .secrets, not in xlRunner.secretFile — the run is blocked with the missing names listed, instead of letting act silently substitute a blank value mid-job.

Settings

Setting What it does
xlRunner.command How to call act: act, gh act, or a full path.
xlRunner.platforms Runner label → Docker image (-P). Defaults to catthehacker/ubuntu:act-latest for ubuntu-latest.
xlRunner.secretFile / varFile / envFile Paths to .env-style files.
xlRunner.eventPayloadFile JSON event payload (--eventpath).
xlRunner.containerArchitecture e.g. linux/amd64 on Apple Silicon.
xlRunner.extraArgs Any other act flags, one per array item.
xlRunner.showDebugOutput Show act's debug lines in the terminal.

Development

npm install
npm test          # unit tests (parser, argv builder) — no VS Code needed

Press F5 in VS Code to launch an Extension Development Host with the extension loaded.

npm run package   # builds xl-runner-x.y.z.vsix

Install the .vsix with Extensions: Install from VSIX….

How it works

act is spawned directly with an argument array (no shell), with --json --verbose. Each JSON log line is parsed to build the job/step tree (src/actLog.ts). Debug lines are hidden from the terminal but kept in the log file. Secrets are passed as -s NAME with the value in the child process's environment, so they never appear in the command line or process list.

Design inspired by GitHub Local Actions (Apache-2.0).

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft