前言

        在 AI 自动化技术快速发展的当下,开源自主 AI 私人助理 OpenClaw 凭借本地部署、多应用自动化联动的特性,成为提升办公与工作效率的优质工具。为实现 OpenClaw 与企业常用协作平台飞书的深度融合,让使用者在飞书生态中解锁 AI 自动化办公能力,我们编写了本教程。

        本文章以实操为核心,从 OpenClaw 的基础环境搭建、下载安装与快速使用入手,逐步讲解其接入飞书的全流程,包括飞书开放平台的应用配置、OpenClaw 的飞书插件安装与通道设置,以及飞书客户端的机器人使用与测试,步骤详实、指引清晰,适配有基础操作能力的开发人员、办公自动化爱好者等人群。遵循本文档操作,可完成 OpenClaw 的本地部署与飞书的无缝对接,充分发挥 OpenClaw 在文件管理、消息发送、工作流自动化等方面的优势,实现飞书端的 AI 助理赋能。

目  录

1. 本文介绍

1.1 OpenClaw是什么

        OpenClaw是Peter Steinberger开发的开源自主AI私人助理。它运行在你自己的电脑上(Mac、Windows或Linux),能执行真实任务——管理文件、控制浏览器、发送消息,还能在 WhatsApp、Telegram、Discord、Slack、Signal、iMessage 等应用间自动化工作流程。

官网:https://openclaw.ai/

github仓库:https://github.com/openclaw/openclaw

2. OpenClaw的下载与安装

2.1 安装node.js

1、执行以下命令安装node.js:

sudo apt update

curl https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash

2、配置环境变量:

# 重启
sudo reboot

# 安装22版本(版本必须≥22)
nvm install 22

# 切换22版本
nvm use 22

3、安装后快速验证

node -v

npm -v

4、npm初始化

npm init -y

2.2 安装必要环境

1、安装git

sudo apt install git

2、安装cmake

# 安装压缩包
wget https://github.com/Kitware/CMake/releases/download/v3.28.0/cmake-3.28.0.tar.g

# 解压压缩包
tar -zxvf cmake-3.28.0.tar.gz

# 编译安装
cd cmake-3.28.0
./bootstrap
make -j$(nproc)
sudo make install

