Конфигурация и операции

Несколько шлюзов

В большинстве случаев следует использовать один шлюз, так как он может обрабатывать несколько мессенджер-соединений и агентов. Если вам нужна более строгая изоляция или резервирование (например, резервный бот), запускайте отдельные шлюзы с изолированными профилями/портами.

Контрольный список для изоляции (обязательно)

  • OPENCLAW_CONFIG_PATH — файл конфигурации для каждого экземпляра
  • OPENCLAW_STATE_DIR — сессии, учетные данные, кэши для каждого экземпляра
  • agents.defaults.workspace — корневая рабочая область для каждого экземпляра
  • gateway.port (или --port) — уникальный для каждого экземпляра
  • Производные порты (браузера/canvas) не должны пересекаться

Если эти параметры используются совместно, возникнут гонки конфигураций и конфликты портов.

Рекомендуемый способ: профили (--profile)

Профили автоматически ограничивают область действия OPENCLAW_STATE_DIR + OPENCLAW_CONFIG_PATH и добавляют суффиксы к именам служб.

# основной
openclaw --profile main setup
openclaw --profile main gateway --port 18789

# резервный
openclaw --profile rescue setup
openclaw --profile rescue gateway --port 19001

Службы для каждого профиля:

openclaw --profile main gateway install
openclaw --profile rescue gateway install

Руководство по резервному боту

Запустите второй шлюз на том же хосте с его собственными:

  • профилем/конфигурацией
  • директорией состояния
  • рабочей областью
  • базовым портом (плюс производные порты)

Это изолирует резервного бота от основного, чтобы он мог выполнять отладку или применять изменения конфигурации, если основной бот не работает. Интервал портов: оставляйте как минимум 20 портов между базовыми портами, чтобы производные порты браузера/canvas/CDP никогда не пересекались.

Как установить (резервный бот)

# Основной бот (существующий или новый, без параметра --profile)
# Работает на порту 18789 + порты Chrome CDC/Canvas/...
openclaw onboard
openclaw gateway install

# Резервный бот (изолированный профиль + порты)
openclaw --profile rescue onboard
# Примечания:
# - имя рабочей области по умолчанию будет иметь суффикс -rescue
# - Порт должен быть как минимум 18789 + 20 портов,
#   лучше выбрать совершенно другой базовый порт, например 19789,
# - остальные шаги онбординга такие же, как обычно

# Для установки службы (если это не произошло автоматически во время онбординга)
openclaw --profile rescue gateway install

Сопоставление портов (производные)

Базовый порт = gateway.port (или OPENCLAW_GATEWAY_PORT / --port).

  • порт службы управления браузером = базовый порт + 2 (только loopback)
  • хост canvas обслуживается на HTTP-сервере шлюза (тот же порт, что и gateway.port)
  • Порты CDP профиля браузера автоматически выделяются из диапазона browser.controlPort + 9 .. + 108

Если вы переопределяете любой из этих параметров в конфигурации или переменных окружения, они должны быть уникальными для каждого экземпляра.

Примечания по браузеру/CDP (частая ошибка)

  • Не фиксируйте browser.cdpUrl на одних и тех же значениях для нескольких экземпляров.
  • Каждому экземпляру нужен свой собственный порт управления браузером и диапазон CDP (производные от порта его шлюза).
  • Если вам нужны явные порты CDP, установите browser.profiles.<name>.cdpPort для каждого экземпляра.
  • Удаленный Chrome: используйте browser.profiles.<name>.cdpUrl (для каждого профиля, для каждого экземпляра).

Пример ручной настройки переменных окружения

OPENCLAW_CONFIG_PATH=~/.openclaw/main.json \
OPENCLAW_STATE_DIR=~/.openclaw-main \
openclaw gateway --port 18789

OPENCLAW_CONFIG_PATH=~/.openclaw/rescue.json \
OPENCLAW_STATE_DIR=~/.openclaw-rescue \
openclaw gateway --port 19001

Быстрые проверки

openclaw --profile main status
openclaw --profile rescue status
openclaw --profile rescue browser status

Фоновое выполнение и инструмент процессовУстранение неполадок