Архитектура Clawdbot
Глубокое погружение в архитектуру ИИ-ассистента Clawdbot. Узнайте о модели Gateway-Agent, WebSocket API, потоке сообщений и дизайне системы.
Обзор архитектуры Clawdbot
Clawdbot следует архитектуре Gateway-Agent, которая разделяет ответственность между транспортировкой сообщений и обработкой ИИ. Такой дизайн обеспечивает масштабируемость, надёжность и поддержку нескольких каналов.
Компоненты системы
Уровень шлюза
Шлюз Clawdbot — это центральный координатор:
| Компонент | Ответственность |
|---|---|
| Менеджер соединений | Поддерживает соединения с провайдерами |
| Маршрутизатор сообщений | Направляет сообщения к агентам |
| Менеджер сессий | Управляет состоянием разговора |
| WebSocket-сервер | Предоставляет типизированный API |
Уровень агентов
Агенты Clawdbot обрабатывают ИИ:
| Компонент | Ответственность |
|---|---|
| Runtime | Выполняет логику агента |
| Исполнитель инструментов | Запускает инструменты и навыки |
| Менеджер контекста | Управляет контекстом разговора |
| Генератор ответов | Генерирует ответы ИИ |
Поток сообщений
Входящий поток
Provider → Gateway → Router → Agent → Runtime- Провайдер получает сообщение
- Шлюз нормализует формат
- Маршрутизатор выбирает целевого агента
- Агент обрабатывает сообщение
- Runtime генерирует ответ
Исходящий поток
Runtime → Agent → Gateway → Provider → User- Runtime генерирует ответ
- Агент форматирует сообщение
- Шлюз направляет к провайдеру
- Провайдер доставляет сообщение
WebSocket API
Подключение
const ws = new WebSocket('ws://localhost:3010');
ws.on('open', () => {
ws.send(JSON.stringify({
type: 'auth',
token: 'your-token'
}));
});Типы сообщений
| Тип | Направление | Описание |
|---|---|---|
auth | Клиент→Сервер | Аутентификация соединения |
message | Двунаправленный | Отправка/получение сообщений |
status | Сервер→Клиент | Обновления статуса соединения |
typing | Сервер→Клиент | Индикаторы набора текста |
Управление состоянием
Состояние сессии
Clawdbot поддерживает состояние на нескольких уровнях:
Global State
└── Agent State
└── Session State
└── Message StateСохранение состояния
| Тип состояния | Хранилище | Жизненный цикл |
|---|---|---|
| Глобальное | clawdbot.json | Постоянное |
| Агента | agents/<id>/ | Для каждого агента |
| Сессии | sessions/<key>.jsonl | До истечения срока |
| Сообщения | В памяти | Для каждого запроса |
Масштабируемость
Горизонтальное масштабирование
Clawdbot поддерживает горизонтальное масштабирование:
- Несколько экземпляров шлюза за балансировщиком нагрузки
- Общее хранилище сессий для согласованности
- Обработка сообщений без сохранения состояния
Лимиты ресурсов
| Ресурс | По умолчанию | Настраиваемый |
|---|---|---|
| Макс. соединений | 100 | Да |
| Буфер сообщений | 1000 | Да |
| Таймаут сессии | 24ч | Да |
Модель безопасности
Аутентификация
- Аутентификация по API-ключу
- Аутентификация WebSocket на основе токена
- Учётные данные для каждого провайдера
Авторизация
- Разрешения на уровне инструмента
- Изоляция на уровне агента
- Контроль доступа на уровне сессии
Следующие шаги
- Шлюз Clawdbot - Настройка шлюза
- Концепции Clawdbot - Основные концепции
- Инструменты Clawdbot - Настройка инструментов
Концепции Clawdbot
Основные концепции для понимания архитектуры ИИ-ассистента Clawdbot, сессий, многоагентной маршрутизации и обработки сообщений.
Группы Clawdbot
Настройте ИИ-ассистента Clawdbot для групповых чатов. Узнайте об обнаружении групп, обработке сообщений, упоминаниях и многопользовательских беседах.