wecomcli-schedule

企业微信日程管理技能。适用于用户对企业微信日程的各类管理需求。当用户需要:(1) 查询指定时间范围内的日程列表或获取日程详细信息(标题、时间、地点、参与者等),(2) 创建新日程并设置提醒、参与人等,(3) 修改已有日程的标题、时间、地点等信息或取消日程,(4) 添加或移除日程参与人,(5) 查询多个成员的闲忙状态并分析共同空闲时段以安排会议时使用此技能。

1,387 stars

Best use case

wecomcli-schedule is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

企业微信日程管理技能。适用于用户对企业微信日程的各类管理需求。当用户需要:(1) 查询指定时间范围内的日程列表或获取日程详细信息(标题、时间、地点、参与者等),(2) 创建新日程并设置提醒、参与人等,(3) 修改已有日程的标题、时间、地点等信息或取消日程,(4) 添加或移除日程参与人,(5) 查询多个成员的闲忙状态并分析共同空闲时段以安排会议时使用此技能。

Teams using wecomcli-schedule should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/wecomcli-schedule/SKILL.md --create-dirs "https://raw.githubusercontent.com/WecomTeam/wecom-cli/main/skills/wecomcli-schedule/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/wecomcli-schedule/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How wecomcli-schedule Compares

Feature / Agentwecomcli-scheduleStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

企业微信日程管理技能。适用于用户对企业微信日程的各类管理需求。当用户需要:(1) 查询指定时间范围内的日程列表或获取日程详细信息(标题、时间、地点、参与者等),(2) 创建新日程并设置提醒、参与人等,(3) 修改已有日程的标题、时间、地点等信息或取消日程,(4) 添加或移除日程参与人,(5) 查询多个成员的闲忙状态并分析共同空闲时段以安排会议时使用此技能。

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# 企业微信日程管理技能

> `wecom-cli` 是企业微信提供的命令行程序,所有操作通过执行 `wecom-cli` 命令完成。


通过 `wecom-cli schedule <接口名> '<json入参>'` 与企业微信日程系统交互。

## 注意事项

- 日程列表查询仅支持**当日前后 30 天**,时间格式 `YYYY-MM-DD` 或 `YYYY-MM-DD HH:mm:ss`
- 涉及参与者 userid 时,需先使用 **wecomcli-contact** 技能获取;存在同名时展示候选让用户选择(禁止暴露 userid)
- 创建/修改/取消前,先确认目标日程和参与者信息
- `errcode != 0` 时展示错误信息;返回的 `start_time`/`end_time` 为 Unix 时间戳(秒),需转为可读格式
- **注意时间格式转换**:接口入参使用字符串格式(如 `YYYY-MM-DD HH:mm:ss`),但返回值多为 Unix 时间戳,使用时需进行格式转换

---

## 接口列表

### get_schedule_list_by_range — 查询日程 ID 列表

```bash
wecom-cli schedule get_schedule_list_by_range '{"start_time": "YYYY-MM-DD HH:mm:ss", "end_time": "YYYY-MM-DD HH:mm:ss"}'
```

返回 `schedule_id_list` 数组。仅支持当日前后 30 天。

### get_schedule_detail — 获取日程详情

```bash
wecom-cli schedule get_schedule_detail '{"schedule_id_list": ["SCHEDULE_ID_1", "SCHEDULE_ID_2"]}'
```

支持 1~50 个 ID,返回日程标题、时间、地点、参与者等。参见 [API 详情](references/get-schedule-detail.md)。

### create_schedule — 创建日程

```bash
wecom-cli schedule create_schedule '{"schedule": {"start_time": "YYYY-MM-DD HH:mm:ss", "end_time": "YYYY-MM-DD HH:mm:ss", "summary": "日程标题", "attendees": [{"userid": "USER_ID"}], "reminders": {"is_remind": 1, "remind_before_event_secs": 3600, "timezone": 8}}}'
```

参见 [API 详情](references/create-schedule.md) | [reminders 字段](references/ref-reminders.md)。

### update_schedule — 修改日程

只需传入需修改的字段,未传字段保持不变。

```bash
wecom-cli schedule update_schedule '{"schedule": {"schedule_id": "SCHEDULE_ID", "summary": "更新后的标题"}}'
```

参见 [API 详情](references/update-schedule.md)。

### cancel_schedule — 取消日程

```bash
wecom-cli schedule cancel_schedule '{"schedule_id": "SCHEDULE_ID"}'
```

### add_schedule_attendees / del_schedule_attendees — 管理参与人

- 添加参与人:
```bash
wecom-cli schedule add_schedule_attendees '{"schedule_id": "SCHEDULE_ID", "attendees": [{"userid": "USER_ID"}]}'
```
- 移除参与人:
```bash
wecom-cli schedule del_schedule_attendees '{"schedule_id": "SCHEDULE_ID", "attendees": [{"userid": "USER_ID"}]}'
```

### check_availability — 查询闲忙

