The feature to use cwd to create project is required so that projects can be created for non-git project structures. There are other plugins which have more sophisticated logic to recognize the project root and set it as pwd. The project root determination can be delegated to those. one such example is: airblade/vim-rooter
- there are many version control systems {e.g. .git, .svn, .hg}
- there are git submodules. {.git inside .git}
- sometimes there are multiple git repos which collectively form one project, the root of which is denoted by an arbitrarily chosen special file {e.g. .root}.
- sometimes within one repo, there could be multiple smaller subprojects... and more.