Ubuntu 云服务部署 OpenClaw 并接入飞书机器人

一、部署openclaw

点击立即登录

1.更新系统包索引

复制代码
sudo apt update

2.安装 curl

复制代码
sudo apt install -y curl

3.安装Node.js(LTS版本)

复制代码
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash 
复制代码
sudo apt-get install -y nodejs
#安装

4.配置npm镜像(加速国内访问)

复制代码
npm config set registry https://registry.npmmirror.com

5.安装openclaw

复制代码
curl -fsSL https://openclaw.ai/install.sh |bash

用键盘方向键选择,回车键确认

选择yes

这里默认,选择回车

6.选择大模型(以Kimi为例)

这里我选择kimi,因为新用户注册有15元的额度

我们先去kimi平台复制密钥信息,后面要用到

6.1. kimi平台配置

获取Kimi API Key

访问kimi平台,进入用户中心

左侧菜单选择API Key管理 ,然后新建,名字自己随便起,点击确定后先把密钥复制

这里密钥只会显示一次,一定要复制后确定,如果没复制到,就新建一个重复上面的步骤

我们选择kimi后回车

地区选择 .cn

默认选择第一个,回车

把前面复制的密钥粘贴进来

默认,回车

选择最后一个 skip for now

选择最后一个

是否设置技能,选no

空格选择第一个,人后回车

选择第二个

安装完成

7.验证安装

复制代码
openclaw status

若显示 running 则表示网关启动成功

8.本地访问 Openclaw Web UI

电脑本地 Ctrl+R

复制代码
ssh  -N  -L 18789:127.0.0.1:18789 root@172.16.175.146
##去掉 -N 可以本地ssh连接使用命令

选择yes

172.16.175.146换成你的服务器公网地址就行,还有问题就是你的防火墙去配置一下就好了,根据实际情况替换用户名和地址

⚠️ 确保 SSH 转发正常,服务器开启端口转发:AllowTcpForwarding yes

复制代码
##本地known_hosts冲突或者服务器重装过系统
##地址填你自己对应的
ssh-keygen -R 123.56.117.132

如果远程连接不上,查看服务器端口是否放行,端口转发是否为yes(AllowTcpForwarding yes)

9.获取访问Token

复制代码
cat /root/.openclaw/openclaw.json | grep token

1.解决 openclaw 命令无法使用问题

echo 'export PATH="$(npm prefix -g)/bin:$PATH"' >> ~/.bashrc



2.验证openclaw 命令,查询openclaw状态

openclaw status

3.通过powershell shh链接ubuntu

ssh -N -L 18789:127.0.0.1:18789 ubuntu@172.16.175.146

4.window 访问openclaw web ui

http://localhost:18789/#token=替换为安装后生成的token
要先本地连接ssh服务才能这样用否则回环地址无效

⚠️ 确保 SSH 转发正常,服务器开启端口转发:AllowTcpForwarding yes

二、接入飞书

1.进入飞书开放平台

飞书开放平台

点击进入开发者后台

填写名称和描述,然后创建应用,可以定义他的图标和颜色,我这里已经有一个机器人了,我就不创建了

2.飞书机器人权限

  • 进入「权限管理」
  • 点击「导入权限」,粘贴以下 JSON 权限配置(可按需精简):
复制代码
{
  "scopes": {
    "tenant": [
      "aily:file:read",
      "aily:file:write",
      "application:application.app_message_stats.overview:readonly",
      "application:application:self_manage",
      "application:bot.menu:write",
      "cardkit:card:write",
      "contact:contact.base:readonly",
      "contact:user.employee_id:readonly",
      "corehr:file:download",
      "docs:document.content:read",
      "event:ip_list",
      "im:app_feed_card:write",
      "im:biz_entity_tag_relation:read",
      "im:biz_entity_tag_relation:write",
      "im:chat",
      "im:chat.access_event.bot_p2p_chat:read",
      "im:chat.announcement:read",
      "im:chat.announcement:write_only",
      "im:chat.chat_pins:read",
      "im:chat.chat_pins:write_only",
      "im:chat.collab_plugins:read",
      "im:chat.collab_plugins:write_only",
      "im:chat.managers:write_only",
      "im:chat.members:bot_access",
      "im:chat.members:read",
      "im:chat.members:write_only",
      "im:chat.menu_tree:read",
      "im:chat.menu_tree:write_only",
      "im:chat.moderation:read",
      "im:chat.tabs:read",
      "im:chat.tabs:write_only",
      "im:chat.top_notice:write_only",
      "im:chat.widgets:read",
      "im:chat.widgets:write_only",
      "im:chat:create",
      "im:chat:delete",
      "im:chat:moderation:write_only",
      "im:chat:operate_as_owner",
      "im:chat:read",
      "im:chat:readonly",
      "im:chat:update",
      "im:datasync.feed_card.time_sensitive:write",
      "im:message",
      "im:message.group_at_msg:readonly",
      "im:message.group_msg",
      "im:message.p2p_msg:readonly",
      "im:message.pins:read",
      "im:message.pins:write_only",
      "im:message.reactions:read",
      "im:message.reactions:write_only",
      "im:message.urgent",
      "im:message.urgent.status:write",
      "im:message.urgent:phone",
      "im:message.urgent:sms",
      "im:message:readonly",
      "im:message:recall",
      "im:message:send_as_bot",
      "im:message:send_multi_depts",
      "im:message:send_multi_users",
      "im:message:send_sys_msg",
      "im:message:update",
      "im:resource",
      "im:tag:read",
      "im:tag:write",
      "im:url_preview.update",
      "im:user_agent:read",
      "sheets:spreadsheet",
      "wiki:wiki:readonly"
    ],
    "user": [
      "aily:file:read",
      "aily:file:write",
      "contact:contact.base:readonly",
      "im:chat.access_event.bot_p2p_chat:read"
    ]
  }
}