```bash
wecom-cli schedule check_availability '{"check_user_list": ["USER_ID_1", "USER_ID_2"], "start_time": "YYYY-MM-DD HH:mm:ss", "end_time": "YYYY-MM-DD HH:mm:ss"}'
```

支持 1~10 个用户,返回各用户的忙碌时段列表。参见 [API 详情](references/check-availability.md)。

---

## 典型工作流

### 查询日程

**经典 query 示例:**
- "我今天有哪些日程?"
- "帮我看看这周三下午有没有会议"
- "明天的日程安排是什么?"
- "查一下最近有没有关于项目评审的日程"
- "我下周一到周五的日程都有哪些?"

**流程:**
1. 根据用户意图计算时间范围(如"今天"→当日 00:00:00 至 23:59:59,"这周"→本周一至周日)
2. 调用 `get_schedule_list_by_range` 获取日程 ID 列表
3. 调用 `get_schedule_detail` 批量获取详情,将 Unix 时间戳转为可读时间
4. 若用户提到关键词(如"项目评审"),在 `summary` 中匹配筛选;未找到则逐步扩大范围至前后 30 天上限
5. 展示日程列表时包含标题、时间、地点、参与者等关键信息,方便用户快速了解

### 创建日程

**经典 query 示例:**
- "帮我创建一个明天下午 2 点到 3 点的会议,标题叫需求评审"
- "安排一个周五全天的团建活动"
- "创建日程:后天上午 10 点和张三、李四开产品方案讨论会,地点在 3 楼会议室"
- "帮我建个日程,下周一 14:00-15:00,提前 15 分钟提醒"
- "约一个明天上午的日程,邀请王伟参加"

**流程:**
1. 解析用户意图,提取时间、标题、地点、参与人、提醒设置等信息
2. 若涉及参与人,先通过 **wecomcli-contact** 查询 userid;存在同名时展示候选让用户选择
3. 若用户未指定提醒,默认设置提前 15 分钟提醒(`remind_before_event_secs: 900`)
4. 若用户说"全天",设置 `is_whole_day: 1`,时间设为当天 00:00:00 至 23:59:59
5. 向用户确认日程信息(标题、时间、地点、参与人等)后调用 `create_schedule`

### 修改日程

**经典 query 示例:**
- "把明天的需求评审改到后天下午 3 点"
- "帮我修改下今天下午的会议标题,改成技术方案评审"
- "我今天 14 点的日程地点改成线上腾讯会议"
- "把周五的团建活动推迟一个小时"
- "帮我给明天的周会加个描述:讨论 Q2 规划"

**流程:**
1. 先通过查询工作流定位目标日程(根据用户提到的时间、标题等关键词匹配)
2. 若匹配到多个日程,展示候选列表让用户确认
3. 向用户确认要修改的字段和目标值
4. 调用 `update_schedule`,只传入需修改的字段

### 取消日程

**经典 query 示例:**
- "取消明天下午的需求评审"
- "帮我把周五的团建日程删掉"
- "我不想开今天 15 点的会了,帮我取消"

**流程:**
1. 先通过查询工作流定位目标日程
2. 向用户确认取消的日程信息(标题、时间等),避免误操作
3. 确认后调用 `cancel_schedule`

### 管理参与人

**经典 query 示例:**
- "把张三加到明天的需求评审会议里"
- "帮我把李四从周五的日程里移除"
- "明天下午的会议再邀请一下王伟和赵敏"
- "把我后天那个技术分享的参与人里去掉刘强"

**流程:**
1. 通过 **wecomcli-contact** 获取目标人员 userid;存在同名时展示候选让用户选择
2. 通过查询工作流定位目标日程
3. 调用 `add_schedule_attendees` 或 `del_schedule_attendees` 完成添加/移除

### 查询闲忙并安排会议

**经典 query 示例:**
- "帮我看看张三和李四明天下午有没有空"
- "查一下我和王伟这周的空闲时间,想约个会"
- "我想跟产品组的小明、小红开个会,看看大家什么时候有空"
- "找一个明天下午大家都有空的时段,安排一个 1 小时的会议"

**流程:**
1. 通过 **wecomcli-contact** 获取相关人员 userid
2. 调用 `check_availability` 查询指定时间范围内各用户的忙碌时段
3. 分析所有用户的忙碌时段,计算出共同空闲时段并推荐给用户
4. 用户确认时段后,调用 `create_schedule` 创建会议并自动添加参与人

Related Skills

wecomcli-todo

1387
from WecomTeam/wecom-cli

企业微信待办事项管理技能,支持查询待办列表、获取待办详情、创建待办、更新待办、删除待办及变更用户处理进度状态。在用户说"看看我的待办列表"、"我有哪些待办"、"帮我创建一个待办"、"把这个任务分派给张三"、"标记待办完成"、"删掉那个待办"、"帮我建个提醒"、"更新一下待办内容"、"把提醒时间改到下周"、"接受这个待办"、"拒绝这个待办"、"这个待办的详情"、"待办分派给谁了"等需要对待办进行读写操作的场景时使用。

wecomcli-msg

