+room-find;再 +freebusy 判断参会人忙闲;有冲突时先说明冲突,再让用户决定继续当前时间还是改走 +suggestion。+suggestion 产出候选时间块;若需要会议室,再把这些时间块批量交给 +room-find,将“候选时间 + 对应可用会议室”一次性展示给用户选择。+create 创建日程。+suggestion 返回的候选时间块后,不要再次调用 +freebusy。 用户确认后直接进入 +create。💡 核心原则:做智能助理,充分利用默认值规则(如默认标题、时长、参与人等)自动补全信息。极力避免像“表单填写机”一样频繁打断并反问用户,仅在必须决策的冲突或无法唯一确定的场景下才发起询问。
lark-calendar-room-find.md、lark-calendar-suggestion.md)的情况下直接调用命令! 必须先阅读文档掌握最新参数要求与规范。+room-find! 必须先默认一个合理时间范围,调用 +suggestion 拿到候选时间块,再将时间块传给 +room-find。+suggestion。+suggestion 候选时间后,再重复调用 +freebusy。+create 创建日程。+room-find、+suggestion、+freebusy、+create)前,必须先读取其对应的 Markdown 文档。 禁止仅凭记忆组装命令参数,以确保符合各命令最新的业务约束和格式规范。+suggestion。以下信息智能推断,减少频繁询问用户:
当搜索特定参与人(人、群)出现多个结果无法唯一确定时,必须询问用户进行选择确认,并将该偏好记录为长期记忆,以便后续自动识别。
分两类处理:
明确时间时,需先判断是否需要会议室,如果需要,提前查询会议室;然后判断是否有时间冲突。
详见 +room-find 与 +freebusy。
# 1. 如果需要会议室,提前查询会议室
lark-cli calendar +room-find \
--slot "<start>~<end>" \
--attendee-ids "<ids>" \
--city "<city>" \
--building "<building>" \
--floor "<F2>" \
--room-name "<room_name>"
# 2. 查询当前用户及其他参会人忙闲
# (如果有多名参会人,需分别调用查询:--user-id "<ou_xxx>")
lark-cli calendar +freebusy --start "<start>" --end "<end>"
规则:
calendar +create 创建日程+suggestion 推荐多个可用时间块calendar +create 创建日程--city;--building 不要再重复携带城市前缀。city/building/floor > floor + room-name 复合表达 > room-name。像 2L、2F 这类更像楼层或区域定位的短词,优先视为 --floor,不要默认当作 --room-name。像 学清2层 这种表达,通常拆为 --building "学清" 与 --floor "F2"。木星会议室 -> --room-name "木星";会议室 02 / 02会议室 -> --room-name "02"。F3-05 / F5-07 / 3楼-08 这类复合表达,若能稳定识别楼层与会议室号,应优先提取为 --floor + --room-name,不要把整段直接退化成 --room-name。先调用:
详见 +suggestion;若需要会议室,再结合 +room-find。
lark-cli calendar +suggestion \
--start "<range_start>" \
--end "<range_end>" \
--attendee-ids "<ids>" \
--duration-minutes <n> \
--event-rrule "<rrule>"
规则:
+suggestioncalendar +room-find 批量查询可用会议室,然后将【候选时间】与【对应的可用会议室列表】结构化分行展示,让用户一次性完成选择。(注意:即使用户最初只说“查会议室”,且未带时间,也必须强制走到这一步,先 suggestion 再 room-find)。+suggestion 返回的时间块,无需再次调用 +freebusy针对用户专属的时间表达习惯或存在歧义的时间场景,严禁主观臆断。典型例子包括:
处理规则:
若当前会议为重复性日程,调用 +room-find 时需携带 --event-rrule。
必须检查返回中的:
reserve_until_time若候选会议室的可预约上限早于重复规则覆盖范围,不要直接按原规则创建。应:
reserve_until_time,以防止会议室预约失败。用户确认后调用:
详见 +create。
lark-cli calendar +create \
--summary "..." \
--start "<start>" \
--end "<end>" \
--attendee-ids "ou_xxx,oc_xxx,omm_xxx"
规则:
room_id 写入 --attendee-idsroom_name 原值;允许附加“推断说明”,但禁止用摘要名、楼层及会议室号、容量/视频标签重组后的名称替换原值当向用户展示多个时间块及对应的多个会议室时,必须使用结构化清晰的格式排版。严禁将时间与会议室名称放在同一行展示,必须分行并使用编号列表呈现可用会议室,严禁将所有信息揉成一团纯文本堆叠。
推荐展示格式参考:
## 2026-03-27 周五
[选项 1] 14:00 - 15:00(参会人均空闲)
可用会议室:
1. 学清嘉创大厦B座-F2-02🎦(7人)
2. 学清嘉创大厦B座-F2-05🎦(10人)
[选项 2] 16:00 - 17:00(参会人均空闲)
可用会议室:
1. 学清嘉创大厦B座-F3-01🎦(6人)
2. 学清嘉创大厦B座-F3-06🎦(8人)
💡 请回复您倾向的选项编号以及对应的会议室序号,我来为您完成预定。