Communitygithub.com

larksuite/lark-meeting

飞书视频会议:查询会议记录与会议产物(纪要/逐字稿/妙记)、妙记搜索/上传/下载/编辑、机器人参与会议;查询进行中的会议、实时会议内容(发言/聊天/共享文档)问答(会上/会里)、发送会中聊天/表情;基于 meeting_id、meeting_no、event_id、note_id、minute_token、vc-node-id 或妙记 URL 查询相关信息。预约会议、忙闲和会议室管理走 lark-calendar。

lark-meeting 是什么?

lark-meeting is a Claude Code agent skill that 飞书视频会议:查询会议记录与会议产物(纪要/逐字稿/妙记)、妙记搜索/上传/下载/编辑、机器人参与会议;查询进行中的会议、实时会议内容(发言/聊天/共享文档)问答(会上/会里)、发送会中聊天/表情;基于 meeting_id、meeting_no、event_id、note_id、minute_token、vc-node-id 或妙记 URL 查询相关信息。预约会议、忙闲和会议室管理走 lark-calendar。.

兼容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/larksuite/cli/tree/main/skills/lark-meeting

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

lark-meeting 是做什么的?

Unified entry point for Lark video conferencing, supporting operations like querying meeting records, real-time meeting interaction, managing Minutes, and reading AI-generated notes. This skill handles domain relationships, task routing, and cross-command orchestration.

No need to pre-read lark-shared or pre-run auth status --verify — only read that Skill when encountering unauthenticated, token/identity or scope errors, then retry. For authentication, identity, or scope management requests, use that Skill directly.

Identity Initialization and Continuity

Treat source_identity as the state of the cross-command workflow:

  1. If source identity already exists in context: strictly preserve it. When the user asks to switch, first explain identity continuity and permission impact; do not switch silently.
  2. No source identity, user explicitly specifies an identity: use the user-specified --as.
  3. No source identity and user does not specify: use --as bot when the operation semantics clearly require an application bot; otherwise explicitly use --as user.

After determining source_identity, check whether the target command supports that identity:

  • If supported: pass it explicitly and proceed.
  • If not supported: explain the limitation and stop; do not replace the identity just to make the command succeed.
  • Only start a new workflow with a new identity after the user explicitly agrees to switch.

Domain Model & Concepts

[Meeting Sources]

Calendar Event (event_id) ──Booked or Associated─┐
Instant Meeting (no event_id) ────────────────────┴──► Meeting (meeting_id)

Calendar Event ──meeting_note──────────────────────► Doc (user notes, independent of AI notes)

[Meeting Artifacts]

Meeting (meeting_id)
├── AI Summary ──► Note (note_id)
│                   ├── Note Document ──────────► Doc (note_doc_token)
│                   ├── Verbatim Transcript
│                   │   ├── normal  ─────────────► Doc (verbatim_doc_token)
│                   │   └── unified ─────────────► note + transcript (not a standalone Doc)
│                   └── Shared Documents ────────► Doc (shared_doc_tokens)
│
└── Recording ──► Minutes (minute_token)
                    ├── AI Artifacts: Summary / Todo / Chapter / Keyword
                    ├── Transcript (alias: "transcription", "verbatim transcript", "text transcript")
                    └── Original Audio/Video

Local Audio/Video ──────────────────────────────► Minutes (minute_token)
ObjectPrimary IdentifierConcept & Relationship
Calendar Eventevent_idAn event on the calendar with time, attendees, room, and RSVP; can be booked or associated with a VC meeting; not a full meeting record. The meeting_note on an event is a user-manually-bound Doc, unrelated to AI Notes.
Meetingmeeting_idThe actual video conference, which can originate from a Calendar event or be an instant meeting without an event. Meeting topic, time, attendee snapshot, and in-meeting events belong to meeting data; Notes and Minutes are possible post-meeting artifacts.
Note (AI Notes)note_idA logical collection of artifacts generated after AI summary is enabled. note_display_type determines how to retrieve verbatim transcripts.
Minutesminute_tokenGenerated from meeting recording or local audio/video upload; contains summary, todos, chapters, keywords, transcript (aliases: "transcription", "verbatim transcript", "text transcript") and original audio/video; may be associated with a VC meeting or standalone.
DocDoc tokenContent container, not a meeting identifier. note_doc_token, shared_doc_tokens, and some verbatim_doc_token point to Docs; a Doc token cannot be used as note_id or meeting_id.

