lark-im

Send messages and manage group chats in Feishu via lark-cli.

8|2|Updated Apr 29, 2026
One-click install
npx skills add https://github.com/luojiaaoo/xpeech --skill lark-im-luojiaaoo
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: lark-im
Source: https://github.com/luojiaaoo/xpeech/tree/main/xpeech/agent/skills/buildin/lark-skills/lark-im
Command: npx skills add https://github.com/luojiaaoo/xpeech --skill lark-im-luojiaaoo

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires lark-cli, and includes references (resource) components.

What problem does it solve? It lets an AI agent operate Feishu (Lark) instant messaging end to end: sending and replying to messages, searching chat history, managing group members, uploading and downloading files, and handling interactive card callbacks without manually calling raw OpenAPI endpoints. ## Core Features & Use Cases - Messaging: Send, reply, forward, recall, and search messages across group and P2P chats, with automatic sender-name resolution, reaction enrichment, and optional attachment download. - Group Management: Create group or topic chats, list and search chats, manage members, managers, moderation, nicknames, pins, bookmarks, and feed shortcuts/groups. - Interactive Cards: Build card messages through a guided workflow and consume card.action.trigger callback events to update cards in place. - Use Case: A user asks the agent to find the "daily report" group, read today's messages, and post a summary; the agent resolves the chat_id with +chat-search, pulls history with +chat-messages-list, and sends the summary with +messages-send. ## Quick Start Ask the agent to send a Feishu message to a named group chat, and it will search for the chat_id and deliver the message using lark-cli.

Frequently Asked Questions about lark-im

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I send a message to a Feishu group chat from the command line?▼

Use the lark-cli im +messages-send shortcut with --chat-id and a text, markdown, post, or media payload. If you only know the group name, resolve its chat_id first with lark-cli im +chat-search --query.

How to search Feishu chat history by keyword?▼

Use lark-cli im +messages-search with keyword, sender, chat, and time-range filters, supporting both user and bot identity. It enriches results via batched message fetches and supports auto-pagination with --page-all.

Should I use user identity or bot identity for Feishu IM APIs?▼

It depends on the operation: feed shortcuts, flags, and read-status queries are user-only, while urgent messages and merge_forward are bot-only. Many APIs support both, but permissions, chat membership, and bot visibility determine which identity succeeds.

Can I download images and files from Feishu messages?▼

Yes. Pass --download-resources to message-listing commands to save eligible attachments into ./lark-im-resources/, or use +messages-resources-download for a single image or file. Stickers are not downloadable.

Why does creating a group with a bot fail when inviting users?▼

Bot identity fails with error 232043 when target users are mutually invisible to the bot. Create the group with only the current user first, then add other members through the user-identity chat.members create API.

How do I handle Feishu interactive card button callbacks?▼

Subscribe with lark-cli event consume card.action.trigger as bot, then read the action fields and use the event token with the delayed card update API. The token is valid 30 minutes and usable at most twice, and updates require the complete new card JSON.