Feishu File Sender技能使用说明
Feishu File Sender | 飞书文件发送器
OpenClaw agent 在本地生成文件,但飞书渠道插件只支持文本消息,没有文件投递能力。本 skill 通过直接调用飞书 OpenAPI(上传+发送)补齐这一底层能力,使生成的文件能回传到聊天中。
OpenClaw agents generate files locally, but the Feishu channel integration only supports text messages and does not provide native file delivery. This skill fills that architectural gap by calling Feishu OpenAPI directly (upload + send), enabling files to be delivered back to chat.
将本地文件上传到飞书并作为文件消息发送。
Upload a local file to Feishu and send it as a file message.
快速开始 | Quick Start
python3 scripts/feishu_file_sender.py \
--file /absolute/path/to/report.xlsx \
--receive-id oc_xxx
使用方法 | Usage
python3 scripts/feishu_file_sender.py \
--file /absolute/path/to/file \
--receive-id <chat_id|open_id> \
--receive-id-type <chat_id|open_id|user_id>
参数说明 | Arguments
-
--file(必填):本地文件绝对路径。 -
--receive-id(可选):目标 chat_id 或 open_id。若省略,脚本会读取OPENCLAW_CHAT_ID(或OPENCLAW_RECEIVE_ID/FEISHU_CHAT_ID)。 -
--receive-id-type(可选):若省略,将根据前缀自动识别:oc_→ 聊天IDou_→ 开放IDon_→ 用户ID
-
--file-type(可选):飞书上传的文件类型,默认为stream。 -
--file(必需):本地文件的绝对路径。 -
--receive-id(可选):目标聊天ID或开放ID。如果省略,脚本会读取OPENCLAW_CHAT_ID(或OPENCLAW_RECEIVE_ID/FEISHU_CHAT_ID)。 -
--receive-id-type(可选):如果省略,通过前缀自动检测:oc_→ 聊天IDou_→ 开放ID在_→ user_id
-
--file-type(可选):飞书文件上传类型,默认为stream。
工作原理 | How It Works
-
通过
cwd匹配 OpenClaw 工作区,解析当前 agent id。 -
根据 agent id 从
~/.openclaw/openclaw.json读取 appId/appSecret。 -
调用飞书上传文件API 获取
file_key。 -
调用飞书发送消息API 发送文件。
-
通过将
cwd与 OpenClaw 工作区路径匹配来解析当前 agent id。 -
从
~/.openclaw/openclaw.json根据代理ID。 -
调用飞书上传文件调用API获取
文件密钥。 -
调用飞书发送消息API来投递文件。
错误处理 | 错误处理
-
缺少凭证→ 确保
channels.feishu.accounts存在于~/.openclaw/openclaw.json文件中,且bindings映射agentId → accountId。 -
机器人不在群内(230002)→ 将机器人加入目标群或换一个群。
-
缺少receive_id→ 传入
--receive-id参数或设置OPENCLAW_CHAT_ID环境变量。 -
HTTP错误→ 查看飞书错误返回中的
log_id进行排查。 -
凭据缺失→ 请确保
channels.feishu.accounts存在于~/.openclaw/openclaw.json文件中,并且绑定关系映射为 agentId → accountId。 -
机器人不在聊天中(错误码 230002)→ 将机器人添加到目标聊天中,或者使用一个机器人已存在的聊天。
-
缺少 receive_id→ 传递
--receive-id参数,或者设置OPENCLAW_CHAT_ID环境变量。 -
HTTP 错误→ 检查飞书错误负载中返回的
log_id。
安全说明 | Security
本技能会从本机 OpenClaw 配置中读取飞书凭证(~/.openclaw/openclaw.json):
channels.feishu.accounts.*.appIdchannels.feishu.accounts.*.appSecret
这些凭证仅用于获取 tenant access token 并发送文件。技能不会存储或向其他地方传输凭证。
本技能从运行它的机器上的本地 OpenClaw 配置文件中读取飞书凭证:~/.openclaw/openclaw.json具体读取的路径为:
channels.feishu.accounts.*.appIdchannels.feishu.accounts.*.appSecret
这些值仅用于获取租户访问令牌和发送文件。该技能不会在其他任何地方存储或传输凭证。
备注
-
本技能面向所有智能体设计,会自动读取当前工作区来选择正确的 飞书应用凭证。
-
建议通过入站参数
chat_id将文件发送到当前聊天。 -
本技能面向所有智能体设计;它会读取活动工作区来自动选择正确的飞书应用凭证。
-
更倾向于发送到当前聊天通过传递入站
聊天ID。
随附脚本 | Bundled Script
scripts/feishu_file_sender.py


微信扫一扫,打赏作者吧~