TODO: add filtering (software and hardware) better history clear history and clear screen commands code refactoring