"""Command-line entry point: ``python -m hvideotool``. Runs with no arguments — open a folder of images in-app. CLI flags are optional overrides; choices persist to ~/HVideoTool/settings.json. """ from __future__ import annotations import argparse import sys from . import settings_store from .app import run from .config import AppConfig def main() -> int: parser = argparse.ArgumentParser( prog="hvideotool", description="Инспектор детекции уже наложенной цензуры на картинках.", ) parser.add_argument("folder", nargs="?", help="папка с картинками для немедленного открытия") parser.add_argument("--detector", choices=["classic", "yolo", "combined"], default=None) parser.add_argument("--model", dest="model_path", default=None, help="путь к весам (YOLO)") args = parser.parse_args() config = AppConfig() settings_store.apply(config) # persisted choices first if args.detector: config.detector = args.detector if args.model_path: config.model_path = args.model_path return run(config, folder=args.folder) if __name__ == "__main__": sys.exit(main())