
Feishu Lark
Post deploy alerts, marketing cards, and team announcements to Feishu or Lark groups from your agent via webhook or Bot API.
Overview
feishu-lark is an agent skill most often used in Build (also Ship, Operate) that sends Feishu and Lark messages and interactive cards via webhooks or the Bot API.
Install
npx skills add https://github.com/openclaudia/openclaudia-skills --skill feishu-larkWhat is this skill?
- Custom Bot Webhook mode with FEISHU_WEBHOOK_URL and optional FEISHU_WEBHOOK_SECRET
- App Bot API mode with FEISHU_APP_ID and FEISHU_APP_SECRET for richer sends
- Text, rich text, and interactive card message formats
- Credential check bash snippets before sending
- Trigger phrases: post to feishu, lark webhook, 飞书机器人
- Two integration modes: Custom Bot Webhook and App Bot API
Adoption & trust: 1.3k installs on skills.sh; 454 GitHub stars; 3/3 security scanners passed (skills.sh audits).
What problem does it solve?
You need reliable team or user notifications in Feishu/Lark but do not want to reverse-engineer payload formats and auth modes from scratch.
Who is it for?
Solo builders automating release notes, incident pings, or growth announcements to existing Feishu/Lark group bots.
Skip if: Teams on Slack-only or email-only comms with no Feishu/Lark workspace, or products that must not expose webhook URLs to agents.
When should I use this skill?
User says post to feishu, lark message, feishu webhook, send to lark, feishu bot, or 飞书/飞书机器人.
What do I get? / Deliverables
Your agent formats and sends the right webhook or API request after confirming which credentials mode is available.
- Sent chat messages or interactive cards
- Credential readiness check output
Recommended Skills
Journey fit
Spans multiple journey phases - primary shelf plus alternate fits below.
Messaging hooks are wired during product build but reused across ship, launch, and operate notifications. Feishu/Lark is a third-party workplace integration, which fits the integrations subphase as the primary shelf.
Where it fits
Wire a deploy webhook into your staging Feishu group during backend setup.
Push a rich-text release summary card when a tagged build ships.
Broadcast a product launch announcement to your Lark community channel.
Alert on-call via Feishu when monitoring detects a production regression.
How it compares
Workplace messaging integration skill, not a generic SMTP or Slack skill package.
Common Questions / FAQ
Who is feishu-lark for?
Indie developers and small teams using Feishu or Lark who want their agent to send rich notifications without hand-writing JSON payloads each time.
When should I use feishu-lark?
During Build when wiring integrations, at Ship for deploy alerts, at Launch for announcement cards, or in Operate for on-call pings to group chats.
Is feishu-lark safe to install?
It uses network and may handle webhook secrets; review the Security Audits panel on this page and restrict env access in your agent setup.
SKILL.md
READMESKILL.md - Feishu Lark
# Feishu / Lark Messaging Skill You are a messaging specialist for Feishu (飞书, ByteDance's Chinese workplace platform) and Lark (the international version). Your job is to send messages, interactive cards, and marketing content to Feishu/Lark group chats via Custom Bot Webhooks or the App Bot API. ## Prerequisites Check which credentials are available: ```bash echo "FEISHU_WEBHOOK_URL is ${FEISHU_WEBHOOK_URL:+set}" echo "FEISHU_WEBHOOK_SECRET is ${FEISHU_WEBHOOK_SECRET:+set}" echo "FEISHU_APP_ID is ${FEISHU_APP_ID:+set}" echo "FEISHU_APP_SECRET is ${FEISHU_APP_SECRET:+set}" ``` ### Two Integration Modes | Mode | Credentials Required | Capabilities | |------|---------------------|--------------| | **Custom Bot Webhook** (simple) | `FEISHU_WEBHOOK_URL` (+ optional `FEISHU_WEBHOOK_SECRET`) | Send text, rich text, interactive cards to a single group | | **App Bot API** (full featured) | `FEISHU_APP_ID` + `FEISHU_APP_SECRET` | Send to any chat, upload images, at-mention users, manage cards, receive events | If no credentials are set, instruct the user: > **Custom Bot Webhook (quickest setup):** > 1. Open a Feishu/Lark group chat > 2. Click the group name at the top to open Group Settings > 3. Go to **Bots** > **Add Bot** > **Custom Bot** > 4. Name the bot and optionally set a Signature Verification secret > 5. Copy the webhook URL and add to `.env`: > ``` > FEISHU_WEBHOOK_URL=https://open.feishu.cn/open-apis/bot/v2/hook/{webhook_id} > FEISHU_WEBHOOK_SECRET=your_secret_here # optional, for signed webhooks > ``` > > **App Bot API (for advanced use):** > 1. Go to [Feishu Open Platform](https://open.feishu.cn/app) or [Lark Developer Console](https://open.larksuite.com/app) > 2. Create a new app, enable the Bot capability > 3. Add required permissions: `im:message:send_as_bot`, `im:chat:readonly` > 4. Publish and approve the app, then add to `.env`: > ``` > FEISHU_APP_ID=cli_xxxxx > FEISHU_APP_SECRET=xxxxx > ``` ### Webhook URL Formats - **Feishu (China):** `https://open.feishu.cn/open-apis/bot/v2/hook/{webhook_id}` - **Lark (International):** `https://open.larksuite.com/open-apis/bot/v2/hook/{webhook_id}` ### API Base URLs - **Feishu (China):** `https://open.feishu.cn/open-apis` - **Lark (International):** `https://open.larksuite.com/open-apis` --- ## 1. Custom Bot Webhook Messages ### 1.1 Plain Text Message ```bash curl -s -X POST "${FEISHU_WEBHOOK_URL}" \ -H "Content-Type: application/json" \ -d '{ "msg_type": "text", "content": { "text": "Hello from OpenClaudia! This is a test message." } }' ``` **At-mention everyone in the group:** ```bash curl -s -X POST "${FEISHU_WEBHOOK_URL}" \ -H "Content-Type: application/json" \ -d '{ "msg_type": "text", "content": { "text": "<at user_id=\"all\">Everyone</at> Important announcement: new release is live!" } }' ``` ### 1.2 Rich Text Message (Post) Rich text supports bold, links, at-mentions, and images in a structured format. ```bash curl -s -X POST "${FEISHU_WEBHOOK_URL}" \ -H "Content-Type: application/json" \ -d '{ "msg_type": "post", "content": { "post": { "zh_cn": { "title": "产品更新公告", "content": [ [ {"tag": "text", "text": "我们很高兴地宣布 "}, {"tag": "a", "text": "v2.0 版本", "href": "https://example.com/changelog"}, {"tag": "text", "text": " 已正式发布!"} ], [ {"tag": "text", "text": "主要更新:"} ], [