docs/dev-tools/backends/go.md
You may install packages directly via go install even if there isn't an asdf plugin for it.
The code for this is inside of the mise repository at ./src/backend/go.rs.
This relies on having go installed. Which you can install via mise:
mise use -g go
::: tip
Any method of installing go is fine if you want to install go some other way.
mise will use whatever go is on PATH.
:::
The following installs the latest version of hivemind and sets it as the active version on PATH:
$ mise use -g go:github.com/DarthSim/hivemind
$ hivemind --help
Hivemind version 1.1.0
You can also pin a specific Go module version, including an unreleased pseudo-version:
[tools]
"go:github.com/grafana/oats" = "v0.7.1-0.20260703092802-96201f1b8136"
If you need to resolve an unreleased revision directly from VCS instead of the
module proxy, combine the pinned version with install_env:
[tools]
"go:github.com/grafana/oats" = { version = "v0.7.1-0.20260703092802-96201f1b8136", install_env = { GOPROXY = "direct", GONOSUMDB = "github.com/grafana/oats" } }
The following tool-options are available for the go backend—these
go in [tools] in mise.toml.
install_envSet environment variables for the go install command. mise still sets GOBIN
to the tool install directory after applying install_env.
[tools]
"go:github.com/DarthSim/hivemind" = { version = "latest", install_env = { GOPRIVATE = "github.com/acme/*" } }
tagsSpecify go build tags (passed as go install -tags):
[tools]
"go:github.com/golang-migrate/migrate/v4/cmd/migrate" = { version = "latest", tags = "postgres" }
# equivalent array form:
# "go:github.com/golang-migrate/migrate/v4/cmd/migrate" = { version = "latest", tags = ["postgres", "mysql"] }