从 OpenClaw 平滑搬家:迁移指南与坑点清单
从 OpenClaw 平滑搬家:迁移指南与坑点清单
如果你几个月前就在用 OpenClaw,看到 Hermes 出来可能会纠结:重练一遍?家当怎么办?
不用。OpenClaw 是 Hermes 的前身——同维护者、改名重设计。hermes claw migrate 是一等公民命令(v0.14.0 引入),专门干这事儿。它不是草草导个配置,而是把 SOUL、记忆、技能、MCP、频道 token 整包迁过来。
但”自动”不等于”无脑”。这条命令有几个必须知道的边界和坑。本章给你完整命令表 + 导入映射 + 验证清单,照着跑就行。
铁律:永远先 —dry-run
▲ Hermes 中文桌面版工作台(暗色模式)
hermes claw migrate --dry-run这一步只预览、不写盘。它会列出要搬什么、映射到哪、哪些会冲突。在没看过 dry-run 输出之前,别去掉 --dry-run。迁移前命令还会自动写一份还原点 ~/.hermes/backups/pre-migration-*.zip,而且它是复制非移动——你的 ~/.openclaw 源目录原样保留,迁坏了也不丢。
完整命令与参数
# 默认 preset=full,含 secrets(API keys)
hermes claw migrate
# 只看不搬
hermes claw migrate --dry-run
# 不含 API keys(更保守)
hermes claw migrate --preset user-data
# 含 API key 一起搬
hermes claw migrate --migrate-secrets
# 覆盖冲突项
hermes claw migrate --overwrite
# 指定源目录(默认 ~/.openclaw/,也会自动检测 ~/.clawdbot/ ~/.moltbot/)
hermes claw migrate --source /path/to/openclaw
# AGENTS.md 需要显式指定目标才导入
hermes claw migrate --workspace-target /path
# 技能冲突处理
hermes claw migrate --skill-conflict skip|overwrite|rename
# 全部确认,非交互
hermes claw migrate --yes
# 稳定后,把遗留 OpenClaw 目录重命名为 .pre-migration/
hermes claw cleanup常用组合,先预览再实跑:
hermes claw migrate --dry-run
hermes claw migrate --migrate-secrets --skill-conflict rename --yes另外提供了一个交互式技能
/openclaw-migration,每步都会先--dry-run,适合不敢敲命令的人。
导入映射表(你旧家的东西去哪了)
| OpenClaw | Hermes 目的地 |
|---|---|
workspace/SOUL.md | ~/.hermes/SOUL.md(原样) |
workspace/MEMORY.md / USER.md / memory/*.md | ~/.hermes/memories/MEMORY.md / USER.md(解析成条目,合并去重,用 § 分隔) |
workspace/skills/、~/.openclaw/skills/、~/.agents/skills/ | ~/.hermes/skills/openclaw-imports/ |
agents.defaults.model | config.yaml → model |
models.providers.* | config.yaml → custom_providers(baseUrl→api,apiType→chat_completions/anthropic_messages) |
| provider API keys | ~/.hermes/.env(需 --migrate-secrets) |
agents.defaults.timeoutSeconds/10(cap 200) | agent.max_turns |
agents.defaults.thinkingDefault | agent.reasoning_effort |
tools.exec.timeoutSec | terminal.timeout |
agents.defaults.sandbox.backend/image | terminal.backend / docker_image |
session.reset.* | session_reset.mode/at_hour/idle_minutes |
mcp.servers.* | mcp_servers.*(command/args/env/url/tools) |
| TTS settings | config.yaml → tts.* + ~/.hermes/tts/ 资源拷贝 |
| Telegram/Discord/Slack/WhatsApp 频道 | TELEGRAM_BOT_TOKEN / DISCORD_BOT_TOKEN / SLACK_BOT_TOKEN / SLACK_APP_TOKEN / *_ALLOWED_USERS 等 .env |
workspace/AGENTS.md | 需 --workspace-target 才导入 |
记忆文件的迁移最值得说:OpenClaw 的 MEMORY.md/USER.md 会被解析成条目、合并去重后写进 Hermes 的 memories/。不是简单覆盖,是融合——你之前教它的事不会丢。
⚠️ 限制与坑(这些不会自动好)
- 只自动迁主 agent。OpenClaw 里配了多 agent 的,其余得手动重建。
- cron / plugins / hooks / 多 agent 绑定没有对应项,会被归档到
~/.hermes/migration/openclaw/<...>/archive/,等你去手动捡回来重建。 - agentskills.io 上的技能不会自动重装。市场里装的技能得重新
hermes skills选一遍。本地~/.openclaw/skills/的会进openclaw-imports/,但远程 tap 的不算。 - WhatsApp 需重新 QR 配对。频道 token 能迁,但 WhatsApp 的登录会话迁不过来,得重新扫一次码。
- AGENTS.md 别忘
--workspace-target。不显式指定,这个文件会被跳过——很多人迁完发现项目上下文没了,就是这个原因。 - 版本提示:
claw migrate在 v0.14.0 引入。如果你拉到的 Hermes 比这老,先hermes update再迁。
验证清单(迁完必须过一遍)
别迁完就走。按顺序跑,确认每一层都活着:
hermes doctor # 诊断环境/配置完整性
hermes status # 当前运行状态
hermes skills list # 技能是否到位(含 openclaw-imports/)
hermes mcp list # MCP server 是否注册成功然后每个频道实测一遍:
- Telegram / Discord / Slack:发一条消息,确认能回。
- 飞书 / 企微 / 钉钉:确认
*_ALLOWED_USERS生效、能收到回复。 - WhatsApp:重新 QR 配对后实测。
- 跑一次真实任务,确认记忆(
/memory)、模型(/model)、MCP 工具都能用。
都没问题了,再 hermes claw cleanup 把旧目录归档,干净利落。
本节能造出什么数字员工
严格说本章不是”造”新员工,而是保住你已有的全部资产——身份人格、跨会话记忆、沉淀的技能、接好的 MCP 和频道。一次迁移,把 OpenClaw 时代攒下的”老员工”原封不动转到 Hermes,零重新训练成本接着干。
下篇预告
家当搬好了,接下来想让数字员工”走出去”——第19章讲怎么把你的技能上架 agentskills.io,变成可分享、甚至可售卖的资产。
延伸阅读
- 官方文档(迁移 / Skills Hub):https://hermes-agent.nousresearch.com/docs
- 中文社区:https://hermesagent.org.cn/docs
- OpenClaw 前身仓库:https://github.com/openclaw/openclaw
- GitHub:https://github.com/NousResearch/hermes-agent