【AI智能体】腾讯云服务器部署OpenClaw对接飞书实战详解:从环境初始化到消息联调
1. 为什么要在腾讯云上跑 OpenClaw 并接入飞书OpenClaw 是一个开源的 AI 智能体框架它能让你在飞书、钉钉、Telegram 这类日常聊天工具里直接“”一个机器人用自然语言派活它就去执行文件整理、信息抓取、定时推送、调用大模型生成内容等操作。说白了它把大模型从“聊天窗口”搬进了“工作流”让 AI 从被动问答变成主动干活。适合谁适合想给自己或小团队搭一个 7x24 小时在线助理的开发者、运维、独立创业者尤其是已经在用飞书做团队协作的人。我这次的目标很明确在腾讯云轻量应用服务器Lighthouse上从零部署 OpenClaw然后打通飞书机器人的消息链路做到在飞书里发一句话服务器上的 OpenClaw 能收到、能处理、能回消息。整个过程覆盖系统初始化、依赖安装、飞书应用凭证配置、回调验证最后做一次端到端消息收发验证。为什么不用本地电脑因为本地电脑关机、休眠、断网都会让机器人掉线而云服务器可以全天候在线公网 IP 稳定飞书回调也能直接打到服务器上。腾讯云轻量服务器对新手比较友好控制台有可视化操作重装系统、开放端口、查看日志都不需要太多 Linux 功底。选地域时建议优先考虑网络出口质量好的区域这样调用大模型 API 时延迟更低、连接更稳。配置上我建议 2 核 4G 起步如果预算允许直接上 4 核 8G因为 OpenClaw 在处理复杂任务时会同时加载模型配置、渠道连接和技能包内存吃紧容易卡死。这一篇我会把每一步的命令、配置文件片段、飞书侧权限清单都写清楚你照着做就能复现。中间踩过的坑我也会在排障章节里列出来包括 401、回调验证失败、端口不通这些常见问题。2. TaoToken 前置准备拿到 API Key 和 Base URLOpenClaw 本身不绑定某一家大模型它通过 provider 配置来调用兼容 OpenAI 接口的服务。这里我用 TaoToken 作为模型接入层原因是它提供统一的 API 入口配置简单兼容 OpenAI 的 completions 接口格式OpenClaw 里直接填 Base URL 和 Key 就能用。你需要先拿到两样东西API Key 和 Base URL。第一步打开 TaoToken 官网注册并登录。官网地址是 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 注册流程不复杂邮箱验证后就能进控制台。第二步进入控制台创建 API Key。控制台入口在 https://taotoken.net/console?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 登录后找到 API Keys 页面点创建复制生成的 Key格式通常是sk-开头的一串字符。这个 Key 只显示一次建议先存到安全的地方。第三步确认 Base URL。TaoToken 的 API 地址是 https://taotoken.net/api 注意这个地址后面不加 UTM 参数直接作为 OpenClaw 配置里的baseUrl使用。如果你用的是 OpenAI 兼容模式通常需要在末尾保留/v1具体以文档为准。接入文档在 https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 里面有各语言调用示例和模型列表。第四步确认你要用的 Model ID。TaoToken 支持多种模型你可以在模型对话页面先试一下哪个模型符合你的需求入口是 https://taotoken.net/chat?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 。比如你想用 Claude 系列做代码任务或者用通用模型做问答记下对应的模型 ID后面填到 OpenClaw 配置里。如果你打算长期跑编码类或 Agent 类任务可以关注 Coding Plan入口是 https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 适合高频调用场景。API Keys 管理页在 https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 后续要轮换 Key 也在这里操作。拿到 Key 和 Base URL 后先别急着配 OpenClaw可以用 curl 在服务器上测一下连通性确认网络和凭证都没问题。命令如下curl -X POST https://taotoken.net/api/v1/chat/completions \ -H Authorization: Bearer sk-你的Key \ -H Content-Type: application/json \ -d { model: 你的模型ID, messages: [{role: user, content: ping}] }如果返回里有choices字段和内容说明 Key 和 Base URL 都正确。如果返回 401检查 Key 是否复制完整、有没有多余空格如果返回连接超时检查服务器安全组是否放行了出站 443 端口。3. 腾讯云服务器初始化与 OpenClaw 可复制配置这一章是核心操作部分。假设你已经在腾讯云轻量应用服务器上选好了 OpenClaw 镜像并开机接下来做系统初始化和 OpenClaw 配置。先登录服务器。在腾讯云控制台点“登录”进入命令行窗口。第一件事是更新系统包并安装基础依赖sudo apt update sudo apt upgrade -y sudo apt install -y curl git python3 python3-pip nodejs npm如果你的镜像已经预装了 OpenClaw可以跳过安装直接验证版本openclaw --version如果没有预装按官方文档安装。安装完成后执行初始化配置openclaw onboard这个命令会进入交互式配置流程。它会问你几个问题是否创建默认配置、选择大模型 provider、是否配置 channel、是否配置 skills。这里我建议先跳过 channel 和 skills只做基础初始化后面再单独配避免一次填太多出错。初始化完成后配置大模型 provider。OpenClaw 的配置可以用openclaw config set命令写入也可以直接编辑配置文件。配置文件通常位于~/.openclaw/config.json或项目目录下的config.json。我用 JSON 片段的方式写清楚你可以直接复制替换{ models: { providers: { taotoken: { baseUrl: https://taotoken.net/api/v1, apiKey: sk-你的TaoTokenKey, api: openai-completions, models: [ { id: 你的模型ID, name: 主力模型 } ] } } } }如果你更习惯用命令行写入等价命令是openclaw config set models.providers.taotoken --json { baseUrl: https://taotoken.net/api/v1, apiKey: sk-你的TaoTokenKey, api: openai-completions, models: [ { id: 你的模型ID, name: 主力模型 } ] }写入后设置默认生效的模型openclaw models set taotoken/你的模型ID然后验证模型是否可用openclaw models list openclaw chat 你好测试一下如果能看到模型回复说明 provider 配置成功。接下来配置飞书渠道。先添加 channelopenclaw channels add选择飞书它会要求你输入飞书应用的 App ID 和 App Secret。这两个值需要你先在飞书开放平台创建应用后拿到。创建应用的步骤在下一章详细写。配置完 channel 后启动 gateway 监听端口openclaw gateway --port 18789 --verbose这个命令会让 OpenClaw 在 18789 端口监听飞书的回调请求。你需要在腾讯云安全组里放行这个端口的入站 TCP 流量否则飞书回调打不进来。安全组配置在腾讯云控制台的“防火墙”页面添加一条规则协议 TCP端口 18789来源 0.0.0.0/0或者飞书回调 IP 段更安全。如果你用的是 Cline MCP 或 Claude Code 这类工具做辅助开发配置里同样需要填全三件套Base URL、API Key、Model ID。比如 Claude Code 的 settings 里{ env: { ANTHROPIC_BASE_URL: https://taotoken.net/api, ANTHROPIC_API_KEY: sk-你的TaoTokenKey, ANTHROPIC_MODEL: 你的模型ID } }Codex 的auth.json类似{ baseUrl: https://taotoken.net/api/v1, apiKey: sk-你的TaoTokenKey, model: 你的模型ID }这些配置和 OpenClaw 用的是同一套凭证配一次可以多处复用。4. 飞书应用配置与端到端消息验证飞书侧配置分四步创建应用、配置事件订阅、导入权限、验证回调。第一步进入飞书开放平台创建企业自建应用。填写应用名称、描述创建后进入应用管理页。在“凭证与基础信息”里找到 App ID 和 App Secret复制到 OpenClaw 的 channel 配置里。第二步配置事件订阅。在应用管理页左侧找到“事件与回调”点击“添加事件”在事件列表里选择“消息与群组”分类勾选“接收消息”确定。然后在“回调配置”里填写请求地址格式是http://你的服务器公网IP:18789/feishu/callback或者如果你配了域名和 HTTPS用https://你的域名/feishu/callback。飞书会发一个 challenge 验证请求OpenClaw 的 gateway 需要能正确响应。如果验证失败检查 gateway 是否在运行、端口是否放行、路径是否匹配。第三步导入权限。在“权限管理”页面点击“批量导入权限”粘贴以下 JSON{ scopes: { tenant: [ contact:user.base:readonly, im:chat, im:chat:read, im:chat:update, im:message, im:message.group_at_msg:readonly, im:message.p2p_msg:readonly, im:message:send_as_bot, im:resource ], user: [] } }点击申请开通。这些权限覆盖了读取用户基础信息、收发单聊和群聊消息、以机器人身份发送消息、读取消息资源等。少一个都可能导致消息收不到或回不了。第四步发布应用。在“版本管理与发布”里创建版本并发布等待管理员审核通过。审核通过后在飞书里搜索你的机器人名称添加到群聊或直接单聊。端到端验证在飞书里给机器人发一条消息比如“你好帮我查一下今天天气”。观察服务器上 gateway 的 verbose 日志应该能看到收到消息、调用模型、返回响应的完整链路。如果飞书里收到了回复说明整条链路打通。如果没收到回复按顺序排查gateway 日志有没有收到请求、模型调用有没有报错、飞书权限是否开通、机器人是否已发布。常见错误在下一章列。5. 常见报错排查401、回调失败、端口不通这一章列几个我实际遇到过的报错和排查方法。401 Unauthorized模型调用返回 401通常是 API Key 错误或过期。检查config.json里的apiKey是否和 TaoToken 控制台里的一致有没有多余空格或换行。如果 Key 刚轮换过记得更新配置并重启 gateway。另外确认baseUrl是否正确TaoToken 的地址是https://taotoken.net/api/v1少写/v1或写成其他路径都会导致 401 或 404。local proxy failed / connection refused这个报错通常出现在 gateway 启动时表示本地代理或端口绑定失败。检查 18789 端口是否被占用sudo lsof -i :18789如果被占用换一个端口比如 18790同时更新飞书回调地址。另外检查防火墙是否放行sudo ufw status sudo ufw allow 18789/tcp腾讯云安全组也要同步放行。reading choices 报错这个错误说明模型返回的 JSON 里没有choices字段通常是模型 ID 写错、provider 不兼容、或者请求体格式不对。检查models.providers里的api字段是否为openai-completions模型 ID 是否在 TaoToken 支持的列表里。可以先用 curl 单独测一下模型接口确认返回结构。OAuth 相关报错如果你在配置 Claude Code 或 Codex 时遇到 OAuth 失败检查ANTHROPIC_BASE_URL和ANTHROPIC_API_KEY是否配对。有些工具会优先读环境变量如果环境变量里残留了旧值会覆盖配置文件。用env | grep ANTHROPIC检查一下。飞书回调验证失败飞书发 challenge 请求时gateway 必须返回正确的 challenge 值。检查 gateway 日志有没有收到/feishu/callback请求。如果没收到说明请求没打到服务器检查安全组、端口、路径。如果收到了但验证失败检查 OpenClaw 版本是否支持飞书回调协议必要时升级。消息收到但不回复检查飞书权限里im:message:send_as_bot是否开通机器人是否已发布并通过审核。另外检查 OpenClaw 的 channel 配置里 App ID 和 App Secret 是否正确。排障时建议把 gateway 的 verbose 日志开着实时看请求和响应。日志里通常会直接告诉你哪一步失败了。6. 长期运行与模型接入建议部署完成后建议用systemd或pm2把 gateway 做成守护进程避免 SSH 断开后服务停止。用 systemd 的话创建一个 service 文件[Unit] DescriptionOpenClaw Gateway Afternetwork.target [Service] Typesimple Userubuntu WorkingDirectory/home/ubuntu ExecStart/usr/local/bin/openclaw gateway --port 18789 --verbose Restartalways RestartSec5 [Install] WantedBymulti-user.target保存到/etc/systemd/system/openclaw.service然后sudo systemctl daemon-reload sudo systemctl enable openclaw sudo systemctl start openclaw sudo systemctl status openclaw这样服务器重启后 gateway 会自动拉起。模型接入方面如果你后续要跑大量编码任务或 Agent 任务可以关注 TaoToken 的 Coding Plan入口是 https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 适合高频调用。API Key 管理在 https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 接入文档在 https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 。模型对话测试在 https://taotoken.net/chat?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 。最后提醒一点飞书回调地址如果暴露在公网建议加一层签名校验或 IP 白名单避免被恶意请求刷接口。OpenClaw 的 gateway 支持配置校验密钥具体看文档。整套流程跑通后你可以在飞书里直接 机器人 派活比如“每天早上九点把科技新闻摘要发给我”它就会按你的配置定时执行。