Move an asdf project to OMG

Try OMG with your existing .tool-versions, compare the selected runtime and command path, and keep asdf until your project tests pass.

Start with one project, not your whole asdf setup

You have a project with .tool-versions and want to try OMG's package commands or task runner without losing a working asdf setup. Keep asdf installed while you test one runtime and one project task.

Current asdf is a Go binary and still uses shims to select executables. OMG reads supported .tool-versions pins and adds its installed runtime directories to PATH through a shell hook. The two tools keep separate runtime installations.

Record what asdf selects in this project

cat .tool-versions
asdf current
asdf which node

Install one pinned runtime with OMG

For a project with one supported Node.js version in .tool-versions, omg use node reads the pin and installs or selects that version in OMG's own data directory. OMG recognizes the common asdf nodejs name as node. It does not reuse files in asdf's installs directory.

Check the pin and install the matching Node.js version

omg which node
omg use node
omg list node

Check which Node.js your shell runs

In a separate Bash session, activate OMG's hook and inspect the command path and version inside the project. The hook selects installed runtimes when you change directories. Use the shell integration guide for Zsh or Fish.

Activate OMG in a separate Bash session

eval "$(omg hook bash)"

At the next shell prompt, check where node resolves and which version runs. The hook updates the path when Bash displays a prompt.

Compare the active Node.js command with your asdf baseline

command -v node
node --version

If the version and path match the OMG installation you selected, run your project's usual tests. If you decide to keep OMG, remove the asdf shims directory from this shell's PATH setup and keep the OMG hook in the shell profile. Keep .tool-versions and the asdf installation until your projects pass their own checks.

Keep asdf where its plugins matter

asdf remains the better fit for a project that needs one of its plugins or shim behavior outside an interactive shell. OMG is useful when its supported runtimes can share a CLI with OS package commands and project tasks. The migration does not require changing .tool-versions, deleting asdf, or running omg migrate.

Start with the OMG installation guide if you have not installed it. The runtime reference lists supported tools, and the installation guide explains the hook before you change your profile.

Sources and verification

Commands and behavior are based on the references below. Source review is not a claim that every workflow has been executed on every supported platform.

Read as Markdown