3.添加应用能力

  • 在「应用能力」中启用「机器人」

4.openclaw配置飞书

4.1.添加飞书渠道
复制代码
openclaw channels add

选择yes

选择飞书

选择npm安装

选择第一个App Secret

这里提示要输入 APP Secret ,我们去飞书开放平台复制

默认回车就行

china

选择第二个

Open - respond in all groups (requires mention)

Finished

yes

open

如图选择进行操作

4.2.重启网关

输入命令重启网关然后会到飞书开放平台

复制代码
openclaw gateway restart
4.3.配送飞书事件订阅

⚠️ 注意:在配置事件订阅前,请确保已完成 OpenClaw 渠道添加并启动网关。

  • 进入「事件订阅」
  • 选择 「使用长连接接收事件」(WebSocket)
  • 添加事件:im.message.receive_v1
4.4 发布应用
  • 进入「版本管理与发布」
  • 创建版本,提交审核(企业自建应用通常自动通过)

三、验收

1.发送测试消息

  • 在飞书客户端中搜索你的应用名称
  • 进入聊天窗口,发送消息
  • 机器人应能正常回复

五、总结

✅ 已完成内容

1. 环境搭建
  • Ubuntu 系统基础环境配置

  • Node.js 运行环境安装

  • OpenClaw 核心服务部署

2. 大模型集成
  • 选择 Kimi 作为对话模型

  • 配置 API Key 认证

  • 完成模型与 OpenClaw 的对接

3. 飞书机器人接入
  • 创建飞书企业自建应用

  • 配置应用权限和机器人能力

  • 通过 OpenClaw 添加飞书渠道

  • 设置 WebSocket 长连接接收消息事件

4. 本地访问配置
  • SSH 端口转发实现本地访问 Web UI

  • 获取访问 Token 进行安全认证

🎯 最终成果

  • OpenClaw 网关状态running(正常运行)

  • 飞书机器人:可在飞书客户端搜索到并正常对话

  • 消息响应:用户发送消息后,机器人能通过 Kimi 模型智能回复

💡 注意事项

  1. 密钥管理:Kimi API Key 和飞书 App Secret 需妥善保存

  2. 网络配置:确保服务器防火墙放行必要端口,SSH 转发配置正确

  3. 权限控制:飞书应用权限可按实际需求精简,避免过度授权

  4. 连接稳定性:WebSocket 长连接需保持服务持续运行

🔧 后续可扩展方向

  • 添加更多大模型(如通义千问、文心一言等)

  • 配置技能和插件增强机器人功能

  • 接入更多渠道(如企业微信、钉钉等)

  • 优化回复逻辑和对话体验

相关推荐
小锋学长生活大爆炸20 分钟前
【培训】Agent与OpenClaw
llm·agent·教程·科普·知识·培训·openclaw
xwz小王子9 小时前
手术机器人登上Science Robotics:2毫米纤细手臂,从3厘米切口完成腰椎神经减压
算法·机器人
小陶来咯9 小时前
机器人执行动作之前的安全检查模块Check
机器人
五羟基己醛11 小时前
【Robotics】半小时入门具身智能之Win11下IsaacSim环境搭建
机器人·robot·具身智能·isaacsim
视***间11 小时前
算力筑基,智领人形机器人新时代 —— 英伟达 × 宇树科技携手推进具身智能,视程空间基于 NVIDIA 全栈算力产品助力机器人产业落地
人工智能·机器人·nvidia·机器狗·gpt-oss·视程空间·宇树机器人
某林21215 小时前
ROS2 机器人底盘调试避坑指南:从 `/odom` 丢失到彻底跑通的硬核排障实录
stm32·机器人·人机交互
上天_去_做颗惺星 EVE_BLUE16 小时前
Ubuntu Android 虚拟机安装使用教程
android·linux·测试工具·ubuntu·安卓
才兄说16 小时前
机器人二次开发机器狗巡检?低电量自主回充
机器人
啵啵鱼爱吃小猫咪16 小时前
示教学习强化学习用的标准数据集
机器人·强化学习·示教学习
beyond阿亮16 小时前
PicoClaw(皮皮虾)超轻量AI智能体 安装&使用教程
人工智能·ai·openclaw·picoclaw