As Mojave introduced Runtime Hardening and removed support for Scripting Additions, mach_inject and Apple Scrip is no more viable option to inject third-party code/library into a process which is built with Hardened Runtime. We need a solution which can inject third-party library into such process on macOS.
1) It should inject the library into a process of given application
2) A process may be already running or start in future
3) It should inject into a process of all users
4) A bundle can be .dylib or .bundle
5) Target application is built with 'com.apple.security.get-task-allow' = No, 'com.apple.security.cs.allow-dyld-environment-variables' = NO and 'Hardened Runtime' is ON.
6) It should work when System Integrity Protection is ON.
1) It may require admin privileges to deploy/install on the system.
2) It should not require to restart the system to load the after installation
3) It should not prompt the user for anything at runtime
IT SHOULD NOT BE KERNEL EXTENSION. (There is a separate project for Kernel Extension)