1. 先搞清楚 OpenClaw 到底能帮你做什么
OpenClaw(社区里也常被叫 Clawdbot)是一个开源的 AI 智能体框架,你可以把它理解成一个“能动手的聊天助手”:普通对话模型只能回你文字,而 OpenClaw 能调用工具去读写文件、整理目录、定时跑任务、抓取信息再汇总。它本身不绑定某一家模型,你给它一个兼容 OpenAI 协议的 API 地址和 Key,它就能跑起来。适合谁?适合想给自己搭一个私有自动化助手、又不想从零写 Agent 框架的新手和小团队。
新手最容易卡住的地方其实不是 OpenClaw 本身,而是三件事:服务器环境、端口放行、模型 Key 怎么填。我见过太多人容器起来了,浏览器却打不开面板,最后发现是防火墙没放行 18789。这篇就按“云服务器 + 本地”两条路径,把部署到 skills 调用的完整闭环走一遍,全程命令可直接复制。
先说结论性的路径差异,方便你选:
| 部署方式 | 适合场景 | 优点 | 注意点 |
|---|---|---|---|
| 云服务器 | 想 7×24 挂着、外网随时访问 | 不占本地资源,关机也在跑 | 要放行端口、注意安全组 |
| 本地部署 | 只想本机用、数据不出门 | 零网络配置,最省心 | 电脑关机服务就停 |
模型接入这块,我建议统一用一个兼容 OpenAI 协议的入口来管 Key,这样云上和本地可以共用同一套配置,换模型只改一个 Model ID。下面会给出具体可复制的配置片段。
2. 部署前把 TaoToken 的 Key 和地址准备好
不管你走云服务器还是本地,OpenClaw 都需要一个模型服务地址。这里用 TaoToken 作为统一入口,它的好处是兼容 OpenAI 的/v1/chat/completions协议,OpenClaw 这类框架基本都能直接对接,不用为每个模型单独改代码。
你需要准备三样东西,我把它叫“三件套”,后面所有配置都围绕它:
- Base URL:
https://taotoken.net/api - API Key:在控制台创建,形如
sk-开头的一串 - Model ID:填你要用的模型标识,比如对话类或代码类模型名
创建 Key 的入口在这里,登录后进控制台新建即可:
控制台地址:https://taotoken.net/console?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite
如果你还没决定用哪个模型,可以先在模型对话页面试一下,确认能正常返回再写进配置:
模型对话体验:https://taotoken.net/models?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite
Key 的管理和查看在 API Keys 页面,建议给 OpenClaw 单独建一个 Key,方便以后按用途区分和吊销:
API Keys 管理:https://taotoken.net/api-keys?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite
这里有个新手常犯的错:把 Base URL 写成带/v1或带具体路径的地址。OpenClaw 的配置项通常只需要根地址,框架自己会拼/v1/chat/completions。如果你填成https://taotoken.net/api/v1,有些版本会拼成/v1/v1/...直接 404。所以统一填https://taotoken.net/api最稳。
另外提醒一句,Key 不要写进会提交到 Git 的文件里。云服务器上建议放在config目录并限制权限,本地就放项目目录下的.env或配置文件,别截图发群里。
3. 云服务器与本地两套可复制配置
这一节是核心,给你两份能直接抄的配置。先讲云服务器,再讲本地,最后给一个统一的模型配置片段。
3.1 云服务器:Docker 起 OpenClaw
假设你已经有一台 2 核 2G 起步的服务器,系统用 Ubuntu 22.04 或 Alibaba Cloud Linux 3 都行。先装 Docker:
curl -fsSL https://get.docker.com | bash systemctl start docker systemctl enable docker docker --version然后建工作目录并拉镜像:
mkdir -p /opt/openclaw/config /opt/openclaw/data cd /opt/openclaw docker pull openclaw/openclaw:2026-stable启动容器,注意端口映射和挂载路径要和后面配置一致:
docker run -d \ --name openclaw \ -p 18789:18789 \ -v /opt/openclaw/config:/app/config \ -v /opt/openclaw/data:/app/data \ --restart=always \ openclaw/openclaw:2026-stable确认在跑:
docker ps | grep openclaw3.2 本地部署:一条命令起服务
本地更简单,装好 Docker Desktop 后执行同样的镜像,只是端口映射到本机:
docker run -d \ --name openclaw \ -p 18789:18789 \ -v ~/openclaw/config:/app/config \ -v ~/openclaw/data:/app/data \ --restart=always \ openclaw/openclaw:2026-stable本地访问就是http://127.0.0.1:18789,不需要放行任何防火墙。
3.3 统一模型配置片段(JSON)
OpenClaw 的模型配置一般放在config目录下的配置文件里。下面这份 JSON 你可以直接改 Key 和 Model ID 后使用,路径对应容器里的/app/config/model.json:
{ "provider": "openai-compatible", "base_url": "https://taotoken.net/api", "api_key": "sk-你的Key填这里", "model": "你的ModelID", "timeout": 60, "max_tokens": 2048 }如果你用的是 TOML 风格的配置(部分版本支持),等价写法是:
[model] provider = "openai-compatible" base_url = "https://taotoken.net/api" api_key = "sk-你的Key填这里" model = "你的ModelID" timeout = 60写完配置后重启容器让它生效:
docker restart openclaw这里再强调一次三件套的对应关系,缺一不可:Base URL 填https://taotoken.net/api,Key 填你创建的sk-串,Model ID 填具体模型名。三个里错一个,请求就会失败,报错形态还不一样,下一节会讲怎么对号入座。
4. 验证请求与 skills 挂载成功
配置写完别急着高兴,先验证模型通不通,再验证 skills 能不能调。
4.1 验证模型连通
最直接的办法是进容器里跑一次初始化或自检命令:
docker exec -it openclaw openclaw init如果配置正确,它会读取model.json并尝试连接模型服务,返回成功即说明三件套没问题。你也可以直接看日志:
docker logs -f openclaw日志里出现类似model connected或成功返回的响应,就说明链路通了。如果卡住或报错,先别动 skills,回到第 5 节排查。
4.2 挂载 skills
OpenClaw 的能力扩展靠 skills。常用的一批可以这样装:
docker exec -it openclaw openclaw skills install file-manager docker exec -it openclaw openclaw skills install summary docker exec -it openclaw openclaw skills install scheduler docker exec -it openclaw openclaw skills install weather装完重启:
docker restart openclaw查看已安装的 skills 列表,确认挂载成功:
docker exec -it openclaw openclaw skills list列表里能看到你装的几个名字,就说明 skills 挂载完成。
4.3 打开面板做一次真实调用
浏览器访问http://你的服务器IP:18789(本地就是http://127.0.0.1:18789)。首次进入会生成配对码或 Token,保存好。进后台后,在对话里让它做一件具体的事,比如“帮我列出当前目录下的文件”,如果它调用了 file-manager 并返回结果,整个闭环就跑通了。
这一步是检验成果的关键:模型通了、skills 挂了、面板能对话,三者同时成立才算成功。
5. 常见报错逐条排查
新手遇到的报错其实就那么几类,我按真实报错信息给你对照。
401 Unauthorized:Key 错了或没生效。检查api_key是不是完整的sk-串,有没有多余空格,配置改完有没有docker restart openclaw。还有一种情况是 Key 被吊销了,去 API Keys 页面确认状态。
local proxy failed / connection refused:Base URL 写错或网络不通。确认填的是https://taotoken.net/api,不要带/v1。云服务器上可以先curl一下确认能出网。
reading choices 相关报错:通常是返回结构不符合预期,多半是 Model ID 填错,或者 Base URL 拼出了重复路径。回到配置把 Model ID 换成确认可用的模型名。
OAuth / 鉴权跳转类报错:说明请求被当成了需要网页登录的流程,一般是地址填成了控制台地址而不是 API 地址。Base URL 必须是https://taotoken.net/api,不是网页地址。
端口占用 / 容器起不来:先删旧容器再起:
docker rm -f openclaw然后重新执行第 3 节的docker run命令。
面板打不开:90% 是防火墙没放行 18789。云服务器要去安全组或防火墙加一条入方向 TCP 18789 规则,授权对象0.0.0.0/0。本地则检查端口有没有被别的程序占用。
Docker 安装失败:换国内镜像源重装:
yum install -y yum-utils yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo yum install -y docker-ce docker-ce-cli containerd.io systemctl start docker排查顺序建议固定成:先看容器在不在跑,再看日志报什么,再对号入座上面的条目。别一上来就重装,多数问题改一行配置就好。
6. 长期跑 Agent 就用 Coding Plan 统一管 Key
如果你只是偶尔用用,按上面的配置就够了。但如果你打算让 OpenClaw 长期挂着跑定时任务、自动化流程,Key 的额度和模型切换会变成日常问题。这时候建议用 Coding Plan 来统一管理,把对话、代码、Agent 调用都收敛到一个入口,换模型不用改 OpenClaw 的配置,只改 Model ID 就行。
长期编码和 Agent 场景的入口在这里:
Coding Plan:https://taotoken.net/coding-plan?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite
接入文档里有各框架的对接示例,OpenClaw 这类兼容 OpenAI 协议的工具照着改 Base URL 和 Key 即可:
接入文档:https://taotoken.net/doc?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite
最后给你一个我实测下来最省事的习惯:把三件套写进一个.env文件,配置里用变量引用,这样云上和本地共用一份,换 Key 只改一处。OpenClaw 跑起来之后,先让它做一件小事验证,再逐步加 skills,别一上来就装一堆,出问题不好定位。