feat: add initial CLI support