OpenClaw实战系列01:OpenClaw接入飞书机器人全接入指南 + Ollama本地大模型

文章目录

引言

在AI技术爆发的2026年,我们不再满足于使用公用的ChatGPT或Claude。出于数据隐私、定制化需求或离线可用的考虑,本地部署AI大模型并接入日常办公软件成为了新的刚需。

本文将带你从零开始,完成以下目标:

  1. 安装OpenClaw:一个强大的开源个人AI助理框架(前身为ClawdBot/Moltbot)。
  2. 部署Ollama:在本地运行大模型(如DeepSeek-R1、Llama 3等),作为AI的“大脑”。
  3. 接入飞书:将你的AI助理添加到飞书好友或群聊中,实现随叫随到的智能办公体验。

第一步:环境准备与核心思想

在开始前,我们需要明确技术架构:飞书 → OpenClaw(调度器) → Ollama(本地模型)。

  • 操作系统:Windows(建议WSL2)、macOS 或 Linux。本文以 Windows 11 + WSL2 (Ubuntu 22.04) 为例。
  • 硬件要求:
    • CPU:4核以上(推荐8核)
    • 内存:16GB以上(若运行7B-8B模型,需预留8-10GB内存给模型)
    • 磁盘:20GB以上剩余空间。

第二步:部署Ollama——把大模型“养”在本地

Ollama 是目前最便捷的本地模型运行工具,它支持 Llama 3、DeepSeek-R1、Qwen 2.5 等一系列主流模型

1. 安装 Ollama

访问 Ollama 官网 下载对应系统的安装包,或使用命令行安装(以Linux/WSL为例):

curl-fsSL https://ollama.com/install.sh |sh

安装完成后,验证版本:

ollama --version

并通过 ollama serve 确保服务在后台运行(通常安装后会自动注册为服务)。

2. 拉取并运行模型

根据你的硬件配置选择合适的模型。对于大多数用户,推荐使用 DeepSeek-R1(7B) 或 Llama 3.2(3B),兼顾性能与资源占用。

# 运行 DeepSeek-R1(会自动下载) ollama run deepseek-r1:7b # 或者运行 Llama 3.2(更轻量) ollama run llama3.2 

出现 Send a message 提示即表示模型启动成功。
注意:记下这个终端,后续OpenClaw会通过API调用它。

3. 确认API可用性

Ollama 默认会在本地 11434 端口开启API服务。我们可以用 curl 测试一下:

curl http://localhost:11434/api/generate -d'{ "model": "deepseek-r1:7b", "prompt": "你好,你是谁?", "stream": false }'

看到包含“DeepSeek”或对应模型名的JSON返回,说明Ollama已经准备就绪。

第三步:安装OpenClaw——AI大脑的“躯干”

OpenClaw 负责连接聊天软件(飞书)和AI大脑(Ollama),并管理各种工具(Skills)。

1. 安装Node.js

OpenClaw 需要 Node.js 22.0 或更高版本。

# 以Ubuntu为例curl-fsSL https://deb.nodesource.com/setup_22.x |sudo-Ebash - sudoaptinstall-y nodejs node-v# 检查版本

2. 一键安装 OpenClaw

官方提供了一键安装脚本,会自动处理大部分配置。

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

安装完成后,执行初始化向导。注意: 最新版的向导已经支持直接配置飞书和模型了,非常方便!

openclaw onboard --install-daemon 

在向导中:

  • AI 模型配置:由于我们要用Ollama,这里可以选择“Other/OpenAI Compatible”。API地址填:http://localhost:11434/v1/(Ollama兼容OpenAI格式),API Key可以随便填(如ollama),模型名填你下载的,比如 deepseek-r1:7b。
  • 通信渠道:先跳过(Telegram/WhatsApp等),我们后面手动配置飞书。

3. 验证安装

启动服务并检查状态:

openclaw gateway start openclaw status 

此时访问 http://127.0.0.1:18789 应该能看到 OpenClaw 的 Web 控制台(Dashboard)。

第四步:打通飞书——创建并配置机器人

这是让AI“落地”的关键一步,我们需要在飞书开放平台注册一个机器人应用。

1. 创建飞书应用

  1. 登录飞书开发者后台
  2. 点击“创建企业自建应用”,填写名称和描述,上传头像。
  3. 创建成功后,进入应用详情页,点击左侧“凭证与基础信息”,记录下 App ID 和 App Secret(非常重要!)。

