lark-workflow-standup-report
SkillCommunityAudited: no issuesTranslated from ChineseThis skill generates a daily summary of calendar events and pending tasks for Lark users. It combines agenda data and task lists to provide a structured report including schedule conflicts and free time slots.
npx skills add larksuite/cli/lark-workflow-standup-reportSchedule and To-Do Summary Workflow
CRITICAL, Before starting, you MUST use the Read tool to read ../lark-shared/SKILL.md, which contains information on authentication and permission handling.
Applicable Scenarios
- "What is on my schedule today?" / "Today's schedule and to-dos"
- "What meetings do I have tomorrow?" / "Tomorrow's schedule and incomplete tasks"
- "Help me see what I need to do today" / "Morning report summary"
- "Start of day summary" / "standup report"
- "What else is scheduled for this week?"
Prerequisites
Only supports user identity. Ensure authorization is granted before execution:
lark-cli auth login --domain calendar,task
Workflow
{date} ─┬─► calendar +agenda [--start/--end] ──► Schedule list (meetings/events)
└─► task +get-my-tasks [--due-end] ──► Incomplete to-do list
│
▼
AI Summary (time conversion + conflict detection + sorting) ──► Summary
Step 1: Get Schedule
# Today (default, no extra parameters needed)
lark-cli calendar +agenda
# Specify date range (must use ISO 8601 format, natural language like "tomorrow" is not supported)
lark-cli calendar +agenda --start "2026-03-26T00:00:00+08:00" --end "2026-03-26T23:59:59+08:00"
Note:
--start/--endonly support ISO 8601 format (e.g.,2026-01-01or2026-01-01T15:04:05+08:00) and Unix timestamp. They do not support natural language like"tomorrow"or"next monday". The AI must calculate the target date based on the current date.
The output includes: event_id, summary, start_time (including timestamp + timezone), end_time, free_busy_status, self_rsvp_status.
Step 2: Get Incomplete To-Dos
# Default: Returns incomplete tasks assigned to the current user (up to 20 items)
lark-cli task +get-my-tasks
# Only view tasks due before a specific date (recommended for summary scenarios to reduce data volume)
lark-cli task +get-my-tasks --due-end "2026-03-27T23:59:59+08:00"
# Get all (when there are more than 20 items)
lark-cli task +get-my-tasks --page-all
Note: Without filter conditions, it may return a large number of historical to-dos (30+ items, 100KB+), which can easily exceed context limits. Recommendations for summary scenarios:
- Use
--due-endto filter tasks due before the target date.- If tasks without deadlines are also needed, you can omit the filter, but the AI should only display those created within the last 30 days during summarization, collapsing the rest into "N other historical to-dos".
Step 3: AI Summary
Integrate the results from Step 1 and Step 2 and output in the following structure:
## {Date} Summary ({YYYY-MM-DD Day of Week})
### Schedule
| Time | Event | Organizer | Status |
|------|-------|-----------|--------|
| 09:00-10:00 | Product Requirement Review | Zhang San | Accepted |
| 14:00-15:00 | Technical Solution Discussion | Li Si | Pending |
### To-Do Items
- [ ] {task_summary} (Due: {due_date})
- [ ] {task_summary}
### Brief
- Total {n} meetings, {m} to-dos
- Conflict alert: {list schedule items with overlapping times}
- Free time slots: {free_slots} (calculated based on schedule)
Data Processing Rules:
- Time Conversion: API returns Unix timestamp, which must be converted to
HH:mmformat based on thetimezonefield (usuallyAsia/Shanghai). - RSVP Status Mapping:
API Value Display Text acceptAccepted declineDeclined needs_actionPending tentativeTentative - Schedule Sorting: Sort in ascending order by start time.
- Conflict Detection: After sorting by time, check if adjacent schedule items have overlapping times (previous end_time > next start_time). If so, list the conflict groups in the brief.
- Declined Schedule: Mark as "Declined" but do not include in busy time slots or conflict detection.
- To-Do Sorting: Sort by due date in ascending order. Mark overdue items as "Overdue". Items without deadlines should be placed at the end.
Permissions Table
| Command | Required Scope |
|---|---|
calendar +agenda | calendar:calendar.event:read |
task +get-my-tasks | task:task:read |
References
- lark-shared, Authentication, permissions (Must read)
- lark-calendar, Detailed usage of
+agenda - lark-task, Detailed usage of
+get-my-tasks
日程待办摘要工作流
CRITICAL — 开始前 MUST 先用 Read 工具读取 ../lark-shared/SKILL.md,其中包含认证、权限处理
适用场景
- "今天有什么安排" / "今天的日程和待办"
- "明天有什么会" / "明日日程与未完成任务"
- "帮我看看今天要做什么" / "早报摘要"
- "开工摘要" / "standup report"
- "这周还有哪些安排"
前置条件
仅支持 user 身份。执行前确保已授权:
lark-cli auth login --domain calendar,task
工作流
{date} ─┬─► calendar +agenda [--start/--end] ──► 日程列表(会议/事件)
└─► task +get-my-tasks [--due-end] ──► 未完成待办列表
│
▼
AI 汇总(时间转换 + 冲突检测 + 排序)──► 摘要
Step 1: 获取日程
# 今天(默认,无需额外参数)
lark-cli calendar +agenda
# 指定日期范围(必须使用 ISO 8601 格式,不支持 "tomorrow" 等自然语言)
lark-cli calendar +agenda --start "2026-03-26T00:00:00+08:00" --end "2026-03-26T23:59:59+08:00"
注意:
--start/--end仅支持 ISO 8601 格式(如2026-01-01或2026-01-01T15:04:05+08:00)和 Unix timestamp,不支持"tomorrow"、"next monday"等自然语言。需要 AI 根据当前日期自行计算目标日期。
输出包含:event_id、summary、start_time(含 timestamp + timezone)、end_time、free_busy_status、self_rsvp_status。
Step 2: 获取未完成待办
# 默认:返回分配给当前用户的未完成任务(最多 20 条)
lark-cli task +get-my-tasks
# 只看指定日期前到期的(推荐用于摘要场景,减少数据量)
lark-cli task +get-my-tasks --due-end "2026-03-27T23:59:59+08:00"
# 获取全部(超过 20 条时)
lark-cli task +get-my-tasks --page-all
注意:不带过滤条件时可能返回大量历史待办(实测 30+ 条、100KB+),容易超出上下文限制。摘要场景建议:
- 用
--due-end过滤出目标日期前到期的任务- 如果也需要无截止日期的任务,可不加过滤,但 AI 汇总时只展示近 30 天内创建的,其余折叠为"其他 N 项历史待办"
Step 3: AI 汇总
将 Step 1 和 Step 2 的结果整合,按以下结构输出:
## {日期}摘要({YYYY-MM-DD 星期X})
### 日程安排
| 时间 | 事件 | 组织者 | 状态 |
|------|------|--------|------|
| 09:00-10:00 | 产品需求评审 | 张三 | 已接受 |
| 14:00-15:00 | 技术方案讨论 | 李四 | 待确认 |
### 待办事项
- [ ] {task_summary}(截止:{due_date})
- [ ] {task_summary}
### 小结
- 共 {n} 场会议,{m} 项待办
- 冲突提醒:{列出时间重叠的日程}
- 空闲时段:{free_slots}(根据日程推算)
数据处理规则:
- 时间转换:API 返回 Unix timestamp,需根据
timezone字段(通常为Asia/Shanghai)转换为HH:mm格式 - RSVP 状态映射:
API 值 显示文案 accept已接受 decline已拒绝 needs_action待确认 tentative暂定 - 日程排序:按开始时间升序排列
- 冲突检测:按时间排序后,检查相邻日程是否有时间重叠(前一个 end_time > 后一个 start_time),有则在小结中列出冲突组
- 已拒绝日程:标注"已拒绝"但不计入忙碌时段和冲突检测
- 待办排序:按截止时间升序,已过期的标注"已过期",无截止时间的排在最后
权限表
| 命令 | 所需 scope |
|---|---|
calendar +agenda | calendar:calendar.event:read |
task +get-my-tasks | task:task:read |
参考
- lark-shared — 认证、权限(必读)
- lark-calendar —
+agenda详细用法 - lark-task —
+get-my-tasks详细用法
Installs
216,313First seen
Jun 10, 2026
Auto-fetched from GitHub .
Stats via skills.sh.
Skills similar to lark-workflow-standup-report:
Installs
Installs
Installs