Initial version with CLI