OpenClaw: мульти-агентная оркестрация в 2026
agentToAgent / sub-agent spawn, затем объединяет результаты. Используйте параллельный fan-out, когда подзадачи независимы (3 ревьюера, 3 модуля). Используйте последовательные pipeline, когда каждый этап требует выход предыдущего (research → draft → audit). Заложите ~3,9 ГБ RAM для 3-agent fan-out поверх базового демона; планируйте 24 ГБ, если fan-out работает рядом с Xcode или Docker. Основы установки — в руководстве по настройке OpenClaw — эта страница посвящена только оркестрации.
Зачем нужна мульти-агентная оркестрация
Один долгоживущий контекст агента накапливает шум: дампы исследований, неудачные попытки и логи инструментов раздувают окно, пока качество не падает. OpenClaw рассматривает оркестрацию как задачу первого класса — родительский агент планирует и маршрутизирует; воркеры получают узкие промпты и изолированные workspace.
Команды переходят на мульти-агентный OpenClaw, когда:
- Генерация CI/CD должна затрагивать несколько репозиториев или сервисов параллельно (данные бенчмарка показывают ~3,2× более быструю параллельную генерацию кода по сравнению с одноагентным Claude Code на сопоставимых задачах)
- Code review выигрывает от независимых «линз» (безопасность, стиль, покрытие) без того, чтобы одна модель играла все роли
- Длинные документы не должны заставлять одного агента держать research, outline, draft и audit в одном потоке
Режим сбоя тоже архитектурный: пять «агентов», которые пишут в одни и те же ключи памяти без изоляции, создают race condition — слой оркестрации должен владеть логикой merge и таймаутами.
Модель оркестрации OpenClaw
В runtime OpenClaw сводится к gateway-демону плюс именованным agent identity в конфигурации. Мульти-агентные потоки используют:
| Примитив | Роль |
|---|---|
Оркестратор (часто main или internal) |
Декомпозирует задачу, порождает воркеров, объединяет выходы — не должен сам выполнять тяжёлую tool-работу |
| Worker agents | Ограниченные skills, sandboxed workspace, получают только task-контекст |
Инструмент agentToAgent |
Структурированная передача сообщений между разрешёнными agent ID |
| Sub-agent spawn | Эфемерные воркеры для параллельных веток; label + model + timeout на каждый spawn |
| File-backed coordination | Многие production-настройки используют файлы workspace (например, каталоги brain/) как blackboard, когда live messaging недостаточен |
Правило глубины: два уровня (orchestrator → workers) покрывают ~95% нагрузок. Три уровня (orchestrator → team lead → leaf) помогают только когда подкоманды действительно независимы — стоимость отладки резко растёт.
Внешняя ссылка: OpenClaw GitHub и community-заметки об архитектуре maxSpawnDepth / cascade stop behavior.
Три паттерна оркестрации
Паттерн 1 — Параллельный fan-out
Когда: подзадачи не зависят от выходов друг друга.
Форма: оркестратор инициирует несколько spawn в одном turn; wall-clock ≈ самый медленный воркер, а не сумма воркеров.
Примеры:
- Lint трёх пакетов одновременно
- Research трёх URL конкурентов
- Генерация unit-тестов для трёх сервисов
Антипаттерн: fan-out pipeline (research + draft) — drafter стартует с пустым входом, пока research ещё выполняется.
Orchestrator
├── spawn worker-a (scope: package-frontend)
├── spawn worker-b (scope: package-api)
└── spawn worker-c (scope: package-worker)
→ merge summaries → single PR plan
Паттерн 2 — Последовательный pipeline
Когда: этап B нуждается в артефакте этапа A.
Форма: research → outline → implement → audit → publish. Каждый воркер получает чистый контекст только с deliverable предыдущего этапа.
Почему выигрывает: drafter не тащит 3 000 строк raw research tokens; auditor не видит pre-audit draft history.
Цена: wall-clock аддитивен — используйте только при реальных зависимостях.
Паттерн 3 — Fan-out с валидацией
Когда: точность важнее скорости (compliance-текст, infra diff, pricing tables).
Форма: один и тот же промпт 2–3 воркерам; оркестратор или monitor agent сравнивает выходы; расхождения запускают retry или эскалацию к человеку.
Цена: ~2–3× расход token по сравнению с одним воркером — оправдано только для high-stakes merge.
Runbook настройки
Предполагается, что OpenClaw уже установлен — если нет, сначала пройдите руководство по установке.
Шаг 1 — Определите roster агентов в openclaw.json
Типичный путь: ~/.openclaw/openclaw.json (проверьте для вашего релиза).
{
"agents": {
"list": [
{
"id": "orchestrator",
"default": true,
"workspace": "~/.openclaw/workspace-orchestrator",
"sandbox": { "mode": "off" }
},
{
"id": "coder",
"workspace": "~/.openclaw/workspace-coder",
"sandbox": { "mode": "all", "scope": "agent" },
"skills": ["git", "nodejs", "testing"]
},
{
"id": "researcher",
"workspace": "~/.openclaw/workspace-research",
"sandbox": { "mode": "all", "scope": "agent" },
"skills": ["web", "docs"]
}
]
},
"tools": {
"agentToAgent": {
"enabled": true,
"allow": ["orchestrator", "coder", "researcher"]
}
}
}
Шаг 2 — Изолируйте workspace для каждого воркера
Каждый worker ID должен соответствовать отдельному каталогу workspace. Никогда не делите writable workspace между параллельными fan-out воркерами — file race портят merge.
mkdir -p ~/.openclaw/workspace-{orchestrator,coder,researcher}
Шаг 3 — Напишите system prompt оркестратора с routing table
Промпт оркестратора должен перечислять:
- Доступные worker ID и skills
- Когда fan-out vs pipeline
- Timeout на spawn (например, 120 s для research, 300 s для codegen)
- Failure policy: retry once, then escalate
Правило sub-agent context: воркеры должны получать только AGENTS.md + TOOLS.md + task payload — не полный thread оркестратора.
Шаг 4 — Включите sandbox для недоверенных воркеров
Оставьте у оркестратора sandbox.mode: off для coordination tools; sandbox coders/researchers с mode: all, когда воркеры могут выполнять shell или network.
Шаг 5 — Задайте лимиты spawn
Настройте maxChildren / maxSpawnDepth по документации вашей версии OpenClaw. Начните с max 3 parallel children, пока не измерите RAM и API rate limits.
Шаг 6 — Проверьте через openclaw doctor
openclaw doctor
openclaw status
Устраните duplicate hooks или конфликтующие agent bindings перед fan-out под CI.
Шаг 7 — Запустите контролируемую fan-out задачу
Пример инструкции оркестратора (концептуально):
Task: Review modules auth/, billing/, notify/ in parallel.
Spawn researcher once per directory with identical rubric.
Merge into one markdown report with per-module sections.
Timeout: 180s per worker. If one worker fails, continue with partial merge and flag gaps.
Логируйте peak RSS во время теста — сравните с footprint бенчмарка.
Шаг 8 — Подключите CI trigger (опционально)
Экспонируйте gateway локально; триггер через SSH + REST из pipeline. Храните артефакты в task-scoped paths:
export TASK_ID="${GITHUB_RUN_ID}"
mkdir -p "/tmp/openclaw-runs/${TASK_ID}"
Память, состояние и дисциплина merge
| Риск | Митигация |
|---|---|
| Параллельная запись в один файл | Task-scoped keys: ${TASK_ID}/results/{worker}.md |
| Раздувание контекста оркестратора | Воркеры возвращают только summaries — не полные tool transcripts |
| Runaway token spend | Per-worker budget ceiling; kill spawns, превышающие N tokens |
| Stale worker state | Ephemeral spawns для параллельной работы; long-lived personas только для durable channels |
Merge contract: оркестратор должен заранее определить output schema (JSON sections, required headings). Воркеры валидируют против schema перед handoff.
Железо и бюджет RAM
Измерено на хостах класса Apple Silicon M4 (см. статью бенчмарка):
| Режим | Инкремент RAM (порядок величины) | Рекомендация по хосту |
|---|---|---|
| Один агент OpenClaw | ~480 МБ idle, ~1,8 ГБ peak | 16 ГБ комфортно |
| 3-agent fan-out | ~3,9 ГБ peak для workers + base | 16 ГБ tight, если открыты Docker/Xcode |
| 3-agent + Claude Code side-by-side | ~5,2 ГБ combined | Предпочтительно 24 ГБ |
Оркестрация не требует GPU — узкие места — API rate limits и disk I/O при sync workspace. Для выбора узла по региону (только API latency) см. матрицу регионов M4.
Обработка сбоев
Явно определите в промпте оркестратора:
| Событие | Политика |
|---|---|
| Worker timeout | Retry once с более узким scope; иначе mark PARTIAL |
| Worker error JSON | Log structured error; не делайте fan-out retry вслепую |
| Conflicting worker answers | Escalate к validation pattern или человеку |
| Orchestrator loop | Cap max spawn rounds на задачу (например, 2 rounds) |
Ночные CI-сбои часто связаны с отсутствием timeouts — default «wait forever» блокирует gateway.
Рекомендуемый путь
| Ваша ситуация | Действие |
|---|---|
| Независимые подзадачи (≥2) | Parallel fan-out с изолированными workspace |
| Каждый шаг нуждается в prior artifact | Sequential pipeline |
| High-stakes output | Fan-out with validation (2–3 workers) |
| Первый раз на OpenClaw | Single agent до стабильности, затем добавьте одного worker |
| RAM ≤16 ГБ + Xcode | Max 2 parallel workers или переход на 24 ГБ |
| Уже используете Claude Code интерактивно | OpenClaw orchestration для batch/CI; Claude Code для pair programming (контекст альтернатив) |
Если X → Y в одну строку: если промпт worker B нуждается в output worker A, — pipeline. Если нет — fan-out.
FAQ
Сколько агентов OpenClaw может запускать параллельно?
Фиксированного глобального cap нет — практические лимиты: RAM, API rate limits и merge complexity. Начните с 3 parallel workers, измерьте peak RSS через ps или «Мониторинг системы», затем масштабируйте.
Fan-out всегда ускоряет работу?
Только когда задачи независимы. Неверно применённый fan-out на зависимых этапах даёт тихий сбой (пустые черновики, дублирование). Перед выбором паттерна всегда стройте карту зависимостей.
В чём разница между agentToAgent и sub-agent spawn?
agentToAgent отправляет сообщения именованным persistent agents (sales vs support bots). Sub-agent spawn создаёт эфемерных workers для одной ветки задачи. CI orchestration обычно опирается на spawn; multi-tenant chat bots используют agentToAgent плюс bindings.
Можно ли запускать оркестрацию на Mac Mini без облачной аренды?
Да. Подойдёт любой постоянно включённый Mac с Node 22.19+, достаточным RAM и стабильной сетью. Команды используют выделенные Mac mini — локальные или хостинговые — когда ноутбуки засыпают и рвут длинные gateway sessions.
Как это связано с TradingAgents или MiroFish?
TradingAgents оркестрирует trading-firm debate (LangGraph). MiroFish оркестрирует social swarms для prediction. OpenClaw оркестрирует dev workflows (code, CI, review). Выбирайте фреймворк под домен — они дополняют друг друга, а не заменяют.
Связанные материалы
Продолжите с установкой OpenClaw и данными бенчмарка перед масштабированием multi-agent fan-out на вашем Apple Silicon хосте.