cmd/cue: don't break help if not commands are defined

Change-Id: I4e26343b9eb6171343b83cc2bdb15ab1227fe07d
Reviewed-on: https://cue-review.googlesource.com/c/cue/+/2944
Reviewed-by: Marcel van Lohuizen <mpvl@golang.org>
diff --git a/cmd/cue/cmd/root.go b/cmd/cue/cmd/root.go
index 671da30..6dfefa1 100644
--- a/cmd/cue/cmd/root.go
+++ b/cmd/cue/cmd/root.go
@@ -220,6 +220,9 @@
 	// before computing commands.
 	for _, spec := range sub {
 		commands := tools.Lookup(spec.name)
+		if !commands.Exists() {
+			return nil
+		}
 		i, err := commands.Fields()
 		if err != nil {
 			return errors.Newf(token.NoPos, "could not create command definitions: %v", err)