iCalendar Sync
/install icalendar-sync
iCalendar Sync
Use this skill to perform iCloud calendar CRUD operations from OpenClaw agents.
1. Prepare Credentials Securely
Use App-Specific Passwords only (never the primary Apple ID password).
Prefer keyring storage:
python -m icalendar_sync setup --username [email protected]
Use non-interactive setup for automation:
export ICLOUD_USERNAME="[email protected]"
export ICLOUD_APP_PASSWORD="xxxx-xxxx-xxxx-xxxx"
python -m icalendar_sync setup --non-interactive
Use file storage only when keyring is unavailable (headless or GUI-restricted runtime):
python -m icalendar_sync setup --non-interactive --storage file --config ~/.openclaw/icalendar-sync.yaml
2. Choose Provider Deliberately
--provider auto: macOS uses native bridge, non-macOS uses CalDAV.--provider caldav: force direct iCloud CalDAV.--provider macos-native: force Calendar.app bridge (macOS only).
For CalDAV diagnostics, add:
--debug-http --user-agent "your-agent/1.0"
3. Execute Calendar Operations
List calendars:
python -m icalendar_sync list
Get events:
python -m icalendar_sync get --calendar "Personal" --days 7
Create event:
python -m icalendar_sync create --calendar "Personal" --json '{
"summary": "Meeting",
"dtstart": "2026-02-15T14:00:00+03:00",
"dtend": "2026-02-15T15:00:00+03:00"
}'
Update event (simple):
python -m icalendar_sync update --calendar "Personal" --uid "event-uid" --json '{"summary":"Updated title"}'
Update recurring event instance:
python -m icalendar_sync update \
--calendar "Work" \
--uid "series-uid" \
--recurrence-id "2026-03-01T09:00:00+03:00" \
--mode single \
--json '{"summary":"One-off change"}'
Modes for recurring updates:
single: update one instance (use--recurrence-id)all: update whole seriesfuture: split series and update this+future (use--recurrence-id)
Delete event:
python -m icalendar_sync delete --calendar "Personal" --uid "event-uid"
4. Input Contract
For create, require at least:
summary(string)dtstart(ISO datetime)dtend(ISO datetime, must be later thandtstart)
Optional fields:
descriptionlocationstatuspriority(0-9)alarmsrrule
5. Safety Rules
- Validate calendar names; reject path-like payloads.
- Keep credential material out of logs/output.
- Prefer keyring over file storage.
- If file storage is used, enforce strict file permissions (
0600).
6. Failure Handling
If CalDAV auth/network fails on macOS and provider is auto/caldav, switch to macos-native and retry the same operation.
If JSON payload is supplied as file path, ensure file size stays within safe limits before parsing.
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install icalendar-sync - 安装完成后,直接呼叫该 Skill 的名称或使用
/icalendar-sync触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
iCalendar Sync 是什么?
Secure iCloud Calendar operations for OpenClaw with CalDAV and macOS native bridge providers. Use when tasks require calendar listing, event retrieval, event... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 2401 次。
如何安装 iCalendar Sync?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install icalendar-sync」即可一键安装,无需额外配置。
iCalendar Sync 是免费的吗?
是的,iCalendar Sync 完全免费(开源免费),可自由下载、安装和使用。
iCalendar Sync 支持哪些平台?
iCalendar Sync 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 iCalendar Sync?
由 h8kxrfp68z-lgtm(@h8kxrfp68z-lgtm)开发并维护,当前版本 v2.4.1。