И всё же проще всего с помощью composer сделать всё что требуется, а потом скопировать туда, где это невозможно.
UPD: Заметил "собственные расширения", имеется в виду, что есть свои наработки, но не хочется выкладывать их в открытый доступ? Тогда можно заморочиться с закрытыми репами или вариант подешевле - просто копировать в соответствующую папку в проекте расширение и всё, пользоваться. Например, у вас есть компонент MyComponent, тогда вы его копируете в папку frontend/components/ и вызываете через \frontend\components\MyComponent, в файлах компонента не забудьте проставить правильные namespace