You should check out Ouijit [1] - I use it regularly for work and it's nice because it focuses on the environment that you want, and just gives you a shell that you can use any tooling in, as well as VM isolation per worktree if needed.
[1]: https://github.com/ouijit/ouijit