SKILL.md
$27
按此分工路由,避免两个 skill 语义混淆。
用户意图示例
应路由到
"帮我入会 123456789"、"代我参会"、"让机器人进会旁听"
本 skill +meeting-join
"会议现在还开着,谁刚加入了"、"会议里谁在发言"、"有人共享屏幕吗"(进行中会议,且机器人已入会)
本 skill +meeting-events
"退出会议"、"让机器人离开"
本 skill +meeting-leave
"昨天那场会有谁参加过"、"搜昨天的会"、"查纪要/逐字稿/录制"
"帮我参会,结束后把纪要发到群" 等跨阶段场景
按序编排:本 skill(入会 → 读事件 → 离会)→ lark-vc / lark-minutes(拉纪要)→ lark-im(发群)
核心场景
1. 加入正在进行的会议(写操作)
- 只有用户明确表达"让 Agent 真实入会"(参会机器人、会中助手、代为旁听、代参会)时才用
+meeting-join。只是查数据不要入会。
+meeting-join --meeting-number只接受 9 位纯数字会议号,不是会议链接整串、也不是meeting_id。
- 返回体中的
meeting.id必须立刻记录——后续+meeting-events/+meeting-leave都靠它,不能用 9 位会议号替代。
- 入会对所有参会人可见,执行前核实 9 位会议号来源,避免误入错会。
- 仅支持
user身份,需提前lark-cli auth login。
- 若入会失败,优先查看
+meeting-joinreference 的错误排查段落,重点确认会议号、密码、会议状态、等候室 / 审批以及会议是否禁止当前身份加入。
2. 感知会中事件(读操作)
- 用户要看"会议里正在发生什么"(参会人加入/离开、聊天、转写、屏幕共享)时,用
+meeting-events。
- 输入是 **
meeting_id**(长数字 ID),不是 9 位会议号。
- Bot 必须真实参会过(先
+meeting-join),否则事件流通常不可见。具体的状态边界、结束后宽限窗口与错误码(如10005 / 20001 / 20002)请查看+meeting-eventsreference。
- 不能做会后复盘,不能替代参会人快照查询。如果会议已结束:
- 想拿纪要文档或逐字稿文档 token:用
lark-cli vc +notes --meeting-ids <meeting.id>
- 想拿 AI 产物(summary / todos / chapters)或导出逐字稿文件:先用
lark-cli vc +recording --meeting-ids <meeting.id>拿minute_token,再用lark-cli vc +notes --minute-tokens <minute_token>
- 想看参会人快照:用
vc meeting get --with-participants(见 lark-vc)
- 默认必须使用 **
--page-all**,除非用户明确要求“只查一页”,或确实需要控制返回体大小。
- 输出格式默认优先
--format pretty(时间线更易读);只有在需要完整保留原始消息流与结构化字段时,才使用--format json。
- 必须识别分页信号:只要响应里出现
has_more=true、pretty 里的more available,或返回了非空page_token,就不能把当前结果当作完整事件流;默认应继续分页,或明确告诉用户当前只是部分结果。
- 保留响应里的
page_token,下次增量拉取直接续,不要从头再拉。
- 只要你是基于 **
+meeting-events来回答一场正在进行中的会议内容,就不能直接复用旧结果。** 无论用户是在问“现在/刚刚/最新”的状态,还是让你“总结一下这个会议讲什么”,都必须先重新拉一次当前事件流,确认拿到的是最新信息,再基于最新结果回答。只有在用户明确要求基于某次历史快照继续分析时,才可以复用旧结果。
3. 离开会议(写操作)
- 任务完成、或用户要求结束时,用
+meeting-leave --meeting-id <从 +meeting-join 拿到的 meeting.id>。
--meeting-id必须是+meeting-join返回的长数字meeting.id,不接受 9 位会议号。
- 离会立即生效,机器人从会议的参会人列表中消失,对其他参会人可见;若需要重新入会,再跑一次
+meeting-join即可(非真正"不可逆")。
- 仅支持
user身份。
4. Agent 参会最小闭环示范
# 1. 入会,捕获 meeting.id
JOIN=$(lark-cli vc +meeting-join --meeting-number 123456789 --format json)
MID=$(echo "$JOIN" | jq -r '.data.meeting.id')
# 2. 会中轮询事件
# 默认用 --page-all 拉全当前可见事件;下次增量优先复用 page_token
# 典型间隔 10-30 秒
lark-cli vc +meeting-events --meeting-id "$MID" --page-all --format pretty
# 3. 任务完成或用户要求结束时离会
lark-cli vc +meeting-leave --meeting-id "$MID"
# 4. 会后可选:取纪要 / 逐字稿(跨到 lark-vc)
lark-cli vc +notes --meeting-ids "$MID"
Shortcuts
Shortcut 是对常用操作的高级封装(lark-cli vc +<verb> [flags])。
Shortcut
类型
说明
写
Join an in-progress meeting by 9-digit meeting number
读
List bot meeting events (participant joined/left, transcript, chat, share)
写
Leave a meeting by meeting_id
- 使用
+meeting-join前必须阅读 references/lark-vc-agent-meeting-join.md,了解入参格式与写操作可见性风险。
- 使用
+meeting-events前必须阅读 references/lark-vc-agent-meeting-events.md,了解meeting_id来源、分页、错误码(10005 / 20001 / 20002)与 "bot 仍在会中" 硬约束。
- 使用
+meeting-leave前必须阅读 references/lark-vc-agent-meeting-leave.md,了解meeting_id的来源与写操作可见性。
权限表
Shortcut
所需 scope
+meeting-join
vc:meeting.bot.join:write
+meeting-events
vc:meeting.meetingevent:read
+meeting-leave
vc:meeting.bot.join:write
延伸
- 查已结束会议、参会人快照、搜索历史会议 → lark-vc
- 会议纪要、逐字稿 → lark-vc 的
+notes
- 妙记产物(AI 总结 / 转写 / 章节)→ lark-minutes
- 会后把产物发到群 / 私聊 → lark-im
- 认证、身份切换、scope 管理 → lark-shared