openclaw在macos上因node.js底层模块对非ascii路径解析限制,遇中文路径会卡死或报enotdir/eacces错误;需通过创建纯英文路径、设置openclaw_home环境变量并配合home重定向来彻底规避。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

OpenClaw在macOS上一遇到中文路径就卡死、报错或找不到配置文件,不是软件bug,而是它底层依赖的Node.js模块(如fs、path.resolve)和CLI工具链对非ASCII路径的解析存在硬性限制——尤其在调用sharp、glob、electron-builder等原生扩展时会直接抛出ENOTDIR或EACCES异常。
确认当前OpenClaw是否已落入中文路径陷阱
打开终端,执行:openclaw onboard --debug。若输出中出现ENOENT: no such file or directory, open '/Users/张三/Documents/openclaw/config.json'或类似含中文用户名/文件夹名的路径报错,即已触发该问题。
这一步必须做,因为OpenClaw v2026.3.31起默认启用路径预检机制,但仅提示“invalid path”,不显示具体字符,容易误判为权限问题。
强制切换至纯英文系统路径方案
第一步:新建一个不含空格与中文的顶层目录,例如/Users/ocwork(不能是/Users/张三/Desktop/OpenClaw或/Users/oc work)。
第二步:将OpenClaw安装包解压或git clone到该目录:git clone https://github.com/openclaw/core.git /Users/ocwork/openclaw。
第三步:进入该目录后,**必须先执行环境变量锁定**:export OPENCLAW_HOME=/Users/ocwork/openclaw && cd /Users/ocwork/openclaw。这步不可跳过,否则后续所有命令仍会回退到系统默认路径(如~/Library/Application Support),而该路径在中文用户名下天然含中文。
第四步:运行初始化:npm run setup → npm run onboard。此时所有日志、缓存、配置文件均生成在/Users/ocwork/openclaw及其子目录下,全程规避中文字符。
永久禁用系统级中文路径污染
方法一:修改Shell启动配置(推荐zsh用户)
编辑~/.zshrc,在末尾添加:export HOME="/Users/ocwork"。注意:【这不是修改真实家目录,只是让OpenClaw相关进程读取HOME时返回纯英文路径】。保存后执行source ~/.zshrc,再新开终端验证echo $HOME是否输出/Users/ocwork。
方法二:为OpenClaw单独封装启动脚本
新建文件/Users/ocwork/start-claw.sh,内容为:
#!/bin/zshexport HOME="/Users/ocwork"export OPENCLAW_HOME="/Users/ocwork/openclaw"cd /Users/ocwork/openclawnpm start
赋予执行权限:chmod +x /Users/ocwork/start-claw.sh。以后只需双击该脚本或在终端运行/Users/ocwork/start-claw.sh即可安全启动。
注意:不要把OPENCLAW_HOME设为/Users/ocwork本身——这会导致配置文件写入根目录,破坏结构隔离,v2026.3.31会拒绝加载。










