OpenClaw 是一个可以跑在个人电脑上的开源 AI 代理项目,图标是一只龙虾,核心用 TypeScript 写成,定位是「真的能动手做事」的个人助手——它能读写文件、执行命令、保留长期记忆。如果你手上有一台 Windows 或 Linux 机器,想把它跑起来,并且希望模型调用走一条统一的 Key 通道,那这篇就是为你写的。我会把原版 openclaw 和汉化版 openclaw-cn 在双平台下的部署流程拆开讲,从 Node.js 环境准备、全局安装、配置向导,到用 TaoToken 统一 Key 接入模型、启动网关、浏览器验证,再到几个我实际踩过的报错。全程命令可直接复制,配置文件片段也给你备好。
1. 为什么要在本地部署 OpenClaw 并统一模型 Key
先说清楚这件事的价值,不然装到一半容易放弃。OpenClaw 这类本地 AI 代理和网页版聊天最大的区别,是它运行在你自己的机器上,能直接操作文件系统和终端。你让它「创建一个 readme.txt 并写入内容」,它是真的去建文件,而不是给你一段文字让你自己复制。这种能力对日常整理资料、批量改文件、跑脚本特别顺手。
但本地代理有个绕不开的问题:模型从哪来。OpenClaw 支持多家模型厂商,配置向导里会让你选,比如阿里云百炼、Qwen 等。问题在于,如果你同时用几个项目、几台机器,每个地方都单独配一套厂商 Key,管理起来很碎。更麻烦的是切换模型时,要改的配置散落在不同文件里。
我自己的做法是走一条统一的 API 通道,把 Base URL、Key、Model ID 这三样集中管理。这样 Windows 台式机、Linux 服务器、甚至临时开的虚拟机,用的都是同一套接入参数,换模型只改一个 Model ID 就行。TaoToken 在这里扮演的就是这个统一入口的角色,它提供兼容常见接口规范的 API 通道,OpenClaw 这类工具只要支持自定义 Base URL,就能接进去。
适合谁看这篇:一是第一次接触 OpenClaw、想在自己电脑上跑起来的新手;二是已经在用、但想把模型接入统一管理的开发者;三是需要在 Windows 和 Linux 两套环境都部署、希望流程一致的运维同学。下面按平台分开讲,Windows 用解压版 Node,Linux 用 apt 源,两条路都走通。
2. TaoToken 统一 Key 的前置准备与接入参数
在动 OpenClaw 之前,先把模型通道这块准备好,后面配置向导才不会卡住。你需要拿到三样东西:Base URL、API Key、Model ID。这三件套是后面所有配置的核心,缺一个都跑不起来。
Base URL 用https://taotoken.net/api,注意这个地址不带任何查询参数,直接填就行。API Key 需要你去控制台生成,路径是登录后进 API Keys 页面新建一个,复制出来保存好,它只显示一次。Model ID 取决于你想用哪个模型,填厂商给的模型标识,比如某个 Qwen 版本或者 Claude 系列的标识,具体以你账号里可用的为准。
这里有个容易混淆的点:OpenClaw 的配置向导里会让你选「模型厂商」,如果你选的是内置的某家云厂商,它会走那家自己的登录验证流程。但我们要走统一通道,所以更推荐的方式是选一个支持自定义 Base URL 的通用选项,或者装完之后直接改配置文件。配置文件的位置在两个平台是一致的,都在当前用户目录下的.openclaw/openclaw.json,Windows 是C:\Users\你的用户名\.openclaw\openclaw.json,Linux 是~/.openclaw/openclaw.json。
我建议的顺序是:先按第 3 节把 Node 和 OpenClaw 装好,跑一次配置向导让它生成基础配置文件,然后打开openclaw.json,把模型接入相关的字段改成 TaoToken 的三件套。这样比在向导里硬选要灵活得多,也方便你以后换模型。
提示:API Key 属于敏感信息,不要提交到 Git 仓库,也不要在截图里露出完整值。配置文件里如果写了 Key,注意文件权限,Linux 下建议
chmod 600。
另外提前说一句,TaoToken 的接入文档里有各语言、各工具的调用示例,遇到字段名不确定的时候可以去对照。文档入口在接入文档页,配合 API Keys 页面一起用,基本能覆盖你配置时需要的所有信息。
3. Windows 与 Linux 下的 Node.js 与 OpenClaw 部署配置
这一节是重头戏,配置片段都在这里。先装 Node.js,再装 OpenClaw,最后改配置文件接入 TaoToken。
3.1 Windows 下安装 Node.js
去 Node.js 官网下载node-v24.13.0-win-x64.zip,解压到D:\tools下,完整路径是D:\tools\node-v24.13.0-win-x64。然后配环境变量:此电脑右键 → 属性 → 高级系统设置 → 环境变量,在系统变量里新建NODE_HOME,值填D:\tools\node-v24.13.0-win-x64。再编辑系统变量里的Path,新增一行同样的路径。
打开 PowerShell,执行:
node -v npm -v能打印出版本号就说明装好了。接着设置镜像源和缓存目录,避免全局包装到 C 盘:
npm config set registry https://registry.npmmirror.com/ npm config set prefix "D:\tools\node_global" npm config set cache "D:\tools\node_cache"然后把D:\tools\node_global也加进系统变量Path,这样全局命令才能被找到。最后升级一下 npm:
npm install -g npm@latest3.2 Linux(Ubuntu)下安装 Node.js
Ubuntu 下走 NodeSource 源更省事:
curl -fsSL https://deb.nodesource.com/setup_24.x | sudo -E bash - sudo apt-get install -y nodejs node -v npm -v npm install -g npm@latest3.3 安装原版与汉化版 OpenClaw
原版:
npm install -g openclaw@latest openclaw onboard --install-daemon openclaw gateway --port 18789 --verbose汉化版:
npm install -g openclaw-cn@latest openclaw-cn onboard --install-daemon openclaw-cn gateway --port 18789 --verbose两个版本的配置向导交互逻辑一样,方向键选择、空格勾选、回车确认。向导里模型厂商那一步,如果你打算走 TaoToken 统一通道,可以先随便选一个能过流程的,或者选跳过,装完直接改配置文件。
3.4 用 TaoToken 三件套改写 openclaw.json
打开~/.openclaw/openclaw.json(Windows 在用户目录下),找到模型接入相关字段,改成下面这样。字段名以你实际版本为准,核心是 Base URL、Key、Model ID 三样:
{ "gateway": { "bind": "loopback", "port": 18789, "trustedProxies": ["127.0.0.1"], "auth": { "mode": "token", "token": "your-secure-token-here" } }, "model": { "baseUrl": "https://taotoken.net/api", "apiKey": "你的TaoToken_API_Key", "modelId": "你的模型ID" } }改完保存,重启网关:
openclaw-cn gateway restart原版把命令里的openclaw-cn换成openclaw即可。这一步做完,模型调用就走统一通道了,后面换模型只改modelId。
4. 启动网关与浏览器验证请求是否成功
配置改完,启动网关:
openclaw-cn gateway --port 18789 --verbose--verbose会打印详细日志,方便看请求有没有发出去。启动后,去~/.openclaw/openclaw.json里找gateway.auth.token的值,复制出来,拼到浏览器地址后面:
http://127.0.0.1:18789/?token=你的token值页面显示「已连接」就说明网关和认证都正常。如果显示未连接,先核对 token 是否一致,注意别多复制了空格。
接下来做一次真实请求验证。在界面里输入:
创建一个 readme.txt如果模型通道配对了,它会真的在你机器上建文件。然后再输入一句:
读取 readme.txt 的内容能返回内容,说明模型调用、工具执行、文件读写整条链路都通了。这一步很关键,它同时验证了 TaoToken 通道可用和 OpenClaw 的代理能力正常。如果创建文件失败但对话有回复,多半是权限或工作目录问题;如果对话都没回复,那就是模型接入没配对,回到第 3.4 节检查三件套。
想单独验证模型通道,也可以去模型对话页面发一条测试消息,确认 Key 和 Base URL 本身没问题,再回来排查 OpenClaw 侧。
5. 常见报错排查:401、token mismatch 与 secure context
部署过程里最容易卡住的就是这几个报错,我按实际遇到的顺序列出来。
401 unauthorized:模型请求被拒。九成是 API Key 填错或过期,或者 Base URL 写成了带路径的地址。检查openclaw.json里baseUrl是不是https://taotoken.net/api,Key 有没有多余空格。改完记得重启网关,配置不会热加载。
disconnected (1008): unauthorized: gateway token mismatch:浏览器里的 token 和配置文件里的对不上。重新打开openclaw.json,搜索gateway.auth.token,把值完整复制,替换掉 URL 里?token=后面的部分。注意 token 是长串十六进制,别漏字符。
disconnected (1008): pairing required:控制界面需要放行不安全认证。原版执行:
openclaw config set gateway.controlUi.allowInsecureAuth true openclaw gateway restart汉化版:
openclaw-cn config set gateway.controlUi.allowInsecureAuth true openclaw-cn gateway restartdisconnected (1008): control ui requires HTTPS or localhost (secure context):你通过非 localhost 的地址访问了控制界面,浏览器要求安全上下文。解决办法是给反向代理配 HTTPS 证书,或者直接用127.0.0.1访问。
local proxy failed / reading choices 类错误:通常是网关没起来,或者端口被占用。先确认openclaw-cn gateway进程在跑,再检查 18789 端口有没有被别的程序占了。Linux 下用ss -tlnp | grep 18789看,Windows 用netstat -ano | findstr 18789。
OAuth 相关报错:如果你在向导里选了需要浏览器登录验证的厂商,验证没走完就会报这个。走 TaoToken 统一通道的话,直接用 Key 认证,不涉及 OAuth,可以避开这类问题。
如果你要配 Nginx 反向代理,记得在openclaw.json里加"trustedProxies": ["127.0.0.1"],否则代理转发过来的请求会被拒。Nginx 侧要带上 WebSocket 升级头,proxy_read_timeout设大一点,比如 86400,避免长连接被断。
排查时如果拿不准是通道问题还是工具问题,先去接入文档对照字段,再去 API Keys 页面确认 Key 状态,两步基本能定位。
6. 长期跑 Agent 的接入建议与 Coding Plan
把 OpenClaw 跑起来只是第一步,真正用起来之后你会发现模型调用量不小,尤其是让它连续处理任务、保留长期记忆的时候。这时候统一通道的优势就体现出来了:所有机器、所有项目共用一套接入参数,用量和 Key 管理都集中在一处,不用在每台机器上重复配置。
如果你打算长期跑编码类、Agent 类任务,可以关注一下 Coding Plan,它更适合高频、持续的模型调用场景。日常调试和验证模型是否正常,用模型对话页面就够了;需要生成和管理 Key,去 API Keys 页面;接入细节拿不准,翻接入文档。这几个入口配合起来,从验证到长期使用能形成闭环。
最后给个实操建议:配置文件改完先别急着开一堆任务,用「创建一个 readme.txt」这种小请求验证一遍,确认文件真的落地了,再上复杂任务。我试过在没验证的情况下直接让它批量处理文件,结果通道没配对,白等半天。先把最小链路跑通,后面就顺了。