乐于分享
好东西不私藏

从 0 到 1 部署 OpenClaw:本地、云端、飞书接入一次讲清

从 0 到 1 部署 OpenClaw:本地、云端、飞书接入一次讲清

因为公众号平台本身和作者使用的文档编辑器的编译效果有差异,所以推荐各位朋友直接去看飞书原文档,后台回复"小龙虾部署"即可获得链接,然后在浏览器打开即可。

🦐OpenClaw 是什么?

OpenClaw 不是"更聪明的聊天 AI",而是一个让 AI 真正帮你干活的执行平台——你用自然语言下命令,它调度 AI 大脑 + 操控你的设备,把事情完成。 可以把它想象成:给 AI 装上了一双手。

简单来说,OpenClaw 就像一个住在你电脑里的私人管家——它不只是聊天,它能真正"动手"帮你干活。

🖥️本地部署(Windows系统)

有能力的朋友也可以去按照官方教程进行安装:https://docs.openclaw.ai/zh-CN/start/getting-started

🏠环境要求

  • Node.js ≥ 22
  • Git

打开终端

以管理员身份打开终端(PowerShell),运行以下脚本:

iwr -useb https://openclaw.ai/install.ps1 | iex

解除脚本禁止运行限制

第一次运行可能会碰到禁止脚本运行的问题:

这是因为 Windows 默认禁止运行未经过验证的脚本,此时我们需要更改它的执行策略,让脚本能够正常运行。

直接在终端运行以下脚本:

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

128报错

在安装过程中,我们可能会碰到 code:128 的报错,这是因为依赖文件中使用的是 SSH 协议,而我们并没有进行配置,或者防火墙拦截了 Git 协议,这时我们需要运行以下脚本来强制让 npm 使用 HTTPS 协议,绕开 SSH 协议:

git config --global url."https://".insteadOf git://

然后再重新执行安装龙虾的命令。

看到这个画面就代表着我们已经成功了一半!

配置选项

随后它会向你问一些问题,可以先按照我的来选:(在这先不进行模型以及技能的配置,后续会装)

  1. Yes
  2. QuickStart
  3. Skip for now
  4. All providers
  5. Keep current
  6. Skip for now
  7. Skip for now
  8. No
  9. Skip for now(多选题,空格选中,回车确认)
  10. Open the Web UI

选择完成后,当网页自动跳出这个页面时,就代表你的龙虾已经成功部署到本地了!

这个是🦐龙虾的控制台,可以查看龙虾的相关信息,当你关闭这个控制台时,网页也会随之不可用!

🧠配置大模型

部署完成后,由于没有配置大模型,所以它还只是一个空壳子,不具备进行聊天交互等能力,所以接下来我们需要给龙虾进行模型配置。

运行以下指令:

openclaw config

然后按照你购买的套餐情况选择对应的选项:


Where will the Gateway run?

  • Local

Select sections to configure

  • Model

Model/auth provider

这里会看到模型后面会有个括号告诉你它是通过什么验证的,OAuth 就是用户验证,API key 就是你去买模型厂商套餐给的密钥。

  • 根据你买的模型套餐情况进行选择

Models in /model picker(multi-select)

这里是多选,空格选中或取消,回车确认

  • 这里会默认勾选你买的套餐对应的模型,可以直接回车,也可以按上下方向键进行查看。

配置完成后,可以重新输入最开始的指令,查看模型是否成功配置。

打开龙虾控制网页

  1. 1. 打开终端,输入以下命令:
openclaw gateway
  1. 2. 然后直接在网页输入这串地址:127.0.0.1:18789(默认端口),就可以看到龙虾控制网页重新被打开了!

☁️云部署(阿里云)

因为阿里云新用户可以白嫖 300 元额度,所以这里推荐使用阿里云进行部署。当然别家的也可以。

前期准备

需要下载两个软件:

Xshell

链接:https://www.netsarang.com/en/xshell/

Xshell 是一款终端模拟器,支持 SSH、Telnet、Rlogin、Serial,官方还提供会话管理、快速命令、标签页和文件管理等功能。

常用于远程登录服务器,执行命令、查看日志、改配置、重启服务。

Xftp

链接:https://www.netsarang.com/en/xftp/

