Lark Calendar & Tasks

通过命令行操作飞书日历事件和待办任务,支持自动姓名解析。

已扫描
适合谁
企业团队管理者、需要自动化日程管理的办公人员
不适合谁
无飞书账号或权限者、不熟悉命令行操作的用户
国内可用性
需网络配置。可能需要网络配置或第三方服务可访问。
安装难度
新手友好(★☆☆)。基于终端操作、依赖、API Key 和本地环境要求的初步判断。

安装与下载

openclaw skills install @boyangwang/lark-calendar

Skill 说明

命令、参数、文件名以原文为准

Lark 日历与任务技能

在 Lark(飞书)中创建、更新和删除日历事件及任务。

概述

此技能提供完整的 CRUD 操作,包括:

  • 日历事件 — 会议、预约、日程安排
  • 任务(待办事项) — 带截止日期的行动项

配置

必需的环境变量(在 .secrets.env 中设置):

FEISHU_APP_ID=cli_a9f52a4ed7b8ded4
FEISHU_APP_SECRET=<你的应用密钥>

默认日历feishu.cn_caF80RJxgGcbBGsQx64bCh@group.calendar.feishu.cn(爪子日历)

默认时区Asia/Singapore

快速参考

创建日历事件

node skills/lark-calendar/scripts/create-event.mjs \
  --title "团队会议" \
  --description "讨论 Q2 路线图" \
  --start "2026-02-03 14:00:00" \
  --end "2026-02-03 15:00:00" \
  --attendees "Boyang,RK" \
  --location "会议室 A"

参数说明:

参数是否必填描述
--title事件标题
--description事件描述
--start开始时间(格式:YYYY-MM-DD HH:MM:SS)
--end结束时间(格式:YYYY-MM-DD HH:MM:SS)
--attendees用逗号分隔的姓名(自动解析为 user_id)
--attendee-ids用逗号分隔的 user_id 直接指定
--location事件地点
--timezone时区(默认:Asia/Singapore)
--calendar日历 ID(未指定时使用默认日历)

更新日历事件

node skills/lark-calendar/scripts/update-event.mjs \
  --event-id "f9900f6b-b472-4b17-a818-7b5584abdc37_0" \
  --title "已更新标题" \
  --start "2026-02-03 15:00:00" \
  --end "2026-02-03 16:00:00"

删除日历事件

node skills/lark-calendar/scripts/delete-event.mjs \
  --event-id "f9900f6b-b472-4b17-a818-7b5584abdc37_0"

列出日历事件

# 查询未来 7 天内的事件
node skills/lark-calendar/scripts/list-events.mjs

# 查询指定时间段内的事件
node skills/lark-calendar/scripts/list-events.mjs \
  --start "2026-02-01" \
  --end "2026-02-28"

创建任务

node skills/lark-calendar/scripts/create-task.mjs \
  --title "审查 PR #123" \
  --description "认证模块代码审查" \
  --due "2026-02-05 18:00:00" \
  --assignees "Boyang,jc"

参数说明:

参数是否必填描述
--title任务标题
--description任务描述
--due截止时间(格式:YYYY-MM-DD HH:MM:SS)
--assignees用逗号分隔的姓名(自动解析)
--assignee-ids用逗号分隔的 user_id 直接指定
--timezone时区(默认:Asia/Singapore)

更新任务

node skills/lark-calendar/scripts/update-task.mjs \
  --task-id "35fc5310-a1b1-49c7-be75-be631d3079ee" \
  --title "已更新任务" \
  --due "2026-02-06 18:00:00"

删除任务

node skills/lark-calendar/scripts/delete-task.mjs \
  --task-id "35fc5310-a1b1-49c7-be75-be631d3079ee"

管理事件参会人

# 添加参会人
node skills/lark-calendar/scripts/manage-attendees.mjs \
  --event-id "xxx" --add "RK,jc"

# 移除参会人
node skills/lark-calendar/scripts/manage-attendees.mjs \
  --event-id "xxx" --remove "jc"

