These are just my thoughts about MY CLI experience with Juju.
I will take the opportunity to compare juju cli UX to kubernetes UX.
Btw. IMO k8 experience is definitely not the best.
1.) commands are using way too many hyphens
juju add-model juju add-unit
k8 (same for docker)
kc get pods kc get namespaces
2.) inconsistent/confusing naming. I do understand that we do have a difference here and there. But this still makes the experience less than optimal
juju kill-controller juju destroy-model juju remove-application
kc delete <resource>
3.) formatting directives
juju list-clouds --format=json
lists json stdout and stderr some information which breaks automation until you realize that
4.) Error handling
read more on here: https://discourse.jujucharms.com/t/juju-command-output/2417 (partly related to 3.))