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 querywecom-cli todo— To-do querywecom-cli msg— Message query and sending
Optional integrations (effective only if already initialized):
wecomcli-workflow-personal-crm— Attendee background informationwecomcli-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
- Schedule time range —
get_schedule_list_by_rangeonly supports 30 days before and after - 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. - To-do filtering —
get_todo_listReturn all to-dos; the AI needs to filter by time itself - Message permissions — Group chat messages require the user to be a group member to retrieve
- Linked Skill not initialized — If CRM or social tracking is not initialized, skip the corresponding section and do not report an error
- SINGLE_SELECT options do not take effect at creation time —
smartsheet_add_fieldsTheproperty.optionspassed in will not pre-create options; options are automatically created via[{"text": "选项"}]when a record is first written. When creating a field, thepropertyparameter 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 informationwecomcli-workflow-social-tracker— Yesterday's social datawecomcli-workflow-meeting-todo— Meeting to-do completion status