管理任务成员

# 添加成员
node skills/lark-calendar/scripts/manage-task-members.mjs \
  --task-id "xxx" --add "RK,jc"

# 移除成员
node skills/lark-calendar/scripts/manage-task-members.mjs \
  --task-id "xxx" --remove "jc"

员工通讯录

姓名会自动解析为 Lark 的 user_id。支持的姓名如下:

user_id姓名角色
dgg163e1Boyang, by, 博洋老板
gb71g28bRK领导层、研发
53gc5724Ding领导层、运营
217ec2c2Charline人力资源
f2bfd283曾晓玲, xiaoling人力资源
f26fe45dHH研究
45858f91zan, Eva-
7f79b6deIssac运营
1fb2547g王铁柱运营
e5997acd尼克, Nico运营
438c3c1fIvan运营
17g8bab2Dodo研发、产品
73b45ec5启超, QiChaoShi研发、设计
d1978a39chenglin研发、前端
ef6fc4a7冠林, Green研发、前端
b47fa8f2sixian, sx, Sixian-Yu研发、前端
934fbf15jc, sagiri, 俊晨研发、后端
8c4aad87大明, daming研发、后端
ab87g5e1Emily Yobal实习生
55fa337fjingda, 景达实习生
333c7cf1刘纪源, 纪源, Aiden实习生

业务规则

  1. 所有日历事件都会自动添加 Boyang 为参会人
  2. 时区处理:使用 IANA 时区标识符(如 Asia/SingaporeAsia/Shanghai
  3. 时间格式:始终使用 YYYY-MM-DD HH:MM:SS
  4. user_id 与 open_id 区别:本技能使用 user_id 格式(如 dgg163e1),不使用 open_id 格式(如 ou_xxx

程序化调用

import { createEvent, updateEvent, deleteEvent } from './skills/lark-calendar/lib/calendar.mjs';
import { createTask, updateTask, deleteTask } from './skills/lark-calendar/lib/task.mjs';
import { resolveNames } from './skills/lark-calendar/lib/employees.mjs';

// 创建事件
const result = await createEvent({
  title: '团队同步',
  description: '每周站会',
  startTime: '2026-02-03 10:00:00',
  endTime: '2026-02-03 10:30:00',
  attendeeIds: ['dgg163e1', 'gb71g28b'],
  location: 'Zoom',
  timezone: 'Asia/Singapore'
});

// 创建任务
const task = await createTask({
  title: '审查文档',
  description: 'Q2 规划文档',
  dueTime: '2026-02-05 18:00:00',
  assigneeIds: ['dgg163e1'],
  timezone: 'Asia/Singapore'
});

Lark API 参考

  • [日历事件 API](https://open.larksuite.com/document/server-docs/calendar-v4/calendar-event/create)
  • [日历参会人 API](https://open.larksuite.com/document/server-docs/calendar-v4/calendar-event-attendee/create)
  • [任务 API](https://open.larksuite.com/document/server-docs/task-v2/task/create)

所需权限

确保您的飞书应用已启用以下权限范围:

  • calendar:calendar — 读写日历 ✅(已启用)
  • calendar:calendar:readonly — 读取日历 ✅(已启用)
  • task:task:write — 写入任务 ⚠️(需添加以支持任务创建)
  • task:task:read — 读取任务
  • contact:user.employee_id:readonly — 读取用户信息 ✅(已启用)

添加权限步骤:

  1. 访问 [飞书开放平台](https://open.larksuite.com/app/cli_a9f52a4ed7b8ded4/auth)
  2. 添加权限范围:task:task:writecontact:contact:readonly(用于动态获取员工信息)
  3. 重新发布应用版本

注意: 若未启用 contact:contact:readonly,该技能将使用静态备用员工列表。当团队成员变更时,请手动更新 lib/employees.mjs 文件。

B
@boyangwang

已收录 2 个 Skill

相关推荐