Как безопасно выполнить миграцию с OpenClaw на Hermes Agent

Безопасный перевод, выходящий за рамки однострочного импорта

Содержимое страницы

Миграция ИИ-ассистента — это не то же самое, что копирование конфигурации приложения. Сложная часть заключается в сохранении идентичности, памяти, поведения инструментов, запланированных задач и доступа к сообщениям без возникновения ситуации, когда два шлюза (gateway) работают как один и тот же бот.

Теперь Hermes Agent включает hermes claw migrate — настоящий планировщик миграции, а не косметическую команду импорта. Он способен отобразить более 30 категорий из OpenClaw, обнаружить конфликты, создать контрольную точку восстановления (restore point) Hermes и архивировать несовместимое состояние для ручного просмотра. Это делает переезд практически осуществимым, но не автоматическим.

Поэтапный перевод состояния из OpenClaw в Hermes Agent

Подход, описанный ниже, представляет собой поэтапный перевод: резервное копирование OpenClaw, пробный прогон (dry-run) полной миграции, импорт без секретов, валидация Hermes из терминала и передача учетных данных для сообщений только после того, как новый агент начнет работать корректно. Не начинайте с --overwrite --migrate-secrets --yes; эти флаги полезны для автоматизации после отрепетированной миграции, а не для выяснения того, от чего на самом деле зависит ваш ассистент.

План действий по миграции из OpenClaw в Hermes

Этап Команда или действие Условие завершения
Инвентаризация Запишите версии, рабочие пространства, плагины, каналы, cron-задачи и поставщиков У каждой зависимости, не являющейся файлом, есть ответственный
Резервная копия openclaw backup create --verify Существует проверенный архив вне состояния OpenClaw
Предпросмотр hermes claw migrate --dry-run --preset full Нет необъяснимых конфликтов или пропущенных критических данных
Импорт Запустите полный пресет без секретов Конфигурация, персона, память, навыки и записи MCP в Hermes существуют
Локальное тестирование Запустите Hermes в терминале Модель, инструменты, память, подтверждения и рабочее пространство проходят тесты
Перевод каналов Остановите OpenClaw, мигрируйте или задайте секреты, запустите шлюз Hermes Только Hermes владеет каждым токеном бота или учетной записью
Стабилизация Оставьте OpenClaw остановленным, но доступным для восстановления Запланированные и входящие задачи работают корректно
Очистка Архивируйте старое состояние OpenClaw только после приемки Окно отката закрыто осознанно
flowchart TD A[Инвентаризация живой системы] --> B[Проверенная резервная копия OpenClaw] B --> C["Dry-run: hermes claw migrate --dry-run --preset full"] C --> D[Импорт без секретов] D --> E["Валидация в терминале в новой сессии"] E --> F["Контролируемый перевод каналов"] F --> G[Стабилизация с остановленным OpenClaw] G --> H["Очистка после приемки"]

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

Что именно читает hermes claw migrate

По умолчанию миграционная утилита читает ~/.openclaw/. Она также обнаруживает более старые каталоги ~/.clawdbot/ и ~/.moltbot/, а также устаревшие имена конфигурационных файлов, так что старая установка не нуждается в переименовании перед миграцией.

OpenClaw использовал несколько компоновок рабочих пространств. Hermes проверяет workspace/, workspace.default/ и workspace-main/, а также распознает каталоги конкретных агентов, таких как workspace-<agentId>. Если вы используете кастомные корневые каталоги агентов или несколько профилей, проверьте каждый разрешенный путь в предпросмотре, а не предполагайте, что рабочее пространство по умолчанию представляет всю систему.

Назначением обычно является ~/.hermes/. Существующая установка Hermes не рассматривается как пустой контейнер: планировщик сообщает о конфликтах и по умолчанию отказывается применять изменения, если он не может безопасно сохранить обе стороны.

Что мигрируется, а что нет

Полезное различие заключается не в «поддерживается» versus «не поддерживается». Некоторое состояние OpenClaw отображается напрямую, некоторые части необходимо преобразовать, а некоторые могут только быть заархивированы, поскольку два агента используют различные модели выполнения.

Прямая или преобразованная миграция

