Freedom251 › Runtime Version Managers
tenv

What tenv is
tenv is a free Go version manager for OpenTofu, Terraform, Terragrunt, Terramate, and Atmos. It installs and switches among versions selected by exact release, semantic-version constraint, latest or prerelease choice, or requirements found in infrastructure-as-code files. For OpenTofu, Terraform, and Terragrunt, an HCL parser extracts version constraints. Running tenv without a subcommand opens interactive management menus. Documentation describes SHA-256 checksums and signature verification, although coverage differs: Terragrunt and Atmos have checksum checks without signatures, and unstable OpenTofu releases are signed only with cosign. tenv runs on Linux, macOS, and Windows under the Apache 2.0 license. Installation is available through package managers or manual methods. A Docker image exists but is not intended for CI pipelines. GitHub Actions support can expose proxied output and status, while lockfiles prevent concurrent install or uninstall conflicts.
Who it suits
tenv suits developers and DevOps professionals managing infrastructure-as-code tool versions across Linux, macOS, or Windows. It also supports project version pinning and CI/CD workflows.
What it does well
- Manages five infrastructure tools
- Parses HCL version constraints
- Supports exact and prerelease versions
- Cross-platform support
- Free Apache 2.0 project
What to know first
- Verification varies by tool
- Some releases lack signatures
- Docker image not intended for CI pipelines
- GitHub downloads may need token configuration
Limits
Verification is tool-dependent: Terragrunt and Atmos have checksum checks without signatures, and unstable OpenTofu releases are signed only with cosign. The Docker image is not intended for CI pipelines.
Getting started
- Open the tenv website
- Install with a listed package manager or manual method
- Choose Linux, macOS, or Windows installation
- Select tool versions directly or from infrastructure-as-code constraints
- Configure GitHub Actions environment support when needed
Verdict
tenv provides broad version selection and HCL-based detection for several infrastructure tools. Its verification coverage differs by tool, and the Docker image has a stated CI limitation.
Questions
How much does tenv cost?
tenv is free and distributed under the Apache 2.0 license.
Which operating systems are supported?
tenv supports Linux, macOS, and Windows.
Which tools can it manage?
It manages OpenTofu, Terraform, Terragrunt, Terramate, and Atmos.
How can versions be selected?
You can use exact versions, semantic-version constraints, latest or prerelease releases, or constraints detected from supported HCL files.
Does tenv work with GitHub Actions?
Yes. With GITHUB_ACTIONS enabled, it can write proxied output, errors, and exit status to GITHUB_OUTPUT and update the tool path.
How is tenv installed?
The project lists Homebrew, MacPorts, Chocolatey, Scoop, WinGet, Snap, Nix, Linux packages, and manual installation options.
Facts from tenv's own pages
- Concurrency
- Install and uninstall operations use lockfiles to prevent conflicts between concurrent tenv instances. · tofuutils.github.io, 3 Oct 2026
- Docker
- A Docker image is available, but the documentation says it is not intended for running tenv in CI pipelines. · tofuutils.github.io, 2 Oct 2026
- GitHub Actions
- When the GITHUB_ACTIONS environment variable is enabled, tenv can write proxied stdout, stderr and exit code to GITHUB_OUTPUT. · tofuutils.github.io, 2 Oct 2026
- GitHub API integration
- A GitHub token can be configured to increase REST API rate limits for downloads from GitHub repositories. · tofuutils.github.io, 2 Oct 2026
- Go library
- tenv can be called as a Go module through the tenvlib wrapper package, which the project says has a Semver compatibility promise. · tofuutils.github.io, 3 Oct 2026
- HCL detection
- It uses an HCL parser to extract required version constraints from OpenTofu, Terraform, and Terragrunt files. · tofuutils.github.io, 3 Oct 2026
- Installation
- Installation options include package managers, manual packaged binaries, and a Docker image; the documentation says Docker is not intended for CI pipelines. · tofuutils.github.io, 3 Oct 2026
- Integrations
- The documentation describes GitHub Actions environment-variable support for exposing proxied output and updating the tool path. · tofuutils.github.io, 3 Oct 2026
- Intended users
- The project describes the tool as helping developers and DevOps professionals manage versions of supported infrastructure tools. · tofuutils.github.io, 3 Oct 2026
- Interactive use
- Running tenv without a subcommand displays interactive menus for managing tools and versions. · tofuutils.github.io, 2 Oct 2026
- License
- The project is distributed under the Apache 2.0 license. · tofuutils.github.io, 3 Oct 2026
- Platforms
- The project says it works on Linux, macOS, Windows, BSD, and Solaris, and lists installation options for Linux, macOS, and Windows. · tofuutils.github.io, 3 Oct 2026
- Purpose
- tenv is a Go version manager for OpenTofu, Terraform, Terragrunt, Terramate, and Atmos. · tofuutils.github.io, 3 Oct 2026
- Security checks
- It checks SHA-256 checksums and supports signature verification with cosign or PGP for some managed tools. · tofuutils.github.io, 3 Oct 2026
- Semver
- The project states that it is compatible with Semver 2.0.0. · tofuutils.github.io, 3 Oct 2026
- Support
- The project directs questions and suggestions to GitHub Issues and the tofuutils Slack community's #tofuutils channel. · tofuutils.github.io, 3 Oct 2026
- Verification limits
- The documentation says Terragrunt and Atmos releases have checksum checks but no signature available; unstable OpenTofu versions are signed only with cosign. · tofuutils.github.io, 3 Oct 2026
- Version detection
- It uses semantic versioning and can parse HCL files to extract version constraints for OpenTofu, Terraform and Terragrunt. · tofuutils.github.io, 2 Oct 2026
- Version management
- It can install and switch between versions of the supported tools. · tofuutils.github.io, 2 Oct 2026
- Version selection
- It supports exact versions, semantic version constraints, latest or prerelease versions, and versions detected from infrastructure-as-code files. · tofuutils.github.io, 3 Oct 2026
Where tenv stands on Freedom251
- Runtime Version Managers#25 of 30
- Development Environment Managers#48 of 50