lark-vc

Original🇨🇳 Chinese
Translated

Feishu Video Conference: Query meeting records and obtain meeting minute artifacts (summary, todos, chapters, verbatim transcript). 1. Use this skill when querying the number or details of completed meetings (e.g., meetings held yesterday | last week | today, etc.). Use the lark-calendar skill to query upcoming meeting schedules. 2. Support searching meeting records using filter conditions such as keywords, time ranges, organizers, participants, and meeting rooms. 3. Use this skill when obtaining or organizing meeting minutes.

121.9kinstalls
Added on

NPX Install

npx skill4agent add larksuite/cli lark-vc

Tags

Translated version includes tags in frontmatter

SKILL.md Content (Chinese)

View Translation Comparison →

vc (v1)

CRITICAL — MUST use the Read tool to read
../lark-shared/SKILL.md
before starting, which contains authentication and permission handling

Core Concepts

  • Meeting: Feishu Video Conference instance, identified by meeting_id.
  • Meeting Record: Record generated after a Feishu Video Conference ends, supporting search by filters such as keywords, time periods, participants, organizers, meeting rooms, etc.
  • Note: Structured document generated after a Feishu Video Conference ends, including the minute document (containing summary, todos, chapters) and verbatim transcript document.
  • Minutes: Derived from Feishu Video Conference recordings or user-uploaded audio/video files, supporting transcription and meeting minutes, identified by minute_token.
  • MainDoc: Main document of meeting minutes, containing AI-generated summary and todos.
  • VerbatimDoc: Sentence-by-sentence text record of the meeting, including speakers and timestamps.

Core Scenarios

1. Search Meeting Records

  1. Only support searching completed meetings. For upcoming meetings that haven't started yet, use the lark-calendar skill.
  2. Only support searching meeting records using filter conditions such as keywords, time periods, participants, organizers, and meeting rooms. Prompt users for unsupported filter conditions.
  3. When there are multiple search results, be sure to obtain paginated data and do not miss any meeting records.

2. Organize Meeting Minutes

  1. When organizing minute documents, by default, only provide the links to the minute document and verbatim transcript; there is no need to read the content of the minute document or verbatim transcript.
  2. Only read the document to obtain specific content when the user explicitly requests to get the summary, todos, or chapters from the minute document.

3. Links to Minute Documents and Verbatim Transcripts

  1. Minute documents, verbatim transcript documents, and associated shared documents are returned using doc_token by default.
  2. Use
    lark-cli drive metas batch_query
    to query basic information such as document names and URLs
bash
# Learn how to use the command
lark-cli schema drive.metas.batch_query

# Batch get basic document information: query up to 10 documents at a time
lark-cli drive metas batch_query --data '{"request_docs": [{"doc_type": "docx", "doc_token": "<doc_token>"}], "with_url": true}'
  1. Use
    lark-cli docs +fetch
    when needing to obtain document content.
bash
# Get document content
lark-cli docs +fetch --doc <doc_token>

Resource Relationships

Meeting (Video Conference)
├── Note (Meeting Minutes)
│   ├── MainDoc (Main Minute Document)
│   ├── VerbatimDoc (Verbatim Transcript)
│   └── SharedDoc (In-meeting Shared Document)
└── Minutes (Feishu Minutes)
    ├── Transcript (Text Record)
    ├── Summary (Summary)
    ├── Todos (Todos)
    └── Chapters (Chapters)
Note:
+search
can only query historical completed meetings. For querying upcoming schedules, please use lark-calendar.
Priority: When users search for historical meetings, prioritize using
vc +search
over
calendar events search
. Calendar search is for schedules, while vc search is for completed meeting records, supporting filtering by dimensions such as participants, organizers, meeting rooms.
Routing Rules: If users ask about "meetings that have been held", "what meetings were held today", "recent meetings attended", "completed meetings", "historical meeting records", prioritize using
vc +search
. Only prioritize using lark-calendar when querying upcoming schedules, upcoming meetings, or agendas.
Special Case: When users query "what meetings are there today", use
vc +search
to query meeting records of meetings held today, and use the lark-calendar skill to query meetings that haven't started yet today, then organize and display them uniformly.

Shortcuts (Recommended for Priority Use)

Shortcuts are advanced encapsulations of common operations (
lark-cli vc +<verb> [flags]
). Prioritize using operations with Shortcuts.
ShortcutDescription
+search
Search meeting records (requires at least one filter)
+notes
Query meeting notes (via meeting-ids, minute-tokens, or calendar-event-ids)

API Resources

bash
lark-cli schema vc.<resource>.<method>   # Must check the parameter structure before calling the API
lark-cli vc <resource> <method> [flags] # Call the API
Important: When using the native API, must run
schema
to check the parameter structure of
--data
/
--params
; do not guess the field format.

meeting

  • get
    — Get meeting details (topic, time, participants, note_id)
bash
# Get basic meeting information: does not include participant list
lark-cli vc meeting get --params '{"meeting_id": "<meeting_id>"}'


# Get basic meeting information: includes participant list
lark-cli vc meeting get --params '{"meeting_id": "<meeting_id>", "with_participants": true}'

minutes (cross-domain, see lark-minutes for details)

  • get
    — Get basic Minutes information (title, duration, cover); use
    +notes --minute-tokens <minute-token>
    to query the content of minutes

Permission Table

MethodRequired scope
+notes --meeting-ids
vc:meeting.meetingevent:read
vc:note:read
+notes --minute-tokens
vc:note:read
minutes:minutes:readonly
minutes:minutes.artifacts:read
minutes:minutes.transcript:export
+notes --calendar-event-ids
calendar:calendar:read
calendar:calendar.event:read
vc:meeting.meetingevent:read
vc:note:read
+search
vc:meeting.search:read
meeting.get
vc:meeting.meetingevent:read