1387
from WecomTeam/wecom-cli

企业微信消息技能。提供会话列表查询、消息记录拉取(支持文本/图片/文件/语音/视频)、多媒体文件获取和文本消息发送能力。当用户需要"查看消息"、"看聊天记录"、"发消息给某人"、"最近有什么消息"、"给群里发消息"、"看看发了什么图片/文件"时触发。

wecomcli-meeting

1387
from WecomTeam/wecom-cli

企业微信会议技能,支持创建预约会议、查询会议列表、获取会议详情、取消会议、更新会议成员。当用户需要"创建会议"、"预约会议"、"约会议"、"安排会议"、"查看会议"、"查询会议列表"、"会议详情"、"什么时候开会"、"有哪些会议"、"查找会议"、"取消会议"、"删除会议"、"修改会议成员"、"添加会议参与人"、"移除会议成员"时触发。

wecomcli-doc

1387
from WecomTeam/wecom-cli

企业微信文档与智能表格管理技能。提供文档的创建、读取、编辑能力,以及智能表格的结构管理(子表、字段)和数据管理(记录增删改查)。适用场景:(1) 以 Markdown 格式获取文档完整内容 (2) 新建文档或智能表格 (3) 用 Markdown 格式覆写文档内容 (4) 管理智能表格子表和字段/列 (5) 查询、添加、更新、删除智能表格记录。支持通过 docid 或文档 URL 定位文档。

wecomcli-contact

1387
from WecomTeam/wecom-cli

通讯录成员查询技能,获取当前用户可见范围内的通讯录成员,支持按姓名/别名本地筛选匹配。返回 userid、姓名和别名。⚠️ 仅返回当前用户有权限查看的成员,非全量成员。

wecomcli-manage-smartsheet-schema

1354
from WecomTeam/wecom-cli

企业微信智能表格结构管理技能。提供子表(Sheet)和字段(Field/列)的增删改查能力。适用场景:(1) 查询智能表格的子表列表 (2) 添加、更新、删除子表 (3) 查询子表的字段/列信息 (4) 添加、更新、删除字段/列。当用户需要管理智能表格的表结构、列定义、子表配置时触发此 Skill。支持通过 docid 或文档 URL 定位文档。

wecomcli-manage-smartsheet-data

1354
from WecomTeam/wecom-cli

企业微信智能表格数据(记录)管理技能。提供智能表格记录的增删改查能力。适用场景:(1) 查询子表全部记录 (2) 添加一行或多行记录 (3) 更新已有记录 (4) 删除记录。当用户需要读取表格数据、写入新数据、修改或删除表格行时触发此 Skill。支持通过 docid 或文档 URL 定位文档。

wecomcli-manage-schedule

1354
from WecomTeam/wecom-cli

企业微信日程管理技能。适用于用户对企业微信日程的各类管理需求。当用户需要:(1) 查询指定时间范围内的日程列表或获取日程详细信息(标题、时间、地点、参与者等),(2) 创建新日程并设置提醒、参与人等,(3) 修改已有日程的标题、时间、地点等信息或取消日程,(4) 添加或移除日程参与人,(5) 查询多个成员的闲忙状态并分析共同空闲时段以安排会议时使用此技能。

wecomcli-manage-doc

1354
from WecomTeam/wecom-cli

企业微信文档管理技能。提供文档的创建、读取和编辑能力,支持通过 docid 或文档 URL 操作企业微信文档(doc_type=3)和智能表格(doc_type=10)。适用场景:(1) 以 Markdown 格式导出获取文档完整内容(异步轮询) (2) 新建文档或智能表格 (3) 用 Markdown 格式覆写文档内容。当用户需要查看文档内容、创建新文档、编辑文档正文时触发此 Skill。

wecomcli-lookup-contact

1354
from WecomTeam/wecom-cli

通讯录成员查询技能,获取当前用户可见范围内的通讯录成员,支持按姓名/别名本地筛选匹配。返回 userid、姓名和别名。⚠️ 仅返回当前用户有权限查看的成员,非全量成员。

wecomcli-get-todo-list

1354
from WecomTeam/wecom-cli

企业微信待办列表查询技能,支持按创建时间和提醒时间过滤,支持分页。在用户说"看看我的待办列表"、"我有哪些待办"、"这周的待办有哪些"、"最近有什么待办"、"查一下我的待办"、"列出所有待办"等需要浏览待办概览的场景时使用。注意:此技能仅返回待办概要信息(不含内容和分派人),如需完整详情请配合 wecomcli-get-todo-detail 使用。

wecomcli-get-todo-detail

1354
from WecomTeam/wecom-cli

企业微信待办详情批量查询技能,根据待办 ID 列表获取完整信息(包含待办内容和分派人)。在用户说"看看这个待办的详情"、"待办内容是什么"、"这个待办分派给谁了"、"告诉我待办的具体信息"等需要查看待办完整内容的场景时使用。通常配合 wecomcli-get-todo-list 使用——先获取待办 ID 列表,再用本技能获取详情。