Перейти к основному содержанию

openclaw migrate

Импортируйте состояние из другой агентной системы через поставщика миграции, принадлежащего плагину. Встроенные поставщики поддерживают состояние Codex CLI, Claude и Hermes; сторонние плагины могут регистрировать дополнительных поставщиков.
Пошаговые руководства для пользователей см. в разделах Миграция с Claude и Миграция с Hermes. Центр миграции перечисляет все пути.

Команды

openclaw migrate list
openclaw migrate claude --dry-run
openclaw migrate codex --dry-run
openclaw migrate codex --skill gog-vault77-google-workspace
openclaw migrate codex --plugin google-calendar --dry-run
openclaw migrate codex --plugin google-calendar --verify-plugin-apps --dry-run
openclaw migrate hermes --dry-run
openclaw migrate hermes
openclaw migrate apply codex --yes --skill gog-vault77-google-workspace
openclaw migrate apply codex --yes --plugin google-calendar
openclaw migrate apply codex --yes
openclaw migrate apply claude --yes
openclaw migrate apply hermes --yes
openclaw migrate apply hermes --include-secrets --yes
openclaw onboard --flow import
openclaw onboard --import-from claude --import-source ~/.claude
openclaw onboard --import-from hermes --import-source ~/.hermes
<provider>
string
Имя зарегистрированного поставщика миграции, например hermes. Выполните openclaw migrate list, чтобы увидеть установленных поставщиков.
--dry-run
boolean
Построить план и выйти без изменения состояния.
--from <path>
string
Переопределить исходный каталог состояния. Для Hermes по умолчанию используется ~/.hermes.
--include-secrets
boolean
Импортировать поддерживаемые учетные данные без запроса. Интерактивное применение спрашивает перед импортом обнаруженных учетных данных аутентификации, при этом по умолчанию выбран ответ «да»; неинтерактивный --yes требует --include-secrets для их импорта.
--no-auth-credentials
boolean
Пропустить импорт учетных данных аутентификации, включая интерактивный запрос.
--overwrite
boolean
Разрешить применению заменять существующие цели, когда план сообщает о конфликтах.
--yes
boolean
Пропустить запрос подтверждения. Требуется в неинтерактивном режиме.
--skill <name>
string
Выбрать один элемент копирования Skills по имени Skills или идентификатору элемента. Повторите флаг, чтобы перенести несколько Skills. Если флаг не указан, интерактивные миграции Codex показывают селектор с флажками, а неинтерактивные миграции сохраняют все запланированные Skills.
--plugin <name>
string
Выбрать один элемент установки плагина Codex по имени плагина или идентификатору элемента. Повторите флаг, чтобы перенести несколько плагинов Codex. Если флаг не указан, интерактивные миграции Codex показывают нативный селектор плагинов Codex с флажками, а неинтерактивные миграции сохраняют все запланированные плагины. Это относится только к установленным в источнике плагинам Codex openai-curated, обнаруженным инвентаризацией app-server Codex.
--verify-plugin-apps
boolean
Только Codex. Принудительно выполнить свежий обход исходного app-server Codex app/list перед планированием активации нативного плагина. По умолчанию отключено, чтобы планирование миграции оставалось быстрым.
--no-backup
boolean
Пропустить резервное копирование перед применением. Требует --force, когда существует локальное состояние OpenClaw.
--force
boolean
Требуется вместе с --no-backup, когда применение иначе отказалось бы пропустить резервное копирование.
--json
boolean
Напечатать план или результат применения как JSON. С --json и без --yes применение печатает план и не изменяет состояние.

Модель безопасности

openclaw migrate сначала выполняет предварительный просмотр.
Поставщик возвращает детализированный план до любых изменений, включая конфликты, пропущенные элементы и чувствительные элементы. Планы JSON, вывод применения и отчеты миграции редактируют вложенные ключи, похожие на секреты, такие как ключи API, токены, заголовки авторизации, cookies и пароли.openclaw migrate apply <provider> предварительно показывает план и запрашивает подтверждение перед изменением состояния, если не установлен --yes. В неинтерактивном режиме применение требует --yes.
Применение создает и проверяет резервную копию OpenClaw перед применением миграции. Если локального состояния OpenClaw еще нет, шаг резервного копирования пропускается, и миграция может продолжиться. Чтобы пропустить резервное копирование при существующем состоянии, передайте одновременно --no-backup и --force.
Применение отказывается продолжать, когда в плане есть конфликты. Проверьте план, затем повторно запустите с --overwrite, если замена существующих целей намеренная. Поставщики все еще могут записывать резервные копии на уровне элементов для перезаписанных файлов в каталог отчета миграции.
Интерактивное применение спрашивает, импортировать ли обнаруженные учетные данные аутентификации, при этом по умолчанию выбран ответ «да». Используйте --no-auth-credentials, чтобы пропустить их, или --include-secrets для автоматического импорта учетных данных с --yes.