2. 配置机器人能力

  1. 在左侧“添加应用能力”中,点击“机器人”进行添加。
  2. 点击左侧“权限管理”,为机器人开通必要权限。最简单的方法是搜索并添加以下权限:
    • im:message 相关的收发权限(im:message:send_as_bot, im:message.group_msg, im:message.p2p_msg)。
    • contact:contact.base:readonly(读取通讯录,用于识别@你的人)。
    • 如果有操作文档的需求,还需开通文档相关的权限。
  3. 点击左侧“事件与回调”,选择“事件配置”。
    • 订阅方式选择“使用长连接接收事件”(开发测试阶段最方便)。点击保存。
    • 添加事件:搜索并添加 im.message.receive_v1(接收消息事件)。

3. 发布应用

  1. 点击左侧“版本管理与发布”,创建一个版本,填写版本日志。
  2. 点击“申请发布”(如果是你自己的企业,审核会秒过,直接发布成功)。
  3. 发布后,在飞书搜索框搜索你的应用名称,找到它并发送一条消息“你好”,此时应该收到来自飞书官方的“配对码”提示,因为我们的后端还没连上。

第五步:OpenClaw与飞书“握手”

现在,我们要让 OpenClaw 认识这个飞书机器人。

方法一:使用 onboard 向导重新配置(推荐最新版)

openclaw onboard 

当问到渠道时,选择 feishu,并输入刚才拿到的 App IDApp Secret

方法二:手动添加渠道

如果已经完成了onboard,可以使用 channels 命令:

openclaw channels add# 选择 feishu,按提示输入 APP ID 和 APP SECRET

配置完成后,必须重启网关才能使配置生效:

openclaw gateway restart # 或者旧版本命令 openclaw-cn gateway restart

查看实时日志,确认飞书连接是否成功:

openclaw logs --follow

看到类似 Feishu client connectedlogin success 的字样,说明连接成功。

批准配对

再次回到飞书,向你的机器人发送任意消息(例如“你好”)。
此时,飞书机器人会回复一串 Pairing code: xxxx-xxxx
在命令行中执行批准命令:

openclaw pairing approve feishu <你收到的code>

第六步:实战测试与玩法拓展

现在,你的飞书AI助理已经可以工作了。你可以把它拉到群里,或者私聊。

1. 本地能力测试

在飞书里输入指令:

  • 帮我看看我电脑的存储占用情况”(如果OpenClaw配置了相关系统Skill,它会执行命令并返回结果)。
  • 帮我整理桌面的文件夹,按类型分类”。

2. 结合Ollama的优势

由于我们用的是Ollama,你可以随时切换模型而无需重启OpenClaw。只需修改OpenClaw配置中的模型名,或者通过OpenClaw的TUI界面临时切换模型。

# 在OpenClaw的TUI界面 /model deepseek-r1:7b 

3. 云端模型备用

如果你的本地机器性能不足,或者需要处理超长文本,Ollama也支持调用云端模型(如GLM4.7等),可以在配置中随时切换,实现本地与云端的“双模”运行。

常见问题与避坑指南

  1. OpenClaw 提示command not found
    • 原因:npm全局路径未加入系统PATH。
    • 解决:执行 npm prefix -g 找到路径(如 /usr/local),然后将 export PATH=“ ( n p m p r e f i x − g ) / b i n : (npm prefix -g)/bin: (npmprefix−g)/bin:PATH” 加入 ~/.bashrc 或 ~/.zshrc。
  2. 飞书机器人无响应
    • 检查步骤
    1. openclaw status 确认网关运行。
    2. 日志中是否有飞书连接报错(检查APP ID/Secret是否正确)。
    3. 检查 OpenClaw 的配置文件 ~/.openclaw/openclaw.json,确保 feishu 配置块存在且 enabled 为 true。
  3. Ollama 模型推理速度慢
    • 优化:关闭其他大型应用释放内存;尝试使用量化版本模型(如 deepseek-r1:7b-q4_0);确认Ollama是否成功利用了GPU(ollama run deepseek-r1:7b --verbose 查看日志)。
  4. 飞书长连接配置失败
    • 如果 onboard 向导报错,可以先用飞书官方的“Python示例代码”建立一个临时连接,让飞书后台通过验证,然后再切回OpenClaw。

总结

通过 OpenClaw + Ollama + 飞书的组合,我们成功搭建了一个完全私有、免费、可定制的AI助理。它不仅能在日常聊天中提供帮助,还能通过OpenClaw强大的“技能”体系,真正去操作你的电脑、管理文件、甚至执行代码。

这套方案将数据留在本地,既保证了隐私安全,又锻炼了动手能力。现在,去给你的AI助理添加更多酷炫的技能吧!

