跳到主要内容Win11 本地部署 OpenClaw 通过 WSL 实现飞书机器人功能 | 极客日志JavaScriptNode.jsAI
Win11 本地部署 OpenClaw 通过 WSL 实现飞书机器人功能
介绍在 Windows 11 系统下利用 WSL 环境本地部署 OpenClaw 智能体框架,并通过配置飞书开放平台权限及本地 Ollama 大模型服务,实现飞书机器人功能的完整流程。内容涵盖飞书应用创建、权限设置、OpenClaw 插件配置以及模型启动验证步骤。
星辰大海2 浏览 1. 开始实现飞书机器人功能
2. 飞书侧的配置
2.1 登录开放平台
访问 https://open.feishu.cn/app 进行应用创建。

2.2 应用配置
按照指引完成基础设置。




2.3 飞书权限配置
在应用权限中配置以下 Scope:
{"scopes":{"tenant":["base:app:copy","base:app:create","base:app:read","base:app:update","base:collaborator:create",
微信扫一扫,关注极客日志
微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
相关免费在线工具
- RSA密钥对生成器
生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
- Mermaid 预览与可视化编辑
基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online
- Keycode 信息
查找任何按下的键的javascript键代码、代码、位置和修饰符。 在线工具,Keycode 信息在线工具,online
- Escape 与 Native 编解码
JavaScript 字符串转义/反转义;Java 风格 \uXXXX(Native2Ascii)编码与解码。 在线工具,Escape 与 Native 编解码在线工具,online
- JavaScript / HTML 格式化
使用 Prettier 在浏览器内格式化 JavaScript 或 HTML 片段。 在线工具,JavaScript / HTML 格式化在线工具,online
- JavaScript 压缩与混淆
Terser 压缩、变量名混淆,或 javascript-obfuscator 高强度混淆(体积会增大)。 在线工具,JavaScript 压缩与混淆在线工具,online
"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"
]
}
}
3. WSL 侧的配置
3.1 OpenClaw 的飞书配置
在 WSL 终端执行 onboard 命令,根据提示选择 Feishu/Lark 通道并输入配对码。
(base) user@workstation:~/openclaw$ openclaw onboard
Config warnings:
- plugins.entries.feishu: plugin feishu: duplicate plugin id detected; later plugin may be overridden (/home/user/.nvm/versions/node/v22.12.0/lib/node_modules/openclaw/extensions/feishu/index.ts)
...
◇ Channel status ───────────────────────────────────────────╮ │ │ │ Telegram: needs token │ │ Feishu: connected as ou_eb8c5e1d04bc3f409c348066f53b7aed │ │ WhatsApp: not configured │ ...
◇ Select channel (QuickStart) │ Feishu/Lark (飞书) │ ◇ Feishu already configured. What do you want to do? │ Skip (leave as-is)
...
Approved feishu sender ou_ca33d772eb1cdf7fd9dbfa225f53ce4d.
3.2 启动 Ollama 大模型
从 Windows PowerShell 进入 WSL 环境并启动 Ollama 服务。
PS C:\Users\Administrator> wsl -u user
Now using node v22.12.0 (npm v10.9.0)
(base) user@workstation:/mnt/c/Users/Administrator$ cd
(base) user@workstation:~$ OLLAMA_HOST=0.0.0.0:12346 OLLAMA_MODELS=/home/user/.ollama/models ollama serve &
time=2026-02-24T20:10:33.806+08:00 level=INFO source=routes.go:1663 msg="server config"env="...OLLAMA_HOST:http://0.0.0.0:12346..."
time=2026-02-24T20:10:34.458+08:00 level=INFO source=routes.go:1718 msg="Listening on [::]:12346 (version 0.16.3)"
time=2026-02-24T20:10:55.949+08:00 level=INFO source=runner.go:1284 msg=load request="{Operation:fit LoraPath:... GPULayers:25...}"
time=2026-02-24T20:10:59.089+08:00 level=INFO source=device.go:240 msg="model weights"device=CUDA0 size="11.8 GiB"
time=2026-02-24T20:13:29.638+08:00 level=INFO source=server.go:1388 msg="llama runner started in 150.89 seconds"
[GIN]2026/02/24 - 20:13:33 |200| 2m36s |127.0.0.1 | POST "/v1/chat/completions"
至此,OpenClaw 已连接飞书且本地大模型服务运行正常。