Skip to content

Guide · Agent skill

How to use the Feishu/Lark notifications agent skill

Updated · written with AI from the project's own documentation and checked against our catalogue data

feishu-notify is an agent skill that lets an AI agent post status messages to Feishu (also called Lark), a team chat app, while it works. It is aimed at researchers running long unattended experiment or paper-review pipelines, and at developers who already use Feishu/Lark. After this guide you will know what the skill does, how to install it, how to configure push or interactive mode, and how to trigger it.

Feishu/Lark Notificationswanshuiyin/Auto-claude-code-research-in-sleep · MIT

Quick start

  1. 1Download and unzip the skill. Download the ZIP from this page and unzip it so the folder containing SKILL.md is in ~/.claude/skills/ or your project's .claude/skills/.
  2. 2Create a Feishu/Lark bot webhook. In your Feishu/Lark chat, add a custom bot and copy its webhook URL. The skill needs this URL for push mode.
  3. 3Write ~/.claude/feishu.json. Create the file with mode set to push, your webhook_url, and the interactive settings if you plan to use interactive mode.
  4. 4Choose a mode. Use push for one-way alerts. Use interactive only if you have also run the feishu-claude-code bridge locally.
  5. 5Trigger a test notification. Ask the agent to notify Feishu, or run /feishu-notify with a short test message, then check your chat.
  6. 6Let other skills call it. Run a supported workflow such as /run-experiment or /auto-review-loop and confirm that event cards arrive.

What is an agent skill, and what does feishu-notify do?

An agent skill is a folder containing a SKILL.md file with instructions that an AI agent (such as Claude Code) reads and follows when a matching request comes up. feishu-notify is one such skill. It sends notifications to a Feishu/Lark chat when something happens during a workflow.

It is designed as an internal utility. Other research-automation skills in the ARIS set call it at key events: when an experiment finishes, when a review score comes in, when a checkpoint is waiting for input, when an error occurs, or when a pipeline completes. You can also invoke it manually.

Install the feishu-notify skill

Download the ZIP for this skill from this page and unzip it. The skill is a folder that contains SKILL.md. Place that folder in one of these locations:

  • Personal skills: ~/.claude/skills/
  • Project skills: the .claude/skills/ folder inside your project
  • Claude apps: upload the skill under Settings → Capabilities → Skills

Create the configuration file

The skill reads ~/.claude/feishu.json. If this file does not exist, all Feishu functionality is disabled and the skills behave as they did before. Push mode needs a Feishu/Lark custom bot webhook URL. Interactive mode also needs the feishu-claude-code bridge running locally.

  • mode: "push" sends one-way webhook notifications with no reply.
  • mode: "interactive" adds two-way messages, such as approve or reject, through the bridge.
  • mode: "off" or a missing file means nothing happens.
{ "mode": "push", "webhook_url": "https://open.feishu.cn/open-apis/bot/v2/hook/YOUR_WEBHOOK_ID", "interactive": { "bridge_url": "http://localhost:5000", "timeout_seconds": 300 } }

Trigger the skill with natural requests

You can ask for a notification in plain language. The skill description lists the trigger phrases "发飞书" and "notify feishu". You can also call it directly as /feishu-notify followed by your message text. Other skills trigger it automatically at their event points, so you do not need to ask each time.

  • "notify feishu that the experiment finished"
  • "发飞书 告诉我评审分数已经出来了"
  • /feishu-notify Pipeline paused, waiting for my decision

What the messages look like

In push mode the skill sends a rich card. The card title and colour depend on the event type. The skill's event catalogue includes experiment_done (green), review_scored (blue when the score is 6 or higher, orange below 6), checkpoint (yellow), error (red), pipeline_done (purple) and custom (blue).

  • experiment_done: results table and delta versus baseline
  • review_scored: score, verdict and top three weaknesses
  • checkpoint: question, options and context
  • error: error message and what failed
  • pipeline_done: final summary and deliverables

Understand push and interactive modes

In push mode the skill sends the card with curl and moves on. It does not wait for a reply. If curl returns a non-zero exit code, the skill logs a warning but does not block the workflow.

In interactive mode the skill sends the message to the local bridge and then polls for a reply with a timeout. The reply can be approve, reject, or a typed message. If the timeout passes with no reply, the skill falls back to the calling skill's auto-proceed behaviour. If the bridge is unreachable, it falls back to push mode when a webhook is configured, or skips silently.

curl -s -X POST "$BRIDGE_URL/send" -H "Content-Type: application/json" -d '{"type": "EVENT_TYPE", "title": "TITLE", "body": "BODY", "options": ["approve", "reject", "custom"]}' curl -s "$BRIDGE_URL/poll?timeout=$TIMEOUT_SECONDS"

Safety and network notes

The skill runs shell commands (curl and cat) and makes network requests. Messages are sent to Feishu's servers, so anything you put in them leaves your machine. The skill's rules say never to include API keys, tokens or passwords in messages, but they do not prevent you from sending sensitive unpublished results. If your results are confidential, review what the calling skills put in the body before enabling push mode.

The skill never requires Feishu configuration to be present, and it is designed to fail open so a Feishu outage does not stop your workflow.

  • Keep webhook URLs private. Anyone with the URL can post to your chat.
  • Use the local bridge only on a machine you control.

What people use it for

  • Get a phone alert when a long experiment run in a screen session finishes.
  • Receive a card after each review round with the score and top weaknesses.
  • Approve or reject the next research stage from Feishu while the pipeline waits (interactive mode).
  • Get an error alert when an unattended pipeline stops.

Frequently asked questions

Is feishu-notify free to use?

The skill is released under the MIT licence. The source does not state pricing for Feishu/Lark or the bridge program, so check those services' own terms.

What do I need to use feishu-notify?

You need a Feishu/Lark custom bot webhook URL stored in ~/.claude/feishu.json for push mode, and curl available in your shell. Interactive mode also needs the feishu-claude-code bridge running locally at a URL such as http://localhost:5000.

Where do I put the feishu-notify skill folder?

Place it in ~/.claude/skills/ for personal use or in .claude/skills/ inside a project. In the Claude apps you can upload it under Settings → Capabilities → Skills.

Why does nothing happen when I install it?

By design, if ~/.claude/feishu.json does not exist, or its mode is off, the skill does nothing and returns silently. Create the config file with a valid webhook URL to enable notifications.

Can I use feishu-notify without an agent?

The source describes it as designed to be called by other skills, not as a standalone notifier. It is meant to run inside an agent workflow.

Is it safe to send research results to Feishu?

Messages are sent to Feishu's servers, and the skill's rules only say not to include secrets. If your results are unpublished or sensitive, review what gets posted before relying on it.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

Use feishu-notify if you already work in Feishu/Lark and run long unattended agent workflows, such as experiment or review pipelines, that you want to monitor from your phone. Skip it if you do not use Feishu/Lark, want a general-purpose notifier, or cannot send workflow details to a third-party chat service.

Download the skill