What's your preferred setup for isolating SDKs and dependencies across different projects (Go, Python, Node, etc.) on macOS without using containers? I'm struggling with global pollution (e.g., GOPATH, site-packages) and want a project-local approach that plays nicely with JetBrains IDEs. What tools/techniques do you find most effective: asdf, mise, direnv, language-specific managers (nvm, pyenv), or something else entirely? What are the trade-offs?