Core Identifiers

  • meeting_id: Meeting ID. A long numeric string, not a 9-digit meeting number.
  • meeting_no: Meeting number. 9-digit pure number; CLI parameter is --meeting-number.
  • minute_token: Minutes token. Lowercase alphanumeric string, typically extracted from a Minutes URL /minutes/<minute_token>.

All identifiers above must be passed as strings; they cannot be substituted for each other.

Domain Invariants

  • Notes and Minutes come from two independent pipelines (AI summary and recording). A meeting may have both, only one, or neither; do not infer the existence of a minute_token from a note_id, or vice versa.
  • Minutes can be generated directly from local audio/video and therefore may not be associated with a meeting_id or Calendar event_id.
  • Calendar meeting_note, Note note_id, Minutes minute_token, and various Doc tokens identify different objects. They cannot be swapped, substituted into commands from other domains, or derived from one another.

Quick Actions

Query Active Meeting Content

# Current user's meeting
lark-cli vc +meeting-list-active --as user

# Target user's meeting visible to the bot
lark-cli vc +meeting-list-active --as bot --user-id <open_id>

# After identifying a unique meeting_id, reuse the source identity
lark-cli vc +meeting-events --as <source_identity> --meeting-id <meeting_id> --page-all --format pretty

When there are multiple active meetings, first select which one to query; if there is only one, query its events directly.

Bot identity returns only meetings where the target user is participating and the bot is also in the same meeting; an empty result does not mean the target user is not in a meeting. When explaining results to users, use "user identity" or "bot identity" — avoid exposing internal terms like user/bot.

Scenario Handbooks

When the task goal matches a scenario, read the corresponding handbook and follow its workflow.

  • Query Meeting and Its Artifacts: Locate historical meetings by topic, time, attendees, or meeting_id / meeting_no / event_id; query attendees, recordings, and associated Notes or Minutes; summarize or review based on meeting records.
  • Query Minutes and Their Artifacts: With an existing Minutes URL / minute_token, or search by title, owner, or participants; read summaries, todos, chapters, keywords, and verbatim transcripts; download original audio/video or query associated Notes.
  • Create and Edit Minutes, Manage Minutes Permissions: Generate Minutes from local audio/video along with transcripts, summaries, todos, or chapters; edit Minutes title, summary, todos, keywords, or speaker labels; apply for Minutes permissions or view/assign collaborator permissions.
  • Query Notes and Associated Artifacts: With an existing note_id, Notes Docx URL/token, or need to query note body, verbatim transcript, Minutes, shared documents, and other associated artifacts.
  • Bot Join Live Meeting & In-Meeting Interaction: Full orchestration of bot active meeting discovery, initiating or joining, inviting, event pulling, screenshots, text/emoji/countdown interactions, ending the meeting, and leaving after explicit authorization.
  • Live Meeting Events & In-Meeting Interaction: Query active meetings, view speech/chat/shared content, optionally read current meeting screen, or send text/emojis and manipulate countdowns without triggering new join/leave operations, using user identity or a bot identity already in the meeting.

Command Reference

