lark-im

Send messages and manage group chats through the Feishu OpenAPI via lark-cli.

Updated May 28, 2026
One-click install
npx skills add https://github.com/changfengpro/agent-skills --skill lark-im-changfengpro
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: lark-im
Source: https://github.com/changfengpro/agent-skills/tree/main/skills/lark-im
Command: npx skills add https://github.com/changfengpro/agent-skills --skill lark-im-changfengpro

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill 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 chats and message history, managing group members, handling interactive cards, and organizing feed shortcuts and tags without manual app interaction. ## 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. - Chat administration: Create group or topic chats, list and search chats, manage members, managers, moderation, nicknames, and per-user mute settings with correct user/bot identity selection. - Interactive cards & feed management: Build and update interactive cards, consume card.action.trigger callbacks, and manage bookmarks, feed shortcuts, and feed groups (tags). - Use Case: A user asks to find the "release team" group, read the last 50 messages, and post a summary card with action buttons; the skill resolves the chat_id, pulls history, sends the card, and listens for button callbacks. ## Quick Start Ask the agent to send a message like "Send 'standup in 10 minutes' to the engineering group chat" and it will search the chat, resolve the chat_id, and deliver the message via 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, first run lark-cli im +chat-search --query to resolve the chat_id, then send the message.

How do I search Feishu chat history by keyword?

Use lark-cli im +messages-search with keyword, sender, chat, and time-range filters; it supports user or bot identity and auto-pagination via --page-all. Results are enriched with sender names and chat details automatically.

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

User identity (--as user) uses user_access_token and acts as the authorized user; bot identity (--as bot) uses tenant_access_token and acts as the app bot. Some operations are user-only (feed shortcuts, p2p listing) or bot-only (urgent messages, merge_forward), and permission checks differ per identity.

Can I download images and files from Feishu messages?

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

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. Use the two-step flow: create the group with the bot including only the current user, then add other members via chat.members create with user identity.

How do I handle interactive card button callbacks in Feishu?

Enable callback configuration in the developer console, then run lark-cli event consume card.action.trigger as bot to stream interaction events. Use the event's token (valid 30 minutes, max 2 uses) with the delayed card update API to replace the card content.