Mac 环境搭建与 OpenClaw → Hermes 记忆迁移记
2026-05-05 · 从 Windows 到 Mac,一次意外丝滑的迁移体验
一、背景
在 Windows 端已经跑通了 Claude Code + Codex + OpenClaw 的完整工作流,新入手一台 Mac,目标是把整套环境复刻过来。
经历了 Windows 上软链接、路径污染、Codex 技能注册等一系列折腾(详见《Agent Skills 统一架构打磨记》),心里其实做好了再踩一轮坑的准备。结果 Mac 上的体验完全出乎意料——丝滑到让人怀疑之前在 Windows 上的痛苦是不是一场梦。
二、基础环境准备:Homebrew + Node.js + Python
Mac 上搭建开发环境的第一步是把基础工具链装好。这些是后面所有 Agent 工具的前置依赖。
Homebrew — Mac 的包管理器,后续工具和依赖大部分通过它来装:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Homebrew 安装过程中会自动检测并安装 Xcode Command Line Tools(包含 GCC/clang 等编译工具链),不需要手动跑 xcode-select –install。这也是为什么我没有单独装 GCC 的印象——它随 Homebrew 一起就搞定了。
Node.js — Claude Code、Codex、OpenClaw 都依赖它(OpenClaw 要求 >= 22):
brew install nodenode -v && npm -v
Python — Hermes Agent 需要 Python 3.11+:
brew install python@3.11python3 --version
整个基础环境搭建非常顺畅,没有遇到任何卡点。Homebrew 把编译工具链也顺带解决了,后面的工具安装就是一路绿灯。
三、Claude Code:原生安装器,curl 一行搞定
根据 https://code.claude.com/docs/en/quickstart,Mac 上推荐用原生安装器,无需额外依赖 Node.js,而且支持自动后台更新:
curl -fsSL https://claude.ai/install.sh | bashclaude --version
首次运行 claude 会自动打开浏览器进行 OAuth 认证,用 Claude Pro/Max 账号登录即可。认证令牌保存在本地,后续不用再登录。
没有遇到 npm 权限问题(因为根本没用 npm),没有环境变量要配。和 Windows 上的体验比,省心太多。
📎 参考文档:https://code.claude.com/docs/en/quickstart
四、CC Switch:多 Agent Provider 管理
装完 Claude Code 后,顺手装了 CC Switch——一个跨平台桌面工具,用来统一管理 Claude Code、Codex、OpenClaw、Hermes、Gemini CLI 等多个 AI 编程工具的 Provider 切换、MCP 服务器、Skills 同步。
直接从 https://github.com/farion1231/cc-switch/releases 下载最新版的 .dmg 文件,双击挂载后拖入 Applications 即可。
⚠️ 首次打开会提示”未知开发者”(作者没有 Apple 开发者账号),需要到 系统设置 → 隐私与安全性 → 点击”仍然打开”。
CC Switch 的核心功能是一键切换不同 Provider(官方账号、第三方 API 中转等),不用手动改配置文件。对于有多个 Claude/Codex 账号的场景特别实用。
📎 参考文档:https://github.com/farion1231/cc-switch/releases
五、Codex:官方安装器,同样丝滑
Codex 也用的官方推荐的原生安装方式。根据 https://developers.openai.com/codex/cli,Mac 上可以 npm 或 Homebrew,但官方也提供了 GitHub Release 下载的方式。
我直接用 npm 全局安装(因为前面 Node.js 已经装好了):
npm install -g @openai/codexcodex --version
运行 codex,选 “Sign in with ChatGPT”,浏览器弹出认证,完事。
没有环境变量要配,没有路径要调,没有权限要修。和 Windows 上的体验简直是两个世界——Windows 上光是 PowerShell 兼容性和路径分隔符就够折腾半天了。
这种”装完即用”的体验,本身就是最值得记录的事。
📎 参考文档:https://developers.openai.com/codex/cli
六、OpenClaw:官方脚本安装,连上 DeepSeek V4
根据 https://docs.openclaw.ai/zh-CN/install,推荐用安装器脚本,它会自动处理依赖并运行新手引导:
curl -fsSL https://openclaw.ai/install.sh | bash
系统要求 Node >= 22(前面已装好)。安装完如果跳过了引导,可以手动运行:
openclaw onboard --install-daemon
因为 DeepSeek 不在默认模型列表里,需要手动编辑 ~/.openclaw/openclaw.json 把 DeepSeek V4 加进去,API key 通过环境变量 DEEPSEEK_API_KEY 注入(在 ~/.zshrc 里 export)。
跑起来之后,DeepSeek V4 的响应速度比预期好,整体流畅。安装完可以用 openclaw doctor 做健康检查,openclaw status 看 Gateway 状态。
📎 参考文档:https://docs.openclaw.ai/zh-CN/install
七、聊天工具探索:飞书踩坑,微信也没走通
工具链搭好了,下一个问题是:日常随手对话用什么入口?
飞书试过了,接入api后因为限额度总是报错,体验极不稳定,放弃。
微信 Bot 方案刚出来,昨天兴冲冲地装了一下。结果 DeepSeek 的 Windows 端直接报”上下文超出”错误,整个挂掉。这条路暂时也走不通。
聊天入口是目前唯一没解决的问题。核心诉求是稳定、能承载长对话、日常随手可用。OpenClaw 和 Hermes 都支持 WhatsApp、Telegram、Discord、Slack、Signal 等接入,后续可以从这些方向继续探索。
八、Hermes 安装与记忆迁移:今天最快乐的事
安装
Hermes 用的 Homebrew 安装:
brew install hermes-agenthermes --version # 确认 v0.7.0+
装完运行 hermes setup 进入初始化向导,选择模型 Provider(支持 OpenRouter、DeepSeek、OpenAI 等 20+ 家),配置 API key。
如果配置出问题需要重来,可以参考 https://blog.csdn.net/qq_37703224/article/details/160379211,核心思路是清理 ~/.hermes/ 下的配置文件后重新运行 hermes setup。运行 hermes doctor 可以一次性诊断所有问题。
配置文件结构很清晰:
~/.hermes/├── config.yaml # 主配置├── .env # API 密钥├── SOUL.md # 人设├── memories/ # 持久化记忆├── skills/ # Agent 技能└── sessions/ # 会话历史
📎 参考文档:
- https://cloud.tencent.com/developer/article/2655513
- https://blog.csdn.net/qq_37703224/article/details/160379211
从 OpenClaw 迁移记忆
这是整个迁移过程中最让人快乐的部分。Hermes 内置了专门的 OpenClaw 迁移工具,一条命令完成:
# 先预览要迁移什么(不做任何修改)hermes claw migrate --dry-run# 确认无误后执行迁移hermes claw migrate
工具自动检测 ~/.openclaw/ 目录,交互式展示每个即将导入的项目。导入内容包括:记忆条目、自定义技能(自动转换为 agentskills.io 格式)、模型配置、SOUL.md 人设文件。
迁移完验证:
hermes status # 检查 API 认证状态hermes memory list --all # 看看记忆是否完整hermes # 启动对话,测试效果
之前在 OpenClaw 上积累的所有探索都没有白费。 每一次对话、每一个自定义技能、每一条记忆,全部无缝继承到了 Hermes。相当于换了一个更强的框架,但”大脑”里的东西一样不少。
过去的投入没有沉没,反而成为新工具的起点。
📎 参考文档:https://hermes-agent.nousresearch.com/docs/guides/migrate-from-openclaw
九、Mac vs Windows:为什么体验差这么多
回头看这一天的操作,Mac 上的丝滑不是偶然的,而是底层环境决定的:
- 软链接:ln -s 就是真的 symlink。Windows 上 Git Bash 会静默复制、需要开发者模式 + mklink /D
- 环境变量:一个 ~/.zshrc 管所有事。Windows 上 PowerShell profile、CMD、Git Bash 三套并存
- 路径:统一用 /。不存在 \ vs / 的混乱
- 包管理:Homebrew 一行命令解决大部分依赖。Windows 上同一个工具可能要分别处理 CMD、PowerShell、WSL
- 权限:不需要”开发者模式”之类的系统级开关
同样的工具链,Windows 上的打磨记写了几千字踩坑经历,Mac 上一天就全部跑通了。
十、当前状态
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
十一、经验总结
-
1. Mac 对开发者工具天然友好。 安装配置的心智负担比 Windows 低一个量级。 -
2. 基础环境先行。 Homebrew → Node.js → Python 这条线装好(GCC 随 Homebrew 自动带上),后面一路绿灯。 -
3. 原生安装器 vs Homebrew 的区别主要在更新机制。 curl 装的自动更新,brew 装的需要手动 brew upgrade。功能上没有差异。 -
4. 记忆可迁移 = 投入不沉没。hermes claw migrate 一条命令,OpenClaw 的积累全部带走。 -
5. CC Switch 值得装。 管理多个 Agent 的 Provider 切换、MCP 配置、Skills 同步,比手动改配置文件高效太多。 -
6. 先跑通再优化。 一天之内把整套环境从 Windows 迁到 Mac,核心策略就是先让每个工具能用,细节后续再打磨。 -
7. 聊天入口是下一个课题。 工具链就绪了,但日常随手对话的稳定入口还没找到。
十二、结论
如果你正在考虑用什么电脑来跑 AI Agent 工具链,强烈推荐 Mac。
从 Homebrew 自动带上编译工具链,到 ln -s 就是真 symlink,到 curl 一行装完即用——整个体验只能用”丝滑”来形容。同样一套工具(Claude Code + Codex + OpenClaw + Hermes + Agent Skills 统一架构),Windows 上写了几千字的踩坑打磨记,Mac 上一天之内全部跑通,中间几乎没有卡点。
不是说 Windows 不能用,而是 Mac 的 Unix 底层让这些命令行工具处于自己的主场。环境变量一个 ~/.zshrc 管完,路径永远是 /,软链接永远是真的,包管理永远是 brew install 一行了事。省下来的不是几分钟的安装时间,是大量排查奇怪兼容性问题的心智负担。
把精力花在用工具上,而不是装工具上。Mac 让这件事成为了现实。
十三、参考文档汇总
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
夜雨聆风