What problem does it solve? Building Lark/Feishu bots or automation that reacts to real-time events (messages, reactions, meeting starts, task updates) normally requires standing up webhook servers and handling subscription lifecycles. This Skill lets an AI agent subscribe to and consume those events directly as NDJSON streams with bounded runs and a well-defined subprocess contract. ## Core Features & Use Cases - Event discovery and schema inspection: List all subscribable EventKeys and inspect each key's params, output schema, and jq root path before consuming. - Streaming consumption: Consume events from IM (12 keys), Task, VC meetings, Minutes, and Whiteboard as NDJSON to stdout, with jq filtering/projection and --max-events / --timeout bounded runs. - Subprocess contract for AI agents: A stderr ready marker, stdin-EOF graceful shutdown, structured JSON error envelopes, and documented exit codes make it safe to run as a long-lived subprocess. - Use Case: Run lark-cli event consume im.message.receive_v1 --as bot to stream every incoming message, then filter with --jq 'select(.chat_type=="p2p")' to process only direct messages. ## Quick Start Ask the agent to listen for incoming Lark messages by running lark-cli event consume im.message.receive_v1 as the bot identity and show each received message.