Cli design principles