1. 轻量应用服务器部署 OpenClaw 到底在解决什么问题
OpenClaw 是一个能“指挥”计算机干活的开源 AI Agent,你可以把它理解成一个住在服务器里的数字员工:它能读写文件、执行 Shell 命令、维护跨会话记忆,还能通过消息平台跟你对话。但很多人第一次接触它时,卡住的地方往往不是“它是什么”,而是“我该怎么把它跑起来,并且让它真的能调用大模型”。
这就是轻量应用服务器 + 千帆大模型这套组合的价值所在。轻量应用服务器提供了一台开箱即用的机器,镜像里已经预置了 OpenClaw 的运行环境;千帆大模型则负责提供推理能力,让 OpenClaw 的对话和任务执行有“大脑”可用。两者之间靠 APIKey 打通,而 18789 端口则是你访问 OpenClaw 控制台网页的入口。
我实测下来,整个流程里最容易出问题的三个点分别是:APIKey 填错位置、18789 端口没放行、以及模型配置后没有真正验证调用是否成功。这篇内容就围绕这三个点展开,把每一步都写成可以直接复制粘贴的操作,适合刚拿到服务器、还没跑通第一条对话的小白。
先明确一下适合谁看:如果你手上有一台轻量应用服务器,想部署一个能长期在线、能调用千帆大模型的 AI Agent,并且希望通过网页控制台直接和它聊天,那这篇就是为你写的。如果你只是想本地跑个 demo,那用本地环境更省事;但如果你想要 7×24 小时在线、能接消息平台、能执行后台任务的 Agent,服务器部署才是正解。
OpenClaw 基于 Moltbot 框架,核心能力包括文件操作(read/write/edit)、终端执行(exec)、内存管理(MEMORY.md 和 memory/YYYY-MM-DD.md)、跨会话协作(sessions_spawn)。这些能力决定了它不是那种“只会在聊天框里回话”的机器人,而是能真正动你服务器上文件和命令的 Agent。所以部署时对权限和端口的管理要格外小心,尤其是 18789 端口对应的控制台链接,里面带着身份验证凭据,泄露出去等于把管理员权限交出去。
下面从环境准备开始,一步步走到验证模型调用成功。
2. TaoToken 前置准备与千帆大模型 APIKey 获取
在正式配置 OpenClaw 之前,需要先把“模型侧”的凭据准备好。OpenClaw 本身不生产模型能力,它只是一个调度框架,真正干活的是背后的大模型 API。这里有两种主流接法:一种是直接用千帆大模型的 APIKey,另一种是通过 TaoToken 这类聚合入口来统一管理模型调用。
TaoToken 的定位是模型调用入口,官网地址是 https://taotoken.net/?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= ,API 地址是 https://taotoken.net/api 。它的好处是你可以在一个地方管理多个模型的 Key,不用在千帆、其他模型平台之间来回切换。对于 OpenClaw 这种需要频繁调用模型的 Agent 来说,统一入口能省掉不少配置上的麻烦。
如果你选择直接用千帆大模型,流程是这样的:进入千帆控制台,开通大模型服务,然后在 APIKey 管理页面创建一个新的 Key。这个 Key 通常以特定前缀开头,创建后只显示一次,务必当场复制保存。如果你用的是 CodingPlan 方式,需要先在千帆控制台完成订阅并生成专属 APIKey,再回到轻量应用服务器的实例详情页刷新,系统会自动识别可用的 CodingPlan。
如果你选择通过 TaoToken 接入,操作路径是:先到 https://taotoken.net/api-keys 创建 APIKey,这个页面就是专门管理 Key 的地方。创建完成后,你会拿到一串 Key,后面在 OpenClaw 的环境变量里会用到它。TaoToken 的模型对话入口在 https://taotoken.net/chat ,你可以先用这个页面测试 Key 是否有效,确认能正常对话后再去配置 OpenClaw,这样能避免“到底是 Key 错了还是 OpenClaw 配错了”这种排查困境。
这里有个关键点:无论你用哪种方式,最终 OpenClaw 需要的是三件套——Base URL、APIKey、Model ID。Base URL 决定请求发到哪里,APIKey 决定你有没有权限,Model ID 决定用哪个模型。这三者缺一不可,而且必须匹配。比如你拿的是千帆的 Key,Base URL 就要指向千帆的接口地址;如果你用 TaoToken,Base URL 就指向 https://taotoken.net/api 。
对于长期编码或 Agent 场景,可以考虑 Coding Plan,入口在 https://taotoken.net/coding-plan 。它的优势是适合高频调用,不用每次担心 Token 用量。如果你的 OpenClaw 只是偶尔聊聊天,按量计费也够用;但如果你打算让它长期在线、频繁执行任务,Coding Plan 更划算。
准备好 Key 之后,先别急着往 OpenClaw 里填。建议先在模型对话页面发一条测试消息,确认 Key 能正常返回结果。这一步花不了一分钟,但能帮你排除掉后面一半的报错。确认 Key 有效后,再进入服务器配置环节。
3. 可复制配置:环境变量、APIKey 填写位置与 18789 端口放行
这一节是整篇的核心,所有配置都写成可以直接复制的形式。先说明一点:轻量应用服务器的 OpenClaw 镜像通常已经预装了运行环境,你不需要从零编译,只需要改配置、放行端口、启动服务。
首先是环境变量配置。OpenClaw 读取模型配置的方式通常是通过环境变量或配置文件。以环境变量为例,你可以在服务器的 shell 里执行以下命令,把 Base URL、APIKey、Model ID 写进去。注意把引号里的内容替换成你自己的实际值:
export OPENCLAW_BASE_URL="https://taotoken.net/api" export OPENCLAW_API_KEY="sk-你的实际APIKey" export OPENCLAW_MODEL_ID="你的模型ID"如果你希望这些变量在每次登录时自动生效,可以把它们写进~/.bashrc或~/.profile文件末尾。用编辑器打开文件,追加同样的 export 语句,保存后执行source ~/.bashrc让配置立即生效。
如果你更习惯用配置文件的方式,OpenClaw 通常会在用户目录下读取一个 JSON 或 TOML 格式的配置。以 JSON 为例,路径可能是~/.openclaw/config.json,内容结构如下:
{ "model": { "base_url": "https://taotoken.net/api", "api_key": "sk-你的实际APIKey", "model_id": "你的模型ID" }, "gateway": { "port": 18789 } }注意这里的base_url末尾不要多加斜杠,api_key要完整复制,不要带空格。model_id必须和你在模型平台看到的 ID 完全一致,大小写敏感。如果你用的是千帆 CodingPlan,Base URL 和 Model ID 以千帆控制台显示的为准;如果你用 TaoToken,Base URL 就是https://taotoken.net/api。
接下来是 18789 端口放行。OpenClaw 的控制台网页通过 18789 端口访问,如果防火墙没放行,你在浏览器里会看到连接超时或拒绝访问。在轻量应用服务器的管理控制台里,找到“防火墙”或“安全组”设置,添加一条入站规则:协议选 TCP,端口填 18789,来源可以先填0.0.0.0/0方便测试,但正式使用时建议限制为你的固定 IP,避免控制台链接被扫描到。
如果你习惯用命令行操作,也可以用ufw或firewalld放行。以ufw为例:
sudo ufw allow 18789/tcp sudo ufw reload放行之后,用sudo ufw status确认规则已经生效。如果你用的是云厂商的安全组,命令行放行还不够,必须在控制台的安全组里也加一条规则,两层都放行才能访问。
配置完成后,启动 OpenClaw 服务。常用命令如下:
openclaw gateway install openclaw gateway start openclaw gateway statusinstall会安装服务并设置开机自启,start启动服务,status查看运行状态。如果状态显示 running,说明服务已经起来了。如果启动失败,用openclaw logs --follow查看日志,日志里通常会直接告诉你哪一项配置有问题。
这里要提醒一句:控制台链接里包含身份验证凭据,任何拿到链接的人都能绕过登录直接进入管理员控制台。所以不要把链接发到公开群组或截图分享,测试完成后如果不再需要外网访问,可以把 18789 端口的来源限制为你的 IP。
4. 验证请求:确认 OpenClaw 真的调用了千帆大模型
配置写完、服务启动,不代表模型调用就成功了。很多人卡在“服务是 running,但对话没反应”这个状态。所以这一步要做的,是主动验证模型调用链路是否打通。
最直接的验证方式是通过控制台网页发一条消息。在浏览器里打开http://你的服务器IP:18789,如果端口放行正确、服务正常运行,你会看到 OpenClaw 的控制台界面。在对话框里输入一句简单的话,比如“你好,请回复你的模型名称”,然后观察返回。
如果返回正常,说明 Base URL、APIKey、Model ID 三件套都配对了。如果返回报错,根据错误类型判断:401 通常是 APIKey 无效或没填对;404 通常是 Base URL 或 Model ID 写错;超时通常是网络不通或端口没放行。
除了网页验证,也可以用命令行直接测试模型接口,排除 OpenClaw 本身的干扰。用curl发一个请求到 TaoToken 的 API:
curl -X POST "https://taotoken.net/api/v1/chat/completions" \ -H "Authorization: Bearer sk-你的实际APIKey" \ -H "Content-Type: application/json" \ -d '{ "model": "你的模型ID", "messages": [{"role": "user", "content": "你好"}] }'如果这条命令能返回正常的 JSON 结果,说明 Key 和 Base URL 没问题,问题就出在 OpenClaw 的配置读取上。如果这条命令也报错,那就要先解决 Key 或网络的问题。
还有一种验证方式是查看 OpenClaw 的日志。执行openclaw logs --follow,然后在网页里发一条消息,观察日志里有没有出现模型请求的记录。如果日志里显示请求发出去了但返回错误,错误信息会直接告诉你原因。如果日志里根本没有请求记录,说明 OpenClaw 没有读到模型配置,需要检查环境变量或配置文件路径是否正确。
我试过的一个常见坑是:环境变量写进了~/.bashrc,但 OpenClaw 是以服务方式启动的,服务启动时不会加载用户的 bashrc,导致读不到变量。解决办法是把配置写进 OpenClaw 自己的配置文件,或者在服务的 systemd unit 里通过Environment=指定变量。用openclaw gateway install安装的服务,通常会在/etc/systemd/system/下生成 unit 文件,你可以编辑它,在[Service]段里加上:
Environment="OPENCLAW_BASE_URL=https://taotoken.net/api" Environment="OPENCLAW_API_KEY=sk-你的实际APIKey" Environment="OPENCLAW_MODEL_ID=你的模型ID"改完后执行sudo systemctl daemon-reload和openclaw gateway restart,让配置生效。这样无论服务以什么方式启动,都能读到正确的变量。
验证成功后,你可以在控制台里让 OpenClaw 执行一个简单任务,比如“列出当前目录下的文件”,观察它是否能调用 exec 能力并返回结果。这一步能同时验证模型调用和 Agent 执行链路。
5. 本篇常见错误排查:401、local proxy failed、reading choices、OAuth
这一节把部署过程中最常遇到的几类报错集中列出来,对照着排查能省很多时间。
第一类是 401 错误。报错信息通常是401 Unauthorized或invalid api key。原因基本只有一个:APIKey 不对。可能是复制时漏了字符、带了空格、或者 Key 已经过期被禁用。解决办法是回到 APIKey 管理页面重新生成一个,然后完整替换配置里的值。如果你用的是 TaoToken,到 https://taotoken.net/api-keys 重新创建;如果用千帆,到千帆控制台的 APIKey 页面重新生成。替换后重启服务再试。
第二类是local proxy failed或类似的连接失败报错。这通常意味着 OpenClaw 尝试请求模型接口但网络不通。先确认 Base URL 写对了,TaoToken 的地址是https://taotoken.net/api,不要写成别的路径。然后确认服务器能正常访问外网,可以用curl -I https://taotoken.net/api测试连通性。如果服务器本身没有外网出口,那任何模型调用都会失败,需要先解决网络问题。
第三类是reading choices相关的报错,比如error reading choices或返回结构解析失败。这类错误通常出现在模型返回的 JSON 结构和 OpenClaw 预期的结构不一致时。可能的原因是 Model ID 写错了,导致请求发到了错误的模型端点;或者 Base URL 指向了一个不兼容 OpenAI 格式的接口。解决办法是确认 Model ID 和 Base URL 匹配,并且接口兼容 OpenAI 的 chat completions 格式。TaoToken 的接口是兼容的,所以用https://taotoken.net/api作为 Base URL 时,Model ID 填对即可。
第四类是 OAuth 相关报错。如果你在配置消息平台(飞书、钉钉、企业微信、QQ)时遇到 OAuth 授权失败,先检查你填的 App ID、App Secret、回调地址是否和平台后台一致。消息平台配置是可选项,如果你暂时不需要接入这些平台,可以先跳过,专注把网页控制台的模型调用跑通。等核心链路稳定后,再回来配消息平台。
除了这四类,还有一个高频问题是 18789 端口访问不了。表现是浏览器一直转圈或提示连接被拒绝。排查顺序是:先确认 OpenClaw 服务在运行(openclaw gateway status),再确认服务器本机防火墙放行了 18789(sudo ufw status),最后确认云厂商安全组也放行了 18789。三层都确认后,用curl http://localhost:18789在服务器本机测试,如果本机能通但外网不通,那问题一定在安全组或防火墙。
还有一个容易忽略的点:控制台链接里的凭据。如果你把链接分享出去后又想收回权限,光改端口是不够的,需要在 OpenClaw 里重新生成凭据或重启服务让旧链接失效。具体方式取决于 OpenClaw 的版本,通常在配置里可以重置。
排查时养成看日志的习惯。openclaw logs --follow会实时输出请求和错误,大部分问题在日志里都有明确提示。比起盲目改配置,先看日志能快很多。
6. 长期使用建议与模型调用入口选择
把 OpenClaw 跑起来只是第一步,真正决定体验的是模型调用的稳定性和成本。如果你只是偶尔用网页控制台聊几句,按量计费完全够用;但如果你打算让 OpenClaw 长期在线、接消息平台、频繁执行任务,那模型调用的频率会高很多,这时候统一入口和套餐方式就值得考虑。
TaoToken 的模型对话入口在 https://taotoken.net/chat ,你可以用它快速测试不同模型的效果,找到最适合你任务的 Model ID。控制台在 https://taotoken.net/console ,APIKey 管理在 https://taotoken.net/api-keys ,接入文档在 https://taotoken.net/doc 。这几个页面建议收藏,后面改配置、换模型、排查 Key 问题都会用到。
对于长期编码或 Agent 场景,Coding Plan 的入口是 https://taotoken.net/coding-plan 。它的逻辑是提前锁定用量,适合高频调用。你可以先估算一下 OpenClaw 每天的请求量,如果每天几十次以上,套餐方式通常比按量更省心。
另外,OpenClaw 的 Skills 配置也值得花点时间。轻量应用服务器默认提供百度搜索、百度百科等 Skills,你可以按需启用。如果默认的不够用,可以清空输入框自行输入 Skills,或者到 OpenClaw 官网获取更多。Skills 决定了 Agent 能调用哪些外部能力,配得好能让它从“会聊天”变成“能干活”。
最后提醒一句:控制台链接的凭据安全。部署完成后,如果不再需要外网访问,把 18789 端口的来源限制为你的固定 IP;如果链接曾经泄露过,及时重置凭据。OpenClaw 能执行 Shell 命令和文件操作,权限泄露的后果比普通聊天机器人严重得多。
整个流程走下来,核心就是三件事:Key 配对、端口放行、验证调用。把这三步做扎实,后面换模型、加 Skills、接消息平台都是在这个基础上扩展。