swap arguments. appDir is auto resolved when he's empty
the app and config path can be configured in env