func callMe(out clif.Output, in clif.Input, c *clif.Command, foo MyFoo, baz *MyBaz) { barIn := in.Ask("Gimme a bar integer: ", func(v string) error { _, err := strconv.Atoi(v) return err }) barInt, _ := strconv.Atoi(barIn) foo.SetBar(barInt) bazIn := in.AskRegex("Now please a baz: ", regexp.MustCompile(`^B`)) baz.baz = bazIn out.Printf("Bar: <info>%s<reset>\nBaz: <headline>%s<reset>\n", foo.Bar(), baz) }