workspace & env DI