From what I can tell, the runner will use a default set of bash arguments including --norcfile and --noprofile, which means it won't load any Shell scripts like nvm or tfenv.
I see it's possible to override the shell invocation per-workflow, but what I really would like is some way to set the default shell invocation globally from within a runner so that we can get a fully initialized login/rc shell, in order to be able to use these tools easily, e.g. run: nvm exec 14.17.3 ci.js.
Specifically to our use case we have several of these *env tools in the /etc/profile which works fine as long as bash is invoked normally, but of course without the login/profile processing, the shims PATHs aren't set and the function based commands (nvm) don't exist.