Install
openclaw skills install @thcjp/calendar-reminder-freeopenclaw skills install @thcjp/calendar-reminder-free| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| input | string | 是 | 日历提醒(免费版)处理的输入数据或指令 |
| options | object | 否 | 附加配置选项,如模式选择、格式偏好等 |
| callback_url | string | 否 | 异步处理完成后的回调通知URL |
Calendar Reminder Free 是日历提醒 Skill 的免费版本,提供基础的每晚 22:00 扫描明日 Outlook 日历并按上下午时段推送飞书提醒的能力。适合个人开发者快速搭建每日日程提醒工作流.
在每晚 22:00(Asia/Shanghai 时区)自动拉取明日 Outlook 日历的全部日程,包括会议主题、开始时间、结束时间、组织者、地点等基础字段。扫描完成后立即发送一条汇报消息到飞书.
通过 skill-platform cron add 命令注册每日扫描任务,任务持久化在 skill-platform 中.
完成响应以Markdown格式返回,包含任务状态(成功/失败)、解析摘要和具体输出数据。失败时返回错误码和错误信息,便于定位问题。- 验证返回数据的完整性和格式正确性
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| LLM API | API | 必需 | 由Agent内置LLM提供 |
需要配置对应API Key,详见上文环境配置章节
API Key配置方式:
export API_KEY="${API_KEY:?请设置环境变量}"
配置后需重启会话或开启新终端生效。API Key应妥善保管,避免泄露到版本控制系统.
python3 --version # 需要 3.9+
skill-platform --version
编辑 calendar_reminder.py 中 send_feishu 函数,将 target 改为你的飞书 open_id:
"--target", "user:ou_xxxxxxxxxxxxxxxx",
skill-platform cron add \
--name "calendar-daily-scan" \
--cron "0 22 * * *" \
--tz "Asia/Shanghai" \
--session main \
--system-event "CALENDAR_SCAN: 请立即运行 python3 ~/.skill-platform/workspace/skills/calendar-reminder/calendar_reminder.py 并等待完成" \
--description "每晚22:00扫描明天日历并设置提醒"
# 本技能的核心实现逻辑
# 请参考上方使用说明进行配置和调用
echo "implementation_ready"
检查飞书是否收到扫描汇报消息.
背景: 开发者每日 09:30 有站会,经常因早晨处理事务错过. 运行数据:
效果: 开发者 07:30 收到提醒后提前准备站会内容.
背景: 周末明日无任何日程. 运行数据:
效果: 用户确认扫描正常运行,无需担心任务失效.
原因: owa-outlook skill 未安装或 Outlook 凭据过期.
处理: 执行 python3 -c "import owa_calendar; owa_calendar.list_events()" 验证 skill 可用;若凭据过期,重新运行 owa-outlook 登录流程刷新 token;网络问题检查代理配置后检查网络连接和配置后重试.
原因: open_id 格式错误或机器人 token 过期.
处理: 检查 target 是否以 user: 前缀开头;若返回 token 错误码,重新获取 app_access_token;建议对飞书 API 失败做 3 次检查网络连接和配置后重试.
原因: Python 版本低于 3.9 或 Linux 未安装 tzdata.
处理: 升级 Python 到 3.9+;在 Debian/Ubuntu 执行 sudo apt install tzdata;macOS 通常已内置.
原因: skill-platform 服务未运行或时区配置错误.
处理: 执行 skill-platform cron list 确认任务存在;检查 --tz 参数使用 IANA 时区名(如 Asia/Shanghai);手动触发 skill-platform cron trigger calendar-daily-scan 验证.
原因: Outlook 部分日程为"私有"标记或存在多个日历文件夹. 处理: 在 owa-outlook 配置中开启拉取私有事件;在脚本中明确指定要扫描的日历名称,避免 Holidays 等系统日历干扰.
免费版仅内置飞书推送。若需钉钉、企业微信等渠道,请升级付费版,付费版支持多渠道通知后端切换.
会推送一条"明日无日程安排"的汇报消息,确保用户知道扫描已正常执行。若希望静默,可在脚本中增加 if not events: return 跳过推送.
在 calendar_reminder.py 中找到 afternoon_threshold 变量,修改为目标时间(如 13:00)。免费版需同时手动调整下午统一提醒的 cron 时间.
执行 skill-platform cron pause calendar-daily-scan 暂停,假期结束后执行 skill-platform cron resume calendar-daily-scan 恢复.
| 错误场景 | 原因 | 处理方式 |
|---|---|---|
| LLM响应超时或无响应 | 网络延迟或模型负载过高 | 检查网络连接和配置后重试;确认Agent平台LLM服务正常 |
| 输入内容格式不正确 | 用户输入不符合skill预期格式 | 检查输入是否符合skill使用说明中的格式要求,参考示例章节 |
| 执行结果与预期不符 | 指令描述不够明确或上下文不足 | 提供更详细的指令描述,补充必要的上下文信息 |
| 命令执行失败 | 运行环境不满足要求或权限不足 | 确认运行环境符合依赖说明中的要求;检查命令权限设置 |
当前为免费版本,提供基础的日历扫描与飞书提醒功能。升级到付费版可获得以下高级特性:
请访问 skill 商城升级到 calendar-reminder 付费版获取完整能力.
| 操作步骤 | 手动耗时 | 自动化耗时 | 时间节约 | 准确率提升 |
|---|---|---|---|---|
| 手动检查日历 | 30分钟/天 | 2分钟/天 | 28分钟/天 | 100% |
| 手动发送提醒 | 10分钟/天 | 1分钟/天 | 9分钟/天 | 100% |
| 处理日程冲突 | 15分钟/周 | 5分钟/周 | 10分钟/周 | 100% |
| 更新日程信息 | 20分钟/周 | 5分钟/周 | 15分钟/周 | 100% |
| 汇总日程安排 | 30分钟/周 | 10分钟/周 | 20分钟/周 | 100% |
| 对比维度 | 本技能 | 手动操作 | Python脚本 | 专业软件 |
|---|---|---|---|---|
| 功能复杂度 | 简单 | 复杂 | 中等 | 高 |
| 易用性 | 高 | 低 | 中等 | 高 |
| 成本 | 低 | 高 | 中等 | 高 |
| 扩展性 | 中等 | 低 | 高 | 高 |
| 准确率 | 高 | 低 | 高 | 高 |
| 痛点 | 描述 | 影响范围 | 解决方案 | 量化效果 |
|---|---|---|---|---|
| 忘记日程 | 容易忘记重要日程,导致错过会议或活动 | 个人工作效率 | 自动提醒功能 | 时间节约 28分钟/天 |
| 处理日程冲突 | 手动处理日程冲突耗时且容易出错 | 个人工作效率 | 自动识别冲突并提醒 | 时间节约 10分钟/周 |
| 更新日程信息 | 更新日程信息需要手动操作,效率低 | 个人工作效率 | 自动更新日程 | 时间节约 15分钟/周 |
| 错误现象 | 可能原因 | 诊断步骤 | 解决方案 |
|---|---|---|---|
| 飞书提醒未收到 | 飞书open_id配置错误 | 检查open_id配置是否正确 | 修正open_id配置 |
| 日历数据未扫描 | 没有注册cron任务 | 检查cron任务是否注册成功 | 重新注册cron任务 |
| 扫描任务失败 | Outlook日历访问权限不足 | 检查Outlook日历访问权限 | 修改Outlook日历访问权限 |
| 提醒时间错误 | 时区设置错误 | 检查时区设置是否正确 | 修正时区设置 |
| 日程信息错误 | 日历数据格式错误 | 检查日历数据格式 | 修正日历数据格式 |
| 风险项 | 等级 | 防护措施 | 验证方法 |
|---|---|---|---|
| API密钥泄露 | 高 | 通过环境变量配置,禁止硬编码 | 定期检查代码和配置文件 |
| 命令执行风险 | 高 | 仅执行白名单命令,避免拼接用户输入 | 使用沙箱环境测试 |
| 网络通信安全 | 中 | 使用HTTPS协议,验证SSL证书 | 定期检查证书有效期 |
| 敏感数据暴露 | 高 | 输出结果中不包含密钥、令牌等敏感信息 | 日志脱敏审查 |
| 未授权访问 | 中 | 限制访问权限,实施认证机制 | 定期审计访问日志 |
A1: 每晚22点扫描明日Outlook日历,基础飞书提醒,支持手动运行与cron注册。面向个人开发者的 Outlook 日历提醒 Skill 免费版。每晚 22:00。支持文本指令和结构化参数输入,具体格式参考使用流程章节。
A2: 是的,部分功能需要配置对应平台的API Key。请在依赖说明章节查看具体要求,并通过环境变量安全配置。
A3: 检查命令参数是否正确,确认运行环境支持exec能力。如遇权限问题,请参照错误处理章节排查。
针对日历提醒(免费版)使用中可能遇到的常见问题,提供以下排查方案:
| 错误类型 | 原因分析 | 解决方案 |
|---|---|---|
| API认证失败(401) | API密钥错误或过期 | 检查密钥配置,重新生成token |
| 接口限流(429) | 请求频率超出限制 | 降低调用频率,启用重试退避策略 |
| 响应超时(504) | 网络延迟或服务端负载过高 | 增加超时阈值,检查网络连接 |
| 文件不存在 | 路径错误或文件未创建 | 检查路径拼写,确认文件已生成 |
| 文件格式不支持 | 扩展名不在支持列表中 | 转换为支持的格式后重试 |
| 权限不足 | 当前用户无读写权限 | 检查文件权限,以管理员身份运行 |
| 命令执行失败 | 参数错误或环境依赖缺失 | 检查命令语法,确认依赖已安装 |
| 进程超时 | 命令执行时间过长 | 增加超时设置,优化命令参数 |
| 网络连接失败 | DNS解析失败或防火墙拦截 | 检查网络配置,确认代理设置 |