# 验证版本
cmake --version

    2.3 安装OpenClaw

    1、通过npm进行安装

    npm install -g openclaw@latest

    3. OpenClaw的快速使用

    1、启动OpenClaw

    (1)临时前台运行

    openclaw onboard

    (2)安装为系统守护进程并持久后台运行

    openclaw onboard --install-daemon

    2、选择快速开始

    3、这里我们选择免费的Qwen(有能力的可以选择别的付费模型)

    4、Qwen身份验证(打开提示的网址进行身份验证)

    5、选择模型

    6、选择Channels、Skills和hooks,这里我们都先跳过

    7、重启Gateway service

    8、打开Web UI网页端

    若后续想通过命令行重新打开,运行:

    xdg-open http://127.0.0.1:18789/

    9、成功开始OpenClaw的使用,已经可以让它帮你工作啦

    4. OpenClaw接入飞书

    4.1 飞书开放平台的配置

    1、打开飞书开发平台官网,进入开发者后台

    官网:飞书开放平台

    2、创建企业自建应用

    3、记住你的APP ID和APP Secret(后面需要使用)

    4、配置应用能力

    5、配置权限管理

    {
      "scopes": {
        "tenant": [
          "base:app:copy",
          "base:app:create",
          "base:app:read",
          "base:app:update",
          "base:collaborator:create",
          "base:collaborator:delete",
          "base:collaborator:read",
          "base:dashboard:copy",
          "base:dashboard:read",
          "base:field:create",
          "base:field:delete",
          "base:field:read",
          "base:field:update",
          "base:form:read",
          "base:form:update",
          "base:record:create",
          "base:record:delete",
          "base:record:read",
          "base:record:retrieve",
          "base:record:update",
          "base:role:create",
          "base:role:delete",
          "base:role:read",
          "base:role:update",
          "base:table:create",
          "base:table:delete",
          "base:table:read",
          "base:table:update",
          "base:view:read",
          "base:view:write_only",
          "bitable:app",
          "bitable:app:readonly",
          "board:whiteboard:node:create",
          "board:whiteboard:node:delete",
          "board:whiteboard:node:read",
          "board:whiteboard:node:update",
          "contact:contact.base:readonly",
          "contact:user.base:readonly",
          "contact:user.employee_id:readonly",
          "contact:user.employee_number:read",
          "contact:user.id:readonly",
          "docs:doc",
          "docs:doc:readonly",
          "docs:document.comment:create",
          "docs:document.comment:read",
          "docs:document.comment:update",
          "docs:document.comment:write_only",
          "docs:document.content:read",
          "docs:document.media:download",
          "docs:document.media:upload",
          "docs:document.subscription",
          "docs:document.subscription:read",
          "docs:document:copy",
          "docs:document:export",
          "docs:document:import",
          "docs:event.document_deleted:read",
          "docs:event.document_edited:read",
          "docs:event.document_opened:read",
          "docs:event:subscribe",
          "docs:permission.member",
          "docs:permission.member:auth",
          "docs:permission.member:create",
          "docs:permission.member:delete",
          "docs:permission.member:readonly",
          "docs:permission.member:retrieve",
          "docs:permission.member:transfer",
          "docs:permission.member:update",
          "docs:permission.setting",
          "docs:permission.setting:read",
          "docs:permission.setting:readonly",
          "docs:permission.setting:write_only",
          "docx:document",
          "docx:document.block:convert",
          "docx:document:create",
          "docx:document:readonly",
          "drive:drive",
          "drive:drive.metadata:readonly",
          "drive:drive.search:readonly",
          "drive:drive:readonly",
          "drive:drive:version",
          "drive:drive:version:readonly",
          "drive:export:readonly",
          "drive:file",
          "drive:file.like:readonly",
          "drive:file.meta.sec_label.read_only",
          "drive:file:download",
          "drive:file:readonly",
          "drive:file:upload",
          "drive:file:view_record:readonly",
          "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",
          "sheets:spreadsheet.meta:read",
          "sheets:spreadsheet.meta:write_only",
          "sheets:spreadsheet:create",
          "sheets:spreadsheet:read",
          "sheets:spreadsheet:readonly",
          "sheets:spreadsheet:write_only",
          "space:document.event:read",
          "space:document:delete",
          "space:document:move",
          "space:document:retrieve",
          "space:document:shortcut",
          "space:folder:create",
          "wiki:member:create",
          "wiki:member:retrieve",
          "wiki:member:update",
          "wiki:node:copy",
          "wiki:node:create",
          "wiki:node:move",
          "wiki:node:read",
          "wiki:node:retrieve",
          "wiki:node:update",
          "wiki:setting:read",
          "wiki:setting:write_only",
          "wiki:space:read",
          "wiki:space:retrieve",
          "wiki:space:write_only",
          "wiki:wiki",
          "wiki:wiki:readonly"
        ]
      }
    }

    6、发表版本

    4.2 设置接入飞书的OpenClaw配置

    1、安装飞书插件

    openclaw plugins install @m1heng-clawd/feishu

    2、打开OpenClaw的config

    openclaw config

    3、配置Channels接入飞书

    -- Allowlist(只回答特定的群组)

    -- Open(回答所有群组)

    -- Disabled(禁用)

    4、Channels p配置完成

    4、OpenClaw config配置完成

    5、返回飞书开发平台,配置事件与回调

    修改后需要重新发布版本!!!

    此刻飞书已经完全接入完成!!!

    4.3 飞书客户端使用OpenClaw

    1、安装飞书客户端

    官网:飞书客户端

    2、创建群聊

    3、添加OpenClaw机器人

    4、在群聊中与机器人对话,进行功能测试

    结语

            本教程完整梳理了 OpenClaw 从基础环境搭建到成功接入飞书的全流程实操步骤,从 node.js、git、cmake 等前置环境的安装配置,到 OpenClaw 的下载启动与基础模型配置,再到飞书开放平台企业自建应用的创建、权限配置、事件与回调设置,以及 OpenClaw 飞书插件的安装、通道配置与飞书客户端的机器人添加和功能测试,形成了一套闭环的部署与接入方案,最大程度降低了技术操作门槛,让使用者能够快速完成 OpenClaw 与飞书的联动配置。

            OpenClaw 作为开源的本地 AI 私人助理,与飞书的结合实现了协作平台与 AI 自动化工具的生态融合,解锁了飞书端消息交互、工作流自动化等多元能力,为日常办公、团队协作的提效赋能提供了新路径。后续使用者可根据自身需求,进一步为 OpenClaw 配置更多优质模型、拓展技能与钩子功能,同时在飞书开放平台优化事件与回调配置,实现更个性化、场景化的 AI 自动化操作。

            希望本教程能为各位的实操提供有效参考,助力大家顺利解锁 OpenClaw + 飞书的 AI 办公新体验,让 AI 自动化真正服务于实际工作与协作场景。

    Logo

    有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

    更多推荐