CommandPurposeReference Method
vc +searchSearch historical meetingslark-vc-search
vc +detailQuery meeting info and associated Note & Minutes identifierslark-vc-detail
vc meeting getQuery basic meeting info and attendee snapshotlark-cli vc meeting get --help
vc +recordingLocate recordings and Minutes from a meetinglark-vc-recording
vc +meeting-list-activeDiscover currently visible active meetingslark-vc-meeting-list-active
vc +meeting-eventsRead in-meeting events and shared contentlark-vc-meeting-events
vc +meeting-message-sendSend in-meeting text messages or emojislark-vc-meeting-message-send
vc +meeting-screenshotCapture video meeting screenshotlark-vc-meeting-screenshot
vc +meeting-countdownSet, extend, end early, or dismiss in-meeting countdownlark-vc-meeting-countdown
vc +meeting-joinHave the application bot join a meetinglark-vc-agent-meeting-join
vc +meeting-inviteInvite specified users or all eligible scheduled attendees via the botlark-vc-agent-meeting-invite
vc +meeting-endHave the current Host bot end the meetinglark-vc-agent-meeting-end
vc +meeting-leaveHave the application bot leave the meetinglark-vc-agent-meeting-leave
minutes +searchSearch Minuteslark-minutes-search
minutes minutes getQuery basic Minutes infolark-cli minutes minutes get --help
minutes +detailRead Minutes info and specified artifactslark-minutes-detail
minutes +downloadDownload original Minutes audio/videolark-minutes-download
minutes +uploadGenerate Minutes from cloud space audio/videolark-minutes-upload
minutes +updateEdit Minutes titlelark-minutes-update
minutes +speaker-replaceReplace speaker labels in Minutes transcriptlark-minutes-speaker-replace
minutes +summaryReplace Minutes AI Summarylark-minutes-summary
minutes +todoAdd, delete, or edit Minutes AI To-doslark-minutes-todo
minutes +apply-permissionApply for view or edit permissions on Minuteslark-minutes-apply-permission
drive +member-listView Minutes collaborators and their permissionslark-drive-member-list
drive +member-addAssign view or edit permissions for Minutes to specified memberslark-drive-member-add
minutes +word-replaceBatch replace keywords in Minutes transcriptlark-cli minutes +word-replace --help
note +detailQuery Notes and associated document identifierslark-note-detail
note +transcriptGet unified Notes transcriptlark-note-transcript

Progressive Loading Rules

Load progressively: "Quick Actions → Scenario Handbooks → Command Reference".

  1. If the user's goal meets the entry conditions for a "Quick Action", execute the corresponding CLI directly; do not pre-read scenario handbooks, command references, --help, or schemas.
  2. If the goal does not meet Quick Action conditions, or if critical identifiers are missing, disambiguation is needed, or a write operation is involved, read the one primary scenario handbook that matches the goal; if the primary scenario explicitly delegates to a downstream scenario, only continue reading the referenced scenario or section, and follow its workflow to execute CLI commands.
  3. Only when specific parameters, return fields, special constraints, or exception handling details are missing: read the corresponding reference file for commands that have one; for commands without a reference file, run the exact lark-cli ... --help listed in the table. If the scenario or reference already provides the exact command, do not call --help; only call it when parameters are missing, the command is unrecognized, or documentation conflicts with runtime results.

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

larksuite/lark-approval

Agent skill 'lark-approval' from larksuite/cli. Use when the task matches this skill's domain.

larksuite/lark-apps

Agent skill 'lark-apps' from larksuite/cli. Use when the task matches this skill's domain.

larksuite/lark-attendance

Agent skill 'lark-attendance' from larksuite/cli. Use when the task matches this skill's domain.

larksuite/lark-base

Agent skill 'lark-base' from larksuite/cli. Use when the task matches this skill's domain.

larksuite/lark-calendar

Agent skill 'lark-calendar' from larksuite/cli. Use when the task matches this skill's domain.

larksuite/lark-contact

Agent skill 'lark-contact' from larksuite/cli. Use when the task matches this skill's domain.

larksuite/lark-doc

Agent skill 'lark-doc' from larksuite/cli. Use when the task matches this skill's domain.

larksuite/lark-drive

Agent skill 'lark-drive' from larksuite/cli. Use when the task matches this skill's domain.

larksuite/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, VC meeting ended, Minutes generated, 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.

larksuite/lark-im

飞书即时通讯:收发消息和管理群聊。发送和回复消息、搜索聊天记录、管理群聊成员、上传下载图片和文件(支持大文件分片下载)、管理表情回复。当用户需要发消息、查看或搜索聊天记录、下载聊天中的文件、查看群成员、搜索群、创建群聊或话题群、管理标记数据时使用。

