diff --git a/cfg_checker/cfg_check.py b/cfg_checker/cfg_check.py
index 11190b4..403483e 100644
--- a/cfg_checker/cfg_check.py
+++ b/cfg_checker/cfg_check.py
@@ -2,9 +2,11 @@
 import sys
 from logging import DEBUG, INFO
 
+from cfg_checker.cli.arguments import add_global_arguments
 from cfg_checker.cli.command import execute_command, helps, parsers, \
     parsers_inits
-from cfg_checker.common import config, logger, logger_cli
+from cfg_checker.common.settings import CheckerConfiguration
+from cfg_checker.common import logger, logger_cli
 from cfg_checker.helpers.args_utils import MyParser
 
 pkg_dir = os.path.dirname(__file__)
@@ -20,33 +22,7 @@
     """
     # Main entrypoint
     parser = MyParser(prog="# Mirantis Cloud configuration checker")
-
-    parser.add_argument(
-        "-d",
-        "--debug",
-        action="store_true", default=False,
-        help="Set CLI logging level to DEBUG"
-    )
-    parser.add_argument(
-        '-s',
-        '--sudo',
-        action='store_true', default=True,
-        help="Use sudo for getting salt creds"
-    )
-
-    parser.add_argument(
-        '--skip-nodes',
-        metavar='skip_string', default=None,
-        help="String with nodes to skip. Only trailing '*' supported!"
-             " Example: 'cmp*,ctl01'"
-    )
-
-    parser.add_argument(
-        '--skip-nodes-file',
-        metavar='skip_nodes_file', default=None,
-        help="Filename with nodes to skip. Note: use fqdn node names."
-    )
-
+    add_global_arguments(parser)
     subparsers = parser.add_subparsers(dest='command')
 
     # create parsers
@@ -76,17 +52,18 @@
         parser.print_help()
         logger_cli.info("\n# Please, type a command listed above")
         sys.exit(1)
-    # Pass externally configured values
-    config.ssh_uses_sudo = args.sudo
 
-    # Handle options
+    # Handle debug option before config init
     if args.debug:
         logger_cli.setLevel(DEBUG)
     else:
         logger_cli.setLevel(INFO)
 
+    # Init the config and pass externally configured values
+    config = CheckerConfiguration(args)
+
     # Execute the command
-    result = execute_command(args, args.command)
+    result = execute_command(args, args.command, config)
     logger.debug(result)
     sys.exit(result)
 
