 (s/def ::command-form-name
   (s/with-gen
     (s/and symbol?
+           #(not (some #{%} '[description
+                              spec
+                              query
+                              auth-query
+                              auth
+                              emit]))
            #(not (some #{\/} (str %))))
     #(s/gen '#{foo bar foo-bar})))
 

  (s/cat :name ::command-name
         :forms
         (s/spec (s/cat :description (s/? ::command-description)
                        :query (s/? ::command-query-form)
                        :spec (s/? ::command-spec-form)
                        :forms (s/* ::command-form)
                        :emit ::command-emit-form))
         :env (s/? any?)))

  (s/spec (s/cat :form-name ::command-form-name
                 :form-body ::command-form-body)))

(s/def ::command-spec-form
  (s/spec (s/cat :form-name #{'spec}
                 :form-body ::command-spec)))

(s/def ::command-query-form
  (s/spec (s/cat :form-name #{'query}
                 :form-body :workflo.macros.specs.query/query)))

(s/def ::command-auth-query-form
  (s/spec (s/cat :form-name #{'auth-query}
                 :form-body any?)))

(s/def ::command-auth-form
  (s/spec (s/cat :form-name #{'auth}
                 :form-body ::command-form-body)))

(s/def ::command-emit-form
  (s/spec (s/cat :form-name #{'emit}
