1. 为什么 OpenClaw 卡在环境这一步
OpenClaw 是一个可以在本地跑的 AI 助手网关,它把模型调用、技能插件、多渠道消息串在一起,适合想在自己机器上搭一套私有智能体的开发者。但很多人第一次部署时,命令敲下去不是报语法错误,就是网关进程起不来,折腾半天发现根本不是代码问题,而是 Node.js 版本不对、包管理器用错、端口被占。这一篇就专门解决这些前置问题,把环境一次性铺平,后面再跑部署脚本才不会连环报错。
OpenClaw 对运行时有硬性要求:Node.js 必须是 22 及以上版本,包管理工具默认用 pnpm,不用 npm 或 yarn。原因不复杂,它底层用到了 Node.js 22 里一些新的稳定 API 和异步调度能力,旧版本会在启动阶段直接抛错。所以这一篇的核心检索词就是 OpenClaw、Node.js 22+、环境准备,我会把安装、校验、配置、连通性验证整条链路走一遍,并且用 TaoToken 统一 Key 通道把模型接入配置也一起做掉,让你进入下一篇实战时环境是真正就绪的。
适合谁看:手上有一台 Windows、macOS、Linux 或者树莓派,想本地跑通 OpenClaw 的开发者;已经装过 Node 但不确定版本对不对的人;以及被端口占用、权限报错卡住过的人。下面所有命令都可以直接复制,我会标清楚每条命令执行后应该看到什么结果。
2. TaoToken 前置:先把统一 Key 通道准备好
在装环境之前,建议先把模型接入这条线理清楚,因为 OpenClaw 启动后要调用模型,Key 和 API 地址得提前备好。TaoToken 在这里扮演的是一个统一 Key 通道的角色,你可以在一个地方管理密钥,然后让 OpenClaw 通过它去访问模型,不用在多个平台之间来回切换配置。
具体操作上,先到官网 https://taotoken.net/?utm_source=taotoken_aicg_blog_end 了解整体能力,然后进控制台创建 API Key。控制台地址是 https://taotoken.net/console ,创建完 Key 之后,API 的基础地址用 https://taotoken.net/api ,注意这个地址后面不加任何多余参数。如果你后面要接 Claude Code 这类编码工具,可以看 https://taotoken.net/claude-code ,想先验证模型通不通,可以直接用模型对话页面 https://taotoken.net/models 试一条请求。
这里有个顺序建议:环境准备和 Key 准备可以并行做,但真正写 config.toml 之前,Key 一定要拿到手,否则配置文件里那一项是空的,网关启动后调用模型会直接失败。我试过先把环境装完再回头找 Key,结果配置改了两遍,不如一开始就备好。
注意:API Key 属于敏感信息,不要提交到 Git 仓库,也不要在公开的配置文件里明文长期存放,本地测试可以用环境变量注入。
3. 可复制配置:Node.js 22+ 安装与校验
3.1 各平台安装 Node.js 22 LTS
统一建议装 22.x 的 LTS 长期支持版,不要追最新的非稳定版,避免兼容问题。Windows 和 macOS 直接去 Node.js 官网下载 22.x LTS 安装包,一路默认下一步,安装程序会自动配好环境变量。装完记得重启终端,否则新版本可能不生效。
Linux 和树莓派推荐用 nvm 装,这样能避开系统自带 Node 版本过低的问题,也方便以后切换版本。命令如下:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash source ~/.bashrc nvm install 22 nvm use 22 nvm alias default 22装完之后,全平台都用同一条命令校验版本:
node -v输出应该是v22.x.x这种形式。如果显示的是 20 或者更低,说明当前终端用的还是旧版本,要么重装,要么检查环境变量里 Node 的路径是不是指向了旧目录。这一步没通过,后面所有操作都别继续。
3.2 pnpm 安装与镜像配置
OpenClaw 指定用 pnpm,不用 npm 和 yarn。pnpm 的好处是依赖复用、磁盘占用低、版本锁定统一,跟 OpenClaw 轻量的设计思路是匹配的。全局安装命令:
npm install -g pnpm装完校验:
pnpm -v国内拉依赖容易慢或者超时,配一下镜像源:
pnpm config set registry https://registry.npmmirror.com pnpm config get registry第二条命令应该回显你刚设置的地址,说明镜像生效了。这一步做完,后面安装依赖基本不会卡在网络上。
3.3 config.toml 骨架示例
OpenClaw 的配置集中在用户目录下的~/.openclaw/config.toml。下面是一个最小骨架,重点是模型接入那段,把 TaoToken 的 API 地址和你的 Key 填进去:
[gateway] host = "127.0.0.1" port = 18789 [model] provider = "openai-compatible" base_url = "https://taotoken.net/api" api_key = "你的_TaoToken_API_Key" model = "你的模型名称" [storage] data_dir = "~/.openclaw/data" log_dir = "~/.openclaw/logs"几个参数说明一下。base_url固定用https://taotoken.net/api,不要加斜杠后缀。api_key填你在控制台创建的那串。model填你要调用的模型标识,具体名称以你控制台里可用的为准。port默认 18789,新手别改,改了容易和其他组件对不上。
提示:如果不想把 Key 写死在文件里,可以把
api_key那行改成从环境变量读取,具体写法参考接入文档 https://taotoken.net/doc ,里面有针对不同运行方式的说明。
4. 验证请求:确认环境与通道都通了
环境装完、配置写好,先别急着跑完整网关,做一次连通性验证,确认 Key 通道是通的。最直接的方式是用 curl 打一条模型请求:
curl https://taotoken.net/api/chat/completions \ -H "Authorization: Bearer 你的_TaoToken_API_Key" \ -H "Content-Type: application/json" \ -d '{ "model": "你的模型名称", "messages": [{"role": "user", "content": "ping"}] }'如果返回里带有正常的模型回复内容,说明 Key 和 API 地址都没问题。如果返回 401,检查 Key 是不是复制多了空格;返回 404,检查 base_url 是不是写成了带多余路径的形式。
通道验证通过后,再校验 OpenClaw 自身的环境。先确认端口空闲:
lsof -i :18789macOS 和 Linux 用这条,Windows 用:
netstat -ano | findstr 18789没有任何输出,说明端口空闲,可以正常用。有输出的话,记下进程号结束掉,或者换一个没被占用的端口。
最后确认配置目录权限正常,当前用户能读写~/.openclaw。Linux 和 macOS 下不要用 root 跑,普通用户部署就行,否则生成的配置文件权限过高,后面普通用户读不了,服务会启动失败。
5. 本篇常见错排查
5.1 node -v 显示旧版本
最常见的原因是终端没重启,或者系统里装了多个 Node,PATH 指向了旧的那个。用which node看一下实际调用的是哪个路径,如果是系统自带的/usr/bin/node,说明 nvm 没生效,重新执行source ~/.bashrc或者检查 nvm 的初始化脚本有没有写进 shell 配置。
5.2 pnpm 命令找不到
npm install -g pnpm装完却提示 command not found,一般是 npm 的全局 bin 目录没在 PATH 里。执行npm config get prefix看全局目录在哪,然后把这个目录下的 bin 加进 PATH。Windows 上重开一个终端通常就好了。
5.3 端口 18789 被占用
网关启动报端口占用,先用上面的 lsof 或 netstat 找到占用进程。如果是之前没退干净的 OpenClaw 进程,直接结束掉再启动。如果是别的服务长期占着,建议改 OpenClaw 的端口配置,但改完要同步检查其他依赖这个端口的组件,别只改一处。
5.4 模型调用返回鉴权失败
先确认 Key 有没有过期或者被删,再去控制台重新生成一个。然后检查 config.toml 里base_url是不是https://taotoken.net/api,多一个斜杠或者少一段都会导致请求打不到正确路径。如果还是不行,用第 4 节的 curl 单独测一次,把配置问题和网络问题分开定位。
5.5 权限报错导致配置写不进去
Linux 和 macOS 下如果之前用 sudo 跑过,~/.openclaw目录可能归 root 所有,普通用户写不进去。用ls -la ~/.openclaw看一下属主,不对的话改回来:sudo chown -R $USER ~/.openclaw。以后统一用普通用户操作,别再混用 sudo。
6. 环境就绪后,下一步怎么走
环境这一步做完,Node.js 22+、pnpm、端口、权限、TaoToken 通道这几项都验证过了,下一篇的部署脚本才有意义。如果你在验证模型那一步想更直观地看返回,可以直接用模型对话页面 https://taotoken.net/models 发一条消息,比 curl 更省事。要是你打算长期用 OpenClaw 做编码或者跑 Agent 任务,建议了解一下 Coding Plan https://taotoken.net/coding-plan ,把额度规划好,避免跑到一半断掉。Key 的管理和重新生成都在 API Keys 页面 https://taotoken.net/api-keys ,接入细节有疑问就翻接入文档 https://taotoken.net/doc 。
最后留一个可复制的动作,作为本篇的收尾验证:把第 4 节的 curl 命令跑一遍,看到模型正常回复,就说明环境准备这一关过了,可以放心进入下一篇的一键部署实战。