Xftp 是一款文件传输客户端,支持 SFTP、FTP 等协议,强调拖拽传输、同步和会话管理。

常用于上传代码、下载日志、同步目录,或者直接管理远程文件。

💰购买服务器

打开链接并登录:https://free.aliyun.com/?product=1351&crowd=personal

直接选择第一款(我已经试用了,所以按钮显示和你们不一样)

地区推荐选择【中国香港】,ECS 实例及系统盘选择【2核(vCPU)4GiB】,然后立即试用。如果有要镜像系统选择的话,就选择最新版的 Ubuntu 系统。

连接到云服务器主机

打开 Xshell 软件,按 Alt + N 新建一个会话(我已经新建过会话了,所以这里是 3 ),名称随意,主机那一栏也随意填写。

然后在网址栏填入你的服务器主机 IP 地址

回车后会有个弹窗让你登录,先忽略,回到服务器页面,找到【设置密码】相关字样(也可能是重置密码)

在这里设置你的服务器登陆密码,登录名不用改,默认就行了。

设置完成后回到那个登录窗口,输入你设置好的登录名和密码,看到服务器进入指定目录就是成功了!

然后点击上方工具栏的 Xftp 图标,可以直接打开 Xftp 软件,只不过进入后需要重新输入一次密码,登录完成后就可以实现本地文件和服务器文件的相互传输了!

部署 OpenClaw

直接在 Xshell 的命令输入栏里输入以下命令并回车:

curl -fsSL https://openclaw.ai/install.sh | bash

后续的操作就是和 Windows 安装步骤一样了,按照官方的指引一步步选择对应的选项就好了。

❓常见问题

control ui requires device identity (use HTTPS or localhost secure context)

这是一个在 OpenClaw 最新版(2026.1.21 及以后版本)中非常常见的安全机制问题。就算你设置了allowInsecureAuth: true,由于浏览器在非 HTTPS 环境下无法提供底层的 Web Crypto API 接口,OpenClaw 前端依旧无法生成设备签名。

简单来说就是一个由浏览器引起的安全环境拦截问题,此时我们需要在电脑上把这个 IP 设置为"安全来源"

  1. 1. 在浏览器地址栏输入:chrome://flags (如果你用 Edge,输入 edge://flags
  2. 2. 在搜索框里搜索:unsafely-treat-insecure-origin-as-secure
  3. 3. 找到这个选项后,在文本框里输入你带端口的 ZeroTier 地址,比如:http://你的ZeroTier_IP:8080
  1. 4. 把右侧的下拉菜单改为 Enabled,然后点击右下角的 Relaunch 重启浏览器。
  2. 5. 重启后再次访问 http://你的ZeroTier_IP:8080,这次直接输入 Token 就能进去了。

400 Total tokens of image and text exceed max message tokens. Request

这就是你的上下文满了,直接输入 /new 新建一个对话就行。也有可能是你的 token 限额了。

把🦐龙虾接进飞书

创建自建应用

登录开发者后台:开发者后台 - 飞书开放平台,创建企业自建应用,填入相关信息。

🤖创建机器人

在【添加应用能力】里,选择添加一个机器人。

⚠️导入应用权限

在【权限管理】中,点击【批量导入/导出权限】,将下方的代码替换到【导入】的代码框里,然后确定导入并申请开通。

