hermes agent跨平台迁移需分五步:一、迁移config.yaml和credentials.env;二、同步记忆系统数据(如mem0/db.sqlite);三、用hermes claw migrate定向导入openclaw技能;四、按平台设openai.server_type并删vllm_args;五、重置telegram/discord会话缓存。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您已完成Hermes Agent在某一平台(如本地Linux或云服务器)的部署,但需将其迁移至另一环境(如从Ubuntu迁移到WSL2、从云服务器迁移到Android Termux),则需兼顾配置文件、记忆系统、API密钥及运行时依赖的一致性。以下是实现跨平台迁移的具体操作路径:
一、迁移核心配置与API密钥
该方法确保身份凭证与基础行为逻辑不丢失,适用于所有目标平台。Hermes Agent将敏感配置与运行状态分离存储,其中~/.hermes/config.yaml和~/.hermes/credentials.env为关键迁移对象。
1、在源环境中定位并导出配置文件:
执行命令 ls -la ~/.hermes/,确认存在 config.yaml 与 credentials.env 文件。
2、安全复制这两个文件(勿直接复制整个.hermes目录):
使用 cp ~/.hermes/config.yaml ./hermes_config_backup.yaml 和 cp ~/.hermes/credentials.env ./hermes_creds_backup.env。
3、在目标环境完成基础安装后,将上述两文件覆盖至目标机的 ~/.hermes/ 目录下,并执行 chmod 600 ~/.hermes/credentials.env 确保权限安全。
二、迁移记忆系统数据
记忆系统(如Mem0、Holographic)独立于主程序运行,其数据通常以SQLite、JSON或向量数据库形式持久化。迁移时须同步数据文件与初始化配置,否则Agent将丢失历史上下文与技能记忆。
1、识别当前启用的记忆系统:
查看 ~/.hermes/config.yaml 中 memory_backend 字段值,例如 mem0 或 holographic。
2、根据后端类型定位数据路径:
若为 mem0,数据默认位于 ~/.mem0/db.sqlite;若为 holographic,则检查 ~/.holographic/storage/ 下的 chunks/ 与 embeddings/ 子目录。
3、将对应完整数据目录打包复制至目标环境相同路径,并确保目标机已安装对应后端服务(如 pip install mem0ai 或 pip install holographic-memory)。
三、迁移OpenClaw历史数据(含Soul.md与agents.md)
此方法专用于曾使用OpenClaw并希望复用其人格设定、技能定义与代理结构的用户。Hermes Agent内置hermes claw migrate命令,但需注意其行为受源路径与目标配置双重约束。
1、在源环境确认OpenClaw项目根目录位置:
典型路径为 ~/openclaw/ 或 ~/Documents/OpenClaw/,内含 Soul.md、agents.md 及 skills/ 子目录。
通过引导式设置将 OpenClaw 连接至 Shopify,包含本地 .env 密钥存储、Shopify OAuth 认证、webhook 验证、商品和内容操作,以及主机或部署配置。
2、执行预检命令验证可迁移项:
运行 hermes claw migrate --dry-run --source ~/openclaw/,观察终端输出中列出的文件清单与映射关系。
3、执行定向迁移(仅迁移技能):
输入命令 hermes claw migrate --source ~/openclaw/ --include skills --exclude soul,agents,该操作将跳过人格与代理定义,仅导入skills/目录下的全部YAML技能文件。
四、重置服务器类型与运行时适配
不同平台对模型服务器协议支持存在差异(如Android Termux不支持VLLM二进制,而云服务器常启用VLLM加速)。迁移后必须显式声明目标环境所兼容的server_type,否则启动将失败。
1、编辑目标机的 ~/.hermes/config.yaml:
找到 openai.server_type 字段,将其值设为与平台匹配的类型:
— Linux/云服务器:保留 vllm 或设为 openai;
— WSL2/macOS:推荐 openai;
— Android Termux:必须设为 openai。
2、若目标平台无GPU或未部署VLLM服务,还需注释或删除 vllm_args 区块,避免启动时尝试连接不存在的本地VLLM实例。
3、验证适配结果:
执行 hermes run --check-env,确认输出中 server_type: openai(或对应值)与 cuda_available: false(如适用)状态一致。
五、迁移Telegram/Discord网关绑定状态
网关会话依赖长期有效的Bot Token与Chat ID,但部分平台(如Termux)无法持久保存WebSocket连接。迁移时需保留Token,同时重置会话标识以避免冲突。
1、提取源环境网关凭证:
检查 ~/.hermes/config.yaml 中 telegram.bot_token 或 discord.bot_token 字段值,手动记录。
2、在目标环境首次启动前,清空网关会话缓存:
执行 rm -f ~/.hermes/telegram_session.pkl ~/.hermes/discord_session.json,强制Agent在下次启动时重新完成身份校验流程。
3、启动Agent并触发交互:
运行 hermes run 后,向Telegram Bot发送任意消息,或在Discord频道中@Bot,确认其响应且日志中出现 Gateway session established 提示。










