核心用法
feishu-send-image 是一个专门用于飞书(Feishu)平台的图片发送技能。它通过调用飞书机器人 API,将本地图片文件(PNG/JPG/GIF/WebP)以原生图片消息形式发送给指定用户或群聊,而非文件附件。
关键问题:OpenClaw 内置的 message 工具即使使用 filePath、media 或 buffer 参数,在飞书平台也只能生成文件附件,无法显示为内联图片。本技能通过直接调用飞书 Bot API 的三步流程解决此问题:
1. 获取租户访问令牌(auth/v3/tenant_access_token/internal)
2. 上传图片获取 image_key(im/v1/images)
3. 发送图片消息(im/v1/messages,msg_type=image)
显著优点
- 原生体验:图片直接显示在聊天记录中,而非需要点击下载的附件
- 格式兼容:支持 PNG、JPG、GIF、WebP 等常见格式
- 灵活接收:支持
open_id(单聊)和chat_id(群聊)两种接收方式 - 凭证复用:自动读取
~/.openclaw/openclaw.json中的飞书应用凭证
潜在缺点与局限性
- 依赖外部脚本:需调用
bash scripts/feishu_send_image.sh,存在 shell 注入风险若输入未校验 - 凭证管理:需手动配置
appId和appSecret,存在密钥泄露风险 - 平台锁定:仅支持飞书,无多平台适配
- 无图片处理:不支持图片压缩、水印、格式转换等二次处理
- 失败处理简单:仅返回退出码 1 和错误打印,无重试机制
适合人群
- 需要发送数据可视化图表(Matplotlib、ECharts 等生成)的开发者
- 自动化报告场景中需要发送截图的工作流
- 飞书企业内部机器人开发者
常规风险
- 密钥泄露:
appSecret以明文形式出现在命令行参数中,可能被历史记录、进程列表捕获 - 路径遍历:若
image_path参数未严格校验,可能导致任意文件读取 - API 限流:高频调用可能触发飞书 API 频率限制
- 依赖稳定性:依赖飞书开放平台 API 可用性和稳定性