CRITICAL — 开始前 MUST 先用 Read 工具读取 ../lark-shared/SKILL.md,其中包含认证、权限处理
CRITICAL — 所有的 Shortcuts 在执行之前,务必先使用 Read 工具读取其对应的说明文档,禁止直接盲目调用命令。
日历技能包含以下核心场景:
这是日历技能最核心的场景,核心是让用户低成本地实现日程预约。
💡 核心原则:做智能助理,提供辅助决策,而不是表单填写机或替用户做主。
时间与日期推断规范: 为确保准确性,在涉及时间推断时,请严格遵循以下规则:
下周一等相对日期时,务必基于当前真实日期和星期基准进行推算,避免算错日期。明天、今天等泛指某一天时,时间范围应默认覆盖整天时间范围。切勿自行缩减查询范围,以免遗漏晚上的时间安排。预约日程的工作流:
智能推断默认值
时间建议与辅助决策(核心体验)
明早10点):调用相关工具(如 lark-cli calendar +freebusy lark-calendar-freebusy)先查询该时间段参会人的忙闲状态(注:若参会人已有日程的 RSVP 状态为拒绝,则认为该时段为空闲)。若均无冲突,直接进入下一步确认并创建;若有冲突,提示用户冲突情况并询问是否继续创建或重新选择时间。明天、下午、本周):调用相关工具(如 lark-cli calendar +suggestion lark-calendar-suggestion)获取该区间内所有参会人的多个时间推荐方案供用户选择。必须在用户确认方案后,才能执行创建日程操作;且用户一旦选择了推荐的方案,无需再次查询忙闲信息。suggestion 工具。应自行推断合适的非工作时间给到用户确认。如果无法推断,请尝试主动询问用户,并在用户给出反馈后形成记忆,以便后续直接应用。非阻断式执行
lark-cli calendar +create --summary "..." --start "..." --end "..." --attendee-ids ...
友好反馈
FREQ=DAILY;UNTIL=20230307T155959Z;INTERVAL=14表示每14天重复一次。Calendar (日历)
└── Event (日程)
├── Attendee (参会人)
└── Reminder (提醒)
Shortcut 是对常用操作的高级封装(lark-cli calendar +<verb> [flags])。有 Shortcut 的操作优先使用。
| Shortcut | 说明 |
|---|---|
+agenda |
查看日程安排(默认今天) |
+create |
创建日程并邀请参会人(ISO 8601 时间) |
+freebusy |
查询用户主日历的忙闲信息和rsvp的状态 |
+rsvp |
回复日程(接受/拒绝/待定) |
+suggestion |
针对时间未确定的预约日程需求,提供多个时间推荐方案 |
在调用 +suggestion 之前,务必读取 lark-calendar-suggestion 中的使用说明,禁止直接调用命令。
lark-cli calendar +suggestion --start "2026-03-10T00:00:00+08:00" --end "2026-03-10T11:00:00+08:00" --attendee-ids "ou_xxx,oc_yyy" --duration-minutes 30 # 为用户ou_xxx和群组oc_yyy里的成员推荐空闲时段
lark-cli schema calendar.<resource>.<method> # 调用 API 前必须先查看参数结构
lark-cli calendar <resource> <method> [flags] # 调用 API
重要:使用原生 API 时,必须先运行
schema查看--data/--params参数结构,不要猜测字段格式。
create — 创建共享日历delete — 删除共享日历get — 查询日历信息list — 查询日历列表patch — 更新日历信息primary — 查询用户主日历search — 搜索日历batch_delete — 删除日程参与人create — 添加日程参与人list — 获取日程参与人列表create — 创建日程delete — 删除日程get — 获取日程instance_view — 查询日程视图patch — 更新日程search — 搜索日程list — 查询主日历日程忙闲信息| 方法 | 所需 scope |
|---|---|
calendars.create |
calendar:calendar:create |
calendars.delete |
calendar:calendar:delete |
calendars.get |
calendar:calendar:read |
calendars.list |
calendar:calendar:read |
calendars.patch |
calendar:calendar:update |
calendars.primary |
calendar:calendar:read |
calendars.search |
calendar:calendar:read |
event.attendees.batch_delete |
calendar:calendar.event:update |
event.attendees.create |
calendar:calendar.event:update |
event.attendees.list |
calendar:calendar.event:read |
events.create |
calendar:calendar.event:create |
events.delete |
calendar:calendar.event:delete |
events.get |
calendar:calendar.event:read |
events.instance_view |
calendar:calendar.event:read |
events.patch |
calendar:calendar.event:update |
events.search |
calendar:calendar.event:read |
freebusys.list |
calendar:calendar.free_busy:read |
注意(强制性):