Источник в OpenClaw Назначение в Hermes Поведение миграции
workspace/SOUL.md ~/.hermes/SOUL.md Прямое копирование персоны
workspace/MEMORY.md ~/.hermes/memories/MEMORY.md Разбор, объединение и дедупликация
workspace/USER.md ~/.hermes/memories/USER.md Разбор, объединение и дедупликация
workspace/memory/*.md Основная память Hermes Ежедневные файлы объединяются в записи
workspace/AGENTS.md Выбранный каталог проекта Требует --workspace-target
Каталоги навыков OpenClaw ~/.hermes/skills/openclaw-imports/ Копируются с явной политикой конфликтов
agents.defaults.model Конфигурация модели Hermes Интерпретируются основные и резервные формы
models.providers.* Конфигурация поставщиков Hermes Базовый URL и тип API отображаются
mcp.servers.* mcp_servers.* Отображаются определения Stdio и HTTP/SSE
Токены каналов и списки разрешений .env Hermes Только с --migrate-secrets
Политика сброса сессий session_reset Ежедневные и режима ожидания (idle) переводятся
Подтверждения выполнения Подтверждения и список разрешенных команд Hermes Режимы и шаблоны преобразуются
Настройки браузера, TTS, песочницы и тайм-аута Соответствующая конфигурация Hermes Поддерживаемые поля отображаются

Память не копируется как один непрозрачный документ. Миграционная утилита разбирает файлы памяти и профиля пользователя OpenClaw, объединяет их с существующими записями Hermes и дедуплицирует. Это безопаснее, чем замена устоявшегося файла памяти Hermes, но это также означает, что вам следует сравнивать смысл и структуру, а не только размеры файлов.

Архивируется для ручной реконструкции

Функция OpenClaw Почему не переносится напрямую Направление в Hermes
Cron-задачи Планировщики и модели доставки различаются Пересоздать с помощью hermes cron create
Плагины API плагинов специфичны для продукта Заменить плагином Hermes, навыком, MCP-сервером или встроенным инструментом
Хуки и вебхуки Контракты событий и разрешений различаются Пересоздать с помощью вебхуков или хуков шлюза Hermes
Продвинутый бэкенд памяти Базы данных и семантика вызова различаются Настроить поставщика памяти Hermes отдельно
Настройки реестра навыков Реализация реестра различается Настроить с помощью hermes skills config
Список мульти-агентов и привязки Модели маршрутизации и профилей различаются Перестроить с помощью профилей и конфигурации шлюза Hermes
IDENTITY.md Hermes использует иное разделение идентичности Объединить релевантную идентичность в SOUL.md
HEARTBEAT.md Нет прямого файлового эквивалента heartbeat Выражать периодические задачи как cron-задачи
TOOLS.md Hermes предоставляет собственные инструкции по инструментам Перемещать только настоящие правила рабочего процесса в навык или файл контекста
BOOTSTRAP.md Семантика бутстрапа различается Использовать файлы контекста, настройку или навык

Эти элементы сохраняются в ~/.hermes/migration/openclaw/<timestamp>/archive/. Следовательно, успешная миграция с непустым архивом не является завершенной; архив — это оставшаяся очередь задач.

Шаг 1: Инвентаризация живой системы OpenClaw

Прежде чем устанавливать что-либо, запишите, какие поведения на самом деле используются. Одних конфигурационных файлов может быть недостаточно, чтобы выявить внешнюю базу данных плагина, шлюз под ручным наблюдением, кастомный каталог агента, локальный процесс модели или учетную запись, владеющую конечной точкой вебхука.

Как минимум, запишите:

  • Версии OpenClaw и Hermes.
  • Активный каталог состояния и путь к конфигурации OpenClaw.
  • Все каталоги агентов и рабочих пространств.
  • Поставщиков моделей, резервные модели и локальные конечные точки.
  • Установленные и включенные плагины, включая их постоянные данные.
  • Навыки из каталогов рабочего пространства, управляемых, личных и проектных.
  • MCP-серверы, переменные окружения, рабочие каталоги и учетные данные.
  • Учетные записи Telegram, Discord, Slack, WhatsApp, Signal, Matrix и Mattermost.
  • Cron-задачи, хуки, вебхуки, поведение heartbeat и внешние супервизоры.
  • Правила подтверждения, списки разрешенных команд, бэкенд песочницы и доступ к браузеру.

Эта инвентаризация впоследствии станет контрольным списком приемки. Без нее смигрированный ассистент может выглядеть здоровым, так как отвечает на сообщения, молча пропуская еженедельное резервное копирование, поставщика памяти или строгое правило подтверждения.

Шаг 2: Создание проверенной резервной копии OpenClaw

OpenClaw 2.0 включает команду резервного копирования, которая понимает его текущее состояние SQLite, настроенные корневые каталоги агентов, учетные данные, плагины и рабочие пространства. Используйте ее вместо копирования файлов живой базы данных с надеждой на то, что их WAL-сателлиты были захвачены согласованно.

mkdir -p ~/Backups
openclaw gateway stop
openclaw backup create --output ~/Backups --verify

Храните полученный архив вне ~/.openclaw/. Опция --verify немедленно валидирует архив, включая безопасность путей и поддерживаемые проверки целостности SQLite. Владельческие базы данных OpenClaw захватываются через API онлайн-резервного копирования SQLite, проверяются по владельцу и компактизируются, а не копируются как сырые файлы. Если ваши рабочие пространства большие, вы можете использовать --no-include-workspace, но тогда сделайте резервные копии этих репозиториев и файлов вне Git отдельно; каталоги агентов включаются в любом случае.

Ловушка с транскриптами до версии 2.0

В OpenClaw 2.0 сессии и транскрипты были перемещены из sessions.json и файлов JSONL в SQLite по умолчанию в ~/.openclaw/agents/<agent>/agent/openclaw-agent.sqlite. Это важно по одной неочевидной причине: портативный архив backup create исключает устаревшие транскрипты и логи JSONL, даже если они больше не записываются.

Поэтому, если ваша установка OpenClaw старше версии 2.0 и вам важна старая история разговоров, одной проверенной копии недостаточно. Остановите шлюз и снимите снимок файловой системы, тома или ВМ перед миграцией, либо используйте команды снимка базы данных OpenClaw для баз, компактную и независимо проверяемую копию которых вы хотите:

openclaw backup sqlite create --global --repository ~/Backups/openclaw-sqlite
openclaw backup sqlite create --agent main --repository ~/Backups/openclaw-sqlite
openclaw backup sqlite list --repository ~/Backups/openclaw-sqlite
openclaw backup sqlite verify ~/Backups/openclaw-sqlite/<snapshot-id>

Относитесь к этим репозиториям снимков с теми же правами и политикой хранения, что и к живому состоянию — они могут содержать профили аутентификации, состояние сессий и данные плагинов. Для непрерывно реплицируемой настройки, а не периодических архивов, OpenClaw документирует Litestream для тех же баз данных; это лучший ответ, чем ручной запуск cp, если миграция займет дни.

Также создайте резервную копию Hermes, если он уже содержит полезное состояние:

hermes backup

Миграция обычно создает собственную предмиграционную копию Hermes под ~/.hermes/backups/. Не передавайте --no-backup во время первого перевода; экономия нескольких секунд не стоит удаления самого простого пути отката.

Шаг 3: Установка и тестирование пустого Hermes Agent

Установите Hermes, выберите модель и убедитесь, что базовый терминальный агент работает, до импорта состояния OpenClaw. Это разделяет сбои установки и поставщиков от сбоев миграции. Руководство по ИИ-ассистенту Hermes подробно охватывает выбор поставщика и конфигурацию шлюза; для миграции вам нужен только рабочий терминальный базовый уровень.

curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash
source ~/.bashrc
hermes setup
hermes status
hermes doctor

Если вы уже установили Hermes, обновите его, прежде чем полагаться на текущее поведение миграции:

hermes update
hermes --version

Эта проверка версии — не формальность. Позиция безопасности claw migrate существенно изменилась в течение 2026 года: текущие сборки отказываются применять конфликтный план, по умолчанию пишут контрольную точку восстановления до миграции, маскируют секреты в отчетах, сохраняемых на диск, и требуют --migrate-secrets явно, даже при --preset full. Старые сборки не делали ни одного из этих действий — в частности, --preset full раньше молча включал API-ключи, а конфликтный план сообщал «migrated 0» после того, как вы уже подтвердили. Если вы следуете старой инструкции, флаги могут выглядеть идентично, но поведение отличается именно в важных местах.

Пока не настраивайте токены старых ботов. Валидация только в терминале позволяет оставить OpenClaw живым, пока вы готовите Hermes, и предотвращает конкуренцию двух процессов шлюза за одну и ту же идентичность сообщений.

Шаг 4: Проведите dry-run перед выбором флагов

Начните с полного пресета, так как он выявляет максимально возможную поверхность отображения, но исключите секреты:

hermes claw migrate --dry-run --preset full

Миграция всегда представляет предпросмотр перед применением, даже без --dry-run. Явный флаг все еще ценен, потому что он делает ваше намерение однозначным и дает вам время осмотреть исходные пути, назначения, преобразования, конфликты, пропущенные элементы, архивы и предупреждения о секретах без нетерпеливого запроса подтверждения. Полный набор флагов для claw migrate и его соседей обобщен в шпаргалке по CLI Hermes Agent.

Используйте кастомный источник, если состояние OpenClaw находится не в стандартном месте:

hermes claw migrate \
  --dry-run \
  --preset full \
  --source /srv/openclaw-state

Если AGENTS.md должен применяться к определенному репозиторию, укажите это явно:

hermes claw migrate \
  --dry-run \
  --preset full \
  --workspace-target /srv/projects/my-project

Без --workspace-target инструкции рабочего пространства не помещаются в произвольный текущий каталог. Это правильное поведение: файл инструкций принадлежит определенному диапазону, и угадывание этого диапазона может изменить каждую сессию Hermes, запущенную ниже неправильного каталога.

Пресет full или user-data?

Пресет full включает совместимые инфраструктурные и поведенческие настройки. Пресет user-data фокусируется на персоне, памяти, навыках и связанном пользовательском содержимом, исключая инфраструктурную конфигурацию.

Используйте user-data, если у Hermes уже есть тщательно построенная конфигурация поставщика, шлюза, безопасности или песочницы. Используйте full, если Hermes новый, а OpenClaw является авторитетной настройкой, но все равно проверяйте каждую преобразованную поведенческую настройку. Ни один пресет не импортирует секреты, если не добавлен --migrate-secrets.

Шаг 5: Разрешение конфликтов без уничтожения происхождения

Поведение при конфликтах по умолчанию консервативно: миграция отказывается применять план с неразрешенными файлевыми конфликтами, если не установлен --overwrite. Это предпочтительнее, чем кажущийся успешным перевод, который перезаписывает более новую персону или навык Hermes, — и предпочтительнее старому поведению, когда подтверждение конфликтного плана приводило к результату «migrated 0», который выглядел как отсутствие действия, но на самом деле был молчаливым пропуском.

Конфликты навыков обрабатываются отдельно, и по умолчанию там стоит skip, который молча сохраняет существующую версию Hermes и отбрасывает входящую. Для первой миграции я рекомендую rename:

hermes claw migrate \
  --preset full \
  --workspace-target /srv/projects/my-project \
  --skill-conflict rename

Импортированные навыки помещаются под ~/.hermes/skills/openclaw-imports/. С rename столкновение имен производит импортированный «сосед» вместо сокрытия любой из версий. Просмотрите две реализации, протестируйте выбранную и удалите избыточную копию позже.

Используйте --overwrite только после просмотра предпросмотра или при перестроении одноразового профиля Hermes. Он применяется шире, чем обработка конфликтов навыков, и может заменить существующие файлы Hermes. Наличие резервной копии делает перезаписываемость восстанавливаемой, а не желательной.

Шаг 6: Миграция конфигурации и пользовательских данных без секретов

Примените просмотренный план и оставьте учетные данные для этапа перевода:

hermes claw migrate \
  --preset full \
  --workspace-target /srv/projects/my-project \
  --skill-conflict rename

После завершения сохраните напечатанные счетчики смигрированных, пропущенных, конфликтных и заархивированных элементов. Откройте каталог миграции с отметкой времени и прочитайте его сводку, прежде чем начинать новую сессию Hermes. Текущие сборки маскируют обнаруженные значения секретов в report.json и summary.md, которые они пишут, поэтому эти файлы безопасны для хранения вместе с вашими заметками об изменениях — но подтвердите это в вашей версии, а не предполагайте, потому что более ранние сборки записывали сырые API-ключи в те же отчеты.

Новые сессии важны. Импортированные навыки и записи памяти загружаются при начале сессии, поэтому тестирование внутри сессии, предшествовавшей миграции, может дать ложный результат «навык не найден» или устаревшей памяти.

Шаг 7: Валидация поведения перед переводом каналов

Выполните постмиграционные проверки из терминала:

hermes status
hermes doctor
hermes config show
hermes gateway status

Если вызов памяти кажется неполным, перестройте индекс, прежде чем делать вывод о неудачном импорте:

hermes memory reindex

Затем начните новый разговор в Hermes и тестируйте наблюдаемые поведения, а не только наличие файлов. Попросите известное предпочтение пользователя из памяти, вызовите один импортированный навык, вызовите MCP-инструмент, выполните безвредную терминальную команду, которая должна быть разрешена, и попробуйте ту, которая должна требовать подтверждения.

Полезная матрица приемки выглядит так:

Область Тест Сбой обычно означает
Персона Задать вопрос, где тон и границы очевидны SOUL.md не найден, был перезаписан или нуждается в объединении содержимого идентичности
Память пользователя Попросить известное устойчивое предпочтение Записи памяти не импортированы, неожиданно дедуплицированы, не переиндексированы или не загружены в новой сессии
Навык Вызвать особый импортированный рабочий процесс Конфликт имен, недействительные метаданные, отсутствующая зависимость или устаревшая сессия
Поставщик Выполнить обычный и длинный ответ Неправильное отображение модели, отсутствие учетных данных или несовместимый тип API
MCP Вызвать один инструмент только для чтения с каждого сервера Отсутствие переменных окружения, неправильный cwd, рассогласование транспорта или проблема фильтра инструментов
Терминал Проверить разрешенные и команды, требующие подтверждения Режим подтверждения или отображение списка разрешений изменило политику
Браузер Открыть безвредную тестовую страницу CDP URL, бэкенд браузера или доступ к песочнице различаются
Сжатие Запустить длинную одноразовую сессию Модель сводки или поведение компакции не отображена так, как задумано
Сброс сессии Осмотреть конфигурацию и протестировать на одноразовом профиле Интерпретация ежедневного/режима ожидания отличается от правил OpenClaw

Миграция отображает timeoutSeconds в оценочное значение максимального числа ходов, переводит уровни рассуждений и конвертирует режимы подтверждения. Это семантические отображения, а не побайтовые копии. Проверьте, что результирующее поведение соответствует вашим намерениям, особенно для длинных автономных задач и выполнения команд.

Шаг 8: Обработка секретов как отдельного изменения безопасности

--migrate-secrets может собирать разрешенные ключи из значений конфигурации OpenClaw, ~/.openclaw/.env, объектов переменных окружения конфигурации и профилей аутентификации конкретных агентов (~/.openclaw/agents/<agent>/agent/auth-profiles.json). Он понимает обычные строки, шаблоны переменных окружения и объекты SecretRef, основанные на переменных окружения.

Осознанно он не копирует произвольные имена секретов. Файловые и командные SecretRef не могут быть разрешены автоматически, и значения вне поддерживаемого списка разрешений остаются для ручной настройки. Относитесь к каждому предупреждению здесь как к контролируемому механизму, работающему по дизайну, а не как к причине вставлять все окружение OpenClaw в Hermes.

Для первой миграции я предпочитаю настроить учетные данные поставщика через Hermes после импорта данных. Если вы используете автоматическую миграцию секретов, посмотрите предпросмотр и запускайте только тогда, когда вы готовы передать владение каналами:

hermes claw migrate \
  --dry-run \
  --preset full \
  --migrate-secrets

Затем проверьте наличие без вывода значений:

hermes status
hermes auth status

Повторно сгенерируйте учетные данные, если они были раскрыты в истории командной строки, вставлены в заметки о миграции или хранятся с более слабыми правами, чем предполагалось. Миграция сохраняет доступ; она не доказывает, что старая практика обработки секретов была безопасной.

Шаг 9: Выполнение контролируемого перевода сообщений

Не существует честной передачи с нулевым простоем, когда два процесса опрашивают, подписываются или отвечают как одна и та же учетная запись бота. Безопасный паттерн — подготовить параллельно, остановить OpenClaw, запустить Hermes, протестировать каждую платформу и держать команды отката под рукой.

Сначала остановите шлюз OpenClaw и подтвердите его остановку:

openclaw gateway stop
openclaw gateway status

Теперь мигрируйте или вручную задайте секреты сообщений, настройте шлюз Hermes и запустите его:

hermes gateway setup
hermes gateway install
hermes gateway start
hermes gateway status

Отправьте прямое сообщение от разрешенного пользователя на каждой платформе. Протестируйте входящий текст, ответ, вложение (если используется), слэш-команду, долго работающую задачу, прерывание и исходящую запланированную или ручную отправку. Зеленый статус службы доказывает, что процесс работает; он не доказывает, что списки разрешений, маршрутизация веток, доставка и форматирование пережили переезд.

WhatsApp требует повторного сопряжения, потому что миграция не переносит сессию Baileys как повторно используемый токен. Выполните hermes whatsapp и завершите QR-процесс. Другие каналы могут повторно использовать токены, но компоновка учетных записей и мульти-учетные привязки все еще заслуживают явного тестирования.

Навыки, плагины и MCP-серверы не взаимозаменяемы

Навыки OpenClaw из четырех мест могут быть импортированы, но импортированный каталог полезен только в том случае, если его допущения остаются верными. Проверьте имена команд, пути файловой системы, переменные окружения, платформенно-специфичные инструменты и ссылки на API, эксклюзивные для OpenClaw. Руководство по навыкам OpenClaw объясняет исходные форматы; руководство по авторству навыков Hermes охватывает поведение назначения.

Плагины OpenClaw не становятся плагинами Hermes. Восстановите способность на наиболее узком подходящем уровне:

  • Используйте навык Hermes для процедур, выбора инструментов и переиспользуемых инструкций.
  • Используйте MCP-сервер для живых данных или границы внешней службы.
  • Используйте встроенный инструмент Hermes, если он уже предоставляет способность.
  • Используйте плагин Hermes только тогда, когда код должен участвовать в самом рантайме агента.

Это хороший момент, чтобы удалить архитектурный осадок. Плагин, установленный для компенсации старого ограничения OpenClaw, может не иметь причины выживать в Hermes, тогда как плагин, хранящий постоянную базу данных, нуждается в осознанном плане экспорта или замены.

Определения MCP мигрируют более напрямую, включая команды, аргументы, окружения, рабочие каталоги, URL и фильтры включения/исключения инструментов. Тем не менее тестируйте каждый сервер отдельно: правильное отображение YAML не может установить отсутствующий исполняемый файл, обновить OAuth или заставить путь со старого хоста существовать на новом.

Память нуждается в проверке качества, а не подсчете строк

Hermes импортирует MEMORY.md, USER.md и ежедневные файлы памяти в свою структуру памяти. Это сохраняет полезные факты, но плагин памяти OpenClaw, базы данных длинного контекста, индексы встраиваний и политики вызова архивируются, а не переводятся в эквивалентную когнитивную систему.

Просмотрите импортированную память в три прохода:

  1. Идентичность и устойчивые предпочтения: сохраняйте лаконичные факты, которые должны влиять на многие сессии.
  2. Операционные знания: перемещайте повторяемые процедуры в навыки или проектный контекст вместо глобальной памяти.
  3. Исторический остаток: архивируйте завершённые инциденты, устаревшие планы и самореферентные комментарии агента, вместо того чтобы впрыскивать их вечно.

Не импортируйте каждый транскрипт как постоянную память. Больше запомненного текста может сделать агента менее связным, повторно извлекая устаревшие ограничения и собственные ранние догадки. Руководство по системе памяти Hermes объясняет, где будут жить импортированные записи, а сравнение поставщиков памяти агентов — лучшее место для выбора нового долгосрочного бэкенда.

Пересоздание cron-задач, heartbeat, хуков и мульти-агентной маршрутизации

Cron-задачи архивируются, потому что запланированное выполнение — это не просто выражение cron. Задача также имеет промпт или команду, рабочий каталог, модель, тайм-аут, пункт назначения доставки, разрешения, поведение повторных попыток и ожидания относительно состояния сессии.

Для каждой заархивированной задачи OpenClaw запишите эти поля и пересоздайте ее в Hermes:

hermes cron create
hermes cron list

Выполните каждую задачу вручную один раз перед включением ее расписания. Проверьте и работу, и путь доставки, особенно если старая задача публиковала в чат Telegram, канал Slack или ветку Discord.

Переводите HEARTBEAT.md в явные запланированные задачи только тогда, когда периодическое выполнение действительно требуется. Размытый heartbeat, который просит агента проверять всё каждые несколько минут, дорог и сложен в верификации; отдельные именованные задачи с наблюдаемыми результатами легче оперировать.

Определения мульти-агентов и привязки каналов также требуют ручного проектирования. Профили Hermes предоставляют изолированное состояние и шлюзы, но они не являются синтаксическим переписыванием списка агентов OpenClaw. Отображайте каждого агента по ответственности, рабочему пространству, учетным данным, каналу и границе безопасности, а не воспроизводя имена первыми; рассуждение о первенстве профиля, лежащее в основе этого отображения, раскрывается в руководстве по производственной настройке Hermes.

Устранение неполадок, которые имеют значение

«Каталог OpenClaw не найден»

Команда ищет стандартные каталоги текущего OpenClaw, Clawdbot и Moltbot. Если ваше состояние находится в другом месте, укажите каталог, содержащий конфигурацию OpenClaw и связанное состояние:

hermes claw migrate --dry-run --source /path/to/openclaw

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

Миграция отказывается из-за конфликтов

Это безопасное поведение по умолчанию, а не сбой. Сделайте резервную копию Hermes, определите, какая сторона авторитетна для каждого конфликта, используйте --skill-conflict rename для навыков и резервируйте --overwrite для просмотренного плана.

Если существующая конфигурация Hermes ценна, рассмотрите пресет user-data. Он импортирует пользовательское содержимое ассистента, не пытаясь заменить устоявшуюся инфраструктуру.

Импортированные навыки не появляются

Начните новую сессию и осмотрите импортированный каталог ниже ~/.hermes/skills/openclaw-imports/. Используйте /skills внутри Hermes для подтверждения обнаружения. Если навык существует, но не может выполняться, осмотрите его зависимости и допущения о инструментах, а не повторяйте миграцию.

Ключи поставщиков не найдены

Ключ может храниться в файле окружения OpenClaw, объекте переменных окружения конфигурации, профиле аутентификации, файловом SecretRef, командном SecretRef или не поддерживаемом имени переменной. Миграционная утилита разрешает поддерживаемые формы и предупреждает об остальном. Добавьте неразрешенные значения через конфигурацию или команды аутентификации Hermes, а не конвертируйте безопасные ссылки в открытый текст, чтобы удовлетворить импортеру.

Бот работает, но сообщения отсутствуют или дублируются

Убедитесь, что шлюз OpenClaw остановлен и только один профиль Hermes владеет токеном. Затем осмотрите hermes gateway status и логи шлюза, следом за списками разрешений каналов и выбором учетной записи. Дублирующие потребители и неправильные списки разрешений встречаются чаще, чем сломанная языковая модель.

Персона присутствует, но память плохая

SOUL.md и память — разные слои. Убедитесь, что персона скопирована в ~/.hermes/SOUL.md, записи памяти достигли ~/.hermes/memories/, и тест использует новую сессию. Запустите hermes memory reindex перед более глубокой отладкой. Если OpenClaw полагался на внешний плагин памяти, настройте поставщика памяти Hermes, а не ожидайте, что импорт Markdown воссоздаст его поведение извлечения.

Откат Hermes

Остановите шлюз Hermes перед восстановлением предмиграционной резервной копии Hermes:

hermes gateway stop
hermes import ~/.hermes/backups/pre-migration-<timestamp>.zip

hermes import перезаписывает файлы в домашнем каталоге Hermes содержимым архива, поэтому проверьте точное имя файла и поймите, что постмиграционные сессии Hermes могут быть заменены. Затем оставьте Hermes остановленным, перезапустите OpenClaw и проверьте здоровье его шлюза и каналов.

Ручная миграция, когда команда не может смоделировать вашу настройку

Ручной запасной вариант медленнее, но иногда яснее для сильно кастомизированных установок. Постройте чистый профиль Hermes и мигрируйте по ответственности:

  1. Скопируйте или перепишите содержимое персоны в ~/.hermes/SOUL.md.
  2. Отберите устойчивые факты пользователя в MEMORY.md и USER.md Hermes, а не копируйте всю историю.
  3. Поместите проектные инструкции в правильный AGENTS.md на уровне репозитория.
  4. Скопируйте совместимые навыки в именованный каталог импорта и протестируйте их индивидуально.
  5. Переведите определения поставщиков и MCP в ~/.hermes/config.yaml без вывода секретов.
  6. Настройте учетные данные через аутентификацию или управление секретами Hermes.
  7. Пересоздайте подтверждения, песочницу, доступ к браузеру, cron-задачи, вебхуки и каналы.
  8. Замените каждый плагин OpenClaw явной способностью Hermes или отстраните его.

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

Не очищайте OpenClaw немедленно

После того как Hermes проходит локальные и тесты сообщений, сохраняйте OpenClaw установленным, но остановленным для периода стабилизации. Сохраняйте проверенную резервную копию OpenClaw, архив миграции, предмиграционную резервную копию Hermes и копию контрольного списка приемки.

Hermes документирует hermes claw cleanup для переименования оставшихся каталогов OpenClaw в .pre-migration/, а hermes claw cleanup --dry-run для предпросмотра того, что будет заархивировано. Используйте его только после того, как шлюз OpenClaw остановлен, текущая версия Hermes включает защитники процессов, и вы решили не откатываться. В более ранних сборках 2026 года был задокументирован путь очистки, который мог перемещать состояние, пока шлюз OpenClaw еще работал; текущий код помечает защитник как реализованный, но проверенная резервная копия и остановленная исходная служба остаются разумной границей.

Очистка не требуется, чтобы доказать, что Hermes работает. Она существует, чтобы уменьшить будущую путаницу в состоянии, поэтому откладывание ее во время окна отката — это хорошие операционные практики, а не неаккуратность.

Когда оставаться на OpenClaw 2.0

OpenClaw 2.0 — это не заброшенная базовая линия. Релиз v2026.8.1 привнес более 16 000 pull request от более чем 900 контрибьюторов — примерно половину от всей истории слияний проекта — и существенно изменил онбординг, веб-интерфейс Control UI, хранение сессий, резервные копии, каналы, память, плагины, автоматизации, использование браузера и компьютера, безопасность и надежность службы. Если эти платформенные функции являются центральными для вашей развертки, миграция может удалить больше работающей способности, чем она упрощает.

Оставайтесь на OpenClaw, если вы полагаетесь на:

  • Перестроенный Control UI, с докнутым файловым редактором, панелью Changes на базе git, панелью браузера и подтверждениями в разговоре.
  • Пресеты сессий, поиск транскриптов, группы, представления статусов и пакетные действия.
  • Продукто-специфичный плагин без эквивалента в Hermes.
  • Сложную маршрутизацию многопользовательских, мобильных, устройств или каналов, уже работающую в производстве.
  • Специфичный для OpenClaw браузер, использование компьютера или администрирование Gateway.
  • Базу данных памяти или сессий, которая не может быть экспортирована с приемлемой потерей.
  • Операционные контроли, которые ваша команда уже знает и контролирует.

Переходите на Hermes, если его более простой терминально-ориентированный рабочий процесс, профили, навыки, ориентированные на обучение, модель памяти, запланированные задачи, гибкость поставщика или модель делегирования лучше соответствуют тому, что вы на самом деле оперируете. Сравнение OpenClaw и Hermes обсуждает это решение с текущими цифрами; эта страница о выполнении перевода, когда решение принято.

Итоговый контрольный список миграции

  • Версия OpenClaw и разрешенные пути записаны.
  • Проверенная резервная копия OpenClaw хранится вне живого состояния.
  • Транскрипты JSONL до версии 2.0 сняты в снимок отдельно, если они важны.
  • Создана существующая резервная копия Hermes.
  • Версия Hermes проверена на соответствие текущему поведению безопасности claw migrate.
  • Полный dry-run просмотрен.
  • Каждому конфликту назначено разрешение.
  • Содержимое архива добавлено в список ручных работ.
  • Персона, память пользователя и навыки протестированы в новой сессии.
  • Поставщик, резервная модель, MCP, браузер и терминал протестированы.
  • Поведение подтверждений и песочницы протестировано, включая действие, которое было отказано.
  • Cron-задачи, плагины, хуки, бэкенд памяти и мульти-агентные привязки перестроены или отстранены.
  • Шлюз OpenClaw остановлен перед перемещением учетных данных каналов.
  • Каждый канал сообщений протестирован от разрешенной учетной записи.
  • WhatsApp пересопряжен, если используется.
  • Команды отката и имена архивов записаны.
  • Очистка OpenClaw отложена до окончания периода стабилизации.

Итоговый вердикт

hermes claw migrate достаточно хорош, чтобы сделать переход из OpenClaw в Hermes рутинным, но только если «рутинный» означает спланированный и обратимый. Его сильнейшая особенность — не количество копируемых файлов; это предпросмотр, который сообщает, какие части старого ассистента имеют реальный эквивалент в Hermes, а какие все еще требуют инженерного суждения.

Используйте полный пресет, чтобы выявить масштаб, держите секреты вне первого прохода, переименовывайте конфликты навыков, тестируйте из терминала и передавайте владение каналами как отдельное событие.最重要的是, сохраняйте старую систему, пока Hermes не завершит реальную запланированную работу и реальные разговоры, а не просто вернул успешную команду статуса.

Ссылки

Подписаться

Получайте новые материалы про системы, инфраструктуру и AI engineering.