Мультиагентность в OpenClaw: как запустить нескольких ИИ-агентов

OpenClaw поддерживает запуск нескольких изолированных ИИ-агентов на одном сервере. Каждый агент получает собственное рабочее пространство, историю сессий и набор ключей — без риска утечки контекста между ними. Это полезно, когда нужно обслуживать несколько проектов, людей или «личностей» с одного сервера.

Что такое мультиагентность в OpenClaw

Мультиагентность — это возможность запустить на одном экземпляре OpenClaw несколько независимых агентов. Каждый агент работает как отдельная сущность:

  • Свой workspace — папка с файлами AGENTS.md, SOUL.md, USER.md и заметками
  • Свои сессии — изолированная история чатов
  • Свои credentials — API-ключи, токены ботов, профили авторизации
  • Своя модель — каждый агент может использовать разную ИИ-модель
  • По умолчанию OpenClaw работает в режиме одного агента main. Но если нужно разделить нагрузку или контекст — мультиагентность решает эту задачу без дополнительных серверов.

    Зачем запускать несколько агентов

    Типичные сценарии:

    Разделение по проектам. Один агент ведёт рабочие задачи, другой — личные. Каждый помнит только свою историю и не подмешивает контекст из другого проекта.

    Обслуживание нескольких людей. Один сервер может давать персонального ассистента каждому участнику команды — со своими настройками, моделью и уровнем доступа.

    Разные боты на одном сервере. Telegram-бот для поддержки клиентов, WhatsApp-бот для внутренних задач, Discord-бот для разработки — всё на одном хосте, каждый со своей логикой.

    Тестирование моделей. Один агент на GPT-4o, второй на Claude, третий на локальной модели через Ollama. Сравниваете результаты без переустановки.

    Как создать нового агента

    Через CLI:

    openclaw agents add рабочий
    openclaw agents add личный
    

    Каждая команда создаёт агента с:

  • Отдельным workspace: ~/.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 работают по принципу «наиболее конкретный побеждает»:

  • peer — конкретный DM, группа или канал
  • guildId + роли — Discord-роли
  • accountId — аккаунт канала (определённый бот)
  • Канал — fallback на весь канал
  • Default agent — если ни одно правило не совпало
  • Это значит, что можно настроить тонкую маршрутизацию: один 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 расходует больше токенов — используйте его только когда субагенту нужен контекст текущего разговора.

    Управление субагентами

  • Список активных запусков: через CLI или инструмент агента
  • Остановка: принудительное завершение субагента
  • Результат: автоматически возвращается в родительскую сессию
  • Практический пример: два агента для бизнеса и личных задач

    Шаг 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
    

    Команда покажет всех агентов и их привязки к каналам.

    Что ещё почитать

  • Сессии и память — как OpenClaw управляет историей и контекстом
  • Персонализация агента — SOUL.md, AGENTS.md и workspace-файлы
  • Агенты: обзор — базовые понятия об агентах в OpenClaw
  • CLI справочник — все команды управления агентами