A common pattern in tools.deps based projects, for instance, is to use Babashka as a sort of Makefile replacement and make it act as a thin wrapper around tools.build. I don't like this because it's yet another tool to understand and install on top of tools.build, whereas sticking with the Clojure CLI itself means all you need is...the Clojure binary on your PATH. I am fine with projects that use a Makefile instead of Babashka since pretty much every Mac and Linux machine has `make` installed and it is widely used outside of Clojure, too. So it is not too foreign of a concept when getting people started with Clojure.
As for your response with (2), here is an example with Rails:
The example app doesn't start with a chat or anything complicated really. Instead, `rails new myapp` gives you a well-organized folder structure, one command to start your web app, and a simple landing page making use of the MVC patterns. The landing page immediately directs you to official Rails documentation for learning what everything in your myapp folder is. When it comes to time to extend a Rails application (add a new model, add a new view, add a new route, etc.), there is pretty much always a "canonical" choice of action. In the case of Biff, there is technically many ways to go about doing each of these things, partly due to the plugin architecture, and partly due to the fact that Biff is built out of independent software and making them synergize for a web app. Does this help?