Feishu File Sender

📎 一键补齐飞书文件消息能力

integration榜 #2

补齐飞书渠道缺失的文件投递能力,自动读取本地凭证调用 OpenAPI 上传并发送文件,让 agent 生成的报告/图表直达聊天窗口。

收藏
30.3k
安装
6.2k
版本
1.0.9
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

Feishu File Sender 是 OpenClaw 生态的桥接型工具技能,专门解决飞书渠道原生不支持文件消息的架构缺口。通过直接调用飞书 OpenAPI,实现「本地文件 → 飞书云存储 → IM 消息」的完整链路。

典型场景:Agent 生成 Excel 报表、PDF 文档或图片后,自动触发该技能将文件投递到当前聊天会话,无需用户手动下载再上传。

使用方式

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

参数设计极简:仅 --file 为必填,接收方 ID 支持自动从环境变量读取或前缀智能识别(oc_/ou_/on_),降低集成成本。

显著优点

  • 零配置感知:自动匹配当前工作区解析 agentId,从 ~/.openclaw/openclaw.json 读取对应凭证,无需硬编码
  • 双 API 原子封装:内部完成「上传获取 file_key → 发送文件消息」两步,对外暴露单一命令接口
  • 多身份类型兼容:支持 chat_id(群)、open_id(用户)、user_id 三种接收方标识
  • 环境变量兜底OPENCLAW_CHAT_ID 等变量支持无参调用,适合流水线场景

潜在缺点与局限性

  • 凭证耦合强:依赖本地 OpenClaw 专属配置文件路径,非标准飞书 SDK 鉴权方式,迁移成本较高
  • 单租户限制:仅支持通过 tenant access token 访问,未实现多租户动态切换
  • 无重试与幂等:脚本级实现,未内置网络异常重试或重复发送防护
  • 文件类型简化:默认 stream 类型,对飞书特殊的 opus 音频等场景未做细分适配
  • 错误码依赖人工:230002(机器人未进群)等错误需用户自行排查,无自动修复建议

适合人群

  • OpenClaw 平台用户:已深度使用 OpenClaw agent 框架的开发者
  • 飞书企业自建应用开发者:拥有 appId/appSecret 管理权限的技术人员
  • 自动化报表场景:需要将 Python/R 生成的数据文件自动投递到飞书群的 DevOps/数据团队

常规风险

| 风险类型 | 说明 | 缓解措施 |
|---------|------|---------|
| 凭证泄露 | `~/.openclaw/openclaw.json` 包含 appSecret,若文件权限 644 可能被同服务器用户读取 | 设置 600 权限,或使用密钥管理服务 |
| 越权发送 | 拿到凭证后可向任意飞书群发送文件,若 agent 被提示注入攻击可能滥用 | 绑定 agentId → 指定 accountId 的映射白名单 |
| 敏感文件外泄 | Agent 生成的临时文件可能含业务数据,上传后留存飞书云端 | 配置飞书应用的数据居留策略,定期清理 |
| 日志残留 | 脚本执行可能留下含 file_key 或 chat_id 的 shell history | 启用 HISTCONTROL=ignorespace 或使用子进程隔离 |

Feishu File Sender 内容

暂无文件树

手动下载zip · 7.8 kB
contentapplication/octet-stream
请选择文件