Plugin System

    All components are loaded dynamically via plugin loaders:

    LoaderPurpose
    load_input()Load sensor plugins (VLM, camera, video)
    load_llm()Load LLM providers (OpenAI, Gemini)
    load_action()Load action plugins
    load_simulator()Load simulators
    load_background()Load background tasks

    Providers (Singletons)

    Thread-safe singleton providers manage shared state:

    ProviderDescription
    IOProviderInput/output buffer with thread-safe access, tick counter, fuser/LLM state
    SleepTickerProviderAsync sleep with cancellation support
    ConfigProviderRuntime configuration
    EventBusPub/sub event system