lark-mail

Compose, read, organize, and send Lark Mail messages via the lark-cli command line.

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

SYSTEM DOCUMENTATION & REQUIREMENTS

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

What problem does it solve? Managing a Lark (Feishu) mailbox manually is slow when you need to triage inboxes, draft replies, search messages, or automate mail rules. This Skill lets an AI agent operate the entire mailbox through lark-cli shortcuts while enforcing strict safety rules against prompt injection from untrusted email content. ## Core Features & Use Cases - Read and triage mail: List inbox summaries with +triage, read single or batched messages with +message/+messages, and load full threads with +thread. - Compose safely: Create drafts by default with +send, +reply, +reply-all, +forward, and +draft-create; actual sending always requires explicit user confirmation via --confirm-send. - Organize and automate: Modify labels, read state, and folders with +message-modify, soft-delete with +message-trash, manage inbox rules, templates, signatures, read receipts, scheduled sends, and recalls. - Use Case: Ask the assistant to summarize today's unread inbox, draft an HTML reply to a client thread with an attachment, show you the draft link, and send it only after you approve. ## Quick Start Ask the assistant to list my unread Lark inbox summaries and draft a reply to the latest message from my manager without sending it.

Frequently Asked Questions about lark-mail

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

FAQPage Schema
How do I send an email with lark-cli mail?

Use lark-cli mail +send with --to, --subject, and --body to create a draft by default. Only after the user explicitly confirms recipients and content should you add --confirm-send or send the draft via user_mailbox.drafts send.

How do I read multiple emails at once in Lark Mail?

Use lark-cli mail +messages --message-ids with a comma-separated ID list instead of looping +message. The CLI automatically batches more than 20 IDs and merges the normalized output.

Does lark-cli mail support scheduled sending and cancellation?

Yes, pass --send-time with a Unix timestamp alongside --confirm-send on send, reply, or forward shortcuts. Cancel with user_mailbox.drafts cancel_scheduled_send, which returns the message to draft state.

Can I use HTML formatting in Lark Mail drafts?

Yes, HTML is the default body format and is auto-detected. Writing shortcuts run a built-in lint that sanitizes unsafe markup, and +lint-html previews what the lint will change before creating a draft.

Why does lark-cli mail require user identity for sending?

All write operations such as sending, replying, forwarding, and draft editing only support --as user identity. Bot identity works only for read operations and requires the app to have the corresponding permissions granted.

How do I recall a sent email in Lark Mail?

If the send response includes recall_available: true, call user_mailbox.sent_messages recall with the message_id, then poll get_recall_detail for the asynchronous result. Recall only works on user request and not for scheduled messages.