refactor descriptor discovery, and running detection