{
"scopes":{
"tenant":[
"contact:contact.base:readonly",
"docx:document:readonly",
"im:chat:read",
"im:chat:update",
"im:message.group_at_msg:readonly",
"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:readonly",
"im:message:recall",
"im:message:send_as_bot",
"im:message:send_multi_users",
"im:message:send_sys_msg",
"im:message:update",
"im:resource",
"application:application:self_manage",
"cardkit:card:write",
"cardkit:card:read"
],
"user":[
"contact:user.employee_id:readonly",
"offline_access","base:app:copy",
"base:field:create",
"base:field:delete",
"base:field:read",
"base:field:update",
"base:record:create",
"base:record:delete",
"base:record:retrieve",
"base:record:update",
"base:table:create",
"base:table:delete",
"base:table:read",
"base:table:update",
"base:view:read",
"base:view:write_only",
"base:app:create",
"base:app:update",
"base:app:read",
"sheets:spreadsheet.meta:read",
"sheets:spreadsheet:read",
"sheets:spreadsheet:create",
"sheets:spreadsheet:write_only",
"docs:document:export",
"docs:document.media:upload",
"board:whiteboard:node:create",
"board:whiteboard:node:read",
"calendar:calendar:read",
"calendar:calendar.event:create",
"calendar:calendar.event:delete",
"calendar:calendar.event:read",
"calendar:calendar.event:reply",
"calendar:calendar.event:update",
"calendar:calendar.free_busy:read",
"contact:contact.base:readonly",
"contact:user.base:readonly",
"contact:user:search",
"docs:document.comment:create",
"docs:document.comment:read",
"docs:document.comment:update",
"docs:document.media:download",
"docs:document:copy",
"docx:document:create",
"docx:document:readonly",
"docx:document:write_only",
"drive:drive.metadata:readonly",
"drive:file:download",
"drive:file:upload",
"im:chat.members:read",
"im:chat:read",
"im:message",
"im:message.group_msg:get_as_user",
"im:message.p2p_msg:get_as_user",
"im:message:readonly",
"search:docs:read",
"search:message",
"space:document:delete",
"space:document:move",
"space:document:retrieve",
"task:comment:read",
"task:comment:write",
"task:task:read",
"task:task:write",
"task:task:writeonly",
"task:tasklist:read",
"task:tasklist:write",
"wiki:node:copy",
"wiki:node:create",
"wiki:node:move",
"wiki:node:read",
"wiki:node:retrieve",
"wiki:space:read",
"wiki:space:retrieve",
"wiki:space:write_only"
]
}
}

获取应用凭证

在【凭证与基础信息】中,你会看到 App ID 和 App Secret 这两个是识别应用的唯一凭证和安全密钥,务必妥善保管,谨防泄露!

发布并审核

点击顶部提示框的【创建版本】按钮,填入应用的相关信息,完成后拉到最下面选择【保存】,然后发布。

在 OpenClaw 上安装飞书插件

打开终端,执行以下指令:

npx -y https://sf3-cn.feishucdn.com/obj/open-platform-opendoc/3001f02e44c6269c6df09c01aad601cd_QWN3XUhUSQ.tgz install

如果执行出错,可以在命令前加个 sudo 后重新执行。

随后按照指引,填入你应用的 AppID 和 App Secret 。

安装完成后可以运行以下命令,查看表格中的ID 和 Status 属性是否对应的上。一样则表明插件已安装成功并启用。

openclaw plugins list
IDStatus
feishu-openclaw-pluginloaded
feishudisabled

订阅机器人事件与回调

回到应用后台,在【事件配置】中选择使用 长链接 接受事件并保存。

然后添加事件:接收消息消息被reaction消息被取消reaction

接下来选择【回调配置】,同样选择长链接配置方式,再添加一个"卡片回传交互"的回调事件。

配置完成后看到【安全设置】,如果看到有 user_access_token 开关,请务必打开!没有则可以忽略。

所有配置完成后,就可以重新发布应用了。

完成配对

应用审核通过后会有消息通知,直接点击【打开应用】就可以进到和机器人的对话了。

随便发送一个消息给机器人,它会返回一个配对码给你,然后返回终端,输入以下指令完成绑定:(假设配对码是123456)

配对码有效期仅有 5 分钟,超时则需要重新生成

openclaw pairing approve feishu 123456--notify

配对完后回到聊天页面,根据指引给机器人进行授权操作,完成后就可以和你的龙虾进行聊天了!

可以发个消息测试下你的龙虾是否可用:"学习一下新安装的飞书插件,然后列出有哪些能力"

高级配置指令(官方指令)

流式输出

切换流式输出

openclaw config set channels.feishu.streaming true

不使用流式输出

openclaw config set channels.feishu.streaming false

流式输出卡片上支持显示更多内容

openclaw config set channels.feishu.footer.elapsed true  // 开启耗时
openclaw config set channels.feishu.footer.status true  // 开启状态展示

多任务并行,独立上下文

机器人可在话题群/消息群话题模式中,针对每个话题拥有独立上下文以及多任务并行。

开启指令

openclaw config set channels.feishu.threadSession true

关闭指令

openclaw config set channels.feishu.threadSession false

修改飞书机器人在群内的回复方式

