1. 为什么要在本地跑一个能动手的 AI 助理
OpenClaw 是一个开源的本地 AI 助理框架,它能做什么?简单说,它把大模型的“思考能力”和你电脑上的“动手能力”接在了一起。适合谁?适合想让 AI 帮自己操作浏览器、读写文件、调用接口,又不想把数据交给第三方平台的开发者和小白用户。
我试过不少在线对话工具,它们回答得头头是道,但最后一步永远要你自己动手。OpenClaw 不一样,它通过 Gateway 调度 Skills,让 AI 真正去执行任务。而要让这套东西跑起来,核心就三件事:Gateway 配置、Skills 挂载、以及一个能稳定调用大模型的 API 通道。
这篇教程聚焦从零搭建的完整链路。我会交付可复制的 Gateway 与 Skills 配置文件、TaoToken 统一 Key 的写入步骤,以及启动后对话连通性与 Skills 调用的验证动作。你跟着做,半小时内能拥有一个能对话、能调技能的本地 AI 助理。
先说清楚架构关系,避免后面迷路。OpenClaw 本体是调度中心,Gateway 是常驻后台进程,Skills 是功能插件,而大模型 API 是“大脑”。四者缺一不可。很多人卡在“装完了但不会动”,本质是 Gateway 没配好,或者 Skills 没挂上,或者 API 通道不通。下面按顺序解决。
关于 API 通道,我选择用 TaoToken 统一 Key 接入。原因是它把多家模型的调用收敛成一个 Base URL 和一个 Key,配置一次就能切换模型,省去反复改配置的麻烦。官网入口在 https://taotoken.net/?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= ,API 地址是 https://taotoken.net/api 。记住这两个,后面配置要用。
环境要求不高:1 核 CPU、2GB 内存、10GB 磁盘就能跑。系统方面,Linux(Ubuntu 20.04+)、macOS 12+、Windows 11 + WSL2 都行。Windows 原生我不推荐,子进程和路径处理容易出兼容问题,WSL2 是更稳的选择。终端工具用 Windows Terminal 或系统自带终端即可。
在动手前,先确认你的 Node.js 版本不低于 22.0.0。执行node -v看一眼。如果低于这个版本,先升级。这一步别跳过,OpenClaw 2026 版对 Node 版本有硬要求,版本不够会在安装阶段直接报错。
2. TaoToken 统一 Key 的前置准备与写入
这一节解决“大脑”的问题。OpenClaw 本身不含推理能力,必须对接外部大模型。TaoToken 的作用是提供一个统一的 API 通道,你只需要一个 Key、一个 Base URL,就能调用多种模型。
第一步,获取 Key。访问 TaoToken 控制台,进入 API Keys 页面创建一个新 Key。创建后立即复制保存,因为密钥通常只显示一次。如果你还没有账号,先通过官网 https://taotoken.net/?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= 注册。控制台里能看到余额和用量,方便你排查是 Key 问题还是额度问题。
第二步,确认 Base URL。TaoToken 的 API 地址是 https://taotoken.net/api ,注意这里不加任何 UTM 参数,配置时原样填入。很多新手把带参数的推广链接填进去,导致请求 404,这是高频坑。
第三步,选模型。TaoToken 支持多种模型 ID,你在控制台的模型列表里能看到可用的。初次搭建建议选一个响应快、成本低的模型做连通性验证,等跑通了再换更强的。模型 ID 要完整复制,比如claude-sonnet-4-5这类格式,别自己拼。
现在把 Key 写进 OpenClaw。有两种方式:Web UI 和命令行。新手优先用 Web UI,直观不易错。启动 Gateway 后,浏览器访问http://localhost:18789,进入 Settings → Model Providers → Add Provider,按下表填写:
| 参数名 | 取值 |
|---|---|
| Name | taotoken |
| API Type | openai-completions |
| API Key | 你的 TaoToken Key |
| Base URL | https://taotoken.net/api |
保存后,再到 Models 页面 Add Model,ID 填你选的模型 ID,Provider 选 taotoken,保存并设为默认。
如果你在无图形界面的服务器上部署,用命令行写入。OpenClaw 的配置文件默认在~/.openclaw/openclaw.json。你可以直接编辑这个 JSON,也可以用openclaw config set命令。我推荐直接编辑文件,因为一次能写全,不容易漏字段。下面是一段可复制的配置片段,路径与原文一致:
{ "models": { "providers": { "taotoken": { "type": "openai-completions", "apiKey": "你的TaoTokenKey", "baseUrl": "https://taotoken.net/api" } }, "default": "taotoken/你的模型ID" } }注意 JSON 的引号和逗号,少一个符号 Gateway 就起不来。写完后执行openclaw restart让配置生效。如果你更习惯命令行,等价操作是:
openclaw config set models.providers.taotoken.apiKey "你的TaoTokenKey" openclaw config set models.providers.taotoken.baseUrl "https://taotoken.net/api" openclaw config set models.providers.taotoken.type "openai-completions" openclaw config set models.default "taotoken/你的模型ID" openclaw restart这里有个细节:Base URL 结尾不要加/v1或斜杠。TaoToken 的接口路径已经内置,多写反而会拼出错误地址。我踩过的坑就是手贱加了个/v1,结果一直 404,排查了半小时。
写入完成后,先别急着测对话。用 curl 直接打一次接口,确认 Key 和通道本身是通的:
curl https://taotoken.net/api/chat/completions \ -H "Content-Type: application/json" \ -H "Authorization: Bearer 你的TaoTokenKey" \ -d '{ "model": "你的模型ID", "messages": [{"role": "user", "content": "你好"}] }'如果返回的 JSON 里包含choices字段,说明通道没问题。如果返回 401,是 Key 错了;如果返回 404,是 Base URL 或路径错了。这一步能把问题范围缩小到“通道”还是“OpenClaw 配置”,非常关键。
3. Gateway 与 Skills 的可复制配置
Gateway 是 OpenClaw 的后台管家,负责管理 Web 控制台、监控 Skills、处理 API 请求。它不运行,助理就离线。Skills 是手脚,没有 Skills,AI 只能聊天不能干活。这一节把两者配好。
先看 Gateway 配置。默认端口是 18789,配置文件在~/.openclaw/openclaw.json。一个完整的 Gateway 配置片段如下,你可以直接复制后改端口:
{ "server": { "port": 18789, "host": "127.0.0.1" }, "gateway": { "logLevel": "info", "autoStart": true } }host填127.0.0.1表示只允许本机访问,更安全。如果你要在局域网内用其他设备访问,改成0.0.0.0,但记得配防火墙规则。autoStart设为 true,开机自启,省得每次手动拉。
Skills 的挂载有两种方式:全局安装和项目级安装。新手用全局即可。OpenClaw 默认会内置几个基础 Skills,比如agent-browser、file-manager。你可以用命令查看当前已加载的:
openclaw skills list如果列表为空,或者缺少你需要的,执行安装:
openclaw skills install agent-browser openclaw skills install file-manager openclaw skills reloadSkills 的配置文件在~/.openclaw/skills/目录下,每个 Skill 一个子目录。你可以通过一个skills.json来声明启用哪些、以及权限范围。下面是一个可复制的 Skills 挂载配置:
{ "skills": { "enabled": ["agent-browser", "file-manager", "text-processor"], "permissions": { "file-manager": { "allowPaths": ["~/openclaw-workspace"], "denyPaths": ["/etc", "/System"] }, "agent-browser": { "allowNetwork": true, "timeout": 30000 } } } }这里重点说权限。file-manager默认能访问整个磁盘,风险很大。我建议用allowPaths限定到一个工作目录,比如~/openclaw-workspace,把系统目录放进denyPaths。agent-browser的timeout设 30000 毫秒,避免网页卡死拖垮整个任务。
配置写完后,重启 Gateway:
openclaw restart openclaw statusstatus输出里应该能看到Gateway is running、Web UI: http://localhost:18789、以及Skills loaded的数量。如果 Skills 数量是 0,说明挂载没生效,检查skills.json的路径和 JSON 格式。
还有一个容易忽略的点:Skills 目录的权限。如果权限不对,Gateway 加载时会静默失败。执行:
chmod -R 755 ~/.openclaw/skills然后再次openclaw skills reload。这一步能解决大部分“Skill not found”的问题。
关于 Gateway 的日志,出问题时第一时间看它:
openclaw logs gateway日志里会明确告诉你哪个 Skill 加载失败、哪个配置字段解析错误。别瞎猜,看日志最快。
4. 启动验证:对话连通性与 Skills 调用
配置写完,现在验证两件事:对话能不能通,Skills 能不能调。这两步过了,你的本地 AI 助理就算搭成了。
先验证对话连通性。打开浏览器访问http://localhost:18789,在聊天框输入一句简单的话,比如“你好,请介绍一下你自己”。如果模型正常返回,说明 Gateway、API 通道、模型配置三者都通了。
如果没返回,按这个顺序排查:先看openclaw status确认 Gateway 在跑;再看openclaw logs gateway有没有报错;然后用上一节的 curl 命令确认 TaoToken 通道本身是通的。三层定位,基本能锁定问题。
对话通了之后,验证 Skills 调用。在聊天框输入:
展示当前可用的 Skills正常会返回一个列表,包含agent-browser、file-manager等。如果列表为空,回到上一节检查skills.json和目录权限。
接下来做一个真实的 Skills 调用测试。用file-manager让 AI 在指定目录创建一个文件:
用 file-manager 技能在 ~/openclaw-workspace 目录下创建一个名为 test.md 的文件,内容写入“OpenClaw 连通性测试成功”。执行后,去终端确认:
cat ~/openclaw-workspace/test.md如果能看到那行文字,说明 Skills 调用链路完全打通。这一步比单纯看列表更有说服力,因为它验证了“AI 解析意图 → 匹配 Skill → 执行操作 → 返回结果”的完整闭环。
再测一个agent-browser的技能调用,验证网络类操作:
用 agent-browser 技能访问 example.com,返回页面的标题。正常会返回Example Domain。如果超时,检查agent-browser的timeout配置和网络连通性。
两个技能都验证通过后,你的 OpenClaw 已经具备实际干活的能力了。这时候可以试着组合任务,比如“访问某个网页,把内容抓下来,用 file-manager 存到本地”。这种多技能协同是 OpenClaw 的核心价值,但初次搭建先把单技能跑稳。
验证过程中,如果对话返回了内容但格式混乱,或者 Skills 调用返回了原始 JSON 没被整理,通常是模型能力问题。换一个更强的模型 ID 再试。TaoToken 的好处就在这里,改一个模型 ID 就能切换,不用动其他配置。
5. 高频报错排查:401、local proxy failed 与 Skill not found
搭建过程中最容易卡在几个固定报错上。这一节按真实报错逐个拆解,你对照着查。
报错一:401 Unauthorized
这是最常见的。原因通常是 Key 写错、Key 过期、或者 Base URL 不对。先确认你填的是 TaoToken 的 Key,不是其他平台的。然后确认 Base URL 是https://taotoken.net/api,没有多余斜杠或/v1。最后用 curl 直接测一次,如果 curl 也 401,那就是 Key 本身的问题,去控制台重新创建一个。
报错二:local proxy failed
这个报错通常出现在 Gateway 启动阶段,意思是本地代理或端口绑定失败。原因有两个:端口被占用,或者host配置成了不可用的地址。先查端口:
lsof -i:18789如果有进程占用,要么杀掉它,要么改 OpenClaw 的端口配置。改完记得同步改浏览器访问地址。如果是host问题,确认填的是127.0.0.1或0.0.0.0,别填主机名。
报错三:reading choices 相关错误
这个报错说明请求发出去了,但返回的 JSON 结构里没有choices字段。常见原因是模型 ID 写错,或者 API Type 配错。确认type是openai-completions,模型 ID 从 TaoToken 控制台完整复制。如果模型 ID 对但还报错,可能是该模型不支持当前接口格式,换一个模型试。
报错四:Skill not found
Skills 调用时提示找不到技能。先openclaw skills list确认技能已安装。如果没装,openclaw skills install 技能名。如果装了但还报错,检查技能名拼写,agent-browser不能写成agent_browser。再检查~/.openclaw/skills目录权限,执行chmod -R 755。最后openclaw skills reload刷新。
报错五:OAuth 相关错误
如果你在配置里误开了 OAuth 认证,或者模型 Provider 要求 OAuth 而你没配,会报这个。OpenClaw 对接 TaoToken 用的是 API Key 模式,不需要 OAuth。检查配置文件里有没有多余的oauth字段,删掉。确认apiKey字段填的是 Key 本身,不是 token。
报错六:Codex auth.json 冲突
如果你之前配过 Codex 或其他工具,~/.codex/auth.json可能和 OpenClaw 的配置冲突。表现是 Gateway 启动时读取了错误的凭证。解决办法是确认 OpenClaw 用的是自己的配置文件~/.openclaw/openclaw.json,不要和 Codex 的混用。如果确实需要共存,把两者的配置目录分开,环境变量也分开。
排查的通用思路是:先看日志openclaw logs gateway,再确认配置文件 JSON 格式,最后用 curl 隔离测试 API 通道。三层下来,九成问题能定位。
6. 接入后的下一步与长期使用建议
搭好之后,你手里有了一个能对话、能调技能的本地 AI 助理。接下来怎么用得更顺,说几个实用建议。
第一,把常用任务固化成指令模板。比如每天抓取某个网页的数据,你可以把那段自然语言指令存下来,下次直接粘贴。OpenClaw 的 Skills 调用对指令清晰度很敏感,模板能提高成功率。
第二,模型选择按任务分。轻量任务用快而便宜的模型,复杂推理用强模型。TaoToken 统一 Key 的好处就是切换成本低,改一个模型 ID 即可。你可以在配置里预设多个 Provider,按需切换。
第三,Skills 权限最小化。只开你需要的技能,file-manager的allowPaths限定到工作目录,agent-browser设好超时。本地助理能访问你的文件系统,权限收窄是必须的。
第四,定期看 Gateway 日志。日志里会暴露 Skills 的异常调用和 API 的失败请求。养成每周扫一眼的习惯,能提前发现 Key 额度不足或技能失效。
如果你打算长期跑,建议把 Gateway 配成开机自启,放在一台常开的机器或服务器上。这样它就是一个 7×24 小时在线的助理。后续想接钉钉、飞书这类消息通道,也是在 Gateway 层面扩展,配置思路和这篇一致。
需要管理多个 Key 或查看用量,去 TaoToken 控制台。想深入看 OpenClaw 的接入文档和 Skills 开发规范,访问接入文档页面。如果你更习惯用对话方式快速验证模型效果,可以直接用模型对话功能试。长期做编码类任务或 Agent 编排,Coding Plan 会更合适,具体入口在官网导航里能找到。
最后提醒一句:所有配置改完,记得openclaw restart并openclaw status确认一遍。配置不重启不生效,这是新手最常忘的一步。