work in progress: generate command