The $injector service allow to inject services that involves circular dependencies. The buildInitializer (https://github.com/nfroidure/knifecycle/blob/main/src/build.ts#L120) could take the service names list that could be used with the $injector service at runtime and initialize it in another sequential initialization round trip in the background so that they are ready once the built code actually use the $injector function.