准备工作
1. 硬件要求
本地部署OpenClaw使用第三方AI大模型,利用飞书机器人执行远程控制,对于本机硬件要求不高,能跑个Windows10系统即可,虽然win7也有人部署成功过,但不推荐使用win7
2. 软件要求
Window10/11系统
终端:PowerShell(必须以管理员身份运行)
Node.js:版本必须 ≥ 18.0.0,强烈推荐 v24.x LTS 。
Git:可选,但安装插件时可能用到,建议安装。
3. Node.js or Git安装
打开https://nodejs.org/zh-cn/download
选好版本号,点击下面的获取Windows安装程序msi,下载后直接打开安装一路next下一步直到完成。
验证安装:
PowerShell里执行node -v 出现版本号即为安装成功。
打开https://git-scm.com/install/windows
点击Click here to download进行下载,下载完成后,打开安装一路next下一步直到完成。不需要验证。
4. 安装 OpenClaw
打开PowerShell(必须以管理员身份运行)
先执行策略修改解决无法加载脚本的情况
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
然后执行
iwr -useb https://openclaw.ai/install.ps1 | iex
执行上面命令,安装OpenClaw本体,期间会执行环境检查,如上面的Node.js版本
这个过程会很慢,因为国外网站,速度多少慢点,期间会有终端运行窗口弹出,不必理会。
常见错误是窗口消失,这个检查Node.js是否正确安装。
直到出现绿色文字OpenClaw installed successfully+版本号,即表示安装成功
5. 配置 OpenClaw
配置之前,先确定好使用什么第三方大模型,在这里我选择的是千问,然后到官网登录
执行openclaw onboard 进行配置

出现这个界面使用方向键向左,选择yes回车
然后选择QuickStart
model/auth provider选择你对应的大模型,我用的千问,选择Qwen,然后会跳到千问官网,选择你登录的账号,确认,提示认证成功后关闭网页回到终端。
default model 以千问为例选择Keep current回车
select channel选择对接飞书或者skip for now跳过,飞书这个在下面单独讲
search provider选skip for now跳过吧

然后出现上图,回车,接着再回车,

一路回车下去,遇到上图这样的,按下空格再回车

出现上图,说明配置完成了,现在三个选择分别是重启服务,重新安装,跳过,因为下面要配置飞书,所以先选择skip
6. 配置 飞书机器人
配置飞书机器人分两个部分
第一部分是在飞书官网配置,注册,登录这一块自己到open.feishu.cn去完成,登录之后,选择右上角的开发者后台
创建企业自建应用(不需要有自己企业和认证)起个机器人的名字和介绍,图标之类的,这些后期可改
创建完成后进入,左侧菜单里注意四个东西:
第一个:凭证与基础信息:里面储存了通信App ID和App Secret,这个等会第二部分配置机器人的时候需要用到
第二个:添加能力:选择机器人。
第三个:权限管理:点开通权限,搜索框里输入im: 然后全选,确认开通权限,或者使用下面json导入:
{
"scopes": {
"tenant": [
"application:application.contacts_range:write",
"attendance:overtime_approval:write",
"calendar:time_off:create",
"calendar:time_off:delete",
"calendar:timeoff",
"contact:contact",
"contact:contact.base:readonly",
"contact:contact:update_department_id",
"contact:contact:update_user_id",
"contact:department.base:readonly",
"contact:department.hrbp:readonly",
"contact:department.organize:readonly",
"contact:functional_role",
"contact:functional_role:readonly",
"contact:group",
"contact:group:readonly",
"contact:job_family",
"contact:job_family:readonly",
"contact:job_level",
"contact:job_level:readonly",
"contact:job_title:readonly",
"contact:role:readonly",
"contact:unit",
"contact:unit:readonly",
"contact:user.assign_info:read",
"contact:user.base:readonly",
"contact:user.department:readonly",
"contact:user.dotted_line_leader_info.read",
"contact:user.email:readonly",
"contact:user.employee:readonly",
"contact:user.employee_id:readonly",
"contact:user.employee_number:read",
"contact:user.gender:readonly",
"contact:user.id:readonly",
"contact:user.job_family:readonly",
"contact:user.job_level:readonly",
"contact:user.phone:readonly",
"contact:user.subscription_ids:write",
"contact:user.user_geo",
"contact:work_city:readonly",
"corehr:person.emergency_contact:read",
"corehr:person.emergency_contact:write",
"corehr:person.entry_leave_time:read",
"directory:employee.base.background_image:read",
"directory:employee.base.is_primary_admin:read",
"directory:employee.base.resign_time:read",
"docs:document:import",
"hire:ehr_import",
"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",
"mail:user_mailbox.mail_contact.mail_address:read",
"mail:user_mailbox.mail_contact.phone:read",
"mail:user_mailbox.mail_contact:read",
"mail:user_mailbox.mail_contact:write",
"optical_char_recognition:image"
],
"user": []
}
}
第四个:事件与回调,这里点击订阅方式,选择使用长连接,先不要保存,因为保存不了,你openclaw还没启动,连接不上,现在回到电脑终端来配置openclaw
执行openclaw config 回车,然后选择local本地模式,方向键向下选择channels回车,继续选择configure/link回车,接着选择feishu/飞书

然后选择use local plugin path回车,下面出来的输入你在飞书官网第一个:凭证与基础信息里的App Secret,回车后右键粘贴,接着是App id也同样的方法。

接着出现的连接方式选择WebSocket,也就是飞书里第四个:事件与回调选择的长连接,回车后接着选择域名,因为飞书分国内版 和 国际版,我们是用的国内版,选择feishi.cn china

回车后是机器人权限的设置,因为这个机器人本身配置的就是企业内部使用,选择open更简单
这样就配置完了飞书机器人,界面中选择Finished完成
回到飞书官网第四个:事件与回调,现在你在订阅方式里选择长连接,就可以保存了,接着在右侧点击添加事件,在里面添加两个权限:
搜索:im 找到
接收消息和用户进入与机器人的会话两个权限添加上,回到顶部,有个版本发布后,当前修改方可生效,点击后面的创建版本
应用版本号按提示来 ,比如首次发布是1.0.0
更新说明随便写
保存,确认发布,就完成了飞书机器人的配置,使用飞书App登录你的账号,就可以搜索你设定的飞书机器人名称找到这个飞书机器人,就可以使用了
回到电脑,启动openclaw网关:openclaw gateway start 享用吧
启动本机网页版控制面板命令:openclaw dashboard
周涛博客








评论前必须登录!
注册