GitPedia

Actions

GitHub Actions for the asdf version manager

From asdf-vm·Updated June 17, 2026·View on GitHub·

A collection of [asdf](https://github.com/asdf-vm/asdf) GitHub Actions for use in your workflows. The project is written primarily in JavaScript, distributed under the Apache License 2.0 license, first published in 2019. Key topics include: asdf, asdf-vm, github-actions.

Latest release: v4.0.1
November 15, 2025View Changelog →

GitHub Actions for asdf

GitHub Release
lint
test
build
CodeQL

A collection of asdf GitHub Actions for use in your
workflows.

ActionUseDescription
installasdf-vm/actions/install@v4Installs asdf & tools in .tool-versions.<br>Plugins fetched from asdf-vm/asdf-plugins
setupasdf-vm/actions/setup@v4Only install asdf CLI.
plugins-addasdf-vm/actions/plugins-add@v4Only install plugins, not tools.
plugin-testasdf-vm/actions/plugin-test@v4Plugin author test automation.
<!-- TOC --> <!-- TOC -->

Usage

yaml
steps: - name: Install asdf & tools uses: asdf-vm/actions/install@v4

To avoid breaking changes, use the full Semantic Version
vX.Y.Z. Below are the available version pinning options:

yaml
steps: # Reference a specific commit (most strict, for the supply-chain paranoid) - uses: asdf-vm/actions/install@f4acd427436df623426c29f7e3e9ea715be28396 # Reference a semver major version only (GitHub recommended) - uses: asdf-vm/actions/install@v4 # Reference a semver version of a release (recommended) - uses: asdf-vm/actions/install@v4.0.2 # Reference a branch (most dangerous) - uses: asdf-vm/actions/install@master

Automatic Actions Updating

GitHub Dependabot has support for tracking GitHub Actions releases and
automatically creating PRs with these updates.

yaml
# .github/dependabot.yml version: 2 updates: - package-ecosystem: "github-actions" directory: "/" schedule: interval: "weekly" # Check for updates to GitHub Actions every week

Actions

Install

Installs asdf & tools in .tool-versions. Plugins fetched from
asdf-vm/asdf-plugins

yaml
steps: - uses: asdf-vm/actions/install@v4

Options are:

NameRequiredDefaultDescription
asdf_branchfalsemaster (i.e. latest)asdf branch to clone
skip_installfalsefalsesetup env without installing asdf
tool_versionsfalseIf present, this value will be written to the .tool-versions file.
before_installfalseBash script to run after plugins are installed but before asdf install.<br><br>e.g., to install npm keyring

Plugin Test

Plugin author test automation

yaml
steps: - uses: asdf-vm/actions/plugin-test@v4 with: command: my_tool --version

Options are:

NameRequiredDefaultDescription
asdf_branchfalsemaster (i.e. latest)asdf branch to clone
skip_installfalsefalsesetup env without installing asdf
commandtrueCommand used to test your plugin tool. Something with --version or --help
pluginfalserepository name without asdf-Plugin name to use
versionfalselatestTool version to test
giturlfalsecurrent github repositoryPlugin repository
gitreffalsecurrent commitBranch or commit from repository to test
github_tokenfalsegithub.token valueToken used to avoid rate limit when asdf calls the GitHub API

Setup

Only install asdf CLI.

Note: this Action is used internally by Install & Plugin Test, opt for those
first.

yaml
steps: - uses: asdf-vm/actions/setup@v4

Options are:

NameDefaultDescription
asdf_branchmaster (i.e. latest)asdf branch to clone
skip_installfalsesetup env without installing asdf

Plugins Add

Only install plugins, not tools.

Note: this Action is used internally by Install & Plugin Test, opt for those
first.

yaml
steps: - uses: asdf-vm/actions/plugins-add@v4

Options are:

NameRequiredDefaultDescription
asdf_branchfalsemaster (i.e. latest)asdf branch to clone
skip_installfalsefalsesetup env without installing asdf
tool_versionsfalseIf present, this value will be written to the .tool-versions file.

Miscellaneous

Full Example Workflow

This example workflow demonstrates how to use the Install Action:
asdf-vm/actions/install@v4. It is taken from the
asdf-vm/asdf-plugin-template
repository.

shell
# example .tool-versions shellcheck 0.9.0 shfmt 3.6.0
yaml
# https://github.com/asdf-vm/asdf-plugin-template/blob/main/template/.github/workflows/lint.yml name: Lint on: push: branches: - main pull_request: jobs: shellcheck: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: asdf-vm/actions/install@v4 - run: scripts/lint.bash # script runs Shellcheck, Shfmt etc installed by previous action actionlint: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Check workflow files uses: docker://rhysd/actionlint:1.6.23 with: args: -color

Docker Tricks

Using the default GitHub Action images may cause problems during plugin testing
due to current asdf implementation constraints. If you experience issues, you
can use Docker containers to reduce the variables of your environment.

yaml
jobs: plugin_test: strategy: fail-fast: false matrix: container: - alpine:latest - centos:latest - ubuntu:latest runs-on: ubuntu-latest container: image: ${{ matrix.container }} steps: - uses: asdf-vm/actions/plugin-test@v4 with: command: my_tool --version

Contributors

Showing top 12 contributors by commit count.

View all contributors on GitHub →

This article is auto-generated from asdf-vm/actions via the GitHub API.Last fetched: 6/21/2026