This looks really cool! Working on multiple projects with different versions before tools like pyenv or nvm existed was a real challenge. As someone working with different programming languages as well, this tool looks like the next logical step.
asdf works great for that purpose. And you can either use a single .tool-versions file or enable legacy support for compatibility with pyenv rbenv etc.
Plus is supports many more tools than just the language vms
I wanted to like asdf but 1. it's slow, and 2. not available on Windows proper (non-WSL). Same with mise (https://github.com/jdx/mise) which builds on asdf.
I've used all of these tools in conjunction with my own usage habits, which is why I'm developing vfox from scratch rather than based on asdf. so the issue at hand for vfox is the need to rebuild the plugin ecology. There's no way to utilise off-the-shelf asdf plugins.
I just looked at your plugin-template. This sounds good actually. Writing asdf plugins can be quite nasty. I like the approach of adding a lua dsl for plugin generation, not sure I like the dsl itself.
It does have upsides. Though the python runtime version management story suffers from being fragmented. It gets complex if you add poetry, IDEs, different types of shells (gitbash, power shell, zsh, etc), things that have their own ideas of environments (Jupyter as one example).