def METHOD_NAME():
    print("Getting list of external commands")
    help = conda_help()
    commands = []
    start = False
    for line in help.splitlines():
        # Commands start after "command" header
        if line.strip() == "other commands:":
            start = True
            continue
        if start:
            # The end of the commands
            if not line:
                break
            if line[4] != " ":
                commands.append(line.split()[0])
    # TODO: Parallelize this
    print("Getting list of external subcommands")
    subcommands_re = re.compile(r"\s*\{(.*)\}\s*")
    # Check for subcommands (like conda skeleton pypi)
    command_help = {}
    def get_help(command):
        command_help[command] = conda_command_help(command)
        print("Checked for subcommand help for %s" % command)
    with ThreadPoolExecutor(len(commands)) as executor:
        # list() is needed for force exceptions to be raised
        list(executor.map(get_help, commands))
    for command in command_help:
        help = command_help[command]
        start = False
        for line in help.splitlines():
            if line.strip() == "positional arguments:":
                start = True
                continue
            if start:
                m = subcommands_re.match(line)
                if m:
                    commands.extend([f"{command} {i}" for i in m.group(1).split(",")])
                break
    return commands