Agent skill · software engineering · aiskillstore
lark-event
Lark/Feishu real-time event listening / subscribing / consuming: stream events as NDJSON via `lark-cli event consume <EventKey>` (covers IM messages/reactions/chat changes, Task updates, VC meeting started/joined/ended, Minutes generated, Whiteboard updated, etc.). Use for Lark bots, real-time message processing, long-running subscribers, streaming webhook/push handlers. Supports `--max-events` / `--timeout` bounded runs and a stderr ready-marker contract — designed for AI agents running as subprocesses.
Why this skill is useful
Adds specific commands and usage patterns for consuming Lark events that the AI wouldn't reliably generate on its own.
What it needs
Requires lark-cli installed locally. About 6k tokens when loaded. Last updated 2026-08-07. 405 stars on the source repository.
What this skill does
Lark Events Prerequisite: Read ../lark-shared/SKILL.md first for authentication, --as user/bot switching, Permission denied handling, and safety rules. Core commands Command Purpose ------ ------ lark-cli event list [--json] List all subscribable EventKeys lark-cli event schema <EventKey> [--json] Show an EventKey's params and output schema lark-cli event consume <EventKey> [flags] Blocking consume; events → stdout NDJSON lark-cli event status [--json] [--fail-on-orphan] Inspect the local bus daemon status lark-cli event stop [--all] [--force] Stop the bus daemon Common flags Flag Description --- --- --param key=value / -p Business params (repeatable; comma-separated for multi-value). Unknown keys fail with valid names listed inline --jq <expr> jq expression to filter / transform each event; empty output skips the event --max-events N Exit after N events. Default 0 = unlimited --timeout D Exit after duration D (e.g. 30s, 2m). Default 0 = no timeout. Whichever of --max-events / --timeout fires first wins --output-dir <dir> Write each event as a file (relative paths only; prevents traversal) --quiet Suppress stderr diagnostics. AI should not use this — it silences the ready marker --as user\ bot\ auto Identity for the session (see lark-shared) Examples Call flow 1. lark-cli event list --json → pick a legal key 2. lark-cli event schema <key> --json → read resolvedoutputschema + jqrootpath to determine field paths 3. lark-cli event consume <key> [--jq '<expr>'] → consume Subprocess contract Ready marker event consume's stderr emits a fixed line [event] ready eventkey=<key>. Parent processes should block on stderr until this line appears, then start reading stdout. Do not fall back to sleep. stdin EOF = graceful exit event consume treats stdin close as a shutdown signal (wired for AI subprocess callers). Bounded runs are exempt: when --max-events or --timeout is set (> 0), stdin EOF is ignored and the run exits only via its own bound, timeout, or SIGTERM. …
How to use it
Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:
@skills aiskillstore/lark-event