first implementation of workspace handling