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