Install
openclaw skills install feishu-img-toolFeishu image upload and send tool. Send images to Feishu chats by uploading first then sending with image_key. Usage: `node feishu-image-tool.js send --target <open_id> --file <path>`
openclaw skills install feishu-img-toolTool feishu_image for uploading and sending images to Feishu chats.
Feishu requires a two-step process to send images:
/open-apis/im/v1/images to upload the image and get image_key/open-apis/im/v1/messages with msg_type: "image" and the image_key{
"action": "send",
"target": "ou_xxx", // User open_id or chat_id
"file_path": "/path/to/image.png",
"message": "Optional caption"
}
Parameters:
action: "send"target: Feishu user open_id or chat_id (omit for current conversation)file_path: Path to the image file on the servermessage: Optional text message to send with the imageReturns:
success: booleanimage_key: The uploaded image keymessage_id: The sent message ID{
"action": "upload",
"file_path": "/path/to/image.png"
}
Returns image_key for later use.
{
"action": "send_with_key",
"target": "ou_xxx",
"image_key": "img_v3_xxx"
}
Required credentials (in order of priority):
FEISHU_APP_ID, FEISHU_APP_SECRET~/.feishu-image/config.json# Method 1: Environment variables
export FEISHU_APP_ID="cli_xxx"
export FEISHU_APP_SECRET="xxx"
# Method 2: Config file (~/.feishu-image/config.json)
{
"appId": "cli_xxx",
"appSecret": "xxx"
}
im:message - Send messages as botim:image - Upload imagesim:message - Send messages as botim:image - Upload images{
"action": "send",
"target": "ou_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"file_path": "/tmp/stock-report.png",
"message": "📊 今日股票报告"
}
{
"action": "send",
"file_path": "/tmp/chart.png"
}
@larksuiteoapi/node-sdkclient.im.image.create() for uploadclient.im.message.create() for sendingimage_key is permanent and can be reused by the same app