add interface for commands