1.6 KiB
1.6 KiB
Архитектура (ARCHITECTURE.md)
Паттерн "Thin Adapter" (Тонкая поверхность)
Система разделена на три логических слоя:
- Транспортный слой (Adapter): Подключается к внешней платформе (Matrix). Занимается конвертацией нативных событий (
room.message) во внутренние структуры (IncomingMessage). - Ядро (Core): Предоставляет единый протокол (
core/protocol.py), не зависящий от конкретной реализации (Matrix, Telegram и т.д.). - Платформенный слой (SDK):
RealPlatformClientинкапсулирует подключение по WebSocket к реальным агентам (AgentApi).
Routing & Registry
Бот может обслуживать множество агентов (multi-tenant). Маршрутизация настраивается статически через config/matrix-agents.yaml. Каждый пользователь (@user:server) привязан к конкретному agent_id, у которого есть свой HTTP URL и свой изолированный workspace_path (например, /agents/1/).
Файловый контракт
Файлы не передаются агенту в base64. Бот сохраняет вложение напрямую в локальную директорию (общий volume), и передает агенту только относительный путь (workspace_path).