asdf-vm/asdf · error

command removed

Error message

command removed

What it means

The `asdf update` command was removed from this version of asdf; invoking it prints an explanatory notice and returns this sentinel error so the CLI exits non-zero. It is an intentional hard stop, not a malfunction.

Source

Thrown at internal/cli/cli.go:335

				Action: func(_ context.Context, cmd *cli.Command) error {
					args := cmd.Args()
					return shimVersionsCommand(logger, args.Get(0))
				},
			},
			{
				Name: "uninstall",
				Action: func(_ context.Context, cmd *cli.Command) error {
					tool := cmd.Args().Get(0)
					version := cmd.Args().Get(1)

					return uninstallCommand(logger, tool, version)
				},
			},
			{
				Name: "update",
				Action: func(_ context.Context, _ *cli.Command) error {
					fmt.Println(updateCommandRemovedText)
					return errors.New("command removed")
				},
			},
			{
				Name: "where",
				Action: func(_ context.Context, cmd *cli.Command) error {
					tool := cmd.Args().Get(0)
					version := cmd.Args().Get(1)

					return whereCommand(logger, tool, version)
				},
			},
			{
				Name: "which",
				Action: func(_ context.Context, cmd *cli.Command) error {
					tool := cmd.Args().Get(0)

					return whichCommand(logger, tool)
				},

View on GitHub (pinned to 074a1722ca)

Solutions

  1. Stop using `asdf update`; update asdf via your package manager (brew upgrade asdf, apt, etc.) or by reinstalling from the official release
  2. Remove or replace `asdf update` calls in shell rc files, scripts, and CI configs
  3. Check `asdf --help` for the current command surface if you need a related action

Example fix

// before
asdf update
// after
brew upgrade asdf   # or your platform's package manager / git pull in ~/.asdf
Defensive patterns

Strategy: fallback

Validate before calling

// guard before calling in scripts
if asdf --help 2>/dev/null | grep -q '^  update'; then
  asdf update
else
  echo 'asdf update removed; use your package manager' >&2
fi

Try / catch

// shell: tolerate the removal
if ! asdf update 2>/dev/null; then
  echo "update skipped: command removed" >&2
fi

Prevention

When it happens

Trigger: Running `asdf update` (or any invocation routed to the 'update' command) in a version of asdf where the self-update command has been removed.

Common situations: Scripts, CI pipelines, or shell aliases written for older asdf versions that auto-update the tool; users migrating from asdf 0.15-and-earlier workflows where `asdf update` existed.

Related errors


AI-assisted analysis of asdf-vm/asdf@074a1722ca (2026-08-30). Data as JSON: /api/errors/e546de45b11719c6. Report an issue: GitHub.