""" Module: main.py --------------- Hlavní spouštěcí skript pro Robovojtíka. Importuje moduly pro API komunikaci, shellové funkce a uživatelské rozhraní. """ import argparse import queue import logging import logging.handlers import ui def main(): parser = argparse.ArgumentParser(description="Robovojtík – interaktivní shell asistent") parser.add_argument("--log", action="store_true", help="Zapne logování do souboru robovojtik.log") args = parser.parse_args() listener = None if args.log: log_queue = queue.Queue(-1) logger = logging.getLogger("robovojtik") logger.setLevel(logging.DEBUG) qh = logging.handlers.QueueHandler(log_queue) logger.addHandler(qh) fh = logging.FileHandler("robovojtik.log") fh.setFormatter(logging.Formatter("%(asctime)s - %(levelname)s - %(message)s")) listener = logging.handlers.QueueListener(log_queue, fh) listener.start() logger.debug("Logování zapnuto.") ui.main_ui() if listener: listener.stop() if __name__ == "__main__": main()