模式 1:机器人被@才回复

配置方法

# 设置需要 @ 才回复
openclaw config set channels.feishu.requireMention true --json# 重启生效sh /workspace/projects/scripts/restart.sh

完整配置示例

{"channels":{"feishu":{"enabled":true,"appId":"cli_你的AppID","appSecret":"你的AppSecret","requireMention":true,"groupPolicy":"open"}}}
模式 2:所有消息都回复(⚠️易被刷屏,慎用)

需要额外在开发者后台开启权限:获取群组中所有消息(敏感权限im:message.group_msg

配置方法

# 设置不需要 @ 也回复
openclaw config set channels.feishu.requireMention false --json# 重启生效sh /workspace/projects/scripts/restart.sh

完整配置示例

{"channels":{"feishu":{"enabled":true,"appId":"cli_你的AppID","appSecret":"你的AppSecret","requireMention":"open","groupPolicy":"open"}}}
模式 3:只在指定群,机器人被@才回复

效果:

大部分群:所有消息都回复(或者不回复)

指定群:必须被@才回复

适合:不同群不同规则,有需要的人群

配置方法

先让机器人加群,再发送任意消息,在群设置里找到群 ID,然后输入以下指令:

# 先设置默认所有群都不需要 @
openclaw config set channels.feishu.requireMention open --json# 然后给特定群设置需要 @(这里群ID只是示例,你要替换成真实的)
openclaw config set channels.feishu.groups.oc_xxxxxxxx.requireMention true --json# 重启生效sh /workspace/projects/scripts/restart.sh

完整配置示例

{"channels":{"feishu":{"enabled":true,"appId":"cli_你的AppID","appSecret":"你的AppSecret","requireMention":"open","groupPolicy":"open","groups":{"oc_532044075a61d112f04fa63109c75e9b":{"requireMention":true},"oc_另一个群ID":{"requireMention":true}}}}}

插件更新指令

npx -y https://sf3-cn.feishucdn.com/obj/open-platform-opendoc/3001f02e44c6269c6df09c01aad601cd_QWN3XUhUSQ.tgz update

若指令运行失败,可以在指令前加个 sudo 后重新执行。

📄推荐 Skills

配备了Skills的虾才有灵魂~

这里的 Skills 大都是 clawhub 上有的并且高星的,还借鉴了这篇文章:🐲🦞扫盲版-给不会使用的同学看

clawhub:https://clawhub.ai/

在装下面 Skills 前,可以先装好 clawhub 的技能文件夹

npx clawhub@latest install sonoscli

自我进化

npx clawhub@latest install self-improving-agent

它会记录 Agent 在运行过程中的错误、用户的纠正、API 失败记录以及成功的操作模式,并将其存入 Agent 的"长期记忆"文件夹。

推荐理由:

  • 不再犯错:如果 Agent 之前写错了一个代码逻辑被你纠正过,这个插件会确保它下次"记住"这个教训。
  • 个性化适应:它能自动总结你的偏好(比如你喜欢简洁的回复,或偏好某种编程风格),让 Agent 越用越顺手。
  • 自主修复:它允许 Agent 在空闲时间回顾自己的日志,优化其内部的工作流指令。

浏览器自动化(云端部署可能需要反向代理)

npx clawhub@latest install playwright-skill

基于 Playwright 引擎开发,功能简单来说,就是让你的龙虾具备操控浏览器的能力,不仅能访问网页,还能点击按钮,填写表单……

推荐理由:

  • 深度交互:普通的搜索只能看文字,它能帮你执行动作
  • 可见性控制:支持 Headless(后台运行)或 Visible(前台看它操作)模式,方便调试。

Skills 安全检查

clawhub install skill-vetter

这个技能可以让你在安装任何 Skills 之前,先做一个全面的检查。如果这个 Skills 的开发者无意中留了后门(获取key等危险操作),它可以帮你把好第一扇门,确保代码干净整洁。

龙虾之眼(Agent Reach)

项目地址:https://github.com/Panniantong/Agent-Reach

使用说明:https://www.yuque.com/200.cn/gx7h1n/lg9820cm00n7ztg2?singleDoc#

简单来说,就是让龙虾可以像人类一样上网,可以刷网页、看 YouTube、上 B 站……