As Tick said, you want the "Application is an agent (UIElement)" key in your info.plist. This key means that you will not have a dock icon ... this is what you want. However, there is no need to use the "Application only for background" key. This key does not allow placing any windows on the screen, which is not necessary. Therefore, I would leave this key.
In general, configure the application so that the window does not automatically appear at startup. Do some startup testing to see if a configuration is needed. If so, make the configuration window visible. You can even have the โConfiguration ...โ menu item in your status menu so that your user can open the configuration window at any time. It is really very simple, but just do not use the info.plist "Application only" key.
By the way, itโs a little difficult to make a window to the front. The trick is to make your application first in front, like this ...
[NSApp activateIgnoringOtherApps:YES]; [someWindow makeKeyAndOrderFront:nil];
source share