вам следует обратиться к Singleton, если у вас есть какой-либо ресурс, который будет оставаться постоянным во всем приложении. Как загрузка некоторых данных из какого-либо файла или справочных данных, которые не будут меняться в течение жизненного цикла приложения. в противном случае, перейдите на SLSB. Недостаток SLSB заключается в том, что будет создано несколько объектов, следовательно, будет занято больше памяти.
Описанный вами макет будет очень хорошо работать с подмодулями git. Я бы настоятельно рекомендовал прочитать документы и попробовать несколько учебных пособий . Основное отличие вашего плана заключается в том, что в каждом клиентском репозитории и репозитории клиентских плагинов будет два пульта вместо одного. И, когда вы хотите начать новый клиентский проект, вам нужно будет
Лучшим вариантом может быть использование того же репозитория и просто создание ветки для клиент. Вот как бы я это сделал.