mirror of
https://github.com/jimeh/vscode-actionlint.git
synced 2026-04-20 18:44:07 +00:00
Lint GitHub Actions workflow files using actionlint in VS Code.
https://marketplace.visualstudio.com/items?itemName=jimeh.actionlint
|
|
||
|---|---|---|
| .github | ||
| .vscode | ||
| img | ||
| scripts | ||
| src | ||
| .gitignore | ||
| .node-version | ||
| .npmrc | ||
| .oxfmtrc.json | ||
| .oxlintrc.json | ||
| .vscode-test.mjs | ||
| AGENTS.md | ||
| CHANGELOG.md | ||
| CLAUDE.md | ||
| esbuild.js | ||
| LICENSE | ||
| mise.toml | ||
| package.json | ||
| pnpm-lock.yaml | ||
| README.md | ||
| tsconfig.json | ||
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 viaactionlint.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.ymlin 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 (50–5000). |
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.