refactoring how erln8 finds commands