SuperAPI AI Directory

wecomcli-workflow-morning-brief

Office & productivity

View repository

Updated 10-15 23:59

About this skill

WeCom Daily Morning Briefing

Integrate WeCom schedule, to-do and message data through wecom-cli to generate a daily comprehensive briefing.

Prerequisites

This Skill requires the following underlying capabilities (already built in):

  • wecom-cli schedule — Schedule query
  • wecom-cli todo — To-do query
  • wecom-cli msg — Message query and sending

Optional integrations (effective only if already initialized):

  • wecomcli-workflow-personal-crm — Attendee background information
  • wecomcli-workflow-social-tracker — Yesterday's data performance

This Skill does not need to create a separate smart sheet, and directly reads underlying data and linked Skill data.

Note: This Skill does not create a smart sheet, so there is no need to save docid/url. When linking other Skills, use the url (if any) in the corresponding Skill memory to locate the smart sheet, and prefer using the url over the docid.


Operation Flow

Mode 1: Generate Today's Briefing

Step 1: Get today's schedule

# 获取今天的日程列表
wecom-cli schedule get_schedule_list_by_range '{"start_time": "2026-04-02 00:00:00", "end_time": "2026-04-02 23:59:59"}'

# 获取日程详情(含参与者、地点、描述)
wecom-cli schedule get_schedule_detail '{"schedule_id_list": ["SCHEDULE_ID_1", "SCHEDULE_ID_2"]}'

Step 2: Get today's to-dos

wecom-cli todo get_todo_list '{}'
# AI 筛选今天到期或即将到期的待办

Step 3: Get recent message summary

# 获取最近的消息会话列表(替代邮件)
wecom-cli msg get_msg_chat_list '{"begin_time": "2026-04-01 18:00:00", "end_time": "2026-04-02 08:00:00"}'

Step 4: Get linked data (optional)

# 如果个人 CRM 已初始化,查询参会人背景
wecom-cli doc smartsheet_get_records '{"docid": "<个人CRM_DOCID>", "sheet_id": "<联系人SHEET_ID>"}'

# 如果社交追踪已初始化,查询昨日数据
wecom-cli doc smartsheet_get_records '{"docid": "<社交追踪DOCID>", "sheet_id": "<每日快照SHEET_ID>"}'

Step 5: AI summarizes and generates the briefing

Briefing format:

## 2026年4月2日晨间简报(星期四)

### 日程安排(共 3 场)
| 时间 | 事件 | 组织者 | 备注 |
|------|------|--------|------|
| 09:00-10:00 | Q2预算审批 | 张三 | 上次交流:3/25讨论了预算方案 |
| 14:00-15:00 | 技术方案讨论 | 李四 | — |
| 16:00-17:00 | 1:1 with 王五 | 王五 | 关注合作进展(上次:45天前) |

### 待办事项(共 4 项)
- [ ] 发送产品路线图给张三(截止:今天)⚠️ 即将到期
- [ ] 调研竞品定价策略(截止:周四)
- [x] ~~更新周报~~(已完成)

### 最近消息(2 条未读会话)
| 联系人 | 最新消息 | 时间 | 紧急度 |
|--------|---------|------|--------|
| 张三 | Q2预算终版确认 | 昨天 10:30 | 高 |
| HR | 年度体检通知 | 昨天 09:00 | 低 |

### 社交数据(昨日)
| 平台 | 粉丝 | 日增 | 互动率 |
|------|------|------|--------|
| YouTube | 1000 | +5 | 4.5% |

### 小结
- 共 3 场会议,4 项待办(1 项即将到期)
- 张三的预算消息需要今天回复
- 空闲时段:10:00-14:00、15:00-16:00
- 需要关注:王五(XX公司)已 45 天未联系

Mode 2: Send the briefing to WeCom

wecom-cli msg send_message '{"chat_type": 1, "chatid": "<USERID>", "msgtype": "text", "text": {"content": "<简报内容>"}}'

Send to group chat:

wecom-cli msg send_message '{"chat_type": 2, "chatid": "<GROUP_CHATID>", "msgtype": "text", "text": {"content": "<简报内容>"}}'

Mode 3: Quick Q&A

Quickly answer the user's simple questions about today.

User asks AI processing
"How many meetings today?" Query the number of schedule items
"Is there anything urgent today?" Query to-dos that are about to be due + important messages
"Are you free in the afternoon?" Query free time slots in the schedule

Smart Summary Logic

Schedule attendee background enhancement

If wecomcli-workflow-personal-crm has been initialized:

  • Look up attendee information from the contacts table
  • Display: company, position, last contact time, last contact content
  • If not contacted for more than 30 days, mark ⚠️

Message urgency determination

AI determines message urgency according to the following rules:

  • High: contains keywords such as "urgent", "as soon as possible", "today", "deadline", or comes from a superior/important client
  • Medium: regular work messages
  • Low: notifications, group messages, automated messages

Free time slot calculation

AI extracts busy time slots from the schedule list and calculates free intervals:

  • Intervals between schedule items > 1 hour are marked as "available free time slots"

Practical Notes

Common Pitfalls

  1. Schedule time range — get_schedule_list_by_range only supports 30 days before and after
  2. When an API call fails — check the error code: 301085 means the docid is invalid (use url instead); 2022004 means the field was not found (add_fields first); 2022003 means the record does not exist (add_records first). When encountering an error, first use smartsheet_get_sheet '{"url": "<URL>"}' Validate the table structure.
  3. To-do filtering — get_todo_list Return all to-dos; the AI needs to filter by time itself
  4. Message permissions — Group chat messages require the user to be a group member to retrieve
  5. Linked Skill not initialized — If CRM or social tracking is not initialized, skip the corresponding section and do not report an error
  6. SINGLE_SELECT options do not take effect at creation time — smartsheet_add_fields The property.options passed in will not pre-create options; options are automatically created via [{"text": "选项"}] when a record is first written. When creating a field, the property parameter can be omitted.

Scheduled automation suggestions

Task Suggested time Cron
Generate and send the morning briefing Weekdays 8:00 0 8 * * 1-5

Data linkage

This Skill reads data from the following Skills:

  • wecomcli-workflow-personal-crm — Attendee background information
  • wecomcli-workflow-social-tracker — Yesterday's social data
  • wecomcli-workflow-meeting-todo — Meeting to-do completion status