想看更多实战内容,可定义我的专栏《OpenClaw实战:企业级AI助理开发指南》。

Read more

从MySQL到国产数据库的真实迁移笔记:那些坑爹的坑和意外的爽点

从MySQL到国产数据库的真实迁移笔记:那些坑爹的坑和意外的爽点

文章目录 * 一个不愿回忆的三个月 * TCO全景账本:决策者真正算的那本账 * 人力成本:SQL改造真的是个无底洞 * 停机成本:割接时间的每一分钟都在烧钱 * 效率对比:自动化和手工的差距真的很大 * 迁移工具链:从"手动折腾"到"自动化流水线" * KDMS:迁移前的"CT扫描仪" * KDTS:TB级数据的"搬运工" * KFS:实时同步的"守夜人" * 实战案例:从金融到政务的迁移实录 * 政务系统:22个子系统的"集团军作战" * 复杂查询:窗口函数的实战应用 * 数据维护:那些必须掌握的维护脚本 * 文献综述:那些值得深挖的争议与空白 * 迁移工程化落地:那些标准化流程之外的东西 * 迁移前的&

By Ne0inhk
国产替代不掉链子:KingbaseES如何做到MySQL零感迁移

国产替代不掉链子:KingbaseES如何做到MySQL零感迁移

前言 在信创国产化的大趋势下,数据库作为数字基础设施的核心,其替代迁移工作成为企业数字化转型的关键环节。MySQL 作为国内企业应用最广泛的开源关系型数据库之一,凭借轻量、易用、生态完善的特点,在互联网、金融、政务、制造等多个行业落地生根。但不少企业在将 MySQL 向国产数据库迁移的过程中,却陷入了 “看似简单,实则踩坑” 的困境 —— 表面上的语法兼容背后,是 JSON 数据类型行为差异、事务隔离级别在高并发下的隐性适配问题、Group By 严格模式等细节带来的兼容性故障,甚至出现 “改一行代码,崩整个系统” 的极端情况。 业务方对迁移的核心顾虑,从来都不是 “能不能迁”,而是 “能不能稳迁、低成本迁、不影响业务迁”。本文将从 MySQL 迁移的核心痛点出发,深度解析电科金仓 KingbaseES 的 MySQL 兼容性技术实现,以及全流程迁移工程的落地能力,为企业 MySQL

By Ne0inhk
如何在 IDEA 中在启动 Spring Boot 项目时加参数

如何在 IDEA 中在启动 Spring Boot 项目时加参数

如何在 IDEA 中在启动 Spring Boot 项目时加参数 在日常开发中,我们经常需要在启动 Spring Boot 项目的时候,临时修改一些参数,例如 端口号、运行环境(profile)、日志级别 等等。除了在 application.yml 文件里修改,我们还可以通过在 IDEA 启动配置中添加参数的方式来实现。这种方式更加灵活,适合临时调试或者本地开发时使用。 本文将详细介绍在 IDEA 中为 Spring Boot 启动项目加参数的方法。 一、在 application.yml 中配置端口号(默认方式) 在 application.yml 文件中可以直接写配置,例如修改端口号: server:port:8080 启动时项目会监听 8080 端口。

By Ne0inhk
【MySQL数据库基础】(五)MySQL 数据类型深度解析:选对类型 = 性能拉满!

【MySQL数据库基础】(五)MySQL 数据类型深度解析:选对类型 = 性能拉满!

前言         在 MySQL 表结构设计中,数据类型的选择是最核心也最容易踩坑的环节。很多开发者随手给字段设为int、varchar(255),看似省事,实则会导致磁盘空间浪费、查询效率低下,甚至出现数据溢出、精度丢失的问题。         选对数据类型的本质,是用最小的存储空间存储符合业务需求的数据,这不仅能节省服务器资源,还能提升索引和查询的效率。本文将从 MySQL 的四大核心数据类型(数值、字符串、日期时间、枚举集合)出发,结合实战案例讲透每种类型的用法、边界、坑点,还有不同场景下的选择技巧,让你从根源上做好表结构设计!下面就让我们正式开始吧! 一、数据类型总览:四大类覆盖所有业务场景         MySQL 提供了丰富的数据类型,按用途可分为数值类型、字符串类型、日期时间类型和特殊字符串类型(ENUM/SET),不同类型对应不同的存储规则和业务场景,核心设计原则是按需选择,宁小勿大。         先看一张核心数据类型分类表,快速建立整体认知: 分类核心类型适用场景数值类型TINYINT/INT/BIGINT/FLOAT/

By Ne0inhk