from __future__ import annotations from adapter.matrix.handlers.chat import ( handle_list_chats, make_handle_archive, make_handle_new_chat, make_handle_rename, ) from adapter.matrix.handlers.confirm import make_handle_cancel, make_handle_confirm from adapter.matrix.handlers.settings import ( handle_help, handle_settings, handle_settings_connectors, handle_settings_plan, handle_settings_safety, handle_settings_skills, handle_settings_soul, handle_settings_status, handle_settings_whoami, handle_toggle_skill, ) from core.handler import EventDispatcher from core.protocol import IncomingCallback, IncomingCommand def register_matrix_handlers(dispatcher: EventDispatcher, client=None, store=None) -> None: dispatcher.register(IncomingCommand, "new", make_handle_new_chat(client, store)) dispatcher.register(IncomingCommand, "chats", handle_list_chats) dispatcher.register(IncomingCommand, "rename", make_handle_rename(client, store)) dispatcher.register(IncomingCommand, "archive", make_handle_archive(client, store)) dispatcher.register(IncomingCommand, "help", handle_help) dispatcher.register(IncomingCommand, "settings", handle_settings) dispatcher.register(IncomingCommand, "settings_skills", handle_settings_skills) dispatcher.register(IncomingCommand, "settings_connectors", handle_settings_connectors) dispatcher.register(IncomingCommand, "settings_soul", handle_settings_soul) dispatcher.register(IncomingCommand, "settings_safety", handle_settings_safety) dispatcher.register(IncomingCommand, "settings_plan", handle_settings_plan) dispatcher.register(IncomingCommand, "settings_status", handle_settings_status) dispatcher.register(IncomingCommand, "settings_whoami", handle_settings_whoami) dispatcher.register(IncomingCallback, "confirm", make_handle_confirm(store)) dispatcher.register(IncomingCallback, "cancel", make_handle_cancel(store)) dispatcher.register(IncomingCallback, "toggle_skill", handle_toggle_skill)