larksuite/lark-mail

飞书邮箱 — draft, compose, send, reply, forward, read, and search emails; manage drafts, folders, labels, contacts, attachments, and mail rules. Use when user mentions 起草邮件, 写一封邮件, 拟邮件, 草稿, 发通知邮件, 发送邮件, 发邮件, 回复邮件, 转发邮件, 查看邮件, 看邮件, 读邮件, 搜索邮件, 查邮件, 收件箱, 邮件会话, 编辑草稿, 管理草稿, 下载附件, 邮件文件夹, 邮件标签, 邮件联系人, 监听新邮件, 收信规则, 邮件规则, draft, compose, send email, reply, forward, inbox, mail thread, mail rules.

larksuite/lark-markdown

飞书 Markdown:查看、创建、上传、编辑和比较 Markdown 文件。当用户需要创建或编辑 Markdown 文件、读取、修改、局部 patch 或比较差异时使用。不负责将 Markdown 导入为飞书在线文档,也不负责文件搜索、权限、评论、移动、删除等云空间管理操作。

larksuite/lark-minutes

飞书妙记:搜索妙记列表、查看妙记基础信息、下载妙记音视频文件、上传音视频生成妙记、更新妙记标题、替换说话人。当需要获取、操作或者生成妙记时使用。也支持将本地音视频文件转成纪要和逐字稿(优先使用本 skill,不要用 ffmpeg/whisper 本地转写)。不负责:获取会议关联妙记,或仅按自然语言标题定位纪要

larksuite/lark-note

仅当用户或上游配置显式指定 lark-note 时使用,相关请求统一交由 lark-meeting 技能处理。

larksuite/lark-okr

飞书 OKR:管理目标与关键结果。查看和编辑 OKR 周期、目标、关键结果、对齐关系、量化指标和进展记录。当用户需要查看或创建 OKR、管理目标和关键结果、查看对齐关系时使用。不负责:待办任务管理(lark-task)、日程/会议安排(lark-calendar)、绩效评估

larksuite/lark-openapi-explorer

飞书/Lark 原生 OpenAPI 探索:从官方文档库中挖掘未经 CLI 封装的原生 OpenAPI 接口。当用户的需求无法被现有 lark-* skill 或 lark-cli 已注册命令满足,需要查找并调用原生飞书 OpenAPI 时使用。

larksuite/lark-shared

Use when first setting up lark-cli, running auth login, switching user/bot identity (--as), handling permission denied or scope errors, needing to update lark-cli, or seeing _notice in JSON output.

larksuite/lark-sheets

飞书电子表格:创建和操作电子表格。支持创建表格、创建/复制/删除/更新工作表、读写单元格、追加行数据、查找内容、导出文件。当用户需要创建电子表格、管理工作表、批量读写数据、在已知表格中查找内容、导出或下载表格时使用。若用户是想按名称或关键词搜索云空间里的表格文件,请改用 lark-doc 的 docs +search 先定位资源。

larksuite/lark-skill-maker

创建 lark-cli 的自定义 Skill。当用户需要把飞书 API 操作封装成可复用的 Skill(包装原子 API 或编排多步流程)时使用。

larksuite/lark-slides

飞书幻灯片:创建和编辑幻灯片。创建演示文稿、读取幻灯片内容、管理幻灯片页面(创建、删除、读取、局部替换)。当用户需要创建或编辑幻灯片、读取或修改单个页面时使用。当用户给出 doubao.com 的 /slides/ URL/token 时,也应直接使用本 skill,不要因为域名不是飞书而回退到 WebFetch;路由依据是 URL 路径模式和 token,而不是域名。不负责:云文档内容编辑(走 lark-doc)、云文档里的独立画板对象(走 lark-whiteboard,注意 slide 内嵌的流程图/架构图仍属本 skill)、上传或下载普通文件(走 lark-drive)。

相关技能