Миграция OpenClaw на новую машину
Это руководство мигрирует OpenClaw Gateway с одной машины на другую без повторного онбординга.
Миграция проста концептуально:
- Скопируйте директорию состояния ($OPENCLAW_STATE_DIR, по умолчанию: ~/.openclaw/) — это включает конфигурацию, авторизацию, сессии и состояние каналов.
- Скопируйте ваш workspace (~/.openclaw/workspace/ по умолчанию) — это включает ваши файлы агента (память, промпты и т.д.).
Но есть распространённые подводные камни вокруг профилей, прав доступа и частичных копий.
Перед началом (что вы мигрируете)
1) Определите вашу директорию состояния
Большинство установок используют по умолчанию:
- Директория состояния: ~/.openclaw/
Но она может быть другой, если вы используете:
- --profile <name> (часто становится ~/.openclaw-<profile>/)
- OPENCLAW_STATE_DIR=/some/path
Если вы не уверены, запустите на старой машине:
openclaw status
Ищите упоминания OPENCLAW_STATE_DIR / profile в выводе. Если вы запускаете несколько gateway, повторите для каждого профиля.
2) Определите ваш workspace
Распространённые значения по умолчанию:
- ~/.openclaw/workspace/ (рекомендуемый workspace)
- пользовательская папка, которую вы создали
Ваш workspace — это место, где находятся файлы вроде MEMORY.md, USER.md и memory/*.md.
3) Поймите, что вы сохраните
Если вы копируете и директорию состояния, и workspace, вы сохраняете:
- Конфигурацию Gateway (openclaw.json)
- Профили авторизации / API-ключи / OAuth-токены
- Историю сессий + состояние агента
- Состояние каналов (например, вход/сессия WhatsApp)
- Ваши файлы workspace (память, заметки навыков и т.д.)
Если вы копируете только workspace (например, через Git), вы не сохраняете:
- сессии
- учётные данные
- входы в каналы
Они находятся в $OPENCLAW_STATE_DIR.
Шаги миграции (рекомендуется)
Шаг 0 — Сделайте резервную копию (старая машина)
На старой машине сначала остановите gateway, чтобы файлы не менялись во время копирования:
openclaw gateway stop
(Необязательно, но рекомендуется) архивируйте директорию состояния и workspace:
# Настройте пути, если вы используете профиль или пользовательские местоположения
cd ~
tar -czf openclaw-state.tgz .openclaw
tar -czf openclaw-workspace.tgz .openclaw/workspace
Если у вас несколько профилей/директорий состояния (например, ~/.openclaw-main, ~/.openclaw-work), архивируйте каждую.
Шаг 1 — Установите OpenClaw на новую машину
На новой машине установите CLI (и Node, если нужно):
- См.: Установка
На этом этапе нормально, если онбординг создаст свежий ~/.openclaw/ — вы перезапишете его на следующем шаге.
Шаг 2 — Скопируйте директорию состояния + workspace на новую машину
Скопируйте и то, и другое:
- $OPENCLAW_STATE_DIR (по умолчанию ~/.openclaw/)
- ваш workspace (по умолчанию ~/.openclaw/workspace/)
Распространённые подходы:
- scp архивов и распаковка
- rsync -a через SSH
- внешний диск
После копирования убедитесь:
- Скрытые директории были включены (например, .openclaw/)
- Владение файлами корректно для пользователя, запускающего gateway
Шаг 3 — Запустите Doctor (миграции + восстановление сервиса)
На новой машине:
openclaw doctor
Doctor — это "безопасная скучная" команда. Она восстанавливает сервисы, применяет миграции конфигурации и предупреждает о несоответствиях.
Затем:
openclaw gateway restart
openclaw status
Распространённые подводные камни (и как их избежать)
Подводный камень: несоответствие профиля / state-dir
Если вы запускали старый gateway с профилем (или OPENCLAW_STATE_DIR), а новый gateway использует другой, вы увидите симптомы вроде:
- изменения конфигурации не вступают в силу
- каналы отсутствуют / выход выполнен
- пустая история сессий
Исправление: запустите gateway/сервис, используя тот же профиль/state dir, который вы мигрировали, затем запустите снова:
openclaw doctor
Подводный камень: копирование только openclaw.json
openclaw.json недостаточно. Многие провайдеры хранят состояние в:
- $OPENCLAW_STATE_DIR/credentials/
- $OPENCLAW_STATE_DIR/agents/<agentId>/...
Всегда мигрируйте всю папку $OPENCLAW_STATE_DIR.
Подводный камень: права доступа / владение
Если вы копировали как root или меняли пользователей, gateway может не суметь прочитать учётные данные/сессии.
Исправление: убедитесь, что директория состояния + workspace принадлежат пользователю, запускающему gateway.
Подводный камень: миграция между удалёнными/локальными режимами
- Если ваш UI (WebUI/TUI) указывает на удалённый gateway, удалённый хост владеет хранилищем сессий + workspace.
- Миграция вашего ноутбука не переместит состояние удалённого gateway.
Если вы в удалённом режиме, мигрируйте хост gateway.
Подводный камень: секреты в резервных копиях
$OPENCLAW_STATE_DIR содержит секреты (API-ключи, OAuth-токены, учётные данные WhatsApp). Обращайтесь с резервными копиями как с производственными секретами:
- храните зашифрованными
- избегайте обмена через незащищённые каналы
- ротируйте ключи, если подозреваете утечку
Чек-лист проверки
На новой машине подтвердите:
- openclaw status показывает, что gateway запущен
- Ваши каналы всё ещё подключены (например, WhatsApp не требует повторной пары)
- Панель управления открывается и показывает существующие сессии
- Ваши файлы workspace (память, конфигурации) присутствуют