caldav-calendarSync and query CalDAV calendars (iCloud, Google, Fastmail, Nextcloud, etc.) using vdirsyncer + khal. Works on Linux.
Install via ClawdBot CLI:
clawdbot install Asleep123/caldav-calendarInstall vdirsyncer + khal via apt:
Install vdirsyncer + khal via aptRequires:
vdirsyncer syncs CalDAV calendars to local .ics files. khal reads and writes them.
Always sync before querying or after making changes:
vdirsyncer sync
khal list # Today
khal list today 7d # Next 7 days
khal list tomorrow # Tomorrow
khal list 2026-01-15 2026-01-20 # Date range
khal list -a Work today # Specific calendar
khal search "meeting"
khal search "dentist" --format "{start-date} {title}"
khal new 2026-01-15 10:00 11:00 "Meeting title"
khal new 2026-01-15 "All day event"
khal new tomorrow 14:00 15:30 "Call" -a Work
khal new 2026-01-15 10:00 11:00 "With notes" :: Description goes here
After creating, sync to push changes:
vdirsyncer sync
khal edit is interactive — requires a TTY. Use tmux if automating:
khal edit "search term"
khal edit -a CalendarName "search term"
khal edit --show-past "old event"
Menu options:
s → edit summaryd → edit descriptiont → edit datetime rangel → edit locationD → delete eventn → skip (save changes, next match)q → quitAfter editing, sync:
vdirsyncer sync
Use khal edit, then press D to delete.
For scripting:
khal list --format "{start-date} {start-time}-{end-time} {title}" today 7d
khal list --format "{uid} | {title} | {calendar}" today
Placeholders: {title}, {description}, {start}, {end}, {start-date}, {start-time}, {end-date}, {end-time}, {location}, {calendar}, {uid}
khal caches events in ~/.local/share/khal/khal.db. If data looks stale after syncing:
rm ~/.local/share/khal/khal.db
~/.config/vdirsyncer/config)Example for iCloud:
[general]
status_path = "~/.local/share/vdirsyncer/status/"
[pair icloud_calendar]
a = "icloud_remote"
b = "icloud_local"
collections = ["from a", "from b"]
conflict_resolution = "a wins"
[storage icloud_remote]
type = "caldav"
url = "https://caldav.icloud.com/"
username = "your@icloud.com"
password.fetch = ["command", "cat", "~/.config/vdirsyncer/icloud_password"]
[storage icloud_local]
type = "filesystem"
path = "~/.local/share/vdirsyncer/calendars/"
fileext = ".ics"
Provider URLs:
https://caldav.icloud.com/google_calendar storage typehttps://caldav.fastmail.com/dav/calendars/user/EMAIL/https://YOUR.CLOUD/remote.php/dav/calendars/USERNAME/~/.config/khal/config)[calendars]
[[my_calendars]]
path = ~/.local/share/vdirsyncer/calendars/*
type = discover
[default]
default_calendar = Home
highlight_event_days = True
[locale]
timeformat = %H:%M
dateformat = %Y-%m-%d
vdirsyncer discover # First time only
vdirsyncer sync
Generated Mar 1, 2026
Individuals can sync personal calendars from services like iCloud or Google to a Linux system, enabling offline viewing, searching, and editing of events. This is useful for managing daily schedules, appointments, and reminders without relying on web interfaces, with commands for listing, creating, and syncing events.
Small businesses can use this skill to manage team calendars, such as tracking meetings, deadlines, and project timelines across multiple CalDAV calendars. It allows for automated syncing and scripting of event data, facilitating coordination and reducing scheduling conflicts in a cost-effective, offline-capable way.
Educational institutions can integrate CalDAV calendars to manage class schedules, exam dates, and faculty meetings. Administrators can query and update events locally, using search and format options for reporting, while syncing ensures consistency across distributed systems like Nextcloud for staff and students.
Remote teams can leverage this skill to synchronize shared calendars from Fastmail or similar providers, enabling members to view and edit events in a terminal environment. It supports collaborative scheduling with features like interactive editing and output formatting for integration into automated workflows or dashboards.
Healthcare clinics can use the skill to manage patient appointments and staff schedules via CalDAV, allowing for local backups and quick queries. It helps in maintaining privacy with offline access, while syncing ensures updates are pushed to cloud calendars for real-time availability across devices.
Offer free basic setup guides and community support, with premium tiers for personalized configuration assistance, troubleshooting, and automation scripts. Revenue is generated through subscription fees or one-time consulting charges for businesses needing reliable calendar integration.
Develop a cloud-based service that wraps this skill into a user-friendly API, allowing non-Linux users to access CalDAV functionalities via web or mobile apps. Revenue comes from monthly SaaS subscriptions based on usage tiers, such as number of calendars or API calls.
Provide packaged solutions for large organizations, including pre-configured setups, training, and ongoing maintenance for integrating CalDAV calendars into corporate Linux environments. Revenue is generated through licensing fees and support contracts tailored to enterprise-scale deployments.
💬 Integration Tip
Ensure vdirsyncer and khal are properly installed and configured with correct CalDAV URLs; use tmux for automated editing sessions to handle TTY requirements in scripts.
Manage Trello boards, lists, and cards via the Trello REST API.
Manage tasks and projects in Todoist. Use when user asks about tasks, to-dos, reminders, or productivity.
Master OpenClaw's timing systems. Use for scheduling reliable reminders, setting up periodic maintenance (janitor jobs), and understanding when to use Cron v...
Calendar management and scheduling. Create events, manage meetings, and sync across calendar providers.
Kanban-style task management dashboard for AI assistants. Manage tasks via CLI or dashboard UI. Use when user mentions tasks, kanban, task board, mission con...
Query and manage Linear issues, projects, and team workflows.