lark-mail

Draft, send, read, and search Feishu mailbox emails via lark-cli commands.

Updated Jan 10, 2026
One-click install
npx skills add https://github.com/Rabbit-Ivan/Ivan-skills --skill lark-mail-rabbit-ivan
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: lark-mail
Source: https://github.com/Rabbit-Ivan/Ivan-skills/tree/main/skills/lark-mail
Command: npx skills add https://github.com/Rabbit-Ivan/Ivan-skills --skill lark-mail-rabbit-ivan

SYSTEM DOCUMENTATION & REQUIREMENTS

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

What problem does it solve? Managing a Feishu (Lark) mailbox through an AI agent requires knowing dozens of API endpoints, permission scopes, and safe sending practices. This Skill provides a complete operational guide for drafting, sending, replying, forwarding, reading, and searching emails through lark-cli, with built-in safeguards against accidental sends and prompt injection from untrusted email content. ## Core Features & Use Cases - Full email lifecycle: Compose new emails, reply, reply-all, and forward with automatic subject prefixes, RFC 2822 threading headers, HTML bodies, attachments, and inline CID images. - Draft-first safety model: All send-type commands save as drafts by default and require explicit user confirmation before actual delivery, plus post-send delivery status verification. - Mailbox management: Triage inbox summaries, full-text search, read messages and threads, manage folders, labels, contacts, download attachments, and watch for incoming mail events via WebSocket. - Use Case: Ask the agent to "reply to the latest email from my boss confirming the schedule" — it reads the message, creates a reply draft with proper threading headers, shows you a summary, and sends only after your approval. ## Quick Start Ask the agent to check your Feishu inbox and draft a reply to the most recent unread email.

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?▼

Run lark-cli mail +send with --to, --subject, and --body to create a draft first. After the user confirms the recipients and content, send it with lark-cli mail user_mailbox.drafts send, then verify delivery via the send_status API.

How do I reply to an email and keep the thread intact?▼

Use lark-cli mail +reply with the message ID and body. It automatically sets the Re: subject, default recipient, and RFC 2822 In-Reply-To and References headers so the reply stays in the same conversation thread.

Does lark-cli mail send messages immediately by default?▼

No. All send-type shortcuts (+send, +reply, +reply-all, +forward) save a draft by default. Actual sending requires either the --confirm-send flag after explicit user approval or a separate drafts send call.

How do I search my Feishu inbox from the command line?▼

Use lark-cli mail +triage with --query for full-text search or --filter for exact conditions like folder, sender, subject, unread status, attachments, and time ranges. It returns message summaries with IDs for follow-up reads.

How do I edit an existing mail draft without losing the quoted content?▼

Use lark-cli mail +draft-edit with a --patch-file containing the set_reply_body op. It replaces only your written portion and automatically re-attaches the quoted original message; use set_body only for full replacement.

What permissions does lark-cli mail require?▼

Reading needs mail:user_mailbox.message:readonly, sending needs mail:user_mailbox.message:send, and folder or contact management needs their respective read/write scopes. Event watching additionally requires mail:event and the message_received_v1 bot event subscription.