"""Command-line entry point: ``python -m hvideotool``. Runs with no arguments — reopens the last project (if any). An optional path opens that project. CLI flags are optional overrides for the new-project defaults; they 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, normalize_config def main() -> int: parser = argparse.ArgumentParser( prog="hvideotool", description="Инспектор детекции уже наложенной цензуры на картинках.", ) parser.add_argument("target", nargs="?", help="путь к проекту для открытия (папка или project.json)") parser.add_argument("--model", dest="model_path", default=None, help="путь к весам (YOLO)") args = parser.parse_args() config = AppConfig() settings_store.apply(config) # persisted defaults first normalize_config(config) # drop any legacy classic/inpaint values if args.model_path: config.model_path = args.model_path return run(config, target=args.target) if __name__ == "__main__": sys.exit(main())