I have seen this phrase written with and without a hyphen. Why is that? In which instances is which one right? What verb does "viens" come from anyway?
Viens is the 2nd person singular imperative present of the verb venir: to come.
I would not put a hyphen in “Viens là”, I can't see any reason to do so. Viens et là are two well separated words, as in “Come here”.