def main(args): '''generic command entry point''' name = os.path.basename(args[0]) if name.startswith("@"): name = name[1:] if name not in COMMANDS: finish(Result.not_found("command %s not found" % name)) cls = COMMANDS[name] params = cls.parse_args(args[1:]) result = cls.invoke(dict(name=name, args=params, vars=os.environ)) finish(result)