让 AstrBot Agent 通过自然语言创建/查询/修改/删除日历事件和待办,自动同步到 Radicale CalDAV 服务器。
本插件 100% 由 AI(大型语言模型)生成代码,包括插件主体、工具定义、配置逻辑和文档。未经过专业安全审计或人工代码审查。
- 不提供任何保证:本插件按"原样"提供,不附带任何明示或暗示的担保,包括但不限于适销性、特定用途适用性和非侵权性保证。
- 使用风险自负:使用者应自行承担使用本插件所带来的所有风险和责任。作者/AI 不对因使用或无法使用本插件而导致的任何直接、间接、附带、特殊或后果性损害承担责任。
- API 费用:AI API 调用可能产生费用,使用者应自行了解和承担相关费用。
- 日程管理 — 创建、查询、修改、删除日程事件(VEVENT)
- 待办管理 — 创建、查询、修改、完成待办(VTODO)
- 自然语言时间 — 支持“明天下午3点”“下周五 19:00”等中文时间表达
- 重复日程 — 支持每天/每周/每月/每年等重复规则(RRULE)
- 多次提醒 — 支持多时间点提醒(VALARM),提醒值限定标准集合
- 分类标签 — 支持 CATEGORIES,按工作/个人等分类筛选
- 状态标记 — 日程/待办支持 CONFIRMED/CANCELLED/COMPLETED 等状态
- 优先级 — 待办支持 1-9 级优先级
- 自动清理 — 可配置定时清理过期日程
- 多端同步 — 通过 Radicale CalDAV 协议,任意支持 CalDAV 的客户端均可查看
| 工具 | 说明 |
|---|---|
add_event |
创建日程:标题、时间、重复、提醒、分类、状态 |
list_events |
查询日程:按时间、关键词、分类、状态筛选 |
edit_event |
修改日程:按 UID 修改任意字段 |
delete_event |
删除日程:按 UID 删除 |
complete_event |
标记日程为已完成 |
add_todo |
创建待办:标题、截止时间、优先级、提醒 |
list_todos |
查询待办:按关键词、分类、状态筛选 |
edit_todo |
修改待办:按 UID 修改任意字段 |
complete_todo |
标记待办为已完成 |
pip install dateparser requests或通过 AstrBot 插件市场安装,依赖将自动处理。
- 部署 Radicale CalDAV 服务器
- 在 AstrBot 插件配置中填写:
| 配置项 | 说明 | 示例 |
|---|---|---|
radicale_url |
Radicale 服务器地址 | http://192.168.1.100:5232/ |
radicale_username |
登录用户名 | admin |
radicale_password |
登录密码 | **** |
calendar_name |
日历名称 | AstrBot日程 |
default_duration_hours |
默认事件时长 | 1 |
auto_clean_days |
自动清理过期日程(天) | 30(0=禁用) |
用户: 帮我添加明天下午3点的产品评审会,地点在会议室A,提前30分钟提醒
Agent: ✅ 日程「产品评审会」已同步到 Radicale!UID: `xxx@astrbot-schedule`
用户: 这周有什么安排
Agent: 📅 共 5 条日程...
用户: 把产品评审会改到后天上午10点
Agent: ✅ 日程「产品评审会」已更新。
用户: 取消产品评审会
Agent: ✅ 日程已删除。
用户: 记一个待办,周五前提交周报,高优先级
Agent: ✅ 待办「提交周报」已创建,截止 06/20,优先级 P2。
用户: 我还有哪些待办没完成
Agent: 📋 共 3 条待办...
用户: 周报交完了,标记完成
Agent: ✅ 待办「提交周报」已标记为已完成。
用户: 查看所有"工作"分类的日程
Agent: (列出工作相关日程)
用户: 添加一个"个人"标签的体检日程
用户自然语言
→ AstrBot Agent 决策调用工具
→ add_event / add_todo 等
→ dateparser 解析时间
→ 生成 ICS (iCalendar RFC 5545)
→ HTTP PUT / REPORT / DELETE → Radicale CalDAV
→ 返回结果给 Agent
MIT