Feishu File Sender

通过飞书 OpenAPI 上传并发送 agent 生成的本地文件。

已扫描
适合谁
使用 OpenClaw 和飞书的开发者、需要 agent 发送本地文件的用户
不适合谁
不使用飞书的用户、不希望自动读取本地凭证的用户
国内可用性
需网络配置。可能需要网络配置或第三方服务可访问。
安装难度
新手友好(★☆☆)。基于终端操作、依赖、API Key 和本地环境要求的初步判断。

安装与下载

openclaw skills install @ziwenwang28/feishu-file-sender

Skill 说明

命令、参数、文件名以原文为准

Feishu File Sender | 飞书文件发送器

OpenClaw 在本地生成文件,但飞书渠道插件只支持文本消息,没有文件投递能力。本 skill 通过直接调用飞书 OpenAPI(上传+发送)补齐这一底层能力,使生成的文件能回传到聊天中。

将本地文件上传到飞书并作为文件消息发送。

快速开始

python3 scripts/feishu_file_sender.py \
  --file /absolute/path/to/report.xlsx \
  --receive-id oc_xxx

使用方法

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>

参数说明

  • --file(必填):本地文件绝对路径。
  • --receive-id(可选):目标 chat_id 或 open_id。若省略,脚本会读取 OPENCLAW_CHAT_ID(或 OPENCLAW_RECEIVE_ID / FEISHU_CHAT_ID)。
  • --receive-id-type(可选):若省略,将根据前缀自动识别:

- oc_ → chat_id

- ou_ → open_id

- on_ → user_id

  • --file-type(可选):飞书上传的文件类型,默认 stream

工作原理

  1. 通过 cwd 匹配 OpenClaw 工作区,解析当前 agent id。
  2. 根据 agent id 从 ~/.openclaw/openclaw.json 读取 appId/appSecret。
  3. 调用飞书 上传文件 API 获取 file_key
  4. 调用飞书 发送消息 API 发送文件。

错误处理

  • 缺少凭证 → 确保 channels.feishu.accounts 存在于 ~/.openclaw/openclaw.json,且 bindings 映射 agentId → accountId。
  • 机器人不在群内(230002) → 将机器人加入目标群或换一个群。
  • 缺少 receive_id → 传入 --receive-id 或设置 OPENCLAW_CHAT_ID
  • HTTP 错误 → 查看飞书错误返回中的 log_id 进行排查。

安全说明

本技能会从本机 OpenClaw 配置中读取飞书凭证(~/.openclaw/openclaw.json):

  • channels.feishu.accounts.*.appId
  • channels.feishu.accounts.*.appSecret

这些凭证仅用于获取 tenant access token 并发送文件。技能不会存储或向其他地方传输凭证。

备注

  • 本技能面向 所有 agent 设计,会自动读取当前工作区来选择正确的飞书应用凭证。
  • 建议通过入站 chat_id 发送到 当前聊天

随附脚本

  • scripts/feishu_file_sender.py
Z
@ziwenwang28

已收录 1 个 Skill

相关推荐