OpenClaw поддерживает запуск нескольких изолированных ИИ-агентов на одном сервере. Каждый агент получает собственное рабочее пространство, историю сессий и набор ключей — без риска утечки контекста между ними. Это полезно, когда нужно обслуживать несколько проектов, людей или «личностей» с одного сервера.
Что такое мультиагентность в OpenClaw
Мультиагентность — это возможность запустить на одном экземпляре OpenClaw несколько независимых агентов. Каждый агент работает как отдельная сущность:
По умолчанию OpenClaw работает в режиме одного агента main. Но если нужно разделить нагрузку или контекст — мультиагентность решает эту задачу без дополнительных серверов.
Зачем запускать несколько агентов
Типичные сценарии:
Разделение по проектам. Один агент ведёт рабочие задачи, другой — личные. Каждый помнит только свою историю и не подмешивает контекст из другого проекта.
Обслуживание нескольких людей. Один сервер может давать персонального ассистента каждому участнику команды — со своими настройками, моделью и уровнем доступа.
Разные боты на одном сервере. Telegram-бот для поддержки клиентов, WhatsApp-бот для внутренних задач, Discord-бот для разработки — всё на одном хосте, каждый со своей логикой.
Тестирование моделей. Один агент на GPT-4o, второй на Claude, третий на локальной модели через Ollama. Сравниваете результаты без переустановки.
Как создать нового агента
Через CLI:
openclaw agents add рабочий
openclaw agents add личный
Каждая команда создаёт агента с:
~/.openclaw/workspace-рабочий~/.openclaw/agents/рабочий/sessionsПосле создания нужно настроить каждого агента: указать модель, добавить API-ключи, настроить personality-файлы (SOUL.md, AGENTS.md).
Маршрутизация: как сообщения попадают к нужному агенту
Когда агентов несколько, OpenClaw использует bindings — правила маршрутизации. Binding связывает канал (Telegram, WhatsApp, Discord) с конкретным агентом.
Пример конфигурации
{
"agents": {
"list": [
{ "id": "main", "workspace": "~/.openclaw/workspace" },
{ "id": "work", "workspace": "~/.openclaw/workspace-work" }
]
},
"bindings": [
{ "agentId": "work", "match": { "channel": "telegram", "accountId": "work-bot" } },
{ "agentId": "main", "match": { "channel": "telegram" } }
]
}
Приоритет правил
Bindings работают по принципу «наиболее конкретный побеждает»:
Это значит, что можно настроить тонкую маршрутизацию: один Telegram-бот → рабочий агент, другой → личный, а все неизвестные чаты → агент по умолчанию.
Несколько аккаунтов на канал
Каналы с поддержкой нескольких аккаунтов (Telegram, WhatsApp, Discord) используют параметр accountId. Каждый аккаунт привязывается к своему агенту.
Пример: два Telegram-бота
{
"channels": {
"telegram": {
"accounts": {
"default": { "botToken": "123456:ABC..." },
"work": { "botToken": "987654:XYZ..." }
}
}
}
}
Один бот отвечает за личные сообщения, второй — за рабочие. Сессии не смешиваются, каждый бот работает в своём контексте.
Изоляция агентов
Каждый агент работает в полностью изолированной среде:
| Компонент | Где хранится |
|---|---|
| Auth-профили | `~/.openclaw/agents/{id}/agent/auth-profiles.json` |
| Сессии | `~/.openclaw/agents/{id}/sessions` |
| Workspace | `~/.openclaw/workspace-{id}` |
Важно: credentials не共享ятся автоматически между агентами. Если два агента должны использовать один и тот же API-ключ — его нужно добавить каждому отдельно.
Субагенты: параллельные задачи
Субагенты — это фоновые запуски из основной сессии. Они работают в отдельной сессии и отправляют результат обратно по завершении.
Когда нужны субагенты
Как запустить
sessions_spawn(task="Найти информацию о...", model="openrouter/xiaomi/mimo-v2-pro")
Режимы контекста
| Режим | Когда использовать | Поведение |
|---|---|---|
| `isolated` | Независимые задачи | Чистый дочерний транскрипт (по умолчанию) |
| `fork` | Зависит от текущего разговора | Копия транскрипта родителя |
Режим fork расходует больше токенов — используйте его только когда субагенту нужен контекст текущего разговора.
Управление субагентами
Практический пример: два агента для бизнеса и личных задач
Шаг 1. Создаём агентов
openclaw agents add business
openclaw agents add personal
Шаг 2. Настраиваем workspace каждого
Для бизнес-агента создаём ~/.openclaw/workspace-business/SOUL.md:
Ты — бизнес-ассистент. Помогаешь с задачами, встречами, документами.
Формальный стиль общения. Английский и русский.
Для личного — ~/.openclaw/workspace-personal/SOUL.md:
Ты — личный помощник. Помогаешь с бытовыми вопросами, планами, хобби.
Дружелюбный стиль. Только русский.
Шаг 3. Привязываем каналы
{
"bindings": [
{ "agentId": "business", "match": { "channel": "telegram", "accountId": "work-bot" } },
{ "agentId": "personal", "match": { "channel": "telegram" } }
]
}
Шаг 4. Проверяем
openclaw agents list --bindings
Команда покажет всех агентов и их привязки к каналам.