Поставщик Claude

Встроенный поставщик Claude по умолчанию обнаруживает состояние Claude Code в ~/.claude. Используйте --from <path>, чтобы импортировать конкретный домашний каталог Claude Code или корень проекта.
Пошаговое руководство для пользователей см. в разделе Миграция с Claude.

Что импортирует Claude

  • Проектные CLAUDE.md и .claude/CLAUDE.md в рабочую область агента OpenClaw.
  • Пользовательский ~/.claude/CLAUDE.md, добавленный в рабочий USER.md.
  • Определения серверов MCP из проектного .mcp.json, Claude Code ~/.claude.json и Claude Desktop claude_desktop_config.json.
  • Каталоги Skills Claude, которые включают SKILL.md.
  • Markdown-файлы команд Claude, преобразованные в Skills OpenClaw только с ручным вызовом.

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

Хуки Claude, разрешения, значения среды по умолчанию, локальная память, правила, ограниченные путями, субагенты, кеши, планы и история проекта сохраняются в отчете миграции или сообщаются как элементы для ручной проверки. OpenClaw не выполняет хуки, не копирует широкие списки разрешений и не импортирует состояние учетных данных OAuth/Desktop автоматически.

Поставщик Codex

Встроенный поставщик Codex по умолчанию обнаруживает состояние Codex CLI в ~/.codex или в CODEX_HOME, когда установлена эта переменная среды. Используйте --from <path>, чтобы инвентаризировать конкретный домашний каталог Codex. Используйте этого поставщика при переходе на обвязку OpenClaw Codex, если вы хотите осознанно продвинуть полезные личные ресурсы Codex CLI. Локальные запуски app-server Codex используют отдельный для агента CODEX_HOME, поэтому по умолчанию они не читают ваш личный ~/.codex. Обычный процесс HOME все еще наследуется, поэтому Codex может видеть общие $HOME/.agents/* записи Skills/маркетплейса плагинов, а подпроцессы могут находить конфигурацию и токены в домашнем каталоге пользователя. Запуск openclaw migrate codex в интерактивном терминале предварительно показывает полный план, затем открывает селекторы с флажками перед финальным подтверждением применения. Сначала запрашиваются элементы копирования Skills. Используйте Toggle all on или Toggle all off для массового выбора. Нажмите Space, чтобы переключать строки, или нажмите Enter, чтобы активировать выделенную строку и продолжить. Запланированные Skills изначально отмечены, конфликтующие Skills изначально не отмечены, а Skip for now пропускает копирование Skills для этого запуска, продолжая выбор плагинов. Когда установленные в источнике курируемые плагины Codex можно перенести и --plugin не был передан, миграция затем запрашивает активацию нативного плагина Codex по имени плагина. Элементы плагинов изначально отмечены, если целевая конфигурация плагина OpenClaw Codex еще не содержит этот плагин. Существующие целевые плагины изначально не отмечены и показывают подсказку конфликта, такую как conflict: plugin exists; выберите Toggle all off, чтобы не переносить нативные плагины Codex в этом запуске, или Skip for now, чтобы остановиться перед применением. Для скриптовых или точных запусков передайте --skill <name> один раз для каждого Skills, например:
openclaw migrate codex --dry-run --skill gog-vault77-google-workspace
openclaw migrate apply codex --yes --skill gog-vault77-google-workspace
Используйте --plugin <name>, чтобы неинтерактивно ограничить миграцию нативных плагинов Codex одним или несколькими установленными в источнике курируемыми плагинами:
openclaw migrate codex --dry-run --plugin google-calendar
openclaw migrate apply codex --yes --plugin google-calendar

Что импортирует Codex

  • Каталоги Skills Codex CLI в $CODEX_HOME/skills, исключая кеш Codex .system.
  • Личные AgentSkills в $HOME/.agents/skills, скопированные в текущую рабочую область агента OpenClaw, когда требуется владение на уровне агента.
  • Установленные в источнике плагины Codex openai-curated, обнаруженные через Codex app-server plugin/list. Планирование читает plugin/read для каждого включенного установленного плагина. Плагины с привязкой к приложению требуют, чтобы ответ учетной записи исходного app-server Codex был учетной записью подписки ChatGPT; ответы с учетными записями не ChatGPT или отсутствующие ответы учетной записи пропускаются с codex_subscription_required. По умолчанию миграция не вызывает исходный app/list, поэтому плагины с привязкой к приложению, прошедшие проверку учетной записи, планируются без проверки доступности исходного приложения, а транспортные сбои поиска учетной записи пропускаются с codex_account_unavailable. Передайте --verify-plugin-apps, когда хотите, чтобы миграция принудительно получила свежий снимок исходного app/list и требовала, чтобы каждое принадлежащее приложение присутствовало, было включено и доступно перед планированием нативной активации. В этом режиме транспортные сбои поиска учетной записи переходят к проверке инвентаризации исходных приложений. Снимок инвентаризации исходных приложений хранится в памяти для текущего процесса; он не записывается в вывод миграции или целевую конфигурацию. Отключенные плагины, нечитаемые сведения о плагинах, исходные учетные записи с ограничением по подписке и, когда запрошена проверка, отсутствующие приложения, отключенные приложения, недоступные приложения или сбои инвентаризации исходных приложений становятся вручную пропущенными элементами с типизированными причинами вместо записей целевой конфигурации. Применение вызывает app-server plugin/install для каждого выбранного подходящего плагина, даже если целевой app-server уже сообщает, что этот плагин установлен и включен. Перенесенные плагины Codex можно использовать только в сеансах, которые выбирают нативную обвязку Codex; они не доступны запускам поставщика OpenClaw, привязкам бесед ACP или другим обвязкам.

Состояние Codex для ручной проверки

Codex config.toml, нативные hooks/hooks.json, некурируемые маркетплейсы, кешированные наборы плагинов, которые не являются установленными в источнике курируемыми плагинами, и установленные в источнике плагины, не прошедшие проверку исходной подписки, не активируются автоматически. Когда установлен --verify-plugin-apps, плагины, не прошедшие проверку инвентаризации исходных приложений, также пропускаются. Они копируются или указываются в отчете миграции для ручной проверки. Для перенесенных установленных в источнике курируемых плагинов применение записывает:
  • plugins.entries.codex.enabled: true
  • plugins.entries.codex.config.codexPlugins.enabled: true
  • plugins.entries.codex.config.codexPlugins.allow_destructive_actions: true
  • одну явную запись плагина с marketplaceName: "openai-curated" и pluginName для каждого выбранного плагина
Миграция никогда не записывает plugins["*"] и никогда не сохраняет пути локального кэша маркетплейса. Сбои подписки на стороне источника сообщаются для ручных элементов с типизированными причинами, такими как codex_subscription_required, codex_account_unavailable, plugin_disabled или plugin_read_unavailable. С --verify-plugin-apps сбои инвентаря приложений источника также могут отображаться как app_inaccessible, app_disabled, app_missing или app_inventory_unavailable. Пропущенные плагины не записываются в целевую конфигурацию. Установки на стороне цели, требующие авторизации, сообщаются для затронутого элемента плагина с status: "skipped", reason: "auth_required" и очищенными идентификаторами приложений. Их явные записи конфигурации записываются отключенными, пока вы повторно не авторизуете и не включите их. Остальные сбои установки являются результатами error, ограниченными конкретным элементом. Если инвентарь плагинов сервера приложений Codex недоступен во время планирования, миграция возвращается к кэшированным рекомендательным элементам пакета вместо сбоя всей миграции.

Провайдер Hermes

Встроенный провайдер Hermes по умолчанию обнаруживает состояние в ~/.hermes. Используйте --from <path>, если Hermes находится в другом месте.

Что импортирует Hermes

  • Конфигурацию модели по умолчанию из config.yaml.
  • Настроенных провайдеров моделей и пользовательские OpenAI-совместимые конечные точки из providers и custom_providers.
  • Определения серверов MCP из mcp_servers или mcp.servers.
  • SOUL.md и AGENTS.md в рабочую область агента OpenClaw.
  • memories/MEMORY.md и memories/USER.md, добавленные в файлы памяти рабочей области.
  • Значения памяти по умолчанию для файловой памяти OpenClaw, а также архивные элементы или элементы ручной проверки для внешних провайдеров памяти, таких как Honcho.
  • Skills, которые включают файл SKILL.md в skills/<name>/.
  • Значения конфигурации для отдельных Skills из skills.config.
  • Учетные данные OpenCode OpenAI OAuth из OpenCode auth.json, когда принята интерактивная миграция учетных данных или задан --include-secrets. Записи OAuth в Hermes auth.json являются устаревшим состоянием, сообщаемым для ручной повторной авторизации OpenAI или исправления через doctor.
  • Поддерживаемые ключи API и токены из Hermes .env и OpenCode auth.json, когда принята интерактивная миграция учетных данных или задан --include-secrets.

Поддерживаемые ключи .env

  • AI_GATEWAY_API_KEY
  • ALIBABA_API_KEY
  • ANTHROPIC_API_KEY
  • ARCEEAI_API_KEY
  • CEREBRAS_API_KEY
  • CHUTES_API_KEY
  • CLOUDFLARE_AI_GATEWAY_API_KEY
  • COPILOT_GITHUB_TOKEN
  • DASHSCOPE_API_KEY
  • DEEPINFRA_API_KEY
  • DEEPSEEK_API_KEY
  • FIREWORKS_API_KEY
  • GEMINI_API_KEY
  • GH_TOKEN
  • GITHUB_TOKEN
  • GLM_API_KEY
  • GOOGLE_API_KEY
  • GROQ_API_KEY
  • HF_TOKEN
  • HUGGINGFACE_HUB_TOKEN
  • KILOCODE_API_KEY
  • KIMICODE_API_KEY
  • KIMI_API_KEY
  • MINIMAX_API_KEY
  • MINIMAX_CODING_API_KEY
  • MISTRAL_API_KEY
  • MODELSTUDIO_API_KEY
  • MOONSHOT_API_KEY
  • NVIDIA_API_KEY
  • OPENAI_API_KEY
  • OPENCODE_API_KEY
  • OPENCODE_GO_API_KEY
  • OPENCODE_ZEN_API_KEY
  • OPENROUTER_API_KEY
  • QIANFAN_API_KEY
  • QWEN_API_KEY
  • TOGETHER_API_KEY
  • VENICE_API_KEY
  • XAI_API_KEY
  • XIAOMI_API_KEY
  • ZAI_API_KEY
  • Z_AI_API_KEY

Состояние только для архива

Состояние Hermes, которое OpenClaw не может безопасно интерпретировать, копируется в отчет о миграции для ручной проверки, но не загружается в действующую конфигурацию или учетные данные OpenClaw. Это сохраняет непрозрачное или небезопасное состояние, не создавая ложного впечатления, что OpenClaw может автоматически выполнять его или доверять ему:
  • plugins/
  • sessions/
  • logs/
  • cron/
  • mcp-tokens/
  • state.db

После применения

openclaw doctor

Контракт Plugin

Источниками миграции являются плагины. Плагин объявляет свои идентификаторы провайдеров в openclaw.plugin.json:
{
  "contracts": {
    "migrationProviders": ["hermes"]
  }
}
Во время выполнения плагин вызывает api.registerMigrationProvider(...). Провайдер реализует detect, plan и apply. Ядро отвечает за оркестрацию CLI, политику резервного копирования, запросы, вывод JSON и предварительную проверку конфликтов. Ядро передает проверенный план в apply(ctx, plan), а провайдеры могут пересобирать план только тогда, когда этот аргумент отсутствует для совместимости. Плагины-провайдеры могут использовать openclaw/plugin-sdk/migration для создания элементов и подсчета сводных данных, а также openclaw/plugin-sdk/migration-runtime для учитывающего конфликты копирования файлов, копий отчетов только для архива, кэшированных оберток конфигурации времени выполнения и отчетов о миграции.

Интеграция с онбордингом

Онбординг может предложить миграцию, когда провайдер обнаруживает известный источник. И openclaw onboard --flow import, и openclaw setup --wizard --import-from hermes используют одного и того же провайдера миграции плагина и по-прежнему показывают предварительный просмотр перед применением.
Для импортов при онбординге требуется новая настройка OpenClaw. Сначала сбросьте конфигурацию, учетные данные, сессии и рабочую область, если у вас уже есть локальное состояние. Импорты с резервным копированием и перезаписью или слиянием для существующих настроек доступны только через feature gate.

См. также

  • Миграция из Hermes: пользовательское пошаговое руководство.
  • Миграция из Claude: пользовательское пошаговое руководство.
  • Миграция: перенос OpenClaw на новый компьютер.
  • Doctor: проверка состояния после применения миграции.
  • Плагины: установка и регистрация плагинов.