1. openclaw 部署报错 4008/1008 到底卡在哪
openclaw(龙虾)是最近挺火的一个本地 Agent 网关项目,能接各种大模型、跑自动化任务,适合想在自己电脑上折腾 Agent 的同学。但它在 Windows + PowerShell 环境下部署时,最容易撞上的就是两类报错:一类是disconnected(4008): connect failed,另一类是disconnected (1008): unauthorized: gateway token not configured on gateway。这两个数字看着像玄学,其实一个跟浏览器内核版本有关,一个跟网关鉴权配置有关,跟模型本身没多大关系。
我自己第一次装的时候,node 版本还是 18,npm install -g openclaw@latest跑完看着像成功,结果openclaw onboard直接提示'openclaw' 不是内部或外部命令。后来才发现是 nvm 切换版本后全局包路径没跟着走,得用npx openclaw才能唤起。再往后配好模型,Web UI 又甩出 1008,说 gateway token 没配。折腾一圈下来,真正的问题就三个:node 版本没到 22、nvm 全局包路径错乱、网关 token 和 endpoint 没对齐。
这篇就按 Windows + PowerShell 的实际操作顺序,把 nvm 切版本、npm 装包、endpoint 改到 TaoToken 统一 Key 通道、逐项验证请求这几步拆开讲。你跟着敲命令就行,遇到 4008 或 1008 也能对着排查。核心检索词先记住:openclaw 部署、node.js 版本、nvm 切换、npm 安装、PowerShell 报错排查。
先说清楚适用人群:如果你只是想在 Windows 上快速跑通 openclaw 看看效果,这篇够用;如果你要长期跑 Agent 任务,后面还是建议上 Linux,Windows 这边更适合验证和玩一玩。另外 openclaw 官方要求 Node.js ≥ 22,这点别抱侥幸,18 或 20 都可能在半路出问题。
2. TaoToken 统一 Key 通道前置准备
在动手改 endpoint 之前,先把 TaoToken 这边的准备工作做完。TaoToken 是一个统一 Key/API 通道,你可以把它理解成一个“模型请求中转站”:openclaw 不用分别去配小米、Anthropic、OpenAI 各家 Key,只要把 baseUrl 指向 TaoToken 的 API 地址,再用一把统一 Key,就能在多个模型之间切换。对 openclaw 这种要频繁换模型的 Agent 网关来说,省掉了反复改配置的麻烦。
第一步,打开官网 https://taotoken.net/?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= ,注册并登录。登录后进控制台,找到 API Keys 页面,新建一把 Key。这把 Key 就是后面要填进 openclaw 配置里的凭证,格式一般是一串sk-开头的字符串。新建完先复制存好,页面刷新后可能就不再完整显示。
第二步,确认你要用的模型 ID。TaoToken 的模型对话页面可以直接试跑,看看哪个模型响应正常。openclaw 配置里需要填 Model ID,这个 ID 必须和 TaoToken 侧支持的名称一致,不然请求会返回模型不存在的错误。你可以先在模型对话里发一句“你好”,确认通道通、模型可用,再去改 openclaw 配置,这样能少走弯路。
第三步,记下 API 地址。TaoToken 的 API 入口是 https://taotoken.net/api ,注意这个地址不带任何查询参数,配置里 baseUrl 就填它。openclaw 的 provider 配置里通常要求 baseUrl 指向/v1这类路径,具体看 openclaw 版本,有的版本会自动补/v1,有的需要你手动写全。我实测下来,先填https://taotoken.net/api,如果报 404 再补/v1,这样最稳。
这里插一句,TaoToken 不是让你绕过什么,它就是个正常的 API 聚合通道,把多家模型的调用统一成一套 Key 和地址。你该付的费用还是在 TaoToken 侧结算,openclaw 只是消费方。所以配置的时候别把它当成“免费通道”,该充值的充值,该选模型的选模型。
准备工作做完,你手里应该有三样东西:一把 TaoToken Key、一个确认可用的 Model ID、API 地址https://taotoken.net/api。这三样就是下一节配置的核心。如果你还没建 Key,先去 API Keys 页面建一把;如果模型对话还没试通,先试通再往下走,不然配置改完也验证不了。
3. 可复制配置:nvm 切版本 + npm 装包 + openclaw.json 改 endpoint
这一节是全文最核心的操作部分,按顺序敲就行。先解决 node 版本,再装 openclaw,最后改配置文件。
3.1 nvm 安装与 node 22 切换
如果你机器上已经有 node 18 或 20,别直接覆盖,用 nvm 管理最干净。nvm-windows 的安装包在 GitHub releases 页面,下载nvm-setup.exe一路下一步即可。装完打开 PowerShell,先看现有版本:
nvm ls这会列出你本机已安装的 node 版本。如果只有 18.x,就装一个 22:
nvm install 22.22.0 nvm use 22.22.0 node -vnode -v输出v22.22.0才算切换成功。这里有个坑:nvm 切换版本后,之前用旧版本全局装的包不会跟着过来,所以openclaw命令会找不到。这不是安装失败,是全局包路径变了。解决办法有两个,要么重新npm install -g openclaw@latest,要么直接用npx openclaw唤起。我建议重装一次全局包,后面命令写起来短一些。
如果你没用 nvm,直接去 nodejs 官网下 22 的安装包也行,但多版本共存会麻烦,后面想切回 18 就得卸了重装。所以只要你不是特别排斥命令行,nvm 是更省事的选择。
3.2 npm 安装 openclaw
node 22 就位后,装 openclaw:
npm install -g openclaw@latest看到added 1 package之类的输出就是成功。如果卡在idealTree或者报网络超时,先换 npm 源:
npm config set registry https://registry.npmmirror.com npm install -g openclaw@latest装完验证:
openclaw --version如果提示'openclaw' 不是内部或外部命令,说明全局包路径没进 PATH。用 nvm 的话,先nvm use 22.22.0再重装一次;还不行就用npx openclaw --version兜底。npx 会临时拉取并执行,能跑通就说明包本身没问题,只是 PATH 的事。
3.3 openclaw.json 配置改到 TaoToken
配置文件默认在C:\Users\你的用户名\.openclaw\openclaw.json。用记事本或 VS Code 打开,把 provider 部分改成 TaoToken 的地址和 Key。下面是一份可复制的 JSON 片段,路径和字段名按 openclaw 当前版本对齐:
{ "auth": { "profiles": { "taotoken:default": { "provider": "taotoken", "mode": "api_key", "apiKey": "sk-你的TaoTokenKey" } } }, "models": { "mode": "merge", "providers": { "taotoken": { "baseUrl": "https://taotoken.net/api", "api": "anthropic-messages", "models": [ { "id": "你的ModelID", "name": "TaoToken Model", "reasoning": false, "input": ["text"], "contextWindow": 200000, "maxTokens": 8192 } ] } } }, "agents": { "defaults": { "model": { "primary": "taotoken/你的ModelID" }, "workspace": "C:\\Users\\你的用户名\\.openclaw\\workspace" } }, "gateway": { "port": 18789, "mode": "local", "bind": "loopback", "auth": { "token": "自己设一个随机字符串" } } }三个关键点:baseUrl填https://taotoken.net/api;apiKey填 TaoToken 控制台建的 Key;gateway.auth.token一定要设,不设就会撞 1008。这个 token 是你本地网关的鉴权口令,跟 TaoToken Key 是两回事,随便设个长随机串就行,但要和后面 Web UI 登录时填的一致。
改完保存,启动网关:
npx openclaw gateway或者全局包装好了就直接openclaw gateway。看到监听 18789 端口、没有报错,就说明配置加载成功。
4. 验证请求:从模型对话到网关连通逐项确认
配置改完不代表通了,得逐项验证。我一般分三层查:TaoToken 通道本身、openclaw 到 TaoToken 的请求、Web UI 到网关的连接。
第一层,先在 TaoToken 模型对话页面发一条消息,确认 Key 和模型都正常。这一步能排除掉 Key 失效、模型 ID 写错、余额不足这类问题。如果这里就不通,后面 openclaw 怎么配都没用。
第二层,在 PowerShell 里直接 curl 一下 TaoToken 的接口,确认本机网络能到:
curl -X POST https://taotoken.net/api/v1/messages ` -H "Authorization: Bearer sk-你的TaoTokenKey" ` -H "Content-Type: application/json" ` -d '{"model":"你的ModelID","max_tokens":64,"messages":[{"role":"user","content":"ping"}]}'返回里有content字段就说明通道通。如果返回 401,检查 Key 有没有复制全;返回 404,检查 baseUrl 后面要不要补/v1;返回模型不存在,检查 Model ID 拼写。
第三层,启动 openclaw gateway 后,浏览器打开http://127.0.0.1:18789,进 Web UI。如果之前撞过 1008,这次应该能正常进,因为gateway.auth.token已经配了。进去后发一条测试消息,看 Agent 有没有正常回复。回复正常,说明 openclaw 已经通过 TaoToken 通道拿到模型结果,整条链路打通。
如果 Web UI 显示Disconnected from gateway,先看 gateway 进程还在不在,再看端口有没有被占。PowerShell 里netstat -ano | findstr 18789能查端口占用。被占了就改gateway.port换个端口,重启即可。
验证通过后,你可以在 openclaw 里跑一个简单任务,比如让它读一个本地文件并总结,确认 Agent 的工具调用也正常。这一步能顺带验证 workspace 路径配置对不对。
5. 4008/1008 常见报错逐条排查
这一节把真实会撞到的报错列出来,对着改。
报错一:disconnected(4008): connect failed
这个多半是浏览器内核版本太低。openclaw 的 Web UI 依赖较新的浏览器特性,Edge 106 这种老版本会直接连不上。解决办法:升级 Edge 到最新,或者装一个最新版 Chrome,用 Chrome 打开http://127.0.0.1:18789。我实测下来,换 Chrome 后 4008 直接消失。如果你必须用特定版本 Edge,那就双浏览器并存,openclaw 用 Chrome 开。
报错二:disconnected (1008): unauthorized: gateway token not configured on gateway (set gateway.auth.token)
这是网关没配 token。在openclaw.json的gateway段加:
"auth": { "token": "你的随机口令" }保存后重启 gateway,Web UI 登录时填同一个 token。注意 token 别用纯数字,用字母数字混合的长串,避免被猜。
报错三:401 Unauthorized(请求 TaoToken 时)
TaoToken Key 没填对,或者填到了错误字段。检查auth.profiles里的apiKey是不是sk-开头、有没有多余空格。另外确认provider名字和models.providers里的 key 一致,不一致会导致 Key 找不到。
报错四:local proxy failed或reading choices报错
这类通常是 baseUrl 路径不对。openclaw 有的版本会在 baseUrl 后自动拼/v1/messages,有的不会。先试https://taotoken.net/api,报 404 就改成https://taotoken.net/api/v1。改完重启 gateway 再试。reading choices一般是返回体结构不符合预期,多半是模型 ID 或 api 类型(anthropic-messages/openai-chat)选错了,对照 TaoToken 文档确认。
报错五:'openclaw' 不是内部或外部命令
nvm 切版本后全局包路径没更新。先nvm use 22.22.0,再npm install -g openclaw@latest,然后openclaw --version。还不行就用npx openclaw代替所有openclaw命令。
报错六:OAuth 相关报错
如果你在配置里误开了 OAuth 模式,但 TaoToken 用的是 API Key 模式,就会报 OAuth 失败。把auth.profiles里的mode改成api_key,删掉 OAuth 相关字段,重启即可。
排查顺序建议:先看 gateway 进程在不在,再看 Web UI 能不能进,再看 TaoToken 通道通不通,最后看模型 ID 对不对。一层层往下,别一上来就改配置。
6. 长期跑 Agent 的通道选择与后续建议
Windows 上把 openclaw 跑通只是第一步。如果你只是偶尔玩玩,现在这套配置够用;但如果你打算长期跑 Agent 任务、接多个模型、做自动化,那有几个点值得提前想清楚。
第一,通道稳定性。openclaw 作为网关,所有模型请求都从它出去,所以 endpoint 的稳定性直接决定 Agent 能不能持续工作。TaoToken 这种统一 Key 通道的好处是换模型不用改代码,改配置里的 Model ID 就行。你可以在models.providers.taotoken.models里放多个模型,Agent 按任务切换。长期编码或跑 Agent 的话,可以看看 Coding Plan 这类方案,把额度和模型规划好,避免跑到一半没额度。
第二,配置备份。openclaw.json改好后复制一份存起来,尤其是 gateway token 和 TaoToken Key。重装或换机器时直接覆盖,省得重新配。workspace 目录也建议定期备份,Agent 跑出来的文件都在里面。
第三,Windows 的局限。openclaw 在 Windows 上跑,进程管理、路径分隔符、权限这些都比 Linux 麻烦。如果你要 7x24 跑,建议后面迁到 Linux 服务器,Windows 这边留作调试环境。迁移时主要改 workspace 路径和 gateway bind 配置,其他基本能复用。
第四,验证习惯。每次改完配置,别急着跑复杂任务,先用一条ping消息验证通道,再逐步加复杂度。我踩过的坑就是一次性把模型、token、workspace 全改完,结果报错不知道是哪一层的问题,只能回滚重来。分层验证能省很多时间。
最后,openclaw 版本更新挺快,配置字段偶尔会变。升级后如果启动报字段不认识,对照官方 release note 改一下就行。TaoToken 侧的 API 地址和 Key 一般不变,所以主要改的是 openclaw 自己的配置结构。把这两边的边界分清楚,后面维护就轻松了。