Lint GitHub Actions workflow files using actionlint in VS Code. https://marketplace.visualstudio.com/items?itemName=jimeh.actionlint
Find a file
jimehbot[bot] 2258a4eacc
chore(main): release 0.1.3 (#27)
Co-authored-by: jimehbot[bot] <132453784+jimehbot[bot]@users.noreply.github.com>
2026-02-14 04:26:00 +00:00
.github chore(main): release 0.1.3 (#27) 2026-02-14 04:26:00 +00:00
.vscode refactor: align project config with vscode-glaze conventions 2026-02-12 22:37:27 +00:00
img ci: add CI/CD workflow, release-please, and VSIX verification 2026-02-13 08:02:54 +00:00
scripts ci: add CI/CD workflow, release-please, and VSIX verification 2026-02-13 08:02:54 +00:00
src feat: resolve shellcheck and pyflakes diagnostics to script-body positions (#24) 2026-02-14 04:13:11 +00:00
.gitignore feat: add init-config command with config status, caching, and file watcher (#1) 2026-02-13 18:15:02 +00:00
.node-version ci: add CI/CD workflow, release-please, and VSIX verification 2026-02-13 08:02:54 +00:00
.npmrc feat: implement actionlint VS Code extension 2026-02-12 18:49:54 +00:00
.oxfmtrc.json chore: exclude CHANGELOG.md from oxfmt formatting 2026-02-13 08:25:24 +00:00
.oxlintrc.json refactor: align project config with vscode-glaze conventions 2026-02-12 22:37:27 +00:00
.vscode-test.mjs feat: add init-config command with config status, caching, and file watcher (#1) 2026-02-13 18:15:02 +00:00
AGENTS.md feat: resolve shellcheck and pyflakes diagnostics to script-body positions (#24) 2026-02-14 04:13:11 +00:00
CHANGELOG.md chore(main): release 0.1.3 (#27) 2026-02-14 04:26:00 +00:00
CLAUDE.md docs: add AGENTS.md and CLAUDE.md for LLM agent guidance 2026-02-12 22:20:24 +00:00
esbuild.js feat: implement actionlint VS Code extension 2026-02-12 18:49:54 +00:00
LICENSE feat: implement actionlint VS Code extension 2026-02-12 18:49:54 +00:00
mise.toml feat: implement actionlint VS Code extension 2026-02-12 18:49:54 +00:00
package.json chore(main): release 0.1.3 (#27) 2026-02-14 04:26:00 +00:00
pnpm-lock.yaml test: add randomized test ordering with choma 2026-02-13 08:07:00 +00:00
README.md docs(readme): update features and fix runTrigger default (#26) 2026-02-14 04:24:43 +00:00
tsconfig.json ci: add CI/CD workflow, release-please, and VSIX verification 2026-02-13 08:02:54 +00:00

Logo

actionlint for VS Code

Lint GitHub Actions workflow files using actionlint.

GitHub Release VSCode OpenVSX GitHub Issues GitHub Pull Requests License

A Visual Studio Code extension that provides inline diagnostics for GitHub Actions workflow files. It runs actionlint against your workflow files and surfaces errors directly in the editor as you work.

Requirements

  • actionlint must be installed and available on your PATH (or configured via actionlint.executable).
  • shellcheck (optional) — enables deeper lint checks for shell scripts in run: steps.
  • pyflakes (optional) — enables lint checks for Python scripts in run: steps.

Getting Started

Install from the VS Code Marketplace, Open VSX, or via the CLI:

code --install-extension jimeh.actionlint

The extension activates automatically when a workspace contains a .github/workflows/ directory or when you open a GitHub Actions workflow file.

Features

  • Lint on type with configurable debounce (default) or on save.
  • Regex-based error ignore patterns (actionlint.ignoreErrors).
  • Per-rule diagnostic severity overrides (actionlint.ruleSeverities).
  • Configurable actionlint executable path.
  • Optional shellcheck and pyflakes integration for deeper run: step analysis, with errors resolved to exact positions within script bodies.
  • Initialize Config command to scaffold an .actionlint.yml in the workspace.
  • Status bar indicator showing lint state.
  • Output channel logging with configurable verbosity.

Configuration

All settings live under the actionlint.* namespace.

Setting Type Default Description
actionlint.enable boolean true Enable or disable actionlint linting.
actionlint.executable string "actionlint" Path to the actionlint binary.
actionlint.runTrigger "onSave" | "onType" "onType" When to run actionlint: on file save or on typing (with debounce).
actionlint.debounceDelay number 300 Debounce delay in ms for onType trigger mode (505000).
actionlint.ignoreErrors string[] [] Regex patterns to ignore matching errors (maps to -ignore flags).
actionlint.shellcheckExecutable string "" Path to shellcheck binary. Empty = auto-detect.
actionlint.pyflakesExecutable string "" Path to pyflakes binary. Empty = auto-detect.
actionlint.additionalArgs string[] [] Additional arguments to pass to actionlint.
actionlint.logLevel "off" | "info" | "debug" "off" Output channel logging verbosity.
actionlint.ruleSeverities object {} Override diagnostic severity for specific rule kinds. Keys are rule kind strings (e.g. syntax-check, credentials), values are error, warning, information, or hint.

Note: Settings marked as restricted (executable, shellcheckExecutable, pyflakesExecutable, additionalArgs) are ignored in untrusted workspaces.

License

MIT